From fa56037ac97f54aededa4f24b609d6ad734b58c1 Mon Sep 17 00:00:00 2001 From: Adonis Papaderos Date: Mon, 6 Aug 2012 13:05:43 +0300 Subject: hack for 898797 (bzr r11595.1.1) --- src/sp-item-group.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/sp-item-group.cpp b/src/sp-item-group.cpp index b54ec65e2..f9d74d089 100644 --- a/src/sp-item-group.cpp +++ b/src/sp-item-group.cpp @@ -853,7 +853,9 @@ sp_group_perform_patheffect(SPGroup *group, SPGroup *topgroup, bool write) } // only run LPEs when the shape has a curve defined if (c) { + c->transform(i2anc_affine(subitem, topgroup)); sp_lpe_item_perform_path_effect(SP_LPE_ITEM(topgroup), c); + c->transform(i2anc_affine(subitem, topgroup).inverse()); SP_SHAPE(subitem)->setCurve(c, TRUE); if (write) { -- cgit v1.2.3 From 16b19e18b4f9b416f0cc16f6b5b749bd38455b24 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sat, 18 Aug 2012 01:27:53 +0200 Subject: Added "virtual pad" to SPObject. (bzr r11608.1.1) --- src/sp-object.cpp | 102 +++++++++++++++++++++++++++++++++++++++++++++++------- src/sp-object.h | 31 +++++++++++++++++ 2 files changed, 121 insertions(+), 12 deletions(-) diff --git a/src/sp-object.cpp b/src/sp-object.cpp index 892c89a15..5c42e009c 100644 --- a/src/sp-object.cpp +++ b/src/sp-object.cpp @@ -145,10 +145,27 @@ void SPObjectClass::sp_object_class_init(SPObjectClass *klass) klass->write = SPObject::sp_object_private_write; } + +// CPPIFY: make pure virtual +void CObject::onReadContent() { + throw; +} + +void CObject::onUpdate(SPCtx* ctx, unsigned int flags) { + throw; +} + +void CObject::onModified(unsigned int flags) { + throw; +} + + void SPObject::sp_object_init(SPObject *object) { debug("id=%x, typename=%s",object, g_type_name_from_instance((GTypeInstance*)object)); + object->cobject = new CObject(object); + object->hrefcount = 0; object->_total_hrefcount = 0; object->document = NULL; @@ -182,6 +199,8 @@ void SPObject::sp_object_finalize(GObject *object) { SPObject *spobject = (SPObject *)object; + delete spobject->cobject; + g_free(spobject->_label); g_free(spobject->_default_label); spobject->_label = NULL; @@ -202,6 +221,16 @@ void SPObject::sp_object_finalize(GObject *object) } } + +// CPPIFY: remove +CObject::CObject(SPObject* object) { + this->spobject = object; +} + +CObject::~CObject() { +} + + namespace { namespace Debug = Inkscape::Debug; @@ -616,8 +645,9 @@ SPObject *SPObject::get_child_by_repr(Inkscape::XML::Node *repr) return result; } -void SPObject::sp_object_child_added(SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node *ref) -{ +void CObject::onChildAdded(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { + SPObject* object = this->spobject; + GType type = sp_repr_type_lookup(child); if (!type) { return; @@ -630,16 +660,30 @@ void SPObject::sp_object_child_added(SPObject *object, Inkscape::XML::Node *chil ochild->invoke_build(object->document, child, object->cloned); } -void SPObject::sp_object_release(SPObject *object) +// CPPIFY: remove +void SPObject::sp_object_child_added(SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { + object->cobject->onChildAdded(child, ref); +} + +void CObject::onRelease() { + SPObject* object = this->spobject; + debug("id=%x, typename=%s", object, g_type_name_from_instance((GTypeInstance*)object)); while (object->children) { object->detach(object->children); } } -void SPObject::sp_object_remove_child(SPObject *object, Inkscape::XML::Node *child) +// CPPIFY: remove +void SPObject::sp_object_release(SPObject *object) { + object->cobject->onRelease(); +} + +void CObject::onRemoveChild(Inkscape::XML::Node* child) { + SPObject* object = this->spobject; + debug("id=%x, typename=%s", object, g_type_name_from_instance((GTypeInstance*)object)); SPObject *ochild = object->get_child_by_repr(child); g_return_if_fail (ochild != NULL || !strcmp("comment", child->name())); // comments have no objects @@ -648,9 +692,15 @@ void SPObject::sp_object_remove_child(SPObject *object, Inkscape::XML::Node *chi } } -void SPObject::sp_object_order_changed(SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node */*old_ref*/, - Inkscape::XML::Node *new_ref) +// CPPIFY: remove +void SPObject::sp_object_remove_child(SPObject *object, Inkscape::XML::Node *child) { + object->cobject->onRemoveChild(child); +} + +void CObject::onOrderChanged(Inkscape::XML::Node *child, Inkscape::XML::Node * old_ref, Inkscape::XML::Node *new_ref) { + SPObject* object = this->spobject; + SPObject *ochild = object->get_child_by_repr(child); g_return_if_fail(ochild != NULL); SPObject *prev = new_ref ? object->get_child_by_repr(new_ref) : NULL; @@ -658,8 +708,16 @@ void SPObject::sp_object_order_changed(SPObject *object, Inkscape::XML::Node *ch ochild->_position_changed_signal.emit(ochild); } -void SPObject::sp_object_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) +// CPPIFY: remove +void SPObject::sp_object_order_changed(SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node *old_ref, + Inkscape::XML::Node *new_ref) { + object->cobject->onOrderChanged(child, old_ref, new_ref); +} + +void CObject::onBuild(SPDocument *document, Inkscape::XML::Node *repr) { + SPObject* object = this->spobject; + /* Nothing specific here */ debug("id=%x, typename=%s", object, g_type_name_from_instance((GTypeInstance*)object)); @@ -679,6 +737,12 @@ void SPObject::sp_object_build(SPObject *object, SPDocument *document, Inkscape: } } +// CPPIFY: remove +void SPObject::sp_object_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) +{ + object->cobject->onBuild(document, repr); +} + void SPObject::invoke_build(SPDocument *document, Inkscape::XML::Node *repr, unsigned int cloned) { debug("id=%x, typename=%s", this, g_type_name_from_instance((GTypeInstance*)this)); @@ -847,10 +911,11 @@ void SPObject::sp_object_repr_order_changed(Inkscape::XML::Node */*repr*/, Inksc } } -void SPObject::sp_object_private_set(SPObject *object, unsigned int key, gchar const *value) -{ +void CObject::onSet(unsigned int key, gchar const* value) { g_assert(key != SP_ATTR_INVALID); + SPObject* object = this->spobject; + switch (key) { case SP_ATTR_ID: @@ -869,7 +934,7 @@ void SPObject::sp_object_private_set(SPObject *object, unsigned int key, gchar c if (!document->isSeeking()) { sp_object_ref(conflict, NULL); // give the conflicting object a new ID - gchar *new_conflict_id = sp_object_get_unique_id(conflict, NULL); + gchar *new_conflict_id = SPObject::sp_object_get_unique_id(conflict, NULL); conflict->getRepr()->setAttribute("id", new_conflict_id); g_free(new_conflict_id); sp_object_unref(conflict, NULL); @@ -932,6 +997,12 @@ void SPObject::sp_object_private_set(SPObject *object, unsigned int key, gchar c } } +// CPPIFY: remove +void SPObject::sp_object_private_set(SPObject *object, unsigned int key, gchar const *value) +{ + object->cobject->onSet(key, value); +} + void SPObject::setKeyValue(unsigned int key, gchar const *value) { //g_assert(object != NULL); @@ -997,8 +1068,9 @@ static gchar const *sp_xml_get_space_string(unsigned int space) } } -Inkscape::XML::Node * SPObject::sp_object_private_write(SPObject *object, Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) -{ +Inkscape::XML::Node* CObject::onWrite(Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) { + SPObject* object = this->spobject; + if (!repr && (flags & SP_OBJECT_WRITE_BUILD)) { repr = object->getRepr()->duplicate(doc); if (!( flags & SP_OBJECT_WRITE_EXT )) { @@ -1080,6 +1152,12 @@ Inkscape::XML::Node * SPObject::sp_object_private_write(SPObject *object, Inksca return repr; } +// CPPIFY: remove +Inkscape::XML::Node * SPObject::sp_object_private_write(SPObject *object, Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) +{ + return object->cobject->onWrite(doc, repr, flags); +} + Inkscape::XML::Node * SPObject::updateRepr(unsigned int flags) { if ( !cloned ) { diff --git a/src/sp-object.h b/src/sp-object.h index b08706b0b..9ff772870 100644 --- a/src/sp-object.h +++ b/src/sp-object.h @@ -176,6 +176,7 @@ SPObject *sp_object_href(SPObject *object, gpointer owner); */ SPObject *sp_object_hunref(SPObject *object, gpointer owner); +class CObject; /** * SPObject is an abstract base class of all of the document nodes at the @@ -203,6 +204,8 @@ public: ALWAYS_COLLECT }; + CObject* cobject; + unsigned int cloned : 1; unsigned int uflags : 8; unsigned int mflags : 8; @@ -909,6 +912,7 @@ public: friend class SPObjectClass; friend class SPObjectImpl; + friend class CObject; }; /// The SPObject vtable. @@ -948,6 +952,33 @@ private: }; +class CObject { +public: + CObject(SPObject* object); + virtual ~CObject(); + + virtual void onBuild(SPDocument* doc, Inkscape::XML::Node* repr); + virtual void onRelease(); + + virtual void onChildAdded(Inkscape::XML::Node* child, Inkscape::XML::Node* ref); + virtual void onRemoveChild(Inkscape::XML::Node* child); + + virtual void onOrderChanged(Inkscape::XML::Node* child, Inkscape::XML::Node* old_repr, Inkscape::XML::Node* new_repr); + + virtual void onSet(unsigned int key, const gchar* value); + + virtual void onReadContent(); + + virtual void onUpdate(SPCtx* ctx, unsigned int flags); + virtual void onModified(unsigned int flags); + + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document* doc, Inkscape::XML::Node* repr, guint flags); + +protected: + SPObject* spobject; +}; + + /** * Compares height of objects in tree. * -- cgit v1.2.3 From 07eac1237fe242e6680bd0d76552771ff852fef7 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sat, 18 Aug 2012 01:36:49 +0200 Subject: Added "virtual pad" to SPItem. (bzr r11608.1.2) --- src/sp-item.cpp | 161 +++++++++++++++++++++++++++++++++++++++++++------------- src/sp-item.h | 32 +++++++++++ 2 files changed, 155 insertions(+), 38 deletions(-) diff --git a/src/sp-item.cpp b/src/sp-item.cpp index b1eb5a24a..20b6b3ef3 100644 --- a/src/sp-item.cpp +++ b/src/sp-item.cpp @@ -120,11 +120,22 @@ SPItemClass::sp_item_class_init(SPItemClass *klass) klass->snappoints = SPItem::sp_item_private_snappoints; } +// CPPIFY: remove +CItem::CItem(SPItem* item) : CObject(item) { + this->spitem = item; +} + +CItem::~CItem() { +} + /** * Callback for SPItem object initialization. */ void SPItem::sp_item_init(SPItem *item) { + item->citem = new CItem(item); + item->cobject = item->citem; + item->init(); } @@ -413,9 +424,9 @@ void SPItem::moveTo(SPItem *target, gboolean intoafter) { } } +void CItem::onBuild(SPDocument *document, Inkscape::XML::Node *repr) { + SPItem* object = this->spitem; -void SPItem::sp_item_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) -{ object->readAttr( "style" ); object->readAttr( "transform" ); object->readAttr( "clip-path" ); @@ -427,14 +438,17 @@ void SPItem::sp_item_build(SPObject *object, SPDocument *document, Inkscape::XML object->readAttr( "inkscape:connector-avoid" ); object->readAttr( "inkscape:connection-points" ); - if (((SPObjectClass *) (SPItemClass::static_parent_class))->build) { - (* ((SPObjectClass *) (SPItemClass::static_parent_class))->build)(object, document, repr); - } + CObject::onBuild(document, repr); } -void SPItem::sp_item_release(SPObject *object) +// CPPIFY: remove +void SPItem::sp_item_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) { - SPItem *item = (SPItem *) object; + ((SPItem*)object)->citem->onBuild(document, repr); +} + +void CItem::onRelease() { + SPItem* item = this->spitem; // Note: do this here before the clip_ref is deleted, since calling // ensureUpToDate() for triggered routing may reference @@ -447,20 +461,25 @@ void SPItem::sp_item_release(SPObject *object) delete item->clip_ref; delete item->mask_ref; - if (((SPObjectClass *) (SPItemClass::static_parent_class))->release) { - ((SPObjectClass *) SPItemClass::static_parent_class)->release(object); - } + CObject::onRelease(); while (item->display) { - item->display = sp_item_view_list_remove(item->display, item->display); + item->display = SPItem::sp_item_view_list_remove(item->display, item->display); } item->_transformed_signal.~signal(); + } -void SPItem::sp_item_set(SPObject *object, unsigned key, gchar const *value) +// CPPIFY: remove +void SPItem::sp_item_release(SPObject *object) { - SPItem *item = (SPItem *) object; + ((SPItem*)object)->citem->onRelease(); +} + +void CItem::onSet(unsigned int key, gchar const* value) { + SPItem *item = this->spitem; + SPItem* object = item; switch (key) { case SP_ATTR_TRANSFORM: { @@ -544,14 +563,18 @@ void SPItem::sp_item_set(SPObject *object, unsigned key, gchar const *value) sp_style_read_from_object(object->style, object); object->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG); } else { - if (((SPObjectClass *) (SPItemClass::static_parent_class))->set) { - (* ((SPObjectClass *) (SPItemClass::static_parent_class))->set)(object, key, value); - } + CObject::onSet(key, value); } break; } } +// CPPIFY: remove +void SPItem::sp_item_set(SPObject *object, unsigned key, gchar const *value) +{ + ((SPItem*)object)->citem->onSet(key, value); +} + void SPItem::clip_ref_changed(SPObject *old_clip, SPObject *clip, SPItem *item) { if (old_clip) { @@ -601,13 +624,16 @@ void SPItem::mask_ref_changed(SPObject *old_mask, SPObject *mask, SPItem *item) } } -void SPItem::sp_item_update(SPObject *object, SPCtx *ctx, guint flags) -{ - SPItem *item = SP_ITEM(object); +void CItem::onUpdate(SPCtx *ctx, guint flags) { + SPItem *item = this->spitem; + SPItem* object = item; - if (((SPObjectClass *) (SPItemClass::static_parent_class))->update) { - (* ((SPObjectClass *) (SPItemClass::static_parent_class))->update)(object, ctx, flags); - } + // CPPIFY: As CItem is derived directly from CObject, this doesn't make no sense. + // CObject::onUpdate is pure. What was the idea behind these lines? +// if (((SPObjectClass *) (SPItemClass::static_parent_class))->update) { +// (* ((SPObjectClass *) (SPItemClass::static_parent_class))->update)(object, ctx, flags); +// } +// CObject::onUpdate(ctx, flags); // any of the modifications defined in sp-object.h might change bbox, // so we invalidate it unconditionally @@ -661,9 +687,15 @@ void SPItem::sp_item_update(SPObject *object, SPCtx *ctx, guint flags) item->avoidRef->handleSettingChange(); } -Inkscape::XML::Node *SPItem::sp_item_write(SPObject *const object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +// CPPIFY: remove +void SPItem::sp_item_update(SPObject *object, SPCtx *ctx, guint flags) { - SPItem *item = SP_ITEM(object); + ((SPItem*)object)->citem->onUpdate(ctx, flags); +} + +Inkscape::XML::Node* CItem::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPItem *item = this->spitem; + SPItem* object = item; // in the case of SP_OBJECT_WRITE_BUILD, the item should always be newly created, // so we need to add any children from the underlying object to the new repr @@ -721,13 +753,22 @@ Inkscape::XML::Node *SPItem::sp_item_write(SPObject *const object, Inkscape::XML } } - if (((SPObjectClass *) (SPItemClass::static_parent_class))->write) { - ((SPObjectClass *) (SPItemClass::static_parent_class))->write(object, xml_doc, repr, flags); - } + CObject::onWrite(xml_doc, repr, flags); return repr; } +// CPPIFY: remove +Inkscape::XML::Node *SPItem::sp_item_write(SPObject *const object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +{ + return ((SPItem*)object)->citem->onWrite(xml_doc, repr, flags); +} + +// CPPIFY: make pure virtual +Geom::OptRect CItem::onBbox(Geom::Affine const &transform, SPItem::BBoxType type) { + throw; +} + /** * Get item's geometric bounding box in this item's coordinate system. * @@ -813,6 +854,7 @@ Geom::OptRect SPItem::visualBounds(Geom::Affine const &transform) const return bbox; } + Geom::OptRect SPItem::bounds(BBoxType type, Geom::Affine const &transform) const { if (type == GEOMETRIC_BBOX) { @@ -902,6 +944,12 @@ unsigned SPItem::pos_in_parent() return 0; } +// CPPIFY: make pure virtual, see below! +void CItem::onSnappoints(std::vector &p, Inkscape::SnapPreferences const *snapprefs) { + throw; +} + +// CPPIFY: remove void SPItem::sp_item_private_snappoints(SPItem const * /*item*/, std::vector &/*p*/, Inkscape::SnapPreferences const * /*snapprefs*/) { /* This will only be called if the derived class doesn't override this. @@ -911,7 +959,6 @@ void SPItem::sp_item_private_snappoints(SPItem const * /*item*/, std::vector &p, Inkscape::SnapPreferences const *snapprefs) const { // Get the snappoints of the item @@ -953,6 +1000,11 @@ void SPItem::getSnappoints(std::vector &p, Inkscap } } +// CPPIFY: make pure virtual +void CItem::onPrint(SPPrintContext* ctx) { + throw; +} + void SPItem::invoke_print(SPPrintContext *ctx) { if ( !isHidden() ) { @@ -970,9 +1022,15 @@ void SPItem::invoke_print(SPPrintContext *ctx) } } -gchar *SPItem::sp_item_private_description(SPItem */*item*/) +// CPPIFY: is it possible to combine this method with "SPItem::description()"? +gchar* CItem::onDescription() { + return g_strdup(_("Object")); +} + +// CPPIFY: remove +gchar *SPItem::sp_item_private_description(SPItem *item) { - return g_strdup(_("Object")); + return item->citem->onDescription(); } /** @@ -1040,6 +1098,11 @@ unsigned SPItem::display_key_new(unsigned numkeys) return dkey - numkeys; } +// CPPIFY: make pure virtual +Inkscape::DrawingItem* CItem::onShow(Inkscape::Drawing &drawing, unsigned int key, unsigned int flags) { + throw; +} + Inkscape::DrawingItem *SPItem::invoke_show(Inkscape::Drawing &drawing, unsigned key, unsigned flags) { Inkscape::DrawingItem *ai = NULL; @@ -1094,6 +1157,11 @@ Inkscape::DrawingItem *SPItem::invoke_show(Inkscape::Drawing &drawing, unsigned return ai; } +// CPPIFY: make pure virtual +void CItem::onHide(unsigned int key) { + throw; +} + void SPItem::invoke_hide(unsigned key) { if (((SPItemClass *) G_OBJECT_GET_CLASS(this))->hide) { @@ -1323,6 +1391,11 @@ void SPItem::adjust_livepatheffect (Geom::Affine const &postmul, bool set) } } +// CPPIFY:: make pure virtual +Geom::Affine CItem::onSetTransform(Geom::Affine const &transform) { + throw; +} + /** * Set a new transform on an object. * @@ -1425,6 +1498,11 @@ void SPItem::doWriteTransform(Inkscape::XML::Node *repr, Geom::Affine const &tra _transformed_signal.emit(&advertized_transform, this); } +// CPPIFY: see below, do not make pure? +gint CItem::onEvent(SPEvent* event) { + return FALSE; +} + gint SPItem::emitEvent(SPEvent &event) { if (((SPItemClass *) G_OBJECT_GET_CLASS(this))->event) { @@ -1449,15 +1527,22 @@ void SPItem::set_item_transform(Geom::Affine const &transform_matrix) } } -void SPItem::convert_item_to_guides() { - // Use derived method if present ... - if (((SPItemClass *) G_OBJECT_GET_CLASS(this))->convert_to_guides) { - (*((SPItemClass *) G_OBJECT_GET_CLASS(this))->convert_to_guides)(this); - } else { - // .. otherwise simply place the guides around the item's bounding box +void CItem::onConvertToGuides() { + // CPPIFY: If not overridden, call SPItem::convert_to_guides(), see below! + this->spitem->convert_to_guides(); +} - convert_to_guides(); - } +// CPPIFY: remove +void SPItem::convert_item_to_guides() { +// // Use derived method if present ... +// if (((SPItemClass *) G_OBJECT_GET_CLASS(this))->convert_to_guides) { +// (*((SPItemClass *) G_OBJECT_GET_CLASS(this))->convert_to_guides)(this); +// } else { +// // .. otherwise simply place the guides around the item's bounding box +// +// convert_to_guides(); +// } + this->citem->onConvertToGuides(); } diff --git a/src/sp-item.h b/src/sp-item.h index 2c7bd5a5d..69300e093 100644 --- a/src/sp-item.h +++ b/src/sp-item.h @@ -100,6 +100,7 @@ public: class SPItem; class SPItemClass; +class CItem; #define SP_TYPE_ITEM (SPItem::getType ()) #define SP_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SP_TYPE_ITEM, SPItem)) @@ -120,6 +121,8 @@ public: VISUAL_BBOX }; + CItem* citem; + unsigned int sensitive : 1; unsigned int stop_paint: 1; mutable unsigned bbox_valid : 1; @@ -244,6 +247,7 @@ private: static void mask_ref_changed(SPObject *old_clip, SPObject *clip, SPItem *item); friend class SPItemClass; + friend class CItem; }; /// The SPItem vtable. @@ -283,8 +287,36 @@ public: static void sp_item_class_init(SPItemClass *klass); friend class SPItem; + friend class CItem; +}; + + +class CItem : public CObject { +public: + CItem(SPItem* item); + virtual ~CItem(); + + virtual void onBuild(SPDocument *document, Inkscape::XML::Node *repr); + virtual void onRelease(); + virtual void onSet(unsigned int key, gchar const* value); + virtual void onUpdate(SPCtx *ctx, guint flags); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + + virtual Geom::OptRect onBbox(Geom::Affine const &transform, SPItem::BBoxType type); + virtual void onPrint(SPPrintContext *ctx); + virtual gchar* onDescription(); + virtual Inkscape::DrawingItem* onShow(Inkscape::Drawing &drawing, unsigned int key, unsigned int flags); + virtual void onHide(unsigned int key); + virtual void onSnappoints(std::vector &p, Inkscape::SnapPreferences const *snapprefs); + virtual Geom::Affine onSetTransform(Geom::Affine const &transform); + virtual void onConvertToGuides(); + virtual gint onEvent(SPEvent *event); + +protected: + SPItem* spitem; }; + // Utility Geom::Affine i2anc_affine(SPObject const *item, SPObject const *ancestor); -- cgit v1.2.3 From 39c965d12930e24942a9ae036c5cb2166eee81b4 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sat, 18 Aug 2012 02:09:06 +0200 Subject: Added "virtual pad" to SPLPEItem. (bzr r11608.1.3) --- src/sp-lpe-item.cpp | 151 ++++++++++++++++++++++++++++++++++++---------------- src/sp-lpe-item.h | 29 ++++++++++ 2 files changed, 134 insertions(+), 46 deletions(-) diff --git a/src/sp-lpe-item.cpp b/src/sp-lpe-item.cpp index f17422d02..f43e5cc07 100644 --- a/src/sp-lpe-item.cpp +++ b/src/sp-lpe-item.cpp @@ -111,9 +111,21 @@ sp_lpe_item_class_init(SPLPEItemClass *klass) klass->update_patheffect = NULL; } +// CPPIFY: remove +CLPEItem::CLPEItem(SPLPEItem* lpeitem) : CItem(lpeitem) { + this->splpeitem = lpeitem; +} + +CLPEItem::~CLPEItem() { +} + static void sp_lpe_item_init(SPLPEItem *lpeitem) { + lpeitem->clpeitem = new CLPEItem(lpeitem); + lpeitem->citem = lpeitem->clpeitem; + lpeitem->cobject = lpeitem->clpeitem; + lpeitem->path_effects_enabled = 1; lpeitem->path_effect_list = new PathEffectList(); @@ -130,6 +142,15 @@ sp_lpe_item_finalize(GObject *object) } } +void CLPEItem::onBuild(SPDocument *document, Inkscape::XML::Node *repr) { + SPLPEItem* object = this->splpeitem; + + object->readAttr( "inkscape:path-effect" ); + + CItem::onBuild(document, repr); +} + +// CPPIFY: remove /** * Reads the Inkscape::XML::Node, and initializes SPLPEItem variables. For this to get called, * our name must be associated with a repr via "sp_object_type_register". Best done through @@ -138,20 +159,11 @@ sp_lpe_item_finalize(GObject *object) static void sp_lpe_item_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) { - object->readAttr( "inkscape:path-effect" ); - - if (((SPObjectClass *) parent_class)->build) { - ((SPObjectClass *) parent_class)->build(object, document, repr); - } + ((SPLPEItem*)object)->clpeitem->onBuild(document, repr); } -/** - * Drops any allocated memory. - */ -static void -sp_lpe_item_release(SPObject *object) -{ - SPLPEItem *lpeitem = (SPLPEItem *) object; +void CLPEItem::onRelease() { + SPLPEItem *lpeitem = this->splpeitem; // disconnect all modified listeners: for (std::list::iterator mod_it = lpeitem->lpe_modified_connection_list->begin(); @@ -173,17 +185,22 @@ sp_lpe_item_release(SPObject *object) delete lpeitem->path_effect_list; lpeitem->path_effect_list = NULL; - if (((SPObjectClass *) parent_class)->release) - ((SPObjectClass *) parent_class)->release(object); + CItem::onRelease(); } +// CPPIFY: remove /** - * Sets a specific value in the SPLPEItem. + * Drops any allocated memory. */ static void -sp_lpe_item_set(SPObject *object, unsigned int key, gchar const *value) +sp_lpe_item_release(SPObject *object) { - SPLPEItem *lpeitem = (SPLPEItem *) object; + ((SPLPEItem*)object)->clpeitem->onRelease(); +} + +void CLPEItem::onSet(unsigned int key, gchar const* value) { + SPLPEItem *lpeitem = this->splpeitem; + SPLPEItem* object = lpeitem; switch (key) { case SP_ATTR_INKSCAPE_PATH_EFFECT: @@ -243,49 +260,66 @@ sp_lpe_item_set(SPObject *object, unsigned int key, gchar const *value) } break; default: - if (((SPObjectClass *) parent_class)->set) { - ((SPObjectClass *) parent_class)->set(object, key, value); - } + CItem::onSet(key, value); break; } } +// CPPIFY: remove /** - * Receives update notifications. + * Sets a specific value in the SPLPEItem. */ static void -sp_lpe_item_update(SPObject *object, SPCtx *ctx, guint flags) +sp_lpe_item_set(SPObject *object, unsigned int key, gchar const *value) { - if (((SPObjectClass *) parent_class)->update) { - ((SPObjectClass *) parent_class)->update(object, ctx, flags); - } + ((SPLPEItem*)object)->clpeitem->onSet(key, value); +} + +void CLPEItem::onUpdate(SPCtx* ctx, unsigned int flags) { + CItem::onUpdate(ctx, flags); - // update the helperpaths of all LPEs applied to the item + // update the helperpaths of all LPEs applied to the item // TODO: re-add for the new node tool } +// CPPIFY: remove /** - * Sets modified flag for all sub-item views. + * Receives update notifications. */ static void -sp_lpe_item_modified (SPObject *object, unsigned int flags) +sp_lpe_item_update(SPObject *object, SPCtx *ctx, guint flags) { + ((SPLPEItem*)object)->clpeitem->onUpdate(ctx, flags); +} + +void CLPEItem::onModified(unsigned int flags) { + SPLPEItem *lpeitem = this->splpeitem; + SPLPEItem* object = lpeitem; + if (SP_IS_GROUP(object) && (flags & SP_OBJECT_MODIFIED_FLAG) && (flags & SP_OBJECT_USER_MODIFIED_FLAG_B)) { sp_lpe_item_update_patheffect(SP_LPE_ITEM(object), true, true); } - if (((SPObjectClass *) (parent_class))->modified) { - (* ((SPObjectClass *) (parent_class))->modified) (object, flags); - } + // CPPIFY: This doesn't make no sense. + // CObject::onModified is pure and CItem doesn't override this method. What was the idea behind these lines? +// if (((SPObjectClass *) (parent_class))->modified) { +// (* ((SPObjectClass *) (parent_class))->modified) (object, flags); +// } +// CItem::onModified(flags); } +// CPPIFY: remove /** - * Writes its settings to an incoming repr object, if any. + * Sets modified flag for all sub-item views. */ -static Inkscape::XML::Node * -sp_lpe_item_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +static void +sp_lpe_item_modified (SPObject *object, unsigned int flags) { - SPLPEItem *lpeitem = (SPLPEItem *) object; + ((SPLPEItem*)object)->clpeitem->onModified(flags); +} + +Inkscape::XML::Node* CLPEItem::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPLPEItem *lpeitem = this->splpeitem; if (flags & SP_OBJECT_WRITE_EXT) { if ( sp_lpe_item_has_path_effect(lpeitem) ) { @@ -296,13 +330,21 @@ sp_lpe_item_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape:: } } - if (((SPObjectClass *)(parent_class))->write) { - ((SPObjectClass *)(parent_class))->write(object, xml_doc, repr, flags); - } + CItem::onWrite(xml_doc, repr, flags); return repr; } +// CPPIFY: remove +/** + * Writes its settings to an incoming repr object, if any. + */ +static Inkscape::XML::Node * +sp_lpe_item_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +{ + return ((SPLPEItem*)object)->clpeitem->onWrite(xml_doc, repr, flags); +} + /** * returns true when LPE was successful. */ @@ -360,6 +402,11 @@ bool sp_lpe_item_perform_path_effect(SPLPEItem *lpeitem, SPCurve *curve) { return true; } +// CPPIFY: make pure virtual +void CLPEItem::onUpdatePatheffect(bool write) { + throw; +} + /** * Calls any registered handlers for the update_patheffect action */ @@ -675,11 +722,10 @@ void sp_lpe_item_edit_next_param_oncanvas(SPLPEItem *lpeitem, SPDesktop *dt) } } -static void -sp_lpe_item_child_added (SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node *ref) -{ - if (((SPObjectClass *) (parent_class))->child_added) - (* ((SPObjectClass *) (parent_class))->child_added) (object, child, ref); +void CLPEItem::onChildAdded(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { + SPLPEItem* object = this->splpeitem; + + CItem::onChildAdded(child, ref); if (SP_IS_LPE_ITEM(object) && sp_lpe_item_has_path_effect_recursive(SP_LPE_ITEM(object))) { SPObject *ochild = object->get_child_by_repr(child); @@ -689,9 +735,16 @@ sp_lpe_item_child_added (SPObject *object, Inkscape::XML::Node *child, Inkscape: } } +// CPPIFY: remove static void -sp_lpe_item_remove_child (SPObject * object, Inkscape::XML::Node * child) +sp_lpe_item_child_added (SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { + ((SPLPEItem*)object)->clpeitem->onChildAdded(child, ref); +} + +void CLPEItem::onRemoveChild(Inkscape::XML::Node * child) { + SPLPEItem* object = this->splpeitem; + if (SP_IS_LPE_ITEM(object) && sp_lpe_item_has_path_effect_recursive(SP_LPE_ITEM(object))) { SPObject *ochild = object->get_child_by_repr(child); if ( ochild && SP_IS_LPE_ITEM(ochild) ) { @@ -699,8 +752,14 @@ sp_lpe_item_remove_child (SPObject * object, Inkscape::XML::Node * child) } } - if (((SPObjectClass *) (parent_class))->remove_child) - (* ((SPObjectClass *) (parent_class))->remove_child) (object, child); + CItem::onRemoveChild(child); +} + +// CPPIFY: remove +static void +sp_lpe_item_remove_child (SPObject * object, Inkscape::XML::Node * child) +{ + ((SPLPEItem*)object)->clpeitem->onRemoveChild(child); } static std::string patheffectlist_write_svg(PathEffectList const & list) diff --git a/src/sp-lpe-item.h b/src/sp-lpe-item.h index 8f99ae1b0..b45e9950a 100644 --- a/src/sp-lpe-item.h +++ b/src/sp-lpe-item.h @@ -26,6 +26,7 @@ struct LivePathEffectObject; struct SPCurve; +class CLPEItem; namespace Inkscape{ namespace Display { @@ -41,6 +42,8 @@ typedef std::list PathEffectList class SPLPEItem : public SPItem { public: + CLPEItem* clpeitem; + int path_effects_enabled; PathEffectList* path_effect_list; @@ -59,6 +62,32 @@ struct SPLPEItemClass { void (* update_patheffect) (SPLPEItem *lpeitem, bool write); }; + +class CLPEItem : public CItem { +public: + CLPEItem(SPLPEItem* lpeitem); + virtual ~CLPEItem(); + + virtual void onBuild(SPDocument* doc, Inkscape::XML::Node* repr); + virtual void onRelease(); + + virtual void onSet(unsigned int key, gchar const* value); + + virtual void onUpdate(SPCtx* ctx, unsigned int flags); + virtual void onModified(unsigned int flags); + + virtual void onChildAdded(Inkscape::XML::Node* child, Inkscape::XML::Node* ref); + virtual void onRemoveChild(Inkscape::XML::Node* child); + + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + + virtual void onUpdatePatheffect(bool write); + +protected: + SPLPEItem* splpeitem; +}; + + GType sp_lpe_item_get_type(); void sp_lpe_item_update_patheffect (SPLPEItem *lpeitem, bool wholetree, bool write); -- cgit v1.2.3 From c849e4b8aaffdb80a32b29bfda1df21d00b468eb Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sat, 18 Aug 2012 02:53:06 +0200 Subject: Added "virtual pad" to SPShape. (bzr r11608.1.4) --- src/sp-shape.cpp | 251 ++++++++++++++++++++++++++++++++++--------------------- src/sp-shape.h | 33 ++++++++ 2 files changed, 191 insertions(+), 93 deletions(-) diff --git a/src/sp-shape.cpp b/src/sp-shape.cpp index f27b3c9db..e0f13c62d 100644 --- a/src/sp-shape.cpp +++ b/src/sp-shape.cpp @@ -111,11 +111,23 @@ void SPShapeClass::sp_shape_class_init(SPShapeClass *klass) klass->set_shape = NULL; } +CShape::CShape(SPShape* shape) : CLPEItem(shape) { + this->spshape = shape; +} + +CShape::~CShape() { +} + /** * Initializes an SPShape object. */ void SPShape::sp_shape_init(SPShape *shape) { + shape->cshape = new CShape(shape); + shape->clpeitem = shape->cshape; + shape->citem = shape->cshape; + shape->cobject = shape->cshape; + for ( int i = 0 ; i < SP_MARKER_LOC_QTY ; i++ ) { new (&shape->_release_connect[i]) sigc::connection(); new (&shape->_modified_connect[i]) sigc::connection(); @@ -141,6 +153,17 @@ void SPShape::sp_shape_finalize(GObject *object) } } +void CShape::onBuild(SPDocument *document, Inkscape::XML::Node *repr) { + SPShape* object = this->spshape; + + CLPEItem::onBuild(document, repr); + + for (int i = 0 ; i < SP_MARKER_LOC_QTY ; i++) { + sp_shape_set_marker (object, i, object->style->marker[i].value); + } +} + +// CPPIFY: remove /** * Virtual build callback for SPMarker. * @@ -150,31 +173,15 @@ void SPShape::sp_shape_finalize(GObject *object) */ void SPShape::sp_shape_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) { - if (((SPObjectClass *) (SPShapeClass::parent_class))->build) { - (*((SPObjectClass *) (SPShapeClass::parent_class))->build) (object, document, repr); - } - - for (int i = 0 ; i < SP_MARKER_LOC_QTY ; i++) { - sp_shape_set_marker (object, i, object->style->marker[i].value); - } + ((SPShape*)object)->cshape->onBuild(document, repr); } -/** - * Removes, releases and unrefs all children of object - * - * This is the inverse of sp_shape_build(). It must be invoked as soon - * as the shape is removed from the tree, even if it is still referenced - * by other objects. This routine also disconnects/unrefs markers and - * curves attached to it. - * - * \see sp_object_release() - */ -void SPShape::sp_shape_release(SPObject *object) -{ +void CShape::onRelease() { SPItem *item; SPShape *shape; SPItemView *v; int i; + SPShape* object = this->spshape; item = (SPItem *) object; shape = (SPShape *) object; @@ -196,40 +203,51 @@ void SPShape::sp_shape_release(SPObject *object) shape->_curve_before_lpe = shape->_curve_before_lpe->unref(); } - if (((SPObjectClass *) SPShapeClass::parent_class)->release) { - ((SPObjectClass *) SPShapeClass::parent_class)->release (object); - } + CLPEItem::onRelease(); } +// CPPIFY: remove +/** + * Removes, releases and unrefs all children of object + * + * This is the inverse of sp_shape_build(). It must be invoked as soon + * as the shape is removed from the tree, even if it is still referenced + * by other objects. This routine also disconnects/unrefs markers and + * curves attached to it. + * + * \see sp_object_release() + */ +void SPShape::sp_shape_release(SPObject *object) +{ + ((SPShape*)object)->cshape->onRelease(); +} +void CShape::onSet(unsigned int key, const gchar* value) { + CLPEItem::onSet(key, value); +} +// CPPIFY: remove void SPShape::sp_shape_set(SPObject *object, unsigned int key, gchar const *value) { - if (((SPObjectClass *) SPShapeClass::parent_class)->set) { - ((SPObjectClass *) SPShapeClass::parent_class)->set(object, key, value); - } + ((SPShape*)object)->cshape->onSet(key, value); +} + +Inkscape::XML::Node* CShape::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + CLPEItem::onWrite(xml_doc, repr, flags); + return repr; } +// CPPIFY: remove Inkscape::XML::Node * SPShape::sp_shape_write(SPObject *object, Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) { - if (((SPObjectClass *)(SPShapeClass::parent_class))->write) { - ((SPObjectClass *)(SPShapeClass::parent_class))->write(object, doc, repr, flags); - } - - return repr; + return ((SPShape*)object)->cshape->onWrite(doc, repr, flags); } -/** - * Updates the shape when its attributes have changed. Also establishes - * marker objects to match the style settings. - */ -void SPShape::sp_shape_update(SPObject *object, SPCtx *ctx, unsigned int flags) -{ - SPShape *shape = (SPShape *) object; +void CShape::onUpdate(SPCtx* ctx, guint flags) { + SPShape* shape = this->spshape; + SPShape* object = shape; - if (((SPObjectClass *) (SPShapeClass::parent_class))->update) { - (* ((SPObjectClass *) (SPShapeClass::parent_class))->update) (object, ctx, flags); - } + CLPEItem::onUpdate(ctx, flags); /* This stanza checks that an object's marker style agrees with * the marker objects it has allocated. sp_shape_set_marker ensures @@ -281,11 +299,21 @@ void SPShape::sp_shape_update(SPObject *object, SPCtx *ctx, unsigned int flags) /* Update marker views */ for (SPItemView *v = shape->display; v != NULL; v = v->next) { - sp_shape_update_marker_view (shape, v->arenaitem); + SPShape::sp_shape_update_marker_view (shape, v->arenaitem); } } } +// CPPIFY: remove +/** + * Updates the shape when its attributes have changed. Also establishes + * marker objects to match the style settings. + */ +void SPShape::sp_shape_update(SPObject *object, SPCtx *ctx, unsigned int flags) +{ + ((SPShape*)object)->cshape->onUpdate(ctx, flags); +} + /** * Calculate the transform required to get a marker's path object in the * right place for particular path segment on a shape. @@ -479,32 +507,32 @@ void SPShape::sp_shape_update_marker_view(SPShape *shape, Inkscape::DrawingItem } } -/** - * Sets modified flag for all sub-item views. - */ -void SPShape::sp_shape_modified(SPObject *object, unsigned int flags) -{ - SPShape *shape = SP_SHAPE (object); +void CShape::onModified(unsigned int flags) { + SPShape* shape = this->spshape; + SPShape* object = shape; - if (((SPObjectClass *) (SPShapeClass::parent_class))->modified) { - (* ((SPObjectClass *) (SPShapeClass::parent_class))->modified) (object, flags); - } + CLPEItem::onModified(flags); if (flags & SP_OBJECT_STYLE_MODIFIED_FLAG) { for (SPItemView *v = shape->display; v != NULL; v = v->next) { Inkscape::DrawingShape *sh = dynamic_cast(v->arenaitem); - sh->setStyle(object->style); + sh->setStyle(shape->style); } } } +// CPPIFY: remove /** - * Calculates the bounding box for item, storing it into bbox. - * This also includes the bounding boxes of any markers included in the shape. + * Sets modified flag for all sub-item views. */ -Geom::OptRect SPShape::sp_shape_bbox(SPItem const *item, Geom::Affine const &transform, SPItem::BBoxType bboxtype) +void SPShape::sp_shape_modified(SPObject *object, unsigned int flags) { - SPShape const *shape = SP_SHAPE (item); + ((SPShape*)object)->cshape->onModified(flags); +} + +Geom::OptRect CShape::onBbox(Geom::Affine const &transform, SPItem::BBoxType bboxtype) { + SPShape const* shape = this->spshape; + SPShape const* item = shape; Geom::OptRect bbox; if (!shape->_curve) return bbox; @@ -656,6 +684,16 @@ Geom::OptRect SPShape::sp_shape_bbox(SPItem const *item, Geom::Affine const &tra return bbox; } +// CPPIFY: remove +/** + * Calculates the bounding box for item, storing it into bbox. + * This also includes the bounding boxes of any markers included in the shape. + */ +Geom::OptRect SPShape::sp_shape_bbox(SPItem const *item, Geom::Affine const &transform, SPItem::BBoxType bboxtype) +{ + return ((SPShape*)item)->cshape->onBbox(transform, bboxtype); +} + static void sp_shape_print_invoke_marker_printing(SPObject *obj, Geom::Affine tr, SPStyle const *style, SPPrintContext *ctx) { @@ -674,19 +712,12 @@ sp_shape_print_invoke_marker_printing(SPObject *obj, Geom::Affine tr, SPStyle co marker_item->transform = old_tr; } } -/** - * Prepares shape for printing. Handles printing of comments for printing - * debugging, sizes the item to fit into the document width/height, - * applies print fill/stroke, sets transforms for markers, and adds - * comment labels. - */ -void -sp_shape_print (SPItem *item, SPPrintContext *ctx) -{ - Geom::OptRect pbox, dbox, bbox; - SPShape *shape = SP_SHAPE(item); +void CShape::onPrint(SPPrintContext* ctx) { + SPShape *shape = this->spshape; + SPShape* item = shape; + Geom::OptRect pbox, dbox, bbox; if (!shape->_curve) return; Geom::PathVector const & pathv = shape->_curve->get_pathvector(); @@ -781,21 +812,30 @@ sp_shape_print (SPItem *item, SPPrintContext *ctx) } } - if (add_comments) { - gchar * comment = g_strdup_printf("end '%s'", - item->defaultLabel()); - sp_print_comment(ctx, comment); - g_free(comment); - } + if (add_comments) { + gchar * comment = g_strdup_printf("end '%s'", + item->defaultLabel()); + sp_print_comment(ctx, comment); + g_free(comment); + } } +// CPPIFY: remove /** - * Sets style, path, and paintbox. Updates marker views, including dimensions. + * Prepares shape for printing. Handles printing of comments for printing + * debugging, sizes the item to fit into the document width/height, + * applies print fill/stroke, sets transforms for markers, and adds + * comment labels. */ -Inkscape::DrawingItem * SPShape::sp_shape_show(SPItem *item, Inkscape::Drawing &drawing, unsigned int /*key*/, unsigned int /*flags*/) +void +sp_shape_print (SPItem *item, SPPrintContext *ctx) { - SPObject *object = item; - SPShape *shape = SP_SHAPE(item); + ((SPShape*)item)->cshape->onPrint(ctx); +} + +Inkscape::DrawingItem* CShape::onShow(Inkscape::Drawing &drawing, unsigned int key, unsigned int flags) { + SPObject *object = this->spshape; + SPShape *shape = this->spshape; Inkscape::DrawingShape *s = new Inkscape::DrawingShape(drawing); s->setStyle(object->style); @@ -826,23 +866,27 @@ Inkscape::DrawingItem * SPShape::sp_shape_show(SPItem *item, Inkscape::Drawing & } /* Update marker views */ - sp_shape_update_marker_view (shape, s); + SPShape::sp_shape_update_marker_view (shape, s); } return s; } /** - * Hides/removes marker views from the shape. + * Sets style, path, and paintbox. Updates marker views, including dimensions. */ -void SPShape::sp_shape_hide(SPItem *item, unsigned int key) +Inkscape::DrawingItem * SPShape::sp_shape_show(SPItem *item, Inkscape::Drawing &drawing, unsigned int key, unsigned int flags) { - SPShape *shape; + return ((SPShape*)item)->cshape->onShow(drawing, key, flags); +} + +void CShape::onHide(unsigned int key) { + SPShape *shape = this->spshape; + SPShape* item = shape; + SPItemView *v; int i; - shape = (SPShape *) item; - for (i=0; i_marker[i]) { for (v = item->display; v != NULL; v = v->next) { @@ -854,9 +898,21 @@ void SPShape::sp_shape_hide(SPItem *item, unsigned int key) } } - if (((SPItemClass *) SPShapeClass::parent_class)->hide) { - ((SPItemClass *) SPShapeClass::parent_class)->hide (item, key); - } + // CPPIFY: This doesn't make no sense. + // CItem::onHide is pure and CLPEItem doesn't override it. What was the idea behind these lines? +// if (((SPItemClass *) SPShapeClass::parent_class)->hide) { +// ((SPItemClass *) SPShapeClass::parent_class)->hide (item, key); +// } +// CLPEItem::onHide(key); +} + +// CPPIFY: remove +/** + * Hides/removes marker views from the shape. + */ +void SPShape::sp_shape_hide(SPItem *item, unsigned int key) +{ + ((SPShape*)item)->cshape->onHide(key); } /** @@ -1013,7 +1069,10 @@ sp_shape_set_marker (SPObject *object, unsigned int key, const gchar *value) } } - +// CPPIFY: make pure virtual +void CShape::onSetShape() { + throw; +} /* Shape section */ @@ -1107,15 +1166,13 @@ void SPShape::setCurveInsync(SPCurve *new_curve, unsigned int owner) } } -/** - * Return all nodes in a path that are to be considered for snapping - */ -void SPShape::sp_shape_snappoints(SPItem const *item, std::vector &p, Inkscape::SnapPreferences const *snapprefs) -{ - g_assert(item != NULL); +void CShape::onSnappoints(std::vector &p, Inkscape::SnapPreferences const *snapprefs) { + SPShape const *shape = this->spshape; + SPShape const *item = shape; + + g_assert(item != NULL); g_assert(SP_IS_SHAPE(item)); - SPShape const *shape = SP_SHAPE(item); if (shape->_curve == NULL) { return; } @@ -1210,7 +1267,15 @@ void SPShape::sp_shape_snappoints(SPItem const *item, std::vector &p, Inkscape::SnapPreferences const *snapprefs) +{ + ((SPShape*)item)->cshape->onSnappoints(p, snapprefs); } /* diff --git a/src/sp-shape.h b/src/sp-shape.h index 453750946..7459b2f90 100644 --- a/src/sp-shape.h +++ b/src/sp-shape.h @@ -32,12 +32,15 @@ class SPDesktop; namespace Inkscape { class DrawingItem; } +class CShape; /** * Base class for shapes, including element */ class SPShape : public SPLPEItem { public: + CShape* cshape; + static GType getType (void); void setShape (); SPCurve * getCurve () const; @@ -79,6 +82,7 @@ private: friend class SPShapeClass; + friend class CShape; }; class SPShapeClass { @@ -95,6 +99,35 @@ private: friend class SPShape; }; + +class CShape : public CLPEItem { +public: + CShape(SPShape* shape); + virtual ~CShape(); + + virtual void onBuild(SPDocument *document, Inkscape::XML::Node *repr); + virtual void onRelease(); + virtual void onUpdate(SPCtx* ctx, guint flags); + virtual void onModified(unsigned int flags); + + virtual void onSet(unsigned int key, gchar const* value); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + + virtual Geom::OptRect onBbox(Geom::Affine const &transform, SPItem::BBoxType bboxtype); + virtual void onPrint(SPPrintContext* ctx); + + virtual Inkscape::DrawingItem* onShow(Inkscape::Drawing &drawing, unsigned int key, unsigned int flags); + virtual void onHide(unsigned int key); + + virtual void onSnappoints(std::vector &p, Inkscape::SnapPreferences const *snapprefs); + + virtual void onSetShape(); + +protected: + SPShape* spshape; +}; + + void sp_shape_set_marker (SPObject *object, unsigned int key, const gchar *value); Geom::Affine sp_shape_marker_get_transform(Geom::Curve const & c1, Geom::Curve const & c2); -- cgit v1.2.3 From b86f217e4c4fb55989128b028faaa95650b9d639 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sat, 18 Aug 2012 16:32:37 +0200 Subject: Added "virtual pad" to - SPGenericEllipse - SPEllipse - SPCircle - SPArc (bzr r11608.1.5) --- src/sp-ellipse.cpp | 303 ++++++++++++++++++++++++++++++++++++++--------------- src/sp-ellipse.h | 92 +++++++++++++++- 2 files changed, 309 insertions(+), 86 deletions(-) diff --git a/src/sp-ellipse.cpp b/src/sp-ellipse.cpp index d74eaa6fb..d5d25504b 100644 --- a/src/sp-ellipse.cpp +++ b/src/sp-ellipse.cpp @@ -121,9 +121,22 @@ static void sp_genericellipse_class_init(SPGenericEllipseClass *klass) lpe_item_class->update_patheffect = sp_genericellipse_update_patheffect; } +CGenericEllipse::CGenericEllipse(SPGenericEllipse* genericEllipse) : CShape(genericEllipse) { + this->spgenericEllipse = genericEllipse; +} + +CGenericEllipse::~CGenericEllipse() { +} + static void sp_genericellipse_init(SPGenericEllipse *ellipse) { + ellipse->cgenericEllipse = new CGenericEllipse(ellipse); + ellipse->cshape = ellipse->cgenericEllipse; + ellipse->clpeitem = ellipse->cgenericEllipse; + ellipse->citem = ellipse->cgenericEllipse; + ellipse->cobject = ellipse->cgenericEllipse; + ellipse->cx.unset(); ellipse->cy.unset(); ellipse->rx.unset(); @@ -134,9 +147,9 @@ sp_genericellipse_init(SPGenericEllipse *ellipse) ellipse->closed = TRUE; } -static void -sp_genericellipse_update(SPObject *object, SPCtx *ctx, guint flags) -{ +void CGenericEllipse::onUpdate(SPCtx *ctx, guint flags) { + SPGenericEllipse* object = this->spgenericEllipse; + if (flags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG)) { SPGenericEllipse *ellipse = (SPGenericEllipse *) object; SPStyle const *style = object->style; @@ -154,14 +167,18 @@ sp_genericellipse_update(SPObject *object, SPCtx *ctx, guint flags) static_cast(object)->setShape(); } - if (((SPObjectClass *) ge_parent_class)->update) - ((SPObjectClass *) ge_parent_class)->update(object, ctx, flags); + CShape::onUpdate(ctx, flags); } +// CPPIFY: remove static void -sp_genericellipse_update_patheffect(SPLPEItem *lpeitem, bool write) +sp_genericellipse_update(SPObject *object, SPCtx *ctx, guint flags) { - SPShape *shape = (SPShape *) lpeitem; + ((SPGenericEllipse*)object)->cgenericEllipse->onUpdate(ctx, flags); +} + +void CGenericEllipse::onUpdatePatheffect(bool write) { + SPShape *shape = this->spgenericEllipse; sp_genericellipse_set_shape(shape); if (write) { @@ -178,10 +195,19 @@ sp_genericellipse_update_patheffect(SPLPEItem *lpeitem, bool write) ((SPObject *)shape)->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG); } +// CPPIFY: remove +static void +sp_genericellipse_update_patheffect(SPLPEItem *lpeitem, bool write) +{ + ((SPGenericEllipse*)lpeitem)->cgenericEllipse->onUpdatePatheffect(write); + +} + /* fixme: Think (Lauris) */ /* Can't we use arcto in this method? */ -static void sp_genericellipse_set_shape(SPShape *shape) -{ +void CGenericEllipse::onSetShape() { + SPGenericEllipse* shape = this->spgenericEllipse; + if (sp_lpe_item_has_broken_path_effect(SP_LPE_ITEM(shape))) { g_warning ("The ellipse shape has unknown LPE on it! Convert to path to make it editable preserving the appearance; editing it as ellipse will remove the bad LPE"); if (shape->getRepr()->attribute("d")) { @@ -269,8 +295,15 @@ static void sp_genericellipse_set_shape(SPShape *shape) curve->unref(); } -static void sp_genericellipse_snappoints(SPItem const *item, std::vector &p, Inkscape::SnapPreferences const *snapprefs) +// CPPIFY: remove +static void sp_genericellipse_set_shape(SPShape *shape) { + ((SPGenericEllipse*)shape)->cgenericEllipse->onSetShape(); +} + +void CGenericEllipse::onSnappoints(std::vector &p, Inkscape::SnapPreferences const *snapprefs) { + SPGenericEllipse* item = this->spgenericEllipse; + g_assert(item != NULL); g_assert(SP_IS_GENERICELLIPSE(item)); @@ -336,6 +369,12 @@ static void sp_genericellipse_snappoints(SPItem const *item, std::vector &p, Inkscape::SnapPreferences const *snapprefs) +{ + ((SPGenericEllipse*)item)->cgenericEllipse->onSnappoints(p, snapprefs); +} + void sp_genericellipse_normalize(SPGenericEllipse *ellipse) { @@ -351,9 +390,9 @@ sp_genericellipse_normalize(SPGenericEllipse *ellipse) /* Now we keep: 0 <= start < end <= 2*PI */ } -static Inkscape::XML::Node *sp_genericellipse_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) -{ - SPGenericEllipse *ellipse = SP_GENERICELLIPSE(object); +Inkscape::XML::Node* CGenericEllipse::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPGenericEllipse *ellipse = this->spgenericEllipse; + SPGenericEllipse* object = ellipse; if (flags & SP_OBJECT_WRITE_EXT) { if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { @@ -370,13 +409,17 @@ static Inkscape::XML::Node *sp_genericellipse_write(SPObject *object, Inkscape:: } } - if (((SPObjectClass *) ge_parent_class)->write) { - ((SPObjectClass *) ge_parent_class)->write(object, xml_doc, repr, flags); - } + CShape::onWrite(xml_doc, repr, flags); return repr; } +// CPPIFY: remove +static Inkscape::XML::Node *sp_genericellipse_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +{ + return ((SPGenericEllipse*)object)->cgenericEllipse->onWrite(xml_doc, repr, flags); +} + /* SVG element */ static void sp_ellipse_class_init(SPEllipseClass *klass); @@ -425,30 +468,43 @@ static void sp_ellipse_class_init(SPEllipseClass *klass) item_class->description = sp_ellipse_description; } -static void -sp_ellipse_init(SPEllipse */*ellipse*/) -{ - /* Nothing special */ +CEllipse::CEllipse(SPEllipse* ellipse) : CGenericEllipse(ellipse) { + this->spellipse = ellipse; +} + +CEllipse::~CEllipse() { } static void -sp_ellipse_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) +sp_ellipse_init(SPEllipse *ellipse) { - if (((SPObjectClass *) ellipse_parent_class)->build) - (* ((SPObjectClass *) ellipse_parent_class)->build) (object, document, repr); + ellipse->cellipse = new CEllipse(ellipse); + ellipse->cgenericEllipse = ellipse->cellipse; + ellipse->cshape = ellipse->cellipse; + ellipse->clpeitem = ellipse->cellipse; + ellipse->citem = ellipse->cellipse; + ellipse->cobject = ellipse->cellipse; +} +void CEllipse::onBuild(SPDocument *document, Inkscape::XML::Node *repr) { + CGenericEllipse::onBuild(document, repr); + + SPEllipse* object = this->spellipse; object->readAttr( "cx" ); object->readAttr( "cy" ); object->readAttr( "rx" ); object->readAttr( "ry" ); } -static Inkscape::XML::Node * -sp_ellipse_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +// CPPIFY: remove +static void +sp_ellipse_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) { - SPGenericEllipse *ellipse; + ((SPEllipse*)object)->cellipse->onBuild(document, repr); +} - ellipse = SP_GENERICELLIPSE(object); +Inkscape::XML::Node* CEllipse::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPGenericEllipse *ellipse = this->spellipse; if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { repr = xml_doc->createElement("svg:ellipse"); @@ -459,18 +515,21 @@ sp_ellipse_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::X sp_repr_set_svg_double(repr, "rx", ellipse->rx.computed); sp_repr_set_svg_double(repr, "ry", ellipse->ry.computed); - if (((SPObjectClass *) ellipse_parent_class)->write) - (* ((SPObjectClass *) ellipse_parent_class)->write) (object, xml_doc, repr, flags); + CGenericEllipse::onWrite(xml_doc, repr, flags); return repr; } -static void -sp_ellipse_set(SPObject *object, unsigned int key, gchar const *value) +// CPPIFY: remove +static Inkscape::XML::Node * +sp_ellipse_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { - SPGenericEllipse *ellipse; + return ((SPEllipse*)object)->cellipse->onWrite(xml_doc, repr, flags); +} - ellipse = SP_GENERICELLIPSE(object); +void CEllipse::onSet(unsigned int key, gchar const* value) { + SPEllipse *ellipse = this->spellipse; + SPEllipse* object = (SPEllipse*)ellipse; switch (key) { case SP_ATTR_CX: @@ -494,15 +553,26 @@ sp_ellipse_set(SPObject *object, unsigned int key, gchar const *value) object->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG); break; default: - if (((SPObjectClass *) ellipse_parent_class)->set) - ((SPObjectClass *) ellipse_parent_class)->set(object, key, value); + CGenericEllipse::onSet(key, value); break; } } -static gchar *sp_ellipse_description(SPItem */*item*/) +// CPPIFY: remove +static void +sp_ellipse_set(SPObject *object, unsigned int key, gchar const *value) { - return g_strdup(_("Ellipse")); + ((SPEllipse*)object)->cellipse->onSet(key, value); +} + +gchar* CEllipse::onDescription() { + return g_strdup(_("Ellipse")); +} + +// CPPIFY: remove +static gchar *sp_ellipse_description(SPItem *item) +{ + return ((SPEllipse*)item)->cellipse->onDescription(); } @@ -573,29 +643,43 @@ sp_circle_class_init(SPCircleClass *klass) item_class->description = sp_circle_description; } -static void -sp_circle_init(SPCircle */*circle*/) -{ - /* Nothing special */ +CCircle::CCircle(SPCircle* circle) : CGenericEllipse(circle) { + this->spcircle = circle; +} + +CCircle::~CCircle() { } static void -sp_circle_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) +sp_circle_init(SPCircle *circle) { - if (((SPObjectClass *) circle_parent_class)->build) - (* ((SPObjectClass *) circle_parent_class)->build)(object, document, repr); + circle->ccircle = new CCircle(circle); + circle->cgenericEllipse = circle->ccircle; + circle->cshape = circle->ccircle; + circle->clpeitem = circle->ccircle; + circle->citem = circle->ccircle; + circle->cobject = circle->ccircle; +} + +void CCircle::onBuild(SPDocument *document, Inkscape::XML::Node *repr) { + SPCircle* object = this->spcircle; + + CGenericEllipse::onBuild(document, repr); object->readAttr( "cx" ); object->readAttr( "cy" ); object->readAttr( "r" ); } -static Inkscape::XML::Node * -sp_circle_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +// CPPIFY: remove +static void +sp_circle_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) { - SPGenericEllipse *ellipse; + ((SPCircle*)object)->ccircle->onBuild(document, repr); +} - ellipse = SP_GENERICELLIPSE(object); +Inkscape::XML::Node* CCircle::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPGenericEllipse *ellipse = this->spcircle; if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { repr = xml_doc->createElement("svg:circle"); @@ -605,18 +689,21 @@ sp_circle_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XM sp_repr_set_svg_double(repr, "cy", ellipse->cy.computed); sp_repr_set_svg_double(repr, "r", ellipse->rx.computed); - if (((SPObjectClass *) circle_parent_class)->write) - ((SPObjectClass *) circle_parent_class)->write(object, xml_doc, repr, flags); + CGenericEllipse::onWrite(xml_doc, repr, flags); return repr; } -static void -sp_circle_set(SPObject *object, unsigned int key, gchar const *value) +// CPPIFY: remove +static Inkscape::XML::Node * +sp_circle_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { - SPGenericEllipse *ge; + return ((SPCircle*)object)->ccircle->onWrite(xml_doc, repr, flags); +} - ge = SP_GENERICELLIPSE(object); +void CCircle::onSet(unsigned int key, gchar const* value) { + SPGenericEllipse *ge = this->spcircle; + SPCircle* object = (SPCircle*)ge; switch (key) { case SP_ATTR_CX: @@ -635,15 +722,26 @@ sp_circle_set(SPObject *object, unsigned int key, gchar const *value) object->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG); break; default: - if (((SPObjectClass *) circle_parent_class)->set) - ((SPObjectClass *) circle_parent_class)->set(object, key, value); + CGenericEllipse::onSet(key, value); break; } } -static gchar *sp_circle_description(SPItem */*item*/) +// CPPIFY: remove +static void +sp_circle_set(SPObject *object, unsigned int key, gchar const *value) { - return g_strdup(_("Circle")); + ((SPCircle*)object)->ccircle->onSet(key, value); +} + +gchar* CCircle::onDescription() { + return g_strdup(_("Circle")); +} + +// CPPIFY: remove +gchar *sp_circle_description(SPItem *item) +{ + return ((SPCircle*)item)->ccircle->onDescription(); } /* element */ @@ -698,17 +796,29 @@ sp_arc_class_init(SPArcClass *klass) item_class->description = sp_arc_description; } -static void -sp_arc_init(SPArc */*arc*/) -{ - /* Nothing special */ +CArc::CArc(SPArc* arc) : CGenericEllipse(arc) { + this->sparc = arc; +} + +CArc::~CArc() { + } static void -sp_arc_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) +sp_arc_init(SPArc *arc) { - if (((SPObjectClass *) arc_parent_class)->build) - (* ((SPObjectClass *) arc_parent_class)->build) (object, document, repr); + arc->carc = new CArc(arc); + arc->cgenericEllipse = arc->carc; + arc->cshape = arc->carc; + arc->clpeitem = arc->carc; + arc->citem = arc->carc; + arc->cobject = arc->carc; +} + +void CArc::onBuild(SPDocument *document, Inkscape::XML::Node *repr) { + SPArc* object = this->sparc; + + CGenericEllipse::onBuild(document, repr); object->readAttr( "sodipodi:cx" ); object->readAttr( "sodipodi:cy" ); @@ -720,6 +830,13 @@ sp_arc_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) object->readAttr( "sodipodi:open" ); } +// CPPIFY: remove +static void +sp_arc_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) +{ + ((SPArc*)object)->carc->onBuild(document, repr); +} + /* * sp_arc_set_elliptical_path_attribute: * @@ -762,11 +879,10 @@ sp_arc_set_elliptical_path_attribute(SPArc *arc, Inkscape::XML::Node *repr) return true; } -static Inkscape::XML::Node * -sp_arc_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) -{ - SPGenericEllipse *ge = SP_GENERICELLIPSE(object); - SPArc *arc = SP_ARC(object); +Inkscape::XML::Node* CArc::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPArc* object = this->sparc; + SPGenericEllipse *ge = object; + SPArc *arc = object; if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { repr = xml_doc->createElement("svg:path"); @@ -796,16 +912,21 @@ sp_arc_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML:: // write d= sp_arc_set_elliptical_path_attribute(arc, repr); - if (((SPObjectClass *) arc_parent_class)->write) - ((SPObjectClass *) arc_parent_class)->write(object, xml_doc, repr, flags); + CGenericEllipse::onWrite(xml_doc, repr, flags); return repr; } -static void -sp_arc_set(SPObject *object, unsigned int key, gchar const *value) +// CPPIFY: remove +static Inkscape::XML::Node * +sp_arc_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { - SPGenericEllipse *ge = SP_GENERICELLIPSE(object); + return ((SPArc*)object)->carc->onWrite(xml_doc, repr, flags); +} + +void CArc::onSet(unsigned int key, gchar const* value) { + SPArc* object = this->sparc; + SPGenericEllipse *ge = object; switch (key) { case SP_ATTR_SODIPODI_CX: @@ -849,26 +970,38 @@ sp_arc_set(SPObject *object, unsigned int key, gchar const *value) object->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG); break; default: - if (((SPObjectClass *) arc_parent_class)->set) - ((SPObjectClass *) arc_parent_class)->set(object, key, value); + CGenericEllipse::onSet(key, value); break; } } +// CPPIFY: remove static void -sp_arc_modified(SPObject *object, guint flags) +sp_arc_set(SPObject *object, unsigned int key, gchar const *value) { + ((SPArc*)object)->carc->onSet(key, value); +} + +void CArc::onModified(guint flags) { + SPArc* object = this->sparc; + if (flags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG)) { ((SPShape *) object)->setShape(); } - if (((SPObjectClass *) arc_parent_class)->modified) - ((SPObjectClass *) arc_parent_class)->modified(object, flags); + CGenericEllipse::onModified(flags); } -static gchar *sp_arc_description(SPItem *item) +// CPPIFY: remove +static void +sp_arc_modified(SPObject *object, guint flags) { - SPGenericEllipse *ge = SP_GENERICELLIPSE(item); + ((SPArc*)object)->carc->onModified(flags); +} + +gchar* CArc::onDescription() { + SPArc* item = this->sparc; + SPGenericEllipse *ge = item; gdouble len = fmod(ge->end - ge->start, SP_2PI); if (len < 0.0) len += SP_2PI; @@ -883,6 +1016,12 @@ static gchar *sp_arc_description(SPItem *item) } } +// CPPIFY: remove +static gchar *sp_arc_description(SPItem *item) +{ + return ((SPArc*)item)->carc->onDescription(); +} + void sp_arc_position_set(SPArc *arc, gdouble x, gdouble y, gdouble rx, gdouble ry) { diff --git a/src/sp-ellipse.h b/src/sp-ellipse.h index 91354ab60..4e7893c9e 100644 --- a/src/sp-ellipse.h +++ b/src/sp-ellipse.h @@ -27,8 +27,12 @@ class SPGenericEllipse; class SPGenericEllipseClass; +class CGenericEllipse; + +class SPGenericEllipse : public SPShape { +public: + CGenericEllipse* cgenericEllipse; -struct SPGenericEllipse : public SPShape { SVGLength cx; SVGLength cy; SVGLength rx; @@ -42,6 +46,25 @@ struct SPGenericEllipseClass { SPShapeClass parent_class; }; + +class CGenericEllipse : public CShape { +public: + CGenericEllipse(SPGenericEllipse* genericEllipse); + virtual ~CGenericEllipse(); + + virtual void onUpdate(SPCtx* ctx, unsigned int flags); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + + virtual void onSnappoints(std::vector &p, Inkscape::SnapPreferences const *snapprefs); + virtual void onSetShape(); + + virtual void onUpdatePatheffect(bool write); + +protected: + SPGenericEllipse* spgenericEllipse; +}; + + GType sp_genericellipse_get_type (void); /* This is technically priate by we need this in object edit (Lauris) */ @@ -55,13 +78,33 @@ void sp_genericellipse_normalize (SPGenericEllipse *ellipse); #define SP_IS_ELLIPSE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_ELLIPSE)) #define SP_IS_ELLIPSE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_ELLIPSE)) -struct SPEllipse : public SPGenericEllipse { +class CEllipse; + +class SPEllipse : public SPGenericEllipse { +public: + CEllipse* cellipse; }; struct SPEllipseClass { SPGenericEllipseClass parent_class; }; + +class CEllipse : public CGenericEllipse { +public: + CEllipse(SPEllipse* ellipse); + virtual ~CEllipse(); + + virtual void onBuild(SPDocument *document, Inkscape::XML::Node *repr); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + virtual void onSet(unsigned int key, gchar const* value); + virtual gchar* onDescription(); + +protected: + SPEllipse* spellipse; +}; + + GType sp_ellipse_get_type (void); void sp_ellipse_position_set (SPEllipse * ellipse, gdouble x, gdouble y, gdouble rx, gdouble ry); @@ -74,13 +117,33 @@ void sp_ellipse_position_set (SPEllipse * ellipse, gdouble x, gdouble y, gdouble #define SP_IS_CIRCLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_CIRCLE)) #define SP_IS_CIRCLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_CIRCLE)) -struct SPCircle : public SPGenericEllipse { +class CCircle; + +class SPCircle : public SPGenericEllipse { +public: + CCircle* ccircle; }; struct SPCircleClass { SPGenericEllipseClass parent_class; }; + +class CCircle : public CGenericEllipse { +public: + CCircle(SPCircle* circle); + virtual ~CCircle(); + + virtual void onBuild(SPDocument *document, Inkscape::XML::Node *repr); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + virtual void onSet(unsigned int key, gchar const* value); + virtual gchar* onDescription(); + +protected: + SPCircle* spcircle; +}; + + GType sp_circle_get_type (void); /* element */ @@ -91,13 +154,34 @@ GType sp_circle_get_type (void); #define SP_IS_ARC(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_ARC)) #define SP_IS_ARC_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_ARC)) -struct SPArc : public SPGenericEllipse { +class CArc; + +class SPArc : public SPGenericEllipse { +public: + CArc* carc; }; struct SPArcClass { SPGenericEllipseClass parent_class; }; + +class CArc : public CGenericEllipse { +public: + CArc(SPArc* arc); + virtual ~CArc(); + + virtual void onBuild(SPDocument *document, Inkscape::XML::Node *repr); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + virtual void onSet(unsigned int key, gchar const* value); + virtual gchar* onDescription(); + virtual void onModified(unsigned int flags); + +protected: + SPArc* sparc; +}; + + GType sp_arc_get_type (void); void sp_arc_position_set (SPArc * arc, gdouble x, gdouble y, gdouble rx, gdouble ry); Geom::Point sp_arc_get_xy (SPArc *ge, gdouble arg); -- cgit v1.2.3 From 9dff787f0c9ff71746207bb2145c1c3a4d902a72 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sat, 18 Aug 2012 18:14:21 +0200 Subject: Added "virtual pad" to SPLine. (bzr r11608.1.6) --- src/sp-line.cpp | 116 +++++++++++++++++++++++++++++++++++++++++--------------- src/sp-line.h | 24 ++++++++++++ 2 files changed, 109 insertions(+), 31 deletions(-) diff --git a/src/sp-line.cpp b/src/sp-line.cpp index 06604a1d6..a431a0948 100644 --- a/src/sp-line.cpp +++ b/src/sp-line.cpp @@ -68,20 +68,31 @@ void SPLineClass::sp_line_class_init(SPLineClass *klass) shape_class->set_shape = SPLine::setShape; } +CLine::CLine(SPLine* line) : CShape(line) { + this->spline = line; +} + +CLine::~CLine() { +} + void SPLine::init(SPLine * line) { + line->cline = new CLine(line); + line->cshape = line->cline; + line->clpeitem = line->cline; + line->citem = line->cline; + line->cobject = line->cline; + line->x1.unset(); line->y1.unset(); line->x2.unset(); line->y2.unset(); } +void CLine::onBuild(SPDocument * document, Inkscape::XML::Node * repr) { + SPLine* object = this->spline; -void SPLine::build(SPObject * object, SPDocument * document, Inkscape::XML::Node * repr) -{ - if (((SPObjectClass *) SPLineClass::static_parent_class)->build) { - ((SPObjectClass *) SPLineClass::static_parent_class)->build(object, document, repr); - } + CShape::onBuild(document, repr); object->readAttr( "x1" ); object->readAttr( "y1" ); @@ -89,9 +100,15 @@ void SPLine::build(SPObject * object, SPDocument * document, Inkscape::XML::Node object->readAttr( "y2" ); } -void SPLine::set(SPObject *object, unsigned int key, const gchar *value) +// CPPIFY: remove +void SPLine::build(SPObject * object, SPDocument * document, Inkscape::XML::Node * repr) { - SPLine * line = SP_LINE(object); + ((SPLine*)object)->cline->onBuild(document, repr); +} + +void CLine::onSet(unsigned int key, const gchar* value) { + SPLine* object = this->spline; + SPLine * line = object; /* fixme: we should really collect updates */ @@ -113,15 +130,20 @@ void SPLine::set(SPObject *object, unsigned int key, const gchar *value) object->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG); break; default: - if (((SPObjectClass *) SPLineClass::static_parent_class)->set) { - ((SPObjectClass *) SPLineClass::static_parent_class)->set(object, key, value); - } + CShape::onSet(key, value); break; } } -void SPLine::update(SPObject *object, SPCtx *ctx, guint flags) +// CPPIFY: remove +void SPLine::set(SPObject *object, unsigned int key, const gchar *value) { + ((SPLine*)object)->cline->onSet(key, value); +} + +void CLine::onUpdate(SPCtx *ctx, guint flags) { + SPLine* object = this->spline; + if (flags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG)) { SPLine *line = SP_LINE(object); @@ -139,15 +161,18 @@ void SPLine::update(SPObject *object, SPCtx *ctx, guint flags) ((SPShape *) object)->setShape(); } - if (((SPObjectClass *) SPLineClass::static_parent_class)->update) { - ((SPObjectClass *) SPLineClass::static_parent_class)->update(object, ctx, flags); - } + CShape::onUpdate(ctx, flags); } - -Inkscape::XML::Node * SPLine::write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +// CPPIFY: remove +void SPLine::update(SPObject *object, SPCtx *ctx, guint flags) { - SPLine *line = SP_LINE(object); + ((SPLine*)object)->cline->onUpdate(ctx, flags); +} + +Inkscape::XML::Node* CLine::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPLine* object = this->spline; + SPLine *line = object; if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { repr = xml_doc->createElement("svg:line"); @@ -162,21 +187,31 @@ Inkscape::XML::Node * SPLine::write(SPObject *object, Inkscape::XML::Document *x sp_repr_set_svg_double(repr, "x2", line->x2.computed); sp_repr_set_svg_double(repr, "y2", line->y2.computed); - if (((SPObjectClass *) (SPLineClass::static_parent_class))->write) { - ((SPObjectClass *) (SPLineClass::static_parent_class))->write(object, xml_doc, repr, flags); - } + CShape::onWrite(xml_doc, repr, flags); return repr; } -gchar * SPLine::getDescription(SPItem */*item*/) +// CPPIFY: remove +Inkscape::XML::Node * SPLine::write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { - return g_strdup(_("Line")); + return ((SPLine*)object)->cline->onWrite(xml_doc, repr, flags); } -void SPLine::convertToGuides(SPItem *item) +gchar* CLine::onDescription() { + return g_strdup(_("Line")); +} + +// CPPIFY: remove +gchar * SPLine::getDescription(SPItem *item) { - SPLine *line = SP_LINE(item); + return ((SPLine*)item)->cline->onDescription(); +} + +void CLine::onConvertToGuides() { + SPLine* item = this->spline; + SPLine *line = item; + Geom::Point points[2]; Geom::Affine const i2dt(item->i2dt_affine()); @@ -187,32 +222,45 @@ void SPLine::convertToGuides(SPItem *item) SPGuide::createSPGuide(item->document, points[0], points[1]); } -Geom::Affine SPLine::setTransform(SPItem *item, Geom::Affine const &xform) +// CPPIFY: remove +void SPLine::convertToGuides(SPItem *item) { - SPLine *line = SP_LINE(item); + ((SPLine*)item)->cline->onConvertToGuides(); +} + +Geom::Affine CLine::onSetTransform(Geom::Affine const &transform) { + SPLine* item = this->spline; + SPLine *line = item; + Geom::Point points[2]; points[0] = Geom::Point(line->x1.computed, line->y1.computed); points[1] = Geom::Point(line->x2.computed, line->y2.computed); - points[0] *= xform; - points[1] *= xform; + points[0] *= transform; + points[1] *= transform; line->x1.computed = points[0][Geom::X]; line->y1.computed = points[0][Geom::Y]; line->x2.computed = points[1][Geom::X]; line->y2.computed = points[1][Geom::Y]; - item->adjust_stroke(xform.descrim()); + item->adjust_stroke(transform.descrim()); SP_OBJECT(item)->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG); return Geom::identity(); } -void SPLine::setShape(SPShape *shape) +// CPPIFY: remove +Geom::Affine SPLine::setTransform(SPItem *item, Geom::Affine const &xform) { - SPLine *line = SP_LINE(shape); + return ((SPLine*)item)->cline->onSetTransform(xform); +} + +void CLine::onSetShape() { + SPLine* shape = this->spline; + SPLine *line = shape; SPCurve *c = new SPCurve(); @@ -227,6 +275,12 @@ void SPLine::setShape(SPShape *shape) c->unref(); } +// CPPIFY: remove +void SPLine::setShape(SPShape *shape) +{ + ((SPLine*)shape)->cline->onSetShape(); +} + /* Local Variables: mode:c++ diff --git a/src/sp-line.h b/src/sp-line.h index 182f85a5c..2cfdaf82f 100644 --- a/src/sp-line.h +++ b/src/sp-line.h @@ -27,9 +27,12 @@ class SPLine; class SPLineClass; +class CLine; class SPLine : public SPShape { public: + CLine* cline; + SVGLength x1; SVGLength y1; SVGLength x2; @@ -65,6 +68,27 @@ private: }; +class CLine : public CShape { +public: + CLine(SPLine* line); + virtual ~CLine(); + + virtual void onBuild(SPDocument *document, Inkscape::XML::Node *repr); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + virtual void onSet(unsigned int key, gchar const* value); + + virtual gchar* onDescription(); + virtual Geom::Affine onSetTransform(Geom::Affine const &transform); + virtual void onConvertToGuides(); + virtual void onUpdate(SPCtx* ctx, guint flags); + + virtual void onSetShape(); + +protected: + SPLine* spline; +}; + + #endif // SEEN_SP_LINE_H /* Local Variables: -- cgit v1.2.3 From 1cca85d01800742484b2901ea0f2d6bcf6cae1a5 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sat, 18 Aug 2012 18:36:31 +0200 Subject: Added "virtual pad" to SPOffset. (bzr r11608.1.7) --- src/sp-offset.cpp | 140 +++++++++++++++++++++++++++++++++++++----------------- src/sp-offset.h | 27 ++++++++++- 2 files changed, 122 insertions(+), 45 deletions(-) diff --git a/src/sp-offset.cpp b/src/sp-offset.cpp index 817db92e8..f2f707882 100644 --- a/src/sp-offset.cpp +++ b/src/sp-offset.cpp @@ -162,12 +162,25 @@ sp_offset_class_init(SPOffsetClass *klass) shape_class->set_shape = sp_offset_set_shape; } +COffset::COffset(SPOffset* offset) : CShape(offset) { + this->spoffset = offset; +} + +COffset::~COffset() { +} + /** * Callback for SPOffset object initialization. */ static void sp_offset_init(SPOffset *offset) { + offset->coffset = new COffset(offset); + offset->cshape = offset->coffset; + offset->clpeitem = offset->coffset; + offset->citem = offset->coffset; + offset->cobject = offset->coffset; + offset->rad = 1.0; offset->original = NULL; offset->originalPath = NULL; @@ -207,14 +220,10 @@ sp_offset_finalize(GObject *obj) offset->_transformed_connection.~connection(); } -/** - * Virtual build: set offset attributes from corresponding repr. - */ -static void -sp_offset_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) -{ - if (((SPObjectClass *) parent_class)->build) - ((SPObjectClass *) parent_class)->build (object, document, repr); +void COffset::onBuild(SPDocument *document, Inkscape::XML::Node *repr) { + SPOffset* object = this->spoffset; + + CShape::onBuild(document, repr); //XML Tree being used directly here while it shouldn't be. if (object->getRepr()->attribute("inkscape:radius")) { @@ -255,13 +264,19 @@ sp_offset_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *rep } } +// CPPIFY: remove /** - * Virtual write: write offset attributes to corresponding repr. + * Virtual build: set offset attributes from corresponding repr. */ -static Inkscape::XML::Node * -sp_offset_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +static void +sp_offset_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) { - SPOffset *offset = SP_OFFSET (object); + ((SPOffset*)object)->coffset->onBuild(document, repr); +} + +Inkscape::XML::Node* COffset::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPOffset* object = this->spoffset; + SPOffset *offset = object; if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { repr = xml_doc->createElement("svg:path"); @@ -290,19 +305,23 @@ sp_offset_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XM repr->setAttribute("d", d); g_free (d); - if (((SPObjectClass *) (parent_class))->write) - ((SPObjectClass *) (parent_class))->write (object, xml_doc, repr, - flags | SP_SHAPE_WRITE_PATH); + CShape::onWrite(xml_doc, repr, flags | SP_SHAPE_WRITE_PATH); return repr; } +// CPPIFY: remove /** - * Virtual release callback. + * Virtual write: write offset attributes to corresponding repr. */ -static void -sp_offset_release(SPObject *object) +static Inkscape::XML::Node * +sp_offset_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + return ((SPOffset*)object)->coffset->onWrite(xml_doc, repr, flags); +} + +void COffset::onRelease() { + SPOffset* object = this->spoffset; SPOffset *offset = (SPOffset *) object; if (offset->original) free (offset->original); @@ -317,20 +336,22 @@ sp_offset_release(SPObject *object) offset->sourceHref = NULL; offset->sourceRef->detach(); - if (((SPObjectClass *) parent_class)->release) { - ((SPObjectClass *) parent_class)->release (object); - } - + CShape::onRelease(); } +// CPPIFY: remove /** - * Set callback: the function that is called whenever a change is made to - * the description of the object. + * Virtual release callback. */ static void -sp_offset_set(SPObject *object, unsigned key, gchar const *value) +sp_offset_release(SPObject *object) { - SPOffset *offset = SP_OFFSET (object); + ((SPOffset*)object)->coffset->onRelease(); +} + +void COffset::onSet(unsigned int key, const gchar* value) { + SPOffset* object = this->spoffset; + SPOffset *offset = object; if ( offset->sourceDirty ) refresh_offset_source(offset); @@ -389,19 +410,26 @@ sp_offset_set(SPObject *object, unsigned key, gchar const *value) } break; default: - if (((SPObjectClass *) parent_class)->set) - ((SPObjectClass *) parent_class)->set (object, key, value); + CShape::onSet(key, value); break; } } +// CPPIFY: remove /** - * Update callback: the object has changed, recompute its shape. + * Set callback: the function that is called whenever a change is made to + * the description of the object. */ static void -sp_offset_update(SPObject *object, SPCtx *ctx, guint flags) +sp_offset_set(SPObject *object, unsigned key, gchar const *value) { - SPOffset* offset = SP_OFFSET(object); + ((SPOffset*)object)->coffset->onSet(key, value); +} + +void COffset::onUpdate(SPCtx *ctx, guint flags) { + SPOffset* object = this->spoffset; + SPOffset* offset = object; + offset->isUpdating=true; // prevent sp_offset_set from requesting updates if ( offset->sourceDirty ) refresh_offset_source(offset); if (flags & @@ -411,17 +439,22 @@ sp_offset_update(SPObject *object, SPCtx *ctx, guint flags) } offset->isUpdating=false; - if (((SPObjectClass *) parent_class)->update) - ((SPObjectClass *) parent_class)->update (object, ctx, flags); + CShape::onUpdate(ctx, flags); } +// CPPIFY: remove /** - * Returns a textual description of object. + * Update callback: the object has changed, recompute its shape. */ -static gchar * -sp_offset_description(SPItem *item) +static void +sp_offset_update(SPObject *object, SPCtx *ctx, guint flags) { - SPOffset *offset = SP_OFFSET (item); + ((SPOffset*)object)->coffset->onUpdate(ctx, flags); +} + +gchar* COffset::onDescription() { + SPOffset* item = this->spoffset; + SPOffset *offset = item; if ( offset->sourceHref ) { // TRANSLATORS COMMENT: %s is either "outset" or "inset" depending on sign @@ -434,13 +467,19 @@ sp_offset_description(SPItem *item) } } +// CPPIFY: remove /** - * Compute and set shape's offset. + * Returns a textual description of object. */ -static void -sp_offset_set_shape(SPShape *shape) +static gchar * +sp_offset_description(SPItem *item) { - SPOffset *offset = SP_OFFSET (shape); + return ((SPOffset*)item)->coffset->onDescription(); +} + +void COffset::onSetShape() { + SPOffset* shape = this->spoffset; + SPOffset *offset = shape; if ( offset->originalPath == NULL ) { // oops : no path?! (the offset object should do harakiri) @@ -720,14 +759,27 @@ sp_offset_set_shape(SPShape *shape) } } +// CPPIFY: remove +/** + * Compute and set shape's offset. + */ +static void +sp_offset_set_shape(SPShape *shape) +{ + ((SPOffset*)shape)->coffset->onSetShape(); +} + +void COffset::onSnappoints(std::vector &p, Inkscape::SnapPreferences const *snapprefs) { + CShape::onSnappoints(p, snapprefs); +} + +// CPPIFY: remove /** * Virtual snappoints function. */ static void sp_offset_snappoints(SPItem const *item, std::vector &p, Inkscape::SnapPreferences const *snapprefs) { - if (((SPItemClass *) parent_class)->snappoints) { - ((SPItemClass *) parent_class)->snappoints (item, p, snapprefs); - } + ((SPOffset*)item)->coffset->onSnappoints(p, snapprefs); } diff --git a/src/sp-offset.h b/src/sp-offset.h index ec8c2cf29..0dc42bd00 100644 --- a/src/sp-offset.h +++ b/src/sp-offset.h @@ -24,6 +24,7 @@ class SPOffset; class SPOffsetClass; +class COffset; class SPUseReference; /** @@ -54,7 +55,10 @@ class SPUseReference; * points, or more precisely one control point, that's enough to define the * radius (look in object-edit). */ -struct SPOffset : public SPShape { +class SPOffset : public SPShape { +public: + COffset* coffset; + void *originalPath; ///< will be a livarot Path, just don't declare it here to please the gcc linker char *original; ///< SVG description of the source path float rad; ///< offset radius @@ -84,6 +88,27 @@ struct SPOffsetClass }; +class COffset : public CShape { +public: + COffset(SPOffset* offset); + ~COffset(); + + virtual void onBuild(SPDocument *document, Inkscape::XML::Node *repr); + virtual void onSet(unsigned int key, gchar const* value); + virtual void onUpdate(SPCtx *ctx, guint flags); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + virtual void onRelease(); + + virtual void onSnappoints(std::vector &p, Inkscape::SnapPreferences const *snapprefs); + virtual gchar* onDescription(); + + virtual void onSetShape(); + +protected: + SPOffset* spoffset; +}; + + /* Standard Gtk function */ GType sp_offset_get_type (void); -- cgit v1.2.3 From c81b4a521a9b470412f06bb6db168847f2ecc507 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sat, 18 Aug 2012 19:02:28 +0200 Subject: Added "virtual pad" to SPPath. (bzr r11608.1.8) --- src/sp-path.cpp | 186 +++++++++++++++++++++++++++++++++++++------------------- src/sp-path.h | 27 ++++++++ 2 files changed, 150 insertions(+), 63 deletions(-) diff --git a/src/sp-path.cpp b/src/sp-path.cpp index 107ceac16..d58242a38 100644 --- a/src/sp-path.cpp +++ b/src/sp-path.cpp @@ -129,9 +129,9 @@ gint SPPath::nodesInPath() const return _curve ? _curve->nodes_in_path() : 0; } -static gchar * -sp_path_description(SPItem * item) -{ +gchar* CPath::onDescription() { + SPPath* item = this->sppath; + int count = SP_PATH(item)->nodesInPath(); if (SP_IS_LPE_ITEM(item) && sp_lpe_item_has_path_effect(SP_LPE_ITEM(item))) { @@ -157,10 +157,16 @@ sp_path_description(SPItem * item) } } -static void -sp_path_convert_to_guides(SPItem *item) +// CPPIFY: remove +static gchar * +sp_path_description(SPItem * item) { - SPPath *path = SP_PATH(item); + return ((SPPath*)item)->cpath->onDescription(); +} + +void CPath::onConvertToGuides() { + SPPath* item = this->sppath; + SPPath *path = item; if (!path->_curve) { return; @@ -184,12 +190,32 @@ sp_path_convert_to_guides(SPItem *item) sp_guide_pt_pairs_to_guides(item->document, pts); } +// CPPIFY: remove +static void +sp_path_convert_to_guides(SPItem *item) +{ + ((SPPath*)item)->cpath->onConvertToGuides(); +} + +CPath::CPath(SPPath* path) : CShape(path) { + this->sppath = path; +} + +CPath::~CPath() { +} + /** * Initializes an SPPath. */ static void sp_path_init(SPPath *path) { + path->cpath = new CPath(path); + path->cshape = path->cpath; + path->clpeitem = path->cpath; + path->citem = path->cpath; + path->cobject = path->cpath; + new (&path->connEndPair) SPConnEndPair(path); } @@ -201,13 +227,9 @@ sp_path_finalize(GObject *obj) path->connEndPair.~SPConnEndPair(); } -/** - * Given a repr, this sets the data items in the path object such as - * fill & style attributes, markers, and CSS properties. - */ -static void -sp_path_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) -{ +void CPath::onBuild(SPDocument *document, Inkscape::XML::Node *repr) { + SPPath* object = this->sppath; + /* Are these calls actually necessary? */ object->readAttr( "marker" ); object->readAttr( "marker-start" ); @@ -216,9 +238,7 @@ sp_path_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) sp_conn_end_pair_build(object); - if (((SPObjectClass *) parent_class)->build) { - ((SPObjectClass *) parent_class)->build(object, document, repr); - } + CShape::onBuild(document, repr); object->readAttr( "inkscape:original-d" ); object->readAttr( "d" ); @@ -230,25 +250,35 @@ sp_path_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) } } +// CPPIFY: remove +/** + * Given a repr, this sets the data items in the path object such as + * fill & style attributes, markers, and CSS properties. + */ static void -sp_path_release(SPObject *object) +sp_path_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) { - SPPath *path = SP_PATH(object); + ((SPPath*)object)->cpath->onBuild(document, repr); +} + +void CPath::onRelease() { + SPPath* object = this->sppath; + SPPath *path = object; path->connEndPair.release(); - if (((SPObjectClass *) parent_class)->release) { - ((SPObjectClass *) parent_class)->release(object); - } + CShape::onRelease(); } -/** - * Sets a value in the path object given by 'key', to 'value'. This is used - * for setting attributes and markers on a path object. - */ +// CPPIFY: remove static void -sp_path_set(SPObject *object, unsigned int key, gchar const *value) +sp_path_release(SPObject *object) { + ((SPPath*)object)->cpath->onRelease(); +} + +void CPath::onSet(unsigned int key, const gchar* value) { + SPPath* object = this->sppath; SPPath *path = (SPPath *) object; switch (key) { @@ -294,21 +324,25 @@ sp_path_set(SPObject *object, unsigned int key, gchar const *value) path->connEndPair.setAttr(key, value); break; default: - if (((SPObjectClass *) parent_class)->set) { - ((SPObjectClass *) parent_class)->set(object, key, value); - } + CShape::onSet(key, value); break; } } +// CPPIFY: remove /** - * - * Writes the path object into a Inkscape::XML::Node + * Sets a value in the path object given by 'key', to 'value'. This is used + * for setting attributes and markers on a path object. */ -static Inkscape::XML::Node * -sp_path_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +static void +sp_path_set(SPObject *object, unsigned int key, gchar const *value) { - SPShape *shape = (SPShape *) object; + ((SPPath*)object)->cpath->onSet(key, value); +} + +Inkscape::XML::Node* CPath::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPPath* object = this->sppath; + SPShape *shape = (SPShape *) object; if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { repr = xml_doc->createElement("svg:path"); @@ -337,35 +371,45 @@ g_message("sp_path_write writes 'd' attribute"); SP_PATH(shape)->connEndPair.writeRepr(repr); - if (((SPObjectClass *)(parent_class))->write) { - ((SPObjectClass *)(parent_class))->write(object, xml_doc, repr, flags); - } + CShape::onWrite(xml_doc, repr, flags); return repr; } -static void -sp_path_update(SPObject *object, SPCtx *ctx, guint flags) +// CPPIFY: remove +/** + * + * Writes the path object into a Inkscape::XML::Node + */ +static Inkscape::XML::Node * +sp_path_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { - if (flags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG)) { - flags &= ~SP_OBJECT_USER_MODIFIED_FLAG_B; // since we change the description, it's not a "just translation" anymore - } + return ((SPPath*)object)->cpath->onWrite(xml_doc, repr, flags); +} - if (((SPObjectClass *) parent_class)->update) { - ((SPObjectClass *) parent_class)->update(object, ctx, flags); - } +void CPath::onUpdate(SPCtx *ctx, guint flags) { + SPPath* object = this->sppath; - SPPath *path = SP_PATH(object); - path->connEndPair.update(); -} + if (flags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG)) { + flags &= ~SP_OBJECT_USER_MODIFIED_FLAG_B; // since we change the description, it's not a "just translation" anymore + } + CShape::onUpdate(ctx, flags); -/** - * Writes the given transform into the repr for the given item. - */ -static Geom::Affine -sp_path_set_transform(SPItem *item, Geom::Affine const &xform) + SPPath *path = SP_PATH(object); + path->connEndPair.update(); +} + +// CPPIFY: remove +static void +sp_path_update(SPObject *object, SPCtx *ctx, guint flags) { + ((SPPath*)object)->cpath->onUpdate(ctx, flags); +} + +Geom::Affine CPath::onSetTransform(Geom::Affine const &transform) { + SPPath* item = this->sppath; + if (!SP_IS_PATH(item)) { return Geom::identity(); } @@ -379,25 +423,25 @@ sp_path_set_transform(SPItem *item, Geom::Affine const &xform) if (path->_curve_before_lpe && sp_lpe_item_has_path_effect_recursive(SP_LPE_ITEM(item))) { if (sp_lpe_item_has_path_effect_of_type(SP_LPE_ITEM(item), Inkscape::LivePathEffect::CLONE_ORIGINAL)) { // if path has the CLONE_ORIGINAL LPE applied, don't write the transform to the pathdata, but write it 'unoptimized' - return xform; + return transform; } else { - path->_curve_before_lpe->transform(xform); + path->_curve_before_lpe->transform(transform); } } else { - path->_curve->transform(xform); + path->_curve->transform(transform); } // Adjust stroke - item->adjust_stroke(xform.descrim()); + item->adjust_stroke(transform.descrim()); // Adjust pattern fill - item->adjust_pattern(xform); + item->adjust_pattern(transform); // Adjust gradient fill - item->adjust_gradient(xform); + item->adjust_gradient(transform); // Adjust LPE - item->adjust_livepatheffect(xform); + item->adjust_livepatheffect(transform); item->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG); @@ -405,11 +449,20 @@ sp_path_set_transform(SPItem *item, Geom::Affine const &xform) return Geom::identity(); } - -static void -sp_path_update_patheffect(SPLPEItem *lpeitem, bool write) +// CPPIFY: remove +/** + * Writes the given transform into the repr for the given item. + */ +static Geom::Affine +sp_path_set_transform(SPItem *item, Geom::Affine const &xform) { + return ((SPPath*)item)->cpath->onSetTransform(xform); +} + +void CPath::onUpdatePatheffect(bool write) { + SPPath* lpeitem = this->sppath; SPShape * const shape = (SPShape *) lpeitem; + Inkscape::XML::Node *repr = shape->getRepr(); #ifdef PATH_VERBOSE @@ -451,6 +504,13 @@ g_message("sp_path_update_patheffect writes 'd' attribute"); } } +// CPPIFY: remove +static void +sp_path_update_patheffect(SPLPEItem *lpeitem, bool write) +{ + ((SPPath*)lpeitem)->cpath->onUpdatePatheffect(write); +} + /** * Adds a original_curve to the path. If owner is specified, a reference diff --git a/src/sp-path.h b/src/sp-path.h index 5dd79212c..92757d39d 100644 --- a/src/sp-path.h +++ b/src/sp-path.h @@ -20,6 +20,7 @@ #include "sp-conn-end-pair.h" class SPCurve; +class CPath; #define SP_TYPE_PATH (sp_path_get_type ()) #define SP_PATH(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SP_TYPE_PATH, SPPath)) @@ -30,6 +31,8 @@ class SPCurve; */ class SPPath : public SPShape { public: + CPath* cpath; + gint nodesInPath() const; // still in lowercase because the names should be clearer on whether curve, curve->copy or curve-ref is returned. @@ -50,6 +53,30 @@ struct SPPathClass { SPShapeClass shape_class; }; + +class CPath : public CShape { +public: + CPath(SPPath* path); + ~CPath(); + + virtual void onBuild(SPDocument *document, Inkscape::XML::Node *repr); + virtual void onRelease(); + virtual void onUpdate(SPCtx* ctx, guint flags); + + virtual void onSet(unsigned int key, gchar const* value); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + + virtual gchar* onDescription(); + virtual Geom::Affine onSetTransform(Geom::Affine const &transform); + virtual void onConvertToGuides(); + + virtual void onUpdatePatheffect(bool write); + +protected: + SPPath* sppath; +}; + + GType sp_path_get_type (void); #endif // SEEN_SP_PATH_H -- cgit v1.2.3 From ce5e1752a9a1ce5e3caab79fcb2040a1ee401c33 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sat, 18 Aug 2012 21:17:33 +0200 Subject: Added "virtual pad" to SPPolygon. (bzr r11608.1.9) --- src/sp-polygon.cpp | 71 +++++++++++++++++++++++++++++++++++++----------------- src/sp-polygon.h | 22 ++++++++++++++++- 2 files changed, 70 insertions(+), 23 deletions(-) diff --git a/src/sp-polygon.cpp b/src/sp-polygon.cpp index eee8d50bc..8aa66f15f 100644 --- a/src/sp-polygon.cpp +++ b/src/sp-polygon.cpp @@ -72,20 +72,36 @@ static void sp_polygon_class_init(SPPolygonClass *pc) item_class->description = sp_polygon_description; } -static void sp_polygon_init(SPPolygon */*polygon*/) -{ - /* Nothing here */ +CPolygon::CPolygon(SPPolygon* polygon) : CShape(polygon) { + this->sppolygon = polygon; } -static void sp_polygon_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) +CPolygon::~CPolygon() { +} + +static void sp_polygon_init(SPPolygon *polygon) { - if (((SPObjectClass *) parent_class)->build) { - ((SPObjectClass *) parent_class)->build(object, document, repr); - } + polygon->cpolygon = new CPolygon(polygon); + polygon->cshape = polygon->cpolygon; + polygon->clpeitem = polygon->cpolygon; + polygon->citem = polygon->cpolygon; + polygon->cobject = polygon->cpolygon; +} + +void CPolygon::onBuild(SPDocument *document, Inkscape::XML::Node *repr) { + SPPolygon* object = this->sppolygon; + + CShape::onBuild(document, repr); object->readAttr( "points" ); } +// CPPIFY: remove +static void sp_polygon_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) +{ + ((SPPolygon*)object)->cpolygon->onBuild(document, repr); +} + /* * sp_svg_write_polygon: Write points attribute for polygon tag. @@ -110,9 +126,9 @@ static gchar *sp_svg_write_polygon(Geom::PathVector const & pathv) return g_strdup(os.str().c_str()); } -static Inkscape::XML::Node *sp_polygon_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) -{ - SPShape *shape = SP_SHAPE(object); +Inkscape::XML::Node* CPolygon::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPShape *shape = this->sppolygon; + // Tolerable workaround: we need to update the object's curve before we set points= // because it's out of sync when e.g. some extension attrs of the polygon or star are changed in XML editor shape->setShape(); @@ -126,13 +142,17 @@ static Inkscape::XML::Node *sp_polygon_write(SPObject *object, Inkscape::XML::Do repr->setAttribute("points", str); g_free(str); - if (((SPObjectClass *) (parent_class))->write) { - ((SPObjectClass *) (parent_class))->write(object, xml_doc, repr, flags); - } + CShape::onWrite(xml_doc, repr, flags); return repr; } +// CPPIFY: remove +static Inkscape::XML::Node *sp_polygon_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +{ + return ((SPPolygon*)object)->cpolygon->onWrite(xml_doc, repr, flags); +} + static gboolean polygon_get_value(gchar const **p, gdouble *v) { @@ -154,10 +174,8 @@ static gboolean polygon_get_value(gchar const **p, gdouble *v) return true; } - -void sp_polygon_set(SPObject *object, unsigned int key, const gchar *value) -{ - SPPolygon *polygon = SP_POLYGON(object); +void CPolygon::onSet(unsigned int key, const gchar* value) { + SPPolygon *polygon = this->sppolygon; switch (key) { case SP_ATTR_POINTS: { @@ -213,16 +231,25 @@ void sp_polygon_set(SPObject *object, unsigned int key, const gchar *value) break; } default: - if (((SPObjectClass *) parent_class)->set) { - ((SPObjectClass *) parent_class)->set(object, key, value); - } + CShape::onSet(key, value); break; } } -static gchar *sp_polygon_description(SPItem */*item*/) +// CPPIFY: remove +void sp_polygon_set(SPObject *object, unsigned int key, const gchar *value) +{ + ((SPPolygon*)object)->cpolygon->onSet(key, value); +} + +gchar* CPolygon::onDescription() { + return g_strdup(_("Polygon")); +} + +// CPPIFY: remove +static gchar *sp_polygon_description(SPItem *item) { - return g_strdup(_("Polygon")); + return ((SPPolygon*)item)->cpolygon->onDescription(); } /* diff --git a/src/sp-polygon.h b/src/sp-polygon.h index 3ea91be76..d11fd6da2 100644 --- a/src/sp-polygon.h +++ b/src/sp-polygon.h @@ -21,13 +21,33 @@ #define SP_IS_POLYGON(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_POLYGON)) #define SP_IS_POLYGON_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_POLYGON)) -struct SPPolygon : public SPShape { +class CPolygon; + +class SPPolygon : public SPShape { +public: + CPolygon* cpolygon; }; struct SPPolygonClass { SPShapeClass parent_class; }; + +class CPolygon : public CShape { +public: + CPolygon(SPPolygon* polygon); + virtual ~CPolygon(); + + virtual void onBuild(SPDocument *document, Inkscape::XML::Node *repr); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + virtual void onSet(unsigned int key, gchar const* value); + virtual gchar* onDescription(); + +protected: + SPPolygon* sppolygon; +}; + + GType sp_polygon_get_type (void); // made 'public' so that SPCurve can set it as friend: -- cgit v1.2.3 From 49354077a17c09dcfb4ff3b9f77a4d74d0563399 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sat, 18 Aug 2012 21:30:20 +0200 Subject: Added "virtual pad" to Box3DSide. (bzr r11608.1.10) --- src/box3d-side.cpp | 86 ++++++++++++++++++++++++++++++++++++++++-------------- src/box3d-side.h | 24 ++++++++++++++- 2 files changed, 87 insertions(+), 23 deletions(-) diff --git a/src/box3d-side.cpp b/src/box3d-side.cpp index 031b16a7c..3b30e31ab 100644 --- a/src/box3d-side.cpp +++ b/src/box3d-side.cpp @@ -76,27 +76,45 @@ static void box3d_side_class_init(Box3DSideClass *klass) shape_class->set_shape = box3d_side_set_shape; } +CBox3DSide::CBox3DSide(Box3DSide* box3dside) : CPolygon(box3dside) { + this->spbox3dside = box3dside; +} + +CBox3DSide::~CBox3DSide() { +} + static void box3d_side_init (Box3DSide * side) { + side->cbox3dside = new CBox3DSide(side); + side->cpolygon = side->cbox3dside; + side->cshape = side->cbox3dside; + side->clpeitem = side->cbox3dside; + side->citem = side->cbox3dside; + side->cobject = side->cbox3dside; + side->dir1 = Box3D::NONE; side->dir2 = Box3D::NONE; side->front_or_rear = Box3D::FRONT; } -static void box3d_side_build(SPObject * object, SPDocument * document, Inkscape::XML::Node * repr) -{ - if (((SPObjectClass *) parent_class)->build) { - ((SPObjectClass *) parent_class)->build(object, document, repr); - } +void CBox3DSide::onBuild(SPDocument * document, Inkscape::XML::Node * repr) { + Box3DSide* object = this->spbox3dside; + + CPolygon::onBuild(document, repr); object->readAttr( "inkscape:box3dsidetype" ); } -static Inkscape::XML::Node * -box3d_side_write (SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +// CPPIFY: remove +static void box3d_side_build(SPObject * object, SPDocument * document, Inkscape::XML::Node * repr) { - Box3DSide *side = SP_BOX3D_SIDE (object); + ((Box3DSide*)object)->cbox3dside->onBuild(document, repr); +} + +Inkscape::XML::Node* CBox3DSide::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + Box3DSide* object = this->spbox3dside; + Box3DSide *side = object; if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { // this is where we end up when saving as plain SVG (also in other circumstances?) @@ -120,16 +138,21 @@ box3d_side_write (SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape:: repr->setAttribute("d", d); g_free (d); - if (((SPObjectClass *) (parent_class))->write) - ((SPObjectClass *) (parent_class))->write (object, xml_doc, repr, flags); + CPolygon::onWrite(xml_doc, repr, flags); return repr; } -static void -box3d_side_set (SPObject *object, unsigned int key, const gchar *value) +// CPPIFY: remove +static Inkscape::XML::Node * +box3d_side_write (SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { - Box3DSide *side = SP_BOX3D_SIDE (object); + return ((Box3DSide*)object)->cbox3dside->onWrite(xml_doc, repr, flags); +} + +void CBox3DSide::onSet(unsigned int key, const gchar* value) { + Box3DSide* object = this->spbox3dside; + Box3DSide *side = object; // TODO: In case the box was recreated (by undo, e.g.) we need to recreate the path // (along with other info?) from the parent box. @@ -154,15 +177,21 @@ box3d_side_set (SPObject *object, unsigned int key, const gchar *value) } break; default: - if (((SPObjectClass *) parent_class)->set) - ((SPObjectClass *) parent_class)->set (object, key, value); + CPolygon::onSet(key, value); break; } } +// CPPIFY: remove static void -box3d_side_update (SPObject *object, SPCtx *ctx, guint flags) +box3d_side_set (SPObject *object, unsigned int key, const gchar *value) { + ((Box3DSide*)object)->cbox3dside->onSet(key, value); +} + +void CBox3DSide::onUpdate(SPCtx* ctx, guint flags) { + Box3DSide* object = this->spbox3dside; + if (flags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG)) { flags &= ~SP_OBJECT_USER_MODIFIED_FLAG_B; // since we change the description, it's not a "just translation" anymore } @@ -173,8 +202,14 @@ box3d_side_update (SPObject *object, SPCtx *ctx, guint flags) static_cast(object)->setShape (); } - if (((SPObjectClass *) parent_class)->update) - ((SPObjectClass *) parent_class)->update (object, ctx, flags); + CPolygon::onUpdate(ctx, flags); +} + +// CPPIFY: remove +static void +box3d_side_update (SPObject *object, SPCtx *ctx, guint flags) +{ + ((Box3DSide*)object)->cbox3dside->onUpdate(ctx, flags); } /* Create a new Box3DSide and append it to the parent box */ @@ -205,10 +240,10 @@ box3d_side_position_set (Box3DSide *side) { side->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG); } -void -box3d_side_set_shape (SPShape *shape) -{ - Box3DSide *side = SP_BOX3D_SIDE (shape); +void CBox3DSide::onSetShape() { + Box3DSide* shape = this->spbox3dside; + Box3DSide *side = shape; + if (!side->document->getRoot()) { // avoid a warning caused by sp_document_height() (which is called from sp_item_i2d_affine() below) // when reading a file containing 3D boxes @@ -266,6 +301,13 @@ box3d_side_set_shape (SPShape *shape) c->unref(); } +// CPPIFY: remove +void +box3d_side_set_shape (SPShape *shape) +{ + ((Box3DSide*)shape)->cbox3dside->onSetShape(); +} + gchar *box3d_side_axes_string(Box3DSide *side) { GString *pstring = g_string_new(""); diff --git a/src/box3d-side.h b/src/box3d-side.h index ed4972e29..49273305b 100644 --- a/src/box3d-side.h +++ b/src/box3d-side.h @@ -25,10 +25,14 @@ class SPBox3D; class Box3DSide; class Box3DSideClass; +class CBox3DSide; class Persp3D; // FIXME: Would it be better to inherit from SPPath instead? -struct Box3DSide : public SPPolygon { +class Box3DSide : public SPPolygon { +public: + CBox3DSide* cbox3dside; + Box3D::Axis dir1; Box3D::Axis dir2; Box3D::FrontOrRear front_or_rear; @@ -40,6 +44,24 @@ struct Box3DSideClass { SPPolygonClass parent_class; }; + +class CBox3DSide : public CPolygon { +public: + CBox3DSide(Box3DSide* box3dside); + virtual ~CBox3DSide(); + + virtual void onBuild(SPDocument* doc, Inkscape::XML::Node* repr); + virtual void onSet(unsigned int key, gchar const* value); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + virtual void onUpdate(SPCtx *ctx, guint flags); + + virtual void onSetShape(); + +protected: + Box3DSide* spbox3dside; +}; + + GType box3d_side_get_type (void); void box3d_side_position_set (Box3DSide *side); // FIXME: Replace this by box3d_side_set_shape?? -- cgit v1.2.3 From 2d3f862c97fdd6fdb17368933377370886375a2d Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sat, 18 Aug 2012 23:51:06 +0200 Subject: Added "virtual pad" to SPStar. (bzr r11608.1.11) --- src/sp-star.cpp | 129 +++++++++++++++++++++++++++++++++++++++++--------------- src/sp-star.h | 31 +++++++++++++- 2 files changed, 126 insertions(+), 34 deletions(-) diff --git a/src/sp-star.cpp b/src/sp-star.cpp index e0f05d0f4..aead51b8b 100644 --- a/src/sp-star.cpp +++ b/src/sp-star.cpp @@ -91,9 +91,23 @@ static void sp_star_class_init(SPStarClass *klass) shape_class->set_shape = sp_star_set_shape; } +CStar::CStar(SPStar* star) : CPolygon(star) { + this->spstar = star; +} + +CStar::~CStar() { +} + static void sp_star_init (SPStar * star) { + star->cstar = new CStar(star); + star->cpolygon = star->cstar; + star->cshape = star->cstar; + star->clpeitem = star->cstar; + star->citem = star->cstar; + star->cobject = star->cstar; + star->sides = 5; star->center = Geom::Point(0, 0); star->r[0] = 1.0; @@ -104,11 +118,11 @@ sp_star_init (SPStar * star) star->randomized = 0.0; } -static void -sp_star_build (SPObject * object, SPDocument * document, Inkscape::XML::Node * repr) -{ - if (((SPObjectClass *) parent_class)->build) - ((SPObjectClass *) parent_class)->build (object, document, repr); +void CStar::onBuild(SPDocument * document, Inkscape::XML::Node * repr) { + SPStar* object = this->spstar; + + // CPPIFY: see header file + CShape::onBuild(document, repr); object->readAttr( "sodipodi:cx" ); object->readAttr( "sodipodi:cy" ); @@ -122,10 +136,16 @@ sp_star_build (SPObject * object, SPDocument * document, Inkscape::XML::Node * r object->readAttr( "inkscape:randomized" ); } -static Inkscape::XML::Node * -sp_star_write (SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +// CPPIFY: remove +static void +sp_star_build (SPObject * object, SPDocument * document, Inkscape::XML::Node * repr) { - SPStar *star = SP_STAR (object); + ((SPStar*)object)->cstar->onBuild(document, repr); +} + +Inkscape::XML::Node* CStar::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPStar* object = this->spstar; + SPStar *star = object; if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { repr = xml_doc->createElement("svg:path"); @@ -150,18 +170,24 @@ sp_star_write (SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML repr->setAttribute("d", d); g_free (d); - if (((SPObjectClass *) (parent_class))->write) - ((SPObjectClass *) (parent_class))->write (object, xml_doc, repr, flags); + // CPPIFY: see header file + CShape::onWrite(xml_doc, repr, flags); return repr; } -static void -sp_star_set (SPObject *object, unsigned int key, const gchar *value) +// CPPIFY: remove +static Inkscape::XML::Node * +sp_star_write (SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { - SVGLength::Unit unit; + return ((SPStar*)object)->cstar->onWrite(xml_doc, repr, flags); +} + +void CStar::onSet(unsigned int key, const gchar* value) { + SPStar* object = this->spstar; + SPStar *star = object; - SPStar *star = SP_STAR (object); + SVGLength::Unit unit; /* fixme: we should really collect updates */ switch (key) { @@ -250,29 +276,43 @@ sp_star_set (SPObject *object, unsigned int key, const gchar *value) object->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG); break; default: - if (((SPObjectClass *) parent_class)->set) - ((SPObjectClass *) parent_class)->set (object, key, value); + // CPPIFY: see header file + CShape::onSet(key, value); break; } } +// CPPIFY: remove static void -sp_star_update (SPObject *object, SPCtx *ctx, guint flags) +sp_star_set (SPObject *object, unsigned int key, const gchar *value) { + ((SPStar*)object)->cstar->onSet(key, value); +} + +void CStar::onUpdate(SPCtx *ctx, guint flags) { + SPStar* object = this->spstar; + if (flags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG)) { ((SPShape *) object)->setShape (); } - if (((SPObjectClass *) parent_class)->update) - ((SPObjectClass *) parent_class)->update (object, ctx, flags); + // CPPIFY: see header file + CShape::onUpdate(ctx, flags); } +// CPPIFY: remove static void -sp_star_update_patheffect(SPLPEItem *lpeitem, bool write) +sp_star_update (SPObject *object, SPCtx *ctx, guint flags) { + ((SPStar*)object)->cstar->onUpdate(ctx, flags); +} + +void CStar::onUpdatePatheffect(bool write) { + SPStar* lpeitem = this->spstar; SPShape *shape = (SPShape *) lpeitem; + sp_star_set_shape(shape); if (write) { @@ -289,10 +329,15 @@ sp_star_update_patheffect(SPLPEItem *lpeitem, bool write) ((SPObject *)shape)->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG); } -static gchar * -sp_star_description (SPItem *item) +// CPPIFY: remove +static void +sp_star_update_patheffect(SPLPEItem *lpeitem, bool write) { - SPStar *star = SP_STAR (item); + ((SPStar*)lpeitem)->cstar->onUpdatePatheffect(write); +} + +gchar* CStar::onDescription() { + SPStar *star = this->spstar; // while there will never be less than 3 vertices, we still need to // make calls to ngettext because the pluralization may be different @@ -307,6 +352,13 @@ sp_star_description (SPItem *item) star->sides), star->sides); } +// CPPIFY: remove +static gchar * +sp_star_description (SPItem *item) +{ + return ((SPStar*)item)->cstar->onDescription(); +} + /** Returns a unit-length vector at 90 degrees to the direction from o to n */ @@ -413,14 +465,12 @@ sp_star_get_curvepoint (SPStar *star, SPStarPoint point, gint index, bool previ) } } - #define NEXT false #define PREV true -static void -sp_star_set_shape (SPShape *shape) -{ - SPStar *star = SP_STAR (shape); +void CStar::onSetShape() { + SPStar* shape = this->spstar; + SPStar *star = shape; // perhaps we should convert all our shapes into LPEs without source path // and with knotholders for parameters, then this situation will be handled automatically @@ -515,6 +565,13 @@ sp_star_set_shape (SPShape *shape) c->unref(); } +// CPPIFY: remove +static void +sp_star_set_shape (SPShape *shape) +{ + ((SPStar*)shape)->cstar->onSetShape(); +} + void sp_star_position_set (SPStar *star, gint sides, Geom::Point center, gdouble r1, gdouble r2, gdouble arg1, gdouble arg2, bool isflat, double rounded, double randomized) { @@ -537,16 +594,16 @@ sp_star_position_set (SPStar *star, gint sides, Geom::Point center, gdouble r1, star->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG); } -static void sp_star_snappoints(SPItem const *item, std::vector &p, Inkscape::SnapPreferences const *snapprefs) -{ +void CStar::onSnappoints(std::vector &p, Inkscape::SnapPreferences const *snapprefs) { + SPStar* item = this->spstar; + // We will determine the star's midpoint ourselves, instead of trusting on the base class // Therefore snapping to object midpoints is temporarily disabled Inkscape::SnapPreferences local_snapprefs = *snapprefs; local_snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_OBJECT_MIDPOINT, false); - if (((SPItemClass *) parent_class)->snappoints) { - ((SPItemClass *) parent_class)->snappoints (item, p, &local_snapprefs); - } + // CPPIFY: see header file + CShape::onSnappoints(p, &local_snapprefs); if (snapprefs->isTargetSnappable(Inkscape::SNAPTARGET_OBJECT_MIDPOINT)) { Geom::Affine const i2dt (item->i2dt_affine ()); @@ -554,6 +611,12 @@ static void sp_star_snappoints(SPItem const *item, std::vector &p, Inkscape::SnapPreferences const *snapprefs) +{ + ((SPStar const*)item)->cstar->onSnappoints(p, snapprefs); +} + /** * sp_star_get_xy: Get X-Y value as item coordinate system * @star: star item diff --git a/src/sp-star.h b/src/sp-star.h index 82197d13d..de19cc5ec 100644 --- a/src/sp-star.h +++ b/src/sp-star.h @@ -26,13 +26,17 @@ class SPStar; class SPStarClass; +class CStar; typedef enum { SP_STAR_POINT_KNOT1, SP_STAR_POINT_KNOT2 } SPStarPoint; -struct SPStar : public SPPolygon { +class SPStar : public SPPolygon { +public: + CStar* cstar; + gint sides; Geom::Point center; @@ -48,6 +52,31 @@ struct SPStarClass { SPPolygonClass parent_class; }; +// CPPIFY: This derivation is a bit weird. +// parent_class = reinterpret_cast(g_type_class_ref(SP_TYPE_SHAPE)); +// So shouldn't star be derived from shape instead of polygon? +// What does polygon have that shape doesn't? +class CStar : public CPolygon { +public: + CStar(SPStar* star); + virtual ~CStar(); + + virtual void onBuild(SPDocument *document, Inkscape::XML::Node *repr); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + virtual void onSet(unsigned int key, gchar const* value); + virtual void onUpdate(SPCtx* ctx, guint flags); + + virtual gchar* onDescription(); + virtual void onSnappoints(std::vector &p, Inkscape::SnapPreferences const *snapprefs); + + virtual void onUpdatePatheffect(bool write); + virtual void onSetShape(); + +protected: + SPStar* spstar; +}; + + GType sp_star_get_type (void); void sp_star_position_set (SPStar *star, gint sides, Geom::Point center, gdouble r1, gdouble r2, gdouble arg1, gdouble arg2, bool isflat, double rounded, double randomized); -- cgit v1.2.3 From 375a1ceb6ff9b4868f9e57b5cd865e7c2ce518fe Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sat, 18 Aug 2012 23:51:30 +0200 Subject: Added "virtual pad" to SPPolyLine. (bzr r11608.1.12) --- src/sp-polyline.cpp | 68 ++++++++++++++++++++++++++++++++++++++--------------- src/sp-polyline.h | 20 ++++++++++++++++ 2 files changed, 69 insertions(+), 19 deletions(-) diff --git a/src/sp-polyline.cpp b/src/sp-polyline.cpp index 8dbed2a22..16980bcb6 100644 --- a/src/sp-polyline.cpp +++ b/src/sp-polyline.cpp @@ -59,24 +59,39 @@ void SPPolyLineClass::sp_polyline_class_init(SPPolyLineClass *klass) item_class->description = SPPolyLine::getDescription; } -void SPPolyLine::init(SPPolyLine * /*polyline*/) -{ - /* Nothing here */ +CPolyLine::CPolyLine(SPPolyLine* polyline) : CShape(polyline) { + this->sppolyline = polyline; } -void SPPolyLine::build(SPObject * object, SPDocument * document, Inkscape::XML::Node * repr) +CPolyLine::~CPolyLine() { +} + +void SPPolyLine::init(SPPolyLine * polyline) { + polyline->cpolyline = new CPolyLine(polyline); + polyline->cshape = polyline->cpolyline; + polyline->clpeitem = polyline->cpolyline; + polyline->citem = polyline->cpolyline; + polyline->cobject = polyline->cpolyline; +} - if (((SPObjectClass *) SPPolyLineClass::static_parent_class)->build) { - ((SPObjectClass *) SPPolyLineClass::static_parent_class)->build (object, document, repr); - } +void CPolyLine::onBuild(SPDocument * document, Inkscape::XML::Node * repr) { + SPPolyLine* object = this->sppolyline; + + CShape::onBuild(document, repr); object->readAttr( "points" ); } -void SPPolyLine::set(SPObject *object, unsigned int key, const gchar *value) +// CPPIFY: remove +void SPPolyLine::build(SPObject * object, SPDocument * document, Inkscape::XML::Node * repr) { - SPPolyLine *polyline = SP_POLYLINE(object); + ((SPPolyLine*)object)->cpolyline->onBuild(document, repr); +} + +void CPolyLine::onSet(unsigned int key, const gchar* value) { + SPPolyLine* object = this->sppolyline; + SPPolyLine *polyline = object; switch (key) { case SP_ATTR_POINTS: { @@ -125,16 +140,22 @@ void SPPolyLine::set(SPObject *object, unsigned int key, const gchar *value) break; } default: - if (((SPObjectClass *) SPPolyLineClass::static_parent_class)->set) { - ((SPObjectClass *) SPPolyLineClass::static_parent_class)->set (object, key, value); - } + CShape::onSet(key, value); break; } } -Inkscape::XML::Node *SPPolyLine::write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +// CPPIFY: remove +void SPPolyLine::set(SPObject *object, unsigned int key, const gchar *value) { - SP_POLYLINE(object); + ((SPPolyLine*)object)->cpolyline->onSet(key, value); +} + +Inkscape::XML::Node* CPolyLine::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPPolyLine* object = this->sppolyline; + + // CPPIFY: This is a simple type check? + //SP_POLYLINE(object); if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { repr = xml_doc->createElement("svg:polyline"); @@ -144,16 +165,25 @@ Inkscape::XML::Node *SPPolyLine::write(SPObject *object, Inkscape::XML::Document repr->mergeFrom(object->getRepr(), "id"); } - if (((SPObjectClass *) (SPPolyLineClass::static_parent_class))->write) { - ((SPObjectClass *) (SPPolyLineClass::static_parent_class))->write (object, xml_doc, repr, flags); - } + CShape::onWrite(xml_doc, repr, flags); return repr; } -gchar *SPPolyLine::getDescription(SPItem * /*item*/) +// CPPIFY: remove +Inkscape::XML::Node *SPPolyLine::write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +{ + return ((SPPolyLine*)object)->cpolyline->onWrite(xml_doc, repr, flags); +} + +gchar* CPolyLine::onDescription() { + return g_strdup(_("Polyline")); +} + +// CPPIFY: remove +gchar *SPPolyLine::getDescription(SPItem * item) { - return g_strdup(_("Polyline")); + return ((SPPolyLine*)item)->cpolyline->onDescription(); } diff --git a/src/sp-polyline.h b/src/sp-polyline.h index 277529b49..09c602c38 100644 --- a/src/sp-polyline.h +++ b/src/sp-polyline.h @@ -13,9 +13,12 @@ class SPPolyLine; class SPPolyLineClass; +class CPolyLine; class SPPolyLine : public SPShape { public: + CPolyLine* cpolyline; + static GType sp_polyline_get_type (void); private: @@ -41,6 +44,23 @@ private: friend class SPPolyLine; }; + +class CPolyLine : public CShape { +public: + CPolyLine(SPPolyLine* polyline); + virtual ~CPolyLine(); + + virtual void onBuild(SPDocument* doc, Inkscape::XML::Node* repr); + virtual void onSet(unsigned int key, gchar const* value); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + + virtual gchar* onDescription(); + +protected: + SPPolyLine* sppolyline; +}; + + #endif // SEEN_SP_POLYLINE_H /* -- cgit v1.2.3 From 1ab271aaa35acc07f07c88945f461d42dc7352fc Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sat, 18 Aug 2012 23:51:50 +0200 Subject: Added "virtual pad" to SPRect. (bzr r11608.1.13) --- src/sp-rect.cpp | 154 +++++++++++++++++++++++++++++++++++++++----------------- src/sp-rect.h | 30 ++++++++++- 2 files changed, 136 insertions(+), 48 deletions(-) diff --git a/src/sp-rect.cpp b/src/sp-rect.cpp index 22a403345..47374605b 100644 --- a/src/sp-rect.cpp +++ b/src/sp-rect.cpp @@ -93,9 +93,22 @@ sp_rect_class_init(SPRectClass *klass) shape_class->set_shape = sp_rect_set_shape; } +CRect::CRect(SPRect* rect) : CShape(rect) { + this->sprect = rect; +} + +CRect::~CRect() { +} + static void -sp_rect_init(SPRect */*rect*/) +sp_rect_init(SPRect *rect) { + rect->crect = new CRect(rect); + rect->cshape = rect->crect; + rect->clpeitem = rect->crect; + rect->citem = rect->crect; + rect->cobject = rect->crect; + /* Initializing to zero is automatic */ /* sp_svg_length_unset(&rect->x, SP_SVG_UNIT_NONE, 0.0, 0.0); */ /* sp_svg_length_unset(&rect->y, SP_SVG_UNIT_NONE, 0.0, 0.0); */ @@ -105,11 +118,10 @@ sp_rect_init(SPRect */*rect*/) /* sp_svg_length_unset(&rect->ry, SP_SVG_UNIT_NONE, 0.0, 0.0); */ } -static void -sp_rect_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) -{ - if (((SPObjectClass *) parent_class)->build) - ((SPObjectClass *) parent_class)->build(object, document, repr); +void CRect::onBuild(SPDocument* doc, Inkscape::XML::Node* repr) { + SPRect* object = this->sprect; + + CShape::onBuild(doc, repr); object->readAttr( "x" ); object->readAttr( "y" ); @@ -119,10 +131,16 @@ sp_rect_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) object->readAttr( "ry" ); } +// CPPIFY: remove static void -sp_rect_set(SPObject *object, unsigned key, gchar const *value) +sp_rect_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) { - SPRect *rect = SP_RECT(object); + ((SPRect*)object)->crect->onBuild(document, repr); +} + +void CRect::onSet(unsigned key, gchar const *value) { + SPRect* rect = this->sprect; + SPRect* object = rect; /* fixme: We need real error processing some time */ @@ -160,15 +178,21 @@ sp_rect_set(SPObject *object, unsigned key, gchar const *value) object->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG); break; default: - if (((SPObjectClass *) parent_class)->set) - ((SPObjectClass *) parent_class)->set(object, key, value); + CShape::onSet(key, value); break; } } +// CPPIFY: remove static void -sp_rect_update(SPObject *object, SPCtx *ctx, guint flags) +sp_rect_set(SPObject *object, unsigned key, gchar const *value) { + ((SPRect*)object)->crect->onSet(key, value); +} + +void CRect::onUpdate(SPCtx* ctx, unsigned int flags) { + SPRect* object = this->sprect; + if (flags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG)) { SPRect *rect = (SPRect *) object; SPStyle *style = object->style; @@ -187,14 +211,18 @@ sp_rect_update(SPObject *object, SPCtx *ctx, guint flags) flags &= ~SP_OBJECT_USER_MODIFIED_FLAG_B; // since we change the description, it's not a "just translation" anymore } - if (((SPObjectClass *) parent_class)->update) - ((SPObjectClass *) parent_class)->update(object, ctx, flags); + CShape::onUpdate(ctx, flags); } -static Inkscape::XML::Node * -sp_rect_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +// CPPIFY: remove +static void +sp_rect_update(SPObject *object, SPCtx *ctx, guint flags) { - SPRect *rect = SP_RECT(object); + ((SPRect*)object)->crect->onUpdate(ctx, flags); +} + +Inkscape::XML::Node * CRect::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPRect* rect = this->sprect; if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { repr = xml_doc->createElement("svg:rect"); @@ -207,26 +235,34 @@ sp_rect_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML: sp_repr_set_svg_double(repr, "x", rect->x.computed); sp_repr_set_svg_double(repr, "y", rect->y.computed); - if (((SPObjectClass *) parent_class)->write) - ((SPObjectClass *) parent_class)->write(object, xml_doc, repr, flags); + CShape::onWrite(xml_doc, repr, flags); return repr; } +// CPPIFY: remove +static Inkscape::XML::Node * +sp_rect_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +{ + return ((SPRect*)object)->crect->onWrite(xml_doc, repr, flags); +} + +gchar* CRect::onDescription() { + g_return_val_if_fail(SP_IS_RECT(this->sprect), NULL); + return g_strdup(_("Rectangle")); +} + +// CPPIFY: remove static gchar * sp_rect_description(SPItem *item) { - g_return_val_if_fail(SP_IS_RECT(item), NULL); - - return g_strdup(_("Rectangle")); + return ((SPRect*)item)->crect->onDescription(); } #define C1 0.554 -static void -sp_rect_set_shape(SPShape *shape) -{ - SPRect *rect = (SPRect *) shape; +void CRect::onSetShape() { + SPRect *rect = this->sprect; if ((rect->height.computed < 1e-18) || (rect->width.computed < 1e-18)) { SP_SHAPE(rect)->setCurveInsync( NULL, TRUE); @@ -288,6 +324,13 @@ sp_rect_set_shape(SPShape *shape) c->unref(); } +// CPPIFY: remove +static void +sp_rect_set_shape(SPShape *shape) +{ + ((SPRect*)shape)->crect->onSetShape(); +} + /* fixme: Think (Lauris) */ void @@ -328,18 +371,9 @@ sp_rect_set_ry(SPRect *rect, gboolean set, gdouble value) SP_OBJECT(rect)->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG); } -/* - * Initially we'll do: - * Transform x, y, set x, y, clear translation - */ - -/* fixme: Use preferred units somehow (Lauris) */ -/* fixme: Alternately preserve whatever units there are (lauris) */ - -static Geom::Affine -sp_rect_set_transform(SPItem *item, Geom::Affine const &xform) -{ - SPRect *rect = SP_RECT(item); +Geom::Affine CRect::onSetTransform(Geom::Affine const& xform) { + SPRect *rect = this->sprect; + SPRect* item = rect; /* Calculate rect start in parent coords. */ Geom::Point pos( Geom::Point(rect->x.computed, rect->y.computed) * xform ); @@ -395,6 +429,21 @@ sp_rect_set_transform(SPItem *item, Geom::Affine const &xform) return ret; } +/* + * Initially we'll do: + * Transform x, y, set x, y, clear translation + */ + +/* fixme: Use preferred units somehow (Lauris) */ +/* fixme: Alternately preserve whatever units there are (lauris) */ + +// CPPIFY: remove +static Geom::Affine +sp_rect_set_transform(SPItem *item, Geom::Affine const &xform) +{ + return ((SPRect*)item)->crect->onSetTransform(xform); +} + /** Returns the ratio in which the vector from p0 to p1 is stretched by transform @@ -551,11 +600,10 @@ sp_rect_get_visible_height(SPRect *rect) rect->transform); } -/** - * Sets the snappoint p to the unrounded corners of the rectangle - */ -static void sp_rect_snappoints(SPItem const *item, std::vector &p, Inkscape::SnapPreferences const *snapprefs) -{ +void CRect::onSnappoints(std::vector &p, Inkscape::SnapPreferences const *snapprefs) { + SPRect *rect = this->sprect; + SPRect* item = rect; + /* This method overrides sp_shape_snappoints, which is the default for any shape. The default method returns all eight points along the path of a rounded rectangle, but not the real corners. Snapping the startpoint and endpoint of each rounded corner is not very useful and really confusing. Instead @@ -566,8 +614,6 @@ static void sp_rect_snappoints(SPItem const *item, std::vectori2dt_affine ()); Geom::Point p0 = Geom::Point(rect->x.computed, rect->y.computed) * i2dt; @@ -592,12 +638,20 @@ static void sp_rect_snappoints(SPItem const *item, std::vectorisTargetSnappable(Inkscape::SNAPTARGET_OBJECT_MIDPOINT)) { p.push_back(Inkscape::SnapCandidatePoint((p0 + p2)/2, Inkscape::SNAPSOURCE_OBJECT_MIDPOINT, Inkscape::SNAPTARGET_OBJECT_MIDPOINT)); } +} +// CPPIFY: remove +/** + * Sets the snappoint p to the unrounded corners of the rectangle + */ +static void sp_rect_snappoints(SPItem const *item, std::vector &p, Inkscape::SnapPreferences const *snapprefs) +{ + ((SPRect*)item)->crect->onSnappoints(p, snapprefs); } -void -sp_rect_convert_to_guides(SPItem *item) { - SPRect *rect = SP_RECT(item); +void CRect::onConvertToGuides() { + SPRect* rect = this->sprect; + SPRect* item = rect; Inkscape::Preferences *prefs = Inkscape::Preferences::get(); if (!prefs->getBool("/tools/shapes/rect/convertguides", true)) { @@ -622,6 +676,12 @@ sp_rect_convert_to_guides(SPItem *item) { sp_guide_pt_pairs_to_guides(item->document, pts); } +// CPPIFY: remove +void +sp_rect_convert_to_guides(SPItem *item) { + ((SPRect*)item)->crect->onConvertToGuides(); +} + /* Local Variables: mode:c++ diff --git a/src/sp-rect.h b/src/sp-rect.h index 7bc85dd8a..f33323a4d 100644 --- a/src/sp-rect.h +++ b/src/sp-rect.h @@ -28,8 +28,12 @@ class SPRect; class SPRectClass; +class CRect; + +class SPRect : public SPShape { +public: + CRect* crect; -struct SPRect : public SPShape { SVGLength x; SVGLength y; SVGLength width; @@ -43,6 +47,30 @@ struct SPRectClass { }; +class CRect : public CShape { +public: + CRect(SPRect* sprect); + virtual ~CRect(); + + virtual void onBuild(SPDocument* doc, Inkscape::XML::Node* repr); + + void onSet(unsigned key, gchar const *value); + void onUpdate(SPCtx* ctx, unsigned int flags); + + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + virtual gchar* onDescription(); + + void onSetShape(); + virtual Geom::Affine onSetTransform(Geom::Affine const& xform); + + void onSnappoints(std::vector &p, Inkscape::SnapPreferences const *snapprefs); + void onConvertToGuides(); + +protected: + SPRect* sprect; +}; + + /* Standard GType function */ GType sp_rect_get_type (void); -- cgit v1.2.3 From f7070430c2a43ad20438359f62c4313a49518152 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sat, 18 Aug 2012 23:52:09 +0200 Subject: Added "virtual pad" to SPSpiral. (bzr r11608.1.14) --- src/sp-spiral.cpp | 140 +++++++++++++++++++++++++++++++++++++----------------- src/sp-spiral.h | 27 ++++++++++- 2 files changed, 123 insertions(+), 44 deletions(-) diff --git a/src/sp-spiral.cpp b/src/sp-spiral.cpp index fd2672388..f5e7cdb0b 100644 --- a/src/sp-spiral.cpp +++ b/src/sp-spiral.cpp @@ -97,12 +97,25 @@ static void sp_spiral_class_init(SPSpiralClass *klass) shape_class->set_shape = sp_spiral_set_shape; } +CSpiral::CSpiral(SPSpiral* spiral) : CShape(spiral) { + this->spspiral = spiral; +} + +CSpiral::~CSpiral() { +} + /** * Callback for SPSpiral object initialization. */ static void sp_spiral_init (SPSpiral * spiral) { + spiral->cspiral = new CSpiral(spiral); + spiral->cshape = spiral->cspiral; + spiral->clpeitem = spiral->cspiral; + spiral->citem = spiral->cspiral; + spiral->cobject = spiral->cspiral; + spiral->cx = 0.0; spiral->cy = 0.0; spiral->exp = 1.0; @@ -112,14 +125,10 @@ sp_spiral_init (SPSpiral * spiral) spiral->t0 = 0.0; } -/** - * Virtual build: set spiral properties from corresponding repr. - */ -static void sp_spiral_build(SPObject * object, SPDocument * document, Inkscape::XML::Node * repr) -{ - if (reinterpret_cast(parent_class)->build) { - reinterpret_cast(parent_class)->build(object, document, repr); - } +void CSpiral::onBuild(SPDocument * document, Inkscape::XML::Node * repr) { + SPSpiral* object = this->spspiral; + + CShape::onBuild(document, repr); object->readAttr( "sodipodi:cx" ); object->readAttr( "sodipodi:cy" ); @@ -130,13 +139,17 @@ static void sp_spiral_build(SPObject * object, SPDocument * document, Inkscape:: object->readAttr( "sodipodi:t0" ); } +// CPPIFY: remove /** - * Virtual write: write spiral attributes to corresponding repr. + * Virtual build: set spiral properties from corresponding repr. */ -static Inkscape::XML::Node * -sp_spiral_write (SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +static void sp_spiral_build(SPObject * object, SPDocument * document, Inkscape::XML::Node * repr) { - SPSpiral *spiral = SP_SPIRAL (object); + ((SPSpiral*)object)->cspiral->onBuild(document, repr); +} + +Inkscape::XML::Node* CSpiral::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPSpiral *spiral = this->spspiral; if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { repr = xml_doc->createElement("svg:path"); @@ -168,19 +181,24 @@ sp_spiral_write (SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::X repr->setAttribute("d", d); g_free (d); - if (reinterpret_cast(parent_class)->write) { - reinterpret_cast(parent_class)->write(object, xml_doc, repr, flags | SP_SHAPE_WRITE_PATH); - } + CShape::onWrite(xml_doc, repr, flags | SP_SHAPE_WRITE_PATH); return repr; } +// CPPIFY: remove /** - * Virtual set: change spiral object attribute. + * Virtual write: write spiral attributes to corresponding repr. */ -static void sp_spiral_set(SPObject *object, unsigned int key, const gchar *value) +static Inkscape::XML::Node * +sp_spiral_write (SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { - SPSpiral *spiral = SP_SPIRAL(object); + return ((SPSpiral*)object)->cspiral->onWrite(xml_doc, repr, flags); +} + +void CSpiral::onSet(unsigned int key, gchar const* value) { + SPSpiral *spiral = this->spspiral; + SPSpiral* object = spiral; /// \todo fixme: we should really collect updates switch (key) { @@ -260,30 +278,42 @@ static void sp_spiral_set(SPObject *object, unsigned int key, const gchar *value object->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG); break; default: - if (reinterpret_cast(parent_class)->set) { - reinterpret_cast(parent_class)->set(object, key, value); - } + CShape::onSet(key, value); break; } } +// CPPIFY: remove /** - * Virtual update callback. + * Virtual set: change spiral object attribute. */ -static void sp_spiral_update(SPObject *object, SPCtx *ctx, guint flags) +static void sp_spiral_set(SPObject *object, unsigned int key, const gchar *value) { + ((SPSpiral*)object)->cspiral->onSet(key, value); +} + +void CSpiral::onUpdate(SPCtx *ctx, guint flags) { + SPSpiral* object = this->spspiral; + if (flags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG)) { reinterpret_cast(object)->setShape(); } - if (reinterpret_cast(parent_class)->update) { - reinterpret_cast(parent_class)->update(object, ctx, flags); - } + CShape::onUpdate(ctx, flags); } -static void sp_spiral_update_patheffect(SPLPEItem *lpeitem, bool write) +// CPPIFY: remove +/** + * Virtual update callback. + */ +static void sp_spiral_update(SPObject *object, SPCtx *ctx, guint flags) { - SPShape *shape = static_cast(lpeitem); + ((SPSpiral*)object)->cspiral->onUpdate(ctx, flags); +} + +void CSpiral::onUpdatePatheffect(bool write) { + SPSpiral* shape = this->spspiral; + sp_spiral_set_shape(shape); if (write) { @@ -300,14 +330,27 @@ static void sp_spiral_update_patheffect(SPLPEItem *lpeitem, bool write) shape->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG); } +// CPPIFY: remove +static void sp_spiral_update_patheffect(SPLPEItem *lpeitem, bool write) +{ + ((SPSpiral*)lpeitem)->cspiral->onUpdatePatheffect(write); +} + +gchar* CSpiral::onDescription() { + SPSpiral* item = this->spspiral; + + // TRANSLATORS: since turn count isn't an integer, please adjust the + // string as needed to deal with an localized plural forms. + return g_strdup_printf (_("Spiral with %3f turns"), SP_SPIRAL(item)->revo); +} + +// CPPIFY: remove /** * Return textual description of spiral. */ static gchar *sp_spiral_description(SPItem * item) { - // TRANSLATORS: since turn count isn't an integer, please adjust the - // string as needed to deal with an localized plural forms. - return g_strdup_printf (_("Spiral with %3f turns"), SP_SPIRAL(item)->revo); + return ((SPSpiral*)item)->cspiral->onDescription(); } @@ -401,10 +444,9 @@ sp_spiral_fit_and_draw (SPSpiral const *spiral, g_assert (is_unit_vector (hat2)); } -static void -sp_spiral_set_shape (SPShape *shape) -{ - SPSpiral *spiral = SP_SPIRAL(shape); +void CSpiral::onSetShape() { + SPSpiral *spiral = this->spspiral; + SPSpiral* shape = spiral; if (sp_lpe_item_has_broken_path_effect(SP_LPE_ITEM(shape))) { g_warning ("The spiral shape has unknown LPE on it! Convert to path to make it editable preserving the appearance; editing it as spiral will remove the bad LPE"); @@ -469,6 +511,13 @@ sp_spiral_set_shape (SPShape *shape) c->unref(); } +// CPPIFY: remove +static void +sp_spiral_set_shape (SPShape *shape) +{ + ((SPSpiral*)shape)->cspiral->onSetShape(); +} + /** * Set spiral properties and update display. */ @@ -500,19 +549,15 @@ sp_spiral_position_set (SPSpiral *spiral, (static_cast(spiral))->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG); } -/** - * Virtual snappoints callback. - */ -static void sp_spiral_snappoints(SPItem const *item, std::vector &p, Inkscape::SnapPreferences const *snapprefs) -{ +void CSpiral::onSnappoints(std::vector &p, Inkscape::SnapPreferences const *snapprefs) { + SPSpiral* item = this->spspiral; + // We will determine the spiral's midpoint ourselves, instead of trusting on the base class // Therefore snapping to object midpoints is temporarily disabled Inkscape::SnapPreferences local_snapprefs = *snapprefs; local_snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_OBJECT_MIDPOINT, false); - if ((reinterpret_cast(parent_class))->snappoints) { - (reinterpret_cast(parent_class))->snappoints (item, p, &local_snapprefs); - } + CShape::onSnappoints(p, &local_snapprefs); if (snapprefs->isTargetSnappable(Inkscape::SNAPTARGET_OBJECT_MIDPOINT)) { Geom::Affine const i2dt (item->i2dt_affine ()); @@ -523,6 +568,15 @@ static void sp_spiral_snappoints(SPItem const *item, std::vector &p, Inkscape::SnapPreferences const *snapprefs) +{ + ((SPSpiral*)item)->cspiral->onSnappoints(p, snapprefs); +} + /** * Return one of the points on the spiral. * diff --git a/src/sp-spiral.h b/src/sp-spiral.h index 6da7c38a4..570f8e691 100644 --- a/src/sp-spiral.h +++ b/src/sp-spiral.h @@ -31,6 +31,7 @@ class SPSpiral; class SPSpiralClass; +class CSpiral; /** * A spiral Shape. @@ -44,7 +45,10 @@ class SPSpiralClass; * * \todo Should I remove these attributes? */ -struct SPSpiral : public SPShape { +class SPSpiral : public SPShape { +public: + CSpiral* cspiral; + float cx, cy; float exp; ///< Spiral expansion factor float revo; ///< Spiral revolution factor @@ -59,6 +63,27 @@ struct SPSpiralClass { }; +class CSpiral : public CShape { +public: + CSpiral(SPSpiral* spiral); + virtual ~CSpiral(); + + virtual void onBuild(SPDocument* doc, Inkscape::XML::Node* repr); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + virtual void onUpdate(SPCtx *ctx, guint flags); + virtual void onSet(unsigned int key, gchar const* value); + + virtual void onSnappoints(std::vector &p, Inkscape::SnapPreferences const *snapprefs); + virtual gchar* onDescription(); + + virtual void onSetShape(); + virtual void onUpdatePatheffect(bool write); + +protected: + SPSpiral* spspiral; +}; + + /* Standard Gtk function */ GType sp_spiral_get_type (void); -- cgit v1.2.3 From c2590463bfdefdbf69f5e1503533c7b4852ac7cd Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sun, 19 Aug 2012 00:11:19 +0200 Subject: As all subclasses of SPShape now have "virtual pads" with correct inheritance, the virtual function call to "onSetShape" was converted to C++ style. (bzr r11608.1.15) --- src/sp-shape.cpp | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/sp-shape.cpp b/src/sp-shape.cpp index e0f13c62d..87b1e7607 100644 --- a/src/sp-shape.cpp +++ b/src/sp-shape.cpp @@ -509,7 +509,6 @@ void SPShape::sp_shape_update_marker_view(SPShape *shape, Inkscape::DrawingItem void CShape::onModified(unsigned int flags) { SPShape* shape = this->spshape; - SPShape* object = shape; CLPEItem::onModified(flags); @@ -1081,9 +1080,7 @@ void CShape::onSetShape() { */ void SPShape::setShape() { - if (SP_SHAPE_CLASS (G_OBJECT_GET_CLASS (this))->set_shape) { - SP_SHAPE_CLASS (G_OBJECT_GET_CLASS (this))->set_shape (this); - } + this->cshape->onSetShape(); } /** -- cgit v1.2.3 From 72f9ed8e6a94b65a3fbc9582179e6e72330ff144 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sun, 19 Aug 2012 01:40:03 +0200 Subject: Added "virtual pad" to SPGroup and SPSwitch. There was some weird try by someone else. SPGroup should work as expected, SPSwitch may still be buggy. (bzr r11608.1.16) --- src/sp-conn-end-pair.cpp | 2 +- src/sp-item-group.cpp | 539 +++++++++++++++++++++++++---------------------- src/sp-item-group.h | 44 ++-- src/sp-switch.cpp | 67 +++--- src/sp-switch.h | 54 +++-- 5 files changed, 386 insertions(+), 320 deletions(-) diff --git a/src/sp-conn-end-pair.cpp b/src/sp-conn-end-pair.cpp index 17e9e7397..05495477b 100644 --- a/src/sp-conn-end-pair.cpp +++ b/src/sp-conn-end-pair.cpp @@ -203,7 +203,7 @@ SPConnEndPair::getAttachedItems(SPItem *h2attItem[2]) const { // selected through the XML editor, it makes sense just to detach // connectors from them. if (SP_IS_GROUP(h2attItem[h])) { - if (SP_GROUP(h2attItem[h])->group->getItemCount() == 0) { + if (SP_GROUP(h2attItem[h])->getItemCount() == 0) { // This group is empty, so detach. sp_conn_end_detach(_path, h); h2attItem[h] = NULL; diff --git a/src/sp-item-group.cpp b/src/sp-item-group.cpp index b54ec65e2..406db4d8f 100644 --- a/src/sp-item-group.cpp +++ b/src/sp-item-group.cpp @@ -138,90 +138,232 @@ sp_group_class_init (SPGroupClass *klass) lpe_item_class->update_patheffect = sp_group_update_patheffect; } +CGroup::CGroup(SPGroup *group) : CLPEItem(group) { + this->spgroup = group; +} + +CGroup::~CGroup() { +} + static void sp_group_init (SPGroup *group) { + group->cgroup = new CGroup(group); + group->clpeitem = group->cgroup; + group->citem = group->cgroup; + group->cobject = group->cgroup; + group->_layer_mode = SPGroup::GROUP; - group->group = new CGroup(group); - new (&group->_display_modes) std::map(); + new (&group->_display_modes) std::map(); } -static void sp_group_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) -{ +void CGroup::onBuild(SPDocument *document, Inkscape::XML::Node *repr) { + SPGroup* object = this->spgroup; + object->readAttr( "inkscape:groupmode" ); - if (((SPObjectClass *)parent_class)->build) { - ((SPObjectClass *)parent_class)->build(object, document, repr); - } + CLPEItem::onBuild(document, repr); } -static void sp_group_release(SPObject *object) { +// CPPIFY: remove +static void sp_group_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) +{ + ((SPGroup*)object)->cgroup->onBuild(document, repr); +} + +void CGroup::onRelease() { + SPGroup* object = this->spgroup; + if ( SP_GROUP(object)->_layer_mode == SPGroup::LAYER ) { object->document->removeResource("layer", object); } - if (((SPObjectClass *)parent_class)->release) { - ((SPObjectClass *)parent_class)->release(object); - } + + CLPEItem::onRelease(); +} + +// CPPIFY: remove +static void sp_group_release(SPObject *object) { + ((SPGroup*)object)->cgroup->onRelease(); } static void sp_group_dispose(GObject *object) { SP_GROUP(object)->_display_modes.~map(); - delete SP_GROUP(object)->group; } -static void sp_group_child_added(SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node *ref) -{ - SPGroup *group = SP_GROUP(object); +void CGroup::onChildAdded(Inkscape::XML::Node* child, Inkscape::XML::Node* ref) { + CLPEItem::onChildAdded(child, ref); + + SPObject *last_child = spgroup->lastChild(); + + if (last_child && last_child->getRepr() == child) { + // optimization for the common special case where the child is being added at the end + SPObject *ochild = last_child; + if ( SP_IS_ITEM(ochild) ) { + /* TODO: this should be moved into SPItem somehow */ + SPItemView *v; + Inkscape::DrawingItem *ac; + + for (v = spgroup->display; v != NULL; v = v->next) { + ac = SP_ITEM (ochild)->invoke_show (v->arenaitem->drawing(), v->key, v->flags); + + if (ac) { + v->arenaitem->appendChild(ac); + } + } + } + } else { // general case + SPObject *ochild = spgroup->get_child_by_repr(child); + if ( ochild && SP_IS_ITEM(ochild) ) { + /* TODO: this should be moved into SPItem somehow */ + SPItemView *v; + Inkscape::DrawingItem *ac; + + unsigned position = SP_ITEM(ochild)->pos_in_parent(); + + for (v = spgroup->display; v != NULL; v = v->next) { + ac = SP_ITEM (ochild)->invoke_show (v->arenaitem->drawing(), v->key, v->flags); - if (((SPObjectClass *) (parent_class))->child_added) { - (* ((SPObjectClass *) (parent_class))->child_added) (object, child, ref); + if (ac) { + v->arenaitem->prependChild(ac); + ac->setZOrder(position); + } + } + } } - group->group->onChildAdded(child); + spgroup->requestModified(SP_OBJECT_MODIFIED_FLAG); +} + +// CPPIFY: remove +static void sp_group_child_added(SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node *ref) +{ + ((SPGroup*)object)->cgroup->onChildAdded(child, ref); } /* fixme: hide (Lauris) */ +void CGroup::onRemoveChild(Inkscape::XML::Node *child) { + CLPEItem::onRemoveChild(child); + + spgroup->requestModified(SP_OBJECT_MODIFIED_FLAG); +} + +// CPPIFY: remove static void sp_group_remove_child (SPObject * object, Inkscape::XML::Node * child) { - if (((SPObjectClass *) (parent_class))->remove_child) - (* ((SPObjectClass *) (parent_class))->remove_child) (object, child); + ((SPGroup*)object)->cgroup->onRemoveChild(child); +} + +void CGroup::onOrderChanged (Inkscape::XML::Node *child, Inkscape::XML::Node *old_ref, Inkscape::XML::Node *new_ref) +{ + CLPEItem::onOrderChanged(child, old_ref, new_ref); - SP_GROUP(object)->group->onChildRemoved(child); + SPObject *ochild = spgroup->get_child_by_repr(child); + if ( ochild && SP_IS_ITEM(ochild) ) { + /* TODO: this should be moved into SPItem somehow */ + SPItemView *v; + unsigned position = SP_ITEM(ochild)->pos_in_parent(); + for ( v = SP_ITEM (ochild)->display ; v != NULL ; v = v->next ) { + v->arenaitem->setZOrder(position); + } + } + + spgroup->requestModified(SP_OBJECT_MODIFIED_FLAG); } +// CPPIFY: remove static void sp_group_order_changed (SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node *old_ref, Inkscape::XML::Node *new_ref) { - if (((SPObjectClass *) (parent_class))->order_changed) - (* ((SPObjectClass *) (parent_class))->order_changed) (object, child, old_ref, new_ref); + ((SPGroup*)object)->cgroup->onOrderChanged(child, old_ref, new_ref); +} + +void CGroup::onUpdate(SPCtx *ctx, unsigned int flags) { + CLPEItem::onUpdate(ctx, flags); + + SPItemCtx *ictx, cctx; + + ictx = (SPItemCtx *) ctx; + cctx = *ictx; - SP_GROUP(object)->group->onOrderChanged(child, old_ref, new_ref); + if (flags & SP_OBJECT_MODIFIED_FLAG) { + flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; + } + + flags &= SP_OBJECT_MODIFIED_CASCADE; + + if (flags & SP_OBJECT_STYLE_MODIFIED_FLAG) { + SPObject *object = spgroup; + for (SPItemView *v = spgroup->display; v != NULL; v = v->next) { + Inkscape::DrawingGroup *group = dynamic_cast(v->arenaitem); + group->setStyle(object->style); + } + } + + GSList *l = g_slist_reverse(spgroup->childList(true, SPObject::ActionUpdate)); + while (l) { + SPObject *child = SP_OBJECT (l->data); + l = g_slist_remove (l, child); + if (flags || (child->uflags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_CHILD_MODIFIED_FLAG))) { + if (SP_IS_ITEM (child)) { + SPItem const &chi = *SP_ITEM(child); + cctx.i2doc = chi.transform * ictx->i2doc; + cctx.i2vp = chi.transform * ictx->i2vp; + child->updateDisplay((SPCtx *)&cctx, flags); + } else { + child->updateDisplay(ctx, flags); + } + } + g_object_unref (G_OBJECT (child)); + } } +// CPPIFY: remove static void sp_group_update (SPObject *object, SPCtx *ctx, unsigned int flags) { - if (((SPObjectClass *) (parent_class))->update) - ((SPObjectClass *) (parent_class))->update (object, ctx, flags); + ((SPGroup*)object)->cgroup->onUpdate(ctx, flags); +} + +void CGroup::onModified(guint flags) { + CLPEItem::onModified(flags); + + SPObject *child; + + if (flags & SP_OBJECT_MODIFIED_FLAG) flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; + flags &= SP_OBJECT_MODIFIED_CASCADE; - SP_GROUP(object)->group->onUpdate(ctx, flags); + if (flags & SP_OBJECT_STYLE_MODIFIED_FLAG) { + SPObject *object = spgroup; + for (SPItemView *v = spgroup->display; v != NULL; v = v->next) { + Inkscape::DrawingGroup *group = dynamic_cast(v->arenaitem); + group->setStyle(object->style); + } + } + + GSList *l = g_slist_reverse(spgroup->childList(true)); + while (l) { + child = SP_OBJECT (l->data); + l = g_slist_remove (l, child); + if (flags || (child->mflags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_CHILD_MODIFIED_FLAG))) { + child->emitModified(flags); + } + g_object_unref (G_OBJECT (child)); + } } +// CPPIFY: remove static void sp_group_modified (SPObject *object, guint flags) { - if (((SPObjectClass *) (parent_class))->modified) - ((SPObjectClass *) (parent_class))->modified (object, flags); - - SP_GROUP(object)->group->onModified(flags); + ((SPGroup*)object)->cgroup->onModified(flags); } -static Inkscape::XML::Node * sp_group_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) -{ +Inkscape::XML::Node* CGroup::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPGroup* object = this->spgroup; SPGroup *group = SP_GROUP(object); if (flags & SP_OBJECT_WRITE_BUILD) { @@ -269,32 +411,75 @@ static Inkscape::XML::Node * sp_group_write(SPObject *object, Inkscape::XML::Doc repr->setAttribute("inkscape:groupmode", value); } - if (((SPObjectClass *) (parent_class))->write) { - ((SPObjectClass *) (parent_class))->write (object, xml_doc, repr, flags); - } + CLPEItem::onWrite(xml_doc, repr, flags); return repr; } +// CPPIFY: remove +static Inkscape::XML::Node * sp_group_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +{ + return ((SPGroup*)object)->cgroup->onWrite(xml_doc, repr, flags); +} + +Geom::OptRect CGroup::onBbox(Geom::Affine const &transform, SPItem::BBoxType bboxtype) +{ + Geom::OptRect bbox; + + GSList *l = spgroup->childList(false, SPObject::ActionBBox); + while (l) { + SPObject *o = SP_OBJECT (l->data); + if (SP_IS_ITEM(o) && !SP_ITEM(o)->isHidden()) { + SPItem *child = SP_ITEM(o); + Geom::Affine const ct(child->transform * transform); + bbox |= child->bounds(bboxtype, ct); + } + l = g_slist_remove (l, o); + } + return bbox; +} + +// CPPIFY: remove static Geom::OptRect sp_group_bbox(SPItem const *item, Geom::Affine const &transform, SPItem::BBoxType type) { - return SP_GROUP(item)->group->bounds(type, transform); + return ((SPGroup*)item)->cgroup->onBbox(transform, type); +} + +void CGroup::onPrint(SPPrintContext *ctx) { + GSList *l = g_slist_reverse(spgroup->childList(false)); + while (l) { + SPObject *o = SP_OBJECT (l->data); + if (SP_IS_ITEM(o)) { + SP_ITEM(o)->invoke_print (ctx); + } + l = g_slist_remove (l, o); + } } +// CPPIFY: remove static void sp_group_print (SPItem * item, SPPrintContext *ctx) { - SP_GROUP(item)->group->onPrint(ctx); + ((SPGroup*)item)->cgroup->onPrint(ctx); } +gchar *CGroup::onDescription() { + gint len = this->spgroup->getItemCount(); + return g_strdup_printf( + ngettext("Group of %d object", + "Group of %d objects", + len), len); +} + +// CPPIFY: remove static gchar * sp_group_description (SPItem * item) { - return SP_GROUP(item)->group->getDescription(); + return ((SPGroup*)item)->cgroup->onDescription(); } -static void sp_group_set(SPObject *object, unsigned key, char const *value) { - SPGroup *group = SP_GROUP(object); +void CGroup::onSet(unsigned int key, gchar const* value) { + SPGroup *group = this->spgroup; switch (key) { case SP_ATTR_INKSCAPE_GROUPMODE: @@ -307,27 +492,65 @@ static void sp_group_set(SPObject *object, unsigned key, char const *value) { } break; default: { - if (((SPObjectClass *) (parent_class))->set) { - (* ((SPObjectClass *) (parent_class))->set)(object, key, value); - } + CLPEItem::onSet(key, value); } } } +// CPPIFY: remove +static void sp_group_set(SPObject *object, unsigned key, char const *value) { + ((SPGroup*)object)->cgroup->onSet(key, value); +} + +Inkscape::DrawingItem *CGroup::onShow (Inkscape::Drawing &drawing, unsigned int key, unsigned int flags) { + Inkscape::DrawingGroup *ai; + SPObject *object = spgroup; + + ai = new Inkscape::DrawingGroup(drawing); + ai->setPickChildren(spgroup->effectiveLayerMode(key) == SPGroup::LAYER); + ai->setStyle(object->style); + + this->spgroup->_showChildren(drawing, ai, key, flags); + return ai; +} + +// CPPIFY: remove static Inkscape::DrawingItem * sp_group_show (SPItem *item, Inkscape::Drawing &drawing, unsigned int key, unsigned int flags) { - return SP_GROUP(item)->group->show(drawing, key, flags); + return ((SPGroup*)item)->cgroup->onShow(drawing, key, flags); } +void CGroup::onHide (unsigned int key) { + SPItem * child; + + GSList *l = g_slist_reverse(spgroup->childList(false, SPObject::ActionShow)); + while (l) { + SPObject *o = SP_OBJECT (l->data); + if (SP_IS_ITEM (o)) { + child = SP_ITEM (o); + child->invoke_hide (key); + } + l = g_slist_remove (l, o); + } + + // CPPIFY: This doesn't make no sense. + // CItem::onHide is pure and CLPEItem doesn't override it. What was the idea behind these lines? +// if (((SPItemClass *) parent_class)->hide) +// ((SPItemClass *) parent_class)->hide (spgroup, key); +// CLPEItem::onHide(key); +} + +// CPPIFY: remove static void sp_group_hide (SPItem *item, unsigned int key) { - SP_GROUP(item)->group->hide(key); + ((SPGroup*)item)->cgroup->onHide(key); } -static void sp_group_snappoints(SPItem const *item, std::vector &p, Inkscape::SnapPreferences const *snapprefs) -{ +void CGroup::onSnappoints(std::vector &p, Inkscape::SnapPreferences const *snapprefs) { + SPGroup* item = this->spgroup; + for ( SPObject const *o = item->firstChild(); o; o = o->getNext() ) { if (SP_IS_ITEM(o)) { @@ -336,6 +559,12 @@ static void sp_group_snappoints(SPItem const *item, std::vector &p, Inkscape::SnapPreferences const *snapprefs) +{ + ((SPGroup*)item)->cgroup->onSnappoints(p, snapprefs); +} + void sp_item_group_ungroup (SPGroup *group, GSList **children, bool do_done) @@ -583,152 +812,9 @@ void SPGroup::translateChildItems(Geom::Translate const &tr) } } -CGroup::CGroup(SPGroup *group) { - _group = group; -} - -CGroup::~CGroup() { -} - -void CGroup::onChildAdded(Inkscape::XML::Node *child) { - SPObject *last_child = _group->lastChild(); - if (last_child && last_child->getRepr() == child) { - // optimization for the common special case where the child is being added at the end - SPObject *ochild = last_child; - if ( SP_IS_ITEM(ochild) ) { - /* TODO: this should be moved into SPItem somehow */ - SPItemView *v; - Inkscape::DrawingItem *ac; - - for (v = _group->display; v != NULL; v = v->next) { - ac = SP_ITEM (ochild)->invoke_show (v->arenaitem->drawing(), v->key, v->flags); - - if (ac) { - v->arenaitem->appendChild(ac); - } - } - } - } else { // general case - SPObject *ochild = _group->get_child_by_repr(child); - if ( ochild && SP_IS_ITEM(ochild) ) { - /* TODO: this should be moved into SPItem somehow */ - SPItemView *v; - Inkscape::DrawingItem *ac; - - unsigned position = SP_ITEM(ochild)->pos_in_parent(); - - for (v = _group->display; v != NULL; v = v->next) { - ac = SP_ITEM (ochild)->invoke_show (v->arenaitem->drawing(), v->key, v->flags); - - if (ac) { - v->arenaitem->prependChild(ac); - ac->setZOrder(position); - } - } - } - } - - _group->requestModified(SP_OBJECT_MODIFIED_FLAG); -} - -void CGroup::onChildRemoved(Inkscape::XML::Node */*child*/) { - _group->requestModified(SP_OBJECT_MODIFIED_FLAG); -} - -void CGroup::onUpdate(SPCtx *ctx, unsigned int flags) { - SPItemCtx *ictx, cctx; - - ictx = (SPItemCtx *) ctx; - cctx = *ictx; - - if (flags & SP_OBJECT_MODIFIED_FLAG) { - flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; - } - - flags &= SP_OBJECT_MODIFIED_CASCADE; - - if (flags & SP_OBJECT_STYLE_MODIFIED_FLAG) { - SPObject *object = _group; - for (SPItemView *v = _group->display; v != NULL; v = v->next) { - Inkscape::DrawingGroup *group = dynamic_cast(v->arenaitem); - group->setStyle(object->style); - } - } - - GSList *l = g_slist_reverse(_group->childList(true, SPObject::ActionUpdate)); - while (l) { - SPObject *child = SP_OBJECT (l->data); - l = g_slist_remove (l, child); - if (flags || (child->uflags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_CHILD_MODIFIED_FLAG))) { - if (SP_IS_ITEM (child)) { - SPItem const &chi = *SP_ITEM(child); - cctx.i2doc = chi.transform * ictx->i2doc; - cctx.i2vp = chi.transform * ictx->i2vp; - child->updateDisplay((SPCtx *)&cctx, flags); - } else { - child->updateDisplay(ctx, flags); - } - } - g_object_unref (G_OBJECT (child)); - } -} - -void CGroup::onModified(guint flags) { - SPObject *child; - - if (flags & SP_OBJECT_MODIFIED_FLAG) flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; - flags &= SP_OBJECT_MODIFIED_CASCADE; - - if (flags & SP_OBJECT_STYLE_MODIFIED_FLAG) { - SPObject *object = _group; - for (SPItemView *v = _group->display; v != NULL; v = v->next) { - Inkscape::DrawingGroup *group = dynamic_cast(v->arenaitem); - group->setStyle(object->style); - } - } - - GSList *l = g_slist_reverse(_group->childList(true)); - while (l) { - child = SP_OBJECT (l->data); - l = g_slist_remove (l, child); - if (flags || (child->mflags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_CHILD_MODIFIED_FLAG))) { - child->emitModified(flags); - } - g_object_unref (G_OBJECT (child)); - } -} - -Geom::OptRect CGroup::bounds(SPItem::BBoxType type, Geom::Affine const &transform) -{ - Geom::OptRect bbox; - - GSList *l = _group->childList(false, SPObject::ActionBBox); - while (l) { - SPObject *o = SP_OBJECT (l->data); - if (SP_IS_ITEM(o) && !SP_ITEM(o)->isHidden()) { - SPItem *child = SP_ITEM(o); - Geom::Affine const ct(child->transform * transform); - bbox |= child->bounds(type, ct); - } - l = g_slist_remove (l, o); - } - return bbox; -} - -void CGroup::onPrint(SPPrintContext *ctx) { - GSList *l = g_slist_reverse(_group->childList(false)); - while (l) { - SPObject *o = SP_OBJECT (l->data); - if (SP_IS_ITEM(o)) { - SP_ITEM(o)->invoke_print (ctx); - } - l = g_slist_remove (l, o); - } -} - -gint CGroup::getItemCount() { +gint SPGroup::getItemCount() { gint len = 0; - for (SPObject *o = _group->firstChild() ; o ; o = o->getNext() ) { + for (SPObject *o = this->firstChild() ; o ; o = o->getNext() ) { if (SP_IS_ITEM(o)) { len++; } @@ -737,30 +823,10 @@ gint CGroup::getItemCount() { return len; } -gchar *CGroup::getDescription() { - gint len = getItemCount(); - return g_strdup_printf( - ngettext("Group of %d object", - "Group of %d objects", - len), len); -} - -Inkscape::DrawingItem *CGroup::show (Inkscape::Drawing &drawing, unsigned int key, unsigned int flags) { - Inkscape::DrawingGroup *ai; - SPObject *object = _group; - - ai = new Inkscape::DrawingGroup(drawing); - ai->setPickChildren(_group->effectiveLayerMode(key) == SPGroup::LAYER); - ai->setStyle(object->style); - - _showChildren(drawing, ai, key, flags); - return ai; -} - -void CGroup::_showChildren (Inkscape::Drawing &drawing, Inkscape::DrawingItem *ai, unsigned int key, unsigned int flags) { +void SPGroup::_showChildren (Inkscape::Drawing &drawing, Inkscape::DrawingItem *ai, unsigned int key, unsigned int flags) { Inkscape::DrawingItem *ac = NULL; SPItem * child = NULL; - GSList *l = g_slist_reverse(_group->childList(false, SPObject::ActionShow)); + GSList *l = g_slist_reverse(this->childList(false, SPObject::ActionShow)); while (l) { SPObject *o = SP_OBJECT (l->data); if (SP_IS_ITEM (o)) { @@ -772,41 +838,9 @@ void CGroup::_showChildren (Inkscape::Drawing &drawing, Inkscape::DrawingItem *a } } -void CGroup::hide (unsigned int key) { - SPItem * child; - - GSList *l = g_slist_reverse(_group->childList(false, SPObject::ActionShow)); - while (l) { - SPObject *o = SP_OBJECT (l->data); - if (SP_IS_ITEM (o)) { - child = SP_ITEM (o); - child->invoke_hide (key); - } - l = g_slist_remove (l, o); - } - - if (((SPItemClass *) parent_class)->hide) - ((SPItemClass *) parent_class)->hide (_group, key); -} - -void CGroup::onOrderChanged (Inkscape::XML::Node *child, Inkscape::XML::Node *, Inkscape::XML::Node *) -{ - SPObject *ochild = _group->get_child_by_repr(child); - if ( ochild && SP_IS_ITEM(ochild) ) { - /* TODO: this should be moved into SPItem somehow */ - SPItemView *v; - unsigned position = SP_ITEM(ochild)->pos_in_parent(); - for ( v = SP_ITEM (ochild)->display ; v != NULL ; v = v->next ) { - v->arenaitem->setZOrder(position); - } - } - - _group->requestModified(SP_OBJECT_MODIFIED_FLAG); -} +void CGroup::onUpdatePatheffect(bool write) { + SPGroup* lpeitem = this->spgroup; -static void -sp_group_update_patheffect (SPLPEItem *lpeitem, bool write) -{ #ifdef GROUP_VERBOSE g_message("sp_group_update_patheffect: %p\n", lpeitem); #endif @@ -836,6 +870,13 @@ sp_group_update_patheffect (SPLPEItem *lpeitem, bool write) } } +// CPPIFY: remove +static void +sp_group_update_patheffect (SPLPEItem *lpeitem, bool write) +{ + ((SPGroup*)lpeitem)->cgroup->onUpdatePatheffect(write); +} + static void sp_group_perform_patheffect(SPGroup *group, SPGroup *topgroup, bool write) { diff --git a/src/sp-item-group.h b/src/sp-item-group.h index c13fa2b75..d5e8cc771 100644 --- a/src/sp-item-group.h +++ b/src/sp-item-group.h @@ -33,7 +33,10 @@ class DrawingItem; } // namespace Inkscape -struct SPGroup : public SPLPEItem { +class SPGroup : public SPLPEItem { +public: + CGroup *cgroup; + enum LayerMode { GROUP, LAYER, MASK_HELPER }; LayerMode _layer_mode; @@ -54,8 +57,9 @@ struct SPGroup : public SPLPEItem { void setLayerDisplayMode(unsigned int display_key, LayerMode mode); void translateChildItems(Geom::Translate const &tr); - CGroup *group; - + gint getItemCount(); + void _showChildren (Inkscape::Drawing &drawing, Inkscape::DrawingItem *ai, unsigned int key, unsigned int flags); + private: void _updateLayerMode(unsigned int display_key=0); }; @@ -64,33 +68,43 @@ struct SPGroupClass { SPLPEItemClass parent_class; }; + /* * Virtual methods of SPGroup */ -class CGroup { +class CGroup : public CLPEItem { public: CGroup(SPGroup *group); virtual ~CGroup(); - virtual void onChildAdded(Inkscape::XML::Node *child); - virtual void onChildRemoved(Inkscape::XML::Node *child); + virtual void onBuild(SPDocument *document, Inkscape::XML::Node *repr); + virtual void onRelease(); + + virtual void onChildAdded(Inkscape::XML::Node* child, Inkscape::XML::Node* ref); + virtual void onRemoveChild(Inkscape::XML::Node *child); + virtual void onOrderChanged(Inkscape::XML::Node *child, Inkscape::XML::Node *old_ref, Inkscape::XML::Node *new_ref); + virtual void onUpdate(SPCtx *ctx, unsigned int flags); virtual void onModified(guint flags); - virtual Geom::OptRect bounds(SPItem::BBoxType type, Geom::Affine const &transform); + virtual void onSet(unsigned int key, gchar const* value); + + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + + virtual Geom::OptRect onBbox(Geom::Affine const &transform, SPItem::BBoxType bboxtype); virtual void onPrint(SPPrintContext *ctx); - virtual void onOrderChanged(Inkscape::XML::Node *child, Inkscape::XML::Node *old_ref, Inkscape::XML::Node *new_ref); - virtual gchar *getDescription(); - virtual Inkscape::DrawingItem *show (Inkscape::Drawing &drawing, unsigned int key, unsigned int flags); - virtual void hide (unsigned int key); + virtual gchar *onDescription(); + virtual Inkscape::DrawingItem *onShow (Inkscape::Drawing &drawing, unsigned int key, unsigned int flags); + virtual void onHide (unsigned int key); - gint getItemCount(); + virtual void onSnappoints(std::vector &p, Inkscape::SnapPreferences const *snapprefs); -protected: - virtual void _showChildren (Inkscape::Drawing &drawing, Inkscape::DrawingItem *ai, unsigned int key, unsigned int flags); + virtual void onUpdatePatheffect(bool write); - SPGroup *_group; +protected: + SPGroup *spgroup; }; + GType sp_group_get_type (void); void sp_item_group_ungroup (SPGroup *group, GSList **children, bool do_done = true); diff --git a/src/sp-switch.cpp b/src/sp-switch.cpp index 500e43c9c..2c98c54fc 100644 --- a/src/sp-switch.cpp +++ b/src/sp-switch.cpp @@ -30,7 +30,7 @@ static void sp_switch_init (SPSwitch *group); static SPGroupClass * parent_class; -GType CSwitch::getType (void) +GType SPSwitch::getType (void) { static GType switch_type = 0; if (!switch_type) { @@ -56,24 +56,27 @@ sp_switch_class_init (SPSwitchClass *) { parent_class = (SPGroupClass *)g_type_class_ref (SP_TYPE_GROUP); } -static void sp_switch_init (SPSwitch *group) -{ - if (group->group) - delete group->group; - - group->group = new CSwitch(group); +CSwitch::CSwitch(SPSwitch* sw) : CGroup(sw) { + this->spswitch = sw; } -CSwitch::CSwitch(SPGroup *group) : CGroup(group), _cached_item(NULL) { +CSwitch::~CSwitch() { } -CSwitch::~CSwitch() { - _releaseLastItem(_cached_item); +static void sp_switch_init (SPSwitch *sw) +{ + sw->cswitch = new CSwitch(sw); + sw->cgroup = sw->cswitch; + sw->clpeitem = sw->cswitch; + sw->citem = sw->cswitch; + sw->cobject = sw->cswitch; + + sw->_cached_item = 0; } -SPObject *CSwitch::_evaluateFirst() { +SPObject *SPSwitch::_evaluateFirst() { SPObject *first = 0; - for (SPObject *child = _group->firstChild() ; child && !first ; child = child->getNext() ) { + for (SPObject *child = this->firstChild() ; child && !first ; child = child->getNext() ) { if (SP_IS_ITEM(child) && sp_item_evaluate(SP_ITEM(child))) { first = child; } @@ -81,9 +84,9 @@ SPObject *CSwitch::_evaluateFirst() { return first; } -GSList *CSwitch::_childList(bool add_ref, SPObject::Action action) { +GSList *SPSwitch::_childList(bool add_ref, SPObject::Action action) { if ( action != SPObject::ActionGeneral ) { - return _group->childList(add_ref, action); + return this->childList(add_ref, action); } SPObject *child = _evaluateFirst(); @@ -96,28 +99,28 @@ GSList *CSwitch::_childList(bool add_ref, SPObject::Action action) { return g_slist_prepend (NULL, child); } -gchar *CSwitch::getDescription() { - gint len = getItemCount(); +gchar *CSwitch::onDescription() { + gint len = this->spgroup->getItemCount(); return g_strdup_printf( ngettext("Conditional group of %d object", "Conditional group of %d objects", len), len); } -void CSwitch::onChildAdded(Inkscape::XML::Node *) { - _reevaluate(true); +void CSwitch::onChildAdded(Inkscape::XML::Node* child, Inkscape::XML::Node* ref) { + this->spswitch->_reevaluate(true); } -void CSwitch::onChildRemoved(Inkscape::XML::Node *) { - _reevaluate(); +void CSwitch::onRemoveChild(Inkscape::XML::Node *) { + this->spswitch->_reevaluate(); } void CSwitch::onOrderChanged (Inkscape::XML::Node *, Inkscape::XML::Node *, Inkscape::XML::Node *) { - _reevaluate(); + this->spswitch->_reevaluate(); } -void CSwitch::_reevaluate(bool /*add_to_drawing*/) { +void SPSwitch::_reevaluate(bool /*add_to_drawing*/) { SPObject *evaluated_child = _evaluateFirst(); if (!evaluated_child || _cached_item == evaluated_child) { return; @@ -138,29 +141,29 @@ void CSwitch::_reevaluate(bool /*add_to_drawing*/) { } _cached_item = evaluated_child; - _release_connection = evaluated_child->connectRelease(sigc::bind(sigc::ptr_fun(&CSwitch::_releaseItem), this)); + _release_connection = evaluated_child->connectRelease(sigc::bind(sigc::ptr_fun(&SPSwitch::_releaseItem), this)); - _group->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG); + this->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG); } -void CSwitch::_releaseItem(SPObject *obj, CSwitch *selection) +void SPSwitch::_releaseItem(SPObject *obj, SPSwitch *selection) { selection->_releaseLastItem(obj); } -void CSwitch::_releaseLastItem(SPObject *obj) +void SPSwitch::_releaseLastItem(SPObject *obj) { - if (NULL == _cached_item || _cached_item != obj) + if (NULL == this->_cached_item || this->_cached_item != obj) return; - _release_connection.disconnect(); - _cached_item = NULL; + this->_release_connection.disconnect(); + this->_cached_item = NULL; } -void CSwitch::_showChildren (Inkscape::Drawing &drawing, Inkscape::DrawingItem *ai, unsigned int key, unsigned int flags) { - SPObject *evaluated_child = _evaluateFirst(); +void SPSwitch::_showChildren (Inkscape::Drawing &drawing, Inkscape::DrawingItem *ai, unsigned int key, unsigned int flags) { + SPObject *evaluated_child = this->_evaluateFirst(); - GSList *l = _childList(false, SPObject::ActionShow); + GSList *l = this->_childList(false, SPObject::ActionShow); while (l) { SPObject *o = SP_OBJECT (l->data); if (SP_IS_ITEM (o)) { diff --git a/src/sp-switch.h b/src/sp-switch.h index c2c98e3b3..6e8250c5e 100644 --- a/src/sp-switch.h +++ b/src/sp-switch.h @@ -17,48 +17,56 @@ #include #include -#define SP_TYPE_SWITCH (CSwitch::getType()) +#define SP_TYPE_SWITCH (SPSwitch::getType()) #define SP_SWITCH(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SP_TYPE_SWITCH, SPSwitch)) #define SP_SWITCH_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SP_TYPE_SWITCH, SPSwitchClass)) #define SP_IS_SWITCH(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_SWITCH)) #define SP_IS_SWITCH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_SWITCH)) -/* - * Virtual methods of SPSwitch - */ -class CSwitch : public CGroup { +class CSwitch; + +class SPSwitch : public SPGroup { public: - CSwitch(SPGroup *group); - virtual ~CSwitch(); + CSwitch* cswitch; - friend class SPSwitch; + static GType getType(); - static GType getType(); - - virtual void onChildAdded(Inkscape::XML::Node *child); - virtual void onChildRemoved(Inkscape::XML::Node *child); - virtual void onOrderChanged(Inkscape::XML::Node *child, Inkscape::XML::Node *old_ref, Inkscape::XML::Node *new_ref); - virtual gchar *getDescription(); + void resetChildEvaluated() { _reevaluate(); } + + GSList *_childList(bool add_ref, SPObject::Action action); + void _showChildren (Inkscape::Drawing &drawing, Inkscape::DrawingItem *ai, unsigned int key, unsigned int flags); -protected: - virtual GSList *_childList(bool add_ref, SPObject::Action action); - virtual void _showChildren (Inkscape::Drawing &drawing, Inkscape::DrawingItem *ai, unsigned int key, unsigned int flags); - SPObject *_evaluateFirst(); void _reevaluate(bool add_to_arena = false); - static void _releaseItem(SPObject *obj, CSwitch *selection); + static void _releaseItem(SPObject *obj, SPSwitch *selection); void _releaseLastItem(SPObject *obj); -private: SPObject *_cached_item; sigc::connection _release_connection; }; -struct SPSwitch : public SPGroup { - void resetChildEvaluated() { (static_cast(group))->_reevaluate(); } +struct SPSwitchClass : public SPGroupClass { }; -struct SPSwitchClass : public SPGroupClass { + +/* + * Virtual methods of SPSwitch + */ +class CSwitch : public CGroup { +public: + CSwitch(SPSwitch *sw); + virtual ~CSwitch(); + + friend class SPSwitch; + + virtual void onChildAdded(Inkscape::XML::Node* child, Inkscape::XML::Node* ref); + virtual void onRemoveChild(Inkscape::XML::Node *child); + virtual void onOrderChanged(Inkscape::XML::Node *child, Inkscape::XML::Node *old_ref, Inkscape::XML::Node *new_ref); + virtual gchar *onDescription(); + +protected: + SPSwitch* spswitch; }; + #endif -- cgit v1.2.3 From 1e6fcfc8481cc23d3bddf3d3a7e6dd96ed2724c1 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sun, 19 Aug 2012 01:57:40 +0200 Subject: Added "virtual pad" to SPAnchor. (bzr r11608.1.17) --- src/sp-anchor.cpp | 93 +++++++++++++++++++++++++++++++++++++++---------------- src/sp-anchor.h | 26 +++++++++++++++- 2 files changed, 91 insertions(+), 28 deletions(-) diff --git a/src/sp-anchor.cpp b/src/sp-anchor.cpp index 517512eb2..b6cfd6f52 100644 --- a/src/sp-anchor.cpp +++ b/src/sp-anchor.cpp @@ -77,16 +77,28 @@ static void sp_anchor_class_init(SPAnchorClass *ac) item_class->event = sp_anchor_event; } +CAnchor::CAnchor(SPAnchor* anchor) : CGroup(anchor) { + this->spanchor = anchor; +} + +CAnchor::~CAnchor() { +} + static void sp_anchor_init(SPAnchor *anchor) { + anchor->canchor = new CAnchor(anchor); + anchor->cgroup = anchor->canchor; + anchor->clpeitem = anchor->canchor; + anchor->citem = anchor->canchor; + anchor->cobject = anchor->canchor; + anchor->href = NULL; } -static void sp_anchor_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) -{ - if (((SPObjectClass *) (parent_class))->build) { - ((SPObjectClass *) (parent_class))->build(object, document, repr); - } +void CAnchor::onBuild(SPDocument *document, Inkscape::XML::Node *repr) { + SPAnchor* object = this->spanchor; + + CGroup::onBuild(document, repr); object->readAttr( "xlink:type" ); object->readAttr( "xlink:role" ); @@ -98,23 +110,32 @@ static void sp_anchor_build(SPObject *object, SPDocument *document, Inkscape::XM object->readAttr( "target" ); } -static void sp_anchor_release(SPObject *object) +// CPPIFY: remove +static void sp_anchor_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) { - SPAnchor *anchor = SP_ANCHOR(object); + ((SPAnchor*)object)->canchor->onBuild(document, repr); +} + +void CAnchor::onRelease() { + SPAnchor *anchor = this->spanchor; if (anchor->href) { g_free(anchor->href); anchor->href = NULL; } - if (((SPObjectClass *) parent_class)->release) { - ((SPObjectClass *) parent_class)->release(object); - } + CGroup::onRelease(); } -static void sp_anchor_set(SPObject *object, unsigned int key, const gchar *value) +// CPPIFY: remove +static void sp_anchor_release(SPObject *object) { - SPAnchor *anchor = SP_ANCHOR(object); + ((SPAnchor*)object)->canchor->onRelease(); +} + +void CAnchor::onSet(unsigned int key, const gchar* value) { + SPAnchor *anchor = this->spanchor; + SPAnchor* object = anchor; switch (key) { case SP_ATTR_XLINK_HREF: @@ -132,19 +153,22 @@ static void sp_anchor_set(SPObject *object, unsigned int key, const gchar *value object->requestModified(SP_OBJECT_MODIFIED_FLAG); break; default: - if (((SPObjectClass *) (parent_class))->set) { - ((SPObjectClass *) (parent_class))->set(object, key, value); - } + CGroup::onSet(key, value); break; } } +// CPPIFY: remove +static void sp_anchor_set(SPObject *object, unsigned int key, const gchar *value) +{ + ((SPAnchor*)object)->canchor->onSet(key, value); +} #define COPY_ATTR(rd,rs,key) (rd)->setAttribute((key), rs->attribute(key)); -static Inkscape::XML::Node *sp_anchor_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) -{ - SPAnchor *anchor = SP_ANCHOR(object); +Inkscape::XML::Node* CAnchor::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPAnchor *anchor = this->spanchor; + SPAnchor* object = anchor; if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { repr = xml_doc->createElement("svg:a"); @@ -164,16 +188,20 @@ static Inkscape::XML::Node *sp_anchor_write(SPObject *object, Inkscape::XML::Doc COPY_ATTR(repr, object->getRepr(), "target"); } - if (((SPObjectClass *) (parent_class))->write) { - ((SPObjectClass *) (parent_class))->write(object, xml_doc, repr, flags); - } + CGroup::onWrite(xml_doc, repr, flags); return repr; } -static gchar *sp_anchor_description(SPItem *item) +// CPPIFY: remove +static Inkscape::XML::Node *sp_anchor_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { - SPAnchor *anchor = SP_ANCHOR(item); + return ((SPAnchor*)object)->canchor->onWrite(xml_doc, repr, flags); +} + +gchar* CAnchor::onDescription() { + SPAnchor *anchor = this->spanchor; + if (anchor->href) { char *quoted_href = xml_quote_strdup(anchor->href); char *ret = g_strdup_printf(_("Link to %s"), quoted_href); @@ -184,11 +212,14 @@ static gchar *sp_anchor_description(SPItem *item) } } -/* fixme: We should forward event to appropriate container/view */ - -static gint sp_anchor_event(SPItem *item, SPEvent *event) +// CPPIFY: remove +static gchar *sp_anchor_description(SPItem *item) { - SPAnchor *anchor = SP_ANCHOR(item); + return ((SPAnchor*)item)->canchor->onDescription(); +} + +gint CAnchor::onEvent(SPEvent* event) { + SPAnchor *anchor = this->spanchor; switch (event->type) { case SP_EVENT_ACTIVATE: @@ -210,6 +241,14 @@ static gint sp_anchor_event(SPItem *item, SPEvent *event) return FALSE; } +/* fixme: We should forward event to appropriate container/view */ + +// CPPIFY: remove +static gint sp_anchor_event(SPItem *item, SPEvent *event) +{ + return ((SPAnchor*)item)->canchor->onEvent(event); +} + /* Local Variables: mode:c++ diff --git a/src/sp-anchor.h b/src/sp-anchor.h index 3c6481d94..48851b720 100644 --- a/src/sp-anchor.h +++ b/src/sp-anchor.h @@ -21,7 +21,12 @@ #define SP_IS_ANCHOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_ANCHOR)) #define SP_IS_ANCHOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_ANCHOR)) -struct SPAnchor : public SPGroup { +class CAnchor; + +class SPAnchor : public SPGroup { +public: + CAnchor* canchor; + gchar *href; }; @@ -29,6 +34,25 @@ struct SPAnchorClass { SPGroupClass parent_class; }; + +class CAnchor : public CGroup { +public: + CAnchor(SPAnchor* anchor); + virtual ~CAnchor(); + + virtual void onBuild(SPDocument *document, Inkscape::XML::Node *repr); + virtual void onRelease(); + virtual void onSet(unsigned int key, gchar const* value); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + + virtual gchar* onDescription(); + virtual gint onEvent(SPEvent *event); + +protected: + SPAnchor* spanchor; +}; + + GType sp_anchor_get_type (void); #endif -- cgit v1.2.3 From bd1508b710ed55f5fa212a54291dd6ce1ff4f13e Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sun, 19 Aug 2012 02:13:08 +0200 Subject: Added "virtual pad" to SPBox3D. (bzr r11608.1.18) --- src/box3d.cpp | 131 +++++++++++++++++++++++++++++++++++++++++----------------- src/box3d.h | 24 +++++++++++ 2 files changed, 116 insertions(+), 39 deletions(-) diff --git a/src/box3d.cpp b/src/box3d.cpp index 23f934b64..de1acdc7e 100644 --- a/src/box3d.cpp +++ b/src/box3d.cpp @@ -101,18 +101,30 @@ box3d_class_init(SPBox3DClass *klass) item_class->convert_to_guides = box3d_convert_to_guides; } +CBox3D::CBox3D(SPBox3D* box) : CGroup(box) { + this->spbox3d = box; +} + +CBox3D::~CBox3D() { +} + static void box3d_init(SPBox3D *box) { + box->cbox3d = new CBox3D(box); + box->cgroup = box->cbox3d; + box->clpeitem = box->cbox3d; + box->citem = box->cbox3d; + box->cobject = box->cbox3d; + box->persp_href = NULL; box->persp_ref = new Persp3DReference(box); } -static void box3d_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) -{ - if (((SPObjectClass *) (parent_class))->build) { - ((SPObjectClass *) (parent_class))->build(object, document, repr); - } +void CBox3D::onBuild(SPDocument *document, Inkscape::XML::Node *repr) { + SPBox3D* object = this->spbox3d; + + CGroup::onBuild(document, repr); SPBox3D *box = SP_BOX3D (object); box->my_counter = counter++; @@ -134,13 +146,15 @@ static void box3d_build(SPObject *object, SPDocument *document, Inkscape::XML::N } } -/** - * Virtual release of SPBox3D members before destruction. - */ -static void -box3d_release(SPObject *object) +// CPPIFY: remove +static void box3d_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) { - SPBox3D *box = (SPBox3D *) object; + ((SPBox3D*)object)->cbox3d->onBuild(document, repr); +} + +void CBox3D::onRelease() { + SPBox3D* object = this->spbox3d; + SPBox3D *box = object; if (box->persp_href) { g_free(box->persp_href); @@ -173,14 +187,22 @@ box3d_release(SPObject *object) */ } - if (((SPObjectClass *) parent_class)->release) - ((SPObjectClass *) parent_class)->release(object); + CGroup::onRelease(); } +// CPPIFY: remove +/** + * Virtual release of SPBox3D members before destruction. + */ static void -box3d_set(SPObject *object, unsigned int key, const gchar *value) +box3d_release(SPObject *object) { - SPBox3D *box = SP_BOX3D(object); + ((SPBox3D*)object)->cbox3d->onRelease(); +} + +void CBox3D::onSet(unsigned int key, const gchar* value) { + SPBox3D* object = this->spbox3d; + SPBox3D *box = object; switch (key) { case SP_ATTR_INKSCAPE_BOX3D_PERSPECTIVE_ID: @@ -225,13 +247,18 @@ box3d_set(SPObject *object, unsigned int key, const gchar *value) } break; default: - if (((SPObjectClass *) (parent_class))->set) { - ((SPObjectClass *) (parent_class))->set(object, key, value); - } + CGroup::onSet(key, value); break; } } +// CPPIFY: remove +static void +box3d_set(SPObject *object, unsigned int key, const gchar *value) +{ + ((SPBox3D*)object)->cbox3d->onSet(key, value); +} + /** * Gets called when (re)attached to another perspective. */ @@ -248,9 +275,7 @@ box3d_ref_changed(SPObject *old_ref, SPObject *ref, SPBox3D *box) } } -static void -box3d_update(SPObject *object, SPCtx *ctx, guint flags) -{ +void CBox3D::onUpdate(SPCtx *ctx, guint flags) { if (flags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG)) { /* FIXME?: Perhaps the display updates of box sides should be instantiated from here, but this @@ -260,14 +285,19 @@ box3d_update(SPObject *object, SPCtx *ctx, guint flags) } // Invoke parent method - if (((SPObjectClass *) (parent_class))->update) - ((SPObjectClass *) (parent_class))->update(object, ctx, flags); + CGroup::onUpdate(ctx, flags); } - -static Inkscape::XML::Node * box3d_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +// CPPIFY: remove +static void +box3d_update(SPObject *object, SPCtx *ctx, guint flags) { - SPBox3D *box = SP_BOX3D(object); + ((SPBox3D*)object)->cbox3d->onUpdate(ctx, flags); +} + +Inkscape::XML::Node* CBox3D::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPBox3D* object = this->spbox3d; + SPBox3D *box = object; if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { // this is where we end up when saving as plain SVG (also in other circumstances?) @@ -307,19 +337,29 @@ static Inkscape::XML::Node * box3d_write(SPObject *object, Inkscape::XML::Docume box->save_corner7 = box->orig_corner7; } - if (((SPObjectClass *) (parent_class))->write) { - ((SPObjectClass *) (parent_class))->write(object, xml_doc, repr, flags); - } + CGroup::onWrite(xml_doc, repr, flags); return repr; } +// CPPIFY: remove +static Inkscape::XML::Node * box3d_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +{ + return ((SPBox3D*)object)->cbox3d->onWrite(xml_doc, repr, flags); +} + +gchar* CBox3D::onDescription() { + SPBox3D* item = this->spbox3d; + + g_return_val_if_fail(SP_IS_BOX3D(item), NULL); + return g_strdup(_("3D Box")); +} + +// CPPIFY: remove static gchar * box3d_description(SPItem *item) { - g_return_val_if_fail(SP_IS_BOX3D(item), NULL); - - return g_strdup(_("3D Box")); + return ((SPBox3D*)item)->cbox3d->onDescription(); } void box3d_position_set(SPBox3D *box) @@ -333,10 +373,9 @@ void box3d_position_set(SPBox3D *box) } } -static Geom::Affine -box3d_set_transform(SPItem *item, Geom::Affine const &xform) -{ - SPBox3D *box = SP_BOX3D(item); +Geom::Affine CBox3D::onSetTransform(Geom::Affine const &xform) { + SPBox3D* item = this->spbox3d; + SPBox3D *box = item; // We don't apply the transform to the box directly but instead to its perspective (which is // done in sp_selection_apply_affine). Here we only adjust strokes, patterns, etc. @@ -366,6 +405,13 @@ box3d_set_transform(SPItem *item, Geom::Affine const &xform) return Geom::identity(); } +// CPPIFY: remove +static Geom::Affine +box3d_set_transform(SPItem *item, Geom::Affine const &xform) +{ + return ((SPBox3D*)item)->cbox3d->onSetTransform(xform); +} + Proj::Pt3 box3d_get_proj_corner (guint id, Proj::Pt3 const &c0, Proj::Pt3 const &c7) { return Proj::Pt3 ((id & Box3D::X) ? c7[Proj::X] : c0[Proj::X], @@ -1392,9 +1438,10 @@ box3d_push_back_corner_pair(SPBox3D *box, std::listspbox3d; + SPBox3D *box = item; + Inkscape::Preferences *prefs = Inkscape::Preferences::get(); if (!prefs->getBool("/tools/shapes/3dbox/convertguides", true)) { @@ -1425,6 +1472,12 @@ box3d_convert_to_guides(SPItem *item) { sp_guide_pt_pairs_to_guides(item->document, pts); } +// CPPIFY: remove +void +box3d_convert_to_guides(SPItem *item) { + ((SPBox3D*)item)->cbox3d->onConvertToGuides(); +} + /* Local Variables: mode:c++ diff --git a/src/box3d.h b/src/box3d.h index 5dbf0cf5e..939dd7bc9 100644 --- a/src/box3d.h +++ b/src/box3d.h @@ -29,9 +29,12 @@ class Box3DSide; class Persp3D; class Persp3DReference; +class CBox3D; class SPBox3D : public SPGroup { public: + CBox3D* cbox3d; + gint z_orders[6]; // z_orders[i] holds the ID of the face at position #i in the group (from top to bottom) gchar *persp_href; @@ -58,6 +61,27 @@ public: SPGroupClass parent_class; }; + +class CBox3D : public CGroup { +public: + CBox3D(SPBox3D* box3d); + virtual ~CBox3D(); + + virtual void onBuild(SPDocument *document, Inkscape::XML::Node *repr); + virtual void onRelease(); + virtual void onSet(unsigned int key, gchar const* value); + virtual void onUpdate(SPCtx *ctx, guint flags); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + + virtual gchar *onDescription(); + virtual Geom::Affine onSetTransform(Geom::Affine const &transform); + virtual void onConvertToGuides(); + +protected: + SPBox3D* spbox3d; +}; + + GType box3d_get_type (void); void box3d_position_set (SPBox3D *box); -- cgit v1.2.3 From 0251afb68398f00dbd4236a695d519e6c0d2e7a6 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sun, 19 Aug 2012 02:28:40 +0200 Subject: Added "virtual pad" to SPMarker. (bzr r11608.1.19) --- src/marker.cpp | 160 +++++++++++++++++++++++++++++++++++++++------------------ src/marker.h | 30 ++++++++++- 2 files changed, 139 insertions(+), 51 deletions(-) diff --git a/src/marker.cpp b/src/marker.cpp index a5681e180..58cd8ea7c 100644 --- a/src/marker.cpp +++ b/src/marker.cpp @@ -98,6 +98,13 @@ static void sp_marker_class_init(SPMarkerClass *klass) sp_item_class->print = sp_marker_print; } +CMarker::CMarker(SPMarker* marker) : CGroup(marker) { + this->spmarker = marker; +} + +CMarker::~CMarker() { +} + /** * Initializes an SPMarker object. This notes the marker's viewBox is * not set and initializes the marker's c2p identity matrix. @@ -105,11 +112,33 @@ static void sp_marker_class_init(SPMarkerClass *klass) static void sp_marker_init (SPMarker *marker) { + marker->cmarker = new CMarker(marker); + marker->cgroup = marker->cmarker; + marker->clpeitem = marker->cmarker; + marker->citem = marker->cmarker; + marker->cobject = marker->cmarker; + marker->viewBox = Geom::OptRect(); marker->c2p.setIdentity(); marker->views = NULL; } +void CMarker::onBuild(SPDocument *document, Inkscape::XML::Node *repr) { + SPMarker* object = this->spmarker; + + object->readAttr( "markerUnits" ); + object->readAttr( "refX" ); + object->readAttr( "refY" ); + object->readAttr( "markerWidth" ); + object->readAttr( "markerHeight" ); + object->readAttr( "orient" ); + object->readAttr( "viewBox" ); + object->readAttr( "preserveAspectRatio" ); + + CGroup::onBuild(document, repr); +} + +// CPPIFY: remove /** * Virtual build callback for SPMarker. * @@ -122,20 +151,25 @@ sp_marker_init (SPMarker *marker) */ static void sp_marker_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) { - object->readAttr( "markerUnits" ); - object->readAttr( "refX" ); - object->readAttr( "refY" ); - object->readAttr( "markerWidth" ); - object->readAttr( "markerHeight" ); - object->readAttr( "orient" ); - object->readAttr( "viewBox" ); - object->readAttr( "preserveAspectRatio" ); + ((SPMarker*)object)->cmarker->onBuild(document, repr); +} + +void CMarker::onRelease() { + SPMarker* object = this->spmarker; - if (reinterpret_cast(parent_class)->build) { - reinterpret_cast(parent_class)->build(object, document, repr); + SPMarker *marker = reinterpret_cast(object); + + while (marker->views) { + // Destroy all DrawingItems etc. + // Parent class ::hide method + reinterpret_cast(parent_class)->hide(marker, marker->views->key); + sp_marker_view_remove (marker, marker->views, TRUE); } + + CGroup::onRelease(); } +// CPPIFY: remove /** * Removes, releases and unrefs all children of object * @@ -150,35 +184,12 @@ static void sp_marker_build(SPObject *object, SPDocument *document, Inkscape::XM */ static void sp_marker_release(SPObject *object) { - SPMarker *marker = reinterpret_cast(object); - - while (marker->views) { - // Destroy all DrawingItems etc. - // Parent class ::hide method - reinterpret_cast(parent_class)->hide(marker, marker->views->key); - sp_marker_view_remove (marker, marker->views, TRUE); - } - - if (reinterpret_cast(parent_class)->release) { - reinterpret_cast(parent_class)->release(object); - } + ((SPMarker*)object)->cmarker->onRelease(); } -/** - * Sets an attribute, 'key', of a marker object to 'value'. Supported - * attributes that can be set with this routine include: - * - * SP_ATTR_MARKERUNITS - * SP_ATTR_REFX - * SP_ATTR_REFY - * SP_ATTR_MARKERWIDTH - * SP_ATTR_MARKERHEIGHT - * SP_ATTR_ORIENT - * SP_ATTR_VIEWBOX - * SP_ATTR_PRESERVEASPECTRATIO - */ -static void sp_marker_set(SPObject *object, unsigned int key, const gchar *value) -{ +void CMarker::onSet(unsigned int key, const gchar* value) { + SPMarker* object = this->spmarker; + SPMarker *marker = SP_MARKER(object); switch (key) { @@ -310,18 +321,33 @@ static void sp_marker_set(SPObject *object, unsigned int key, const gchar *value } break; default: - if (((SPObjectClass *) parent_class)->set) - ((SPObjectClass *) parent_class)->set (object, key, value); + CGroup::onSet(key, value); break; } } +// CPPIFY: remove /** - * Updates when its attributes have changed. Takes care of setting up - * transformations and viewBoxes. + * Sets an attribute, 'key', of a marker object to 'value'. Supported + * attributes that can be set with this routine include: + * + * SP_ATTR_MARKERUNITS + * SP_ATTR_REFX + * SP_ATTR_REFY + * SP_ATTR_MARKERWIDTH + * SP_ATTR_MARKERHEIGHT + * SP_ATTR_ORIENT + * SP_ATTR_VIEWBOX + * SP_ATTR_PRESERVEASPECTRATIO */ -static void sp_marker_update(SPObject *object, SPCtx *ctx, guint flags) +static void sp_marker_set(SPObject *object, unsigned int key, const gchar *value) { + ((SPMarker*)object)->cmarker->onSet(key, value); +} + +void CMarker::onUpdate(SPCtx *ctx, guint flags) { + SPMarker* object = this->spmarker; + SPMarker *marker = SP_MARKER(object); SPItemCtx rctx; @@ -429,9 +455,7 @@ static void sp_marker_update(SPObject *object, SPCtx *ctx, guint flags) } // And invoke parent method - if (((SPObjectClass *) (parent_class))->update) { - ((SPObjectClass *) (parent_class))->update (object, (SPCtx *) &rctx, flags); - } + CGroup::onUpdate((SPCtx *) &rctx, flags); // As last step set additional transform of drawing group for (SPMarkerView *v = marker->views; v != NULL; v = v->next) { @@ -444,12 +468,19 @@ static void sp_marker_update(SPObject *object, SPCtx *ctx, guint flags) } } +// CPPIFY: remove /** - * Writes the object's properties into its repr object. + * Updates when its attributes have changed. Takes care of setting up + * transformations and viewBoxes. */ -static Inkscape::XML::Node * -sp_marker_write (SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +static void sp_marker_update(SPObject *object, SPCtx *ctx, guint flags) { + ((SPMarker*)object)->cmarker->onUpdate(ctx, flags); +} + +Inkscape::XML::Node* CMarker::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPMarker* object = this->spmarker; + SPMarker *marker; marker = SP_MARKER (object); @@ -502,12 +533,26 @@ sp_marker_write (SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::X //XML Tree being used directly here while it shouldn't be.... repr->setAttribute("preserveAspectRatio", object->getRepr()->attribute("preserveAspectRatio")); - if (((SPObjectClass *) (parent_class))->write) - ((SPObjectClass *) (parent_class))->write (object, xml_doc, repr, flags); + CGroup::onWrite(xml_doc, repr, flags); return repr; } +// CPPIFY: remove +/** + * Writes the object's properties into its repr object. + */ +static Inkscape::XML::Node * +sp_marker_write (SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +{ + return ((SPMarker*)object)->cmarker->onWrite(xml_doc, repr, flags); +} + +Inkscape::DrawingItem* CMarker::onShow(Inkscape::Drawing &/*drawing*/, unsigned int /*key*/, unsigned int /*flags*/) { + return 0; +} + +// CPPIFY: remove /** * This routine is disabled to break propagation. */ @@ -518,6 +563,11 @@ sp_marker_private_show (SPItem */*item*/, Inkscape::Drawing &/*drawing*/, unsign return NULL; } +void CMarker::onHide(unsigned int key) { + +} + +// CPPIFY: remove /** * This routine is disabled to break propagation. */ @@ -527,6 +577,11 @@ sp_marker_private_hide (SPItem */*item*/, unsigned int /*key*/) /* Break propagation */ } +Geom::OptRect CMarker::onBbox(Geom::Affine const &transform, SPItem::BBoxType type) { + return Geom::OptRect(); +} + +// CPPIFY: remove /** * This routine is disabled to break propagation. */ @@ -537,6 +592,11 @@ sp_marker_bbox(SPItem const *, Geom::Affine const &, SPItem::BBoxType) return Geom::OptRect(); } +void CMarker::onPrint(SPPrintContext* ctx) { + +} + +// CPPIFY: remove /** * This routine is disabled to break propagation. */ diff --git a/src/marker.h b/src/marker.h index 6fdb82aa3..5c409b4d3 100644 --- a/src/marker.h +++ b/src/marker.h @@ -25,6 +25,7 @@ class SPMarker; class SPMarkerClass; class SPMarkerView; +class CMarker; #include <2geom/rect.h> #include <2geom/affine.h> @@ -34,7 +35,10 @@ class SPMarkerView; #include "sp-marker-loc.h" #include "uri-references.h" -struct SPMarker : public SPGroup { +class SPMarker : public SPGroup { +public: + CMarker* cmarker; + /* units */ unsigned int markerUnits_set : 1; unsigned int markerUnits : 1; @@ -71,6 +75,30 @@ struct SPMarkerClass { SPGroupClass parent_class; }; + +class CMarker : public CGroup { +public: + CMarker(SPMarker* marker); + virtual ~CMarker(); + + virtual void onBuild(SPDocument *document, Inkscape::XML::Node *repr); + virtual void onRelease(); + virtual void onSet(unsigned int key, gchar const* value); + virtual void onUpdate(SPCtx *ctx, guint flags); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + + virtual Inkscape::DrawingItem* onShow(Inkscape::Drawing &drawing, unsigned int key, unsigned int flags); + virtual void onHide(unsigned int key); + + virtual Geom::OptRect onBbox(Geom::Affine const &transform, SPItem::BBoxType type); + virtual void onPrint(SPPrintContext *ctx); + +protected: + SPMarker* spmarker; +}; + + + GType sp_marker_get_type (void); class SPMarkerReference : public Inkscape::URIReference { -- cgit v1.2.3 From 578d85febc1afde9024c335ae9d88358b82e40a1 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sun, 19 Aug 2012 02:54:53 +0200 Subject: Added "virtual pad" to SPRoot. (bzr r11608.1.20) --- src/sp-root.cpp | 188 ++++++++++++++++++++++++++++++++++++++------------------ src/sp-root.h | 30 ++++++++- 2 files changed, 157 insertions(+), 61 deletions(-) diff --git a/src/sp-root.cpp b/src/sp-root.cpp index 393c70895..2b1ab3884 100644 --- a/src/sp-root.cpp +++ b/src/sp-root.cpp @@ -96,11 +96,24 @@ static void sp_root_class_init(SPRootClass *klass) sp_item_class->print = sp_root_print; } +CRoot::CRoot(SPRoot* root) : CGroup(root) { + this->sproot = root; +} + +CRoot::~CRoot() { +} + /** * Initializes an SPRoot object by setting its default parameter values. */ static void sp_root_init(SPRoot *root) { + root->croot = new CRoot(root); + root->cgroup = root->croot; + root->clpeitem = root->croot; + root->citem = root->croot; + root->cobject = root->croot; + static Inkscape::Version const zero_version(0, 0); sp_version_from_string(SVG_VERSION, &root->original.svg); @@ -121,13 +134,9 @@ static void sp_root_init(SPRoot *root) root->defs = NULL; } -/** - * Fills in the data for an SPObject from its Inkscape::XML::Node object. - * It fills in data such as version, x, y, width, height, etc. - * It then calls the object's parent class object's build function. - */ -static void sp_root_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) -{ +void CRoot::onBuild(SPDocument *document, Inkscape::XML::Node *repr) { + SPRoot* object = this->sproot; + SPGroup *group = (SPGroup *) object; SPRoot *root = (SPRoot *) object; @@ -147,8 +156,7 @@ static void sp_root_build(SPObject *object, SPDocument *document, Inkscape::XML: object->readAttr( "preserveAspectRatio" ); object->readAttr( "onload" ); - if (((SPObjectClass *) parent_class)->build) - (* ((SPObjectClass *) parent_class)->build) (object, document, repr); + CGroup::onBuild(document, repr); // Search for first node for (SPObject *o = group->firstChild() ; o ; o = o->getNext() ) { @@ -162,25 +170,39 @@ static void sp_root_build(SPObject *object, SPDocument *document, Inkscape::XML: SP_ITEM(object)->transform = Geom::identity(); } +// CPPIFY: remove /** - * This is a destructor routine for SPRoot objects. It de-references any \ items and calls - * the parent class destructor. + * Fills in the data for an SPObject from its Inkscape::XML::Node object. + * It fills in data such as version, x, y, width, height, etc. + * It then calls the object's parent class object's build function. */ -static void sp_root_release(SPObject *object) +static void sp_root_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) { + ((SPRoot*)object)->croot->onBuild(document, repr); +} + +void CRoot::onRelease() { + SPRoot* object = this->sproot; + SPRoot *root = (SPRoot *) object; root->defs = NULL; - if (((SPObjectClass *) parent_class)->release) - ((SPObjectClass *) parent_class)->release(object); + CGroup::onRelease(); } +// CPPIFY: remove /** - * Sets the attribute given by key for SPRoot objects to the value specified by value. + * This is a destructor routine for SPRoot objects. It de-references any \ items and calls + * the parent class destructor. */ -static void sp_root_set(SPObject *object, unsigned int key, gchar const *value) +static void sp_root_release(SPObject *object) { - SPRoot *root = SP_ROOT(object); + ((SPRoot*)object)->croot->onRelease(); +} + +void CRoot::onSet(unsigned int key, const gchar* value) { + SPRoot* object = this->sproot; + SPRoot *root = object; switch (key) { case SP_ATTR_VERSION: @@ -315,25 +337,27 @@ static void sp_root_set(SPObject *object, unsigned int key, gchar const *value) break; default: /* Pass the set event to the parent */ - if (((SPObjectClass *) parent_class)->set) { - ((SPObjectClass *) parent_class)->set(object, key, value); - } + CGroup::onSet(key, value); break; } } +// CPPIFY: remove /** - * This routine is for adding a child SVG object to an SPRoot object. - * The SPRoot object is taken to be an SPGroup. + * Sets the attribute given by key for SPRoot objects to the value specified by value. */ -static void sp_root_child_added(SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node *ref) +static void sp_root_set(SPObject *object, unsigned int key, gchar const *value) { + ((SPRoot*)object)->croot->onSet(key, value); +} + +void CRoot::onChildAdded(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { + SPRoot* object = this->sproot; + SPRoot *root = (SPRoot *) object; SPGroup *group = (SPGroup *) object; - if (((SPObjectClass *) (parent_class))->child_added) { - (* ((SPObjectClass *) (parent_class))->child_added)(object, child, ref); - } + CGroup::onChildAdded(child, ref); SPObject *co = object->document->getObjectByRepr(child); g_assert (co != NULL || !strcmp("comment", child->name())); // comment repr node has no object @@ -349,11 +373,19 @@ static void sp_root_child_added(SPObject *object, Inkscape::XML::Node *child, In } } +// CPPIFY: remove /** - * Removes the given child from this SPRoot object. + * This routine is for adding a child SVG object to an SPRoot object. + * The SPRoot object is taken to be an SPGroup. */ -static void sp_root_remove_child(SPObject *object, Inkscape::XML::Node *child) +static void sp_root_child_added(SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { + ((SPRoot*)object)->croot->onChildAdded(child, ref); +} + +void CRoot::onRemoveChild(Inkscape::XML::Node* child) { + SPRoot* object = this->sproot; + SPRoot *root = (SPRoot *) object; if ( root->defs && (root->defs->getRepr() == child) ) { @@ -371,16 +403,21 @@ static void sp_root_remove_child(SPObject *object, Inkscape::XML::Node *child) } } - if (((SPObjectClass *) (parent_class))->remove_child) { - (* ((SPObjectClass *) (parent_class))->remove_child)(object, child); - } + CGroup::onRemoveChild(child); } +// CPPIFY: remove /** - * This callback routine updates the SPRoot object when its attributes have been changed. + * Removes the given child from this SPRoot object. */ -static void sp_root_update(SPObject *object, SPCtx *ctx, guint flags) +static void sp_root_remove_child(SPObject *object, Inkscape::XML::Node *child) { + ((SPRoot*)object)->croot->onRemoveChild(child); +} + +void CRoot::onUpdate(SPCtx *ctx, guint flags) { + SPRoot* object = this->sproot; + SPRoot *root = SP_ROOT(object); SPItemCtx *ictx = (SPItemCtx *) ctx; @@ -508,8 +545,7 @@ static void sp_root_update(SPObject *object, SPCtx *ctx, guint flags) rctx.i2vp = Geom::identity(); /* And invoke parent method */ - if (((SPObjectClass *) (parent_class))->update) - ((SPObjectClass *) (parent_class))->update(object, (SPCtx *) &rctx, flags); + CGroup::onUpdate((SPCtx *) &rctx, flags); /* As last step set additional transform of drawing group */ for (SPItemView *v = root->display; v != NULL; v = v->next) { @@ -518,17 +554,21 @@ static void sp_root_update(SPObject *object, SPCtx *ctx, guint flags) } } +// CPPIFY: remove /** - * Calls the modified routine of the SPRoot object's parent class. - * Also, if the viewport has been modified, it sets the document size to the new - * height and width. + * This callback routine updates the SPRoot object when its attributes have been changed. */ -static void sp_root_modified(SPObject *object, guint flags) +static void sp_root_update(SPObject *object, SPCtx *ctx, guint flags) { + ((SPRoot*)object)->croot->onUpdate(ctx, flags); +} + +void CRoot::onModified(unsigned int flags) { + SPRoot* object = this->sproot; + SPRoot *root = SP_ROOT(object); - if (((SPObjectClass *) (parent_class))->modified) - (* ((SPObjectClass *) (parent_class))->modified)(object, flags); + CGroup::onModified(flags); /* fixme: (Lauris) */ if (!object->parent && (flags & SP_OBJECT_VIEWPORT_MODIFIED_FLAG)) { @@ -536,12 +576,20 @@ static void sp_root_modified(SPObject *object, guint flags) } } +// CPPIFY: remove /** - * Writes the object into the repr object, then calls the parent's write routine. + * Calls the modified routine of the SPRoot object's parent class. + * Also, if the viewport has been modified, it sets the document size to the new + * height and width. */ -static Inkscape::XML::Node * -sp_root_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +static void sp_root_modified(SPObject *object, guint flags) { + ((SPRoot*)object)->croot->onModified(flags); +} + +Inkscape::XML::Node* CRoot::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPRoot* object = this->sproot; + SPRoot *root = SP_ROOT(object); if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { @@ -576,39 +624,51 @@ sp_root_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML: repr->setAttribute("viewBox", os.str().c_str()); } - if (((SPObjectClass *) (parent_class))->write) - ((SPObjectClass *) (parent_class))->write(object, xml_doc, repr, flags); + CGroup::onWrite(xml_doc, repr, flags); return repr; } +// CPPIFY: remove /** - * Displays the SPRoot item on the drawing. + * Writes the object into the repr object, then calls the parent's write routine. */ -static Inkscape::DrawingItem * -sp_root_show(SPItem *item, Inkscape::Drawing &drawing, unsigned int key, unsigned int flags) +static Inkscape::XML::Node * +sp_root_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + return ((SPRoot*)object)->croot->onWrite(xml_doc, repr, flags); +} + +Inkscape::DrawingItem* CRoot::onShow(Inkscape::Drawing &drawing, unsigned int key, unsigned int flags) { + SPRoot* item = this->sproot; + SPRoot *root = SP_ROOT(item); - Inkscape::DrawingItem *ai; - if (((SPItemClass *) (parent_class))->show) { - ai = ((SPItemClass *) (parent_class))->show(item, drawing, key, flags); - if (ai) { - Inkscape::DrawingGroup *g = dynamic_cast(ai); - g->setChildTransform(root->c2p); - } - } else { - ai = NULL; + Inkscape::DrawingItem *ai = 0; + + ai = CGroup::onShow(drawing, key, flags); + + if (ai) { + Inkscape::DrawingGroup *g = dynamic_cast(ai); + g->setChildTransform(root->c2p); } return ai; } +// CPPIFY: remove /** - * Virtual print callback. + * Displays the SPRoot item on the drawing. */ -static void sp_root_print(SPItem *item, SPPrintContext *ctx) +static Inkscape::DrawingItem * +sp_root_show(SPItem *item, Inkscape::Drawing &drawing, unsigned int key, unsigned int flags) { + return ((SPRoot*)item)->croot->onShow(drawing, key, flags); +} + +void CRoot::onPrint(SPPrintContext* ctx) { + SPRoot* item = this->sproot; + SPRoot *root = SP_ROOT(item); sp_print_bind(ctx, root->c2p, 1.0); @@ -620,6 +680,14 @@ static void sp_root_print(SPItem *item, SPPrintContext *ctx) sp_print_release(ctx); } +// CPPIFY: remove +/** + * Virtual print callback. + */ +static void sp_root_print(SPItem *item, SPPrintContext *ctx) +{ + ((SPRoot*)item)->croot->onPrint(ctx); +} /* Local Variables: diff --git a/src/sp-root.h b/src/sp-root.h index e2bad917b..f489cc83e 100644 --- a/src/sp-root.h +++ b/src/sp-root.h @@ -26,9 +26,13 @@ #define SP_IS_ROOT_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE((k), SP_TYPE_ROOT)) class SPDefs; +class CRoot; /** \ element */ -struct SPRoot : public SPGroup { +class SPRoot : public SPGroup { +public: + CRoot* croot; + struct { Inkscape::Version svg; Inkscape::Version inkscape; @@ -66,6 +70,30 @@ struct SPRootClass { SPGroupClass parent_class; }; + +class CRoot : public CGroup { +public: + CRoot(SPRoot* root); + virtual ~CRoot(); + + virtual void onBuild(SPDocument *document, Inkscape::XML::Node *repr); + virtual void onRelease(); + virtual void onSet(unsigned int key, gchar const* value); + virtual void onUpdate(SPCtx *ctx, guint flags); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + + virtual void onModified(unsigned int flags); + virtual void onChildAdded(Inkscape::XML::Node* child, Inkscape::XML::Node* ref); + virtual void onRemoveChild(Inkscape::XML::Node* child); + + virtual Inkscape::DrawingItem* onShow(Inkscape::Drawing &drawing, unsigned int key, unsigned int flags); + virtual void onPrint(SPPrintContext *ctx); + +protected: + SPRoot* sproot; +}; + + GType sp_root_get_type(); -- cgit v1.2.3 From 25d3298c964cd227bcf31d09539899ac0e6b9060 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sun, 19 Aug 2012 03:11:45 +0200 Subject: Added "virtual pad" to SPSymbol. (bzr r11608.1.21) --- src/sp-symbol.cpp | 168 ++++++++++++++++++++++++++++++++++++------------------ src/sp-symbol.h | 31 +++++++++- 2 files changed, 142 insertions(+), 57 deletions(-) diff --git a/src/sp-symbol.cpp b/src/sp-symbol.cpp index 87cd210e4..bd8a0ea53 100644 --- a/src/sp-symbol.cpp +++ b/src/sp-symbol.cpp @@ -85,32 +85,53 @@ static void sp_symbol_class_init(SPSymbolClass *klass) sp_item_class->print = sp_symbol_print; } +CSymbol::CSymbol(SPSymbol* symbol) : CGroup(symbol) { + this->spsymbol = symbol; +} + +CSymbol::~CSymbol() { +} + static void sp_symbol_init(SPSymbol *symbol) { - symbol->viewBox_set = FALSE; + symbol->csymbol = new CSymbol(symbol); + symbol->cgroup = symbol->csymbol; + symbol->clpeitem = symbol->csymbol; + symbol->citem = symbol->csymbol; + symbol->cobject = symbol->csymbol; + symbol->viewBox_set = FALSE; symbol->c2p = Geom::identity(); } -static void sp_symbol_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) -{ +void CSymbol::onBuild(SPDocument *document, Inkscape::XML::Node *repr) { + SPSymbol* object = this->spsymbol; + object->readAttr( "viewBox" ); object->readAttr( "preserveAspectRatio" ); - if (((SPObjectClass *) parent_class)->build) { - ((SPObjectClass *) parent_class)->build (object, document, repr); - } + CGroup::onBuild(document, repr); } -static void sp_symbol_release(SPObject *object) +// CPPIFY: remove +static void sp_symbol_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) { - if (((SPObjectClass *) parent_class)->release) { - ((SPObjectClass *) parent_class)->release (object); - } + ((SPSymbol*)object)->csymbol->onBuild(document, repr); } -static void sp_symbol_set(SPObject *object, unsigned int key, const gchar *value) +void CSymbol::onRelease() { + CGroup::onRelease(); +} + +// CPPIFY: remove +static void sp_symbol_release(SPObject *object) { + ((SPSymbol*)object)->csymbol->onRelease(); +} + +void CSymbol::onSet(unsigned int key, const gchar* value) { + SPSymbol* object = this->spsymbol; + SPSymbol *symbol = SP_SYMBOL(object); switch (key) { @@ -202,22 +223,31 @@ static void sp_symbol_set(SPObject *object, unsigned int key, const gchar *value } break; default: - if (((SPObjectClass *) parent_class)->set) - ((SPObjectClass *) parent_class)->set (object, key, value); + CGroup::onSet(key, value); break; } } -static void sp_symbol_child_added(SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node *ref) +// CPPIFY: remove +static void sp_symbol_set(SPObject *object, unsigned int key, const gchar *value) { - if (((SPObjectClass *) (parent_class))->child_added) { - ((SPObjectClass *) (parent_class))->child_added (object, child, ref); - } + ((SPSymbol*)object)->csymbol->onSet(key, value); } -static void sp_symbol_update(SPObject *object, SPCtx *ctx, guint flags) +void CSymbol::onChildAdded(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { + CGroup::onChildAdded(child, ref); +} + +// CPPIFY: remove +static void sp_symbol_child_added(SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { - SPSymbol *symbol = SP_SYMBOL(object); + ((SPSymbol*)object)->csymbol->onChildAdded(child, ref); +} + +void CSymbol::onUpdate(SPCtx *ctx, guint flags) { + SPSymbol* object = this->spsymbol; + SPSymbol *symbol = object; + SPItemCtx *ictx = (SPItemCtx *) ctx; SPItemCtx rctx; @@ -315,9 +345,7 @@ static void sp_symbol_update(SPObject *object, SPCtx *ctx, guint flags) } // And invoke parent method - if (((SPObjectClass *) (parent_class))->update) { - ((SPObjectClass *) (parent_class))->update (object, (SPCtx *) &rctx, flags); - } + CGroup::onUpdate((SPCtx *) &rctx, flags); // As last step set additional transform of drawing group for (SPItemView *v = symbol->display; v != NULL; v = v->next) { @@ -326,24 +354,28 @@ static void sp_symbol_update(SPObject *object, SPCtx *ctx, guint flags) } } else { // No-op - if (((SPObjectClass *) (parent_class))->update) { - ((SPObjectClass *) (parent_class))->update (object, ctx, flags); - } + CGroup::onUpdate(ctx, flags); } } -static void sp_symbol_modified(SPObject *object, guint flags) +// CPPIFY: remove +static void sp_symbol_update(SPObject *object, SPCtx *ctx, guint flags) { - SP_SYMBOL(object); + ((SPSymbol*)object)->csymbol->onUpdate(ctx, flags); +} - if (((SPObjectClass *) (parent_class))->modified) { - (* ((SPObjectClass *) (parent_class))->modified) (object, flags); - } +void CSymbol::onModified(unsigned int flags) { + CGroup::onModified(flags); } -static Inkscape::XML::Node *sp_symbol_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +// CPPIFY: remove +static void sp_symbol_modified(SPObject *object, guint flags) { - SP_SYMBOL(object); + ((SPSymbol*)object)->csymbol->onModified(flags); +} + +Inkscape::XML::Node* CSymbol::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPSymbol* object = this->spsymbol; if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { repr = xml_doc->createElement("svg:symbol"); @@ -355,72 +387,96 @@ static Inkscape::XML::Node *sp_symbol_write(SPObject *object, Inkscape::XML::Doc //XML Tree being used directly here while it shouldn't be. repr->setAttribute("preserveAspectRatio", object->getRepr()->attribute("preserveAspectRatio")); - if (((SPObjectClass *) (parent_class))->write) { - ((SPObjectClass *) (parent_class))->write (object, xml_doc, repr, flags); - } + CGroup::onWrite(xml_doc, repr, flags); return repr; } -static Inkscape::DrawingItem *sp_symbol_show(SPItem *item, Inkscape::Drawing &drawing, unsigned int key, unsigned int flags) +// CPPIFY: remove +static Inkscape::XML::Node *sp_symbol_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + return ((SPSymbol*)object)->csymbol->onWrite(xml_doc, repr, flags); +} + +Inkscape::DrawingItem* CSymbol::onShow(Inkscape::Drawing &drawing, unsigned int key, unsigned int flags) { + SPSymbol* item = this->spsymbol; + SPSymbol *symbol = SP_SYMBOL(item); Inkscape::DrawingItem *ai = 0; if (symbol->cloned) { // Cloned is actually renderable - if (((SPItemClass *) (parent_class))->show) { - ai = ((SPItemClass *) (parent_class))->show (item, drawing, key, flags); - Inkscape::DrawingGroup *g = dynamic_cast(ai); - if (g) { - g->setChildTransform(symbol->c2p); - } - } + ai = CGroup::onShow(drawing, key, flags); + Inkscape::DrawingGroup *g = dynamic_cast(ai); + if (g) { + g->setChildTransform(symbol->c2p); + } } return ai; } -static void sp_symbol_hide(SPItem *item, unsigned int key) +// CPPIFY: remove +static Inkscape::DrawingItem *sp_symbol_show(SPItem *item, Inkscape::Drawing &drawing, unsigned int key, unsigned int flags) { + return ((SPSymbol*)item)->csymbol->onShow(drawing, key, flags); +} + +void CSymbol::onHide(unsigned int key) { + SPSymbol* item = this->spsymbol; + SPSymbol *symbol = SP_SYMBOL(item); if (symbol->cloned) { /* Cloned is actually renderable */ - if (((SPItemClass *) (parent_class))->hide) { - ((SPItemClass *) (parent_class))->hide (item, key); - } + CGroup::onHide(key); } } -static Geom::OptRect sp_symbol_bbox(SPItem const *item, Geom::Affine const &transform, SPItem::BBoxType type) +// CPPIFY: remove +static void sp_symbol_hide(SPItem *item, unsigned int key) { + ((SPSymbol*)item)->csymbol->onHide(key); +} + +Geom::OptRect CSymbol::onBbox(Geom::Affine const &transform, SPItem::BBoxType type) { + SPSymbol* item = this->spsymbol; + SPSymbol const *symbol = SP_SYMBOL(item); Geom::OptRect bbox; if (symbol->cloned) { // Cloned is actually renderable + Geom::Affine const a( symbol->c2p * transform ); + bbox = CGroup::onBbox(a, type); - if (((SPItemClass *) (parent_class))->bbox) { - Geom::Affine const a( symbol->c2p * transform ); - bbox = ((SPItemClass *) (parent_class))->bbox(item, a, type); - } } return bbox; } -static void sp_symbol_print(SPItem *item, SPPrintContext *ctx) +// CPPIFY: remove +static Geom::OptRect sp_symbol_bbox(SPItem const *item, Geom::Affine const &transform, SPItem::BBoxType type) { + return ((SPSymbol*)item)->csymbol->onBbox(transform, type); +} + +void CSymbol::onPrint(SPPrintContext* ctx) { + SPSymbol* item = this->spsymbol; + SPSymbol *symbol = SP_SYMBOL(item); if (symbol->cloned) { // Cloned is actually renderable sp_print_bind(ctx, symbol->c2p, 1.0); - if (((SPItemClass *) (parent_class))->print) { - ((SPItemClass *) (parent_class))->print (item, ctx); - } + CGroup::onPrint(ctx); sp_print_release (ctx); } } + +// CPPIFY: remove +static void sp_symbol_print(SPItem *item, SPPrintContext *ctx) +{ + ((SPSymbol*)item)->csymbol->onPrint(ctx); +} diff --git a/src/sp-symbol.h b/src/sp-symbol.h index 59f343285..82dd3ca9f 100644 --- a/src/sp-symbol.h +++ b/src/sp-symbol.h @@ -23,13 +23,17 @@ class SPSymbol; class SPSymbolClass; +class CSymbol; #include <2geom/affine.h> #include "svg/svg-length.h" #include "enums.h" #include "sp-item-group.h" -struct SPSymbol : public SPGroup { +class SPSymbol : public SPGroup { +public: + CSymbol* csymbol; + /* viewBox; */ unsigned int viewBox_set : 1; Geom::Rect viewBox; @@ -47,6 +51,31 @@ struct SPSymbolClass { SPGroupClass parent_class; }; + +class CSymbol : public CGroup { +public: + CSymbol(SPSymbol* symbol); + virtual ~CSymbol(); + + virtual void onBuild(SPDocument *document, Inkscape::XML::Node *repr); + virtual void onRelease(); + virtual void onSet(unsigned int key, gchar const* value); + virtual void onUpdate(SPCtx *ctx, guint flags); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + + virtual void onModified(unsigned int flags); + virtual void onChildAdded(Inkscape::XML::Node* child, Inkscape::XML::Node* ref); + + virtual Inkscape::DrawingItem* onShow(Inkscape::Drawing &drawing, unsigned int key, unsigned int flags); + virtual void onPrint(SPPrintContext *ctx); + virtual Geom::OptRect onBbox(Geom::Affine const &transform, SPItem::BBoxType type); + virtual void onHide (unsigned int key); + +protected: + SPSymbol* spsymbol; +}; + + GType sp_symbol_get_type (void); #endif -- cgit v1.2.3 From 37e4ac1b79668657362806503a1a0079b534c365 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sun, 19 Aug 2012 03:18:49 +0200 Subject: As all subclasses of SPLPEItem now have "virtual pads" with correct inheritance, the virtual function call to "onUpdatePatheffect" was converted to C++ style. (bzr r11608.1.22) --- src/sp-lpe-item.cpp | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/sp-lpe-item.cpp b/src/sp-lpe-item.cpp index f43e5cc07..15243c651 100644 --- a/src/sp-lpe-item.cpp +++ b/src/sp-lpe-item.cpp @@ -453,9 +453,7 @@ sp_lpe_item_update_patheffect (SPLPEItem *lpeitem, bool wholetree, bool write) top = lpeitem; } - if (SP_LPE_ITEM_CLASS (G_OBJECT_GET_CLASS (top))->update_patheffect) { - SP_LPE_ITEM_CLASS (G_OBJECT_GET_CLASS (top))->update_patheffect (top, write); - } + top->clpeitem->onUpdatePatheffect(write); } /** -- cgit v1.2.3 From b403c428afe0c33b95d8d0d36eac42fd01ba31fd Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sun, 19 Aug 2012 21:31:33 +0200 Subject: Added "virtual pad" to - SPFlowdiv - SPFlowtspan - SPFlowpara - SPFlowline - SPFlowregionbreak (bzr r11608.1.23) --- src/sp-flowdiv.cpp | 350 +++++++++++++++++++++++++++++++++++++---------------- src/sp-flowdiv.h | 108 ++++++++++++++++- 2 files changed, 350 insertions(+), 108 deletions(-) diff --git a/src/sp-flowdiv.cpp b/src/sp-flowdiv.cpp index 7a0c5e0b8..976746770 100644 --- a/src/sp-flowdiv.cpp +++ b/src/sp-flowdiv.cpp @@ -94,25 +94,36 @@ static void sp_flowdiv_class_init(SPFlowdivClass *klass) sp_object_class->modified = sp_flowdiv_modified; } -static void sp_flowdiv_init(SPFlowdiv */*group*/) +CFlowdiv::CFlowdiv(SPFlowdiv* flowdiv) : CItem(flowdiv) { + this->spflowdiv = flowdiv; +} + +CFlowdiv::~CFlowdiv() { +} + +static void sp_flowdiv_init(SPFlowdiv *group) { + group->cflowdiv = new CFlowdiv(group); + group->citem = group->cflowdiv; + group->cobject = group->cflowdiv; +} + +void CFlowdiv::onRelease() { + CItem::onRelease(); } +// CPPIFY: remove static void sp_flowdiv_release(SPObject *object) { - if (reinterpret_cast(flowdiv_parent_class)->release) { - reinterpret_cast(flowdiv_parent_class)->release(object); - } + ((SPFlowdiv*)object)->cflowdiv->onRelease(); } -static void sp_flowdiv_update(SPObject *object, SPCtx *ctx, unsigned int flags) -{ +void CFlowdiv::onUpdate(SPCtx *ctx, unsigned int flags) { + SPFlowdiv* object = this->spflowdiv; SPItemCtx *ictx = reinterpret_cast(ctx); SPItemCtx cctx = *ictx; - if (reinterpret_cast(flowdiv_parent_class)->update) { - reinterpret_cast(flowdiv_parent_class)->update(object, ctx, flags); - } + CItem::onUpdate(ctx, flags); if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; @@ -142,11 +153,16 @@ static void sp_flowdiv_update(SPObject *object, SPCtx *ctx, unsigned int flags) } } -static void sp_flowdiv_modified(SPObject *object, guint flags) +// CPPIFY: remove +static void sp_flowdiv_update(SPObject *object, SPCtx *ctx, unsigned int flags) { - if (reinterpret_cast(flowdiv_parent_class)->modified) { - reinterpret_cast(flowdiv_parent_class)->modified(object, flags); - } + ((SPFlowdiv*)object)->cflowdiv->onUpdate(ctx, flags); +} + +void CFlowdiv::onModified(unsigned int flags) { + SPFlowdiv* object = this->spflowdiv; + + CItem::onModified(flags); if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; @@ -169,24 +185,39 @@ static void sp_flowdiv_modified(SPObject *object, guint flags) } } +// CPPIFY: remove +static void sp_flowdiv_modified(SPObject *object, guint flags) +{ + ((SPFlowdiv*)object)->cflowdiv->onModified(flags); +} + +void CFlowdiv::onBuild(SPDocument *doc, Inkscape::XML::Node *repr) { + SPFlowdiv* object = this->spflowdiv; + + object->_requireSVGVersion(Inkscape::Version(1, 2)); + + CItem::onBuild(doc, repr); +} + +// CPPIFY: remove static void sp_flowdiv_build(SPObject *object, SPDocument *doc, Inkscape::XML::Node *repr) { - object->_requireSVGVersion(Inkscape::Version(1, 2)); + ((SPFlowdiv*)object)->cflowdiv->onBuild(doc, repr); +} - if (reinterpret_cast(flowdiv_parent_class)->build) { - reinterpret_cast(flowdiv_parent_class)->build(object, doc, repr); - } +void CFlowdiv::onSet(unsigned int key, const gchar* value) { + CItem::onSet(key, value); } +// CPPIFY: remove static void sp_flowdiv_set(SPObject *object, unsigned int key, const gchar *value) { - if (reinterpret_cast(flowdiv_parent_class)->set) { - reinterpret_cast(flowdiv_parent_class)->set(object, key, value); - } + ((SPFlowdiv*)object)->cflowdiv->onSet(key, value); } -static Inkscape::XML::Node *sp_flowdiv_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) -{ +Inkscape::XML::Node* CFlowdiv::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPFlowdiv* object = this->spflowdiv; + if ( flags & SP_OBJECT_WRITE_BUILD ) { if ( repr == NULL ) { repr = xml_doc->createElement("svg:flowDiv"); @@ -222,13 +253,17 @@ static Inkscape::XML::Node *sp_flowdiv_write(SPObject *object, Inkscape::XML::Do } } - if (((SPObjectClass *) (flowdiv_parent_class))->write) { - ((SPObjectClass *) (flowdiv_parent_class))->write(object, xml_doc, repr, flags); - } + CItem::onWrite(xml_doc, repr, flags); return repr; } +// CPPIFY: remove +static Inkscape::XML::Node *sp_flowdiv_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +{ + return ((SPFlowdiv*)object)->cflowdiv->onWrite(xml_doc, repr, flags); +} + /* * @@ -270,25 +305,37 @@ static void sp_flowtspan_class_init(SPFlowtspanClass *klass) sp_object_class->modified = sp_flowtspan_modified; } -static void sp_flowtspan_init(SPFlowtspan */*group*/) +CFlowtspan::CFlowtspan(SPFlowtspan* flowtspan) : CItem(flowtspan) { + this->spflowtspan = flowtspan; +} + +CFlowtspan::~CFlowtspan() { +} + +static void sp_flowtspan_init(SPFlowtspan *group) { + group->cflowtspan = new CFlowtspan(group); + group->citem = group->cflowtspan; + group->cobject = group->cflowtspan; +} + +void CFlowtspan::onRelease() { + CItem::onRelease(); } +// CPPIFY: remove static void sp_flowtspan_release(SPObject *object) { - if (reinterpret_cast(flowtspan_parent_class)->release) { - reinterpret_cast(flowtspan_parent_class)->release(object); - } + ((SPFlowtspan*)object)->cflowtspan->onRelease(); } -static void sp_flowtspan_update(SPObject *object, SPCtx *ctx, unsigned int flags) -{ +void CFlowtspan::onUpdate(SPCtx *ctx, unsigned int flags) { + SPFlowtspan* object = this->spflowtspan; + SPItemCtx *ictx = reinterpret_cast(ctx); SPItemCtx cctx = *ictx; - if (reinterpret_cast(flowtspan_parent_class)->update) { - reinterpret_cast(flowtspan_parent_class)->update(object, ctx, flags); - } + CItem::onUpdate(ctx, flags); if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; @@ -318,11 +365,16 @@ static void sp_flowtspan_update(SPObject *object, SPCtx *ctx, unsigned int flags } } -static void sp_flowtspan_modified(SPObject *object, guint flags) +// CPPIFY: remove +static void sp_flowtspan_update(SPObject *object, SPCtx *ctx, unsigned int flags) { - if (reinterpret_cast(flowtspan_parent_class)->modified) { - reinterpret_cast(flowtspan_parent_class)->modified(object, flags); - } + ((SPFlowtspan*)object)->cflowtspan->onUpdate(ctx, flags); +} + +void CFlowtspan::onModified(unsigned int flags) { + SPFlowtspan* object = this->spflowtspan; + + CItem::onModified(flags); if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; @@ -345,22 +397,37 @@ static void sp_flowtspan_modified(SPObject *object, guint flags) } } +// CPPIFY: remove +static void sp_flowtspan_modified(SPObject *object, guint flags) +{ + ((SPFlowtspan*)object)->cflowtspan->onModified(flags); +} + +void CFlowtspan::onBuild(SPDocument *doc, Inkscape::XML::Node *repr) +{ + CItem::onBuild(doc, repr); +} + +// CPPIFY: remove static void sp_flowtspan_build(SPObject *object, SPDocument *doc, Inkscape::XML::Node *repr) { - if (reinterpret_cast(flowtspan_parent_class)->build) { - reinterpret_cast(flowtspan_parent_class)->build(object, doc, repr); - } + ((SPFlowtspan*)object)->cflowtspan->onBuild(doc, repr); +} + +void CFlowtspan::onSet(unsigned int key, const gchar* value) { + CItem::onSet(key, value); } +// CPPIFY: remove static void sp_flowtspan_set(SPObject *object, unsigned int key, const gchar *value) { - if (reinterpret_cast(flowtspan_parent_class)->set) { - reinterpret_cast(flowtspan_parent_class)->set(object, key, value); - } + ((SPFlowtspan*)object)->cflowtspan->onSet(key, value); } -static Inkscape::XML::Node *sp_flowtspan_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +Inkscape::XML::Node *CFlowtspan::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPFlowtspan* object = this->spflowtspan; + if ( flags&SP_OBJECT_WRITE_BUILD ) { if ( repr == NULL ) { repr = xml_doc->createElement("svg:flowSpan"); @@ -396,13 +463,17 @@ static Inkscape::XML::Node *sp_flowtspan_write(SPObject *object, Inkscape::XML:: } } - if (((SPObjectClass *) (flowtspan_parent_class))->write) { - ((SPObjectClass *) (flowtspan_parent_class))->write(object, xml_doc, repr, flags); - } + CItem::onWrite(xml_doc, repr, flags); return repr; } +// CPPIFY: remove +static Inkscape::XML::Node *sp_flowtspan_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +{ + return ((SPFlowtspan*)object)->cflowtspan->onWrite(xml_doc, repr, flags); +} + /* @@ -445,25 +516,38 @@ static void sp_flowpara_class_init(SPFlowparaClass *klass) sp_object_class->modified = sp_flowpara_modified; } -static void sp_flowpara_init (SPFlowpara */*group*/) +CFlowpara::CFlowpara(SPFlowpara* flowpara) : CItem(flowpara) { + this->spflowpara = flowpara; +} + +CFlowpara::~CFlowpara() { +} + +static void sp_flowpara_init (SPFlowpara *group) { + group->cflowpara = new CFlowpara(group); + group->citem = group->cflowpara; + group->cobject = group->cflowpara; +} + +void CFlowpara::onRelease() { + CItem::onRelease(); } +// CPPIFY: remove static void sp_flowpara_release(SPObject *object) { - if (reinterpret_cast(flowpara_parent_class)->release) { - reinterpret_cast(flowpara_parent_class)->release(object); - } + ((SPFlowpara*)object)->cflowpara->onRelease(); } -static void sp_flowpara_update(SPObject *object, SPCtx *ctx, unsigned int flags) +void CFlowpara::onUpdate(SPCtx *ctx, unsigned int flags) { + SPFlowpara* object = this->spflowpara; + SPItemCtx *ictx = reinterpret_cast(ctx); SPItemCtx cctx = *ictx; - if (reinterpret_cast(flowpara_parent_class)->update) { - reinterpret_cast(flowpara_parent_class)->update(object, ctx, flags); - } + CItem::onUpdate(ctx, flags); if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; @@ -493,11 +577,16 @@ static void sp_flowpara_update(SPObject *object, SPCtx *ctx, unsigned int flags) } } -static void sp_flowpara_modified(SPObject *object, guint flags) +// CPPIFY: remove +static void sp_flowpara_update(SPObject *object, SPCtx *ctx, unsigned int flags) { - if (reinterpret_cast(flowpara_parent_class)->modified) { - reinterpret_cast(flowpara_parent_class)->modified(object, flags); - } + ((SPFlowpara*)object)->cflowpara->onUpdate(ctx, flags); +} + +void CFlowpara::onModified(unsigned int flags) { + SPFlowpara* object = this->spflowpara; + + CItem::onModified(flags); if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; @@ -520,22 +609,37 @@ static void sp_flowpara_modified(SPObject *object, guint flags) } } +// CPPIFY: remove +static void sp_flowpara_modified(SPObject *object, guint flags) +{ + ((SPFlowpara*)object)->cflowpara->onModified(flags); +} + +void CFlowpara::onBuild(SPDocument *doc, Inkscape::XML::Node *repr) +{ + CItem::onBuild(doc, repr); +} + +// CPPIFY: remove static void sp_flowpara_build(SPObject *object, SPDocument *doc, Inkscape::XML::Node *repr) { - if (reinterpret_cast(flowpara_parent_class)->build) { - reinterpret_cast(flowpara_parent_class)->build(object, doc, repr); - } + ((SPFlowpara*)object)->cflowpara->onBuild(doc, repr); } +void CFlowpara::onSet(unsigned int key, const gchar* value) { + CItem::onSet(key, value); +} + +// CPPIFY: remove static void sp_flowpara_set(SPObject *object, unsigned int key, const gchar *value) { - if (reinterpret_cast(flowpara_parent_class)->set) { - reinterpret_cast(flowpara_parent_class)->set(object, key, value); - } + ((SPFlowpara*)object)->cflowpara->onSet(key, value); } -static Inkscape::XML::Node *sp_flowpara_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +Inkscape::XML::Node *CFlowpara::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPFlowpara* object = this->spflowpara; + if ( flags&SP_OBJECT_WRITE_BUILD ) { if ( repr == NULL ) repr = xml_doc->createElement("svg:flowPara"); GSList *l = NULL; @@ -569,13 +673,17 @@ static Inkscape::XML::Node *sp_flowpara_write(SPObject *object, Inkscape::XML::D } } - if (((SPObjectClass *) (flowpara_parent_class))->write) { - ((SPObjectClass *) (flowpara_parent_class))->write(object, xml_doc, repr, flags); - } + CItem::onWrite(xml_doc, repr, flags); return repr; } +// CPPIFY: remove +static Inkscape::XML::Node *sp_flowpara_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +{ + return ((SPFlowpara*)object)->cflowpara->onWrite(xml_doc, repr, flags); +} + /* * */ @@ -612,30 +720,45 @@ static void sp_flowline_class_init(SPFlowlineClass *klass) sp_object_class->modified = sp_flowline_modified; } -static void sp_flowline_init(SPFlowline */*group*/) +CFlowline::CFlowline(SPFlowline* flowline) : CObject(flowline) { + this->spflowline = flowline; +} + +CFlowline::~CFlowline() { +} + +static void sp_flowline_init(SPFlowline *group) { + group->cflowline = new CFlowline(group); + group->cobject = group->cflowline; } +void CFlowline::onRelease() { + CObject::onRelease(); +} + +// CPPIFY: remove static void sp_flowline_release(SPObject *object) { - if (reinterpret_cast(flowline_parent_class)->release) { - reinterpret_cast(flowline_parent_class)->release(object); - } + ((SPFlowline*)object)->cflowline->onRelease(); } +void CFlowline::onModified(unsigned int flags) { + CObject::onModified(flags); + + if (flags & SP_OBJECT_MODIFIED_FLAG) { + flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; + } + flags &= SP_OBJECT_MODIFIED_CASCADE; +} + +// CPPIFY: remove static void sp_flowline_modified(SPObject *object, guint flags) { - if (reinterpret_cast(flowline_parent_class)->modified) { - reinterpret_cast(flowline_parent_class)->modified(object, flags); - } - - if (flags & SP_OBJECT_MODIFIED_FLAG) { - flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; - } - flags &= SP_OBJECT_MODIFIED_CASCADE; + ((SPFlowline*)object)->cflowline->onModified(flags); } -static Inkscape::XML::Node *sp_flowline_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +Inkscape::XML::Node *CFlowline::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { if ( flags & SP_OBJECT_WRITE_BUILD ) { if ( repr == NULL ) { @@ -644,13 +767,17 @@ static Inkscape::XML::Node *sp_flowline_write(SPObject *object, Inkscape::XML::D } else { } - if (reinterpret_cast(flowline_parent_class)->write) { - reinterpret_cast(flowline_parent_class)->write(object, xml_doc, repr, flags); - } + CObject::onWrite(xml_doc, repr, flags); return repr; } +// CPPIFY: remove +static Inkscape::XML::Node *sp_flowline_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +{ + return ((SPFlowline*)object)->cflowline->onWrite(xml_doc, repr, flags); +} + /* * */ @@ -687,30 +814,45 @@ static void sp_flowregionbreak_class_init(SPFlowregionbreakClass *klass) sp_object_class->modified = sp_flowregionbreak_modified; } -static void sp_flowregionbreak_init(SPFlowregionbreak */*group*/) +CFlowregionbreak::CFlowregionbreak(SPFlowregionbreak* flowregionbreak) : CObject(flowregionbreak) { + this->spflowregionbreak = flowregionbreak; +} + +CFlowregionbreak::~CFlowregionbreak() { +} + +static void sp_flowregionbreak_init(SPFlowregionbreak *group) { + group->cflowregionbreak = new CFlowregionbreak(group); + group->cobject = group->cflowregionbreak; } +void CFlowregionbreak::onRelease() { + CObject::onRelease(); +} + +// CPPIFY: remove static void sp_flowregionbreak_release(SPObject *object) { - if (reinterpret_cast(flowregionbreak_parent_class)->release) { - reinterpret_cast(flowregionbreak_parent_class)->release(object); - } + ((SPFlowregionbreak*)object)->cflowregionbreak->onRelease(); } +void CFlowregionbreak::onModified(unsigned int flags) { + CObject::onModified(flags); + + if (flags & SP_OBJECT_MODIFIED_FLAG) { + flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; + } + flags &= SP_OBJECT_MODIFIED_CASCADE; +} + +// CPPIFY: remove static void sp_flowregionbreak_modified(SPObject *object, guint flags) { - if (reinterpret_cast(flowregionbreak_parent_class)->modified) { - reinterpret_cast(flowregionbreak_parent_class)->modified(object, flags); - } - - if (flags & SP_OBJECT_MODIFIED_FLAG) { - flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; - } - flags &= SP_OBJECT_MODIFIED_CASCADE; + ((SPFlowregionbreak*)object)->cflowregionbreak->onModified(flags); } -static Inkscape::XML::Node *sp_flowregionbreak_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +Inkscape::XML::Node *CFlowregionbreak::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { if ( flags & SP_OBJECT_WRITE_BUILD ) { if ( repr == NULL ) { @@ -719,13 +861,17 @@ static Inkscape::XML::Node *sp_flowregionbreak_write(SPObject *object, Inkscape: } else { } - if (reinterpret_cast(flowregionbreak_parent_class)->write) { - reinterpret_cast(flowregionbreak_parent_class)->write(object, xml_doc, repr, flags); - } + CObject::onWrite(xml_doc, repr, flags); return repr; } +// CPPIFY: remove +static Inkscape::XML::Node *sp_flowregionbreak_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +{ + return ((SPFlowregionbreak*)object)->cflowregionbreak->onWrite(xml_doc, repr, flags); +} + /* Local Variables: mode:c++ diff --git a/src/sp-flowdiv.h b/src/sp-flowdiv.h index c01ada3b0..4414be338 100644 --- a/src/sp-flowdiv.h +++ b/src/sp-flowdiv.h @@ -37,24 +37,39 @@ #define SP_IS_FLOWREGIONBREAK(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_FLOWREGIONBREAK)) #define SP_IS_FLOWREGIONBREAK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_FLOWREGIONBREAK)) +class CFlowdiv; +class CFlowtspan; +class CFlowpara; +class CFlowline; +class CFlowregionbreak; + // these 3 are derivatives of SPItem to get the automatic style handling -struct SPFlowdiv : public SPItem { +class SPFlowdiv : public SPItem { +public: + CFlowdiv* cflowdiv; }; -struct SPFlowtspan : public SPItem { +class SPFlowtspan : public SPItem { +public: + CFlowtspan* cflowtspan; }; -struct SPFlowpara : public SPItem { +class SPFlowpara : public SPItem { +public: + CFlowpara* cflowpara; }; // these do not need any style -struct SPFlowline : public SPObject { +class SPFlowline : public SPObject { +public: + CFlowline* cflowline; }; -struct SPFlowregionbreak : public SPObject { +class SPFlowregionbreak : public SPObject { +public: + CFlowregionbreak* cflowregionbreak; }; - struct SPFlowdivClass { SPItemClass parent_class; }; @@ -75,6 +90,87 @@ struct SPFlowregionbreakClass { SPObjectClass parent_class; }; + +class CFlowdiv : public CItem { +public: + CFlowdiv(SPFlowdiv* flowdiv); + virtual ~CFlowdiv(); + + virtual void onBuild(SPDocument *document, Inkscape::XML::Node *repr); + virtual void onRelease(); + virtual void onUpdate(SPCtx* ctx, guint flags); + virtual void onModified(unsigned int flags); + + virtual void onSet(unsigned int key, gchar const* value); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + +protected: + SPFlowdiv* spflowdiv; +}; + +class CFlowtspan : public CItem { +public: + CFlowtspan(SPFlowtspan* flowtspan); + virtual ~CFlowtspan(); + + virtual void onBuild(SPDocument *document, Inkscape::XML::Node *repr); + virtual void onRelease(); + virtual void onUpdate(SPCtx* ctx, guint flags); + virtual void onModified(unsigned int flags); + + virtual void onSet(unsigned int key, gchar const* value); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + +protected: + SPFlowtspan* spflowtspan; +}; + +class CFlowpara : public CItem { +public: + CFlowpara(SPFlowpara* flowpara); + virtual ~CFlowpara(); + + virtual void onBuild(SPDocument *document, Inkscape::XML::Node *repr); + virtual void onRelease(); + virtual void onUpdate(SPCtx* ctx, guint flags); + virtual void onModified(unsigned int flags); + + virtual void onSet(unsigned int key, gchar const* value); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + +protected: + SPFlowpara* spflowpara; +}; + +class CFlowline : public CObject { +public: + CFlowline(SPFlowline* flowline); + virtual ~CFlowline(); + + virtual void onRelease(); + virtual void onModified(unsigned int flags); + + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + +protected: + SPFlowline* spflowline; +}; + +class CFlowregionbreak : public CObject { +public: + CFlowregionbreak(SPFlowregionbreak* flowregionbreak); + virtual ~CFlowregionbreak(); + + virtual void onRelease(); + virtual void onModified(unsigned int flags); + + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + +protected: + SPFlowregionbreak* spflowregionbreak; +}; + + GType sp_flowdiv_get_type (void); GType sp_flowtspan_get_type (void); GType sp_flowpara_get_type (void); -- cgit v1.2.3 From 1e25ba03dddd007b9849ce31bcc365fa39102a2d Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sun, 19 Aug 2012 22:12:31 +0200 Subject: Added "virtual pad" to - SPFlowregion - SPFlowregionExclude (bzr r11608.1.24) --- src/sp-flowregion.cpp | 160 +++++++++++++++++++++++++++++++++++--------------- src/sp-flowregion.h | 44 +++++++++++++- 2 files changed, 154 insertions(+), 50 deletions(-) diff --git a/src/sp-flowregion.cpp b/src/sp-flowregion.cpp index 649193c33..8dc8ebf8a 100644 --- a/src/sp-flowregion.cpp +++ b/src/sp-flowregion.cpp @@ -101,9 +101,20 @@ sp_flowregion_class_init (SPFlowregionClass *klass) item_class->description = sp_flowregion_description; } +CFlowregion::CFlowregion(SPFlowregion* flowregion) : CItem(flowregion) { + this->spflowregion = flowregion; +} + +CFlowregion::~CFlowregion() { +} + static void sp_flowregion_init (SPFlowregion *group) { + group->cflowregion = new CFlowregion(group); + group->citem = group->cflowregion; + group->cobject = group->cflowregion; + new (&group->computed) std::vector; } @@ -116,39 +127,44 @@ sp_flowregion_dispose(GObject *object) group->computed.~vector(); } -static void sp_flowregion_child_added(SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node *ref) -{ - SP_ITEM(object); +void CFlowregion::onChildAdded(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { + SPFlowregion* object = this->spflowregion; - if (((SPObjectClass *) (flowregion_parent_class))->child_added) { - (* ((SPObjectClass *) (flowregion_parent_class))->child_added) (object, child, ref); - } + CItem::onChildAdded(child, ref); object->requestModified(SP_OBJECT_MODIFIED_FLAG); } +static void sp_flowregion_child_added(SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node *ref) +{ + ((SPFlowregion*)object)->cflowregion->onChildAdded(child, ref); +} + /* fixme: hide (Lauris) */ +void CFlowregion::onRemoveChild(Inkscape::XML::Node * child) { + SPFlowregion* object = this->spflowregion; + + CItem::onRemoveChild(child); + + object->requestModified(SP_OBJECT_MODIFIED_FLAG); +} + static void sp_flowregion_remove_child (SPObject * object, Inkscape::XML::Node * child) { - if (((SPObjectClass *) (flowregion_parent_class))->remove_child) - (* ((SPObjectClass *) (flowregion_parent_class))->remove_child) (object, child); - - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + ((SPFlowregion*)object)->cflowregion->onRemoveChild(child); } +void CFlowregion::onUpdate(SPCtx *ctx, unsigned int flags) { + SPFlowregion* object = this->spflowregion; -static void sp_flowregion_update(SPObject *object, SPCtx *ctx, unsigned int flags) -{ SPFlowregion *group = SP_FLOWREGION(object); SPItemCtx *ictx = reinterpret_cast(ctx); SPItemCtx cctx = *ictx; - if (((SPObjectClass *) (flowregion_parent_class))->update) { - ((SPObjectClass *) (flowregion_parent_class))->update (object, ctx, flags); - } + CItem::onUpdate(ctx, flags); if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; @@ -180,6 +196,11 @@ static void sp_flowregion_update(SPObject *object, SPCtx *ctx, unsigned int flag group->UpdateComputed(); } +static void sp_flowregion_update(SPObject *object, SPCtx *ctx, unsigned int flags) +{ + ((SPFlowregion*)object)->cflowregion->onUpdate(ctx, flags); +} + void SPFlowregion::UpdateComputed(void) { for (std::vector::iterator it = computed.begin() ; it != computed.end() ; ++it) { @@ -194,9 +215,8 @@ void SPFlowregion::UpdateComputed(void) } } -static void sp_flowregion_modified(SPObject *object, guint flags) -{ - SP_FLOWREGION(object); // ensure it is the proper type. +void CFlowregion::onModified(guint flags) { + SPFlowregion* object = this->spflowregion; if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; @@ -219,8 +239,14 @@ static void sp_flowregion_modified(SPObject *object, guint flags) } } -static Inkscape::XML::Node *sp_flowregion_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +static void sp_flowregion_modified(SPObject *object, guint flags) { + ((SPFlowregion*)object)->cflowregion->onModified(flags); +} + +Inkscape::XML::Node *CFlowregion::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPFlowregion* object = this->spflowregion; + if (flags & SP_OBJECT_WRITE_BUILD) { if ( repr == NULL ) { repr = xml_doc->createElement("svg:flowRegion"); @@ -250,20 +276,26 @@ static Inkscape::XML::Node *sp_flowregion_write(SPObject *object, Inkscape::XML: } } - if (((SPObjectClass *) (flowregion_parent_class))->write) { - ((SPObjectClass *) (flowregion_parent_class))->write (object, xml_doc, repr, flags); - } + CItem::onWrite(xml_doc, repr, flags); return repr; } - -static gchar *sp_flowregion_description(SPItem */*item*/) +static Inkscape::XML::Node *sp_flowregion_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + return ((SPFlowregion*)object)->cflowregion->onWrite(xml_doc, repr, flags); +} + +gchar* CFlowregion::onDescription() { // TRANSLATORS: "Flow region" is an area where text is allowed to flow return g_strdup_printf(_("Flow region")); } +static gchar *sp_flowregion_description(SPItem *item) +{ + return ((SPFlowregion*)item)->cflowregion->onDescription(); +} + /* * */ @@ -314,9 +346,20 @@ sp_flowregionexclude_class_init (SPFlowregionExcludeClass *klass) item_class->description = sp_flowregionexclude_description; } +CFlowregionExclude::CFlowregionExclude(SPFlowregionExclude* flowregionexclude) : CItem(flowregionexclude) { + this->spflowregionexclude = flowregionexclude; +} + +CFlowregionExclude::~CFlowregionExclude() { +} + static void sp_flowregionexclude_init (SPFlowregionExclude *group) { + group->cflowregionexclude = new CFlowregionExclude(group); + group->citem = group->cflowregionexclude; + group->cobject = group->cflowregionexclude; + group->computed = NULL; } @@ -330,39 +373,44 @@ sp_flowregionexclude_dispose(GObject *object) } } -static void sp_flowregionexclude_child_added(SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node *ref) -{ - SP_ITEM(object); +void CFlowregionExclude::onChildAdded(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { + SPFlowregionExclude* object = this->spflowregionexclude; - if (((SPObjectClass *) (flowregionexclude_parent_class))->child_added) { - (* ((SPObjectClass *) (flowregionexclude_parent_class))->child_added) (object, child, ref); - } + CItem::onChildAdded(child, ref); object->requestModified(SP_OBJECT_MODIFIED_FLAG); } +static void sp_flowregionexclude_child_added(SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node *ref) +{ + ((SPFlowregionExclude*)object)->cflowregionexclude->onChildAdded(child, ref); +} + /* fixme: hide (Lauris) */ +void CFlowregionExclude::onRemoveChild(Inkscape::XML::Node * child) { + SPFlowregionExclude* object = this->spflowregionexclude; + + CItem::onRemoveChild(child); + + object->requestModified(SP_OBJECT_MODIFIED_FLAG); +} + static void sp_flowregionexclude_remove_child (SPObject * object, Inkscape::XML::Node * child) { - if (((SPObjectClass *) (flowregionexclude_parent_class))->remove_child) - (* ((SPObjectClass *) (flowregionexclude_parent_class))->remove_child) (object, child); - - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + ((SPFlowregionExclude*)object)->cflowregionexclude->onRemoveChild(child); } +void CFlowregionExclude::onUpdate(SPCtx *ctx, unsigned int flags) { + SPFlowregionExclude* object = this->spflowregionexclude; -static void sp_flowregionexclude_update(SPObject *object, SPCtx *ctx, unsigned int flags) -{ SPFlowregionExclude *group = SP_FLOWREGIONEXCLUDE (object); SPItemCtx *ictx = reinterpret_cast(ctx); SPItemCtx cctx = *ictx; - if (((SPObjectClass *) (flowregionexclude_parent_class))->update) { - ((SPObjectClass *) (flowregionexclude_parent_class))->update (object, ctx, flags); - } + CItem::onUpdate(ctx, flags); if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; @@ -394,6 +442,11 @@ static void sp_flowregionexclude_update(SPObject *object, SPCtx *ctx, unsigned i group->UpdateComputed(); } +static void sp_flowregionexclude_update(SPObject *object, SPCtx *ctx, unsigned int flags) +{ + ((SPFlowregionExclude*)object)->cflowregionexclude->onUpdate(ctx, flags); +} + void SPFlowregionExclude::UpdateComputed(void) { if (computed) { @@ -406,9 +459,8 @@ void SPFlowregionExclude::UpdateComputed(void) } } -static void sp_flowregionexclude_modified(SPObject *object, guint flags) -{ - SP_FLOWREGIONEXCLUDE(object); // Ensure it is the proper type +void CFlowregionExclude::onModified(guint flags) { + SPFlowregionExclude* object = this->spflowregionexclude; if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; @@ -431,8 +483,14 @@ static void sp_flowregionexclude_modified(SPObject *object, guint flags) } } -static Inkscape::XML::Node *sp_flowregionexclude_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +static void sp_flowregionexclude_modified(SPObject *object, guint flags) { + ((SPFlowregionExclude*)object)->cflowregionexclude->onModified(flags); +} + +Inkscape::XML::Node *CFlowregionExclude::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPFlowregionExclude* object = this->spflowregionexclude; + if (flags & SP_OBJECT_WRITE_BUILD) { if ( repr == NULL ) { repr = xml_doc->createElement("svg:flowRegionExclude"); @@ -458,16 +516,17 @@ static Inkscape::XML::Node *sp_flowregionexclude_write(SPObject *object, Inkscap } } - if (((SPObjectClass *) (flowregionexclude_parent_class))->write) { - ((SPObjectClass *) (flowregionexclude_parent_class))->write (object, xml_doc, repr, flags); - } + CItem::onWrite(xml_doc, repr, flags); return repr; } - -static gchar *sp_flowregionexclude_description(SPItem */*item*/) +static Inkscape::XML::Node *sp_flowregionexclude_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + return ((SPFlowregionExclude*)object)->cflowregionexclude->onWrite(xml_doc, repr, flags); +} + +gchar* CFlowregionExclude::onDescription() { /* TRANSLATORS: A region "cut out of" a flow region; text is not allowed to flow inside the * flow excluded region. flowRegionExclude in SVG 1.2: see * http://www.w3.org/TR/2004/WD-SVG12-20041027/flow.html#flowRegion-elem and @@ -475,6 +534,11 @@ static gchar *sp_flowregionexclude_description(SPItem */*item*/) return g_strdup_printf(_("Flow excluded region")); } +static gchar *sp_flowregionexclude_description(SPItem *item) +{ + return ((SPFlowregionExclude*)item)->cflowregionexclude->onDescription(); +} + /* * */ diff --git a/src/sp-flowregion.h b/src/sp-flowregion.h index 46b584cf2..2386149ab 100644 --- a/src/sp-flowregion.h +++ b/src/sp-flowregion.h @@ -22,8 +22,13 @@ class Path; class Shape; class flow_dest; class FloatLigne; +class CFlowregion; +class CFlowregionExclude; + +class SPFlowregion : public SPItem { +public: + CFlowregion* cflowregion; -struct SPFlowregion : public SPItem { std::vector computed; void UpdateComputed(void); @@ -33,9 +38,28 @@ struct SPFlowregionClass { SPItemClass parent_class; }; +class CFlowregion : public CItem { +public: + CFlowregion(SPFlowregion* flowregion); + virtual ~CFlowregion(); + + virtual void onChildAdded(Inkscape::XML::Node* child, Inkscape::XML::Node* ref); + virtual void onRemoveChild(Inkscape::XML::Node *child); + virtual void onUpdate(SPCtx *ctx, unsigned int flags); + virtual void onModified(guint flags); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + virtual gchar *onDescription(); + +protected: + SPFlowregion* spflowregion; +}; + GType sp_flowregion_get_type (void); -struct SPFlowregionExclude : public SPItem { +class SPFlowregionExclude : public SPItem { +public: + CFlowregionExclude* cflowregionexclude; + Shape *computed; void UpdateComputed(void); @@ -45,6 +69,22 @@ struct SPFlowregionExcludeClass { SPItemClass parent_class; }; +class CFlowregionExclude : public CItem { +public: + CFlowregionExclude(SPFlowregionExclude* flowregionexclude); + virtual ~CFlowregionExclude(); + + virtual void onChildAdded(Inkscape::XML::Node* child, Inkscape::XML::Node* ref); + virtual void onRemoveChild(Inkscape::XML::Node *child); + virtual void onUpdate(SPCtx *ctx, unsigned int flags); + virtual void onModified(guint flags); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + virtual gchar *onDescription(); + +protected: + SPFlowregionExclude* spflowregionexclude; +}; + GType sp_flowregionexclude_get_type (void); #endif -- cgit v1.2.3 From 37eb84dcfa0f0bb84f5e62303ef7288ee922b64d Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sun, 19 Aug 2012 22:59:52 +0200 Subject: Added "virtual pad" to SPImage. (bzr r11608.1.25) --- src/sp-image.cpp | 156 +++++++++++++++++++++++++++++++++++++++++-------------- src/sp-image.h | 31 ++++++++++- 2 files changed, 147 insertions(+), 40 deletions(-) diff --git a/src/sp-image.cpp b/src/sp-image.cpp index 07885ff4d..15f565bc4 100644 --- a/src/sp-image.cpp +++ b/src/sp-image.cpp @@ -602,8 +602,19 @@ static void sp_image_class_init( SPImageClass * klass ) item_class->set_transform = sp_image_set_transform; } +CImage::CImage(SPImage* image) : CItem(image) { + this->spimage = image; +} + +CImage::~CImage() { +} + static void sp_image_init( SPImage *image ) { + image->cimage = new CImage(image); + image->citem = image->cimage; + image->cobject = image->cimage; + image->x.unset(); image->y.unset(); image->width.unset(); @@ -624,11 +635,10 @@ static void sp_image_init( SPImage *image ) image->lastMod = 0; } -static void sp_image_build( SPObject *object, SPDocument *document, Inkscape::XML::Node *repr ) -{ - if (((SPObjectClass *) parent_class)->build) { - ((SPObjectClass *) parent_class)->build (object, document, repr); - } +void CImage::onBuild(SPDocument *document, Inkscape::XML::Node *repr) { + SPImage* object = this->spimage; + + CItem::onBuild(document, repr); object->readAttr( "xlink:href" ); object->readAttr( "x" ); @@ -642,8 +652,14 @@ static void sp_image_build( SPObject *object, SPDocument *document, Inkscape::XM document->addResource("image", object); } -static void sp_image_release( SPObject *object ) +static void sp_image_build( SPObject *object, SPDocument *document, Inkscape::XML::Node *repr ) { + ((SPImage*)object)->cimage->onBuild(document, repr); +} + +void CImage::onRelease() { + SPImage* object = this->spimage; + SPImage *image = SP_IMAGE(object); if (object->document) { @@ -677,13 +693,18 @@ static void sp_image_release( SPObject *object ) image->curve = image->curve->unref(); } - if (((SPObjectClass *) parent_class)->release) { - ((SPObjectClass *) parent_class)->release (object); - } + CItem::onRelease(); } -static void sp_image_set( SPObject *object, unsigned int key, const gchar *value ) +static void sp_image_release( SPObject *object ) { + ((SPImage*)object)->cimage->onRelease(); + +} + +void CImage::onSet(unsigned int key, const gchar* value) { + SPImage* object = this->spimage; + SPImage *image = SP_IMAGE (object); switch (key) { @@ -796,22 +817,25 @@ static void sp_image_set( SPObject *object, unsigned int key, const gchar *value break; #endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2) default: - if (((SPObjectClass *) (parent_class))->set) - ((SPObjectClass *) (parent_class))->set (object, key, value); + CItem::onSet(key, value); break; } sp_image_set_curve(image); //creates a curve at the image's boundary for snapping } -static void sp_image_update( SPObject *object, SPCtx *ctx, unsigned int flags ) +static void sp_image_set( SPObject *object, unsigned int key, const gchar *value ) { + ((SPImage*)object)->cimage->onSet(key, value); +} + +void CImage::onUpdate(SPCtx *ctx, unsigned int flags) { + SPImage* object = this->spimage; + SPImage *image = SP_IMAGE(object); SPDocument *doc = object->document; - if (((SPObjectClass *) (parent_class))->update) { - ((SPObjectClass *) (parent_class))->update (object, ctx, flags); - } + CItem::onUpdate(ctx, flags); if (flags & SP_IMAGE_HREF_MODIFIED_FLAG) { if (image->pixbuf) { @@ -1009,13 +1033,22 @@ static void sp_image_update( SPObject *object, SPCtx *ctx, unsigned int flags ) sp_image_update_canvas_image ((SPImage *) object); } -static void sp_image_modified( SPObject *object, unsigned int flags ) +static void sp_image_update( SPObject *object, SPCtx *ctx, unsigned int flags ) { + ((SPImage*)object)->cimage->onUpdate(ctx, flags); +} + +void CImage::onModified(unsigned int flags) { + SPImage* object = this->spimage; + SPImage *image = SP_IMAGE (object); - if (((SPObjectClass *) (parent_class))->modified) { - (* ((SPObjectClass *) (parent_class))->modified) (object, flags); - } + // CPPIFY: This doesn't make no sense. + // CObject::onModified is pure and CItem doesn't override this method. What was the idea behind these lines? +// if (((SPObjectClass *) (parent_class))->modified) { +// (* ((SPObjectClass *) (parent_class))->modified) (object, flags); +// } +// CItem::onModified(flags); if (flags & SP_OBJECT_STYLE_MODIFIED_FLAG) { for (SPItemView *v = image->display; v != NULL; v = v->next) { @@ -1025,8 +1058,14 @@ static void sp_image_modified( SPObject *object, unsigned int flags ) } } -static Inkscape::XML::Node *sp_image_write( SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags ) +static void sp_image_modified( SPObject *object, unsigned int flags ) { + ((SPImage*)object)->cimage->onModified(flags); +} + +Inkscape::XML::Node *CImage::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags ) { + SPImage* object = this->spimage; + SPImage *image = SP_IMAGE (object); if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { @@ -1056,27 +1095,37 @@ static Inkscape::XML::Node *sp_image_write( SPObject *object, Inkscape::XML::Doc } #endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2) - if (((SPObjectClass *) (parent_class))->write) { - ((SPObjectClass *) (parent_class))->write (object, xml_doc, repr, flags); - } + CItem::onWrite(xml_doc, repr, flags); return repr; } -static Geom::OptRect sp_image_bbox( SPItem const *item,Geom::Affine const &transform, SPItem::BBoxType /*type*/ ) +static Inkscape::XML::Node *sp_image_write( SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags ) { - SPImage const &image = *SP_IMAGE(item); - Geom::OptRect bbox; + return ((SPImage*)object)->cimage->onWrite(xml_doc, repr, flags); +} - if ((image.width.computed > 0.0) && (image.height.computed > 0.0)) { - bbox = Geom::Rect::from_xywh(image.x.computed, image.y.computed, image.width.computed, image.height.computed); - *bbox *= transform; - } - return bbox; +Geom::OptRect CImage::onBbox(Geom::Affine const &transform, SPItem::BBoxType type) { + SPImage* item = this->spimage; + + SPImage const &image = *SP_IMAGE(item); + Geom::OptRect bbox; + + if ((image.width.computed > 0.0) && (image.height.computed > 0.0)) { + bbox = Geom::Rect::from_xywh(image.x.computed, image.y.computed, image.width.computed, image.height.computed); + *bbox *= transform; + } + return bbox; } -static void sp_image_print( SPItem *item, SPPrintContext *ctx ) +static Geom::OptRect sp_image_bbox( SPItem const *item,Geom::Affine const &transform, SPItem::BBoxType type) { + return ((SPImage*)item)->cimage->onBbox(transform, type); +} + +void CImage::onPrint(SPPrintContext *ctx) { + SPImage* item = this->spimage; + SPImage *image = SP_IMAGE(item); if (image->pixbuf && (image->width.computed > 0.0) && (image->height.computed > 0.0) ) { @@ -1122,8 +1171,14 @@ static void sp_image_print( SPItem *item, SPPrintContext *ctx ) } } -static gchar *sp_image_description( SPItem *item ) +static void sp_image_print( SPItem *item, SPPrintContext *ctx ) { + ((SPImage*)item)->cimage->onPrint(ctx); +} + +gchar* CImage::onDescription() { + SPImage* item = this->spimage; + SPImage *image = SP_IMAGE(item); char *href_desc; if (image->href) { @@ -1145,8 +1200,14 @@ static gchar *sp_image_description( SPItem *item ) return ret; } -static Inkscape::DrawingItem *sp_image_show( SPItem *item, Inkscape::Drawing &drawing, unsigned int /*key*/, unsigned int /*flags*/ ) +static gchar *sp_image_description( SPItem *item ) { + return ((SPImage*)item)->cimage->onDescription(); +} + +Inkscape::DrawingItem* CImage::onShow(Inkscape::Drawing &drawing, unsigned int key, unsigned int flags) { + SPImage* item = this->spimage; + SPImage * image = SP_IMAGE(item); Inkscape::DrawingImage *ai = new Inkscape::DrawingImage(drawing); @@ -1155,6 +1216,11 @@ static Inkscape::DrawingItem *sp_image_show( SPItem *item, Inkscape::Drawing &dr return ai; } +static Inkscape::DrawingItem *sp_image_show( SPItem *item, Inkscape::Drawing &drawing, unsigned int key, unsigned int flags ) +{ + return ((SPImage*)item)->cimage->onShow(drawing, key, flags); +} + /* * utility function to try loading image from href * @@ -1279,8 +1345,9 @@ static void sp_image_update_canvas_image(SPImage *image) } } -static void sp_image_snappoints( SPItem const *item, std::vector &p, Inkscape::SnapPreferences const *snapprefs ) -{ +void CImage::onSnappoints(std::vector &p, Inkscape::SnapPreferences const *snapprefs) { + SPImage* item = this->spimage; + /* An image doesn't have any nodes to snap, but still we want to be able snap one image to another. Therefore we will create some snappoints at the corner, similar to a rect. If the image is rotated, then the snappoints will rotate with it. Again, just like a rect. @@ -1310,13 +1377,19 @@ static void sp_image_snappoints( SPItem const *item, std::vector &p, Inkscape::SnapPreferences const *snapprefs ) +{ + ((SPImage*)item)->cimage->onSnappoints(p, snapprefs); +} + /* * Initially we'll do: * Transform x, y, set x, y, clear translation */ -static Geom::Affine sp_image_set_transform( SPItem *item, Geom::Affine const &xform ) -{ +Geom::Affine CImage::onSetTransform(Geom::Affine const &xform) { + SPImage* item = this->spimage; + SPImage *image = SP_IMAGE(item); /* Calculate position in parent coords. */ @@ -1355,6 +1428,11 @@ static Geom::Affine sp_image_set_transform( SPItem *item, Geom::Affine const &xf return ret; } +static Geom::Affine sp_image_set_transform( SPItem *item, Geom::Affine const &xform ) +{ + return ((SPImage*)item)->cimage->onSetTransform(xform); +} + static GdkPixbuf *sp_image_repr_read_dataURI( const gchar * uri_data ) { GdkPixbuf * pixbuf = NULL; diff --git a/src/sp-image.h b/src/sp-image.h index c657d0a2f..c6d36e7de 100644 --- a/src/sp-image.h +++ b/src/sp-image.h @@ -22,6 +22,7 @@ class SPImage; class SPImageClass; +class CImage; /* SPImage */ @@ -32,7 +33,10 @@ class SPImageClass; #define SP_IMAGE_HREF_MODIFIED_FLAG SP_OBJECT_USER_MODIFIED_FLAG_A -struct SPImage : public SPItem { +class SPImage : public SPItem { +public: + CImage* cimage; + SVGLength x; SVGLength y; SVGLength width; @@ -65,6 +69,31 @@ struct SPImageClass { SPItemClass parent_class; }; + +class CImage : public CItem { +public: + CImage(SPImage* image); + virtual ~CImage(); + + virtual void onBuild(SPDocument *document, Inkscape::XML::Node *repr); + virtual void onRelease(); + virtual void onSet(unsigned int key, gchar const* value); + virtual void onUpdate(SPCtx *ctx, guint flags); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + virtual void onModified(unsigned int flags); + + virtual Geom::OptRect onBbox(Geom::Affine const &transform, SPItem::BBoxType type); + virtual void onPrint(SPPrintContext *ctx); + virtual gchar* onDescription(); + virtual Inkscape::DrawingItem* onShow(Inkscape::Drawing &drawing, unsigned int key, unsigned int flags); + virtual void onSnappoints(std::vector &p, Inkscape::SnapPreferences const *snapprefs); + virtual Geom::Affine onSetTransform(Geom::Affine const &transform); + +protected: + SPImage* spimage; +}; + + GType sp_image_get_type (void); /* Return duplicate of curve or NULL */ -- cgit v1.2.3 From c3603a6d13023cce77d405f4a660a7088a935179 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sun, 19 Aug 2012 23:43:28 +0200 Subject: Added "virtual pad" to SPText. (bzr r11608.1.26) --- src/sp-text.cpp | 180 +++++++++++++++++++++++++++++++++++++++++++------------- src/sp-text.h | 34 ++++++++++- 2 files changed, 171 insertions(+), 43 deletions(-) diff --git a/src/sp-text.cpp b/src/sp-text.cpp index 0b60c1960..d9c4df702 100644 --- a/src/sp-text.cpp +++ b/src/sp-text.cpp @@ -132,42 +132,63 @@ sp_text_class_init (SPTextClass *classname) item_class->print = sp_text_print; } +CText::CText(SPText* text) : CItem(text) { + this->sptext = text; +} + +CText::~CText() { +} + static void sp_text_init (SPText *text) { + text->ctext = new CText(text); + text->citem = text->ctext; + text->cobject = text->ctext; + new (&text->layout) Inkscape::Text::Layout; new (&text->attributes) TextTagAttributes; } -static void -sp_text_release (SPObject *object) -{ +void CText::onRelease() { + SPText* object = this->sptext; + SPText *text = SP_TEXT(object); text->attributes.~TextTagAttributes(); text->layout.~Layout(); - if (((SPObjectClass *) text_parent_class)->release) - ((SPObjectClass *) text_parent_class)->release(object); + CItem::onRelease(); } static void -sp_text_build (SPObject *object, SPDocument *doc, Inkscape::XML::Node *repr) +sp_text_release (SPObject *object) { + ((SPText*)object)->ctext->onRelease(); +} + +void CText::onBuild(SPDocument *doc, Inkscape::XML::Node *repr) { + SPText* object = this->sptext; + object->readAttr( "x" ); object->readAttr( "y" ); object->readAttr( "dx" ); object->readAttr( "dy" ); object->readAttr( "rotate" ); - if (((SPObjectClass *) text_parent_class)->build) - ((SPObjectClass *) text_parent_class)->build(object, doc, repr); + CItem::onBuild(doc, repr); object->readAttr( "sodipodi:linespacing" ); // has to happen after the styles are read } static void -sp_text_set(SPObject *object, unsigned key, gchar const *value) +sp_text_build (SPObject *object, SPDocument *doc, Inkscape::XML::Node *repr) { + ((SPText*)object)->ctext->onBuild(doc, repr); +} + +void CText::onSet(unsigned int key, const gchar* value) { + SPText* object = this->sptext; + SPText *text = SP_TEXT (object); if (text->attributes.readSingleAttribute(key, value)) { @@ -186,41 +207,56 @@ sp_text_set(SPObject *object, unsigned key, gchar const *value) object->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG | SP_TEXT_LAYOUT_MODIFIED_FLAG); break; default: - if (((SPObjectClass *) text_parent_class)->set) - ((SPObjectClass *) text_parent_class)->set (object, key, value); + CItem::onSet(key, value); break; } } } static void -sp_text_child_added (SPObject *object, Inkscape::XML::Node *rch, Inkscape::XML::Node *ref) +sp_text_set(SPObject *object, unsigned key, gchar const *value) { + ((SPText*)object)->ctext->onSet(key, value); +} + +void CText::onChildAdded(Inkscape::XML::Node *rch, Inkscape::XML::Node *ref) { + SPText* object = this->sptext; + SPText *text = SP_TEXT (object); - if (((SPObjectClass *) text_parent_class)->child_added) - ((SPObjectClass *) text_parent_class)->child_added (object, rch, ref); + CItem::onChildAdded(rch, ref); text->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG | SP_TEXT_CONTENT_MODIFIED_FLAG | SP_TEXT_LAYOUT_MODIFIED_FLAG); } static void -sp_text_remove_child (SPObject *object, Inkscape::XML::Node *rch) +sp_text_child_added (SPObject *object, Inkscape::XML::Node *rch, Inkscape::XML::Node *ref) { + ((SPText*)object)->ctext->onChildAdded(rch, ref); +} + +void CText::onRemoveChild(Inkscape::XML::Node *rch) { + SPText* object = this->sptext; + SPText *text = SP_TEXT (object); - if (((SPObjectClass *) text_parent_class)->remove_child) - ((SPObjectClass *) text_parent_class)->remove_child (object, rch); + CItem::onRemoveChild(rch); text->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG | SP_TEXT_CONTENT_MODIFIED_FLAG | SP_TEXT_LAYOUT_MODIFIED_FLAG); } -static void sp_text_update(SPObject *object, SPCtx *ctx, guint flags) +static void +sp_text_remove_child (SPObject *object, Inkscape::XML::Node *rch) { + ((SPText*)object)->ctext->onRemoveChild(rch); +} + +void CText::onUpdate(SPCtx *ctx, guint flags) { + SPText* object = this->sptext; + SPText *text = SP_TEXT (object); - if (((SPObjectClass *) text_parent_class)->update) - ((SPObjectClass *) text_parent_class)->update (object, ctx, flags); + CItem::onUpdate(ctx, flags); guint cflags = (flags & SP_OBJECT_MODIFIED_CASCADE); if (flags & SP_OBJECT_MODIFIED_FLAG) cflags |= SP_OBJECT_PARENT_MODIFIED_FLAG; @@ -262,11 +298,20 @@ static void sp_text_update(SPObject *object, SPCtx *ctx, guint flags) } } -static void sp_text_modified(SPObject *object, guint flags) +static void sp_text_update(SPObject *object, SPCtx *ctx, guint flags) { - if (((SPObjectClass *) text_parent_class)->modified) { - ((SPObjectClass *) text_parent_class)->modified (object, flags); - } + ((SPText*)object)->ctext->onUpdate(ctx, flags); +} + +void CText::onModified(guint flags) { + SPText* object = this->sptext; + + // CPPIFY: This doesn't make no sense. + // CObject::onModified is pure and CItem doesn't override this method. What was the idea behind these lines? +// if (((SPObjectClass *) text_parent_class)->modified) { +// ((SPObjectClass *) text_parent_class)->modified (object, flags); +// } +// CItem::onModified(flags); guint cflags = (flags & SP_OBJECT_MODIFIED_CASCADE); if (flags & SP_OBJECT_MODIFIED_FLAG) { @@ -305,8 +350,14 @@ static void sp_text_modified(SPObject *object, guint flags) } } -static Inkscape::XML::Node *sp_text_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +static void sp_text_modified(SPObject *object, guint flags) { + ((SPText*)object)->ctext->onModified(flags); +} + +Inkscape::XML::Node *CText::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPText* object = this->sptext; + SPText *text = SP_TEXT (object); if (flags & SP_OBJECT_WRITE_BUILD) { @@ -357,16 +408,19 @@ static Inkscape::XML::Node *sp_text_write(SPObject *object, Inkscape::XML::Docum text->getRepr()->setAttribute("sodipodi:linespacing", NULL); } - if (((SPObjectClass *) (text_parent_class))->write) { - ((SPObjectClass *) (text_parent_class))->write (object, xml_doc, repr, flags); - } + CItem::onWrite(xml_doc, repr, flags); return repr; } -static Geom::OptRect -sp_text_bbox(SPItem const *item, Geom::Affine const &transform, SPItem::BBoxType type) +static Inkscape::XML::Node *sp_text_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + return ((SPText*)object)->ctext->onWrite(xml_doc, repr, flags); +} + +Geom::OptRect CText::onBbox(Geom::Affine const &transform, SPItem::BBoxType type) { + SPText* item = this->sptext; + Geom::OptRect bbox = SP_TEXT(item)->layout.bounds(transform); // FIXME this code is incorrect @@ -377,10 +431,15 @@ sp_text_bbox(SPItem const *item, Geom::Affine const &transform, SPItem::BBoxType return bbox; } - -static Inkscape::DrawingItem * -sp_text_show(SPItem *item, Inkscape::Drawing &drawing, unsigned /* key*/, unsigned /*flags*/) +static Geom::OptRect +sp_text_bbox(SPItem const *item, Geom::Affine const &transform, SPItem::BBoxType type) { + return ((SPText*)item)->ctext->onBbox(transform, type); +} + +Inkscape::DrawingItem* CText::onShow(Inkscape::Drawing &drawing, unsigned key, unsigned flags) { + SPText* item = this->sptext; + SPText *group = (SPText *) item; Inkscape::DrawingGroup *flowed = new Inkscape::DrawingGroup(drawing); @@ -393,15 +452,29 @@ sp_text_show(SPItem *item, Inkscape::Drawing &drawing, unsigned /* key*/, unsign return flowed; } +static Inkscape::DrawingItem * +sp_text_show(SPItem *item, Inkscape::Drawing &drawing, unsigned key, unsigned flags) +{ + return ((SPText*)item)->ctext->onShow(drawing, key, flags); +} + +void CText::onHide(unsigned int key) { + // CPPIFY: This doesn't make no sense. + // CItem::onHide is pure and CLPEItem doesn't override it. What was the idea behind these lines? +// if (((SPItemClass *) text_parent_class)->hide) +// ((SPItemClass *) text_parent_class)->hide (item, key); +// CItem::onHide(key); +} + static void sp_text_hide(SPItem *item, unsigned key) { - if (((SPItemClass *) text_parent_class)->hide) - ((SPItemClass *) text_parent_class)->hide (item, key); + ((SPText*)item)->ctext->onHide(key); } -static char * sp_text_description(SPItem *item) -{ +gchar* CText::onDescription() { + SPText* item = this->sptext; + SPText *text = reinterpret_cast(item); SPStyle *style = text->style; @@ -433,8 +506,14 @@ static char * sp_text_description(SPItem *item) return ret; } -static void sp_text_snappoints(SPItem const *item, std::vector &p, Inkscape::SnapPreferences const *snapprefs) +static char * sp_text_description(SPItem *item) { + return ((SPText*)item)->ctext->onDescription(); +} + +void CText::onSnappoints(std::vector &p, Inkscape::SnapPreferences const *snapprefs) { + SPText* item = this->sptext; + if (snapprefs->isTargetSnappable(Inkscape::SNAPTARGET_TEXT_BASELINE)) { // Choose a point on the baseline for snapping from or to, with the horizontal position // of this point depending on the text alignment (left vs. right) @@ -448,9 +527,14 @@ static void sp_text_snappoints(SPItem const *item, std::vector &p, Inkscape::SnapPreferences const *snapprefs) { + ((SPText*)item)->ctext->onSnappoints(p, snapprefs); +} + +Geom::Affine CText::onSetTransform(Geom::Affine const &xform) { + SPText* item = this->sptext; + SPText *text = SP_TEXT(item); // we cannot optimize textpath because changing its fontsize will break its match to the path @@ -497,9 +581,15 @@ sp_text_set_transform (SPItem *item, Geom::Affine const &xform) return ret; } -static void -sp_text_print (SPItem *item, SPPrintContext *ctx) +static Geom::Affine +sp_text_set_transform (SPItem *item, Geom::Affine const &xform) { + return ((SPText*)item)->ctext->onSetTransform(xform); +} + +void CText::onPrint(SPPrintContext *ctx) { + SPText* item = this->sptext; + SPText *group = SP_TEXT (item); Geom::OptRect pbox, bbox, dbox; @@ -511,6 +601,12 @@ sp_text_print (SPItem *item, SPPrintContext *ctx) group->layout.print(ctx,pbox,dbox,bbox,ctm); } +static void +sp_text_print (SPItem *item, SPPrintContext *ctx) +{ + ((SPText*)item)->ctext->onPrint(ctx); +} + /* * Member functions */ diff --git a/src/sp-text.h b/src/sp-text.h index 457f11f06..fb0ffdeac 100644 --- a/src/sp-text.h +++ b/src/sp-text.h @@ -32,10 +32,14 @@ #define SP_TEXT_CONTENT_MODIFIED_FLAG SP_OBJECT_USER_MODIFIED_FLAG_A #define SP_TEXT_LAYOUT_MODIFIED_FLAG SP_OBJECT_USER_MODIFIED_FLAG_A +class CText; /* SPText */ -struct SPText : public SPItem { +class SPText : public SPItem { +public: + CText* ctext; + /** Converts the text object to its component curves */ SPCurve *getNormalizedBpath() const {return layout.convertToCurves();} @@ -72,6 +76,34 @@ struct SPTextClass { SPItemClass parent_class; }; + +class CText : public CItem { +public: + CText(SPText* text); + virtual ~CText(); + + virtual void onBuild(SPDocument* doc, Inkscape::XML::Node* repr); + virtual void onRelease(); + virtual void onChildAdded(Inkscape::XML::Node* child, Inkscape::XML::Node* ref); + virtual void onRemoveChild(Inkscape::XML::Node* child); + virtual void onSet(unsigned int key, const gchar* value); + virtual void onUpdate(SPCtx* ctx, unsigned int flags); + virtual void onModified(unsigned int flags); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document* doc, Inkscape::XML::Node* repr, guint flags); + + virtual Geom::OptRect onBbox(Geom::Affine const &transform, SPItem::BBoxType type); + virtual void onPrint(SPPrintContext *ctx); + virtual gchar* onDescription(); + virtual Inkscape::DrawingItem* onShow(Inkscape::Drawing &drawing, unsigned int key, unsigned int flags); + virtual void onHide(unsigned int key); + virtual void onSnappoints(std::vector &p, Inkscape::SnapPreferences const *snapprefs); + virtual Geom::Affine onSetTransform(Geom::Affine const &transform); + +protected: + SPText* sptext; +}; + + GType sp_text_get_type(); #endif -- cgit v1.2.3 From 217bc5844bedf86a84c099f051e51d6dc8a1966f Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Mon, 20 Aug 2012 00:21:00 +0200 Subject: Added "virtual pad" to SPTextPath and SPTSpan. (bzr r11608.1.27) --- src/sp-textpath.h | 24 ++++++- src/sp-tspan.cpp | 211 +++++++++++++++++++++++++++++++++++++++--------------- src/sp-tspan.h | 28 +++++++- 3 files changed, 204 insertions(+), 59 deletions(-) diff --git a/src/sp-textpath.h b/src/sp-textpath.h index d79f4d346..c609e5eb7 100644 --- a/src/sp-textpath.h +++ b/src/sp-textpath.h @@ -15,8 +15,12 @@ class Path; #define SP_IS_TEXTPATH(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), SP_TYPE_TEXTPATH)) #define SP_IS_TEXTPATH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SP_TYPE_TEXTPATH)) +class CTextPath; + +class SPTextPath : public SPItem { +public: + CTextPath* ctextpath; -struct SPTextPath : public SPItem { TextTagAttributes attributes; SVGLength startOffset; @@ -29,6 +33,24 @@ struct SPTextPathClass { SPItemClass parent_class; }; + +class CTextPath : public CItem { +public: + CTextPath(SPTextPath* textpath); + virtual ~CTextPath(); + + virtual void onBuild(SPDocument* doc, Inkscape::XML::Node* repr); + virtual void onRelease(); + virtual void onSet(unsigned int key, const gchar* value); + virtual void onUpdate(SPCtx* ctx, unsigned int flags); + virtual void onModified(unsigned int flags); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document* doc, Inkscape::XML::Node* repr, guint flags); + +protected: + SPTextPath* sptextpath; +}; + + GType sp_textpath_get_type(); #define SP_IS_TEXT_TEXTPATH(obj) (SP_IS_TEXT(obj) && obj->firstChild() && SP_IS_TEXTPATH(obj->firstChild())) diff --git a/src/sp-tspan.cpp b/src/sp-tspan.cpp index 1b1ae3d52..3a83cb70d 100644 --- a/src/sp-tspan.cpp +++ b/src/sp-tspan.cpp @@ -109,28 +109,42 @@ sp_tspan_class_init(SPTSpanClass *classname) item_class->description = sp_tspan_description; } +CTSpan::CTSpan(SPTSpan* span) : CItem(span) { + this->sptspan = span; +} + +CTSpan::~CTSpan() { +} + static void sp_tspan_init(SPTSpan *tspan) { + tspan->ctspan = new CTSpan(tspan); + tspan->citem = tspan->ctspan; + tspan->cobject = tspan->ctspan; + tspan->role = SP_TSPAN_ROLE_UNSPECIFIED; new (&tspan->attributes) TextTagAttributes; } -static void -sp_tspan_release(SPObject *object) -{ +void CTSpan::onRelease() { + SPTSpan* object = this->sptspan; + SPTSpan *tspan = SP_TSPAN(object); tspan->attributes.~TextTagAttributes(); - if (((SPObjectClass *) tspan_parent_class)->release) - ((SPObjectClass *) tspan_parent_class)->release(object); + CItem::onRelease(); } static void -sp_tspan_build(SPObject *object, SPDocument *doc, Inkscape::XML::Node *repr) +sp_tspan_release(SPObject *object) { - //SPTSpan *tspan = SP_TSPAN(object); + ((SPTSpan*)object)->ctspan->onRelease(); +} + +void CTSpan::onBuild(SPDocument *doc, Inkscape::XML::Node *repr) { + SPTSpan* object = this->sptspan; object->readAttr( "x" ); object->readAttr( "y" ); @@ -139,13 +153,18 @@ sp_tspan_build(SPObject *object, SPDocument *doc, Inkscape::XML::Node *repr) object->readAttr( "rotate" ); object->readAttr( "sodipodi:role" ); - if (((SPObjectClass *) tspan_parent_class)->build) - ((SPObjectClass *) tspan_parent_class)->build(object, doc, repr); + CItem::onBuild(doc, repr); } static void -sp_tspan_set(SPObject *object, unsigned key, gchar const *value) +sp_tspan_build(SPObject *object, SPDocument *doc, Inkscape::XML::Node *repr) { + ((SPTSpan*)object)->ctspan->onBuild(doc, repr); +} + +void CTSpan::onSet(unsigned int key, const gchar* value) { + SPTSpan* object = this->sptspan; + SPTSpan *tspan = SP_TSPAN(object); if (tspan->attributes.readSingleAttribute(key, value)) { @@ -160,18 +179,22 @@ sp_tspan_set(SPObject *object, unsigned key, gchar const *value) } break; default: - if (((SPObjectClass *) tspan_parent_class)->set) - (((SPObjectClass *) tspan_parent_class)->set)(object, key, value); + CItem::onSet(key, value); break; } } } -static void sp_tspan_update(SPObject *object, SPCtx *ctx, guint flags) +static void +sp_tspan_set(SPObject *object, unsigned key, gchar const *value) { - if (((SPObjectClass *) tspan_parent_class)->update) { - ((SPObjectClass *) tspan_parent_class)->update(object, ctx, flags); - } + ((SPTSpan*)object)->ctspan->onSet(key, value); +} + +void CTSpan::onUpdate(SPCtx *ctx, guint flags) { + SPTSpan* object = this->sptspan; + + CItem::onUpdate(ctx, flags); if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; @@ -185,11 +208,20 @@ static void sp_tspan_update(SPObject *object, SPCtx *ctx, guint flags) } } -static void sp_tspan_modified(SPObject *object, unsigned flags) +static void sp_tspan_update(SPObject *object, SPCtx *ctx, guint flags) { - if (((SPObjectClass *) tspan_parent_class)->modified) { - ((SPObjectClass *) tspan_parent_class)->modified(object, flags); - } + ((SPTSpan*)object)->ctspan->onUpdate(ctx, flags); +} + +void CTSpan::onModified(unsigned int flags) { + SPTSpan* object = this->sptspan; + + // CPPIFY: This doesn't make no sense. + // CObject::onModified is pure and CItem doesn't override this method. What was the idea behind these lines? +// if (((SPObjectClass *) tspan_parent_class)->modified) { +// ((SPObjectClass *) tspan_parent_class)->modified(object, flags); +// } +// CItem::onModified(flags); if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; @@ -203,9 +235,14 @@ static void sp_tspan_modified(SPObject *object, unsigned flags) } } -static Geom::OptRect -sp_tspan_bbox(SPItem const *item, Geom::Affine const &transform, SPItem::BBoxType type) +static void sp_tspan_modified(SPObject *object, unsigned flags) { + ((SPTSpan*)object)->ctspan->onModified(flags); +} + +Geom::OptRect CTSpan::onBbox(Geom::Affine const &transform, SPItem::BBoxType type) { + SPTSpan* item = this->sptspan; + Geom::OptRect bbox; // find out the ancestor text which holds our layout SPObject const *parent_text = item; @@ -229,9 +266,15 @@ sp_tspan_bbox(SPItem const *item, Geom::Affine const &transform, SPItem::BBoxTyp return bbox; } -static Inkscape::XML::Node * -sp_tspan_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +static Geom::OptRect +sp_tspan_bbox(SPItem const *item, Geom::Affine const &transform, SPItem::BBoxType type) { + return ((SPTSpan*)item)->ctspan->onBbox(transform, type); +} + +Inkscape::XML::Node* CTSpan::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPTSpan* object = this->sptspan; + SPTSpan *tspan = SP_TSPAN(object); if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { @@ -272,21 +315,31 @@ sp_tspan_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML } } - if (((SPObjectClass *) tspan_parent_class)->write) { - ((SPObjectClass *) tspan_parent_class)->write(object, xml_doc, repr, flags); - } + CItem::onWrite(xml_doc, repr, flags); return repr; } -static char * -sp_tspan_description(SPItem *item) +static Inkscape::XML::Node * +sp_tspan_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { - g_return_val_if_fail(SP_IS_TSPAN(item), NULL); + return ((SPTSpan*)object)->ctspan->onWrite(xml_doc, repr, flags); +} + +gchar* CTSpan::onDescription() { + SPTSpan* item = this->sptspan; + + g_return_val_if_fail(SP_IS_TSPAN(item), NULL); return g_strdup(_("Text span")); } +static char * +sp_tspan_description(SPItem *item) +{ + return ((SPTSpan*)item)->ctspan->onDescription(); +} + /*##################################################### # SPTEXTPATH @@ -350,9 +403,21 @@ static void sp_textpath_class_init(SPTextPathClass *classname) sp_object_class->write = sp_textpath_write; } + +CTextPath::CTextPath(SPTextPath* textpath) : CItem(textpath) { + this->sptextpath = textpath; +} + +CTextPath::~CTextPath() { +} + static void sp_textpath_init(SPTextPath *textpath) { + textpath->ctextpath = new CTextPath(textpath); + textpath->citem = textpath->ctextpath; + textpath->cobject = textpath->ctextpath; + new (&textpath->attributes) TextTagAttributes; textpath->startOffset._set = false; @@ -371,9 +436,9 @@ sp_textpath_finalize(GObject *obj) delete textpath->sourcePath; } -static void -sp_textpath_release(SPObject *object) -{ +void CTextPath::onRelease() { + SPTextPath* object = this->sptextpath; + SPTextPath *textpath = SP_TEXTPATH(object); textpath->attributes.~TextTagAttributes(); @@ -381,12 +446,18 @@ sp_textpath_release(SPObject *object) if (textpath->originalPath) delete textpath->originalPath; textpath->originalPath = NULL; - if (((SPObjectClass *) textpath_parent_class)->release) - ((SPObjectClass *) textpath_parent_class)->release(object); + CItem::onRelease(); } -static void sp_textpath_build(SPObject *object, SPDocument *doc, Inkscape::XML::Node *repr) +static void +sp_textpath_release(SPObject *object) { + ((SPTextPath*)object)->ctextpath->onRelease(); +} + +void CTextPath::onBuild(SPDocument *doc, Inkscape::XML::Node *repr) { + SPTextPath* object = this->sptextpath; + object->readAttr( "x" ); object->readAttr( "y" ); object->readAttr( "dx" ); @@ -410,14 +481,17 @@ static void sp_textpath_build(SPObject *object, SPDocument *doc, Inkscape::XML:: repr->addChild(rch, NULL); } - if (((SPObjectClass *) textpath_parent_class)->build) { - ((SPObjectClass *) textpath_parent_class)->build(object, doc, repr); - } + CItem::onBuild(doc, repr); } -static void -sp_textpath_set(SPObject *object, unsigned key, gchar const *value) +static void sp_textpath_build(SPObject *object, SPDocument *doc, Inkscape::XML::Node *repr) { + ((SPTextPath*)object)->ctextpath->onBuild(doc, repr); +} + +void CTextPath::onSet(unsigned int key, const gchar* value) { + SPTextPath* object = this->sptextpath; + SPTextPath *textpath = SP_TEXTPATH(object); if (textpath->attributes.readSingleAttribute(key, value)) { @@ -432,15 +506,21 @@ sp_textpath_set(SPObject *object, unsigned key, gchar const *value) object->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG); break; default: - if (((SPObjectClass *) textpath_parent_class)->set) - (((SPObjectClass *) textpath_parent_class)->set)(object, key, value); + CItem::onSet(key, value); break; } } } -static void sp_textpath_update(SPObject *object, SPCtx *ctx, guint flags) +static void +sp_textpath_set(SPObject *object, unsigned key, gchar const *value) { + ((SPTextPath*)object)->ctextpath->onSet(key, value); +} + +void CTextPath::onUpdate(SPCtx *ctx, guint flags) { + SPTextPath* object = this->sptextpath; + SPTextPath *textpath = SP_TEXTPATH(object); textpath->isUpdating = true; @@ -449,9 +529,7 @@ static void sp_textpath_update(SPObject *object, SPCtx *ctx, guint flags) } textpath->isUpdating = false; - if (((SPObjectClass *) textpath_parent_class)->update) { - ((SPObjectClass *) textpath_parent_class)->update(object, ctx, flags); - } + CItem::onUpdate(ctx, flags); if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; @@ -465,6 +543,11 @@ static void sp_textpath_update(SPObject *object, SPCtx *ctx, guint flags) } } +static void sp_textpath_update(SPObject *object, SPCtx *ctx, guint flags) +{ + ((SPTextPath*)object)->ctextpath->onUpdate(ctx, flags); +} + void refresh_textpath_source(SPTextPath* tp) { @@ -486,11 +569,15 @@ void refresh_textpath_source(SPTextPath* tp) } } -static void sp_textpath_modified(SPObject *object, unsigned flags) -{ - if (((SPObjectClass *) textpath_parent_class)->modified) { - ((SPObjectClass *) textpath_parent_class)->modified(object, flags); - } +void CTextPath::onModified(unsigned int flags) { + SPTextPath* object = this->sptextpath; + + // CPPIFY: This doesn't make no sense. + // CObject::onModified is pure and CItem doesn't override this method. What was the idea behind these lines? +// if (((SPObjectClass *) textpath_parent_class)->modified) { +// ((SPObjectClass *) textpath_parent_class)->modified(object, flags); +// } +// CItem::onModified(flags); if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; @@ -503,9 +590,15 @@ static void sp_textpath_modified(SPObject *object, unsigned flags) } } } -static Inkscape::XML::Node * -sp_textpath_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) + +static void sp_textpath_modified(SPObject *object, unsigned flags) { + ((SPTextPath*)object)->ctextpath->onModified(flags); +} + +Inkscape::XML::Node* CTextPath::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPTextPath* object = this->sptextpath; + SPTextPath *textpath = SP_TEXTPATH(object); if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { @@ -559,13 +652,17 @@ sp_textpath_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape:: } } - if (((SPObjectClass *) textpath_parent_class)->write) { - ((SPObjectClass *) textpath_parent_class)->write(object, xml_doc, repr, flags); - } + CItem::onWrite(xml_doc, repr, flags); return repr; } +static Inkscape::XML::Node * +sp_textpath_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +{ + return ((SPTextPath*)object)->ctextpath->onWrite(xml_doc, repr, flags); +} + SPItem * sp_textpath_get_path_item(SPTextPath *tp) diff --git a/src/sp-tspan.h b/src/sp-tspan.h index 3672fd3b5..79df014bd 100644 --- a/src/sp-tspan.h +++ b/src/sp-tspan.h @@ -23,7 +23,12 @@ enum { SP_TSPAN_ROLE_LINE }; -struct SPTSpan : public SPItem { +class CTSpan; + +class SPTSpan : public SPItem { +public: + CTSpan* ctspan; + guint role : 2; TextTagAttributes attributes; }; @@ -32,6 +37,27 @@ struct SPTSpanClass { SPItemClass parent_class; }; + +class CTSpan : public CItem { +public: + CTSpan(SPTSpan* span); + virtual ~CTSpan(); + + virtual void onBuild(SPDocument* doc, Inkscape::XML::Node* repr); + virtual void onRelease(); + virtual void onSet(unsigned int key, const gchar* value); + virtual void onUpdate(SPCtx* ctx, unsigned int flags); + virtual void onModified(unsigned int flags); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document* doc, Inkscape::XML::Node* repr, guint flags); + + virtual Geom::OptRect onBbox(Geom::Affine const &transform, SPItem::BBoxType type); + virtual gchar* onDescription(); + +protected: + SPTSpan* sptspan; +}; + + GType sp_tspan_get_type(); -- cgit v1.2.3 From 1283ff19f8baabbea8fae03faddce5e27acbb110 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Mon, 20 Aug 2012 00:38:14 +0200 Subject: Added "virtual pad" to SPTRef. (bzr r11608.1.28) --- src/sp-tref.cpp | 131 +++++++++++++++++++++++++++++++++++++------------------- src/sp-tref.h | 28 +++++++++++- 2 files changed, 113 insertions(+), 46 deletions(-) diff --git a/src/sp-tref.cpp b/src/sp-tref.cpp index 938b7c7cc..0c7e52d60 100644 --- a/src/sp-tref.cpp +++ b/src/sp-tref.cpp @@ -115,9 +115,20 @@ sp_tref_class_init(SPTRefClass *tref_class) item_class->description = sp_tref_description; } +CTRef::CTRef(SPTRef* tref) : CItem(tref) { + this->sptref = tref; +} + +CTRef::~CTRef() { +} + static void sp_tref_init(SPTRef *tref) { + tref->ctref = new CTRef(tref); + tref->citem = tref->ctref; + tref->cobject = tref->ctref; + new (&tref->attributes) TextTagAttributes; tref->href = NULL; @@ -129,7 +140,6 @@ sp_tref_init(SPTRef *tref) tref->uriOriginalRef->changedSignal().connect(sigc::bind(sigc::ptr_fun(sp_tref_href_changed), tref)); } - static void sp_tref_finalize(GObject *obj) { @@ -141,16 +151,10 @@ sp_tref_finalize(GObject *obj) tref->_changed_connection.~connection(); } +void CTRef::onBuild(SPDocument *document, Inkscape::XML::Node *repr) { + SPTRef* object = this->sptref; -/** - * Reads the Inkscape::XML::Node, and initializes SPTRef variables. - */ -static void -sp_tref_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) -{ - if (((SPObjectClass *) tref_parent_class)->build) { - ((SPObjectClass *) tref_parent_class)->build(object, document, repr); - } + CItem::onBuild(document, repr); object->readAttr( "xlink:href" ); object->readAttr( "x" ); @@ -161,11 +165,17 @@ sp_tref_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) } /** - * Drops any allocated memory. + * Reads the Inkscape::XML::Node, and initializes SPTRef variables. */ static void -sp_tref_release(SPObject *object) +sp_tref_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) { + ((SPTRef*)object)->ctref->onBuild(document, repr); +} + +void CTRef::onRelease() { + SPTRef* object = this->sptref; + SPTRef *tref = SP_TREF(object); tref->attributes.~TextTagAttributes(); @@ -178,16 +188,21 @@ sp_tref_release(SPObject *object) tref->uriOriginalRef->detach(); - if (((SPObjectClass *) tref_parent_class)->release) - ((SPObjectClass *) tref_parent_class)->release(object); + CItem::onRelease(); } /** - * Sets a specific value in the SPTRef. + * Drops any allocated memory. */ static void -sp_tref_set(SPObject *object, unsigned int key, gchar const *value) +sp_tref_release(SPObject *object) { + ((SPTRef*)object)->ctref->onRelease(); +} + +void CTRef::onSet(unsigned int key, const gchar* value) { + SPTRef* object = this->sptref; + debug("0x%p %s(%u): '%s'",object, sp_attribute_name(key),key,value ? value : ""); @@ -225,27 +240,27 @@ sp_tref_set(SPObject *object, unsigned int key, gchar const *value) } } else { // default - if (((SPObjectClass *) tref_parent_class)->set) { - ((SPObjectClass *) tref_parent_class)->set(object, key, value); - } + CItem::onSet(key, value); } - - } /** - * Receives update notifications. Code based on sp_use_update and sp_tspan_update. + * Sets a specific value in the SPTRef. */ static void -sp_tref_update(SPObject *object, SPCtx *ctx, guint flags) +sp_tref_set(SPObject *object, unsigned int key, gchar const *value) { + ((SPTRef*)object)->ctref->onSet(key, value); +} + +void CTRef::onUpdate(SPCtx *ctx, guint flags) { + SPTRef* object = this->sptref; + debug("0x%p",object); SPTRef *tref = SP_TREF(object); - if (((SPObjectClass *) tref_parent_class)->update) { - ((SPObjectClass *) tref_parent_class)->update(object, ctx, flags); - } + CItem::onUpdate(ctx, flags); if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; @@ -259,13 +274,20 @@ sp_tref_update(SPObject *object, SPCtx *ctx, guint flags) child->updateDisplay(ctx, flags); } } - - } +/** + * Receives update notifications. Code based on sp_use_update and sp_tspan_update. + */ static void -sp_tref_modified(SPObject *object, guint flags) +sp_tref_update(SPObject *object, SPCtx *ctx, guint flags) { + ((SPTRef*)object)->ctref->onUpdate(ctx, flags); +} + +void CTRef::onModified(unsigned int flags) { + SPTRef* object = this->sptref; + SPTRef *tref_obj = SP_TREF(object); if (flags & SP_OBJECT_MODIFIED_FLAG) { @@ -284,12 +306,15 @@ sp_tref_modified(SPObject *object, guint flags) } } -/** - * Writes its settings to an incoming repr object, if any. - */ -static Inkscape::XML::Node * -sp_tref_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +static void +sp_tref_modified(SPObject *object, guint flags) { + ((SPTRef*)object)->ctref->onModified(flags); +} + +Inkscape::XML::Node* CTRef::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPTRef* object = this->sptref; + debug("0x%p",object); SPTRef *tref = SP_TREF(object); @@ -307,19 +332,23 @@ sp_tref_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML: g_free(uri_string); } - if (((SPObjectClass *) tref_parent_class)->write) { - ((SPObjectClass *) tref_parent_class)->write(object, xml_doc, repr, flags); - } + CItem::onWrite(xml_doc, repr, flags); return repr; } -/* - * The code for this function is swiped from the tspan bbox code, since tref should work pretty much the same way +/** + * Writes its settings to an incoming repr object, if any. */ -static Geom::OptRect -sp_tref_bbox(SPItem const *item, Geom::Affine const &transform, SPItem::BBoxType type) +static Inkscape::XML::Node * +sp_tref_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + return ((SPTRef*)object)->ctref->onWrite(xml_doc, repr, flags); +} + +Geom::OptRect CTRef::onBbox(Geom::Affine const &transform, SPItem::BBoxType type) { + SPTRef* item = this->sptref; + Geom::OptRect bbox; // find out the ancestor text which holds our layout SPObject const *parent_text = item; @@ -343,10 +372,18 @@ sp_tref_bbox(SPItem const *item, Geom::Affine const &transform, SPItem::BBoxType return bbox; } - -static gchar * -sp_tref_description(SPItem *item) +/* + * The code for this function is swiped from the tspan bbox code, since tref should work pretty much the same way + */ +static Geom::OptRect +sp_tref_bbox(SPItem const *item, Geom::Affine const &transform, SPItem::BBoxType type) { + return ((SPTRef*)item)->ctref->onBbox(transform, type); +} + +gchar* CTRef::onDescription() { + SPTRef* item = this->sptref; + SPTRef *tref = SP_TREF(item); if (tref) @@ -373,6 +410,12 @@ sp_tref_description(SPItem *item) return g_strdup(_("Orphaned cloned character data")); } +static gchar * +sp_tref_description(SPItem *item) +{ + return ((SPTRef*)item)->ctref->onDescription(); +} + /* For the sigc::connection changes (i.e. when the object being refered to changes) */ static void diff --git a/src/sp-tref.h b/src/sp-tref.h index cc80e48a8..448cb5e6e 100644 --- a/src/sp-tref.h +++ b/src/sp-tref.h @@ -29,9 +29,12 @@ #define SP_IS_TREF_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SP_TYPE_TREF)) class SPTRef; -class SPTRef; +class CTRef; + +class SPTRef : public SPItem { +public: + CTRef* ctref; -struct SPTRef : public SPItem { // Attributes that are used in the same way they would be in a tspan TextTagAttributes attributes; @@ -57,6 +60,27 @@ struct SPTRefClass { SPItemClass parent_class; }; + +class CTRef : public CItem { +public: + CTRef(SPTRef* tref); + virtual ~CTRef(); + + virtual void onBuild(SPDocument* doc, Inkscape::XML::Node* repr); + virtual void onRelease(); + virtual void onSet(unsigned int key, const gchar* value); + virtual void onUpdate(SPCtx* ctx, unsigned int flags); + virtual void onModified(unsigned int flags); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document* doc, Inkscape::XML::Node* repr, guint flags); + + virtual Geom::OptRect onBbox(Geom::Affine const &transform, SPItem::BBoxType type); + virtual gchar* onDescription(); + +protected: + SPTRef* sptref; +}; + + GType sp_tref_get_type(); void sp_tref_update_text(SPTRef *tref); -- cgit v1.2.3 From dc816bdcc37174e67992520342babb5ade6a9081 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Mon, 20 Aug 2012 00:54:02 +0200 Subject: Added "virtual pad" to SPUse. (bzr r11608.1.29) --- src/sp-use.cpp | 170 +++++++++++++++++++++++++++++++++++++++------------------ src/sp-use.h | 31 ++++++++++- 2 files changed, 146 insertions(+), 55 deletions(-) diff --git a/src/sp-use.cpp b/src/sp-use.cpp index e39f560c3..eb089612b 100644 --- a/src/sp-use.cpp +++ b/src/sp-use.cpp @@ -113,9 +113,20 @@ sp_use_class_init(SPUseClass *classname) item_class->snappoints = sp_use_snappoints; } +CUse::CUse(SPUse* use) : CItem(use) { + this->spuse = use; +} + +CUse::~CUse() { +} + static void sp_use_init(SPUse *use) { + use->cuse = new CUse(use); + use->citem = use->cuse; + use->cobject = use->cuse; + use->x.unset(); use->y.unset(); use->width.unset(SVGLength::PERCENT, 1.0, 1.0); @@ -152,12 +163,10 @@ sp_use_finalize(GObject *obj) use->_transformed_connection.~connection(); } -static void -sp_use_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) -{ - if (((SPObjectClass *) parent_class)->build) { - (* ((SPObjectClass *) parent_class)->build)(object, document, repr); - } +void CUse::onBuild(SPDocument *document, Inkscape::XML::Node *repr) { + SPUse* object = this->spuse; + + CItem::onBuild(document, repr); object->readAttr( "x" ); object->readAttr( "y" ); @@ -171,9 +180,14 @@ sp_use_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) } static void -sp_use_release(SPObject *object) +sp_use_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) { - SPUse *use = SP_USE(object); + ((SPUse*)object)->cuse->onBuild(document, repr); +} + +void CUse::onRelease() { + SPUse *use = this->spuse; + SPUse* object = use; if (use->child) { object->detach(use->child); @@ -189,15 +203,18 @@ sp_use_release(SPObject *object) use->ref->detach(); - if (((SPObjectClass *) parent_class)->release) { - ((SPObjectClass *) parent_class)->release(object); - } + CItem::onRelease(); } static void -sp_use_set(SPObject *object, unsigned key, gchar const *value) +sp_use_release(SPObject *object) { - SPUse *use = SP_USE(object); + ((SPUse*)object)->cuse->onRelease(); +} + +void CUse::onSet(unsigned int key, const gchar* value) { + SPUse *use = this->spuse; + SPUse* object = use; switch (key) { case SP_ATTR_X: @@ -242,25 +259,25 @@ sp_use_set(SPObject *object, unsigned key, gchar const *value) } default: - if (((SPObjectClass *) parent_class)->set) { - ((SPObjectClass *) parent_class)->set(object, key, value); - } + CItem::onSet(key, value); break; } } -static Inkscape::XML::Node * -sp_use_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +static void +sp_use_set(SPObject *object, unsigned key, gchar const *value) { - SPUse *use = SP_USE(object); + ((SPUse*)object)->cuse->onSet(key, value); +} + +Inkscape::XML::Node* CUse::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPUse *use = this->spuse; if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { repr = xml_doc->createElement("svg:use"); } - if (((SPObjectClass *) (parent_class))->write) { - ((SPObjectClass *) (parent_class))->write(object, xml_doc, repr, flags); - } + CItem::onWrite(xml_doc, repr, flags); sp_repr_set_svg_double(repr, "x", use->x.computed); sp_repr_set_svg_double(repr, "y", use->y.computed); @@ -276,10 +293,15 @@ sp_use_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML:: return repr; } -static Geom::OptRect -sp_use_bbox(SPItem const *item, Geom::Affine const &transform, SPItem::BBoxType type) +static Inkscape::XML::Node * +sp_use_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { - SPUse const *use = SP_USE(item); + return ((SPUse*)object)->cuse->onWrite(xml_doc, repr, flags); +} + +Geom::OptRect CUse::onBbox(Geom::Affine const &transform, SPItem::BBoxType bboxtype) { + SPUse const *use = this->spuse; + Geom::OptRect bbox; if (use->child && SP_IS_ITEM(use->child)) { @@ -288,16 +310,21 @@ sp_use_bbox(SPItem const *item, Geom::Affine const &transform, SPItem::BBoxType * Geom::Translate(use->x.computed, use->y.computed) * transform ); - bbox = child->bounds(type, ct); + bbox = child->bounds(bboxtype, ct); } return bbox; } -static void -sp_use_print(SPItem *item, SPPrintContext *ctx) +static Geom::OptRect +sp_use_bbox(SPItem const *item, Geom::Affine const &transform, SPItem::BBoxType type) { + return ((SPUse*)item)->cuse->onBbox(transform, type); +} + +void CUse::onPrint(SPPrintContext* ctx) { + SPUse *use = this->spuse; + bool translated = false; - SPUse *use = SP_USE(item); if ((use->x._set && use->x.computed != 0) || (use->y._set && use->y.computed != 0)) { Geom::Affine tp(Geom::Translate(use->x.computed, use->y.computed)); @@ -314,10 +341,14 @@ sp_use_print(SPItem *item, SPPrintContext *ctx) } } -static gchar * -sp_use_description(SPItem *item) +static void +sp_use_print(SPItem *item, SPPrintContext *ctx) { - SPUse *use = SP_USE(item); + ((SPUse*)item)->cuse->onPrint(ctx); +} + +gchar* CUse::onDescription() { + SPUse *use = this->spuse; char *ret; if (use->child) { @@ -341,10 +372,15 @@ sp_use_description(SPItem *item) } } -static Inkscape::DrawingItem * -sp_use_show(SPItem *item, Inkscape::Drawing &drawing, unsigned key, unsigned flags) +static gchar * +sp_use_description(SPItem *item) { - SPUse *use = SP_USE(item); + return ((SPUse*)item)->cuse->onDescription(); +} + +Inkscape::DrawingItem* CUse::onShow(Inkscape::Drawing &drawing, unsigned int key, unsigned int flags) { + SPUse *use = this->spuse; + SPUse* item = use; Inkscape::DrawingGroup *ai = new Inkscape::DrawingGroup(drawing); ai->setPickChildren(false); @@ -363,18 +399,26 @@ sp_use_show(SPItem *item, Inkscape::Drawing &drawing, unsigned key, unsigned fla return ai; } -static void -sp_use_hide(SPItem *item, unsigned key) +static Inkscape::DrawingItem * +sp_use_show(SPItem *item, Inkscape::Drawing &drawing, unsigned key, unsigned flags) { - SPUse *use = SP_USE(item); + return ((SPUse*)item)->cuse->onShow(drawing, key, flags); +} + +void CUse::onHide(unsigned int key) { + SPUse *use = this->spuse; if (use->child) { SP_ITEM(use->child)->invoke_hide(key); } - if (((SPItemClass *) parent_class)->hide) { - ((SPItemClass *) parent_class)->hide(item, key); - } + CItem::onHide(key); +} + +static void +sp_use_hide(SPItem *item, unsigned key) +{ + ((SPUse*)item)->cuse->onHide(key); } /** @@ -569,16 +613,15 @@ sp_use_delete_self(SPObject */*deleted*/, SPUse *self) } } -static void -sp_use_update(SPObject *object, SPCtx *ctx, unsigned flags) -{ +void CUse::onUpdate(SPCtx *ctx, unsigned flags) { + SPUse* object = this->spuse; + SPItem *item = SP_ITEM(object); SPUse *use = SP_USE(object); SPItemCtx *ictx = (SPItemCtx *) ctx; SPItemCtx cctx = *ictx; - if (((SPObjectClass *) (parent_class))->update) - ((SPObjectClass *) (parent_class))->update(object, ctx, flags); + CItem::onUpdate(ctx, flags); if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; @@ -633,8 +676,14 @@ sp_use_update(SPObject *object, SPCtx *ctx, unsigned flags) } static void -sp_use_modified(SPObject *object, guint flags) +sp_use_update(SPObject *object, SPCtx *ctx, unsigned flags) { + ((SPUse*)object)->cuse->onUpdate(ctx, flags); +} + +void CUse::onModified(unsigned int flags) { + SPUse* object = this->spuse; + SPUse *use_obj = SP_USE(object); if (flags & SP_OBJECT_MODIFIED_FLAG) { @@ -659,6 +708,12 @@ sp_use_modified(SPObject *object, guint flags) } } +static void +sp_use_modified(SPObject *object, guint flags) +{ + return ((SPUse*)object)->cuse->onModified(flags); +} + SPItem *sp_use_unlink(SPUse *use) { if (!use) { @@ -752,9 +807,9 @@ SPItem *sp_use_get_original(SPUse *use) return ref; } -static void -sp_use_snappoints(SPItem const *item, std::vector &p, Inkscape::SnapPreferences const *snapprefs) -{ +void CUse::onSnappoints(std::vector &p, Inkscape::SnapPreferences const *snapprefs) { + SPUse* item = this->spuse; + g_assert (item != NULL); g_assert (SP_IS_ITEM(item)); g_assert (SP_IS_USE(item)); @@ -764,10 +819,17 @@ sp_use_snappoints(SPItem const *item, std::vector if (!root) return; - SPItemClass const &item_class = *(SPItemClass const *) G_OBJECT_GET_CLASS(root); - if (item_class.snappoints) { - item_class.snappoints(root, p, snapprefs); - } +// SPItemClass const &item_class = *(SPItemClass const *) G_OBJECT_GET_CLASS(root); +// if (item_class.snappoints) { +// item_class.snappoints(root, p, snapprefs); +// } + root->citem->onSnappoints(p, snapprefs); +} + +static void +sp_use_snappoints(SPItem const *item, std::vector &p, Inkscape::SnapPreferences const *snapprefs) +{ + ((SPUse*)item)->cuse->onSnappoints(p, snapprefs); } diff --git a/src/sp-use.h b/src/sp-use.h index 399f30a4c..013c03228 100644 --- a/src/sp-use.h +++ b/src/sp-use.h @@ -28,8 +28,12 @@ class SPUse; class SPUseClass; class SPUseReference; +class CUse; + +class SPUse : public SPItem { +public: + CUse* cuse; -struct SPUse : public SPItem { // item built from the original's repr (the visible clone) // relative to the SPUse itself, it is treated as a child, similar to a grouped item relative to its group SPObject *child; @@ -56,6 +60,31 @@ struct SPUseClass { SPItemClass parent_class; }; + +class CUse : public CItem { +public: + CUse(SPUse* use); + virtual ~CUse(); + + virtual void onBuild(SPDocument* doc, Inkscape::XML::Node* repr); + virtual void onRelease(); + virtual void onSet(unsigned key, gchar const *value); + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + virtual void onUpdate(SPCtx* ctx, unsigned int flags); + virtual void onModified(unsigned int flags); + + virtual Geom::OptRect onBbox(Geom::Affine const &transform, SPItem::BBoxType bboxtype); + virtual gchar* onDescription(); + virtual void onPrint(SPPrintContext *ctx); + virtual Inkscape::DrawingItem* onShow(Inkscape::Drawing &drawing, unsigned int key, unsigned int flags); + virtual void onHide(unsigned int key); + virtual void onSnappoints(std::vector &p, Inkscape::SnapPreferences const *snapprefs); + +protected: + SPUse* spuse; +}; + + GType sp_use_get_type (void); SPItem *sp_use_unlink (SPUse *use); -- cgit v1.2.3 From 3e79e62687153095acc0c2e7dc6865905d33a827 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Mon, 20 Aug 2012 08:29:15 +0200 Subject: As all subclasses of SPItem now have "virtual pads" with correct inheritance, all virtual function calls in SPItem were converted to C++ style. (bzr r11608.1.30) --- src/sp-item.cpp | 120 +++++++++++++++++++++++--------------------------------- 1 file changed, 50 insertions(+), 70 deletions(-) diff --git a/src/sp-item.cpp b/src/sp-item.cpp index 20b6b3ef3..e6cc563f6 100644 --- a/src/sp-item.cpp +++ b/src/sp-item.cpp @@ -777,10 +777,10 @@ Geom::OptRect CItem::onBbox(Geom::Affine const &transform, SPItem::BBoxType type Geom::OptRect SPItem::geometricBounds(Geom::Affine const &transform) const { Geom::OptRect bbox; + // call the subclass method - if (((SPItemClass *) G_OBJECT_GET_CLASS(this))->bbox) { - bbox = ((SPItemClass *) G_OBJECT_GET_CLASS(this))->bbox(this, transform, SPItem::GEOMETRIC_BBOX); - } + bbox = this->citem->onBbox(transform, SPItem::GEOMETRIC_BBOX); + return bbox; } @@ -797,10 +797,8 @@ Geom::OptRect SPItem::visualBounds(Geom::Affine const &transform) const Geom::OptRect bbox; if ( style && style->filter.href && style->getFilter() && SP_IS_FILTER(style->getFilter())) { - // call the subclass method - if (((SPItemClass *) G_OBJECT_GET_CLASS(this))->bbox) { - bbox = ((SPItemClass *) G_OBJECT_GET_CLASS(this))->bbox(this, Geom::identity(), SPItem::VISUAL_BBOX); - } + // call the subclass method + bbox = this->citem->onBbox(Geom::identity(), SPItem::VISUAL_BBOX); SPFilter *filter = SP_FILTER(style->getFilter()); // default filer area per the SVG spec: @@ -843,10 +841,8 @@ Geom::OptRect SPItem::visualBounds(Geom::Affine const &transform) const bbox = Geom::OptRect(minp, maxp); *bbox *= transform; } else { - // call the subclass method - if (((SPItemClass *) G_OBJECT_GET_CLASS(this))->bbox) { - bbox = ((SPItemClass *) G_OBJECT_GET_CLASS(this))->bbox(this, transform, SPItem::VISUAL_BBOX); - } + // call the subclass method + bbox = this->citem->onBbox(transform, SPItem::VISUAL_BBOX); } if (clip_ref->getObject()) { bbox.intersectWith(SP_CLIPPATH(clip_ref->getObject())->geometricBounds(transform)); @@ -962,10 +958,7 @@ void SPItem::sp_item_private_snappoints(SPItem const * /*item*/, std::vector &p, Inkscape::SnapPreferences const *snapprefs) const { // Get the snappoints of the item - SPItemClass const &item_class = *(SPItemClass const *) G_OBJECT_GET_CLASS(this); - if (item_class.snappoints) { - item_class.snappoints(this, p, snapprefs); - } + this->citem->onSnappoints(p, snapprefs); // Get the snappoints at the item's center if (snapprefs != NULL && snapprefs->isTargetSnappable(Inkscape::SNAPTARGET_ROTATION_CENTER)) { @@ -1008,17 +1001,13 @@ void CItem::onPrint(SPPrintContext* ctx) { void SPItem::invoke_print(SPPrintContext *ctx) { if ( !isHidden() ) { - if ( reinterpret_cast(G_OBJECT_GET_CLASS(this))->print ) { - if (!transform.isIdentity() - || style->opacity.value != SP_SCALE24_MAX) - { - sp_print_bind(ctx, transform, SP_SCALE24_TO_FLOAT(style->opacity.value)); - reinterpret_cast(G_OBJECT_GET_CLASS(this))->print(this, ctx); - sp_print_release(ctx); - } else { - reinterpret_cast(G_OBJECT_GET_CLASS(this))->print(this, ctx); - } - } + if (!transform.isIdentity() || style->opacity.value != SP_SCALE24_MAX) { + sp_print_bind(ctx, transform, SP_SCALE24_TO_FLOAT(style->opacity.value)); + this->citem->onPrint(ctx); + sp_print_release(ctx); + } else { + this->citem->onPrint(ctx); + } } } @@ -1040,34 +1029,29 @@ gchar *SPItem::sp_item_private_description(SPItem *item) */ gchar *SPItem::description() { - if (((SPItemClass *) G_OBJECT_GET_CLASS(this))->description) { - gchar *s = ((SPItemClass *) G_OBJECT_GET_CLASS(this))->description(this); - if (s && clip_ref->getObject()) { - gchar *snew = g_strdup_printf (_("%s; clipped"), s); - g_free (s); - s = snew; - } - if (s && mask_ref->getObject()) { - gchar *snew = g_strdup_printf (_("%s; masked"), s); - g_free (s); - s = snew; - } - if ( style && style->filter.href && style->filter.href->getObject() ) { - const gchar *label = style->filter.href->getObject()->label(); - gchar *snew = 0; - if (label) { - snew = g_strdup_printf (_("%s; filtered (%s)"), s, _(label)); - } else { - snew = g_strdup_printf (_("%s; filtered"), s); - } - g_free (s); - s = snew; - } - return s; - } - - g_assert_not_reached(); - return NULL; + gchar* s = this->citem->onDescription(); + if (s && clip_ref->getObject()) { + gchar *snew = g_strdup_printf (_("%s; clipped"), s); + g_free (s); + s = snew; + } + if (s && mask_ref->getObject()) { + gchar *snew = g_strdup_printf (_("%s; masked"), s); + g_free (s); + s = snew; + } + if ( style && style->filter.href && style->filter.href->getObject() ) { + const gchar *label = style->filter.href->getObject()->label(); + gchar *snew = 0; + if (label) { + snew = g_strdup_printf (_("%s; filtered (%s)"), s, _(label)); + } else { + snew = g_strdup_printf (_("%s; filtered"), s); + } + g_free (s); + s = snew; + } + return s; } /** @@ -1077,9 +1061,11 @@ gchar *SPItem::description() int SPItem::ifilt() { int retval=0; - if (((SPItemClass *) G_OBJECT_GET_CLASS(this))->description) { - if ( style && style->filter.href && style->filter.href->getObject() ) { retval=1; } - } + + if ( style && style->filter.href && style->filter.href->getObject() ) { + retval=1; + } + return retval; } @@ -1106,9 +1092,8 @@ Inkscape::DrawingItem* CItem::onShow(Inkscape::Drawing &drawing, unsigned int ke Inkscape::DrawingItem *SPItem::invoke_show(Inkscape::Drawing &drawing, unsigned key, unsigned flags) { Inkscape::DrawingItem *ai = NULL; - if (((SPItemClass *) G_OBJECT_GET_CLASS(this))->show) { - ai = ((SPItemClass *) G_OBJECT_GET_CLASS(this))->show(this, drawing, key, flags); - } + + ai = this->citem->onShow(drawing, key, flags); if (ai != NULL) { Geom::OptRect item_bbox = geometricBounds(); @@ -1164,9 +1149,7 @@ void CItem::onHide(unsigned int key) { void SPItem::invoke_hide(unsigned key) { - if (((SPItemClass *) G_OBJECT_GET_CLASS(this))->hide) { - ((SPItemClass *) G_OBJECT_GET_CLASS(this))->hide(this, key); - } + this->citem->onHide(key); SPItemView *ref = NULL; SPItemView *v = display; @@ -1461,13 +1444,14 @@ void SPItem::doWriteTransform(Inkscape::XML::Node *repr, Geom::Affine const &tra gint preserve = prefs->getBool("/options/preservetransform/value", 0); Geom::Affine transform_attr (transform); if ( // run the object's set_transform (i.e. embed transform) only if: - ((SPItemClass *) G_OBJECT_GET_CLASS(this))->set_transform && // it does have a set_transform method !preserve && // user did not chose to preserve all transforms !clip_ref->getObject() && // the object does not have a clippath !mask_ref->getObject() && // the object does not have a mask !(!transform.isTranslation() && style && style->getFilter()) // the object does not have a filter, or the transform is translation (which is supposed to not affect filters) ) { - transform_attr = ((SPItemClass *) G_OBJECT_GET_CLASS(this))->set_transform(this, transform); + + transform_attr = this->citem->onSetTransform(transform); + if (freeze_stroke_width) { freeze_stroke_width_recursive(false); } @@ -1505,11 +1489,7 @@ gint CItem::onEvent(SPEvent* event) { gint SPItem::emitEvent(SPEvent &event) { - if (((SPItemClass *) G_OBJECT_GET_CLASS(this))->event) { - return ((SPItemClass *) G_OBJECT_GET_CLASS(this))->event(this, &event); - } - - return FALSE; + return this->citem->onEvent(&event); } /** -- cgit v1.2.3 From fa1b664180baa1ec99b8d5b9ec7c8b21c7203c9f Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Mon, 20 Aug 2012 23:48:42 +0200 Subject: Added "virtual pad" to SPTitle. (bzr r11608.1.31) --- src/sp-title.cpp | 33 +++++++++++++++++++++++---------- src/sp-title.h | 18 +++++++++++++++++- 2 files changed, 40 insertions(+), 11 deletions(-) diff --git a/src/sp-title.cpp b/src/sp-title.cpp index ddeccede2..c7739823c 100644 --- a/src/sp-title.cpp +++ b/src/sp-title.cpp @@ -52,23 +52,36 @@ sp_title_class_init(SPTitleClass *klass) sp_object_class->write = sp_title_write; } +CTitle::CTitle(SPTitle* title) : CObject(title) { + this->sptitle = title; +} + +CTitle::~CTitle() { +} + static void -sp_title_init(SPTitle */*desc*/) +sp_title_init(SPTitle *desc) { + desc->ctitle = new CTitle(desc); + desc->cobject = desc->ctitle; } -/** - * Writes it's settings to an incoming repr object, if any. - */ -static Inkscape::XML::Node *sp_title_write(SPObject *object, Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) -{ +Inkscape::XML::Node* CTitle::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPTitle* object = this->sptitle; + if (!repr) { - repr = object->getRepr()->duplicate(doc); + repr = object->getRepr()->duplicate(xml_doc); } - if (((SPObjectClass *) title_parent_class)->write) { - ((SPObjectClass *) title_parent_class)->write(object, doc, repr, flags); - } + CObject::onWrite(xml_doc, repr, flags); return repr; } + +/** + * Writes it's settings to an incoming repr object, if any. + */ +static Inkscape::XML::Node *sp_title_write(SPObject *object, Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) +{ + return ((SPTitle*)object)->ctitle->onWrite(doc, repr, flags); +} diff --git a/src/sp-title.h b/src/sp-title.h index a5f0a2fea..a048b6a55 100644 --- a/src/sp-title.h +++ b/src/sp-title.h @@ -19,14 +19,30 @@ class SPTitle; class SPTitleClass; +class CTitle; -struct SPTitle : public SPObject { +class SPTitle : public SPObject { +public: + CTitle* ctitle; }; struct SPTitleClass { SPObjectClass parent_class; }; + +class CTitle : public CObject { +public: + CTitle(SPTitle* title); + virtual ~CTitle(); + + virtual Inkscape::XML::Node* onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + +protected: + SPTitle* sptitle; +}; + + GType sp_title_get_type (void); #endif -- cgit v1.2.3 From 791de080f5a2377d4801b276b1f3bba797a24caa Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Mon, 20 Aug 2012 23:58:18 +0200 Subject: Added "virtual pad" to SPStyleElem. (bzr r11608.1.32) --- src/sp-style-elem.cpp | 69 ++++++++++++++++++++++++++++++++++++--------------- src/sp-style-elem.h | 20 +++++++++++++++ 2 files changed, 69 insertions(+), 20 deletions(-) diff --git a/src/sp-style-elem.cpp b/src/sp-style-elem.cpp index 2e14ae5ff..71eb87b8c 100644 --- a/src/sp-style-elem.cpp +++ b/src/sp-style-elem.cpp @@ -51,16 +51,26 @@ sp_style_elem_class_init(SPStyleElemClass *klass) klass->write = sp_style_elem_write; } +CStyleElem::CStyleElem(SPStyleElem* se) : CObject(se) { + this->spstyleelem = se; +} + +CStyleElem::~CStyleElem() { +} + static void sp_style_elem_init(SPStyleElem *style_elem) { + style_elem->cstyleelem = new CStyleElem(style_elem); + style_elem->cobject = style_elem->cstyleelem; + media_set_all(style_elem->media); style_elem->is_css = false; } -static void -sp_style_elem_set(SPObject *object, unsigned const key, gchar const *const value) -{ +void CStyleElem::onSet(unsigned int key, const gchar* value) { + SPStyleElem* object = this->spstyleelem; + g_return_if_fail(object); SPStyleElem &style_elem = *SP_STYLE_ELEM(object); @@ -89,14 +99,18 @@ sp_style_elem_set(SPObject *object, unsigned const key, gchar const *const value /* title is ignored. */ default: { - if (parent_class->set) { - parent_class->set(object, key, value); - } + CObject::onSet(key, value); break; } } } +static void +sp_style_elem_set(SPObject *object, unsigned const key, gchar const *const value) +{ + ((SPStyleElem*)object)->cstyleelem->onSet(key, value); +} + static void child_add_rm_cb(Inkscape::XML::Node *, Inkscape::XML::Node *, Inkscape::XML::Node *, void *const data) @@ -119,9 +133,9 @@ child_order_changed_cb(Inkscape::XML::Node *, Inkscape::XML::Node *, sp_style_elem_read_content(static_cast(data)); } -static Inkscape::XML::Node * -sp_style_elem_write(SPObject *const object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint const flags) -{ +Inkscape::XML::Node* CStyleElem::onWrite(Inkscape::XML::Document* xml_doc, Inkscape::XML::Node* repr, guint flags) { + SPStyleElem* object = this->spstyleelem; + if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { repr = xml_doc->createElement("svg:style"); } @@ -138,12 +152,17 @@ sp_style_elem_write(SPObject *const object, Inkscape::XML::Document *xml_doc, In } /* todo: media */ - if (((SPObjectClass *) parent_class)->write) - ((SPObjectClass *) parent_class)->write(object, xml_doc, repr, flags); + CObject::onWrite(xml_doc, repr, flags); return repr; } +static Inkscape::XML::Node * +sp_style_elem_write(SPObject *const object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint const flags) +{ + return ((SPStyleElem*)object)->cstyleelem->onWrite(xml_doc, repr, flags); +} + /** Returns the concatenation of the content of the text children of the specified object. */ static GString * @@ -297,9 +316,9 @@ property_cb(CRDocHandler *const a_handler, g_return_if_fail(append_status == CR_OK); } -static void -sp_style_elem_read_content(SPObject *const object) -{ +void CStyleElem::onReadContent() { + SPStyleElem* object = this->spstyleelem; + SPStyleElem &style_elem = *SP_STYLE_ELEM(object); /* fixme: If there's more than one + + + + +image/svg+xml + + + +Andy Fitzsimon + + + + +Andrew Michael Fitzsimon + + + + +Fitzsimon IT Consulting Pty Ltd + + +http://andy.fitzsimon.com.au +2006 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/share/branding/sodipodi.svg b/share/branding/sodipodi.svg new file mode 100644 index 000000000..139cc6ee5 --- /dev/null +++ b/share/branding/sodipodi.svg @@ -0,0 +1,121 @@ + + +]> + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/share/branding/tux.svg b/share/branding/tux.svg new file mode 100644 index 000000000..e3155ebfd --- /dev/null +++ b/share/branding/tux.svg @@ -0,0 +1,175 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/share/clipart/Makefile.am b/share/clipart/Makefile.am deleted file mode 100644 index 8e9a88159..000000000 --- a/share/clipart/Makefile.am +++ /dev/null @@ -1,12 +0,0 @@ - -clipartdir = $(datadir)/inkscape/clipart - -clipart_DATA = \ - README \ - inkscape.logo.svg \ - orav.svg \ - tux.svg \ - draw-freely.svg \ - draw-freely.ru.svg - -EXTRA_DIST = $(clipart_DATA) diff --git a/share/clipart/README b/share/clipart/README deleted file mode 100644 index 862b5503e..000000000 --- a/share/clipart/README +++ /dev/null @@ -1,17 +0,0 @@ -This directory is for the official Inkscape-related clipart: -Inkscape logo, banners, promotional graphics, etc. - -This is not for general-purpose SVG clipart. For that, there are -several excellent sources: - -http://openclipart.org has thousands of public domain clipart images -in SVG - -http://commons.wikimedia.org/wiki/Category:SVG has thousands of free -encyclopedic images in SVG, many of them usable as clipart (maps, -flags, diagrams, coats of arms, etc.) - - - - - diff --git a/share/clipart/draw-freely.ru.svg b/share/clipart/draw-freely.ru.svg deleted file mode 100644 index 61e98a9f7..000000000 --- a/share/clipart/draw-freely.ru.svg +++ /dev/null @@ -1,82 +0,0 @@ - - - - - - - - - image/svg+xml - - - - - - - - - diff --git a/share/clipart/draw-freely.svg b/share/clipart/draw-freely.svg deleted file mode 100644 index bcf2fb16e..000000000 --- a/share/clipart/draw-freely.svg +++ /dev/null @@ -1,82 +0,0 @@ - - - - - - - - - image/svg+xml - - - - - - - - - diff --git a/share/clipart/inkscape.logo.svg b/share/clipart/inkscape.logo.svg deleted file mode 100644 index 4c1ef03ac..000000000 --- a/share/clipart/inkscape.logo.svg +++ /dev/null @@ -1,9 +0,0 @@ - - - - - diff --git a/share/clipart/orav.svg b/share/clipart/orav.svg deleted file mode 100644 index 139cc6ee5..000000000 --- a/share/clipart/orav.svg +++ /dev/null @@ -1,121 +0,0 @@ - - -]> - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/share/clipart/tux.svg b/share/clipart/tux.svg deleted file mode 100644 index e3155ebfd..000000000 --- a/share/clipart/tux.svg +++ /dev/null @@ -1,175 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/share/icons/Makefile.am b/share/icons/Makefile.am index 0dfb1acd7..6053cd71c 100644 --- a/share/icons/Makefile.am +++ b/share/icons/Makefile.am @@ -43,7 +43,6 @@ pixmaps = \ icons_DATA = \ $(pixmaps) \ - inkscape.svg \ \ icons.svg \ tango_icons.svg \ diff --git a/share/icons/inkscape.svg b/share/icons/inkscape.svg deleted file mode 100644 index 121bc3aef..000000000 --- a/share/icons/inkscape.svg +++ /dev/null @@ -1,221 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -image/svg+xml - - - -Andy Fitzsimon - - - - -Andrew Michael Fitzsimon - - - - -Fitzsimon IT Consulting Pty Ltd - - -http://andy.fitzsimon.com.au -2006 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- cgit v1.2.3 From 3aefb49cf7bd949c1dcb13090dd9ada121d7c74a Mon Sep 17 00:00:00 2001 From: Christoffer Holmstedt Date: Thu, 18 Jul 2013 13:21:06 +0200 Subject: Added my name to the AUTHORS file. (bzr r12426) --- AUTHORS | 1 + 1 file changed, 1 insertion(+) diff --git a/AUTHORS b/AUTHORS index bf39fb680..916b73af6 100644 --- a/AUTHORS +++ b/AUTHORS @@ -68,6 +68,7 @@ Jos Hirth Hannes Hochreiner Thomas Holder Joel Holdsworth +Christoffer Holmstedt Alan Horkan Karl Ove Hufthammer Richard Hughes -- cgit v1.2.3 From ce25410db81c6a22a6b841efdb4790f7f19319ec Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Thu, 18 Jul 2013 10:39:48 -0400 Subject: Ported "ui/dialog/clonetiler.*". (bzr r12380.1.23) --- src/ui/dialog/clonetiler.cpp | 86 +++++++++++++++++++++++++++----------------- src/ui/dialog/clonetiler.h | 20 +++++++++-- 2 files changed, 72 insertions(+), 34 deletions(-) diff --git a/src/ui/dialog/clonetiler.cpp b/src/ui/dialog/clonetiler.cpp index 00bb6f0e2..d270afc3f 100644 --- a/src/ui/dialog/clonetiler.cpp +++ b/src/ui/dialog/clonetiler.cpp @@ -34,8 +34,8 @@ #include "document.h" #include "document-undo.h" #include "filter-chemistry.h" -#include "helper/unit-menu.h" -#include "helper/units.h" +#include "ui/widget/unit-menu.h" +#include "util/units.h" #include "helper/window.h" #include "inkscape.h" #include "interface.h" @@ -1092,35 +1092,38 @@ CloneTiler::CloneTiler (void) : g_object_set_data (G_OBJECT(dlg), "widthheight", (gpointer) hb); // unitmenu - GtkWidget *u = sp_unit_selector_new (SP_UNIT_ABSOLUTE | SP_UNIT_DEVICE); - //sp_unit_selector_set_unit (SP_UNIT_SELECTOR(u), sp_desktop_namedview(SP_ACTIVE_DESKTOP)->doc_units); + unit_menu = new Inkscape::UI::Widget::UnitMenu(); + unit_menu->setUnitType(Inkscape::Util::UNIT_TYPE_LINEAR); + unit_menu->setUnit(sp_desktop_namedview(SP_ACTIVE_DESKTOP)->doc_units->abbr); + unitChangedConn = unit_menu->signal_changed().connect(sigc::mem_fun(*this, &CloneTiler::clonetiler_unit_changed)); { // Width spinbutton #if WITH_GTKMM_3_0 - Glib::RefPtr a = Gtk::Adjustment::create(0.0, -1e6, 1e6, 1.0, 10.0, 0); + fill_width = Gtk::Adjustment::create(0.0, -1e6, 1e6, 1.0, 10.0, 0); #else - Gtk::Adjustment *a = new Gtk::Adjustment (0.0, -1e6, 1e6, 1.0, 10.0, 0); + fill_width = new Gtk::Adjustment (0.0, -1e6, 1e6, 1.0, 10.0, 0); #endif - sp_unit_selector_add_adjustment (SP_UNIT_SELECTOR (u), GTK_ADJUSTMENT (a->gobj())); double value = prefs->getDouble(prefs_path + "fillwidth", 50.0); - SPUnit const &unit = *sp_unit_selector_get_unit(SP_UNIT_SELECTOR(u)); - gdouble const units = sp_pixels_get_units (value, unit); - a->set_value (units); + Inkscape::Util::Unit const unit = unit_menu->getUnit(); + Inkscape::Util::UnitTable unit_table; + Inkscape::Util::Unit const px = unit_table.getUnit("px"); + gdouble const units = Inkscape::Util::Quantity::convert(value, &px, &unit); + fill_width->set_value (units); #if WITH_GTKMM_3_0 - Inkscape::UI::Widget::SpinButton *e = new Inkscape::UI::Widget::SpinButton(a, 1.0, 2); + Inkscape::UI::Widget::SpinButton *e = new Inkscape::UI::Widget::SpinButton(fill_width, 1.0, 2); #else - Inkscape::UI::Widget::SpinButton *e = new Inkscape::UI::Widget::SpinButton (*a, 1.0, 2); + Inkscape::UI::Widget::SpinButton *e = new Inkscape::UI::Widget::SpinButton (*fill_width, 1.0, 2); #endif e->set_tooltip_text (_("Width of the rectangle to be filled")); e->set_width_chars (7); e->set_digits (4); gtk_box_pack_start (GTK_BOX (hb), GTK_WIDGET(e->gobj()), TRUE, TRUE, 0); // TODO: C++ification - g_signal_connect(G_OBJECT(a->gobj()), "value_changed", - G_CALLBACK(clonetiler_fill_width_changed), u); + g_signal_connect(G_OBJECT(fill_width->gobj()), "value_changed", + G_CALLBACK(clonetiler_fill_width_changed), unit_menu); } { GtkWidget *l = gtk_label_new (""); @@ -1132,32 +1135,33 @@ CloneTiler::CloneTiler (void) : { // Height spinbutton #if WITH_GTKMM_3_0 - Glib::RefPtr a = Gtk::Adjustment::create(0.0, -1e6, 1e6, 1.0, 10.0, 0); + fill_height = Gtk::Adjustment::create(0.0, -1e6, 1e6, 1.0, 10.0, 0); #else - Gtk::Adjustment *a = new Gtk::Adjustment (0.0, -1e6, 1e6, 1.0, 10.0, 0); + fill_height = new Gtk::Adjustment (0.0, -1e6, 1e6, 1.0, 10.0, 0); #endif - sp_unit_selector_add_adjustment (SP_UNIT_SELECTOR (u), GTK_ADJUSTMENT (a->gobj())); double value = prefs->getDouble(prefs_path + "fillheight", 50.0); - SPUnit const &unit = *sp_unit_selector_get_unit(SP_UNIT_SELECTOR(u)); - gdouble const units = sp_pixels_get_units (value, unit); - a->set_value (units); + Inkscape::Util::Unit const unit = unit_menu->getUnit(); + Inkscape::Util::UnitTable unit_table; + Inkscape::Util::Unit const px = unit_table.getUnit("px"); + gdouble const units = Inkscape::Util::Quantity::convert(value, &px, &unit); + fill_height->set_value (units); #if WITH_GTKMM_3_0 - Inkscape::UI::Widget::SpinButton *e = new Inkscape::UI::Widget::SpinButton(a, 1.0, 2); + Inkscape::UI::Widget::SpinButton *e = new Inkscape::UI::Widget::SpinButton(fill_height, 1.0, 2); #else - Inkscape::UI::Widget::SpinButton *e = new Inkscape::UI::Widget::SpinButton (*a, 1.0, 2); + Inkscape::UI::Widget::SpinButton *e = new Inkscape::UI::Widget::SpinButton (*fill_height, 1.0, 2); #endif e->set_tooltip_text (_("Height of the rectangle to be filled")); e->set_width_chars (7); e->set_digits (4); gtk_box_pack_start (GTK_BOX (hb), GTK_WIDGET(e->gobj()), TRUE, TRUE, 0); // TODO: C++ification - g_signal_connect(G_OBJECT(a->gobj()), "value_changed", - G_CALLBACK(clonetiler_fill_height_changed), u); + g_signal_connect(G_OBJECT(fill_height->gobj()), "value_changed", + G_CALLBACK(clonetiler_fill_height_changed), unit_menu); } - gtk_box_pack_start (GTK_BOX (hb), u, TRUE, TRUE, 0); + gtk_box_pack_start (GTK_BOX (hb), (GtkWidget*) unit_menu->gobj(), TRUE, TRUE, 0); clonetiler_table_attach (table, hb, 0.0, 2, 2); } @@ -2944,26 +2948,45 @@ void CloneTiler::clonetiler_switch_to_fill(GtkToggleButton * /*tb*/, GtkWidget * -void CloneTiler::clonetiler_fill_width_changed(GtkAdjustment *adj, GtkWidget *u) +void CloneTiler::clonetiler_fill_width_changed(GtkAdjustment *adj, Inkscape::UI::Widget::UnitMenu *u) { gdouble const raw_dist = gtk_adjustment_get_value (adj); - SPUnit const &unit = *sp_unit_selector_get_unit(SP_UNIT_SELECTOR(u)); - gdouble const pixels = sp_units_get_pixels (raw_dist, unit); + Inkscape::Util::Unit const unit = u->getUnit(); + Inkscape::Util::UnitTable unit_table; + Inkscape::Util::Unit const px = unit_table.getUnit("px"); + gdouble const pixels = Inkscape::Util::Quantity::convert(raw_dist, &unit, &px); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); prefs->setDouble(prefs_path + "fillwidth", pixels); } -void CloneTiler::clonetiler_fill_height_changed(GtkAdjustment *adj, GtkWidget *u) +void CloneTiler::clonetiler_fill_height_changed(GtkAdjustment *adj, Inkscape::UI::Widget::UnitMenu *u) { gdouble const raw_dist = gtk_adjustment_get_value (adj); - SPUnit const &unit = *sp_unit_selector_get_unit(SP_UNIT_SELECTOR(u)); - gdouble const pixels = sp_units_get_pixels (raw_dist, unit); + Inkscape::Util::Unit const unit = u->getUnit(); + Inkscape::Util::UnitTable unit_table; + Inkscape::Util::Unit const px = unit_table.getUnit("px"); + gdouble const pixels = Inkscape::Util::Quantity::convert(raw_dist, &unit, &px); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); prefs->setDouble(prefs_path + "fillheight", pixels); } +void CloneTiler::clonetiler_unit_changed() +{ + Inkscape::Preferences *prefs = Inkscape::Preferences::get(); + gdouble width_pixels = prefs->getDouble(prefs_path + "fillwidth"); + gdouble height_pixels = prefs->getDouble(prefs_path + "fillheight"); + + Inkscape::Util::Unit unit = unit_menu->getUnit(); + Inkscape::Util::UnitTable unit_table; + Inkscape::Util::Unit px = unit_table.getUnit("px"); + + gdouble width_value = Inkscape::Util::Quantity::convert(width_pixels, &px, &unit); + gdouble height_value = Inkscape::Util::Quantity::convert(height_pixels, &px, &unit); + gtk_adjustment_set_value(fill_width->gobj(), width_value); + gtk_adjustment_set_value(fill_height->gobj(), height_value); +} void CloneTiler::clonetiler_do_pick_toggled(GtkToggleButton *tb, GtkWidget *dlg) { @@ -2977,7 +3000,6 @@ void CloneTiler::clonetiler_do_pick_toggled(GtkToggleButton *tb, GtkWidget *dlg) } } - } } } diff --git a/src/ui/dialog/clonetiler.h b/src/ui/dialog/clonetiler.h index 7ec30cfaa..e2a0240ee 100644 --- a/src/ui/dialog/clonetiler.h +++ b/src/ui/dialog/clonetiler.h @@ -19,6 +19,11 @@ namespace Inkscape { namespace UI { + +namespace Widget { + class UnitMenu; +} + namespace Dialog { class CloneTiler : public Widget::Panel { @@ -45,8 +50,9 @@ protected: static void clonetiler_do_pick_toggled(GtkToggleButton *tb, GtkWidget *dlg); static void clonetiler_pick_to(GtkToggleButton *tb, gpointer data); static void clonetiler_xy_changed(GtkAdjustment *adj, gpointer data); - static void clonetiler_fill_width_changed(GtkAdjustment *adj, GtkWidget *u); - static void clonetiler_fill_height_changed(GtkAdjustment *adj, GtkWidget *u); + static void clonetiler_fill_width_changed(GtkAdjustment *adj, Inkscape::UI::Widget::UnitMenu *u); + static void clonetiler_fill_height_changed(GtkAdjustment *adj, Inkscape::UI::Widget::UnitMenu *u); + void clonetiler_unit_changed(); static void clonetiler_switch_to_create(GtkToggleButton */*tb*/, GtkWidget *dlg); static void clonetiler_switch_to_fill(GtkToggleButton */*tb*/, GtkWidget *dlg); static void clonetiler_keep_bbox_toggled(GtkToggleButton *tb, gpointer /*data*/); @@ -112,12 +118,22 @@ private: DesktopTracker deskTrack; Inkscape::UI::Widget::ColorPicker *color_picker; GtkSizeGroup* table_row_labels; + Inkscape::UI::Widget::UnitMenu *unit_menu; + +#if WITH_GTKMM_3_0 + Glib::RefPtr fill_width; + Glib::RefPtr fill_height; +#else + Gtk::Adjustment *fill_width; + Gtk::Adjustment *fill_height; +#endif sigc::connection desktopChangeConn; sigc::connection selectChangedConn; sigc::connection subselChangedConn; sigc::connection selectModifiedConn; sigc::connection color_changed_connection; + sigc::connection unitChangedConn; /** * Can be invoked for setting the desktop. Currently not used. -- cgit v1.2.3 From 65e3eb1a68581bede3788501a3052e97df16c91a Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Thu, 18 Jul 2013 15:00:03 -0400 Subject: Added quantity string parsing. (bzr r12380.1.24) --- src/util/units.cpp | 22 ++++++++++++++++++++++ src/util/units.h | 27 +++++++++++++++------------ 2 files changed, 37 insertions(+), 12 deletions(-) diff --git a/src/util/units.cpp b/src/util/units.cpp index d485f6aef..705fc850c 100644 --- a/src/util/units.cpp +++ b/src/util/units.cpp @@ -16,6 +16,7 @@ #include #include #include +#include #include "io/simple-sax.h" #include "util/units.h" @@ -228,6 +229,27 @@ Unit UnitTable::getUnit(Glib::ustring const &unit_abbr) const { } } +Quantity UnitTable::getQuantity(Glib::ustring const& q) const { + Glib::MatchInfo match_info; + + // Extract value + double value = 0; + Glib::RefPtr value_regex = Glib::Regex::create("\\d+\\.?\\d"); + if (value_regex->match(q, match_info)) { + value = atof(match_info.fetch(0).c_str()); + } + + // Extract unit abbreviation + Glib::ustring abbr; + Glib::RefPtr unit_regex = Glib::Regex::create("[A-z]+"); + if (unit_regex->match(q, match_info)) { + abbr = match_info.fetch(0); + } + Unit *u = new Inkscape::Util::Unit(getUnit(abbr)); + + return Quantity(value, u); +} + bool UnitTable::deleteUnit(Unit const &u) { bool deleted = false; // Cannot delete the primary unit type since it's diff --git a/src/util/units.h b/src/util/units.h index c6f124203..5d7bfaeaa 100644 --- a/src/util/units.h +++ b/src/util/units.h @@ -82,6 +82,18 @@ class Unit { int metric() const; }; +class Quantity { +public: + const Unit *unit; + double quantity; + + Quantity(double q, const Unit *u); // constructor + bool compatibleWith(const Unit *u) const; + double value(Unit *u) const; + + static double convert(const double from_dist, const Unit *from, const Unit *to); +}; + class UnitTable { public: /** @@ -99,6 +111,9 @@ class UnitTable { /** Retrieve a given unit based on its string identifier */ Unit getUnit(Glib::ustring const& name) const; + + /** Retrieve a quantity based on its string identifier */ + Quantity getQuantity(Glib::ustring const& q) const; /** Remove a unit definition from the given unit type table */ bool deleteUnit(Unit const& u); @@ -142,18 +157,6 @@ class UnitTable { }; -class Quantity { -public: - const Unit *unit; - double quantity; - - Quantity(double q, const Unit *u); // constructor - bool compatibleWith(const Unit *u) const; - double value(Unit *u) const; - - static double convert(const double from_dist, const Unit *from, const Unit *to); -}; - } // namespace Util } // namespace Inkscape -- cgit v1.2.3 From e641b84738df214c63ff67ce1bd2d0b8f6449c2e Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Thu, 18 Jul 2013 15:02:24 -0400 Subject: Ported "display/canvas-grid.*" and "display/canvas-axonomgrid.*". (bzr r12380.1.25) --- src/display/canvas-axonomgrid.cpp | 104 ++++++++--------------------- src/display/canvas-grid.cpp | 134 +++++++++++++------------------------- src/display/canvas-grid.h | 6 +- 3 files changed, 78 insertions(+), 166 deletions(-) diff --git a/src/display/canvas-axonomgrid.cpp b/src/display/canvas-axonomgrid.cpp index 59d2bb36d..5d6efb18e 100644 --- a/src/display/canvas-axonomgrid.cpp +++ b/src/display/canvas-axonomgrid.cpp @@ -51,7 +51,7 @@ #include "2geom/angle.h" #include "util/mathfns.h" #include "round.h" -#include "helper/units.h" +#include "util/units.h" enum Dim3 { X=0, Y, Z }; @@ -160,15 +160,17 @@ CanvasAxonomGrid::CanvasAxonomGrid (SPNamedView * nv, Inkscape::XML::Node * in_r : CanvasGrid(nv, in_repr, in_doc, GRID_AXONOMETRIC) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - gridunit = sp_unit_get_by_abbreviation( prefs->getString("/options/grids/axonom/units").data() ); + Inkscape::Util::UnitTable unit_table; + Inkscape::Util::Unit px = unit_table.getUnit("px"); + gridunit = new Inkscape::Util::Unit(unit_table.getUnit(prefs->getString("/options/grids/axonom/units"))); if (!gridunit) - gridunit = &sp_unit_get_by_id(SP_UNIT_PX); - origin[Geom::X] = sp_units_get_pixels( prefs->getDouble("/options/grids/axonom/origin_x", 0.0), *gridunit ); - origin[Geom::Y] = sp_units_get_pixels( prefs->getDouble("/options/grids/axonom/origin_y", 0.0), *gridunit ); + gridunit = new Inkscape::Util::Unit(unit_table.getUnit("px")); + origin[Geom::X] = Inkscape::Util::Quantity::convert(prefs->getDouble("/options/grids/axonom/origin_x", 0.0), gridunit, &px); + origin[Geom::Y] = Inkscape::Util::Quantity::convert(prefs->getDouble("/options/grids/axonom/origin_y", 0.0), gridunit, &px); color = prefs->getInt("/options/grids/axonom/color", 0x0000ff20); empcolor = prefs->getInt("/options/grids/axonom/empcolor", 0x0000ff40); empspacing = prefs->getInt("/options/grids/axonom/empspacing", 5); - lengthy = sp_units_get_pixels( prefs->getDouble("/options/grids/axonom/spacing_y", 1.0), *gridunit ); + lengthy = Inkscape::Util::Quantity::convert(prefs->getDouble("/options/grids/axonom/spacing_y", 1.0), gridunit, &px); angle_deg[X] = prefs->getDouble("/options/grids/axonom/angle_x", 30.0); angle_deg[Z] = prefs->getDouble("/options/grids/axonom/angle_z", 30.0); angle_deg[Y] = 0; @@ -188,63 +190,6 @@ CanvasAxonomGrid::~CanvasAxonomGrid () if (snapper) delete snapper; } - -/* fixme: Collect all these length parsing methods and think common sane API */ - -static gboolean sp_nv_read_length(gchar const *str, guint base, gdouble *val, SPUnit const **unit) -{ - if (!str) { - return FALSE; - } - - gchar *u; - gdouble v = g_ascii_strtod(str, &u); - if (!u) { - return FALSE; - } - while (isspace(*u)) { - u += 1; - } - - if (!*u) { - /* No unit specified - keep default */ - *val = v; - return TRUE; - } - - if (base & SP_UNIT_DEVICE) { - if (u[0] && u[1] && !isalnum(u[2]) && !strncmp(u, "px", 2)) { - *unit = &sp_unit_get_by_id(SP_UNIT_PX); - *val = v; - return TRUE; - } - } - - if (base & SP_UNIT_ABSOLUTE) { - if (!strncmp(u, "pt", 2)) { - *unit = &sp_unit_get_by_id(SP_UNIT_PT); - } else if (!strncmp(u, "mm", 2)) { - *unit = &sp_unit_get_by_id(SP_UNIT_MM); - } else if (!strncmp(u, "cm", 2)) { - *unit = &sp_unit_get_by_id(SP_UNIT_CM); - } else if (!strncmp(u, "m", 1)) { - *unit = &sp_unit_get_by_id(SP_UNIT_M); - } else if (!strncmp(u, "in", 2)) { - *unit = &sp_unit_get_by_id(SP_UNIT_IN); - } else if (!strncmp(u, "ft", 2)) { - *unit = &sp_unit_get_by_id(SP_UNIT_FT); - } else if (!strncmp(u, "pc", 2)) { - *unit = &sp_unit_get_by_id(SP_UNIT_PC); - } else { - return FALSE; - } - *val = v; - return TRUE; - } - - return FALSE; -} - static gboolean sp_nv_read_opacity(gchar const *str, guint32 *color) { if (!str) { @@ -269,18 +214,23 @@ void CanvasAxonomGrid::readRepr() { gchar const *value; + Inkscape::Util::UnitTable unit_table; + Inkscape::Util::Unit px = unit_table.getUnit("px"); if ( (value = repr->attribute("originx")) ) { - sp_nv_read_length(value, SP_UNIT_ABSOLUTE | SP_UNIT_DEVICE, &origin[Geom::X], &gridunit); - origin[Geom::X] = sp_units_get_pixels(origin[Geom::X], *(gridunit)); + Inkscape::Util::Quantity q = unit_table.getQuantity(value); + gridunit = q.unit; + origin[Geom::X] = unit_table.getQuantity(value).value(&px); } if ( (value = repr->attribute("originy")) ) { - sp_nv_read_length(value, SP_UNIT_ABSOLUTE | SP_UNIT_DEVICE, &origin[Geom::Y], &gridunit); - origin[Geom::Y] = sp_units_get_pixels(origin[Geom::Y], *(gridunit)); + Inkscape::Util::Quantity q = unit_table.getQuantity(value); + gridunit = q.unit; + origin[Geom::Y] = unit_table.getQuantity(value).value(&px); } if ( (value = repr->attribute("spacingy")) ) { - sp_nv_read_length(value, SP_UNIT_ABSOLUTE | SP_UNIT_DEVICE, &lengthy, &gridunit); - lengthy = sp_units_get_pixels(lengthy, *(gridunit)); + Inkscape::Util::Quantity q = unit_table.getQuantity(value); + gridunit = q.unit; + lengthy = q.value(&px); if (lengthy < 0.0500) lengthy = 0.0500; } @@ -422,14 +372,16 @@ _wr.setUpdating (false); _rumg->setUnit (gridunit->abbr); gdouble val; + Inkscape::Util::UnitTable unit_table; + Inkscape::Util::Unit px = unit_table.getUnit("px"); val = origin[Geom::X]; - val = sp_pixels_get_units (val, *(gridunit)); + val = Inkscape::Util::Quantity::convert(val, &px, gridunit); _rsu_ox->setValue (val); val = origin[Geom::Y]; - val = sp_pixels_get_units (val, *(gridunit)); + val = Inkscape::Util::Quantity::convert(val, &px, gridunit); _rsu_oy->setValue (val); val = lengthy; - double gridy = sp_pixels_get_units (val, *(gridunit)); + double gridy = Inkscape::Util::Quantity::convert(val, &px, gridunit); _rsu_sy->setValue (gridy); _rsu_ax->setValue(angle_deg[X]); @@ -458,17 +410,17 @@ CanvasAxonomGrid::updateWidgets() _rcb_enabled.setActive(snapper->getEnabled()); } - _rumg.setUnit (gridunit); + _rumg.setUnit (gridunit->abbr); gdouble val; val = origin[Geom::X]; - val = sp_pixels_get_units (val, *(gridunit)); + val = Inkscape::Util::Quantity::convert(val, &px, gridunit); _rsu_ox.setValue (val); val = origin[Geom::Y]; - val = sp_pixels_get_units (val, *(gridunit)); + val = Inkscape::Util::Quantity::convert(val, &px, gridunit); _rsu_oy.setValue (val); val = lengthy; - double gridy = sp_pixels_get_units (val, *(gridunit)); + double gridy = Inkscape::Util::Quantity::convert(val, &px, gridunit); _rsu_sy.setValue (gridy); _rsu_ax.setValue(angle_deg[X]); diff --git a/src/display/canvas-grid.cpp b/src/display/canvas-grid.cpp index 9fbb5f907..fdf156262 100644 --- a/src/display/canvas-grid.cpp +++ b/src/display/canvas-grid.cpp @@ -397,12 +397,15 @@ void CanvasGrid::setOrigin(Geom::Point const &origin_px) Inkscape::SVGOStringStream os_x, os_y; gdouble val; + Inkscape::Util::UnitTable unit_table; + Inkscape::Util::Unit px = unit_table.getUnit("px"); + val = origin_px[Geom::X]; - val = sp_pixels_get_units (val, *gridunit); - os_x << val << sp_unit_get_abbreviation(gridunit); + val = Inkscape::Util::Quantity::convert(val, &px, gridunit); + os_x << val << gridunit->abbr; val = origin_px[Geom::Y]; - val = sp_pixels_get_units (val, *gridunit); - os_y << val << sp_unit_get_abbreviation(gridunit); + val = Inkscape::Util::Quantity::convert(val, &px, gridunit); + os_y << val << gridunit->abbr; repr->setAttribute("originx", os_x.str().c_str()); repr->setAttribute("originy", os_y.str().c_str()); } @@ -488,17 +491,19 @@ CanvasXYGrid::CanvasXYGrid (SPNamedView * nv, Inkscape::XML::Node * in_repr, SPD : CanvasGrid(nv, in_repr, in_doc, GRID_RECTANGULAR) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - gridunit = sp_unit_get_by_abbreviation( prefs->getString("/options/grids/xy/units").data() ); + Inkscape::Util::UnitTable unit_table; + gridunit = new Inkscape::Util::Unit(unit_table.getUnit(prefs->getString("/options/grids/xy/units"))); if (!gridunit) { - gridunit = &sp_unit_get_by_id(SP_UNIT_PX); + gridunit = new Inkscape::Util::Unit(unit_table.getUnit("px")); } - origin[Geom::X] = sp_units_get_pixels(prefs->getDouble("/options/grids/xy/origin_x", 0.0), *gridunit); - origin[Geom::Y] = sp_units_get_pixels(prefs->getDouble("/options/grids/xy/origin_y", 0.0), *gridunit); + Inkscape::Util::Unit px = unit_table.getUnit("px"); + origin[Geom::X] = Inkscape::Util::Quantity::convert(prefs->getDouble("/options/grids/xy/origin_x", 0.0), gridunit, &px); + origin[Geom::Y] = Inkscape::Util::Quantity::convert(prefs->getDouble("/options/grids/xy/origin_y", 0.0), gridunit, &px); color = prefs->getInt("/options/grids/xy/color", 0x0000ff20); empcolor = prefs->getInt("/options/grids/xy/empcolor", 0x0000ff40); empspacing = prefs->getInt("/options/grids/xy/empspacing", 5); - spacing[Geom::X] = sp_units_get_pixels(prefs->getDouble("/options/grids/xy/spacing_x", 0.0), *gridunit); - spacing[Geom::Y] = sp_units_get_pixels(prefs->getDouble("/options/grids/xy/spacing_y", 0.0), *gridunit); + spacing[Geom::X] = Inkscape::Util::Quantity::convert(prefs->getDouble("/options/grids/xy/spacing_x", 0.0), gridunit, &px); + spacing[Geom::Y] = Inkscape::Util::Quantity::convert(prefs->getDouble("/options/grids/xy/spacing_y", 0.0), gridunit, &px); render_dotted = prefs->getBool("/options/grids/xy/dotted", false); snapper = new CanvasXYGridSnapper(this, &namedview->snap_manager, 0); @@ -511,64 +516,6 @@ CanvasXYGrid::~CanvasXYGrid () if (snapper) delete snapper; } - -/* fixme: Collect all these length parsing methods and think common sane API */ - -static gboolean -sp_nv_read_length(gchar const *str, guint base, gdouble *val, SPUnit const **unit) -{ - if (!str) { - return FALSE; - } - - gchar *u; - gdouble v = g_ascii_strtod(str, &u); - if (!u) { - return FALSE; - } - while (isspace(*u)) { - u += 1; - } - - if (!*u) { - /* No unit specified - keep default */ - *val = v; - return TRUE; - } - - if (base & SP_UNIT_DEVICE) { - if (u[0] && u[1] && !isalnum(u[2]) && !strncmp(u, "px", 2)) { - *unit = &sp_unit_get_by_id(SP_UNIT_PX); - *val = v; - return TRUE; - } - } - - if (base & SP_UNIT_ABSOLUTE) { - if (!strncmp(u, "pt", 2)) { - *unit = &sp_unit_get_by_id(SP_UNIT_PT); - } else if (!strncmp(u, "mm", 2)) { - *unit = &sp_unit_get_by_id(SP_UNIT_MM); - } else if (!strncmp(u, "cm", 2)) { - *unit = &sp_unit_get_by_id(SP_UNIT_CM); - } else if (!strncmp(u, "m", 1)) { - *unit = &sp_unit_get_by_id(SP_UNIT_M); - } else if (!strncmp(u, "in", 2)) { - *unit = &sp_unit_get_by_id(SP_UNIT_IN); - } else if (!strncmp(u, "ft", 2)) { - *unit = &sp_unit_get_by_id(SP_UNIT_FT); - } else if (!strncmp(u, "pc", 2)) { - *unit = &sp_unit_get_by_id(SP_UNIT_PC); - } else { - return FALSE; - } - *val = v; - return TRUE; - } - - return FALSE; -} - static gboolean sp_nv_read_opacity(gchar const *str, guint32 *color) { if (!str) { @@ -643,30 +590,37 @@ static void validateInt(gint oldVal, void CanvasXYGrid::readRepr() { + Inkscape::Util::UnitTable unit_table; + Inkscape::Util::Unit px = unit_table.getUnit("px"); + gchar const *value; if ( (value = repr->attribute("originx")) ) { - sp_nv_read_length(value, SP_UNIT_ABSOLUTE | SP_UNIT_DEVICE, &origin[Geom::X], &gridunit); - origin[Geom::X] = sp_units_get_pixels(origin[Geom::X], *(gridunit)); + Inkscape::Util::Quantity q = unit_table.getQuantity(value); + gridunit = q.unit; + origin[Geom::X] = unit_table.getQuantity(value).value(&px); } if ( (value = repr->attribute("originy")) ) { - sp_nv_read_length(value, SP_UNIT_ABSOLUTE | SP_UNIT_DEVICE, &origin[Geom::Y], &gridunit); - origin[Geom::Y] = sp_units_get_pixels(origin[Geom::Y], *(gridunit)); + Inkscape::Util::Quantity q = unit_table.getQuantity(value); + gridunit = q.unit; + origin[Geom::Y] = unit_table.getQuantity(value).value(&px); } if ( (value = repr->attribute("spacingx")) ) { double oldVal = spacing[Geom::X]; - sp_nv_read_length(value, SP_UNIT_ABSOLUTE | SP_UNIT_DEVICE, &spacing[Geom::X], &gridunit); - validateScalar( oldVal, &spacing[Geom::X]); - spacing[Geom::X] = sp_units_get_pixels(spacing[Geom::X], *(gridunit)); - + Inkscape::Util::Quantity q = unit_table.getQuantity(value); + gridunit = q.unit; + spacing[Geom::X] = q.quantity; + validateScalar(oldVal, &spacing[Geom::X]); + spacing[Geom::X] = Inkscape::Util::Quantity::convert(spacing[Geom::X], gridunit, &px); } if ( (value = repr->attribute("spacingy")) ) { double oldVal = spacing[Geom::Y]; - sp_nv_read_length(value, SP_UNIT_ABSOLUTE | SP_UNIT_DEVICE, &spacing[Geom::Y], &gridunit); - validateScalar( oldVal, &spacing[Geom::Y]); - spacing[Geom::Y] = sp_units_get_pixels(spacing[Geom::Y], *(gridunit)); - + Inkscape::Util::Quantity q = unit_table.getQuantity(value); + gridunit = q.unit; + spacing[Geom::Y] = q.quantity; + validateScalar(oldVal, &spacing[Geom::Y]); + spacing[Geom::Y] = Inkscape::Util::Quantity::convert(spacing[Geom::Y], gridunit, &px); } if ( (value = repr->attribute("color")) ) { @@ -805,17 +759,19 @@ CanvasXYGrid::newSpecificWidget() _rumg->setUnit (gridunit->abbr); gdouble val; + Inkscape::Util::UnitTable unit_table; + Inkscape::Util::Unit px = unit_table.getUnit("px"); val = origin[Geom::X]; - val = sp_pixels_get_units (val, *(gridunit)); + val = Inkscape::Util::Quantity::convert(val, &px, gridunit); _rsu_ox->setValue (val); val = origin[Geom::Y]; - val = sp_pixels_get_units (val, *(gridunit)); + val = Inkscape::Util::Quantity::convert(val, &px, gridunit); _rsu_oy->setValue (val); val = spacing[Geom::X]; - double gridx = sp_pixels_get_units (val, *(gridunit)); + double gridx = Inkscape::Util::Quantity::convert(val, &px, gridunit); _rsu_sx->setValue (gridx); val = spacing[Geom::Y]; - double gridy = sp_pixels_get_units (val, *(gridunit)); + double gridy = Inkscape::Util::Quantity::convert(val, &px, gridunit); _rsu_sy->setValue (gridy); _rcp_gcol->setRgba32 (color); @@ -851,20 +807,20 @@ CanvasXYGrid::updateWidgets() _rcb_enabled.setActive(snapper->getEnabled()); } - _rumg.setUnit (gridunit); + _rumg.setUnit (gridunit->abbr); gdouble val; val = origin[Geom::X]; - val = sp_pixels_get_units (val, *(gridunit)); + val = Inkscape::Quantity::convert(val, &px, gridunit); _rsu_ox.setValue (val); val = origin[Geom::Y]; - val = sp_pixels_get_units (val, *(gridunit)); + val = Inkscape::Quantity::convert(val, &px, gridunit); _rsu_oy.setValue (val); val = spacing[Geom::X]; - double gridx = sp_pixels_get_units (val, *(gridunit)); + double gridx = Inkscape::Quantity::convert(val, &px, gridunit); _rsu_sx.setValue (gridx); val = spacing[Geom::Y]; - double gridy = sp_pixels_get_units (val, *(gridunit)); + double gridy = Inkscape::Quantity::convert(val, &px, gridunit); _rsu_sy.setValue (gridy); _rcp_gcol.setRgba32 (color); diff --git a/src/display/canvas-grid.h b/src/display/canvas-grid.h index 7eaef407f..70b4bf744 100644 --- a/src/display/canvas-grid.h +++ b/src/display/canvas-grid.h @@ -28,6 +28,10 @@ namespace XML { class Node; } +namespace Util { +class Unit; +} + enum GridType { GRID_RECTANGULAR = 0, GRID_AXONOMETRIC = 1 @@ -88,7 +92,7 @@ public: guint32 empcolor; /**< Color for emphasis lines */ gint empspacing; /**< Spacing between emphasis lines */ - SPUnit const* gridunit; + Inkscape::Util::Unit const* gridunit; Inkscape::XML::Node * repr; SPDocument *doc; -- cgit v1.2.3 From 286ea5f976f27f7fdfec5859b08bcb31e53e6728 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Thu, 18 Jul 2013 16:13:16 -0400 Subject: Added more convienient unit conversion functions. (bzr r12380.1.26) --- src/util/units.cpp | 26 +++++++++++++++++++++++++- src/util/units.h | 6 +++++- 2 files changed, 30 insertions(+), 2 deletions(-) diff --git a/src/util/units.cpp b/src/util/units.cpp index 705fc850c..ed8fbfa34 100644 --- a/src/util/units.cpp +++ b/src/util/units.cpp @@ -462,9 +462,14 @@ bool Quantity::compatibleWith(const Unit *u) const { } /** Return the quantity's value in the specified unit. */ -double Quantity::value(Unit *u) const { +double Quantity::value(const Unit *u) const { return convert(quantity, unit, u); } +double Quantity::value(const Glib::ustring u) const { + static UnitTable unit_table; + Unit to_unit = unit_table.getUnit(u); + return value(&to_unit); +} /** Convert distances. */ double Quantity::convert(const double from_dist, const Unit *from, const Unit *to) { @@ -476,6 +481,25 @@ double Quantity::convert(const double from_dist, const Unit *from, const Unit *t // Compatible units return from_dist * from->factor / to->factor; } +double Quantity::convert(const double from_dist, const Glib::ustring from, const Unit &to) +{ + static UnitTable unit_table; + Unit from_unit = unit_table.getUnit(from); + return convert(from_dist, &from_unit, &to); +} +double Quantity::convert(const double from_dist, const Unit &from, const Glib::ustring to) +{ + static UnitTable unit_table; + Unit to_unit = unit_table.getUnit(to); + return convert(from_dist, &from, &to_unit); +} +double Quantity::convert(const double from_dist, const Glib::ustring from, const Glib::ustring to) +{ + static UnitTable unit_table; + Unit from_unit = unit_table.getUnit(from); + Unit to_unit = unit_table.getUnit(to); + return convert(from_dist, &from_unit, &to_unit); +} } // namespace Util } // namespace Inkscape diff --git a/src/util/units.h b/src/util/units.h index 5d7bfaeaa..f1a5f1e95 100644 --- a/src/util/units.h +++ b/src/util/units.h @@ -89,9 +89,13 @@ public: Quantity(double q, const Unit *u); // constructor bool compatibleWith(const Unit *u) const; - double value(Unit *u) const; + double value(const Unit *u) const; + double value(const Glib::ustring u) const; static double convert(const double from_dist, const Unit *from, const Unit *to); + static double convert(const double from_dist, const Glib::ustring from, const Unit &to); + static double convert(const double from_dist, const Unit &from, const Glib::ustring to); + static double convert(const double from_dist, const Glib::ustring from, const Glib::ustring to); }; class UnitTable { -- cgit v1.2.3 From 51ffb1d56821be424fc50c91e486d6143976ba30 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Thu, 18 Jul 2013 16:40:36 -0400 Subject: Added more more convientent unit functions. (bzr r12380.1.27) --- src/util/units.cpp | 17 +++++++++++++++++ src/util/units.h | 5 ++++- 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/src/util/units.cpp b/src/util/units.cpp index ed8fbfa34..ffbd74fdd 100644 --- a/src/util/units.cpp +++ b/src/util/units.cpp @@ -140,6 +140,12 @@ bool Unit::compatibleWith(const Unit *u) const { // Different, incompatible types return false; } +bool Unit::compatibleWith(const Glib::ustring u) const +{ + static UnitTable unit_table; + Unit compatible_unit = unit_table.getUnit(u); + return compatibleWith(&compatible_unit); +} /** Check if units are equal. */ bool operator== (const Unit &u1, const Unit &u2) { @@ -455,11 +461,22 @@ Quantity::Quantity(double q, const Unit *u) { unit = u; quantity = q; } +Quantity::Quantity(double q, const Glib::ustring u) { + UnitTable unit_table; + unit = new Unit(unit_table.getUnit(u)); + quantity = q; +} /** Checks if a quantity is compatible with the specified unit. */ bool Quantity::compatibleWith(const Unit *u) const { return unit->compatibleWith(u); } +bool Quantity::compatibleWith(const Glib::ustring u) const +{ + static UnitTable unit_table; + Unit other_unit = unit_table.getUnit(u); + return compatibleWith(&other_unit); +} /** Return the quantity's value in the specified unit. */ double Quantity::value(const Unit *u) const { diff --git a/src/util/units.h b/src/util/units.h index f1a5f1e95..ec9435647 100644 --- a/src/util/units.h +++ b/src/util/units.h @@ -66,6 +66,7 @@ class Unit { int defaultDigits() const; bool compatibleWith(const Unit *u) const; + bool compatibleWith(const Glib::ustring) const; UnitType type; double factor; @@ -87,8 +88,10 @@ public: const Unit *unit; double quantity; - Quantity(double q, const Unit *u); // constructor + Quantity(double q, const Unit *u); // constructor + Quantity(double q, const Glib::ustring u); // constructor bool compatibleWith(const Unit *u) const; + bool compatibleWith(const Glib::ustring u) const; double value(const Unit *u) const; double value(const Glib::ustring u) const; -- cgit v1.2.3 From 3772fc428950b2b946a1bd7c7c97e06219c3165f Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Thu, 18 Jul 2013 17:21:24 -0400 Subject: Switch unit functions from using pointer arguements to reference arguements. (bzr r12380.1.28) --- src/display/canvas-axonomgrid.cpp | 21 ++++----- src/display/canvas-grid.cpp | 40 ++++++++--------- src/document.cpp | 20 ++++----- src/measure-context.cpp | 14 +++--- src/sp-namedview.cpp | 3 +- src/ui/dialog/clonetiler.cpp | 17 +++----- src/ui/dialog/export.cpp | 6 +-- src/ui/widget/page-sizer.cpp | 17 +++----- src/ui/widget/unit-tracker.cpp | 7 ++- src/util/units.cpp | 92 ++++++++++++++++++++++----------------- src/util/units.h | 22 +++++----- src/widgets/node-toolbar.cpp | 14 +++--- src/widgets/rect-toolbar.cpp | 14 +++--- src/widgets/select-toolbar.cpp | 24 +++++----- 14 files changed, 144 insertions(+), 167 deletions(-) diff --git a/src/display/canvas-axonomgrid.cpp b/src/display/canvas-axonomgrid.cpp index 5d6efb18e..d3db94975 100644 --- a/src/display/canvas-axonomgrid.cpp +++ b/src/display/canvas-axonomgrid.cpp @@ -161,16 +161,15 @@ CanvasAxonomGrid::CanvasAxonomGrid (SPNamedView * nv, Inkscape::XML::Node * in_r { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); Inkscape::Util::UnitTable unit_table; - Inkscape::Util::Unit px = unit_table.getUnit("px"); gridunit = new Inkscape::Util::Unit(unit_table.getUnit(prefs->getString("/options/grids/axonom/units"))); if (!gridunit) gridunit = new Inkscape::Util::Unit(unit_table.getUnit("px")); - origin[Geom::X] = Inkscape::Util::Quantity::convert(prefs->getDouble("/options/grids/axonom/origin_x", 0.0), gridunit, &px); - origin[Geom::Y] = Inkscape::Util::Quantity::convert(prefs->getDouble("/options/grids/axonom/origin_y", 0.0), gridunit, &px); + origin[Geom::X] = Inkscape::Util::Quantity::convert(prefs->getDouble("/options/grids/axonom/origin_x", 0.0), *gridunit, "px"); + origin[Geom::Y] = Inkscape::Util::Quantity::convert(prefs->getDouble("/options/grids/axonom/origin_y", 0.0), *gridunit, "px"); color = prefs->getInt("/options/grids/axonom/color", 0x0000ff20); empcolor = prefs->getInt("/options/grids/axonom/empcolor", 0x0000ff40); empspacing = prefs->getInt("/options/grids/axonom/empspacing", 5); - lengthy = Inkscape::Util::Quantity::convert(prefs->getDouble("/options/grids/axonom/spacing_y", 1.0), gridunit, &px); + lengthy = Inkscape::Util::Quantity::convert(prefs->getDouble("/options/grids/axonom/spacing_y", 1.0), *gridunit, "px"); angle_deg[X] = prefs->getDouble("/options/grids/axonom/angle_x", 30.0); angle_deg[Z] = prefs->getDouble("/options/grids/axonom/angle_z", 30.0); angle_deg[Y] = 0; @@ -215,22 +214,21 @@ CanvasAxonomGrid::readRepr() { gchar const *value; Inkscape::Util::UnitTable unit_table; - Inkscape::Util::Unit px = unit_table.getUnit("px"); if ( (value = repr->attribute("originx")) ) { Inkscape::Util::Quantity q = unit_table.getQuantity(value); gridunit = q.unit; - origin[Geom::X] = unit_table.getQuantity(value).value(&px); + origin[Geom::X] = unit_table.getQuantity(value).value("px"); } if ( (value = repr->attribute("originy")) ) { Inkscape::Util::Quantity q = unit_table.getQuantity(value); gridunit = q.unit; - origin[Geom::Y] = unit_table.getQuantity(value).value(&px); + origin[Geom::Y] = unit_table.getQuantity(value).value("px"); } if ( (value = repr->attribute("spacingy")) ) { Inkscape::Util::Quantity q = unit_table.getQuantity(value); gridunit = q.unit; - lengthy = q.value(&px); + lengthy = q.value("px"); if (lengthy < 0.0500) lengthy = 0.0500; } @@ -373,15 +371,14 @@ _wr.setUpdating (false); gdouble val; Inkscape::Util::UnitTable unit_table; - Inkscape::Util::Unit px = unit_table.getUnit("px"); val = origin[Geom::X]; - val = Inkscape::Util::Quantity::convert(val, &px, gridunit); + val = Inkscape::Util::Quantity::convert(val, "px", *gridunit); _rsu_ox->setValue (val); val = origin[Geom::Y]; - val = Inkscape::Util::Quantity::convert(val, &px, gridunit); + val = Inkscape::Util::Quantity::convert(val, "px", *gridunit); _rsu_oy->setValue (val); val = lengthy; - double gridy = Inkscape::Util::Quantity::convert(val, &px, gridunit); + double gridy = Inkscape::Util::Quantity::convert(val, "px", *gridunit); _rsu_sy->setValue (gridy); _rsu_ax->setValue(angle_deg[X]); diff --git a/src/display/canvas-grid.cpp b/src/display/canvas-grid.cpp index fdf156262..e72e01dbc 100644 --- a/src/display/canvas-grid.cpp +++ b/src/display/canvas-grid.cpp @@ -398,13 +398,12 @@ void CanvasGrid::setOrigin(Geom::Point const &origin_px) gdouble val; Inkscape::Util::UnitTable unit_table; - Inkscape::Util::Unit px = unit_table.getUnit("px"); val = origin_px[Geom::X]; - val = Inkscape::Util::Quantity::convert(val, &px, gridunit); + val = Inkscape::Util::Quantity::convert(val, "px", *gridunit); os_x << val << gridunit->abbr; val = origin_px[Geom::Y]; - val = Inkscape::Util::Quantity::convert(val, &px, gridunit); + val = Inkscape::Util::Quantity::convert(val, "px", *gridunit); os_y << val << gridunit->abbr; repr->setAttribute("originx", os_x.str().c_str()); repr->setAttribute("originy", os_y.str().c_str()); @@ -496,14 +495,13 @@ CanvasXYGrid::CanvasXYGrid (SPNamedView * nv, Inkscape::XML::Node * in_repr, SPD if (!gridunit) { gridunit = new Inkscape::Util::Unit(unit_table.getUnit("px")); } - Inkscape::Util::Unit px = unit_table.getUnit("px"); - origin[Geom::X] = Inkscape::Util::Quantity::convert(prefs->getDouble("/options/grids/xy/origin_x", 0.0), gridunit, &px); - origin[Geom::Y] = Inkscape::Util::Quantity::convert(prefs->getDouble("/options/grids/xy/origin_y", 0.0), gridunit, &px); + origin[Geom::X] = Inkscape::Util::Quantity::convert(prefs->getDouble("/options/grids/xy/origin_x", 0.0), *gridunit, "px"); + origin[Geom::Y] = Inkscape::Util::Quantity::convert(prefs->getDouble("/options/grids/xy/origin_y", 0.0), *gridunit, "px"); color = prefs->getInt("/options/grids/xy/color", 0x0000ff20); empcolor = prefs->getInt("/options/grids/xy/empcolor", 0x0000ff40); empspacing = prefs->getInt("/options/grids/xy/empspacing", 5); - spacing[Geom::X] = Inkscape::Util::Quantity::convert(prefs->getDouble("/options/grids/xy/spacing_x", 0.0), gridunit, &px); - spacing[Geom::Y] = Inkscape::Util::Quantity::convert(prefs->getDouble("/options/grids/xy/spacing_y", 0.0), gridunit, &px); + spacing[Geom::X] = Inkscape::Util::Quantity::convert(prefs->getDouble("/options/grids/xy/spacing_x", 0.0), *gridunit, "px"); + spacing[Geom::Y] = Inkscape::Util::Quantity::convert(prefs->getDouble("/options/grids/xy/spacing_y", 0.0), *gridunit, "px"); render_dotted = prefs->getBool("/options/grids/xy/dotted", false); snapper = new CanvasXYGridSnapper(this, &namedview->snap_manager, 0); @@ -591,19 +589,18 @@ void CanvasXYGrid::readRepr() { Inkscape::Util::UnitTable unit_table; - Inkscape::Util::Unit px = unit_table.getUnit("px"); gchar const *value; if ( (value = repr->attribute("originx")) ) { Inkscape::Util::Quantity q = unit_table.getQuantity(value); gridunit = q.unit; - origin[Geom::X] = unit_table.getQuantity(value).value(&px); + origin[Geom::X] = unit_table.getQuantity(value).value("px"); } if ( (value = repr->attribute("originy")) ) { Inkscape::Util::Quantity q = unit_table.getQuantity(value); gridunit = q.unit; - origin[Geom::Y] = unit_table.getQuantity(value).value(&px); + origin[Geom::Y] = unit_table.getQuantity(value).value("px"); } if ( (value = repr->attribute("spacingx")) ) { @@ -612,7 +609,7 @@ CanvasXYGrid::readRepr() gridunit = q.unit; spacing[Geom::X] = q.quantity; validateScalar(oldVal, &spacing[Geom::X]); - spacing[Geom::X] = Inkscape::Util::Quantity::convert(spacing[Geom::X], gridunit, &px); + spacing[Geom::X] = Inkscape::Util::Quantity::convert(spacing[Geom::X], *gridunit, "px"); } if ( (value = repr->attribute("spacingy")) ) { double oldVal = spacing[Geom::Y]; @@ -620,7 +617,7 @@ CanvasXYGrid::readRepr() gridunit = q.unit; spacing[Geom::Y] = q.quantity; validateScalar(oldVal, &spacing[Geom::Y]); - spacing[Geom::Y] = Inkscape::Util::Quantity::convert(spacing[Geom::Y], gridunit, &px); + spacing[Geom::Y] = Inkscape::Util::Quantity::convert(spacing[Geom::Y], *gridunit, "px"); } if ( (value = repr->attribute("color")) ) { @@ -760,18 +757,17 @@ CanvasXYGrid::newSpecificWidget() gdouble val; Inkscape::Util::UnitTable unit_table; - Inkscape::Util::Unit px = unit_table.getUnit("px"); val = origin[Geom::X]; - val = Inkscape::Util::Quantity::convert(val, &px, gridunit); + val = Inkscape::Util::Quantity::convert(val, "px", *gridunit); _rsu_ox->setValue (val); val = origin[Geom::Y]; - val = Inkscape::Util::Quantity::convert(val, &px, gridunit); + val = Inkscape::Util::Quantity::convert(val, "px", *gridunit); _rsu_oy->setValue (val); val = spacing[Geom::X]; - double gridx = Inkscape::Util::Quantity::convert(val, &px, gridunit); + double gridx = Inkscape::Util::Quantity::convert(val, "px", *gridunit); _rsu_sx->setValue (gridx); val = spacing[Geom::Y]; - double gridy = Inkscape::Util::Quantity::convert(val, &px, gridunit); + double gridy = Inkscape::Util::Quantity::convert(val, "px", *gridunit); _rsu_sy->setValue (gridy); _rcp_gcol->setRgba32 (color); @@ -811,16 +807,16 @@ CanvasXYGrid::updateWidgets() gdouble val; val = origin[Geom::X]; - val = Inkscape::Quantity::convert(val, &px, gridunit); + val = Inkscape::Quantity::convert(val, "px", *gridunit); _rsu_ox.setValue (val); val = origin[Geom::Y]; - val = Inkscape::Quantity::convert(val, &px, gridunit); + val = Inkscape::Quantity::convert(val, "px", *gridunit); _rsu_oy.setValue (val); val = spacing[Geom::X]; - double gridx = Inkscape::Quantity::convert(val, &px, gridunit); + double gridx = Inkscape::Quantity::convert(val, "px", *gridunit); _rsu_sx.setValue (gridx); val = spacing[Geom::Y]; - double gridy = Inkscape::Quantity::convert(val, &px, gridunit); + double gridy = Inkscape::Quantity::convert(val, "px", *gridunit); _rsu_sy.setValue (gridy); _rcp_gcol.setRgba32 (color); diff --git a/src/document.cpp b/src/document.cpp index 78d7018bb..a024cc790 100644 --- a/src/document.cpp +++ b/src/document.cpp @@ -549,17 +549,15 @@ gdouble SPDocument::getWidth() const void SPDocument::setWidth(const Inkscape::Util::Quantity &width) { - Inkscape::Util::Unit px = unit_table.getUnit("px"); if (root->width.unit == SVGLength::PERCENT && root->viewBox_set) { // set to viewBox= - root->viewBox.setMax(Geom::Point(root->viewBox.left() + width.value(&px), root->viewBox.bottom())); + root->viewBox.setMax(Geom::Point(root->viewBox.left() + width.value("px"), root->viewBox.bottom())); } else { // set to width= gdouble old_computed = root->width.computed; - root->width.computed = width.value(&px); + root->width.computed = width.value("px"); /* SVG does not support meters as a unit, so we must translate meters to * cm when writing */ if (*width.unit == unit_table.getUnit("m")) { - Inkscape::Util::Unit cm = unit_table.getUnit("cm"); - root->width.value = width.value(&cm); + root->width.value = width.value("cm"); root->width.unit = SVGLength::CM; } else { root->width.value = width.quantity; @@ -587,17 +585,15 @@ gdouble SPDocument::getHeight() const void SPDocument::setHeight(const Inkscape::Util::Quantity &height) { - Inkscape::Util::Unit px = unit_table.getUnit("px"); if (root->height.unit == SVGLength::PERCENT && root->viewBox_set) { // set to viewBox= - root->viewBox.setMax(Geom::Point(root->viewBox.right(), root->viewBox.top() + height.value(&px))); + root->viewBox.setMax(Geom::Point(root->viewBox.right(), root->viewBox.top() + height.value("px"))); } else { // set to height= gdouble old_computed = root->height.computed; - root->height.computed = height.value(&px); + root->height.computed = height.value("px"); /* SVG does not support meters as a unit, so we must translate meters to * cm when writing */ if (*height.unit == unit_table.getUnit("m")) { - Inkscape::Util::Unit cm = unit_table.getUnit("cm"); - root->height.value = height.value(&cm); + root->height.value = height.value("cm"); root->height.unit = SVGLength::CM; } else { root->height.value = height.quantity; @@ -669,8 +665,8 @@ void SPDocument::fitToRect(Geom::Rect const &rect, bool with_margins) rect.max() + Geom::Point(margin_right, margin_top)); - setWidth(Inkscape::Util::Quantity(rect_with_margins.width(), &px)); - setHeight(Inkscape::Util::Quantity(rect_with_margins.height(), &px)); + setWidth(Inkscape::Util::Quantity(rect_with_margins.width(), "px")); + setHeight(Inkscape::Util::Quantity(rect_with_margins.height(), "px")); Geom::Translate const tr( Geom::Point(0, old_height - rect_with_margins.height()) diff --git a/src/measure-context.cpp b/src/measure-context.cpp index 6e7709d56..465b1da80 100644 --- a/src/measure-context.cpp +++ b/src/measure-context.cpp @@ -520,8 +520,6 @@ static gint sp_measure_context_root_handler(SPEventContext *event_context, GdkEv if (!unit_name.compare("")) { unit_name = "px"; } - Inkscape::Util::Unit unit = unit_table.getUnit(unit_name); - Inkscape::Util::Unit px = unit_table.getUnit("px"); double fontsize = prefs->getInt("/tools/measure/fontsize"); @@ -532,7 +530,7 @@ static gint sp_measure_context_root_handler(SPEventContext *event_context, GdkEv for (size_t idx = 1; idx < intersections.size(); ++idx) { LabelPlacement placement; placement.lengthVal = (intersections[idx] - intersections[idx - 1]).length(); - placement.lengthVal = Inkscape::Util::Quantity::convert(placement.lengthVal, &px, &unit); + placement.lengthVal = Inkscape::Util::Quantity::convert(placement.lengthVal, "px", unit_name); placement.offset = DIMENSION_OFFSET; placement.start = desktop->doc2dt( (intersections[idx - 1] + intersections[idx]) / 2 ); placement.end = placement.start - (normal * placement.offset); @@ -548,7 +546,7 @@ static gint sp_measure_context_root_handler(SPEventContext *event_context, GdkEv LabelPlacement &place = *it; // TODO cleanup memory, Glib::ustring, etc.: - gchar *measure_str = g_strdup_printf("%.2f %s", place.lengthVal, unit.abbr.c_str()); + gchar *measure_str = g_strdup_printf("%.2f %s", place.lengthVal, unit_name.c_str()); SPCanvasText *canvas_tooltip = sp_canvastext_new(sp_desktop_tempgroup(desktop), desktop, place.end, @@ -589,10 +587,10 @@ static gint sp_measure_context_root_handler(SPEventContext *event_context, GdkEv { double totallengthval = (end_point - start_point).length(); - totallengthval = Inkscape::Util::Quantity::convert(totallengthval, &px, &unit); + totallengthval = Inkscape::Util::Quantity::convert(totallengthval, "px", unit_name); // TODO cleanup memory, Glib::ustring, etc.: - gchar *totallength_str = g_strdup_printf("%.2f %s", totallengthval, unit.abbr.c_str()); + gchar *totallength_str = g_strdup_printf("%.2f %s", totallengthval, unit_name.c_str()); SPCanvasText *canvas_tooltip = sp_canvastext_new(sp_desktop_tempgroup(desktop), desktop, end_point + desktop->w2d(Geom::Point(3*fontsize, -fontsize)), @@ -610,10 +608,10 @@ static gint sp_measure_context_root_handler(SPEventContext *event_context, GdkEv if (intersections.size() > 2) { double totallengthval = (intersections[intersections.size()-1] - intersections[0]).length(); - totallengthval = Inkscape::Util::Quantity::convert(totallengthval, &px, &unit); + totallengthval = Inkscape::Util::Quantity::convert(totallengthval, "px", unit_name); // TODO cleanup memory, Glib::ustring, etc.: - gchar *total_str = g_strdup_printf("%.2f %s", totallengthval, unit.abbr.c_str()); + gchar *total_str = g_strdup_printf("%.2f %s", totallengthval, unit_name.c_str()); SPCanvasText *canvas_tooltip = sp_canvastext_new(sp_desktop_tempgroup(desktop), desktop, desktop->doc2dt((intersections[0] + intersections[intersections.size()-1])/2) + normal * 60, diff --git a/src/sp-namedview.cpp b/src/sp-namedview.cpp index 0833d93bf..bf3adf816 100644 --- a/src/sp-namedview.cpp +++ b/src/sp-namedview.cpp @@ -1119,8 +1119,7 @@ double SPNamedView::getMarginLength(gchar const * const key, if (*margin_units == percent) { return (use_width)? width * value : height * value; } -// if (!sp_convert_distance (&value, margin_units, return_units)) { - if (!margin_units->compatibleWith(return_units)) { + if (!margin_units->compatibleWith(*return_units)) { return 0.0; } return value; diff --git a/src/ui/dialog/clonetiler.cpp b/src/ui/dialog/clonetiler.cpp index d270afc3f..abb2512f7 100644 --- a/src/ui/dialog/clonetiler.cpp +++ b/src/ui/dialog/clonetiler.cpp @@ -1108,8 +1108,7 @@ CloneTiler::CloneTiler (void) : double value = prefs->getDouble(prefs_path + "fillwidth", 50.0); Inkscape::Util::Unit const unit = unit_menu->getUnit(); Inkscape::Util::UnitTable unit_table; - Inkscape::Util::Unit const px = unit_table.getUnit("px"); - gdouble const units = Inkscape::Util::Quantity::convert(value, &px, &unit); + gdouble const units = Inkscape::Util::Quantity::convert(value, "px", unit); fill_width->set_value (units); #if WITH_GTKMM_3_0 @@ -1143,8 +1142,7 @@ CloneTiler::CloneTiler (void) : double value = prefs->getDouble(prefs_path + "fillheight", 50.0); Inkscape::Util::Unit const unit = unit_menu->getUnit(); Inkscape::Util::UnitTable unit_table; - Inkscape::Util::Unit const px = unit_table.getUnit("px"); - gdouble const units = Inkscape::Util::Quantity::convert(value, &px, &unit); + gdouble const units = Inkscape::Util::Quantity::convert(value, "px", unit); fill_height->set_value (units); #if WITH_GTKMM_3_0 @@ -2953,8 +2951,7 @@ void CloneTiler::clonetiler_fill_width_changed(GtkAdjustment *adj, Inkscape::UI: gdouble const raw_dist = gtk_adjustment_get_value (adj); Inkscape::Util::Unit const unit = u->getUnit(); Inkscape::Util::UnitTable unit_table; - Inkscape::Util::Unit const px = unit_table.getUnit("px"); - gdouble const pixels = Inkscape::Util::Quantity::convert(raw_dist, &unit, &px); + gdouble const pixels = Inkscape::Util::Quantity::convert(raw_dist, unit, "px"); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); prefs->setDouble(prefs_path + "fillwidth", pixels); @@ -2965,8 +2962,7 @@ void CloneTiler::clonetiler_fill_height_changed(GtkAdjustment *adj, Inkscape::UI gdouble const raw_dist = gtk_adjustment_get_value (adj); Inkscape::Util::Unit const unit = u->getUnit(); Inkscape::Util::UnitTable unit_table; - Inkscape::Util::Unit const px = unit_table.getUnit("px"); - gdouble const pixels = Inkscape::Util::Quantity::convert(raw_dist, &unit, &px); + gdouble const pixels = Inkscape::Util::Quantity::convert(raw_dist, unit, "px"); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); prefs->setDouble(prefs_path + "fillheight", pixels); @@ -2980,10 +2976,9 @@ void CloneTiler::clonetiler_unit_changed() Inkscape::Util::Unit unit = unit_menu->getUnit(); Inkscape::Util::UnitTable unit_table; - Inkscape::Util::Unit px = unit_table.getUnit("px"); - gdouble width_value = Inkscape::Util::Quantity::convert(width_pixels, &px, &unit); - gdouble height_value = Inkscape::Util::Quantity::convert(height_pixels, &px, &unit); + gdouble width_value = Inkscape::Util::Quantity::convert(width_pixels, "px", unit); + gdouble height_value = Inkscape::Util::Quantity::convert(height_pixels, "px", unit); gtk_adjustment_set_value(fill_width->gobj(), width_value); gtk_adjustment_set_value(fill_height->gobj(), height_value); } diff --git a/src/ui/dialog/export.cpp b/src/ui/dialog/export.cpp index 61fb6e4ee..5cb9357c3 100644 --- a/src/ui/dialog/export.cpp +++ b/src/ui/dialog/export.cpp @@ -1885,9 +1885,8 @@ void Export::setValuePx( Gtk::Adjustment *adj, double val) { const Unit unit = unit_selector->getUnit(); Inkscape::Util::UnitTable unit_table; - Inkscape::Util::Unit px = unit_table.getUnit("px"); - setValue(adj, Inkscape::Util::Quantity::convert(val, &px, &unit)); + setValue(adj, Inkscape::Util::Quantity::convert(val, "px", unit)); return; } @@ -1937,9 +1936,8 @@ float Export::getValuePx( Gtk::Adjustment *adj ) float value = getValue( adj); const Unit unit = unit_selector->getUnit(); Inkscape::Util::UnitTable unit_table; - Inkscape::Util::Unit px = unit_table.getUnit("px"); - return Inkscape::Util::Quantity::convert(value, &unit, &px); + return Inkscape::Util::Quantity::convert(value, unit, "px"); } // end of sp_export_value_get_px() /** diff --git a/src/ui/widget/page-sizer.cpp b/src/ui/widget/page-sizer.cpp index 73b75090b..f6392cfd8 100644 --- a/src/ui/widget/page-sizer.cpp +++ b/src/ui/widget/page-sizer.cpp @@ -228,10 +228,6 @@ static PaperSizeRec const inkscape_papers[] = { //# P A G E S I Z E R //######################################################################## -//The default unit for this widget and its calculations -static Inkscape::Util::Unit _px_unit = unit_table.getUnit("px"); - - /** * Constructor */ @@ -481,8 +477,8 @@ PageSizer::setDim (double w, double h, bool changeList) if (SP_ACTIVE_DESKTOP && !_widgetRegistry->isUpdating()) { SPDocument *doc = sp_desktop_document(SP_ACTIVE_DESKTOP); double const old_height = doc->getHeight(); - doc->setWidth (Inkscape::Util::Quantity(w, &_px_unit)); - doc->setHeight (Inkscape::Util::Quantity(h, &_px_unit)); + doc->setWidth (Inkscape::Util::Quantity(w, "px")); + doc->setHeight (Inkscape::Util::Quantity(h, "px")); // The origin for the user is in the lower left corner; this point should remain stationary when // changing the page size. The SVG's origin however is in the upper left corner, so we must compensate for this Geom::Translate const vert_offset(Geom::Point(0, (old_height - h))); @@ -567,8 +563,8 @@ PageSizer::find_paper_size (double w, double h) const iter != _paperSizeTable.end() ; ++iter) { PaperSize paper = iter->second; Inkscape::Util::Unit const &i_unit = paper.unit; - double smallX = Inkscape::Util::Quantity::convert(paper.smaller, &i_unit, &_px_unit); - double largeX = Inkscape::Util::Quantity::convert(paper.larger, &i_unit, &_px_unit); + double smallX = Inkscape::Util::Quantity::convert(paper.smaller, i_unit, "px"); + double largeX = Inkscape::Util::Quantity::convert(paper.larger, i_unit, "px"); g_return_val_if_fail(smallX <= largeX, _paperSizeListStore->children().end()); @@ -659,9 +655,8 @@ PageSizer::on_paper_size_list_changed() _landscape = _landscapeButton.get_active(); } - Inkscape::Util::Unit const &src_unit = paper.unit; - w = Inkscape::Util::Quantity::convert(w, &src_unit, &_px_unit); - h = Inkscape::Util::Quantity::convert(h, &src_unit, &_px_unit); + w = Inkscape::Util::Quantity::convert(w, paper.unit, "px"); + h = Inkscape::Util::Quantity::convert(h, paper.unit, "px"); if (_landscape) setDim (h, w, false); diff --git a/src/ui/widget/unit-tracker.cpp b/src/ui/widget/unit-tracker.cpp index df78e21dd..372419c3b 100644 --- a/src/ui/widget/unit-tracker.cpp +++ b/src/ui/widget/unit-tracker.cpp @@ -224,7 +224,6 @@ void UnitTracker::_setActive(gint active) void UnitTracker::_fixupAdjustments(Inkscape::Util::Unit const oldUnit, Inkscape::Util::Unit const newUnit) { _isUpdating = true; - Inkscape::Util::Unit px = _unit_table.getUnit("px"); for ( GSList *cur = _adjList ; cur ; cur = g_slist_next(cur) ) { GtkAdjustment *adj = GTK_ADJUSTMENT(cur->data); gdouble oldVal = gtk_adjustment_get_value(adj); @@ -234,15 +233,15 @@ void UnitTracker::_fixupAdjustments(Inkscape::Util::Unit const oldUnit, Inkscape && (newUnit.type == Inkscape::Util::UNIT_TYPE_DIMENSIONLESS) ) { val = newUnit.factor; - _priorValues[adj] = Inkscape::Util::Quantity::convert(oldVal, &oldUnit, &px); + _priorValues[adj] = Inkscape::Util::Quantity::convert(oldVal, oldUnit, "px"); } else if ( (oldUnit.type == Inkscape::Util::UNIT_TYPE_DIMENSIONLESS) && (newUnit.type != Inkscape::Util::UNIT_TYPE_DIMENSIONLESS) ) { if (_priorValues.find(adj) != _priorValues.end()) { - val = Inkscape::Util::Quantity::convert(_priorValues[adj], &newUnit, &px); + val = Inkscape::Util::Quantity::convert(_priorValues[adj], newUnit, "px"); } } else { - val = Inkscape::Util::Quantity::convert(oldVal, &oldUnit, &newUnit); + val = Inkscape::Util::Quantity::convert(oldVal, oldUnit, newUnit); } gtk_adjustment_set_value(adj, val); diff --git a/src/util/units.cpp b/src/util/units.cpp index ffbd74fdd..78531bfaf 100644 --- a/src/util/units.cpp +++ b/src/util/units.cpp @@ -115,7 +115,8 @@ void Unit::clear() *this = Unit(); } -int Unit::defaultDigits() const { +int Unit::defaultDigits() const +{ int factor_digits = int(log10(factor)); if (factor_digits < 0) { g_warning("factor = %f, factor_digits = %d", factor, factor_digits); @@ -126,14 +127,15 @@ int Unit::defaultDigits() const { } /** Checks if a unit is compatible with the specified unit. */ -bool Unit::compatibleWith(const Unit *u) const { +bool Unit::compatibleWith(const Unit &u) const +{ // Percentages - if (type == UNIT_TYPE_DIMENSIONLESS || u->type == UNIT_TYPE_DIMENSIONLESS) { + if (type == UNIT_TYPE_DIMENSIONLESS || u.type == UNIT_TYPE_DIMENSIONLESS) { return true; } // Other units with same type - if (type == u->type) { + if (type == u.type) { return true; } @@ -143,22 +145,24 @@ bool Unit::compatibleWith(const Unit *u) const { bool Unit::compatibleWith(const Glib::ustring u) const { static UnitTable unit_table; - Unit compatible_unit = unit_table.getUnit(u); - return compatibleWith(&compatible_unit); + return compatibleWith(unit_table.getUnit(u)); } /** Check if units are equal. */ -bool operator== (const Unit &u1, const Unit &u2) { +bool operator== (const Unit &u1, const Unit &u2) +{ return (u1.type == u2.type && u1.name.compare(u2.name) == 0); } /** Check if units are not equal. */ -bool operator!= (const Unit &u1, const Unit &u2) { +bool operator!= (const Unit &u1, const Unit &u2) +{ return !(u1 == u2); } /** Temporary - get SVG unit. */ -int Unit::svgUnit() const { +int Unit::svgUnit() const +{ if (!abbr.compare("px")) return 1; if (!abbr.compare("pt")) @@ -183,7 +187,8 @@ int Unit::svgUnit() const { } /** Temporary - get metric. */ -int Unit::metric() const { +int Unit::metric() const +{ if (!abbr.compare("mm")) return 1; if (!abbr.compare("cm")) @@ -212,21 +217,24 @@ UnitTable::UnitTable() g_free(filename); } -UnitTable::~UnitTable() { +UnitTable::~UnitTable() +{ for (UnitMap::iterator iter = _unit_map.begin(); iter != _unit_map.end(); ++iter) { delete (*iter).second; } } -void UnitTable::addUnit(Unit const &u, bool primary) { +void UnitTable::addUnit(Unit const &u, bool primary) +{ _unit_map[u.abbr] = new Unit(u); if (primary) { _primary_unit[u.type] = u.abbr; } } -Unit UnitTable::getUnit(Glib::ustring const &unit_abbr) const { +Unit UnitTable::getUnit(Glib::ustring const &unit_abbr) const +{ UnitMap::const_iterator iter = _unit_map.find(unit_abbr); if (iter != _unit_map.end()) { return *((*iter).second); @@ -235,7 +243,8 @@ Unit UnitTable::getUnit(Glib::ustring const &unit_abbr) const { } } -Quantity UnitTable::getQuantity(Glib::ustring const& q) const { +Quantity UnitTable::getQuantity(Glib::ustring const& q) const +{ Glib::MatchInfo match_info; // Extract value @@ -251,12 +260,12 @@ Quantity UnitTable::getQuantity(Glib::ustring const& q) const { if (unit_regex->match(q, match_info)) { abbr = match_info.fetch(0); } - Unit *u = new Inkscape::Util::Unit(getUnit(abbr)); - return Quantity(value, u); + return Quantity(value, abbr); } -bool UnitTable::deleteUnit(Unit const &u) { +bool UnitTable::deleteUnit(Unit const &u) +{ bool deleted = false; // Cannot delete the primary unit type since it's // used for conversions @@ -365,7 +374,8 @@ bool UnitTable::loadText(Glib::ustring const &filename) return true; } -bool UnitTable::load(Glib::ustring const &filename) { +bool UnitTable::load(Glib::ustring const &filename) +{ UnitsSAXHandler handler(this); int result = handler.parseFile( filename.c_str() ); @@ -378,8 +388,8 @@ bool UnitTable::load(Glib::ustring const &filename) { return true; } -bool UnitTable::save(Glib::ustring const &filename) { - +bool UnitTable::save(Glib::ustring const &filename) +{ // open file for writing FILE *f = fopen(filename.c_str(), "w"); if (f == NULL) { @@ -457,65 +467,65 @@ void UnitsSAXHandler::_endElement(xmlChar const *xname) } /** Initialize a quantity. */ -Quantity::Quantity(double q, const Unit *u) { - unit = u; +Quantity::Quantity(double q, const Unit &u) +{ + unit = new Unit(u); quantity = q; } -Quantity::Quantity(double q, const Glib::ustring u) { +Quantity::Quantity(double q, const Glib::ustring u) +{ UnitTable unit_table; unit = new Unit(unit_table.getUnit(u)); quantity = q; } /** Checks if a quantity is compatible with the specified unit. */ -bool Quantity::compatibleWith(const Unit *u) const { +bool Quantity::compatibleWith(const Unit &u) const +{ return unit->compatibleWith(u); } bool Quantity::compatibleWith(const Glib::ustring u) const { static UnitTable unit_table; - Unit other_unit = unit_table.getUnit(u); - return compatibleWith(&other_unit); + return compatibleWith(unit_table.getUnit(u)); } /** Return the quantity's value in the specified unit. */ -double Quantity::value(const Unit *u) const { - return convert(quantity, unit, u); +double Quantity::value(const Unit &u) const +{ + return convert(quantity, *unit, u); } -double Quantity::value(const Glib::ustring u) const { +double Quantity::value(const Glib::ustring u) const +{ static UnitTable unit_table; - Unit to_unit = unit_table.getUnit(u); - return value(&to_unit); + return value(unit_table.getUnit(u)); } /** Convert distances. */ -double Quantity::convert(const double from_dist, const Unit *from, const Unit *to) { +double Quantity::convert(const double from_dist, const Unit &from, const Unit &to) +{ // Incompatible units - if (from->type != to->type) { + if (from.type != to.type) { return -1; } // Compatible units - return from_dist * from->factor / to->factor; + return from_dist * from.factor / to.factor; } double Quantity::convert(const double from_dist, const Glib::ustring from, const Unit &to) { static UnitTable unit_table; - Unit from_unit = unit_table.getUnit(from); - return convert(from_dist, &from_unit, &to); + return convert(from_dist, unit_table.getUnit(from), to); } double Quantity::convert(const double from_dist, const Unit &from, const Glib::ustring to) { static UnitTable unit_table; - Unit to_unit = unit_table.getUnit(to); - return convert(from_dist, &from, &to_unit); + return convert(from_dist, from, unit_table.getUnit(to)); } double Quantity::convert(const double from_dist, const Glib::ustring from, const Glib::ustring to) { static UnitTable unit_table; - Unit from_unit = unit_table.getUnit(from); - Unit to_unit = unit_table.getUnit(to); - return convert(from_dist, &from_unit, &to_unit); + return convert(from_dist, unit_table.getUnit(from), unit_table.getUnit(to)); } } // namespace Util diff --git a/src/util/units.h b/src/util/units.h index ec9435647..392e51e7a 100644 --- a/src/util/units.h +++ b/src/util/units.h @@ -65,7 +65,7 @@ class Unit { */ int defaultDigits() const; - bool compatibleWith(const Unit *u) const; + bool compatibleWith(const Unit &u) const; bool compatibleWith(const Glib::ustring) const; UnitType type; @@ -88,14 +88,14 @@ public: const Unit *unit; double quantity; - Quantity(double q, const Unit *u); // constructor + Quantity(double q, const Unit &u); // constructor Quantity(double q, const Glib::ustring u); // constructor - bool compatibleWith(const Unit *u) const; + bool compatibleWith(const Unit &u) const; bool compatibleWith(const Glib::ustring u) const; - double value(const Unit *u) const; + double value(const Unit &u) const; double value(const Glib::ustring u) const; - static double convert(const double from_dist, const Unit *from, const Unit *to); + static double convert(const double from_dist, const Unit &from, const Unit &to); static double convert(const double from_dist, const Glib::ustring from, const Unit &to); static double convert(const double from_dist, const Unit &from, const Glib::ustring to); static double convert(const double from_dist, const Glib::ustring from, const Glib::ustring to); @@ -114,16 +114,16 @@ class UnitTable { typedef std::map UnitMap; /** Add a new unit to the table */ - void addUnit(Unit const& u, bool primary); + void addUnit(Unit const &u, bool primary); /** Retrieve a given unit based on its string identifier */ - Unit getUnit(Glib::ustring const& name) const; + Unit getUnit(Glib::ustring const &name) const; /** Retrieve a quantity based on its string identifier */ - Quantity getQuantity(Glib::ustring const& q) const; + Quantity getQuantity(Glib::ustring const &q) const; /** Remove a unit definition from the given unit type table */ - bool deleteUnit(Unit const& u); + bool deleteUnit(Unit const &u); /** Returns true if the given string 'name' is a valid unit in the table */ bool hasUnit(Glib::ustring const &name) const; @@ -159,8 +159,8 @@ class UnitTable { double _linear_scale; private: - UnitTable(UnitTable const& t); - UnitTable operator=(UnitTable const& t); + UnitTable(UnitTable const &t); + UnitTable operator=(UnitTable const &t); }; diff --git a/src/widgets/node-toolbar.cpp b/src/widgets/node-toolbar.cpp index 50880f481..d60b58886 100644 --- a/src/widgets/node-toolbar.cpp +++ b/src/widgets/node-toolbar.cpp @@ -250,16 +250,15 @@ static void sp_node_toolbox_coord_changed(gpointer /*shape_editor*/, GObject *tb gtk_action_set_sensitive(xact, TRUE); gtk_action_set_sensitive(yact, TRUE); Inkscape::Util::UnitTable unit_table; - Unit px = unit_table.getUnit("px"); - Geom::Coord oldx = Quantity::convert(gtk_adjustment_get_value(xadj), &unit, &px); - Geom::Coord oldy = Quantity::convert(gtk_adjustment_get_value(yadj), &unit, &px); + Geom::Coord oldx = Quantity::convert(gtk_adjustment_get_value(xadj), unit, "px"); + Geom::Coord oldy = Quantity::convert(gtk_adjustment_get_value(yadj), unit, "px"); Geom::Point mid = nt->_selected_nodes->pointwiseBounds()->midpoint(); if (oldx != mid[Geom::X]) { - gtk_adjustment_set_value(xadj, Quantity::convert(mid[Geom::X], &px, &unit)); + gtk_adjustment_set_value(xadj, Quantity::convert(mid[Geom::X], "px", unit)); } if (oldy != mid[Geom::Y]) { - gtk_adjustment_set_value(yadj, Quantity::convert(mid[Geom::Y], &px, &unit)); + gtk_adjustment_set_value(yadj, Quantity::convert(mid[Geom::Y], "px", unit)); } } @@ -278,11 +277,10 @@ static void sp_node_path_value_changed(GtkAdjustment *adj, GObject *tbl, Geom::D Unit const unit = tracker->getActiveUnit(); Inkscape::Util::UnitTable unit_table; - Unit px = unit_table.getUnit("px"); if (DocumentUndo::getUndoSensitive(sp_desktop_document(desktop))) { prefs->setDouble(Glib::ustring("/tools/nodes/") + (d == Geom::X ? "x" : "y"), - Quantity::convert(gtk_adjustment_get_value(adj), &unit, &px)); + Quantity::convert(gtk_adjustment_get_value(adj), unit, "px")); } // quit if run by the attr_changed listener @@ -295,7 +293,7 @@ static void sp_node_path_value_changed(GtkAdjustment *adj, GObject *tbl, Geom::D InkNodeTool *nt = get_node_tool(); if (nt && !nt->_selected_nodes->empty()) { - double val = Quantity::convert(gtk_adjustment_get_value(adj), &unit, &px); + double val = Quantity::convert(gtk_adjustment_get_value(adj), unit, "px"); double oldval = nt->_selected_nodes->pointwiseBounds()->midpoint()[d]; Geom::Point delta(0,0); delta[d] = val - oldval; diff --git a/src/widgets/rect-toolbar.cpp b/src/widgets/rect-toolbar.cpp index 359bc48e0..d91b08273 100644 --- a/src/widgets/rect-toolbar.cpp +++ b/src/widgets/rect-toolbar.cpp @@ -95,12 +95,11 @@ static void sp_rtb_value_changed(GtkAdjustment *adj, GObject *tbl, gchar const * UnitTracker* tracker = reinterpret_cast(g_object_get_data( tbl, "tracker" )); Unit const unit = tracker->getActiveUnit(); Inkscape::Util::UnitTable unit_table; - Unit const px = unit_table.getUnit("px"); if (DocumentUndo::getUndoSensitive(sp_desktop_document(desktop))) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); prefs->setDouble(Glib::ustring("/tools/shapes/rect/") + value_name, - Quantity::convert(gtk_adjustment_get_value(adj), &unit, &px)); + Quantity::convert(gtk_adjustment_get_value(adj), unit, "px")); } // quit if run by the attr_changed listener @@ -117,7 +116,7 @@ static void sp_rtb_value_changed(GtkAdjustment *adj, GObject *tbl, gchar const * if (SP_IS_RECT(items->data)) { if (gtk_adjustment_get_value(adj) != 0) { setter(SP_RECT(items->data), - Quantity::convert(gtk_adjustment_get_value(adj), &unit, &px)); + Quantity::convert(gtk_adjustment_get_value(adj), unit, "px")); } else { SP_OBJECT(items->data)->getRepr()->setAttribute(value_name, NULL); } @@ -190,32 +189,31 @@ static void rect_tb_event_attr_changed(Inkscape::XML::Node * /*repr*/, gchar con UnitTracker* tracker = reinterpret_cast( g_object_get_data( tbl, "tracker" ) ); Unit const unit = tracker->getActiveUnit(); Inkscape::Util::UnitTable unit_table; - Unit const px = unit_table.getUnit("px"); gpointer item = g_object_get_data( tbl, "item" ); if (item && SP_IS_RECT(item)) { { GtkAdjustment *adj = GTK_ADJUSTMENT( g_object_get_data( tbl, "rx" ) ); gdouble rx = sp_rect_get_visible_rx(SP_RECT(item)); - gtk_adjustment_set_value(adj, Quantity::convert(rx, &px, &unit)); + gtk_adjustment_set_value(adj, Quantity::convert(rx, "px", unit)); } { GtkAdjustment *adj = GTK_ADJUSTMENT( g_object_get_data( tbl, "ry" ) ); gdouble ry = sp_rect_get_visible_ry(SP_RECT(item)); - gtk_adjustment_set_value(adj, Quantity::convert(ry, &px, &unit)); + gtk_adjustment_set_value(adj, Quantity::convert(ry, "px", unit)); } { GtkAdjustment *adj = GTK_ADJUSTMENT( g_object_get_data( tbl, "width" ) ); gdouble width = sp_rect_get_visible_width (SP_RECT(item)); - gtk_adjustment_set_value(adj, Quantity::convert(width, &px, &unit)); + gtk_adjustment_set_value(adj, Quantity::convert(width, "px", unit)); } { GtkAdjustment *adj = GTK_ADJUSTMENT( g_object_get_data( tbl, "height" ) ); gdouble height = sp_rect_get_visible_height (SP_RECT(item)); - gtk_adjustment_set_value(adj, Quantity::convert(height, &px, &unit)); + gtk_adjustment_set_value(adj, Quantity::convert(height, "px", unit)); } } diff --git a/src/widgets/select-toolbar.cpp b/src/widgets/select-toolbar.cpp index ffab3deab..617757845 100644 --- a/src/widgets/select-toolbar.cpp +++ b/src/widgets/select-toolbar.cpp @@ -97,10 +97,9 @@ sp_selection_layout_widget_update(SPWidget *spw, Inkscape::Selection *sel) } } else { Inkscape::Util::UnitTable unit_table; - Unit px = unit_table.getUnit("px"); for (unsigned i = 0; i < G_N_ELEMENTS(keyval); ++i) { GtkAdjustment *a = GTK_ADJUSTMENT(g_object_get_data(G_OBJECT(spw), keyval[i].key)); - gtk_adjustment_set_value(a, Quantity::convert(keyval[i].val, &px, &unit)); + gtk_adjustment_set_value(a, Quantity::convert(keyval[i].val, "px", unit)); } } } @@ -194,15 +193,14 @@ sp_object_layout_any_value_changed(GtkAdjustment *adj, SPWidget *spw) GtkAdjustment* a_h = GTK_ADJUSTMENT( g_object_get_data( G_OBJECT(spw), "height" ) ); Inkscape::Util::UnitTable unit_table; - Unit px = unit_table.getUnit("px"); if (unit.type == Inkscape::Util::UNIT_TYPE_LINEAR) { - x0 = Quantity::convert(gtk_adjustment_get_value(a_x), &unit, &px); - y0 = Quantity::convert(gtk_adjustment_get_value(a_y), &unit, &px); - x1 = x0 + Quantity::convert(gtk_adjustment_get_value(a_w), &unit, &px); - xrel = Quantity::convert(gtk_adjustment_get_value(a_w), &unit, &px) / bbox_user->dimensions()[Geom::X]; - y1 = y0 + Quantity::convert(gtk_adjustment_get_value(a_h), &unit, &px);; - yrel = Quantity::convert(gtk_adjustment_get_value(a_h), &unit, &px) / bbox_user->dimensions()[Geom::Y]; + x0 = Quantity::convert(gtk_adjustment_get_value(a_x), unit, "px"); + y0 = Quantity::convert(gtk_adjustment_get_value(a_y), unit, "px"); + x1 = x0 + Quantity::convert(gtk_adjustment_get_value(a_w), unit, "px"); + xrel = Quantity::convert(gtk_adjustment_get_value(a_w), unit, "px") / bbox_user->dimensions()[Geom::X]; + y1 = y0 + Quantity::convert(gtk_adjustment_get_value(a_h), unit, "px");; + yrel = Quantity::convert(gtk_adjustment_get_value(a_h), unit, "px") / bbox_user->dimensions()[Geom::Y]; } else { double const x0_propn = gtk_adjustment_get_value (a_x) * unit.factor; x0 = bbox_user->min()[Geom::X] * x0_propn; @@ -232,10 +230,10 @@ sp_object_layout_any_value_changed(GtkAdjustment *adj, SPWidget *spw) // unless the unit is %, convert the scales and moves to the unit if (unit.type == Inkscape::Util::UNIT_TYPE_LINEAR) { - mh = Quantity::convert(mh, &px, &unit); - sh = Quantity::convert(sh, &px, &unit); - mv = Quantity::convert(mv, &px, &unit); - sv = Quantity::convert(sv, &px, &unit); + mh = Quantity::convert(mh, "px", unit); + sh = Quantity::convert(sh, "px", unit); + mv = Quantity::convert(mv, "px", unit); + sv = Quantity::convert(sv, "px", unit); } // do the action only if one of the scales/moves is greater than half the last significant -- cgit v1.2.3 From 5ce7ccd3fb416c686f570e86295c5f619bd86973 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Fri, 19 Jul 2013 14:02:26 -0400 Subject: Removed "helper/unit-menu.h" from "widgets/rect-toolbar.*" and "widgets/spw-utilities.h". (bzr r12380.1.29) --- src/widgets/rect-toolbar.cpp | 1 - src/widgets/spw-utilities.cpp | 46 ------------------------------------------- src/widgets/spw-utilities.h | 5 ----- 3 files changed, 52 deletions(-) diff --git a/src/widgets/rect-toolbar.cpp b/src/widgets/rect-toolbar.cpp index d91b08273..e54a2df07 100644 --- a/src/widgets/rect-toolbar.cpp +++ b/src/widgets/rect-toolbar.cpp @@ -53,7 +53,6 @@ #include "../xml/repr.h" #include "ui/uxmanager.h" #include "../ui/icon-names.h" -#include "../helper/unit-menu.h" #include "util/units.h" #include "ui/widget/unit-tracker.h" #include "../pen-context.h" diff --git a/src/widgets/spw-utilities.cpp b/src/widgets/spw-utilities.cpp index 87ca80f2f..d0a3ed1c5 100644 --- a/src/widgets/spw-utilities.cpp +++ b/src/widgets/spw-utilities.cpp @@ -32,7 +32,6 @@ #include "selection.h" -#include "helper/unit-menu.h" #include "spw-utilities.h" #include @@ -231,51 +230,6 @@ spw_dropdown(GtkWidget * dialog, GtkWidget * table, return selector; } -/** - * Creates a unit selector widget, used for selecting whether one wishes - * to measure screen elements in millimeters, points, etc. This is a - * compound unit that includes a label as well as the dropdown selector. - */ -GtkWidget * -spw_unit_selector(GtkWidget * dialog, GtkWidget * table, - const gchar * label_text, gchar * key, int row, - GtkWidget * us, GCallback cb, bool can_be_negative) -{ - g_assert(dialog != NULL); - g_assert(table != NULL); - g_assert(us != NULL); - - spw_label_old(table, label_text, 0, row); - -#if GTK_CHECK_VERSION(3,0,0) - GtkAdjustment * a = gtk_adjustment_new(0.0, can_be_negative?-1e6:0, 1e6, 1.0, 10.0, 10.0); -#else - GtkObject * a = gtk_adjustment_new(0.0, can_be_negative?-1e6:0, 1e6, 1.0, 10.0, 10.0); -#endif - - g_assert(a != NULL); - g_object_set_data (G_OBJECT (a), "key", key); - g_object_set_data (G_OBJECT (a), "unit_selector", us); - g_object_set_data (G_OBJECT (dialog), key, a); - sp_unit_selector_add_adjustment (SP_UNIT_SELECTOR (us), GTK_ADJUSTMENT (a)); - GtkWidget * sb = gtk_spin_button_new (GTK_ADJUSTMENT (a), 1.0, 4); - g_assert(sb != NULL); - gtk_widget_show (sb); - -#if GTK_CHECK_VERSION(3,0,0) - gtk_widget_set_halign(sb, GTK_ALIGN_FILL); - gtk_widget_set_hexpand(sb, TRUE); - gtk_widget_set_valign(sb, GTK_ALIGN_CENTER); - gtk_grid_attach(GTK_GRID(table), sb, 1, row, 1, 1); -#else - gtk_table_attach (GTK_TABLE (table), sb, 1, 2, row, row+1, - (GtkAttachOptions)(GTK_EXPAND | GTK_FILL), (GtkAttachOptions)0, 0, 0); -#endif - - g_signal_connect (G_OBJECT (a), "value_changed", cb, dialog); - return sb; -} - static void sp_set_font_size_recursive (GtkWidget *w, gpointer font) { diff --git a/src/widgets/spw-utilities.h b/src/widgets/spw-utilities.h index fb8c04ebf..d52cbd888 100644 --- a/src/widgets/spw-utilities.h +++ b/src/widgets/spw-utilities.h @@ -56,11 +56,6 @@ spw_dropdown(GtkWidget *dialog, GtkWidget *table, GtkWidget *selector ); -GtkWidget * -spw_unit_selector(GtkWidget *dialog, GtkWidget *table, - gchar const *label, gchar *key, int row, - GtkWidget *us, GCallback cb, bool can_be_negative = false); - void sp_set_font_size (GtkWidget *w, guint font); void sp_set_font_size_smaller (GtkWidget *w); -- cgit v1.2.3 From ef3bfa7e8bb2996c4042314accc34f6a72f072e1 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Fri, 19 Jul 2013 14:19:03 -0400 Subject: Removed "helper/unit-menu.h" from "widgest/toolbar.*" and associated files. (bzr r12380.1.30) --- src/widgets/arc-toolbar.cpp | 4 ++-- src/widgets/box3d-toolbar.cpp | 6 +++--- src/widgets/calligraphy-toolbar.cpp | 16 ++++++++-------- src/widgets/connector-toolbar.cpp | 6 +++--- src/widgets/erasor-toolbar.cpp | 2 +- src/widgets/gradient-toolbar.cpp | 2 +- src/widgets/measure-toolbar.cpp | 2 +- src/widgets/mesh-toolbar.cpp | 4 ++-- src/widgets/node-toolbar.cpp | 4 ++-- src/widgets/paintbucket-toolbar.cpp | 4 ++-- src/widgets/pencil-toolbar.cpp | 2 +- src/widgets/rect-toolbar.cpp | 8 ++++---- src/widgets/spiral-toolbar.cpp | 6 +++--- src/widgets/spray-toolbar.cpp | 12 ++++++------ src/widgets/star-toolbar.cpp | 8 ++++---- src/widgets/text-toolbar.cpp | 6 ------ src/widgets/toolbox.cpp | 5 ----- src/widgets/toolbox.h | 1 - src/widgets/tweak-toolbar.cpp | 6 +++--- 19 files changed, 46 insertions(+), 58 deletions(-) diff --git a/src/widgets/arc-toolbar.cpp b/src/widgets/arc-toolbar.cpp index e3f3a8c79..42f696bec 100644 --- a/src/widgets/arc-toolbar.cpp +++ b/src/widgets/arc-toolbar.cpp @@ -337,7 +337,7 @@ void sp_arc_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObjec _("Start"), _("Start:"), _("The angle (in degrees) from the horizontal to the arc's start point"), "/tools/shapes/arc/start", 0.0, - GTK_WIDGET(desktop->canvas), NULL/*us*/, holder, TRUE, "altx-arc", + GTK_WIDGET(desktop->canvas), holder, TRUE, "altx-arc", -360.0, 360.0, 1.0, 10.0, 0, 0, 0, sp_arctb_start_value_changed); @@ -350,7 +350,7 @@ void sp_arc_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObjec _("End"), _("End:"), _("The angle (in degrees) from the horizontal to the arc's end point"), "/tools/shapes/arc/end", 0.0, - GTK_WIDGET(desktop->canvas), NULL/*us*/, holder, FALSE, NULL, + GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, -360.0, 360.0, 1.0, 10.0, 0, 0, 0, sp_arctb_end_value_changed); diff --git a/src/widgets/box3d-toolbar.cpp b/src/widgets/box3d-toolbar.cpp index 2d40b996b..91d4ebdec 100644 --- a/src/widgets/box3d-toolbar.cpp +++ b/src/widgets/box3d-toolbar.cpp @@ -316,7 +316,7 @@ void box3d_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject // Translators: PL is short for 'perspective line' _("Angle of PLs in X direction"), "/tools/shapes/3dbox/box3d_angle_x", 30, - GTK_WIDGET(desktop->canvas), NULL, holder, TRUE, "altx-box3d", + GTK_WIDGET(desktop->canvas), holder, TRUE, "altx-box3d", -360.0, 360.0, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), box3d_angle_x_value_changed ); @@ -356,7 +356,7 @@ void box3d_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject // Translators: PL is short for 'perspective line' _("Angle of PLs in Y direction"), "/tools/shapes/3dbox/box3d_angle_y", 30, - GTK_WIDGET(desktop->canvas), NULL, holder, FALSE, NULL, + GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, -360.0, 360.0, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), box3d_angle_y_value_changed ); @@ -395,7 +395,7 @@ void box3d_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject // Translators: PL is short for 'perspective line' _("Angle of PLs in Z direction"), "/tools/shapes/3dbox/box3d_angle_z", 30, - GTK_WIDGET(desktop->canvas), NULL, holder, FALSE, NULL, + GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, -360.0, 360.0, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), box3d_angle_z_value_changed ); diff --git a/src/widgets/calligraphy-toolbar.cpp b/src/widgets/calligraphy-toolbar.cpp index 7c2d6bf19..1f91b9fe2 100644 --- a/src/widgets/calligraphy-toolbar.cpp +++ b/src/widgets/calligraphy-toolbar.cpp @@ -447,7 +447,7 @@ void sp_calligraphy_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions _("Pen Width"), _("Width:"), _("The width of the calligraphic pen (relative to the visible canvas area)"), "/tools/calligraphic/width", 15, - GTK_WIDGET(desktop->canvas), NULL, holder, TRUE, "altx-calligraphy", + GTK_WIDGET(desktop->canvas), holder, TRUE, "altx-calligraphy", 1, 100, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), sp_ddc_width_value_changed, 1, 0 ); @@ -464,7 +464,7 @@ void sp_calligraphy_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions _("Stroke Thinning"), _("Thinning:"), _("How much velocity thins the stroke (> 0 makes fast strokes thinner, < 0 makes them broader, 0 makes width independent of velocity)"), "/tools/calligraphic/thinning", 10, - GTK_WIDGET(desktop->canvas), NULL, holder, FALSE, NULL, + GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, -100, 100, 1, 10.0, labels, values, G_N_ELEMENTS(labels), sp_ddc_velthin_value_changed, 1, 0); @@ -480,7 +480,7 @@ void sp_calligraphy_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions _("Pen Angle"), _("Angle:"), _("The angle of the pen's nib (in degrees; 0 = horizontal; has no effect if fixation = 0)"), "/tools/calligraphic/angle", 30, - GTK_WIDGET(desktop->canvas), NULL, holder, TRUE, "calligraphy-angle", + GTK_WIDGET(desktop->canvas), holder, TRUE, "calligraphy-angle", -90.0, 90.0, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), sp_ddc_angle_value_changed, 1, 0 ); @@ -498,7 +498,7 @@ void sp_calligraphy_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions _("Fixation"), _("Fixation:"), _("Angle behavior (0 = nib always perpendicular to stroke direction, 100 = fixed angle)"), "/tools/calligraphic/flatness", 90, - GTK_WIDGET(desktop->canvas), NULL, holder, FALSE, NULL, + GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 0.0, 100, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), sp_ddc_flatness_value_changed, 1, 0); @@ -515,7 +515,7 @@ void sp_calligraphy_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions _("Cap rounding"), _("Caps:"), _("Increase to make caps at the ends of strokes protrude more (0 = no caps, 1 = round caps)"), "/tools/calligraphic/cap_rounding", 0.0, - GTK_WIDGET(desktop->canvas), NULL, holder, FALSE, NULL, + GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 0.0, 5.0, 0.01, 0.1, labels, values, G_N_ELEMENTS(labels), sp_ddc_cap_rounding_value_changed, 0.01, 2 ); @@ -531,7 +531,7 @@ void sp_calligraphy_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions _("Stroke Tremor"), _("Tremor:"), _("Increase to make strokes rugged and trembling"), "/tools/calligraphic/tremor", 0.0, - GTK_WIDGET(desktop->canvas), NULL, holder, FALSE, NULL, + GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 0.0, 100, 1, 10.0, labels, values, G_N_ELEMENTS(labels), sp_ddc_tremor_value_changed, 1, 0); @@ -549,7 +549,7 @@ void sp_calligraphy_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions _("Pen Wiggle"), _("Wiggle:"), _("Increase to make the pen waver and wiggle"), "/tools/calligraphic/wiggle", 0.0, - GTK_WIDGET(desktop->canvas), NULL, holder, FALSE, NULL, + GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 0.0, 100, 1, 10.0, labels, values, G_N_ELEMENTS(labels), sp_ddc_wiggle_value_changed, 1, 0); @@ -566,7 +566,7 @@ void sp_calligraphy_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions _("Pen Mass"), _("Mass:"), _("Increase to make the pen drag behind, as if slowed by inertia"), "/tools/calligraphic/mass", 2.0, - GTK_WIDGET(desktop->canvas), NULL, holder, FALSE, NULL, + GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 0.0, 100, 1, 10.0, labels, values, G_N_ELEMENTS(labels), sp_ddc_mass_value_changed, 1, 0); diff --git a/src/widgets/connector-toolbar.cpp b/src/widgets/connector-toolbar.cpp index 293f1184d..54344e446 100644 --- a/src/widgets/connector-toolbar.cpp +++ b/src/widgets/connector-toolbar.cpp @@ -361,7 +361,7 @@ void sp_connector_toolbox_prep( SPDesktop *desktop, GtkActionGroup* mainActions, _("Connector Curvature"), _("Curvature:"), _("The amount of connectors curvature"), "/tools/connector/curvature", defaultConnCurvature, - GTK_WIDGET(desktop->canvas), NULL, holder, TRUE, "inkscape:connector-curvature", + GTK_WIDGET(desktop->canvas), holder, TRUE, "inkscape:connector-curvature", 0, 100, 1.0, 10.0, 0, 0, 0, connector_curvature_changed, 1, 0 ); @@ -372,7 +372,7 @@ void sp_connector_toolbox_prep( SPDesktop *desktop, GtkActionGroup* mainActions, _("Connector Spacing"), _("Spacing:"), _("The amount of space left around objects by auto-routing connectors"), "/tools/connector/spacing", defaultConnSpacing, - GTK_WIDGET(desktop->canvas), NULL, holder, TRUE, "inkscape:connector-spacing", + GTK_WIDGET(desktop->canvas), holder, TRUE, "inkscape:connector-spacing", 0, 100, 1.0, 10.0, 0, 0, 0, connector_spacing_changed, 1, 0 ); @@ -394,7 +394,7 @@ void sp_connector_toolbox_prep( SPDesktop *desktop, GtkActionGroup* mainActions, _("Connector Length"), _("Length:"), _("Ideal length for connectors when layout is applied"), "/tools/connector/length", 100, - GTK_WIDGET(desktop->canvas), NULL, holder, TRUE, "inkscape:connector-length", + GTK_WIDGET(desktop->canvas), holder, TRUE, "inkscape:connector-length", 10, 1000, 10.0, 100.0, 0, 0, 0, connector_length_changed, 1, 0 ); diff --git a/src/widgets/erasor-toolbar.cpp b/src/widgets/erasor-toolbar.cpp index 44c79d5f3..8ad376edb 100644 --- a/src/widgets/erasor-toolbar.cpp +++ b/src/widgets/erasor-toolbar.cpp @@ -145,7 +145,7 @@ void sp_eraser_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GOb _("Pen Width"), _("Width:"), _("The width of the eraser pen (relative to the visible canvas area)"), "/tools/eraser/width", 15, - GTK_WIDGET(desktop->canvas), NULL, holder, TRUE, "altx-eraser", + GTK_WIDGET(desktop->canvas), holder, TRUE, "altx-eraser", 1, 100, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), sp_erc_width_value_changed, 1, 0); diff --git a/src/widgets/gradient-toolbar.cpp b/src/widgets/gradient-toolbar.cpp index ea125a380..c1eb13ceb 100644 --- a/src/widgets/gradient-toolbar.cpp +++ b/src/widgets/gradient-toolbar.cpp @@ -1171,7 +1171,7 @@ void sp_gradient_toolbox_prep(SPDesktop * desktop, GtkActionGroup* mainActions, eact = create_adjustment_action( "GradientEditOffsetAction", _("Offset"), _("Offset:"), _("Offset of selected stop"), "/tools/gradient/stopoffset", 0, - GTK_WIDGET(desktop->canvas), NULL/*us*/, holder, FALSE, NULL, + GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 0.0, 1.0, 0.01, 0.1, 0, 0, 0, gr_stop_offset_adjustment_changed diff --git a/src/widgets/measure-toolbar.cpp b/src/widgets/measure-toolbar.cpp index c72cb8fa3..d51a81457 100644 --- a/src/widgets/measure-toolbar.cpp +++ b/src/widgets/measure-toolbar.cpp @@ -106,7 +106,7 @@ void sp_measure_toolbox_prep(SPDesktop * desktop, GtkActionGroup* mainActions, G _("Font Size"), _("Font Size:"), _("The font size to be used in the measurement labels"), "/tools/measure/fontsize", 0.0, - GTK_WIDGET(desktop->canvas), NULL, holder, FALSE, NULL, + GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 10, 36, 1.0, 4.0, 0, 0, 0, sp_measure_fontsize_value_changed); diff --git a/src/widgets/mesh-toolbar.cpp b/src/widgets/mesh-toolbar.cpp index 99a34fbda..37763ab34 100644 --- a/src/widgets/mesh-toolbar.cpp +++ b/src/widgets/mesh-toolbar.cpp @@ -262,7 +262,7 @@ void sp_mesh_toolbox_prep(SPDesktop * desktop, GtkActionGroup* mainActions, GObj eact = create_adjustment_action( "MeshRowAction", _("Rows"), _("Rows:"), _("Number of rows in new mesh"), "/tools/mesh/mesh_rows", 1, - GTK_WIDGET(desktop->canvas), NULL, holder, FALSE, NULL, + GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 1, 20, 1, 1, labels, values, G_N_ELEMENTS(labels), ms_row_changed, @@ -278,7 +278,7 @@ void sp_mesh_toolbox_prep(SPDesktop * desktop, GtkActionGroup* mainActions, GObj eact = create_adjustment_action( "MeshColumnAction", _("Columns"), _("Columns:"), _("Number of columns in new mesh"), "/tools/mesh/mesh_cols", 1, - GTK_WIDGET(desktop->canvas), NULL, holder, FALSE, NULL, + GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 1, 20, 1, 1, labels, values, G_N_ELEMENTS(labels), ms_col_changed, diff --git a/src/widgets/node-toolbar.cpp b/src/widgets/node-toolbar.cpp index d60b58886..65e42a60b 100644 --- a/src/widgets/node-toolbar.cpp +++ b/src/widgets/node-toolbar.cpp @@ -594,7 +594,7 @@ void sp_node_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje eact = create_adjustment_action( "NodeXAction", _("X coordinate:"), _("X:"), _("X coordinate of selected node(s)"), "/tools/nodes/Xcoord", 0, - GTK_WIDGET(desktop->canvas), NULL/*us*/, holder, TRUE, "altx-nodes", + GTK_WIDGET(desktop->canvas), holder, TRUE, "altx-nodes", -1e6, 1e6, SPIN_STEP, SPIN_PAGE_STEP, labels, values, G_N_ELEMENTS(labels), sp_node_path_x_value_changed ); @@ -612,7 +612,7 @@ void sp_node_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje eact = create_adjustment_action( "NodeYAction", _("Y coordinate:"), _("Y:"), _("Y coordinate of selected node(s)"), "/tools/nodes/Ycoord", 0, - GTK_WIDGET(desktop->canvas), NULL/*us*/, holder, FALSE, NULL, + GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, -1e6, 1e6, SPIN_STEP, SPIN_PAGE_STEP, labels, values, G_N_ELEMENTS(labels), sp_node_path_y_value_changed ); diff --git a/src/widgets/paintbucket-toolbar.cpp b/src/widgets/paintbucket-toolbar.cpp index 2c782da70..3bb1fa24a 100644 --- a/src/widgets/paintbucket-toolbar.cpp +++ b/src/widgets/paintbucket-toolbar.cpp @@ -164,7 +164,7 @@ void sp_paintbucket_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions "ThresholdAction", _("Fill Threshold"), _("Threshold:"), _("The maximum allowed difference between the clicked pixel and the neighboring pixels to be counted in the fill"), - "/tools/paintbucket/threshold", 5, GTK_WIDGET(desktop->canvas), NULL, holder, TRUE, + "/tools/paintbucket/threshold", 5, GTK_WIDGET(desktop->canvas), holder, TRUE, "inkscape:paintbucket-threshold", 0, 100.0, 1.0, 10.0, 0, 0, 0, paintbucket_threshold_changed, 1, 0 ); @@ -193,7 +193,7 @@ void sp_paintbucket_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions "OffsetAction", _("Grow/shrink by"), _("Grow/shrink by:"), _("The amount to grow (positive) or shrink (negative) the created fill path"), - "/tools/paintbucket/offset", 0, GTK_WIDGET(desktop->canvas), NULL/*us*/, holder, TRUE, + "/tools/paintbucket/offset", 0, GTK_WIDGET(desktop->canvas), holder, TRUE, "inkscape:paintbucket-offset", -1e4, 1e4, 0.1, 0.5, 0, 0, 0, paintbucket_offset_changed, 1, 2); diff --git a/src/widgets/pencil-toolbar.cpp b/src/widgets/pencil-toolbar.cpp index e38b54b5d..851ad7134 100644 --- a/src/widgets/pencil-toolbar.cpp +++ b/src/widgets/pencil-toolbar.cpp @@ -302,7 +302,7 @@ void sp_pencil_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GOb _("How much smoothing (simplifying) is applied to the line"), "/tools/freehand/pencil/tolerance", 3.0, - GTK_WIDGET(desktop->canvas), NULL, + GTK_WIDGET(desktop->canvas), holder, TRUE, "altx-pencil", 1, 100.0, 0.5, 1.0, labels, values, G_N_ELEMENTS(labels), diff --git a/src/widgets/rect-toolbar.cpp b/src/widgets/rect-toolbar.cpp index e54a2df07..29488031f 100644 --- a/src/widgets/rect-toolbar.cpp +++ b/src/widgets/rect-toolbar.cpp @@ -317,7 +317,7 @@ void sp_rect_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje eact = create_adjustment_action( "RectWidthAction", _("Width"), _("W:"), _("Width of rectangle"), "/tools/shapes/rect/width", 0, - GTK_WIDGET(desktop->canvas), NULL/*us*/, holder, TRUE, "altx-rect", + GTK_WIDGET(desktop->canvas), holder, TRUE, "altx-rect", 0, 1e6, SPIN_STEP, SPIN_PAGE_STEP, labels, values, G_N_ELEMENTS(labels), sp_rtb_width_value_changed ); @@ -334,7 +334,7 @@ void sp_rect_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje eact = create_adjustment_action( "RectHeightAction", _("Height"), _("H:"), _("Height of rectangle"), "/tools/shapes/rect/height", 0, - GTK_WIDGET(desktop->canvas), NULL/*us*/, holder, FALSE, NULL, + GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 0, 1e6, SPIN_STEP, SPIN_PAGE_STEP, labels, values, G_N_ELEMENTS(labels), sp_rtb_height_value_changed ); @@ -351,7 +351,7 @@ void sp_rect_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje eact = create_adjustment_action( "RadiusXAction", _("Horizontal radius"), _("Rx:"), _("Horizontal radius of rounded corners"), "/tools/shapes/rect/rx", 0, - GTK_WIDGET(desktop->canvas), NULL/*us*/, holder, FALSE, NULL, + GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 0, 1e6, SPIN_STEP, SPIN_PAGE_STEP, labels, values, G_N_ELEMENTS(labels), sp_rtb_rx_value_changed); @@ -366,7 +366,7 @@ void sp_rect_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje eact = create_adjustment_action( "RadiusYAction", _("Vertical radius"), _("Ry:"), _("Vertical radius of rounded corners"), "/tools/shapes/rect/ry", 0, - GTK_WIDGET(desktop->canvas), NULL/*us*/, holder, FALSE, NULL, + GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 0, 1e6, SPIN_STEP, SPIN_PAGE_STEP, labels, values, G_N_ELEMENTS(labels), sp_rtb_ry_value_changed); diff --git a/src/widgets/spiral-toolbar.cpp b/src/widgets/spiral-toolbar.cpp index 48b509acc..cccaf5154 100644 --- a/src/widgets/spiral-toolbar.cpp +++ b/src/widgets/spiral-toolbar.cpp @@ -259,7 +259,7 @@ void sp_spiral_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GOb eact = create_adjustment_action( "SpiralRevolutionAction", _("Number of turns"), _("Turns:"), _("Number of revolutions"), "/tools/shapes/spiral/revolution", 3.0, - GTK_WIDGET(desktop->canvas), NULL, holder, TRUE, "altx-spiral", + GTK_WIDGET(desktop->canvas), holder, TRUE, "altx-spiral", 0.01, 1024.0, 0.1, 1.0, labels, values, G_N_ELEMENTS(labels), sp_spl_tb_revolution_value_changed, 1, 2); @@ -273,7 +273,7 @@ void sp_spiral_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GOb eact = create_adjustment_action( "SpiralExpansionAction", _("Divergence"), _("Divergence:"), _("How much denser/sparser are outer revolutions; 1 = uniform"), "/tools/shapes/spiral/expansion", 1.0, - GTK_WIDGET(desktop->canvas), NULL, holder, FALSE, NULL, + GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 0.0, 1000.0, 0.01, 1.0, labels, values, G_N_ELEMENTS(labels), sp_spl_tb_expansion_value_changed); @@ -287,7 +287,7 @@ void sp_spiral_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GOb eact = create_adjustment_action( "SpiralT0Action", _("Inner radius"), _("Inner radius:"), _("Radius of the innermost revolution (relative to the spiral size)"), "/tools/shapes/spiral/t0", 0.0, - GTK_WIDGET(desktop->canvas), NULL, holder, FALSE, NULL, + GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 0.0, 0.999, 0.01, 1.0, labels, values, G_N_ELEMENTS(labels), sp_spl_tb_t0_value_changed); diff --git a/src/widgets/spray-toolbar.cpp b/src/widgets/spray-toolbar.cpp index bdc700aa8..fe221f695 100644 --- a/src/widgets/spray-toolbar.cpp +++ b/src/widgets/spray-toolbar.cpp @@ -127,7 +127,7 @@ void sp_spray_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObj EgeAdjustmentAction *eact = create_adjustment_action( "SprayWidthAction", _("Width"), _("Width:"), _("The width of the spray area (relative to the visible canvas area)"), "/tools/spray/width", 15, - GTK_WIDGET(desktop->canvas), NULL, holder, TRUE, "altx-spray", + GTK_WIDGET(desktop->canvas), holder, TRUE, "altx-spray", 1, 100, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), sp_spray_width_value_changed, 1, 0 ); @@ -143,7 +143,7 @@ void sp_spray_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObj EgeAdjustmentAction *eact = create_adjustment_action( "SprayMeanAction", _("Focus"), _("Focus:"), _("0 to spray a spot; increase to enlarge the ring radius"), "/tools/spray/mean", 0, - GTK_WIDGET(desktop->canvas), NULL, holder, TRUE, "spray-mean", + GTK_WIDGET(desktop->canvas), holder, TRUE, "spray-mean", 0, 100, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), sp_spray_mean_value_changed, 1, 0 ); @@ -159,7 +159,7 @@ void sp_spray_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObj EgeAdjustmentAction *eact = create_adjustment_action( "SprayStandard_deviationAction", C_("Spray tool", "Scatter"), C_("Spray tool", "Scatter:"), _("Increase to scatter sprayed objects"), "/tools/spray/standard_deviation", 70, - GTK_WIDGET(desktop->canvas), NULL, holder, TRUE, "spray-standard_deviation", + GTK_WIDGET(desktop->canvas), holder, TRUE, "spray-standard_deviation", 1, 100, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), sp_spray_standard_deviation_value_changed, 1, 0 ); @@ -220,7 +220,7 @@ void sp_spray_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObj _("Amount"), _("Amount:"), _("Adjusts the number of items sprayed per click"), "/tools/spray/population", 70, - GTK_WIDGET(desktop->canvas), NULL, holder, TRUE, "spray-population", + GTK_WIDGET(desktop->canvas), holder, TRUE, "spray-population", 1, 100, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), sp_spray_population_value_changed, 1, 0 ); @@ -251,7 +251,7 @@ void sp_spray_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObj // xgettext:no-c-format _("Variation of the rotation of the sprayed objects; 0% for the same rotation than the original object"), "/tools/spray/rotation_variation", 0, - GTK_WIDGET(desktop->canvas), NULL, holder, TRUE, "spray-rotation", + GTK_WIDGET(desktop->canvas), holder, TRUE, "spray-rotation", 0, 100, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), sp_spray_rotation_value_changed, 1, 0 ); @@ -269,7 +269,7 @@ void sp_spray_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObj // xgettext:no-c-format _("Variation in the scale of the sprayed objects; 0% for the same scale than the original object"), "/tools/spray/scale_variation", 0, - GTK_WIDGET(desktop->canvas), NULL, holder, TRUE, "spray-scale", + GTK_WIDGET(desktop->canvas), holder, TRUE, "spray-scale", 0, 100, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), sp_spray_scale_value_changed, 1, 0 ); diff --git a/src/widgets/star-toolbar.cpp b/src/widgets/star-toolbar.cpp index 545256061..9f7dd95e0 100644 --- a/src/widgets/star-toolbar.cpp +++ b/src/widgets/star-toolbar.cpp @@ -501,7 +501,7 @@ void sp_star_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje eact = create_adjustment_action( "MagnitudeAction", _("Corners"), _("Corners:"), _("Number of corners of a polygon or star"), "/tools/shapes/star/magnitude", 3, - GTK_WIDGET(desktop->canvas), NULL, holder, FALSE, NULL, + GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 3, 1024, 1, 5, labels, values, G_N_ELEMENTS(labels), sp_stb_magnitude_value_changed, @@ -520,7 +520,7 @@ void sp_star_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje // Base radius is the same for the closest handle. _("Base radius to tip radius ratio"), "/tools/shapes/star/proportion", 0.5, - GTK_WIDGET(desktop->canvas), NULL, holder, FALSE, NULL, + GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 0.01, 1.0, 0.01, 0.1, labels, values, G_N_ELEMENTS(labels), sp_stb_proportion_value_changed ); @@ -541,7 +541,7 @@ void sp_star_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje eact = create_adjustment_action( "RoundednessAction", _("Rounded"), _("Rounded:"), _("How much rounded are the corners (0 for sharp)"), "/tools/shapes/star/rounded", 0.0, - GTK_WIDGET(desktop->canvas), NULL, holder, FALSE, NULL, + GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, -10.0, 10.0, 0.01, 0.1, labels, values, G_N_ELEMENTS(labels), sp_stb_rounded_value_changed ); @@ -556,7 +556,7 @@ void sp_star_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje eact = create_adjustment_action( "RandomizationAction", _("Randomized"), _("Randomized:"), _("Scatter randomly the corners and angles"), "/tools/shapes/star/randomized", 0.0, - GTK_WIDGET(desktop->canvas), NULL, holder, FALSE, NULL, + GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, -10.0, 10.0, 0.001, 0.01, labels, values, G_N_ELEMENTS(labels), sp_stb_randomized_value_changed, 0.1, 3 ); diff --git a/src/widgets/text-toolbar.cpp b/src/widgets/text-toolbar.cpp index 4dd44bb8d..a7bd25b2c 100644 --- a/src/widgets/text-toolbar.cpp +++ b/src/widgets/text-toolbar.cpp @@ -1459,7 +1459,6 @@ void sp_text_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje "/tools/text/lineheight", /* preferences path */ 0.0, /* default */ GTK_WIDGET(desktop->canvas), /* focusTarget */ - NULL, /* unit selector */ holder, /* dataKludge */ FALSE, /* set alt-x keyboard shortcut? */ NULL, /* altx_mark */ @@ -1490,7 +1489,6 @@ void sp_text_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje "/tools/text/wordspacing", /* preferences path */ 0.0, /* default */ GTK_WIDGET(desktop->canvas), /* focusTarget */ - NULL, /* unit selector */ holder, /* dataKludge */ FALSE, /* set alt-x keyboard shortcut? */ NULL, /* altx_mark */ @@ -1521,7 +1519,6 @@ void sp_text_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje "/tools/text/letterspacing", /* preferences path */ 0.0, /* default */ GTK_WIDGET(desktop->canvas), /* focusTarget */ - NULL, /* unit selector */ holder, /* dataKludge */ FALSE, /* set alt-x keyboard shortcut? */ NULL, /* altx_mark */ @@ -1552,7 +1549,6 @@ void sp_text_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje "/tools/text/dx", /* preferences path */ 0.0, /* default */ GTK_WIDGET(desktop->canvas), /* focusTarget */ - NULL, /* unit selector */ holder, /* dataKludge */ FALSE, /* set alt-x keyboard shortcut? */ NULL, /* altx_mark */ @@ -1583,7 +1579,6 @@ void sp_text_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje "/tools/text/dy", /* preferences path */ 0.0, /* default */ GTK_WIDGET(desktop->canvas), /* focusTarget */ - NULL, /* unit selector */ holder, /* dataKludge */ FALSE, /* set alt-x keyboard shortcut? */ NULL, /* altx_mark */ @@ -1614,7 +1609,6 @@ void sp_text_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje "/tools/text/rotation", /* preferences path */ 0.0, /* default */ GTK_WIDGET(desktop->canvas), /* focusTarget */ - NULL, /* unit selector */ holder, /* dataKludge */ FALSE, /* set alt-x keyboard shortcut? */ NULL, /* altx_mark */ diff --git a/src/widgets/toolbox.cpp b/src/widgets/toolbox.cpp index 687f62420..dcd4360fd 100644 --- a/src/widgets/toolbox.cpp +++ b/src/widgets/toolbox.cpp @@ -49,7 +49,6 @@ #include "../graphlayout.h" #include "../helper/action.h" #include "../helper/action-context.h" -#include "../helper/unit-menu.h" #include "icon.h" #include "../ink-action.h" #include "../ink-comboboxentry-action.h" @@ -1028,7 +1027,6 @@ EgeAdjustmentAction * create_adjustment_action( gchar const *name, gchar const *label, gchar const *shortLabel, gchar const *tooltip, Glib::ustring const &path, gdouble def, GtkWidget *focusTarget, - GtkWidget *us, GObject *dataKludge, gboolean altx, gchar const *altx_mark, gdouble lower, gdouble upper, gdouble step, gdouble page, @@ -1045,9 +1043,6 @@ EgeAdjustmentAction * create_adjustment_action( gchar const *name, Inkscape::Preferences *prefs = Inkscape::Preferences::get(); GtkAdjustment* adj = GTK_ADJUSTMENT( gtk_adjustment_new( prefs->getDouble(path, def) * factor, lower, upper, step, page, 0 ) ); - if (us) { - sp_unit_selector_add_adjustment( SP_UNIT_SELECTOR(us), adj ); - } g_signal_connect( G_OBJECT(adj), "value-changed", G_CALLBACK(callback), dataKludge ); diff --git a/src/widgets/toolbox.h b/src/widgets/toolbox.h index 9c839a8fe..197f0fb5e 100644 --- a/src/widgets/toolbox.h +++ b/src/widgets/toolbox.h @@ -118,7 +118,6 @@ void delete_connection(GObject * /*obj*/, sigc::connection *connection); gchar const *label, gchar const *shortLabel, gchar const *tooltip, Glib::ustring const &path, gdouble def, GtkWidget *focusTarget, - GtkWidget *us, GObject *dataKludge, gboolean altx, gchar const *altx_mark, gdouble lower, gdouble upper, gdouble step, gdouble page, diff --git a/src/widgets/tweak-toolbar.cpp b/src/widgets/tweak-toolbar.cpp index e96418957..d5fe67ef7 100644 --- a/src/widgets/tweak-toolbar.cpp +++ b/src/widgets/tweak-toolbar.cpp @@ -141,7 +141,7 @@ void sp_tweak_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObj EgeAdjustmentAction *eact = create_adjustment_action( "TweakWidthAction", _("Width"), _("Width:"), _("The width of the tweak area (relative to the visible canvas area)"), "/tools/tweak/width", 15, - GTK_WIDGET(desktop->canvas), NULL, holder, TRUE, "altx-tweak", + GTK_WIDGET(desktop->canvas), holder, TRUE, "altx-tweak", 1, 100, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), sp_tweak_width_value_changed, 0.01, 0, 100 ); @@ -158,7 +158,7 @@ void sp_tweak_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObj EgeAdjustmentAction *eact = create_adjustment_action( "TweakForceAction", _("Force"), _("Force:"), _("The force of the tweak action"), "/tools/tweak/force", 20, - GTK_WIDGET(desktop->canvas), NULL, holder, TRUE, "tweak-force", + GTK_WIDGET(desktop->canvas), holder, TRUE, "tweak-force", 1, 100, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), sp_tweak_force_value_changed, 0.01, 0, 100 ); @@ -367,7 +367,7 @@ void sp_tweak_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObj _("Fidelity"), _("Fidelity:"), _("Low fidelity simplifies paths; high fidelity preserves path features but may generate a lot of new nodes"), "/tools/tweak/fidelity", 50, - GTK_WIDGET(desktop->canvas), NULL, holder, TRUE, "tweak-fidelity", + GTK_WIDGET(desktop->canvas), holder, TRUE, "tweak-fidelity", 1, 100, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), sp_tweak_fidelity_value_changed, 0.01, 0, 100 ); -- cgit v1.2.3 From 912d3580e5931b73b79fef0c060906676259d9f0 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Fri, 19 Jul 2013 14:20:56 -0400 Subject: Removed "helper/unit-menu.h" and "helper/units.h" from "desktop-events.cpp". (bzr r12380.1.31) --- src/desktop-events.cpp | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/desktop-events.cpp b/src/desktop-events.cpp index 217187553..473ccfa9f 100644 --- a/src/desktop-events.cpp +++ b/src/desktop-events.cpp @@ -34,8 +34,6 @@ #include "document-undo.h" #include "event-context.h" #include "helper/action.h" -#include "helper/unit-menu.h" -#include "helper/units.h" #include "message-context.h" #include "preferences.h" #include "snap.h" -- cgit v1.2.3 From 180129cb81a37d222ab8fb3bd0446d043324ba2e Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Fri, 19 Jul 2013 14:22:11 -0400 Subject: Removed "helper/unit-menu.h" and "helper/units.h" from "flood-context.h". (bzr r12380.1.32) --- src/flood-context.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/flood-context.h b/src/flood-context.h index 3e81cd01e..810a3b48f 100644 --- a/src/flood-context.h +++ b/src/flood-context.h @@ -15,8 +15,6 @@ #include #include #include "event-context.h" -#include "helper/unit-menu.h" -#include "helper/units.h" #define SP_TYPE_FLOOD_CONTEXT (sp_flood_context_get_type ()) #define SP_FLOOD_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SP_TYPE_FLOOD_CONTEXT, SPFloodContext)) -- cgit v1.2.3 From 231a793d4d28f83b55fe9104a6593d72bca75219 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Fri, 19 Jul 2013 14:32:09 -0400 Subject: Removed "helper/units.h" from "ui/dialog/document-properties.cpp". (bzr r12380.1.33) --- src/ui/dialog/document-properties.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/ui/dialog/document-properties.cpp b/src/ui/dialog/document-properties.cpp index af462a1df..77fb182e5 100644 --- a/src/ui/dialog/document-properties.cpp +++ b/src/ui/dialog/document-properties.cpp @@ -28,7 +28,6 @@ #include "document.h" #include "desktop-handles.h" #include "desktop.h" -#include "helper/units.h" #include "inkscape.h" #include "io/sys.h" #include "preferences.h" @@ -1431,8 +1430,8 @@ void DocumentProperties::update() _rcp_bord.setRgba32 (nv->bordercolor); _rcb_shad.setActive (nv->showpageshadow); - //if (nv->doc_units) - // _rum_deflt.setUnit (nv->doc_units); + if (nv->doc_units) + _rum_deflt.setUnit (nv->doc_units->abbr); double const doc_w_px = sp_desktop_document(dt)->getWidth(); double const doc_h_px = sp_desktop_document(dt)->getHeight(); -- cgit v1.2.3 From 0fb0f1dd09f4c03a420dd8abf2089b81cd6d30d7 Mon Sep 17 00:00:00 2001 From: Slagvi Public Date: Fri, 19 Jul 2013 20:35:26 +0200 Subject: New From Template ui rearrangement (bzr r12379.2.11) --- src/ui/dialog/Makefile_insert | 4 +- src/ui/dialog/new-from-template.cpp | 10 +-- src/ui/dialog/new-from-template.h | 6 +- src/ui/dialog/static-template-load-tab.cpp | 80 --------------------- src/ui/dialog/static-template-load-tab.h | 44 ------------ src/ui/dialog/template-load-tab.cpp | 48 +++++-------- src/ui/dialog/template-load-tab.h | 20 +++--- src/ui/dialog/template-widget.cpp | 110 +++++++++++++++++++++++++++++ src/ui/dialog/template-widget.h | 48 +++++++++++++ 9 files changed, 193 insertions(+), 177 deletions(-) delete mode 100644 src/ui/dialog/static-template-load-tab.cpp delete mode 100644 src/ui/dialog/static-template-load-tab.h create mode 100644 src/ui/dialog/template-widget.cpp create mode 100644 src/ui/dialog/template-widget.h diff --git a/src/ui/dialog/Makefile_insert b/src/ui/dialog/Makefile_insert index 4a34cc71c..41e3ecbf8 100644 --- a/src/ui/dialog/Makefile_insert +++ b/src/ui/dialog/Makefile_insert @@ -87,8 +87,6 @@ ink_common_sources += \ ui/dialog/scriptdialog.h \ ui/dialog/spellcheck.cpp \ ui/dialog/spellcheck.h \ - ui/dialog/static-template-load-tab.cpp \ - ui/dialog/static-template-load-tab.h \ ui/dialog/svg-fonts-dialog.cpp \ ui/dialog/svg-fonts-dialog.h \ ui/dialog/swatches.cpp \ @@ -97,6 +95,8 @@ ink_common_sources += \ ui/dialog/symbols.h \ ui/dialog/template-load-tab.cpp \ ui/dialog/template-load-tab.h \ + ui/dialog/template-widget.cpp \ + ui/dialog/template-widget.h \ ui/dialog/text-edit.cpp \ ui/dialog/text-edit.h \ ui/dialog/tile.cpp \ diff --git a/src/ui/dialog/new-from-template.cpp b/src/ui/dialog/new-from-template.cpp index 765ec0bce..241da3f43 100644 --- a/src/ui/dialog/new-from-template.cpp +++ b/src/ui/dialog/new-from-template.cpp @@ -27,9 +27,7 @@ NewFromTemplate::NewFromTemplate() resize(400, 400); get_vbox()->pack_start(_main_widget); - _main_widget.append_page(_tab1, "Static Templates"); - _main_widget.append_page(_tab2, "Procedural Templates"); - + Gtk::Alignment *align; align = manage(new Gtk::Alignment(Gtk::ALIGN_END, Gtk::ALIGN_CENTER, 0.0, 0.0)); get_vbox()->pack_end(*align, Gtk::PACK_SHRINK, 5); @@ -44,11 +42,7 @@ NewFromTemplate::NewFromTemplate() void NewFromTemplate::_createFromTemplate() { - if ( _main_widget.get_current_page() == 0 ) { - _tab1.createTemplate(); - } else { - _tab2.createTemplate(); - } + _main_widget.createTemplate(); response(0); } diff --git a/src/ui/dialog/new-from-template.h b/src/ui/dialog/new-from-template.h index 59b61a015..05af98a50 100644 --- a/src/ui/dialog/new-from-template.h +++ b/src/ui/dialog/new-from-template.h @@ -16,7 +16,6 @@ #include #include "template-load-tab.h" -#include "static-template-load-tab.h" namespace Inkscape { @@ -30,10 +29,9 @@ public: private: NewFromTemplate(); - Gtk::Notebook _main_widget; Gtk::Button _create_template_button; - StaticTemplateLoadTab _tab1; - TemplateLoadTab _tab2; + //StaticTemplateLoadTab _tab1; + TemplateLoadTab _main_widget; void _createFromTemplate(); }; diff --git a/src/ui/dialog/static-template-load-tab.cpp b/src/ui/dialog/static-template-load-tab.cpp deleted file mode 100644 index 35f3430fb..000000000 --- a/src/ui/dialog/static-template-load-tab.cpp +++ /dev/null @@ -1,80 +0,0 @@ -/** @file - * @brief New From Template static templates tab - implementation - */ -/* Authors: - * Jan Darowski , supervised by Krzysztof Kosiński - * - * Copyright (C) 2013 Authors - * Released under GNU GPL, read the file 'COPYING' for more information - */ - -#include "static-template-load-tab.h" - -#include -#include -#include -#include - -#include "file.h" - - -namespace Inkscape { -namespace UI { - - -StaticTemplateLoadTab::StaticTemplateLoadTab() - : TemplateLoadTab() - , _more_info_button("More info") - , _short_description_label("Short description - I like trains. ad asda asd asdweqe gdfg") - , _template_author_label("by template_author") - , _template_name_label("Template_name") - , _preview_image("preview.png") -{ - _loading_path = ""; - _loadTemplates(); - _initLists(); - - _info_box.pack_start(_template_name_label, Gtk::PACK_SHRINK, 4); - _info_box.pack_start(_template_author_label, Gtk::PACK_SHRINK, 0); - _info_box.pack_start(_preview_image, Gtk::PACK_SHRINK, 15); - _info_box.pack_start(_short_description_label, Gtk::PACK_SHRINK, 4); - - _short_description_label.set_line_wrap(true); - _short_description_label.set_size_request(200); - - Gtk::Alignment *align; - align = manage(new Gtk::Alignment(Gtk::ALIGN_END, Gtk::ALIGN_CENTER, 0.0, 0.0)); - _info_box.pack_start(*align, Gtk::PACK_SHRINK, 5); - align->add(_more_info_button); - - _more_info_button.signal_pressed().connect( - sigc::mem_fun(*this, &StaticTemplateLoadTab::_displayTemplateDetails)); -} - - -void StaticTemplateLoadTab::createTemplate() -{ - Glib::ustring path; - if (_tdata.find(_current_template) != _tdata.end()){ - path = _tdata[_current_template].path; - } - else - path = ""; - - sp_file_new(path); -} - - -void StaticTemplateLoadTab::_displayTemplateInfo() -{ - TemplateLoadTab::_displayTemplateInfo(); - _template_name_label.set_text(_current_template); - _template_author_label.set_text(_tdata[_current_template].author); - _short_description_label.set_text(_tdata[_current_template].short_description); - - Glib::ustring imagePath = Glib::build_filename(Glib::path_get_dirname(_tdata[_current_template].path), _tdata[_current_template].preview_name); - _preview_image.set(imagePath); -} - -} -} diff --git a/src/ui/dialog/static-template-load-tab.h b/src/ui/dialog/static-template-load-tab.h deleted file mode 100644 index 9b19c495a..000000000 --- a/src/ui/dialog/static-template-load-tab.h +++ /dev/null @@ -1,44 +0,0 @@ -/** @file - * @brief New From Template static templates tab - */ -/* Authors: - * Jan Darowski , supervised by Krzysztof Kosiński - * - * Copyright (C) 2013 Authors - * Released under GNU GPL, read the file 'COPYING' for more information - */ - -#ifndef INKSCAPE_SEEN_UI_DIALOG_STATIC_TEMPLATE_LOAD_TAB_H -#define INKSCAPE_SEEN_UI_DIALOG_STATIC_TEMPLATE_LOAD_TAB_H - -#include "template-load-tab.h" - -#include -#include -#include - - -namespace Inkscape { -namespace UI { - - -class StaticTemplateLoadTab : public TemplateLoadTab -{ -public: - StaticTemplateLoadTab(); - virtual void createTemplate(); - -protected: - virtual void _displayTemplateInfo(); - - Gtk::Button _more_info_button; - Gtk::Label _short_description_label; - Gtk::Label _template_author_label; - Gtk::Label _template_name_label; - Gtk::Image _preview_image; -}; - -} -} - -#endif diff --git a/src/ui/dialog/template-load-tab.cpp b/src/ui/dialog/template-load-tab.cpp index 90980dc39..70dadfc52 100644 --- a/src/ui/dialog/template-load-tab.cpp +++ b/src/ui/dialog/template-load-tab.cpp @@ -23,6 +23,8 @@ #include "xml/document.h" #include "xml/node.h" +#include "template-widget.h" + // #include @@ -39,10 +41,11 @@ namespace UI { TemplateLoadTab::TemplateLoadTab() : _current_keyword("") , _keywords_combo(true) - ,_current_search_type(ALL) + , _current_search_type(ALL) { set_border_width(10); + _info_widget = manage(new TemplateWidget()); Gtk::Label *title; title = manage(new Gtk::Label("Search:")); _tlist_box.pack_start(*title, Gtk::PACK_SHRINK, 10); @@ -53,11 +56,11 @@ TemplateLoadTab::TemplateLoadTab() _tlist_box.pack_start(*title, Gtk::PACK_SHRINK, 10); title = manage(new Gtk::Label("Selected template")); - _info_box.pack_start(*title, Gtk::PACK_SHRINK, 10); + _info_widget->pack_start(*title, Gtk::PACK_SHRINK, 10); add(_main_box); _main_box.pack_start(_tlist_box, Gtk::PACK_SHRINK, 20); - _main_box.pack_start(_info_box, Gtk::PACK_EXPAND_WIDGET, 10); + _main_box.pack_start(*_info_widget, Gtk::PACK_EXPAND_WIDGET, 10); Gtk::ScrolledWindow *scrolled; scrolled = manage(new Gtk::ScrolledWindow()); @@ -68,6 +71,11 @@ TemplateLoadTab::TemplateLoadTab() _keywords_combo.signal_changed().connect( sigc::mem_fun(*this, &TemplateLoadTab::_keywordSelected)); this->show_all(); + + + _loading_path = ""; + _loadTemplates(); + _initLists(); } @@ -78,7 +86,7 @@ TemplateLoadTab::~TemplateLoadTab() void TemplateLoadTab::createTemplate() { - std::cout << "Default Template Tab" << std::endl; + _info_widget->create(); } @@ -87,7 +95,10 @@ void TemplateLoadTab::_displayTemplateInfo() Glib::RefPtr templateSelectionRef = _tlist_view.get_selection(); if (templateSelectionRef->get_selected()) { _current_template = (*templateSelectionRef->get_selected())[_columns.textValue]; + + _info_widget->display(_tdata[_current_template]); } + } @@ -194,7 +205,8 @@ TemplateLoadTab::TemplateData TemplateLoadTab::_processTemplateFile(const Glib:: { TemplateData result; result.path = path; - result.display_name = Glib::path_get_basename(path);/* + result.display_name = Glib::path_get_basename(path); + result.is_procedural = false;/* result.short_description = "LaLaLaLa"; result.author = "JAASDASD";*/ @@ -264,31 +276,5 @@ void TemplateLoadTab::_getTemplatesFromDir(const Glib::ustring &path) } } -void TemplateLoadTab::_displayTemplateDetails() -{ - if (_current_template == "") - return; - - TemplateData &tmpl = _tdata[_current_template]; - - Glib::ustring message = tmpl.display_name + "\n\n" + - _("Path: ") + tmpl.path + "\n\n"; - - if (tmpl.long_description != "") - message += _("Description: ") + _tdata[_current_template].long_description + "\n\n"; - if (tmpl.keywords.size() > 0){ - message += _("Keywords: "); - for (std::set::iterator it = tmpl.keywords.begin(); it != tmpl.keywords.end(); ++it) - message += *it + " "; - message += "\n\n"; - } - - if (tmpl.author != "") - message += _("By: ") + _tdata[_current_template].author + " " + tmpl.creation_date + "\n\n"; - - Gtk::MessageDialog dl(message, false, Gtk::MESSAGE_OTHER); - dl.run(); -} - } } diff --git a/src/ui/dialog/template-load-tab.h b/src/ui/dialog/template-load-tab.h index 8290f1b3f..48ad23ae9 100644 --- a/src/ui/dialog/template-load-tab.h +++ b/src/ui/dialog/template-load-tab.h @@ -22,19 +22,16 @@ namespace Inkscape { namespace UI { - + +class TemplateWidget; class TemplateLoadTab : public Gtk::Frame { public: - TemplateLoadTab(); - virtual ~TemplateLoadTab(); - virtual void createTemplate(); - -protected: struct TemplateData { + bool is_procedural; Glib::ustring path; Glib::ustring display_name; Glib::ustring author; @@ -45,6 +42,12 @@ protected: std::set keywords; }; + TemplateLoadTab(); + virtual ~TemplateLoadTab(); + virtual void createTemplate(); + +protected: + class StringModelColumns : public Gtk::TreeModelColumnRecord { public: @@ -68,11 +71,10 @@ protected: virtual void _refreshTemplatesList(); void _loadTemplates(); void _initLists(); - void _displayTemplateDetails(); Gtk::HBox _main_box; Gtk::VBox _tlist_box; - Gtk::VBox _info_box; + TemplateWidget *_info_widget; Gtk::ComboBoxText _keywords_combo; @@ -80,6 +82,8 @@ protected: Glib::RefPtr _tlist_store; StringModelColumns _columns; + + private: enum SearchType { diff --git a/src/ui/dialog/template-widget.cpp b/src/ui/dialog/template-widget.cpp new file mode 100644 index 000000000..dd066c90b --- /dev/null +++ b/src/ui/dialog/template-widget.cpp @@ -0,0 +1,110 @@ + + +/** @file + * @brief New From Template - templates widget - implementation + */ +/* Authors: + * Jan Darowski , supervised by Krzysztof Kosiński + * + * Copyright (C) 2013 Authors + * Released under GNU GPL, read the file 'COPYING' for more information + */ + +#include "template-widget.h" +#include "template-load-tab.h" + +#include +#include +#include +#include +#include + +#include "file.h" + +#include +#include +#include + + +namespace Inkscape { +namespace UI { + + +TemplateWidget::TemplateWidget() + : _more_info_button("More info") + , _short_description_label("Short description - I like trains. ad asda asd asdweqe gdfg") + , _template_author_label("by template_author") + , _template_name_label("Template_name") + , _preview_image("preview.png") +{ + pack_start(_template_name_label, Gtk::PACK_SHRINK, 4); + pack_start(_template_author_label, Gtk::PACK_SHRINK, 0); + pack_start(_preview_image, Gtk::PACK_SHRINK, 15); + pack_start(_short_description_label, Gtk::PACK_SHRINK, 4); + + _short_description_label.set_line_wrap(true); + _short_description_label.set_size_request(200); + + Gtk::Alignment *align; + align = manage(new Gtk::Alignment(Gtk::ALIGN_END, Gtk::ALIGN_CENTER, 0.0, 0.0)); + pack_start(*align, Gtk::PACK_SHRINK, 5); + align->add(_more_info_button); + + _more_info_button.signal_pressed().connect( + sigc::mem_fun(*this, &TemplateWidget::_displayTemplateDetails)); +} + + +void TemplateWidget::create() +{ + if (_current_template.path == "") + return; + if (_current_template.is_procedural){ + + } + else { + sp_file_new(_current_template.path); + } +} + + +void TemplateWidget::display(TemplateLoadTab::TemplateData data) +{ + _current_template = data; + if (data.is_procedural){} + else{ + _template_name_label.set_text(_current_template.display_name); + _template_author_label.set_text(_current_template.author); + _short_description_label.set_text(_current_template.short_description); + + Glib::ustring imagePath = Glib::build_filename(Glib::path_get_dirname(_current_template.path), _current_template.preview_name); + _preview_image.set(imagePath); + } +} + +void TemplateWidget::_displayTemplateDetails() +{ + if (_current_template.path == "") + return; + + Glib::ustring message = _current_template.display_name + "\n\n" + + _("Path: ") + _current_template.path + "\n\n"; + + if (_current_template.long_description != "") + message += _("Description: ") + _current_template.long_description + "\n\n"; + if (_current_template.keywords.size() > 0){ + message += _("Keywords: "); + for (std::set::iterator it = _current_template.keywords.begin(); it != _current_template.keywords.end(); ++it) + message += *it + " "; + message += "\n\n"; + } + + if (_current_template.author != "") + message += _("By: ") + _current_template.author + " " + _current_template.creation_date + "\n\n"; + + Gtk::MessageDialog dl(message, false, Gtk::MESSAGE_OTHER); + dl.run(); +} + +} +} diff --git a/src/ui/dialog/template-widget.h b/src/ui/dialog/template-widget.h new file mode 100644 index 000000000..83024e0d8 --- /dev/null +++ b/src/ui/dialog/template-widget.h @@ -0,0 +1,48 @@ +/** @file + * @brief New From Template - template widget + */ +/* Authors: + * Jan Darowski , supervised by Krzysztof Kosiński + * + * Copyright (C) 2013 Authors + * Released under GNU GPL, read the file 'COPYING' for more information + */ + +#ifndef INKSCAPE_SEEN_UI_DIALOG_TEMPLATE_WIDGET_H +#define INKSCAPE_SEEN_UI_DIALOG_TEMPLATE_WIDGET_H + +#include "template-load-tab.h" +#include + + + +namespace Inkscape { +namespace UI { + +class TemplateLoadTab; + + +class TemplateWidget : public Gtk::VBox +{ +public: + TemplateWidget (); + void create(); + void display(TemplateLoadTab::TemplateData); + +private: + TemplateLoadTab::TemplateData _current_template; + + Gtk::Button _more_info_button; + Gtk::Label _short_description_label; + Gtk::Label _template_author_label; + Gtk::Label _template_name_label; + Gtk::Image _preview_image; + + void _displayTemplateDetails(); + +}; + +} +} + +#endif -- cgit v1.2.3 From fb1ac7622934007e4358a5797473f78fc1704ee9 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Fri, 19 Jul 2013 14:42:21 -0400 Subject: Removed "helper/units.h" from "snap-preferences.h". (bzr r12380.1.34) --- src/snap-preferences.h | 1 - 1 file changed, 1 deletion(-) diff --git a/src/snap-preferences.h b/src/snap-preferences.h index c2db0b432..a7a2e2926 100644 --- a/src/snap-preferences.h +++ b/src/snap-preferences.h @@ -10,7 +10,6 @@ * Released under GNU GPL, read the file 'COPYING' for more information */ -#include "helper/units.h" #include "snap-enums.h" namespace Inkscape -- cgit v1.2.3 From bd2265c6e8a1496f40692752f9d710f36a24fada Mon Sep 17 00:00:00 2001 From: Slagvi Public Date: Fri, 19 Jul 2013 20:57:07 +0200 Subject: Minor code fixes (bzr r12379.2.12) --- src/ui/dialog/new-from-template.cpp | 9 +++++---- src/ui/dialog/new-from-template.h | 2 -- src/ui/dialog/template-load-tab.cpp | 26 ++++++-------------------- src/ui/dialog/template-load-tab.h | 8 ++------ src/ui/dialog/template-widget.cpp | 23 ++++++++++------------- src/ui/dialog/template-widget.h | 4 ---- 6 files changed, 23 insertions(+), 49 deletions(-) diff --git a/src/ui/dialog/new-from-template.cpp b/src/ui/dialog/new-from-template.cpp index 241da3f43..6598aecdf 100644 --- a/src/ui/dialog/new-from-template.cpp +++ b/src/ui/dialog/new-from-template.cpp @@ -10,10 +10,10 @@ #include "new-from-template.h" +#include "file.h" #include - -#include "file.h" +#include namespace Inkscape { @@ -21,9 +21,9 @@ namespace UI { NewFromTemplate::NewFromTemplate() - : _create_template_button("Create from template") + : _create_template_button(_("Create from template")) { - set_title("New From Template"); + set_title(_("New From Template")); resize(400, 400); get_vbox()->pack_start(_main_widget); @@ -47,6 +47,7 @@ void NewFromTemplate::_createFromTemplate() response(0); } + void NewFromTemplate::load_new_from_template() { NewFromTemplate dl; diff --git a/src/ui/dialog/new-from-template.h b/src/ui/dialog/new-from-template.h index 05af98a50..8ebcb2863 100644 --- a/src/ui/dialog/new-from-template.h +++ b/src/ui/dialog/new-from-template.h @@ -13,7 +13,6 @@ #include #include -#include #include "template-load-tab.h" @@ -30,7 +29,6 @@ public: private: NewFromTemplate(); Gtk::Button _create_template_button; - //StaticTemplateLoadTab _tab1; TemplateLoadTab _main_widget; void _createFromTemplate(); diff --git a/src/ui/dialog/template-load-tab.cpp b/src/ui/dialog/template-load-tab.cpp index 70dadfc52..ded4fc6fd 100644 --- a/src/ui/dialog/template-load-tab.cpp +++ b/src/ui/dialog/template-load-tab.cpp @@ -9,9 +9,11 @@ */ #include "template-load-tab.h" +#include "template-widget.h" #include #include +#include #include #include "interface.h" @@ -23,16 +25,6 @@ #include "xml/document.h" #include "xml/node.h" -#include "template-widget.h" - -// -#include - -#include -#include -#include -// - namespace Inkscape { namespace UI { @@ -47,17 +39,14 @@ TemplateLoadTab::TemplateLoadTab() _info_widget = manage(new TemplateWidget()); Gtk::Label *title; - title = manage(new Gtk::Label("Search:")); + title = manage(new Gtk::Label(_("Search:"))); _tlist_box.pack_start(*title, Gtk::PACK_SHRINK, 10); _tlist_box.pack_start(_keywords_combo, Gtk::PACK_SHRINK, 0); - title = manage(new Gtk::Label("Templates")); + title = manage(new Gtk::Label(_("Templates"))); _tlist_box.pack_start(*title, Gtk::PACK_SHRINK, 10); - title = manage(new Gtk::Label("Selected template")); - _info_widget->pack_start(*title, Gtk::PACK_SHRINK, 10); - add(_main_box); _main_box.pack_start(_tlist_box, Gtk::PACK_SHRINK, 20); _main_box.pack_start(*_info_widget, Gtk::PACK_EXPAND_WIDGET, 10); @@ -72,7 +61,6 @@ TemplateLoadTab::TemplateLoadTab() sigc::mem_fun(*this, &TemplateLoadTab::_keywordSelected)); this->show_all(); - _loading_path = ""; _loadTemplates(); _initLists(); @@ -139,7 +127,7 @@ void TemplateLoadTab::_keywordSelected() else _current_search_type = LIST_KEYWORD; - if (_current_keyword == "" || _current_keyword == "All") + if (_current_keyword == "" || _current_keyword == _("All")) _current_search_type = ALL; _refreshTemplatesList(); @@ -206,9 +194,7 @@ TemplateLoadTab::TemplateData TemplateLoadTab::_processTemplateFile(const Glib:: TemplateData result; result.path = path; result.display_name = Glib::path_get_basename(path); - result.is_procedural = false;/* - result.short_description = "LaLaLaLa"; - result.author = "JAASDASD";*/ + result.is_procedural = false; Inkscape::XML::Document *rdoc; rdoc = sp_repr_read_file(path.data(), SP_SVG_NS_URI); diff --git a/src/ui/dialog/template-load-tab.h b/src/ui/dialog/template-load-tab.h index 48ad23ae9..cc5229c95 100644 --- a/src/ui/dialog/template-load-tab.h +++ b/src/ui/dialog/template-load-tab.h @@ -46,8 +46,7 @@ public: virtual ~TemplateLoadTab(); virtual void createTemplate(); -protected: - +protected: class StringModelColumns : public Gtk::TreeModelColumnRecord { public: @@ -80,9 +79,7 @@ protected: Gtk::TreeView _tlist_view; Glib::RefPtr _tlist_store; - StringModelColumns _columns; - - + StringModelColumns _columns; private: enum SearchType @@ -97,7 +94,6 @@ private: void _getTemplatesFromDir(const Glib::ustring &); void _keywordSelected(); TemplateData _processTemplateFile(const Glib::ustring &); - }; } diff --git a/src/ui/dialog/template-widget.cpp b/src/ui/dialog/template-widget.cpp index dd066c90b..bb2c4a683 100644 --- a/src/ui/dialog/template-widget.cpp +++ b/src/ui/dialog/template-widget.cpp @@ -12,18 +12,13 @@ #include "template-widget.h" #include "template-load-tab.h" +#include "file.h" #include #include #include #include -#include - -#include "file.h" - -#include #include -#include namespace Inkscape { @@ -31,12 +26,14 @@ namespace UI { TemplateWidget::TemplateWidget() - : _more_info_button("More info") - , _short_description_label("Short description - I like trains. ad asda asd asdweqe gdfg") - , _template_author_label("by template_author") - , _template_name_label("Template_name") + : _more_info_button(_("More info")) + , _short_description_label(_("Short description")) + , _template_author_label(_("by template_author")) + , _template_name_label(_("Template_name")) , _preview_image("preview.png") { + Gtk::Label *title = manage(new Gtk::Label(_("Selected template"))); + pack_start(*title, Gtk::PACK_SHRINK, 10); pack_start(_template_name_label, Gtk::PACK_SHRINK, 4); pack_start(_template_author_label, Gtk::PACK_SHRINK, 0); pack_start(_preview_image, Gtk::PACK_SHRINK, 15); @@ -59,9 +56,8 @@ void TemplateWidget::create() { if (_current_template.path == "") return; - if (_current_template.is_procedural){ - - } + + if (_current_template.is_procedural) {} else { sp_file_new(_current_template.path); } @@ -82,6 +78,7 @@ void TemplateWidget::display(TemplateLoadTab::TemplateData data) } } + void TemplateWidget::_displayTemplateDetails() { if (_current_template.path == "") diff --git a/src/ui/dialog/template-widget.h b/src/ui/dialog/template-widget.h index 83024e0d8..743fb524d 100644 --- a/src/ui/dialog/template-widget.h +++ b/src/ui/dialog/template-widget.h @@ -15,13 +15,10 @@ #include - namespace Inkscape { namespace UI { -class TemplateLoadTab; - class TemplateWidget : public Gtk::VBox { public: @@ -39,7 +36,6 @@ private: Gtk::Image _preview_image; void _displayTemplateDetails(); - }; } -- cgit v1.2.3 From 6e9cf2ac415ff74108850236175ed7aeef496059 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Fri, 19 Jul 2013 14:59:49 -0400 Subject: Ported "src/lpe-tool-context.*" (bzr r12380.1.35) --- src/lpe-tool-context.cpp | 37 ++++++++++++++++++++++++++++--------- src/lpe-tool-context.h | 1 - 2 files changed, 28 insertions(+), 10 deletions(-) diff --git a/src/lpe-tool-context.cpp b/src/lpe-tool-context.cpp index feabfa02d..bf032b7eb 100644 --- a/src/lpe-tool-context.cpp +++ b/src/lpe-tool-context.cpp @@ -37,7 +37,7 @@ #include "display/canvas-text.h" #include "message-stack.h" #include "sp-path.h" -#include "helper/units.h" +#include "util/units.h" #include "lpe-tool-context.h" @@ -444,6 +444,8 @@ lpetool_create_measuring_items(SPLPEToolContext *lc, Inkscape::Selection *select gchar *arc_length; double lengthval; + Inkscape::Util::UnitTable unit_table; + for (GSList const *i = selection->itemList(); i != NULL; i = i->next) { if (SP_IS_PATH(i->data)) { path = SP_PATH(i->data); @@ -453,13 +455,21 @@ lpetool_create_measuring_items(SPLPEToolContext *lc, Inkscape::Selection *select if (!show) sp_canvas_item_hide(SP_CANVAS_ITEM(canvas_text)); - SPUnitId unitid = static_cast(prefs->getInt("/tools/lpetool/unitid", SP_UNIT_PX)); - SPUnit unit = sp_unit_get_by_id(unitid); + //SPUnitId unitid = static_cast(prefs->getInt("/tools/lpetool/unitid", SP_UNIT_PX)); + //SPUnit unit = sp_unit_get_by_id(unitid); + Inkscape::Util::Unit unit; + if (prefs->getString("/tools/lpetool/unit").compare("")) { + unit = unit_table.getUnit(prefs->getString("/tools/lpetool/unit")); + } else { + unit = unit_table.getUnit("px"); + } lengthval = Geom::length(pwd2); gboolean success; - success = sp_convert_distance(&lengthval, &sp_unit_get_by_id(SP_UNIT_PX), &unit); - arc_length = g_strdup_printf("%.2f %s", lengthval, success ? sp_unit_get_abbreviation(&unit) : "px"); + //success = sp_convert_distance(&lengthval, &sp_unit_get_by_id(SP_UNIT_PX), &unit); + lengthval = Inkscape::Util::Quantity::convert(lengthval, "px", unit); + //arc_length = g_strdup_printf("%.2f %s", lengthval, success ? sp_unit_get_abbreviation(&unit) : "px"); + arc_length = g_strdup_printf("%.2f %s", lengthval, unit.abbr.c_str()); sp_canvastext_set_text (canvas_text, arc_length); set_pos_and_anchor(canvas_text, pwd2, 0.5, 10); // TODO: must we free arc_length? @@ -482,6 +492,7 @@ void lpetool_update_measuring_items(SPLPEToolContext *lc) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); + Inkscape::Util::UnitTable unit_table; SPPath *path; SPCurve *curve; double lengthval; @@ -491,12 +502,20 @@ lpetool_update_measuring_items(SPLPEToolContext *lc) path = i->first; curve = SP_SHAPE(path)->getCurve(); Geom::Piecewise > pwd2 = Geom::paths_to_pw(curve->get_pathvector()); - SPUnitId unitid = static_cast(prefs->getInt("/tools/lpetool/unitid", SP_UNIT_PX)); - SPUnit unit = sp_unit_get_by_id(unitid); + //SPUnitId unitid = static_cast(prefs->getInt("/tools/lpetool/unitid", SP_UNIT_PX)); + //SPUnit unit = sp_unit_get_by_id(unitid); + Inkscape::Util::Unit unit; + if (prefs->getString("/tools/lpetool/unit").compare("")) { + unit = unit_table.getUnit(prefs->getString("/tools/lpetool/unit")); + } else { + unit = unit_table.getUnit("px"); + } lengthval = Geom::length(pwd2); gboolean success; - success = sp_convert_distance(&lengthval, &sp_unit_get_by_id(SP_UNIT_PX), &unit); - arc_length = g_strdup_printf("%.2f %s", lengthval, success ? sp_unit_get_abbreviation(&unit) : "px"); + //success = sp_convert_distance(&lengthval, &sp_unit_get_by_id(SP_UNIT_PX), &unit); + lengthval = Inkscape::Util::Quantity::convert(lengthval, "px", unit); + //arc_length = g_strdup_printf("%.2f %s", lengthval, success ? sp_unit_get_abbreviation(&unit) : "px"); + arc_length = g_strdup_printf("%.2f %s", lengthval, unit.abbr.c_str()); sp_canvastext_set_text (SP_CANVASTEXT(i->second), arc_length); set_pos_and_anchor(SP_CANVASTEXT(i->second), pwd2, 0.5, 10); // TODO: must we free arc_length? diff --git a/src/lpe-tool-context.h b/src/lpe-tool-context.h index fb3a5d4e2..7b85b09f2 100644 --- a/src/lpe-tool-context.h +++ b/src/lpe-tool-context.h @@ -16,7 +16,6 @@ */ #include "pen-context.h" -#include "helper/units.h" #define SP_TYPE_LPETOOL_CONTEXT (sp_lpetool_context_get_type()) #define SP_LPETOOL_CONTEXT(o) (G_TYPE_CHECK_INSTANCE_CAST((o), SP_TYPE_LPETOOL_CONTEXT, SPLPEToolContext)) -- cgit v1.2.3 From d955b45ebb37552b33e8d3350be2446bd4692bd9 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Fri, 19 Jul 2013 15:01:55 -0400 Subject: Removed "helper/units.h" from "display/canvas-grid.cpp". (bzr r12380.1.36) --- src/display/canvas-grid.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/display/canvas-grid.cpp b/src/display/canvas-grid.cpp index e72e01dbc..1a5e0e52d 100644 --- a/src/display/canvas-grid.cpp +++ b/src/display/canvas-grid.cpp @@ -42,7 +42,7 @@ #include "display/canvas-grid.h" #include "display/sp-canvas-group.h" #include "document.h" -#include "helper/units.h" +#include "util/units.h" #include "inkscape.h" #include "preferences.h" #include "sp-namedview.h" -- cgit v1.2.3 From dbc9ab3286ecb7a885ae9bdb524174c661607d6a Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Fri, 19 Jul 2013 15:04:03 -0400 Subject: Removed "helper/units.h" from "selection-chemistry.cpp". (bzr r12380.1.37) --- src/selection-chemistry.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/src/selection-chemistry.cpp b/src/selection-chemistry.cpp index 29cb208d9..dc786f340 100644 --- a/src/selection-chemistry.cpp +++ b/src/selection-chemistry.cpp @@ -86,7 +86,6 @@ SPCycleType SP_CYCLING = SP_CYCLE_FOCUS; #include #include #include -#include "helper/units.h" #include "sp-item.h" #include "box3d.h" #include "persp3d.h" -- cgit v1.2.3 From 4d84edcf25468530660a441c55544c7db27c2682 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Fri, 19 Jul 2013 15:08:24 -0400 Subject: Removed "helper/units.h" from "pen-context.cpp". (bzr r12380.1.38) --- src/pen-context.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/pen-context.cpp b/src/pen-context.cpp index 5972a6ca8..eac2ce5d1 100644 --- a/src/pen-context.cpp +++ b/src/pen-context.cpp @@ -39,7 +39,6 @@ #include "display/sp-ctrlline.h" #include "display/sodipodi-ctrl.h" #include -#include "helper/units.h" #include "macros.h" #include "context-fns.h" #include "tools-switch.h" @@ -1188,8 +1187,12 @@ static void spdc_pen_set_angle_distance_status_message(SPPenContext *const pc, G GString *dist = SP_PX_TO_METRIC_STRING(Geom::L2(rel), desktop->namedview->getDefaultMetric()); double angle = atan2(rel[Geom::Y], rel[Geom::X]) * 180 / M_PI; Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - if (prefs->getBool("/options/compassangledisplay/value", 0) != 0) - angle = angle_to_compass (angle); + if (prefs->getBool("/options/compassangledisplay/value", 0) != 0) { + angle = 90 - angle; + if (angle < 0) { + angle += 360; + } + } pc->_message_context->setF(Inkscape::IMMEDIATE_MESSAGE, message, angle, dist->str); g_string_free(dist, FALSE); -- cgit v1.2.3 From 4f6415189dc97ccb8b8dfaa5ad515b56dd72de0f Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Fri, 19 Jul 2013 15:48:48 -0400 Subject: Ported "ui/widget/selected-style.*". (bzr r12380.1.39) --- src/desktop.cpp | 1 - src/ui/widget/selected-style.cpp | 29 ++++++++++++++++------------- src/ui/widget/selected-style.h | 11 +++++++---- src/widgets/desktop-widget.cpp | 5 +++-- 4 files changed, 26 insertions(+), 20 deletions(-) diff --git a/src/desktop.cpp b/src/desktop.cpp index ce740f76f..13e339abe 100644 --- a/src/desktop.cpp +++ b/src/desktop.cpp @@ -54,7 +54,6 @@ #include "document.h" #include "event-log.h" #include "helper/action-context.h" -#include "helper/units.h" #include "interface.h" #include "inkscape-private.h" #include "layer-fns.h" diff --git a/src/ui/widget/selected-style.cpp b/src/ui/widget/selected-style.cpp index 102132158..edf53d25c 100644 --- a/src/ui/widget/selected-style.cpp +++ b/src/ui/widget/selected-style.cpp @@ -50,6 +50,7 @@ #include "pixmaps/cursor-adj-a.xpm" #include "sp-cursor.h" #include "gradient-chemistry.h" +#include "util/units.h" static gdouble const _sw_presets[] = { 32 , 16 , 10 , 8 , 6 , 4 , 3 , 2 , 1.5 , 1 , 0.75 , 0.5 , 0.25 , 0.1 }; static gchar const *const _sw_presets_str[] = {"32", "16", "10", "8", "6", "4", "3", "2", "1.5", "1", "0.75", "0.5", "0.25", "0.1"}; @@ -306,15 +307,18 @@ SelectedStyle::SelectedStyle(bool /*layout*/) { int row = 0; - // List of units should match with Fill/Stroke dialog stroke style width list - for (GSList *l = sp_unit_get_list(SP_UNIT_ABSOLUTE | SP_UNIT_DEVICE); l != NULL; l = l->next) { - SPUnit const *u = static_cast(l->data); + Inkscape::Util::UnitTable unit_table; + Inkscape::Util::UnitTable::UnitMap m = unit_table.units(Inkscape::Util::UNIT_TYPE_LINEAR); + Inkscape::Util::UnitTable::UnitMap::iterator iter = m.begin(); + while(iter != m.end()) { Gtk::RadioMenuItem *mi = Gtk::manage(new Gtk::RadioMenuItem(_sw_group)); - mi->add(*(new Gtk::Label(u->abbr, 0.0, 0.5))); + mi->add(*(new Gtk::Label((*iter).first, 0.0, 0.5))); _unit_mis = g_slist_append(_unit_mis, mi); - mi->signal_activate().connect(sigc::bind(sigc::mem_fun(*this, &SelectedStyle::on_popup_units), u->unit_id)); + Inkscape::Util::Unit const *u = new Inkscape::Util::Unit(unit_table.getUnit(iter->first)); + mi->signal_activate().connect(sigc::bind(sigc::mem_fun(*this, &SelectedStyle::on_popup_units), *u)); _popup_sw.attach(*mi, 0,1, row, row+1); row++; + ++iter; } _popup_sw.attach(*(new Gtk::SeparatorMenuItem()), 0,1, row, row+1); @@ -476,14 +480,13 @@ SelectedStyle::setDesktop(SPDesktop *desktop) this ) )); - //_sw_unit = const_cast(sp_desktop_namedview(desktop)->doc_units); - _sw_unit = const_cast(&sp_unit_get_by_id(SP_UNIT_PX)); + _sw_unit = const_cast(sp_desktop_namedview(desktop)->doc_units); // Set the doc default unit active in the units list gint length = g_slist_length(_unit_mis); for (int i = 0; i < length; i++) { Gtk::RadioMenuItem *mi = (Gtk::RadioMenuItem *) g_slist_nth_data(_unit_mis, i); - if (mi && mi->get_label() == Glib::ustring(_sw_unit->abbr)) { + if (mi && mi->get_label() == _sw_unit->abbr) { mi->set_active(); break; } @@ -927,8 +930,8 @@ SelectedStyle::on_opacity_click(GdkEventButton *event) return false; } -void SelectedStyle::on_popup_units(SPUnitId id) { - _sw_unit = (SPUnit *) &(sp_unit_get_by_id(id)); +void SelectedStyle::on_popup_units(Inkscape::Util::Unit &unit) { + _sw_unit = new Inkscape::Util::Unit(unit); update(); } @@ -936,7 +939,7 @@ void SelectedStyle::on_popup_preset(int i) { SPCSSAttr *css = sp_repr_css_attr_new (); gdouble w; if (_sw_unit) { - w = sp_units_get_pixels (_sw_presets[i], *_sw_unit); + w = Inkscape::Util::Quantity::convert(_sw_presets[i], *_sw_unit, "px"); } else { w = _sw_presets[i]; } @@ -1115,7 +1118,7 @@ SelectedStyle::update() { double w; if (_sw_unit) { - w = sp_pixels_get_units(query->stroke_width.computed, *_sw_unit); + w = Inkscape::Util::Quantity::convert(query->stroke_width.computed, "px", *_sw_unit); } else { w = query->stroke_width.computed; } @@ -1129,7 +1132,7 @@ SelectedStyle::update() { gchar *str = g_strdup_printf(_("Stroke width: %.5g%s%s"), w, - _sw_unit? sp_unit_get_abbreviation(_sw_unit) : "px", + _sw_unit? _sw_unit->abbr.c_str() : "px", (result_sw == QUERY_STYLE_MULTIPLE_AVERAGED)? _(" (averaged)") : ""); _stroke_width_place.set_tooltip_text(str); diff --git a/src/ui/widget/selected-style.h b/src/ui/widget/selected-style.h index e5bc4f883..0a907f1fd 100644 --- a/src/ui/widget/selected-style.h +++ b/src/ui/widget/selected-style.h @@ -41,12 +41,15 @@ #include #include "rotateable.h" -#include "helper/units.h" class SPDesktop; -struct SPUnit; namespace Inkscape { + +namespace Util { + class Unit; +} + namespace UI { namespace Widget { @@ -273,11 +276,11 @@ protected: Gtk::Menu _popup_sw; Gtk::RadioButtonGroup _sw_group; GSList *_unit_mis; - void on_popup_units(SPUnitId id); + void on_popup_units(Inkscape::Util::Unit &u); void on_popup_preset(int i); Gtk::MenuItem _popup_sw_remove; - SPUnit *_sw_unit; + Inkscape::Util::Unit *_sw_unit; void *_drop[2]; bool _dropEnabled[2]; diff --git a/src/widgets/desktop-widget.cpp b/src/widgets/desktop-widget.cpp index 1c6852f35..56a5baf5b 100644 --- a/src/widgets/desktop-widget.cpp +++ b/src/widgets/desktop-widget.cpp @@ -394,7 +394,8 @@ void SPDesktopWidget::init( SPDesktopWidget *dtw ) dtw->hruler = sp_ruler_new(GTK_ORIENTATION_HORIZONTAL); dtw->hruler_box = eventbox; sp_ruler_set_unit(SP_RULER(dtw->hruler), SP_PT); - gtk_widget_set_tooltip_text (dtw->hruler_box, gettext(sp_unit_get_plural (&sp_unit_get_by_id(SP_UNIT_PT)))); + Inkscape::Util::UnitTable unit_table; + gtk_widget_set_tooltip_text (dtw->hruler_box, gettext(unit_table.getUnit("pt").name_plural.c_str())); gtk_container_add (GTK_CONTAINER (eventbox), dtw->hruler); g_signal_connect (G_OBJECT (eventbox), "button_press_event", G_CALLBACK (sp_dt_hruler_event), dtw); g_signal_connect (G_OBJECT (eventbox), "button_release_event", G_CALLBACK (sp_dt_hruler_event), dtw); @@ -423,7 +424,7 @@ void SPDesktopWidget::init( SPDesktopWidget *dtw ) dtw->vruler = sp_ruler_new(GTK_ORIENTATION_VERTICAL); dtw->vruler_box = eventbox; sp_ruler_set_unit (SP_RULER (dtw->vruler), SP_PT); - gtk_widget_set_tooltip_text (dtw->vruler_box, gettext(sp_unit_get_plural (&sp_unit_get_by_id(SP_UNIT_PT)))); + gtk_widget_set_tooltip_text (dtw->vruler_box, gettext(unit_table.getUnit("pt").name_plural.c_str())); gtk_container_add (GTK_CONTAINER (eventbox), GTK_WIDGET (dtw->vruler)); #if GTK_CHECK_VERSION(3,0,0) -- cgit v1.2.3 From 4d00e731811f7c795b80b49b408eb76a9852b9f0 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Fri, 19 Jul 2013 15:56:24 -0400 Subject: Ported "ui/widget/style-swatch.*". (bzr r12380.1.40) --- src/ui/widget/style-swatch.cpp | 6 +++--- src/ui/widget/style-swatch.h | 8 ++++++-- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/ui/widget/style-swatch.cpp b/src/ui/widget/style-swatch.cpp index aedab3fa5..682457bed 100644 --- a/src/ui/widget/style-swatch.cpp +++ b/src/ui/widget/style-swatch.cpp @@ -26,7 +26,7 @@ #include "xml/repr.h" #include "xml/sp-css-attr.h" #include "widgets/widget-sizes.h" -#include "helper/units.h" +#include "util/units.h" #include "helper/action.h" #include "helper/action-context.h" #include "preferences.h" @@ -333,7 +333,7 @@ void StyleSwatch::setStyle(SPStyle *query) if (has_stroke) { double w; if (_sw_unit) { - w = sp_pixels_get_units(query->stroke_width.computed, *_sw_unit); + w = Inkscape::Util::Quantity::convert(query->stroke_width.computed, "px", *_sw_unit); } else { w = query->stroke_width.computed; } @@ -346,7 +346,7 @@ void StyleSwatch::setStyle(SPStyle *query) { gchar *str = g_strdup_printf(_("Stroke width: %.5g%s"), w, - _sw_unit? sp_unit_get_abbreviation(_sw_unit) : "px"); + _sw_unit? _sw_unit->abbr.c_str() : "px"); _stroke_width_place.set_tooltip_text(str); g_free (str); } diff --git a/src/ui/widget/style-swatch.h b/src/ui/widget/style-swatch.h index 6bdb5e248..6da58a2dd 100644 --- a/src/ui/widget/style-swatch.h +++ b/src/ui/widget/style-swatch.h @@ -30,7 +30,6 @@ #include "button.h" #include "preferences.h" -struct SPUnit; struct SPStyle; class SPCSSAttr; @@ -43,6 +42,11 @@ class Table; } namespace Inkscape { + +namespace Util { + class Unit; +} + namespace UI { namespace Widget { @@ -93,7 +97,7 @@ private: Gtk::EventBox _stroke_width_place; Gtk::Label _stroke_width; - SPUnit *_sw_unit; + Inkscape::Util::Unit *_sw_unit; friend class ToolObserver; }; -- cgit v1.2.3 From 5b8a6e510cb69d33bc8834a7586142be800471b5 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Fri, 19 Jul 2013 16:31:57 -0400 Subject: Ported "live_effects/parameter/unit.*". (bzr r12380.1.41) --- src/live_effects/lpe-path_length.cpp | 5 +++-- src/live_effects/lpe-ruler.cpp | 8 ++++---- src/live_effects/parameter/unit.cpp | 22 ++++++++++++---------- src/live_effects/parameter/unit.h | 15 +++++++++------ 4 files changed, 28 insertions(+), 22 deletions(-) diff --git a/src/live_effects/lpe-path_length.cpp b/src/live_effects/lpe-path_length.cpp index d3edcda27..504fb53c0 100644 --- a/src/live_effects/lpe-path_length.cpp +++ b/src/live_effects/lpe-path_length.cpp @@ -15,6 +15,7 @@ #include "live_effects/lpe-path_length.h" #include "sp-metrics.h" +#include "util/units.h" #include "2geom/sbasis-geometric.h" @@ -52,11 +53,11 @@ LPEPathLength::doEffect_pwd2 (Geom::Piecewise > const & p /* convert the measured length to the correct unit ... */ double lengthval = Geom::length(pwd2_in) * scale; - gboolean success = sp_convert_distance(&lengthval, &sp_unit_get_by_id(SP_UNIT_PX), unit); + lengthval = Inkscape::Util::Quantity::convert(lengthval, "px", unit.get_abbreviation()); /* ... set it as the canvas text ... */ gchar *arc_length = g_strdup_printf("%.2f %s", lengthval, - display_unit ? (success ? unit.get_abbreviation() : "px") : ""); + display_unit ? unit.get_abbreviation() : ""); info_text.param_setValue(arc_length); g_free(arc_length); diff --git a/src/live_effects/lpe-ruler.cpp b/src/live_effects/lpe-ruler.cpp index fefdad95a..788ab593a 100644 --- a/src/live_effects/lpe-ruler.cpp +++ b/src/live_effects/lpe-ruler.cpp @@ -81,9 +81,9 @@ LPERuler::ruler_mark(Geom::Point const &A, Geom::Point const &n, MarkType const using namespace Geom; double real_mark_length = mark_length; - sp_convert_distance(&real_mark_length, unit, &sp_unit_get_by_id(SP_UNIT_PX)); + real_mark_length = Inkscape::Util::Quantity::convert(real_mark_length, unit.get_abbreviation(), "px"); double real_minor_mark_length = minor_mark_length; - sp_convert_distance(&real_minor_mark_length, unit, &sp_unit_get_by_id(SP_UNIT_PX)); + real_minor_mark_length = Inkscape::Util::Quantity::convert(real_minor_mark_length, unit.get_abbreviation(), "px"); n_major = real_mark_length * n; n_minor = real_minor_mark_length * n; @@ -133,10 +133,10 @@ LPERuler::doEffect_pwd2 (Geom::Piecewise > const & pwd2_i std::vector s_cuts; double real_mark_distance = mark_distance; - sp_convert_distance(&real_mark_distance, unit, &sp_unit_get_by_id(SP_UNIT_PX)); + real_mark_distance = Inkscape::Util::Quantity::convert(real_mark_distance, unit.get_abbreviation(), "px"); double real_offset = offset; - sp_convert_distance(&real_offset, unit, &sp_unit_get_by_id(SP_UNIT_PX)); + real_offset = Inkscape::Util::Quantity::convert(real_offset, unit.get_abbreviation(), "px"); for (double s = real_offset; sabbr.c_str()); } void UnitParam::param_set_default() { - param_set_value(defunit); + param_set_value(*defunit); } void -UnitParam::param_set_value(SPUnit const *val) +UnitParam::param_set_value(Inkscape::Util::Unit const &val) { - unit = val; + unit = new Inkscape::Util::Unit(val); } const gchar * UnitParam::get_abbreviation() const { - return sp_unit_get_abbreviation(unit); + return unit->abbr.c_str(); } Gtk::Widget * diff --git a/src/live_effects/parameter/unit.h b/src/live_effects/parameter/unit.h index ea7a0112a..59a483018 100644 --- a/src/live_effects/parameter/unit.h +++ b/src/live_effects/parameter/unit.h @@ -10,10 +10,13 @@ */ #include "live_effects/parameter/parameter.h" -#include namespace Inkscape { +namespace Util { + class Unit; +} + namespace LivePathEffect { class UnitParam : public Parameter { @@ -23,22 +26,22 @@ public: const Glib::ustring& key, Inkscape::UI::Widget::Registry* wr, Effect* effect, - SPUnitId default_value = SP_UNIT_PX); + Glib::ustring default_unit = "px"); virtual ~UnitParam(); virtual bool param_readSVGValue(const gchar * strvalue); virtual gchar * param_getSVGValue() const; virtual void param_set_default(); - void param_set_value(SPUnit const *val); + void param_set_value(Inkscape::Util::Unit const &val); const gchar *get_abbreviation() const; virtual Gtk::Widget * param_newWidget(); - operator SPUnit const *() const { return unit; } + operator Inkscape::Util::Unit const *() const { return unit; } private: - SPUnit const *unit; - SPUnit const *defunit; + Inkscape::Util::Unit const *unit; + Inkscape::Util::Unit const *defunit; UnitParam(const UnitParam&); UnitParam& operator=(const UnitParam&); -- cgit v1.2.3 From 988e8e11fd11f1598d3ac0a42bdeef605772e6a9 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Fri, 19 Jul 2013 16:34:39 -0400 Subject: Cleanup. (bzr r12380.1.42) --- src/lpe-tool-context.cpp | 8 -------- 1 file changed, 8 deletions(-) diff --git a/src/lpe-tool-context.cpp b/src/lpe-tool-context.cpp index bf032b7eb..32096970f 100644 --- a/src/lpe-tool-context.cpp +++ b/src/lpe-tool-context.cpp @@ -455,8 +455,6 @@ lpetool_create_measuring_items(SPLPEToolContext *lc, Inkscape::Selection *select if (!show) sp_canvas_item_hide(SP_CANVAS_ITEM(canvas_text)); - //SPUnitId unitid = static_cast(prefs->getInt("/tools/lpetool/unitid", SP_UNIT_PX)); - //SPUnit unit = sp_unit_get_by_id(unitid); Inkscape::Util::Unit unit; if (prefs->getString("/tools/lpetool/unit").compare("")) { unit = unit_table.getUnit(prefs->getString("/tools/lpetool/unit")); @@ -466,9 +464,7 @@ lpetool_create_measuring_items(SPLPEToolContext *lc, Inkscape::Selection *select lengthval = Geom::length(pwd2); gboolean success; - //success = sp_convert_distance(&lengthval, &sp_unit_get_by_id(SP_UNIT_PX), &unit); lengthval = Inkscape::Util::Quantity::convert(lengthval, "px", unit); - //arc_length = g_strdup_printf("%.2f %s", lengthval, success ? sp_unit_get_abbreviation(&unit) : "px"); arc_length = g_strdup_printf("%.2f %s", lengthval, unit.abbr.c_str()); sp_canvastext_set_text (canvas_text, arc_length); set_pos_and_anchor(canvas_text, pwd2, 0.5, 10); @@ -502,8 +498,6 @@ lpetool_update_measuring_items(SPLPEToolContext *lc) path = i->first; curve = SP_SHAPE(path)->getCurve(); Geom::Piecewise > pwd2 = Geom::paths_to_pw(curve->get_pathvector()); - //SPUnitId unitid = static_cast(prefs->getInt("/tools/lpetool/unitid", SP_UNIT_PX)); - //SPUnit unit = sp_unit_get_by_id(unitid); Inkscape::Util::Unit unit; if (prefs->getString("/tools/lpetool/unit").compare("")) { unit = unit_table.getUnit(prefs->getString("/tools/lpetool/unit")); @@ -512,9 +506,7 @@ lpetool_update_measuring_items(SPLPEToolContext *lc) } lengthval = Geom::length(pwd2); gboolean success; - //success = sp_convert_distance(&lengthval, &sp_unit_get_by_id(SP_UNIT_PX), &unit); lengthval = Inkscape::Util::Quantity::convert(lengthval, "px", unit); - //arc_length = g_strdup_printf("%.2f %s", lengthval, success ? sp_unit_get_abbreviation(&unit) : "px"); arc_length = g_strdup_printf("%.2f %s", lengthval, unit.abbr.c_str()); sp_canvastext_set_text (SP_CANVASTEXT(i->second), arc_length); set_pos_and_anchor(SP_CANVASTEXT(i->second), pwd2, 0.5, 10); -- cgit v1.2.3 From b4b22e6dba56bc9b0b8c35a9d484f1d86d61f45b Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Sat, 20 Jul 2013 12:29:12 -0400 Subject: Added percentage support to "Inkscape::Util::Quantity::convert". (bzr r12380.1.43) --- src/util/units.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/util/units.cpp b/src/util/units.cpp index 78531bfaf..dcb3ae4b1 100644 --- a/src/util/units.cpp +++ b/src/util/units.cpp @@ -504,6 +504,11 @@ double Quantity::value(const Glib::ustring u) const /** Convert distances. */ double Quantity::convert(const double from_dist, const Unit &from, const Unit &to) { + // Percentage + if (to.type == UNIT_TYPE_DIMENSIONLESS) { + return from_dist * to.factor; + } + // Incompatible units if (from.type != to.type) { return -1; -- cgit v1.2.3 From 08d18ac062f175f893bc7251e39072d0f0d4577c Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Sat, 20 Jul 2013 12:30:28 -0400 Subject: Ported "widgets/stroke-style.*". (bzr r12380.1.44) --- src/widgets/stroke-style.cpp | 123 ++++++++++++------------------------------- src/widgets/stroke-style.h | 24 ++++++--- 2 files changed, 50 insertions(+), 97 deletions(-) diff --git a/src/widgets/stroke-style.cpp b/src/widgets/stroke-style.cpp index 17e3984bb..e35a8b36b 100644 --- a/src/widgets/stroke-style.cpp +++ b/src/widgets/stroke-style.cpp @@ -22,6 +22,8 @@ #include "sp-gradient.h" #include "sp-stop.h" #include "svg/svg-color.h" +#include "util/units.h" +#include "ui/widget/unit-menu.h" using Inkscape::DocumentUndo; @@ -189,22 +191,23 @@ StrokeStyle::StrokeStyle() : sp_dialog_defocus_on_enter_cpp(widthSpin); hb->pack_start(*widthSpin, false, false, 0); - unitSelector = sp_unit_selector_new(SP_UNIT_ABSOLUTE | SP_UNIT_DEVICE); - Gtk::Widget *us = manage(Glib::wrap(unitSelector)); + unitSelector = new Inkscape::UI::Widget::UnitMenu(); + unitSelector->setUnitType(Inkscape::Util::UNIT_TYPE_LINEAR); + Gtk::Widget *us = manage(unitSelector); SPDesktop *desktop = SP_ACTIVE_DESKTOP; - //if (desktop) - // sp_unit_selector_set_unit (SP_UNIT_SELECTOR(unitSelector), sp_desktop_namedview(desktop)->doc_units); - sp_unit_selector_add_unit(SP_UNIT_SELECTOR(unitSelector), &sp_unit_get_by_id(SP_UNIT_PERCENT), 0); - g_signal_connect ( G_OBJECT (unitSelector), "set_unit", G_CALLBACK (StrokeStyle::setStrokeWidthUnit), this ); + Inkscape::Util::UnitTable unit_table; + unitSelector->addUnit(unit_table.getUnit("%")); + if (desktop) { + unitSelector->setUnit(sp_desktop_namedview(desktop)->doc_units->abbr); + _old_unit = new Inkscape::Util::Unit(*sp_desktop_namedview(desktop)->doc_units); + } + _old_unit = new Inkscape::Util::Unit(unitSelector->getUnit()); + widthSpin->setUnitMenu(unitSelector); + unitChangedConn = unitSelector->signal_changed().connect(sigc::mem_fun(*this, &StrokeStyle::unitChangedCB)); + us->show(); -#if WITH_GTKMM_3_0 - sp_unit_selector_add_adjustment( SP_UNIT_SELECTOR(unitSelector), GTK_ADJUSTMENT((*widthAdj)->gobj()) ); -#else - sp_unit_selector_add_adjustment( SP_UNIT_SELECTOR(unitSelector), GTK_ADJUSTMENT(widthAdj->gobj()) ); -#endif - hb->pack_start(*us, FALSE, FALSE, 0); #if WITH_GTKMM_3_0 @@ -519,75 +522,17 @@ void StrokeStyle::updateMarkerHist(SPMarkerLoc const which) } /** - * Sets the stroke width units for all selected items. - * Also handles absolute and dimensionless units. + * Callback for when UnitMenu widget is modified. + * Triggers update action. */ -gboolean StrokeStyle::setStrokeWidthUnit(SPUnitSelector *, - SPUnit const *old, - SPUnit const *new_units, - StrokeStyle *spw) +void StrokeStyle::unitChangedCB() { - if (spw->update) { - return FALSE; - } - - if (!spw->desktop) { - return FALSE; + Inkscape::Util::Unit new_unit = unitSelector->getUnit(); + if (new_unit.type == Inkscape::Util::UNIT_TYPE_DIMENSIONLESS) { + widthSpin->set_value(100); } - - Inkscape::Selection *selection = sp_desktop_selection (spw->desktop); - - if (selection->isEmpty()) - return FALSE; - - GSList const *objects = selection->itemList(); - - if ((old->base == SP_UNIT_ABSOLUTE || old->base == SP_UNIT_DEVICE) && - (new_units->base == SP_UNIT_DIMENSIONLESS)) { - - /* Absolute to percentage */ - spw->update = true; - -#if WITH_GTKMM_3_0 - float w = sp_units_get_pixels( (*spw->widthAdj)->get_value(), *old); -#else - float w = sp_units_get_pixels(spw->widthAdj->get_value(), *old); -#endif - - gdouble average = stroke_average_width (objects); - - if ((average == Geom::infinity()) || (average < 1e-8)){ //less than 1e-8: to campare against zero, while taking numeric accuracy into account - return FALSE; - } - -#if WITH_GTKMM_3_0 - (*spw->widthAdj)->set_value(100.0 * w / average); -#else - spw->widthAdj->set_value(100.0 * w / average); -#endif - - spw->update = false; - return TRUE; - - } else if ((old->base == SP_UNIT_DIMENSIONLESS) && - (new_units->base == SP_UNIT_ABSOLUTE || new_units->base == SP_UNIT_DEVICE)) { - - /* Percentage to absolute */ - spw->update = true; - - gdouble average = stroke_average_width (objects); - -#if WITH_GTKMM_3_0 - (*spw->widthAdj)->set_value (sp_pixels_get_units (0.01 * (*spw->widthAdj)->get_value() * average, *new_units)); -#else - spw->widthAdj->set_value (sp_pixels_get_units (0.01 * spw->widthAdj->get_value() * average, *new_units)); -#endif - - spw->update = false; - return TRUE; - } - - return FALSE; + widthSpin->set_value(Inkscape::Util::Quantity::convert(widthSpin->get_value(), *_old_unit, new_unit)); + _old_unit = new Inkscape::Util::Unit(new_unit); } /** @@ -877,21 +822,21 @@ StrokeStyle::updateLine() } else { table->set_sensitive(true); - SPUnit const *unit = sp_unit_selector_get_unit(SP_UNIT_SELECTOR(unitSelector)); + Inkscape::Util::Unit const *unit = new Inkscape::Util::Unit(unitSelector->getUnit()); if (result_sw == QUERY_STYLE_MULTIPLE_AVERAGED) { - sp_unit_selector_set_unit(SP_UNIT_SELECTOR(unitSelector), &sp_unit_get_by_id(SP_UNIT_PERCENT)); + unitSelector->setUnit("%"); } else { // same width, or only one object; no sense to keep percent, switch to absolute - if (unit->base != SP_UNIT_ABSOLUTE && unit->base != SP_UNIT_DEVICE) { - //sp_unit_selector_set_unit(SP_UNIT_SELECTOR(unitSelector), sp_desktop_namedview(SP_ACTIVE_DESKTOP)->doc_units); + if (unit->type != Inkscape::Util::UNIT_TYPE_LINEAR) { + unitSelector->setUnit(sp_desktop_namedview(SP_ACTIVE_DESKTOP)->doc_units->abbr); } } - unit = sp_unit_selector_get_unit(SP_UNIT_SELECTOR(unitSelector)); + unit = new Inkscape::Util::Unit(unitSelector->getUnit()); - if (unit->base == SP_UNIT_ABSOLUTE || unit->base == SP_UNIT_DEVICE) { - double avgwidth = sp_pixels_get_units (query->stroke_width.computed, *unit); + if (unit->type == Inkscape::Util::UNIT_TYPE_LINEAR) { + double avgwidth = Inkscape::Util::Quantity::convert(query->stroke_width.computed, "px", *unit); #if WITH_GTKMM_3_0 (*widthAdj)->set_value(avgwidth); #else @@ -1017,7 +962,7 @@ StrokeStyle::scaleLine() double const miterlimit = miterLimitAdj->get_value(); #endif - SPUnit const *const unit = sp_unit_selector_get_unit(SP_UNIT_SELECTOR(unitSelector)); + Inkscape::Util::Unit const *const unit = new Inkscape::Util::Unit(unitSelector->getUnit()); double *dash, offset; int ndash; @@ -1026,8 +971,8 @@ StrokeStyle::scaleLine() for (GSList const *i = items; i != NULL; i = i->next) { /* Set stroke width */ double width; - if (unit->base == SP_UNIT_ABSOLUTE || unit->base == SP_UNIT_DEVICE) { - width = sp_units_get_pixels (width_typed, *unit); + if (unit->type == Inkscape::Util::UNIT_TYPE_LINEAR) { + width = Inkscape::Util::Quantity::convert(width_typed, *unit, "px"); } else { // percentage gdouble old_w = SP_OBJECT(i->data)->style->stroke_width.computed; width = old_w * width_typed / 100; @@ -1053,7 +998,7 @@ StrokeStyle::scaleLine() g_free(dash); - if (unit->base != SP_UNIT_ABSOLUTE && unit->base != SP_UNIT_DEVICE) { + if (unit->type != Inkscape::Util::UNIT_TYPE_LINEAR) { // reset to 100 percent #if WITH_GTKMM_3_0 (*widthAdj)->set_value(100.0); diff --git a/src/widgets/stroke-style.h b/src/widgets/stroke-style.h index fd9940db1..440881c6d 100644 --- a/src/widgets/stroke-style.h +++ b/src/widgets/stroke-style.h @@ -40,8 +40,6 @@ #include "document-undo.h" #include "gradient-chemistry.h" #include "helper/stock-items.h" -#include "helper/unit-menu.h" -#include "helper/units.h" #include "inkscape.h" #include "io/sys.h" #include "marker.h" @@ -77,6 +75,17 @@ class Widget; class Container; } +namespace Inkscape { + namespace Util { + class Unit; + } + namespace UI { + namespace Widget { + class UnitMenu; + } + } +} + struct { gchar const *key; gint value; } const SPMarkerNames[] = { {"marker-all", SP_MARKER_LOC}, {"marker-start", SP_MARKER_LOC_START}, @@ -162,17 +171,13 @@ private: StrokeStyleButtonType button_type, gchar const *stroke_style); - static gboolean setStrokeWidthUnit(SPUnitSelector *, - SPUnit const *old, - SPUnit const *new_units, - StrokeStyle *spw); - // Callback functions void selectionModifiedCB(guint flags); void selectionChangedCB(); void widthChangedCB(); void miterLimitChangedCB(); void lineDashChangedCB(); + void unitChangedCB(); static void markerSelectCB(MarkerComboBox *marker_combo, StrokeStyle *spw, SPMarkerLoc const which); static void buttonToggledCB(StrokeStyleButton *tb, StrokeStyle *spw); @@ -191,7 +196,7 @@ private: #endif Inkscape::UI::Widget::SpinButton *miterLimitSpin; Inkscape::UI::Widget::SpinButton *widthSpin; - GtkWidget *unitSelector; + Inkscape::UI::Widget::UnitMenu *unitSelector; StrokeStyleButton *joinMiter; StrokeStyleButton *joinRound; StrokeStyleButton *joinBevel; @@ -207,6 +212,9 @@ private: sigc::connection startMarkerConn; sigc::connection midMarkerConn; sigc::connection endMarkerConn; + sigc::connection unitChangedConn; + + Inkscape::Util::Unit *_old_unit; }; } // namespace Inkscape -- cgit v1.2.3 From 567fbf4a2759ff93533a22a8688b4dcc01f19138 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Sat, 20 Jul 2013 14:00:42 -0400 Subject: Removed last traces of "SPUnit" and removed "helper/unit*". (bzr r12380.1.45) --- src/helper/Makefile_insert | 4 - src/helper/unit-menu.cpp | 360 -------------------------------------- src/helper/unit-menu.h | 60 ------- src/helper/units-test.h | 90 ---------- src/helper/units.cpp | 261 --------------------------- src/helper/units.h | 146 ---------------- src/ui/widget/registered-widget.h | 1 - 7 files changed, 922 deletions(-) delete mode 100644 src/helper/unit-menu.cpp delete mode 100644 src/helper/unit-menu.h delete mode 100644 src/helper/units-test.h delete mode 100644 src/helper/units.cpp delete mode 100644 src/helper/units.h diff --git a/src/helper/Makefile_insert b/src/helper/Makefile_insert index 0008936dd..5d1703b5c 100644 --- a/src/helper/Makefile_insert +++ b/src/helper/Makefile_insert @@ -18,10 +18,6 @@ ink_common_sources += \ helper/png-write.h \ helper/sp-marshal.cpp \ helper/sp-marshal.h \ - helper/unit-menu.cpp \ - helper/unit-menu.h \ - helper/units.cpp \ - helper/units.h \ helper/window.cpp \ helper/window.h \ helper/stock-items.cpp \ diff --git a/src/helper/unit-menu.cpp b/src/helper/unit-menu.cpp deleted file mode 100644 index af07c03c1..000000000 --- a/src/helper/unit-menu.cpp +++ /dev/null @@ -1,360 +0,0 @@ -#define __SP_UNIT_MENU_C__ - -/* - * Unit selector with autupdate capability - * - * Authors: - * Lauris Kaplinski - * bulia byak - * - * Copyright (C) 2000-2002 Authors - * - * Released under GNU GPL, read the file 'COPYING' for more information - */ - -#define noUNIT_SELECTOR_VERBOSE - -#ifdef HAVE_CONFIG_H -# include "config.h" -#endif -#include -#include "helper/sp-marshal.h" -#include "helper/units.h" -#include "helper/unit-menu.h" -#include "widgets/spw-utilities.h" - -struct SPUnitSelector { - GtkHBox box; - - GtkWidget *combo_box; - GtkListStore *store; - - - guint bases; - GSList *units; - SPUnit const *unit; - gdouble ctmscale; - guint plural : 1; - guint abbr : 1; - - guint update : 1; - - GSList *adjustments; -}; - -enum {COMBO_COL_LABEL=0, COMBO_COL_UNIT}; - -struct SPUnitSelectorClass { - GtkHBoxClass parent_class; - - gboolean (* set_unit)(SPUnitSelector *us, SPUnit const *old, SPUnit const *new_unit); -}; - -enum {SET_UNIT, LAST_SIGNAL}; - -static void sp_unit_selector_finalize(GObject *object); - -static guint signals[LAST_SIGNAL] = {0}; - -G_DEFINE_TYPE(SPUnitSelector, sp_unit_selector, GTK_TYPE_HBOX); - -static void -sp_unit_selector_class_init(SPUnitSelectorClass *klass) -{ - GObjectClass *object_class = G_OBJECT_CLASS(klass); - - signals[SET_UNIT] = g_signal_new("set_unit", - G_TYPE_FROM_CLASS(klass), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET(SPUnitSelectorClass, set_unit), - NULL, NULL, - sp_marshal_BOOLEAN__POINTER_POINTER, - G_TYPE_BOOLEAN, 2, - G_TYPE_POINTER, G_TYPE_POINTER); - - object_class->finalize = sp_unit_selector_finalize; -} - -static void -sp_unit_selector_init(SPUnitSelector *us) -{ - us->ctmscale = 1.0; - us->abbr = FALSE; - us->plural = TRUE; - - /** - * Create a combo_box and store with 2 columns, - * a label and a pointer to a SPUnit - */ - us->store = gtk_list_store_new (2, G_TYPE_STRING, G_TYPE_POINTER); - us->combo_box = gtk_combo_box_new_with_model (GTK_TREE_MODEL (us->store)); - - GtkCellRenderer *renderer = gtk_cell_renderer_text_new (); - g_object_set (renderer, "scale", 0.8, "scale-set", TRUE, NULL); - gtk_cell_renderer_set_padding (renderer, 2, 0); - gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (us->combo_box), renderer, TRUE); - gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT (us->combo_box), renderer, "text", COMBO_COL_LABEL, NULL); - - gtk_widget_show (us->combo_box); - gtk_box_pack_start (GTK_BOX(us), us->combo_box, TRUE, TRUE, 0); -} - -static void -sp_unit_selector_finalize(GObject *object) -{ - SPUnitSelector *selector = SP_UNIT_SELECTOR(object); - - if (selector->combo_box) { - selector->combo_box = NULL; - } - - while (selector->adjustments) { - g_object_unref(selector->adjustments->data); - selector->adjustments = g_slist_remove(selector->adjustments, selector->adjustments->data); - } - - if (selector->units) { - sp_unit_free_list(selector->units); - } - - selector->unit = NULL; - - G_OBJECT_CLASS(sp_unit_selector_parent_class)->finalize(object); -} - -GtkWidget * -sp_unit_selector_new(guint bases) -{ - SPUnitSelector *us = SP_UNIT_SELECTOR(g_object_new(SP_TYPE_UNIT_SELECTOR, NULL)); - - sp_unit_selector_set_bases(us, bases); - - return GTK_WIDGET(us); -} - -void -sp_unit_selector_setsize(GtkWidget *us, guint w, guint h) -{ - gtk_widget_set_size_request((SP_UNIT_SELECTOR(us))->combo_box, w, h); -} - -SPUnit const * -sp_unit_selector_get_unit(SPUnitSelector const *us) -{ - g_return_val_if_fail(us != NULL, NULL); - g_return_val_if_fail(SP_IS_UNIT_SELECTOR(us), NULL); - - return us->unit; -} - - -static void -on_combo_box_changed (GtkComboBox *widget, SPUnitSelector *us) -{ - GtkTreeIter iter; - if (!gtk_combo_box_get_active_iter (widget, &iter)) { - return; - } - - SPUnit const *unit = NULL; - gtk_tree_model_get (GTK_TREE_MODEL(us->store), &iter, COMBO_COL_UNIT, &unit, -1); - - g_return_if_fail(unit != NULL); - -#ifdef UNIT_SELECTOR_VERBOSE - g_print("Old unit %s new unit %s\n", us->unit->name, unit->name); -#endif - - SPUnit const *old = us->unit; - us->unit = unit; - - us->update = TRUE; - - gboolean consumed = FALSE; - g_signal_emit(G_OBJECT(us), signals[SET_UNIT], 0, old, unit, &consumed); - - if ( !consumed - && ( unit->base == old->base - || ( unit->base == SP_UNIT_ABSOLUTE && old->base == SP_UNIT_DEVICE ) - || ( old->base == SP_UNIT_ABSOLUTE && unit->base == SP_UNIT_DEVICE ) ) ) { - // Either the same base, or absolute<->device: - /* Recalculate adjustments. */ - for (GSList *l = us->adjustments; l != NULL; l = g_slist_next(l)) { - GtkAdjustment *adj = GTK_ADJUSTMENT(l->data); - gdouble val = gtk_adjustment_get_value (adj); -#ifdef UNIT_SELECTOR_VERBOSE - g_print("Old val %g ... ", val); -#endif - val = sp_convert_distance_full(val, *old, *unit); -#ifdef UNIT_SELECTOR_VERBOSE - g_print("new val %g\n", val); -#endif - gtk_adjustment_set_value (adj, val); - } - /* need to separate the value changing from the notification - * or else the unit changes can break the calculations */ - for (GSList *l = us->adjustments; l != NULL; l = g_slist_next(l)) { - gtk_adjustment_value_changed(GTK_ADJUSTMENT(l->data)); - } - } else if (!consumed && unit->base != old->base) { - /* when the base changes, signal all the adjustments to get them - * to recalculate */ - for (GSList *l = us->adjustments; l != NULL; l = g_slist_next(l)) { - g_signal_emit_by_name(G_OBJECT(l->data), "value_changed"); - } - } - - us->update = FALSE; - -} - -static void -spus_rebuild_menu(SPUnitSelector *us) -{ - - gtk_list_store_clear(us->store); - - GtkTreeIter iter; - - gint pos = 0; - gint p = 0; - for (GSList *l = us->units; l != NULL; l = l->next) { - SPUnit const *u = static_cast(l->data); - - // use only abbreviations in the menu - // i = gtk_menu_item_new_with_label((us->abbr) ? (us->plural) ? u->abbr_plural : u->abbr : (us->plural) ? u->plural : u->name); - gtk_list_store_append (us->store, &iter); - gtk_list_store_set (us->store, &iter, COMBO_COL_LABEL, u->abbr, COMBO_COL_UNIT, (gpointer) u, -1); - - if (u == us->unit) { - pos = p; - } - - p += 1; - } - - gtk_combo_box_set_active(GTK_COMBO_BOX(us->combo_box), pos); - g_signal_connect (G_OBJECT (us->combo_box), "changed", G_CALLBACK (on_combo_box_changed), us); -} - -void -sp_unit_selector_set_bases(SPUnitSelector *us, guint bases) -{ - g_return_if_fail(us != NULL); - g_return_if_fail(SP_IS_UNIT_SELECTOR(us)); - - if (bases == us->bases) return; - - GSList *units = sp_unit_get_list(bases); - g_return_if_fail(units != NULL); - sp_unit_free_list(us->units); - us->units = units; - us->unit = static_cast(units->data); - - spus_rebuild_menu(us); -} - -void -sp_unit_selector_add_unit(SPUnitSelector *us, SPUnit const *unit, int position) -{ - if (!g_slist_find(us->units, (gpointer) unit)) { - us->units = g_slist_insert(us->units, (gpointer) unit, position); - - spus_rebuild_menu(us); - } -} - -void -sp_unit_selector_set_unit(SPUnitSelector *us, SPUnit const *unit) -{ - g_return_if_fail(us != NULL); - g_return_if_fail(SP_IS_UNIT_SELECTOR(us)); - - if (unit == NULL) { - return; // silently return, by default a newly created selector uses pt - } - if (unit == us->unit) { - return; - } - - gint const pos = g_slist_index(us->units, (gpointer) unit); - g_return_if_fail(pos >= 0); - - gtk_combo_box_set_active(GTK_COMBO_BOX(us->combo_box), pos); - - SPUnit const *old = us->unit; - us->unit = unit; - - /* Recalculate adjustments */ - for (GSList *l = us->adjustments; l != NULL; l = l->next) { - GtkAdjustment *adj = GTK_ADJUSTMENT(l->data); - gdouble const val = sp_convert_distance_full(gtk_adjustment_get_value (adj), *old, *unit); - gtk_adjustment_set_value(adj, val); - } -} - -void -sp_unit_selector_add_adjustment(SPUnitSelector *us, GtkAdjustment *adj) -{ - g_return_if_fail(us != NULL); - g_return_if_fail(SP_IS_UNIT_SELECTOR(us)); - g_return_if_fail(adj != NULL); - g_return_if_fail(GTK_IS_ADJUSTMENT(adj)); - - g_return_if_fail(!g_slist_find(us->adjustments, adj)); - - g_object_ref(adj); - us->adjustments = g_slist_prepend(us->adjustments, adj); -} - -void -sp_unit_selector_remove_adjustment(SPUnitSelector *us, GtkAdjustment *adj) -{ - g_return_if_fail(us != NULL); - g_return_if_fail(SP_IS_UNIT_SELECTOR(us)); - g_return_if_fail(adj != NULL); - g_return_if_fail(GTK_IS_ADJUSTMENT(adj)); - - g_return_if_fail(g_slist_find(us->adjustments, adj)); - - us->adjustments = g_slist_remove(us->adjustments, adj); - g_object_unref(adj); -} - -gboolean -sp_unit_selector_update_test(SPUnitSelector const *selector) -{ - g_return_val_if_fail(selector != NULL, FALSE); - g_return_val_if_fail(SP_IS_UNIT_SELECTOR(selector), FALSE); - - return selector->update; -} - -double -sp_unit_selector_get_value_in_pixels(SPUnitSelector const *selector, GtkAdjustment *adj) -{ - g_return_val_if_fail(selector != NULL, gtk_adjustment_get_value (adj)); - g_return_val_if_fail(SP_IS_UNIT_SELECTOR(selector), gtk_adjustment_get_value (adj)); - - return sp_units_get_pixels(gtk_adjustment_get_value (adj), *(selector->unit)); -} - -void -sp_unit_selector_set_value_in_pixels(SPUnitSelector *selector, GtkAdjustment *adj, double value) -{ - g_return_if_fail(selector != NULL); - g_return_if_fail(SP_IS_UNIT_SELECTOR(selector)); - - gtk_adjustment_set_value(adj, sp_pixels_get_units(value, *(selector->unit))); -} - -/* - Local Variables: - mode:c++ - c-file-style:"stroustrup" - c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +)) - indent-tabs-mode:nil - fill-column:99 - End: -*/ -// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 : diff --git a/src/helper/unit-menu.h b/src/helper/unit-menu.h deleted file mode 100644 index b3ee6bcd1..000000000 --- a/src/helper/unit-menu.h +++ /dev/null @@ -1,60 +0,0 @@ -#ifndef SP_UNIT_MENU_H -#define SP_UNIT_MENU_H - -/* - * SPUnitMenu - * - * Generic (and quite unintelligent) grid item for gnome canvas - * - * Copyright (C) Lauris Kaplinski 2000 - * - */ - -#include -#include - -struct SPUnit; -struct SPUnitSelector; -struct SPUnitSelectorClass; - -/* Unit selector Widget */ - -#define SP_TYPE_UNIT_SELECTOR (sp_unit_selector_get_type()) -#define SP_UNIT_SELECTOR(o) (G_TYPE_CHECK_INSTANCE_CAST((o), SP_TYPE_UNIT_SELECTOR, SPUnitSelector)) -#define SP_UNIT_SELECTOR_CLASS(k) (G_TYPE_CHECK_CLASS_CAST((k), SP_TYPE_UNIT_SELECTOR, SPUnitSelectorClass)) -#define SP_IS_UNIT_SELECTOR(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), SP_TYPE_UNIT_SELECTOR)) -#define SP_IS_UNIT_SELECTOR_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE((k), SP_TYPE_UNIT_SELECTOR)) - -GType sp_unit_selector_get_type(void); - -GtkWidget *sp_unit_selector_new(guint bases); -void sp_unit_selector_setsize(GtkWidget *us, guint w, guint h); - -SPUnit const *sp_unit_selector_get_unit(SPUnitSelector const *selector); - -void sp_unit_selector_set_bases(SPUnitSelector *selector, guint bases); -void sp_unit_selector_add_unit(SPUnitSelector *selector, SPUnit const *unit, int position); - -void sp_unit_selector_set_unit(SPUnitSelector *selector, SPUnit const *unit); -void sp_unit_selector_add_adjustment(SPUnitSelector *selector, GtkAdjustment *adjustment); -void sp_unit_selector_remove_adjustment(SPUnitSelector *selector, GtkAdjustment *adjustment); - -gboolean sp_unit_selector_update_test(SPUnitSelector const *selector); - -double sp_unit_selector_get_value_in_pixels(SPUnitSelector const *selector, GtkAdjustment *adj); -void sp_unit_selector_set_value_in_pixels(SPUnitSelector *selector, GtkAdjustment *adj, double value); - - - -#endif // SP_UNIT_MENU_H - -/* - Local Variables: - mode:c++ - c-file-style:"stroustrup" - c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +)) - indent-tabs-mode:nil - fill-column:99 - End: -*/ -// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 : diff --git a/src/helper/units-test.h b/src/helper/units-test.h deleted file mode 100644 index 05bc75eff..000000000 --- a/src/helper/units-test.h +++ /dev/null @@ -1,90 +0,0 @@ -#include - -#include -#include -#include - -class UnitsTest : public CxxTest::TestSuite { -public: - - UnitsTest() - { - } - virtual ~UnitsTest() {} - -// createSuite and destroySuite get us per-suite setup and teardown -// without us having to worry about static initialization order, etc. - static UnitsTest *createSuite() { return new UnitsTest(); } - static void destroySuite( UnitsTest *suite ) { delete suite; } - - void testConversions() - { - struct Case { double x; char const *abbr; double pts; } const tests[] = { - { 1.0, "pt", 1.0 }, - { 5.0, "pt", 5.0 }, - { 1.0, "in", 72.0 }, - { 2.0, "in", 144.0 }, - { 254., "mm", 720.0 }, - { 254., "cm", 7200. }, - { 254., "m", 720000. }, - { 1.5, "mm", (15 * 72. / 254) } - }; - for (unsigned i = 0; i < G_N_ELEMENTS(tests); ++i) { - Case const &c = tests[i]; - SPUnit const &unit = *sp_unit_get_by_abbreviation(N_(c.abbr)); - - double const calc_pts = sp_units_get_points(c.x, unit); - TS_ASSERT(approx_equal(calc_pts, c.pts)); - - double const calc_x = sp_points_get_units(c.pts, unit); - TS_ASSERT(approx_equal(calc_x, c.x)); - - double tmp = c.x; - bool const converted_to_pts = sp_convert_distance(&tmp, &unit, SP_PS_UNIT); - TS_ASSERT(converted_to_pts); - TS_ASSERT(approx_equal(tmp, c.pts)); - - tmp = c.pts; - bool const converted_from_pts = sp_convert_distance(&tmp, SP_PS_UNIT, &unit); - TS_ASSERT(converted_from_pts); - TS_ASSERT(approx_equal(tmp, c.x)); - } - } - - void testUnitTable() - { - TS_ASSERT(sp_units_table_sane()); - } - -private: - /* N.B. Wrongly returns false if both near 0. (Not a problem for current users.) */ - bool approx_equal(double const x, double const y) - { - return fabs(x / y - 1) < 1e-15; - } - - double sp_units_get_points(double const x, SPUnit const &unit) - { - SPUnit const &pt_unit = sp_unit_get_by_id(SP_UNIT_PT); - double const px = sp_units_get_pixels(x, unit); - return sp_pixels_get_units(px, pt_unit); - } - - double sp_points_get_units(double const pts, SPUnit const &unit) - { - SPUnit const &pt_unit = sp_unit_get_by_id(SP_UNIT_PT); - double const px = sp_units_get_pixels(pts, pt_unit); - return sp_pixels_get_units(px, unit); - } -}; - -/* - Local Variables: - mode:c++ - c-file-style:"stroustrup" - c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +)) - indent-tabs-mode:nil - fill-column:99 - End: -*/ -// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 : diff --git a/src/helper/units.cpp b/src/helper/units.cpp deleted file mode 100644 index 1593fc131..000000000 --- a/src/helper/units.cpp +++ /dev/null @@ -1,261 +0,0 @@ -#define __SP_PAPER_C__ - -/* - * SPUnit - * - * Ported from libgnomeprint - * - * Authors: - * Dirk Luetjens - * Yves Arrouye - * Lauris Kaplinski - * bulia byak - * - * Copyright 1999-2001 Ximian, Inc. and authors - * - */ - -#ifdef HAVE_CONFIG_H -# include "config.h" -#endif - -#include "helper/units.h" -#include // g_assert() -#include -#include "unit-constants.h" -#include "svg/svg-length.h" - -/* todo: use some fancy unit program */ - -/* The order determines the order of the list returned by sp_unit_get_list. - * (It can also affect string lookups if there are any duplicates in the - * current locale... hopefully none.) If you re-order this list, then you must - * also re-order the SPUnitId enum values accordingly. Run `make check' (which - * calls sp_unit_table_sane) to ensure that the two are in sync. - */ -SPUnit const sp_units[] = { - {SP_UNIT_SCALE, SP_UNIT_DIMENSIONLESS, 1.0, SP_NONE, SVGLength::NONE, N_("Unit"), "", N_("Units"), ""}, - {SP_UNIT_PT, SP_UNIT_ABSOLUTE, PX_PER_PT, SP_PT, SVGLength::PT, N_("Point"), N_("pt"), N_("Points"), N_("Pt")}, - {SP_UNIT_PC, SP_UNIT_ABSOLUTE, PX_PER_PC, SP_PC, SVGLength::PC, N_("Pica"), N_("pc"), N_("Picas"), N_("Pc")}, - {SP_UNIT_PX, SP_UNIT_DEVICE, PX_PER_PX, SP_PX, SVGLength::PX, N_("Pixel"), N_("px"), N_("Pixels"), N_("Px")}, - /* You can add new elements from this point forward */ - {SP_UNIT_PERCENT, SP_UNIT_DIMENSIONLESS, 0.01, SP_NONE, SVGLength::PERCENT, N_("Percent"), N_("%"), N_("Percents"), N_("%")}, - {SP_UNIT_MM, SP_UNIT_ABSOLUTE, PX_PER_MM, SP_MM, SVGLength::MM, N_("Millimeter"), N_("mm"), N_("Millimeters"), N_("mm")}, - {SP_UNIT_CM, SP_UNIT_ABSOLUTE, PX_PER_CM, SP_CM, SVGLength::CM, N_("Centimeter"), N_("cm"), N_("Centimeters"), N_("cm")}, - {SP_UNIT_M, SP_UNIT_ABSOLUTE, PX_PER_M, SP_M, SVGLength::NONE, N_("Meter"), N_("m"), N_("Meters"), N_("m")}, // no svg_unit - {SP_UNIT_IN, SP_UNIT_ABSOLUTE, PX_PER_IN, SP_IN, SVGLength::INCH, N_("Inch"), N_("in"), N_("Inches"), N_("in")}, - {SP_UNIT_FT, SP_UNIT_ABSOLUTE, PX_PER_FT, SP_FT, SVGLength::FOOT, N_("Foot"), N_("ft"), N_("Feet"), N_("ft")}, - /* Volatiles do not have default, so there are none here */ - // TRANSLATORS: for info, see http://www.w3.org/TR/REC-CSS2/syndata.html#length-units - {SP_UNIT_EM, SP_UNIT_VOLATILE, 1.0, SP_NONE, SVGLength::EM, N_("Em square"), N_("em"), N_("Em squares"), N_("em")}, - // TRANSLATORS: for info, see http://www.w3.org/TR/REC-CSS2/syndata.html#length-units - {SP_UNIT_EX, SP_UNIT_VOLATILE, 1.0, SP_NONE, SVGLength::EX, N_("Ex square"), N_("ex"), N_("Ex squares"), N_("ex")}, -}; - -#define sp_num_units G_N_ELEMENTS(sp_units) - -SPUnit const * -sp_unit_get_by_abbreviation(gchar const *abbreviation) -{ - g_return_val_if_fail(abbreviation != NULL, NULL); - - for (unsigned i = 0 ; i < sp_num_units ; i++) { - if (!g_ascii_strcasecmp(abbreviation, sp_units[i].abbr)) return &sp_units[i]; - if (!g_ascii_strcasecmp(abbreviation, sp_units[i].abbr_plural)) return &sp_units[i]; - } - - return NULL; -} - -gchar const * -sp_unit_get_abbreviation(SPUnit const *unit) -{ - g_return_val_if_fail(unit != NULL, NULL); - - return unit->abbr; -} - -gchar const * -sp_unit_get_plural (SPUnit const *unit) -{ - g_return_val_if_fail(unit != NULL, NULL); - - return unit->plural; -} - -SPMetric sp_unit_get_metric(SPUnit const *unit) -{ - g_return_val_if_fail(unit != NULL, SP_NONE); - - return unit->metric; -} - -guint sp_unit_get_svg_unit(SPUnit const *unit) -{ - g_return_val_if_fail(unit != NULL, SP_NONE); - - return unit->svg_unit; -} - -GSList * -sp_unit_get_list(guint bases) -{ - g_return_val_if_fail((bases & ~SP_UNITS_ALL) == 0, NULL); - - GSList *units = NULL; - for (unsigned i = sp_num_units ; i--; ) { - if (bases & sp_units[i].base) { - units = g_slist_prepend(units, (gpointer) &sp_units[i]); - } - } - - return units; -} - -void -sp_unit_free_list(GSList *units) -{ - g_slist_free(units); -} - -/* These are pure utility */ -/* Return TRUE if conversion is possible */ -gboolean -sp_convert_distance(gdouble *distance, SPUnit const *from, SPUnit const *to) -{ - g_return_val_if_fail(distance != NULL, FALSE); - g_return_val_if_fail(from != NULL, FALSE); - g_return_val_if_fail(to != NULL, FALSE); - - if (from == to) return TRUE; - if ((from->base == SP_UNIT_DIMENSIONLESS) || (to->base == SP_UNIT_DIMENSIONLESS)) { - *distance = *distance * from->unittobase / to->unittobase; - return TRUE; - } - if ((from->base == SP_UNIT_VOLATILE) || (to->base == SP_UNIT_VOLATILE)) return FALSE; - - if ((from->base == to->base) - || ((from->base == SP_UNIT_DEVICE) && (to->base == SP_UNIT_ABSOLUTE)) - || ((from->base == SP_UNIT_ABSOLUTE) && (to->base == SP_UNIT_DEVICE))) - { - *distance = *distance * from->unittobase / to->unittobase; - return TRUE; - } - - return FALSE; -} - -/** @param devicetransform for device units. */ -/* TODO: Remove the ctmscale parameter given that we no longer have SP_UNIT_USERSPACE. */ -gdouble -sp_convert_distance_full(gdouble const from_dist, SPUnit const &from, SPUnit const &to) -{ - if (&from == &to) { - return from_dist; - } - if (from.base == to.base) { - gdouble ret = from_dist; - bool const succ = sp_convert_distance(&ret, &from, &to); - g_assert(succ); - return ret; - } - if ((from.base == SP_UNIT_DIMENSIONLESS) - || (to.base == SP_UNIT_DIMENSIONLESS)) - { - return from_dist * from.unittobase / to.unittobase; - } - g_return_val_if_fail(((from.base != SP_UNIT_VOLATILE) - && (to.base != SP_UNIT_VOLATILE)), - from_dist); - - gdouble absolute; - switch (from.base) { - case SP_UNIT_ABSOLUTE: - case SP_UNIT_DEVICE: - absolute = from_dist * from.unittobase; - break; - default: - g_warning("file %s: line %d: Illegal unit (base 0x%x)", __FILE__, __LINE__, from.base); - return from_dist; - } - - gdouble ret; - switch (to.base) { - default: - g_warning("file %s: line %d: Illegal unit (base 0x%x)", __FILE__, __LINE__, to.base); - /* FALL-THROUGH */ - case SP_UNIT_ABSOLUTE: - case SP_UNIT_DEVICE: - ret = absolute / to.unittobase; - break; - } - - return ret; -} - -/* Some more convenience */ - -gdouble -sp_units_get_pixels(gdouble const units, SPUnit const &unit) -{ - if (unit.base == SP_UNIT_ABSOLUTE || unit.base == SP_UNIT_DEVICE) { - return units * unit.unittobase; - } else { - g_warning("Different unit bases: No exact unit conversion available"); - return units * unit.unittobase; - } -} - -gdouble -sp_pixels_get_units(gdouble const pixels, SPUnit const &unit) -{ - if (unit.base == SP_UNIT_ABSOLUTE || unit.base == SP_UNIT_DEVICE) { - return pixels / unit.unittobase; - } else { - g_warning("Different unit bases: No exact unit conversion available"); - return pixels / unit.unittobase; - } -} - -bool -sp_units_table_sane() -{ - for (unsigned i = 0; i < G_N_ELEMENTS(sp_units); ++i) { - if (unsigned(sp_units[i].unit_id) != i) { - return false; - } - } - return true; -} - -/** Converts angle (in deg) to compass display */ -double -angle_to_compass(double angle) -{ - double ret = 90 - angle; - if (ret < 0) - ret = 360 + ret; - return ret; -} - -/** Converts angle (in deg) to compass display */ -double -angle_from_compass(double angle) -{ - double ret = 90 - angle; - if (ret > 180) - ret = ret - 180; - return ret; -} - - -/* - Local Variables: - mode:c++ - c-file-style:"stroustrup" - c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +)) - indent-tabs-mode:nil - fill-column:99 - End: -*/ -// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 : diff --git a/src/helper/units.h b/src/helper/units.h deleted file mode 100644 index 93bd70615..000000000 --- a/src/helper/units.h +++ /dev/null @@ -1,146 +0,0 @@ -#ifndef __SP_UNIT_H__ -#define __SP_UNIT_H__ - -/* - * SPUnit - * - * Ported from libgnomeprint - * - * Authors: - * Dirk Luetjens - * Yves Arrouye - * Lauris Kaplinski - * - * Copyright 1999-2001 Ximian, Inc. and authors - * - */ - -#include -#include "sp-metric.h" - - -/* - * Units and conversion methods used by libgnomeprint. - * - * You need those for certain config keys (like paper size), if you are - * interested in using these (look at gnome-print-config.h for discussion, - * why you may NOT be interested in paper size). - * - * Unit bases define set of mutually unrelated measuring systems (numbers, - * paper, screen and dimesionless user coordinates). Still, you can convert - * between those, specifying scaling factors explicitly. - * - * Paper (i.e. output) coordinates are taken as absolute real world units. - * It has some justification, because screen unit (pixel) size changes, - * if you change screen resolution, while you cannot change output on paper - * as easily (unless you have thermally contracting paper, of course). - * - */ - -struct SPUnit; -struct SPDistance; - -/* - * The base linear ("absolute") unit is 1/72th of an inch, i.e. the base unit of postscript. - */ - -/* - * Unit bases - */ -enum SPUnitBase { - SP_UNIT_DIMENSIONLESS = (1 << 0), /* For percentages and like */ - SP_UNIT_ABSOLUTE = (1 << 1), /* Real world distances - i.e. mm, cm... */ - SP_UNIT_DEVICE = (1 << 2), /* Pixels in the SVG/CSS sense. */ - SP_UNIT_VOLATILE = (1 << 3) /* em and ex */ -}; - -/* - * Units: indexes into sp_units. - */ -enum SPUnitId { - SP_UNIT_SCALE, // 1.0 == 100% - SP_UNIT_PT, // Postscript points: exactly 72 per inch - SP_UNIT_PC, // Pica; there are 12 points per pica - SP_UNIT_PX, // "Pixels" in the CSS sense; though Inkscape assumes a constant 90 per inch. - SP_UNIT_PERCENT, /* Note: In Inkscape this often means "relative to current value" (for - users to edit a value), rather than the SVG/CSS use of percentages. */ - SP_UNIT_MM, // millimetres - SP_UNIT_CM, // centimetres - SP_UNIT_M, // metres - SP_UNIT_IN, // inches - SP_UNIT_FT, // foot - SP_UNIT_EM, // font-size of relevant font - SP_UNIT_EX, // x-height of relevant font - sp_max_unit_id = SP_UNIT_EX // For bounds-checking in sp_unit_get_by_id. -}; - -/* - * Notice, that for correct menus etc. you have to use - * ngettext method family yourself. For that reason we - * do not provide translations in unit names. - * I also do not know, whether to allow user-created units, - * because this would certainly confuse textdomain. - */ - -struct SPUnit { - SPUnitId unit_id; /* used as sanity check */ - SPUnitBase base; - gdouble unittobase; /* how many base units in this unit */ - SPMetric metric; // the corresponding SPMetric from sp-metrics.h - guint svg_unit; // the corresponding SVGLengthUnit - - /* When using, you must call "gettext" on them so they're translated */ - gchar const *name; - gchar const *abbr; - gchar const *plural; - gchar const *abbr_plural; -}; - -const SPUnit *sp_unit_get_by_abbreviation (const gchar *abbreviation); -/* When using, you must call "gettext" on them so they're translated */ -const gchar *sp_unit_get_abbreviation (const SPUnit *unit); -gchar const *sp_unit_get_plural (SPUnit const *unit); - -SPMetric sp_unit_get_metric(SPUnit const *unit); -guint sp_unit_get_svg_unit(SPUnit const *unit); - -extern SPUnit const sp_units[]; - -inline SPUnit const & -sp_unit_get_by_id(SPUnitId const id) -{ - /* inline because the compiler should optimize away the g_return_val_if_fail test in the - usual case that the argument value is known at compile-time, leaving just - "return sp_units[constant]". */ - unsigned const ix = unsigned(id); - g_return_val_if_fail(ix <= sp_max_unit_id, sp_units[SP_UNIT_PX]); - return sp_units[ix]; -} - -#define SP_PS_UNIT (&sp_unit_get_by_id(SP_UNIT_PT)) - - -/** Used solely by units-test.cpp. */ -bool sp_units_table_sane(); - -#define SP_UNITS_ALL (SP_UNIT_DIMENSIONLESS | SP_UNIT_ABSOLUTE | SP_UNIT_DEVICE | SP_UNIT_VOLATILE) - -GSList *sp_unit_get_list (guint bases); -void sp_unit_free_list (GSList *units); - -/* These are pure utility */ -/* Return TRUE if conversion is possible, FALSE if unit bases differ */ -gboolean sp_convert_distance (gdouble *distance, const SPUnit *from, const SPUnit *to); - -/* If either one is NULL, transconverting to/from that base fails */ -/* Generic conversion between volatile units would be useless anyways */ -gdouble sp_convert_distance_full(gdouble const from_dist, SPUnit const &from, SPUnit const &to); - -/* Some more convenience */ -gdouble sp_units_get_pixels(gdouble const units, SPUnit const &unit); -gdouble sp_pixels_get_units(gdouble const pixels, SPUnit const &unit); - -double angle_to_compass(double angle); -double angle_from_compass(double angle); - -#endif diff --git a/src/ui/widget/registered-widget.h b/src/ui/widget/registered-widget.h index 491ca6050..53d53345a 100644 --- a/src/ui/widget/registered-widget.h +++ b/src/ui/widget/registered-widget.h @@ -32,7 +32,6 @@ #include -struct SPUnit; class SPDocument; namespace Gtk { -- cgit v1.2.3 From 86abdc99654356a2047571e907b933505dbfab76 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Sat, 20 Jul 2013 14:45:18 -0400 Subject: Add string output functions for units. (bzr r12380.1.46) --- src/util/units.cpp | 13 +++++++++++++ src/util/units.h | 3 +++ 2 files changed, 16 insertions(+) diff --git a/src/util/units.cpp b/src/util/units.cpp index dcb3ae4b1..01424520b 100644 --- a/src/util/units.cpp +++ b/src/util/units.cpp @@ -15,6 +15,7 @@ #include #include +#include #include #include @@ -501,6 +502,18 @@ double Quantity::value(const Glib::ustring u) const return value(unit_table.getUnit(u)); } +/** Return a printable string of the value in the specified unit. */ +Glib::ustring Quantity::string(const Unit &u) const { + return Glib::ustring::format(std::fixed, std::setprecision(2), value(u)) + " " + unit->abbr; +} +Glib::ustring Quantity::string(const Glib::ustring u) const { + static UnitTable unit_table; + return string(unit_table.getUnit(u)); +} +Glib::ustring Quantity::string() const { + return string(*unit); +} + /** Convert distances. */ double Quantity::convert(const double from_dist, const Unit &from, const Unit &to) { diff --git a/src/util/units.h b/src/util/units.h index 392e51e7a..0bbe604ef 100644 --- a/src/util/units.h +++ b/src/util/units.h @@ -94,6 +94,9 @@ public: bool compatibleWith(const Glib::ustring u) const; double value(const Unit &u) const; double value(const Glib::ustring u) const; + Glib::ustring string(const Unit &u) const; + Glib::ustring string(const Glib::ustring u) const; + Glib::ustring string() const; static double convert(const double from_dist, const Unit &from, const Unit &to); static double convert(const double from_dist, const Glib::ustring from, const Unit &to); -- cgit v1.2.3 From fdf69629c66f6c1a69d88a00bb6c1311c97b631b Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Sat, 20 Jul 2013 15:08:31 -0400 Subject: Ported away from and removed "sp-metrics.*". (bzr r12380.1.47) --- src/CMakeLists.txt | 2 - src/Makefile_insert | 1 - src/arc-context.cpp | 7 +- src/box3d-context.cpp | 1 - src/desktop-events.cpp | 1 - src/doxygen-main.cpp | 2 - src/flood-context.cpp | 1 - src/live_effects/lpe-path_length.cpp | 1 - src/pen-context.cpp | 4 +- src/rect-context.cpp | 7 +- src/seltrans.cpp | 13 ++-- src/sp-guide.cpp | 9 ++- src/sp-metrics.cpp | 120 ----------------------------------- src/sp-metrics.h | 20 ------ src/sp-text.cpp | 4 +- src/spiral-context.cpp | 4 +- src/star-context.cpp | 4 +- src/text-context.cpp | 7 +- src/ui/tool/node.cpp | 18 ++++-- 19 files changed, 44 insertions(+), 182 deletions(-) delete mode 100644 src/sp-metrics.cpp delete mode 100644 src/sp-metrics.h diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index fa54940db..f975f16bf 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -46,7 +46,6 @@ set(sp_SRC sp-mesh-patch.cpp sp-mesh-row.cpp sp-metadata.cpp - sp-metrics.cpp sp-missing-glyph.cpp sp-namedview.cpp sp-object-group.cpp @@ -137,7 +136,6 @@ set(sp_SRC sp-mesh-row.h sp-metadata.h sp-metric.h - sp-metrics.h sp-missing-glyph.h sp-namedview.h sp-object-group.h diff --git a/src/Makefile_insert b/src/Makefile_insert index 88f809b52..ba14056e5 100644 --- a/src/Makefile_insert +++ b/src/Makefile_insert @@ -200,7 +200,6 @@ ink_common_sources += \ sp-mesh-row-fns.h \ sp-mesh-row.cpp sp-mesh-row.h \ sp-metric.h \ - sp-metrics.cpp sp-metrics.h \ sp-missing-glyph.cpp sp-missing-glyph.h \ sp-namedview.cpp sp-namedview.h \ sp-object.cpp sp-object.h \ diff --git a/src/arc-context.cpp b/src/arc-context.cpp index 34e4bbeab..115f45493 100644 --- a/src/arc-context.cpp +++ b/src/arc-context.cpp @@ -32,7 +32,6 @@ #include "desktop-handles.h" #include "snap.h" #include "pixmaps/cursor-ellipse.xpm" -#include "sp-metrics.h" #include "xml/repr.h" #include "xml/node-event-vector.h" #include "preferences.h" @@ -450,8 +449,10 @@ static void sp_arc_drag(SPArcContext *ac, Geom::Point pt, guint state) double rdimx = r.dimensions()[Geom::X]; double rdimy = r.dimensions()[Geom::Y]; - GString *xs = SP_PX_TO_METRIC_STRING(rdimx, desktop->namedview->getDefaultMetric()); - GString *ys = SP_PX_TO_METRIC_STRING(rdimy, desktop->namedview->getDefaultMetric()); + Inkscape::Util::Quantity rdimx_q = Inkscape::Util::Quantity(rdimx, "px"); + Inkscape::Util::Quantity rdimy_q = Inkscape::Util::Quantity(rdimy, "px"); + GString *xs = g_string_new(rdimx_q.string(*desktop->namedview->doc_units).c_str()); + GString *ys = g_string_new(rdimy_q.string(*desktop->namedview->doc_units).c_str()); if (state & GDK_CONTROL_MASK) { int ratio_x, ratio_y; if (fabs (rdimx) > fabs (rdimy)) { diff --git a/src/box3d-context.cpp b/src/box3d-context.cpp index a55aba00d..7491520de 100644 --- a/src/box3d-context.cpp +++ b/src/box3d-context.cpp @@ -35,7 +35,6 @@ #include "pixmaps/cursor-3dbox.xpm" #include "box3d.h" #include "box3d-context.h" -#include "sp-metrics.h" #include #include "xml/repr.h" #include "xml/node-event-vector.h" diff --git a/src/desktop-events.cpp b/src/desktop-events.cpp index 473ccfa9f..5cb26abc0 100644 --- a/src/desktop-events.cpp +++ b/src/desktop-events.cpp @@ -39,7 +39,6 @@ #include "snap.h" #include "display/sp-canvas.h" #include "sp-guide.h" -#include "sp-metrics.h" #include "sp-namedview.h" #include "tools-switch.h" #include "verbs.h" diff --git a/src/doxygen-main.cpp b/src/doxygen-main.cpp index 04e5ab33e..d254299c8 100644 --- a/src/doxygen-main.cpp +++ b/src/doxygen-main.cpp @@ -334,8 +334,6 @@ namespace XML {} * * Inkscape::GC * - * [\ref sp-metrics.cpp, \ref sp-metrics.h] - * * [\ref prefs-utils.cpp] [\ref print.cpp] * * - Inkscape::GZipBuffer [\ref streams-gzip.h] diff --git a/src/flood-context.cpp b/src/flood-context.cpp index 8fde11f88..a719f1202 100644 --- a/src/flood-context.cpp +++ b/src/flood-context.cpp @@ -54,7 +54,6 @@ #include "sp-defs.h" #include "sp-item.h" #include "splivarot.h" -#include "sp-metrics.h" #include "sp-namedview.h" #include "sp-object.h" #include "sp-path.h" diff --git a/src/live_effects/lpe-path_length.cpp b/src/live_effects/lpe-path_length.cpp index 504fb53c0..4ca380c15 100644 --- a/src/live_effects/lpe-path_length.cpp +++ b/src/live_effects/lpe-path_length.cpp @@ -14,7 +14,6 @@ #include #include "live_effects/lpe-path_length.h" -#include "sp-metrics.h" #include "util/units.h" #include "2geom/sbasis-geometric.h" diff --git a/src/pen-context.cpp b/src/pen-context.cpp index eac2ce5d1..69abf3513 100644 --- a/src/pen-context.cpp +++ b/src/pen-context.cpp @@ -22,7 +22,6 @@ #include "pen-context.h" #include "sp-namedview.h" -#include "sp-metrics.h" #include "desktop.h" #include "desktop-handles.h" #include "selection.h" @@ -1184,7 +1183,8 @@ static void spdc_pen_set_angle_distance_status_message(SPPenContext *const pc, G SPDesktop *desktop = SP_EVENT_CONTEXT(pc)->desktop; Geom::Point rel = p - pc->p[pc_point_to_compare]; - GString *dist = SP_PX_TO_METRIC_STRING(Geom::L2(rel), desktop->namedview->getDefaultMetric()); + Inkscape::Util::Quantity q = Inkscape::Util::Quantity(Geom::L2(rel), "px"); + GString *dist = g_string_new(q.string(*desktop->namedview->doc_units).c_str()); double angle = atan2(rel[Geom::Y], rel[Geom::X]) * 180 / M_PI; Inkscape::Preferences *prefs = Inkscape::Preferences::get(); if (prefs->getBool("/options/compassangledisplay/value", 0) != 0) { diff --git a/src/rect-context.cpp b/src/rect-context.cpp index 06745564f..17675745f 100644 --- a/src/rect-context.cpp +++ b/src/rect-context.cpp @@ -35,7 +35,6 @@ #include "message-context.h" #include "pixmaps/cursor-rect.xpm" #include "rect-context.h" -#include "sp-metrics.h" #include #include "xml/repr.h" #include "xml/node-event-vector.h" @@ -483,8 +482,10 @@ static void sp_rect_drag(SPRectContext &rc, Geom::Point const pt, guint state) // status text double rdimx = r.dimensions()[Geom::X]; double rdimy = r.dimensions()[Geom::Y]; - GString *xs = SP_PX_TO_METRIC_STRING(rdimx, desktop->namedview->getDefaultMetric()); - GString *ys = SP_PX_TO_METRIC_STRING(rdimy, desktop->namedview->getDefaultMetric()); + Inkscape::Util::Quantity rdimx_q = Inkscape::Util::Quantity(rdimx, "px"); + Inkscape::Util::Quantity rdimy_q = Inkscape::Util::Quantity(rdimy, "px"); + GString *xs = g_string_new(rdimx_q.string(*desktop->namedview->doc_units).c_str()); + GString *ys = g_string_new(rdimy_q.string(*desktop->namedview->doc_units).c_str()); if (state & GDK_CONTROL_MASK) { int ratio_x, ratio_y; bool is_golden_ratio = false; diff --git a/src/seltrans.cpp b/src/seltrans.cpp index 33bfe3e4a..f614853bc 100644 --- a/src/seltrans.cpp +++ b/src/seltrans.cpp @@ -37,7 +37,6 @@ #include "seltrans-handles.h" #include "seltrans.h" #include "selection-chemistry.h" -#include "sp-metrics.h" #include "verbs.h" #include #include "display/sp-ctrlline.h" @@ -1273,8 +1272,10 @@ gboolean Inkscape::SelTrans::centerRequest(Geom::Point &pt, guint state) m.unSetup(); // status text - GString *xs = SP_PX_TO_METRIC_STRING(pt[Geom::X], _desktop->namedview->getDefaultMetric()); - GString *ys = SP_PX_TO_METRIC_STRING(pt[Geom::Y], _desktop->namedview->getDefaultMetric()); + Inkscape::Util::Quantity x_q = Inkscape::Util::Quantity(pt[Geom::X], "px"); + Inkscape::Util::Quantity y_q = Inkscape::Util::Quantity(pt[Geom::Y], "px"); + GString *xs = g_string_new(x_q.string(*_desktop->namedview->doc_units).c_str()); + GString *ys = g_string_new(y_q.string(*_desktop->namedview->doc_units).c_str()); _message_context.setF(Inkscape::NORMAL_MESSAGE, _("Move center to %s, %s"), xs->str, ys->str); g_string_free(xs, FALSE); g_string_free(ys, FALSE); @@ -1425,8 +1426,10 @@ void Inkscape::SelTrans::moveTo(Geom::Point const &xy, guint state) transform(move, norm); // status text - GString *xs = SP_PX_TO_METRIC_STRING(dxy[Geom::X], _desktop->namedview->getDefaultMetric()); - GString *ys = SP_PX_TO_METRIC_STRING(dxy[Geom::Y], _desktop->namedview->getDefaultMetric()); + Inkscape::Util::Quantity x_q = Inkscape::Util::Quantity(dxy[Geom::X], "px"); + Inkscape::Util::Quantity y_q = Inkscape::Util::Quantity(dxy[Geom::Y], "px"); + GString *xs = g_string_new(x_q.string(*_desktop->namedview->doc_units).c_str()); + GString *ys = g_string_new(y_q.string(*_desktop->namedview->doc_units).c_str()); _message_context.setF(Inkscape::NORMAL_MESSAGE, _("Move by %s, %s; with Ctrl to restrict to horizontal/vertical; with Shift to disable snapping"), xs->str, ys->str); g_string_free(xs, TRUE); g_string_free(ys, TRUE); diff --git a/src/sp-guide.cpp b/src/sp-guide.cpp index 48596cbc0..961e53e04 100644 --- a/src/sp-guide.cpp +++ b/src/sp-guide.cpp @@ -35,7 +35,6 @@ #include #include #include -#include "sp-metrics.h" #include "inkscape.h" #include "desktop.h" #include "sp-namedview.h" @@ -463,10 +462,10 @@ char *sp_guide_description(SPGuide const *guide, const bool verbose) } else { SPNamedView *namedview = sp_document_namedview(guide->document, NULL); - GString *position_string_x = SP_PX_TO_METRIC_STRING(guide->point_on_line[X], - namedview->getDefaultMetric()); - GString *position_string_y = SP_PX_TO_METRIC_STRING(guide->point_on_line[Y], - namedview->getDefaultMetric()); + Inkscape::Util::Quantity x_q = Inkscape::Util::Quantity(guide->point_on_line[X], "px"); + Inkscape::Util::Quantity y_q = Inkscape::Util::Quantity(guide->point_on_line[Y], "px"); + GString *position_string_x = g_string_new(x_q.string(*namedview->doc_units).c_str()); + GString *position_string_y = g_string_new(y_q.string(*namedview->doc_units).c_str()); gchar *shortcuts = g_strdup_printf("; %s", _("Shift+drag to rotate, Ctrl+drag to move origin, Del to delete")); diff --git a/src/sp-metrics.cpp b/src/sp-metrics.cpp deleted file mode 100644 index 2b421cf05..000000000 --- a/src/sp-metrics.cpp +++ /dev/null @@ -1,120 +0,0 @@ -#include "sp-metrics.h" -#include "unit-constants.h" - -/* - * SPMetric handling and stuff - * I hope this will be usefull :-) - */ - -gdouble -sp_absolute_metric_to_metric (gdouble length_src, const SPMetric metric_src, const SPMetric metric_dst) -{ - gdouble src = 1; - gdouble dst = 1; - - switch (metric_src) { - case SP_M: - src = M_PER_IN; - break; - case SP_MM: - src = MM_PER_IN; - break; - case SP_CM: - src = CM_PER_IN; - break; - case SP_IN: - src = IN_PER_IN; - break; - case SP_FT: - src = FT_PER_IN; - break; - case SP_PT: - src = PT_PER_IN; - break; - case SP_PC: - src = PC_PER_IN; - break; - case SP_PX: - src = PX_PER_IN; - break; - case SP_NONE: - src = 1; - break; - } - - switch (metric_dst) { - case SP_M: - dst = M_PER_IN; - break; - case SP_MM: - dst = MM_PER_IN; - break; - case SP_CM: - dst = CM_PER_IN; - break; - case SP_IN: - dst = IN_PER_IN; - break; - case SP_FT: - dst = FT_PER_IN; - break; - case SP_PT: - dst = PT_PER_IN; - break; - case SP_PC: - dst = PC_PER_IN; - break; - case SP_PX: - dst = PX_PER_IN; - break; - case SP_NONE: - dst = 1; - break; - } - - return length_src * (dst/src); -} - -/** - * Create a human-readable string suitable for status-bar display. - */ -GString * -sp_metric_to_metric_string(gdouble const length, - SPMetric const metric_src, SPMetric const metric_dst, - gboolean const m) -{ - gdouble const len = sp_absolute_metric_to_metric(length, metric_src, metric_dst); - GString *str = g_string_new(""); - g_string_printf(str, "%0.02f", len); - /* We need a fixed number of fractional digits, because otherwise the live statusbar display of - * lengths will be too jerky */ - - if (m) { - char const *unit_str; - switch (metric_dst) { - case SP_M: unit_str = " m"; break; - case SP_MM: unit_str = " mm"; break; - case SP_CM: unit_str = " cm"; break; - case SP_IN: unit_str = "\""; break; - case SP_PT: unit_str = " pt"; break; - case SP_PX: unit_str = " px"; break; - default: unit_str = NULL; break; - } - if (unit_str) { - g_string_append(str, unit_str); - } - } - return str; -} - - -/* - Local Variables: - mode:c++ - c-file-style:"stroustrup" - c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +)) - indent-tabs-mode:nil - fill-column:99 - End: -*/ -// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 : diff --git a/src/sp-metrics.h b/src/sp-metrics.h deleted file mode 100644 index c2f968797..000000000 --- a/src/sp-metrics.h +++ /dev/null @@ -1,20 +0,0 @@ -#ifndef SP_METRICS_H -#define SP_METRICS_H - -#include -#include "sp-metric.h" - -gdouble sp_absolute_metric_to_metric (gdouble length_src, const SPMetric metric_src, const SPMetric metric_dst); -GString * sp_metric_to_metric_string (gdouble length, const SPMetric metric_src, const SPMetric metric_dst, gboolean m); - -// convenience since we mostly deal with points -#define SP_METRIC_TO_PT(l,m) sp_absolute_metric_to_metric(l,m,SP_PT); -#define SP_PT_TO_METRIC(l,m) sp_absolute_metric_to_metric(l,SP_PT,m); - -#define SP_PT_TO_METRIC_STRING(l,m) sp_metric_to_metric_string(l, SP_PT, m, TRUE) -#define SP_PT_TO_STRING(l,m) sp_metric_to_metric_string(l, SP_PT, m, FALSE) - -#define SP_PX_TO_METRIC_STRING(l,m) sp_metric_to_metric_string(l, SP_PX, m, TRUE) -#define SP_PX_TO_STRING(l,m) sp_metric_to_metric_string(l, SP_PX, m, FALSE) - -#endif diff --git a/src/sp-text.cpp b/src/sp-text.cpp index 8d42b7d59..d84bbdc6c 100644 --- a/src/sp-text.cpp +++ b/src/sp-text.cpp @@ -43,7 +43,6 @@ #include "sp-namedview.h" #include "style.h" #include "inkscape.h" -#include "sp-metrics.h" #include "xml/quote.h" #include "xml/repr.h" #include "mod360.h" @@ -392,7 +391,8 @@ static char * sp_text_description(SPItem *item) n = g_strdup(_("<no name found>")); } - GString *xs = SP_PX_TO_METRIC_STRING(style->font_size.computed, sp_desktop_namedview(SP_ACTIVE_DESKTOP)->getDefaultMetric()); + Inkscape::Util::Quantity q = Inkscape::Util::Quantity(style->font_size.computed, "px"); + GString *xs = g_string_new(q.string(*sp_desktop_namedview(SP_ACTIVE_DESKTOP)->doc_units).c_str()); char const *trunc = ""; Inkscape::Text::Layout const *layout = te_get_layout((SPItem *) item); diff --git a/src/spiral-context.cpp b/src/spiral-context.cpp index b7bf5aead..a6cdc6bc4 100644 --- a/src/spiral-context.cpp +++ b/src/spiral-context.cpp @@ -34,7 +34,6 @@ #include "message-context.h" #include "pixmaps/cursor-spiral.xpm" #include "spiral-context.h" -#include "sp-metrics.h" #include #include "xml/repr.h" #include "xml/node-event-vector.h" @@ -437,7 +436,8 @@ static void sp_spiral_drag(SPSpiralContext *sc, Geom::Point const &p, guint stat /*t0*/ sc->t0); /* status text */ - GString *rads = SP_PX_TO_METRIC_STRING(rad, desktop->namedview->getDefaultMetric()); + Inkscape::Util::Quantity q = Inkscape::Util::Quantity(rad, "px"); + GString *rads = g_string_new(q.string(*desktop->namedview->doc_units).c_str()); sc->_message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Spiral: radius %s, angle %5g°; with Ctrl to snap angle"), rads->str, sp_round((arg + 2.0*M_PI*spiral->revo)*180/M_PI, 0.0001)); diff --git a/src/star-context.cpp b/src/star-context.cpp index 5fb33a180..d4996e189 100644 --- a/src/star-context.cpp +++ b/src/star-context.cpp @@ -36,7 +36,6 @@ #include "desktop-style.h" #include "message-context.h" #include "pixmaps/cursor-star.xpm" -#include "sp-metrics.h" #include #include "preferences.h" #include "xml/repr.h" @@ -450,7 +449,8 @@ static void sp_star_drag(SPStarContext *sc, Geom::Point p, guint state) arg1, arg1 + M_PI / sides, sc->isflatsided, sc->rounded, sc->randomized); /* status text */ - GString *rads = SP_PX_TO_METRIC_STRING(r1, desktop->namedview->getDefaultMetric()); + Inkscape::Util::Quantity q = Inkscape::Util::Quantity(r1, "px"); + GString *rads = g_string_new(q.string(*desktop->namedview->doc_units).c_str()); sc->_message_context->setF(Inkscape::IMMEDIATE_MESSAGE, ( sc->isflatsided? _("Polygon: radius %s, angle %5g°; with Ctrl to snap angle") diff --git a/src/text-context.cpp b/src/text-context.cpp index 862c50737..719a82156 100644 --- a/src/text-context.cpp +++ b/src/text-context.cpp @@ -42,7 +42,6 @@ #include "selection.h" #include "shape-editor.h" #include "sp-flowtext.h" -#include "sp-metrics.h" #include "sp-namedview.h" #include "sp-text.h" #include "style.h" @@ -640,8 +639,10 @@ static gint sp_text_context_root_handler(SPEventContext *const event_context, Gd gobble_motion_events(GDK_BUTTON1_MASK); // status text - GString *xs = SP_PX_TO_METRIC_STRING(fabs((p - tc->p0)[Geom::X]), desktop->namedview->getDefaultMetric()); - GString *ys = SP_PX_TO_METRIC_STRING(fabs((p - tc->p0)[Geom::Y]), desktop->namedview->getDefaultMetric()); + Inkscape::Util::Quantity x_q = Inkscape::Util::Quantity(fabs((p - tc->p0)[Geom::X]), "px"); + Inkscape::Util::Quantity y_q = Inkscape::Util::Quantity(fabs((p - tc->p0)[Geom::Y]), "px"); + GString *xs = g_string_new(x_q.string(*desktop->namedview->doc_units).c_str()); + GString *ys = g_string_new(y_q.string(*desktop->namedview->doc_units).c_str()); event_context->_message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Flowed text frame: %s × %s"), xs->str, ys->str); g_string_free(xs, FALSE); g_string_free(ys, FALSE); diff --git a/src/ui/tool/node.cpp b/src/ui/tool/node.cpp index dc6e0fbae..82eb697bd 100644 --- a/src/ui/tool/node.cpp +++ b/src/ui/tool/node.cpp @@ -22,7 +22,6 @@ #include "preferences.h" #include "snap.h" #include "snap-preferences.h" -#include "sp-metrics.h" #include "sp-namedview.h" #include "ui/control-manager.h" #include "ui/tool/control-point-selection.h" @@ -490,9 +489,13 @@ Glib::ustring Handle::_getDragTip(GdkEventMotion */*event*/) const double angle = Geom::angle_between(Geom::Point(-1,0), position() - _parent->position()); angle += M_PI; // angle is (-M_PI...M_PI] - offset by +pi and scale to 0...360 angle *= 360.0 / (2 * M_PI); - GString *x = SP_PX_TO_METRIC_STRING(dist[Geom::X], _desktop->namedview->getDefaultMetric()); - GString *y = SP_PX_TO_METRIC_STRING(dist[Geom::Y], _desktop->namedview->getDefaultMetric()); - GString *len = SP_PX_TO_METRIC_STRING(length(), _desktop->namedview->getDefaultMetric()); + + Inkscape::Util::Quantity x_q = Inkscape::Util::Quantity(dist[Geom::X], "px"); + Inkscape::Util::Quantity y_q = Inkscape::Util::Quantity(dist[Geom::Y], "px"); + Inkscape::Util::Quantity len_q = Inkscape::Util::Quantity(length(), "px"); + GString *x = g_string_new(x_q.string(*_desktop->namedview->doc_units).c_str()); + GString *y = g_string_new(y_q.string(*_desktop->namedview->doc_units).c_str()); + GString *len = g_string_new(len_q.string(*_desktop->namedview->doc_units).c_str()); Glib::ustring ret = format_tip(C_("Path handle tip", "Move handle by %s, %s; angle %.2f°, length %s"), x->str, y->str, angle, len->str); g_string_free(x, TRUE); @@ -1294,8 +1297,11 @@ Glib::ustring Node::_getTip(unsigned state) const Glib::ustring Node::_getDragTip(GdkEventMotion */*event*/) const { Geom::Point dist = position() - _last_drag_origin(); - GString *x = SP_PX_TO_METRIC_STRING(dist[Geom::X], _desktop->namedview->getDefaultMetric()); - GString *y = SP_PX_TO_METRIC_STRING(dist[Geom::Y], _desktop->namedview->getDefaultMetric()); + + Inkscape::Util::Quantity x_q = Inkscape::Util::Quantity(dist[Geom::X], "px"); + Inkscape::Util::Quantity y_q = Inkscape::Util::Quantity(dist[Geom::Y], "px"); + GString *x = g_string_new(x_q.string(*_desktop->namedview->doc_units).c_str()); + GString *y = g_string_new(y_q.string(*_desktop->namedview->doc_units).c_str()); Glib::ustring ret = format_tip(C_("Path node tip", "Move node by %s, %s"), x->str, y->str); g_string_free(x, TRUE); -- cgit v1.2.3 From 6076c46e5abd0c3e4f67042589aaa2506be0c3ba Mon Sep 17 00:00:00 2001 From: Uwe Sch??ler Date: Sun, 21 Jul 2013 11:10:11 +0200 Subject: German translation update (bzr r12427) --- po/de.po | 7654 ++++++++++++++++++++++++++++++++++---------------------------- 1 file changed, 4152 insertions(+), 3502 deletions(-) diff --git a/po/de.po b/po/de.po index 630aaefb2..91ced205b 100644 --- a/po/de.po +++ b/po/de.po @@ -17,8 +17,8 @@ msgid "" msgstr "" "Project-Id-Version: inkscape\n" "Report-Msgid-Bugs-To: inkscape-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2013-03-25 15:40+0100\n" -"PO-Revision-Date: 2013-03-26 18:14+0100\n" +"POT-Creation-Date: 2013-06-27 21:15+0200\n" +"PO-Revision-Date: 2013-07-21 11:09+0100\n" "Last-Translator: Uwe Schoeler \n" "Language-Team: \n" "Language: de\n" @@ -26,7 +26,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Poedit 1.5.5\n" +"X-Generator: Poedit 1.5.7\n" "X-Poedit-Basepath: .\n" "X-Poedit-SourceCharset: utf-8\n" @@ -258,7 +258,7 @@ msgstr "Simuliere Ölgemälde" #. Pencil #: ../share/filters/filters.svg.h:1 -#: ../src/ui/dialog/inkscape-preferences.cpp:416 +#: ../src/ui/dialog/inkscape-preferences.cpp:415 msgid "Pencil" msgstr "Malwerkzeug (Freihand)" @@ -969,8 +969,8 @@ msgstr "Aufgefaltetes Tigerfellmuster mit abgeschrägten Kanten " msgid "Black Light" msgstr "Schwarzes Licht" -#: ../share/filters/filters.svg.h:1 ../src/ui/dialog/clonetiler.cpp:832 -#: ../src/ui/dialog/clonetiler.cpp:983 +#: ../share/filters/filters.svg.h:1 ../src/ui/dialog/clonetiler.cpp:831 +#: ../src/ui/dialog/clonetiler.cpp:982 #: ../src/extension/internal/bitmap/colorize.cpp:52 #: ../src/extension/internal/filter/bumps.h:101 #: ../src/extension/internal/filter/bumps.h:321 @@ -3058,39 +3058,52 @@ msgstr "Scharlachrot 3" #. Palette: ./Tango-Palette.gpl #: ../share/palettes/palettes.h:187 msgctxt "Palette" +msgid "Snowy White" +msgstr "Schnee-Weiß" + +#. Palette: ./Tango-Palette.gpl +#: ../share/palettes/palettes.h:188 +msgctxt "Palette" msgid "Aluminium 1" msgstr "Aluminium 1" #. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:188 +#: ../share/palettes/palettes.h:189 msgctxt "Palette" msgid "Aluminium 2" msgstr "Aluminium 2" #. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:189 +#: ../share/palettes/palettes.h:190 msgctxt "Palette" msgid "Aluminium 3" msgstr "Aluminium 3" #. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:190 +#: ../share/palettes/palettes.h:191 msgctxt "Palette" msgid "Aluminium 4" msgstr "Aluminium 4" #. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:191 +#: ../share/palettes/palettes.h:192 msgctxt "Palette" msgid "Aluminium 5" msgstr "Aluminium 5" #. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:192 +#: ../share/palettes/palettes.h:193 msgctxt "Palette" msgid "Aluminium 6" msgstr "Aluminium 6" +#. Palette: ./Tango-Palette.gpl +#: ../share/palettes/palettes.h:194 +#, fuzzy +msgctxt "Palette" +msgid "Jet Black" +msgstr "Schwarz" + #: ../share/patterns/patterns.svg.h:1 msgid "Stripes 1:1" msgstr "Streifen 1:1" @@ -3264,7 +3277,7 @@ msgid "Defines the direction and magnitude of the extrusion" msgstr "Definiert Richtung und Ausmaß der Extrusion" #: ../src/sp-flowtext.cpp:339 ../src/sp-text.cpp:400 -#: ../src/text-context.cpp:1608 +#: ../src/text-context.cpp:1630 msgid " [truncated]" msgstr "[abgestumpft}" @@ -3334,6 +3347,40 @@ msgstr "3D-Quader erzeugen" msgid "3D Box" msgstr "3D Box" +#: ../src/color-profile.cpp:895 +#, c-format +msgid "Color profiles directory (%s) is unavailable." +msgstr "Verzeichnis der Farbprofile (%s) nicht auffindbar." + +#: ../src/color-profile.cpp:954 ../src/color-profile.cpp:971 +msgid "(invalid UTF-8 string)" +msgstr "(ungültiger UTF-8 string)" + +# CHECK +#: ../src/color-profile.cpp:956 ../src/filter-enums.cpp:94 +#: ../src/live_effects/lpe-ruler.cpp:32 +#: ../src/ui/dialog/filter-effects-dialog.cpp:518 +#: ../src/ui/dialog/inkscape-preferences.cpp:332 +#: ../src/ui/dialog/inkscape-preferences.cpp:641 +#: ../src/ui/dialog/inkscape-preferences.cpp:1255 +#: ../src/ui/dialog/inkscape-preferences.cpp:1419 +#: ../src/ui/dialog/inkscape-preferences.cpp:1817 +#: ../src/ui/dialog/input.cpp:742 ../src/ui/dialog/input.cpp:743 +#: ../src/ui/dialog/input.cpp:1571 ../src/ui/dialog/input.cpp:1625 +#: ../src/verbs.cpp:2293 ../src/widgets/gradient-toolbar.cpp:1128 +#: ../src/widgets/pencil-toolbar.cpp:189 +#: ../share/extensions/gcodetools_area.inx.h:48 +#: ../share/extensions/gcodetools_dxf_points.inx.h:20 +#: ../share/extensions/gcodetools_engraving.inx.h:26 +#: ../share/extensions/gcodetools_graffiti.inx.h:37 +#: ../share/extensions/gcodetools_lathe.inx.h:41 +#: ../share/extensions/gcodetools_path_to_gcode.inx.h:30 +#: ../share/extensions/grid_polar.inx.h:4 +#: ../share/extensions/guides_creator.inx.h:7 +#: ../share/extensions/scour.inx.h:18 +msgid "None" +msgstr "Keine" + #: ../src/connector-context.cpp:585 msgid "Creating new connector" msgstr "Einen neuen Objektverbinder erzeugen" @@ -3401,378 +3448,378 @@ msgstr "Führungslinie löschen" msgid "Guideline: %s" msgstr "Führungslinie: %s" -#: ../src/desktop.cpp:908 +#: ../src/desktop.cpp:911 msgid "No previous zoom." msgstr "Kein vorheriger Zoomfaktor." -#: ../src/desktop.cpp:929 +#: ../src/desktop.cpp:932 msgid "No next zoom." msgstr "Kein nächster Zoomfaktor." -#: ../src/ui/dialog/clonetiler.cpp:112 +#: ../src/ui/dialog/clonetiler.cpp:111 msgid "_Symmetry" msgstr "_Symmetrie" #. TRANSLATORS: "translation" means "shift" / "displacement" here. -#: ../src/ui/dialog/clonetiler.cpp:124 +#: ../src/ui/dialog/clonetiler.cpp:123 msgid "P1: simple translation" msgstr "P1: einfache Verschiebung" -#: ../src/ui/dialog/clonetiler.cpp:125 +#: ../src/ui/dialog/clonetiler.cpp:124 msgid "P2: 180° rotation" msgstr "P2: 180° Rotation" -#: ../src/ui/dialog/clonetiler.cpp:126 +#: ../src/ui/dialog/clonetiler.cpp:125 msgid "PM: reflection" msgstr "PM: Reflektion" #. TRANSLATORS: "glide reflection" is a reflection and a translation combined. #. For more info, see http://mathforum.org/sum95/suzanne/symsusan.html -#: ../src/ui/dialog/clonetiler.cpp:129 +#: ../src/ui/dialog/clonetiler.cpp:128 msgid "PG: glide reflection" msgstr "PG: gleitende Reflektion" -#: ../src/ui/dialog/clonetiler.cpp:130 +#: ../src/ui/dialog/clonetiler.cpp:129 msgid "CM: reflection + glide reflection" msgstr "CM: Reflektion + gleitende Reflektion" -#: ../src/ui/dialog/clonetiler.cpp:131 +#: ../src/ui/dialog/clonetiler.cpp:130 msgid "PMM: reflection + reflection" msgstr "PMM: Reflektion + Reflektion" -#: ../src/ui/dialog/clonetiler.cpp:132 +#: ../src/ui/dialog/clonetiler.cpp:131 msgid "PMG: reflection + 180° rotation" msgstr "PMG: Reflektion + 180° Rotation" -#: ../src/ui/dialog/clonetiler.cpp:133 +#: ../src/ui/dialog/clonetiler.cpp:132 msgid "PGG: glide reflection + 180° rotation" msgstr "PGG: gleitende Reflektion + 180° Rotation" -#: ../src/ui/dialog/clonetiler.cpp:134 +#: ../src/ui/dialog/clonetiler.cpp:133 msgid "CMM: reflection + reflection + 180° rotation" msgstr "CMM: Reflektion + Reflektion + 180° Rotation" -#: ../src/ui/dialog/clonetiler.cpp:135 +#: ../src/ui/dialog/clonetiler.cpp:134 msgid "P4: 90° rotation" msgstr "P4: 90° Rotation" -#: ../src/ui/dialog/clonetiler.cpp:136 +#: ../src/ui/dialog/clonetiler.cpp:135 msgid "P4M: 90° rotation + 45° reflection" msgstr "P4M: 90° Rotation + 45° Reflektion" -#: ../src/ui/dialog/clonetiler.cpp:137 +#: ../src/ui/dialog/clonetiler.cpp:136 msgid "P4G: 90° rotation + 90° reflection" msgstr "P4G: 90° Rotation + 90° Reflektion" -#: ../src/ui/dialog/clonetiler.cpp:138 +#: ../src/ui/dialog/clonetiler.cpp:137 msgid "P3: 120° rotation" msgstr "P3: 120° Rotation" -#: ../src/ui/dialog/clonetiler.cpp:139 +#: ../src/ui/dialog/clonetiler.cpp:138 msgid "P31M: reflection + 120° rotation, dense" msgstr "P31M: Reflektion + 120° Rotation, dicht" -#: ../src/ui/dialog/clonetiler.cpp:140 +#: ../src/ui/dialog/clonetiler.cpp:139 msgid "P3M1: reflection + 120° rotation, sparse" msgstr "P3M1: Reflektion + 120° Rotation, dünn" -#: ../src/ui/dialog/clonetiler.cpp:141 +#: ../src/ui/dialog/clonetiler.cpp:140 msgid "P6: 60° rotation" msgstr "P6: 60° Rotation" -#: ../src/ui/dialog/clonetiler.cpp:142 +#: ../src/ui/dialog/clonetiler.cpp:141 msgid "P6M: reflection + 60° rotation" msgstr "P6M: Reflektion + 60° Rotation" -#: ../src/ui/dialog/clonetiler.cpp:162 +#: ../src/ui/dialog/clonetiler.cpp:161 msgid "Select one of the 17 symmetry groups for the tiling" msgstr "Eine der 17 Symmetrie-Gruppen zum Kacheln auswählen" -#: ../src/ui/dialog/clonetiler.cpp:180 +#: ../src/ui/dialog/clonetiler.cpp:179 msgid "S_hift" msgstr "Versc_hiebung" #. TRANSLATORS: "shift" means: the tiles will be shifted (offset) horizontally by this amount -#: ../src/ui/dialog/clonetiler.cpp:190 +#: ../src/ui/dialog/clonetiler.cpp:189 #, no-c-format msgid "Shift X:" msgstr "Verschiebung X:" -#: ../src/ui/dialog/clonetiler.cpp:198 +#: ../src/ui/dialog/clonetiler.cpp:197 #, no-c-format msgid "Horizontal shift per row (in % of tile width)" msgstr "Horizontale Verschiebung pro Reihe (in % der Kachelbreite)" -#: ../src/ui/dialog/clonetiler.cpp:206 +#: ../src/ui/dialog/clonetiler.cpp:205 #, no-c-format msgid "Horizontal shift per column (in % of tile width)" msgstr "Horizontale Verschiebung pro Spalte (in % der Kachelbreite)" -#: ../src/ui/dialog/clonetiler.cpp:212 +#: ../src/ui/dialog/clonetiler.cpp:211 msgid "Randomize the horizontal shift by this percentage" msgstr "Zufällige horizontale Verschiebung um diesen Prozentsatz" #. TRANSLATORS: "shift" means: the tiles will be shifted (offset) vertically by this amount -#: ../src/ui/dialog/clonetiler.cpp:222 +#: ../src/ui/dialog/clonetiler.cpp:221 #, no-c-format msgid "Shift Y:" msgstr "Verschiebung X:" -#: ../src/ui/dialog/clonetiler.cpp:230 +#: ../src/ui/dialog/clonetiler.cpp:229 #, no-c-format msgid "Vertical shift per row (in % of tile height)" msgstr "Vertikale Verschiebung pro Reihe (in % der Kachelhöhe)" -#: ../src/ui/dialog/clonetiler.cpp:238 +#: ../src/ui/dialog/clonetiler.cpp:237 #, no-c-format msgid "Vertical shift per column (in % of tile height)" msgstr "Vertikale Verschiebung pro Spalte (in % der Kachelhöhe)" -#: ../src/ui/dialog/clonetiler.cpp:245 +#: ../src/ui/dialog/clonetiler.cpp:244 msgid "Randomize the vertical shift by this percentage" msgstr "Zufällige vertikale Verschiebung um diesen Prozentsatz" -#: ../src/ui/dialog/clonetiler.cpp:253 ../src/ui/dialog/clonetiler.cpp:399 +#: ../src/ui/dialog/clonetiler.cpp:252 ../src/ui/dialog/clonetiler.cpp:398 msgid "Exponent:" msgstr "Exponent:" -#: ../src/ui/dialog/clonetiler.cpp:260 +#: ../src/ui/dialog/clonetiler.cpp:259 msgid "Whether rows are spaced evenly (1), converge (<1) or diverge (>1)" msgstr "" "Reihenabstände bleiben gleich (1), laufen zusammen (<1) oder auseinander (>1)" -#: ../src/ui/dialog/clonetiler.cpp:267 +#: ../src/ui/dialog/clonetiler.cpp:266 msgid "Whether columns are spaced evenly (1), converge (<1) or diverge (>1)" msgstr "" "Spaltenabstände bleiben gleich (1), laufen zusammen (<1) oder auseinander " "(>1)" #. TRANSLATORS: "Alternate" is a verb here -#: ../src/ui/dialog/clonetiler.cpp:275 ../src/ui/dialog/clonetiler.cpp:439 -#: ../src/ui/dialog/clonetiler.cpp:515 ../src/ui/dialog/clonetiler.cpp:588 -#: ../src/ui/dialog/clonetiler.cpp:634 ../src/ui/dialog/clonetiler.cpp:761 +#: ../src/ui/dialog/clonetiler.cpp:274 ../src/ui/dialog/clonetiler.cpp:438 +#: ../src/ui/dialog/clonetiler.cpp:514 ../src/ui/dialog/clonetiler.cpp:587 +#: ../src/ui/dialog/clonetiler.cpp:633 ../src/ui/dialog/clonetiler.cpp:760 msgid "Alternate:" msgstr "Abwechseln:" -#: ../src/ui/dialog/clonetiler.cpp:281 +#: ../src/ui/dialog/clonetiler.cpp:280 msgid "Alternate the sign of shifts for each row" msgstr "Vorzeichenumkehrung der Verschiebungen für jede Reihe" -#: ../src/ui/dialog/clonetiler.cpp:286 +#: ../src/ui/dialog/clonetiler.cpp:285 msgid "Alternate the sign of shifts for each column" msgstr "Vorzeichenumkehrung der Verschiebungen für jede Spalte" #. TRANSLATORS: "Cumulate" is a verb here -#: ../src/ui/dialog/clonetiler.cpp:293 ../src/ui/dialog/clonetiler.cpp:457 -#: ../src/ui/dialog/clonetiler.cpp:533 +#: ../src/ui/dialog/clonetiler.cpp:292 ../src/ui/dialog/clonetiler.cpp:456 +#: ../src/ui/dialog/clonetiler.cpp:532 msgid "Cumulate:" msgstr "Anhäufen:" -#: ../src/ui/dialog/clonetiler.cpp:299 +#: ../src/ui/dialog/clonetiler.cpp:298 msgid "Cumulate the shifts for each row" msgstr "Verschiebungen für sukzessive Reihen aufaddieren" -#: ../src/ui/dialog/clonetiler.cpp:304 +#: ../src/ui/dialog/clonetiler.cpp:303 msgid "Cumulate the shifts for each column" msgstr "Verschiebungen für sukzessive Spalten aufaddieren" #. TRANSLATORS: "Cumulate" is a verb here -#: ../src/ui/dialog/clonetiler.cpp:311 +#: ../src/ui/dialog/clonetiler.cpp:310 msgid "Exclude tile:" msgstr "Kachel ausschließen:" -#: ../src/ui/dialog/clonetiler.cpp:317 +#: ../src/ui/dialog/clonetiler.cpp:316 msgid "Exclude tile height in shift" msgstr "Kachelhöhe in Verschiebung nicht einberechnen" -#: ../src/ui/dialog/clonetiler.cpp:322 +#: ../src/ui/dialog/clonetiler.cpp:321 msgid "Exclude tile width in shift" msgstr "Kachelbreite in Verschiebung nicht einberechnen" -#: ../src/ui/dialog/clonetiler.cpp:331 +#: ../src/ui/dialog/clonetiler.cpp:330 msgid "Sc_ale" msgstr "_Maßstab" -#: ../src/ui/dialog/clonetiler.cpp:339 +#: ../src/ui/dialog/clonetiler.cpp:338 msgid "Scale X:" msgstr "X-Skalierung:" -#: ../src/ui/dialog/clonetiler.cpp:347 +#: ../src/ui/dialog/clonetiler.cpp:346 #, no-c-format msgid "Horizontal scale per row (in % of tile width)" msgstr "Horizontale Skalierung pro Reihe (in % der Kachelbreite)" -#: ../src/ui/dialog/clonetiler.cpp:355 +#: ../src/ui/dialog/clonetiler.cpp:354 #, no-c-format msgid "Horizontal scale per column (in % of tile width)" msgstr "Horizontale Skalierung pro Spalte (in % der Kachelbreite)" -#: ../src/ui/dialog/clonetiler.cpp:361 +#: ../src/ui/dialog/clonetiler.cpp:360 msgid "Randomize the horizontal scale by this percentage" msgstr "Horizontale Skalierung um diesen Prozentsatz zufällig verändern" -#: ../src/ui/dialog/clonetiler.cpp:369 +#: ../src/ui/dialog/clonetiler.cpp:368 msgid "Scale Y:" msgstr "Y-Skalierung:" -#: ../src/ui/dialog/clonetiler.cpp:377 +#: ../src/ui/dialog/clonetiler.cpp:376 #, no-c-format msgid "Vertical scale per row (in % of tile height)" msgstr "Vertikale Skalierung pro Reihe (in % der Kachelhöhe)" -#: ../src/ui/dialog/clonetiler.cpp:385 +#: ../src/ui/dialog/clonetiler.cpp:384 #, no-c-format msgid "Vertical scale per column (in % of tile height)" msgstr "Vertikale Skalierung pro Spalte (in % der Kachelhöhe)" -#: ../src/ui/dialog/clonetiler.cpp:391 +#: ../src/ui/dialog/clonetiler.cpp:390 msgid "Randomize the vertical scale by this percentage" msgstr "Vertikale Skalierung um diesen Prozentsatz zufällig verändern" -#: ../src/ui/dialog/clonetiler.cpp:405 +#: ../src/ui/dialog/clonetiler.cpp:404 msgid "Whether row scaling is uniform (1), converge (<1) or diverge (>1)" msgstr "" "Reihenabstände bleiben gleich (1), laufen zusammen (<1) oder vergrößern sich " "(>1)" -#: ../src/ui/dialog/clonetiler.cpp:411 +#: ../src/ui/dialog/clonetiler.cpp:410 msgid "Whether column scaling is uniform (1), converge (<1) or diverge (>1)" msgstr "" "Spaltenabstände bleiben gleich (1), laufen zusammen (<1) oder vergrößern " "sich (>1)" -#: ../src/ui/dialog/clonetiler.cpp:419 +#: ../src/ui/dialog/clonetiler.cpp:418 msgid "Base:" msgstr "Basis:" -#: ../src/ui/dialog/clonetiler.cpp:425 ../src/ui/dialog/clonetiler.cpp:431 +#: ../src/ui/dialog/clonetiler.cpp:424 ../src/ui/dialog/clonetiler.cpp:430 msgid "" "Base for a logarithmic spiral: not used (0), converge (<1), or diverge (>1)" msgstr "" "Basis einer logarithmischen Spirale: 0 - nicht benutzt, (<1) - konvergent, " "(>1) - divergent" -#: ../src/ui/dialog/clonetiler.cpp:445 +#: ../src/ui/dialog/clonetiler.cpp:444 msgid "Alternate the sign of scales for each row" msgstr "Vorzeichen der Skalierungen für jede Reihe umkehren" -#: ../src/ui/dialog/clonetiler.cpp:450 +#: ../src/ui/dialog/clonetiler.cpp:449 msgid "Alternate the sign of scales for each column" msgstr "Vorzeichen der Skalierungen für jede Spalte umkehren" -#: ../src/ui/dialog/clonetiler.cpp:463 +#: ../src/ui/dialog/clonetiler.cpp:462 msgid "Cumulate the scales for each row" msgstr "Skalierung für sukzessive Reihen aufaddieren" -#: ../src/ui/dialog/clonetiler.cpp:468 +#: ../src/ui/dialog/clonetiler.cpp:467 msgid "Cumulate the scales for each column" msgstr "Skalierung für sukzessive Spalten aufaddieren" -#: ../src/ui/dialog/clonetiler.cpp:477 +#: ../src/ui/dialog/clonetiler.cpp:476 msgid "_Rotation" msgstr "_Rotation" -#: ../src/ui/dialog/clonetiler.cpp:485 +#: ../src/ui/dialog/clonetiler.cpp:484 msgid "Angle:" msgstr "Winkel:" -#: ../src/ui/dialog/clonetiler.cpp:493 +#: ../src/ui/dialog/clonetiler.cpp:492 #, no-c-format msgid "Rotate tiles by this angle for each row" msgstr "Kacheln um diesen Winkel für jede Reihe drehen" -#: ../src/ui/dialog/clonetiler.cpp:501 +#: ../src/ui/dialog/clonetiler.cpp:500 #, no-c-format msgid "Rotate tiles by this angle for each column" msgstr "Kacheln um diesen Winkel für jede Spalte drehen" -#: ../src/ui/dialog/clonetiler.cpp:507 +#: ../src/ui/dialog/clonetiler.cpp:506 msgid "Randomize the rotation angle by this percentage" msgstr "Rotationswinkel um diesen Prozentsatz zufällig verändern" -#: ../src/ui/dialog/clonetiler.cpp:521 +#: ../src/ui/dialog/clonetiler.cpp:520 msgid "Alternate the rotation direction for each row" msgstr "Vorzeichenumkehr des Rotationsfaktors bei jeder Reihe" -#: ../src/ui/dialog/clonetiler.cpp:526 +#: ../src/ui/dialog/clonetiler.cpp:525 msgid "Alternate the rotation direction for each column" msgstr "Vorzeichenumkehr des Rotationsfaktors bei jeder Spalte" -#: ../src/ui/dialog/clonetiler.cpp:539 +#: ../src/ui/dialog/clonetiler.cpp:538 msgid "Cumulate the rotation for each row" msgstr "Rotation für sukzessive Reihen aufaddieren" -#: ../src/ui/dialog/clonetiler.cpp:544 +#: ../src/ui/dialog/clonetiler.cpp:543 msgid "Cumulate the rotation for each column" msgstr "Rotation für sukzessive Spalten aufaddieren" -#: ../src/ui/dialog/clonetiler.cpp:553 +#: ../src/ui/dialog/clonetiler.cpp:552 msgid "_Blur & opacity" msgstr "_Weichzeichner und Deckkraft" -#: ../src/ui/dialog/clonetiler.cpp:562 +#: ../src/ui/dialog/clonetiler.cpp:561 msgid "Blur:" msgstr "Weichzeichner:" -#: ../src/ui/dialog/clonetiler.cpp:568 +#: ../src/ui/dialog/clonetiler.cpp:567 msgid "Blur tiles by this percentage for each row" msgstr "Weichzeichnen der Kacheln um diesen Prozentsatz für jede Reihe" -#: ../src/ui/dialog/clonetiler.cpp:574 +#: ../src/ui/dialog/clonetiler.cpp:573 msgid "Blur tiles by this percentage for each column" msgstr "Weichzeichnen der Kacheln um diesen Prozentsatz für jede Spalte" -#: ../src/ui/dialog/clonetiler.cpp:580 +#: ../src/ui/dialog/clonetiler.cpp:579 msgid "Randomize the tile blur by this percentage" msgstr "Kachel-Weichzeichnung zufällig um diesen Prozentsatz verändern" -#: ../src/ui/dialog/clonetiler.cpp:594 +#: ../src/ui/dialog/clonetiler.cpp:593 msgid "Alternate the sign of blur change for each row" msgstr "Vorzeichen der Weichzeichnungs-Änderungen bei jeder Reihe umkehren" -#: ../src/ui/dialog/clonetiler.cpp:599 +#: ../src/ui/dialog/clonetiler.cpp:598 msgid "Alternate the sign of blur change for each column" msgstr "Vorzeichen der Weichzeichnungs-Änderungen bei jeder Spalte umkehren" -#: ../src/ui/dialog/clonetiler.cpp:608 +#: ../src/ui/dialog/clonetiler.cpp:607 msgid "Opacity:" msgstr "Deckkraft:" -#: ../src/ui/dialog/clonetiler.cpp:614 +#: ../src/ui/dialog/clonetiler.cpp:613 msgid "Decrease tile opacity by this percentage for each row" msgstr "" "Verringern der Deckkraft der Kacheln um diesen Prozentsatz für jede Reihe" -#: ../src/ui/dialog/clonetiler.cpp:620 +#: ../src/ui/dialog/clonetiler.cpp:619 msgid "Decrease tile opacity by this percentage for each column" msgstr "" "Verringern der Deckkraft der Kacheln um diesen Prozentsatz für jede Spalte" -#: ../src/ui/dialog/clonetiler.cpp:626 +#: ../src/ui/dialog/clonetiler.cpp:625 msgid "Randomize the tile opacity by this percentage" msgstr "Deckkraft der Kacheln um diesen Prozentsatz zufällig verändern" -#: ../src/ui/dialog/clonetiler.cpp:640 +#: ../src/ui/dialog/clonetiler.cpp:639 msgid "Alternate the sign of opacity change for each row" msgstr "Vorzeichen des Deckkraftfaktors bei jeder Reihe umkehren" -#: ../src/ui/dialog/clonetiler.cpp:645 +#: ../src/ui/dialog/clonetiler.cpp:644 msgid "Alternate the sign of opacity change for each column" msgstr "Vorzeichen des Deckkraftfaktors bei jeder Spalte umkehren" -#: ../src/ui/dialog/clonetiler.cpp:653 +#: ../src/ui/dialog/clonetiler.cpp:652 msgid "Co_lor" msgstr "_Farbe" -#: ../src/ui/dialog/clonetiler.cpp:663 +#: ../src/ui/dialog/clonetiler.cpp:662 msgid "Initial color: " msgstr "Ursprüngliche Farbe: " -#: ../src/ui/dialog/clonetiler.cpp:667 +#: ../src/ui/dialog/clonetiler.cpp:666 msgid "Initial color of tiled clones" msgstr "Ursprüngliche Farbe der gekachelten Klone" -#: ../src/ui/dialog/clonetiler.cpp:667 +#: ../src/ui/dialog/clonetiler.cpp:666 msgid "" "Initial color for clones (works only if the original has unset fill or " "stroke)" @@ -3780,73 +3827,73 @@ msgstr "" "Ursprüngliche Farbe der Klone (Füllung oder Kontur des Originals dürfen " "nicht gesetzt sein )" -#: ../src/ui/dialog/clonetiler.cpp:682 +#: ../src/ui/dialog/clonetiler.cpp:681 msgid "H:" msgstr "H:" -#: ../src/ui/dialog/clonetiler.cpp:688 +#: ../src/ui/dialog/clonetiler.cpp:687 msgid "Change the tile hue by this percentage for each row" msgstr "Farbton der Kacheln um diesen Prozentsatz für jede Reihe verändern" -#: ../src/ui/dialog/clonetiler.cpp:694 +#: ../src/ui/dialog/clonetiler.cpp:693 msgid "Change the tile hue by this percentage for each column" msgstr "Farbton der Kacheln um diesen Prozentsatz für jede Spalte verändern" -#: ../src/ui/dialog/clonetiler.cpp:700 +#: ../src/ui/dialog/clonetiler.cpp:699 msgid "Randomize the tile hue by this percentage" msgstr "Farbton der Kachel zufällig um diesen Prozentsatz verändern" -#: ../src/ui/dialog/clonetiler.cpp:709 +#: ../src/ui/dialog/clonetiler.cpp:708 msgid "S:" msgstr "S:" -#: ../src/ui/dialog/clonetiler.cpp:715 +#: ../src/ui/dialog/clonetiler.cpp:714 msgid "Change the color saturation by this percentage for each row" msgstr "" "Farbsättigung der Kacheln um diesen Prozentsatz für jede Reihe verändern" -#: ../src/ui/dialog/clonetiler.cpp:721 +#: ../src/ui/dialog/clonetiler.cpp:720 msgid "Change the color saturation by this percentage for each column" msgstr "" "Farbsättigung der Kacheln um diesen Prozentsatz für jede Spalte verändern" -#: ../src/ui/dialog/clonetiler.cpp:727 +#: ../src/ui/dialog/clonetiler.cpp:726 msgid "Randomize the color saturation by this percentage" msgstr "Farbsättigung um diesen Prozentsatz zufällig verändern" -#: ../src/ui/dialog/clonetiler.cpp:735 +#: ../src/ui/dialog/clonetiler.cpp:734 msgid "L:" msgstr "L:" -#: ../src/ui/dialog/clonetiler.cpp:741 +#: ../src/ui/dialog/clonetiler.cpp:740 msgid "Change the color lightness by this percentage for each row" msgstr "Helligkeit der Kacheln um diesen Prozentsatz für jede Reihe verändern" -#: ../src/ui/dialog/clonetiler.cpp:747 +#: ../src/ui/dialog/clonetiler.cpp:746 msgid "Change the color lightness by this percentage for each column" msgstr "Helligkeit der Kacheln um diesen Prozentsatz für jede Spalte verändern" -#: ../src/ui/dialog/clonetiler.cpp:753 +#: ../src/ui/dialog/clonetiler.cpp:752 msgid "Randomize the color lightness by this percentage" msgstr "Helligkeitsanteil der Farbe zufällig um diesen Prozentsatz verändern" -#: ../src/ui/dialog/clonetiler.cpp:767 +#: ../src/ui/dialog/clonetiler.cpp:766 msgid "Alternate the sign of color changes for each row" msgstr "Vorzeichen der Farbänderungen bei jeder Reihe umkehren" -#: ../src/ui/dialog/clonetiler.cpp:772 +#: ../src/ui/dialog/clonetiler.cpp:771 msgid "Alternate the sign of color changes for each column" msgstr "Vorzeichen der Farbänderungen bei jeder Spalte umkehren" -#: ../src/ui/dialog/clonetiler.cpp:780 +#: ../src/ui/dialog/clonetiler.cpp:779 msgid "_Trace" msgstr "Bild _vektorisieren" -#: ../src/ui/dialog/clonetiler.cpp:792 +#: ../src/ui/dialog/clonetiler.cpp:791 msgid "Trace the drawing under the tiles" msgstr "Zeichnung unter den Kacheln vektorisieren" -#: ../src/ui/dialog/clonetiler.cpp:796 +#: ../src/ui/dialog/clonetiler.cpp:795 msgid "" "For each clone, pick a value from the drawing in that clone's location and " "apply it to the clone" @@ -3854,116 +3901,117 @@ msgstr "" "Für jeden Klon den entsprechenden Wert an dessen Stelle aus der Zeichnung " "anwenden" -#: ../src/ui/dialog/clonetiler.cpp:815 +#: ../src/ui/dialog/clonetiler.cpp:814 msgid "1. Pick from the drawing:" msgstr "1. Von der Zeichnung übernehmen:" -#: ../src/ui/dialog/clonetiler.cpp:833 +#: ../src/ui/dialog/clonetiler.cpp:832 msgid "Pick the visible color and opacity" msgstr "Sichtbare Farbe und Deckkraft übernehmen" -#: ../src/ui/dialog/clonetiler.cpp:840 ../src/ui/dialog/clonetiler.cpp:993 +#: ../src/ui/dialog/clonetiler.cpp:839 ../src/ui/dialog/clonetiler.cpp:992 #: ../src/extension/internal/bitmap/opacity.cpp:38 +#: ../src/extension/internal/filter/blurs.h:333 #: ../src/extension/internal/filter/transparency.h:279 -#: ../src/widgets/tweak-toolbar.cpp:353 +#: ../src/widgets/tweak-toolbar.cpp:352 #: ../share/extensions/interp_att_g.inx.h:16 msgid "Opacity" msgstr "Deckkraft" -#: ../src/ui/dialog/clonetiler.cpp:841 +#: ../src/ui/dialog/clonetiler.cpp:840 msgid "Pick the total accumulated opacity" msgstr "Zusammengerechnete Deckkraft übernehmen" -#: ../src/ui/dialog/clonetiler.cpp:848 +#: ../src/ui/dialog/clonetiler.cpp:847 msgid "R" msgstr "R" -#: ../src/ui/dialog/clonetiler.cpp:849 +#: ../src/ui/dialog/clonetiler.cpp:848 msgid "Pick the Red component of the color" msgstr "Rotanteil der Farbe übernehmen" -#: ../src/ui/dialog/clonetiler.cpp:856 +#: ../src/ui/dialog/clonetiler.cpp:855 msgid "G" msgstr "G" -#: ../src/ui/dialog/clonetiler.cpp:857 +#: ../src/ui/dialog/clonetiler.cpp:856 msgid "Pick the Green component of the color" msgstr "Grünanteil der Farbe übernehmen" -#: ../src/ui/dialog/clonetiler.cpp:864 +#: ../src/ui/dialog/clonetiler.cpp:863 msgid "B" msgstr "B" -#: ../src/ui/dialog/clonetiler.cpp:865 +#: ../src/ui/dialog/clonetiler.cpp:864 msgid "Pick the Blue component of the color" msgstr "Blauanteil der Farbe übernehmen" -#: ../src/ui/dialog/clonetiler.cpp:872 +#: ../src/ui/dialog/clonetiler.cpp:871 msgctxt "Clonetiler color hue" msgid "H" msgstr "H" -#: ../src/ui/dialog/clonetiler.cpp:873 +#: ../src/ui/dialog/clonetiler.cpp:872 msgid "Pick the hue of the color" msgstr "Farbton des Farbwertes übernehmen" -#: ../src/ui/dialog/clonetiler.cpp:880 +#: ../src/ui/dialog/clonetiler.cpp:879 msgctxt "Clonetiler color saturation" msgid "S" msgstr "S" -#: ../src/ui/dialog/clonetiler.cpp:881 +#: ../src/ui/dialog/clonetiler.cpp:880 msgid "Pick the saturation of the color" msgstr "Sättigung des Farbwertes übernehmen" -#: ../src/ui/dialog/clonetiler.cpp:888 +#: ../src/ui/dialog/clonetiler.cpp:887 msgctxt "Clonetiler color lightness" msgid "L" msgstr "L" -#: ../src/ui/dialog/clonetiler.cpp:889 +#: ../src/ui/dialog/clonetiler.cpp:888 msgid "Pick the lightness of the color" msgstr "Helligkeit des Farbwertes übernehmen" -#: ../src/ui/dialog/clonetiler.cpp:899 +#: ../src/ui/dialog/clonetiler.cpp:898 msgid "2. Tweak the picked value:" msgstr "2. Übernommenen Wert feinjustieren:" -#: ../src/ui/dialog/clonetiler.cpp:916 +#: ../src/ui/dialog/clonetiler.cpp:915 msgid "Gamma-correct:" msgstr "Gammakorrektur:" -#: ../src/ui/dialog/clonetiler.cpp:920 +#: ../src/ui/dialog/clonetiler.cpp:919 msgid "Shift the mid-range of the picked value upwards (>0) or downwards (<0)" msgstr "" "Mittenbereich des übernommenen Wertes verschieben; nach oben (>0) oder unten " "(<0)" -#: ../src/ui/dialog/clonetiler.cpp:927 +#: ../src/ui/dialog/clonetiler.cpp:926 msgid "Randomize:" msgstr "Zufallsänderung:" -#: ../src/ui/dialog/clonetiler.cpp:931 +#: ../src/ui/dialog/clonetiler.cpp:930 msgid "Randomize the picked value by this percentage" msgstr "Übernommenen Wert um diesen Prozentsatz zufällig verändern" -#: ../src/ui/dialog/clonetiler.cpp:938 +#: ../src/ui/dialog/clonetiler.cpp:937 msgid "Invert:" msgstr "Invertieren:" -#: ../src/ui/dialog/clonetiler.cpp:942 +#: ../src/ui/dialog/clonetiler.cpp:941 msgid "Invert the picked value" msgstr "Übernommenen Wert invertieren" -#: ../src/ui/dialog/clonetiler.cpp:948 +#: ../src/ui/dialog/clonetiler.cpp:947 msgid "3. Apply the value to the clones':" msgstr "3. Wert auf die Klone anwenden:" -#: ../src/ui/dialog/clonetiler.cpp:963 +#: ../src/ui/dialog/clonetiler.cpp:962 msgid "Presence" msgstr "Anwesenheit" -#: ../src/ui/dialog/clonetiler.cpp:966 +#: ../src/ui/dialog/clonetiler.cpp:965 msgid "" "Each clone is created with the probability determined by the picked value in " "that point" @@ -3971,15 +4019,15 @@ msgstr "" "Jeder Klon wird mit der Wahrscheinlichkeit erzeugt, welche sich aus dem Wert " "an dieser Stelle ergibt" -#: ../src/ui/dialog/clonetiler.cpp:973 +#: ../src/ui/dialog/clonetiler.cpp:972 msgid "Size" msgstr "Größe" -#: ../src/ui/dialog/clonetiler.cpp:976 +#: ../src/ui/dialog/clonetiler.cpp:975 msgid "Each clone's size is determined by the picked value in that point" msgstr "Die jeweilige Größe der Klone hängt vom Wert an diesem Punkt ab" -#: ../src/ui/dialog/clonetiler.cpp:986 +#: ../src/ui/dialog/clonetiler.cpp:985 msgid "" "Each clone is painted by the picked color (the original must have unset fill " "or stroke)" @@ -3987,48 +4035,48 @@ msgstr "" "Jeder Klon wird in der übernommenen Farbe gezeichnet (Füllung oder Kontur " "des Originals dürfen nicht gesetzt sein)" -#: ../src/ui/dialog/clonetiler.cpp:996 +#: ../src/ui/dialog/clonetiler.cpp:995 msgid "Each clone's opacity is determined by the picked value in that point" msgstr "" "Die Deckkraft jedes Klons wird durch den Wert an dieser Stelle bestimmt" -#: ../src/ui/dialog/clonetiler.cpp:1044 +#: ../src/ui/dialog/clonetiler.cpp:1043 msgid "How many rows in the tiling" msgstr "Anzahl der Reihen beim Kacheln" -#: ../src/ui/dialog/clonetiler.cpp:1074 +#: ../src/ui/dialog/clonetiler.cpp:1073 msgid "How many columns in the tiling" msgstr "Anzahl der Spalten beim Kacheln" -#: ../src/ui/dialog/clonetiler.cpp:1118 +#: ../src/ui/dialog/clonetiler.cpp:1117 msgid "Width of the rectangle to be filled" msgstr "Breite des zu füllenden Rechtecks" -#: ../src/ui/dialog/clonetiler.cpp:1152 +#: ../src/ui/dialog/clonetiler.cpp:1151 msgid "Height of the rectangle to be filled" msgstr "Höhe des zu füllenden Rechtecks" -#: ../src/ui/dialog/clonetiler.cpp:1169 +#: ../src/ui/dialog/clonetiler.cpp:1168 msgid "Rows, columns: " msgstr "Reihen, Spalten: " -#: ../src/ui/dialog/clonetiler.cpp:1170 +#: ../src/ui/dialog/clonetiler.cpp:1169 msgid "Create the specified number of rows and columns" msgstr "Angegeben Anzahl von Reihen und Spalten erzeugen" -#: ../src/ui/dialog/clonetiler.cpp:1179 +#: ../src/ui/dialog/clonetiler.cpp:1178 msgid "Width, height: " msgstr "Breite, Höhe: " -#: ../src/ui/dialog/clonetiler.cpp:1180 +#: ../src/ui/dialog/clonetiler.cpp:1179 msgid "Fill the specified width and height with the tiling" msgstr "Durch Höhe und Breite angegeben Bereich mit Füllmuster versehen" -#: ../src/ui/dialog/clonetiler.cpp:1201 +#: ../src/ui/dialog/clonetiler.cpp:1200 msgid "Use saved size and position of the tile" msgstr "Gespeicherte Größe und Position der Kachel verwenden" -#: ../src/ui/dialog/clonetiler.cpp:1204 +#: ../src/ui/dialog/clonetiler.cpp:1203 msgid "" "Pretend that the size and position of the tile are the same as the last time " "you tiled it (if any), instead of using the current size" @@ -4036,11 +4084,11 @@ msgstr "" "Anstelle der aktuellen Größe die letzte Position und Größe der Kachel/" "Musterfüllung vorgeben" -#: ../src/ui/dialog/clonetiler.cpp:1238 +#: ../src/ui/dialog/clonetiler.cpp:1237 msgid " _Create " msgstr " _Erzeugen " -#: ../src/ui/dialog/clonetiler.cpp:1240 +#: ../src/ui/dialog/clonetiler.cpp:1239 msgid "Create and tile the clones of the selection" msgstr "Klone der Auswahl erzeugen und kacheln" @@ -4049,32 +4097,32 @@ msgstr "Klone der Auswahl erzeugen und kacheln" #. diagrams on the left in the following screenshot: #. http://www.inkscape.org/screenshots/gallery/inkscape-0.42-CVS-tiles-unclump.png #. So unclumping is the process of spreading a number of objects out more evenly. -#: ../src/ui/dialog/clonetiler.cpp:1260 +#: ../src/ui/dialog/clonetiler.cpp:1259 msgid " _Unclump " msgstr " Entkl_umpen " -#: ../src/ui/dialog/clonetiler.cpp:1261 +#: ../src/ui/dialog/clonetiler.cpp:1260 msgid "Spread out clones to reduce clumping; can be applied repeatedly" msgstr "" "Klone gleichmäßiger verteilen, um das Verklumpen zu verringern; mehrmals " "anwendbar" -#: ../src/ui/dialog/clonetiler.cpp:1267 +#: ../src/ui/dialog/clonetiler.cpp:1266 msgid " Re_move " msgstr " _Entfernen " -#: ../src/ui/dialog/clonetiler.cpp:1268 +#: ../src/ui/dialog/clonetiler.cpp:1267 msgid "Remove existing tiled clones of the selected object (siblings only)" msgstr "" "Vorhandene gekachelte Klone des ausgewählten Objektes entfernen (nur " "Geschwister)" -#: ../src/ui/dialog/clonetiler.cpp:1284 +#: ../src/ui/dialog/clonetiler.cpp:1283 msgid " R_eset " msgstr " _Zurücksetzen " #. TRANSLATORS: "change" is a noun here -#: ../src/ui/dialog/clonetiler.cpp:1286 +#: ../src/ui/dialog/clonetiler.cpp:1285 msgid "" "Reset all shifts, scales, rotates, opacity and color changes in the dialog " "to zero" @@ -4082,44 +4130,44 @@ msgstr "" "Rücksetzen aller Verschiebungen, Skalierungen, Rotationen und Deckkraft- und " "Farbanpassungen im Dialogfenster" -#: ../src/ui/dialog/clonetiler.cpp:1359 +#: ../src/ui/dialog/clonetiler.cpp:1358 msgid "Nothing selected." msgstr "Es wurde nichts ausgewählt." -#: ../src/ui/dialog/clonetiler.cpp:1365 +#: ../src/ui/dialog/clonetiler.cpp:1364 msgid "More than one object selected." msgstr "Mehr als ein Objekt ausgewählt." -#: ../src/ui/dialog/clonetiler.cpp:1372 +#: ../src/ui/dialog/clonetiler.cpp:1371 #, c-format msgid "Object has %d tiled clones." msgstr "Das Objekt hat %d gekachelte Klone." -#: ../src/ui/dialog/clonetiler.cpp:1377 +#: ../src/ui/dialog/clonetiler.cpp:1376 msgid "Object has no tiled clones." msgstr "Das Objekt hat keine gekachelten Klone." -#: ../src/ui/dialog/clonetiler.cpp:2097 +#: ../src/ui/dialog/clonetiler.cpp:2096 msgid "Select one object whose tiled clones to unclump." msgstr "Ein Objekt auswählen, dessen gekachelte Klone entklumpt werden." -#: ../src/ui/dialog/clonetiler.cpp:2119 +#: ../src/ui/dialog/clonetiler.cpp:2118 msgid "Unclump tiled clones" msgstr "Gekachelte Klone entklumpen" -#: ../src/ui/dialog/clonetiler.cpp:2148 +#: ../src/ui/dialog/clonetiler.cpp:2147 msgid "Select one object whose tiled clones to remove." msgstr "Ein Objekt auswählen, dessen gekachelte Klone entfernt werden." -#: ../src/ui/dialog/clonetiler.cpp:2171 +#: ../src/ui/dialog/clonetiler.cpp:2170 msgid "Delete tiled clones" msgstr "Gekachelte Klone löschen" -#: ../src/ui/dialog/clonetiler.cpp:2218 ../src/selection-chemistry.cpp:2469 +#: ../src/ui/dialog/clonetiler.cpp:2217 ../src/selection-chemistry.cpp:2501 msgid "Select an object to clone." msgstr "Zu klonendes Objekt auswählen." -#: ../src/ui/dialog/clonetiler.cpp:2224 +#: ../src/ui/dialog/clonetiler.cpp:2223 msgid "" "If you want to clone several objects, group them and clone the " "group." @@ -4127,57 +4175,58 @@ msgstr "" "Wenn mehrere Objekte geklont werden sollen, sollten sie gruppiert und " "dann die Gruppe geklont werden." -#: ../src/ui/dialog/clonetiler.cpp:2233 +#: ../src/ui/dialog/clonetiler.cpp:2232 msgid "Creating tiled clones..." msgstr "Geschachtelte Klone erstellen..." -#: ../src/ui/dialog/clonetiler.cpp:2638 +#: ../src/ui/dialog/clonetiler.cpp:2637 msgid "Create tiled clones" msgstr "Gekachelte Klone erzeugen" -#: ../src/ui/dialog/clonetiler.cpp:2871 +#: ../src/ui/dialog/clonetiler.cpp:2870 msgid "Per row:" msgstr "Pro Reihe:" -#: ../src/ui/dialog/clonetiler.cpp:2889 +#: ../src/ui/dialog/clonetiler.cpp:2888 msgid "Per column:" msgstr "Pro Spalte:" -#: ../src/ui/dialog/clonetiler.cpp:2897 +#: ../src/ui/dialog/clonetiler.cpp:2896 msgid "Randomize:" msgstr "Zufallsfaktor:" -#: ../src/ui/dialog/export.cpp:143 ../src/verbs.cpp:2732 +#: ../src/ui/dialog/export.cpp:150 ../src/verbs.cpp:2737 msgid "_Page" msgstr "_Seite" -#: ../src/ui/dialog/export.cpp:143 ../src/verbs.cpp:2736 +#: ../src/ui/dialog/export.cpp:150 ../src/verbs.cpp:2741 msgid "_Drawing" msgstr "_Zeichnung" -#: ../src/ui/dialog/export.cpp:143 ../src/verbs.cpp:2738 +#: ../src/ui/dialog/export.cpp:150 ../src/verbs.cpp:2743 msgid "_Selection" msgstr "_Auswahl" -#: ../src/ui/dialog/export.cpp:143 +#: ../src/ui/dialog/export.cpp:150 msgid "_Custom" msgstr "_Benutzerdefiniert" -#: ../src/ui/dialog/export.cpp:159 ../src/widgets/measure-toolbar.cpp:116 -#: ../src/widgets/measure-toolbar.cpp:124 ../share/extensions/gears.inx.h:6 +#: ../src/ui/dialog/export.cpp:166 ../src/widgets/measure-toolbar.cpp:115 +#: ../src/widgets/measure-toolbar.cpp:123 +#: ../share/extensions/render_gears.inx.h:6 msgid "Units:" msgstr "Einheiten:" -#: ../src/ui/dialog/export.cpp:161 +#: ../src/ui/dialog/export.cpp:168 msgid "_Export As..." msgstr "_exportieren als…" -#: ../src/ui/dialog/export.cpp:164 +#: ../src/ui/dialog/export.cpp:171 msgid "B_atch export all selected objects" msgstr "Alle gewählten Objekte auf einmal exportieren" # !!! "export hints" are not clear to the user I guess -#: ../src/ui/dialog/export.cpp:164 +#: ../src/ui/dialog/export.cpp:171 msgid "" "Export each selected object into its own PNG file, using export hints if any " "(caution, overwrites without asking!)" @@ -4186,168 +4235,169 @@ msgstr "" "Berücksichtigung von Exporthinweisen, wenn vorhanden (Vorsicht, überschreibt " "ohne Warnung!)" -#: ../src/ui/dialog/export.cpp:166 +#: ../src/ui/dialog/export.cpp:173 msgid "Hide a_ll except selected" msgstr "Alle außer Ausgewählte verstecken" -#: ../src/ui/dialog/export.cpp:166 +#: ../src/ui/dialog/export.cpp:173 msgid "In the exported image, hide all objects except those that are selected" msgstr "Verstecke alle Objekte außer den gerade gewählten im exportierten Bild" -#: ../src/ui/dialog/export.cpp:167 +#: ../src/ui/dialog/export.cpp:174 msgid "Close when complete" msgstr "Schließen wenn fertig" -#: ../src/ui/dialog/export.cpp:167 +#: ../src/ui/dialog/export.cpp:174 msgid "Once the export completes, close this dialog" msgstr "Wenn der Export fertig ist, schließe den Dialog." -#: ../src/ui/dialog/export.cpp:169 +#: ../src/ui/dialog/export.cpp:176 msgid "_Export" msgstr "_Exportieren" -#: ../src/ui/dialog/export.cpp:187 +#: ../src/ui/dialog/export.cpp:194 msgid "Export area" msgstr "Exportbereich" -#: ../src/ui/dialog/export.cpp:223 +#: ../src/ui/dialog/export.cpp:230 msgid "_x0:" msgstr "_x0:" -#: ../src/ui/dialog/export.cpp:227 +#: ../src/ui/dialog/export.cpp:234 msgid "x_1:" msgstr "x_1:" -#: ../src/ui/dialog/export.cpp:231 +#: ../src/ui/dialog/export.cpp:238 msgid "Wid_th:" msgstr "Brei_te:" -#: ../src/ui/dialog/export.cpp:235 +#: ../src/ui/dialog/export.cpp:242 msgid "_y0:" msgstr "_y0:" -#: ../src/ui/dialog/export.cpp:239 +#: ../src/ui/dialog/export.cpp:246 msgid "y_1:" msgstr "y_1:" -#: ../src/ui/dialog/export.cpp:243 +#: ../src/ui/dialog/export.cpp:250 msgid "Hei_ght:" msgstr "Höhe:" -#: ../src/ui/dialog/export.cpp:258 +#: ../src/ui/dialog/export.cpp:265 msgid "Image size" msgstr "Bildgröße" -#: ../src/ui/dialog/export.cpp:276 ../src/live_effects/lpe-bendpath.cpp:54 +#: ../src/ui/dialog/export.cpp:283 ../src/live_effects/lpe-bendpath.cpp:54 #: ../src/live_effects/lpe-patternalongpath.cpp:62 -#: ../src/ui/dialog/transformation.cpp:75 ../src/ui/widget/page-sizer.cpp:238 +#: ../src/ui/dialog/transformation.cpp:79 ../src/ui/widget/page-sizer.cpp:238 msgid "_Width:" msgstr "_Breite:" -#: ../src/ui/dialog/export.cpp:276 ../src/ui/dialog/export.cpp:287 +#: ../src/ui/dialog/export.cpp:283 ../src/ui/dialog/export.cpp:294 msgid "pixels at" msgstr "Pixel bei" -#: ../src/ui/dialog/export.cpp:282 +#: ../src/ui/dialog/export.cpp:289 msgid "dp_i" msgstr "dp_i" -#: ../src/ui/dialog/export.cpp:287 ../src/ui/dialog/transformation.cpp:77 +#: ../src/ui/dialog/export.cpp:294 ../src/ui/dialog/transformation.cpp:81 #: ../src/ui/widget/page-sizer.cpp:239 msgid "_Height:" msgstr "_Höhe:" -#: ../src/ui/dialog/export.cpp:295 -#: ../src/ui/dialog/inkscape-preferences.cpp:1417 -#: ../src/ui/dialog/inkscape-preferences.cpp:1420 -#: ../src/ui/dialog/inkscape-preferences.cpp:1429 +#: ../src/ui/dialog/export.cpp:302 +#: ../src/ui/dialog/inkscape-preferences.cpp:1432 +#: ../src/ui/dialog/inkscape-preferences.cpp:1435 +#: ../src/ui/dialog/inkscape-preferences.cpp:1447 msgid "dpi" msgstr "dpi" -#: ../src/ui/dialog/export.cpp:303 +#: ../src/ui/dialog/export.cpp:310 msgid "_Filename" msgstr "_Dateiname" -#: ../src/ui/dialog/export.cpp:345 +#: ../src/ui/dialog/export.cpp:352 msgid "Export the bitmap file with these settings" msgstr "Bitmapdatei mit diesen Einstellungen exportieren" -#: ../src/ui/dialog/export.cpp:599 +#: ../src/ui/dialog/export.cpp:606 #, c-format msgid "B_atch export %d selected object" msgid_plural "B_atch export %d selected objects" msgstr[0] "B_atch-Export von %d gewähltem Objekt" msgstr[1] "B_atch-Export von %d gewählten Objekten" -#: ../src/ui/dialog/export.cpp:915 +#: ../src/ui/dialog/export.cpp:922 msgid "Export in progress" msgstr "Exportieren läuft" -#: ../src/ui/dialog/export.cpp:999 +#: ../src/ui/dialog/export.cpp:1006 msgid "No items selected." msgstr "Kein Element gewählt." -#: ../src/ui/dialog/export.cpp:1003 ../src/ui/dialog/export.cpp:1005 +#: ../src/ui/dialog/export.cpp:1010 ../src/ui/dialog/export.cpp:1012 msgid "Exporting %1 files" msgstr "Exportiere %1 Dateien" -#: ../src/ui/dialog/export.cpp:1045 ../src/ui/dialog/export.cpp:1047 +#: ../src/ui/dialog/export.cpp:1052 ../src/ui/dialog/export.cpp:1054 #, c-format msgid "Exporting file %s..." msgstr "Exportiere Dateie %s..." -#: ../src/ui/dialog/export.cpp:1056 ../src/ui/dialog/export.cpp:1147 +#: ../src/ui/dialog/export.cpp:1063 ../src/ui/dialog/export.cpp:1154 #, c-format msgid "Could not export to filename %s.\n" msgstr "Konnte nicht als Datei %s exportieren.\n" -#: ../src/ui/dialog/export.cpp:1059 +#: ../src/ui/dialog/export.cpp:1066 #, c-format msgid "Could not export to filename %s." msgstr "Konnte nicht als Datei %s exportieren." -#: ../src/ui/dialog/export.cpp:1074 +#: ../src/ui/dialog/export.cpp:1081 #, c-format msgid "Successfully exported %d files from %d selected items." msgstr "" "Erfolgreich %d Dateien aus %d ausgewählten Artikeln exportiert." -#: ../src/ui/dialog/export.cpp:1085 +#: ../src/ui/dialog/export.cpp:1092 msgid "You have to enter a filename." msgstr "Sie müssen einen Dateinamen angeben" -#: ../src/ui/dialog/export.cpp:1086 +#: ../src/ui/dialog/export.cpp:1093 msgid "You have to enter a filename" msgstr "Sie müssen einen Dateinamen angeben" -#: ../src/ui/dialog/export.cpp:1100 +#: ../src/ui/dialog/export.cpp:1107 msgid "The chosen area to be exported is invalid." msgstr "Der zum Exportieren gewählte Bereich ist ungültig" -#: ../src/ui/dialog/export.cpp:1101 +#: ../src/ui/dialog/export.cpp:1108 msgid "The chosen area to be exported is invalid" msgstr "Der zum Exportieren gewählte Bereich ist ungültig" -#: ../src/ui/dialog/export.cpp:1116 +#: ../src/ui/dialog/export.cpp:1123 #, c-format msgid "Directory %s does not exist or is not a directory.\n" msgstr "Das Verzeichnis %s existiert nicht oder ist kein Verzeichnis.\n" #. TRANSLATORS: %1 will be the filename, %2 the width, and %3 the height of the image -#: ../src/ui/dialog/export.cpp:1130 ../src/ui/dialog/export.cpp:1132 +#: ../src/ui/dialog/export.cpp:1137 ../src/ui/dialog/export.cpp:1139 msgid "Exporting %1 (%2 x %3)" msgstr "Exportiere %1 (%2 x %3)" -#: ../src/ui/dialog/export.cpp:1158 +#: ../src/ui/dialog/export.cpp:1165 #, c-format msgid "Drawing exported to %s." msgstr "Zeichnung exportiert zu %s." -#: ../src/ui/dialog/export.cpp:1162 +#: ../src/ui/dialog/export.cpp:1169 msgid "Export aborted." msgstr "Export abgebochen." -#: ../src/ui/dialog/export.cpp:1280 ../src/ui/dialog/export.cpp:1314 +#: ../src/ui/dialog/export.cpp:1287 ../src/ui/dialog/export.cpp:1321 +#: ../src/shortcuts.cpp:336 msgid "Select a filename for exporting" msgstr "Wählen Sie einen Namen für die zu exportierende Datei" @@ -4426,11 +4476,11 @@ msgstr "Überprüfung..." msgid "Fix spelling" msgstr "Korrigiere Rechtschreibung" -#: ../src/ui/dialog/text-edit.cpp:70 ../src/ui/dialog/svg-fonts-dialog.cpp:906 +#: ../src/ui/dialog/text-edit.cpp:70 ../src/ui/dialog/svg-fonts-dialog.cpp:908 msgid "_Font" msgstr "Schrift" -#: ../src/ui/dialog/text-edit.cpp:72 ../src/menus-skeleton.h:253 +#: ../src/ui/dialog/text-edit.cpp:72 ../src/menus-skeleton.h:249 #: ../src/ui/dialog/find.cpp:77 msgid "_Text" msgstr "_Text" @@ -4444,31 +4494,31 @@ msgid "AaBbCcIiPpQq12369$€¢?.;/()" msgstr "AaBbCcIiPpQqÄäÖöÜüß012369€¢?&.;/|()„“»«" #. Align buttons -#: ../src/ui/dialog/text-edit.cpp:97 ../src/widgets/text-toolbar.cpp:1360 -#: ../src/widgets/text-toolbar.cpp:1361 +#: ../src/ui/dialog/text-edit.cpp:97 ../src/widgets/text-toolbar.cpp:1358 +#: ../src/widgets/text-toolbar.cpp:1359 msgid "Align left" msgstr "Linksbündig ausrichten" -#: ../src/ui/dialog/text-edit.cpp:98 ../src/widgets/text-toolbar.cpp:1368 -#: ../src/widgets/text-toolbar.cpp:1369 +#: ../src/ui/dialog/text-edit.cpp:98 ../src/widgets/text-toolbar.cpp:1366 +#: ../src/widgets/text-toolbar.cpp:1367 msgid "Align center" msgstr "Zentriert ausrichten" -#: ../src/ui/dialog/text-edit.cpp:99 ../src/widgets/text-toolbar.cpp:1376 -#: ../src/widgets/text-toolbar.cpp:1377 +#: ../src/ui/dialog/text-edit.cpp:99 ../src/widgets/text-toolbar.cpp:1374 +#: ../src/widgets/text-toolbar.cpp:1375 msgid "Align right" msgstr "Rechtsbündig ausrichten" -#: ../src/ui/dialog/text-edit.cpp:100 ../src/widgets/text-toolbar.cpp:1385 +#: ../src/ui/dialog/text-edit.cpp:100 ../src/widgets/text-toolbar.cpp:1383 msgid "Justify (only flowed text)" msgstr "Ausrichten - Nur Fließtext" #. Direction buttons -#: ../src/ui/dialog/text-edit.cpp:109 ../src/widgets/text-toolbar.cpp:1420 +#: ../src/ui/dialog/text-edit.cpp:109 ../src/widgets/text-toolbar.cpp:1418 msgid "Horizontal text" msgstr "Horizontale Textausrichtung" -#: ../src/ui/dialog/text-edit.cpp:110 ../src/widgets/text-toolbar.cpp:1427 +#: ../src/ui/dialog/text-edit.cpp:110 ../src/widgets/text-toolbar.cpp:1425 msgid "Vertical text" msgstr "Vertikale Textausrichtung" @@ -4476,7 +4526,12 @@ msgstr "Vertikale Textausrichtung" msgid "Spacing between lines (percent of font size)" msgstr "Abstand zwischen Linien (Prozent der Schriftgröße)" -#: ../src/ui/dialog/text-edit.cpp:554 ../src/text-context.cpp:1496 +#: ../src/ui/dialog/text-edit.cpp:147 +msgid "Text path offset" +msgstr "Text-Pfad-Versatz" + +#: ../src/ui/dialog/text-edit.cpp:588 ../src/ui/dialog/text-edit.cpp:662 +#: ../src/text-context.cpp:1518 msgid "Set text style" msgstr "Textstil setzen" @@ -4498,7 +4553,7 @@ msgid "Duplicate node" msgstr "Knoten duplizieren" #: ../src/ui/dialog/xml-tree.cpp:79 ../src/ui/dialog/xml-tree.cpp:188 -#: ../src/ui/dialog/xml-tree.cpp:1009 +#: ../src/ui/dialog/xml-tree.cpp:1010 msgid "Delete attribute" msgstr "Attribut löschen" @@ -4511,22 +4566,22 @@ msgid "Drag to reorder nodes" msgstr "Ziehen, um die Knoten neu zu sortieren" #: ../src/ui/dialog/xml-tree.cpp:149 ../src/ui/dialog/xml-tree.cpp:150 -#: ../src/ui/dialog/xml-tree.cpp:1130 +#: ../src/ui/dialog/xml-tree.cpp:1131 msgid "Unindent node" msgstr "Einrückung des Knotens verringern" #: ../src/ui/dialog/xml-tree.cpp:154 ../src/ui/dialog/xml-tree.cpp:155 -#: ../src/ui/dialog/xml-tree.cpp:1108 +#: ../src/ui/dialog/xml-tree.cpp:1109 msgid "Indent node" msgstr "Knoten einrücken" #: ../src/ui/dialog/xml-tree.cpp:159 ../src/ui/dialog/xml-tree.cpp:160 -#: ../src/ui/dialog/xml-tree.cpp:1059 +#: ../src/ui/dialog/xml-tree.cpp:1060 msgid "Raise node" msgstr "Knoten anheben" #: ../src/ui/dialog/xml-tree.cpp:164 ../src/ui/dialog/xml-tree.cpp:165 -#: ../src/ui/dialog/xml-tree.cpp:1077 +#: ../src/ui/dialog/xml-tree.cpp:1078 msgid "Lower node" msgstr "Knoten absenken" @@ -4579,120 +4634,120 @@ msgstr "Neuen Elementknoten erzeugen" msgid "Create new text node" msgstr "Neuen Textknoten erzeugen" -#: ../src/ui/dialog/xml-tree.cpp:990 +#: ../src/ui/dialog/xml-tree.cpp:991 msgid "nodeAsInXMLinHistoryDialog|Delete node" msgstr "Knoten löschen" -#: ../src/ui/dialog/xml-tree.cpp:1033 +#: ../src/ui/dialog/xml-tree.cpp:1034 msgid "Change attribute" msgstr "Attribut ändern" -#: ../src/display/canvas-axonomgrid.cpp:365 ../src/display/canvas-grid.cpp:741 +#: ../src/display/canvas-axonomgrid.cpp:369 ../src/display/canvas-grid.cpp:746 msgid "Grid _units:" msgstr "Gitter-Raster_einheiten:" -#: ../src/display/canvas-axonomgrid.cpp:367 ../src/display/canvas-grid.cpp:743 +#: ../src/display/canvas-axonomgrid.cpp:371 ../src/display/canvas-grid.cpp:748 msgid "_Origin X:" msgstr "_Ursprung X:" -#: ../src/display/canvas-axonomgrid.cpp:367 ../src/display/canvas-grid.cpp:743 -#: ../src/ui/dialog/inkscape-preferences.cpp:727 -#: ../src/ui/dialog/inkscape-preferences.cpp:752 +#: ../src/display/canvas-axonomgrid.cpp:371 ../src/display/canvas-grid.cpp:748 +#: ../src/ui/dialog/inkscape-preferences.cpp:735 +#: ../src/ui/dialog/inkscape-preferences.cpp:760 msgid "X coordinate of grid origin" msgstr "X-Koordinate des Gitterursprungs" -#: ../src/display/canvas-axonomgrid.cpp:369 ../src/display/canvas-grid.cpp:745 +#: ../src/display/canvas-axonomgrid.cpp:373 ../src/display/canvas-grid.cpp:750 msgid "O_rigin Y:" msgstr "U_rsprung Y:" -#: ../src/display/canvas-axonomgrid.cpp:369 ../src/display/canvas-grid.cpp:745 -#: ../src/ui/dialog/inkscape-preferences.cpp:728 -#: ../src/ui/dialog/inkscape-preferences.cpp:753 +#: ../src/display/canvas-axonomgrid.cpp:373 ../src/display/canvas-grid.cpp:750 +#: ../src/ui/dialog/inkscape-preferences.cpp:736 +#: ../src/ui/dialog/inkscape-preferences.cpp:761 msgid "Y coordinate of grid origin" msgstr "Y-Koordinate des Gitterursprungs" -#: ../src/display/canvas-axonomgrid.cpp:371 ../src/display/canvas-grid.cpp:749 +#: ../src/display/canvas-axonomgrid.cpp:375 ../src/display/canvas-grid.cpp:754 msgid "Spacing _Y:" msgstr "Abstand _Y:" -#: ../src/display/canvas-axonomgrid.cpp:371 -#: ../src/ui/dialog/inkscape-preferences.cpp:756 +#: ../src/display/canvas-axonomgrid.cpp:375 +#: ../src/ui/dialog/inkscape-preferences.cpp:764 msgid "Base length of z-axis" msgstr "Basislänge der Z-Achse" -#: ../src/display/canvas-axonomgrid.cpp:373 -#: ../src/ui/dialog/inkscape-preferences.cpp:759 +#: ../src/display/canvas-axonomgrid.cpp:377 +#: ../src/ui/dialog/inkscape-preferences.cpp:767 #: ../src/widgets/box3d-toolbar.cpp:320 msgid "Angle X:" msgstr "Winkel X:" -#: ../src/display/canvas-axonomgrid.cpp:373 -#: ../src/ui/dialog/inkscape-preferences.cpp:759 +#: ../src/display/canvas-axonomgrid.cpp:377 +#: ../src/ui/dialog/inkscape-preferences.cpp:767 msgid "Angle of x-axis" msgstr "Winkel der X-Achse" -#: ../src/display/canvas-axonomgrid.cpp:375 -#: ../src/ui/dialog/inkscape-preferences.cpp:760 +#: ../src/display/canvas-axonomgrid.cpp:379 +#: ../src/ui/dialog/inkscape-preferences.cpp:768 #: ../src/widgets/box3d-toolbar.cpp:399 msgid "Angle Z:" msgstr "Winkel Z:" -#: ../src/display/canvas-axonomgrid.cpp:375 -#: ../src/ui/dialog/inkscape-preferences.cpp:760 +#: ../src/display/canvas-axonomgrid.cpp:379 +#: ../src/ui/dialog/inkscape-preferences.cpp:768 msgid "Angle of z-axis" msgstr "Winkel der Z-Achse" -#: ../src/display/canvas-axonomgrid.cpp:379 ../src/display/canvas-grid.cpp:753 +#: ../src/display/canvas-axonomgrid.cpp:383 ../src/display/canvas-grid.cpp:758 msgid "Minor grid line _color:" msgstr "Nebengitter-Linienfarbe:" -#: ../src/display/canvas-axonomgrid.cpp:379 ../src/display/canvas-grid.cpp:753 -#: ../src/ui/dialog/inkscape-preferences.cpp:711 +#: ../src/display/canvas-axonomgrid.cpp:383 ../src/display/canvas-grid.cpp:758 +#: ../src/ui/dialog/inkscape-preferences.cpp:719 msgid "Minor grid line color" msgstr "Nebengitter-Linienfarbe:" -#: ../src/display/canvas-axonomgrid.cpp:379 ../src/display/canvas-grid.cpp:753 +#: ../src/display/canvas-axonomgrid.cpp:383 ../src/display/canvas-grid.cpp:758 msgid "Color of the minor grid lines" msgstr "Farbe der Nebengitterlinien" -#: ../src/display/canvas-axonomgrid.cpp:384 ../src/display/canvas-grid.cpp:758 +#: ../src/display/canvas-axonomgrid.cpp:388 ../src/display/canvas-grid.cpp:763 msgid "Ma_jor grid line color:" msgstr "Farbe der _dicken Gitterlinien:" -#: ../src/display/canvas-axonomgrid.cpp:384 ../src/display/canvas-grid.cpp:758 -#: ../src/ui/dialog/inkscape-preferences.cpp:713 +#: ../src/display/canvas-axonomgrid.cpp:388 ../src/display/canvas-grid.cpp:763 +#: ../src/ui/dialog/inkscape-preferences.cpp:721 msgid "Major grid line color" msgstr "Farbe der dicken Gitterlinien" -#: ../src/display/canvas-axonomgrid.cpp:385 ../src/display/canvas-grid.cpp:759 +#: ../src/display/canvas-axonomgrid.cpp:389 ../src/display/canvas-grid.cpp:764 msgid "Color of the major (highlighted) grid lines" msgstr "Farbe der dicken (hervorgehobenen) Gitterlinien" -#: ../src/display/canvas-axonomgrid.cpp:389 ../src/display/canvas-grid.cpp:763 +#: ../src/display/canvas-axonomgrid.cpp:393 ../src/display/canvas-grid.cpp:768 msgid "_Major grid line every:" msgstr "D_icke Gitterlinien alle:" -#: ../src/display/canvas-axonomgrid.cpp:389 ../src/display/canvas-grid.cpp:763 +#: ../src/display/canvas-axonomgrid.cpp:393 ../src/display/canvas-grid.cpp:768 msgid "lines" msgstr "Linien" -#: ../src/display/canvas-grid.cpp:57 +#: ../src/display/canvas-grid.cpp:62 msgid "Rectangular grid" msgstr "Rechteckiges Gitter" -#: ../src/display/canvas-grid.cpp:58 +#: ../src/display/canvas-grid.cpp:63 msgid "Axonometric grid" msgstr "Axonometrisches Gitter" -#: ../src/display/canvas-grid.cpp:269 +#: ../src/display/canvas-grid.cpp:274 msgid "Create new grid" msgstr "Neues Gitter erzeugen" -#: ../src/display/canvas-grid.cpp:335 +#: ../src/display/canvas-grid.cpp:340 msgid "_Enabled" msgstr "_Eingeschaltet" -#: ../src/display/canvas-grid.cpp:336 +#: ../src/display/canvas-grid.cpp:341 msgid "" "Determines whether to snap to this grid or not. Can be 'on' for invisible " "grids." @@ -4700,11 +4755,11 @@ msgstr "" "Legt fest, ob an diesem Raster eingerastet werden soll. Kann auch für " "unsichtbare Gitter gesetzt sein." -#: ../src/display/canvas-grid.cpp:340 +#: ../src/display/canvas-grid.cpp:345 msgid "Snap to visible _grid lines only" msgstr "Nur an sichtbaren _Gitternlinien einrasten" -#: ../src/display/canvas-grid.cpp:341 +#: ../src/display/canvas-grid.cpp:346 msgid "" "When zoomed out, not all grid lines will be displayed. Only the visible ones " "will be snapped to" @@ -4712,11 +4767,11 @@ msgstr "" "Nicht alle Gitterlinien werden dargestellt, wenn stark heraus gezoomt wird. " "Nur auf Sichtbare wird eingerastet." -#: ../src/display/canvas-grid.cpp:345 +#: ../src/display/canvas-grid.cpp:350 msgid "_Visible" msgstr "Sichtbar" -#: ../src/display/canvas-grid.cpp:346 +#: ../src/display/canvas-grid.cpp:351 msgid "" "Determines whether the grid is displayed or not. Objects are still snapped " "to invisible grids." @@ -4724,25 +4779,25 @@ msgstr "" "Legt fest, ob das Raster angezeigt werden soll. Objekte rasten auch an " "unsichtbaren Gittern ein." -#: ../src/display/canvas-grid.cpp:747 +#: ../src/display/canvas-grid.cpp:752 msgid "Spacing _X:" msgstr "Abstand _X:" -#: ../src/display/canvas-grid.cpp:747 -#: ../src/ui/dialog/inkscape-preferences.cpp:733 +#: ../src/display/canvas-grid.cpp:752 +#: ../src/ui/dialog/inkscape-preferences.cpp:741 msgid "Distance between vertical grid lines" msgstr "Abstand der vertikalen Gitterlinien" -#: ../src/display/canvas-grid.cpp:749 -#: ../src/ui/dialog/inkscape-preferences.cpp:734 +#: ../src/display/canvas-grid.cpp:754 +#: ../src/ui/dialog/inkscape-preferences.cpp:742 msgid "Distance between horizontal grid lines" msgstr "Abstand der horizontalen Gitterlinien" -#: ../src/display/canvas-grid.cpp:780 +#: ../src/display/canvas-grid.cpp:785 msgid "_Show dots instead of lines" msgstr "Zeige Punkte anstatt Linien" -#: ../src/display/canvas-grid.cpp:781 +#: ../src/display/canvas-grid.cpp:786 msgid "If set, displays dots at gridpoints instead of gridlines" msgstr "Wenn gesetzt, Punkte an Gitterpunkten anstelle Gitterlinien verwenden" @@ -4990,28 +5045,28 @@ msgstr "Einen einzelnen Punkt erzeugen" #. alpha of color under cursor, to show in the statusbar #. locale-sensitive printf is OK, since this goes to the UI, not into SVG -#: ../src/dropper-context.cpp:325 +#: ../src/dropper-context.cpp:324 #, c-format msgid " alpha %.3g" msgstr " Alpha %.3g" #. where the color is picked, to show in the statusbar -#: ../src/dropper-context.cpp:327 +#: ../src/dropper-context.cpp:326 #, c-format msgid ", averaged with radius %d" msgstr ", gemittelt mit Radius %d" -#: ../src/dropper-context.cpp:327 +#: ../src/dropper-context.cpp:326 #, c-format msgid " under cursor" msgstr " unter Zeiger" #. message, to show in the statusbar -#: ../src/dropper-context.cpp:329 +#: ../src/dropper-context.cpp:328 msgid "Release mouse to set color." msgstr "Maustaste loslassen, um die Farbe zu übernehmen." -#: ../src/dropper-context.cpp:329 ../src/tools-switch.cpp:232 +#: ../src/dropper-context.cpp:328 ../src/tools-switch.cpp:231 msgid "" "Click to set fill, Shift+click to set stroke; drag to " "average color in area; with Alt to pick inverse color; Ctrl+C " @@ -5021,7 +5076,7 @@ msgstr "" "Ziehen - Durchschnittsfarbe im Gebiet. Strg+C - Farbe nach " "Zwischenablage" -#: ../src/dropper-context.cpp:377 +#: ../src/dropper-context.cpp:376 msgid "Set picked color" msgstr "Übernommene Farbe setzen" @@ -5060,7 +5115,7 @@ msgstr "Zeichne Löschstrich" msgid "Draw eraser stroke" msgstr "Radierer-Pfad zeichnen" -#: ../src/event-context.cpp:671 +#: ../src/event-context.cpp:668 msgid "Space+mouse move to pan canvas" msgstr "Leertaste+Mausziehen um die Leinwand zu verschieben" @@ -5069,11 +5124,11 @@ msgid "[Unchanged]" msgstr "[Unverändert]" #. Edit -#: ../src/event-log.cpp:275 ../src/event-log.cpp:278 ../src/verbs.cpp:2324 +#: ../src/event-log.cpp:275 ../src/event-log.cpp:278 ../src/verbs.cpp:2329 msgid "_Undo" msgstr "_Rückgängig" -#: ../src/event-log.cpp:285 ../src/event-log.cpp:289 ../src/verbs.cpp:2326 +#: ../src/event-log.cpp:285 ../src/event-log.cpp:289 ../src/verbs.cpp:2331 msgid "_Redo" msgstr "_Wiederherstellen" @@ -5101,12 +5156,12 @@ msgstr " Beschreibung: " msgid " (No preferences)" msgstr " (Keine Einstellungen)" -#: ../src/extension/effect.h:70 ../src/verbs.cpp:2097 +#: ../src/extension/effect.h:70 ../src/verbs.cpp:2102 msgid "Extensions" msgstr "Erweiterungen" #. This is some filler text, needs to change before relase -#: ../src/extension/error-file.cpp:53 +#: ../src/extension/error-file.cpp:52 msgid "" "One or more extensions failed to load\n" @@ -5122,18 +5177,18 @@ msgstr "" "normalen Ablauf fort, doch diese Erweiterungen können nicht benutzt werden. " "Details zum Beheben des Problems finden sich in der Logdatei unter: " -#: ../src/extension/error-file.cpp:67 +#: ../src/extension/error-file.cpp:66 msgid "Show dialog on startup" msgstr "Dialog beim Starten des Programmes anzeigen" -#: ../src/extension/execution-env.cpp:136 +#: ../src/extension/execution-env.cpp:144 #, c-format msgid "'%s' working, please wait..." msgstr "»%s« arbeitet, bitte warten…" #. static int i = 0; #. std::cout << "Checking module[" << i++ << "]: " << name << std::endl; -#: ../src/extension/extension.cpp:259 +#: ../src/extension/extension.cpp:263 msgid "" " This is caused by an improper .inx file for this extension. An improper ." "inx file could have been caused by a faulty installation of Inkscape." @@ -5142,66 +5197,66 @@ msgstr "" "Eine fehlerhafte .inx Datei kann Folge einer Fehlinstallation von Inkscape " "sein." -#: ../src/extension/extension.cpp:262 +#: ../src/extension/extension.cpp:266 msgid "an ID was not defined for it." msgstr "hierfür keine ID definiert wurde." -#: ../src/extension/extension.cpp:266 +#: ../src/extension/extension.cpp:270 msgid "there was no name defined for it." msgstr "hierfür kein Name definiert wurde." -#: ../src/extension/extension.cpp:270 +#: ../src/extension/extension.cpp:274 msgid "the XML description of it got lost." msgstr "die zugehörige XML-Beschreibung nicht auffindbar ist." -#: ../src/extension/extension.cpp:274 +#: ../src/extension/extension.cpp:278 msgid "no implementation was defined for the extension." msgstr "für diese Erweiterung keine Implementierung existiert." #. std::cout << "Failed: " << *(_deps[i]) << std::endl; -#: ../src/extension/extension.cpp:281 +#: ../src/extension/extension.cpp:285 msgid "a dependency was not met." msgstr "eine Abhängigkeit nicht aufgelöst werden konnte." -#: ../src/extension/extension.cpp:301 +#: ../src/extension/extension.cpp:305 msgid "Extension \"" msgstr "Erweiterung »" -#: ../src/extension/extension.cpp:301 +#: ../src/extension/extension.cpp:305 msgid "\" failed to load because " msgstr "«: Laden fehlgeschlagen, da " -#: ../src/extension/extension.cpp:628 +#: ../src/extension/extension.cpp:654 #, c-format msgid "Could not create extension error log file '%s'" msgstr "Fehlerprotokolldatei »%s« konnte nicht erweitert oder erzeugt werden." -#: ../src/extension/extension.cpp:736 +#: ../src/extension/extension.cpp:762 #: ../share/extensions/webslicer_create_rect.inx.h:2 msgid "Name:" msgstr "Name:" -#: ../src/extension/extension.cpp:737 +#: ../src/extension/extension.cpp:763 msgid "ID:" msgstr "Kennung:" -#: ../src/extension/extension.cpp:738 +#: ../src/extension/extension.cpp:764 msgid "State:" msgstr "Status:" -#: ../src/extension/extension.cpp:738 +#: ../src/extension/extension.cpp:764 msgid "Loaded" msgstr "Geladen" -#: ../src/extension/extension.cpp:738 +#: ../src/extension/extension.cpp:764 msgid "Unloaded" msgstr "Nicht geladen" -#: ../src/extension/extension.cpp:738 +#: ../src/extension/extension.cpp:764 msgid "Deactivated" msgstr "Deaktiviert" -#: ../src/extension/extension.cpp:778 +#: ../src/extension/extension.cpp:804 msgid "" "Currently there is no help available for this Extension. Please look on the " "Inkscape website or ask on the mailing lists if you have questions regarding " @@ -5211,7 +5266,7 @@ msgstr "" "Inkscape Webseite oder wenden Sie sich an die Mailing List wenn Sie Fragen " "bezüglich dieser Erweiterung haben." -#: ../src/extension/implementation/script.cpp:1018 +#: ../src/extension/implementation/script.cpp:1037 msgid "" "Inkscape has received additional data from the script executed. The script " "did not return an error, but this may indicate the results will not be as " @@ -5221,11 +5276,11 @@ msgstr "" "keine Fehlermeldung vom Skript zurückgegeben, doch das Resultat ist " "möglicherweise unbrauchbar." -#: ../src/extension/init.cpp:296 +#: ../src/extension/init.cpp:298 msgid "Null external module directory name. Modules will not be loaded." msgstr "Modulverzeichnis ist nicht verfügbar. Module werden nicht geladen." -#: ../src/extension/init.cpp:310 +#: ../src/extension/init.cpp:312 #: ../src/extension/internal/filter/filter-file.cpp:59 #, c-format msgid "" @@ -5243,12 +5298,11 @@ msgstr "Adaptiver Schwellwert" #: ../src/extension/internal/bitmap/raise.cpp:42 #: ../src/extension/internal/bitmap/sample.cpp:41 #: ../src/extension/internal/bluredge.cpp:137 -#: ../src/extension/internal/filter/morphology.h:65 #: ../src/ui/dialog/object-attributes.cpp:68 #: ../src/ui/dialog/object-attributes.cpp:76 -#: ../src/widgets/calligraphy-toolbar.cpp:453 -#: ../src/widgets/erasor-toolbar.cpp:151 ../src/widgets/spray-toolbar.cpp:133 -#: ../src/widgets/tweak-toolbar.cpp:147 +#: ../src/widgets/calligraphy-toolbar.cpp:451 +#: ../src/widgets/erasor-toolbar.cpp:149 ../src/widgets/spray-toolbar.cpp:132 +#: ../src/widgets/tweak-toolbar.cpp:146 #: ../share/extensions/foldablebox.inx.h:2 msgid "Width:" msgstr "Breite:" @@ -5256,8 +5310,6 @@ msgstr "Breite:" #: ../src/extension/internal/bitmap/adaptiveThreshold.cpp:42 #: ../src/extension/internal/bitmap/raise.cpp:43 #: ../src/extension/internal/bitmap/sample.cpp:42 -#: ../src/extension/internal/filter/bumps.h:98 -#: ../src/extension/internal/filter/bumps.h:329 #: ../src/ui/dialog/object-attributes.cpp:69 #: ../src/ui/dialog/object-attributes.cpp:77 #: ../share/extensions/foldablebox.inx.h:3 @@ -5266,10 +5318,8 @@ msgstr "Höhe:" #. Label #: ../src/extension/internal/bitmap/adaptiveThreshold.cpp:43 -#: ../src/extension/internal/filter/color.h:1044 -#: ../src/extension/internal/filter/paint.h:356 #: ../src/widgets/gradient-toolbar.cpp:1172 -#: ../src/widgets/gradient-vector.cpp:927 +#: ../src/widgets/gradient-vector.cpp:926 #: ../share/extensions/printing_marks.inx.h:12 msgid "Offset:" msgstr "Versatz:" @@ -5328,8 +5378,8 @@ msgstr "Rauschen hinzufügen" #: ../src/extension/internal/filter/color.h:1585 #: ../src/extension/internal/filter/distort.h:69 #: ../src/extension/internal/filter/morphology.h:60 ../src/rdf.cpp:241 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2608 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2687 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2613 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2692 #: ../src/ui/dialog/object-attributes.cpp:49 #: ../share/extensions/jessyInk_effects.inx.h:5 #: ../share/extensions/jessyInk_export.inx.h:3 @@ -5368,6 +5418,8 @@ msgstr "Füge den Bitmap(s) zufälliges Rauschen hinzu" #: ../src/extension/internal/bitmap/blur.cpp:38 #: ../src/extension/internal/filter/blurs.h:54 +#: ../src/extension/internal/filter/paint.h:710 +#: ../src/extension/internal/filter/transparency.h:343 msgid "Blur" msgstr "Unschärfe" @@ -5379,7 +5431,7 @@ msgstr "Unschärfe" #: ../src/extension/internal/bitmap/oilPaint.cpp:39 #: ../src/extension/internal/bitmap/sharpen.cpp:40 #: ../src/extension/internal/bitmap/unsharpmask.cpp:43 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2665 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2670 msgid "Radius:" msgstr "Radius:" @@ -5471,6 +5523,7 @@ msgid "Colorize selected bitmap(s) with specified color, using given opacity" msgstr "Färbt ausgewählte Bitmap(s) mit gegebener Farbe und Deckkraft ein." #: ../src/extension/internal/bitmap/contrast.cpp:40 +#: ../src/extension/internal/filter/color.h:1114 msgid "Contrast" msgstr "Kontrast" @@ -5483,6 +5536,8 @@ msgid "Increase or decrease contrast in bitmap(s)" msgstr "Erhöhe oder erniedrige Kontrast in Bitmap(s)" #: ../src/extension/internal/bitmap/crop.cpp:66 +#: ../src/extension/internal/filter/bumps.h:86 +#: ../src/extension/internal/filter/bumps.h:315 msgid "Crop" msgstr "Schneiden" @@ -5513,7 +5568,7 @@ msgstr "Rotiere Farbpalette" #: ../src/extension/internal/bitmap/cycleColormap.cpp:39 #: ../src/extension/internal/bitmap/spread.cpp:39 #: ../src/extension/internal/bitmap/unsharpmask.cpp:45 -#: ../src/widgets/spray-toolbar.cpp:225 +#: ../src/widgets/spray-toolbar.cpp:224 msgid "Amount:" msgstr "Menge" @@ -5587,6 +5642,10 @@ msgid "Implode selected bitmap(s)" msgstr "Implodiert ausgewählte Bitmaps." #: ../src/extension/internal/bitmap/level.cpp:41 +#: ../src/extension/internal/filter/color.h:742 +#: ../src/extension/internal/filter/image.h:56 +#: ../src/extension/internal/filter/morphology.h:66 +#: ../src/extension/internal/filter/paint.h:345 msgid "Level" msgstr "Ebene" @@ -5650,17 +5709,10 @@ msgid "Hue:" msgstr "Farbton" #: ../src/extension/internal/bitmap/modulate.cpp:43 -#: ../src/extension/internal/filter/color.h:156 -#: ../src/extension/internal/filter/color.h:257 -#: ../src/extension/internal/filter/paint.h:87 msgid "Saturation:" msgstr "Sättigung" #: ../src/extension/internal/bitmap/modulate.cpp:44 -#: ../src/extension/internal/filter/bevels.h:136 -#: ../src/extension/internal/filter/bevels.h:220 -#: ../src/extension/internal/filter/blurs.h:187 -#: ../src/extension/internal/filter/color.h:74 msgid "Brightness:" msgstr "Glanz:" @@ -5699,9 +5751,8 @@ msgstr "" "Lässt ausgewählte Bitmap(s) aussehen, als ob sie mit Ölfarbe gemalt seien." #: ../src/extension/internal/bitmap/opacity.cpp:40 -#: ../src/extension/internal/filter/blurs.h:333 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 -#: ../src/widgets/dropper-toolbar.cpp:112 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2660 +#: ../src/widgets/dropper-toolbar.cpp:111 msgid "Opacity:" msgstr "Deckkraft:" @@ -5756,14 +5807,10 @@ msgid "Shade" msgstr "Schattieren" #: ../src/extension/internal/bitmap/shade.cpp:42 -#: ../src/extension/internal/filter/bumps.h:110 -#: ../src/extension/internal/filter/bumps.h:332 msgid "Azimuth:" msgstr "Azimut" #: ../src/extension/internal/bitmap/shade.cpp:43 -#: ../src/extension/internal/filter/bumps.h:111 -#: ../src/extension/internal/filter/bumps.h:333 msgid "Elevation:" msgstr "Anhebung" @@ -5816,7 +5863,7 @@ msgstr "Schwellwert" #: ../src/extension/internal/bitmap/threshold.cpp:40 #: ../src/extension/internal/bitmap/unsharpmask.cpp:46 -#: ../src/widgets/paintbucket-toolbar.cpp:168 +#: ../src/widgets/paintbucket-toolbar.cpp:166 msgid "Threshold:" msgstr "Schwellwert:" @@ -5874,97 +5921,101 @@ msgstr "Anzahl der geschrumpften/erweiterten Kopien des Objekts" msgid "Generate from Path" msgstr "Aus Pfad erzeugen" -#: ../src/extension/internal/cairo-ps-out.cpp:309 +#: ../src/extension/internal/cairo-ps-out.cpp:327 #: ../share/extensions/ps_input.inx.h:3 msgid "PostScript" msgstr "Postscript" -#: ../src/extension/internal/cairo-ps-out.cpp:311 -#: ../src/extension/internal/cairo-ps-out.cpp:351 +#: ../src/extension/internal/cairo-ps-out.cpp:329 +#: ../src/extension/internal/cairo-ps-out.cpp:370 msgid "Restrict to PS level:" msgstr "Auf PostScript Level einschränken" -#: ../src/extension/internal/cairo-ps-out.cpp:312 -#: ../src/extension/internal/cairo-ps-out.cpp:352 +#: ../src/extension/internal/cairo-ps-out.cpp:330 +#: ../src/extension/internal/cairo-ps-out.cpp:371 msgid "PostScript level 3" msgstr "PostScript Level 3" -#: ../src/extension/internal/cairo-ps-out.cpp:314 -#: ../src/extension/internal/cairo-ps-out.cpp:354 +#: ../src/extension/internal/cairo-ps-out.cpp:332 +#: ../src/extension/internal/cairo-ps-out.cpp:373 msgid "PostScript level 2" msgstr "Postscript Level 2" -#: ../src/extension/internal/cairo-ps-out.cpp:317 -#: ../src/extension/internal/cairo-ps-out.cpp:357 +#: ../src/extension/internal/cairo-ps-out.cpp:335 +#: ../src/extension/internal/cairo-ps-out.cpp:376 #: ../src/extension/internal/cairo-renderer-pdf-out.cpp:250 #: ../src/extension/internal/emf-win32-inout.cpp:2553 msgid "Convert texts to paths" msgstr "Texte in Pfade umwandeln" -#: ../src/extension/internal/cairo-ps-out.cpp:318 +#: ../src/extension/internal/cairo-ps-out.cpp:336 msgid "PS+LaTeX: Omit text in PS, and create LaTeX file" msgstr "PS+LaTeX: Text in PS weglassen und LaTeX Datei erstellen" -#: ../src/extension/internal/cairo-ps-out.cpp:319 -#: ../src/extension/internal/cairo-ps-out.cpp:359 +#: ../src/extension/internal/cairo-ps-out.cpp:337 +#: ../src/extension/internal/cairo-ps-out.cpp:378 #: ../src/extension/internal/cairo-renderer-pdf-out.cpp:252 msgid "Rasterize filter effects" msgstr "Filtereffekte in Raster umwandeln" -#: ../src/extension/internal/cairo-ps-out.cpp:320 -#: ../src/extension/internal/cairo-ps-out.cpp:360 +#: ../src/extension/internal/cairo-ps-out.cpp:338 +#: ../src/extension/internal/cairo-ps-out.cpp:379 #: ../src/extension/internal/cairo-renderer-pdf-out.cpp:253 msgid "Resolution for rasterization (dpi):" msgstr "Auflösung des Rasters (dpi)" -#: ../src/extension/internal/cairo-ps-out.cpp:321 -#: ../src/extension/internal/cairo-ps-out.cpp:361 -#: ../src/extension/internal/cairo-renderer-pdf-out.cpp:254 +#: ../src/extension/internal/cairo-ps-out.cpp:339 +#: ../src/extension/internal/cairo-ps-out.cpp:380 msgid "Output page size" msgstr "Seitengröße der Ausgabe" -#: ../src/extension/internal/cairo-ps-out.cpp:322 -#: ../src/extension/internal/cairo-ps-out.cpp:362 +#: ../src/extension/internal/cairo-ps-out.cpp:340 +#: ../src/extension/internal/cairo-ps-out.cpp:381 #: ../src/extension/internal/cairo-renderer-pdf-out.cpp:255 msgid "Use document's page size" msgstr "Seitengröße vom Dokument nutzen" -#: ../src/extension/internal/cairo-ps-out.cpp:323 -#: ../src/extension/internal/cairo-ps-out.cpp:363 +#: ../src/extension/internal/cairo-ps-out.cpp:341 +#: ../src/extension/internal/cairo-ps-out.cpp:382 #: ../src/extension/internal/cairo-renderer-pdf-out.cpp:256 msgid "Use exported object's size" msgstr "Nutze exportierte Objektgröße" -#: ../src/extension/internal/cairo-ps-out.cpp:325 -#: ../src/extension/internal/cairo-ps-out.cpp:365 +#: ../src/extension/internal/cairo-ps-out.cpp:343 +#: ../src/extension/internal/cairo-ps-out.cpp:384 +msgid "Bleed/margin (mm)" +msgstr "Beschnitt/Umrandung (mm)" + +#: ../src/extension/internal/cairo-ps-out.cpp:344 +#: ../src/extension/internal/cairo-ps-out.cpp:385 #: ../src/extension/internal/cairo-renderer-pdf-out.cpp:259 msgid "Limit export to the object with ID:" msgstr "Export einschränken auf das Objekt mit ID" -#: ../src/extension/internal/cairo-ps-out.cpp:329 +#: ../src/extension/internal/cairo-ps-out.cpp:348 #: ../share/extensions/ps_input.inx.h:2 msgid "PostScript (*.ps)" msgstr "PostScript (*.ps)" -#: ../src/extension/internal/cairo-ps-out.cpp:330 +#: ../src/extension/internal/cairo-ps-out.cpp:349 msgid "PostScript File" msgstr "Postscript-Datei" -#: ../src/extension/internal/cairo-ps-out.cpp:349 +#: ../src/extension/internal/cairo-ps-out.cpp:368 #: ../share/extensions/eps_input.inx.h:3 msgid "Encapsulated PostScript" msgstr "Encapsulated Postscript" -#: ../src/extension/internal/cairo-ps-out.cpp:358 +#: ../src/extension/internal/cairo-ps-out.cpp:377 msgid "EPS+LaTeX: Omit text in EPS, and create LaTeX file" msgstr "EPS+LaTeX: Text in EPS weglassen und LaTeX Datei erstellen" -#: ../src/extension/internal/cairo-ps-out.cpp:369 +#: ../src/extension/internal/cairo-ps-out.cpp:389 #: ../share/extensions/eps_input.inx.h:2 msgid "Encapsulated PostScript (*.eps)" msgstr "Encapsulated Postscript (*.eps)" -#: ../src/extension/internal/cairo-ps-out.cpp:370 +#: ../src/extension/internal/cairo-ps-out.cpp:390 msgid "Encapsulated PostScript File" msgstr "Encapsulated-Postscript-Datei" @@ -5984,9 +6035,86 @@ msgstr "PDF 1.4" msgid "PDF+LaTeX: Omit text in PDF, and create LaTeX file" msgstr "PDF+LaTeX: Text in PDF weglassen und LaTeX Datei erstellen" +#: ../src/extension/internal/cairo-renderer-pdf-out.cpp:254 +msgid "Output page size:" +msgstr "Seitengröße der Ausgabe:" + #: ../src/extension/internal/cairo-renderer-pdf-out.cpp:258 -msgid "Bleed/margin (mm)" -msgstr "Beschnitt/Umrandung (mm)" +msgid "Bleed/margin (mm):" +msgstr "Beschnitt/Umrandung (mm):" + +#: ../src/extension/internal/cdr-input.cpp:100 +#: ../src/extension/internal/pdf-input-cairo.cpp:70 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:86 +#: ../src/extension/internal/vsd-input.cpp:100 +msgid "Select page:" +msgstr "Seite auswählen:" + +#. Display total number of pages +#: ../src/extension/internal/cdr-input.cpp:112 +#: ../src/extension/internal/pdf-input-cairo.cpp:88 +#: ../src/extension/internal/pdfinput/pdf-input.cpp:105 +#: ../src/extension/internal/vsd-input.cpp:112 +#, c-format +msgid "out of %i" +msgstr "von %i" + +#: ../src/extension/internal/cdr-input.cpp:143 +#: ../src/extension/internal/vsd-input.cpp:143 +#, fuzzy +msgid "Page Selector" +msgstr "Auswahlwerkzeug" + +#: ../src/extension/internal/cdr-input.cpp:267 +msgid "Corel DRAW Input" +msgstr "Corel DRAW einlesen" + +#: ../src/extension/internal/cdr-input.cpp:272 +msgid "Corel DRAW 7-X4 files (*.cdr)" +msgstr "Corel DRAW 7-X4 Dateien (*.cdr)" + +#: ../src/extension/internal/cdr-input.cpp:273 +msgid "Open files saved in Corel DRAW 7-X4" +msgstr "In Corel DRAW 7-X4 gespeicherte Dateien öffnen" + +#: ../src/extension/internal/cdr-input.cpp:280 +msgid "Corel DRAW templates input" +msgstr "Corel DRAW Vorlagen einlesen" + +#: ../src/extension/internal/cdr-input.cpp:285 +msgid "Corel DRAW 7-13 template files (*.cdt)" +msgstr "Corel DRAW 7-13 Vorlagendateien (.cdt)" + +#: ../src/extension/internal/cdr-input.cpp:286 +msgid "Open files saved in Corel DRAW 7-13" +msgstr "In Corel DRAW 7-13 gespeicherte Dateien öffnen" + +#: ../src/extension/internal/cdr-input.cpp:293 +msgid "Corel DRAW Compressed Exchange files input" +msgstr "Corel DRAW Compressed Exchange Datei einlesen" + +#: ../src/extension/internal/cdr-input.cpp:298 +msgid "Corel DRAW Compressed Exchange files (*.ccx)" +msgstr "Corel DRAW Komprimierte Exchange Datei (.ccx)" + +#: ../src/extension/internal/cdr-input.cpp:299 +msgid "Open compressed exchange files saved in Corel DRAW" +msgstr "" +"Öffnen einer komprimierten Exchange Datei, die in Corel DRAW gespeichert " +"wurde" + +#: ../src/extension/internal/cdr-input.cpp:306 +msgid "Corel DRAW Presentation Exchange files input" +msgstr "Corel DRAW Presentations Exchange Datei einlesen" + +#: ../src/extension/internal/cdr-input.cpp:311 +msgid "Corel DRAW Presentation Exchange files (*.cmx)" +msgstr "Corel DRAW Presentations Exchange Datei (.cmx)" + +#: ../src/extension/internal/cdr-input.cpp:312 +msgid "Open presentation exchange files saved in Corel DRAW" +msgstr "" +"Öffnen einer Presentation Exchange Datei, die in Corel DRAW gespeichert wurde" #: ../src/extension/internal/emf-win32-inout.cpp:2523 msgid "EMF Input" @@ -6033,22 +6161,21 @@ msgstr "Diffuses Licht" #: ../src/extension/internal/filter/bevels.h:135 #: ../src/extension/internal/filter/bevels.h:219 #: ../src/extension/internal/filter/paint.h:89 -#: ../src/live_effects/lpe-powerstroke.cpp:236 -#: ../share/extensions/fractalize.inx.h:3 -msgid "Smoothness:" +#: ../src/extension/internal/filter/paint.h:340 +msgid "Smoothness" msgstr "Glattheit" #: ../src/extension/internal/filter/bevels.h:56 #: ../src/extension/internal/filter/bevels.h:137 #: ../src/extension/internal/filter/bevels.h:221 -msgid "Elevation (°):" -msgstr "Anhebung (°):" +msgid "Elevation (°)" +msgstr "Anhebung (°)" #: ../src/extension/internal/filter/bevels.h:57 #: ../src/extension/internal/filter/bevels.h:138 #: ../src/extension/internal/filter/bevels.h:222 -msgid "Azimuth (°):" -msgstr "Azimut (°):" +msgid "Azimuth (°)" +msgstr "Azimut (°)" #: ../src/extension/internal/filter/bevels.h:58 #: ../src/extension/internal/filter/bevels.h:139 @@ -6118,6 +6245,13 @@ msgstr "Einfache stumpfe Wölbung um Texturen zu entwickeln" msgid "Matte Jelly" msgstr "Mattes Gelee" +#: ../src/extension/internal/filter/bevels.h:136 +#: ../src/extension/internal/filter/bevels.h:220 +#: ../src/extension/internal/filter/blurs.h:187 +#: ../src/extension/internal/filter/color.h:74 +msgid "Brightness" +msgstr "Glanz" + #: ../src/extension/internal/filter/bevels.h:147 msgid "Bulging, matte jelly covering" msgstr "Aufgewölbte, matte Gelee-Abdeckung" @@ -6130,15 +6264,15 @@ msgstr "Spiegelndes Licht" #: ../src/extension/internal/filter/blurs.h:189 #: ../src/extension/internal/filter/blurs.h:329 #: ../src/extension/internal/filter/distort.h:73 -msgid "Horizontal blur:" -msgstr "Horizontale Unschärfe:" +msgid "Horizontal blur" +msgstr "Horizontale Unschärfe" #: ../src/extension/internal/filter/blurs.h:57 #: ../src/extension/internal/filter/blurs.h:190 #: ../src/extension/internal/filter/blurs.h:330 #: ../src/extension/internal/filter/distort.h:74 -msgid "Vertical blur:" -msgstr "Vertikale Unschärfe:" +msgid "Vertical blur" +msgstr "Vertikale Unschärfe" #: ../src/extension/internal/filter/blurs.h:58 msgid "Blur content only" @@ -6157,8 +6291,8 @@ msgstr "Saubere Kanten" #: ../src/extension/internal/filter/paint.h:237 #: ../src/extension/internal/filter/paint.h:336 #: ../src/extension/internal/filter/paint.h:341 -msgid "Strength:" -msgstr "Stärke:" +msgid "Strength" +msgstr "Stärke" #: ../src/extension/internal/filter/blurs.h:135 msgid "" @@ -6171,8 +6305,8 @@ msgid "Cross Blur" msgstr "Kreuz-Unschärfe" #: ../src/extension/internal/filter/blurs.h:188 -msgid "Fading:" -msgstr "Verblassen:" +msgid "Fading" +msgstr "Verblassen" #: ../src/extension/internal/filter/blurs.h:191 #: ../src/extension/internal/filter/textures.h:74 @@ -6264,25 +6398,23 @@ msgstr "Unscharf eingestellt" #: ../src/extension/internal/filter/blurs.h:331 #: ../src/extension/internal/filter/distort.h:75 #: ../src/extension/internal/filter/morphology.h:67 -#: ../src/extension/internal/filter/overlays.h:68 #: ../src/extension/internal/filter/paint.h:235 #: ../src/extension/internal/filter/paint.h:342 #: ../src/extension/internal/filter/paint.h:346 -msgid "Dilatation:" -msgstr "Erweiterung:" +msgid "Dilatation" +msgstr "Erweiterung" #: ../src/extension/internal/filter/blurs.h:332 #: ../src/extension/internal/filter/distort.h:76 #: ../src/extension/internal/filter/morphology.h:68 -#: ../src/extension/internal/filter/overlays.h:69 #: ../src/extension/internal/filter/paint.h:98 #: ../src/extension/internal/filter/paint.h:236 #: ../src/extension/internal/filter/paint.h:343 #: ../src/extension/internal/filter/paint.h:347 #: ../src/extension/internal/filter/transparency.h:208 #: ../src/extension/internal/filter/transparency.h:282 -msgid "Erosion:" -msgstr "Erosion:" +msgid "Erosion" +msgstr "Erosion" #: ../src/extension/internal/filter/blurs.h:336 #: ../src/extension/internal/filter/color.h:1205 @@ -6311,7 +6443,7 @@ msgstr "Misch-Typ:" #: ../src/extension/internal/filter/paint.h:702 #: ../src/extension/internal/filter/textures.h:77 #: ../src/extension/internal/filter/transparency.h:61 -#: ../src/filter-enums.cpp:51 ../src/ui/dialog/inkscape-preferences.cpp:643 +#: ../src/filter-enums.cpp:51 ../src/ui/dialog/inkscape-preferences.cpp:642 msgid "Normal" msgstr "Normal" @@ -6329,18 +6461,13 @@ msgstr "Erhöhung" #: ../src/extension/internal/filter/bumps.h:84 #: ../src/extension/internal/filter/bumps.h:313 -msgid "Image simplification:" -msgstr "Bild-Vereinfachungen:" +msgid "Image simplification" +msgstr "Bild-Vereinfachungen" #: ../src/extension/internal/filter/bumps.h:85 #: ../src/extension/internal/filter/bumps.h:314 -msgid "Bump simplification:" -msgstr "Stoß-Vereinfachungen:" - -#: ../src/extension/internal/filter/bumps.h:86 -#: ../src/extension/internal/filter/bumps.h:315 -msgid "Crop:" -msgstr "Schneiden:" +msgid "Bump simplification" +msgstr "Stoß-Vereinfachungen" #: ../src/extension/internal/filter/bumps.h:87 #: ../src/extension/internal/filter/bumps.h:316 @@ -6350,26 +6477,41 @@ msgstr "Stoß-Quelle" #: ../src/extension/internal/filter/bumps.h:88 #: ../src/extension/internal/filter/bumps.h:317 #: ../src/extension/internal/filter/color.h:157 +#: ../src/extension/internal/filter/color.h:637 #: ../src/extension/internal/filter/color.h:821 #: ../src/extension/internal/filter/transparency.h:132 -msgid "Red:" -msgstr "Rot:" +#: ../src/filter-enums.cpp:100 ../src/flood-context.cpp:228 +#: ../src/widgets/sp-color-icc-selector.cpp:355 +#: ../src/widgets/sp-color-scales.cpp:429 +#: ../src/widgets/sp-color-scales.cpp:430 +msgid "Red" +msgstr "Rot" #: ../src/extension/internal/filter/bumps.h:89 #: ../src/extension/internal/filter/bumps.h:318 #: ../src/extension/internal/filter/color.h:158 +#: ../src/extension/internal/filter/color.h:638 #: ../src/extension/internal/filter/color.h:822 #: ../src/extension/internal/filter/transparency.h:133 -msgid "Green:" -msgstr "Grün:" +#: ../src/filter-enums.cpp:101 ../src/flood-context.cpp:229 +#: ../src/widgets/sp-color-icc-selector.cpp:356 +#: ../src/widgets/sp-color-scales.cpp:432 +#: ../src/widgets/sp-color-scales.cpp:433 +msgid "Green" +msgstr "Grün" #: ../src/extension/internal/filter/bumps.h:90 #: ../src/extension/internal/filter/bumps.h:319 #: ../src/extension/internal/filter/color.h:159 +#: ../src/extension/internal/filter/color.h:639 #: ../src/extension/internal/filter/color.h:823 #: ../src/extension/internal/filter/transparency.h:134 -msgid "Blue:" -msgstr "Blau:" +#: ../src/filter-enums.cpp:102 ../src/flood-context.cpp:230 +#: ../src/widgets/sp-color-icc-selector.cpp:357 +#: ../src/widgets/sp-color-scales.cpp:435 +#: ../src/widgets/sp-color-scales.cpp:436 +msgid "Blue" +msgstr "Blau" #: ../src/extension/internal/filter/bumps.h:91 msgid "Bump from background" @@ -6387,6 +6529,14 @@ msgstr "Spiegelnd" msgid "Diffuse" msgstr "Diffuses Licht" +#: ../src/extension/internal/filter/bumps.h:98 +#: ../src/extension/internal/filter/bumps.h:329 +#: ../src/libgdl/gdl-dock-placeholder.c:175 ../src/libgdl/gdl-dock.c:199 +#: ../src/widgets/rect-toolbar.cpp:332 +#: ../share/extensions/interp_att_g.inx.h:11 +msgid "Height" +msgstr "Höhe" + #: ../src/extension/internal/filter/bumps.h:99 #: ../src/extension/internal/filter/bumps.h:330 #: ../src/extension/internal/filter/color.h:76 @@ -6394,14 +6544,17 @@ msgstr "Diffuses Licht" #: ../src/extension/internal/filter/color.h:1113 #: ../src/extension/internal/filter/paint.h:86 #: ../src/extension/internal/filter/paint.h:592 -#: ../src/extension/internal/filter/paint.h:707 -msgid "Lightness:" -msgstr "Helligkeit:" +#: ../src/extension/internal/filter/paint.h:707 ../src/flood-context.cpp:233 +#: ../src/widgets/sp-color-icc-selector.cpp:366 +#: ../src/widgets/sp-color-scales.cpp:461 +#: ../src/widgets/sp-color-scales.cpp:462 ../src/widgets/tweak-toolbar.cpp:336 +#: ../share/extensions/color_randomize.inx.h:5 +msgid "Lightness" +msgstr "Helligkeit" #: ../src/extension/internal/filter/bumps.h:100 #: ../src/extension/internal/filter/bumps.h:331 -#: ../share/extensions/measure.inx.h:8 -msgid "Precision:" +msgid "Precision" msgstr "Genauigkeit" #: ../src/extension/internal/filter/bumps.h:103 @@ -6417,7 +6570,7 @@ msgid "Distant" msgstr "Entfernt" #: ../src/extension/internal/filter/bumps.h:106 ../src/helper/units.cpp:38 -#: ../src/ui/dialog/inkscape-preferences.cpp:452 +#: ../src/ui/dialog/inkscape-preferences.cpp:451 msgid "Point" msgstr "Punkt" @@ -6429,47 +6582,59 @@ msgstr "Spot" msgid "Distant light options" msgstr "Entfernte Lichtoptionen" +#: ../src/extension/internal/filter/bumps.h:110 +#: ../src/extension/internal/filter/bumps.h:332 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1001 +msgid "Azimuth" +msgstr "Azimut" + +#: ../src/extension/internal/filter/bumps.h:111 +#: ../src/extension/internal/filter/bumps.h:333 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1002 +msgid "Elevation" +msgstr "Anhebung" + #: ../src/extension/internal/filter/bumps.h:112 msgid "Point light options" msgstr "Punktlicht-Optionen" #: ../src/extension/internal/filter/bumps.h:113 #: ../src/extension/internal/filter/bumps.h:117 -msgid "X location:" -msgstr "X Adresse:" +msgid "X location" +msgstr "X Adresse" #: ../src/extension/internal/filter/bumps.h:114 #: ../src/extension/internal/filter/bumps.h:118 -msgid "Y location:" -msgstr "Y Adresse:" +msgid "Y location" +msgstr "Y Adresse" #: ../src/extension/internal/filter/bumps.h:115 #: ../src/extension/internal/filter/bumps.h:119 -msgid "Z location:" -msgstr "Z Adresse:" +msgid "Z location" +msgstr "Z Adresse" #: ../src/extension/internal/filter/bumps.h:116 msgid "Spot light options" msgstr "Punktlicht-Optionen" #: ../src/extension/internal/filter/bumps.h:120 -msgid "X target:" -msgstr "X Ziel:" +msgid "X target" +msgstr "X Ziel" #: ../src/extension/internal/filter/bumps.h:121 -msgid "Y target:" -msgstr "Y Ziel:" +msgid "Y target" +msgstr "Y Ziel" #: ../src/extension/internal/filter/bumps.h:122 -msgid "Z target:" -msgstr "Z Ziel:" +msgid "Z target" +msgstr "Z Ziel" #: ../src/extension/internal/filter/bumps.h:123 -msgid "Specular exponent:" -msgstr "Glanzpunkt-Exponent:" +msgid "Specular exponent" +msgstr "Glanzpunkt-Exponent" #: ../src/extension/internal/filter/bumps.h:124 -msgid "Cone angle:" +msgid "Cone angle" msgstr "Kegelwinkel" #: ../src/extension/internal/filter/bumps.h:127 @@ -6494,7 +6659,7 @@ msgstr "_Hintergrund:" #: ../src/extension/internal/filter/bumps.h:322 #: ../src/extension/internal/filter/transparency.h:57 -#: ../src/filter-enums.cpp:29 ../src/selection-describer.cpp:55 +#: ../src/filter-enums.cpp:29 ../src/selection-describer.cpp:56 msgid "Image" msgstr "Bild" @@ -6503,8 +6668,8 @@ msgid "Blurred image" msgstr "Verschwommenes Bild" #: ../src/extension/internal/filter/bumps.h:325 -msgid "Background opacity:" -msgstr "Hintergrund-Deckkraft:" +msgid "Background opacity" +msgstr "Hintergrund-Deckkraft" #: ../src/extension/internal/filter/bumps.h:327 #: ../src/extension/internal/filter/color.h:1040 @@ -6554,7 +6719,7 @@ msgstr "Brillianz" #: ../src/extension/internal/filter/color.h:75 #: ../src/extension/internal/filter/color.h:1417 -msgid "Over-saturation:" +msgid "Over-saturation" msgstr "Übersättigung" #: ../src/extension/internal/filter/color.h:77 @@ -6575,10 +6740,23 @@ msgstr "Helligkeitsfilter" msgid "Channel Painting" msgstr "Kanalfarbe" +#: ../src/extension/internal/filter/color.h:156 +#: ../src/extension/internal/filter/color.h:257 +#: ../src/extension/internal/filter/paint.h:87 ../src/flood-context.cpp:232 +#: ../src/ui/dialog/inkscape-preferences.cpp:937 +#: ../src/widgets/sp-color-icc-selector.cpp:362 +#: ../src/widgets/sp-color-icc-selector.cpp:367 +#: ../src/widgets/sp-color-scales.cpp:458 +#: ../src/widgets/sp-color-scales.cpp:459 ../src/widgets/tweak-toolbar.cpp:320 +#: ../share/extensions/color_randomize.inx.h:4 +msgid "Saturation" +msgstr "Sättigung" + #: ../src/extension/internal/filter/color.h:160 #: ../src/extension/internal/filter/transparency.h:135 -msgid "Alpha:" -msgstr "Alpha:" +#: ../src/filter-enums.cpp:103 ../src/flood-context.cpp:234 +msgid "Alpha" +msgstr "Alpha" #: ../src/extension/internal/filter/color.h:174 msgid "Replace RGB by any color" @@ -6589,20 +6767,20 @@ msgid "Color Shift" msgstr "Farbverschiebung" #: ../src/extension/internal/filter/color.h:256 -msgid "Shift (°):" -msgstr "Verschiebung (°):" +msgid "Shift (°)" +msgstr "Verschiebung (°)" #: ../src/extension/internal/filter/color.h:265 msgid "Rotate and desaturate hue" msgstr "Farbton rotieren nud entsättigen" #: ../src/extension/internal/filter/color.h:321 -msgid "Harsh light:" +msgid "Harsh light" msgstr "Grelles Licht" #: ../src/extension/internal/filter/color.h:322 -msgid "Normal light:" -msgstr "Normales Licht:" +msgid "Normal light" +msgstr "Normales Licht" #: ../src/extension/internal/filter/color.h:323 msgid "Duotone" @@ -6658,7 +6836,7 @@ msgid "Duochrome" msgstr "Duochrom" #: ../src/extension/internal/filter/color.h:513 -msgid "Fluorescence level:" +msgid "Fluorescence level" msgstr "Fluoreszenz-Level" #: ../src/extension/internal/filter/color.h:514 @@ -6697,46 +6875,25 @@ msgstr "Konvertiert Luminanzwerte in eine duochrome Palette" msgid "Extract Channel" msgstr "Kanal extrahieren" -#: ../src/extension/internal/filter/color.h:637 ../src/filter-enums.cpp:100 -#: ../src/flood-context.cpp:228 ../src/widgets/sp-color-icc-selector.cpp:227 -#: ../src/widgets/sp-color-scales.cpp:429 -#: ../src/widgets/sp-color-scales.cpp:430 -msgid "Red" -msgstr "Rot" - -#: ../src/extension/internal/filter/color.h:638 ../src/filter-enums.cpp:101 -#: ../src/flood-context.cpp:229 ../src/widgets/sp-color-icc-selector.cpp:227 -#: ../src/widgets/sp-color-scales.cpp:432 -#: ../src/widgets/sp-color-scales.cpp:433 -msgid "Green" -msgstr "Grün" - -#: ../src/extension/internal/filter/color.h:639 ../src/filter-enums.cpp:102 -#: ../src/flood-context.cpp:230 ../src/widgets/sp-color-icc-selector.cpp:227 -#: ../src/widgets/sp-color-scales.cpp:435 -#: ../src/widgets/sp-color-scales.cpp:436 -msgid "Blue" -msgstr "Blau" - #: ../src/extension/internal/filter/color.h:640 -#: ../src/widgets/sp-color-icc-selector.cpp:231 -#: ../src/widgets/sp-color-icc-selector.cpp:232 +#: ../src/widgets/sp-color-icc-selector.cpp:369 +#: ../src/widgets/sp-color-icc-selector.cpp:374 #: ../src/widgets/sp-color-scales.cpp:483 #: ../src/widgets/sp-color-scales.cpp:484 msgid "Cyan" msgstr "Zyan" #: ../src/extension/internal/filter/color.h:641 -#: ../src/widgets/sp-color-icc-selector.cpp:231 -#: ../src/widgets/sp-color-icc-selector.cpp:232 +#: ../src/widgets/sp-color-icc-selector.cpp:370 +#: ../src/widgets/sp-color-icc-selector.cpp:375 #: ../src/widgets/sp-color-scales.cpp:486 #: ../src/widgets/sp-color-scales.cpp:487 msgid "Magenta" msgstr "Magenta" #: ../src/extension/internal/filter/color.h:642 -#: ../src/widgets/sp-color-icc-selector.cpp:231 -#: ../src/widgets/sp-color-icc-selector.cpp:232 +#: ../src/widgets/sp-color-icc-selector.cpp:371 +#: ../src/widgets/sp-color-icc-selector.cpp:376 #: ../src/widgets/sp-color-scales.cpp:489 #: ../src/widgets/sp-color-scales.cpp:490 msgid "Yellow" @@ -6758,20 +6915,13 @@ msgstr "Extrahiere Farbkanal als ein transparentes Bild" msgid "Fade to Black or White" msgstr "Zu Schwarz oder Weiß ausblenden" -#: ../src/extension/internal/filter/color.h:742 -#: ../src/extension/internal/filter/image.h:56 -#: ../src/extension/internal/filter/morphology.h:66 -#: ../src/extension/internal/filter/paint.h:345 -msgid "Level:" -msgstr "Ebene:" - #: ../src/extension/internal/filter/color.h:743 msgid "Fade to:" msgstr "Ausblenden zu:" #: ../src/extension/internal/filter/color.h:744 #: ../src/ui/widget/selected-style.cpp:254 -#: ../src/widgets/sp-color-icc-selector.cpp:231 +#: ../src/widgets/sp-color-icc-selector.cpp:372 #: ../src/widgets/sp-color-scales.cpp:492 #: ../src/widgets/sp-color-scales.cpp:493 msgid "Black" @@ -6826,7 +6976,7 @@ msgid "Green and blue" msgstr "Grün und Blau" #: ../src/extension/internal/filter/color.h:913 -msgid "Light transparency:" +msgid "Light transparency" msgstr "Lichttransparenz:" #: ../src/extension/internal/filter/color.h:914 @@ -6846,12 +6996,19 @@ msgid "Manage hue, lightness and transparency inversions" msgstr "Verwalten Farbton, Helligkeit und Transparenz-Umkehrungen" #: ../src/extension/internal/filter/color.h:1042 -msgid "Lights:" -msgstr "Lichter:" +msgid "Lights" +msgstr "Lichter" #: ../src/extension/internal/filter/color.h:1043 -msgid "Shadows:" -msgstr "Schatten:" +msgid "Shadows" +msgstr "Schatten" + +#: ../src/extension/internal/filter/color.h:1044 +#: ../src/extension/internal/filter/paint.h:356 ../src/filter-enums.cpp:32 +#: ../src/live_effects/effect.cpp:97 ../src/live_effects/lpe-offset.cpp:31 +#: ../src/widgets/gradient-toolbar.cpp:1172 +msgid "Offset" +msgstr "Versatz" #: ../src/extension/internal/filter/color.h:1052 msgid "Modify lights and shadows separately" @@ -6861,10 +7018,6 @@ msgstr "Licht und Schatten einzeln verändern" msgid "Lightness-Contrast" msgstr "Helligkeit - Kontrast" -#: ../src/extension/internal/filter/color.h:1114 -msgid "Contrast:" -msgstr "Kontrast:" - #: ../src/extension/internal/filter/color.h:1122 msgid "Modify lightness and contrast separately" msgstr "Helligkeit und Kontrast einzeln anpassen" @@ -6883,11 +7036,9 @@ msgstr "Rot-Versatz:" #: ../src/extension/internal/filter/color.h:1307 #: ../src/extension/internal/filter/color.h:1310 #: ../src/extension/internal/filter/color.h:1313 -#: ../src/ui/dialog/object-attributes.cpp:66 -#: ../src/ui/dialog/object-attributes.cpp:74 ../src/ui/dialog/tile.cpp:618 -#: ../src/widgets/desktop-widget.cpp:667 ../src/widgets/node-toolbar.cpp:591 -msgid "X:" -msgstr "X:" +#: ../src/ui/dialog/input.cpp:1616 ../src/ui/dialog/layers.cpp:915 +msgid "X" +msgstr "X" #: ../src/extension/internal/filter/color.h:1196 #: ../src/extension/internal/filter/color.h:1199 @@ -6895,10 +7046,8 @@ msgstr "X:" #: ../src/extension/internal/filter/color.h:1308 #: ../src/extension/internal/filter/color.h:1311 #: ../src/extension/internal/filter/color.h:1314 -#: ../src/ui/dialog/object-attributes.cpp:67 -#: ../src/ui/dialog/object-attributes.cpp:75 ../src/ui/dialog/tile.cpp:619 -#: ../src/widgets/desktop-widget.cpp:677 ../src/widgets/node-toolbar.cpp:609 -msgid "Y:" +#: ../src/ui/dialog/input.cpp:1616 +msgid "Y" msgstr "Y:" #: ../src/extension/internal/filter/color.h:1197 @@ -6946,21 +7095,21 @@ msgid "Quadritone fantasy" msgstr "Vierfarben-Fantasie" #: ../src/extension/internal/filter/color.h:1410 -#: ../src/extension/internal/filter/color.h:1608 -msgid "Hue distribution (°):" -msgstr "Farbton Verteilung (°):" +msgid "Hue distribution (°)" +msgstr "Farbton Verteilung (°)" #: ../src/extension/internal/filter/color.h:1411 -msgid "Colors:" -msgstr "Farben:" +#: ../share/extensions/svgcalendar.inx.h:19 +msgid "Colors" +msgstr "Farben" #: ../src/extension/internal/filter/color.h:1432 msgid "Replace hue by two colors" msgstr "Farbwert durch zwei Farben ersetzen" #: ../src/extension/internal/filter/color.h:1496 -msgid "Hue rotation (°):" -msgstr "Farbton Rotation (°):" +msgid "Hue rotation (°)" +msgstr "Farbton Rotation (°)" #: ../src/extension/internal/filter/color.h:1499 msgid "Moonarize" @@ -6995,20 +7144,24 @@ msgid "Global blend:" msgstr "Globales Mischen:" #: ../src/extension/internal/filter/color.h:1598 -msgid "Glow:" -msgstr "Glühen:" +msgid "Glow" +msgstr "Glühen" #: ../src/extension/internal/filter/color.h:1599 msgid "Glow blend:" msgstr "Glühend " #: ../src/extension/internal/filter/color.h:1604 -msgid "Local light:" -msgstr "Lokales Licht:" +msgid "Local light" +msgstr "Lokales Licht" #: ../src/extension/internal/filter/color.h:1605 -msgid "Global light:" -msgstr "Globales Licht:" +msgid "Global light" +msgstr "Globales Licht" + +#: ../src/extension/internal/filter/color.h:1608 +msgid "Hue distribution (°):" +msgstr "Farbton Verteilung (°):" #: ../src/extension/internal/filter/color.h:1619 msgid "" @@ -7070,42 +7223,36 @@ msgstr "Turbulenz" #: ../src/extension/internal/filter/distort.h:87 #: ../src/extension/internal/filter/distort.h:196 -#: ../src/extension/internal/filter/overlays.h:64 #: ../src/extension/internal/filter/paint.h:93 #: ../src/extension/internal/filter/paint.h:695 -msgid "Horizontal frequency:" -msgstr "Horizontale Frequenz:" +msgid "Horizontal frequency" +msgstr "Horizontale Frequenz" #: ../src/extension/internal/filter/distort.h:88 #: ../src/extension/internal/filter/distort.h:197 -#: ../src/extension/internal/filter/overlays.h:65 #: ../src/extension/internal/filter/paint.h:94 #: ../src/extension/internal/filter/paint.h:696 -msgid "Vertical frequency:" -msgstr "Vertikale Frequenz:" +msgid "Vertical frequency" +msgstr "Vertikale Frequenz" #: ../src/extension/internal/filter/distort.h:89 #: ../src/extension/internal/filter/distort.h:198 -#: ../src/extension/internal/filter/overlays.h:66 #: ../src/extension/internal/filter/paint.h:95 #: ../src/extension/internal/filter/paint.h:697 -#: ../src/extension/internal/filter/textures.h:69 -msgid "Complexity:" -msgstr "Kompexität:" +msgid "Complexity" +msgstr "Kompexität" #: ../src/extension/internal/filter/distort.h:90 #: ../src/extension/internal/filter/distort.h:199 -#: ../src/extension/internal/filter/overlays.h:67 #: ../src/extension/internal/filter/paint.h:96 #: ../src/extension/internal/filter/paint.h:698 -#: ../src/extension/internal/filter/textures.h:70 -msgid "Variation:" -msgstr "Variation:" +msgid "Variation" +msgstr "Variation" #: ../src/extension/internal/filter/distort.h:91 #: ../src/extension/internal/filter/distort.h:200 -msgid "Intensity:" -msgstr "Intensität:" +msgid "Intensity" +msgstr "Intensität" #: ../src/extension/internal/filter/distort.h:99 msgid "Blur and displace edges of shapes and pictures" @@ -7184,10 +7331,18 @@ msgstr "Äußerer" msgid "Open" msgstr "Öffnen" +#: ../src/extension/internal/filter/morphology.h:65 +#: ../src/libgdl/gdl-dock-placeholder.c:167 ../src/libgdl/gdl-dock.c:191 +#: ../src/widgets/rect-toolbar.cpp:315 ../src/widgets/spray-toolbar.cpp:132 +#: ../src/widgets/tweak-toolbar.cpp:146 +#: ../share/extensions/interp_att_g.inx.h:10 +msgid "Width" +msgstr "Breite" + #: ../src/extension/internal/filter/morphology.h:69 #: ../src/extension/internal/filter/morphology.h:190 -msgid "Antialiasing:" -msgstr "Kantenglättung:" +msgid "Antialiasing" +msgstr "Kantenglättung" #: ../src/extension/internal/filter/morphology.h:70 msgid "Blur content" @@ -7241,28 +7396,28 @@ msgid "Overlayed" msgstr "Überlagert" #: ../src/extension/internal/filter/morphology.h:184 -msgid "Width 1:" -msgstr "Breite 1:" +msgid "Width 1" +msgstr "Breite 1" #: ../src/extension/internal/filter/morphology.h:185 -msgid "Dilatation 1:" -msgstr "Streckung 1:" +msgid "Dilatation 1" +msgstr "Streckung 1" #: ../src/extension/internal/filter/morphology.h:186 -msgid "Erosion 1:" -msgstr "Erosion 1:" +msgid "Erosion 1" +msgstr "Erosion 1" #: ../src/extension/internal/filter/morphology.h:187 -msgid "Width 2:" -msgstr "Breite 2:" +msgid "Width 2" +msgstr "Breite 2" #: ../src/extension/internal/filter/morphology.h:188 -msgid "Dilatation 2:" -msgstr "Streckung 2:" +msgid "Dilatation 2" +msgstr "Streckung 2" #: ../src/extension/internal/filter/morphology.h:189 -msgid "Erosion 2:" -msgstr "Erosion 2:" +msgid "Erosion 2" +msgstr "Erosion 2" #: ../src/extension/internal/filter/morphology.h:191 msgid "Smooth" @@ -7314,6 +7469,32 @@ msgstr "Rauschen" msgid "Options" msgstr "Optionen" +#: ../src/extension/internal/filter/overlays.h:64 +msgid "Horizontal frequency:" +msgstr "Horizontale Frequenz:" + +#: ../src/extension/internal/filter/overlays.h:65 +msgid "Vertical frequency:" +msgstr "Vertikale Frequenz:" + +#: ../src/extension/internal/filter/overlays.h:66 +#: ../src/extension/internal/filter/textures.h:69 +msgid "Complexity:" +msgstr "Kompexität:" + +#: ../src/extension/internal/filter/overlays.h:67 +#: ../src/extension/internal/filter/textures.h:70 +msgid "Variation:" +msgstr "Variation:" + +#: ../src/extension/internal/filter/overlays.h:68 +msgid "Dilatation:" +msgstr "Erweiterung:" + +#: ../src/extension/internal/filter/overlays.h:69 +msgid "Erosion:" +msgstr "Erosion:" + # !!! correct? #: ../src/extension/internal/filter/overlays.h:72 msgid "Noise color" @@ -7343,8 +7524,8 @@ msgstr "Verbeult" #: ../src/extension/internal/filter/paint.h:88 #: ../src/extension/internal/filter/paint.h:699 -msgid "Noise reduction:" -msgstr "Rauschminderung:" +msgid "Noise reduction" +msgstr "Rauschminderung" #: ../src/extension/internal/filter/paint.h:91 msgid "Grain" @@ -7358,8 +7539,8 @@ msgstr "Körnungsmodus" #: ../src/extension/internal/filter/paint.h:97 #: ../src/extension/internal/filter/transparency.h:207 #: ../src/extension/internal/filter/transparency.h:281 -msgid "Expansion:" -msgstr "Erweiterung:" +msgid "Expansion" +msgstr "Erweiterung" #: ../src/extension/internal/filter/paint.h:100 msgid "Grain blend:" @@ -7375,13 +7556,13 @@ msgstr "Kreuzgravur" #: ../src/extension/internal/filter/paint.h:234 #: ../src/extension/internal/filter/paint.h:337 -msgid "Clean-up:" -msgstr "Bereinigen:" +msgid "Clean-up" +msgstr "Bereinigen" #: ../src/extension/internal/filter/paint.h:238 -#: ../src/widgets/connector-toolbar.cpp:398 -msgid "Length:" -msgstr "Länge:" +#: ../share/extensions/measure.inx.h:11 +msgid "Length" +msgstr "Länge" #: ../src/extension/internal/filter/paint.h:247 msgid "Convert image to an engraving made of vertical and horizontal lines" @@ -7390,24 +7571,24 @@ msgstr "Konvertiere Bild in eine Gravur aus vertikalen und horizontalen Linien" # not sure here -cm- #: ../src/extension/internal/filter/paint.h:331 #: ../src/ui/dialog/align-and-distribute.cpp:1048 -#: ../src/widgets/desktop-widget.cpp:1923 +#: ../src/widgets/desktop-widget.cpp:2000 msgid "Drawing" msgstr "Zeichnung" -#: ../src/extension/internal/filter/paint.h:335 ../src/splivarot.cpp:1983 +#: ../src/extension/internal/filter/paint.h:335 +#: ../src/extension/internal/filter/paint.h:496 +#: ../src/extension/internal/filter/paint.h:590 +#: ../src/extension/internal/filter/paint.h:976 ../src/splivarot.cpp:1988 msgid "Simplify" msgstr "Vereinfachen" # Name des Effekte-submenü, das alle Bitmap-Effekte beinhaltet. #: ../src/extension/internal/filter/paint.h:338 #: ../src/extension/internal/filter/paint.h:709 -msgid "Erase:" +#, fuzzy +msgid "Erase" msgstr "Radieren:" -#: ../src/extension/internal/filter/paint.h:340 -msgid "Smoothness" -msgstr "Glattheit" - #: ../src/extension/internal/filter/paint.h:344 msgid "Melt" msgstr "Schmelz:" @@ -7438,12 +7619,6 @@ msgstr "Konvertiert Bilder nach Duochrome-Zeichnungen" msgid "Electrize" msgstr "Elektrisieren" -#: ../src/extension/internal/filter/paint.h:496 -#: ../src/extension/internal/filter/paint.h:590 -#: ../src/extension/internal/filter/paint.h:976 -msgid "Simplify:" -msgstr "Vereinfachen:" - #: ../src/extension/internal/filter/paint.h:497 #: ../src/extension/internal/filter/paint.h:852 msgid "Effect type:" @@ -7452,7 +7627,8 @@ msgstr "Effekt-Typ:" #: ../src/extension/internal/filter/paint.h:501 #: ../src/extension/internal/filter/paint.h:860 #: ../src/extension/internal/filter/paint.h:975 -msgid "Levels:" +#, fuzzy +msgid "Levels" msgstr "Ebenen:" #: ../src/extension/internal/filter/paint.h:510 @@ -7477,7 +7653,8 @@ msgid "Contrasted" msgstr "Abgestochen" #: ../src/extension/internal/filter/paint.h:591 -msgid "Line width:" +#, fuzzy +msgid "Line width" msgstr "Linienstärke:" #: ../src/extension/internal/filter/paint.h:593 @@ -7499,14 +7676,10 @@ msgid "Noise blend:" msgstr "Rauschmischung:" #: ../src/extension/internal/filter/paint.h:708 -msgid "Grain lightness:" +#, fuzzy +msgid "Grain lightness" msgstr "Körnige Helligkeit:" -#: ../src/extension/internal/filter/paint.h:710 -#: ../src/extension/internal/filter/transparency.h:343 -msgid "Blur:" -msgstr "Unschärfe:" - # !!! correct? #: ../src/extension/internal/filter/paint.h:716 msgid "Points color" @@ -7537,20 +7710,20 @@ msgid "Painting" msgstr "Gemälde" #: ../src/extension/internal/filter/paint.h:868 -msgid "Simplify (primary):" -msgstr "Vereinfachen (Primär):" +msgid "Simplify (primary)" +msgstr "Vereinfachen (Primär)" #: ../src/extension/internal/filter/paint.h:869 -msgid "Simplify (secondary):" -msgstr "Vereinfachen (Sekundär):" +msgid "Simplify (secondary)" +msgstr "Vereinfachen (Sekundär)" #: ../src/extension/internal/filter/paint.h:870 -msgid "Pre-saturation:" -msgstr "Vor-Sättigung:" +msgid "Pre-saturation" +msgstr "Vor-Sättigung" #: ../src/extension/internal/filter/paint.h:871 -msgid "Post-saturation:" -msgstr "Nach-Sättigung:" +msgid "Post-saturation" +msgstr "Nach-Sättigung" #: ../src/extension/internal/filter/paint.h:872 msgid "Simulate antialiasing" @@ -7573,7 +7746,8 @@ msgid "Snow crest" msgstr "Schneekrone" #: ../src/extension/internal/filter/protrusions.h:50 -msgid "Drift Size:" +#, fuzzy +msgid "Drift Size" msgstr "Schneegröße" #: ../src/extension/internal/filter/protrusions.h:58 @@ -7585,15 +7759,18 @@ msgid "Drop Shadow" msgstr "Abgesetzter Schatten" #: ../src/extension/internal/filter/shadows.h:61 -msgid "Blur radius (px):" +#, fuzzy +msgid "Blur radius (px)" msgstr "Unschärfen Radius" #: ../src/extension/internal/filter/shadows.h:62 -msgid "Horizontal offset (px):" +#, fuzzy +msgid "Horizontal offset (px)" msgstr "Horizontaler Versatz (px):" #: ../src/extension/internal/filter/shadows.h:63 -msgid "Vertical offset (px):" +#, fuzzy +msgid "Vertical offset (px)" msgstr "Vertikaler Versatz (px):" #: ../src/extension/internal/filter/shadows.h:64 @@ -7687,15 +7864,15 @@ msgid "Source:" msgstr "Quelle:" #: ../src/extension/internal/filter/transparency.h:56 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1600 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1605 msgid "Background" msgstr "Hintergrund" #: ../src/extension/internal/filter/transparency.h:59 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2605 -#: ../src/ui/dialog/input.cpp:1088 ../src/widgets/erasor-toolbar.cpp:129 -#: ../src/widgets/pencil-toolbar.cpp:162 ../src/widgets/spray-toolbar.cpp:203 -#: ../src/widgets/tweak-toolbar.cpp:273 ../share/extensions/extrude.inx.h:2 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2610 +#: ../src/ui/dialog/input.cpp:1088 ../src/widgets/erasor-toolbar.cpp:127 +#: ../src/widgets/pencil-toolbar.cpp:161 ../src/widgets/spray-toolbar.cpp:202 +#: ../src/widgets/tweak-toolbar.cpp:272 ../share/extensions/extrude.inx.h:2 #: ../share/extensions/triangle.inx.h:8 msgid "Mode:" msgstr "Modus:" @@ -7718,7 +7895,8 @@ msgstr "Helligkeitsradierer" #: ../src/extension/internal/filter/transparency.h:209 #: ../src/extension/internal/filter/transparency.h:283 -msgid "Global opacity:" +#, fuzzy +msgid "Global opacity" msgstr "Globales Deckkraft:" #: ../src/extension/internal/filter/transparency.h:218 @@ -7789,35 +7967,35 @@ msgstr "GIMP-Farbverlauf (*.ggr)" msgid "Gradients used in GIMP" msgstr "Farbverläufe von GIMP" -#: ../src/extension/internal/grid.cpp:201 ../src/ui/widget/panel.cpp:113 +#: ../src/extension/internal/grid.cpp:209 ../src/ui/widget/panel.cpp:117 msgid "Grid" msgstr "Gitter" -#: ../src/extension/internal/grid.cpp:203 +#: ../src/extension/internal/grid.cpp:211 msgid "Line Width:" msgstr "Linienstärke" -#: ../src/extension/internal/grid.cpp:204 +#: ../src/extension/internal/grid.cpp:212 msgid "Horizontal Spacing:" msgstr "Horizontale Abstände" -#: ../src/extension/internal/grid.cpp:205 +#: ../src/extension/internal/grid.cpp:213 msgid "Vertical Spacing:" msgstr "Vertikale Abstände" -#: ../src/extension/internal/grid.cpp:206 +#: ../src/extension/internal/grid.cpp:214 msgid "Horizontal Offset:" msgstr "Horizontaler Versatz" -#: ../src/extension/internal/grid.cpp:207 +#: ../src/extension/internal/grid.cpp:215 msgid "Vertical Offset:" msgstr "Vertikaler Versatz" -#: ../src/extension/internal/grid.cpp:211 +#: ../src/extension/internal/grid.cpp:219 #: ../share/extensions/draw_from_triangle.inx.h:58 #: ../share/extensions/eqtexsvg.inx.h:4 #: ../share/extensions/foldablebox.inx.h:9 -#: ../share/extensions/funcplot.inx.h:38 ../share/extensions/gears.inx.h:11 +#: ../share/extensions/funcplot.inx.h:38 #: ../share/extensions/grid_cartesian.inx.h:23 #: ../share/extensions/grid_isometric.inx.h:11 #: ../share/extensions/grid_polar.inx.h:22 @@ -7832,6 +8010,8 @@ msgstr "Vertikaler Versatz" #: ../share/extensions/render_barcode.inx.h:5 #: ../share/extensions/render_barcode_datamatrix.inx.h:5 #: ../share/extensions/render_barcode_qrcode.inx.h:18 +#: ../share/extensions/render_gears.inx.h:11 +#: ../share/extensions/render_gear_rack.inx.h:5 #: ../share/extensions/rtree.inx.h:4 ../share/extensions/spirograph.inx.h:10 #: ../share/extensions/svgcalendar.inx.h:38 #: ../share/extensions/triangle.inx.h:14 @@ -7839,14 +8019,14 @@ msgstr "Vertikaler Versatz" msgid "Render" msgstr "Rendern" -#: ../src/extension/internal/grid.cpp:212 +#: ../src/extension/internal/grid.cpp:220 #: ../src/ui/dialog/document-properties.cpp:148 -#: ../src/ui/dialog/inkscape-preferences.cpp:768 -#: ../src/widgets/toolbox.cpp:1822 +#: ../src/ui/dialog/inkscape-preferences.cpp:776 +#: ../src/widgets/toolbox.cpp:1826 msgid "Grids" msgstr "Gitter" -#: ../src/extension/internal/grid.cpp:215 +#: ../src/extension/internal/grid.cpp:223 msgid "Draw a path which is a grid" msgstr "Pfad zeichnen, der ein Gitter ist" @@ -7878,63 +8058,62 @@ msgstr "LaTeX-PSTricks-Datei" msgid "LaTeX Print" msgstr "LaTeX-Druck" -#: ../src/extension/internal/odf.cpp:2445 +#: ../src/extension/internal/odf.cpp:2148 msgid "OpenDocument Drawing Output" msgstr "OpenDocument-Zeichnungsausgabe" -#: ../src/extension/internal/odf.cpp:2450 +#: ../src/extension/internal/odf.cpp:2153 msgid "OpenDocument drawing (*.odg)" msgstr "OpenDocument-Zeichnung (*.odg)" -#: ../src/extension/internal/odf.cpp:2451 +#: ../src/extension/internal/odf.cpp:2154 msgid "OpenDocument drawing file" msgstr "OpenDocument-Zeichnungsdatei" #. TRANSLATORS: The following are document crop settings for PDF import #. more info: http://www.acrobatusers.com/tech_corners/javascript_corner/tips/2006/page_bounds/ +#: ../src/extension/internal/pdf-input-cairo.cpp:52 #: ../src/extension/internal/pdfinput/pdf-input.cpp:70 msgid "media box" msgstr "Medienrahmen" +#: ../src/extension/internal/pdf-input-cairo.cpp:53 #: ../src/extension/internal/pdfinput/pdf-input.cpp:71 msgid "crop box" msgstr "Maskenrahmen" +#: ../src/extension/internal/pdf-input-cairo.cpp:54 #: ../src/extension/internal/pdfinput/pdf-input.cpp:72 msgid "trim box" msgstr "Endformatrahmen" +#: ../src/extension/internal/pdf-input-cairo.cpp:55 #: ../src/extension/internal/pdfinput/pdf-input.cpp:73 msgid "bleed box" msgstr "Ausschnittrahmen" +#: ../src/extension/internal/pdf-input-cairo.cpp:56 #: ../src/extension/internal/pdfinput/pdf-input.cpp:74 msgid "art box" msgstr "Objektrahmen" -#: ../src/extension/internal/pdfinput/pdf-input.cpp:86 -msgid "Select page:" -msgstr "Seite auswählen:" - -#. Display total number of pages -#: ../src/extension/internal/pdfinput/pdf-input.cpp:105 -#, c-format -msgid "out of %i" -msgstr "von %i" - #. Crop settings +#: ../src/extension/internal/pdf-input-cairo.cpp:94 #: ../src/extension/internal/pdfinput/pdf-input.cpp:111 msgid "Clip to:" msgstr "Beschneide zu:" +#: ../src/extension/internal/pdf-input-cairo.cpp:105 #: ../src/extension/internal/pdfinput/pdf-input.cpp:122 msgid "Page settings" msgstr "Seiteneinstellungen" +#: ../src/extension/internal/pdf-input-cairo.cpp:106 #: ../src/extension/internal/pdfinput/pdf-input.cpp:123 msgid "Precision of approximating gradient meshes:" msgstr "Präzision zur Annäherung an gradient meshes:" +#: ../src/extension/internal/pdf-input-cairo.cpp:107 #: ../src/extension/internal/pdfinput/pdf-input.cpp:124 msgid "" "Note: setting the precision too high may result in a large SVG file " @@ -7943,60 +8122,82 @@ msgstr "" "Hinweis: Die Präzision zu hoch einzustellen kann zu einem großen SVG " "und schlechter Performance führen." +#: ../src/extension/internal/pdf-input-cairo.cpp:117 #: ../src/extension/internal/pdfinput/pdf-input.cpp:134 msgid "rough" msgstr "rau" #. Text options +#: ../src/extension/internal/pdf-input-cairo.cpp:121 #: ../src/extension/internal/pdfinput/pdf-input.cpp:138 msgid "Text handling:" msgstr "Behandlung von Text:" +#: ../src/extension/internal/pdf-input-cairo.cpp:123 +#: ../src/extension/internal/pdf-input-cairo.cpp:124 #: ../src/extension/internal/pdfinput/pdf-input.cpp:140 #: ../src/extension/internal/pdfinput/pdf-input.cpp:141 msgid "Import text as text" msgstr "Fließtext in Text umwandeln" +#: ../src/extension/internal/pdf-input-cairo.cpp:125 #: ../src/extension/internal/pdfinput/pdf-input.cpp:142 msgid "Replace PDF fonts by closest-named installed fonts" msgstr "PDF-Fonts durch namenähnlichste installierte Fonts ersetzen" +#: ../src/extension/internal/pdf-input-cairo.cpp:128 #: ../src/extension/internal/pdfinput/pdf-input.cpp:145 msgid "Embed images" msgstr "Alle Bilder einbetten" +#: ../src/extension/internal/pdf-input-cairo.cpp:130 #: ../src/extension/internal/pdfinput/pdf-input.cpp:147 msgid "Import settings" msgstr "Importeinstellungen" +#: ../src/extension/internal/pdf-input-cairo.cpp:238 #: ../src/extension/internal/pdfinput/pdf-input.cpp:255 msgid "PDF Import Settings" msgstr "PDF-Importeinstellungen" +#: ../src/extension/internal/pdf-input-cairo.cpp:370 #: ../src/extension/internal/pdfinput/pdf-input.cpp:400 msgctxt "PDF input precision" msgid "rough" msgstr "rau" +#: ../src/extension/internal/pdf-input-cairo.cpp:371 #: ../src/extension/internal/pdfinput/pdf-input.cpp:401 msgctxt "PDF input precision" msgid "medium" msgstr "Mittel" +#: ../src/extension/internal/pdf-input-cairo.cpp:372 #: ../src/extension/internal/pdfinput/pdf-input.cpp:402 msgctxt "PDF input precision" msgid "fine" msgstr "fein" +#: ../src/extension/internal/pdf-input-cairo.cpp:373 #: ../src/extension/internal/pdfinput/pdf-input.cpp:403 msgctxt "PDF input precision" msgid "very fine" msgstr "sehr fein" +#: ../src/extension/internal/pdf-input-cairo.cpp:646 #: ../src/extension/internal/pdfinput/pdf-input.cpp:762 msgid "PDF Input" msgstr "PDF einlesen" +#: ../src/extension/internal/pdf-input-cairo.cpp:651 +#, fuzzy +msgid "Adobe PDF via poppler-cairo (*.pdf)" +msgstr "PDF durch Cairo (*.pdf)" + +#: ../src/extension/internal/pdf-input-cairo.cpp:652 +msgid "PDF Document" +msgstr "PDF-Dokument" + #: ../src/extension/internal/pdfinput/pdf-input.cpp:767 msgid "Adobe PDF (*.pdf)" msgstr "Adobe PDF (*.pdf)" @@ -8093,6 +8294,52 @@ msgstr "Komprimiertes SVG (*.svgz)" msgid "Scalable Vector Graphics format compressed with GZip" msgstr "Scalable-Vector-Graphics-Format, mit GZip komprimiert" +#: ../src/extension/internal/vsd-input.cpp:267 +msgid "VSD Input" +msgstr "VSD einlesen" + +#: ../src/extension/internal/vsd-input.cpp:272 +msgid "Microsoft Visio Diagram (*.vsd)" +msgstr "Microsoft Visio Diagramm (*.vsd)" + +#: ../src/extension/internal/vsd-input.cpp:273 +msgid "File format used by Microsoft Visio 6 and later" +msgstr "Dateiformat wird von Microsoft Visio 6 und später genutzt" + +#: ../src/extension/internal/vsd-input.cpp:280 +msgid "VDX Input" +msgstr "VDX einlesen" + +#: ../src/extension/internal/vsd-input.cpp:285 +#, fuzzy +msgid "Microsoft Visio XML Diagram (*.vdx)" +msgstr "Microsoft XAML (*.xaml)" + +#: ../src/extension/internal/vsd-input.cpp:286 +msgid "File format used by Microsoft Visio 2010 and later" +msgstr "Dateiformat wird von Microsoft Visio 2010 und später genutzt" + +#: ../src/extension/internal/vsd-input.cpp:293 +msgid "VSDM Input" +msgstr "VSDM einlesen" + +#: ../src/extension/internal/vsd-input.cpp:298 +msgid "Microsoft Visio 2013 drawing (*.vsdm)" +msgstr "Microsoft Visio 2013 Zeichnung (*´.vsdm)" + +#: ../src/extension/internal/vsd-input.cpp:299 +#: ../src/extension/internal/vsd-input.cpp:312 +msgid "File format used by Microsoft Visio 2013 and later" +msgstr "Dateiformat wird von Microsoft Visio 2013 und später genutzt" + +#: ../src/extension/internal/vsd-input.cpp:306 +msgid "VSDX Input" +msgstr "VSDX einlesen" + +#: ../src/extension/internal/vsd-input.cpp:311 +msgid "Microsoft Visio 2013 drawing (*.vsdx)" +msgstr "Microsoft Visio 2013 Zeichnung (*´.vsdx)" + #: ../src/extension/internal/wpg-input.cpp:121 msgid "WPG Input" msgstr "WPG einlesen" @@ -8119,59 +8366,59 @@ msgstr "" "Die automatische Ermittlung des Formats ist fehlgeschlagen. Die Datei wird " "als SVG-Dokument geöffnet." -#: ../src/file.cpp:151 +#: ../src/file.cpp:153 msgid "default.svg" msgstr "default.de.svg" -#: ../src/file.cpp:282 +#: ../src/file.cpp:284 msgid "Broken links have been changed to point to existing files." msgstr "" "Defekte Verknüpfungen wurden geändert, um vorhandene Dateien zu verweisen." -#: ../src/file.cpp:293 ../src/file.cpp:1216 +#: ../src/file.cpp:295 ../src/file.cpp:1218 #, c-format msgid "Failed to load the requested file %s" msgstr "Laden der gewünschten Datei %s fehlgeschlagen" -#: ../src/file.cpp:319 +#: ../src/file.cpp:321 msgid "Document not saved yet. Cannot revert." msgstr "Dokument noch nicht gespeichtert. Kann nicht zurücksetzen." -#: ../src/file.cpp:325 +#: ../src/file.cpp:327 #, c-format msgid "Changes will be lost! Are you sure you want to reload document %s?" msgstr "" "Änderungen gehen verloren! Sind Sie sicher, dass Sie das Dokument %s erneut " "laden möchten?" -#: ../src/file.cpp:354 +#: ../src/file.cpp:356 msgid "Document reverted." msgstr "Dokument zurückgesetzt." -#: ../src/file.cpp:356 +#: ../src/file.cpp:358 msgid "Document not reverted." msgstr "Dokument nicht zurückgesetzt." -#: ../src/file.cpp:506 +#: ../src/file.cpp:508 msgid "Select file to open" msgstr "Wählen Sie die zu öffnende Datei" -#: ../src/file.cpp:590 +#: ../src/file.cpp:592 msgid "Clean up document" msgstr "Dokument bereinigen" -#: ../src/file.cpp:595 +#: ../src/file.cpp:597 #, c-format msgid "Removed %i unused definition in <defs>." msgid_plural "Removed %i unused definitions in <defs>." msgstr[0] "%i überflüssiges Element aus <defs> entfernt." msgstr[1] "%i überflüssige Elemente aus <defs> entfernt." -#: ../src/file.cpp:600 +#: ../src/file.cpp:602 msgid "No unused definitions in <defs>." msgstr "Keine überflüssigen Elemente in <defs>." -#: ../src/file.cpp:631 +#: ../src/file.cpp:633 #, c-format msgid "" "No Inkscape extension found to save document (%s). This may have been " @@ -8180,12 +8427,12 @@ msgstr "" "Keine vorhandene Erweiterung von Inkscape kann das Dokument (%s) sichern. " "Dies Ursache dafür ist möglicherweise eine unbekannte Dateinamenendung." -#: ../src/file.cpp:632 ../src/file.cpp:640 ../src/file.cpp:648 -#: ../src/file.cpp:654 ../src/file.cpp:659 +#: ../src/file.cpp:634 ../src/file.cpp:642 ../src/file.cpp:650 +#: ../src/file.cpp:656 ../src/file.cpp:661 msgid "Document not saved." msgstr "Dokument wurde nicht gespeichert." -#: ../src/file.cpp:639 +#: ../src/file.cpp:641 #, c-format msgid "" "File %s is write protected. Please remove write protection and try again." @@ -8193,60 +8440,60 @@ msgstr "" "Datei %s ist schreibgeschützt! Bitte entfernen Sie den Schreibschutz und " "versuchen es dann erneut." -#: ../src/file.cpp:647 +#: ../src/file.cpp:649 #, c-format msgid "File %s could not be saved." msgstr "Datei %s konnte nicht gespeichert werden." -#: ../src/file.cpp:677 ../src/file.cpp:679 +#: ../src/file.cpp:679 ../src/file.cpp:681 msgid "Document saved." msgstr "Dokument wurde gespeichert." #. We are saving for the first time; create a unique default filename -#: ../src/file.cpp:827 ../src/file.cpp:1379 +#: ../src/file.cpp:829 ../src/file.cpp:1381 #, c-format msgid "drawing%s" msgstr "Zeichnung%s" -#: ../src/file.cpp:833 +#: ../src/file.cpp:835 #, c-format msgid "drawing-%d%s" msgstr "Zeichnung-%d%s" -#: ../src/file.cpp:837 +#: ../src/file.cpp:839 #, c-format msgid "%s" msgstr "%s" -#: ../src/file.cpp:852 +#: ../src/file.cpp:854 msgid "Select file to save a copy to" msgstr "Datei wählen, in die eine Kopie gespeichert werden soll" -#: ../src/file.cpp:854 +#: ../src/file.cpp:856 msgid "Select file to save to" msgstr "Datei wählen, in die gespeichert werden soll" -#: ../src/file.cpp:960 ../src/file.cpp:962 +#: ../src/file.cpp:962 ../src/file.cpp:964 msgid "No changes need to be saved." msgstr "Es müssen keine Änderungen gespeichert werden." -#: ../src/file.cpp:981 +#: ../src/file.cpp:983 msgid "Saving document..." msgstr "Dokument wird gespeichert…" -#: ../src/file.cpp:1213 ../src/ui/dialog/ocaldialogs.cpp:1238 +#: ../src/file.cpp:1215 ../src/ui/dialog/ocaldialogs.cpp:1244 msgid "Import" msgstr "Importieren" -#: ../src/file.cpp:1263 +#: ../src/file.cpp:1265 msgid "Select file to import" msgstr "Wählen Sie die zu importierende Datei" -#: ../src/file.cpp:1401 +#: ../src/file.cpp:1403 msgid "Select file to export to" msgstr "Wählen Sie die Datei, in die exportiert werden soll" -#: ../src/file.cpp:1654 +#: ../src/file.cpp:1656 msgid "Import Clip Art" msgstr "Importiere Clipart" @@ -8278,11 +8525,6 @@ msgstr "Füllen" msgid "Merge" msgstr "Zusammenführen" -#: ../src/filter-enums.cpp:32 ../src/live_effects/effect.cpp:98 -#: ../src/widgets/gradient-toolbar.cpp:1172 -msgid "Offset" -msgstr "Versatz" - #: ../src/filter-enums.cpp:33 msgid "Specular Lighting" msgstr "Beleuchtung mit Glanzlichtern" @@ -8332,7 +8574,7 @@ msgid "Luminance to Alpha" msgstr "Leuchtkraft zu Alpha" #. File -#: ../src/filter-enums.cpp:70 ../src/verbs.cpp:2291 +#: ../src/filter-enums.cpp:70 ../src/verbs.cpp:2296 #: ../share/extensions/jessyInk_mouseHandler.inx.h:3 #: ../share/extensions/jessyInk_transitions.inx.h:7 msgid "Default" @@ -8342,7 +8584,7 @@ msgstr "Vorgabe" msgid "Arithmetic" msgstr "Arithmetisch" -#: ../src/filter-enums.cpp:92 ../src/selection-chemistry.cpp:486 +#: ../src/filter-enums.cpp:92 ../src/selection-chemistry.cpp:516 msgid "Duplicate" msgstr "Duplizieren" @@ -8350,34 +8592,6 @@ msgstr "Duplizieren" msgid "Wrap" msgstr "Umbrechen" -# CHECK -#: ../src/filter-enums.cpp:94 ../src/live_effects/lpe-ruler.cpp:32 -#: ../src/ui/dialog/filter-effects-dialog.cpp:514 -#: ../src/ui/dialog/inkscape-preferences.cpp:333 -#: ../src/ui/dialog/inkscape-preferences.cpp:642 -#: ../src/ui/dialog/inkscape-preferences.cpp:1247 -#: ../src/ui/dialog/inkscape-preferences.cpp:1404 -#: ../src/ui/dialog/inkscape-preferences.cpp:1799 -#: ../src/ui/dialog/input.cpp:742 ../src/ui/dialog/input.cpp:743 -#: ../src/ui/dialog/input.cpp:1571 ../src/ui/dialog/input.cpp:1625 -#: ../src/verbs.cpp:2288 ../src/widgets/gradient-toolbar.cpp:1128 -#: ../src/widgets/pencil-toolbar.cpp:190 -#: ../share/extensions/gcodetools_area.inx.h:48 -#: ../share/extensions/gcodetools_dxf_points.inx.h:20 -#: ../share/extensions/gcodetools_engraving.inx.h:26 -#: ../share/extensions/gcodetools_graffiti.inx.h:37 -#: ../share/extensions/gcodetools_lathe.inx.h:41 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:30 -#: ../share/extensions/grid_polar.inx.h:4 -#: ../share/extensions/guides_creator.inx.h:7 -#: ../share/extensions/scour.inx.h:18 -msgid "None" -msgstr "Keine" - -#: ../src/filter-enums.cpp:103 ../src/flood-context.cpp:234 -msgid "Alpha" -msgstr "Alpha" - #: ../src/filter-enums.cpp:109 msgid "Erode" msgstr "Erodieren" @@ -8406,30 +8620,14 @@ msgstr "Spotlight" msgid "Visible Colors" msgstr "Sichtbare Farben" -#: ../src/flood-context.cpp:231 ../src/widgets/sp-color-icc-selector.cpp:229 -#: ../src/widgets/sp-color-icc-selector.cpp:230 +#: ../src/flood-context.cpp:231 ../src/widgets/sp-color-icc-selector.cpp:361 +#: ../src/widgets/sp-color-icc-selector.cpp:365 #: ../src/widgets/sp-color-scales.cpp:455 -#: ../src/widgets/sp-color-scales.cpp:456 ../src/widgets/tweak-toolbar.cpp:305 +#: ../src/widgets/sp-color-scales.cpp:456 ../src/widgets/tweak-toolbar.cpp:304 #: ../share/extensions/color_randomize.inx.h:3 msgid "Hue" msgstr "Farbton" -#: ../src/flood-context.cpp:232 ../src/ui/dialog/inkscape-preferences.cpp:929 -#: ../src/widgets/sp-color-icc-selector.cpp:229 -#: ../src/widgets/sp-color-icc-selector.cpp:230 -#: ../src/widgets/sp-color-scales.cpp:458 -#: ../src/widgets/sp-color-scales.cpp:459 ../src/widgets/tweak-toolbar.cpp:321 -#: ../share/extensions/color_randomize.inx.h:4 -msgid "Saturation" -msgstr "Sättigung" - -#: ../src/flood-context.cpp:233 ../src/widgets/sp-color-icc-selector.cpp:230 -#: ../src/widgets/sp-color-scales.cpp:461 -#: ../src/widgets/sp-color-scales.cpp:462 ../src/widgets/tweak-toolbar.cpp:337 -#: ../share/extensions/color_randomize.inx.h:5 -msgid "Lightness" -msgstr "Helligkeit" - # CHECK #: ../src/flood-context.cpp:245 msgctxt "Flood autogap" @@ -8502,6 +8700,18 @@ msgstr "" "Zeichne über Flächen um zur Füllung hinzuzufügen, Alt für " "Füllen durch Berührung" +#: ../src/gradient-chemistry.cpp:1568 +msgid "Invert gradient colors" +msgstr "Farbverlauf invertieren" + +#: ../src/gradient-chemistry.cpp:1594 +msgid "Reverse gradient" +msgstr "Farbverlauf umkehren" + +#: ../src/gradient-chemistry.cpp:1608 ../src/widgets/gradient-selector.cpp:227 +msgid "Delete swatch" +msgstr "Zwischenfarbe löschen" + #: ../src/gradient-context.cpp:110 ../src/gradient-drag.cpp:96 msgid "Linear gradient start" msgstr "Anfang des linearen Farbverlaufs" @@ -8535,7 +8745,7 @@ msgid "Radial gradient mid stop" msgstr "Zwischenfarbe des radialen Farbverlaufs" #. TRANSLATORS: %s will be substituted with the point name (see previous messages); This is part of a compound message -#: ../src/gradient-context.cpp:143 +#: ../src/gradient-context.cpp:143 ../src/mesh-context.cpp:139 #, c-format msgid "%s selected" msgstr "%s ausgewählt" @@ -8550,7 +8760,8 @@ msgstr[1] " von %d Farbverlaufs-Anfassern gewählt" #. TRANSLATORS: Mind the space in front. (Refers to gradient handles selected). This is part of a compound message #: ../src/gradient-context.cpp:146 ../src/gradient-context.cpp:155 -#: ../src/gradient-context.cpp:162 +#: ../src/gradient-context.cpp:162 ../src/mesh-context.cpp:142 +#: ../src/mesh-context.cpp:153 ../src/mesh-context.cpp:161 #, c-format msgid " on %d selected object" msgid_plural " on %d selected objects" @@ -8558,7 +8769,7 @@ msgstr[0] "auf %d gewähltes Objekt" msgstr[1] "auf %d gewählte Objekte" #. TRANSLATORS: This is a part of a compound message (out of two more indicating: grandint handle count & object count) -#: ../src/gradient-context.cpp:152 +#: ../src/gradient-context.cpp:152 ../src/mesh-context.cpp:149 #, c-format msgid "" "One handle merging %d stop (drag with Shift to separate) selected" @@ -8589,7 +8800,7 @@ msgstr[1] "" "Keine Verlaufs-Handles von %d ausgewählt bei %d markierten Objekten" #: ../src/gradient-context.cpp:381 ../src/gradient-context.cpp:479 -#: ../src/ui/dialog/swatches.cpp:203 ../src/widgets/gradient-vector.cpp:815 +#: ../src/ui/dialog/swatches.cpp:203 ../src/widgets/gradient-vector.cpp:814 msgid "Add gradient stop" msgstr "Zwischenfarbe zum Farbverlauf hinzufügen" @@ -8601,7 +8812,7 @@ msgstr "Farbverlauf vereinfachen" msgid "Create default gradient" msgstr "Standard-Farbverlauf erzeugen" -#: ../src/gradient-context.cpp:590 +#: ../src/gradient-context.cpp:590 ../src/mesh-context.cpp:597 msgid "Draw around handles to select them" msgstr "Zeichne um Anfasser um diese auszuwählen" @@ -8613,26 +8824,26 @@ msgstr "Strg: Winkel des Farbverlaufs einrasten" msgid "Shift: draw gradient around the starting point" msgstr "Umschalt: Farbverlauf ausgehend vom Mittelpunkt zeichnen" -#: ../src/gradient-context.cpp:930 +#: ../src/gradient-context.cpp:930 ../src/mesh-context.cpp:997 #, c-format msgid "Gradient for %d object; with Ctrl to snap angle" msgid_plural "Gradient for %d objects; with Ctrl to snap angle" msgstr[0] "Farbverlauf für %d Objekte; mit Strg Winkel einrasten" msgstr[1] "Farbverlauf für %d Objekte; mit Strg Winkel einrasten" -#: ../src/gradient-context.cpp:934 +#: ../src/gradient-context.cpp:934 ../src/mesh-context.cpp:1001 msgid "Select objects on which to create gradient." msgstr "Objekte auswählen, für die ein Farbverlauf erzeugt werden soll." -#: ../src/gradient-drag.cpp:105 +#: ../src/gradient-drag.cpp:105 ../src/mesh-context.cpp:112 msgid "Mesh gradient corner" msgstr "Gitterverlauf Ecke" -#: ../src/gradient-drag.cpp:106 +#: ../src/gradient-drag.cpp:106 ../src/mesh-context.cpp:113 msgid "Mesh gradient handle" msgstr "Gitterverlauf Anfasser" -#: ../src/gradient-drag.cpp:107 +#: ../src/gradient-drag.cpp:107 ../src/mesh-context.cpp:114 msgid "Mesh gradient tensor" msgstr "Gitterverlauf Tensor" @@ -8648,7 +8859,7 @@ msgstr "Farbverlaufs-Anfasser vereinigen" msgid "Move gradient handle" msgstr "Farbverlaufs-Anfasser verschieben" -#: ../src/gradient-drag.cpp:1160 ../src/widgets/gradient-vector.cpp:848 +#: ../src/gradient-drag.cpp:1160 ../src/widgets/gradient-vector.cpp:847 msgid "Delete gradient stop" msgstr "Zwischenfarbe des Farbverlaufs löschen" @@ -8716,13 +8927,13 @@ msgstr "Einheit" #. Add the units menu. #: ../src/helper/units.cpp:37 ../src/widgets/lpe-toolbar.cpp:400 -#: ../src/widgets/node-toolbar.cpp:623 -#: ../src/widgets/paintbucket-toolbar.cpp:187 -#: ../src/widgets/rect-toolbar.cpp:377 ../src/widgets/select-toolbar.cpp:538 +#: ../src/widgets/node-toolbar.cpp:622 +#: ../src/widgets/paintbucket-toolbar.cpp:185 +#: ../src/widgets/rect-toolbar.cpp:376 ../src/widgets/select-toolbar.cpp:538 msgid "Units" msgstr "Einheiten" -#: ../src/helper/units.cpp:38 ../share/extensions/dxf_outlines.inx.h:8 +#: ../src/helper/units.cpp:38 ../share/extensions/dxf_outlines.inx.h:9 msgid "pt" msgstr "pt" @@ -8734,11 +8945,11 @@ msgstr "Punkte" msgid "Pt" msgstr "Pkt" -#: ../src/helper/units.cpp:39 ../src/ui/dialog/inkscape-preferences.cpp:452 +#: ../src/helper/units.cpp:39 ../src/ui/dialog/inkscape-preferences.cpp:451 msgid "Pica" msgstr "Pica" -#: ../src/helper/units.cpp:39 ../share/extensions/dxf_outlines.inx.h:9 +#: ../src/helper/units.cpp:39 ../share/extensions/dxf_outlines.inx.h:10 msgid "pc" msgstr "pc" @@ -8750,12 +8961,12 @@ msgstr "Picas" msgid "Pc" msgstr "PC" -#: ../src/helper/units.cpp:40 ../src/ui/dialog/inkscape-preferences.cpp:452 +#: ../src/helper/units.cpp:40 ../src/ui/dialog/inkscape-preferences.cpp:451 msgid "Pixel" msgstr "Pixel" -#: ../src/helper/units.cpp:40 ../share/extensions/dxf_outlines.inx.h:10 -#: ../share/extensions/gears.inx.h:7 +#: ../src/helper/units.cpp:40 ../share/extensions/dxf_outlines.inx.h:11 +#: ../share/extensions/render_gears.inx.h:7 msgid "px" msgstr "Px" @@ -8772,7 +8983,7 @@ msgstr "Px" msgid "Percent" msgstr "Prozent" -#: ../src/helper/units.cpp:42 ../src/ui/dialog/inkscape-preferences.cpp:1257 +#: ../src/helper/units.cpp:42 ../src/ui/dialog/inkscape-preferences.cpp:1265 msgid "%" msgstr "%" @@ -8780,12 +8991,11 @@ msgstr "%" msgid "Percents" msgstr "Prozent" -#: ../src/helper/units.cpp:43 ../src/ui/dialog/inkscape-preferences.cpp:452 +#: ../src/helper/units.cpp:43 ../src/ui/dialog/inkscape-preferences.cpp:451 msgid "Millimeter" msgstr "Millimeter" -#: ../src/helper/units.cpp:43 ../share/extensions/dxf_outlines.inx.h:11 -#: ../share/extensions/gears.inx.h:9 +#: ../src/helper/units.cpp:43 ../share/extensions/dxf_outlines.inx.h:12 #: ../share/extensions/gcodetools_area.inx.h:46 #: ../share/extensions/gcodetools_dxf_points.inx.h:18 #: ../share/extensions/gcodetools_engraving.inx.h:24 @@ -8793,6 +9003,7 @@ msgstr "Millimeter" #: ../share/extensions/gcodetools_lathe.inx.h:39 #: ../share/extensions/gcodetools_orientation_points.inx.h:11 #: ../share/extensions/gcodetools_path_to_gcode.inx.h:28 +#: ../share/extensions/render_gears.inx.h:9 msgid "mm" msgstr "mm" @@ -8800,11 +9011,11 @@ msgstr "mm" msgid "Millimeters" msgstr "Millimeter" -#: ../src/helper/units.cpp:44 ../src/ui/dialog/inkscape-preferences.cpp:452 +#: ../src/helper/units.cpp:44 ../src/ui/dialog/inkscape-preferences.cpp:451 msgid "Centimeter" msgstr "Zentimeter" -#: ../src/helper/units.cpp:44 ../share/extensions/dxf_outlines.inx.h:12 +#: ../src/helper/units.cpp:44 ../share/extensions/dxf_outlines.inx.h:13 msgid "cm" msgstr "cm" @@ -8816,7 +9027,7 @@ msgstr "Zentimeter" msgid "Meter" msgstr "Meter" -#: ../src/helper/units.cpp:45 ../share/extensions/dxf_outlines.inx.h:13 +#: ../src/helper/units.cpp:45 ../share/extensions/dxf_outlines.inx.h:14 msgid "m" msgstr "m" @@ -8825,12 +9036,11 @@ msgid "Meters" msgstr "Meter" #. no svg_unit -#: ../src/helper/units.cpp:46 ../src/ui/dialog/inkscape-preferences.cpp:452 +#: ../src/helper/units.cpp:46 ../src/ui/dialog/inkscape-preferences.cpp:451 msgid "Inch" msgstr "Zoll" -#: ../src/helper/units.cpp:46 ../share/extensions/dxf_outlines.inx.h:14 -#: ../share/extensions/gears.inx.h:8 +#: ../src/helper/units.cpp:46 ../share/extensions/dxf_outlines.inx.h:15 #: ../share/extensions/gcodetools_area.inx.h:47 #: ../share/extensions/gcodetools_dxf_points.inx.h:19 #: ../share/extensions/gcodetools_engraving.inx.h:25 @@ -8838,6 +9048,7 @@ msgstr "Zoll" #: ../share/extensions/gcodetools_lathe.inx.h:40 #: ../share/extensions/gcodetools_orientation_points.inx.h:12 #: ../share/extensions/gcodetools_path_to_gcode.inx.h:29 +#: ../share/extensions/render_gears.inx.h:8 msgid "in" msgstr "In" @@ -8849,7 +9060,7 @@ msgstr "Zoll" msgid "Foot" msgstr "Fuß" -#: ../src/helper/units.cpp:47 ../share/extensions/dxf_outlines.inx.h:15 +#: ../src/helper/units.cpp:47 ../share/extensions/dxf_outlines.inx.h:16 msgid "ft" msgstr "ft" @@ -8859,7 +9070,7 @@ msgstr "Vorschub" #. Volatiles do not have default, so there are none here #. TRANSLATORS: for info, see http://www.w3.org/TR/REC-CSS2/syndata.html#length-units -#: ../src/helper/units.cpp:50 ../src/ui/dialog/inkscape-preferences.cpp:452 +#: ../src/helper/units.cpp:50 ../src/ui/dialog/inkscape-preferences.cpp:451 msgid "Em square" msgstr "Em-Quadrat" @@ -8884,46 +9095,46 @@ msgstr "ex" msgid "Ex squares" msgstr "Ix-Quadrate" -#: ../src/inkscape.cpp:318 +#: ../src/inkscape.cpp:322 msgid "Autosave failed! Cannot create directory %1." msgstr "Autospeicherung fehlgeschlagen! Kann Verzeichnis %1 nicht erstellen." -#: ../src/inkscape.cpp:327 +#: ../src/inkscape.cpp:331 msgid "Autosave failed! Cannot open directory %1." msgstr "Autospeicherung fehlgeschlagen! Kann Verzeichnis %1 nicht öffnen." -#: ../src/inkscape.cpp:343 +#: ../src/inkscape.cpp:347 msgid "Autosaving documents..." msgstr "Dokument wird automatisch gespeichert…" -#: ../src/inkscape.cpp:414 +#: ../src/inkscape.cpp:420 msgid "Autosave failed! Could not find inkscape extension to save document." msgstr "" "Automatisches Speichern fehlgeschlagen! Inkscape-Endung konnte nicht " "gefunden werden." -#: ../src/inkscape.cpp:417 ../src/inkscape.cpp:424 +#: ../src/inkscape.cpp:423 ../src/inkscape.cpp:430 #, c-format msgid "Autosave failed! File %s could not be saved." msgstr "" "Automatisches Speichern fehlgeschlagen! Datei %s konnte nicht gespeichert " "werden." -#: ../src/inkscape.cpp:439 +#: ../src/inkscape.cpp:445 msgid "Autosave complete." msgstr "Automatisches Speichern abgeschlossen." -#: ../src/inkscape.cpp:685 +#: ../src/inkscape.cpp:691 msgid "Untitled document" msgstr "Unbenanntes Dokument" #. Show nice dialog box -#: ../src/inkscape.cpp:717 +#: ../src/inkscape.cpp:723 msgid "Inkscape encountered an internal error and will close now.\n" msgstr "" "Inkscape ist auf einen internen Fehler gestoßen und wird nun geschlossen.\n" -#: ../src/inkscape.cpp:718 +#: ../src/inkscape.cpp:724 msgid "" "Automatic backups of unsaved documents were done to the following " "locations:\n" @@ -8931,75 +9142,75 @@ msgstr "" "Unter folgenden Speicherorten wurden automatische Sicherungskopien nicht " "gespeicherter Dokumente angelegt:\n" -#: ../src/inkscape.cpp:719 +#: ../src/inkscape.cpp:725 msgid "Automatic backup of the following documents failed:\n" msgstr "" "Anlegen von automatischen Sicherungskopien folgender Dokumente " "fehlgeschlagen:\n" -#: ../src/interface.cpp:868 +#: ../src/interface.cpp:865 msgctxt "Interface setup" msgid "Default" msgstr "Vorgabe" -#: ../src/interface.cpp:868 +#: ../src/interface.cpp:865 msgid "Default interface setup" msgstr "Standard Schnittstellen-Setup" -#: ../src/interface.cpp:869 +#: ../src/interface.cpp:866 msgctxt "Interface setup" msgid "Custom" msgstr "Benutzerdefiniert" -#: ../src/interface.cpp:869 +#: ../src/interface.cpp:866 msgid "Setup for custom task" msgstr "Setup für benutzerdefinierte Aufgabe" -#: ../src/interface.cpp:870 +#: ../src/interface.cpp:867 msgctxt "Interface setup" msgid "Wide" msgstr "Breit" -#: ../src/interface.cpp:870 +#: ../src/interface.cpp:867 msgid "Setup for widescreen work" msgstr "Setup für die Breitbild-Arbeit" -#: ../src/interface.cpp:982 +#: ../src/interface.cpp:979 #, c-format msgid "Verb \"%s\" Unknown" msgstr "Verb \"%s\" unbekannt" -#: ../src/interface.cpp:1024 +#: ../src/interface.cpp:1021 msgid "Open _Recent" msgstr "Zuletzt _geöffnete Dateien" # !!! correct? -#: ../src/interface.cpp:1132 ../src/interface.cpp:1218 -#: ../src/interface.cpp:1321 ../src/ui/widget/selected-style.cpp:523 +#: ../src/interface.cpp:1129 ../src/interface.cpp:1215 +#: ../src/interface.cpp:1318 ../src/ui/widget/selected-style.cpp:523 msgid "Drop color" msgstr "Farbe ablegen" -#: ../src/interface.cpp:1171 ../src/interface.cpp:1281 +#: ../src/interface.cpp:1168 ../src/interface.cpp:1278 msgid "Drop color on gradient" msgstr "Keine Zwischenfarben im Farbverlauf" -#: ../src/interface.cpp:1334 +#: ../src/interface.cpp:1331 msgid "Could not parse SVG data" msgstr "SVG-Daten konnten nicht analysiert werden" -#: ../src/interface.cpp:1373 +#: ../src/interface.cpp:1370 msgid "Drop SVG" msgstr "SVG ablegen" -#: ../src/interface.cpp:1386 +#: ../src/interface.cpp:1383 msgid "Drop Symbol" msgstr "Symbol fallenlassen" -#: ../src/interface.cpp:1417 +#: ../src/interface.cpp:1414 msgid "Drop bitmap image" msgstr "Bitmap-Bild ablegen" -#: ../src/interface.cpp:1509 +#: ../src/interface.cpp:1506 #, c-format msgid "" "A file named \"%s\" already exists. Do " @@ -9013,160 +9224,160 @@ msgstr "" "Die Datei existiert bereits in »%s«. Sie zu ersetzen wird ihren Inhalt " "überschreiben." -#: ../src/interface.cpp:1516 ../share/extensions/web-set-att.inx.h:21 +#: ../src/interface.cpp:1513 ../share/extensions/web-set-att.inx.h:21 #: ../share/extensions/web-transmit-att.inx.h:19 msgid "Replace" msgstr "Ersetzen" -#: ../src/interface.cpp:1587 +#: ../src/interface.cpp:1584 msgid "Go to parent" msgstr "Zum übergeordneten Objekt gehen" #. TRANSLATORS: #%1 is the id of the group e.g. , not a number. -#: ../src/interface.cpp:1628 +#: ../src/interface.cpp:1625 msgid "Enter group #%1" msgstr "Gruppe #%1 beitreten" #. Item dialog -#: ../src/interface.cpp:1740 ../src/verbs.cpp:2785 +#: ../src/interface.cpp:1737 ../src/verbs.cpp:2790 msgid "_Object Properties..." msgstr "Objekt_eigenschaften…" -#: ../src/interface.cpp:1749 +#: ../src/interface.cpp:1746 msgid "_Select This" msgstr "_Dies auswählen" -#: ../src/interface.cpp:1760 +#: ../src/interface.cpp:1757 msgid "Select Same" msgstr "Das Gleiche auswählen" #. Select same fill and stroke -#: ../src/interface.cpp:1770 +#: ../src/interface.cpp:1767 msgid "Fill and Stroke" msgstr "Füllung und _Kontur" #. Select same fill color -#: ../src/interface.cpp:1777 +#: ../src/interface.cpp:1774 msgid "Fill Color" msgstr "Füllfarbe" #. Select same stroke color -#: ../src/interface.cpp:1784 +#: ../src/interface.cpp:1781 msgid "Stroke Color" msgstr "Konturfarbe" #. Select same stroke style -#: ../src/interface.cpp:1791 +#: ../src/interface.cpp:1788 msgid "Stroke Style" msgstr "Muster der Kontur" #. Select same stroke style -#: ../src/interface.cpp:1798 +#: ../src/interface.cpp:1795 msgid "Object type" msgstr "Objekttyp" #. Move to layer -#: ../src/interface.cpp:1805 +#: ../src/interface.cpp:1802 msgid "_Move to layer ..." msgstr "Verschiebe zu Ebene..." #. Create link -#: ../src/interface.cpp:1815 +#: ../src/interface.cpp:1812 msgid "Create _Link" msgstr "_Verknüpfung erzeugen" #. Set mask -#: ../src/interface.cpp:1838 +#: ../src/interface.cpp:1835 msgid "Set Mask" msgstr "Maskierung setzen" #. Release mask -#: ../src/interface.cpp:1849 +#: ../src/interface.cpp:1846 msgid "Release Mask" msgstr "Maskierung entfernen" #. Set Clip -#: ../src/interface.cpp:1860 +#: ../src/interface.cpp:1857 msgid "Set Cl_ip" msgstr "_Clip setzen" #. Release Clip -#: ../src/interface.cpp:1871 +#: ../src/interface.cpp:1868 msgid "Release C_lip" msgstr "C_lip lösen" #. Group -#: ../src/interface.cpp:1882 ../src/verbs.cpp:2424 +#: ../src/interface.cpp:1879 ../src/verbs.cpp:2429 msgid "_Group" msgstr "_Gruppieren" -#: ../src/interface.cpp:1953 +#: ../src/interface.cpp:1950 msgid "Create link" msgstr "Verknüpfung erzeugen" #. Ungroup -#: ../src/interface.cpp:1984 ../src/verbs.cpp:2426 +#: ../src/interface.cpp:1981 ../src/verbs.cpp:2431 msgid "_Ungroup" msgstr "Grupp_ierung aufheben" #. Link dialog -#: ../src/interface.cpp:2009 +#: ../src/interface.cpp:2006 msgid "Link _Properties..." msgstr "Verknüpfungseigenschaften..." #. Select item -#: ../src/interface.cpp:2015 +#: ../src/interface.cpp:2012 msgid "_Follow Link" msgstr "Verknüpfung _folgen" #. Reset transformations -#: ../src/interface.cpp:2021 +#: ../src/interface.cpp:2018 msgid "_Remove Link" msgstr "Verknüpfung en_tfernen" -#: ../src/interface.cpp:2052 +#: ../src/interface.cpp:2049 msgid "Remove link" msgstr "Verknüpfung en_tfernen" #. Image properties -#: ../src/interface.cpp:2063 +#: ../src/interface.cpp:2060 msgid "Image _Properties..." msgstr "Bildeigenschaften..." #. Edit externally -#: ../src/interface.cpp:2069 +#: ../src/interface.cpp:2066 msgid "Edit Externally..." msgstr "Extern bearbeiten…" #. Trace Bitmap #. TRANSLATORS: "to trace" means "to convert a bitmap to vector graphics" (to vectorize) -#: ../src/interface.cpp:2078 ../src/verbs.cpp:2487 +#: ../src/interface.cpp:2075 ../src/verbs.cpp:2492 msgid "_Trace Bitmap..." msgstr "Bitmap _vektorisieren…" -#: ../src/interface.cpp:2088 +#: ../src/interface.cpp:2085 msgctxt "Context menu" msgid "Embed Image" msgstr "Bild einbetten" -#: ../src/interface.cpp:2099 +#: ../src/interface.cpp:2096 msgctxt "Context menu" msgid "Extract Image..." msgstr "Bild extrahieren..." #. Item dialog #. Fill and Stroke dialog -#: ../src/interface.cpp:2238 ../src/interface.cpp:2258 ../src/verbs.cpp:2748 +#: ../src/interface.cpp:2235 ../src/interface.cpp:2255 ../src/verbs.cpp:2753 msgid "_Fill and Stroke..." msgstr "Füllung und _Kontur…" #. Edit Text dialog -#: ../src/interface.cpp:2264 ../src/verbs.cpp:2765 +#: ../src/interface.cpp:2261 ../src/verbs.cpp:2770 msgid "_Text and Font..." msgstr "_Schrift und Text…" #. Spellcheck dialog -#: ../src/interface.cpp:2270 ../src/verbs.cpp:2773 +#: ../src/interface.cpp:2267 ../src/verbs.cpp:2778 msgid "Check Spellin_g..." msgstr "Rechtschreibprüfun_g..." @@ -9235,10 +9446,9 @@ msgid "Dockitem which 'owns' this grip" msgstr "Dockobjekt, das diesen Griff \"besitzt\"" #. Name -#: ../src/libgdl/gdl-dock-item.c:298 ../src/widgets/text-toolbar.cpp:1432 +#: ../src/libgdl/gdl-dock-item.c:298 ../src/widgets/text-toolbar.cpp:1430 #: ../share/extensions/gcodetools_graffiti.inx.h:9 #: ../share/extensions/gcodetools_orientation_points.inx.h:2 -#: ../share/extensions/hpgl_output.inx.h:7 msgid "Orientation" msgstr "Ausrichtung" @@ -9383,8 +9593,8 @@ msgstr "" #: ../src/libgdl/gdl-dock-notebook.c:132 #: ../src/ui/dialog/align-and-distribute.cpp:1047 #: ../src/ui/dialog/document-properties.cpp:146 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1546 -#: ../src/widgets/desktop-widget.cpp:1919 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1551 +#: ../src/widgets/desktop-widget.cpp:1996 #: ../share/extensions/voronoi2svg.inx.h:9 msgid "Page" msgstr "Seite" @@ -9394,7 +9604,7 @@ msgid "The index of the current page" msgstr "Aktuelle Seitenzahl" #: ../src/libgdl/gdl-dock-object.c:125 -#: ../src/ui/dialog/inkscape-preferences.cpp:1464 +#: ../src/ui/dialog/inkscape-preferences.cpp:1482 #: ../src/ui/widget/page-sizer.cpp:260 #: ../src/widgets/gradient-selector.cpp:156 #: ../src/widgets/sp-xmlview-attr-list.cpp:54 @@ -9510,23 +9720,10 @@ msgstr "" "Die Position, an der ein neues Objekt im Falle eine Andockversuchs an " "unserem Wirt andockt." -#: ../src/libgdl/gdl-dock-placeholder.c:167 ../src/libgdl/gdl-dock.c:191 -#: ../src/widgets/rect-toolbar.cpp:316 ../src/widgets/spray-toolbar.cpp:133 -#: ../src/widgets/tweak-toolbar.cpp:147 -#: ../share/extensions/interp_att_g.inx.h:10 -msgid "Width" -msgstr "Breite" - #: ../src/libgdl/gdl-dock-placeholder.c:168 msgid "Width for the widget when it's attached to the placeholder" msgstr "Breite des Widgets, wenn es an den Platzhalter angeheftet ist." -#: ../src/libgdl/gdl-dock-placeholder.c:175 ../src/libgdl/gdl-dock.c:199 -#: ../src/widgets/rect-toolbar.cpp:333 -#: ../share/extensions/interp_att_g.inx.h:11 -msgid "Height" -msgstr "Höhe" - #: ../src/libgdl/gdl-dock-placeholder.c:176 msgid "Height for the widget when it's attached to the placeholder" msgstr "Höhe des Widgets, wenn es an den Platzhalter angeheftet ist." @@ -9579,8 +9776,8 @@ msgstr "" msgid "Dockitem which 'owns' this tablabel" msgstr "Dock-Objekt, dem dieser Tabbezeichner \"gehört\"." -#: ../src/libgdl/gdl-dock.c:176 ../src/ui/dialog/inkscape-preferences.cpp:632 -#: ../src/ui/dialog/inkscape-preferences.cpp:666 +#: ../src/libgdl/gdl-dock.c:176 ../src/ui/dialog/inkscape-preferences.cpp:631 +#: ../src/ui/dialog/inkscape-preferences.cpp:674 msgid "Floating" msgstr "Schwebend." @@ -9621,154 +9818,154 @@ msgstr "Y-Koordinate eines schwebenden Docks" msgid "Dock #%d" msgstr "Andocken #%d" -#: ../src/libnrtype/FontFactory.cpp:967 +#: ../src/libnrtype/FontFactory.cpp:965 msgid "Ignoring font without family that will crash Pango" msgstr "" "Schrift ohne zugehörige Schriftfamilie wird ignoriert, damit Pango nicht " "abstürzt" -#: ../src/live_effects/effect.cpp:87 +#: ../src/live_effects/effect.cpp:86 msgid "doEffect stack test" msgstr "AusführenEffekt-Reihentest" -#: ../src/live_effects/effect.cpp:88 +#: ../src/live_effects/effect.cpp:87 msgid "Angle bisector" msgstr "Winkelhalbierende" #. TRANSLATORS: boolean operations -#: ../src/live_effects/effect.cpp:90 +#: ../src/live_effects/effect.cpp:89 msgid "Boolops" msgstr "Bool'sche Operationen" -#: ../src/live_effects/effect.cpp:91 +#: ../src/live_effects/effect.cpp:90 msgid "Circle (by center and radius)" msgstr "Kreis (Mittelpunkt+Radius)" -#: ../src/live_effects/effect.cpp:92 +#: ../src/live_effects/effect.cpp:91 msgid "Circle by 3 points" msgstr "Kreis durch 3 Punkte" -#: ../src/live_effects/effect.cpp:93 +#: ../src/live_effects/effect.cpp:92 msgid "Dynamic stroke" msgstr "Dynamischer Strich" -#: ../src/live_effects/effect.cpp:94 ../share/extensions/extrude.inx.h:1 +#: ../src/live_effects/effect.cpp:93 ../share/extensions/extrude.inx.h:1 msgid "Extrude" msgstr "Extrudieren" -#: ../src/live_effects/effect.cpp:95 +#: ../src/live_effects/effect.cpp:94 msgid "Lattice Deformation" msgstr "Gitterverformung" -#: ../src/live_effects/effect.cpp:96 +#: ../src/live_effects/effect.cpp:95 msgid "Line Segment" msgstr "Liniensegment" -#: ../src/live_effects/effect.cpp:97 +#: ../src/live_effects/effect.cpp:96 msgid "Mirror symmetry" msgstr "Spiegelsymmetrisch" -#: ../src/live_effects/effect.cpp:99 +#: ../src/live_effects/effect.cpp:98 msgid "Parallel" msgstr "Parallel" -#: ../src/live_effects/effect.cpp:100 +#: ../src/live_effects/effect.cpp:99 msgid "Path length" msgstr "Pfadlänge" -#: ../src/live_effects/effect.cpp:101 +#: ../src/live_effects/effect.cpp:100 msgid "Perpendicular bisector" msgstr "Senkrechte Winkelhalbierende" -#: ../src/live_effects/effect.cpp:102 +#: ../src/live_effects/effect.cpp:101 msgid "Perspective path" msgstr "Perspektivischer Pfad" -#: ../src/live_effects/effect.cpp:103 +#: ../src/live_effects/effect.cpp:102 msgid "Rotate copies" msgstr "Kopien rotieren" -#: ../src/live_effects/effect.cpp:104 +#: ../src/live_effects/effect.cpp:103 msgid "Recursive skeleton" msgstr "Rekursives Gitter" -#: ../src/live_effects/effect.cpp:105 +#: ../src/live_effects/effect.cpp:104 msgid "Tangent to curve" msgstr "Tangente an Kurve" -#: ../src/live_effects/effect.cpp:106 +#: ../src/live_effects/effect.cpp:105 msgid "Text label" msgstr "Text-Bezeichner" #. 0.46 -#: ../src/live_effects/effect.cpp:109 +#: ../src/live_effects/effect.cpp:108 msgid "Bend" msgstr "Biegen" -#: ../src/live_effects/effect.cpp:110 +#: ../src/live_effects/effect.cpp:109 msgid "Gears" msgstr "Zahnräder" -#: ../src/live_effects/effect.cpp:111 +#: ../src/live_effects/effect.cpp:110 msgid "Pattern Along Path" msgstr "Muster entlang Pfad" #. for historic reasons, this effect is called skeletal(strokes) in Inkscape:SVG -#: ../src/live_effects/effect.cpp:112 +#: ../src/live_effects/effect.cpp:111 msgid "Stitch Sub-Paths" msgstr "Unterpfade zusammenfügen" #. 0.47 -#: ../src/live_effects/effect.cpp:114 +#: ../src/live_effects/effect.cpp:113 msgid "VonKoch" msgstr "VonKoch" -#: ../src/live_effects/effect.cpp:115 +#: ../src/live_effects/effect.cpp:114 msgid "Knot" msgstr "Knoten" -#: ../src/live_effects/effect.cpp:116 +#: ../src/live_effects/effect.cpp:115 msgid "Construct grid" msgstr "Gitter erzeugen" -#: ../src/live_effects/effect.cpp:117 +#: ../src/live_effects/effect.cpp:116 msgid "Spiro spline" msgstr "Spiro spline" -#: ../src/live_effects/effect.cpp:118 +#: ../src/live_effects/effect.cpp:117 msgid "Envelope Deformation" msgstr "Hüllen-Verformung" -#: ../src/live_effects/effect.cpp:119 +#: ../src/live_effects/effect.cpp:118 msgid "Interpolate Sub-Paths" msgstr "Unterpfade interpolieren" -#: ../src/live_effects/effect.cpp:120 +#: ../src/live_effects/effect.cpp:119 msgid "Hatches (rough)" msgstr "Schraffur (grob)" -#: ../src/live_effects/effect.cpp:121 +#: ../src/live_effects/effect.cpp:120 msgid "Sketch" msgstr "Skizze" -#: ../src/live_effects/effect.cpp:122 +#: ../src/live_effects/effect.cpp:121 msgid "Ruler" msgstr "Lineal" #. 0.49 -#: ../src/live_effects/effect.cpp:124 +#: ../src/live_effects/effect.cpp:123 msgid "Power stroke" msgstr "Kräftige Kontur" -#: ../src/live_effects/effect.cpp:125 ../src/selection-chemistry.cpp:2760 +#: ../src/live_effects/effect.cpp:124 ../src/selection-chemistry.cpp:2792 msgid "Clone original path" msgstr "Originalpfad klonen" -#: ../src/live_effects/effect.cpp:287 +#: ../src/live_effects/effect.cpp:286 msgid "Is visible?" msgstr "Sichtbar?" -#: ../src/live_effects/effect.cpp:287 +#: ../src/live_effects/effect.cpp:286 msgid "" "If unchecked, the effect remains applied to the object but is temporarily " "disabled on canvas" @@ -9776,23 +9973,23 @@ msgstr "" "Wenn die Option deaktiviert ist, wird der Effekt auf das Objekt angewendet, " "jedoch temporär ausgeblendet." -#: ../src/live_effects/effect.cpp:308 +#: ../src/live_effects/effect.cpp:307 msgid "No effect" msgstr "Kein Effekt" -#: ../src/live_effects/effect.cpp:355 +#: ../src/live_effects/effect.cpp:354 #, c-format msgid "Please specify a parameter path for the LPE '%s' with %d mouse clicks" msgstr "" "Bitte spezifizieren Sie einen Parameterpfad für den Pfadeffekt \"%s\" mit %d " "Mausklicks. " -#: ../src/live_effects/effect.cpp:633 +#: ../src/live_effects/effect.cpp:632 #, c-format msgid "Editing parameter %s." msgstr "Editiere Parameter %s." -#: ../src/live_effects/effect.cpp:638 +#: ../src/live_effects/effect.cpp:637 msgid "None of the applied path effect's parameters can be edited on-canvas." msgstr "" "Keine Parameter der auf den Pfad angewandten Effekte können auf der " @@ -9851,28 +10048,28 @@ msgstr "Größe _Y:" msgid "The size of the grid in Y direction." msgstr "Die Größe des Gitters in Y-Richtung" -#: ../src/live_effects/lpe-curvestitch.cpp:42 +#: ../src/live_effects/lpe-curvestitch.cpp:41 msgid "Stitch path:" msgstr "Stich-Pfad" -#: ../src/live_effects/lpe-curvestitch.cpp:42 +#: ../src/live_effects/lpe-curvestitch.cpp:41 msgid "The path that will be used as stitch." msgstr "Der Pfad wird als Knoten verwendet" -#: ../src/live_effects/lpe-curvestitch.cpp:43 +#: ../src/live_effects/lpe-curvestitch.cpp:42 msgid "N_umber of paths:" msgstr "Anzahl der Pfade:" -#: ../src/live_effects/lpe-curvestitch.cpp:43 +#: ../src/live_effects/lpe-curvestitch.cpp:42 msgid "The number of paths that will be generated." msgstr "Anzahl der zu erzeugenden Pfade" -#: ../src/live_effects/lpe-curvestitch.cpp:44 +#: ../src/live_effects/lpe-curvestitch.cpp:43 msgid "Sta_rt edge variance:" msgstr "Start der Kanten Abweichung" # Hier "stitches" etwa Kopien? Was ist dieser Effekt? -#: ../src/live_effects/lpe-curvestitch.cpp:44 +#: ../src/live_effects/lpe-curvestitch.cpp:43 msgid "" "The amount of random jitter to move the start points of the stitches inside " "& outside the guide path" @@ -9880,11 +10077,11 @@ msgstr "" "Mittlere Größe der Abstände, um die die Startpunkte der Kopien inner- und " "ausserhalb des Pfades versetzt werden." -#: ../src/live_effects/lpe-curvestitch.cpp:45 +#: ../src/live_effects/lpe-curvestitch.cpp:44 msgid "Sta_rt spacing variance:" msgstr "Start der Abstands-Abweichung" -#: ../src/live_effects/lpe-curvestitch.cpp:45 +#: ../src/live_effects/lpe-curvestitch.cpp:44 msgid "" "The amount of random shifting to move the start points of the stitches back " "& forth along the guide path" @@ -9892,11 +10089,11 @@ msgstr "" "Mittlere Größe der Abstände, um die die Startpunkte der Kopien entlang des " "Führungspfades versetzt werden." -#: ../src/live_effects/lpe-curvestitch.cpp:46 +#: ../src/live_effects/lpe-curvestitch.cpp:45 msgid "End ed_ge variance:" msgstr "Ende der Kanten Abweichung" -#: ../src/live_effects/lpe-curvestitch.cpp:46 +#: ../src/live_effects/lpe-curvestitch.cpp:45 msgid "" "The amount of randomness that moves the end points of the stitches inside & " "outside the guide path" @@ -9904,11 +10101,11 @@ msgstr "" "Mittlere Größe der Abstände, um die die Endpunkte der Kopien inner- und " "außerhalb des Führungspfades versetzt werden." -#: ../src/live_effects/lpe-curvestitch.cpp:47 +#: ../src/live_effects/lpe-curvestitch.cpp:46 msgid "End spa_cing variance:" msgstr "Ende der Abstands-Abweichung" -#: ../src/live_effects/lpe-curvestitch.cpp:47 +#: ../src/live_effects/lpe-curvestitch.cpp:46 msgid "" "The amount of random shifting to move the end points of the stitches back & " "forth along the guide path" @@ -9916,19 +10113,19 @@ msgstr "" "Mittlere Größe der Abstände, um die die Endpunkte der Kopien entlang des " "Führungspfades versetzt werden." -#: ../src/live_effects/lpe-curvestitch.cpp:48 +#: ../src/live_effects/lpe-curvestitch.cpp:47 msgid "Scale _width:" msgstr "Skaliere Breite:" -#: ../src/live_effects/lpe-curvestitch.cpp:48 +#: ../src/live_effects/lpe-curvestitch.cpp:47 msgid "Scale the width of the stitch path" msgstr "Skalieren der Breite des Stichpfades" -#: ../src/live_effects/lpe-curvestitch.cpp:49 +#: ../src/live_effects/lpe-curvestitch.cpp:48 msgid "Scale _width relative to length" msgstr "Skaliere die Breite relativ zur Länge" -#: ../src/live_effects/lpe-curvestitch.cpp:49 +#: ../src/live_effects/lpe-curvestitch.cpp:48 msgid "Scale the width of the stitch path relative to its length" msgstr "Skalieren der Breite des Stichpfades relativ zu seiner Länge" @@ -10086,6 +10283,10 @@ msgstr "Ziehen, wählt eine Überschneidung aus, Klicken dreht sie um" msgid "Change knot crossing" msgstr "Knotenkreuz ändern" +#: ../src/live_effects/lpe-offset.cpp:31 +msgid "Handle to control the distance of the offset from the curve" +msgstr "Anfasser zum Einstellen der Entfernung des Offset der Kurve" + #: ../src/live_effects/lpe-patternalongpath.cpp:50 #: ../share/extensions/pathalongpath.inx.h:10 msgid "Single" @@ -10222,7 +10423,7 @@ msgid "Beveled" msgstr "Abgeschrägt" #: ../src/live_effects/lpe-powerstroke.cpp:221 -#: ../src/widgets/star-toolbar.cpp:547 +#: ../src/widgets/star-toolbar.cpp:546 msgid "Rounded" msgstr "Abgerundet" @@ -10235,7 +10436,7 @@ msgid "Miter" msgstr "Gehrung" #: ../src/live_effects/lpe-powerstroke.cpp:224 -#: ../src/widgets/pencil-toolbar.cpp:138 +#: ../src/widgets/pencil-toolbar.cpp:137 msgid "Spiro" msgstr "Spirale" @@ -10269,6 +10470,11 @@ msgstr "" "Legt fest, welche Art von Interpolator für die Interpolation zwischen " "Strichstärke entlang des Pfades verwendet weden" +#: ../src/live_effects/lpe-powerstroke.cpp:236 +#: ../share/extensions/fractalize.inx.h:3 +msgid "Smoothness:" +msgstr "Glattheit" + #: ../src/live_effects/lpe-powerstroke.cpp:236 msgid "" "Sets the smoothness for the CubicBezierJohan interpolator; 0 = linear " @@ -10314,28 +10520,28 @@ msgstr "Ende:" msgid "Determines the shape of the path's end" msgstr "Bestimmt die Form des Pfad-Endes" -#: ../src/live_effects/lpe-rough-hatches.cpp:226 +#: ../src/live_effects/lpe-rough-hatches.cpp:225 msgid "Frequency randomness:" msgstr "Zufalls-Frequenz" -#: ../src/live_effects/lpe-rough-hatches.cpp:226 +#: ../src/live_effects/lpe-rough-hatches.cpp:225 msgid "Variation of distance between hatches, in %." msgstr "Variation des Abstands zwischen den Strichen in %" -#: ../src/live_effects/lpe-rough-hatches.cpp:227 +#: ../src/live_effects/lpe-rough-hatches.cpp:226 msgid "Growth:" msgstr "Wachstum" -#: ../src/live_effects/lpe-rough-hatches.cpp:227 +#: ../src/live_effects/lpe-rough-hatches.cpp:226 msgid "Growth of distance between hatches." msgstr "Zunahme des Abstands zwischen den Strichen" #. FIXME: top/bottom names are inverted in the UI/svg and in the code!! -#: ../src/live_effects/lpe-rough-hatches.cpp:229 +#: ../src/live_effects/lpe-rough-hatches.cpp:228 msgid "Half-turns smoothness: 1st side, in:" msgstr "Weichheit der Umkehrpunkte: 1. Seite, einlaufend" -#: ../src/live_effects/lpe-rough-hatches.cpp:229 +#: ../src/live_effects/lpe-rough-hatches.cpp:228 msgid "" "Set smoothness/sharpness of path when reaching a 'bottom' half-turn. " "0=sharp, 1=default" @@ -10343,11 +10549,11 @@ msgstr "" "Wählt Glattheit des Pfades bei Einlaufen in \"unteren\" Wendepunkt. 0=spitz, " "1=Vorgabe" -#: ../src/live_effects/lpe-rough-hatches.cpp:230 +#: ../src/live_effects/lpe-rough-hatches.cpp:229 msgid "1st side, out:" msgstr "1. Seite, außen" -#: ../src/live_effects/lpe-rough-hatches.cpp:230 +#: ../src/live_effects/lpe-rough-hatches.cpp:229 msgid "" "Set smoothness/sharpness of path when leaving a 'bottom' half-turn. 0=sharp, " "1=default" @@ -10355,11 +10561,11 @@ msgstr "" "Wählt Glattheit des Pfades bei Auslaufen aus \"unterem\" Wendepunkt. " "0=spitz, 1=Vorgabe" -#: ../src/live_effects/lpe-rough-hatches.cpp:231 +#: ../src/live_effects/lpe-rough-hatches.cpp:230 msgid "2nd side, in:" msgstr "2. Seite, innen" -#: ../src/live_effects/lpe-rough-hatches.cpp:231 +#: ../src/live_effects/lpe-rough-hatches.cpp:230 msgid "" "Set smoothness/sharpness of path when reaching a 'top' half-turn. 0=sharp, " "1=default" @@ -10367,11 +10573,11 @@ msgstr "" "Wählt Glattheit des Pfades bei Einlaufen in \"oberen\" Wendepunkt. 0=spitz, " "1=Vorgabe" -#: ../src/live_effects/lpe-rough-hatches.cpp:232 +#: ../src/live_effects/lpe-rough-hatches.cpp:231 msgid "2nd side, out:" msgstr "2. Seite, außen" -#: ../src/live_effects/lpe-rough-hatches.cpp:232 +#: ../src/live_effects/lpe-rough-hatches.cpp:231 msgid "" "Set smoothness/sharpness of path when leaving a 'top' half-turn. 0=sharp, " "1=default" @@ -10379,33 +10585,33 @@ msgstr "" "Wählt Glattheit des Pfades bei Auslaufen aus \"oberen\" Wendepunkt. 0=spitz, " "1=Vorgabe" -#: ../src/live_effects/lpe-rough-hatches.cpp:233 +#: ../src/live_effects/lpe-rough-hatches.cpp:232 msgid "Magnitude jitter: 1st side:" msgstr "Ausmaß Schwankung: 1. Seite" -#: ../src/live_effects/lpe-rough-hatches.cpp:233 +#: ../src/live_effects/lpe-rough-hatches.cpp:232 msgid "Randomly moves 'bottom' half-turns to produce magnitude variations." msgstr "" "Verschiebt zufällig \"untere\" Wendepunkte, um Änderung der Amplitude zu " "erreichen." -#: ../src/live_effects/lpe-rough-hatches.cpp:234 -#: ../src/live_effects/lpe-rough-hatches.cpp:236 -#: ../src/live_effects/lpe-rough-hatches.cpp:238 +#: ../src/live_effects/lpe-rough-hatches.cpp:233 +#: ../src/live_effects/lpe-rough-hatches.cpp:235 +#: ../src/live_effects/lpe-rough-hatches.cpp:237 msgid "2nd side:" msgstr "2. Seite" -#: ../src/live_effects/lpe-rough-hatches.cpp:234 +#: ../src/live_effects/lpe-rough-hatches.cpp:233 msgid "Randomly moves 'top' half-turns to produce magnitude variations." msgstr "" "Verschiebt zufällig \"obere\" Wendepunkte, um Änderung der Amplitude zu " "erreichen." -#: ../src/live_effects/lpe-rough-hatches.cpp:235 +#: ../src/live_effects/lpe-rough-hatches.cpp:234 msgid "Parallelism jitter: 1st side:" msgstr "Parallelität Schwankung: 1. Seite" -#: ../src/live_effects/lpe-rough-hatches.cpp:235 +#: ../src/live_effects/lpe-rough-hatches.cpp:234 msgid "" "Add direction randomness by moving 'bottom' half-turns tangentially to the " "boundary." @@ -10413,7 +10619,7 @@ msgstr "" "Ändert Richtung zufällig, in dem \"untere\" Wendepunkte tangential zur " "Begrenzung bewegt werden." -#: ../src/live_effects/lpe-rough-hatches.cpp:236 +#: ../src/live_effects/lpe-rough-hatches.cpp:235 msgid "" "Add direction randomness by randomly moving 'top' half-turns tangentially to " "the boundary." @@ -10421,82 +10627,82 @@ msgstr "" "Ändert Richtung zufällig, in dem \"obere\" Wendepunkte tangential zur " "Begrenzung bewegt werden." -#: ../src/live_effects/lpe-rough-hatches.cpp:237 +#: ../src/live_effects/lpe-rough-hatches.cpp:236 msgid "Variance: 1st side:" msgstr "Varianz: 1. Seite" -#: ../src/live_effects/lpe-rough-hatches.cpp:237 +#: ../src/live_effects/lpe-rough-hatches.cpp:236 msgid "Randomness of 'bottom' half-turns smoothness" msgstr "Zufall in der Glattheit \"unterer\" Wendepunkte" -#: ../src/live_effects/lpe-rough-hatches.cpp:238 +#: ../src/live_effects/lpe-rough-hatches.cpp:237 msgid "Randomness of 'top' half-turns smoothness" msgstr "Zufall in der Glattheit \"oberer\" Wendepunkte" #. -#: ../src/live_effects/lpe-rough-hatches.cpp:240 +#: ../src/live_effects/lpe-rough-hatches.cpp:239 msgid "Generate thick/thin path" msgstr "Erzeuge dicken/dünnen Pfad" -#: ../src/live_effects/lpe-rough-hatches.cpp:240 +#: ../src/live_effects/lpe-rough-hatches.cpp:239 msgid "Simulate a stroke of varying width" msgstr "Simulieren eines Striches mit variabler Breite" -#: ../src/live_effects/lpe-rough-hatches.cpp:241 +#: ../src/live_effects/lpe-rough-hatches.cpp:240 msgid "Bend hatches" msgstr "Schraffur verbiegen" -#: ../src/live_effects/lpe-rough-hatches.cpp:241 +#: ../src/live_effects/lpe-rough-hatches.cpp:240 msgid "Add a global bend to the hatches (slower)" msgstr "Globale Krümmung zu den Strichen hinzufügen (langsam)." -#: ../src/live_effects/lpe-rough-hatches.cpp:242 +#: ../src/live_effects/lpe-rough-hatches.cpp:241 msgid "Thickness: at 1st side:" msgstr "Dicke: auf der 1. Seite" -#: ../src/live_effects/lpe-rough-hatches.cpp:242 +#: ../src/live_effects/lpe-rough-hatches.cpp:241 msgid "Width at 'bottom' half-turns" msgstr "Breite an den \"unteren\" Wendepunkten" -#: ../src/live_effects/lpe-rough-hatches.cpp:243 +#: ../src/live_effects/lpe-rough-hatches.cpp:242 msgid "at 2nd side:" msgstr "auf der 2. Seite" -#: ../src/live_effects/lpe-rough-hatches.cpp:243 +#: ../src/live_effects/lpe-rough-hatches.cpp:242 msgid "Width at 'top' half-turns" msgstr "Breite an den \"oberen\" Wendepunkten" #. -#: ../src/live_effects/lpe-rough-hatches.cpp:245 +#: ../src/live_effects/lpe-rough-hatches.cpp:244 msgid "from 2nd to 1st side:" msgstr "von der 2. zur 1. Seite" -#: ../src/live_effects/lpe-rough-hatches.cpp:245 +#: ../src/live_effects/lpe-rough-hatches.cpp:244 msgid "Width from 'top' to 'bottom'" msgstr "Breite der Striche von \"oben\" nach \"unten\"" -#: ../src/live_effects/lpe-rough-hatches.cpp:246 +#: ../src/live_effects/lpe-rough-hatches.cpp:245 msgid "from 1st to 2nd side:" msgstr "von der 1. zur 2. Seite" -#: ../src/live_effects/lpe-rough-hatches.cpp:246 +#: ../src/live_effects/lpe-rough-hatches.cpp:245 msgid "Width from 'bottom' to 'top'" msgstr "Breite an den \"unteren\" Wendepunkten" -#: ../src/live_effects/lpe-rough-hatches.cpp:248 +#: ../src/live_effects/lpe-rough-hatches.cpp:247 msgid "Hatches width and dir" msgstr "Strichbreite und -richtung " -#: ../src/live_effects/lpe-rough-hatches.cpp:248 +#: ../src/live_effects/lpe-rough-hatches.cpp:247 msgid "Defines hatches frequency and direction" msgstr "Definiert Strichfrequenz und -orientierung" #. -#: ../src/live_effects/lpe-rough-hatches.cpp:250 +#: ../src/live_effects/lpe-rough-hatches.cpp:249 msgid "Global bending" msgstr "Globale Wölbung" -#: ../src/live_effects/lpe-rough-hatches.cpp:250 +#: ../src/live_effects/lpe-rough-hatches.cpp:249 msgid "" "Relative position to a reference point defines global bending direction and " "amount" @@ -10687,7 +10893,7 @@ msgid "How many construction lines (tangents) to draw" msgstr "Wie viele Konstruktionslinien (Tangenten) gezeichnet werden sollen" #: ../src/live_effects/lpe-sketch.cpp:58 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 #: ../share/extensions/render_alphabetsoup.inx.h:3 msgid "Scale:" msgstr "Skalierung:" @@ -10799,7 +11005,7 @@ msgstr "_Maximale Kompexität:" msgid "Disable effect if the output is too complex" msgstr "Deaktivieren Sie den Effekt, wenn die Ausgabe zu komplex wird." -#: ../src/live_effects/parameter/bool.cpp:68 +#: ../src/live_effects/parameter/bool.cpp:67 msgid "Change bool parameter" msgstr "Booleschen Parameter ändern" @@ -10807,12 +11013,12 @@ msgstr "Booleschen Parameter ändern" msgid "Change enumeration parameter" msgstr "Aufzählungsparameter ändern" -#: ../src/live_effects/parameter/originalpath.cpp:62 +#: ../src/live_effects/parameter/originalpath.cpp:70 #: ../src/live_effects/parameter/path.cpp:194 msgid "Link to path" msgstr "Am Pfad verknüpfen" -#: ../src/live_effects/parameter/originalpath.cpp:74 +#: ../src/live_effects/parameter/originalpath.cpp:82 msgid "Select original" msgstr "Original auswählen" @@ -10840,7 +11046,7 @@ msgstr "Pfadparameter einfügen" msgid "Link path parameter to path" msgstr "Pfadparameter mit Pfad verbinden" -#: ../src/live_effects/parameter/point.cpp:90 +#: ../src/live_effects/parameter/point.cpp:89 msgid "Change point parameter" msgstr "Punktparameter ändern" @@ -10853,7 +11059,7 @@ msgstr "" "Kontur mit Kontrollpunkt Ziehen, um die Strichstärke zu verändern. " "STRG+Klick fügt Kontrollpunkt hinzu, STRG+Alt+Klick löscht ihn." -#: ../src/live_effects/parameter/random.cpp:135 +#: ../src/live_effects/parameter/random.cpp:134 msgid "Change random parameter" msgstr "Zufallsparameter ändern" @@ -10881,42 +11087,42 @@ msgstr "" msgid "Unable to find node ID: '%s'\n" msgstr "Kann Knoten-Kennung »%s« nicht finden.\n" -#: ../src/main.cpp:269 +#: ../src/main.cpp:280 msgid "Print the Inkscape version number" msgstr "Versionsnummer von Inkscape ausgeben" -#: ../src/main.cpp:274 +#: ../src/main.cpp:285 msgid "Do not use X server (only process files from console)" msgstr "X-Server nicht verwenden (Dateien nur mittels Konsole verarbeiten)" -#: ../src/main.cpp:279 +#: ../src/main.cpp:290 msgid "Try to use X server (even if $DISPLAY is not set)" msgstr "" "Versuche, den X-Server zu verwenden (auch wenn die Umgebungsvariable " "»$DISPLAY« nicht gesetzt wurde)" -#: ../src/main.cpp:284 +#: ../src/main.cpp:295 msgid "Open specified document(s) (option string may be excluded)" msgstr "" "Angegebene Dokumente öffnen (Optionszeichenkette muss nicht übergeben werden)" -#: ../src/main.cpp:285 ../src/main.cpp:290 ../src/main.cpp:295 -#: ../src/main.cpp:362 ../src/main.cpp:367 ../src/main.cpp:372 -#: ../src/main.cpp:377 ../src/main.cpp:388 +#: ../src/main.cpp:296 ../src/main.cpp:301 ../src/main.cpp:306 +#: ../src/main.cpp:378 ../src/main.cpp:383 ../src/main.cpp:388 +#: ../src/main.cpp:399 ../src/main.cpp:416 msgid "FILENAME" msgstr "DATEINAME" -#: ../src/main.cpp:289 +#: ../src/main.cpp:300 msgid "Print document(s) to specified output file (use '| program' for pipe)" msgstr "" "Dokumente in angegebene Ausgabedatei drucken (verwenden Sie »| Programm« zur " "Weiterleitung)" -#: ../src/main.cpp:294 +#: ../src/main.cpp:305 msgid "Export document to a PNG file" msgstr "Das Dokument in eine PNG-Datei exportieren" -#: ../src/main.cpp:299 +#: ../src/main.cpp:310 msgid "" "Resolution for exporting to bitmap and for rasterization of filters in PS/" "EPS/PDF (default 90)" @@ -10924,11 +11130,11 @@ msgstr "" "Auflösung beim Exportieren von Bitmaps und Rasterisierung von Filtern in PS/" "EPS/PDF (Vorgabe ist 90)" -#: ../src/main.cpp:300 ../src/ui/widget/rendering-options.cpp:35 +#: ../src/main.cpp:311 ../src/ui/widget/rendering-options.cpp:34 msgid "DPI" msgstr "DPI" -#: ../src/main.cpp:304 +#: ../src/main.cpp:315 msgid "" "Exported area in SVG user units (default is the page; 0,0 is lower-left " "corner)" @@ -10936,20 +11142,28 @@ msgstr "" "Exportierter Bereich in SVG-Benutzereinheiten (Vorgabe: gesamte " "Zeichenfläche, »0,0« ist die untere linke Ecke)" -#: ../src/main.cpp:305 +#: ../src/main.cpp:316 msgid "x0:y0:x1:y1" msgstr "X0:Y0:X1:Y1" -#: ../src/main.cpp:309 +#: ../src/main.cpp:320 msgid "Exported area is the entire drawing (not page)" msgstr "" "Exportierter Bereich ist die gesamte Zeichnung, nicht die Zeichenfläche" -#: ../src/main.cpp:314 +#: ../src/main.cpp:325 msgid "Exported area is the entire page" msgstr "Exportierter Bereich ist die gesamte Zeichenfläche" -#: ../src/main.cpp:319 +#: ../src/main.cpp:330 +msgid "Only for PS/EPS/PDF, sets margin in mm around exported area (default 0)" +msgstr "" + +#: ../src/main.cpp:331 ../src/main.cpp:373 +msgid "VALUE" +msgstr "WERT" + +#: ../src/main.cpp:335 msgid "" "Snap the bitmap export area outwards to the nearest integer values (in SVG " "user units)" @@ -10957,84 +11171,102 @@ msgstr "" "Die Fläche für den Export einer Bitmap nach außen auf die nächsten " "Ganzzahlen aufrunden (in SVG-Benutzereinheiten)" -#: ../src/main.cpp:324 +#: ../src/main.cpp:340 msgid "The width of exported bitmap in pixels (overrides export-dpi)" msgstr "Breite der erzeugten Bitmap in Pixeln (überschreibt Export-dpi)" -#: ../src/main.cpp:325 +#: ../src/main.cpp:341 msgid "WIDTH" msgstr "BREITE" -#: ../src/main.cpp:329 +#: ../src/main.cpp:345 msgid "The height of exported bitmap in pixels (overrides export-dpi)" msgstr "Höhe der erzeugten Bitmap in Pixeln (überschreibt Export-dpi)" -#: ../src/main.cpp:330 +#: ../src/main.cpp:346 msgid "HEIGHT" msgstr "HÖHE" -#: ../src/main.cpp:334 +#: ../src/main.cpp:350 msgid "The ID of the object to export" msgstr "Kennung des zu exportierenden Objektes" -#: ../src/main.cpp:335 ../src/main.cpp:433 -#: ../src/ui/dialog/inkscape-preferences.cpp:1467 +#: ../src/main.cpp:351 ../src/main.cpp:461 +#: ../src/ui/dialog/inkscape-preferences.cpp:1485 msgid "ID" msgstr "Kennung" #. TRANSLATORS: this means: "Only export the object whose id is given in --export-id". #. See "man inkscape" for details. -#: ../src/main.cpp:341 +#: ../src/main.cpp:357 msgid "" "Export just the object with export-id, hide all others (only with export-id)" msgstr "" "Nur das Objekt mit der angegebenen Export-ID exportieren, alle anderen " "auslassen" -#: ../src/main.cpp:346 +#: ../src/main.cpp:362 msgid "Use stored filename and DPI hints when exporting (only with export-id)" msgstr "" "Verwende gespeicherten Dateinamen und DPI-Hinweise zum Exportieren (nur mit " "Export-ID)" -#: ../src/main.cpp:351 +#: ../src/main.cpp:367 msgid "Background color of exported bitmap (any SVG-supported color string)" msgstr "" "Hintergrundfarbe der exportierten Bitmap (jede von SVG unterstützte " "Farbzeichenkette)" -#: ../src/main.cpp:352 +#: ../src/main.cpp:368 msgid "COLOR" msgstr "FARBE" -#: ../src/main.cpp:356 +#: ../src/main.cpp:372 msgid "Background opacity of exported bitmap (either 0.0 to 1.0, or 1 to 255)" msgstr "" "Hintergrunddeckkraft der exportierten Bitmap (0,0 bis 1,0 oder 1 bis 255)" -#: ../src/main.cpp:357 -msgid "VALUE" -msgstr "WERT" - -#: ../src/main.cpp:361 +#: ../src/main.cpp:377 msgid "Export document to plain SVG file (no sodipodi or inkscape namespaces)" msgstr "" "Dokument in reine SVG-Datei exportieren (ohne Sodipodi- oder Inkscape-" "Namensräume)" -#: ../src/main.cpp:366 +#: ../src/main.cpp:382 msgid "Export document to a PS file" msgstr "Das Dokument in eine PS-Datei exportieren" -#: ../src/main.cpp:371 +#: ../src/main.cpp:387 msgid "Export document to an EPS file" msgstr "Das Dokument in eine EPS-Datei exportieren" -#: ../src/main.cpp:376 +#: ../src/main.cpp:392 +msgid "" +"Choose the PostScript Level used to export. Possible choices are 2 (the " +"default) and 3" +msgstr "" + +#: ../src/main.cpp:394 +#, fuzzy +msgid "PS Level" +msgstr "Ebene" + +#: ../src/main.cpp:398 msgid "Export document to a PDF file" msgstr "Das Dokument in eine PDF-Datei exportieren" -#: ../src/main.cpp:381 +#. TRANSLATORS: "--export-pdf-version" is an Inkscape command line option; see "inkscape --help" +#: ../src/main.cpp:404 +msgid "" +"Export PDF to given version. (hint: make sure to input the exact string " +"found in the PDF export dialog, e.g. \"PDF 1.4\" which is PDF-a conformant)" +msgstr "" + +#: ../src/main.cpp:405 +msgid "PDF_VERSION" +msgstr "PDF_VERSION" + +#: ../src/main.cpp:409 msgid "" "Export PDF/PS/EPS without text. Besides the PDF/PS/EPS, a LaTeX file is " "exported, putting the text on top of the PDF/PS/EPS file. Include the result " @@ -11044,22 +11276,22 @@ msgstr "" "exportiert, die den Text oben auf die PDF/PS/EPS Datei legt. Einbinden des " "Ergebnisses in Latex mit: \\input{latexfile.tex}" -#: ../src/main.cpp:387 +#: ../src/main.cpp:415 msgid "Export document to an Enhanced Metafile (EMF) File" msgstr "Das Dokument in eine EMF-Datei exportieren" -#: ../src/main.cpp:393 +#: ../src/main.cpp:421 msgid "Convert text object to paths on export (PS, EPS, PDF, SVG)" msgstr "Textelemente beim Export (PS, EPS, PDF, SVG) in Pfade umwandeln " -#: ../src/main.cpp:398 +#: ../src/main.cpp:426 msgid "" "Render filtered objects without filters, instead of rasterizing (PS, EPS, " "PDF)" msgstr "Objekte ohne Filter zeichnen, statt Rasterisierung (PS, EPS, PDF)" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:404 +#: ../src/main.cpp:432 msgid "" "Query the X coordinate of the drawing or, if specified, of the object with --" "query-id" @@ -11068,7 +11300,7 @@ msgstr "" "Objektes" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:410 +#: ../src/main.cpp:438 msgid "" "Query the Y coordinate of the drawing or, if specified, of the object with --" "query-id" @@ -11077,7 +11309,7 @@ msgstr "" "Objektes" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:416 +#: ../src/main.cpp:444 msgid "" "Query the width of the drawing or, if specified, of the object with --query-" "id" @@ -11086,55 +11318,55 @@ msgstr "" "Objektes" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:422 +#: ../src/main.cpp:450 msgid "" "Query the height of the drawing or, if specified, of the object with --query-" "id" msgstr "" "Abfragen der Höhe der Zeichnung oder des mit --query-id angegebenen Objektes" -#: ../src/main.cpp:427 +#: ../src/main.cpp:455 msgid "List id,x,y,w,h for all objects" msgstr "id, x, y, w und h für alle Objekte auflisten" -#: ../src/main.cpp:432 +#: ../src/main.cpp:460 msgid "The ID of the object whose dimensions are queried" msgstr "Objekt-ID-Kennung, dessen Abmessungen abgefragt werden" #. TRANSLATORS: this option makes Inkscape print the name (path) of the extension directory -#: ../src/main.cpp:438 +#: ../src/main.cpp:466 msgid "Print out the extension directory and exit" msgstr "Erweiterungsverzeichnis ausgeben und beenden" -#: ../src/main.cpp:443 +#: ../src/main.cpp:471 msgid "Remove unused definitions from the defs section(s) of the document" msgstr "Unbenutzte Elemente aus den <defs> des Dokuments entfernen" -#: ../src/main.cpp:448 +#: ../src/main.cpp:476 msgid "List the IDs of all the verbs in Inkscape" msgstr "Liste die Kennungen von allen Verben in Inkscape" -#: ../src/main.cpp:453 +#: ../src/main.cpp:481 msgid "Verb to call when Inkscape opens." msgstr "Aufzurufendes Verb wenn Inkscape startet." -#: ../src/main.cpp:454 +#: ../src/main.cpp:482 msgid "VERB-ID" msgstr "VERB-ID" -#: ../src/main.cpp:458 +#: ../src/main.cpp:486 msgid "Object ID to select when Inkscape opens." msgstr "Auszuwählende Objekt-Kennung wenn Inkscape startet." -#: ../src/main.cpp:459 +#: ../src/main.cpp:487 msgid "OBJECT-ID" msgstr "OBJECT-ID" -#: ../src/main.cpp:463 +#: ../src/main.cpp:491 msgid "Start Inkscape in interactive shell mode." msgstr "Inkscape in interaktivem Konsolenmodus starten." -#: ../src/main.cpp:807 ../src/main.cpp:1164 +#: ../src/main.cpp:835 ../src/main.cpp:1192 msgid "" "[OPTIONS...] [FILE...]\n" "\n" @@ -11145,7 +11377,7 @@ msgstr "" "Verfügbare Optionen:" #. ## Add a menu for clear() -#: ../src/menus-skeleton.h:16 ../src/ui/dialog/debug.cpp:79 +#: ../src/menus-skeleton.h:16 ../src/ui/dialog/debug.cpp:83 msgid "_File" msgstr "_Datei" @@ -11155,11 +11387,11 @@ msgstr "_Neu" #. " \n" #. " \n" -#: ../src/menus-skeleton.h:43 ../src/verbs.cpp:2570 ../src/verbs.cpp:2576 +#: ../src/menus-skeleton.h:43 ../src/verbs.cpp:2575 ../src/verbs.cpp:2581 msgid "_Edit" msgstr "_Bearbeiten" -#: ../src/menus-skeleton.h:53 ../src/verbs.cpp:2336 +#: ../src/menus-skeleton.h:53 ../src/verbs.cpp:2341 msgid "Paste Si_ze" msgstr "_Größe einfügen" @@ -11220,31 +11452,92 @@ msgstr "_Maskierung" msgid "Patter_n" msgstr "M_uster" -#: ../src/menus-skeleton.h:202 -msgid "Symbo_l" -msgstr "Symbo_l" - -#: ../src/menus-skeleton.h:226 +#: ../src/menus-skeleton.h:222 msgid "_Path" msgstr "_Pfad" # !!! -#: ../src/menus-skeleton.h:271 +#: ../src/menus-skeleton.h:267 msgid "Filter_s" msgstr "_Filter" -#: ../src/menus-skeleton.h:277 +#: ../src/menus-skeleton.h:273 msgid "Exte_nsions" msgstr "E_rweiterungen" -#: ../src/menus-skeleton.h:283 +#: ../src/menus-skeleton.h:279 msgid "_Help" msgstr "_Hilfe" -#: ../src/menus-skeleton.h:287 +#: ../src/menus-skeleton.h:283 msgid "Tutorials" msgstr "Einführungen" +#. TRANSLATORS: Mind the space in front. This is part of a compound message +#: ../src/mesh-context.cpp:141 ../src/mesh-context.cpp:152 +#, fuzzy, c-format +msgid " out of %d mesh handle" +msgid_plural " out of %d mesh handles" +msgstr[0] " von %d Farbverlaufs-Anfasser gewählt" +msgstr[1] " von %d Farbverlaufs-Anfassern gewählt" + +#: ../src/mesh-context.cpp:159 +#, fuzzy, c-format +msgid "%d mesh handle selected out of %d" +msgid_plural "%d mesh handles selected out of %d" +msgstr[0] "%d Verlaufs-Handle von %d ausgewählt" +msgstr[1] "%d Verlaufs-Handles von %d ausgewählt" + +#. TRANSLATORS: The plural refers to number of selected objects +#: ../src/mesh-context.cpp:166 +#, fuzzy, c-format +msgid "No mesh handles selected out of %d on %d selected object" +msgid_plural "No mesh handles selected out of %d on %d selected objects" +msgstr[0] "" +"Kein Verlaufs-Handle von %d ausgewählt bei %d markiertem Objekt" +msgstr[1] "" +"Keine Verlaufs-Handles von %d ausgewählt bei %d markierten Objekten" + +#: ../src/mesh-context.cpp:336 +msgid "Split mesh row/column" +msgstr "" + +#: ../src/mesh-context.cpp:422 +msgid "Toggled mesh path type." +msgstr "" + +#: ../src/mesh-context.cpp:426 +msgid "Approximated arc for mesh side." +msgstr "Durchschnittlicher Winkel für Gitterseite." + +#: ../src/mesh-context.cpp:430 +msgid "Toggled mesh tensors." +msgstr "" + +#: ../src/mesh-context.cpp:434 +#, fuzzy +msgid "Smoothed mesh corner color." +msgstr "Ecken glätten" + +#: ../src/mesh-context.cpp:438 +#, fuzzy +msgid "Picked mesh corner color." +msgstr "Farbton des Farbwertes übernehmen" + +#: ../src/mesh-context.cpp:523 +msgid "Create default mesh" +msgstr "Standard-Gitter erzeugen" + +#: ../src/mesh-context.cpp:743 +#, fuzzy +msgid "FIXMECtrl: snap mesh angle" +msgstr "Strg: Winkel einrasten" + +#: ../src/mesh-context.cpp:744 +#, fuzzy +msgid "FIXMEShift: draw mesh around the starting point" +msgstr "Umschalt: Um Mittelpunkt zeichnen" + #: ../src/object-edit.cpp:439 msgid "" "Adjust the horizontal rounding radius; with Ctrl to make the " @@ -11412,19 +11705,19 @@ msgstr "" "Keine Objekte ausgewählt, die in einen Pfad umgewandelt werden " "könnten." -#: ../src/path-chemistry.cpp:602 +#: ../src/path-chemistry.cpp:610 msgid "Select path(s) to reverse." msgstr "Mindestens einen Pfad zum Umkehren auswählen." -#: ../src/path-chemistry.cpp:611 +#: ../src/path-chemistry.cpp:619 msgid "Reversing paths..." msgstr "Kehre Pfadrichtungen um..." -#: ../src/path-chemistry.cpp:646 +#: ../src/path-chemistry.cpp:654 msgid "Reverse path" msgstr "Pfadrichtung umkehren" -#: ../src/path-chemistry.cpp:648 +#: ../src/path-chemistry.cpp:656 msgid "No paths to reverse in the selection." msgstr "Die Auswahl enthält keine Pfade zum Umkehren." @@ -11647,7 +11940,8 @@ msgid "CC Attribution-NonCommercial-NoDerivs" msgstr "CC-Namensnennung-NichtKommerziell-KeineBearbeitung" #: ../src/rdf.cpp:205 -msgid "Public Domain" +#, fuzzy +msgid "CC0 Public Domain Dedication" msgstr "Gemeinfrei (Public Domain)" #: ../src/rdf.cpp:210 @@ -11742,7 +12036,7 @@ msgstr "Beziehung:" msgid "Unique URI to a related document" msgstr "Eindeutige URI zu einem verwandten Dokument." -#: ../src/rdf.cpp:264 ../src/ui/dialog/inkscape-preferences.cpp:1819 +#: ../src/rdf.cpp:264 ../src/ui/dialog/inkscape-preferences.cpp:1837 msgid "Language:" msgstr "Sprache:" @@ -11867,12 +12161,16 @@ msgstr "" msgid "Create rectangle" msgstr "Rechteck erzeugen" -#: ../src/select-context.cpp:175 +#: ../src/resource-manager.cpp:332 +msgid "Fixup broken links" +msgstr "Defekte Links fixen" + +#: ../src/select-context.cpp:181 msgid "Click selection to toggle scale/rotation handles" msgstr "" "Klicken Sie auf die Auswahl, um zwischen Skalieren und Rotieren umzuschalten" -#: ../src/select-context.cpp:176 +#: ../src/select-context.cpp:182 msgid "" "No objects selected. Click, Shift+click, Alt+scroll mouse on top of objects, " "or drag around objects to select." @@ -11881,16 +12179,16 @@ msgstr "" "auszuwählen." # !!! -#: ../src/select-context.cpp:235 +#: ../src/select-context.cpp:241 msgid "Move canceled." msgstr "Verschieben abgebrochen." # !!! -#: ../src/select-context.cpp:243 +#: ../src/select-context.cpp:249 msgid "Selection canceled." msgstr "Auswahl abgebrochen." -#: ../src/select-context.cpp:615 +#: ../src/select-context.cpp:626 msgid "" "Draw over objects to select them; release Alt to switch to " "rubberband selection" @@ -11898,7 +12196,7 @@ msgstr "" "Zeichnen über Objekten wählt sie aus; Alt loslassen, um mit " "Gummiband auszuwählen" -#: ../src/select-context.cpp:617 +#: ../src/select-context.cpp:628 msgid "" "Drag around objects to select them; press Alt to switch to " "touch selection" @@ -11906,19 +12204,19 @@ msgstr "" "Ziehen um Objekte wählt sie aus; Alt drücken, um durch " "Berührung auszuwählen" -#: ../src/select-context.cpp:873 +#: ../src/select-context.cpp:900 msgid "Ctrl: click to select in groups; drag to move hor/vert" msgstr "" "Strg: Klick um in Gruppierung auszuwählen; Ziehen um horizontal/" "vertikal bewegen" -#: ../src/select-context.cpp:874 +#: ../src/select-context.cpp:901 msgid "Shift: click to toggle select; drag for rubberband selection" msgstr "" "Umschalt: Klick um Auswahl aktivieren/deaktivieren, Ziehen für " "Gummiband-Auswahl" -#: ../src/select-context.cpp:875 +#: ../src/select-context.cpp:902 msgid "" "Alt: click to select under; scroll mouse-wheel to cycle-select; drag " "to move selected or select by touch" @@ -11926,63 +12224,63 @@ msgstr "" "Alt: Klick um verdeckte Objekte auswählen; Ziehen um gewähltes Objekt " "zu verschieben oder durch Berühren auszuwählen" -#: ../src/select-context.cpp:1046 +#: ../src/select-context.cpp:1073 msgid "Selected object is not a group. Cannot enter." msgstr "Ausgewähltes Objekt ist keine Gruppe - kann diese nicht betreten." -#: ../src/selection-chemistry.cpp:348 +#: ../src/selection-chemistry.cpp:377 msgid "Delete text" msgstr "Text löschen" -#: ../src/selection-chemistry.cpp:356 +#: ../src/selection-chemistry.cpp:385 msgid "Nothing was deleted." msgstr "Es wurde nichts gelöscht." -#: ../src/selection-chemistry.cpp:374 ../src/text-context.cpp:1008 +#: ../src/selection-chemistry.cpp:404 ../src/text-context.cpp:1030 #: ../src/ui/dialog/calligraphic-profile-rename.cpp:75 -#: ../src/ui/dialog/swatches.cpp:278 ../src/widgets/erasor-toolbar.cpp:116 +#: ../src/ui/dialog/swatches.cpp:278 ../src/widgets/erasor-toolbar.cpp:114 #: ../src/widgets/gradient-toolbar.cpp:1193 #: ../src/widgets/gradient-toolbar.cpp:1207 #: ../src/widgets/gradient-toolbar.cpp:1221 -#: ../src/widgets/node-toolbar.cpp:411 +#: ../src/widgets/node-toolbar.cpp:410 msgid "Delete" msgstr "Löschen" -#: ../src/selection-chemistry.cpp:402 +#: ../src/selection-chemistry.cpp:432 msgid "Select object(s) to duplicate." msgstr "Objekt(e) zum Duplizieren auswählen." -#: ../src/selection-chemistry.cpp:511 +#: ../src/selection-chemistry.cpp:541 msgid "Delete all" msgstr "Alles löschen" -#: ../src/selection-chemistry.cpp:707 +#: ../src/selection-chemistry.cpp:737 msgid "Select some objects to group." msgstr "Einige Objekte zum Gruppieren auswählen." -#: ../src/selection-chemistry.cpp:722 ../src/selection-describer.cpp:53 +#: ../src/selection-chemistry.cpp:752 ../src/selection-describer.cpp:54 msgid "Group" msgstr "Gruppieren" -#: ../src/selection-chemistry.cpp:736 +#: ../src/selection-chemistry.cpp:766 msgid "Select a group to ungroup." msgstr "" "Eine Gruppe auswählen, deren Gruppierung aufgehoben werden soll." -#: ../src/selection-chemistry.cpp:777 +#: ../src/selection-chemistry.cpp:809 msgid "No groups to ungroup in the selection." msgstr "Keine Gruppe zum Aufheben in dieser Auswahl." -#: ../src/selection-chemistry.cpp:783 ../src/sp-item-group.cpp:475 +#: ../src/selection-chemistry.cpp:815 ../src/sp-item-group.cpp:479 msgid "Ungroup" msgstr "Gruppierung aufheben" -#: ../src/selection-chemistry.cpp:869 +#: ../src/selection-chemistry.cpp:901 msgid "Select object(s) to raise." msgstr "Objekte zum Anheben auswählen." -#: ../src/selection-chemistry.cpp:875 ../src/selection-chemistry.cpp:935 -#: ../src/selection-chemistry.cpp:968 ../src/selection-chemistry.cpp:1032 +#: ../src/selection-chemistry.cpp:907 ../src/selection-chemistry.cpp:967 +#: ../src/selection-chemistry.cpp:1000 ../src/selection-chemistry.cpp:1064 msgid "" "You cannot raise/lower objects from different groups or layers." msgstr "" @@ -11990,214 +12288,214 @@ msgstr "" "angehoben oder abgesenkt werden." #. TRANSLATORS: "Raise" means "to raise an object" in the undo history -#: ../src/selection-chemistry.cpp:915 +#: ../src/selection-chemistry.cpp:947 msgctxt "Undo action" msgid "Raise" msgstr "Anheben" -#: ../src/selection-chemistry.cpp:927 +#: ../src/selection-chemistry.cpp:959 msgid "Select object(s) to raise to top." msgstr "" "Objekt(e) auswählen, die in den Vordergrund angehoben werden sollen." -#: ../src/selection-chemistry.cpp:950 +#: ../src/selection-chemistry.cpp:982 msgid "Raise to top" msgstr "Nach ganz oben anheben" -#: ../src/selection-chemistry.cpp:962 +#: ../src/selection-chemistry.cpp:994 msgid "Select object(s) to lower." msgstr "Objekt(e) zum Absenken auswählen." -#: ../src/selection-chemistry.cpp:1012 +#: ../src/selection-chemistry.cpp:1044 msgid "Lower" msgstr "Absenken" -#: ../src/selection-chemistry.cpp:1024 +#: ../src/selection-chemistry.cpp:1056 msgid "Select object(s) to lower to bottom." msgstr "" "Objekt(e) auswählen, die ganz in den Hintergrund abgesenkt werden " "sollen." -#: ../src/selection-chemistry.cpp:1059 +#: ../src/selection-chemistry.cpp:1091 msgid "Lower to bottom" msgstr "Nach ganz unten absenken" # !!! just make the menu item insensitive -#: ../src/selection-chemistry.cpp:1066 +#: ../src/selection-chemistry.cpp:1098 msgid "Nothing to undo." msgstr "Es gibt nichts rückgängig zu machen." # # !!! just make the menu item insensitive -#: ../src/selection-chemistry.cpp:1074 +#: ../src/selection-chemistry.cpp:1106 msgid "Nothing to redo." msgstr "Es gibt nichts wiederherzustellen." -#: ../src/selection-chemistry.cpp:1135 +#: ../src/selection-chemistry.cpp:1167 msgid "Paste" msgstr "Einfügen" -#: ../src/selection-chemistry.cpp:1143 +#: ../src/selection-chemistry.cpp:1175 msgid "Paste style" msgstr "Stil anwenden" -#: ../src/selection-chemistry.cpp:1153 +#: ../src/selection-chemistry.cpp:1185 msgid "Paste live path effect" msgstr "Pfad-Effekt einfügen" -#: ../src/selection-chemistry.cpp:1174 +#: ../src/selection-chemistry.cpp:1206 msgid "Select object(s) to remove live path effects from." msgstr "Objekt(e) auswählen, um den Pfad-Effekt zu entfernen." -#: ../src/selection-chemistry.cpp:1186 +#: ../src/selection-chemistry.cpp:1218 msgid "Remove live path effect" msgstr "Pfad-Effekt entfernen" -#: ../src/selection-chemistry.cpp:1197 +#: ../src/selection-chemistry.cpp:1229 msgid "Select object(s) to remove filters from." msgstr "Text auswählen, um Filter zu entfernen." -#: ../src/selection-chemistry.cpp:1207 -#: ../src/ui/dialog/filter-effects-dialog.cpp:1443 +#: ../src/selection-chemistry.cpp:1239 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1448 msgid "Remove filter" msgstr "Filter entfernen" -#: ../src/selection-chemistry.cpp:1216 +#: ../src/selection-chemistry.cpp:1248 msgid "Paste size" msgstr "Größe einfügen" -#: ../src/selection-chemistry.cpp:1225 +#: ../src/selection-chemistry.cpp:1257 msgid "Paste size separately" msgstr "Größe getrennt einfügen" -#: ../src/selection-chemistry.cpp:1235 +#: ../src/selection-chemistry.cpp:1267 msgid "Select object(s) to move to the layer above." msgstr "" "Objekt(e) auswählen, welche eine Ebene weiter nach oben verschoben " "werden sollen." -#: ../src/selection-chemistry.cpp:1261 +#: ../src/selection-chemistry.cpp:1293 msgid "Raise to next layer" msgstr "Auf nächste Ebene anheben" -#: ../src/selection-chemistry.cpp:1268 +#: ../src/selection-chemistry.cpp:1300 msgid "No more layers above." msgstr "Keine weiteren Ebenen über dieser." -#: ../src/selection-chemistry.cpp:1280 +#: ../src/selection-chemistry.cpp:1312 msgid "Select object(s) to move to the layer below." msgstr "" "Objekt(e) auswählen, welche in die Ebene darunter verschoben werden " "sollen." -#: ../src/selection-chemistry.cpp:1306 +#: ../src/selection-chemistry.cpp:1338 msgid "Lower to previous layer" msgstr "Zur nächsten Ebene absenken" -#: ../src/selection-chemistry.cpp:1313 +#: ../src/selection-chemistry.cpp:1345 msgid "No more layers below." msgstr "Keine weiteren Ebenen unter dieser." -#: ../src/selection-chemistry.cpp:1325 +#: ../src/selection-chemistry.cpp:1357 msgid "Select object(s) to move." msgstr "Objekt(e) zum Verschieben auswählen." -#: ../src/selection-chemistry.cpp:1342 ../src/verbs.cpp:2513 +#: ../src/selection-chemistry.cpp:1374 ../src/verbs.cpp:2518 msgid "Move selection to layer" msgstr "Auswahl zur Ebene verschieben" -#: ../src/selection-chemistry.cpp:1566 +#: ../src/selection-chemistry.cpp:1598 msgid "Remove transform" msgstr "Transformationen zurücksetzen" -#: ../src/selection-chemistry.cpp:1669 +#: ../src/selection-chemistry.cpp:1701 msgid "Rotate 90° CCW" msgstr "Um 90° entgegen Uhrzeigersinn rotieren" -#: ../src/selection-chemistry.cpp:1669 +#: ../src/selection-chemistry.cpp:1701 msgid "Rotate 90° CW" msgstr "Um 90° im Uhrzeigersinn rotieren" -#: ../src/selection-chemistry.cpp:1690 ../src/seltrans.cpp:471 -#: ../src/ui/dialog/transformation.cpp:888 +#: ../src/selection-chemistry.cpp:1722 ../src/seltrans.cpp:485 +#: ../src/ui/dialog/transformation.cpp:892 msgid "Rotate" msgstr "Drehen" -#: ../src/selection-chemistry.cpp:2069 +#: ../src/selection-chemistry.cpp:2101 msgid "Rotate by pixels" msgstr "Um Pixel rotieren" -#: ../src/selection-chemistry.cpp:2099 ../src/seltrans.cpp:468 -#: ../src/ui/dialog/transformation.cpp:863 +#: ../src/selection-chemistry.cpp:2131 ../src/seltrans.cpp:482 +#: ../src/ui/dialog/transformation.cpp:867 #: ../share/extensions/interp_att_g.inx.h:12 msgid "Scale" msgstr "Skalieren" -#: ../src/selection-chemistry.cpp:2124 +#: ../src/selection-chemistry.cpp:2156 msgid "Scale by whole factor" msgstr "Um einen ganzzahligen Faktor skalieren" -#: ../src/selection-chemistry.cpp:2139 +#: ../src/selection-chemistry.cpp:2171 msgid "Move vertically" msgstr "Vertikal verschieben" -#: ../src/selection-chemistry.cpp:2142 +#: ../src/selection-chemistry.cpp:2174 msgid "Move horizontally" msgstr "Horizontal verschieben" -#: ../src/selection-chemistry.cpp:2145 ../src/selection-chemistry.cpp:2171 -#: ../src/seltrans.cpp:465 ../src/ui/dialog/transformation.cpp:802 +#: ../src/selection-chemistry.cpp:2177 ../src/selection-chemistry.cpp:2203 +#: ../src/seltrans.cpp:479 ../src/ui/dialog/transformation.cpp:806 msgid "Move" msgstr "Verschieben" -#: ../src/selection-chemistry.cpp:2165 +#: ../src/selection-chemistry.cpp:2197 msgid "Move vertically by pixels" msgstr "Vertikal um einzelne Pixel verschieben" -#: ../src/selection-chemistry.cpp:2168 +#: ../src/selection-chemistry.cpp:2200 msgid "Move horizontally by pixels" msgstr "Horizontal um einzelne Pixel verschieben" -#: ../src/selection-chemistry.cpp:2300 +#: ../src/selection-chemistry.cpp:2332 msgid "The selection has no applied path effect." msgstr "Auf die Selektion ist kein Pfad-Effekt angewandt." -#: ../src/selection-chemistry.cpp:2503 +#: ../src/selection-chemistry.cpp:2535 msgctxt "Action" msgid "Clone" msgstr "Klone" -#: ../src/selection-chemistry.cpp:2519 +#: ../src/selection-chemistry.cpp:2551 msgid "Select clones to relink." msgstr "Klon auswählen, um wieder zu verknüpfen" -#: ../src/selection-chemistry.cpp:2526 +#: ../src/selection-chemistry.cpp:2558 msgid "Copy an object to clipboard to relink clones to." msgstr "Kopiert ein Objekt in die Ablage als Elter für Klone." -#: ../src/selection-chemistry.cpp:2550 +#: ../src/selection-chemistry.cpp:2582 msgid "No clones to relink in the selection." msgstr "" "Keine Klone in der Auswahl, deren Verknüpfung erneut gesetzt werden " "kann." -#: ../src/selection-chemistry.cpp:2553 +#: ../src/selection-chemistry.cpp:2585 msgid "Relink clone" msgstr "Klon wiederverbinden" -#: ../src/selection-chemistry.cpp:2567 +#: ../src/selection-chemistry.cpp:2599 msgid "Select clones to unlink." msgstr "Klon auswählen, dessen Verknüpfung aufgehoben werden soll." -#: ../src/selection-chemistry.cpp:2621 +#: ../src/selection-chemistry.cpp:2653 msgid "No clones to unlink in the selection." msgstr "" "Keine Klone in der Auswahl, deren Verknüpfung aufgehoben werden kann." -#: ../src/selection-chemistry.cpp:2625 +#: ../src/selection-chemistry.cpp:2657 msgid "Unlink clone" msgstr "Klonverbindung auftrennen" -#: ../src/selection-chemistry.cpp:2638 +#: ../src/selection-chemistry.cpp:2670 msgid "" "Select a clone to go to its original. Select a linked offset " "to go to its source. Select a text on path to go to the path. Select " @@ -12208,7 +12506,7 @@ msgstr "" "den Ausgangspfad zu finden. Fließtextpfad auswählen, um seinen Rahmen " "zu finden." -#: ../src/selection-chemistry.cpp:2671 +#: ../src/selection-chemistry.cpp:2703 msgid "" "Cannot find the object to select (orphaned clone, offset, textpath, " "flowed text?)" @@ -12216,7 +12514,7 @@ msgstr "" "Gesuchtes Objekt nicht gefunden - vielleicht ist der Klon, der " "verbundene Versatz, der Textpfad oder der Fließtext verwaist?" -#: ../src/selection-chemistry.cpp:2677 +#: ../src/selection-chemistry.cpp:2709 msgid "" "The object you're trying to select is not visible (it is in <" "defs>)" @@ -12224,293 +12522,309 @@ msgstr "" "Dieses Objekt kann nicht ausgewählt werden - es ist unsichtbar und " "befindet sich in <defs>" -#: ../src/selection-chemistry.cpp:2722 +#: ../src/selection-chemistry.cpp:2754 msgid "Select one path to clone." msgstr "Wähle ein Pfad zum Klonen aus." -#: ../src/selection-chemistry.cpp:2726 +#: ../src/selection-chemistry.cpp:2758 msgid "Select one path to clone." msgstr "Wähle ein Pfad zum Klonen aus." -#: ../src/selection-chemistry.cpp:2781 +#: ../src/selection-chemistry.cpp:2813 msgid "Select object(s) to convert to marker." msgstr "" "Objekt(e) auswählen, die in ein Füllmuster umgewandelt werden sollen." -#: ../src/selection-chemistry.cpp:2849 +#: ../src/selection-chemistry.cpp:2881 msgid "Objects to marker" msgstr "Objekte in Linienmarkierungen umwandeln" -#: ../src/selection-chemistry.cpp:2877 +#: ../src/selection-chemistry.cpp:2909 msgid "Select object(s) to convert to guides." msgstr "Objekt(e) auswählen, die in Führungs umgewandelt werden sollen." -#: ../src/selection-chemistry.cpp:2889 +#: ../src/selection-chemistry.cpp:2921 msgid "Objects to guides" msgstr "Objekte in Führungslinien umwandeln" -#: ../src/selection-chemistry.cpp:2909 -msgid "Select one group to convert to symbol." +#: ../src/selection-chemistry.cpp:2940 +#, fuzzy +msgid "Select groups to convert to symbols." msgstr "Wählen Sie eine Gruppe, um zum Symbol zu konvertieren." -#: ../src/selection-chemistry.cpp:2917 -msgid "Select only one group to convert to symbol." -msgstr "Nur eine Gruppe für Symbolkonvertierung auswählen." - -#: ../src/selection-chemistry.cpp:2923 -msgid "Select original (Shift+D) to convert to symbol." -msgstr "Original (Umschalt+D) wählen, um zum Symbol zu konvertieren." - -#: ../src/selection-chemistry.cpp:2929 -msgid "Group selection first to convert to symbol." -msgstr "Gruppieren der Auswahl bevor Konvertierung zum Symbol" +#: ../src/selection-chemistry.cpp:2960 +#, fuzzy +msgid "No groups converted to symbols." +msgstr "Wählen Sie eine Gruppe, um zum Symbol zu konvertieren." -#: ../src/selection-chemistry.cpp:2968 +#. Group just disappears, nothing to select. +#: ../src/selection-chemistry.cpp:2967 msgid "Group to symbol" msgstr "Gruppieren zum Symbol" -#: ../src/selection-chemistry.cpp:2988 +#: ../src/selection-chemistry.cpp:3031 msgid "Select a symbol to extract objects from." msgstr "Wählen Sie ein Symbol, um Objekte daraus zu entnehmen." -#: ../src/selection-chemistry.cpp:2996 ../src/selection-chemistry.cpp:3002 +#: ../src/selection-chemistry.cpp:3040 msgid "Select only one symbol to convert to group." msgstr "" "Wählen Sie nur einSymbol aus, um es in eine Gruppe zu konvertieren." -#: ../src/selection-chemistry.cpp:3045 +#: ../src/selection-chemistry.cpp:3081 msgid "Group from symbol" msgstr "Gruppieren vom Symbol" -#: ../src/selection-chemistry.cpp:3062 +#: ../src/selection-chemistry.cpp:3098 msgid "Select object(s) to convert to pattern." msgstr "" "Objekt(e) auswählen, die in ein Füllmuster umgewandelt werden sollen." -#: ../src/selection-chemistry.cpp:3150 +#: ../src/selection-chemistry.cpp:3186 msgid "Objects to pattern" msgstr "Objekte in Füllmuster umwandeln" -#: ../src/selection-chemistry.cpp:3166 +#: ../src/selection-chemistry.cpp:3202 msgid "Select an object with pattern fill to extract objects from." msgstr "" "Ein Objekt mit Musterfüllung auswählen, um die Füllung zu extrahieren." -#: ../src/selection-chemistry.cpp:3219 +#: ../src/selection-chemistry.cpp:3255 msgid "No pattern fills in the selection." msgstr "Die Auswahl enthält keine Musterfüllung." -#: ../src/selection-chemistry.cpp:3222 +#: ../src/selection-chemistry.cpp:3258 msgid "Pattern to objects" msgstr "Füllmuster in Objekte umwandeln" -#: ../src/selection-chemistry.cpp:3313 +#: ../src/selection-chemistry.cpp:3349 msgid "Select object(s) to make a bitmap copy." msgstr "Objekt(e) auswählen, um eine Bitmap-Kopie zu erstellen." -#: ../src/selection-chemistry.cpp:3317 +#: ../src/selection-chemistry.cpp:3353 msgid "Rendering bitmap..." msgstr "Bitmap ausgeben" -#: ../src/selection-chemistry.cpp:3494 +#: ../src/selection-chemistry.cpp:3530 msgid "Create bitmap" msgstr "Bitmap erstellen" -#: ../src/selection-chemistry.cpp:3526 +#: ../src/selection-chemistry.cpp:3562 msgid "Select object(s) to create clippath or mask from." msgstr "" "Objekt(e) auswählen, um Ausschneidepfad oder Maskierung daraus zu " "erzeugen." -#: ../src/selection-chemistry.cpp:3529 +#: ../src/selection-chemistry.cpp:3565 msgid "Select mask object and object(s) to apply clippath or mask to." msgstr "" "Maskierungsobjekt und Objekt(e) auswählen, um Ausschneidepfad oder " "Maskierung darauf anzuwenden." -#: ../src/selection-chemistry.cpp:3710 +#: ../src/selection-chemistry.cpp:3746 msgid "Set clipping path" msgstr "Ausschneidepfad setzen" -#: ../src/selection-chemistry.cpp:3712 +#: ../src/selection-chemistry.cpp:3748 msgid "Set mask" msgstr "Maskierung setzen" -#: ../src/selection-chemistry.cpp:3727 +#: ../src/selection-chemistry.cpp:3763 msgid "Select object(s) to remove clippath or mask from." msgstr "" "Objekt(e) auswählen, um Ausschneidepfad oder Maskierung davon zu " "entfernen." -#: ../src/selection-chemistry.cpp:3838 +#: ../src/selection-chemistry.cpp:3874 msgid "Release clipping path" msgstr "Ausschneidepfad entfernen" -#: ../src/selection-chemistry.cpp:3840 +#: ../src/selection-chemistry.cpp:3876 msgid "Release mask" msgstr "Maskierung entfernen" -#: ../src/selection-chemistry.cpp:3859 +#: ../src/selection-chemistry.cpp:3895 msgid "Select object(s) to fit canvas to." msgstr "" "Objekt(e) auswählen, auf die die Leinwand angepasst werden soll." #. Fit Page -#: ../src/selection-chemistry.cpp:3879 ../src/verbs.cpp:2839 +#: ../src/selection-chemistry.cpp:3915 ../src/verbs.cpp:2844 msgid "Fit Page to Selection" msgstr "Seite in Auswahl einpassen" -#: ../src/selection-chemistry.cpp:3908 ../src/verbs.cpp:2841 +#: ../src/selection-chemistry.cpp:3944 ../src/verbs.cpp:2846 msgid "Fit Page to Drawing" msgstr "Seite in Zeichnungsgröße einpassen" -#: ../src/selection-chemistry.cpp:3929 ../src/verbs.cpp:2843 +#: ../src/selection-chemistry.cpp:3965 ../src/verbs.cpp:2848 msgid "Fit Page to Selection or Drawing" msgstr "Seite in Auswahl oder ganze Zeichnung einpassen" #. TRANSLATORS: "Link" means internet link (anchor) -#: ../src/selection-describer.cpp:45 +#: ../src/selection-describer.cpp:46 msgctxt "Web" msgid "Link" msgstr "Verknüpfung:" -#: ../src/selection-describer.cpp:47 +#: ../src/selection-describer.cpp:48 msgid "Circle" msgstr "Kreis" #. Ellipse -#: ../src/selection-describer.cpp:49 ../src/selection-describer.cpp:74 -#: ../src/ui/dialog/inkscape-preferences.cpp:404 -#: ../src/widgets/pencil-toolbar.cpp:193 +#: ../src/selection-describer.cpp:50 ../src/selection-describer.cpp:77 +#: ../src/ui/dialog/inkscape-preferences.cpp:403 +#: ../src/widgets/pencil-toolbar.cpp:192 msgid "Ellipse" msgstr "Ellipse" -#: ../src/selection-describer.cpp:51 +#: ../src/selection-describer.cpp:52 msgid "Flowed text" msgstr "Fließtext" -#: ../src/selection-describer.cpp:57 +#: ../src/selection-describer.cpp:58 msgid "Line" msgstr "Linie" -#: ../src/selection-describer.cpp:59 +#: ../src/selection-describer.cpp:60 msgid "Path" msgstr "Pfad" -#: ../src/selection-describer.cpp:61 ../src/widgets/star-toolbar.cpp:475 +#: ../src/selection-describer.cpp:62 ../src/widgets/star-toolbar.cpp:474 msgid "Polygon" msgstr "Polygon" -#: ../src/selection-describer.cpp:63 +#: ../src/selection-describer.cpp:64 msgid "Polyline" msgstr "Linienzug" #. Rectangle -#: ../src/selection-describer.cpp:65 -#: ../src/ui/dialog/inkscape-preferences.cpp:394 +#: ../src/selection-describer.cpp:66 +#: ../src/ui/dialog/inkscape-preferences.cpp:393 msgid "Rectangle" msgstr "Rechteck" #. 3D box -#: ../src/selection-describer.cpp:67 -#: ../src/ui/dialog/inkscape-preferences.cpp:399 +#: ../src/selection-describer.cpp:68 +#: ../src/ui/dialog/inkscape-preferences.cpp:398 msgid "3D Box" msgstr "3D-Box" -#: ../src/selection-describer.cpp:69 +#: ../src/selection-describer.cpp:70 msgctxt "Object" msgid "Text" msgstr "Text" +#: ../src/selection-describer.cpp:73 +msgctxt "Object" +msgid "Symbol" +msgstr "Symbol" + #. TRANSLATORS: "Clone" is a noun, type of object -#: ../src/selection-describer.cpp:72 +#: ../src/selection-describer.cpp:75 msgctxt "Object" msgid "Clone" msgstr "Klone" # !!! verb or noun? -#: ../src/selection-describer.cpp:76 +#: ../src/selection-describer.cpp:79 #: ../share/extensions/gcodetools_lathe.inx.h:9 msgid "Offset path" msgstr "Pfadversatz" #. Spiral -#: ../src/selection-describer.cpp:78 -#: ../src/ui/dialog/inkscape-preferences.cpp:412 +#: ../src/selection-describer.cpp:81 +#: ../src/ui/dialog/inkscape-preferences.cpp:411 #: ../share/extensions/gcodetools_area.inx.h:11 msgid "Spiral" msgstr "Spirale" #. Star -#: ../src/selection-describer.cpp:80 -#: ../src/ui/dialog/inkscape-preferences.cpp:408 -#: ../src/widgets/star-toolbar.cpp:482 +#: ../src/selection-describer.cpp:83 +#: ../src/ui/dialog/inkscape-preferences.cpp:407 +#: ../src/widgets/star-toolbar.cpp:481 msgid "Star" msgstr "Stern" -#: ../src/selection-describer.cpp:150 +#: ../src/selection-describer.cpp:153 msgid "root" msgstr "Wurzel" -#: ../src/selection-describer.cpp:162 +# CHECK +#: ../src/selection-describer.cpp:155 ../src/widgets/ege-paint-def.cpp:67 +#: ../src/widgets/ege-paint-def.cpp:91 +msgid "none" +msgstr "keine" + +#: ../src/selection-describer.cpp:167 #, c-format msgid "layer %s" msgstr "Ebene %s" -#: ../src/selection-describer.cpp:164 +#: ../src/selection-describer.cpp:169 #, c-format msgid "layer %s" msgstr "Ebene %s" # !!! -#: ../src/selection-describer.cpp:173 +#: ../src/selection-describer.cpp:178 #, c-format msgid "%s" msgstr "%s" -#: ../src/selection-describer.cpp:182 +#: ../src/selection-describer.cpp:187 #, c-format msgid " in %s" msgstr " in %s" -#: ../src/selection-describer.cpp:184 +#: ../src/selection-describer.cpp:189 +#, fuzzy, c-format +msgid " hidden in definitions" +msgstr "Keine gemeinsamen Verlaufdefinitionen " + +#: ../src/selection-describer.cpp:191 #, c-format msgid " in group %s (%s)" msgstr " in Gruppe %s (%s)" -#: ../src/selection-describer.cpp:186 +#: ../src/selection-describer.cpp:193 #, c-format msgid " in %i parents (%s)" msgid_plural " in %i parents (%s)" msgstr[0] " in %i Elter (%s)" msgstr[1] " in %i Eltern (%s)" -#: ../src/selection-describer.cpp:189 +#: ../src/selection-describer.cpp:196 #, c-format msgid " in %i layers" msgid_plural " in %i layers" msgstr[0] " in %i Ebene" msgstr[1] " in %i Ebenen" -#: ../src/selection-describer.cpp:199 +#: ../src/selection-describer.cpp:206 msgid "Convert symbol to group to edit" msgstr "Symbol zum Bearbeiten in eine Gruppe konvertieren" -#: ../src/selection-describer.cpp:203 +#: ../src/selection-describer.cpp:210 +#, fuzzy +msgid "Remove from symbols tray to edit symbol" +msgstr "Symbol zum Bearbeiten in eine Gruppe konvertieren" + +#: ../src/selection-describer.cpp:214 msgid "Use Shift+D to look up original" msgstr "Umschalt+D zum Finden des Originals verwenden" -#: ../src/selection-describer.cpp:207 +#: ../src/selection-describer.cpp:218 msgid "Use Shift+D to look up path" msgstr "Umschalt+D zum Finden des Pfades verwenden" -#: ../src/selection-describer.cpp:211 +#: ../src/selection-describer.cpp:222 msgid "Use Shift+D to look up frame" msgstr "Umschalt+D zum Finden des Rahmens verwenden" #. this is only used with 2 or more objects -#: ../src/selection-describer.cpp:226 ../src/spray-context.cpp:203 -#: ../src/tweak-context.cpp:180 +#: ../src/selection-describer.cpp:237 ../src/spray-context.cpp:203 +#: ../src/tweak-context.cpp:189 #, c-format msgid "%i object selected" msgid_plural "%i objects selected" @@ -12518,7 +12832,7 @@ msgstr[0] "%i Objekt ausgewählt" msgstr[1] "%i Objekte ausgewählt" #. this is only used with 2 or more objects -#: ../src/selection-describer.cpp:231 +#: ../src/selection-describer.cpp:242 #, c-format msgid "%i object of type %s" msgid_plural "%i objects of type %s" @@ -12526,7 +12840,7 @@ msgstr[0] "%i Objekt des Typs %s" msgstr[1] "%i Objekte des Typs %s" #. this is only used with 2 or more objects -#: ../src/selection-describer.cpp:236 +#: ../src/selection-describer.cpp:247 #, c-format msgid "%i object of types %s, %s" msgid_plural "%i objects of types %s, %s" @@ -12534,7 +12848,7 @@ msgstr[0] "%i Objekt der Typen %s, %s" msgstr[1] "%i Objekte der Typen %s, %s" #. this is only used with 2 or more objects -#: ../src/selection-describer.cpp:241 +#: ../src/selection-describer.cpp:252 #, c-format msgid "%i object of types %s, %s, %s" msgid_plural "%i objects of types %s, %s, %s" @@ -12542,33 +12856,33 @@ msgstr[0] "%i Objekt der Typen %s, %s, %s" msgstr[1] "%i Objekte der Typen %s, %s, %s" #. this is only used with 2 or more objects -#: ../src/selection-describer.cpp:246 +#: ../src/selection-describer.cpp:257 #, c-format msgid "%i object of %i types" msgid_plural "%i objects of %i types" msgstr[0] "%i Objekt mit %i Typen" msgstr[1] "%i Objekte mit %i Typen" -#: ../src/selection-describer.cpp:256 +#: ../src/selection-describer.cpp:267 #, c-format msgid "; %d filtered object " msgid_plural "; %d filtered objects " msgstr[0] "; %d gefiltertes Objekt" msgstr[1] "; %d gefilterte Objekte" -#: ../src/seltrans.cpp:474 ../src/ui/dialog/transformation.cpp:946 +#: ../src/seltrans.cpp:488 ../src/ui/dialog/transformation.cpp:950 msgid "Skew" msgstr "Scheren" -#: ../src/seltrans.cpp:486 +#: ../src/seltrans.cpp:500 msgid "Set center" msgstr "Mittelpunkt setzen" -#: ../src/seltrans.cpp:561 +#: ../src/seltrans.cpp:575 msgid "Stamp" msgstr "Stempeln" -#: ../src/seltrans.cpp:590 +#: ../src/seltrans.cpp:604 msgid "" "Squeeze or stretch selection; with Ctrl to scale uniformly; " "with Shift to scale around rotation center" @@ -12576,7 +12890,7 @@ msgstr "" "Verzerren der Auswahl; Strg behält Höhen-/Breitenverhältnis " "bei; Umschalt skaliert um den Rotationsmittelpunkt" -#: ../src/seltrans.cpp:591 +#: ../src/seltrans.cpp:605 msgid "" "Scale selection; with Ctrl to scale uniformly; with Shift to scale around rotation center" @@ -12584,7 +12898,7 @@ msgstr "" "Skalieren der Auswahl; Strg behält Höhen-/Breitenverhältnis " "bei; Umschalt skaliert um den Rotationsmittelpunkt" -#: ../src/seltrans.cpp:595 +#: ../src/seltrans.cpp:609 msgid "" "Skew selection; with Ctrl to snap angle; with Shift to " "skew around the opposite side" @@ -12592,7 +12906,7 @@ msgstr "" "Scheren der Auswahl; Winkel mit Strg einrasten; Umschalt schert entlang der gegenüberliegenden Seite" -#: ../src/seltrans.cpp:596 +#: ../src/seltrans.cpp:610 msgid "" "Rotate selection; with Ctrl to snap angle; with Shift " "to rotate around the opposite corner" @@ -12600,7 +12914,7 @@ msgstr "" "Drehen der Auswahl; Winkel mit Strg einrasten; Umschalt " "dreht entlang der gegenüberliegenden Seite" -#: ../src/seltrans.cpp:609 +#: ../src/seltrans.cpp:623 msgid "" "Center of rotation and skewing: drag to reposition; scaling with " "Shift also uses this center" @@ -12608,11 +12922,11 @@ msgstr "" "Mittelpunkt für Drehen und Scheren: Ziehen verschiebt den " "Mittelpunkt; Skalieren mit Umschalt verwendet diesen Mittelpunkt" -#: ../src/seltrans.cpp:759 +#: ../src/seltrans.cpp:773 msgid "Reset center" msgstr "Mittelpunkt zurücksetzen" -#: ../src/seltrans.cpp:994 ../src/seltrans.cpp:1091 +#: ../src/seltrans.cpp:1017 ../src/seltrans.cpp:1114 #, c-format msgid "Scale: %0.2f%% x %0.2f%%; with Ctrl to lock ratio" msgstr "" @@ -12621,24 +12935,24 @@ msgstr "" #. TRANSLATORS: don't modify the first ";" #. (it will NOT be displayed as ";" - only the second one will be) -#: ../src/seltrans.cpp:1205 +#: ../src/seltrans.cpp:1228 #, c-format msgid "Skew: %0.2f°; with Ctrl to snap angle" msgstr "Scheren: %0.2f °; Winkel mit Strg einrasten" #. TRANSLATORS: don't modify the first ";" #. (it will NOT be displayed as ";" - only the second one will be) -#: ../src/seltrans.cpp:1280 +#: ../src/seltrans.cpp:1303 #, c-format msgid "Rotate: %0.2f°; with Ctrl to snap angle" msgstr "Drehen: %0.2f°; Winkel mit Strg einrasten" -#: ../src/seltrans.cpp:1315 +#: ../src/seltrans.cpp:1338 #, c-format msgid "Move center to %s, %s" msgstr "Mittelpunkt verschieben nach %s, %s" -#: ../src/seltrans.cpp:1491 +#: ../src/seltrans.cpp:1514 #, c-format msgid "" "Move by %s, %s; with Ctrl to restrict to horizontal/vertical; " @@ -12647,6 +12961,17 @@ msgstr "" "Verschieben um %s, %s; mit Strg nur horizontale/vertikale " "Verschiebung; Umschalt deaktiviert Einrasten." +# !!! palettes, not swatches? +#: ../src/shortcuts.cpp:225 +#, fuzzy, c-format +msgid "Keyboard directory (%s) is unavailable." +msgstr "Palettenverzeichnis (%s) nicht auffindbar." + +#: ../src/shortcuts.cpp:369 +#, fuzzy +msgid "Select a file to import" +msgstr "Wählen Sie die zu importierende Datei" + #: ../src/sp-anchor.cpp:151 #, c-format msgid "Link to %s" @@ -12695,7 +13020,7 @@ msgstr "Ausgeschlossenen Bereich umfließen" msgid "Create Guides Around the Page" msgstr "Führungslinien an Seitenrändern erstellen" -#: ../src/sp-guide.cpp:302 ../src/verbs.cpp:2410 +#: ../src/sp-guide.cpp:302 ../src/verbs.cpp:2415 msgid "Delete All Guides" msgstr "Führungslinien löschen" @@ -12728,28 +13053,28 @@ msgstr "Horizontale Führungslinie bei %s" msgid "at %d degrees, through (%s,%s)" msgstr "bei %d Grad, durch (%s, %s)" -#: ../src/sp-image.cpp:1063 +#: ../src/sp-image.cpp:1068 msgid "embedded" msgstr "eingebettet" -#: ../src/sp-image.cpp:1071 +#: ../src/sp-image.cpp:1076 #, c-format msgid "Image with bad reference: %s" msgstr "Bild-Objekt mit fehlerhaftem Bezug: %s" -#: ../src/sp-image.cpp:1072 +#: ../src/sp-image.cpp:1077 #, c-format msgid "Image %d × %d: %s" msgstr "Farbbild %d × %d: %s" -#: ../src/sp-item-group.cpp:717 +#: ../src/sp-item-group.cpp:721 #, c-format msgid "Group of %d object" msgid_plural "Group of %d objects" msgstr[0] "Gruppe von %d Objekt" msgstr[1] "Gruppe von %d Objekten" -#: ../src/sp-item.cpp:977 ../src/verbs.cpp:207 +#: ../src/sp-item.cpp:977 ../src/verbs.cpp:212 msgid "Object" msgstr "Objekt" @@ -12886,25 +13211,24 @@ msgstr "Verwaister Zeichen-Klon" msgid "Text span" msgstr "Textweite" -#. char *symbol_desc = SP_ITEM(use->child)->description(); -#. g_free(symbol_desc); -#: ../src/sp-use.cpp:302 -msgid "Clone of Symbol" +#: ../src/sp-use.cpp:303 +#, fuzzy, c-format +msgid "'%s' Symbol" msgstr "Klonen des Symbols" #. TRANSLATORS: Used for statusbar description for long chains: #. * "Clone of: Clone of: ... in Layer 1". -#: ../src/sp-use.cpp:310 +#: ../src/sp-use.cpp:311 msgid "..." msgstr "…" -#: ../src/sp-use.cpp:318 +#: ../src/sp-use.cpp:319 #, c-format msgid "Clone of: %s" msgstr "Klon von: %s" # !!! -#: ../src/sp-use.cpp:322 +#: ../src/sp-use.cpp:323 msgid "Orphaned clone" msgstr "Verwaister Klon" @@ -12985,78 +13309,78 @@ msgstr "" "Eines der ausgewählten Objekte ist kein Pfad. Boole'sche Operation " "wird nicht ausgeführt." -#: ../src/splivarot.cpp:913 +#: ../src/splivarot.cpp:918 msgid "Select stroked path(s) to convert stroke to path." msgstr "" "Pfade mit Kontur auswählen, um die Konturlinie in einen Pfad " "umzuwandeln." -#: ../src/splivarot.cpp:1266 +#: ../src/splivarot.cpp:1271 msgid "Convert stroke to path" msgstr "Kontur in Pfad umwandeln" #. TRANSLATORS: "to outline" means "to convert stroke to path" -#: ../src/splivarot.cpp:1269 +#: ../src/splivarot.cpp:1274 msgid "No stroked paths in the selection." msgstr "Keine Pfade mit Konturlinien in der Auswahl." -#: ../src/splivarot.cpp:1340 +#: ../src/splivarot.cpp:1345 msgid "Selected object is not a path, cannot inset/outset." msgstr "" "Ausgewähltes Objekt ist kein Pfad - kann es nicht schrumpfen/" "erweitern." -#: ../src/splivarot.cpp:1436 ../src/splivarot.cpp:1501 +#: ../src/splivarot.cpp:1441 ../src/splivarot.cpp:1506 msgid "Create linked offset" msgstr "Verbundenen Versatz erzeugen" -#: ../src/splivarot.cpp:1437 ../src/splivarot.cpp:1502 +#: ../src/splivarot.cpp:1442 ../src/splivarot.cpp:1507 msgid "Create dynamic offset" msgstr "Dynamischen Versatz erzeugen" -#: ../src/splivarot.cpp:1527 +#: ../src/splivarot.cpp:1532 msgid "Select path(s) to inset/outset." msgstr "Pfad zum Schrumpfen/Erweitern auswählen." -#: ../src/splivarot.cpp:1740 +#: ../src/splivarot.cpp:1745 msgid "Outset path" msgstr "Pfad erweitern" -#: ../src/splivarot.cpp:1740 +#: ../src/splivarot.cpp:1745 msgid "Inset path" msgstr "Pfad schrumpfen" -#: ../src/splivarot.cpp:1742 +#: ../src/splivarot.cpp:1747 msgid "No paths to inset/outset in the selection." msgstr "Die Auswahl enthält keine Pfade zum Schrumpfen/Erweitern." -#: ../src/splivarot.cpp:1904 +#: ../src/splivarot.cpp:1909 msgid "Simplifying paths (separately):" msgstr "Vereinfache Pfade (getrennt):" -#: ../src/splivarot.cpp:1906 +#: ../src/splivarot.cpp:1911 msgid "Simplifying paths:" msgstr "Vereinfache Pfade:" -#: ../src/splivarot.cpp:1943 +#: ../src/splivarot.cpp:1948 #, c-format msgid "%s %d of %d paths simplified..." msgstr "%s %d von %d Pfaden vereinfacht…" -#: ../src/splivarot.cpp:1955 +#: ../src/splivarot.cpp:1960 #, c-format msgid "%d paths simplified." msgstr "%d Pfade vereinfacht." -#: ../src/splivarot.cpp:1969 +#: ../src/splivarot.cpp:1974 msgid "Select path(s) to simplify." msgstr "Pfad zum Vereinfachen auswählen." -#: ../src/splivarot.cpp:1985 +#: ../src/splivarot.cpp:1990 msgid "No paths to simplify in the selection." msgstr "Die Auswahl enthält keine Pfade zum Vereinfachen." -#: ../src/spray-context.cpp:205 ../src/tweak-context.cpp:182 +#: ../src/spray-context.cpp:205 ../src/tweak-context.cpp:191 #, c-format msgid "Nothing selected" msgstr "Es wurde nichts gewählt" @@ -13092,11 +13416,11 @@ msgstr "" msgid "Nothing selected! Select objects to spray." msgstr "Nichts ausgewählt! Wähle Objekte zum Sprühen aus." -#: ../src/spray-context.cpp:745 ../src/widgets/spray-toolbar.cpp:183 +#: ../src/spray-context.cpp:745 ../src/widgets/spray-toolbar.cpp:182 msgid "Spray with copies" msgstr "Sprühen mit Kopien" -#: ../src/spray-context.cpp:749 ../src/widgets/spray-toolbar.cpp:190 +#: ../src/spray-context.cpp:749 ../src/widgets/spray-toolbar.cpp:189 msgid "Spray with clones" msgstr "Sprühen mit Klonen" @@ -13151,7 +13475,7 @@ msgid "The flowed text(s) must be visible in order to be put on a path." msgstr "" "Der Fließtext muss sichtbar sein, um einem Pfad zugewiesen zu werden." -#: ../src/text-chemistry.cpp:183 ../src/verbs.cpp:2430 +#: ../src/text-chemistry.cpp:183 ../src/verbs.cpp:2435 msgid "Put text on path" msgstr "Text an Pfad ausrichten" @@ -13163,7 +13487,7 @@ msgstr "Einen Text-Pfad zum Trennen vom Pfad auswählen." msgid "No texts-on-paths in the selection." msgstr "Kein Text-Pfad in der Auswahl vorhanden." -#: ../src/text-chemistry.cpp:219 ../src/verbs.cpp:2432 +#: ../src/text-chemistry.cpp:219 ../src/verbs.cpp:2437 msgid "Remove text from path" msgstr "Text wird von Pfad getrennt" @@ -13212,58 +13536,58 @@ msgstr "Fließtext in Text umwandeln" msgid "No flowed text(s) to convert in the selection." msgstr "Kein Fließtext zum Umwandeln in der Auswahl." -#: ../src/text-context.cpp:420 +#: ../src/text-context.cpp:426 msgid "Click to edit the text, drag to select part of the text." msgstr "" "Klick zum Ändern des Textes, Ziehen, um einen Teil des Textes " "zu ändern." -#: ../src/text-context.cpp:422 +#: ../src/text-context.cpp:428 msgid "" "Click to edit the flowed text, drag to select part of the text." msgstr "" "Klick zum Ändern des Fließtextes, Ziehen, um einen Teil des " "Textes zu ändern." -#: ../src/text-context.cpp:476 +#: ../src/text-context.cpp:482 msgid "Create text" msgstr "Text erstellen" -#: ../src/text-context.cpp:501 +#: ../src/text-context.cpp:507 msgid "Non-printable character" msgstr "Nicht druckbares Zeichen" -#: ../src/text-context.cpp:516 +#: ../src/text-context.cpp:522 msgid "Insert Unicode character" msgstr "Unicode-Zeichen einfügen" -#: ../src/text-context.cpp:551 +#: ../src/text-context.cpp:557 #, c-format msgid "Unicode (Enter to finish): %s: %s" msgstr "Unicode (Eingabe zum Abschliessen): %s: %s" -#: ../src/text-context.cpp:553 ../src/text-context.cpp:862 +#: ../src/text-context.cpp:559 ../src/text-context.cpp:868 msgid "Unicode (Enter to finish): " msgstr "Unicode (Eingabe zum Abschliessen): " -#: ../src/text-context.cpp:639 +#: ../src/text-context.cpp:645 #, c-format msgid "Flowed text frame: %s × %s" msgstr "Fließtext-Rahmen: %s × %s" -#: ../src/text-context.cpp:696 +#: ../src/text-context.cpp:702 msgid "Type text; Enter to start new line." msgstr "Text schreiben; Eingabe, um eine neue Zeile zu beginnen." -#: ../src/text-context.cpp:707 +#: ../src/text-context.cpp:713 msgid "Flowed text is created." msgstr "Fließtext wird erzeugt." -#: ../src/text-context.cpp:709 +#: ../src/text-context.cpp:715 msgid "Create flowed text" msgstr "Fließtext erstellen" -#: ../src/text-context.cpp:711 +#: ../src/text-context.cpp:717 msgid "" "The frame is too small for the current font size. Flowed text not " "created." @@ -13271,75 +13595,75 @@ msgstr "" "Der Rahmen ist zu klein für die aktuelle Schriftgröße. Der Fließtext " "wurde nicht erzeugt." -#: ../src/text-context.cpp:847 +#: ../src/text-context.cpp:853 msgid "No-break space" msgstr "Untrennbares Leerzeichen" -#: ../src/text-context.cpp:849 +#: ../src/text-context.cpp:855 msgid "Insert no-break space" msgstr "Untrennbares Leerzeichen einfügen" -#: ../src/text-context.cpp:886 +#: ../src/text-context.cpp:892 msgid "Make bold" msgstr "Fett" -#: ../src/text-context.cpp:904 +#: ../src/text-context.cpp:910 msgid "Make italic" msgstr "Kursiv" -#: ../src/text-context.cpp:943 +#: ../src/text-context.cpp:949 msgid "New line" msgstr "Neue Zeile" -#: ../src/text-context.cpp:977 +#: ../src/text-context.cpp:991 msgid "Backspace" msgstr "Rückschritt" -#: ../src/text-context.cpp:1025 +#: ../src/text-context.cpp:1047 msgid "Kern to the left" msgstr "Unterschneidung nach links" -#: ../src/text-context.cpp:1050 +#: ../src/text-context.cpp:1072 msgid "Kern to the right" msgstr "Unterschneidung nach rechts" -#: ../src/text-context.cpp:1075 +#: ../src/text-context.cpp:1097 msgid "Kern up" msgstr "Unterschneidung nach oben" -#: ../src/text-context.cpp:1100 +#: ../src/text-context.cpp:1122 msgid "Kern down" msgstr "Unterschneidung nach unten" -#: ../src/text-context.cpp:1176 +#: ../src/text-context.cpp:1198 msgid "Rotate counterclockwise" msgstr "Entgegen Uhrzeigersinn drehen" -#: ../src/text-context.cpp:1197 +#: ../src/text-context.cpp:1219 msgid "Rotate clockwise" msgstr "Im Uhrzeigersinn drehen" -#: ../src/text-context.cpp:1214 +#: ../src/text-context.cpp:1236 msgid "Contract line spacing" msgstr "Zeilenabstand vermindern" -#: ../src/text-context.cpp:1221 +#: ../src/text-context.cpp:1243 msgid "Contract letter spacing" msgstr "Zeichenabstand vermindern" -#: ../src/text-context.cpp:1239 +#: ../src/text-context.cpp:1261 msgid "Expand line spacing" msgstr "Zeilenabstand vergrößern" -#: ../src/text-context.cpp:1246 +#: ../src/text-context.cpp:1268 msgid "Expand letter spacing" msgstr "Zeichenabstand vergrößern" -#: ../src/text-context.cpp:1374 +#: ../src/text-context.cpp:1396 msgid "Paste text" msgstr "Text einfügen" -#: ../src/text-context.cpp:1625 +#: ../src/text-context.cpp:1647 #, c-format msgid "" "Type or edit flowed text (%d characters%s); Enter to start new " @@ -13348,14 +13672,14 @@ msgstr "" "Fließtext schreiben (%d Zeichen%s); Eingabe, um einen neuen Absatz zu " "beginnen." -#: ../src/text-context.cpp:1627 +#: ../src/text-context.cpp:1649 #, c-format msgid "Type or edit text (%d characters%s); Enter to start new line." msgstr "" "Text schreiben (%d Zeichen%s); Eingabe, um eine neue Zeile zu " "beginnen." -#: ../src/text-context.cpp:1635 ../src/tools-switch.cpp:201 +#: ../src/text-context.cpp:1657 ../src/tools-switch.cpp:201 msgid "" "Click to select or create text, drag to create flowed text; " "then type." @@ -13363,7 +13687,7 @@ msgstr "" "Zum Auswählen oder Erstellen eines Textobjekts klicken, Ziehen " "um Fließtext zu erstellen; anschließend schreiben." -#: ../src/text-context.cpp:1737 +#: ../src/text-context.cpp:1759 msgid "Type text" msgstr "Text eingeben" @@ -13467,7 +13791,7 @@ msgstr "" "Ziehen oder Doppelklicken erzeugt ein Gitter auf gewählten " "Objekten, Anfasser ziehen um Gitter einzustellen." -#: ../src/tools-switch.cpp:220 +#: ../src/tools-switch.cpp:219 msgid "" "Click or drag around an area to zoom in, Shift+click to " "zoom out." @@ -13475,15 +13799,15 @@ msgstr "" "Klick oder Rechteck aufziehen vergrößert die Ansicht, " "Umschalt+Klick verkleinert." -#: ../src/tools-switch.cpp:226 +#: ../src/tools-switch.cpp:225 msgid "Drag to measure the dimensions of objects." msgstr "Ziehen um die Dimensionen von Objekten zu messen." -#: ../src/tools-switch.cpp:238 +#: ../src/tools-switch.cpp:237 msgid "Click and drag between shapes to create a connector." msgstr "Klick und Ziehen zwischen Formen erzeugt einen Objektverbinder." -#: ../src/tools-switch.cpp:244 +#: ../src/tools-switch.cpp:243 msgid "" "Click to paint a bounded area, Shift+click to union the new " "fill with the current selection, Ctrl+click to change the clicked " @@ -13494,11 +13818,11 @@ msgstr "" "Füllung und Kontur des geklickten Objekts zur aktuellen Einstellung zu " "ändern." -#: ../src/tools-switch.cpp:250 +#: ../src/tools-switch.cpp:249 msgid "Drag to erase." msgstr "Ziehen um zu löschen." -#: ../src/tools-switch.cpp:256 +#: ../src/tools-switch.cpp:255 msgid "Choose a subtool from the toolbar" msgstr "Wählen Sie ein Werkzeug aus der Werkzeugleiste" @@ -13550,31 +13874,31 @@ msgstr "Bitmap vektorisieren" msgid "Trace: Done. %ld nodes created" msgstr "Vektorisieren abgeschlossen: %ld Knoten erzeugt" -#: ../src/tweak-context.cpp:187 +#: ../src/tweak-context.cpp:196 #, c-format msgid "%s. Drag to move." msgstr "%s. Ziehen zum verschieben." -#: ../src/tweak-context.cpp:191 +#: ../src/tweak-context.cpp:200 #, c-format msgid "%s. Drag or click to move in; with Shift to move out." msgstr "" "%s. Ziehen oder Klicken zum verschieben hinein ; mit Umschalttaste " "zum verschieben hinaus." -#: ../src/tweak-context.cpp:195 +#: ../src/tweak-context.cpp:208 #, c-format msgid "%s. Drag or click to move randomly." msgstr "%s. Ziehen oder Klicken zum zufälligen verschieben." -#: ../src/tweak-context.cpp:199 +#: ../src/tweak-context.cpp:212 #, c-format msgid "%s. Drag or click to scale down; with Shift to scale up." msgstr "" "%s. Ziehen oder Klicken zum kleiner skalieren; mit Umschalttaste zum " "größer skalieren." -#: ../src/tweak-context.cpp:203 +#: ../src/tweak-context.cpp:220 #, c-format msgid "" "%s. Drag or click to rotate clockwise; with Shift, " @@ -13583,48 +13907,48 @@ msgstr "" "%s. Ziehen oder Klicken zum Drehen im Uhrzeigersinn; mit " "Umschalttaste zum gegen den Uhrzeigersinn." -#: ../src/tweak-context.cpp:207 +#: ../src/tweak-context.cpp:228 #, c-format msgid "%s. Drag or click to duplicate; with Shift, delete." msgstr "" "%s. Ziehen oder Klicken zum Duplizieren; mit Umschalttaste zum " "Löschen." -#: ../src/tweak-context.cpp:211 +#: ../src/tweak-context.cpp:236 #, c-format msgid "%s. Drag to push paths." msgstr "%s. Ziehen zum Schieben der Pfade." -#: ../src/tweak-context.cpp:215 +#: ../src/tweak-context.cpp:240 #, c-format msgid "%s. Drag or click to inset paths; with Shift to outset." msgstr "" "%s. Ziehen oder Klicken zieht Pfade zusammen; mit Umschalt " "schiebt sie auseinander." -#: ../src/tweak-context.cpp:223 +#: ../src/tweak-context.cpp:248 #, c-format msgid "%s. Drag or click to attract paths; with Shift to repel." msgstr "" "%s. Ziehen oder Klicken zieht Pfade an; mit Umschalt stößt es sie " "ab." -#: ../src/tweak-context.cpp:231 +#: ../src/tweak-context.cpp:256 #, c-format msgid "%s. Drag or click to roughen paths." msgstr "%s. Ziehen oder Klicken um Pfad aufzurauen." -#: ../src/tweak-context.cpp:235 +#: ../src/tweak-context.cpp:260 #, c-format msgid "%s. Drag or click to paint objects with color." msgstr "%s. Ziehen oder Klicken um Objekte zu bemalen mit Farbe." -#: ../src/tweak-context.cpp:239 +#: ../src/tweak-context.cpp:264 #, c-format msgid "%s. Drag or click to randomize colors." msgstr "%s. Ziehen oder Klicken um Farben zufällig zu setzen." -#: ../src/tweak-context.cpp:243 +#: ../src/tweak-context.cpp:268 #, c-format msgid "" "%s. Drag or click to increase blur; with Shift to decrease." @@ -13632,60 +13956,60 @@ msgstr "" "%s. Ziehen oder Klicken um Weichheit zu erhöhen; mit Shift " "verringern." -#: ../src/tweak-context.cpp:1209 +#: ../src/tweak-context.cpp:1234 msgid "Nothing selected! Select objects to tweak." msgstr "Nichts ausgewählt! Wähle Objekte zum Justieren aus." -#: ../src/tweak-context.cpp:1243 +#: ../src/tweak-context.cpp:1268 msgid "Move tweak" msgstr "Verschieben-Justage" # Was bewegt sich? -#: ../src/tweak-context.cpp:1247 +#: ../src/tweak-context.cpp:1272 msgid "Move in/out tweak" msgstr "Optimieren durch Zusammen-/Auseinanderbewegen" -#: ../src/tweak-context.cpp:1251 +#: ../src/tweak-context.cpp:1276 msgid "Move jitter tweak" msgstr "Bewegungsversatz-Justage" -#: ../src/tweak-context.cpp:1255 +#: ../src/tweak-context.cpp:1280 msgid "Scale tweak" msgstr "Skalieren-Justage" -#: ../src/tweak-context.cpp:1259 +#: ../src/tweak-context.cpp:1284 msgid "Rotate tweak" msgstr "Rotieren-Justage" -#: ../src/tweak-context.cpp:1263 +#: ../src/tweak-context.cpp:1288 msgid "Duplicate/delete tweak" msgstr "Dulizieren-/Löschen-Justage" -#: ../src/tweak-context.cpp:1267 +#: ../src/tweak-context.cpp:1292 msgid "Push path tweak" msgstr "Pfad-Verschieben-Justage" -#: ../src/tweak-context.cpp:1271 +#: ../src/tweak-context.cpp:1296 msgid "Shrink/grow path tweak" msgstr "Schrumpfen-/Weiten-Justage" -#: ../src/tweak-context.cpp:1275 +#: ../src/tweak-context.cpp:1300 msgid "Attract/repel path tweak" msgstr "Pfad-Anziehen-/-Abstoßen-Justage" -#: ../src/tweak-context.cpp:1279 +#: ../src/tweak-context.cpp:1304 msgid "Roughen path tweak" msgstr "Pfadrauheit-Justage" -#: ../src/tweak-context.cpp:1283 +#: ../src/tweak-context.cpp:1308 msgid "Color paint tweak" msgstr "Farb-Justage" -#: ../src/tweak-context.cpp:1287 +#: ../src/tweak-context.cpp:1312 msgid "Color jitter tweak" msgstr "Farbrauschen-Justage" -#: ../src/tweak-context.cpp:1291 +#: ../src/tweak-context.cpp:1316 msgid "Blur tweak" msgstr "Unschärfe-Justage" @@ -13694,37 +14018,37 @@ msgstr "Unschärfe-Justage" msgid "Nothing was copied." msgstr "Es wurde nichts kopiert." -#: ../src/ui/clipboard.cpp:371 ../src/ui/clipboard.cpp:580 -#: ../src/ui/clipboard.cpp:603 +#: ../src/ui/clipboard.cpp:375 ../src/ui/clipboard.cpp:584 +#: ../src/ui/clipboard.cpp:607 msgid "Nothing on the clipboard." msgstr "Es ist nichts in der Zwischenablage." -#: ../src/ui/clipboard.cpp:429 +#: ../src/ui/clipboard.cpp:433 msgid "Select object(s) to paste style to." msgstr "Objekt(e) auswählen, um Stil darauf anzuwenden." -#: ../src/ui/clipboard.cpp:440 ../src/ui/clipboard.cpp:457 +#: ../src/ui/clipboard.cpp:444 ../src/ui/clipboard.cpp:461 msgid "No style on the clipboard." msgstr "Kein Stil in der Zwischenablage." -#: ../src/ui/clipboard.cpp:482 +#: ../src/ui/clipboard.cpp:486 msgid "Select object(s) to paste size to." msgstr "Objekt(e) auswählen, um Größe einzufügen." -#: ../src/ui/clipboard.cpp:489 +#: ../src/ui/clipboard.cpp:493 msgid "No size on the clipboard." msgstr "Keine Größe in der Zwischenablage." -#: ../src/ui/clipboard.cpp:542 +#: ../src/ui/clipboard.cpp:546 msgid "Select object(s) to paste live path effect to." msgstr "Objekt(e) auswählen, um den Pfad-Effekt einzufügen." #. no_effect: -#: ../src/ui/clipboard.cpp:567 +#: ../src/ui/clipboard.cpp:571 msgid "No effect on the clipboard." msgstr "Kein Effekt in der Zwischenablage." -#: ../src/ui/clipboard.cpp:586 ../src/ui/clipboard.cpp:614 +#: ../src/ui/clipboard.cpp:590 ../src/ui/clipboard.cpp:618 msgid "Clipboard does not contain a path." msgstr "Die Zwischenablage enthält keinen Pfad." @@ -13854,7 +14178,7 @@ msgid "Rearrange" msgstr "Anordnen" #: ../src/ui/dialog/align-and-distribute.cpp:900 -#: ../src/widgets/toolbox.cpp:1724 +#: ../src/widgets/toolbox.cpp:1728 msgid "Nodes" msgstr "Knoten" @@ -13867,53 +14191,53 @@ msgid "_Treat selection as group: " msgstr "Auswahl als Gruppe behandeln:" #. Align -#: ../src/ui/dialog/align-and-distribute.cpp:921 ../src/verbs.cpp:2861 -#: ../src/verbs.cpp:2862 +#: ../src/ui/dialog/align-and-distribute.cpp:921 ../src/verbs.cpp:2866 +#: ../src/verbs.cpp:2867 msgid "Align right edges of objects to the left edge of the anchor" msgstr "Rechte Objektkanten an linker Seite der Verankerung ausrichten" -#: ../src/ui/dialog/align-and-distribute.cpp:924 ../src/verbs.cpp:2863 -#: ../src/verbs.cpp:2864 +#: ../src/ui/dialog/align-and-distribute.cpp:924 ../src/verbs.cpp:2868 +#: ../src/verbs.cpp:2869 msgid "Align left edges" msgstr "Linke Kanten ausrichten" -#: ../src/ui/dialog/align-and-distribute.cpp:927 ../src/verbs.cpp:2865 -#: ../src/verbs.cpp:2866 +#: ../src/ui/dialog/align-and-distribute.cpp:927 ../src/verbs.cpp:2870 +#: ../src/verbs.cpp:2871 msgid "Center on vertical axis" msgstr "Vertikal zentrieren" -#: ../src/ui/dialog/align-and-distribute.cpp:930 ../src/verbs.cpp:2867 -#: ../src/verbs.cpp:2868 +#: ../src/ui/dialog/align-and-distribute.cpp:930 ../src/verbs.cpp:2872 +#: ../src/verbs.cpp:2873 msgid "Align right sides" msgstr "Rechte Kanten ausrichten" -#: ../src/ui/dialog/align-and-distribute.cpp:933 ../src/verbs.cpp:2869 -#: ../src/verbs.cpp:2870 +#: ../src/ui/dialog/align-and-distribute.cpp:933 ../src/verbs.cpp:2874 +#: ../src/verbs.cpp:2875 msgid "Align left edges of objects to the right edge of the anchor" msgstr "Linke Objektkanten an rechter Seite der Verankerung ausrichten" -#: ../src/ui/dialog/align-and-distribute.cpp:936 ../src/verbs.cpp:2871 -#: ../src/verbs.cpp:2872 +#: ../src/ui/dialog/align-and-distribute.cpp:936 ../src/verbs.cpp:2876 +#: ../src/verbs.cpp:2877 msgid "Align bottom edges of objects to the top edge of the anchor" msgstr "Objektunterkanten an Oberkante der Verankerung ausrichten" -#: ../src/ui/dialog/align-and-distribute.cpp:939 ../src/verbs.cpp:2873 -#: ../src/verbs.cpp:2874 +#: ../src/ui/dialog/align-and-distribute.cpp:939 ../src/verbs.cpp:2878 +#: ../src/verbs.cpp:2879 msgid "Align top edges" msgstr "Oberkanten ausrichten" -#: ../src/ui/dialog/align-and-distribute.cpp:942 ../src/verbs.cpp:2875 -#: ../src/verbs.cpp:2876 +#: ../src/ui/dialog/align-and-distribute.cpp:942 ../src/verbs.cpp:2880 +#: ../src/verbs.cpp:2881 msgid "Center on horizontal axis" msgstr "Zentren horizontal ausrichten" -#: ../src/ui/dialog/align-and-distribute.cpp:945 ../src/verbs.cpp:2877 -#: ../src/verbs.cpp:2878 +#: ../src/ui/dialog/align-and-distribute.cpp:945 ../src/verbs.cpp:2882 +#: ../src/verbs.cpp:2883 msgid "Align bottom edges" msgstr "Unterkanten ausrichten" -#: ../src/ui/dialog/align-and-distribute.cpp:948 ../src/verbs.cpp:2879 -#: ../src/verbs.cpp:2880 +#: ../src/ui/dialog/align-and-distribute.cpp:948 ../src/verbs.cpp:2884 +#: ../src/verbs.cpp:2885 msgid "Align top edges of objects to the bottom edge of the anchor" msgstr "Objektoberkanten an Unterkante der Verankerung ausrichten" @@ -14033,8 +14357,8 @@ msgid "Smallest object" msgstr "Kleinstes Objekt" #: ../src/ui/dialog/align-and-distribute.cpp:1049 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1550 ../src/verbs.cpp:169 -#: ../src/widgets/desktop-widget.cpp:1927 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1555 ../src/verbs.cpp:174 +#: ../src/widgets/desktop-widget.cpp:2004 #: ../share/extensions/printing_marks.inx.h:18 msgid "Selection" msgstr "Auswahl" @@ -14056,7 +14380,7 @@ msgstr "_Speichern" msgid "Add profile" msgstr "Profil hinzufügen" -#: ../src/ui/dialog/color-item.cpp:122 +#: ../src/ui/dialog/color-item.cpp:131 #, c-format msgid "" "Color: %s; Click to set fill, Shift+click to set stroke" @@ -14064,48 +14388,48 @@ msgstr "" "Farbe: %s; Klick setzt die Füllung, Shift+Klick legt " "die Konturfarbe fest" -#: ../src/ui/dialog/color-item.cpp:504 +#: ../src/ui/dialog/color-item.cpp:513 msgid "Change color definition" msgstr "Farbdefinition ändern" -#: ../src/ui/dialog/color-item.cpp:678 +#: ../src/ui/dialog/color-item.cpp:687 msgid "Remove stroke color" msgstr "Konturfarbe entfernen" -#: ../src/ui/dialog/color-item.cpp:678 +#: ../src/ui/dialog/color-item.cpp:687 msgid "Remove fill color" msgstr "Füllfarbe entfernen" -#: ../src/ui/dialog/color-item.cpp:683 +#: ../src/ui/dialog/color-item.cpp:692 msgid "Set stroke color to none" msgstr "Farbe der Kontur auf nichts setzen" -#: ../src/ui/dialog/color-item.cpp:683 +#: ../src/ui/dialog/color-item.cpp:692 msgid "Set fill color to none" msgstr "Füllungsfarbe auf nichts setzen" -#: ../src/ui/dialog/color-item.cpp:699 +#: ../src/ui/dialog/color-item.cpp:708 msgid "Set stroke color from swatch" msgstr "Konturfarbe aus der Farbfelder-Palette auswählen" -#: ../src/ui/dialog/color-item.cpp:699 +#: ../src/ui/dialog/color-item.cpp:708 msgid "Set fill color from swatch" msgstr "Füllfarbe aus der Farbfelder-Palette auswählen" -#: ../src/ui/dialog/debug.cpp:69 +#: ../src/ui/dialog/debug.cpp:73 msgid "Messages" msgstr "Meldungen" -#: ../src/ui/dialog/debug.cpp:83 ../src/ui/dialog/messages.cpp:47 +#: ../src/ui/dialog/debug.cpp:87 ../src/ui/dialog/messages.cpp:47 #: ../src/ui/dialog/scriptdialog.cpp:182 msgid "_Clear" msgstr "_Leeren" -#: ../src/ui/dialog/debug.cpp:87 ../src/ui/dialog/messages.cpp:48 +#: ../src/ui/dialog/debug.cpp:91 ../src/ui/dialog/messages.cpp:48 msgid "Capture log messages" msgstr "Fehlerprotokoll mitschreiben" -#: ../src/ui/dialog/debug.cpp:91 +#: ../src/ui/dialog/debug.cpp:95 msgid "Release log messages" msgstr "Fehlerprotokoll verwerfen" @@ -14368,11 +14692,11 @@ msgid "Remove selected grid." msgstr "Ausgewähltes Gitter entfernen." #: ../src/ui/dialog/document-properties.cpp:147 -#: ../src/widgets/toolbox.cpp:1831 +#: ../src/widgets/toolbox.cpp:1835 msgid "Guides" msgstr "Führungslinien" -#: ../src/ui/dialog/document-properties.cpp:149 ../src/verbs.cpp:2680 +#: ../src/ui/dialog/document-properties.cpp:149 ../src/verbs.cpp:2685 msgid "Snap" msgstr "Einrasten" @@ -14425,7 +14749,7 @@ msgstr "Verschiedenes" #. Inkscape::GC::release(defsRepr); #. inform the document, so we can undo #. Color Management -#: ../src/ui/dialog/document-properties.cpp:487 ../src/verbs.cpp:2855 +#: ../src/ui/dialog/document-properties.cpp:487 ../src/verbs.cpp:2860 msgid "Link Color Profile" msgstr "Farb-Profil verknüpfen" @@ -14558,14 +14882,14 @@ msgstr "Gitter entfernen" msgid "Information" msgstr "Information" -#: ../src/ui/dialog/extension-editor.cpp:82 ../src/verbs.cpp:284 -#: ../src/verbs.cpp:303 ../share/extensions/color_custom.inx.h:7 +#: ../src/ui/dialog/extension-editor.cpp:82 ../src/verbs.cpp:289 +#: ../src/verbs.cpp:308 ../share/extensions/color_custom.inx.h:7 #: ../share/extensions/color_HSL_adjust.inx.h:11 #: ../share/extensions/color_randomize.inx.h:6 #: ../share/extensions/dots.inx.h:7 #: ../share/extensions/draw_from_triangle.inx.h:35 #: ../share/extensions/dxf_input.inx.h:10 -#: ../share/extensions/dxf_outlines.inx.h:20 +#: ../share/extensions/dxf_outlines.inx.h:24 #: ../share/extensions/gcodetools_about.inx.h:3 #: ../share/extensions/gcodetools_area.inx.h:53 #: ../share/extensions/gcodetools_check_for_updates.inx.h:3 @@ -14611,103 +14935,103 @@ msgstr "Hilfe" msgid "Parameters" msgstr "Parameter" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:393 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:398 msgid "No preview" msgstr "Keine Vorschau" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:499 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:504 msgid "too large for preview" msgstr "zu groß für Vorschau" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:589 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:594 msgid "Enable preview" msgstr "Vorschau einschalten" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:746 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:759 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:763 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:766 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:774 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:790 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:805 -#: ../src/ui/dialog/filedialogimpl-win32.cpp:291 -#: ../src/ui/dialog/filedialogimpl-win32.cpp:422 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:751 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:764 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:768 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:771 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:779 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:795 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:810 +#: ../src/ui/dialog/filedialogimpl-win32.cpp:289 +#: ../src/ui/dialog/filedialogimpl-win32.cpp:420 msgid "All Files" msgstr "Alle Dateitypen" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:771 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:787 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:802 -#: ../src/ui/dialog/filedialogimpl-win32.cpp:292 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:776 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:792 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:807 +#: ../src/ui/dialog/filedialogimpl-win32.cpp:290 msgid "All Inkscape Files" msgstr "Alle Inkscape-Dateien" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:778 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:794 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:808 -#: ../src/ui/dialog/filedialogimpl-win32.cpp:293 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:783 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:799 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:813 +#: ../src/ui/dialog/filedialogimpl-win32.cpp:291 msgid "All Images" msgstr "Alle Bilder" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:781 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:797 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:811 -#: ../src/ui/dialog/filedialogimpl-win32.cpp:294 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:786 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:802 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:816 +#: ../src/ui/dialog/filedialogimpl-win32.cpp:292 msgid "All Vectors" msgstr "Alle Vektorgrafiken" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:784 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:800 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:814 -#: ../src/ui/dialog/filedialogimpl-win32.cpp:295 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:789 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:805 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:819 +#: ../src/ui/dialog/filedialogimpl-win32.cpp:293 msgid "All Bitmaps" msgstr "Alle Bitmaps" #. ###### File options #. ###### Do we want the .xxx extension automatically added? -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1043 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1611 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1048 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1616 msgid "Append filename extension automatically" msgstr "Dateinamenserweiterung automatisch anhängen" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1221 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1475 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1226 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1480 msgid "Guess from extension" msgstr "Automatisch bestimmen" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1496 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1501 msgid "Left edge of source" msgstr "Linke Kante der Quelle" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1497 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1502 msgid "Top edge of source" msgstr "Oberkante der Quelle" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1498 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1503 msgid "Right edge of source" msgstr "Rechte Kante der Quelle" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1499 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1504 msgid "Bottom edge of source" msgstr "Unterkante der Quelle" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1500 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1505 msgid "Source width" msgstr "Quellenbreite" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1501 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1506 msgid "Source height" msgstr "Quellenhöhe" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1502 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1507 msgid "Destination width" msgstr "Zielbreite" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1503 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1508 msgid "Destination height" msgstr "Zielhöhe" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1504 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1509 msgid "Resolution (dots per inch)" msgstr "Auflösung (Punkte pro Zoll)" @@ -14715,40 +15039,40 @@ msgstr "Auflösung (Punkte pro Zoll)" #. ## EXTRA WIDGET -- SOURCE SIDE #. ######################################### #. ##### Export options buttons/spinners, etc -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1542 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1547 msgid "Document" msgstr "Dokument" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1554 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1559 msgctxt "Export dialog" msgid "Custom" msgstr "Benutzerdefiniert" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1574 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1579 msgid "Source" msgstr "Quelle" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1594 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1599 msgid "Cairo" msgstr "Cairo" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1597 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1602 msgid "Antialias" msgstr "Kantenglättung" -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1623 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1628 msgid "Destination" msgstr "Ziel" -#: ../src/ui/dialog/filedialogimpl-win32.cpp:423 +#: ../src/ui/dialog/filedialogimpl-win32.cpp:421 msgid "All Executable Files" msgstr "Alle ausführbaren Dateien" -#: ../src/ui/dialog/filedialogimpl-win32.cpp:615 +#: ../src/ui/dialog/filedialogimpl-win32.cpp:613 msgid "Show Preview" msgstr "Zeige Vorschau" -#: ../src/ui/dialog/filedialogimpl-win32.cpp:753 +#: ../src/ui/dialog/filedialogimpl-win32.cpp:751 msgid "No file selected" msgstr "Keine Datei ausgewählt" @@ -14765,7 +15089,7 @@ msgid "Stroke st_yle" msgstr "_Muster der Kontur" #. TRANSLATORS: this dialog is accessible via menu Filters - Filter editor -#: ../src/ui/dialog/filter-effects-dialog.cpp:511 +#: ../src/ui/dialog/filter-effects-dialog.cpp:515 msgid "" "This matrix determines a linear transform on color space. Each line affects " "one of the color components. Each column determines how much of each color " @@ -14777,91 +15101,83 @@ msgstr "" "Einfluß der jeweiligen Eingangskomponente. Die letzte Spalte gibt einen " "konstanten Grundwert der Ausgangskomponenten vor. " -#: ../src/ui/dialog/filter-effects-dialog.cpp:621 +#: ../src/ui/dialog/filter-effects-dialog.cpp:625 msgid "Image File" msgstr "Bild-Datei" -#: ../src/ui/dialog/filter-effects-dialog.cpp:624 +#: ../src/ui/dialog/filter-effects-dialog.cpp:628 msgid "Selected SVG Element" msgstr "Gewähltes SVG Element" #. TODO: any image, not just svg -#: ../src/ui/dialog/filter-effects-dialog.cpp:694 +#: ../src/ui/dialog/filter-effects-dialog.cpp:698 msgid "Select an image to be used as feImage input" msgstr "Wählt ein Bild als Eingabe für feBild" -#: ../src/ui/dialog/filter-effects-dialog.cpp:786 +#: ../src/ui/dialog/filter-effects-dialog.cpp:790 msgid "This SVG filter effect does not require any parameters." msgstr "Dieser SVG-Filtereffekt benötigt keine Parameter." -#: ../src/ui/dialog/filter-effects-dialog.cpp:792 +#: ../src/ui/dialog/filter-effects-dialog.cpp:796 msgid "This SVG filter effect is not yet implemented in Inkscape." msgstr "Dieser SVG-Filtereffekt ist noch nicht in Inkscape implementiert." -#: ../src/ui/dialog/filter-effects-dialog.cpp:980 +#: ../src/ui/dialog/filter-effects-dialog.cpp:984 msgid "Light Source:" msgstr "Lichtquelle:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:997 -msgid "Azimuth" -msgstr "Azimut" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:997 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1001 msgid "Direction angle for the light source on the XY plane, in degrees" msgstr "Winkel, aus dem das Licht in der XY-Ebene kommt, in °" -#: ../src/ui/dialog/filter-effects-dialog.cpp:998 -msgid "Elevation" -msgstr "Anhebung" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:998 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1002 msgid "Direction angle for the light source on the YZ plane, in degrees" msgstr "Winkel, aus dem das Licht in der YZ-Ebene kommt, in °" #. default x: #. default y: #. default z: -#: ../src/ui/dialog/filter-effects-dialog.cpp:1001 -#: ../src/ui/dialog/filter-effects-dialog.cpp:1004 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1005 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1008 msgid "Location:" msgstr "Ort:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1001 -#: ../src/ui/dialog/filter-effects-dialog.cpp:1004 -#: ../src/ui/dialog/filter-effects-dialog.cpp:1007 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1005 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1008 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1011 msgid "X coordinate" msgstr "X-Koordinate" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1001 -#: ../src/ui/dialog/filter-effects-dialog.cpp:1004 -#: ../src/ui/dialog/filter-effects-dialog.cpp:1007 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1005 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1008 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1011 msgid "Y coordinate" msgstr "Y-Koordinate" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1001 -#: ../src/ui/dialog/filter-effects-dialog.cpp:1004 -#: ../src/ui/dialog/filter-effects-dialog.cpp:1007 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1005 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1008 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1011 msgid "Z coordinate" msgstr "X-Koordinate" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1007 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1011 msgid "Points At" msgstr "Zeigt auf" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1008 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1012 msgid "Specular Exponent" msgstr "Glanzpunkt-Exponent" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1008 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1012 msgid "Exponent value controlling the focus for the light source" msgstr "Exponent bestimmt den Fokus der Lichtquelle" #. TODO: here I have used 100 degrees as default value. But spec says that if not specified, no limiting cone is applied. So, there should be a way for the user to set a "no limiting cone" option. -#: ../src/ui/dialog/filter-effects-dialog.cpp:1010 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1014 msgid "Cone Angle" msgstr "Konuswinkel" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1010 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1014 msgid "" "This is the angle between the spot light axis (i.e. the axis between the " "light source and the point to which it is pointing at) and the spot light " @@ -14869,111 +15185,111 @@ msgid "" msgstr "" "Öffnungswinkel des Lichtkonus. Außerhalb des Konus gibt es kein Licht. " -#: ../src/ui/dialog/filter-effects-dialog.cpp:1073 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1077 msgid "New light source" msgstr "Neue Lichtquelle" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1114 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1118 msgid "_Duplicate" msgstr "_Duplizieren" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1148 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1152 msgid "_Filter" msgstr "_Filter" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1164 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1168 msgid "R_ename" msgstr "Umb_enennen" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1293 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1298 msgid "Rename filter" msgstr "Filter umbenennen" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1330 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1335 msgid "Apply filter" msgstr "Filter anwenden" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1400 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1405 msgid "filter" msgstr "Filter" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1407 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1412 msgid "Add filter" msgstr "Filter hinzufügen" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1459 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1464 msgid "Duplicate filter" msgstr "Filter duplizieren" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1558 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1563 msgid "_Effect" msgstr "_Effekt" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1568 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1573 msgid "Connections" msgstr "Verbindungen" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1706 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1711 msgid "Remove filter primitive" msgstr "Filterbaustein entfernen" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2294 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2299 msgid "Remove merge node" msgstr "Zusammengefassten Knoten löschen" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2414 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2419 msgid "Reorder filter primitive" msgstr "Filterbausteine umordnen" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2494 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2499 msgid "Add Effect:" msgstr "Effekt hinzufügen:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2495 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2500 msgid "No effect selected" msgstr "Kein Effekt gewählt" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2496 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2501 msgid "No filter selected" msgstr "Kein Filter gewählt" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2542 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2547 msgid "Effect parameters" msgstr "Effektparameter" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2543 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2548 msgid "Filter General Settings" msgstr "Allgemeine Filtereinstellungen" #. default x: #. default y: -#: ../src/ui/dialog/filter-effects-dialog.cpp:2601 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2606 msgid "Coordinates:" msgstr "Koordinaten:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2601 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2606 msgid "X coordinate of the left corners of filter effects region" msgstr "X-Koordinate der linken Ecke des Ausschnitts, auf den Filter wirkt" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2601 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2606 msgid "Y coordinate of the upper corners of filter effects region" msgstr "Y-Koordinate der obere Ecke des Ausschnitts, auf den Filter wirkt" #. default width: #. default height: -#: ../src/ui/dialog/filter-effects-dialog.cpp:2602 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2607 msgid "Dimensions:" msgstr "Dimensionen:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2602 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2607 msgid "Width of filter effects region" msgstr "Breite des Filtereffekts" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2602 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2607 msgid "Height of filter effects region" msgstr "Höhe des Filtereffekts" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2608 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2613 msgid "" "Indicates the type of matrix operation. The keyword 'matrix' indicates that " "a full 5x4 matrix of values will be provided. The other keywords represent " @@ -14985,23 +15301,23 @@ msgstr "" "für oft verwendete Farboperationen bereitstellen, ohne eine komplette Matrix " "angeben zu müssen." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2609 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2614 msgid "Value(s):" msgstr "Wert(e):" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2624 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2664 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2629 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2669 msgid "Operator:" msgstr "Operator:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2625 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2630 msgid "K1:" msgstr "K1:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2625 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2626 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2627 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2628 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2630 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2631 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2632 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2633 msgid "" "If the arithmetic operation is chosen, each result pixel is computed using " "the formula k1*i1*i2 + k2*i1 + k3*i2 + k4 where i1 and i2 are the pixel " @@ -15011,38 +15327,38 @@ msgstr "" "Formel k1*i1*i2 + k2*i1 + k3*i2 + k4 berechnet, wobei i1 und i2 die Werte " "der Eingangsbildpunkte sind." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2626 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2631 msgid "K2:" msgstr "K2:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2627 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2632 msgid "K3:" msgstr "K3:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2628 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2633 msgid "K4:" msgstr "K4:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2631 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 msgid "Size:" msgstr "Größe:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2631 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 msgid "width of the convolve matrix" msgstr "Breite der Faltungsmatrix" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2631 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 msgid "height of the convolve matrix" msgstr "Höhe der Faltungsmatrix" #. default x: #. default y: -#: ../src/ui/dialog/filter-effects-dialog.cpp:2632 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2637 #: ../src/ui/dialog/object-attributes.cpp:48 msgid "Target:" msgstr "Target:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2632 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2637 msgid "" "X coordinate of the target point in the convolve matrix. The convolution is " "applied to pixels around this point." @@ -15050,7 +15366,7 @@ msgstr "" "X-Koordinate des Zielpunktes der Faltung. Die Faltungsmatrix wirkt auf Pixel " "um diesen Punkt herum." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2632 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2637 msgid "" "Y coordinate of the target point in the convolve matrix. The convolution is " "applied to pixels around this point." @@ -15059,11 +15375,11 @@ msgstr "" "um diesen Punkt herum." #. TRANSLATORS: for info on "Kernel", see http://en.wikipedia.org/wiki/Kernel_(matrix) -#: ../src/ui/dialog/filter-effects-dialog.cpp:2634 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2639 msgid "Kernel:" msgstr "Faltungsmatrix:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2634 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2639 msgid "" "This matrix describes the convolve operation that is applied to the input " "image in order to calculate the pixel colors at the output. Different " @@ -15079,11 +15395,11 @@ msgstr "" "(entlang der Richtung der Matrixdiagonalen), während eine Matrix mit " "konstanten Einträgen eine isotrope Unschärfe erzeugt." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2641 msgid "Divisor:" msgstr "Teiler:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2641 msgid "" "After applying the kernelMatrix to the input image to yield a number, that " "number is divided by divisor to yield the final destination color value. A " @@ -15095,11 +15411,11 @@ msgstr "" "erhalten. Ist der Divisor die Summe der Matrixeinträge, so wird das Ergebnis " "eine gemittelte Farbintensität aufweisen." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2637 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2642 msgid "Bias:" msgstr "Grundwert:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2637 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2642 msgid "" "This value is added to each component. This is useful to define a constant " "value as the zero response of the filter." @@ -15107,11 +15423,11 @@ msgstr "" "Dieser Wert wird zu jeder Komponente hinzu addiert. Dies ergibt eine " "Grundantwort des Filters bei leerer Eingabe." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2638 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 msgid "Edge Mode:" msgstr "Kanten-Modus:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2638 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 msgid "" "Determines how to extend the input image as necessary with color values so " "that the matrix operations can be applied when the kernel is positioned at " @@ -15121,33 +15437,33 @@ msgstr "" "erweitert wird, damit die Faltungsmatrix bis an die Kanten des Originals " "angewendet werden kann." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2639 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 msgid "Preserve Alpha" msgstr "Alphawert beibehalten" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2639 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 msgid "If set, the alpha channel won't be altered by this filter primitive." msgstr "" "Wenn gesetzt, wird der Alphakanal von diesem Filterbaustein nicht " "beeinflusst." #. default: white -#: ../src/ui/dialog/filter-effects-dialog.cpp:2642 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2647 msgid "Diffuse Color:" msgstr "Diffusreflektierende Farbe:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2642 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2675 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2647 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2680 msgid "Defines the color of the light source" msgstr "Definiert die Farbe der Lichtquelle" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2648 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2681 msgid "Surface Scale:" msgstr "Oberflächenskalierung:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2648 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2681 msgid "" "This value amplifies the heights of the bump map defined by the input alpha " "channel" @@ -15155,59 +15471,59 @@ msgstr "" "Dieser Wert multipliziert die Oberflächenstruktur, die aus dem Alphakanal " "der Eingabe gewonnen wird." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2677 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2682 msgid "Constant:" msgstr "Konstante:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2677 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2682 msgid "This constant affects the Phong lighting model." msgstr "Diese Größe beeinflusst die Phong-Beleuchtung." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2645 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2679 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2650 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2684 msgid "Kernel Unit Length:" msgstr "Größe der Faltungsmatrixeinheit:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 msgid "This defines the intensity of the displacement effect." msgstr "Dies bestimmt die Stärke des Versatzeffekts." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2650 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 msgid "X displacement:" msgstr "X-Verschiebung:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2650 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 msgid "Color component that controls the displacement in the X direction" msgstr "Farbkomponente, die den Versatz in X-Richtung bestimmt" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2651 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2656 msgid "Y displacement:" msgstr "Y-Verschiebung:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2651 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2656 msgid "Color component that controls the displacement in the Y direction" msgstr "Farbkomponente, die den Versatz in Y-Richtung bestimmt" #. default: black -#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2659 msgid "Flood Color:" msgstr "Füllfarbe:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2659 msgid "The whole filter region will be filled with this color." msgstr "Die gesamte Filterregion wird mit dieser Farbe gefüllt." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2658 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2663 msgid "Standard Deviation:" msgstr "Standard Abweichung:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2658 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2663 msgid "The standard deviation for the blur operation." msgstr "Standardabweichung für die Unschärfeoperation" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2664 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2669 msgid "" "Erode: performs \"thinning\" of input image.\n" "Dilate: performs \"fattenning\" of input image." @@ -15215,67 +15531,67 @@ msgstr "" "Erodieren: \"Verdünnt\" das Eingangsbild.\n" "Weiten:\"Verdickt\" das Eingangsbild." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2668 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2673 msgid "Source of Image:" msgstr "Bild-Quelle:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2671 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 msgid "Delta X:" msgstr "Delta X:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2671 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 msgid "This is how far the input image gets shifted to the right" msgstr "Um diesen Betrag wird das Eingangsbild nach rechts verschoben." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2672 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2677 msgid "Delta Y:" msgstr "Delta Y:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2672 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2677 msgid "This is how far the input image gets shifted downwards" msgstr "Um diesen Betrag wird das Eingangsbild nach unten verschoben." #. default: white -#: ../src/ui/dialog/filter-effects-dialog.cpp:2675 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2680 msgid "Specular Color:" msgstr "Glanzpunktfarbe:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2678 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2683 #: ../share/extensions/interp.inx.h:2 msgid "Exponent:" msgstr "Exponent:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2678 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2683 msgid "Exponent for specular term, larger is more \"shiny\"." msgstr "Exponent bestimmt Glanzlicht, größer ist \"glänzender\"" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2687 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2692 msgid "" "Indicates whether the filter primitive should perform a noise or turbulence " "function." msgstr "Zeigt an, ob der Filterbaustein Rauschen oder Turbulenz erzeugt." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2688 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2693 msgid "Base Frequency:" msgstr "Basisfrequenz:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2689 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2694 msgid "Octaves:" msgstr "Oktaven:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2690 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2695 msgid "Seed:" msgstr "Startwert:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2690 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2695 msgid "The starting number for the pseudo random number generator." msgstr "Startwert des Pseudozufallsgenerators" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2702 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2707 msgid "Add filter primitive" msgstr "Filterbaustein hinzufügen" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2719 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2724 msgid "" "The feBlend filter primitive provides 4 image blending modes: screen, " "multiply, darken and lighten." @@ -15283,7 +15599,7 @@ msgstr "" "Der Mischen Filterbaustein sieht 4 Bild-Misch-Modi vor: Screen, " "Multiplizieren, Verdunkeln und Aufhellen." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2723 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2728 msgid "" "The feColorMatrix filter primitive applies a matrix transformation to " "color of each rendered pixel. This allows for effects like turning object to " @@ -15293,7 +15609,7 @@ msgstr "" "die Farben der gerenderten Pixel an. Dies erlaubt Effekte wie Umwandeln in " "Graustufen, Modifizieren der Sättigung und Änderung des Farbwerts." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2727 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2732 msgid "" "The feComponentTransfer filter primitive manipulates the input's " "color components (red, green, blue, and alpha) according to particular " @@ -15305,7 +15621,7 @@ msgstr "" "festzulegender Transferfunktionen. Dies erlaubt Operationen wie Helligkeits- " "und Kontrasteinstellung, Farbbalance und Schwellenwerte." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2731 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2736 msgid "" "The feComposite filter primitive composites two images using one of " "the Porter-Duff blending modes or the arithmetic mode described in SVG " @@ -15318,7 +15634,7 @@ msgstr "" "Wesentlichen aus logischen Operationen zwischen den korrespondierenden Pixel-" "Werten der Bilder." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2735 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2740 msgid "" "The feConvolveMatrix lets you specify a Convolution to be applied on " "the image. Common effects created using convolution matrices are blur, " @@ -15333,7 +15649,7 @@ msgstr "" "allerdings ist der spezialisierte Effekt schneller und von der Auflösung " "unabhängig. " -#: ../src/ui/dialog/filter-effects-dialog.cpp:2739 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2744 msgid "" "The feDiffuseLighting and feSpecularLighting filter primitives create " "\"embossed\" shadings. The input's alpha channel is used to provide depth " @@ -15345,7 +15661,7 @@ msgstr "" "verwendet, um Höheninformationen zu erhalten: opakere Gebiete werden " "angehoben, weniger opake abgesenkt." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2743 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2748 msgid "" "The feDisplacementMap filter primitive displaces the pixels in the " "first input using the second input as a displacement map, that shows from " @@ -15357,7 +15673,7 @@ msgstr "" "definiert, woher die Pixel kommen sollen. Klassische Beispiele sind Wirbel- " "und Quetscheffekte." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2747 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2752 msgid "" "The feFlood filter primitive fills the region with a given color and " "opacity. It is usually used as an input to other filters to apply color to " @@ -15367,7 +15683,7 @@ msgstr "" "und Opazität. Normalerweise wird dies als Eingang für andere Filter " "verwendet, um so Farben ins Spiel zu bringen." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2751 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2756 msgid "" "The feGaussianBlur filter primitive uniformly blurs its input. It is " "commonly used together with feOffset to create a drop shadow effect." @@ -15376,7 +15692,7 @@ msgstr "" "Er wird normalerweise zusammen mit dem Filterbaustein Versatz benutzt, um " "abgesetzte Schatten zu erzeugen." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2755 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2760 msgid "" "The feImage filter primitive fills the region with an external image " "or another part of the document." @@ -15384,7 +15700,7 @@ msgstr "" "Der Filterbaustein Bild füllt eine Region mit einem externen Bild " "oder einem anderen Teil des Dokuments." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2759 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2764 msgid "" "The feMerge filter primitive composites several temporary images " "inside the filter primitive to a single image. It uses normal alpha " @@ -15396,7 +15712,7 @@ msgstr "" "zu den Bausteinen Überblenden im Normalmodus oder Verbund im \"Überlagern\"-" "Modus." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2763 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2768 msgid "" "The feMorphology filter primitive provides erode and dilate effects. " "For single-color objects erode makes the object thinner and dilate makes it " @@ -15406,7 +15722,7 @@ msgstr "" "\"Weiten\" zur Verfügung. Für einfarbige Objekte wirkt \"Erodieren\" " "ausdünnend und \"Weiten\" verdickend." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2767 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2772 msgid "" "The feOffset filter primitive offsets the image by an user-defined " "amount. For example, this is useful for drop shadows, where the shadow is in " @@ -15417,7 +15733,7 @@ msgstr "" "die sich an einer leicht anderen Position als das eigentliche Objekt " "befinden." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2771 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2776 msgid "" "The feDiffuseLighting and feSpecularLighting filter primitives " "create \"embossed\" shadings. The input's alpha channel is used to provide " @@ -15429,14 +15745,14 @@ msgstr "" "verwendet, um Tiefeninformationen zu erhalten: opakere Gebiete werden " "angehoben, weniger opake abgesenkt." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2775 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2780 msgid "" "The feTile filter primitive tiles a region with its input graphic" msgstr "" "Der Filterbaustein Kacheln belegt einen Bereich mit Kopien einer " "Graphik." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2779 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2784 msgid "" "The feTurbulence filter primitive renders Perlin noise. This kind of " "noise is useful in simulating several nature phenomena like clouds, fire and " @@ -15446,11 +15762,11 @@ msgstr "" "Rauschen kann verwendet werden, um natürliche Phänomene wie Wolken, Feuer " "oder Rauch, sowie komplexe Texturen wie Marmor oder Granit nachzubilden." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2798 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2803 msgid "Duplicate filter primitive" msgstr "Filterbaustein duplizieren" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2851 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2856 msgid "Set filter primitive attribute" msgstr "Attribut für Filterbaustein setzen" @@ -15637,7 +15953,7 @@ msgstr "Spiralen" msgid "Search spirals" msgstr "Spiralen durchsuchen" -#: ../src/ui/dialog/find.cpp:102 ../src/widgets/toolbox.cpp:1732 +#: ../src/ui/dialog/find.cpp:102 ../src/widgets/toolbox.cpp:1736 msgid "Paths" msgstr "Pfade" @@ -15764,6 +16080,29 @@ msgstr "Wählen Sie ein Objekttyp" msgid "Select a property" msgstr "Wählen Sie eine Eigenschaft aus" +#: ../src/ui/dialog/font-substitution.cpp:87 +msgid "" +"\n" +"Some fonts are not available and have been substituted." +msgstr "" + +#: ../src/ui/dialog/font-substitution.cpp:90 +msgid "Font substitution" +msgstr "Schriftartersetzung" + +#: ../src/ui/dialog/font-substitution.cpp:109 +#, fuzzy +msgid "Select all the affected items" +msgstr "Wählen Sie ein Objekttyp" + +#: ../src/ui/dialog/font-substitution.cpp:114 +msgid "Don't show this warning again" +msgstr "Diese Warnung nicht erneut zeigen" + +#: ../src/ui/dialog/font-substitution.cpp:255 +msgid "Font '%1' substituted with '%2'" +msgstr "Schrift '%1' ersetzt durch '%2'" + #: ../src/ui/dialog/glyphs.cpp:60 ../src/ui/dialog/glyphs.cpp:152 msgid "all" msgstr "alles" @@ -16539,53 +16878,53 @@ msgstr "Führungslinien ID: %s" msgid "Current: %s" msgstr "Aktuell: %s" -#: ../src/ui/dialog/icon-preview.cpp:156 +#: ../src/ui/dialog/icon-preview.cpp:159 #, c-format msgid "%d x %d" msgstr "%d × %d" -#: ../src/ui/dialog/icon-preview.cpp:168 +#: ../src/ui/dialog/icon-preview.cpp:171 msgid "Magnified:" msgstr "Vergrößert:" -#: ../src/ui/dialog/icon-preview.cpp:237 +#: ../src/ui/dialog/icon-preview.cpp:240 msgid "Actual Size:" msgstr "Aktuelle Größe:" -#: ../src/ui/dialog/icon-preview.cpp:242 +#: ../src/ui/dialog/icon-preview.cpp:245 msgctxt "Icon preview window" msgid "Sele_ction" msgstr "Auswahl" -#: ../src/ui/dialog/icon-preview.cpp:244 +#: ../src/ui/dialog/icon-preview.cpp:247 msgid "Selection only or whole document" msgstr "Nur Auswahl oder ganzes Dokument" -#: ../src/ui/dialog/inkscape-preferences.cpp:182 +#: ../src/ui/dialog/inkscape-preferences.cpp:181 msgid "Show selection cue" msgstr "Auswahlmarkierung anzeigen" # !!! Frage? Passiv formulieren? -#: ../src/ui/dialog/inkscape-preferences.cpp:183 +#: ../src/ui/dialog/inkscape-preferences.cpp:182 msgid "" "Whether selected objects display a selection cue (the same as in selector)" msgstr "" "Sind die ausgewählten Objekte visuell hervorgehoben (wie beim " "Auswahlwerkzeug) " -#: ../src/ui/dialog/inkscape-preferences.cpp:189 +#: ../src/ui/dialog/inkscape-preferences.cpp:188 msgid "Enable gradient editing" msgstr "Farbverlaufs-Editor aktiviert" -#: ../src/ui/dialog/inkscape-preferences.cpp:190 +#: ../src/ui/dialog/inkscape-preferences.cpp:189 msgid "Whether selected objects display gradient editing controls" msgstr "Ausgewählten Objekte zeigen Farbverlaufs-Anfasser an" -#: ../src/ui/dialog/inkscape-preferences.cpp:195 +#: ../src/ui/dialog/inkscape-preferences.cpp:194 msgid "Conversion to guides uses edges instead of bounding box" msgstr "Umwandlung zu Führungslinien nutzt Ecken anstelle von Umrandungsboxen" -#: ../src/ui/dialog/inkscape-preferences.cpp:196 +#: ../src/ui/dialog/inkscape-preferences.cpp:195 msgid "" "Converting an object to guides places these along the object's true edges " "(imitating the object's shape), not along the bounding box" @@ -16593,25 +16932,25 @@ msgstr "" "Wird ein Objekt zu Führungslinien umgewandelt, so gelten die tatsächlichen " "Umrisse des Objekts, nicht die rechteckige Umrandung." -#: ../src/ui/dialog/inkscape-preferences.cpp:203 +#: ../src/ui/dialog/inkscape-preferences.cpp:202 msgid "Ctrl+click _dot size:" msgstr "Strg+Klick Punktgröße:" -#: ../src/ui/dialog/inkscape-preferences.cpp:203 +#: ../src/ui/dialog/inkscape-preferences.cpp:202 msgid "times current stroke width" msgstr "(Faktor zur Kontur)" -#: ../src/ui/dialog/inkscape-preferences.cpp:204 +#: ../src/ui/dialog/inkscape-preferences.cpp:203 msgid "Size of dots created with Ctrl+click (relative to current stroke width)" msgstr "" "Größe der Punkte, die durch Strg+Klick erzeugt werden (Relativ zur aktuellen " "Strichdicke)" -#: ../src/ui/dialog/inkscape-preferences.cpp:219 +#: ../src/ui/dialog/inkscape-preferences.cpp:218 msgid "No objects selected to take the style from." msgstr "Objekte auswählen, um Stil zu übernehmen." -#: ../src/ui/dialog/inkscape-preferences.cpp:228 +#: ../src/ui/dialog/inkscape-preferences.cpp:227 msgid "" "More than one object selected. Cannot take style from multiple " "objects." @@ -16619,23 +16958,23 @@ msgstr "" "Mehr als ein Objekt ausgewählt. Ein Stil kann nicht von mehreren " "Objekten übernommen werden." -#: ../src/ui/dialog/inkscape-preferences.cpp:261 +#: ../src/ui/dialog/inkscape-preferences.cpp:260 msgid "Style of new objects" msgstr "Stil von neuen Objekten" -#: ../src/ui/dialog/inkscape-preferences.cpp:263 +#: ../src/ui/dialog/inkscape-preferences.cpp:262 msgid "Last used style" msgstr "Zuletzt benutzter Stil" -#: ../src/ui/dialog/inkscape-preferences.cpp:265 +#: ../src/ui/dialog/inkscape-preferences.cpp:264 msgid "Apply the style you last set on an object" msgstr "Stil anwenden, der zuletzt für ein Objekt gesetzt wurde" -#: ../src/ui/dialog/inkscape-preferences.cpp:270 +#: ../src/ui/dialog/inkscape-preferences.cpp:269 msgid "This tool's own style:" msgstr "Stilvorgaben für dieses Werkzeug:" -#: ../src/ui/dialog/inkscape-preferences.cpp:274 +#: ../src/ui/dialog/inkscape-preferences.cpp:273 msgid "" "Each tool may store its own style to apply to the newly created objects. Use " "the button below to set it." @@ -16644,65 +16983,65 @@ msgstr "" "angewendet werden. Stilvorgabe mit dem unteren Knopf festlegen." #. style swatch -#: ../src/ui/dialog/inkscape-preferences.cpp:278 +#: ../src/ui/dialog/inkscape-preferences.cpp:277 msgid "Take from selection" msgstr "Aus Auswahl übernehmen" -#: ../src/ui/dialog/inkscape-preferences.cpp:283 +#: ../src/ui/dialog/inkscape-preferences.cpp:282 msgid "This tool's style of new objects" msgstr "Stilvorgaben für dieses Werkzeug für neue Objekte:" -#: ../src/ui/dialog/inkscape-preferences.cpp:290 +#: ../src/ui/dialog/inkscape-preferences.cpp:289 msgid "Remember the style of the (first) selected object as this tool's style" msgstr "" "Stil des (ersten) ausgewählten Objektes zur Vorgabe für dieses Werkzeug " "machen" -#: ../src/ui/dialog/inkscape-preferences.cpp:295 +#: ../src/ui/dialog/inkscape-preferences.cpp:294 msgid "Tools" msgstr "Werkzeuge" -#: ../src/ui/dialog/inkscape-preferences.cpp:298 +#: ../src/ui/dialog/inkscape-preferences.cpp:297 msgid "Bounding box to use" msgstr "Zu verwendende Umrandungsbox:" -#: ../src/ui/dialog/inkscape-preferences.cpp:299 +#: ../src/ui/dialog/inkscape-preferences.cpp:298 msgid "Visual bounding box" msgstr "Visuelle Umrandungsbox" -#: ../src/ui/dialog/inkscape-preferences.cpp:301 +#: ../src/ui/dialog/inkscape-preferences.cpp:300 msgid "This bounding box includes stroke width, markers, filter margins, etc." msgstr "" "Diese Umrandungsbox berücksichtigt Strichbreiten, Markierungen, Filterränder " "usw." -#: ../src/ui/dialog/inkscape-preferences.cpp:302 +#: ../src/ui/dialog/inkscape-preferences.cpp:301 msgid "Geometric bounding box" msgstr "Geometrische Umrandungsbox" -#: ../src/ui/dialog/inkscape-preferences.cpp:304 +#: ../src/ui/dialog/inkscape-preferences.cpp:303 msgid "This bounding box includes only the bare path" msgstr "Diese Umrandungsbox berücksichtigt nur den reinen Pfad" -#: ../src/ui/dialog/inkscape-preferences.cpp:306 +#: ../src/ui/dialog/inkscape-preferences.cpp:305 msgid "Conversion to guides" msgstr "Umwandlung in Führungslinien" -#: ../src/ui/dialog/inkscape-preferences.cpp:307 +#: ../src/ui/dialog/inkscape-preferences.cpp:306 msgid "Keep objects after conversion to guides" msgstr "Behalte Objekte nach Umwandlung in Führungslinien" -#: ../src/ui/dialog/inkscape-preferences.cpp:309 +#: ../src/ui/dialog/inkscape-preferences.cpp:308 msgid "" "When converting an object to guides, don't delete the object after the " "conversion" msgstr "Objekt bleibt erhalten, wenn es in Führungslinien umgewandelt wird." -#: ../src/ui/dialog/inkscape-preferences.cpp:310 +#: ../src/ui/dialog/inkscape-preferences.cpp:309 msgid "Treat groups as a single object" msgstr "Behandle Gruppen als Einzelobjekte" -#: ../src/ui/dialog/inkscape-preferences.cpp:312 +#: ../src/ui/dialog/inkscape-preferences.cpp:311 msgid "" "Treat groups as a single object during conversion to guides rather than " "converting each child separately" @@ -16710,104 +17049,104 @@ msgstr "" "Gruppen werden als Ganzes (statt der Einzelteile) zu Führungslinien " "umgewandelt." -#: ../src/ui/dialog/inkscape-preferences.cpp:314 +#: ../src/ui/dialog/inkscape-preferences.cpp:313 msgid "Average all sketches" msgstr "Durchschnittliche Qualität der Sketche" -#: ../src/ui/dialog/inkscape-preferences.cpp:315 +#: ../src/ui/dialog/inkscape-preferences.cpp:314 msgid "Width is in absolute units" msgstr "Breitenangabe in absoluten Einheiten" -#: ../src/ui/dialog/inkscape-preferences.cpp:316 +#: ../src/ui/dialog/inkscape-preferences.cpp:315 msgid "Select new path" msgstr "Neuen Pfad auswählen" -#: ../src/ui/dialog/inkscape-preferences.cpp:317 +#: ../src/ui/dialog/inkscape-preferences.cpp:316 msgid "Don't attach connectors to text objects" msgstr "Objektverbinder nicht mit Textobjekten verbinden" #. Selector -#: ../src/ui/dialog/inkscape-preferences.cpp:320 +#: ../src/ui/dialog/inkscape-preferences.cpp:319 msgid "Selector" msgstr "Auswahlwerkzeug" -#: ../src/ui/dialog/inkscape-preferences.cpp:325 +#: ../src/ui/dialog/inkscape-preferences.cpp:324 msgid "When transforming, show" msgstr "Zeige beim Transformieren" -#: ../src/ui/dialog/inkscape-preferences.cpp:326 +#: ../src/ui/dialog/inkscape-preferences.cpp:325 msgid "Objects" msgstr "Objekte" -#: ../src/ui/dialog/inkscape-preferences.cpp:328 +#: ../src/ui/dialog/inkscape-preferences.cpp:327 msgid "Show the actual objects when moving or transforming" msgstr "Zeige Objekte mit Inhalt beim Verschieben oder Verändern" -#: ../src/ui/dialog/inkscape-preferences.cpp:329 +#: ../src/ui/dialog/inkscape-preferences.cpp:328 msgid "Box outline" msgstr "Objektumriss" -#: ../src/ui/dialog/inkscape-preferences.cpp:331 +#: ../src/ui/dialog/inkscape-preferences.cpp:330 msgid "Show only a box outline of the objects when moving or transforming" msgstr "Zeige rechteckige Objektumrisse beim Verschieben oder Verändern" -#: ../src/ui/dialog/inkscape-preferences.cpp:332 +#: ../src/ui/dialog/inkscape-preferences.cpp:331 msgid "Per-object selection cue" msgstr "Pro Objekt-Auswahl" -#: ../src/ui/dialog/inkscape-preferences.cpp:335 +#: ../src/ui/dialog/inkscape-preferences.cpp:334 msgid "No per-object selection indication" msgstr "Keine Auswahlmarkierung für Objekte" -#: ../src/ui/dialog/inkscape-preferences.cpp:336 +#: ../src/ui/dialog/inkscape-preferences.cpp:335 msgid "Mark" msgstr "Markierung" -#: ../src/ui/dialog/inkscape-preferences.cpp:338 +#: ../src/ui/dialog/inkscape-preferences.cpp:337 msgid "Each selected object has a diamond mark in the top left corner" msgstr "" "Jedes ausgewählte Objekt hat eine diamantförmige Markierung in der linken " "oberen Ecke" -#: ../src/ui/dialog/inkscape-preferences.cpp:339 +#: ../src/ui/dialog/inkscape-preferences.cpp:338 msgid "Box" msgstr "Umschließendes Rechteck" -#: ../src/ui/dialog/inkscape-preferences.cpp:341 +#: ../src/ui/dialog/inkscape-preferences.cpp:340 msgid "Each selected object displays its bounding box" msgstr "" "Jedes gewählte Objekt zeigt sein umschließendes Rechteck (Umrandungsbox)" #. Node -#: ../src/ui/dialog/inkscape-preferences.cpp:344 +#: ../src/ui/dialog/inkscape-preferences.cpp:343 msgid "Node" msgstr "Knoten" -#: ../src/ui/dialog/inkscape-preferences.cpp:347 +#: ../src/ui/dialog/inkscape-preferences.cpp:346 msgid "Path outline" msgstr "Pfadumriss" -#: ../src/ui/dialog/inkscape-preferences.cpp:348 +#: ../src/ui/dialog/inkscape-preferences.cpp:347 msgid "Path outline color" msgstr "Entwurfspfad Farbe" -#: ../src/ui/dialog/inkscape-preferences.cpp:349 +#: ../src/ui/dialog/inkscape-preferences.cpp:348 msgid "Selects the color used for showing the path outline" msgstr "Die Farbe in der der Entwurfspfad angezeigt wird." -#: ../src/ui/dialog/inkscape-preferences.cpp:350 +#: ../src/ui/dialog/inkscape-preferences.cpp:349 msgid "Always show outline" msgstr "Umriss zeigen" -#: ../src/ui/dialog/inkscape-preferences.cpp:351 +#: ../src/ui/dialog/inkscape-preferences.cpp:350 msgid "Show outlines for all paths, not only invisible paths" msgstr "Zeigt Umrandung aller Pfade an, nicht nur von unsichtbaren Pfaden" -#: ../src/ui/dialog/inkscape-preferences.cpp:352 +#: ../src/ui/dialog/inkscape-preferences.cpp:351 msgid "Update outline when dragging nodes" msgstr "Umriss beim Ziehen von Knoten aktualisieren" -#: ../src/ui/dialog/inkscape-preferences.cpp:353 +#: ../src/ui/dialog/inkscape-preferences.cpp:352 msgid "" "Update the outline when dragging or transforming nodes; if this is off, the " "outline will only update when completing a drag" @@ -16816,11 +17155,11 @@ msgstr "" "es deaktiviert ist, wird die Umrandung erst wieder aktualisiert, wenn die " "Aktion abgeschlossen ist." -#: ../src/ui/dialog/inkscape-preferences.cpp:354 +#: ../src/ui/dialog/inkscape-preferences.cpp:353 msgid "Update paths when dragging nodes" msgstr "Pfad beim Ziehen von Knoten aktualisieren" -#: ../src/ui/dialog/inkscape-preferences.cpp:355 +#: ../src/ui/dialog/inkscape-preferences.cpp:354 msgid "" "Update paths when dragging or transforming nodes; if this is off, paths will " "only be updated when completing a drag" @@ -16829,11 +17168,11 @@ msgstr "" "deaktiviert ist, wird der Pfad erst aktualisiert, wenn die Aktion " "abgeschlossen ist." -#: ../src/ui/dialog/inkscape-preferences.cpp:356 +#: ../src/ui/dialog/inkscape-preferences.cpp:355 msgid "Show path direction on outlines" msgstr "Zeige die Pfadrichtung an Außenlinine" -#: ../src/ui/dialog/inkscape-preferences.cpp:357 +#: ../src/ui/dialog/inkscape-preferences.cpp:356 msgid "" "Visualize the direction of selected paths by drawing small arrows in the " "middle of each outline segment" @@ -16841,30 +17180,30 @@ msgstr "" "Veranschaulichen Sie die Richtung der ausgewählten Pfade, in dem Sie kleine " "Pfeile in die Mitte jedes Rand-Segments zeichnen." -#: ../src/ui/dialog/inkscape-preferences.cpp:358 +#: ../src/ui/dialog/inkscape-preferences.cpp:357 msgid "Show temporary path outline" msgstr "Zeige temporär Pfadumrandung" -#: ../src/ui/dialog/inkscape-preferences.cpp:359 +#: ../src/ui/dialog/inkscape-preferences.cpp:358 msgid "When hovering over a path, briefly flash its outline" msgstr "" "Wenn die Maus über den Pfad bewegt wird, wird dessen Entwurfspfad kurz " "angezeigt." -#: ../src/ui/dialog/inkscape-preferences.cpp:360 +#: ../src/ui/dialog/inkscape-preferences.cpp:359 msgid "Show temporary outline for selected paths" msgstr "Zeige temporär Umrandung für ausgewählte Pfade" -#: ../src/ui/dialog/inkscape-preferences.cpp:361 +#: ../src/ui/dialog/inkscape-preferences.cpp:360 msgid "Show temporary outline even when a path is selected for editing" msgstr "" "Zeigt temporäre Umrandung an, wenn der Pfad zum Bearbeiten ausgewählt wurde." -#: ../src/ui/dialog/inkscape-preferences.cpp:363 +#: ../src/ui/dialog/inkscape-preferences.cpp:362 msgid "_Flash time:" msgstr "Anzeigedauer" -#: ../src/ui/dialog/inkscape-preferences.cpp:363 +#: ../src/ui/dialog/inkscape-preferences.cpp:362 msgid "" "Specifies how long the path outline will be visible after a mouse-over (in " "milliseconds); specify 0 to have the outline shown until mouse leaves the " @@ -16873,23 +17212,23 @@ msgstr "" "Bestimmt die Dauer der Pfad anzeige (in Millisekunden). Bei 0 wird der " "Entwurfspfad angezeigt bis die Maus den Bereich verlassen hat." -#: ../src/ui/dialog/inkscape-preferences.cpp:364 +#: ../src/ui/dialog/inkscape-preferences.cpp:363 msgid "Editing preferences" msgstr "Einstellungen bearbeiten" -#: ../src/ui/dialog/inkscape-preferences.cpp:365 +#: ../src/ui/dialog/inkscape-preferences.cpp:364 msgid "Show transform handles for single nodes" msgstr "Zeige Anfasser für einzelne Knoten" -#: ../src/ui/dialog/inkscape-preferences.cpp:366 +#: ../src/ui/dialog/inkscape-preferences.cpp:365 msgid "Show transform handles even when only a single node is selected" msgstr "Anfasser anzeigen, wenn nur ein einzelner Knoten ausgewählt ist." -#: ../src/ui/dialog/inkscape-preferences.cpp:367 +#: ../src/ui/dialog/inkscape-preferences.cpp:366 msgid "Deleting nodes preserves shape" msgstr "Knoten löschen, Form beibehalten" -#: ../src/ui/dialog/inkscape-preferences.cpp:368 +#: ../src/ui/dialog/inkscape-preferences.cpp:367 msgid "" "Move handles next to deleted nodes to resemble original shape; hold Ctrl to " "get the other behavior" @@ -16898,31 +17237,31 @@ msgstr "" "Origianlform ähnelt; drücken Sie STRG für das andere Verhalten" #. Tweak -#: ../src/ui/dialog/inkscape-preferences.cpp:371 +#: ../src/ui/dialog/inkscape-preferences.cpp:370 msgid "Tweak" msgstr "Modellieren" -#: ../src/ui/dialog/inkscape-preferences.cpp:372 +#: ../src/ui/dialog/inkscape-preferences.cpp:371 msgid "Object paint style" msgstr "Objekt-Farbstil" #. Zoom -#: ../src/ui/dialog/inkscape-preferences.cpp:377 -#: ../src/widgets/desktop-widget.cpp:632 +#: ../src/ui/dialog/inkscape-preferences.cpp:376 +#: ../src/widgets/desktop-widget.cpp:631 msgid "Zoom" msgstr "Zoomfaktor" #. Measure -#: ../src/ui/dialog/inkscape-preferences.cpp:382 ../src/verbs.cpp:2614 +#: ../src/ui/dialog/inkscape-preferences.cpp:381 ../src/verbs.cpp:2619 msgctxt "ContextVerb" msgid "Measure" msgstr "Ausmessen" -#: ../src/ui/dialog/inkscape-preferences.cpp:384 +#: ../src/ui/dialog/inkscape-preferences.cpp:383 msgid "Ignore first and last points" msgstr "Ersten und letzen Punkt ignorieren" -#: ../src/ui/dialog/inkscape-preferences.cpp:385 +#: ../src/ui/dialog/inkscape-preferences.cpp:384 msgid "" "The start and end of the measurement tool's control line will not be " "considered for calculating lengths. Only lengths between actual curve " @@ -16933,15 +17272,15 @@ msgstr "" "werden angezeigt." #. Shapes -#: ../src/ui/dialog/inkscape-preferences.cpp:388 +#: ../src/ui/dialog/inkscape-preferences.cpp:387 msgid "Shapes" msgstr "Formen" -#: ../src/ui/dialog/inkscape-preferences.cpp:420 +#: ../src/ui/dialog/inkscape-preferences.cpp:419 msgid "Sketch mode" msgstr "Freihandmodus" -#: ../src/ui/dialog/inkscape-preferences.cpp:422 +#: ../src/ui/dialog/inkscape-preferences.cpp:421 msgid "" "If on, the sketch result will be the normal average of all sketches made, " "instead of averaging the old result with the new sketch" @@ -16950,17 +17289,17 @@ msgstr "" "alte Ergebnis mit der neuen Skizze zu mitteln." #. Pen -#: ../src/ui/dialog/inkscape-preferences.cpp:425 +#: ../src/ui/dialog/inkscape-preferences.cpp:424 #: ../src/ui/dialog/input.cpp:1485 msgid "Pen" msgstr "Füller (Linien & Bézierkurven)" #. Calligraphy -#: ../src/ui/dialog/inkscape-preferences.cpp:431 +#: ../src/ui/dialog/inkscape-preferences.cpp:430 msgid "Calligraphy" msgstr "Kalligrafie" -#: ../src/ui/dialog/inkscape-preferences.cpp:435 +#: ../src/ui/dialog/inkscape-preferences.cpp:434 msgid "" "If on, pen width is in absolute units (px) independent of zoom; otherwise " "pen width depends on zoom so that it looks the same at any zoom" @@ -16969,7 +17308,7 @@ msgstr "" "unabhängig vom Zoom; ansonsten hängt die Stiftbreite vom Zoom ab, so dass " "sie bei jeder Zoomeinstellung gleich aussieht" -#: ../src/ui/dialog/inkscape-preferences.cpp:437 +#: ../src/ui/dialog/inkscape-preferences.cpp:436 msgid "" "If on, each newly created object will be selected (deselecting previous " "selection)" @@ -16978,27 +17317,27 @@ msgstr "" "(vorherige Auswahl ist nicht mehr aktiv)" #. Text -#: ../src/ui/dialog/inkscape-preferences.cpp:440 ../src/verbs.cpp:2606 +#: ../src/ui/dialog/inkscape-preferences.cpp:439 ../src/verbs.cpp:2611 msgctxt "ContextVerb" msgid "Text" msgstr "Text" -#: ../src/ui/dialog/inkscape-preferences.cpp:445 +#: ../src/ui/dialog/inkscape-preferences.cpp:444 msgid "Show font samples in the drop-down list" msgstr "Zeigt Schriftart-Beispiele in der Auswahl-Liste" -#: ../src/ui/dialog/inkscape-preferences.cpp:446 +#: ../src/ui/dialog/inkscape-preferences.cpp:445 msgid "" "Show font samples alongside font names in the drop-down list in Text bar" msgstr "" "Zeigt Schriftart-Beispiele neben den Schriftartnamen in der Auswahl-Liste " "in der Textleiste" -#: ../src/ui/dialog/inkscape-preferences.cpp:448 +#: ../src/ui/dialog/inkscape-preferences.cpp:447 msgid "Show font substitution warning dialog" msgstr "Zeige Warnungsdialog für Schriftersetzung" -#: ../src/ui/dialog/inkscape-preferences.cpp:449 +#: ../src/ui/dialog/inkscape-preferences.cpp:448 msgid "" "Show font substitution warning dialog when requested fonts are not available " "on the system" @@ -17008,25 +17347,25 @@ msgstr "" #. , _("Ex square"), _("Percent") #. , SP_CSS_UNIT_EX, SP_CSS_UNIT_PERCENT -#: ../src/ui/dialog/inkscape-preferences.cpp:455 +#: ../src/ui/dialog/inkscape-preferences.cpp:454 msgid "Text units" msgstr "Texteinheiten" -#: ../src/ui/dialog/inkscape-preferences.cpp:457 +#: ../src/ui/dialog/inkscape-preferences.cpp:456 msgid "Text size unit type:" msgstr "Textgrößen-Einheitstyp:" -#: ../src/ui/dialog/inkscape-preferences.cpp:458 +#: ../src/ui/dialog/inkscape-preferences.cpp:457 msgid "Set the type of unit used in the text toolbar and text dialogs" msgstr "" "Setzt den Typ der Einheit, die in der Text-Werkzeugleiste und in " "Textdialogen verwendet werden" -#: ../src/ui/dialog/inkscape-preferences.cpp:459 +#: ../src/ui/dialog/inkscape-preferences.cpp:458 msgid "Always output text size in pixels (px)" msgstr "Ausgabe-Textgröße immer in Pixeln (px)" -#: ../src/ui/dialog/inkscape-preferences.cpp:460 +#: ../src/ui/dialog/inkscape-preferences.cpp:459 msgid "" "Always convert the text size units above into pixels (px) before saving to " "file" @@ -17035,33 +17374,33 @@ msgstr "" "immer umwandeln" #. Spray -#: ../src/ui/dialog/inkscape-preferences.cpp:465 +#: ../src/ui/dialog/inkscape-preferences.cpp:464 msgid "Spray" msgstr "Spray" # Name des Effekte-submenü, das alle Bitmap-Effekte beinhaltet. #. Eraser -#: ../src/ui/dialog/inkscape-preferences.cpp:470 +#: ../src/ui/dialog/inkscape-preferences.cpp:469 msgid "Eraser" msgstr "Radierer" #. Paint Bucket -#: ../src/ui/dialog/inkscape-preferences.cpp:474 +#: ../src/ui/dialog/inkscape-preferences.cpp:473 msgid "Paint Bucket" msgstr "Farbeimer" #. Gradient -#: ../src/ui/dialog/inkscape-preferences.cpp:479 +#: ../src/ui/dialog/inkscape-preferences.cpp:478 #: ../src/widgets/gradient-selector.cpp:150 #: ../src/widgets/gradient-selector.cpp:302 msgid "Gradient" msgstr "Farbverlauf" -#: ../src/ui/dialog/inkscape-preferences.cpp:481 +#: ../src/ui/dialog/inkscape-preferences.cpp:480 msgid "Prevent sharing of gradient definitions" msgstr "Keine gemeinsamen Verlaufdefinitionen " -#: ../src/ui/dialog/inkscape-preferences.cpp:483 +#: ../src/ui/dialog/inkscape-preferences.cpp:482 msgid "" "When on, shared gradient definitions are automatically forked on change; " "uncheck to allow sharing of gradient definitions so that editing one object " @@ -17071,11 +17410,11 @@ msgstr "" "sobald einer geändert wird. Andernfalls werden bei der Änderung eines " "Verlaufes sämtliche Objekte mit dem gleichen Verlauf ebenfalls geändert." -#: ../src/ui/dialog/inkscape-preferences.cpp:484 +#: ../src/ui/dialog/inkscape-preferences.cpp:483 msgid "Use legacy Gradient Editor" msgstr "Nutze den alten Farbverlaufs-Editor" -#: ../src/ui/dialog/inkscape-preferences.cpp:486 +#: ../src/ui/dialog/inkscape-preferences.cpp:485 msgid "" "When on, the Gradient Edit button in the Fill & Stroke dialog will show the " "legacy Gradient Editor dialog, when off the Gradient Tool will be used" @@ -17084,11 +17423,11 @@ msgstr "" "Kontur Dialog den alten Verlaufs-Editor Dialog, wenn ausgeschaltet, wird das " "Verlaufswerkzeug verwendet." -#: ../src/ui/dialog/inkscape-preferences.cpp:489 +#: ../src/ui/dialog/inkscape-preferences.cpp:488 msgid "Linear gradient _angle:" msgstr "Winkel des linearen Farbverlaufs" -#: ../src/ui/dialog/inkscape-preferences.cpp:490 +#: ../src/ui/dialog/inkscape-preferences.cpp:489 msgid "" "Default angle of new linear gradients in degrees (clockwise from horizontal)" msgstr "" @@ -17096,331 +17435,333 @@ msgstr "" "im Uhrzeigersinn)" #. Dropper -#: ../src/ui/dialog/inkscape-preferences.cpp:494 +#: ../src/ui/dialog/inkscape-preferences.cpp:493 msgid "Dropper" msgstr "Farbpipette" #. Connector -#: ../src/ui/dialog/inkscape-preferences.cpp:499 +#: ../src/ui/dialog/inkscape-preferences.cpp:498 msgid "Connector" msgstr "Objektverbinder" -#: ../src/ui/dialog/inkscape-preferences.cpp:502 +#: ../src/ui/dialog/inkscape-preferences.cpp:501 msgid "If on, connector attachment points will not be shown for text objects" msgstr "" "Wenn eingeschaltet, dann werden die Einrastpunkte nicht für Textobjekte " "angezeigt" -#: ../src/ui/dialog/inkscape-preferences.cpp:512 +#: ../src/ui/dialog/inkscape-preferences.cpp:511 msgid "Interface" msgstr "Benutzeroberfläche" -#: ../src/ui/dialog/inkscape-preferences.cpp:515 +#: ../src/ui/dialog/inkscape-preferences.cpp:514 msgid "System default" msgstr "Standardeinstellungen" -#: ../src/ui/dialog/inkscape-preferences.cpp:515 +#: ../src/ui/dialog/inkscape-preferences.cpp:514 msgid "Albanian (sq)" msgstr "Albanisch (sq)" -#: ../src/ui/dialog/inkscape-preferences.cpp:515 +#: ../src/ui/dialog/inkscape-preferences.cpp:514 msgid "Amharic (am)" msgstr "Amharisch (am)" -#: ../src/ui/dialog/inkscape-preferences.cpp:515 +#: ../src/ui/dialog/inkscape-preferences.cpp:514 msgid "Arabic (ar)" msgstr "Arabisch (ar)" -#: ../src/ui/dialog/inkscape-preferences.cpp:515 +#: ../src/ui/dialog/inkscape-preferences.cpp:514 msgid "Armenian (hy)" msgstr "Armenisch (hy)" -#: ../src/ui/dialog/inkscape-preferences.cpp:515 +#: ../src/ui/dialog/inkscape-preferences.cpp:514 msgid "Azerbaijani (az)" msgstr "Aserbeidschanisch (az)" -#: ../src/ui/dialog/inkscape-preferences.cpp:515 +#: ../src/ui/dialog/inkscape-preferences.cpp:514 msgid "Basque (eu)" msgstr "Baskisch (eu)" -#: ../src/ui/dialog/inkscape-preferences.cpp:515 +#: ../src/ui/dialog/inkscape-preferences.cpp:514 msgid "Belarusian (be)" msgstr "Belorussisch (be)" -#: ../src/ui/dialog/inkscape-preferences.cpp:516 +#: ../src/ui/dialog/inkscape-preferences.cpp:515 msgid "Bulgarian (bg)" msgstr "Bulgarisch (bg)" -#: ../src/ui/dialog/inkscape-preferences.cpp:516 +#: ../src/ui/dialog/inkscape-preferences.cpp:515 msgid "Bengali (bn)" msgstr "Bengalesisch (bn)" -#: ../src/ui/dialog/inkscape-preferences.cpp:516 +#: ../src/ui/dialog/inkscape-preferences.cpp:515 msgid "Bengali/Bangladesh (bn_BD)" msgstr "Bengalesisch (bn_BD)" -#: ../src/ui/dialog/inkscape-preferences.cpp:516 +#: ../src/ui/dialog/inkscape-preferences.cpp:515 msgid "Breton (br)" msgstr "Bretonisch (br)" -#: ../src/ui/dialog/inkscape-preferences.cpp:516 +#: ../src/ui/dialog/inkscape-preferences.cpp:515 msgid "Catalan (ca)" msgstr "Katalanisch (ca)" -#: ../src/ui/dialog/inkscape-preferences.cpp:516 +#: ../src/ui/dialog/inkscape-preferences.cpp:515 msgid "Valencian Catalan (ca@valencia)" msgstr "Valencianisches Katalan (ca@valencia)" -#: ../src/ui/dialog/inkscape-preferences.cpp:516 +#: ../src/ui/dialog/inkscape-preferences.cpp:515 msgid "Chinese/China (zh_CN)" msgstr "Chinesisch/china (zh_CN)" -#: ../src/ui/dialog/inkscape-preferences.cpp:517 +#: ../src/ui/dialog/inkscape-preferences.cpp:516 msgid "Chinese/Taiwan (zh_TW)" msgstr "Chinesisch/Taiwan (zh_TW)" -#: ../src/ui/dialog/inkscape-preferences.cpp:517 +#: ../src/ui/dialog/inkscape-preferences.cpp:516 msgid "Croatian (hr)" msgstr "Kroatisch (hr)" -#: ../src/ui/dialog/inkscape-preferences.cpp:517 +#: ../src/ui/dialog/inkscape-preferences.cpp:516 msgid "Czech (cs)" msgstr "Tschechisch (cs)" -#: ../src/ui/dialog/inkscape-preferences.cpp:518 +#: ../src/ui/dialog/inkscape-preferences.cpp:517 msgid "Danish (da)" msgstr "Dänisch (da)" -#: ../src/ui/dialog/inkscape-preferences.cpp:518 +#: ../src/ui/dialog/inkscape-preferences.cpp:517 msgid "Dutch (nl)" msgstr "Niderländisch (nl)" -#: ../src/ui/dialog/inkscape-preferences.cpp:518 +#: ../src/ui/dialog/inkscape-preferences.cpp:517 msgid "Dzongkha (dz)" msgstr "Dzongkha (dz)" -#: ../src/ui/dialog/inkscape-preferences.cpp:518 +#: ../src/ui/dialog/inkscape-preferences.cpp:517 msgid "German (de)" msgstr "Deutsch (de)" -#: ../src/ui/dialog/inkscape-preferences.cpp:518 +#: ../src/ui/dialog/inkscape-preferences.cpp:517 msgid "Greek (el)" msgstr "Griechisch (el)" -#: ../src/ui/dialog/inkscape-preferences.cpp:518 +#: ../src/ui/dialog/inkscape-preferences.cpp:517 msgid "English (en)" msgstr "Englisch (en)" -#: ../src/ui/dialog/inkscape-preferences.cpp:518 +#: ../src/ui/dialog/inkscape-preferences.cpp:517 msgid "English/Australia (en_AU)" msgstr "Englisch/Australien (en_AU)" -#: ../src/ui/dialog/inkscape-preferences.cpp:519 +#: ../src/ui/dialog/inkscape-preferences.cpp:518 msgid "English/Canada (en_CA)" msgstr "Englisch/Kanada (en_CA)" -#: ../src/ui/dialog/inkscape-preferences.cpp:519 +#: ../src/ui/dialog/inkscape-preferences.cpp:518 msgid "English/Great Britain (en_GB)" msgstr "Englisch/Großbritannien (en_GB)" -#: ../src/ui/dialog/inkscape-preferences.cpp:519 +#: ../src/ui/dialog/inkscape-preferences.cpp:518 msgid "Pig Latin (en_US@piglatin)" msgstr "Pig Latin (en_US@piglatin)" -#: ../src/ui/dialog/inkscape-preferences.cpp:520 +#: ../src/ui/dialog/inkscape-preferences.cpp:519 msgid "Esperanto (eo)" msgstr "Esperanto (eo)" -#: ../src/ui/dialog/inkscape-preferences.cpp:520 +#: ../src/ui/dialog/inkscape-preferences.cpp:519 msgid "Estonian (et)" msgstr "Estnisch (et)" -#: ../src/ui/dialog/inkscape-preferences.cpp:520 +#: ../src/ui/dialog/inkscape-preferences.cpp:519 msgid "Farsi (fa)" msgstr "Farsi (fa)" -#: ../src/ui/dialog/inkscape-preferences.cpp:520 +#: ../src/ui/dialog/inkscape-preferences.cpp:519 msgid "Finnish (fi)" msgstr "Finnisch (fi)" -#: ../src/ui/dialog/inkscape-preferences.cpp:521 +#: ../src/ui/dialog/inkscape-preferences.cpp:520 msgid "French (fr)" msgstr "Französisch (fr)" -#: ../src/ui/dialog/inkscape-preferences.cpp:521 +#: ../src/ui/dialog/inkscape-preferences.cpp:520 msgid "Irish (ga)" msgstr "Irisch (ga)" -#: ../src/ui/dialog/inkscape-preferences.cpp:521 +#: ../src/ui/dialog/inkscape-preferences.cpp:520 msgid "Galician (gl)" msgstr "Galizisch (gl)" -#: ../src/ui/dialog/inkscape-preferences.cpp:521 +#: ../src/ui/dialog/inkscape-preferences.cpp:520 msgid "Hebrew (he)" msgstr "Hebräisch (he)" -#: ../src/ui/dialog/inkscape-preferences.cpp:521 +#: ../src/ui/dialog/inkscape-preferences.cpp:520 msgid "Hungarian (hu)" msgstr "Ungarisch (hu)" -#: ../src/ui/dialog/inkscape-preferences.cpp:522 +#: ../src/ui/dialog/inkscape-preferences.cpp:521 msgid "Indonesian (id)" msgstr "Indonesisch (id)" -#: ../src/ui/dialog/inkscape-preferences.cpp:522 +#: ../src/ui/dialog/inkscape-preferences.cpp:521 msgid "Italian (it)" msgstr "Italienisch (it)" -#: ../src/ui/dialog/inkscape-preferences.cpp:522 +#: ../src/ui/dialog/inkscape-preferences.cpp:521 msgid "Japanese (ja)" msgstr "Japanisch (ja)" -#: ../src/ui/dialog/inkscape-preferences.cpp:522 +#: ../src/ui/dialog/inkscape-preferences.cpp:521 msgid "Khmer (km)" msgstr "Khmer (km)" -#: ../src/ui/dialog/inkscape-preferences.cpp:522 +#: ../src/ui/dialog/inkscape-preferences.cpp:521 msgid "Kinyarwanda (rw)" msgstr "Kinyarwanda (rw)" -#: ../src/ui/dialog/inkscape-preferences.cpp:522 +#: ../src/ui/dialog/inkscape-preferences.cpp:521 msgid "Korean (ko)" msgstr "Koreanisch (ko)" -#: ../src/ui/dialog/inkscape-preferences.cpp:522 +#: ../src/ui/dialog/inkscape-preferences.cpp:521 msgid "Lithuanian (lt)" msgstr "Litauisch (lt)" -#: ../src/ui/dialog/inkscape-preferences.cpp:522 +#: ../src/ui/dialog/inkscape-preferences.cpp:521 msgid "Latvian (lv)" msgstr "Lettisch (lv)" -#: ../src/ui/dialog/inkscape-preferences.cpp:522 +#: ../src/ui/dialog/inkscape-preferences.cpp:521 msgid "Macedonian (mk)" msgstr "Mazedonisch (mk)" -#: ../src/ui/dialog/inkscape-preferences.cpp:523 +#: ../src/ui/dialog/inkscape-preferences.cpp:522 msgid "Mongolian (mn)" msgstr "Mongolisch (mn)" -#: ../src/ui/dialog/inkscape-preferences.cpp:523 +#: ../src/ui/dialog/inkscape-preferences.cpp:522 msgid "Nepali (ne)" msgstr "Nepalesisch (ne)" -#: ../src/ui/dialog/inkscape-preferences.cpp:523 +#: ../src/ui/dialog/inkscape-preferences.cpp:522 msgid "Norwegian Bokmål (nb)" msgstr "Norwegisch/Bokmål (nb)" -#: ../src/ui/dialog/inkscape-preferences.cpp:523 +#: ../src/ui/dialog/inkscape-preferences.cpp:522 msgid "Norwegian Nynorsk (nn)" msgstr "Norwegisch/Nynorsk (nn)" -#: ../src/ui/dialog/inkscape-preferences.cpp:523 +#: ../src/ui/dialog/inkscape-preferences.cpp:522 msgid "Panjabi (pa)" msgstr "Panjabi (pa)" -#: ../src/ui/dialog/inkscape-preferences.cpp:524 +#: ../src/ui/dialog/inkscape-preferences.cpp:523 msgid "Polish (pl)" msgstr "Polnisch (pl)" -#: ../src/ui/dialog/inkscape-preferences.cpp:524 +#: ../src/ui/dialog/inkscape-preferences.cpp:523 msgid "Portuguese (pt)" msgstr "Portugisisch(pt)" -#: ../src/ui/dialog/inkscape-preferences.cpp:524 +#: ../src/ui/dialog/inkscape-preferences.cpp:523 msgid "Portuguese/Brazil (pt_BR)" msgstr "Portugisisch/Brasilien (pt_BR)" -#: ../src/ui/dialog/inkscape-preferences.cpp:524 +#: ../src/ui/dialog/inkscape-preferences.cpp:523 msgid "Romanian (ro)" msgstr "Rumänisch (ro)" -#: ../src/ui/dialog/inkscape-preferences.cpp:524 +#: ../src/ui/dialog/inkscape-preferences.cpp:523 msgid "Russian (ru)" msgstr "Russisch (ru)" -#: ../src/ui/dialog/inkscape-preferences.cpp:525 +#: ../src/ui/dialog/inkscape-preferences.cpp:524 msgid "Serbian (sr)" msgstr "Serbisch (sr)" -#: ../src/ui/dialog/inkscape-preferences.cpp:525 +#: ../src/ui/dialog/inkscape-preferences.cpp:524 msgid "Serbian in Latin script (sr@latin)" msgstr "Serbisch in lateinischer Schrift (sr@latin)" -#: ../src/ui/dialog/inkscape-preferences.cpp:525 +#: ../src/ui/dialog/inkscape-preferences.cpp:524 msgid "Slovak (sk)" msgstr "Slovakisch (sk)" -#: ../src/ui/dialog/inkscape-preferences.cpp:525 +#: ../src/ui/dialog/inkscape-preferences.cpp:524 msgid "Slovenian (sl)" msgstr "Slovenisch (sl)" -#: ../src/ui/dialog/inkscape-preferences.cpp:525 +#: ../src/ui/dialog/inkscape-preferences.cpp:524 msgid "Spanish (es)" msgstr "Spanisch (es)" -#: ../src/ui/dialog/inkscape-preferences.cpp:525 +#: ../src/ui/dialog/inkscape-preferences.cpp:524 msgid "Spanish/Mexico (es_MX)" msgstr "Spanisch/Mexico (es_MX)" -#: ../src/ui/dialog/inkscape-preferences.cpp:526 +#: ../src/ui/dialog/inkscape-preferences.cpp:525 msgid "Swedish (sv)" msgstr "Schwedisch (sv)" -#: ../src/ui/dialog/inkscape-preferences.cpp:526 +#: ../src/ui/dialog/inkscape-preferences.cpp:525 msgid "Telugu (te_IN)" msgstr "Telugu (te_IN)" -#: ../src/ui/dialog/inkscape-preferences.cpp:526 +#: ../src/ui/dialog/inkscape-preferences.cpp:525 msgid "Thai (th)" msgstr "Thai (th)" -#: ../src/ui/dialog/inkscape-preferences.cpp:526 +#: ../src/ui/dialog/inkscape-preferences.cpp:525 msgid "Turkish (tr)" msgstr "Türkisch (tr)" -#: ../src/ui/dialog/inkscape-preferences.cpp:526 +#: ../src/ui/dialog/inkscape-preferences.cpp:525 msgid "Ukrainian (uk)" msgstr "Ukrainisch (uk)" -#: ../src/ui/dialog/inkscape-preferences.cpp:526 +#: ../src/ui/dialog/inkscape-preferences.cpp:525 msgid "Vietnamese (vi)" msgstr "Vietnamesisch (vi)" -#: ../src/ui/dialog/inkscape-preferences.cpp:558 +#: ../src/ui/dialog/inkscape-preferences.cpp:557 msgid "Language (requires restart):" msgstr "Sprache (erfordert Neustart)" -#: ../src/ui/dialog/inkscape-preferences.cpp:559 +#: ../src/ui/dialog/inkscape-preferences.cpp:558 msgid "Set the language for menus and number formats" msgstr "Sprache für Menüs und Zahlenformate setzen" -#: ../src/ui/dialog/inkscape-preferences.cpp:562 +#: ../src/ui/dialog/inkscape-preferences.cpp:561 +#: ../src/ui/dialog/inkscape-preferences.cpp:646 msgid "Large" msgstr "Groß" -#: ../src/ui/dialog/inkscape-preferences.cpp:562 +#: ../src/ui/dialog/inkscape-preferences.cpp:561 +#: ../src/ui/dialog/inkscape-preferences.cpp:646 msgid "Small" msgstr "Klein" -#: ../src/ui/dialog/inkscape-preferences.cpp:562 +#: ../src/ui/dialog/inkscape-preferences.cpp:561 msgid "Smaller" msgstr "Kleiner" # !!! called "Commands Bar" in other places -#: ../src/ui/dialog/inkscape-preferences.cpp:566 +#: ../src/ui/dialog/inkscape-preferences.cpp:565 msgid "Toolbox icon size:" msgstr "Symbolgröße in der Werkzeugleiste" -#: ../src/ui/dialog/inkscape-preferences.cpp:567 +#: ../src/ui/dialog/inkscape-preferences.cpp:566 msgid "Set the size for the tool icons (requires restart)" msgstr "Größe der Werkzeugsymbole verändern (erfordert Neustart)" -#: ../src/ui/dialog/inkscape-preferences.cpp:570 +#: ../src/ui/dialog/inkscape-preferences.cpp:569 msgid "Control bar icon size:" msgstr "Symbolgröße in Einstellungsleiste" -#: ../src/ui/dialog/inkscape-preferences.cpp:571 +#: ../src/ui/dialog/inkscape-preferences.cpp:570 msgid "" "Set the size for the icons in tools' control bars to use (requires restart)" msgstr "" @@ -17428,22 +17769,22 @@ msgstr "" "Neustart)" # !!! called "Commands Bar" in other places -#: ../src/ui/dialog/inkscape-preferences.cpp:574 +#: ../src/ui/dialog/inkscape-preferences.cpp:573 msgid "Secondary toolbar icon size:" msgstr "Symbolgröße in zweiter Werkzeugleiste" -#: ../src/ui/dialog/inkscape-preferences.cpp:575 +#: ../src/ui/dialog/inkscape-preferences.cpp:574 msgid "" "Set the size for the icons in secondary toolbars to use (requires restart)" msgstr "" "Bestimmt die Größe der Piktogramme in untergeordneten Werkzeugleisten " "(erfordert Neustart)" -#: ../src/ui/dialog/inkscape-preferences.cpp:578 +#: ../src/ui/dialog/inkscape-preferences.cpp:577 msgid "Work-around color sliders not drawing" msgstr "Abhilfe für nicht gezeichnete Farb-Schieberegler" -#: ../src/ui/dialog/inkscape-preferences.cpp:580 +#: ../src/ui/dialog/inkscape-preferences.cpp:579 msgid "" "When on, will attempt to work around bugs in certain GTK themes drawing " "color sliders" @@ -17451,26 +17792,26 @@ msgstr "" "Wenn gewählt, wird versucht, den Fehler bzgl. nicht gezeichneter Farb-" "Schieberegler in manchen GTK-Themen zu umgehen." -#: ../src/ui/dialog/inkscape-preferences.cpp:585 +#: ../src/ui/dialog/inkscape-preferences.cpp:584 msgid "Clear list" msgstr "Liste löschen" -#: ../src/ui/dialog/inkscape-preferences.cpp:588 +#: ../src/ui/dialog/inkscape-preferences.cpp:587 msgid "Maximum documents in Open _Recent:" msgstr "Länge der \"letzte Dokumente\"-Liste:" -#: ../src/ui/dialog/inkscape-preferences.cpp:589 +#: ../src/ui/dialog/inkscape-preferences.cpp:588 msgid "" "Set the maximum length of the Open Recent list in the File menu, or clear " "the list" msgstr "" "Die maximale Länge der Liste zuletzt geöffneter Dokumente im Menü »Datei«" -#: ../src/ui/dialog/inkscape-preferences.cpp:592 +#: ../src/ui/dialog/inkscape-preferences.cpp:591 msgid "_Zoom correction factor (in %):" msgstr "_Zoom Korrektur (in %)" -#: ../src/ui/dialog/inkscape-preferences.cpp:593 +#: ../src/ui/dialog/inkscape-preferences.cpp:592 msgid "" "Adjust the slider until the length of the ruler on your screen matches its " "real length. This information is used when zooming to 1:1, 1:2, etc., to " @@ -17480,11 +17821,11 @@ msgstr "" "Bildschirm der echten Größe entspricht. Diese Information wird genutzt, um " "beim Zoom auf 1:1, 1:2, usw. das Objekt in realistischen Größen darzustellen." -#: ../src/ui/dialog/inkscape-preferences.cpp:596 +#: ../src/ui/dialog/inkscape-preferences.cpp:595 msgid "Enable dynamic relayout for incomplete sections" msgstr "Dynamischer Neu-Entwurf für unvollständige Abschnitte" -#: ../src/ui/dialog/inkscape-preferences.cpp:598 +#: ../src/ui/dialog/inkscape-preferences.cpp:597 msgid "" "When on, will allow dynamic layout of components that are not completely " "finished being refactored" @@ -17493,11 +17834,11 @@ msgstr "" "Komponenten, die noch nicht komplett beendet sind." #. show infobox -#: ../src/ui/dialog/inkscape-preferences.cpp:601 +#: ../src/ui/dialog/inkscape-preferences.cpp:600 msgid "Show filter primitives infobox (requires restart)" msgstr "Zeigt Informationen zu den Filterbausteinen (erfordert Neustart)" -#: ../src/ui/dialog/inkscape-preferences.cpp:603 +#: ../src/ui/dialog/inkscape-preferences.cpp:602 msgid "" "Show icons and descriptions for the filter primitives available at the " "filter effects dialog" @@ -17505,26 +17846,26 @@ msgstr "" "Zeigt Symbole und Beschreibungen für die verfügbaren Filterbausteine im " "Filtereffektdialog." -#: ../src/ui/dialog/inkscape-preferences.cpp:606 -#: ../src/ui/dialog/inkscape-preferences.cpp:614 +#: ../src/ui/dialog/inkscape-preferences.cpp:605 +#: ../src/ui/dialog/inkscape-preferences.cpp:613 msgid "Icons only" msgstr "nur Symbole" -#: ../src/ui/dialog/inkscape-preferences.cpp:606 -#: ../src/ui/dialog/inkscape-preferences.cpp:614 +#: ../src/ui/dialog/inkscape-preferences.cpp:605 +#: ../src/ui/dialog/inkscape-preferences.cpp:613 msgid "Text only" msgstr "nur Text" -#: ../src/ui/dialog/inkscape-preferences.cpp:606 -#: ../src/ui/dialog/inkscape-preferences.cpp:614 +#: ../src/ui/dialog/inkscape-preferences.cpp:605 +#: ../src/ui/dialog/inkscape-preferences.cpp:613 msgid "Icons and text" msgstr "Symbole und Text" -#: ../src/ui/dialog/inkscape-preferences.cpp:611 +#: ../src/ui/dialog/inkscape-preferences.cpp:610 msgid "Dockbar style (requires restart):" msgstr "Dockleistenstil (erfordert Neustart)" -#: ../src/ui/dialog/inkscape-preferences.cpp:612 +#: ../src/ui/dialog/inkscape-preferences.cpp:611 msgid "" "Selects whether the vertical bars on the dockbar will show text labels, " "icons, or both" @@ -17532,11 +17873,11 @@ msgstr "" "Wählt, ob vertikale Leisten auf der Dockleiste Beschriftungen, Symbole oder " "beides angezeigen" -#: ../src/ui/dialog/inkscape-preferences.cpp:619 +#: ../src/ui/dialog/inkscape-preferences.cpp:618 msgid "Switcher style (requires restart):" msgstr "Stil des Umschalters (erfordert Neustart):" -#: ../src/ui/dialog/inkscape-preferences.cpp:620 +#: ../src/ui/dialog/inkscape-preferences.cpp:619 msgid "" "Selects whether the dockbar switcher will show text labels, icons, or both" msgstr "" @@ -17544,69 +17885,83 @@ msgstr "" "zeigt" #. Windows -#: ../src/ui/dialog/inkscape-preferences.cpp:624 +#: ../src/ui/dialog/inkscape-preferences.cpp:623 msgid "Save and restore window geometry for each document" msgstr "Fenstergeometrie für jedes Dokument speichern und wiederherstellen" -#: ../src/ui/dialog/inkscape-preferences.cpp:625 +#: ../src/ui/dialog/inkscape-preferences.cpp:624 msgid "Remember and use last window's geometry" msgstr "Geometrie des letzten Fensters merken und verwenden" -#: ../src/ui/dialog/inkscape-preferences.cpp:626 +#: ../src/ui/dialog/inkscape-preferences.cpp:625 msgid "Don't save window geometry" msgstr "Fenstergeometrie nicht speichern" -#: ../src/ui/dialog/inkscape-preferences.cpp:628 +#: ../src/ui/dialog/inkscape-preferences.cpp:627 msgid "Save and restore dialogs status" msgstr "Speichern und Wiederherstellen von Dialog-Status" -#: ../src/ui/dialog/inkscape-preferences.cpp:629 -#: ../src/ui/dialog/inkscape-preferences.cpp:656 +#: ../src/ui/dialog/inkscape-preferences.cpp:628 +#: ../src/ui/dialog/inkscape-preferences.cpp:664 msgid "Don't save dialogs status" msgstr "Dialogstatus nicht speichern" -#: ../src/ui/dialog/inkscape-preferences.cpp:631 -#: ../src/ui/dialog/inkscape-preferences.cpp:664 +#: ../src/ui/dialog/inkscape-preferences.cpp:630 +#: ../src/ui/dialog/inkscape-preferences.cpp:672 msgid "Dockable" msgstr "Andockbar" -#: ../src/ui/dialog/inkscape-preferences.cpp:635 +#: ../src/ui/dialog/inkscape-preferences.cpp:634 msgid "Native open/save dialogs" msgstr "Ursprüngliche Öffnen/Speichern-Dialoge" -#: ../src/ui/dialog/inkscape-preferences.cpp:636 +#: ../src/ui/dialog/inkscape-preferences.cpp:635 msgid "GTK open/save dialogs" msgstr "GTk Öffnen/Speichern-Dialog" -#: ../src/ui/dialog/inkscape-preferences.cpp:638 +#: ../src/ui/dialog/inkscape-preferences.cpp:637 msgid "Dialogs are hidden in taskbar" msgstr "Dialoge werden in der Fensterliste nicht angezeigt" -#: ../src/ui/dialog/inkscape-preferences.cpp:639 +#: ../src/ui/dialog/inkscape-preferences.cpp:638 msgid "Save and restore documents viewport" msgstr "Fenstergeometrie für jedes Dokument speichern und wiederherstellen" -#: ../src/ui/dialog/inkscape-preferences.cpp:640 +#: ../src/ui/dialog/inkscape-preferences.cpp:639 msgid "Zoom when window is resized" msgstr "Zeichnungsgröße ändern, wenn die Fenstergröße verändert wird" -#: ../src/ui/dialog/inkscape-preferences.cpp:641 +#: ../src/ui/dialog/inkscape-preferences.cpp:640 msgid "Show close button on dialogs" msgstr "Schließknöpfe in Dialogen zeigen" -#: ../src/ui/dialog/inkscape-preferences.cpp:644 +#: ../src/ui/dialog/inkscape-preferences.cpp:643 msgid "Aggressive" msgstr "Aggressiv" #: ../src/ui/dialog/inkscape-preferences.cpp:646 +msgid "Maximized" +msgstr "Maximiert" + +#: ../src/ui/dialog/inkscape-preferences.cpp:650 +#, fuzzy +msgid "Default window size:" +msgstr "Vorgabe Gittereinstellungen" + +#: ../src/ui/dialog/inkscape-preferences.cpp:651 +#, fuzzy +msgid "Set the default window size" +msgstr "Standard-Farbverlauf erzeugen" + +#: ../src/ui/dialog/inkscape-preferences.cpp:654 msgid "Saving window geometry (size and position)" msgstr "Fenstergeometrie speichern (Größe und Position):" -#: ../src/ui/dialog/inkscape-preferences.cpp:648 +#: ../src/ui/dialog/inkscape-preferences.cpp:656 msgid "Let the window manager determine placement of all windows" msgstr "Dem Fenstermanager die Platzierung aller Fenster entscheiden lassen" -#: ../src/ui/dialog/inkscape-preferences.cpp:650 +#: ../src/ui/dialog/inkscape-preferences.cpp:658 msgid "" "Remember and use the last window's geometry (saves geometry to user " "preferences)" @@ -17614,7 +17969,7 @@ msgstr "" "Geometrie des letzten Fensters merken und verwenden (speichert Geometrie in " "Benutzereinstellungen)" -#: ../src/ui/dialog/inkscape-preferences.cpp:652 +#: ../src/ui/dialog/inkscape-preferences.cpp:660 msgid "" "Save and restore window geometry for each document (saves geometry in the " "document)" @@ -17622,11 +17977,11 @@ msgstr "" "Fenstergeometrie für jedes Dokument speichern und wiederherstellen " "(speichert Geometrie im Dokument)" -#: ../src/ui/dialog/inkscape-preferences.cpp:654 +#: ../src/ui/dialog/inkscape-preferences.cpp:662 msgid "Saving dialogs status" msgstr "Speichere Dialogstatud" -#: ../src/ui/dialog/inkscape-preferences.cpp:658 +#: ../src/ui/dialog/inkscape-preferences.cpp:666 msgid "" "Save and restore dialogs status (the last open windows dialogs are saved " "when it closes)" @@ -17634,64 +17989,64 @@ msgstr "" "Speichern und Wiederherstellen von Dialog-Status (die letzten offenen " "Fenster Dialoge werden gespeichert, wenn sie geschlossen werden)" -#: ../src/ui/dialog/inkscape-preferences.cpp:662 +#: ../src/ui/dialog/inkscape-preferences.cpp:670 msgid "Dialog behavior (requires restart)" msgstr "Dialogfensterverhalten (erfordert Neustart)" -#: ../src/ui/dialog/inkscape-preferences.cpp:668 +#: ../src/ui/dialog/inkscape-preferences.cpp:676 msgid "Desktop integration" msgstr "Desktopintegration" -#: ../src/ui/dialog/inkscape-preferences.cpp:670 +#: ../src/ui/dialog/inkscape-preferences.cpp:678 msgid "Use Windows like open and save dialogs" msgstr "Nutze Windows-artige Öffnen- und Speichern-Dialoge" -#: ../src/ui/dialog/inkscape-preferences.cpp:672 +#: ../src/ui/dialog/inkscape-preferences.cpp:680 msgid "Use GTK open and save dialogs " msgstr "Nutze GTK-Öffnen- und Speichern-Dialoge" -#: ../src/ui/dialog/inkscape-preferences.cpp:676 +#: ../src/ui/dialog/inkscape-preferences.cpp:684 msgid "Dialogs on top:" msgstr "Dialoge im Vordergrund:" -#: ../src/ui/dialog/inkscape-preferences.cpp:679 +#: ../src/ui/dialog/inkscape-preferences.cpp:687 msgid "Dialogs are treated as regular windows" msgstr "Dialoge werden wie normale Fenster behandelt" -#: ../src/ui/dialog/inkscape-preferences.cpp:681 +#: ../src/ui/dialog/inkscape-preferences.cpp:689 msgid "Dialogs stay on top of document windows" msgstr "Dialoge bleiben vor Dokumentenfenstern" -#: ../src/ui/dialog/inkscape-preferences.cpp:683 +#: ../src/ui/dialog/inkscape-preferences.cpp:691 msgid "Same as Normal but may work better with some window managers" msgstr "" "Wie »Normal«, aber funktioniert evtl. besser mit manchen Fenstermanagern" -#: ../src/ui/dialog/inkscape-preferences.cpp:686 +#: ../src/ui/dialog/inkscape-preferences.cpp:694 msgid "Dialog Transparency" msgstr "Dialog Transparenz:" -#: ../src/ui/dialog/inkscape-preferences.cpp:688 +#: ../src/ui/dialog/inkscape-preferences.cpp:696 msgid "_Opacity when focused:" msgstr "Deckkraft bei Focus:" -#: ../src/ui/dialog/inkscape-preferences.cpp:690 +#: ../src/ui/dialog/inkscape-preferences.cpp:698 msgid "Opacity when _unfocused:" msgstr "Trübung wenn nicht fokussiert:" -#: ../src/ui/dialog/inkscape-preferences.cpp:692 +#: ../src/ui/dialog/inkscape-preferences.cpp:700 msgid "_Time of opacity change animation:" msgstr "Zeit für Deckkraft-Änderungsanimation" -#: ../src/ui/dialog/inkscape-preferences.cpp:695 +#: ../src/ui/dialog/inkscape-preferences.cpp:703 msgid "Miscellaneous" msgstr "Verschiedenes:" -#: ../src/ui/dialog/inkscape-preferences.cpp:698 +#: ../src/ui/dialog/inkscape-preferences.cpp:706 msgid "Whether dialog windows are to be hidden in the window manager taskbar" msgstr "Sollen Dialogfenster in der Fensterliste nicht angezeigt werden?" -#: ../src/ui/dialog/inkscape-preferences.cpp:701 +#: ../src/ui/dialog/inkscape-preferences.cpp:709 msgid "" "Zoom drawing when document window is resized, to keep the same area visible " "(this is the default which can be changed in any window using the button " @@ -17701,7 +18056,7 @@ msgstr "" "- der selbe Bereich bleibt sichtbar (Vorgabe, die in jedem Fenster mit dem " "Knopf über dem rechten Rollbalken geändert wird)" -#: ../src/ui/dialog/inkscape-preferences.cpp:703 +#: ../src/ui/dialog/inkscape-preferences.cpp:711 msgid "" "Save documents viewport (zoom and panning position). Useful to turn off when " "sharing version controlled files." @@ -17710,101 +18065,101 @@ msgstr "" "Nützlich abzuschalten, wenn gemeinsame Versionskontrolle von Dateien " "verwendet wird." -#: ../src/ui/dialog/inkscape-preferences.cpp:705 +#: ../src/ui/dialog/inkscape-preferences.cpp:713 msgid "Whether dialog windows have a close button (requires restart)" msgstr "Dialogfenster haben Knöpfe zum Schließen (erfordert Neustart)" -#: ../src/ui/dialog/inkscape-preferences.cpp:706 +#: ../src/ui/dialog/inkscape-preferences.cpp:714 msgid "Windows" msgstr "Fenster" #. Grids -#: ../src/ui/dialog/inkscape-preferences.cpp:709 +#: ../src/ui/dialog/inkscape-preferences.cpp:717 msgid "Line color when zooming out" msgstr "Linienfarbe beim Herauszoomen" -#: ../src/ui/dialog/inkscape-preferences.cpp:712 +#: ../src/ui/dialog/inkscape-preferences.cpp:720 msgid "The gridlines will be shown in minor grid line color" msgstr "Die Gitterlinien werden in der Nebengitterlinienfarbe angezeigt" -#: ../src/ui/dialog/inkscape-preferences.cpp:714 +#: ../src/ui/dialog/inkscape-preferences.cpp:722 msgid "The gridlines will be shown in major grid line color" msgstr "Die Gitterlinien werden in der Hauptgitterlinienfarbe angezeigt" -#: ../src/ui/dialog/inkscape-preferences.cpp:716 +#: ../src/ui/dialog/inkscape-preferences.cpp:724 msgid "Default grid settings" msgstr "Vorgabe Gittereinstellungen" -#: ../src/ui/dialog/inkscape-preferences.cpp:722 -#: ../src/ui/dialog/inkscape-preferences.cpp:747 +#: ../src/ui/dialog/inkscape-preferences.cpp:730 +#: ../src/ui/dialog/inkscape-preferences.cpp:755 msgid "Grid units:" msgstr "Gitter Einheiten:" -#: ../src/ui/dialog/inkscape-preferences.cpp:727 -#: ../src/ui/dialog/inkscape-preferences.cpp:752 +#: ../src/ui/dialog/inkscape-preferences.cpp:735 +#: ../src/ui/dialog/inkscape-preferences.cpp:760 msgid "Origin X:" msgstr "Ursprung X:" -#: ../src/ui/dialog/inkscape-preferences.cpp:728 -#: ../src/ui/dialog/inkscape-preferences.cpp:753 +#: ../src/ui/dialog/inkscape-preferences.cpp:736 +#: ../src/ui/dialog/inkscape-preferences.cpp:761 msgid "Origin Y:" msgstr "Ursprung Y:" -#: ../src/ui/dialog/inkscape-preferences.cpp:733 +#: ../src/ui/dialog/inkscape-preferences.cpp:741 msgid "Spacing X:" msgstr "Abstand X:" -#: ../src/ui/dialog/inkscape-preferences.cpp:734 -#: ../src/ui/dialog/inkscape-preferences.cpp:756 +#: ../src/ui/dialog/inkscape-preferences.cpp:742 +#: ../src/ui/dialog/inkscape-preferences.cpp:764 msgid "Spacing Y:" msgstr "Abstand Y:" -#: ../src/ui/dialog/inkscape-preferences.cpp:736 -#: ../src/ui/dialog/inkscape-preferences.cpp:737 -#: ../src/ui/dialog/inkscape-preferences.cpp:761 -#: ../src/ui/dialog/inkscape-preferences.cpp:762 +#: ../src/ui/dialog/inkscape-preferences.cpp:744 +#: ../src/ui/dialog/inkscape-preferences.cpp:745 +#: ../src/ui/dialog/inkscape-preferences.cpp:769 +#: ../src/ui/dialog/inkscape-preferences.cpp:770 msgid "Minor grid line color:" msgstr "Farbe der Nebengitterlinien:" -#: ../src/ui/dialog/inkscape-preferences.cpp:737 -#: ../src/ui/dialog/inkscape-preferences.cpp:762 +#: ../src/ui/dialog/inkscape-preferences.cpp:745 +#: ../src/ui/dialog/inkscape-preferences.cpp:770 msgid "Color used for normal grid lines" msgstr "Farbe der normalen Gitterlinien" -#: ../src/ui/dialog/inkscape-preferences.cpp:738 -#: ../src/ui/dialog/inkscape-preferences.cpp:739 -#: ../src/ui/dialog/inkscape-preferences.cpp:763 -#: ../src/ui/dialog/inkscape-preferences.cpp:764 +#: ../src/ui/dialog/inkscape-preferences.cpp:746 +#: ../src/ui/dialog/inkscape-preferences.cpp:747 +#: ../src/ui/dialog/inkscape-preferences.cpp:771 +#: ../src/ui/dialog/inkscape-preferences.cpp:772 msgid "Major grid line color:" msgstr "Farbe der Hauptgitterlinien:" -#: ../src/ui/dialog/inkscape-preferences.cpp:739 -#: ../src/ui/dialog/inkscape-preferences.cpp:764 +#: ../src/ui/dialog/inkscape-preferences.cpp:747 +#: ../src/ui/dialog/inkscape-preferences.cpp:772 msgid "Color used for major (highlighted) grid lines" msgstr "Farbe der dicken (hervorgehobenen) Gitterlinien" -#: ../src/ui/dialog/inkscape-preferences.cpp:741 -#: ../src/ui/dialog/inkscape-preferences.cpp:766 +#: ../src/ui/dialog/inkscape-preferences.cpp:749 +#: ../src/ui/dialog/inkscape-preferences.cpp:774 msgid "Major grid line every:" msgstr "Hauptgitterlinien alle:" -#: ../src/ui/dialog/inkscape-preferences.cpp:742 +#: ../src/ui/dialog/inkscape-preferences.cpp:750 msgid "Show dots instead of lines" msgstr "Zeige Punkte anstelle von Linien" -#: ../src/ui/dialog/inkscape-preferences.cpp:743 +#: ../src/ui/dialog/inkscape-preferences.cpp:751 msgid "If set, display dots at gridpoints instead of gridlines" msgstr "Punkte anstelle von Gitterlinien verwenden" -#: ../src/ui/dialog/inkscape-preferences.cpp:824 +#: ../src/ui/dialog/inkscape-preferences.cpp:832 msgid "Input/Output" msgstr "Eingabe/Ausgabe" -#: ../src/ui/dialog/inkscape-preferences.cpp:827 +#: ../src/ui/dialog/inkscape-preferences.cpp:835 msgid "Use current directory for \"Save As ...\"" msgstr "Verwende aktuelles Verzeichnis für \"Speichern unter...\"" -#: ../src/ui/dialog/inkscape-preferences.cpp:829 +#: ../src/ui/dialog/inkscape-preferences.cpp:837 msgid "" "When this option is on, the \"Save as...\" and \"Save a Copy\" dialogs will " "always open in the directory where the currently open document is; when it's " @@ -17815,11 +18170,11 @@ msgstr "" "offene Dokument liegt. Ist sie deaktiviert, wird das Verzeichnis der letzten " "Speicherung über diesen Dialog geöffnet." -#: ../src/ui/dialog/inkscape-preferences.cpp:831 +#: ../src/ui/dialog/inkscape-preferences.cpp:839 msgid "Add label comments to printing output" msgstr "Beim Ausdruck Bezeichnerkommentare mitdrucken" -#: ../src/ui/dialog/inkscape-preferences.cpp:833 +#: ../src/ui/dialog/inkscape-preferences.cpp:841 msgid "" "When on, a comment will be added to the raw print output, marking the " "rendered output for an object with its label" @@ -17827,11 +18182,11 @@ msgstr "" "Diese Option fügt der unbehandelten Druckausgabe einen Kommentar hinzu.\n" "Das zu druckende Objekt wird mit einem Bezeichner markiert." -#: ../src/ui/dialog/inkscape-preferences.cpp:835 +#: ../src/ui/dialog/inkscape-preferences.cpp:843 msgid "Add default metadata to new documents" msgstr "Fügt Standard Metadaten neuen Dokumenten hinzu" -#: ../src/ui/dialog/inkscape-preferences.cpp:837 +#: ../src/ui/dialog/inkscape-preferences.cpp:845 msgid "" "Add default metadata to new documents. Default metadata can be set from " "Document Properties->Metadata." @@ -17839,15 +18194,15 @@ msgstr "" "Fügt Standardmetadaten in neue Dokumente ein. Standard-Metadaten können über " "Dokument-Eigenschaften-> Metadaten gesetzt werden." -#: ../src/ui/dialog/inkscape-preferences.cpp:841 +#: ../src/ui/dialog/inkscape-preferences.cpp:849 msgid "_Grab sensitivity:" msgstr "Anfass-Empfindlichkeit:" -#: ../src/ui/dialog/inkscape-preferences.cpp:841 +#: ../src/ui/dialog/inkscape-preferences.cpp:849 msgid "pixels (requires restart)" msgstr "Pixel (erfordert Neustart)" -#: ../src/ui/dialog/inkscape-preferences.cpp:842 +#: ../src/ui/dialog/inkscape-preferences.cpp:850 msgid "" "How close on the screen you need to be to an object to be able to grab it " "with mouse (in screen pixels)" @@ -17855,37 +18210,37 @@ msgstr "" "Mindestentfernung des Mauszeigers zu einem Objekt, um es zu erfassen (in " "Pixeln)" -#: ../src/ui/dialog/inkscape-preferences.cpp:844 +#: ../src/ui/dialog/inkscape-preferences.cpp:852 msgid "_Click/drag threshold:" msgstr "Schwellwert für Klicken/Ziehen:" -#: ../src/ui/dialog/inkscape-preferences.cpp:844 -#: ../src/ui/dialog/inkscape-preferences.cpp:1182 -#: ../src/ui/dialog/inkscape-preferences.cpp:1186 -#: ../src/ui/dialog/inkscape-preferences.cpp:1196 +#: ../src/ui/dialog/inkscape-preferences.cpp:852 +#: ../src/ui/dialog/inkscape-preferences.cpp:1190 +#: ../src/ui/dialog/inkscape-preferences.cpp:1194 +#: ../src/ui/dialog/inkscape-preferences.cpp:1204 msgid "pixels" msgstr "Pixel" -#: ../src/ui/dialog/inkscape-preferences.cpp:845 +#: ../src/ui/dialog/inkscape-preferences.cpp:853 msgid "" "Maximum mouse drag (in screen pixels) which is considered a click, not a drag" msgstr "" "Maximale Bewegung des Zeigers (in Pixeln), bei der noch Klicken statt Ziehen " "interpretiert wird" -#: ../src/ui/dialog/inkscape-preferences.cpp:848 +#: ../src/ui/dialog/inkscape-preferences.cpp:856 msgid "_Handle size:" msgstr "Anfassergröße:" -#: ../src/ui/dialog/inkscape-preferences.cpp:849 +#: ../src/ui/dialog/inkscape-preferences.cpp:857 msgid "Set the relative size of node handles" msgstr "Relative Größe der Knotenanfasser setzen" -#: ../src/ui/dialog/inkscape-preferences.cpp:851 +#: ../src/ui/dialog/inkscape-preferences.cpp:859 msgid "Use pressure-sensitive tablet (requires restart)" msgstr "Druckempfindliches Grafiktablett verwenden (erfordert Neustart)" -#: ../src/ui/dialog/inkscape-preferences.cpp:853 +#: ../src/ui/dialog/inkscape-preferences.cpp:861 msgid "" "Use the capabilities of a tablet or other pressure-sensitive device. Disable " "this only if you have problems with the tablet (you can still use it as a " @@ -17895,27 +18250,27 @@ msgstr "" "Geräts verwenden. Schalten Sie dies nur aus, wenn Sie Probleme mit dem Gerät " "haben (Sie können es immer noch als Maus verwenden)." -#: ../src/ui/dialog/inkscape-preferences.cpp:855 +#: ../src/ui/dialog/inkscape-preferences.cpp:863 msgid "Switch tool based on tablet device (requires restart)" msgstr "Wechsel Werkzeug abhängig von Tablett-Werkzeug (erfordert Neustart)" -#: ../src/ui/dialog/inkscape-preferences.cpp:857 +#: ../src/ui/dialog/inkscape-preferences.cpp:865 msgid "" "Change tool as different devices are used on the tablet (pen, eraser, mouse)" msgstr "" "Wechselt das Werkzeug wenn auf dem Grafiktablett ein anderes Gerät verwendet " "wird (Stift, Radierer, Maus)" -#: ../src/ui/dialog/inkscape-preferences.cpp:858 +#: ../src/ui/dialog/inkscape-preferences.cpp:866 msgid "Input devices" msgstr "_Eingabegeräte…" #. SVG output options -#: ../src/ui/dialog/inkscape-preferences.cpp:861 +#: ../src/ui/dialog/inkscape-preferences.cpp:869 msgid "Use named colors" msgstr "Benutze Farbnamen" -#: ../src/ui/dialog/inkscape-preferences.cpp:862 +#: ../src/ui/dialog/inkscape-preferences.cpp:870 msgid "" "If set, write the CSS name of the color when available (e.g. 'red' or " "'magenta') instead of the numeric value" @@ -17923,23 +18278,23 @@ msgstr "" "Benutzt, wenn möglich, die CSS-Farbnamen (z.B. 'red', 'magenta') anstelle " "von nummerischen Werten." -#: ../src/ui/dialog/inkscape-preferences.cpp:864 +#: ../src/ui/dialog/inkscape-preferences.cpp:872 msgid "XML formatting" msgstr "XML Format" -#: ../src/ui/dialog/inkscape-preferences.cpp:866 +#: ../src/ui/dialog/inkscape-preferences.cpp:874 msgid "Inline attributes" msgstr "Attribute kürzen" -#: ../src/ui/dialog/inkscape-preferences.cpp:867 +#: ../src/ui/dialog/inkscape-preferences.cpp:875 msgid "Put attributes on the same line as the element tag" msgstr "Schreibt Attribute in die gleiche Zeile wie das Element-Tag." -#: ../src/ui/dialog/inkscape-preferences.cpp:870 +#: ../src/ui/dialog/inkscape-preferences.cpp:878 msgid "_Indent, spaces:" msgstr "E_inzug, Leerzeichen:" -#: ../src/ui/dialog/inkscape-preferences.cpp:870 +#: ../src/ui/dialog/inkscape-preferences.cpp:878 msgid "" "The number of spaces to use for indenting nested elements; set to 0 for no " "indentation" @@ -17947,24 +18302,24 @@ msgstr "" "Die Anzahl an Leerstellen die zum einrücken untergeordneter Elemente genutzt " "werden soll. Mit 0 werden keine Leerstellen eingefügt." -#: ../src/ui/dialog/inkscape-preferences.cpp:872 +#: ../src/ui/dialog/inkscape-preferences.cpp:880 msgid "Path data" msgstr "Pfad Daten" -#: ../src/ui/dialog/inkscape-preferences.cpp:874 +#: ../src/ui/dialog/inkscape-preferences.cpp:882 msgid "Allow relative coordinates" msgstr "Relative Koordinaten erlauben." -#: ../src/ui/dialog/inkscape-preferences.cpp:875 +#: ../src/ui/dialog/inkscape-preferences.cpp:883 msgid "If set, relative coordinates may be used in path data" msgstr "" "Wenn gesetzt können relative Koordinaten als Pfaddaten verwendet werden." -#: ../src/ui/dialog/inkscape-preferences.cpp:877 +#: ../src/ui/dialog/inkscape-preferences.cpp:885 msgid "Force repeat commands" msgstr "Erzwinge Kommandowiederholung" -#: ../src/ui/dialog/inkscape-preferences.cpp:878 +#: ../src/ui/dialog/inkscape-preferences.cpp:886 msgid "" "Force repeating of the same path command (for example, 'L 1,2 L 3,4' instead " "of 'L 1,2 3,4')" @@ -17972,23 +18327,23 @@ msgstr "" "Erzwingt die Wiederholung von Pfad-Kommandos (z.B. 'L 1,2 L 3,4' anstatt 'L " "1,2 3,4')" -#: ../src/ui/dialog/inkscape-preferences.cpp:880 +#: ../src/ui/dialog/inkscape-preferences.cpp:888 msgid "Numbers" msgstr "Zahlen" -#: ../src/ui/dialog/inkscape-preferences.cpp:883 +#: ../src/ui/dialog/inkscape-preferences.cpp:891 msgid "_Numeric precision:" msgstr "Genauigkeit:" -#: ../src/ui/dialog/inkscape-preferences.cpp:883 +#: ../src/ui/dialog/inkscape-preferences.cpp:891 msgid "Significant figures of the values written to the SVG file" msgstr "Maßgebliche Zahlen der Werte, die in die SVG-Datei geschrieben werden" -#: ../src/ui/dialog/inkscape-preferences.cpp:886 +#: ../src/ui/dialog/inkscape-preferences.cpp:894 msgid "Minimum _exponent:" msgstr "Minimal _Exponent:" -#: ../src/ui/dialog/inkscape-preferences.cpp:886 +#: ../src/ui/dialog/inkscape-preferences.cpp:894 msgid "" "The smallest number written to SVG is 10 to the power of this exponent; " "anything smaller is written as zero" @@ -17998,17 +18353,17 @@ msgstr "" #. Code to add controls for attribute checking options #. Add incorrect style properties options -#: ../src/ui/dialog/inkscape-preferences.cpp:891 +#: ../src/ui/dialog/inkscape-preferences.cpp:899 msgid "Improper Attributes Actions" msgstr "Unsachgemäße Attribut-Aktionen" -#: ../src/ui/dialog/inkscape-preferences.cpp:893 #: ../src/ui/dialog/inkscape-preferences.cpp:901 #: ../src/ui/dialog/inkscape-preferences.cpp:909 +#: ../src/ui/dialog/inkscape-preferences.cpp:917 msgid "Print warnings" msgstr "Drucke Warnungen" -#: ../src/ui/dialog/inkscape-preferences.cpp:894 +#: ../src/ui/dialog/inkscape-preferences.cpp:902 msgid "" "Print warning if invalid or non-useful attributes found. Database files " "located in inkscape_data_dir/attributes." @@ -18016,20 +18371,20 @@ msgstr "" "Gebe Warnung aus, wenn ungültige oder nicht-nützliche Attribute gefunden " "werden. Datenbank-Dateien liegen in inkscape_data_dir/Attribute." -#: ../src/ui/dialog/inkscape-preferences.cpp:895 +#: ../src/ui/dialog/inkscape-preferences.cpp:903 msgid "Remove attributes" msgstr "Attribute löschen" -#: ../src/ui/dialog/inkscape-preferences.cpp:896 +#: ../src/ui/dialog/inkscape-preferences.cpp:904 msgid "Delete invalid or non-useful attributes from element tag" msgstr "Löscht ungültige oder nicht-nützliche Attribute vom Element Tag" #. Add incorrect style properties options -#: ../src/ui/dialog/inkscape-preferences.cpp:899 +#: ../src/ui/dialog/inkscape-preferences.cpp:907 msgid "Inappropriate Style Properties Actions" msgstr "Unangemessene Stileigenschaften-Aktionen" -#: ../src/ui/dialog/inkscape-preferences.cpp:902 +#: ../src/ui/dialog/inkscape-preferences.cpp:910 msgid "" "Print warning if inappropriate style properties found (i.e. 'font-family' " "set on a ). Database files located in inkscape_data_dir/attributes." @@ -18038,21 +18393,21 @@ msgstr "" "'Schrift-Familie' auf einem gesetzt). Datenbank-Dateien liegen in " "inkscape_data_dir/Attribute." -#: ../src/ui/dialog/inkscape-preferences.cpp:903 #: ../src/ui/dialog/inkscape-preferences.cpp:911 +#: ../src/ui/dialog/inkscape-preferences.cpp:919 msgid "Remove style properties" msgstr "Stileigenschaften löschen" -#: ../src/ui/dialog/inkscape-preferences.cpp:904 +#: ../src/ui/dialog/inkscape-preferences.cpp:912 msgid "Delete inappropriate style properties" msgstr "Unpassende Stileigenschaften löschen" #. Add default or inherited style properties options -#: ../src/ui/dialog/inkscape-preferences.cpp:907 +#: ../src/ui/dialog/inkscape-preferences.cpp:915 msgid "Non-useful Style Properties Actions" msgstr "Nicht-nützliche Stileigenschafts-Aktionen" -#: ../src/ui/dialog/inkscape-preferences.cpp:910 +#: ../src/ui/dialog/inkscape-preferences.cpp:918 msgid "" "Print warning if redundant style properties found (i.e. if a property has " "the default value and a different value is not inherited or if value is the " @@ -18064,19 +18419,19 @@ msgstr "" "vererbt wird oder wenn ein Wert der gleiche ist, wenn er vererbt würde). " "Datenbank-Dateien liegen in inkscape_data_dir/Attribute." -#: ../src/ui/dialog/inkscape-preferences.cpp:912 +#: ../src/ui/dialog/inkscape-preferences.cpp:920 msgid "Delete redundant style properties" msgstr "Redundante Stileigenschaften löschen" -#: ../src/ui/dialog/inkscape-preferences.cpp:914 +#: ../src/ui/dialog/inkscape-preferences.cpp:922 msgid "Check Attributes and Style Properties on" msgstr "Überprüfen Sie Attribute und Style-Eigenschaften auf" -#: ../src/ui/dialog/inkscape-preferences.cpp:916 +#: ../src/ui/dialog/inkscape-preferences.cpp:924 msgid "Reading" msgstr "Lesen" -#: ../src/ui/dialog/inkscape-preferences.cpp:917 +#: ../src/ui/dialog/inkscape-preferences.cpp:925 msgid "" "Check attributes and style properties on reading in SVG files (including " "those internal to Inkscape which will slow down startup)" @@ -18085,11 +18440,11 @@ msgstr "" "Dateien (einschließlich derjenigen internen von Inkscape die den Start " "verlangsamen)" -#: ../src/ui/dialog/inkscape-preferences.cpp:918 +#: ../src/ui/dialog/inkscape-preferences.cpp:926 msgid "Editing" msgstr "Bearbeiten" -#: ../src/ui/dialog/inkscape-preferences.cpp:919 +#: ../src/ui/dialog/inkscape-preferences.cpp:927 msgid "" "Check attributes and style properties while editing SVG files (may slow down " "Inkscape, mostly useful for debugging)" @@ -18097,42 +18452,42 @@ msgstr "" "Überprüfen Sie die Attribute und Style-Eigenschaften während der Bearbeitung " "von SVG-Dateien (kann Inkscape verlangsamen, meist nützlich zur Fehlersuche)" -#: ../src/ui/dialog/inkscape-preferences.cpp:920 +#: ../src/ui/dialog/inkscape-preferences.cpp:928 msgid "Writing" msgstr "Schreiben" -#: ../src/ui/dialog/inkscape-preferences.cpp:921 +#: ../src/ui/dialog/inkscape-preferences.cpp:929 msgid "Check attributes and style properties on writing out SVG files" msgstr "" "Überprüfen Sie die Attribut- und Style-Eigenschaften beim Schreiben von SVG-" "Dateien" -#: ../src/ui/dialog/inkscape-preferences.cpp:923 +#: ../src/ui/dialog/inkscape-preferences.cpp:931 msgid "SVG output" msgstr "SVG-Ausgabe" #. TRANSLATORS: see http://www.newsandtech.com/issues/2004/03-04/pt/03-04_rendering.htm -#: ../src/ui/dialog/inkscape-preferences.cpp:929 +#: ../src/ui/dialog/inkscape-preferences.cpp:937 msgid "Perceptual" msgstr "Wahrnehmung" -#: ../src/ui/dialog/inkscape-preferences.cpp:929 +#: ../src/ui/dialog/inkscape-preferences.cpp:937 msgid "Relative Colorimetric" msgstr "Relative Farbmetrik" -#: ../src/ui/dialog/inkscape-preferences.cpp:929 +#: ../src/ui/dialog/inkscape-preferences.cpp:937 msgid "Absolute Colorimetric" msgstr "Absolute Farbmetrik" -#: ../src/ui/dialog/inkscape-preferences.cpp:933 +#: ../src/ui/dialog/inkscape-preferences.cpp:941 msgid "(Note: Color management has been disabled in this build)" msgstr "(Hinweis: Farbmanagement wurde in diesem Build deaktiviert)" -#: ../src/ui/dialog/inkscape-preferences.cpp:937 +#: ../src/ui/dialog/inkscape-preferences.cpp:945 msgid "Display adjustment" msgstr "Anzeige Anpassungen" -#: ../src/ui/dialog/inkscape-preferences.cpp:947 +#: ../src/ui/dialog/inkscape-preferences.cpp:955 #, c-format msgid "" "The ICC profile to use to calibrate display output.\n" @@ -18141,113 +18496,113 @@ msgstr "" "ICC-Profil, das zum Kalibrieren der Anzeige genutzt werden soll.\n" "Durchsuchte Verzeichnisse:%s" -#: ../src/ui/dialog/inkscape-preferences.cpp:948 +#: ../src/ui/dialog/inkscape-preferences.cpp:956 msgid "Display profile:" msgstr "Anzeigeprofil:" -#: ../src/ui/dialog/inkscape-preferences.cpp:953 +#: ../src/ui/dialog/inkscape-preferences.cpp:961 msgid "Retrieve profile from display" msgstr "Profil von Anzeige ermitteln" -#: ../src/ui/dialog/inkscape-preferences.cpp:956 +#: ../src/ui/dialog/inkscape-preferences.cpp:964 msgid "Retrieve profiles from those attached to displays via XICC" msgstr "Ermittle Profil von angeschlossenen Anzeigegeräten mittels XICC." -#: ../src/ui/dialog/inkscape-preferences.cpp:958 +#: ../src/ui/dialog/inkscape-preferences.cpp:966 msgid "Retrieve profiles from those attached to displays" msgstr "Ermittle Profil von angeschlossenen Anzeigegeräten." -#: ../src/ui/dialog/inkscape-preferences.cpp:963 +#: ../src/ui/dialog/inkscape-preferences.cpp:971 msgid "Display rendering intent:" msgstr "Anzeigenversatz" -#: ../src/ui/dialog/inkscape-preferences.cpp:964 +#: ../src/ui/dialog/inkscape-preferences.cpp:972 msgid "The rendering intent to use to calibrate display output" msgstr "" "Geräte-Wiedergabe-Bedeutung wird genutzt, um die Ausgabe zu kalibrieren." -#: ../src/ui/dialog/inkscape-preferences.cpp:966 +#: ../src/ui/dialog/inkscape-preferences.cpp:974 msgid "Proofing" msgstr "Druckprobe" -#: ../src/ui/dialog/inkscape-preferences.cpp:968 +#: ../src/ui/dialog/inkscape-preferences.cpp:976 msgid "Simulate output on screen" msgstr "Simulieren der Ausgabe auf dem Bildschirm" -#: ../src/ui/dialog/inkscape-preferences.cpp:970 +#: ../src/ui/dialog/inkscape-preferences.cpp:978 msgid "Simulates output of target device" msgstr "Simulieren der Ausgabe auf dem Zielgerät" -#: ../src/ui/dialog/inkscape-preferences.cpp:972 +#: ../src/ui/dialog/inkscape-preferences.cpp:980 msgid "Mark out of gamut colors" msgstr "Farben der Farbskala hervorheben" -#: ../src/ui/dialog/inkscape-preferences.cpp:974 +#: ../src/ui/dialog/inkscape-preferences.cpp:982 msgid "Highlights colors that are out of gamut for the target device" msgstr "Hebe Farben hervor die nicht im Farbbereich des Ausgabegerätes liegen." -#: ../src/ui/dialog/inkscape-preferences.cpp:986 +#: ../src/ui/dialog/inkscape-preferences.cpp:994 msgid "Out of gamut warning color:" msgstr "Farbbereichswarnung:" -#: ../src/ui/dialog/inkscape-preferences.cpp:987 +#: ../src/ui/dialog/inkscape-preferences.cpp:995 msgid "Selects the color used for out of gamut warning" msgstr "Bestimmt die Farbe die für Farbbereichswarnungen genutzt werden soll." -#: ../src/ui/dialog/inkscape-preferences.cpp:989 +#: ../src/ui/dialog/inkscape-preferences.cpp:997 msgid "Device profile:" msgstr "Geräteprofil:" -#: ../src/ui/dialog/inkscape-preferences.cpp:990 +#: ../src/ui/dialog/inkscape-preferences.cpp:998 msgid "The ICC profile to use to simulate device output" msgstr "ICC-Profil für Simulation der Geräteausgabe." -#: ../src/ui/dialog/inkscape-preferences.cpp:993 +#: ../src/ui/dialog/inkscape-preferences.cpp:1001 msgid "Device rendering intent:" msgstr "Gerätewiedergabe-Bedeutung" -#: ../src/ui/dialog/inkscape-preferences.cpp:994 +#: ../src/ui/dialog/inkscape-preferences.cpp:1002 msgid "The rendering intent to use to calibrate device output" msgstr "" "Geräte-Wiedergabe-Bedeutung wird genutzt, um die Ausgabe zu kalibrieren." -#: ../src/ui/dialog/inkscape-preferences.cpp:996 +#: ../src/ui/dialog/inkscape-preferences.cpp:1004 msgid "Black point compensation" msgstr "Schwarzpunktanpassung" -#: ../src/ui/dialog/inkscape-preferences.cpp:998 +#: ../src/ui/dialog/inkscape-preferences.cpp:1006 msgid "Enables black point compensation" msgstr "Ermöglicht Schwarzpunktkompensation" -#: ../src/ui/dialog/inkscape-preferences.cpp:1000 +#: ../src/ui/dialog/inkscape-preferences.cpp:1008 msgid "Preserve black" msgstr "Schwarzwert beibehalten" -#: ../src/ui/dialog/inkscape-preferences.cpp:1007 +#: ../src/ui/dialog/inkscape-preferences.cpp:1015 msgid "(LittleCMS 1.15 or later required)" msgstr "(LittleCMS 1.15 oder neuer wird benötigt)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1009 +#: ../src/ui/dialog/inkscape-preferences.cpp:1017 msgid "Preserve K channel in CMYK -> CMYK transforms" msgstr "Lässt K-Kanal in CMYK -> CMYK Transformation unverändert." # CHECK -#: ../src/ui/dialog/inkscape-preferences.cpp:1023 -#: ../src/widgets/sp-color-icc-selector.cpp:324 -#: ../src/widgets/sp-color-icc-selector.cpp:677 +#: ../src/ui/dialog/inkscape-preferences.cpp:1031 +#: ../src/widgets/sp-color-icc-selector.cpp:474 +#: ../src/widgets/sp-color-icc-selector.cpp:766 msgid "" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1068 +#: ../src/ui/dialog/inkscape-preferences.cpp:1076 msgid "Color management" msgstr "Farb-Management" #. Autosave options -#: ../src/ui/dialog/inkscape-preferences.cpp:1071 +#: ../src/ui/dialog/inkscape-preferences.cpp:1079 msgid "Enable autosave (requires restart)" msgstr "Automatisches Speichern (erfordert Neustart)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1072 +#: ../src/ui/dialog/inkscape-preferences.cpp:1080 msgid "" "Automatically save the current document(s) at a given interval, thus " "minimizing loss in case of a crash" @@ -18255,12 +18610,12 @@ msgstr "" "Speichert das Dokument in bestimmten Zeitabständen. Dadurch kann der " "Verlust, der durch Programmabstürze entsteht, verringert werden." -#: ../src/ui/dialog/inkscape-preferences.cpp:1078 +#: ../src/ui/dialog/inkscape-preferences.cpp:1086 msgctxt "Filesystem" msgid "Autosave _directory:" msgstr "Ort für automatisches Speichern:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1078 +#: ../src/ui/dialog/inkscape-preferences.cpp:1086 msgid "" "The directory where autosaves will be written. This should be an absolute " "path (starts with / on UNIX or a drive letter such as C: on Windows). " @@ -18269,21 +18624,21 @@ msgstr "" "sollte ein absoluter Pfad sein (startet mit / bei UNIX und einem " "Laufwerksbuchstaben wir C: bei Windows)." -#: ../src/ui/dialog/inkscape-preferences.cpp:1080 +#: ../src/ui/dialog/inkscape-preferences.cpp:1088 msgid "_Interval (in minutes):" msgstr "Zeitabstand (in Minuten):" -#: ../src/ui/dialog/inkscape-preferences.cpp:1080 +#: ../src/ui/dialog/inkscape-preferences.cpp:1088 msgid "Interval (in minutes) at which document will be autosaved" msgstr "" "In diesen Zeitabständen (in Minuten) wird das Dokument automatisch " "gespeichert." -#: ../src/ui/dialog/inkscape-preferences.cpp:1082 +#: ../src/ui/dialog/inkscape-preferences.cpp:1090 msgid "_Maximum number of autosaves:" msgstr "Maximale Anzahl an Sicherungen:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1082 +#: ../src/ui/dialog/inkscape-preferences.cpp:1090 msgid "" "Maximum number of autosaved files; use this to limit the storage space used" msgstr "" @@ -18302,15 +18657,15 @@ msgstr "" #. _autosave_autosave_interval.signal_changed().connect( sigc::ptr_fun(inkscape_autosave_init), TRUE ); #. #. ----------- -#: ../src/ui/dialog/inkscape-preferences.cpp:1097 +#: ../src/ui/dialog/inkscape-preferences.cpp:1105 msgid "Autosave" msgstr "Automatische Sicherung" -#: ../src/ui/dialog/inkscape-preferences.cpp:1101 +#: ../src/ui/dialog/inkscape-preferences.cpp:1109 msgid "Open Clip Art Library _Server Name:" msgstr "Open Clip Art Library Servername:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1102 +#: ../src/ui/dialog/inkscape-preferences.cpp:1110 msgid "" "The server name of the Open Clip Art Library webdav server; it's used by the " "Import and Export to OCAL function" @@ -18318,35 +18673,35 @@ msgstr "" "Der Servername des \"Open Clip Art Library\" Webdav Servers. Dieser wird " "beim Im- und Export zur OCAL verwendet." -#: ../src/ui/dialog/inkscape-preferences.cpp:1104 +#: ../src/ui/dialog/inkscape-preferences.cpp:1112 msgid "Open Clip Art Library _Username:" msgstr "Open Clip Art Library Benutzername:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1105 +#: ../src/ui/dialog/inkscape-preferences.cpp:1113 msgid "The username used to log into Open Clip Art Library" msgstr "Der Benutzername zum einloggen in die Open Clip Art Library." -#: ../src/ui/dialog/inkscape-preferences.cpp:1107 +#: ../src/ui/dialog/inkscape-preferences.cpp:1115 msgid "Open Clip Art Library _Password:" msgstr "Open Clip Art Library Kennwort:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1108 +#: ../src/ui/dialog/inkscape-preferences.cpp:1116 msgid "The password used to log into Open Clip Art Library" msgstr "Das Passwort zum einloggen in die Open Clip Art Library." -#: ../src/ui/dialog/inkscape-preferences.cpp:1109 +#: ../src/ui/dialog/inkscape-preferences.cpp:1117 msgid "Open Clip Art" msgstr "Login bei Open Clip Art" -#: ../src/ui/dialog/inkscape-preferences.cpp:1114 +#: ../src/ui/dialog/inkscape-preferences.cpp:1122 msgid "Behavior" msgstr "Verhalten" -#: ../src/ui/dialog/inkscape-preferences.cpp:1118 +#: ../src/ui/dialog/inkscape-preferences.cpp:1126 msgid "_Simplification threshold:" msgstr "Schwellwert für Vereinfachungen:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1119 +#: ../src/ui/dialog/inkscape-preferences.cpp:1127 msgid "" "How strong is the Node tool's Simplify command by default. If you invoke " "this command several times in quick succession, it will act more and more " @@ -18356,47 +18711,47 @@ msgstr "" "mehrmals schnell hintereinander ausgeführt, erhöht sich die Stärke; kurze " "Pause dazwischen setzt den Schwellwert zurück." -#: ../src/ui/dialog/inkscape-preferences.cpp:1121 +#: ../src/ui/dialog/inkscape-preferences.cpp:1129 msgid "Color stock markers the same color as object" msgstr "Farbe Standard-Marker in der gleichen Farbe wie das Objekt" -#: ../src/ui/dialog/inkscape-preferences.cpp:1122 +#: ../src/ui/dialog/inkscape-preferences.cpp:1130 msgid "Color custom markers the same color as object" msgstr "" "Färbe die benutzerdefinierten Markierungen in der gleichen Farbe wie das " "Objekt" -#: ../src/ui/dialog/inkscape-preferences.cpp:1123 -#: ../src/ui/dialog/inkscape-preferences.cpp:1333 +#: ../src/ui/dialog/inkscape-preferences.cpp:1131 +#: ../src/ui/dialog/inkscape-preferences.cpp:1341 msgid "Update marker color when object color changes" msgstr "Aktualisiert die Markierungsfarbe, wenn das Objekt die Farbe ändert" #. Selecting options -#: ../src/ui/dialog/inkscape-preferences.cpp:1126 +#: ../src/ui/dialog/inkscape-preferences.cpp:1134 msgid "Select in all layers" msgstr "In allen Ebenen auswählen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1127 +#: ../src/ui/dialog/inkscape-preferences.cpp:1135 msgid "Select only within current layer" msgstr "Nur innerhalb der aktuellen Ebene auswählen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1128 +#: ../src/ui/dialog/inkscape-preferences.cpp:1136 msgid "Select in current layer and sublayers" msgstr "Nur innerhalb der aktuellen Ebene und Unterebenen auswählen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1129 +#: ../src/ui/dialog/inkscape-preferences.cpp:1137 msgid "Ignore hidden objects and layers" msgstr "Ausgeblendete Objekte und Ebenen ignorieren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1130 +#: ../src/ui/dialog/inkscape-preferences.cpp:1138 msgid "Ignore locked objects and layers" msgstr "Gesperrte Objekte und Ebenen ignorieren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1131 +#: ../src/ui/dialog/inkscape-preferences.cpp:1139 msgid "Deselect upon layer change" msgstr "Auswahl bei Ebenenwechsel aufheben" -#: ../src/ui/dialog/inkscape-preferences.cpp:1134 +#: ../src/ui/dialog/inkscape-preferences.cpp:1142 msgid "" "Uncheck this to be able to keep the current objects selected when the " "current layer changes" @@ -18404,20 +18759,20 @@ msgstr "" "Dieses abwählen um Objekte ausgewählt zu lassen, wenn die aktuelle Ebene " "geändert wird" -#: ../src/ui/dialog/inkscape-preferences.cpp:1136 +#: ../src/ui/dialog/inkscape-preferences.cpp:1144 msgid "Ctrl+A, Tab, Shift+Tab" msgstr "Strg+A, Tabulator, Umschalt+Tabulator:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1138 +#: ../src/ui/dialog/inkscape-preferences.cpp:1146 msgid "Make keyboard selection commands work on objects in all layers" msgstr "Tastaturkommandos zur Auswahl wirken auf Objekte aller Ebenen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1140 +#: ../src/ui/dialog/inkscape-preferences.cpp:1148 msgid "Make keyboard selection commands work on objects in current layer only" msgstr "" "Tastaturkommandos zur Auswahl wirken nur auf Objekte in der aktuellen Ebene" -#: ../src/ui/dialog/inkscape-preferences.cpp:1142 +#: ../src/ui/dialog/inkscape-preferences.cpp:1150 msgid "" "Make keyboard selection commands work on objects in current layer and all " "its sublayers" @@ -18425,7 +18780,7 @@ msgstr "" "Tastaturkommandos zur Auswahl wirken auf Objekte in der aktuellen Ebene und " "aller ihrer Unterebenen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1144 +#: ../src/ui/dialog/inkscape-preferences.cpp:1152 msgid "" "Uncheck this to be able to select objects that are hidden (either by " "themselves or by being in a hidden layer)" @@ -18433,7 +18788,7 @@ msgstr "" "Dieses abwählen, damit ausgeblendete Objekte ausgewählt werden können (gilt " "auch für Objekte in ausgeblendeten Ebenen/Gruppierungen)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1146 +#: ../src/ui/dialog/inkscape-preferences.cpp:1154 msgid "" "Uncheck this to be able to select objects that are locked (either by " "themselves or by being in a locked layer)" @@ -18441,81 +18796,81 @@ msgstr "" "Dieses abwählen damit gesperrte Objekte ausgewählt werden können (gilt auch " "für Objekte in gesperrten Ebenen/Gruppierungen)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1148 +#: ../src/ui/dialog/inkscape-preferences.cpp:1156 msgid "Wrap when cycling objects in z-order" msgstr "Beim drehen von Objekten in Z-Ordnung einwickeln." -#: ../src/ui/dialog/inkscape-preferences.cpp:1150 +#: ../src/ui/dialog/inkscape-preferences.cpp:1158 msgid "Alt+Scroll Wheel" msgstr "Alt+Scroll-Rad" -#: ../src/ui/dialog/inkscape-preferences.cpp:1152 +#: ../src/ui/dialog/inkscape-preferences.cpp:1160 msgid "Wrap around at start and end when cycling objects in z-order" msgstr "" "Beim drehen von Objekten in Z-Ordnung um den Start- und Endpunkt einwickeln." -#: ../src/ui/dialog/inkscape-preferences.cpp:1154 +#: ../src/ui/dialog/inkscape-preferences.cpp:1162 msgid "Selecting" msgstr "Auswählen" #. Transforms options -#: ../src/ui/dialog/inkscape-preferences.cpp:1157 +#: ../src/ui/dialog/inkscape-preferences.cpp:1165 #: ../src/widgets/select-toolbar.cpp:572 msgid "Scale stroke width" msgstr "Breite der Kontur skalieren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1158 +#: ../src/ui/dialog/inkscape-preferences.cpp:1166 msgid "Scale rounded corners in rectangles" msgstr "Abgerundete Ecken in Rechtecken mitskalieren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1159 +#: ../src/ui/dialog/inkscape-preferences.cpp:1167 msgid "Transform gradients" msgstr "Farbverläufe transformieren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1160 +#: ../src/ui/dialog/inkscape-preferences.cpp:1168 msgid "Transform patterns" msgstr "Füllmuster transformieren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1161 +#: ../src/ui/dialog/inkscape-preferences.cpp:1169 msgid "Optimized" msgstr "Optimiert" -#: ../src/ui/dialog/inkscape-preferences.cpp:1162 +#: ../src/ui/dialog/inkscape-preferences.cpp:1170 msgid "Preserved" msgstr "Beibehalten" -#: ../src/ui/dialog/inkscape-preferences.cpp:1165 +#: ../src/ui/dialog/inkscape-preferences.cpp:1173 #: ../src/widgets/select-toolbar.cpp:573 msgid "When scaling objects, scale the stroke width by the same proportion" msgstr "" "Wenn Objekte skaliert werden, dann wird die Breite der Kontur ebenso " "skaliert." -#: ../src/ui/dialog/inkscape-preferences.cpp:1167 +#: ../src/ui/dialog/inkscape-preferences.cpp:1175 #: ../src/widgets/select-toolbar.cpp:584 msgid "When scaling rectangles, scale the radii of rounded corners" msgstr "" "Wenn Rechtecke skaliert werden, dann werden die Radien von abgerundeten " "Ecken ebenso mitskaliert." -#: ../src/ui/dialog/inkscape-preferences.cpp:1169 +#: ../src/ui/dialog/inkscape-preferences.cpp:1177 #: ../src/widgets/select-toolbar.cpp:595 msgid "Move gradients (in fill or stroke) along with the objects" msgstr "" "Farbverläufe (in Füllung oder Konturen) zusammen mit den Objekten " "transformieren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1171 +#: ../src/ui/dialog/inkscape-preferences.cpp:1179 #: ../src/widgets/select-toolbar.cpp:606 msgid "Move patterns (in fill or stroke) along with the objects" msgstr "" "Muster (in Füllung oder Konturen) zusammen mit den Objekten transformieren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1172 +#: ../src/ui/dialog/inkscape-preferences.cpp:1180 msgid "Store transformation" msgstr "Transformation speichern:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1174 +#: ../src/ui/dialog/inkscape-preferences.cpp:1182 msgid "" "If possible, apply transformation to objects without adding a transform= " "attribute" @@ -18523,19 +18878,19 @@ msgstr "" "Wenn möglich, dann werden Transformationen auf Objekte angewendet, ohne ein " "transform=-Attribut hinzuzufügen." -#: ../src/ui/dialog/inkscape-preferences.cpp:1176 +#: ../src/ui/dialog/inkscape-preferences.cpp:1184 msgid "Always store transformation as a transform= attribute on objects" msgstr "Transformationen immer als transform=-Attribute speichern." -#: ../src/ui/dialog/inkscape-preferences.cpp:1178 +#: ../src/ui/dialog/inkscape-preferences.cpp:1186 msgid "Transforms" msgstr "Transformationen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1182 +#: ../src/ui/dialog/inkscape-preferences.cpp:1190 msgid "Mouse _wheel scrolls by:" msgstr "Mausrad rollt um:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1183 +#: ../src/ui/dialog/inkscape-preferences.cpp:1191 msgid "" "One mouse wheel notch scrolls by this distance in screen pixels " "(horizontally with Shift)" @@ -18543,23 +18898,23 @@ msgstr "" "Eine Stufe des Maus-Rades rollt um die angegebene Distanz in Pixeln " "(horizontal mit Umschalttaste)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1184 +#: ../src/ui/dialog/inkscape-preferences.cpp:1192 msgid "Ctrl+arrows" msgstr "Strg+Pfeile" -#: ../src/ui/dialog/inkscape-preferences.cpp:1186 +#: ../src/ui/dialog/inkscape-preferences.cpp:1194 msgid "Sc_roll by:" msgstr "Rolle um:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1187 +#: ../src/ui/dialog/inkscape-preferences.cpp:1195 msgid "Pressing Ctrl+arrow key scrolls by this distance (in screen pixels)" msgstr "Strg+Pfeiltasten rollen um diese Distanz (in Pixeln)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1189 +#: ../src/ui/dialog/inkscape-preferences.cpp:1197 msgid "_Acceleration:" msgstr "Beschleunigung:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1190 +#: ../src/ui/dialog/inkscape-preferences.cpp:1198 msgid "" "Pressing and holding Ctrl+arrow will gradually speed up scrolling (0 for no " "acceleration)" @@ -18567,15 +18922,15 @@ msgstr "" "Drücken von Strg+Pfeiltaste erhöht zunehmend die Rollgeschwindigkeit (0 " "bedeutet »keine Beschleunigung«)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1191 +#: ../src/ui/dialog/inkscape-preferences.cpp:1199 msgid "Autoscrolling" msgstr "Automatisches Rollen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1193 +#: ../src/ui/dialog/inkscape-preferences.cpp:1201 msgid "_Speed:" msgstr "Geschwindigkeit:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1194 +#: ../src/ui/dialog/inkscape-preferences.cpp:1202 msgid "" "How fast the canvas autoscrolls when you drag beyond canvas edge (0 to turn " "autoscroll off)" @@ -18583,12 +18938,12 @@ msgstr "" "Geschwindigkeit mit der die Arbeitsfläche verschoben wird, wenn der Zeiger " "ihren Rand überschreitet (0: Autorollen ist deaktiviert)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1196 +#: ../src/ui/dialog/inkscape-preferences.cpp:1204 #: ../src/ui/dialog/tracedialog.cpp:522 ../src/ui/dialog/tracedialog.cpp:721 msgid "_Threshold:" msgstr "Schwellwert:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1197 +#: ../src/ui/dialog/inkscape-preferences.cpp:1205 msgid "" "How far (in screen pixels) you need to be from the canvas edge to trigger " "autoscroll; positive is outside the canvas, negative is within the canvas" @@ -18602,11 +18957,11 @@ msgstr "" #. _page_scrolling.add_line( false, "", _scroll_space, "", #. _("When on, pressing and holding Space and dragging with left mouse button pans canvas (as in Adobe Illustrator); when off, Space temporarily switches to Selector tool (default)")); #. -#: ../src/ui/dialog/inkscape-preferences.cpp:1203 +#: ../src/ui/dialog/inkscape-preferences.cpp:1211 msgid "Mouse wheel zooms by default" msgstr "Standardmäßig zoomt das Mausrad" -#: ../src/ui/dialog/inkscape-preferences.cpp:1205 +#: ../src/ui/dialog/inkscape-preferences.cpp:1213 msgid "" "When on, mouse wheel zooms without Ctrl and scrolls canvas with Ctrl; when " "off, it zooms with Ctrl and scrolls without Ctrl" @@ -18614,25 +18969,25 @@ msgstr "" "Wenn aktiviert kann mit dem Mausrad die Ansicht vergrößert/verkleinert " "werden. Ist dies deaktiviert benötigt man dazu Strg+Mausrad. " -#: ../src/ui/dialog/inkscape-preferences.cpp:1206 +#: ../src/ui/dialog/inkscape-preferences.cpp:1214 msgid "Scrolling" msgstr "Rollen" #. Snapping options -#: ../src/ui/dialog/inkscape-preferences.cpp:1209 +#: ../src/ui/dialog/inkscape-preferences.cpp:1217 msgid "Enable snap indicator" msgstr "Einrast-Indikator aktivieren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1211 +#: ../src/ui/dialog/inkscape-preferences.cpp:1219 msgid "After snapping, a symbol is drawn at the point that has snapped" msgstr "" "Nach dem Einrasten wird ein Symbol an der Stelle, die einrastete, gezeichnet." -#: ../src/ui/dialog/inkscape-preferences.cpp:1214 +#: ../src/ui/dialog/inkscape-preferences.cpp:1222 msgid "_Delay (in ms):" msgstr "Verzögerung (in msec):" -#: ../src/ui/dialog/inkscape-preferences.cpp:1215 +#: ../src/ui/dialog/inkscape-preferences.cpp:1223 msgid "" "Postpone snapping as long as the mouse is moving, and then wait an " "additional fraction of a second. This additional delay is specified here. " @@ -18642,22 +18997,22 @@ msgstr "" "zusätzlichen Sekundenbruchteil. Diese additive Verzögerung wird hier " "festgelegt. Ist sie sehr klein, passiert das Einrasten sofort." -#: ../src/ui/dialog/inkscape-preferences.cpp:1217 +#: ../src/ui/dialog/inkscape-preferences.cpp:1225 msgid "Only snap the node closest to the pointer" msgstr "Nur an dem Knoten einrasten, der dem Zeiger am nähesten ist." -#: ../src/ui/dialog/inkscape-preferences.cpp:1219 +#: ../src/ui/dialog/inkscape-preferences.cpp:1227 msgid "" "Only try to snap the node that is initially closest to the mouse pointer" msgstr "" "Nur versuchen an dem Knoten einzurasten, der dem Mauszeiger zu Beginn am " "nächsten ist." -#: ../src/ui/dialog/inkscape-preferences.cpp:1222 +#: ../src/ui/dialog/inkscape-preferences.cpp:1230 msgid "_Weight factor:" msgstr "Gewichtsfaktor:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1223 +#: ../src/ui/dialog/inkscape-preferences.cpp:1231 msgid "" "When multiple snap solutions are found, then Inkscape can either prefer the " "closest transformation (when set to 0), or prefer the node that was " @@ -18667,11 +19022,11 @@ msgstr "" "Transformation anwenden (wenn auf 0 gesetzt) oder am Knoten, der dem " "Mauszeiger am nähesten ist (wenn auf 1 gesetzt) einrasten." -#: ../src/ui/dialog/inkscape-preferences.cpp:1225 +#: ../src/ui/dialog/inkscape-preferences.cpp:1233 msgid "Snap the mouse pointer when dragging a constrained knot" msgstr "Rastet den Mauszeiger ein, wenn ein festgesetzter Knoten gezogen wird." -#: ../src/ui/dialog/inkscape-preferences.cpp:1227 +#: ../src/ui/dialog/inkscape-preferences.cpp:1235 msgid "" "When dragging a knot along a constraint line, then snap the position of the " "mouse pointer instead of snapping the projection of the knot onto the " @@ -18680,16 +19035,16 @@ msgstr "" "Wird ein Knoten entlang einer festgesetzten Linie gezogen, dann rastet der " "Mauszeiger statt der Projektion des Knotens auf der Linie ein." -#: ../src/ui/dialog/inkscape-preferences.cpp:1229 +#: ../src/ui/dialog/inkscape-preferences.cpp:1237 msgid "Snapping" msgstr "Einrasten" #. nudgedistance is limited to 1000 in select-context.cpp: use the same limit here -#: ../src/ui/dialog/inkscape-preferences.cpp:1234 +#: ../src/ui/dialog/inkscape-preferences.cpp:1242 msgid "_Arrow keys move by:" msgstr "Pfeiltasten bewegen um:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1235 +#: ../src/ui/dialog/inkscape-preferences.cpp:1243 msgid "" "Pressing an arrow key moves selected object(s) or node(s) by this distance" msgstr "" @@ -18697,31 +19052,31 @@ msgstr "" "Knoten) um diese Entfernung (in SVG-Pixeln)" #. defaultscale is limited to 1000 in select-context.cpp: use the same limit here -#: ../src/ui/dialog/inkscape-preferences.cpp:1238 +#: ../src/ui/dialog/inkscape-preferences.cpp:1246 msgid "> and < _scale by:" msgstr "> und < skalieren um:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1239 +#: ../src/ui/dialog/inkscape-preferences.cpp:1247 msgid "Pressing > or < scales selection up or down by this increment" msgstr "" "Drücken von > oder < skaliert die ausgewählten Elemente um diesen Wert " "größer oder kleiner (in SVG-Pixeln) " -#: ../src/ui/dialog/inkscape-preferences.cpp:1241 +#: ../src/ui/dialog/inkscape-preferences.cpp:1249 msgid "_Inset/Outset by:" msgstr "Schrumpfen/Erweitern um:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1242 +#: ../src/ui/dialog/inkscape-preferences.cpp:1250 msgid "Inset and Outset commands displace the path by this distance" msgstr "" "Schrumpfungs- und Erweiterungsbefehle verändern den Pfad um diese Distanz " "(in SVG-Pixeln)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1243 +#: ../src/ui/dialog/inkscape-preferences.cpp:1251 msgid "Compass-like display of angles" msgstr "Anzeige von Winkeln wie bei einem Kompaß" -#: ../src/ui/dialog/inkscape-preferences.cpp:1245 +#: ../src/ui/dialog/inkscape-preferences.cpp:1253 msgid "" "When on, angles are displayed with 0 at north, 0 to 360 range, positive " "clockwise; otherwise with 0 at east, -180 to 180 range, positive " @@ -18732,15 +19087,15 @@ msgstr "" "-180 bis 180, positiv entgegen dem Uhrzeigersinn" # !!! need %s -#: ../src/ui/dialog/inkscape-preferences.cpp:1251 +#: ../src/ui/dialog/inkscape-preferences.cpp:1259 msgid "_Rotation snaps every:" msgstr "Rotation rastet ein alle:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1251 +#: ../src/ui/dialog/inkscape-preferences.cpp:1259 msgid "degrees" msgstr "Grad" -#: ../src/ui/dialog/inkscape-preferences.cpp:1252 +#: ../src/ui/dialog/inkscape-preferences.cpp:1260 msgid "" "Rotating with Ctrl pressed snaps every that much degrees; also, pressing " "[ or ] rotates by this amount" @@ -18748,11 +19103,11 @@ msgstr "" "Rotation mit gedrückter Strg-Taste lässt das Objekt mit dieser Gradrastung " "einrasten; die Tasten [ oder ] haben den gleichen Effekt" -#: ../src/ui/dialog/inkscape-preferences.cpp:1253 +#: ../src/ui/dialog/inkscape-preferences.cpp:1261 msgid "Relative snapping of guideline angles" msgstr "Relatives Einrasten von Führungslininen-Winkeln" -#: ../src/ui/dialog/inkscape-preferences.cpp:1255 +#: ../src/ui/dialog/inkscape-preferences.cpp:1263 msgid "" "When on, the snap angles when rotating a guideline will be relative to the " "original angle" @@ -18760,11 +19115,11 @@ msgstr "" "Wenn eingeschaltet, wird der Einrastwinkel beim Drehen einer Führungslinie " "relativ zum ursprünglichen Winkel" -#: ../src/ui/dialog/inkscape-preferences.cpp:1257 +#: ../src/ui/dialog/inkscape-preferences.cpp:1265 msgid "_Zoom in/out by:" msgstr "Zoomfaktor vergrößern/verkleinern um:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1258 +#: ../src/ui/dialog/inkscape-preferences.cpp:1266 msgid "" "Zoom tool click, +/- keys, and middle click zoom in and out by this " "multiplier" @@ -18772,45 +19127,45 @@ msgstr "" "Mit dem Zoomwerkzeug klicken, die + oder - Taste drücken, oder die mittlere " "Maustaste betätigen, damit sich die Zoomgröße um diesen Faktor ändert" -#: ../src/ui/dialog/inkscape-preferences.cpp:1259 +#: ../src/ui/dialog/inkscape-preferences.cpp:1267 msgid "Steps" msgstr "Schritte" #. Clones options -#: ../src/ui/dialog/inkscape-preferences.cpp:1262 +#: ../src/ui/dialog/inkscape-preferences.cpp:1270 msgid "Move in parallel" msgstr "parallel verschoben" -#: ../src/ui/dialog/inkscape-preferences.cpp:1264 +#: ../src/ui/dialog/inkscape-preferences.cpp:1272 msgid "Stay unmoved" msgstr "unbewegt bleiben" -#: ../src/ui/dialog/inkscape-preferences.cpp:1266 +#: ../src/ui/dialog/inkscape-preferences.cpp:1274 msgid "Move according to transform" msgstr "sich entsprechend des transform=-Attributs bewegen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1268 +#: ../src/ui/dialog/inkscape-preferences.cpp:1276 msgid "Are unlinked" msgstr "ihre Verbindung zum Original verlieren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1270 +#: ../src/ui/dialog/inkscape-preferences.cpp:1278 msgid "Are deleted" msgstr "ebenso gelöscht" -#: ../src/ui/dialog/inkscape-preferences.cpp:1273 +#: ../src/ui/dialog/inkscape-preferences.cpp:1281 msgid "Moving original: clones and linked offsets" msgstr "Verschiebe Original: Klone und verbundener Versatz" -#: ../src/ui/dialog/inkscape-preferences.cpp:1275 +#: ../src/ui/dialog/inkscape-preferences.cpp:1283 msgid "Clones are translated by the same vector as their original" msgstr "Klone werden mit demselben Vektor wie das Original verschoben." -#: ../src/ui/dialog/inkscape-preferences.cpp:1277 +#: ../src/ui/dialog/inkscape-preferences.cpp:1285 msgid "Clones preserve their positions when their original is moved" msgstr "" "Klone bleiben an ihren Positionen, während das Original verschoben wird." -#: ../src/ui/dialog/inkscape-preferences.cpp:1279 +#: ../src/ui/dialog/inkscape-preferences.cpp:1287 msgid "" "Each clone moves according to the value of its transform= attribute; for " "example, a rotated clone will move in a different direction than its original" @@ -18819,27 +19174,27 @@ msgstr "" "Attributs. Ein rotierter Klon wird sich zum Beispiel in eine andere Richtung " "als das Original drehen." -#: ../src/ui/dialog/inkscape-preferences.cpp:1280 +#: ../src/ui/dialog/inkscape-preferences.cpp:1288 msgid "Deleting original: clones" msgstr "Lösche Original: Klone" -#: ../src/ui/dialog/inkscape-preferences.cpp:1282 +#: ../src/ui/dialog/inkscape-preferences.cpp:1290 msgid "Orphaned clones are converted to regular objects" msgstr "Klone ohne Original werden zu regulären Objekten umgewandelt." -#: ../src/ui/dialog/inkscape-preferences.cpp:1284 +#: ../src/ui/dialog/inkscape-preferences.cpp:1292 msgid "Orphaned clones are deleted along with their original" msgstr "Klone werden zusammen mit ihrem Original gelöscht." -#: ../src/ui/dialog/inkscape-preferences.cpp:1286 +#: ../src/ui/dialog/inkscape-preferences.cpp:1294 msgid "Duplicating original+clones/linked offset" msgstr "Duplizieren Original+Klone/verbundener Versatz" -#: ../src/ui/dialog/inkscape-preferences.cpp:1288 +#: ../src/ui/dialog/inkscape-preferences.cpp:1296 msgid "Relink duplicated clones" msgstr "Duplizierte Klone neu verbinden" -#: ../src/ui/dialog/inkscape-preferences.cpp:1290 +#: ../src/ui/dialog/inkscape-preferences.cpp:1298 msgid "" "When duplicating a selection containing both a clone and its original " "(possibly in groups), relink the duplicated clone to the duplicated original " @@ -18850,29 +19205,29 @@ msgstr "" "den alten Originalen." #. TRANSLATORS: Heading for the Inkscape Preferences "Clones" Page -#: ../src/ui/dialog/inkscape-preferences.cpp:1293 +#: ../src/ui/dialog/inkscape-preferences.cpp:1301 msgid "Clones" msgstr "Klone" #. Clip paths and masks options -#: ../src/ui/dialog/inkscape-preferences.cpp:1296 +#: ../src/ui/dialog/inkscape-preferences.cpp:1304 msgid "When applying, use the topmost selected object as clippath/mask" msgstr "" "Verwende das oberste ausgewählte Objekt beim Anwenden als Ausschneidepfad " "oder Maskierung" -#: ../src/ui/dialog/inkscape-preferences.cpp:1298 +#: ../src/ui/dialog/inkscape-preferences.cpp:1306 msgid "" "Uncheck this to use the bottom selected object as the clipping path or mask" msgstr "" "Nicht auswählen, um das unterste ausgewählte Objekt als Ausschneidepfad oder " "Maskierung zu verwenden" -#: ../src/ui/dialog/inkscape-preferences.cpp:1299 +#: ../src/ui/dialog/inkscape-preferences.cpp:1307 msgid "Remove clippath/mask object after applying" msgstr "Ausschneidepfad oder Maskierungsobjekt nach dem Anwenden entfernen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1301 +#: ../src/ui/dialog/inkscape-preferences.cpp:1309 msgid "" "After applying, remove the object used as the clipping path or mask from the " "drawing" @@ -18880,60 +19235,60 @@ msgstr "" "Entferne das Objekt von der Zeichnung, welches als Ausschneidepfad oder " "Maskierung verwendet wird, nach dem Anwenden" -#: ../src/ui/dialog/inkscape-preferences.cpp:1303 +#: ../src/ui/dialog/inkscape-preferences.cpp:1311 msgid "Before applying" msgstr "Vor dem Anwenden:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1305 +#: ../src/ui/dialog/inkscape-preferences.cpp:1313 msgid "Do not group clipped/masked objects" msgstr "Kein Gruppieren ausgeschnittener/maskierter Objekte" -#: ../src/ui/dialog/inkscape-preferences.cpp:1306 +#: ../src/ui/dialog/inkscape-preferences.cpp:1314 msgid "Put every clipped/masked object in its own group" msgstr "" "Jedes ausgeschnittene/maskierte Objekt in seiner eigenen Gruppe anlegen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1307 +#: ../src/ui/dialog/inkscape-preferences.cpp:1315 msgid "Put all clipped/masked objects into one group" msgstr "" "Alle ausgeschnittenen/maskierten Objekte in einer einzelne Gruppe ablegen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1310 +#: ../src/ui/dialog/inkscape-preferences.cpp:1318 msgid "Apply clippath/mask to every object" msgstr "Ausschneidungspfad/Maske auf jedes Objekt anwenden" -#: ../src/ui/dialog/inkscape-preferences.cpp:1313 +#: ../src/ui/dialog/inkscape-preferences.cpp:1321 msgid "Apply clippath/mask to groups containing single object" msgstr "" "Ausschneidungspfad/Maske auf Gruppen anwenden, die Einzelobjekte beinhalten" -#: ../src/ui/dialog/inkscape-preferences.cpp:1316 +#: ../src/ui/dialog/inkscape-preferences.cpp:1324 msgid "Apply clippath/mask to group containing all objects" msgstr "" "Ausschneidungspfad/Maske auf Gruppen anwenden, die alle Objekte beinhalten" -#: ../src/ui/dialog/inkscape-preferences.cpp:1318 +#: ../src/ui/dialog/inkscape-preferences.cpp:1326 msgid "After releasing" msgstr "Nach dem Lösen:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1320 +#: ../src/ui/dialog/inkscape-preferences.cpp:1328 msgid "Ungroup automatically created groups" msgstr "Gruppierung automatisch erstellter Gruppen aufheben" -#: ../src/ui/dialog/inkscape-preferences.cpp:1322 +#: ../src/ui/dialog/inkscape-preferences.cpp:1330 msgid "Ungroup groups created when setting clip/mask" msgstr "Gruppierung aufheben beim Setzen der Ausschneidung/Maske" -#: ../src/ui/dialog/inkscape-preferences.cpp:1324 +#: ../src/ui/dialog/inkscape-preferences.cpp:1332 msgid "Clippaths and masks" msgstr "Ausschneidepfade und Maskierungen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1327 +#: ../src/ui/dialog/inkscape-preferences.cpp:1335 msgid "Stroke Style Markers" msgstr "Strich-Stilmarkierungen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1329 -#: ../src/ui/dialog/inkscape-preferences.cpp:1331 +#: ../src/ui/dialog/inkscape-preferences.cpp:1337 +#: ../src/ui/dialog/inkscape-preferences.cpp:1339 msgid "" "Stroke color same as object, fill color either object fill color or marker " "fill color" @@ -18941,35 +19296,49 @@ msgstr "" "Konturfarbe wie Objekt, Füllfarbe entweder Objekt-Füllfarbe oder Marker-" "Füllfarbe" -#: ../src/ui/dialog/inkscape-preferences.cpp:1335 +#: ../src/ui/dialog/inkscape-preferences.cpp:1343 msgid "Markers" msgstr "Markierungen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1343 +#: ../src/ui/dialog/inkscape-preferences.cpp:1346 +msgid "Document cleanup" +msgstr "Dokumentbereinigung" + +#: ../src/ui/dialog/inkscape-preferences.cpp:1347 +#: ../src/ui/dialog/inkscape-preferences.cpp:1349 +msgid "Remove unused swatches when doing a document cleanup" +msgstr "" + +#. tooltip +#: ../src/ui/dialog/inkscape-preferences.cpp:1350 +msgid "Cleanup" +msgstr "Bereinigen" + +#: ../src/ui/dialog/inkscape-preferences.cpp:1358 msgid "Number of _Threads:" msgstr "Anzahl der Threads:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1343 -#: ../src/ui/dialog/inkscape-preferences.cpp:1858 +#: ../src/ui/dialog/inkscape-preferences.cpp:1358 +#: ../src/ui/dialog/inkscape-preferences.cpp:1876 msgid "(requires restart)" msgstr "(erfordert Neustart)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1344 +#: ../src/ui/dialog/inkscape-preferences.cpp:1359 msgid "Configure number of processors/threads to use when rendering filters" msgstr "" "Konfiguration der Anzahl an Prozessoren/Threads, die für das Rendern genutzt " "werden sollen." -#: ../src/ui/dialog/inkscape-preferences.cpp:1348 +#: ../src/ui/dialog/inkscape-preferences.cpp:1363 msgid "Rendering _cache size:" msgstr "Rendering-Cachegröße:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1348 +#: ../src/ui/dialog/inkscape-preferences.cpp:1363 msgctxt "mebibyte (2^20 bytes) abbreviation" msgid "MiB" msgstr "MiB" -#: ../src/ui/dialog/inkscape-preferences.cpp:1348 +#: ../src/ui/dialog/inkscape-preferences.cpp:1363 msgid "" "Set the amount of memory per document which can be used to store rendered " "parts of the drawing for later reuse; set to zero to disable caching" @@ -18980,37 +19349,37 @@ msgstr "" #. blur quality #. filter quality -#: ../src/ui/dialog/inkscape-preferences.cpp:1351 -#: ../src/ui/dialog/inkscape-preferences.cpp:1375 +#: ../src/ui/dialog/inkscape-preferences.cpp:1366 +#: ../src/ui/dialog/inkscape-preferences.cpp:1390 msgid "Best quality (slowest)" msgstr "Beste Qualität (am langsamsten)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1353 -#: ../src/ui/dialog/inkscape-preferences.cpp:1377 +#: ../src/ui/dialog/inkscape-preferences.cpp:1368 +#: ../src/ui/dialog/inkscape-preferences.cpp:1392 msgid "Better quality (slower)" msgstr "Gute Qualität (langsamer)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1355 -#: ../src/ui/dialog/inkscape-preferences.cpp:1379 +#: ../src/ui/dialog/inkscape-preferences.cpp:1370 +#: ../src/ui/dialog/inkscape-preferences.cpp:1394 msgid "Average quality" msgstr "Durchschnittliche Qualität" -#: ../src/ui/dialog/inkscape-preferences.cpp:1357 -#: ../src/ui/dialog/inkscape-preferences.cpp:1381 +#: ../src/ui/dialog/inkscape-preferences.cpp:1372 +#: ../src/ui/dialog/inkscape-preferences.cpp:1396 msgid "Lower quality (faster)" msgstr "Niedrigere Qualität (schneller)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1359 -#: ../src/ui/dialog/inkscape-preferences.cpp:1383 +#: ../src/ui/dialog/inkscape-preferences.cpp:1374 +#: ../src/ui/dialog/inkscape-preferences.cpp:1398 msgid "Lowest quality (fastest)" msgstr "Niedrigste Qualität (am schnellsten)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1362 +#: ../src/ui/dialog/inkscape-preferences.cpp:1377 msgid "Gaussian blur quality for display" msgstr "Anzeige Qualität des Gaußschen Weichzeichners:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1364 -#: ../src/ui/dialog/inkscape-preferences.cpp:1388 +#: ../src/ui/dialog/inkscape-preferences.cpp:1379 +#: ../src/ui/dialog/inkscape-preferences.cpp:1403 msgid "" "Best quality, but display may be very slow at high zooms (bitmap export " "always uses best quality)" @@ -19018,124 +19387,129 @@ msgstr "" "Beste Qualität, aber die Anzeige kann bei hohen Zoomstufen sehr langsam sein " "(Bitmap-Export verwendet immer diese Einstellung)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1366 -#: ../src/ui/dialog/inkscape-preferences.cpp:1390 +#: ../src/ui/dialog/inkscape-preferences.cpp:1381 +#: ../src/ui/dialog/inkscape-preferences.cpp:1405 msgid "Better quality, but slower display" msgstr "Bessere Qualität, aber langsamere Anzeige" -#: ../src/ui/dialog/inkscape-preferences.cpp:1368 -#: ../src/ui/dialog/inkscape-preferences.cpp:1392 +#: ../src/ui/dialog/inkscape-preferences.cpp:1383 +#: ../src/ui/dialog/inkscape-preferences.cpp:1407 msgid "Average quality, acceptable display speed" msgstr "Durchschnittliche Qualität, akzeptable Geschwindigkeit der Anzeige" -#: ../src/ui/dialog/inkscape-preferences.cpp:1370 -#: ../src/ui/dialog/inkscape-preferences.cpp:1394 +#: ../src/ui/dialog/inkscape-preferences.cpp:1385 +#: ../src/ui/dialog/inkscape-preferences.cpp:1409 msgid "Lower quality (some artifacts), but display is faster" msgstr "Niedrigere Qualität (einige Artefakte), aber schnellere Anzeige" -#: ../src/ui/dialog/inkscape-preferences.cpp:1372 -#: ../src/ui/dialog/inkscape-preferences.cpp:1396 +#: ../src/ui/dialog/inkscape-preferences.cpp:1387 +#: ../src/ui/dialog/inkscape-preferences.cpp:1411 msgid "Lowest quality (considerable artifacts), but display is fastest" msgstr "Niedrigste Qualität (beträchtliche Artefakte), aber schnellste Anzeige" -#: ../src/ui/dialog/inkscape-preferences.cpp:1386 +#: ../src/ui/dialog/inkscape-preferences.cpp:1401 msgid "Filter effects quality for display" msgstr "Effekt-Qualität für Anzeige:" #. build custom preferences tab -#: ../src/ui/dialog/inkscape-preferences.cpp:1398 +#: ../src/ui/dialog/inkscape-preferences.cpp:1413 #: ../src/ui/dialog/print.cpp:224 msgid "Rendering" msgstr "Rendern" -#: ../src/ui/dialog/inkscape-preferences.cpp:1404 +#: ../src/ui/dialog/inkscape-preferences.cpp:1419 msgid "2x2" msgstr "2×2" -#: ../src/ui/dialog/inkscape-preferences.cpp:1404 +#: ../src/ui/dialog/inkscape-preferences.cpp:1419 msgid "4x4" msgstr "4×4" -#: ../src/ui/dialog/inkscape-preferences.cpp:1404 +#: ../src/ui/dialog/inkscape-preferences.cpp:1419 msgid "8x8" msgstr "8×8" -#: ../src/ui/dialog/inkscape-preferences.cpp:1404 +#: ../src/ui/dialog/inkscape-preferences.cpp:1419 msgid "16x16" msgstr "16×16" -#: ../src/ui/dialog/inkscape-preferences.cpp:1408 +#: ../src/ui/dialog/inkscape-preferences.cpp:1423 msgid "Oversample bitmaps:" msgstr "Bitmap Überabtastung:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1411 +#: ../src/ui/dialog/inkscape-preferences.cpp:1426 msgid "Automatically reload bitmaps" msgstr "Automatisches Aktualisieren von Bildern" -#: ../src/ui/dialog/inkscape-preferences.cpp:1413 +#: ../src/ui/dialog/inkscape-preferences.cpp:1428 msgid "Automatically reload linked images when file is changed on disk" msgstr "Bilder neu laden, wenn diese auf dem Datenträger geändert wurden." -#: ../src/ui/dialog/inkscape-preferences.cpp:1415 +#: ../src/ui/dialog/inkscape-preferences.cpp:1430 msgid "_Bitmap editor:" msgstr "_Bitmap-Editor:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1417 +#: ../src/ui/dialog/inkscape-preferences.cpp:1432 msgid "Default export _resolution:" msgstr "Standard-Exportauflösung:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1418 +#: ../src/ui/dialog/inkscape-preferences.cpp:1433 msgid "Default bitmap resolution (in dots per inch) in the Export dialog" msgstr "" "Bevorzugte Auflösung der Bitmap (Punkte pro Zoll) im Exportieren-Dialog" -#: ../src/ui/dialog/inkscape-preferences.cpp:1420 +#: ../src/ui/dialog/inkscape-preferences.cpp:1435 msgid "Resolution for Create Bitmap _Copy:" msgstr "Auflösung von Bitmap Kopien:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1421 +#: ../src/ui/dialog/inkscape-preferences.cpp:1436 msgid "Resolution used by the Create Bitmap Copy command" msgstr "Auflösung von Bildern die mit \"Kopiere als Bitmap\" erstellt werden." -#: ../src/ui/dialog/inkscape-preferences.cpp:1423 +#: ../src/ui/dialog/inkscape-preferences.cpp:1438 msgid "Always embed" msgstr "Immer einbetten" -#: ../src/ui/dialog/inkscape-preferences.cpp:1423 +#: ../src/ui/dialog/inkscape-preferences.cpp:1438 msgid "Always link" msgstr "Immer verlinken" -#: ../src/ui/dialog/inkscape-preferences.cpp:1423 +#: ../src/ui/dialog/inkscape-preferences.cpp:1438 msgid "Ask" msgstr "Fragen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1426 +#: ../src/ui/dialog/inkscape-preferences.cpp:1441 msgid "Bitmap import:" msgstr "Bitmap-Import:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1429 +#: ../src/ui/dialog/inkscape-preferences.cpp:1444 +#, fuzzy +msgid "Bitmap import quality:" +msgstr "Bitmap-Import:" + +#: ../src/ui/dialog/inkscape-preferences.cpp:1447 msgid "Default _import resolution:" msgstr "Standard-Importauflösung:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1430 +#: ../src/ui/dialog/inkscape-preferences.cpp:1448 msgid "Default bitmap resolution (in dots per inch) for bitmap import" msgstr "Standard-Bitmapauflösung (Punkte pro Zoll) für Bitmap-Import" -#: ../src/ui/dialog/inkscape-preferences.cpp:1431 +#: ../src/ui/dialog/inkscape-preferences.cpp:1449 msgid "Override file resolution" msgstr "Datei-Auflösung überschreiben" -#: ../src/ui/dialog/inkscape-preferences.cpp:1433 +#: ../src/ui/dialog/inkscape-preferences.cpp:1451 msgid "Use default bitmap resolution in favor of information from file" msgstr "" "Verwenden Sie Standard-Bitmap-Auflösung zu Gunsten von Informationen aus der " "Datei" -#: ../src/ui/dialog/inkscape-preferences.cpp:1435 +#: ../src/ui/dialog/inkscape-preferences.cpp:1453 msgid "Bitmaps" msgstr "Bitmaps" -#: ../src/ui/dialog/inkscape-preferences.cpp:1447 +#: ../src/ui/dialog/inkscape-preferences.cpp:1465 msgid "" "Select a file of predefined shortcuts to use. Any customized shortcuts you " "create will be added seperately to " @@ -19143,31 +19517,31 @@ msgstr "" "Wählen Sie eine Datei mit vorderfinierten Tastaturkürzeln. Jeder " "benutzerdefinierte Kürzel der erstellt wird, wird separat hinzugefügt zu" -#: ../src/ui/dialog/inkscape-preferences.cpp:1450 +#: ../src/ui/dialog/inkscape-preferences.cpp:1468 msgid "Shortcut file:" msgstr "Tastenkürzel-Datei:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1453 +#: ../src/ui/dialog/inkscape-preferences.cpp:1471 msgid "Search:" msgstr "Suchen:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1465 +#: ../src/ui/dialog/inkscape-preferences.cpp:1483 msgid "Shortcut" msgstr "Tastenkürzel" -#: ../src/ui/dialog/inkscape-preferences.cpp:1466 +#: ../src/ui/dialog/inkscape-preferences.cpp:1484 #: ../src/ui/widget/page-sizer.cpp:262 msgid "Description" msgstr "Beschreibung" -#: ../src/ui/dialog/inkscape-preferences.cpp:1521 -#: ../src/ui/dialog/svg-fonts-dialog.cpp:692 +#: ../src/ui/dialog/inkscape-preferences.cpp:1539 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:694 #: ../src/ui/dialog/tracedialog.cpp:813 -#: ../src/ui/widget/preferences-widget.cpp:743 +#: ../src/ui/widget/preferences-widget.cpp:749 msgid "Reset" msgstr " _Zurücksetzen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1521 +#: ../src/ui/dialog/inkscape-preferences.cpp:1539 msgid "" "Remove all your customized keyboard shortcuts, and revert to the shortcuts " "in the shortcut file listed above" @@ -19175,40 +19549,40 @@ msgstr "" "Alle individuellen Tastaturkürzel entfernen und zurück zu den Verknüpfungen " "in der Shortcut-Datei der oben aufgeführten" -#: ../src/ui/dialog/inkscape-preferences.cpp:1525 +#: ../src/ui/dialog/inkscape-preferences.cpp:1543 msgid "Import ..." msgstr "_Importieren…" -#: ../src/ui/dialog/inkscape-preferences.cpp:1525 +#: ../src/ui/dialog/inkscape-preferences.cpp:1543 msgid "Import custom keyboard shortcuts from a file" msgstr "Importieren einer benutzerdefinierten Tastaturkürzel-Datei" -#: ../src/ui/dialog/inkscape-preferences.cpp:1528 +#: ../src/ui/dialog/inkscape-preferences.cpp:1546 msgid "Export ..." msgstr "_Exportieren…" -#: ../src/ui/dialog/inkscape-preferences.cpp:1528 +#: ../src/ui/dialog/inkscape-preferences.cpp:1546 msgid "Export custom keyboard shortcuts to a file" msgstr "Benutzerdefinierte Tastaturkürzel in eine Datei exportieren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1538 +#: ../src/ui/dialog/inkscape-preferences.cpp:1556 msgid "Keyboard Shortcuts" msgstr "Tastaturkürzel" #. Find this group in the tree -#: ../src/ui/dialog/inkscape-preferences.cpp:1701 +#: ../src/ui/dialog/inkscape-preferences.cpp:1719 msgid "Misc" msgstr "Sonstiges" -#: ../src/ui/dialog/inkscape-preferences.cpp:1820 +#: ../src/ui/dialog/inkscape-preferences.cpp:1838 msgid "Set the main spell check language" msgstr "Setzen der Hauptsprache der Rechtschreibprüfung" -#: ../src/ui/dialog/inkscape-preferences.cpp:1823 +#: ../src/ui/dialog/inkscape-preferences.cpp:1841 msgid "Second language:" msgstr "Zweite Sprache:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1824 +#: ../src/ui/dialog/inkscape-preferences.cpp:1842 msgid "" "Set the second spell check language; checking will only stop on words " "unknown in ALL chosen languages" @@ -19216,11 +19590,11 @@ msgstr "" "Setzen der zweiten Sprache der Rechtschreibprüfung; die Prüfung stoppt nur " "bei Wörtern, die in allen ausgewählten Sprachen unbekannt sind." -#: ../src/ui/dialog/inkscape-preferences.cpp:1827 +#: ../src/ui/dialog/inkscape-preferences.cpp:1845 msgid "Third language:" msgstr "Dritte Sprache:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1828 +#: ../src/ui/dialog/inkscape-preferences.cpp:1846 msgid "" "Set the third spell check language; checking will only stop on words unknown " "in ALL chosen languages" @@ -19228,31 +19602,31 @@ msgstr "" "Setzen der dritten Sprache der Rechtschreibprüfung; die Prüfung stoppt nur " "bei Wörtern, die in allen ausgewählten Sprachen unbekannt sind." -#: ../src/ui/dialog/inkscape-preferences.cpp:1830 +#: ../src/ui/dialog/inkscape-preferences.cpp:1848 msgid "Ignore words with digits" msgstr "Ignoriere Wörter mit Zahlen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1832 +#: ../src/ui/dialog/inkscape-preferences.cpp:1850 msgid "Ignore words containing digits, such as \"R2D2\"" msgstr "Ignoriere Wörter mit Zahlen, wie \"R2D2\"" -#: ../src/ui/dialog/inkscape-preferences.cpp:1834 +#: ../src/ui/dialog/inkscape-preferences.cpp:1852 msgid "Ignore words in ALL CAPITALS" msgstr "Ignoriere Wörter die GROSSGESCHRIEBEN sind" -#: ../src/ui/dialog/inkscape-preferences.cpp:1836 +#: ../src/ui/dialog/inkscape-preferences.cpp:1854 msgid "Ignore words in all capitals, such as \"IUPAC\"" msgstr "Ignoriere Wörter die GROSSGESCHRIEBEN sind, wie \"IUPAC\"" -#: ../src/ui/dialog/inkscape-preferences.cpp:1838 +#: ../src/ui/dialog/inkscape-preferences.cpp:1856 msgid "Spellcheck" msgstr "Rechtschreibprüfung" -#: ../src/ui/dialog/inkscape-preferences.cpp:1858 +#: ../src/ui/dialog/inkscape-preferences.cpp:1876 msgid "Latency _skew:" msgstr "Latenz-Schrägstellung:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1859 +#: ../src/ui/dialog/inkscape-preferences.cpp:1877 msgid "" "Factor by which the event clock is skewed from the actual time (0.9766 on " "some systems)" @@ -19260,11 +19634,11 @@ msgstr "" "Faktor, um den die Ereigniszeit gegenüber der Systemzeit verlangsamt wird " "(0,9766 auf manchen Systemen)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1861 +#: ../src/ui/dialog/inkscape-preferences.cpp:1879 msgid "Pre-render named icons" msgstr "Symbole mit Namen im Voraus rendern" -#: ../src/ui/dialog/inkscape-preferences.cpp:1863 +#: ../src/ui/dialog/inkscape-preferences.cpp:1881 msgid "" "When on, named icons will be rendered before displaying the ui. This is for " "working around bugs in GTK+ named icon notification" @@ -19272,83 +19646,83 @@ msgstr "" "Benannte Icons werden gerendert, bevor die Benutzeroberfläche dargestellt " "wird. Damit werden Fehler in der GTK+-Hinweisen zu benannten Icons umgangen." -#: ../src/ui/dialog/inkscape-preferences.cpp:1871 +#: ../src/ui/dialog/inkscape-preferences.cpp:1889 msgid "System info" msgstr "System-Information" -#: ../src/ui/dialog/inkscape-preferences.cpp:1875 +#: ../src/ui/dialog/inkscape-preferences.cpp:1893 msgid "User config: " msgstr "Benutzerkonfiguration:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1875 +#: ../src/ui/dialog/inkscape-preferences.cpp:1893 msgid "Location of users configuration" msgstr "Ort der Benutzerkonfiguration" -#: ../src/ui/dialog/inkscape-preferences.cpp:1879 +#: ../src/ui/dialog/inkscape-preferences.cpp:1897 msgid "User preferences: " msgstr "Benutzereinstellungen:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1879 +#: ../src/ui/dialog/inkscape-preferences.cpp:1897 msgid "Location of the users preferences file" msgstr "Ort der Benutzer-Einstellungsdatei" -#: ../src/ui/dialog/inkscape-preferences.cpp:1883 +#: ../src/ui/dialog/inkscape-preferences.cpp:1901 msgid "User extensions: " msgstr "Benutzererweiterungen:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1883 +#: ../src/ui/dialog/inkscape-preferences.cpp:1901 msgid "Location of the users extensions" msgstr "Ort der Benutzer-Erweiterungen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1887 +#: ../src/ui/dialog/inkscape-preferences.cpp:1905 msgid "User cache: " msgstr "Benutzer Cache:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1887 +#: ../src/ui/dialog/inkscape-preferences.cpp:1905 msgid "Location of users cache" msgstr "Ort des Benutzer-Caches" -#: ../src/ui/dialog/inkscape-preferences.cpp:1895 +#: ../src/ui/dialog/inkscape-preferences.cpp:1913 msgid "Temporary files: " msgstr "Temporäre Dateien:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1895 +#: ../src/ui/dialog/inkscape-preferences.cpp:1913 msgid "Location of the temporary files used for autosave" msgstr "Ort der temp. Dateien, die für Auto-Speicherung verwendet werden" -#: ../src/ui/dialog/inkscape-preferences.cpp:1899 +#: ../src/ui/dialog/inkscape-preferences.cpp:1917 msgid "Inkscape data: " msgstr "Inkscapedaten:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1899 +#: ../src/ui/dialog/inkscape-preferences.cpp:1917 msgid "Location of Inkscape data" msgstr "Ort der Inkscapedaten" -#: ../src/ui/dialog/inkscape-preferences.cpp:1903 +#: ../src/ui/dialog/inkscape-preferences.cpp:1921 msgid "Inkscape extensions: " msgstr "Inkscape-Erweiterungen:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1903 +#: ../src/ui/dialog/inkscape-preferences.cpp:1921 msgid "Location of the Inkscape extensions" msgstr "Ort der Inkscape-Erweiterungen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1912 +#: ../src/ui/dialog/inkscape-preferences.cpp:1930 msgid "System data: " msgstr "System" -#: ../src/ui/dialog/inkscape-preferences.cpp:1912 +#: ../src/ui/dialog/inkscape-preferences.cpp:1930 msgid "Locations of system data" msgstr "Ort der Systemdaten" -#: ../src/ui/dialog/inkscape-preferences.cpp:1936 +#: ../src/ui/dialog/inkscape-preferences.cpp:1954 msgid "Icon theme: " msgstr "Icon Thema:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1936 +#: ../src/ui/dialog/inkscape-preferences.cpp:1954 msgid "Locations of icon themes" msgstr "Ort der Icon-Themen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1938 +#: ../src/ui/dialog/inkscape-preferences.cpp:1956 msgid "System" msgstr "System" @@ -19410,7 +19784,7 @@ msgstr "Unterlage" msgid "_Use pressure-sensitive tablet (requires restart)" msgstr "Druckempfindliches Grafiktablett verwenden (erfordert Neustart)" -#: ../src/ui/dialog/input.cpp:1082 ../src/verbs.cpp:2297 +#: ../src/ui/dialog/input.cpp:1082 ../src/verbs.cpp:2302 msgid "_Save" msgstr "_Speichern" @@ -19431,16 +19805,8 @@ msgstr "" "gesamten 'Bildschirm' gemappt oder in ein einzelnes (normalerweise das " "aktive) 'Fenster'" -#: ../src/ui/dialog/input.cpp:1616 ../src/ui/dialog/layers.cpp:913 -msgid "X" -msgstr "X" - -#: ../src/ui/dialog/input.cpp:1616 -msgid "Y" -msgstr "Y:" - -#: ../src/ui/dialog/input.cpp:1616 ../src/widgets/calligraphy-toolbar.cpp:601 -#: ../src/widgets/spray-toolbar.cpp:241 ../src/widgets/tweak-toolbar.cpp:391 +#: ../src/ui/dialog/input.cpp:1616 ../src/widgets/calligraphy-toolbar.cpp:599 +#: ../src/widgets/spray-toolbar.cpp:240 ../src/widgets/tweak-toolbar.cpp:390 msgid "Pressure" msgstr "Druck" @@ -19483,8 +19849,8 @@ msgstr "Ebene umbenennen" #. TODO: find an unused layer number, forming name from _("Layer ") + "%d" #: ../src/ui/dialog/layer-properties.cpp:354 -#: ../src/ui/dialog/layer-properties.cpp:410 ../src/verbs.cpp:188 -#: ../src/verbs.cpp:2228 +#: ../src/ui/dialog/layer-properties.cpp:410 ../src/verbs.cpp:193 +#: ../src/verbs.cpp:2233 msgid "Layer" msgstr "Ebene" @@ -19492,7 +19858,7 @@ msgstr "Ebene" msgid "_Rename" msgstr "_Umbenennen" -#: ../src/ui/dialog/layer-properties.cpp:368 ../src/ui/dialog/layers.cpp:747 +#: ../src/ui/dialog/layer-properties.cpp:368 ../src/ui/dialog/layers.cpp:749 msgid "Rename layer" msgstr "Ebene umbenennen" @@ -19518,59 +19884,59 @@ msgid "Move to Layer" msgstr "Zur Ebene verschieben" #: ../src/ui/dialog/layer-properties.cpp:411 -#: ../src/ui/dialog/transformation.cpp:109 +#: ../src/ui/dialog/transformation.cpp:113 msgid "_Move" msgstr "_Verschieben" -#: ../src/ui/dialog/layers.cpp:523 ../src/ui/widget/layer-selector.cpp:613 +#: ../src/ui/dialog/layers.cpp:524 ../src/ui/widget/layer-selector.cpp:613 msgid "Unhide layer" msgstr "Ebene einblenden" -#: ../src/ui/dialog/layers.cpp:523 ../src/ui/widget/layer-selector.cpp:613 +#: ../src/ui/dialog/layers.cpp:524 ../src/ui/widget/layer-selector.cpp:613 msgid "Hide layer" msgstr "Ebene ausblenden" -#: ../src/ui/dialog/layers.cpp:534 ../src/ui/widget/layer-selector.cpp:605 +#: ../src/ui/dialog/layers.cpp:535 ../src/ui/widget/layer-selector.cpp:605 msgid "Lock layer" msgstr "Ebene sperren" -#: ../src/ui/dialog/layers.cpp:534 ../src/ui/widget/layer-selector.cpp:605 +#: ../src/ui/dialog/layers.cpp:535 ../src/ui/widget/layer-selector.cpp:605 msgid "Unlock layer" msgstr "Ebene entsperren" -#: ../src/ui/dialog/layers.cpp:621 ../src/verbs.cpp:1343 +#: ../src/ui/dialog/layers.cpp:623 ../src/verbs.cpp:1348 msgid "Toggle layer solo" msgstr "Sichbarkeit der aktuellen Ebene umschalten" -#: ../src/ui/dialog/layers.cpp:624 ../src/verbs.cpp:1367 +#: ../src/ui/dialog/layers.cpp:626 ../src/verbs.cpp:1372 msgid "Lock other layers" msgstr "Anderen Ebene sperren" -#: ../src/ui/dialog/layers.cpp:718 +#: ../src/ui/dialog/layers.cpp:720 msgid "Moved layer" msgstr "Verschobene Ebene" -#: ../src/ui/dialog/layers.cpp:880 +#: ../src/ui/dialog/layers.cpp:882 msgctxt "Layers" msgid "New" msgstr "Neu" -#: ../src/ui/dialog/layers.cpp:885 +#: ../src/ui/dialog/layers.cpp:887 msgctxt "Layers" msgid "Bot" msgstr "Unten" -#: ../src/ui/dialog/layers.cpp:891 +#: ../src/ui/dialog/layers.cpp:893 msgctxt "Layers" msgid "Dn" msgstr "Runter" -#: ../src/ui/dialog/layers.cpp:897 +#: ../src/ui/dialog/layers.cpp:899 msgctxt "Layers" msgid "Up" msgstr "Hoch" -#: ../src/ui/dialog/layers.cpp:903 +#: ../src/ui/dialog/layers.cpp:905 msgctxt "Layers" msgid "Top" msgstr "Oben" @@ -19726,6 +20092,18 @@ msgstr "Actuate:" msgid "URL:" msgstr "URL:" +#: ../src/ui/dialog/object-attributes.cpp:66 +#: ../src/ui/dialog/object-attributes.cpp:74 ../src/ui/dialog/tile.cpp:618 +#: ../src/widgets/desktop-widget.cpp:666 ../src/widgets/node-toolbar.cpp:590 +msgid "X:" +msgstr "X:" + +#: ../src/ui/dialog/object-attributes.cpp:67 +#: ../src/ui/dialog/object-attributes.cpp:75 ../src/ui/dialog/tile.cpp:619 +#: ../src/widgets/desktop-widget.cpp:676 ../src/widgets/node-toolbar.cpp:608 +msgid "Y:" +msgstr "Y:" + #: ../src/ui/dialog/object-properties.cpp:61 #: ../src/ui/dialog/object-properties.cpp:362 #: ../src/ui/dialog/object-properties.cpp:419 @@ -19749,8 +20127,8 @@ msgstr "_Ausblenden" msgid "L_ock" msgstr "_Sperren" -#: ../src/ui/dialog/object-properties.cpp:74 ../src/verbs.cpp:2568 -#: ../src/verbs.cpp:2574 +#: ../src/ui/dialog/object-properties.cpp:74 ../src/verbs.cpp:2573 +#: ../src/verbs.cpp:2579 msgid "_Set" msgstr "_Setzen" @@ -19827,47 +20205,47 @@ msgstr "Objekte ausblenden" msgid "Unhide object" msgstr "Ausgeblendete Objekte anzeigen" -#: ../src/ui/dialog/ocaldialogs.cpp:707 +#: ../src/ui/dialog/ocaldialogs.cpp:713 msgid "Clipart found" msgstr "Clipart gefunden" -#: ../src/ui/dialog/ocaldialogs.cpp:756 +#: ../src/ui/dialog/ocaldialogs.cpp:762 msgid "Downloading image..." msgstr "Herunterladen des Bildes" -#: ../src/ui/dialog/ocaldialogs.cpp:904 +#: ../src/ui/dialog/ocaldialogs.cpp:910 msgid "Could not download image" msgstr "Konnte Bild nicht herunterladen" -#: ../src/ui/dialog/ocaldialogs.cpp:914 +#: ../src/ui/dialog/ocaldialogs.cpp:920 msgid "Clipart downloaded successfully" msgstr "Clipart erfolgreich heruntergeladen" -#: ../src/ui/dialog/ocaldialogs.cpp:928 +#: ../src/ui/dialog/ocaldialogs.cpp:934 msgid "Could not download thumbnail file" msgstr "Konnte Vorschaubild nicht herunterladen" -#: ../src/ui/dialog/ocaldialogs.cpp:1003 +#: ../src/ui/dialog/ocaldialogs.cpp:1009 msgid "No description" msgstr "Keine Beschreibung" -#: ../src/ui/dialog/ocaldialogs.cpp:1071 +#: ../src/ui/dialog/ocaldialogs.cpp:1077 msgid "Searching clipart..." msgstr "Suche Clipart..." -#: ../src/ui/dialog/ocaldialogs.cpp:1091 ../src/ui/dialog/ocaldialogs.cpp:1112 +#: ../src/ui/dialog/ocaldialogs.cpp:1097 ../src/ui/dialog/ocaldialogs.cpp:1118 msgid "Could not connect to the Open Clip Art Library" msgstr "Konnte nicht zu Open Clip Art Library verbinden" -#: ../src/ui/dialog/ocaldialogs.cpp:1137 +#: ../src/ui/dialog/ocaldialogs.cpp:1143 msgid "Could not parse search results" msgstr "Konnte Suchergebnisse nicht analysieren" -#: ../src/ui/dialog/ocaldialogs.cpp:1171 +#: ../src/ui/dialog/ocaldialogs.cpp:1177 msgid "No clipart named %1 was found." msgstr "Kein Clipart mit Namen %1 gefunden." -#: ../src/ui/dialog/ocaldialogs.cpp:1173 +#: ../src/ui/dialog/ocaldialogs.cpp:1179 msgid "" "Please make sure all keywords are spelled correctly, or try again with " "different keywords." @@ -19875,11 +20253,11 @@ msgstr "" "Bitte stellen Sie sicher, dass alle Schlüsselwörter richtig eingegeben " "wurden, oder versuchen Sie es mit anderen Suchbegriffen." -#: ../src/ui/dialog/ocaldialogs.cpp:1225 +#: ../src/ui/dialog/ocaldialogs.cpp:1231 msgid "Search" msgstr "Suchen" -#: ../src/ui/dialog/ocaldialogs.cpp:1237 +#: ../src/ui/dialog/ocaldialogs.cpp:1243 msgid "Close" msgstr "S_chließen" @@ -19906,7 +20284,7 @@ msgid "Print" msgstr "Drucken" #. ## Add a menu for clear() -#: ../src/ui/dialog/scriptdialog.cpp:178 ../src/verbs.cpp:131 +#: ../src/ui/dialog/scriptdialog.cpp:178 ../src/verbs.cpp:136 msgid "File" msgstr "_Datei" @@ -19934,197 +20312,201 @@ msgstr "Ausgabe" msgid "Errors" msgstr "Fehler" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:136 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:138 msgid "Set SVG Font attribute" msgstr "SVG-Schrift-Attribut setzen" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:194 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:196 msgid "Adjust kerning value" msgstr "Unterschneidung anpassen" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:384 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:386 msgid "Family Name:" msgstr "Font-Familienname:" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:394 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:396 msgid "Set width:" msgstr "Breite setzen:" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:453 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:455 msgid "glyph" msgstr "Glyphe" #. SPGlyph* glyph = -#: ../src/ui/dialog/svg-fonts-dialog.cpp:485 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:487 msgid "Add glyph" msgstr "Glyphe hinzufügen" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:519 -#: ../src/ui/dialog/svg-fonts-dialog.cpp:559 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:521 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:561 msgid "Select a path to define the curves of a glyph" msgstr "Wählen Sie einen Pfad aus, der die Form der Glyphe bestimmt." -#: ../src/ui/dialog/svg-fonts-dialog.cpp:527 -#: ../src/ui/dialog/svg-fonts-dialog.cpp:567 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:529 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:569 msgid "The selected object does not have a path description." msgstr "Ausgewähltes Objekt ist kein Pfad!" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:534 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:536 msgid "No glyph selected in the SVGFonts dialog." msgstr "Keine Glyphe gewählt im SVGFonts-Dialog" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:543 -#: ../src/ui/dialog/svg-fonts-dialog.cpp:580 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:545 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:582 msgid "Set glyph curves" msgstr "Glyphenform festlegen" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:600 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:602 msgid "Reset missing-glyph" msgstr "\"Fehlende Glyphe\" zurücksetzen" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:616 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:618 msgid "Edit glyph name" msgstr "Name der Glyphe bearbeiten" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:630 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:632 msgid "Set glyph unicode" msgstr "Unicode der Glyphe wählen" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:642 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:644 msgid "Remove font" msgstr "Schrift entfernen" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:659 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:661 msgid "Remove glyph" msgstr "Glyphe entfernen" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:676 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:678 msgid "Remove kerning pair" msgstr "Unterschneidungspaar entfernen" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:686 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:688 msgid "Missing Glyph:" msgstr "Fehlende Glyphe:" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:690 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:692 msgid "From selection..." msgstr "Aus Auswahl übernehmen" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:703 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:705 msgid "Glyph name" msgstr "Name der Glyphe" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:704 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:706 msgid "Matching string" msgstr "Passende Zeichenkette " -#: ../src/ui/dialog/svg-fonts-dialog.cpp:707 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:709 msgid "Add Glyph" msgstr "Glyphe hinzufügen" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:714 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:716 msgid "Get curves from selection..." msgstr "Kurven von der Auswahl erhalten..." -#: ../src/ui/dialog/svg-fonts-dialog.cpp:763 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:765 msgid "Add kerning pair" msgstr "Unterschneidungspaar hinzufügen" #. Kerning Setup: -#: ../src/ui/dialog/svg-fonts-dialog.cpp:771 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:773 msgid "Kerning Setup" msgstr "Unterschneidungseinstellung:" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:773 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:775 msgid "1st Glyph:" msgstr "1. Glyphe:" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:775 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:777 msgid "2nd Glyph:" msgstr "2. Glyphe:" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:778 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:780 msgid "Add pair" msgstr "Paarung hinzufügen" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:790 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:792 msgid "First Unicode range" msgstr "Erster Unicodebereich" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:791 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:793 msgid "Second Unicode range" msgstr "Zweiter Unicode-Bereich" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:798 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:800 msgid "Kerning value:" msgstr "Unterschneidungswert:" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:856 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:858 msgid "Set font family" msgstr "Schriftfamilie setzen" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:865 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:867 msgid "font" msgstr "Schrift" #. select_font(font); -#: ../src/ui/dialog/svg-fonts-dialog.cpp:880 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:882 msgid "Add font" msgstr "Schrift hinzufügen" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:914 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:916 msgid "_Global Settings" msgstr "_Globale Einstellungen" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:915 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:917 msgid "_Glyphs" msgstr "_Glyphen" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:916 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:918 msgid "_Kerning" msgstr "_Unterschneidung" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:923 -#: ../src/ui/dialog/svg-fonts-dialog.cpp:924 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:925 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:926 msgid "Sample Text" msgstr "Beispieltext" -#: ../src/ui/dialog/svg-fonts-dialog.cpp:928 +#: ../src/ui/dialog/svg-fonts-dialog.cpp:930 msgid "Preview Text:" msgstr "Textvorschau:" #. ******************* Symbol Sets ************************ -#: ../src/ui/dialog/symbols.cpp:120 +#: ../src/ui/dialog/symbols.cpp:127 msgid "Symbol set: " msgstr "Symbolsatz:" #. Fill in later -#: ../src/ui/dialog/symbols.cpp:129 ../src/ui/dialog/symbols.cpp:130 +#: ../src/ui/dialog/symbols.cpp:136 ../src/ui/dialog/symbols.cpp:137 msgid "Current Document" msgstr "Aktuelles Dokument" -#. ******************* Preview Scale ********************** -#: ../src/ui/dialog/symbols.cpp:179 -msgid "Preview scale: " -msgstr "Vorschauskalierung:" +#: ../src/ui/dialog/symbols.cpp:204 +#, fuzzy +msgid "Add Symbol from the current document." +msgstr "Aktuelle Ebene vereinzeln" -# ??? Check! -#: ../src/ui/dialog/symbols.cpp:189 -msgid "Fit" -msgstr "Einpassen" +#: ../src/ui/dialog/symbols.cpp:213 +#, fuzzy +msgid "Remove Symbol from the current document." +msgstr "Stopp für derzeitigen Farbverlauf auswählen" -#: ../src/ui/dialog/symbols.cpp:189 -msgid "Fit to width" -msgstr "Einpassen zur Breite" +#: ../src/ui/dialog/symbols.cpp:226 +msgid "Make Icons bigger by zooming in." +msgstr "Vergrößere die Icons durch Hineinzoomen." -#: ../src/ui/dialog/symbols.cpp:189 -msgid "Fit to height" -msgstr "Einpassen zur Höhe" +#: ../src/ui/dialog/symbols.cpp:235 +msgid "Make Icons smaller by zooming out." +msgstr "Icons verkleinern durch Herauszoomen" -#. ******************* Preview Size *********************** -#: ../src/ui/dialog/symbols.cpp:209 -msgid "Preview size: " -msgstr "Vorschaugröße:" +#: ../src/ui/dialog/symbols.cpp:244 +msgid "Toggle 'fit' symbols in icon space." +msgstr "" + +#: ../src/ui/dialog/symbols.cpp:557 +#, fuzzy +msgid "Unnamed Symbols" +msgstr "Khmer (km) Symbole" #. TRANSLATORS: An item in context menu on a colour in the swatches #: ../src/ui/dialog/swatches.cpp:258 @@ -20489,42 +20871,42 @@ msgstr "Nachzeichnen abbrechen" msgid "Execute the trace" msgstr "Nachzeichnen ausführen" -#: ../src/ui/dialog/transformation.cpp:71 -#: ../src/ui/dialog/transformation.cpp:81 +#: ../src/ui/dialog/transformation.cpp:75 +#: ../src/ui/dialog/transformation.cpp:85 msgid "_Horizontal:" msgstr "_Horizontal:" -#: ../src/ui/dialog/transformation.cpp:71 +#: ../src/ui/dialog/transformation.cpp:75 msgid "Horizontal displacement (relative) or position (absolute)" msgstr "Horizontale Verschiebung (relativ) oder Position (absolut)" -#: ../src/ui/dialog/transformation.cpp:73 -#: ../src/ui/dialog/transformation.cpp:83 +#: ../src/ui/dialog/transformation.cpp:77 +#: ../src/ui/dialog/transformation.cpp:87 msgid "_Vertical:" msgstr "_Vertikal:" -#: ../src/ui/dialog/transformation.cpp:73 +#: ../src/ui/dialog/transformation.cpp:77 msgid "Vertical displacement (relative) or position (absolute)" msgstr "Vertikale Verschiebung (relativ) oder Position (absolut)" -#: ../src/ui/dialog/transformation.cpp:75 +#: ../src/ui/dialog/transformation.cpp:79 msgid "Horizontal size (absolute or percentage of current)" msgstr "Horizontaler Vergrößerungsschritt (absolut oder prozentual)" -#: ../src/ui/dialog/transformation.cpp:77 +#: ../src/ui/dialog/transformation.cpp:81 msgid "Vertical size (absolute or percentage of current)" msgstr "Vertikaler Vergrößerungsschritt (absolut oder prozentual)" -#: ../src/ui/dialog/transformation.cpp:79 +#: ../src/ui/dialog/transformation.cpp:83 msgid "A_ngle:" msgstr "Winkel:" -#: ../src/ui/dialog/transformation.cpp:79 -#: ../src/ui/dialog/transformation.cpp:1064 +#: ../src/ui/dialog/transformation.cpp:83 +#: ../src/ui/dialog/transformation.cpp:1068 msgid "Rotation angle (positive = counterclockwise)" msgstr "Drehwinkel (positiv = gegen den Uhrzeigersinn)" -#: ../src/ui/dialog/transformation.cpp:81 +#: ../src/ui/dialog/transformation.cpp:85 msgid "" "Horizontal skew angle (positive = counterclockwise), or absolute " "displacement, or percentage displacement" @@ -20532,7 +20914,7 @@ msgstr "" "Horizontaler Scherwinkel (positiv = gegen den Uhrzeigersinn), oder absolute " "oder prozentuale Verschiebung" -#: ../src/ui/dialog/transformation.cpp:83 +#: ../src/ui/dialog/transformation.cpp:87 msgid "" "Vertical skew angle (positive = counterclockwise), or absolute displacement, " "or percentage displacement" @@ -20540,35 +20922,35 @@ msgstr "" "Vertikaler Scherwinkel (positiv = gegen den Uhrzeigersinn), oder absolute " "oder prozentuale Verschiebung" -#: ../src/ui/dialog/transformation.cpp:86 +#: ../src/ui/dialog/transformation.cpp:90 msgid "Transformation matrix element A" msgstr "Abbildungsmatrix, Element A" -#: ../src/ui/dialog/transformation.cpp:87 +#: ../src/ui/dialog/transformation.cpp:91 msgid "Transformation matrix element B" msgstr "Abbildungsmatrix, Element B" -#: ../src/ui/dialog/transformation.cpp:88 +#: ../src/ui/dialog/transformation.cpp:92 msgid "Transformation matrix element C" msgstr "Abbildungsmatrix, Element C" -#: ../src/ui/dialog/transformation.cpp:89 +#: ../src/ui/dialog/transformation.cpp:93 msgid "Transformation matrix element D" msgstr "Abbildungsmatrix, Element D" -#: ../src/ui/dialog/transformation.cpp:90 +#: ../src/ui/dialog/transformation.cpp:94 msgid "Transformation matrix element E" msgstr "Abbildungsmatrix, Element E" -#: ../src/ui/dialog/transformation.cpp:91 +#: ../src/ui/dialog/transformation.cpp:95 msgid "Transformation matrix element F" msgstr "Abbildungsmatrix, Element F" -#: ../src/ui/dialog/transformation.cpp:96 +#: ../src/ui/dialog/transformation.cpp:100 msgid "Rela_tive move" msgstr "_Relative Bewegung" -#: ../src/ui/dialog/transformation.cpp:96 +#: ../src/ui/dialog/transformation.cpp:100 msgid "" "Add the specified relative displacement to the current position; otherwise, " "edit the current absolute position directly" @@ -20576,19 +20958,19 @@ msgstr "" "Die angegebene relative Verschiebung zur aktuellen Position hinzuaddieren; " "anderenfalls die aktuelle absolute Position direkt ändern" -#: ../src/ui/dialog/transformation.cpp:97 +#: ../src/ui/dialog/transformation.cpp:101 msgid "_Scale proportionally" msgstr "Proportional skalieren" -#: ../src/ui/dialog/transformation.cpp:97 +#: ../src/ui/dialog/transformation.cpp:101 msgid "Preserve the width/height ratio of the scaled objects" msgstr "Das Verhältnis von Höhe und Breite der skalierten Objekte beibehalten" -#: ../src/ui/dialog/transformation.cpp:98 +#: ../src/ui/dialog/transformation.cpp:102 msgid "Apply to each _object separately" msgstr "Auf jedes _Objekt getrennt anwenden" -#: ../src/ui/dialog/transformation.cpp:98 +#: ../src/ui/dialog/transformation.cpp:102 msgid "" "Apply the scale/rotate/skew to each selected object separately; otherwise, " "transform the selection as a whole" @@ -20596,11 +20978,11 @@ msgstr "" "Skalierung/Drehung/Scherung auf jedes ausgewählte Objekt getrennt anwenden; " "anderenfalls auf die gesamte Auswahl anwenden" -#: ../src/ui/dialog/transformation.cpp:99 +#: ../src/ui/dialog/transformation.cpp:103 msgid "Edit c_urrent matrix" msgstr "_Aktuelle Matrix bearbeiten" -#: ../src/ui/dialog/transformation.cpp:99 +#: ../src/ui/dialog/transformation.cpp:103 msgid "" "Edit the current transform= matrix; otherwise, post-multiply transform= by " "this matrix" @@ -20608,43 +20990,43 @@ msgstr "" "Die aktuelle transform=-Matrix bearbeiten; andernfalls transform= hinterher " "mit dieser Matrix multiplizieren" -#: ../src/ui/dialog/transformation.cpp:112 +#: ../src/ui/dialog/transformation.cpp:116 msgid "_Scale" msgstr "_Maßstab" -#: ../src/ui/dialog/transformation.cpp:115 +#: ../src/ui/dialog/transformation.cpp:119 msgid "_Rotate" msgstr "_Drehen" -#: ../src/ui/dialog/transformation.cpp:118 +#: ../src/ui/dialog/transformation.cpp:122 msgid "Ske_w" msgstr "_Scheren" -#: ../src/ui/dialog/transformation.cpp:121 +#: ../src/ui/dialog/transformation.cpp:125 msgid "Matri_x" msgstr "Matri_x" -#: ../src/ui/dialog/transformation.cpp:145 +#: ../src/ui/dialog/transformation.cpp:149 msgid "Reset the values on the current tab to defaults" msgstr "Die Werte des aktuellen Reiters auf die Vorgabewerte setzen" -#: ../src/ui/dialog/transformation.cpp:152 +#: ../src/ui/dialog/transformation.cpp:156 msgid "Apply transformation to selection" msgstr "Transformation auf Auswahl anwenden" -#: ../src/ui/dialog/transformation.cpp:327 +#: ../src/ui/dialog/transformation.cpp:331 msgid "Rotate in a counterclockwise direction" msgstr "Entgegen Uhrzeigersinn drehen" -#: ../src/ui/dialog/transformation.cpp:333 +#: ../src/ui/dialog/transformation.cpp:337 msgid "Rotate in a clockwise direction" msgstr "Drehung im Uhrzeigersinn" -#: ../src/ui/dialog/transformation.cpp:972 +#: ../src/ui/dialog/transformation.cpp:976 msgid "Edit transformation matrix" msgstr "Abbildungsmatrix ändern" -#: ../src/ui/dialog/transformation.cpp:1071 +#: ../src/ui/dialog/transformation.cpp:1075 msgid "Rotation angle (positive = clockwise)" msgstr "Drehwinkel (positiv = im Uhrzeigersinn)" @@ -20685,95 +21067,95 @@ msgstr "" "Bezier-Segment: Ziehen, um das Segment zu formen, Doppelklick zum " "Einfügen eines Knotens oder Klicken zum Auswählen (mehr: Umschalt, Strg+Alt)" -#: ../src/ui/tool/multi-path-manipulator.cpp:323 +#: ../src/ui/tool/multi-path-manipulator.cpp:322 msgid "Retract handles" msgstr "Anfasser zurückziehen" -#: ../src/ui/tool/multi-path-manipulator.cpp:323 ../src/ui/tool/node.cpp:271 +#: ../src/ui/tool/multi-path-manipulator.cpp:322 ../src/ui/tool/node.cpp:271 msgid "Change node type" msgstr "Knotentyp ändern" -#: ../src/ui/tool/multi-path-manipulator.cpp:331 +#: ../src/ui/tool/multi-path-manipulator.cpp:330 msgid "Straighten segments" msgstr "Segmente begradigen" -#: ../src/ui/tool/multi-path-manipulator.cpp:333 +#: ../src/ui/tool/multi-path-manipulator.cpp:332 msgid "Make segments curves" msgstr "Die gewählten Abschnitte in Kurven umwandeln" -#: ../src/ui/tool/multi-path-manipulator.cpp:340 +#: ../src/ui/tool/multi-path-manipulator.cpp:339 msgid "Add nodes" msgstr "Mehrere Knoten hinzufügen" -#: ../src/ui/tool/multi-path-manipulator.cpp:345 +#: ../src/ui/tool/multi-path-manipulator.cpp:344 msgid "Add extremum nodes" msgstr "Extremwert-Knoten hinzufügen" -#: ../src/ui/tool/multi-path-manipulator.cpp:351 +#: ../src/ui/tool/multi-path-manipulator.cpp:350 msgid "Duplicate nodes" msgstr "Knoten duplizieren" -#: ../src/ui/tool/multi-path-manipulator.cpp:413 -#: ../src/widgets/node-toolbar.cpp:418 +#: ../src/ui/tool/multi-path-manipulator.cpp:412 +#: ../src/widgets/node-toolbar.cpp:417 msgid "Join nodes" msgstr "Knoten verbinden" -#: ../src/ui/tool/multi-path-manipulator.cpp:420 -#: ../src/widgets/node-toolbar.cpp:429 +#: ../src/ui/tool/multi-path-manipulator.cpp:419 +#: ../src/widgets/node-toolbar.cpp:428 msgid "Break nodes" msgstr "Knoten unterbrechen" -#: ../src/ui/tool/multi-path-manipulator.cpp:427 +#: ../src/ui/tool/multi-path-manipulator.cpp:426 msgid "Delete nodes" msgstr "Knoten löschen" -#: ../src/ui/tool/multi-path-manipulator.cpp:757 +#: ../src/ui/tool/multi-path-manipulator.cpp:756 msgid "Move nodes" msgstr "Knoten verschieben" -#: ../src/ui/tool/multi-path-manipulator.cpp:760 +#: ../src/ui/tool/multi-path-manipulator.cpp:759 msgid "Move nodes horizontally" msgstr "Knoten horizontal verschieben" -#: ../src/ui/tool/multi-path-manipulator.cpp:764 +#: ../src/ui/tool/multi-path-manipulator.cpp:763 msgid "Move nodes vertically" msgstr "Knoten vertikal verschieben" -#: ../src/ui/tool/multi-path-manipulator.cpp:768 -#: ../src/ui/tool/multi-path-manipulator.cpp:771 +#: ../src/ui/tool/multi-path-manipulator.cpp:767 +#: ../src/ui/tool/multi-path-manipulator.cpp:770 msgid "Rotate nodes" msgstr "Knoten rotieren" -#: ../src/ui/tool/multi-path-manipulator.cpp:775 -#: ../src/ui/tool/multi-path-manipulator.cpp:781 +#: ../src/ui/tool/multi-path-manipulator.cpp:774 +#: ../src/ui/tool/multi-path-manipulator.cpp:780 msgid "Scale nodes uniformly" msgstr "Knoten skalieren" -#: ../src/ui/tool/multi-path-manipulator.cpp:778 +#: ../src/ui/tool/multi-path-manipulator.cpp:777 msgid "Scale nodes" msgstr "Knoten skalieren" -#: ../src/ui/tool/multi-path-manipulator.cpp:785 +#: ../src/ui/tool/multi-path-manipulator.cpp:784 msgid "Scale nodes horizontally" msgstr "Knoten horizontal skalieren" -#: ../src/ui/tool/multi-path-manipulator.cpp:789 +#: ../src/ui/tool/multi-path-manipulator.cpp:788 msgid "Scale nodes vertically" msgstr "Knoten vertikal skalieren" -#: ../src/ui/tool/multi-path-manipulator.cpp:793 +#: ../src/ui/tool/multi-path-manipulator.cpp:792 msgid "Skew nodes horizontally" msgstr "Knoten horizontal krümmen" -#: ../src/ui/tool/multi-path-manipulator.cpp:797 +#: ../src/ui/tool/multi-path-manipulator.cpp:796 msgid "Skew nodes vertically" msgstr "Knoten vertikal krümmen" -#: ../src/ui/tool/multi-path-manipulator.cpp:801 +#: ../src/ui/tool/multi-path-manipulator.cpp:800 msgid "Flip nodes horizontally" msgstr "Knoten Horizontal umkehren" -#: ../src/ui/tool/multi-path-manipulator.cpp:804 +#: ../src/ui/tool/multi-path-manipulator.cpp:803 msgid "Flip nodes vertically" msgstr "Knoten Vertikal umkehren" @@ -21002,29 +21384,29 @@ msgstr "symmetrischer Knoten" msgid "Auto-smooth node" msgstr "Knoten automatisch glätten" -#: ../src/ui/tool/path-manipulator.cpp:817 +#: ../src/ui/tool/path-manipulator.cpp:816 msgid "Scale handle" msgstr "Anfasser skalieren" -#: ../src/ui/tool/path-manipulator.cpp:841 +#: ../src/ui/tool/path-manipulator.cpp:840 msgid "Rotate handle" msgstr "Anfasser rotieren" #. We need to call MPM's method because it could have been our last node -#: ../src/ui/tool/path-manipulator.cpp:1375 -#: ../src/widgets/node-toolbar.cpp:407 +#: ../src/ui/tool/path-manipulator.cpp:1374 +#: ../src/widgets/node-toolbar.cpp:406 msgid "Delete node" msgstr "Knoten löschen" -#: ../src/ui/tool/path-manipulator.cpp:1383 +#: ../src/ui/tool/path-manipulator.cpp:1382 msgid "Cycle node type" msgstr "Knotentyp ändern" -#: ../src/ui/tool/path-manipulator.cpp:1398 +#: ../src/ui/tool/path-manipulator.cpp:1397 msgid "Drag handle" msgstr "Anfasser ziehen" -#: ../src/ui/tool/path-manipulator.cpp:1407 +#: ../src/ui/tool/path-manipulator.cpp:1406 msgid "Retract handle" msgstr "Anfasser zurückziehen" @@ -21238,7 +21620,7 @@ msgstr "Unten:" msgid "Bottom margin" msgstr "Unterer Rand" -#: ../src/ui/widget/page-sizer.cpp:303 +#: ../src/ui/widget/page-sizer.cpp:303 ../share/extensions/hpgl_output.inx.h:7 msgid "Orientation:" msgstr "Ausrichtung" @@ -21275,103 +21657,103 @@ msgstr "" msgid "Set page size" msgstr "Seitengröße setzen" -#: ../src/ui/widget/panel.cpp:112 +#: ../src/ui/widget/panel.cpp:116 msgid "List" msgstr "Liste" -#: ../src/ui/widget/panel.cpp:135 +#: ../src/ui/widget/panel.cpp:139 msgctxt "Swatches" msgid "Size" msgstr "Größe" -#: ../src/ui/widget/panel.cpp:139 +#: ../src/ui/widget/panel.cpp:143 msgctxt "Swatches height" msgid "Tiny" msgstr "winzig" -#: ../src/ui/widget/panel.cpp:140 +#: ../src/ui/widget/panel.cpp:144 msgctxt "Swatches height" msgid "Small" msgstr "Klein" -#: ../src/ui/widget/panel.cpp:141 +#: ../src/ui/widget/panel.cpp:145 msgctxt "Swatches height" msgid "Medium" msgstr "Mittel" -#: ../src/ui/widget/panel.cpp:142 +#: ../src/ui/widget/panel.cpp:146 msgctxt "Swatches height" msgid "Large" msgstr "Groß" -#: ../src/ui/widget/panel.cpp:143 +#: ../src/ui/widget/panel.cpp:147 msgctxt "Swatches height" msgid "Huge" msgstr "Groß" -#: ../src/ui/widget/panel.cpp:165 +#: ../src/ui/widget/panel.cpp:169 msgctxt "Swatches" msgid "Width" msgstr "Breite" # (swatches) -#: ../src/ui/widget/panel.cpp:169 +#: ../src/ui/widget/panel.cpp:173 msgctxt "Swatches width" msgid "Narrower" msgstr "Enger" -#: ../src/ui/widget/panel.cpp:170 +#: ../src/ui/widget/panel.cpp:174 msgctxt "Swatches width" msgid "Narrow" msgstr "eng" -#: ../src/ui/widget/panel.cpp:171 +#: ../src/ui/widget/panel.cpp:175 msgctxt "Swatches width" msgid "Medium" msgstr "Mittel" -#: ../src/ui/widget/panel.cpp:172 +#: ../src/ui/widget/panel.cpp:176 msgctxt "Swatches width" msgid "Wide" msgstr "Breit" -#: ../src/ui/widget/panel.cpp:173 +#: ../src/ui/widget/panel.cpp:177 msgctxt "Swatches width" msgid "Wider" msgstr "Breiter" -#: ../src/ui/widget/panel.cpp:203 +#: ../src/ui/widget/panel.cpp:207 msgctxt "Swatches" msgid "Border" msgstr "Rand" # CHECK -#: ../src/ui/widget/panel.cpp:207 +#: ../src/ui/widget/panel.cpp:211 msgctxt "Swatches border" msgid "None" msgstr "Keine" -#: ../src/ui/widget/panel.cpp:208 +#: ../src/ui/widget/panel.cpp:212 msgctxt "Swatches border" msgid "Solid" msgstr "Fest" -#: ../src/ui/widget/panel.cpp:209 +#: ../src/ui/widget/panel.cpp:213 msgctxt "Swatches border" msgid "Wide" msgstr "Breit" #. TRANSLATORS: "Wrap" indicates how colour swatches are displayed -#: ../src/ui/widget/panel.cpp:240 +#: ../src/ui/widget/panel.cpp:244 msgctxt "Swatches" msgid "Wrap" msgstr "Umbrechen" -#: ../src/ui/widget/preferences-widget.cpp:796 +#: ../src/ui/widget/preferences-widget.cpp:802 msgid "_Browse..." msgstr "_Auswählen…" -#: ../src/ui/widget/preferences-widget.cpp:882 +#: ../src/ui/widget/preferences-widget.cpp:888 msgid "Select a bitmap editor" msgstr "Bitmap-Editor wählen:" @@ -21383,27 +21765,27 @@ msgstr "" "Zufallsgenerator neu impfen; dies führt zu einer geänderten Sequenz von " "Pseudozufallszahlen." -#: ../src/ui/widget/rendering-options.cpp:31 +#: ../src/ui/widget/rendering-options.cpp:30 msgid "Backend" msgstr "Hintergrund:" -#: ../src/ui/widget/rendering-options.cpp:32 +#: ../src/ui/widget/rendering-options.cpp:31 msgid "Vector" msgstr "Vektor" -#: ../src/ui/widget/rendering-options.cpp:33 +#: ../src/ui/widget/rendering-options.cpp:32 msgid "Bitmap" msgstr "Bitmap" -#: ../src/ui/widget/rendering-options.cpp:34 +#: ../src/ui/widget/rendering-options.cpp:33 msgid "Bitmap options" msgstr "Bitmap-Optionen" -#: ../src/ui/widget/rendering-options.cpp:36 +#: ../src/ui/widget/rendering-options.cpp:35 msgid "Preferred resolution of rendering, in dots per inch." msgstr "Bevorzugte Auflösung der Bitmap (dpi)" -#: ../src/ui/widget/rendering-options.cpp:44 +#: ../src/ui/widget/rendering-options.cpp:43 msgid "" "Render using Cairo vector operations. The resulting image is usually " "smaller in file size and can be arbitrarily scaled, but some filter effects " @@ -21413,7 +21795,7 @@ msgstr "" "eine kleinere Dateigröße und kann beliebig skaliert werden, Muster gehen " "jedoch verloren." -#: ../src/ui/widget/rendering-options.cpp:49 +#: ../src/ui/widget/rendering-options.cpp:48 msgid "" "Render everything as bitmap. The resulting image is usually larger in file " "size and cannot be arbitrarily scaled without quality loss, but all objects " @@ -21463,7 +21845,7 @@ msgid "No stroke" msgstr "Keine Kontur" #: ../src/ui/widget/selected-style.cpp:184 -#: ../src/ui/widget/style-swatch.cpp:300 ../src/widgets/paint-selector.cpp:239 +#: ../src/ui/widget/style-swatch.cpp:300 ../src/widgets/paint-selector.cpp:242 msgid "Pattern" msgstr "Muster" @@ -21528,14 +21910,14 @@ msgstr "Ungesetzt" #: ../src/ui/widget/selected-style.cpp:217 #: ../src/ui/widget/selected-style.cpp:275 #: ../src/ui/widget/selected-style.cpp:554 -#: ../src/ui/widget/style-swatch.cpp:326 ../src/widgets/fill-style.cpp:708 +#: ../src/ui/widget/style-swatch.cpp:326 ../src/widgets/fill-style.cpp:712 msgid "Unset fill" msgstr "Füllung aufheben" #: ../src/ui/widget/selected-style.cpp:217 #: ../src/ui/widget/selected-style.cpp:275 #: ../src/ui/widget/selected-style.cpp:570 -#: ../src/ui/widget/style-swatch.cpp:326 ../src/widgets/fill-style.cpp:708 +#: ../src/ui/widget/style-swatch.cpp:326 ../src/widgets/fill-style.cpp:712 msgid "Unset stroke" msgstr "Kontur aufheben" @@ -21615,12 +21997,12 @@ msgid "Make stroke opaque" msgstr "Kontur undurchsichtig machen" #: ../src/ui/widget/selected-style.cpp:279 -#: ../src/ui/widget/selected-style.cpp:536 ../src/widgets/fill-style.cpp:506 +#: ../src/ui/widget/selected-style.cpp:536 ../src/widgets/fill-style.cpp:510 msgid "Remove fill" msgstr "Füllung entfernen" #: ../src/ui/widget/selected-style.cpp:279 -#: ../src/ui/widget/selected-style.cpp:545 ../src/widgets/fill-style.cpp:506 +#: ../src/ui/widget/selected-style.cpp:545 ../src/widgets/fill-style.cpp:510 msgid "Remove stroke" msgstr "Kontur entfernen" @@ -21770,7 +22152,7 @@ msgstr "" "Strichbreite eingestellt: vorher %.3g, jetzt %.3g (Diff. %.3g)" #. TRANSLATORS: "Link" means to _link_ two sliders together -#: ../src/ui/widget/spin-slider.cpp:157 +#: ../src/ui/widget/spin-scale.cpp:138 ../src/ui/widget/spin-slider.cpp:156 msgctxt "Sliders" msgid "Link" msgstr "Verknüpfung:" @@ -21855,25 +22237,25 @@ msgstr[0] "%d Quader zugewiesen. " msgstr[1] "" "%d Quadern zugewiesen. Umschalt+Ziehen trennt die Quader." -#: ../src/verbs.cpp:150 ../src/widgets/calligraphy-toolbar.cpp:649 +#: ../src/verbs.cpp:155 ../src/widgets/calligraphy-toolbar.cpp:647 msgid "Edit" msgstr "Bearbeiten" -#: ../src/verbs.cpp:226 +#: ../src/verbs.cpp:231 msgid "Context" msgstr "Kontext" -#: ../src/verbs.cpp:245 ../src/verbs.cpp:2162 +#: ../src/verbs.cpp:250 ../src/verbs.cpp:2167 #: ../share/extensions/jessyInk_view.inx.h:1 #: ../share/extensions/polyhedron_3d.inx.h:26 msgid "View" msgstr "Ansicht" -#: ../src/verbs.cpp:265 +#: ../src/verbs.cpp:270 msgid "Dialog" msgstr "Dialog" -#: ../src/verbs.cpp:322 ../share/extensions/lorem_ipsum.inx.h:8 +#: ../src/verbs.cpp:327 ../share/extensions/lorem_ipsum.inx.h:8 #: ../share/extensions/replace_font.inx.h:11 #: ../share/extensions/split.inx.h:10 ../share/extensions/text_braille.inx.h:2 #: ../share/extensions/text_extract.inx.h:14 @@ -21886,230 +22268,230 @@ msgstr "Dialog" msgid "Text" msgstr "Text" -#: ../src/verbs.cpp:1169 +#: ../src/verbs.cpp:1174 msgid "Switch to next layer" msgstr "Zur nächste Ebene wechseln" -#: ../src/verbs.cpp:1170 +#: ../src/verbs.cpp:1175 msgid "Switched to next layer." msgstr "Zur nächsten Ebene gewächselt." -#: ../src/verbs.cpp:1172 +#: ../src/verbs.cpp:1177 msgid "Cannot go past last layer." msgstr "Kann nicht hinter letzte Ebene wechseln." -#: ../src/verbs.cpp:1181 +#: ../src/verbs.cpp:1186 msgid "Switch to previous layer" msgstr "Zur vorherigen Ebene wechseln" -#: ../src/verbs.cpp:1182 +#: ../src/verbs.cpp:1187 msgid "Switched to previous layer." msgstr "Zur vorherigen Ebene gewechselt." -#: ../src/verbs.cpp:1184 +#: ../src/verbs.cpp:1189 msgid "Cannot go before first layer." msgstr "Kann nicht vor erste Ebene wechseln." -#: ../src/verbs.cpp:1205 ../src/verbs.cpp:1302 ../src/verbs.cpp:1334 -#: ../src/verbs.cpp:1340 ../src/verbs.cpp:1364 ../src/verbs.cpp:1379 +#: ../src/verbs.cpp:1210 ../src/verbs.cpp:1307 ../src/verbs.cpp:1339 +#: ../src/verbs.cpp:1345 ../src/verbs.cpp:1369 ../src/verbs.cpp:1384 msgid "No current layer." msgstr "Keine aktuelle Ebene." -#: ../src/verbs.cpp:1234 ../src/verbs.cpp:1238 +#: ../src/verbs.cpp:1239 ../src/verbs.cpp:1243 #, c-format msgid "Raised layer %s." msgstr "Ebene %s angehoben." -#: ../src/verbs.cpp:1235 +#: ../src/verbs.cpp:1240 msgid "Layer to top" msgstr "Ebene nach ganz oben" -#: ../src/verbs.cpp:1239 +#: ../src/verbs.cpp:1244 msgid "Raise layer" msgstr "Ebene anheben" -#: ../src/verbs.cpp:1242 ../src/verbs.cpp:1246 +#: ../src/verbs.cpp:1247 ../src/verbs.cpp:1251 #, c-format msgid "Lowered layer %s." msgstr "Ebene %s abgesenkt." -#: ../src/verbs.cpp:1243 +#: ../src/verbs.cpp:1248 msgid "Layer to bottom" msgstr "Ebene nach ganz unten" -#: ../src/verbs.cpp:1247 +#: ../src/verbs.cpp:1252 msgid "Lower layer" msgstr "Ebene absenken" -#: ../src/verbs.cpp:1256 +#: ../src/verbs.cpp:1261 msgid "Cannot move layer any further." msgstr "Kann Ebene nicht weiter verschieben." -#: ../src/verbs.cpp:1270 ../src/verbs.cpp:1289 +#: ../src/verbs.cpp:1275 ../src/verbs.cpp:1294 #, c-format msgid "%s copy" msgstr "%s Kopie" -#: ../src/verbs.cpp:1297 +#: ../src/verbs.cpp:1302 msgid "Duplicate layer" msgstr "Ebene duplizieren" #. TRANSLATORS: this means "The layer has been duplicated." -#: ../src/verbs.cpp:1300 +#: ../src/verbs.cpp:1305 msgid "Duplicated layer." msgstr "Duplizierte Ebene." -#: ../src/verbs.cpp:1329 +#: ../src/verbs.cpp:1334 msgid "Delete layer" msgstr "Ebene löschen" #. TRANSLATORS: this means "The layer has been deleted." -#: ../src/verbs.cpp:1332 +#: ../src/verbs.cpp:1337 msgid "Deleted layer." msgstr "Ebene wurde gelöscht." -#: ../src/verbs.cpp:1349 +#: ../src/verbs.cpp:1354 msgid "Show all layers" msgstr "Alle Ebenen zeigen" -#: ../src/verbs.cpp:1354 +#: ../src/verbs.cpp:1359 msgid "Hide all layers" msgstr "Alle Ebenen ausblenden" -#: ../src/verbs.cpp:1359 +#: ../src/verbs.cpp:1364 msgid "Lock all layers" msgstr "Alle Ebenen sperren" -#: ../src/verbs.cpp:1373 +#: ../src/verbs.cpp:1378 msgid "Unlock all layers" msgstr "Alle Ebenen entsperren" -#: ../src/verbs.cpp:1447 +#: ../src/verbs.cpp:1452 msgid "Flip horizontally" msgstr "Horizontal umkehren" -#: ../src/verbs.cpp:1452 +#: ../src/verbs.cpp:1457 msgid "Flip vertically" msgstr "Vertikal umkehren" #. TRANSLATORS: If you have translated the tutorial-basic.en.svgz file to your language, #. then translate this string as "tutorial-basic.LANG.svgz" (where LANG is your language #. code); otherwise leave as "tutorial-basic.svg". -#: ../src/verbs.cpp:2045 +#: ../src/verbs.cpp:2050 msgid "tutorial-basic.svg" msgstr "tutorial-basic.de.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2049 +#: ../src/verbs.cpp:2054 msgid "tutorial-shapes.svg" msgstr "tutorial-shapes.de.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2053 +#: ../src/verbs.cpp:2058 msgid "tutorial-advanced.svg" msgstr "tutorial-advanced.de.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2057 +#: ../src/verbs.cpp:2062 msgid "tutorial-tracing.svg" msgstr "tutorial-tracing.de.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2061 +#: ../src/verbs.cpp:2066 msgid "tutorial-calligraphy.svg" msgstr "tutorial-calligraphy.de.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2065 +#: ../src/verbs.cpp:2070 msgid "tutorial-interpolate.svg" msgstr "tutorial-interpolate.de.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2069 +#: ../src/verbs.cpp:2074 msgid "tutorial-elements.svg" msgstr "tutorial-elements.de.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2073 +#: ../src/verbs.cpp:2078 msgid "tutorial-tips.svg" msgstr "tutorial-tips.de.svg" -#: ../src/verbs.cpp:2261 ../src/verbs.cpp:2847 +#: ../src/verbs.cpp:2266 ../src/verbs.cpp:2852 msgid "Unlock all objects in the current layer" msgstr "Alle Objekte in der aktuellen Ebene entsperren" -#: ../src/verbs.cpp:2265 ../src/verbs.cpp:2849 +#: ../src/verbs.cpp:2270 ../src/verbs.cpp:2854 msgid "Unlock all objects in all layers" msgstr "Alle Objekte in allen Ebenen entsperren" -#: ../src/verbs.cpp:2269 ../src/verbs.cpp:2851 +#: ../src/verbs.cpp:2274 ../src/verbs.cpp:2856 msgid "Unhide all objects in the current layer" msgstr "Alle Objekte in der aktuellen Ebene einblenden" -#: ../src/verbs.cpp:2273 ../src/verbs.cpp:2853 +#: ../src/verbs.cpp:2278 ../src/verbs.cpp:2858 msgid "Unhide all objects in all layers" msgstr "Alle Objekte in allen Ebenen einblenden" -#: ../src/verbs.cpp:2288 +#: ../src/verbs.cpp:2293 msgid "Does nothing" msgstr "Hat keine Funktion" -#: ../src/verbs.cpp:2291 +#: ../src/verbs.cpp:2296 msgid "Create new document from the default template" msgstr "Ein neues Dokument mit der Standardvorlage anlegen" -#: ../src/verbs.cpp:2293 +#: ../src/verbs.cpp:2298 msgid "_Open..." msgstr "Ö_ffnen…" -#: ../src/verbs.cpp:2294 +#: ../src/verbs.cpp:2299 msgid "Open an existing document" msgstr "Ein bestehendes Dokument öffnen" -#: ../src/verbs.cpp:2295 +#: ../src/verbs.cpp:2300 msgid "Re_vert" msgstr "_Zurücksetzen" -#: ../src/verbs.cpp:2296 +#: ../src/verbs.cpp:2301 msgid "Revert to the last saved version of document (changes will be lost)" msgstr "" "Das Dokument auf die zuletzt gespeicherte Version zurücksetzen (Änderungen " "gehen verloren)" -#: ../src/verbs.cpp:2297 +#: ../src/verbs.cpp:2302 msgid "Save document" msgstr "Das Dokument speichern" -#: ../src/verbs.cpp:2299 +#: ../src/verbs.cpp:2304 msgid "Save _As..." msgstr "Speichern _unter…" -#: ../src/verbs.cpp:2300 +#: ../src/verbs.cpp:2305 msgid "Save document under a new name" msgstr "Dokument unter einem anderen Namen speichern" -#: ../src/verbs.cpp:2301 +#: ../src/verbs.cpp:2306 msgid "Save a Cop_y..." msgstr "_Kopie speichern unter…" -#: ../src/verbs.cpp:2302 +#: ../src/verbs.cpp:2307 msgid "Save a copy of the document under a new name" msgstr "Eine Kopie des Dokuments unter einem anderen Namen speichern" -#: ../src/verbs.cpp:2303 +#: ../src/verbs.cpp:2308 msgid "_Print..." msgstr "_Drucken…" -#: ../src/verbs.cpp:2303 +#: ../src/verbs.cpp:2308 msgid "Print document" msgstr "Das Dokument drucken" #. TRANSLATORS: "Vacuum Defs" means "Clean up defs" (so as to remove unused definitions) -#: ../src/verbs.cpp:2306 +#: ../src/verbs.cpp:2311 msgid "Clean _up document" msgstr "Dokument säubern" -#: ../src/verbs.cpp:2306 +#: ../src/verbs.cpp:2311 msgid "" "Remove unused definitions (such as gradients or clipping paths) from the <" "defs> of the document" @@ -22117,139 +22499,139 @@ msgstr "" "Unbenutzte vordefinierte Elemente (z.B. Farbverläufe oder Ausschneidepfade) " "aus den <defs> des Dokuments entfernen" -#: ../src/verbs.cpp:2308 +#: ../src/verbs.cpp:2313 msgid "_Import..." msgstr "_Importieren…" -#: ../src/verbs.cpp:2309 +#: ../src/verbs.cpp:2314 msgid "Import a bitmap or SVG image into this document" msgstr "Ein Bitmap- oder SVG-Bild in dieses Dokument importieren" -#: ../src/verbs.cpp:2310 +#: ../src/verbs.cpp:2315 msgid "_Export Bitmap..." msgstr "Bitmap _exportieren…" -#: ../src/verbs.cpp:2311 +#: ../src/verbs.cpp:2316 msgid "Export this document or a selection as a bitmap image" msgstr "Das Dokument oder eine Auswahl als Bitmap-Bild exportieren" -#: ../src/verbs.cpp:2312 +#: ../src/verbs.cpp:2317 msgid "Import Clip Art..." msgstr "Importiere Clip Art..." -#: ../src/verbs.cpp:2313 +#: ../src/verbs.cpp:2318 msgid "Import clipart from Open Clip Art Library" msgstr "Import aus der Open Clip Art Library" #. new FileVerb(SP_VERB_FILE_EXPORT_TO_OCAL, "FileExportToOCAL", N_("Export To Open Clip Art Library"), N_("Export this document to Open Clip Art Library"), INKSCAPE_ICON_DOCUMENT_EXPORT_OCAL), -#: ../src/verbs.cpp:2315 +#: ../src/verbs.cpp:2320 msgid "N_ext Window" msgstr "Nä_chstes Fenster" -#: ../src/verbs.cpp:2316 +#: ../src/verbs.cpp:2321 msgid "Switch to the next document window" msgstr "Zum nächsten Dokumentenfenster umschalten" -#: ../src/verbs.cpp:2317 +#: ../src/verbs.cpp:2322 msgid "P_revious Window" msgstr "Vor_heriges Fenster" -#: ../src/verbs.cpp:2318 +#: ../src/verbs.cpp:2323 msgid "Switch to the previous document window" msgstr "Zum vorherigen Dokumentenfenster umschalten" -#: ../src/verbs.cpp:2319 +#: ../src/verbs.cpp:2324 msgid "_Close" msgstr "S_chließen" -#: ../src/verbs.cpp:2320 +#: ../src/verbs.cpp:2325 msgid "Close this document window" msgstr "Dieses Dokumentenfenster schließen" -#: ../src/verbs.cpp:2321 +#: ../src/verbs.cpp:2326 msgid "_Quit" msgstr "_Beenden" -#: ../src/verbs.cpp:2321 +#: ../src/verbs.cpp:2326 msgid "Quit Inkscape" msgstr "Inkscape verlassen" -#: ../src/verbs.cpp:2324 +#: ../src/verbs.cpp:2329 msgid "Undo last action" msgstr "Letzten Bearbeitungsschritt rückgängig machen" # !!! Abiword just says "Letzten Befehl wiederholen" -#: ../src/verbs.cpp:2327 +#: ../src/verbs.cpp:2332 msgid "Do again the last undone action" msgstr "Einen rückgängig gemachten Bearbeitungsschritt erneut durchführen" -#: ../src/verbs.cpp:2328 +#: ../src/verbs.cpp:2333 msgid "Cu_t" msgstr "A_usschneiden" -#: ../src/verbs.cpp:2329 +#: ../src/verbs.cpp:2334 msgid "Cut selection to clipboard" msgstr "Die gewählten Objekte in die Zwischenablage verschieben" -#: ../src/verbs.cpp:2330 +#: ../src/verbs.cpp:2335 msgid "_Copy" msgstr "_Kopieren" -#: ../src/verbs.cpp:2331 +#: ../src/verbs.cpp:2336 msgid "Copy selection to clipboard" msgstr "Die gewählten Objekte in die Zwischenablage kopieren" -#: ../src/verbs.cpp:2332 +#: ../src/verbs.cpp:2337 msgid "_Paste" msgstr "E_infügen" -#: ../src/verbs.cpp:2333 +#: ../src/verbs.cpp:2338 msgid "Paste objects from clipboard to mouse point, or paste text" msgstr "" "Objekte aus der Zwischenablage an der Mausposition einfügen, oder Text " "einfügen" -#: ../src/verbs.cpp:2334 +#: ../src/verbs.cpp:2339 msgid "Paste _Style" msgstr "Stil an_wenden" -#: ../src/verbs.cpp:2335 +#: ../src/verbs.cpp:2340 msgid "Apply the style of the copied object to selection" msgstr "Stil des kopierten Objekts auf Auswahl anwenden" -#: ../src/verbs.cpp:2337 +#: ../src/verbs.cpp:2342 msgid "Scale selection to match the size of the copied object" msgstr "Auswahl auf Größe des kopierten Objekts skalieren" -#: ../src/verbs.cpp:2338 +#: ../src/verbs.cpp:2343 msgid "Paste _Width" msgstr "_Breite einfügen" -#: ../src/verbs.cpp:2339 +#: ../src/verbs.cpp:2344 msgid "Scale selection horizontally to match the width of the copied object" msgstr "Auswahl horizontal auf Breite des kopierten Objekts skalieren" -#: ../src/verbs.cpp:2340 +#: ../src/verbs.cpp:2345 msgid "Paste _Height" msgstr "_Höhe einfügen" -#: ../src/verbs.cpp:2341 +#: ../src/verbs.cpp:2346 msgid "Scale selection vertically to match the height of the copied object" msgstr "Auswahl vertikal auf Höhe des kopierten Objekts skalieren" -#: ../src/verbs.cpp:2342 +#: ../src/verbs.cpp:2347 msgid "Paste Size Separately" msgstr "Größe getrennt einfügen" -#: ../src/verbs.cpp:2343 +#: ../src/verbs.cpp:2348 msgid "Scale each selected object to match the size of the copied object" msgstr "Jedes ausgewählte Objekt auf Größe des kopierten Objekts skalieren" -#: ../src/verbs.cpp:2344 +#: ../src/verbs.cpp:2349 msgid "Paste Width Separately" msgstr "Breite getrennt einfügen" -#: ../src/verbs.cpp:2345 +#: ../src/verbs.cpp:2350 msgid "" "Scale each selected object horizontally to match the width of the copied " "object" @@ -22257,11 +22639,11 @@ msgstr "" "Jedes ausgewählte Objekt horizontal auf Breite des kopierten Objekts " "skalieren" -#: ../src/verbs.cpp:2346 +#: ../src/verbs.cpp:2351 msgid "Paste Height Separately" msgstr "Höhe getrennt einfügen" -#: ../src/verbs.cpp:2347 +#: ../src/verbs.cpp:2352 msgid "" "Scale each selected object vertically to match the height of the copied " "object" @@ -22269,69 +22651,69 @@ msgstr "" "Jedes ausgewählte Objekt vertikal auf Höhe des kopierten Objekts skalieren" # !!! translation is a bit clumsy... -#: ../src/verbs.cpp:2348 +#: ../src/verbs.cpp:2353 msgid "Paste _In Place" msgstr "An Ori_ginalposition einfügen" -#: ../src/verbs.cpp:2349 +#: ../src/verbs.cpp:2354 msgid "Paste objects from clipboard to the original location" msgstr "Objekte aus der Zwischenablage an ihrer Originalposition einfügen" -#: ../src/verbs.cpp:2350 +#: ../src/verbs.cpp:2355 msgid "Paste Path _Effect" msgstr "Pfad-_Effekt einfügen" -#: ../src/verbs.cpp:2351 +#: ../src/verbs.cpp:2356 msgid "Apply the path effect of the copied object to selection" msgstr "Pfad-Effekt des kopierten Objekts auf Auswahl anwenden" -#: ../src/verbs.cpp:2352 +#: ../src/verbs.cpp:2357 msgid "Remove Path _Effect" msgstr "Pfad-Effekt _entfernen" -#: ../src/verbs.cpp:2353 +#: ../src/verbs.cpp:2358 msgid "Remove any path effects from selected objects" msgstr "Effekt von Auswahl entfernen" -#: ../src/verbs.cpp:2354 +#: ../src/verbs.cpp:2359 msgid "_Remove Filters" msgstr "Filter entfernen" -#: ../src/verbs.cpp:2355 +#: ../src/verbs.cpp:2360 msgid "Remove any filters from selected objects" msgstr "Jeden Filter von Auswahl entfernen" -#: ../src/verbs.cpp:2356 +#: ../src/verbs.cpp:2361 msgid "_Delete" msgstr "_Löschen" -#: ../src/verbs.cpp:2357 +#: ../src/verbs.cpp:2362 msgid "Delete selection" msgstr "Auswahl löschen" -#: ../src/verbs.cpp:2358 +#: ../src/verbs.cpp:2363 msgid "Duplic_ate" msgstr "Dupli_zieren" -#: ../src/verbs.cpp:2359 +#: ../src/verbs.cpp:2364 msgid "Duplicate selected objects" msgstr "Gewählte Objekte duplizieren" -#: ../src/verbs.cpp:2360 +#: ../src/verbs.cpp:2365 msgid "Create Clo_ne" msgstr "_Klon erzeugen" -#: ../src/verbs.cpp:2361 +#: ../src/verbs.cpp:2366 msgid "Create a clone (a copy linked to the original) of selected object" msgstr "" "Einen Klon des gewählten Objekts erstellen (die Kopie ist mit dem Original " "verbunden)" -#: ../src/verbs.cpp:2362 +#: ../src/verbs.cpp:2367 msgid "Unlin_k Clone" msgstr "Klonverbindung auf_trennen" -#: ../src/verbs.cpp:2363 +#: ../src/verbs.cpp:2368 msgid "" "Cut the selected clones' links to the originals, turning them into " "standalone objects" @@ -22339,27 +22721,27 @@ msgstr "" "Die Verbindung des Klons zu seinem Original auftrennen, so daß ein " "selbständiges Objekt entsteht" -#: ../src/verbs.cpp:2364 +#: ../src/verbs.cpp:2369 msgid "Relink to Copied" msgstr "Verbinden mit Kopie" -#: ../src/verbs.cpp:2365 +#: ../src/verbs.cpp:2370 msgid "Relink the selected clones to the object currently on the clipboard" msgstr "Verbindet die Ausgewählten Klone mit dem Objekt in der Zwischenablage" -#: ../src/verbs.cpp:2366 +#: ../src/verbs.cpp:2371 msgid "Select _Original" msgstr "_Original auswählen" -#: ../src/verbs.cpp:2367 +#: ../src/verbs.cpp:2372 msgid "Select the object to which the selected clone is linked" msgstr "Objekt auswählen, mit dem der Klon verbunden ist" -#: ../src/verbs.cpp:2368 +#: ../src/verbs.cpp:2373 msgid "Clone original path (LPE)" msgstr "Originalpfad klonen" -#: ../src/verbs.cpp:2369 +#: ../src/verbs.cpp:2374 msgid "" "Creates a new path, applies the Clone original LPE, and refers it to the " "selected path" @@ -22367,19 +22749,19 @@ msgstr "" "Erstellt einen neuen Pfad, verwendet die ursprünglichen Klone LPE und " "verweist auf den ausgewählten Pfad" -#: ../src/verbs.cpp:2370 +#: ../src/verbs.cpp:2375 msgid "Objects to _Marker" msgstr "Objekte in Markierungen umwandeln" -#: ../src/verbs.cpp:2371 +#: ../src/verbs.cpp:2376 msgid "Convert selection to a line marker" msgstr "Auswahl in Linienmarkierung umwandeln" -#: ../src/verbs.cpp:2372 +#: ../src/verbs.cpp:2377 msgid "Objects to Gu_ides" msgstr "Objekte in Führungslinien umwandeln" -#: ../src/verbs.cpp:2373 +#: ../src/verbs.cpp:2378 msgid "" "Convert selected objects to a collection of guidelines aligned with their " "edges" @@ -22387,95 +22769,95 @@ msgstr "" "Ausgewählte Objekte in eine Sammlung von Führungslinien entlang ihrer Kanten " "umwandeln" -#: ../src/verbs.cpp:2374 +#: ../src/verbs.cpp:2379 msgid "Objects to Patter_n" msgstr "_Objekte in Füllmuster umwandeln" -#: ../src/verbs.cpp:2375 +#: ../src/verbs.cpp:2380 msgid "Convert selection to a rectangle with tiled pattern fill" msgstr "Die Auswahl in ein Rechteck mit gekacheltem Füllmuster umwandeln" -#: ../src/verbs.cpp:2376 +#: ../src/verbs.cpp:2381 msgid "Pattern to _Objects" msgstr "Füllmuster in Ob_jekte umwandeln" -#: ../src/verbs.cpp:2377 +#: ../src/verbs.cpp:2382 msgid "Extract objects from a tiled pattern fill" msgstr "Objekte aus einem gekacheltem Füllmuster extrahieren" -#: ../src/verbs.cpp:2378 +#: ../src/verbs.cpp:2383 msgid "Group to Symbol" msgstr "Gruppieren zum Symbol" -#: ../src/verbs.cpp:2379 +#: ../src/verbs.cpp:2384 msgid "Convert group to a symbol" msgstr "Gruppe in Symbol konvertieren" -#: ../src/verbs.cpp:2380 +#: ../src/verbs.cpp:2385 msgid "Symbol to Group" msgstr "Symbol zum Gruppieren" -#: ../src/verbs.cpp:2381 +#: ../src/verbs.cpp:2386 msgid "Extract group from a symbol" msgstr "Extrahiere Gruppe von einem Symbol" -#: ../src/verbs.cpp:2382 +#: ../src/verbs.cpp:2387 msgid "Clea_r All" msgstr "Alles l_eeren" -#: ../src/verbs.cpp:2383 +#: ../src/verbs.cpp:2388 msgid "Delete all objects from document" msgstr "Alle Objekte aus dem Dokument löschen" -#: ../src/verbs.cpp:2384 +#: ../src/verbs.cpp:2389 msgid "Select Al_l" msgstr "_Alles auswählen" -#: ../src/verbs.cpp:2385 +#: ../src/verbs.cpp:2390 msgid "Select all objects or all nodes" msgstr "Alle Objekte oder alle Knoten im Dokument auswählen" -#: ../src/verbs.cpp:2386 +#: ../src/verbs.cpp:2391 msgid "Select All in All La_yers" msgstr "Alles in allen Ebenen auswählen" -#: ../src/verbs.cpp:2387 +#: ../src/verbs.cpp:2392 msgid "Select all objects in all visible and unlocked layers" msgstr "Alle Objekte in allen sichtbaren und entsperrten Ebenen auswählen" -#: ../src/verbs.cpp:2388 +#: ../src/verbs.cpp:2393 msgid "Fill _and Stroke" msgstr "Füllung und _Kontur" -#: ../src/verbs.cpp:2389 +#: ../src/verbs.cpp:2394 msgid "" "Select all objects with the same fill and stroke as the selected objects" msgstr "" "Alle Objekte mit der gleichen Füllung und Kontur der ausgewählten Objekte " "wählen" -#: ../src/verbs.cpp:2390 +#: ../src/verbs.cpp:2395 msgid "_Fill Color" msgstr "Füllfarbe" -#: ../src/verbs.cpp:2391 +#: ../src/verbs.cpp:2396 msgid "Select all objects with the same fill as the selected objects" msgstr "Alle Objekte mit der gleichen Füllung der ausgewählten Objekte wählen" -#: ../src/verbs.cpp:2392 +#: ../src/verbs.cpp:2397 msgid "_Stroke Color" msgstr "Konturfarbe" -#: ../src/verbs.cpp:2393 +#: ../src/verbs.cpp:2398 msgid "Select all objects with the same stroke as the selected objects" msgstr "" "Wählen Sie alle Objekte mit der gleichen Kontur wie die ausgewählten Objekte" -#: ../src/verbs.cpp:2394 +#: ../src/verbs.cpp:2399 msgid "Stroke St_yle" msgstr "Konturstil" -#: ../src/verbs.cpp:2395 +#: ../src/verbs.cpp:2400 msgid "" "Select all objects with the same stroke style (width, dash, markers) as the " "selected objects" @@ -22483,11 +22865,11 @@ msgstr "" "Wählen Sie alle Objekte mit dem gleichen Konturstil (Breite, Bindestrich, " "Marker) wie die ausgewählten Objekte" -#: ../src/verbs.cpp:2396 +#: ../src/verbs.cpp:2401 msgid "_Object Type" msgstr "_Objekttyp" -#: ../src/verbs.cpp:2397 +#: ../src/verbs.cpp:2402 msgid "" "Select all objects with the same object type (rect, arc, text, path, bitmap " "etc) as the selected objects" @@ -22495,154 +22877,154 @@ msgstr "" "Wählen Sie alle Objekte mit dem gleichen Objekttyp (Rechteck, Bogen, Text, " "Pfad, Bitmap etc.) wie die ausgewählten Objekte" -#: ../src/verbs.cpp:2398 +#: ../src/verbs.cpp:2403 msgid "In_vert Selection" msgstr "Auswahl _umkehren" -#: ../src/verbs.cpp:2399 +#: ../src/verbs.cpp:2404 msgid "Invert selection (unselect what is selected and select everything else)" msgstr "" "Auswahl invertieren (alle ausgewählten Objekte deselektieren und alle " "anderen auswählen)" -#: ../src/verbs.cpp:2400 +#: ../src/verbs.cpp:2405 msgid "Invert in All Layers" msgstr "In allen Ebenen invertieren" -#: ../src/verbs.cpp:2401 +#: ../src/verbs.cpp:2406 msgid "Invert selection in all visible and unlocked layers" msgstr "Auswahl in allen sichtbaren und entsperrten Ebenen invertieren" -#: ../src/verbs.cpp:2402 +#: ../src/verbs.cpp:2407 msgid "Select Next" msgstr "Nächstes auswählen" -#: ../src/verbs.cpp:2403 +#: ../src/verbs.cpp:2408 msgid "Select next object or node" msgstr "Nächstes Objekt oder nächsten Knoten auswählen" -#: ../src/verbs.cpp:2404 +#: ../src/verbs.cpp:2409 msgid "Select Previous" msgstr "Vorheriges auswählen" -#: ../src/verbs.cpp:2405 +#: ../src/verbs.cpp:2410 msgid "Select previous object or node" msgstr "Vorheriges Objekt oder vorherigen Knoten auswählen" -#: ../src/verbs.cpp:2406 +#: ../src/verbs.cpp:2411 msgid "D_eselect" msgstr "Auswahl auf_heben" -#: ../src/verbs.cpp:2407 +#: ../src/verbs.cpp:2412 msgid "Deselect any selected objects or nodes" msgstr "Die Auswahl von Objekten oder Knoten aufheben" -#: ../src/verbs.cpp:2408 +#: ../src/verbs.cpp:2413 msgid "Create _Guides Around the Page" msgstr "_Führungslinien an Seitenrändern" -#: ../src/verbs.cpp:2409 ../src/verbs.cpp:2411 +#: ../src/verbs.cpp:2414 ../src/verbs.cpp:2416 msgid "Create four guides aligned with the page borders" msgstr "Erstellt vier Führungslinien an den Seitengrenzen" -#: ../src/verbs.cpp:2412 +#: ../src/verbs.cpp:2417 msgid "Next path effect parameter" msgstr "Nächster Pfad-Effekt-Parameter" -#: ../src/verbs.cpp:2413 +#: ../src/verbs.cpp:2418 msgid "Show next editable path effect parameter" msgstr "Nächster Pfad-Effekt-Parameter" #. Selection -#: ../src/verbs.cpp:2416 +#: ../src/verbs.cpp:2421 msgid "Raise to _Top" msgstr "Nach ganz o_ben anheben" -#: ../src/verbs.cpp:2417 +#: ../src/verbs.cpp:2422 msgid "Raise selection to top" msgstr "Die gewählten Objekte nach ganz oben anheben" -#: ../src/verbs.cpp:2418 +#: ../src/verbs.cpp:2423 msgid "Lower to _Bottom" msgstr "Nach ganz u_nten absenken" -#: ../src/verbs.cpp:2419 +#: ../src/verbs.cpp:2424 msgid "Lower selection to bottom" msgstr "Die gewählten Objekte nach ganz unten absenken" -#: ../src/verbs.cpp:2420 +#: ../src/verbs.cpp:2425 msgid "_Raise" msgstr "_Anheben" -#: ../src/verbs.cpp:2421 +#: ../src/verbs.cpp:2426 msgid "Raise selection one step" msgstr "Die gewählten Objekte eine Stufe nach oben anheben" -#: ../src/verbs.cpp:2422 +#: ../src/verbs.cpp:2427 msgid "_Lower" msgstr "Ab_senken" -#: ../src/verbs.cpp:2423 +#: ../src/verbs.cpp:2428 msgid "Lower selection one step" msgstr "Die gewählten Objekte eine Stufe nach unten absenken" -#: ../src/verbs.cpp:2425 +#: ../src/verbs.cpp:2430 msgid "Group selected objects" msgstr "Die gewählten Objekte gruppieren" -#: ../src/verbs.cpp:2427 +#: ../src/verbs.cpp:2432 msgid "Ungroup selected groups" msgstr "Gruppierung markierter Gruppen aufheben" -#: ../src/verbs.cpp:2429 +#: ../src/verbs.cpp:2434 msgid "_Put on Path" msgstr "An _Pfad ausrichten" -#: ../src/verbs.cpp:2431 +#: ../src/verbs.cpp:2436 msgid "_Remove from Path" msgstr "Von Pfad _trennen" -#: ../src/verbs.cpp:2433 +#: ../src/verbs.cpp:2438 msgid "Remove Manual _Kerns" msgstr "Manuelle _Unterschneidungen entfernen" #. TRANSLATORS: "glyph": An image used in the visual representation of characters; #. roughly speaking, how a character looks. A font is a set of glyphs. -#: ../src/verbs.cpp:2436 +#: ../src/verbs.cpp:2441 msgid "Remove all manual kerns and glyph rotations from a text object" msgstr "" "Alle manuellen Unterschneidungen und Rotationen von einem Textobjekt " "entfernen" -#: ../src/verbs.cpp:2438 +#: ../src/verbs.cpp:2443 msgid "_Union" msgstr "_Vereinigung" -#: ../src/verbs.cpp:2439 +#: ../src/verbs.cpp:2444 msgid "Create union of selected paths" msgstr "Vereinigung der ausgewählten Pfade erzeugen" -#: ../src/verbs.cpp:2440 +#: ../src/verbs.cpp:2445 msgid "_Intersection" msgstr "Ü_berschneidung" -#: ../src/verbs.cpp:2441 +#: ../src/verbs.cpp:2446 msgid "Create intersection of selected paths" msgstr "Überschneidung der gewählten Pfade erzeugen" -#: ../src/verbs.cpp:2442 +#: ../src/verbs.cpp:2447 msgid "_Difference" msgstr "_Differenz" -#: ../src/verbs.cpp:2443 +#: ../src/verbs.cpp:2448 msgid "Create difference of selected paths (bottom minus top)" msgstr "Differenz der gewählten Pfade erzeugen (Unterer minus Oberer)" -#: ../src/verbs.cpp:2444 +#: ../src/verbs.cpp:2449 msgid "E_xclusion" msgstr "E_xklusiv-Oder (Ausschluss)" -#: ../src/verbs.cpp:2445 +#: ../src/verbs.cpp:2450 msgid "" "Create exclusive OR of selected paths (those parts that belong to only one " "path)" @@ -22650,21 +23032,21 @@ msgstr "" "Exklusiv-ODER der ausgewählen Pfade erzeugen (die Teile, die nur zu einem " "Pfad gehören)" -#: ../src/verbs.cpp:2446 +#: ../src/verbs.cpp:2451 msgid "Di_vision" msgstr "Di_vision" -#: ../src/verbs.cpp:2447 +#: ../src/verbs.cpp:2452 msgid "Cut the bottom path into pieces" msgstr "Untenliegenden Pfad in Teile zerschneiden" #. TRANSLATORS: "to cut a path" is not the same as "to break a path apart" - see the #. Advanced tutorial for more info -#: ../src/verbs.cpp:2450 +#: ../src/verbs.cpp:2455 msgid "Cut _Path" msgstr "Pfad _zerschneiden" -#: ../src/verbs.cpp:2451 +#: ../src/verbs.cpp:2456 msgid "Cut the bottom path's stroke into pieces, removing fill" msgstr "" "Kontur des untenliegenden Pfads in Teile zerschneiden, Füllung wird entfernt" @@ -22672,348 +23054,348 @@ msgstr "" #. TRANSLATORS: "outset": expand a shape by offsetting the object's path, #. i.e. by displacing it perpendicular to the path in each point. #. See also the Advanced Tutorial for explanation. -#: ../src/verbs.cpp:2455 +#: ../src/verbs.cpp:2460 msgid "Outs_et" msgstr "Er_weitern (vergrößern)" -#: ../src/verbs.cpp:2456 +#: ../src/verbs.cpp:2461 msgid "Outset selected paths" msgstr "Gewählte Pfade erweitern (vergrößern)" -#: ../src/verbs.cpp:2458 +#: ../src/verbs.cpp:2463 msgid "O_utset Path by 1 px" msgstr "Pfad um 1 px erweitern (vergrößern)" -#: ../src/verbs.cpp:2459 +#: ../src/verbs.cpp:2464 msgid "Outset selected paths by 1 px" msgstr "Gewählte Pfade um 1 px erweitern (vergrößern)" -#: ../src/verbs.cpp:2461 +#: ../src/verbs.cpp:2466 msgid "O_utset Path by 10 px" msgstr "Pfad um 10 px _erweitern (vergrößern)" -#: ../src/verbs.cpp:2462 +#: ../src/verbs.cpp:2467 msgid "Outset selected paths by 10 px" msgstr "Gewählte Pfade um 10 px erweitern (vergrößern)" #. TRANSLATORS: "inset": contract a shape by offsetting the object's path, #. i.e. by displacing it perpendicular to the path in each point. #. See also the Advanced Tutorial for explanation. -#: ../src/verbs.cpp:2466 +#: ../src/verbs.cpp:2471 msgid "I_nset" msgstr "Schrum_pfen" # !!! make singular and plural forms -#: ../src/verbs.cpp:2467 +#: ../src/verbs.cpp:2472 msgid "Inset selected paths" msgstr "Gewählte Pfade schrumpfen" -#: ../src/verbs.cpp:2469 +#: ../src/verbs.cpp:2474 msgid "I_nset Path by 1 px" msgstr "Pfad um _1 px schrumpfen" -#: ../src/verbs.cpp:2470 +#: ../src/verbs.cpp:2475 msgid "Inset selected paths by 1 px" msgstr "Gewählte Pfade um 1 px schrumpfen" -#: ../src/verbs.cpp:2472 +#: ../src/verbs.cpp:2477 msgid "I_nset Path by 10 px" msgstr "Pfad um 1_0 px schrumpfen" -#: ../src/verbs.cpp:2473 +#: ../src/verbs.cpp:2478 msgid "Inset selected paths by 10 px" msgstr "Gewählte Pfade um 10 px schrumpfen" -#: ../src/verbs.cpp:2475 +#: ../src/verbs.cpp:2480 msgid "D_ynamic Offset" msgstr "D_ynamischer Versatz" -#: ../src/verbs.cpp:2475 +#: ../src/verbs.cpp:2480 msgid "Create a dynamic offset object" msgstr "Ein Objekt mit dynamischem Versatz erstellen" -#: ../src/verbs.cpp:2477 +#: ../src/verbs.cpp:2482 msgid "_Linked Offset" msgstr "Ver_bundener Versatz" -#: ../src/verbs.cpp:2478 +#: ../src/verbs.cpp:2483 msgid "Create a dynamic offset object linked to the original path" msgstr "" "Dynamischen Versatz am Objekt erstellen. Verknüpfung zum originalen Pfad " "bleibt bestehen." -#: ../src/verbs.cpp:2480 +#: ../src/verbs.cpp:2485 msgid "_Stroke to Path" msgstr "_Kontur in Pfad umwandeln" -#: ../src/verbs.cpp:2481 +#: ../src/verbs.cpp:2486 msgid "Convert selected object's stroke to paths" msgstr "Die gewählten Konturen des Objekts in Pfade umwandeln" -#: ../src/verbs.cpp:2482 +#: ../src/verbs.cpp:2487 msgid "Si_mplify" msgstr "Ver_einfachen" -#: ../src/verbs.cpp:2483 +#: ../src/verbs.cpp:2488 msgid "Simplify selected paths (remove extra nodes)" msgstr "Ausgewählte Pfade vereinfachen (unnötige Punkte werden entfernt)" -#: ../src/verbs.cpp:2484 +#: ../src/verbs.cpp:2489 msgid "_Reverse" msgstr "_Richtung umkehren" -#: ../src/verbs.cpp:2485 +#: ../src/verbs.cpp:2490 msgid "Reverse the direction of selected paths (useful for flipping markers)" msgstr "" "Richtung der gewählten Pfade umkehren (nützlich, um Markierungen umzukehren)" -#: ../src/verbs.cpp:2488 +#: ../src/verbs.cpp:2493 msgid "Create one or more paths from a bitmap by tracing it" msgstr "Erzeuge einen oder mehrere Pfade durch Vektorisieren eines Bitmaps" -#: ../src/verbs.cpp:2489 +#: ../src/verbs.cpp:2494 msgid "Make a _Bitmap Copy" msgstr "_Bitmap-Kopie erstellen" -#: ../src/verbs.cpp:2490 +#: ../src/verbs.cpp:2495 msgid "Export selection to a bitmap and insert it into document" msgstr "Auswahl als Bitmap exportieren und in das Dokument re-importieren" # !!! maybe use "verbinden" -#: ../src/verbs.cpp:2491 +#: ../src/verbs.cpp:2496 msgid "_Combine" msgstr "_Kombinieren" -#: ../src/verbs.cpp:2492 +#: ../src/verbs.cpp:2497 msgid "Combine several paths into one" msgstr "Mehrere Pfade zu einem kombinieren" #. TRANSLATORS: "to cut a path" is not the same as "to break a path apart" - see the #. Advanced tutorial for more info -#: ../src/verbs.cpp:2495 +#: ../src/verbs.cpp:2500 msgid "Break _Apart" msgstr "_Zerlegen" -#: ../src/verbs.cpp:2496 +#: ../src/verbs.cpp:2501 msgid "Break selected paths into subpaths" msgstr "Die markierten Pfade in Unterpfade zerlegen" -#: ../src/verbs.cpp:2497 +#: ../src/verbs.cpp:2502 msgid "Ro_ws and Columns..." msgstr "Reihen und Spalten..." -#: ../src/verbs.cpp:2498 +#: ../src/verbs.cpp:2503 msgid "Arrange selected objects in a table" msgstr "Ausgewählte Objekte im Raster anordnen" #. Layer -#: ../src/verbs.cpp:2500 +#: ../src/verbs.cpp:2505 msgid "_Add Layer..." msgstr "Ebene _hinzufügen…" -#: ../src/verbs.cpp:2501 +#: ../src/verbs.cpp:2506 msgid "Create a new layer" msgstr "Eine neue Ebene anlegen" -#: ../src/verbs.cpp:2502 +#: ../src/verbs.cpp:2507 msgid "Re_name Layer..." msgstr "Ebene umbe_nennen…" -#: ../src/verbs.cpp:2503 +#: ../src/verbs.cpp:2508 msgid "Rename the current layer" msgstr "Aktuelle Ebene umbenennen" -#: ../src/verbs.cpp:2504 +#: ../src/verbs.cpp:2509 msgid "Switch to Layer Abov_e" msgstr "Zur darü_berliegenden Ebene umschalten" -#: ../src/verbs.cpp:2505 +#: ../src/verbs.cpp:2510 msgid "Switch to the layer above the current" msgstr "Zur darüberliegenden Ebene im Dokument umschalten" -#: ../src/verbs.cpp:2506 +#: ../src/verbs.cpp:2511 msgid "Switch to Layer Belo_w" msgstr "Zur dar_unterliegenden Ebene umschalten" -#: ../src/verbs.cpp:2507 +#: ../src/verbs.cpp:2512 msgid "Switch to the layer below the current" msgstr "Zur darunterliegenden Ebene im Dokument umschalten" -#: ../src/verbs.cpp:2508 +#: ../src/verbs.cpp:2513 msgid "Move Selection to Layer Abo_ve" msgstr "Auswahl zur darüber_liegenden Ebene verschieben" -#: ../src/verbs.cpp:2509 +#: ../src/verbs.cpp:2514 msgid "Move selection to the layer above the current" msgstr "Die Auswahl auf die darüberliegende Ebene verschieben" -#: ../src/verbs.cpp:2510 +#: ../src/verbs.cpp:2515 msgid "Move Selection to Layer Bel_ow" msgstr "Auswahl zur darun_terliegenden Ebene verschieben" -#: ../src/verbs.cpp:2511 +#: ../src/verbs.cpp:2516 msgid "Move selection to the layer below the current" msgstr "Die Auswahl auf die darunterliegende Ebene verschieben" -#: ../src/verbs.cpp:2512 +#: ../src/verbs.cpp:2517 msgid "Move Selection to Layer..." msgstr "Auswahl zur anderer Ebene verschieben" -#: ../src/verbs.cpp:2514 +#: ../src/verbs.cpp:2519 msgid "Layer to _Top" msgstr "Ebene nach ganz _oben" -#: ../src/verbs.cpp:2515 +#: ../src/verbs.cpp:2520 msgid "Raise the current layer to the top" msgstr "Die aktuelle Ebene nach ganz oben anheben" -#: ../src/verbs.cpp:2516 +#: ../src/verbs.cpp:2521 msgid "Layer to _Bottom" msgstr "Ebene nach ganz _unten" -#: ../src/verbs.cpp:2517 +#: ../src/verbs.cpp:2522 msgid "Lower the current layer to the bottom" msgstr "Die aktuelle Ebene nach ganz unten absenken" -#: ../src/verbs.cpp:2518 +#: ../src/verbs.cpp:2523 msgid "_Raise Layer" msgstr "Ebene an_heben" -#: ../src/verbs.cpp:2519 +#: ../src/verbs.cpp:2524 msgid "Raise the current layer" msgstr "Die aktuelle Ebene anheben" -#: ../src/verbs.cpp:2520 +#: ../src/verbs.cpp:2525 msgid "_Lower Layer" msgstr "Ebene ab_senken" -#: ../src/verbs.cpp:2521 +#: ../src/verbs.cpp:2526 msgid "Lower the current layer" msgstr "Die aktuelle Ebene absenken" -#: ../src/verbs.cpp:2522 +#: ../src/verbs.cpp:2527 msgid "D_uplicate Current Layer" msgstr "Aktuelle Ebene duplizieren" -#: ../src/verbs.cpp:2523 +#: ../src/verbs.cpp:2528 msgid "Duplicate an existing layer" msgstr "Dupliziert eine vorhandene Ebene" -#: ../src/verbs.cpp:2524 +#: ../src/verbs.cpp:2529 msgid "_Delete Current Layer" msgstr "Aktuelle Ebene _löschen" -#: ../src/verbs.cpp:2525 +#: ../src/verbs.cpp:2530 msgid "Delete the current layer" msgstr "Die aktuelle Ebene löschen" -#: ../src/verbs.cpp:2526 +#: ../src/verbs.cpp:2531 msgid "_Show/hide other layers" msgstr "Andere Ebenen anzeigen oder ausblenden" -#: ../src/verbs.cpp:2527 +#: ../src/verbs.cpp:2532 msgid "Solo the current layer" msgstr "Aktuelle Ebene vereinzeln" -#: ../src/verbs.cpp:2528 +#: ../src/verbs.cpp:2533 msgid "_Show all layers" msgstr "Zeige alle Ebenen" -#: ../src/verbs.cpp:2529 +#: ../src/verbs.cpp:2534 msgid "Show all the layers" msgstr "Zeige all die Ebenen" -#: ../src/verbs.cpp:2530 +#: ../src/verbs.cpp:2535 msgid "_Hide all layers" msgstr "Alle Ebenen ausblenden" -#: ../src/verbs.cpp:2531 +#: ../src/verbs.cpp:2536 msgid "Hide all the layers" msgstr "All die Ebenen ausblenden" -#: ../src/verbs.cpp:2532 +#: ../src/verbs.cpp:2537 msgid "_Lock all layers" msgstr "A_lle Ebenen sperren" -#: ../src/verbs.cpp:2533 +#: ../src/verbs.cpp:2538 msgid "Lock all the layers" msgstr "Alle der Ebenen sperren" -#: ../src/verbs.cpp:2534 +#: ../src/verbs.cpp:2539 msgid "Lock/Unlock _other layers" msgstr "Andere Ebenen sperren/entsperren" -#: ../src/verbs.cpp:2535 +#: ../src/verbs.cpp:2540 msgid "Lock all the other layers" msgstr "Alle der anderen Ebenen sperren" -#: ../src/verbs.cpp:2536 +#: ../src/verbs.cpp:2541 msgid "_Unlock all layers" msgstr "Alle Ebenen entsperren" -#: ../src/verbs.cpp:2537 +#: ../src/verbs.cpp:2542 msgid "Unlock all the layers" msgstr "Alle Ebenen entsperren" -#: ../src/verbs.cpp:2538 +#: ../src/verbs.cpp:2543 msgid "_Lock/Unlock Current Layer" msgstr "Aktuelle Ebene sperren/entsperren" -#: ../src/verbs.cpp:2539 +#: ../src/verbs.cpp:2544 msgid "Toggle lock on current layer" msgstr "Sperre auf aktuellen Layer umschalten" -#: ../src/verbs.cpp:2540 +#: ../src/verbs.cpp:2545 msgid "_Show/hide Current Layer" msgstr "Aktuelle Ebene anzeigen oder au_sblenden" -#: ../src/verbs.cpp:2541 +#: ../src/verbs.cpp:2546 msgid "Toggle visibility of current layer" msgstr "Aktuelle Ebene sichtbar/unsichtbar" #. Object -#: ../src/verbs.cpp:2544 +#: ../src/verbs.cpp:2549 msgid "Rotate _90° CW" msgstr "Um 90° im Uhr_zeigersinn rotieren" #. This is shared between tooltips and statusbar, so they #. must use UTF-8, not HTML entities for special characters. -#: ../src/verbs.cpp:2547 +#: ../src/verbs.cpp:2552 msgid "Rotate selection 90° clockwise" msgstr "Auswahl um 90° im Uhrzeigersinn drehen" -#: ../src/verbs.cpp:2548 +#: ../src/verbs.cpp:2553 msgid "Rotate 9_0° CCW" msgstr "Um 90° entgegen Uhrzeigersinn _rotieren" #. This is shared between tooltips and statusbar, so they #. must use UTF-8, not HTML entities for special characters. -#: ../src/verbs.cpp:2551 +#: ../src/verbs.cpp:2556 msgid "Rotate selection 90° counter-clockwise" msgstr "Auswahl um 90° gegen den Uhrzeigersinn drehen" -#: ../src/verbs.cpp:2552 +#: ../src/verbs.cpp:2557 msgid "Remove _Transformations" msgstr "Transformationen _zurücksetzen" -#: ../src/verbs.cpp:2553 +#: ../src/verbs.cpp:2558 msgid "Remove transformations from object" msgstr "Transformationen des Objekts rückgängig machen" -#: ../src/verbs.cpp:2554 +#: ../src/verbs.cpp:2559 msgid "_Object to Path" msgstr "_Objekt in Pfad umwandeln" -#: ../src/verbs.cpp:2555 +#: ../src/verbs.cpp:2560 msgid "Convert selected object to path" msgstr "Gewähltes Objekt in Pfad umwandeln" # !!! Frame, not form? -#: ../src/verbs.cpp:2556 +#: ../src/verbs.cpp:2561 msgid "_Flow into Frame" msgstr "Umbruch an Form _anpassen" -#: ../src/verbs.cpp:2557 +#: ../src/verbs.cpp:2562 msgid "" "Put text into a frame (path or shape), creating a flowed text linked to the " "frame object" @@ -23021,868 +23403,868 @@ msgstr "" "Text in einen Rahmen setzen (Pfad oder Form), so daß ein mit seinem Rahmen " "verbundener Fließtext erzeugt wird" -#: ../src/verbs.cpp:2558 +#: ../src/verbs.cpp:2563 msgid "_Unflow" msgstr "Fließtext _aufheben" -#: ../src/verbs.cpp:2559 +#: ../src/verbs.cpp:2564 msgid "Remove text from frame (creates a single-line text object)" msgstr "Text von der Form trennen (erzeugt einzeiliges Textobjekt)" -#: ../src/verbs.cpp:2560 +#: ../src/verbs.cpp:2565 msgid "_Convert to Text" msgstr "In normalen Text um_wandeln" -#: ../src/verbs.cpp:2561 +#: ../src/verbs.cpp:2566 msgid "Convert flowed text to regular text object (preserves appearance)" msgstr "Fließtext in gewöhnliches Textobjekt umwandeln (behält Aussehen bei)" -#: ../src/verbs.cpp:2563 +#: ../src/verbs.cpp:2568 msgid "Flip _Horizontal" msgstr "_Horizontal umkehren" -#: ../src/verbs.cpp:2563 +#: ../src/verbs.cpp:2568 msgid "Flip selected objects horizontally" msgstr "Ausgewählte Objekte horizontal umkehren" -#: ../src/verbs.cpp:2566 +#: ../src/verbs.cpp:2571 msgid "Flip _Vertical" msgstr "_Vertikal umkehren" -#: ../src/verbs.cpp:2566 +#: ../src/verbs.cpp:2571 msgid "Flip selected objects vertically" msgstr "Ausgewählte Objekte vertikal umkehren" -#: ../src/verbs.cpp:2569 +#: ../src/verbs.cpp:2574 msgid "Apply mask to selection (using the topmost object as mask)" msgstr "" "Maskierung auf Auswahl anwenden (oberstes Objekt als Maskierung verwenden)" -#: ../src/verbs.cpp:2571 +#: ../src/verbs.cpp:2576 msgid "Edit mask" msgstr "Maskierung bearbeiten" -#: ../src/verbs.cpp:2572 ../src/verbs.cpp:2578 +#: ../src/verbs.cpp:2577 ../src/verbs.cpp:2583 msgid "_Release" msgstr "F_reigeben" -#: ../src/verbs.cpp:2573 +#: ../src/verbs.cpp:2578 msgid "Remove mask from selection" msgstr "Maskierung von Auswahl entfernen" -#: ../src/verbs.cpp:2575 +#: ../src/verbs.cpp:2580 msgid "" "Apply clipping path to selection (using the topmost object as clipping path)" msgstr "" "Ausschneidepfad auf Auswahl anwenden (oberstes Objekt als Ausschneidepfad " "verwenden)" -#: ../src/verbs.cpp:2577 +#: ../src/verbs.cpp:2582 msgid "Edit clipping path" msgstr "Ausschneidepfad bearbeiten" -#: ../src/verbs.cpp:2579 +#: ../src/verbs.cpp:2584 msgid "Remove clipping path from selection" msgstr "Ausschneidepfad von Auswahl entfernen" #. Tools -#: ../src/verbs.cpp:2582 +#: ../src/verbs.cpp:2587 msgctxt "ContextVerb" msgid "Select" msgstr "Auswählen" -#: ../src/verbs.cpp:2583 +#: ../src/verbs.cpp:2588 msgid "Select and transform objects" msgstr "Objekte auswählen und verändern" -#: ../src/verbs.cpp:2584 +#: ../src/verbs.cpp:2589 msgctxt "ContextVerb" msgid "Node Edit" msgstr "Knoten bearbeiten" -#: ../src/verbs.cpp:2585 +#: ../src/verbs.cpp:2590 msgid "Edit paths by nodes" msgstr "Bearbeiten der Knoten oder der Anfasser eines Pfades" -#: ../src/verbs.cpp:2586 +#: ../src/verbs.cpp:2591 msgctxt "ContextVerb" msgid "Tweak" msgstr "Modellieren" -#: ../src/verbs.cpp:2587 +#: ../src/verbs.cpp:2592 msgid "Tweak objects by sculpting or painting" msgstr "Objekte verbessern durch Verformen oder Malen" -#: ../src/verbs.cpp:2588 +#: ../src/verbs.cpp:2593 msgctxt "ContextVerb" msgid "Spray" msgstr "Spray" -#: ../src/verbs.cpp:2589 +#: ../src/verbs.cpp:2594 msgid "Spray objects by sculpting or painting" msgstr "Objekte sprühen durch Verformen oder Malen" -#: ../src/verbs.cpp:2590 +#: ../src/verbs.cpp:2595 msgctxt "ContextVerb" msgid "Rectangle" msgstr "Rechteck" -#: ../src/verbs.cpp:2591 +#: ../src/verbs.cpp:2596 msgid "Create rectangles and squares" msgstr "Rechtecke und Quadrate erstellen" -#: ../src/verbs.cpp:2592 +#: ../src/verbs.cpp:2597 msgctxt "ContextVerb" msgid "3D Box" msgstr "3D-Box" -#: ../src/verbs.cpp:2593 +#: ../src/verbs.cpp:2598 msgid "Create 3D boxes" msgstr "3D-Boxen erzeugen" -#: ../src/verbs.cpp:2594 +#: ../src/verbs.cpp:2599 msgctxt "ContextVerb" msgid "Ellipse" msgstr "Ellipse" -#: ../src/verbs.cpp:2595 +#: ../src/verbs.cpp:2600 msgid "Create circles, ellipses, and arcs" msgstr "Kreise, Ellipsen und Bögen erstellen" -#: ../src/verbs.cpp:2596 +#: ../src/verbs.cpp:2601 msgctxt "ContextVerb" msgid "Star" msgstr "Stern" -#: ../src/verbs.cpp:2597 +#: ../src/verbs.cpp:2602 msgid "Create stars and polygons" msgstr "Sterne und Polygone erstellen" -#: ../src/verbs.cpp:2598 +#: ../src/verbs.cpp:2603 msgctxt "ContextVerb" msgid "Spiral" msgstr "Spirale" -#: ../src/verbs.cpp:2599 +#: ../src/verbs.cpp:2604 msgid "Create spirals" msgstr "Spiralen erstellen" -#: ../src/verbs.cpp:2600 +#: ../src/verbs.cpp:2605 msgctxt "ContextVerb" msgid "Pencil" msgstr "Malwerkzeug (Freihand)" -#: ../src/verbs.cpp:2601 +#: ../src/verbs.cpp:2606 msgid "Draw freehand lines" msgstr "Freihandlinien zeichnen" -#: ../src/verbs.cpp:2602 +#: ../src/verbs.cpp:2607 msgctxt "ContextVerb" msgid "Pen" msgstr "Füller (Linien und Bézierkurven)" -#: ../src/verbs.cpp:2603 +#: ../src/verbs.cpp:2608 msgid "Draw Bezier curves and straight lines" msgstr "Bézier-Kurven und gerade Linien zeichnen" -#: ../src/verbs.cpp:2604 +#: ../src/verbs.cpp:2609 msgctxt "ContextVerb" msgid "Calligraphy" msgstr "Kalligrafie" -#: ../src/verbs.cpp:2605 +#: ../src/verbs.cpp:2610 msgid "Draw calligraphic or brush strokes" msgstr "Kalligrafisch zeichnen" -#: ../src/verbs.cpp:2607 +#: ../src/verbs.cpp:2612 msgid "Create and edit text objects" msgstr "Textobjekte erstellen und bearbeiten" -#: ../src/verbs.cpp:2608 +#: ../src/verbs.cpp:2613 msgctxt "ContextVerb" msgid "Gradient" msgstr "Farbverlauf" -#: ../src/verbs.cpp:2609 +#: ../src/verbs.cpp:2614 msgid "Create and edit gradients" msgstr "Farbverläufe erstellen und bearbeiten" -#: ../src/verbs.cpp:2610 +#: ../src/verbs.cpp:2615 msgctxt "ContextVerb" msgid "Mesh" msgstr "Gitter" -#: ../src/verbs.cpp:2611 +#: ../src/verbs.cpp:2616 msgid "Create and edit meshes" msgstr "Gitter erstellen und bearbeiten" -#: ../src/verbs.cpp:2612 +#: ../src/verbs.cpp:2617 msgctxt "ContextVerb" msgid "Zoom" msgstr "Zoomfaktor" -#: ../src/verbs.cpp:2613 +#: ../src/verbs.cpp:2618 msgid "Zoom in or out" msgstr "Zoomfaktor vergrößern oder verringern" -#: ../src/verbs.cpp:2615 +#: ../src/verbs.cpp:2620 msgid "Measurement tool" msgstr "Messwerkzeug" -#: ../src/verbs.cpp:2616 +#: ../src/verbs.cpp:2621 msgctxt "ContextVerb" msgid "Dropper" msgstr "Farbpipette" -#: ../src/verbs.cpp:2617 ../src/widgets/sp-color-notebook.cpp:413 +#: ../src/verbs.cpp:2622 ../src/widgets/sp-color-notebook.cpp:411 msgid "Pick colors from image" msgstr "Farben aus dem Bild übernehmen" -#: ../src/verbs.cpp:2618 +#: ../src/verbs.cpp:2623 msgctxt "ContextVerb" msgid "Connector" msgstr "Objektverbinder" -#: ../src/verbs.cpp:2619 +#: ../src/verbs.cpp:2624 msgid "Create diagram connectors" msgstr "Objektverbinder erzeugen" -#: ../src/verbs.cpp:2620 +#: ../src/verbs.cpp:2625 msgctxt "ContextVerb" msgid "Paint Bucket" msgstr "Farbeimer" -#: ../src/verbs.cpp:2621 +#: ../src/verbs.cpp:2626 msgid "Fill bounded areas" msgstr "Abgegrenzte Flächen füllen" -#: ../src/verbs.cpp:2622 +#: ../src/verbs.cpp:2627 msgctxt "ContextVerb" msgid "LPE Edit" msgstr "LPE bearbeiten" -#: ../src/verbs.cpp:2623 +#: ../src/verbs.cpp:2628 msgid "Edit Path Effect parameters" msgstr "Pfad-Effekt-Parameter bearbeiten" # Name des Effekte-submenü, das alle Bitmap-Effekte beinhaltet. -#: ../src/verbs.cpp:2624 +#: ../src/verbs.cpp:2629 msgctxt "ContextVerb" msgid "Eraser" msgstr "Radierer" -#: ../src/verbs.cpp:2625 +#: ../src/verbs.cpp:2630 msgid "Erase existing paths" msgstr "Pfade entfernen" -#: ../src/verbs.cpp:2626 +#: ../src/verbs.cpp:2631 msgctxt "ContextVerb" msgid "LPE Tool" msgstr "LPE-Werkzeug" -#: ../src/verbs.cpp:2627 +#: ../src/verbs.cpp:2632 msgid "Do geometric constructions" msgstr "Geometrische Konstruktion durchführen" #. Tool prefs -#: ../src/verbs.cpp:2629 +#: ../src/verbs.cpp:2634 msgid "Selector Preferences" msgstr "Einstellungen für Auswahlwerkzeug" -#: ../src/verbs.cpp:2630 +#: ../src/verbs.cpp:2635 msgid "Open Preferences for the Selector tool" msgstr "Einstellungen für das Auswahlwerkzeug öffnen" -#: ../src/verbs.cpp:2631 +#: ../src/verbs.cpp:2636 msgid "Node Tool Preferences" msgstr "Einstellungen für Knotenwerkzeug" -#: ../src/verbs.cpp:2632 +#: ../src/verbs.cpp:2637 msgid "Open Preferences for the Node tool" msgstr "Einstellungen für das Knotenwerkzeug öffnen" -#: ../src/verbs.cpp:2633 +#: ../src/verbs.cpp:2638 msgid "Tweak Tool Preferences" msgstr "Einstellungen für Anpasswerkzeug" -#: ../src/verbs.cpp:2634 +#: ../src/verbs.cpp:2639 msgid "Open Preferences for the Tweak tool" msgstr "Eigenschaften für das Modifizier-Werkzeug öffnen" -#: ../src/verbs.cpp:2635 +#: ../src/verbs.cpp:2640 msgid "Spray Tool Preferences" msgstr "Einstellungen für Spraydose" -#: ../src/verbs.cpp:2636 +#: ../src/verbs.cpp:2641 msgid "Open Preferences for the Spray tool" msgstr "Eigenschaften für das Spray-Werkzeug öffnen" -#: ../src/verbs.cpp:2637 +#: ../src/verbs.cpp:2642 msgid "Rectangle Preferences" msgstr "Eigenschaften für Rechteckwerkzeug" -#: ../src/verbs.cpp:2638 +#: ../src/verbs.cpp:2643 msgid "Open Preferences for the Rectangle tool" msgstr "Einstellungen für das Rechteckwerkzeug öffnen" -#: ../src/verbs.cpp:2639 +#: ../src/verbs.cpp:2644 msgid "3D Box Preferences" msgstr "Einstellungen für 3D-Box" -#: ../src/verbs.cpp:2640 +#: ../src/verbs.cpp:2645 msgid "Open Preferences for the 3D Box tool" msgstr "Einstellungen für das 3D-Box-Werkzeug öffnen" -#: ../src/verbs.cpp:2641 +#: ../src/verbs.cpp:2646 msgid "Ellipse Preferences" msgstr "Einstellungen für Ellipsenwerkzeug" -#: ../src/verbs.cpp:2642 +#: ../src/verbs.cpp:2647 msgid "Open Preferences for the Ellipse tool" msgstr "Einstellungen für das Ellipsenwerkzeug öffnen" -#: ../src/verbs.cpp:2643 +#: ../src/verbs.cpp:2648 msgid "Star Preferences" msgstr "Einstellungen für Sternwerkzeug" -#: ../src/verbs.cpp:2644 +#: ../src/verbs.cpp:2649 msgid "Open Preferences for the Star tool" msgstr "Eigenschaften für das Sternwerkzeug öffnen" -#: ../src/verbs.cpp:2645 +#: ../src/verbs.cpp:2650 msgid "Spiral Preferences" msgstr "Einstellungen für Spiralenwerkzeug" -#: ../src/verbs.cpp:2646 +#: ../src/verbs.cpp:2651 msgid "Open Preferences for the Spiral tool" msgstr "Eigenschaften für das Spiralenwerkzeug öffnen" -#: ../src/verbs.cpp:2647 +#: ../src/verbs.cpp:2652 msgid "Pencil Preferences" msgstr "Einstellungen für Malwerkzeug" -#: ../src/verbs.cpp:2648 +#: ../src/verbs.cpp:2653 msgid "Open Preferences for the Pencil tool" msgstr "Eigenschaften für das Malwerkzeug öffnen" -#: ../src/verbs.cpp:2649 +#: ../src/verbs.cpp:2654 msgid "Pen Preferences" msgstr "Einstellungen für Zeichenwerkzeug" -#: ../src/verbs.cpp:2650 +#: ../src/verbs.cpp:2655 msgid "Open Preferences for the Pen tool" msgstr "Eigenschaften für das Zeichenwerkzeug öffnen" -#: ../src/verbs.cpp:2651 +#: ../src/verbs.cpp:2656 msgid "Calligraphic Preferences" msgstr "Einstellungen für Kalligrafiewerkzeug" -#: ../src/verbs.cpp:2652 +#: ../src/verbs.cpp:2657 msgid "Open Preferences for the Calligraphy tool" msgstr "Eigenschaften für das Kalligrafiewerkzeug öffnen" -#: ../src/verbs.cpp:2653 +#: ../src/verbs.cpp:2658 msgid "Text Preferences" msgstr "Einstellungen für Textwerkzeug" -#: ../src/verbs.cpp:2654 +#: ../src/verbs.cpp:2659 msgid "Open Preferences for the Text tool" msgstr "Eigenschaften für das Textwerkzeug öffnen" -#: ../src/verbs.cpp:2655 +#: ../src/verbs.cpp:2660 msgid "Gradient Preferences" msgstr "Einstellungen für Farbverläufe" -#: ../src/verbs.cpp:2656 +#: ../src/verbs.cpp:2661 msgid "Open Preferences for the Gradient tool" msgstr "Eigenschaften für Farbverläufe öffnen" -#: ../src/verbs.cpp:2657 +#: ../src/verbs.cpp:2662 msgid "Mesh Preferences" msgstr "Gitter-Einstellungen" -#: ../src/verbs.cpp:2658 +#: ../src/verbs.cpp:2663 msgid "Open Preferences for the Mesh tool" msgstr "Eigenschaften für das Gitterwerkzeug öffnen" -#: ../src/verbs.cpp:2659 +#: ../src/verbs.cpp:2664 msgid "Zoom Preferences" msgstr "Einstellungen für Zoomwerkzeug" -#: ../src/verbs.cpp:2660 +#: ../src/verbs.cpp:2665 msgid "Open Preferences for the Zoom tool" msgstr "Eigenschaften für das Zoomwerkzeug öffnen" -#: ../src/verbs.cpp:2661 +#: ../src/verbs.cpp:2666 msgid "Measure Preferences" msgstr "Messwerkzeug-Einstellungen" -#: ../src/verbs.cpp:2662 +#: ../src/verbs.cpp:2667 msgid "Open Preferences for the Measure tool" msgstr "Eigenschaften für das Messwerkzeug öffnen" -#: ../src/verbs.cpp:2663 +#: ../src/verbs.cpp:2668 msgid "Dropper Preferences" msgstr "Einstellungen für Farbpipette" -#: ../src/verbs.cpp:2664 +#: ../src/verbs.cpp:2669 msgid "Open Preferences for the Dropper tool" msgstr "Eigenschaften für die Farbpipette öffnen" -#: ../src/verbs.cpp:2665 +#: ../src/verbs.cpp:2670 msgid "Connector Preferences" msgstr "Einstellungen für Objektverbinder" -#: ../src/verbs.cpp:2666 +#: ../src/verbs.cpp:2671 msgid "Open Preferences for the Connector tool" msgstr "Eigenschaften für das Objektverbinder-Werkzeug öffnen" -#: ../src/verbs.cpp:2667 +#: ../src/verbs.cpp:2672 msgid "Paint Bucket Preferences" msgstr "Einstellungen für den Farbeimer" -#: ../src/verbs.cpp:2668 +#: ../src/verbs.cpp:2673 msgid "Open Preferences for the Paint Bucket tool" msgstr "Eigenschaften für das Farbeimer-Werkzeug öffnen" -#: ../src/verbs.cpp:2669 +#: ../src/verbs.cpp:2674 msgid "Eraser Preferences" msgstr "Einstellungen für das Löschwerkzeug" -#: ../src/verbs.cpp:2670 +#: ../src/verbs.cpp:2675 msgid "Open Preferences for the Eraser tool" msgstr "Eigenschaften für das Löschwerkzeug öffnen" -#: ../src/verbs.cpp:2671 +#: ../src/verbs.cpp:2676 msgid "LPE Tool Preferences" msgstr "Pfad-Effekt-Einstellungen" -#: ../src/verbs.cpp:2672 +#: ../src/verbs.cpp:2677 msgid "Open Preferences for the LPETool tool" msgstr "Eigenschaften für LPE-Werkzeug öffnen" #. Zoom/View -#: ../src/verbs.cpp:2674 +#: ../src/verbs.cpp:2679 msgid "Zoom In" msgstr "Heranzoomen" -#: ../src/verbs.cpp:2674 +#: ../src/verbs.cpp:2679 msgid "Zoom in" msgstr "Ansicht vergrößern" -#: ../src/verbs.cpp:2675 +#: ../src/verbs.cpp:2680 msgid "Zoom Out" msgstr "Wegzoomen" -#: ../src/verbs.cpp:2675 +#: ../src/verbs.cpp:2680 msgid "Zoom out" msgstr "Ansicht verkleinern" -#: ../src/verbs.cpp:2676 +#: ../src/verbs.cpp:2681 msgid "_Rulers" msgstr "_Lineale" -#: ../src/verbs.cpp:2676 +#: ../src/verbs.cpp:2681 msgid "Show or hide the canvas rulers" msgstr "Zeichnungslineale anzeigen oder ausblenden" -#: ../src/verbs.cpp:2677 +#: ../src/verbs.cpp:2682 msgid "Scroll_bars" msgstr "Roll_balken" -#: ../src/verbs.cpp:2677 +#: ../src/verbs.cpp:2682 msgid "Show or hide the canvas scrollbars" msgstr "Rollbalken anzeigen oder ausblenden" -#: ../src/verbs.cpp:2678 +#: ../src/verbs.cpp:2683 msgid "_Grid" msgstr "_Gitter" -#: ../src/verbs.cpp:2678 +#: ../src/verbs.cpp:2683 msgid "Show or hide the grid" msgstr "Gitter anzeigen oder ausblenden" -#: ../src/verbs.cpp:2679 +#: ../src/verbs.cpp:2684 msgid "G_uides" msgstr "_Führungslinien" -#: ../src/verbs.cpp:2679 +#: ../src/verbs.cpp:2684 msgid "Show or hide guides (drag from a ruler to create a guide)" msgstr "" "Führungslinien zeigen oder verstecken (von einem Lineal ziehen, um eine " "Führungslinie zu erzeugen)" -#: ../src/verbs.cpp:2680 +#: ../src/verbs.cpp:2685 msgid "Enable snapping" msgstr "Einrasten einschalten" -#: ../src/verbs.cpp:2681 +#: ../src/verbs.cpp:2686 msgid "_Commands Bar" msgstr "Befehlsleiste" -#: ../src/verbs.cpp:2681 +#: ../src/verbs.cpp:2686 msgid "Show or hide the Commands bar (under the menu)" msgstr "Befehlsleiste anzeigen oder ausblenden (Leiste unter dem Hauptmenü)" -#: ../src/verbs.cpp:2682 +#: ../src/verbs.cpp:2687 msgid "Sn_ap Controls Bar" msgstr "Einrasten-Kontrollleiste" -#: ../src/verbs.cpp:2682 +#: ../src/verbs.cpp:2687 msgid "Show or hide the snapping controls" msgstr "Kontrollen für Einrasten ein-/ausblenden" -#: ../src/verbs.cpp:2683 +#: ../src/verbs.cpp:2688 msgid "T_ool Controls Bar" msgstr "Werkzeugeinstellungsleiste" -#: ../src/verbs.cpp:2683 +#: ../src/verbs.cpp:2688 msgid "Show or hide the Tool Controls bar" msgstr "Einstellungsleiste für das Werkzeug ein-/ausblenden" -#: ../src/verbs.cpp:2684 +#: ../src/verbs.cpp:2689 msgid "_Toolbox" msgstr "Werkzeugleis_te" -#: ../src/verbs.cpp:2684 +#: ../src/verbs.cpp:2689 msgid "Show or hide the main toolbox (on the left)" msgstr "Werkzeugleiste (auf der linken Seite) an- oder abschalten" -#: ../src/verbs.cpp:2685 +#: ../src/verbs.cpp:2690 msgid "_Palette" msgstr "_Palette" -#: ../src/verbs.cpp:2685 +#: ../src/verbs.cpp:2690 msgid "Show or hide the color palette" msgstr "Farbpalette ein-/ausblenden" -#: ../src/verbs.cpp:2686 +#: ../src/verbs.cpp:2691 msgid "_Statusbar" msgstr "_Statuszeile" -#: ../src/verbs.cpp:2686 +#: ../src/verbs.cpp:2691 msgid "Show or hide the statusbar (at the bottom of the window)" msgstr "Statusleiste an- oder abschalten (am unteren Ende des Fensters)" -#: ../src/verbs.cpp:2687 +#: ../src/verbs.cpp:2692 msgid "Nex_t Zoom" msgstr "_Nächster Zoomfaktor" -#: ../src/verbs.cpp:2687 +#: ../src/verbs.cpp:2692 msgid "Next zoom (from the history of zooms)" msgstr "Den nächsten Zoomfaktor einstellen (aus der Liste bisheriger Faktoren)" -#: ../src/verbs.cpp:2689 +#: ../src/verbs.cpp:2694 msgid "Pre_vious Zoom" msgstr "_Vorheriger Zoomfaktor" -#: ../src/verbs.cpp:2689 +#: ../src/verbs.cpp:2694 msgid "Previous zoom (from the history of zooms)" msgstr "" "Den vorherigen Zoomfaktor einstellen (aus der Liste bisheriger Faktoren)" -#: ../src/verbs.cpp:2691 +#: ../src/verbs.cpp:2696 msgid "Zoom 1:_1" msgstr "Zoomfaktor 1:_1" -#: ../src/verbs.cpp:2691 +#: ../src/verbs.cpp:2696 msgid "Zoom to 1:1" msgstr "Den Zoomfaktor auf 1:1 setzen" -#: ../src/verbs.cpp:2693 +#: ../src/verbs.cpp:2698 msgid "Zoom 1:_2" msgstr "Zoomfaktor 1:_2" -#: ../src/verbs.cpp:2693 +#: ../src/verbs.cpp:2698 msgid "Zoom to 1:2" msgstr "Den Zoomfaktor auf 1:2 setzen" -#: ../src/verbs.cpp:2695 +#: ../src/verbs.cpp:2700 msgid "_Zoom 2:1" msgstr "_Zoomfaktor 2:1" -#: ../src/verbs.cpp:2695 +#: ../src/verbs.cpp:2700 msgid "Zoom to 2:1" msgstr "Den Zoomfaktor auf 2:1 setzen" -#: ../src/verbs.cpp:2698 +#: ../src/verbs.cpp:2703 msgid "_Fullscreen" msgstr "Voll_bild" -#: ../src/verbs.cpp:2698 ../src/verbs.cpp:2700 +#: ../src/verbs.cpp:2703 ../src/verbs.cpp:2705 msgid "Stretch this document window to full screen" msgstr "Dieses Dokumentenfenster auf Vollbild aufziehen" -#: ../src/verbs.cpp:2700 +#: ../src/verbs.cpp:2705 msgid "Fullscreen & Focus Mode" msgstr "Vollbild und Fokusmodus" -#: ../src/verbs.cpp:2703 +#: ../src/verbs.cpp:2708 msgid "Toggle _Focus Mode" msgstr "Schaltet _Fokusmodus um" -#: ../src/verbs.cpp:2703 +#: ../src/verbs.cpp:2708 msgid "Remove excess toolbars to focus on drawing" msgstr "Entfernt überzählige Werkzeugleisten, um Zeichenfläche zu maximieren" -#: ../src/verbs.cpp:2705 +#: ../src/verbs.cpp:2710 msgid "Duplic_ate Window" msgstr "Fenster d_uplizieren" -#: ../src/verbs.cpp:2705 +#: ../src/verbs.cpp:2710 msgid "Open a new window with the same document" msgstr "Das momentan geöffnete Dokument in einem neuen Fenster darstellen" -#: ../src/verbs.cpp:2707 +#: ../src/verbs.cpp:2712 msgid "_New View Preview" msgstr "_Neue Vorschau" -#: ../src/verbs.cpp:2708 +#: ../src/verbs.cpp:2713 msgid "New View Preview" msgstr "Neue Vorschau" #. "view_new_preview" -#: ../src/verbs.cpp:2710 ../src/verbs.cpp:2718 +#: ../src/verbs.cpp:2715 ../src/verbs.cpp:2723 msgid "_Normal" msgstr "_Normal" -#: ../src/verbs.cpp:2711 +#: ../src/verbs.cpp:2716 msgid "Switch to normal display mode" msgstr "In den normalen Anzeigemodus wechseln" -#: ../src/verbs.cpp:2712 +#: ../src/verbs.cpp:2717 msgid "No _Filters" msgstr "Keine _Filter" -#: ../src/verbs.cpp:2713 +#: ../src/verbs.cpp:2718 msgid "Switch to normal display without filters" msgstr "Wechselt in den normalen Anzeigemodus ohne Filter" -#: ../src/verbs.cpp:2714 +#: ../src/verbs.cpp:2719 msgid "_Outline" msgstr "_Umriss" -#: ../src/verbs.cpp:2715 +#: ../src/verbs.cpp:2720 msgid "Switch to outline (wireframe) display mode" msgstr "In den Umriss-(Drahtgitter)-Anzeigemodus wechseln" #. new ZoomVerb(SP_VERB_VIEW_COLOR_MODE_PRINT_COLORS_PREVIEW, "ViewColorModePrintColorsPreview", N_("_Print Colors Preview"), #. N_("Switch to print colors preview mode"), NULL), -#: ../src/verbs.cpp:2716 ../src/verbs.cpp:2724 +#: ../src/verbs.cpp:2721 ../src/verbs.cpp:2729 msgid "_Toggle" msgstr "_Umschalten" -#: ../src/verbs.cpp:2717 +#: ../src/verbs.cpp:2722 msgid "Toggle between normal and outline display modes" msgstr "Zwischen normaler und Umriss-Ansicht umschalten" -#: ../src/verbs.cpp:2719 +#: ../src/verbs.cpp:2724 msgid "Switch to normal color display mode" msgstr "In den normalen Anzeigemodus wechseln" -#: ../src/verbs.cpp:2720 +#: ../src/verbs.cpp:2725 msgid "_Grayscale" msgstr "_Graustufen" -#: ../src/verbs.cpp:2721 +#: ../src/verbs.cpp:2726 msgid "Switch to grayscale display mode" msgstr "In den Graustufen-Anzeigemodus wechseln" -#: ../src/verbs.cpp:2725 +#: ../src/verbs.cpp:2730 msgid "Toggle between normal and grayscale color display modes" msgstr "Zwischen normaler und Graustufen-Farb-Ansicht umschalten" # ??? -#: ../src/verbs.cpp:2727 +#: ../src/verbs.cpp:2732 msgid "Color-managed view" msgstr "Farbverwaltungsansicht" # ??? -#: ../src/verbs.cpp:2728 +#: ../src/verbs.cpp:2733 msgid "Toggle color-managed display for this document window" msgstr "Ansicht mit Farbverwaltung ein-/ausschalten" -#: ../src/verbs.cpp:2730 +#: ../src/verbs.cpp:2735 msgid "Ico_n Preview..." msgstr "_Icon-Vorschaufenster…" -#: ../src/verbs.cpp:2731 +#: ../src/verbs.cpp:2736 msgid "Open a window to preview objects at different icon resolutions" msgstr "" "Vorschaufenster öffnen, um Elemente bei verschiedenen Icon-Auflösungsstufen " "zu sehen" -#: ../src/verbs.cpp:2733 +#: ../src/verbs.cpp:2738 msgid "Zoom to fit page in window" msgstr "Die Seite in das Fenster einpassen" -#: ../src/verbs.cpp:2734 +#: ../src/verbs.cpp:2739 msgid "Page _Width" msgstr "Seiten_breite" -#: ../src/verbs.cpp:2735 +#: ../src/verbs.cpp:2740 msgid "Zoom to fit page width in window" msgstr "Die Seitenbreite in das Fenster einpassen" -#: ../src/verbs.cpp:2737 +#: ../src/verbs.cpp:2742 msgid "Zoom to fit drawing in window" msgstr "Die Zeichnung in das Fenster einpassen" -#: ../src/verbs.cpp:2739 +#: ../src/verbs.cpp:2744 msgid "Zoom to fit selection in window" msgstr "Die Auswahl in das Fenster einpassen" #. Dialogs -#: ../src/verbs.cpp:2742 +#: ../src/verbs.cpp:2747 msgid "P_references..." msgstr "Einstellungen" -#: ../src/verbs.cpp:2743 +#: ../src/verbs.cpp:2748 msgid "Edit global Inkscape preferences" msgstr "Globale Einstellungen für Inkscape bearbeiten" -#: ../src/verbs.cpp:2744 +#: ../src/verbs.cpp:2749 msgid "_Document Properties..." msgstr "D_okumenteneinstellungen…" -#: ../src/verbs.cpp:2745 +#: ../src/verbs.cpp:2750 msgid "Edit properties of this document (to be saved with the document)" msgstr "Einstellungen bearbeiten, die mit dem Dokument gespeichert werden" -#: ../src/verbs.cpp:2746 +#: ../src/verbs.cpp:2751 msgid "Document _Metadata..." msgstr "Dokument-_Metadaten…" -#: ../src/verbs.cpp:2747 +#: ../src/verbs.cpp:2752 msgid "Edit document metadata (to be saved with the document)" msgstr "Dokument-Metadaten bearbeiten, die mit dem Dokument gespeichert werden" -#: ../src/verbs.cpp:2749 +#: ../src/verbs.cpp:2754 msgid "" "Edit objects' colors, gradients, arrowheads, and other fill and stroke " "properties..." msgstr "" "Objektfarben, Farbverläufe, Strichbreiten, Pfeile, Strichmuster usw. ändern" -#: ../src/verbs.cpp:2750 +#: ../src/verbs.cpp:2755 msgid "Gl_yphs..." msgstr "Glyphen..." -#: ../src/verbs.cpp:2751 +#: ../src/verbs.cpp:2756 msgid "Select characters from a glyphs palette" msgstr "Zeichen aus einer Bildzeichen-Palette auswählen" #. TRANSLATORS: "Swatches" means: color samples -#: ../src/verbs.cpp:2753 +#: ../src/verbs.cpp:2758 msgid "S_watches..." msgstr "_Farbfelder-Palette…" -#: ../src/verbs.cpp:2754 +#: ../src/verbs.cpp:2759 msgid "Select colors from a swatches palette" msgstr "Farben aus einer Farbfelder-Palette auswählen" -#: ../src/verbs.cpp:2755 +#: ../src/verbs.cpp:2760 msgid "S_ymbols..." msgstr "S_ymbole..." -#: ../src/verbs.cpp:2756 +#: ../src/verbs.cpp:2761 msgid "Select symbol from a symbols palette" msgstr "Symbol aus einer Symbol-Palette auswählen" -#: ../src/verbs.cpp:2757 +#: ../src/verbs.cpp:2762 msgid "Transfor_m..." msgstr "_Transformationen…" -#: ../src/verbs.cpp:2758 +#: ../src/verbs.cpp:2763 msgid "Precisely control objects' transformations" msgstr "Transformationen eines Objektes präzise einstellen" -#: ../src/verbs.cpp:2759 +#: ../src/verbs.cpp:2764 msgid "_Align and Distribute..." msgstr "Ausri_chten und Abstände ausgleichen…" -#: ../src/verbs.cpp:2760 +#: ../src/verbs.cpp:2765 msgid "Align and distribute objects" msgstr "Objekte ausrichten und ihre Abstände ausgleichen" -#: ../src/verbs.cpp:2761 +#: ../src/verbs.cpp:2766 msgid "_Spray options..." msgstr "_Spraydosen-Optionen" -#: ../src/verbs.cpp:2762 +#: ../src/verbs.cpp:2767 msgid "Some options for the spray" msgstr "Einige Optionen des Sprühwerkzeuges" -#: ../src/verbs.cpp:2763 +#: ../src/verbs.cpp:2768 msgid "Undo _History..." msgstr "Bearbeitungs_historie…" -#: ../src/verbs.cpp:2764 +#: ../src/verbs.cpp:2769 msgid "Undo History" msgstr "Bearbeitungshistorie" -#: ../src/verbs.cpp:2766 +#: ../src/verbs.cpp:2771 msgid "View and select font family, font size and other text properties" msgstr "" "Schriftfamilie, Schriftgröße und andere Texteigenschaften ansehen und ändern" -#: ../src/verbs.cpp:2767 +#: ../src/verbs.cpp:2772 msgid "_XML Editor..." msgstr "_XML-Editor…" -#: ../src/verbs.cpp:2768 +#: ../src/verbs.cpp:2773 msgid "View and edit the XML tree of the document" msgstr "Zeige und ändere den XML-Baum des Dokuments" -#: ../src/verbs.cpp:2769 +#: ../src/verbs.cpp:2774 msgid "_Find/Replace..." msgstr "Suchen/Ersetzen..." -#: ../src/verbs.cpp:2770 +#: ../src/verbs.cpp:2775 msgid "Find objects in document" msgstr "Objekte im Dokument suchen" -#: ../src/verbs.cpp:2771 +#: ../src/verbs.cpp:2776 msgid "Find and _Replace Text..." msgstr "Text suchen und e_rsetzen..." -#: ../src/verbs.cpp:2772 +#: ../src/verbs.cpp:2777 msgid "Find and replace text in document" msgstr "Text im Dokument suchen und ersetzen" -#: ../src/verbs.cpp:2774 +#: ../src/verbs.cpp:2779 msgid "Check spelling of text in document" msgstr "Rechtschreibprüfung für Text im Dokument" -#: ../src/verbs.cpp:2775 +#: ../src/verbs.cpp:2780 msgid "_Messages..." msgstr "Nachrichten…" -#: ../src/verbs.cpp:2776 +#: ../src/verbs.cpp:2781 msgid "View debug messages" msgstr "Nachrichten zur Fehlersuche anzeigen" -#: ../src/verbs.cpp:2777 +#: ../src/verbs.cpp:2782 msgid "S_cripts..." msgstr "_Skripte…" -#: ../src/verbs.cpp:2778 +#: ../src/verbs.cpp:2783 msgid "Run scripts" msgstr "Skripte ausführen" -#: ../src/verbs.cpp:2779 +#: ../src/verbs.cpp:2784 msgid "Show/Hide D_ialogs" msgstr "_Dialoge anzeigen oder ausblenden" -#: ../src/verbs.cpp:2780 +#: ../src/verbs.cpp:2785 msgid "Show or hide all open dialogs" msgstr "Alle offenen Dialoge zeigen oder ausblenden" -#: ../src/verbs.cpp:2781 +#: ../src/verbs.cpp:2786 msgid "Create Tiled Clones..." msgstr "Gekachelte Klone erzeugen…" -#: ../src/verbs.cpp:2782 +#: ../src/verbs.cpp:2787 msgid "" "Create multiple clones of selected object, arranging them into a pattern or " "scattering" @@ -23890,213 +24272,213 @@ msgstr "" "Mehrere Klone des gewählten Objekts erstellen, die in einem Muster oder " "verstreut angeordnet sind" -#: ../src/verbs.cpp:2783 +#: ../src/verbs.cpp:2788 msgid "_Object attributes..." msgstr "_Objekteigenschaften…" -#: ../src/verbs.cpp:2784 +#: ../src/verbs.cpp:2789 msgid "Edit the object attributes..." msgstr "Objektattribute bearbeiten..." -#: ../src/verbs.cpp:2786 +#: ../src/verbs.cpp:2791 msgid "Edit the ID, locked and visible status, and other object properties" msgstr "" "Kennung, Status (gesperrt, sichtbar) und andere Objekteigenschaften ändern" -#: ../src/verbs.cpp:2787 +#: ../src/verbs.cpp:2792 msgid "_Input Devices..." msgstr "_Eingabegeräte…" -#: ../src/verbs.cpp:2788 +#: ../src/verbs.cpp:2793 msgid "Configure extended input devices, such as a graphics tablet" msgstr "Erweiterte Eingabegeräte konfigurieren, wie z.B. Grafiktabletts" -#: ../src/verbs.cpp:2789 +#: ../src/verbs.cpp:2794 msgid "_Extensions..." msgstr "_Erweiterungen…" -#: ../src/verbs.cpp:2790 +#: ../src/verbs.cpp:2795 msgid "Query information about extensions" msgstr "Informationen über Erweiterungen abfragen" -#: ../src/verbs.cpp:2791 +#: ../src/verbs.cpp:2796 msgid "Layer_s..." msgstr "_Ebenen…" -#: ../src/verbs.cpp:2792 +#: ../src/verbs.cpp:2797 msgid "View Layers" msgstr "Ebenen anzeigen" -#: ../src/verbs.cpp:2793 +#: ../src/verbs.cpp:2798 msgid "Path E_ffects ..." msgstr "Pfad-Effekt-Editor..." -#: ../src/verbs.cpp:2794 +#: ../src/verbs.cpp:2799 msgid "Manage, edit, and apply path effects" msgstr "Pfad-Effekt erstellen und anwenden" -#: ../src/verbs.cpp:2795 +#: ../src/verbs.cpp:2800 msgid "Filter _Editor..." msgstr "Filter-Editor…" -#: ../src/verbs.cpp:2796 +#: ../src/verbs.cpp:2801 msgid "Manage, edit, and apply SVG filters" msgstr "SVG-Filter verwalten, bearbeiten und anwenden" -#: ../src/verbs.cpp:2797 +#: ../src/verbs.cpp:2802 msgid "SVG Font Editor..." msgstr "SVG-Schrift-Editor…" -#: ../src/verbs.cpp:2798 +#: ../src/verbs.cpp:2803 msgid "Edit SVG fonts" msgstr "SVG-Schriften bearbeiten" -#: ../src/verbs.cpp:2799 +#: ../src/verbs.cpp:2804 msgid "Print Colors..." msgstr "Druckfarben…" -#: ../src/verbs.cpp:2800 +#: ../src/verbs.cpp:2805 msgid "" "Select which color separations to render in Print Colors Preview rendermode" msgstr "" "Wählen Sie die zu rendernden Farbseparationen im Druckfarben-Vorschau-" "Rendermodus aus" -#: ../src/verbs.cpp:2801 +#: ../src/verbs.cpp:2806 msgid "_Export PNG Image..." msgstr "_Exportiere PNG Bild..." -#: ../src/verbs.cpp:2802 +#: ../src/verbs.cpp:2807 msgid "Export this document or a selection as a PNG image" msgstr "Das Dokument oder eine Auswahl als Bitmap-Bild exportieren" #. Help -#: ../src/verbs.cpp:2804 +#: ../src/verbs.cpp:2809 msgid "About E_xtensions" msgstr "Über _Erweiterungen" -#: ../src/verbs.cpp:2805 +#: ../src/verbs.cpp:2810 msgid "Information on Inkscape extensions" msgstr "Informationen über Inkscape-Erweiterungen" -#: ../src/verbs.cpp:2806 +#: ../src/verbs.cpp:2811 msgid "About _Memory" msgstr "_Speichernutzung" -#: ../src/verbs.cpp:2807 +#: ../src/verbs.cpp:2812 msgid "Memory usage information" msgstr "Informationen über die Speichernutzung" -#: ../src/verbs.cpp:2808 +#: ../src/verbs.cpp:2813 msgid "_About Inkscape" msgstr "Ü_ber Inkscape" -#: ../src/verbs.cpp:2809 +#: ../src/verbs.cpp:2814 msgid "Inkscape version, authors, license" msgstr "Inkscape-Version, Autoren, Lizenz" #. new HelpVerb(SP_VERB_SHOW_LICENSE, "ShowLicense", N_("_License"), #. N_("Distribution terms"), /*"show_license"*/"inkscape_options"), #. Tutorials -#: ../src/verbs.cpp:2814 +#: ../src/verbs.cpp:2819 msgid "Inkscape: _Basic" msgstr "Inkscape: _Grundlagen" -#: ../src/verbs.cpp:2815 +#: ../src/verbs.cpp:2820 msgid "Getting started with Inkscape" msgstr "Erste Schritte mit Inkscape" #. "tutorial_basic" -#: ../src/verbs.cpp:2816 +#: ../src/verbs.cpp:2821 msgid "Inkscape: _Shapes" msgstr "Inkscape: _Formen" -#: ../src/verbs.cpp:2817 +#: ../src/verbs.cpp:2822 msgid "Using shape tools to create and edit shapes" msgstr "Benutzung der Formen-Werkzeuge zum Erzeugen und Verändern von Formen" -#: ../src/verbs.cpp:2818 +#: ../src/verbs.cpp:2823 msgid "Inkscape: _Advanced" msgstr "Inkscape: Fortgeschrittene _Benutzung" -#: ../src/verbs.cpp:2819 +#: ../src/verbs.cpp:2824 msgid "Advanced Inkscape topics" msgstr "Fortgeschrittene Themen bei der Benutzung von Inkscape" #. "tutorial_advanced" #. TRANSLATORS: "to trace" means "to convert a bitmap to vector graphics" (to vectorize) -#: ../src/verbs.cpp:2821 +#: ../src/verbs.cpp:2826 msgid "Inkscape: T_racing" msgstr "Inkscape: _Vektorisieren" -#: ../src/verbs.cpp:2822 +#: ../src/verbs.cpp:2827 msgid "Using bitmap tracing" msgstr "Verwendung der Bitmap-Vektorisierung" #. "tutorial_tracing" -#: ../src/verbs.cpp:2823 +#: ../src/verbs.cpp:2828 msgid "Inkscape: _Calligraphy" msgstr "Inkscape: _Kalligrafie" -#: ../src/verbs.cpp:2824 +#: ../src/verbs.cpp:2829 msgid "Using the Calligraphy pen tool" msgstr "Verwendung des kalligrafischen Füllers" -#: ../src/verbs.cpp:2825 +#: ../src/verbs.cpp:2830 msgid "Inkscape: _Interpolate" msgstr "Inkscape: _Interpolieren" -#: ../src/verbs.cpp:2826 +#: ../src/verbs.cpp:2831 msgid "Using the interpolate extension" msgstr "Benutzt die Erweiterung Interpolieren" #. "tutorial_interpolate" -#: ../src/verbs.cpp:2827 +#: ../src/verbs.cpp:2832 msgid "_Elements of Design" msgstr "_Elemente des Designs" -#: ../src/verbs.cpp:2828 +#: ../src/verbs.cpp:2833 msgid "Principles of design in the tutorial form" msgstr "Gestaltungsprinzipen" #. "tutorial_design" -#: ../src/verbs.cpp:2829 +#: ../src/verbs.cpp:2834 msgid "_Tips and Tricks" msgstr "_Tipps und Tricks" -#: ../src/verbs.cpp:2830 +#: ../src/verbs.cpp:2835 msgid "Miscellaneous tips and tricks" msgstr "Verschiedene Tipps und Tricks" #. "tutorial_tips" #. Effect -- renamed Extension -#: ../src/verbs.cpp:2833 +#: ../src/verbs.cpp:2838 msgid "Previous Exte_nsion" msgstr "Vorherige Erweiterungen" -#: ../src/verbs.cpp:2834 +#: ../src/verbs.cpp:2839 msgid "Repeat the last extension with the same settings" msgstr "Letzten Effekt mit den gleichen Einstellungen anwenden" -#: ../src/verbs.cpp:2835 +#: ../src/verbs.cpp:2840 msgid "_Previous Extension Settings..." msgstr "Vorherige Erweiterungs-Einstellungen…" -#: ../src/verbs.cpp:2836 +#: ../src/verbs.cpp:2841 msgid "Repeat the last extension with new settings" msgstr "Letzte Erweiterung mit anderen Einstellungen wiederholen" # !!! -#: ../src/verbs.cpp:2840 +#: ../src/verbs.cpp:2845 msgid "Fit the page to the current selection" msgstr "Die Seite in die aktuelle Auswahl einpassen" # !!! -#: ../src/verbs.cpp:2842 +#: ../src/verbs.cpp:2847 msgid "Fit the page to the drawing" msgstr "Die Seite in die Zeichnungsgröße einpassen" -#: ../src/verbs.cpp:2844 +#: ../src/verbs.cpp:2849 msgid "" "Fit the page to the current selection or the drawing if there is no selection" msgstr "" @@ -24105,36 +24487,36 @@ msgstr "" # !!! mnemonics #. LockAndHide -#: ../src/verbs.cpp:2846 +#: ../src/verbs.cpp:2851 msgid "Unlock All" msgstr "Alles entsperren" -#: ../src/verbs.cpp:2848 +#: ../src/verbs.cpp:2853 msgid "Unlock All in All Layers" msgstr "Alles in allen Ebenen entsperren" # !!! mnemonics -#: ../src/verbs.cpp:2850 +#: ../src/verbs.cpp:2855 msgid "Unhide All" msgstr "Alles einblenden" -#: ../src/verbs.cpp:2852 +#: ../src/verbs.cpp:2857 msgid "Unhide All in All Layers" msgstr "Alles in allen Ebenen einblenden" -#: ../src/verbs.cpp:2856 +#: ../src/verbs.cpp:2861 msgid "Link an ICC color profile" msgstr "Verknüpfung mit ICC-Farbprofil" -#: ../src/verbs.cpp:2857 +#: ../src/verbs.cpp:2862 msgid "Remove Color Profile" msgstr "Farbprofil entfernen" -#: ../src/verbs.cpp:2858 +#: ../src/verbs.cpp:2863 msgid "Remove a linked ICC color profile" msgstr "Entfernt ein verknüpftes ICC-Farbprofil." -#: ../src/verbs.cpp:2881 ../src/verbs.cpp:2882 +#: ../src/verbs.cpp:2886 ../src/verbs.cpp:2887 msgid "Center on horizontal and vertical axis" msgstr "An horizontalen und vertikalen Achsen ausrichten" @@ -24148,9 +24530,9 @@ msgstr "Bogen: Offen/geschlossen ändern" # !!! #: ../src/widgets/arc-toolbar.cpp:303 ../src/widgets/arc-toolbar.cpp:332 -#: ../src/widgets/rect-toolbar.cpp:260 ../src/widgets/rect-toolbar.cpp:298 -#: ../src/widgets/spiral-toolbar.cpp:232 ../src/widgets/spiral-toolbar.cpp:256 -#: ../src/widgets/star-toolbar.cpp:396 ../src/widgets/star-toolbar.cpp:457 +#: ../src/widgets/rect-toolbar.cpp:259 ../src/widgets/rect-toolbar.cpp:297 +#: ../src/widgets/spiral-toolbar.cpp:229 ../src/widgets/spiral-toolbar.cpp:253 +#: ../src/widgets/star-toolbar.cpp:395 ../src/widgets/star-toolbar.cpp:456 msgid "New:" msgstr "Neu:" @@ -24158,9 +24540,9 @@ msgstr "Neu:" #. FIXME: implement averaging of all parameters for multiple selected #. gtk_label_set_markup(GTK_LABEL(l), _("Average:")); #: ../src/widgets/arc-toolbar.cpp:306 ../src/widgets/arc-toolbar.cpp:317 -#: ../src/widgets/rect-toolbar.cpp:268 ../src/widgets/rect-toolbar.cpp:286 -#: ../src/widgets/spiral-toolbar.cpp:234 ../src/widgets/spiral-toolbar.cpp:245 -#: ../src/widgets/star-toolbar.cpp:398 +#: ../src/widgets/rect-toolbar.cpp:267 ../src/widgets/rect-toolbar.cpp:285 +#: ../src/widgets/spiral-toolbar.cpp:231 ../src/widgets/spiral-toolbar.cpp:242 +#: ../src/widgets/star-toolbar.cpp:397 msgid "Change:" msgstr "Ändern:" @@ -24275,78 +24657,78 @@ msgstr "" "umschalten" #. gint preset_index = ege_select_one_action_get_active( sel ); -#: ../src/widgets/calligraphy-toolbar.cpp:241 -#: ../src/widgets/calligraphy-toolbar.cpp:285 -#: ../src/widgets/calligraphy-toolbar.cpp:290 +#: ../src/widgets/calligraphy-toolbar.cpp:239 +#: ../src/widgets/calligraphy-toolbar.cpp:283 +#: ../src/widgets/calligraphy-toolbar.cpp:288 msgid "No preset" msgstr "Keine Vorlage" #. Width -#: ../src/widgets/calligraphy-toolbar.cpp:450 -#: ../src/widgets/erasor-toolbar.cpp:148 +#: ../src/widgets/calligraphy-toolbar.cpp:448 +#: ../src/widgets/erasor-toolbar.cpp:146 msgid "(hairline)" msgstr "(Haarline)" #. Mean #. Rotation #. Scale -#: ../src/widgets/calligraphy-toolbar.cpp:450 -#: ../src/widgets/calligraphy-toolbar.cpp:483 -#: ../src/widgets/erasor-toolbar.cpp:148 ../src/widgets/pencil-toolbar.cpp:304 -#: ../src/widgets/spray-toolbar.cpp:130 ../src/widgets/spray-toolbar.cpp:146 -#: ../src/widgets/spray-toolbar.cpp:162 ../src/widgets/spray-toolbar.cpp:222 -#: ../src/widgets/spray-toolbar.cpp:252 ../src/widgets/spray-toolbar.cpp:270 -#: ../src/widgets/tweak-toolbar.cpp:144 ../src/widgets/tweak-toolbar.cpp:161 -#: ../src/widgets/tweak-toolbar.cpp:369 +#: ../src/widgets/calligraphy-toolbar.cpp:448 +#: ../src/widgets/calligraphy-toolbar.cpp:481 +#: ../src/widgets/erasor-toolbar.cpp:146 ../src/widgets/pencil-toolbar.cpp:303 +#: ../src/widgets/spray-toolbar.cpp:129 ../src/widgets/spray-toolbar.cpp:145 +#: ../src/widgets/spray-toolbar.cpp:161 ../src/widgets/spray-toolbar.cpp:221 +#: ../src/widgets/spray-toolbar.cpp:251 ../src/widgets/spray-toolbar.cpp:269 +#: ../src/widgets/tweak-toolbar.cpp:143 ../src/widgets/tweak-toolbar.cpp:160 +#: ../src/widgets/tweak-toolbar.cpp:368 msgid "(default)" msgstr "(Vorgabe)" -#: ../src/widgets/calligraphy-toolbar.cpp:450 -#: ../src/widgets/erasor-toolbar.cpp:148 +#: ../src/widgets/calligraphy-toolbar.cpp:448 +#: ../src/widgets/erasor-toolbar.cpp:146 msgid "(broad stroke)" msgstr "(breiter Strich)" -#: ../src/widgets/calligraphy-toolbar.cpp:453 -#: ../src/widgets/erasor-toolbar.cpp:151 +#: ../src/widgets/calligraphy-toolbar.cpp:451 +#: ../src/widgets/erasor-toolbar.cpp:149 msgid "Pen Width" msgstr "Stiftbreite" -#: ../src/widgets/calligraphy-toolbar.cpp:454 +#: ../src/widgets/calligraphy-toolbar.cpp:452 msgid "The width of the calligraphic pen (relative to the visible canvas area)" msgstr "" "Breite des kalligrafischen Füllers (relativ zum sichtbaren " "Dokumentausschnitt)" #. Thinning -#: ../src/widgets/calligraphy-toolbar.cpp:467 +#: ../src/widgets/calligraphy-toolbar.cpp:465 msgid "(speed blows up stroke)" msgstr "(Geschwindigkeit verdickt Strich)" -#: ../src/widgets/calligraphy-toolbar.cpp:467 +#: ../src/widgets/calligraphy-toolbar.cpp:465 msgid "(slight widening)" msgstr "(schwache Verdickung)" -#: ../src/widgets/calligraphy-toolbar.cpp:467 +#: ../src/widgets/calligraphy-toolbar.cpp:465 msgid "(constant width)" msgstr "(konstante Breite)" -#: ../src/widgets/calligraphy-toolbar.cpp:467 +#: ../src/widgets/calligraphy-toolbar.cpp:465 msgid "(slight thinning, default)" msgstr "(schwache Ausdünnung, Vorgabe)" -#: ../src/widgets/calligraphy-toolbar.cpp:467 +#: ../src/widgets/calligraphy-toolbar.cpp:465 msgid "(speed deflates stroke)" msgstr "(Geschwindigkeit dünnt Strich aus)" -#: ../src/widgets/calligraphy-toolbar.cpp:470 +#: ../src/widgets/calligraphy-toolbar.cpp:468 msgid "Stroke Thinning" msgstr "Strichstärke verringern" -#: ../src/widgets/calligraphy-toolbar.cpp:470 +#: ../src/widgets/calligraphy-toolbar.cpp:468 msgid "Thinning:" msgstr "Ausdünnung:" -#: ../src/widgets/calligraphy-toolbar.cpp:471 +#: ../src/widgets/calligraphy-toolbar.cpp:469 msgid "" "How much velocity thins the stroke (> 0 makes fast strokes thinner, < 0 " "makes them broader, 0 makes width independent of velocity)" @@ -24355,28 +24737,28 @@ msgstr "" "Strichzüge dünner, < 0 breiter, 0 unabhängig von der Geschwindigkeit)" #. Angle -#: ../src/widgets/calligraphy-toolbar.cpp:483 +#: ../src/widgets/calligraphy-toolbar.cpp:481 msgid "(left edge up)" msgstr "(linke Kante oben)" -#: ../src/widgets/calligraphy-toolbar.cpp:483 +#: ../src/widgets/calligraphy-toolbar.cpp:481 msgid "(horizontal)" msgstr "(horizontal)" -#: ../src/widgets/calligraphy-toolbar.cpp:483 +#: ../src/widgets/calligraphy-toolbar.cpp:481 msgid "(right edge up)" msgstr "(rechte Kante oben)" -#: ../src/widgets/calligraphy-toolbar.cpp:486 +#: ../src/widgets/calligraphy-toolbar.cpp:484 msgid "Pen Angle" msgstr "Stiftwinkel" -#: ../src/widgets/calligraphy-toolbar.cpp:486 +#: ../src/widgets/calligraphy-toolbar.cpp:484 #: ../share/extensions/motion.inx.h:3 ../share/extensions/restack.inx.h:10 msgid "Angle:" msgstr "Winkel:" -#: ../src/widgets/calligraphy-toolbar.cpp:487 +#: ../src/widgets/calligraphy-toolbar.cpp:485 msgid "" "The angle of the pen's nib (in degrees; 0 = horizontal; has no effect if " "fixation = 0)" @@ -24385,27 +24767,27 @@ msgstr "" "Fixierung: 0)" #. Fixation -#: ../src/widgets/calligraphy-toolbar.cpp:501 +#: ../src/widgets/calligraphy-toolbar.cpp:499 msgid "(perpendicular to stroke, \"brush\")" msgstr "(senkrecht zum Strich, \"Pinsel\")" -#: ../src/widgets/calligraphy-toolbar.cpp:501 +#: ../src/widgets/calligraphy-toolbar.cpp:499 msgid "(almost fixed, default)" msgstr "(fast fixiert, Vorgabe)" -#: ../src/widgets/calligraphy-toolbar.cpp:501 +#: ../src/widgets/calligraphy-toolbar.cpp:499 msgid "(fixed by Angle, \"pen\")" msgstr "(fixiert mit Winkel, \"Stift\")" -#: ../src/widgets/calligraphy-toolbar.cpp:504 +#: ../src/widgets/calligraphy-toolbar.cpp:502 msgid "Fixation" msgstr "Fixierung" -#: ../src/widgets/calligraphy-toolbar.cpp:504 +#: ../src/widgets/calligraphy-toolbar.cpp:502 msgid "Fixation:" msgstr "Fixierung:" -#: ../src/widgets/calligraphy-toolbar.cpp:505 +#: ../src/widgets/calligraphy-toolbar.cpp:503 msgid "" "Angle behavior (0 = nib always perpendicular to stroke direction, 100 = " "fixed angle)" @@ -24414,32 +24796,32 @@ msgstr "" "Winkel)" #. Cap Rounding -#: ../src/widgets/calligraphy-toolbar.cpp:517 +#: ../src/widgets/calligraphy-toolbar.cpp:515 msgid "(blunt caps, default)" msgstr "(stumpfe Enden, Vorgabe)" -#: ../src/widgets/calligraphy-toolbar.cpp:517 +#: ../src/widgets/calligraphy-toolbar.cpp:515 msgid "(slightly bulging)" msgstr "(leicht wölbend)" -#: ../src/widgets/calligraphy-toolbar.cpp:517 +#: ../src/widgets/calligraphy-toolbar.cpp:515 msgid "(approximately round)" msgstr "(ungefähr rund)" -#: ../src/widgets/calligraphy-toolbar.cpp:517 +#: ../src/widgets/calligraphy-toolbar.cpp:515 msgid "(long protruding caps)" msgstr "(lange hervorstehende Enden)" -#: ../src/widgets/calligraphy-toolbar.cpp:521 +#: ../src/widgets/calligraphy-toolbar.cpp:519 msgid "Cap rounding" msgstr "Spitzen abrunden" -#: ../src/widgets/calligraphy-toolbar.cpp:521 +#: ../src/widgets/calligraphy-toolbar.cpp:519 msgid "Caps:" msgstr "Linienenden:" # !!! check -#: ../src/widgets/calligraphy-toolbar.cpp:522 +#: ../src/widgets/calligraphy-toolbar.cpp:520 msgid "" "Increase to make caps at the ends of strokes protrude more (0 = no caps, 1 = " "round caps)" @@ -24448,94 +24830,94 @@ msgstr "" "Abschluss, 1 = runder Abschluss)" #. Tremor -#: ../src/widgets/calligraphy-toolbar.cpp:534 +#: ../src/widgets/calligraphy-toolbar.cpp:532 msgid "(smooth line)" msgstr "(glatte Linie)" -#: ../src/widgets/calligraphy-toolbar.cpp:534 +#: ../src/widgets/calligraphy-toolbar.cpp:532 msgid "(slight tremor)" msgstr "(leichtes Zittern)" -#: ../src/widgets/calligraphy-toolbar.cpp:534 +#: ../src/widgets/calligraphy-toolbar.cpp:532 msgid "(noticeable tremor)" msgstr "(deutliches Zittern)" -#: ../src/widgets/calligraphy-toolbar.cpp:534 +#: ../src/widgets/calligraphy-toolbar.cpp:532 msgid "(maximum tremor)" msgstr "(maximales Zittern)" -#: ../src/widgets/calligraphy-toolbar.cpp:537 +#: ../src/widgets/calligraphy-toolbar.cpp:535 msgid "Stroke Tremor" msgstr "Zittern der Linie" -#: ../src/widgets/calligraphy-toolbar.cpp:537 +#: ../src/widgets/calligraphy-toolbar.cpp:535 msgid "Tremor:" msgstr "Zittern:" -#: ../src/widgets/calligraphy-toolbar.cpp:538 +#: ../src/widgets/calligraphy-toolbar.cpp:536 msgid "Increase to make strokes rugged and trembling" msgstr "Erhöhen, um Striche zittrig und ausgefranst zu machen" #. Wiggle -#: ../src/widgets/calligraphy-toolbar.cpp:552 +#: ../src/widgets/calligraphy-toolbar.cpp:550 msgid "(no wiggle)" msgstr "(kein Wackeln)" -#: ../src/widgets/calligraphy-toolbar.cpp:552 +#: ../src/widgets/calligraphy-toolbar.cpp:550 msgid "(slight deviation)" msgstr "(leichte Abweichung)" -#: ../src/widgets/calligraphy-toolbar.cpp:552 +#: ../src/widgets/calligraphy-toolbar.cpp:550 msgid "(wild waves and curls)" msgstr "(wilde Wellen und Kringel)" -#: ../src/widgets/calligraphy-toolbar.cpp:555 +#: ../src/widgets/calligraphy-toolbar.cpp:553 msgid "Pen Wiggle" msgstr "Stift Verwackeln:" -#: ../src/widgets/calligraphy-toolbar.cpp:555 +#: ../src/widgets/calligraphy-toolbar.cpp:553 msgid "Wiggle:" msgstr "Wackeln:" -#: ../src/widgets/calligraphy-toolbar.cpp:556 +#: ../src/widgets/calligraphy-toolbar.cpp:554 msgid "Increase to make the pen waver and wiggle" msgstr "Erhöhen, um den Füller wacklig zu machen" #. Mass -#: ../src/widgets/calligraphy-toolbar.cpp:569 +#: ../src/widgets/calligraphy-toolbar.cpp:567 msgid "(no inertia)" msgstr "(keine Trägheit)" -#: ../src/widgets/calligraphy-toolbar.cpp:569 +#: ../src/widgets/calligraphy-toolbar.cpp:567 msgid "(slight smoothing, default)" msgstr "(leichte Glättung, Vorgabe)" -#: ../src/widgets/calligraphy-toolbar.cpp:569 +#: ../src/widgets/calligraphy-toolbar.cpp:567 msgid "(noticeable lagging)" msgstr "(deutliches Hinterherschleppen)" -#: ../src/widgets/calligraphy-toolbar.cpp:569 +#: ../src/widgets/calligraphy-toolbar.cpp:567 msgid "(maximum inertia)" msgstr "(maximale Trägheit)" -#: ../src/widgets/calligraphy-toolbar.cpp:572 +#: ../src/widgets/calligraphy-toolbar.cpp:570 msgid "Pen Mass" msgstr "Stiftmasse:" -#: ../src/widgets/calligraphy-toolbar.cpp:572 +#: ../src/widgets/calligraphy-toolbar.cpp:570 msgid "Mass:" msgstr "Masse:" -#: ../src/widgets/calligraphy-toolbar.cpp:573 +#: ../src/widgets/calligraphy-toolbar.cpp:571 msgid "Increase to make the pen drag behind, as if slowed by inertia" msgstr "Erhöhen, um den Füller nachzuschleppen, wie durch Trägheit verlangsamt" # !!! -#: ../src/widgets/calligraphy-toolbar.cpp:588 +#: ../src/widgets/calligraphy-toolbar.cpp:586 msgid "Trace Background" msgstr "Hintergrund verfolgen" -#: ../src/widgets/calligraphy-toolbar.cpp:589 +#: ../src/widgets/calligraphy-toolbar.cpp:587 msgid "" "Trace the lightness of the background by the width of the pen (white - " "minimum width, black - maximum width)" @@ -24543,31 +24925,31 @@ msgstr "" "Der Helligkeit des Hintergrunds mit der Breite des Stifts folgen (weiß - " "minimale Breite, schwarz - maximale Breite)" -#: ../src/widgets/calligraphy-toolbar.cpp:602 +#: ../src/widgets/calligraphy-toolbar.cpp:600 msgid "Use the pressure of the input device to alter the width of the pen" msgstr "" "Druckempfindlichkeit des Eingabegeräts benutzen, um die Strichbreite des " "Füllers zu beeinflussen" -#: ../src/widgets/calligraphy-toolbar.cpp:614 +#: ../src/widgets/calligraphy-toolbar.cpp:612 msgid "Tilt" msgstr "Neigung" -#: ../src/widgets/calligraphy-toolbar.cpp:615 +#: ../src/widgets/calligraphy-toolbar.cpp:613 msgid "Use the tilt of the input device to alter the angle of the pen's nib" msgstr "" "Neigungsempfindlichkeit des Eingabegeräts benutzen, um den Winkel der " "Füllerspitze zu beeinflussen" -#: ../src/widgets/calligraphy-toolbar.cpp:630 +#: ../src/widgets/calligraphy-toolbar.cpp:628 msgid "Choose a preset" msgstr "Wählen Sie eine Vorlage" -#: ../src/widgets/calligraphy-toolbar.cpp:645 +#: ../src/widgets/calligraphy-toolbar.cpp:643 msgid "Add/Edit Profile" msgstr "Profil hinzufügen oder editieren" -#: ../src/widgets/calligraphy-toolbar.cpp:646 +#: ../src/widgets/calligraphy-toolbar.cpp:644 msgid "Add or edit calligraphic profile" msgstr "Kalligrafisches Profil hinzufügen oder editieren" @@ -24636,6 +25018,10 @@ msgstr "Graph" msgid "Connector Length" msgstr "Verbinderlänge" +#: ../src/widgets/connector-toolbar.cpp:398 +msgid "Length:" +msgstr "Länge:" + #: ../src/widgets/connector-toolbar.cpp:399 msgid "Ideal length for connectors when layout is applied" msgstr "Ideale Länge für Objektverbinder wenn das Layout angewendet wird" @@ -24660,20 +25046,20 @@ msgstr "Muster der Strichlinien" msgid "Pattern offset" msgstr "Versatz des Musters" -#: ../src/widgets/desktop-widget.cpp:462 +#: ../src/widgets/desktop-widget.cpp:461 msgid "Zoom drawing if window size changes" msgstr "Zeichnungsgröße mit Fenstergröße verändern" -#: ../src/widgets/desktop-widget.cpp:666 +#: ../src/widgets/desktop-widget.cpp:665 msgid "Cursor coordinates" msgstr "Zeigerkoordinaten" -#: ../src/widgets/desktop-widget.cpp:692 +#: ../src/widgets/desktop-widget.cpp:691 msgid "Z:" msgstr "Z:" #. display the initial welcome message in the statusbar -#: ../src/widgets/desktop-widget.cpp:735 +#: ../src/widgets/desktop-widget.cpp:734 msgid "" "Welcome to Inkscape! Use shape or freehand tools to create objects; " "use selector (arrow) to move or transform them." @@ -24681,71 +25067,71 @@ msgstr "" "Willkommen zu Inkscape! Formen- und Freihandwerkzeuge erstellen " "Objekte; das Auswahlwerkzeug (Pfeil) verschiebt und bearbeitet." -#: ../src/widgets/desktop-widget.cpp:829 +#: ../src/widgets/desktop-widget.cpp:828 msgid "grayscale" msgstr "Graustufen" -#: ../src/widgets/desktop-widget.cpp:830 +#: ../src/widgets/desktop-widget.cpp:829 msgid ", grayscale" msgstr ", Graustufen" -#: ../src/widgets/desktop-widget.cpp:831 +#: ../src/widgets/desktop-widget.cpp:830 msgid "print colors preview" msgstr "_Druckfarben-Vorschau" -#: ../src/widgets/desktop-widget.cpp:832 +#: ../src/widgets/desktop-widget.cpp:831 msgid ", print colors preview" msgstr ", Druckfarben-Vorschau" -#: ../src/widgets/desktop-widget.cpp:833 +#: ../src/widgets/desktop-widget.cpp:832 msgid "outline" msgstr "Umriss" -#: ../src/widgets/desktop-widget.cpp:834 +#: ../src/widgets/desktop-widget.cpp:833 msgid "no filters" msgstr "Keine _Filter" -#: ../src/widgets/desktop-widget.cpp:861 +#: ../src/widgets/desktop-widget.cpp:860 #, c-format msgid "%s%s: %d (%s%s) - Inkscape" msgstr "%s%s: %d (%s%s) - Inkscape" -#: ../src/widgets/desktop-widget.cpp:863 ../src/widgets/desktop-widget.cpp:867 +#: ../src/widgets/desktop-widget.cpp:862 ../src/widgets/desktop-widget.cpp:866 #, c-format msgid "%s%s: %d (%s) - Inkscape" msgstr "%s%s: %d (%s) - Inkscape" -#: ../src/widgets/desktop-widget.cpp:869 +#: ../src/widgets/desktop-widget.cpp:868 #, c-format msgid "%s%s: %d - Inkscape" msgstr "%s%s: %d - Inkscape" -#: ../src/widgets/desktop-widget.cpp:875 +#: ../src/widgets/desktop-widget.cpp:874 #, c-format msgid "%s%s (%s%s) - Inkscape" msgstr "%s%s (%s%s) - Inkscape" -#: ../src/widgets/desktop-widget.cpp:877 ../src/widgets/desktop-widget.cpp:881 +#: ../src/widgets/desktop-widget.cpp:876 ../src/widgets/desktop-widget.cpp:880 #, c-format msgid "%s%s (%s) - Inkscape" msgstr "%s%s (%s) - Inkscape" -#: ../src/widgets/desktop-widget.cpp:883 +#: ../src/widgets/desktop-widget.cpp:882 #, c-format msgid "%s%s - Inkscape" msgstr "%s%s - Inkscape" # ??? -#: ../src/widgets/desktop-widget.cpp:1052 +#: ../src/widgets/desktop-widget.cpp:1051 msgid "Color-managed display is enabled in this window" msgstr "Farbverwaltungsansicht ist in diesem Fenster eingeschaltet" # ??? -#: ../src/widgets/desktop-widget.cpp:1054 +#: ../src/widgets/desktop-widget.cpp:1053 msgid "Color-managed display is disabled in this window" msgstr "Farbverwaltungsansicht ist in diesem Fenster ausgeschaltet" -#: ../src/widgets/desktop-widget.cpp:1109 +#: ../src/widgets/desktop-widget.cpp:1108 #, c-format msgid "" "Save changes to document \"%s\" before " @@ -24758,12 +25144,12 @@ msgstr "" "\n" "Wenn Sie schließen, ohne zu speichern, dann gehen Ihre Änderungen verloren." -#: ../src/widgets/desktop-widget.cpp:1119 -#: ../src/widgets/desktop-widget.cpp:1178 +#: ../src/widgets/desktop-widget.cpp:1118 +#: ../src/widgets/desktop-widget.cpp:1177 msgid "Close _without saving" msgstr "Schließen, _ohne zu speichern" -#: ../src/widgets/desktop-widget.cpp:1168 +#: ../src/widgets/desktop-widget.cpp:1167 #, c-format msgid "" "The file \"%s\" was saved with a " @@ -24776,20 +25162,20 @@ msgstr "" "\n" "Möchten Sie das Dokument als ein Inkscape SVG speichern?" -#: ../src/widgets/desktop-widget.cpp:1180 +#: ../src/widgets/desktop-widget.cpp:1179 msgid "_Save as Inkscape SVG" msgstr "Als Inkscape-_SVG speichern" # CHECK -#: ../src/widgets/desktop-widget.cpp:1390 +#: ../src/widgets/desktop-widget.cpp:1389 msgid "Note:" msgstr "Hinweis:" -#: ../src/widgets/dropper-toolbar.cpp:119 +#: ../src/widgets/dropper-toolbar.cpp:118 msgid "Pick opacity" msgstr "Wähle Deckkraft" -#: ../src/widgets/dropper-toolbar.cpp:120 +#: ../src/widgets/dropper-toolbar.cpp:119 msgid "" "Pick both the color and the alpha (transparency) under cursor; otherwise, " "pick only the visible color premultiplied by alpha" @@ -24797,80 +25183,75 @@ msgstr "" "Farbe und Transparenz unter dem Cursor übernehmen; ansonsten nur die " "sichtbare Farbe mit dem Transparenzwert vormultipliziert übernehmen" -#: ../src/widgets/dropper-toolbar.cpp:123 +#: ../src/widgets/dropper-toolbar.cpp:122 msgid "Pick" msgstr "Aufnehmen" -#: ../src/widgets/dropper-toolbar.cpp:132 +#: ../src/widgets/dropper-toolbar.cpp:131 msgid "Assign opacity" msgstr "Transparenz festlegen" -#: ../src/widgets/dropper-toolbar.cpp:133 +#: ../src/widgets/dropper-toolbar.cpp:132 msgid "" "If alpha was picked, assign it to selection as fill or stroke transparency" msgstr "" "Wenn Transparenz übernommenen wurde, diese als Füllung oder Kontur der " "Auswahl anwenden." -#: ../src/widgets/dropper-toolbar.cpp:136 +#: ../src/widgets/dropper-toolbar.cpp:135 msgid "Assign" msgstr "Zuweisen" -# CHECK -#: ../src/widgets/ege-paint-def.cpp:67 ../src/widgets/ege-paint-def.cpp:91 -msgid "none" -msgstr "keine" - #: ../src/widgets/ege-paint-def.cpp:88 msgid "remove" msgstr "entfernen" -#: ../src/widgets/erasor-toolbar.cpp:117 +#: ../src/widgets/erasor-toolbar.cpp:115 msgid "Delete objects touched by the eraser" msgstr "Lösche Objekte, die vom Radierer berührt werden." -#: ../src/widgets/erasor-toolbar.cpp:123 +#: ../src/widgets/erasor-toolbar.cpp:121 msgid "Cut" msgstr "A_usschneiden" -#: ../src/widgets/erasor-toolbar.cpp:124 +#: ../src/widgets/erasor-toolbar.cpp:122 msgid "Cut out from objects" msgstr "Aus Objekt herausschneiden" -#: ../src/widgets/erasor-toolbar.cpp:152 +#: ../src/widgets/erasor-toolbar.cpp:150 msgid "The width of the eraser pen (relative to the visible canvas area)" msgstr "Die Größe des Radiers (relativ zum sichtbaren Dokumentausschnitt)" -#: ../src/widgets/fill-style.cpp:358 +#: ../src/widgets/fill-style.cpp:362 msgid "Change fill rule" msgstr "Füllungsregel ändern" -#: ../src/widgets/fill-style.cpp:443 ../src/widgets/fill-style.cpp:522 +#: ../src/widgets/fill-style.cpp:447 ../src/widgets/fill-style.cpp:526 msgid "Set fill color" msgstr "Füllungsfarbe setzen" -#: ../src/widgets/fill-style.cpp:443 ../src/widgets/fill-style.cpp:522 +#: ../src/widgets/fill-style.cpp:447 ../src/widgets/fill-style.cpp:526 msgid "Set stroke color" msgstr "Farbe der Kontur setzen" -#: ../src/widgets/fill-style.cpp:621 +#: ../src/widgets/fill-style.cpp:625 msgid "Set gradient on fill" msgstr "Farbverlauf für die Füllung setzen" -#: ../src/widgets/fill-style.cpp:621 +#: ../src/widgets/fill-style.cpp:625 msgid "Set gradient on stroke" msgstr "Farbverlauf für die Kontur setzen" -#: ../src/widgets/fill-style.cpp:681 +#: ../src/widgets/fill-style.cpp:685 msgid "Set pattern on fill" msgstr "Muster für die Füllung setzen" -#: ../src/widgets/fill-style.cpp:682 +#: ../src/widgets/fill-style.cpp:686 msgid "Set pattern on stroke" msgstr "Muster für die Kontur setzen" -#: ../src/widgets/font-selector.cpp:135 ../src/widgets/text-toolbar.cpp:968 -#: ../src/widgets/text-toolbar.cpp:1286 +#: ../src/widgets/font-selector.cpp:135 ../src/widgets/text-toolbar.cpp:966 +#: ../src/widgets/text-toolbar.cpp:1284 msgid "Font size" msgstr "Schriftgröße:" @@ -24897,12 +25278,8 @@ msgstr "Duplikat-Farbverlauf erstellen" msgid "Edit gradient" msgstr "Farbverlauf bearbeiten" -#: ../src/widgets/gradient-selector.cpp:227 -msgid "Delete swatch" -msgstr "Zwischenfarbe löschen" - #: ../src/widgets/gradient-selector.cpp:288 -#: ../src/widgets/paint-selector.cpp:241 +#: ../src/widgets/paint-selector.cpp:244 msgid "Swatch" msgstr "Farbmuster" @@ -24927,7 +25304,7 @@ msgid "Multiple stops" msgstr "Mehrfach-Stopp" #: ../src/widgets/gradient-toolbar.cpp:793 -#: ../src/widgets/gradient-vector.cpp:630 +#: ../src/widgets/gradient-vector.cpp:629 msgid "No stops in gradient" msgstr "Keine Zwischenfarben im Farbverlauf" @@ -24940,7 +25317,7 @@ msgid "Set gradient repeat" msgstr "Setze Verlaufswiederholung" #: ../src/widgets/gradient-toolbar.cpp:1006 -#: ../src/widgets/gradient-vector.cpp:741 +#: ../src/widgets/gradient-vector.cpp:740 msgid "Change gradient stop offset" msgstr "Versatz der Zwischenfarben des Farbverlaufs ändern" @@ -24961,27 +25338,33 @@ msgid "Create radial (elliptic or circular) gradient" msgstr "Radialen (elliptischen oder kreisförmigen) Farbverlauf erzeugen" #: ../src/widgets/gradient-toolbar.cpp:1057 +#: ../src/widgets/mesh-toolbar.cpp:211 msgid "New:" msgstr "Neu:" #: ../src/widgets/gradient-toolbar.cpp:1080 +#: ../src/widgets/mesh-toolbar.cpp:234 msgid "fill" msgstr "füllen" #: ../src/widgets/gradient-toolbar.cpp:1080 +#: ../src/widgets/mesh-toolbar.cpp:234 msgid "Create gradient in the fill" msgstr "Farbverlauf für die Füllung erzeugen" #: ../src/widgets/gradient-toolbar.cpp:1084 +#: ../src/widgets/mesh-toolbar.cpp:238 msgid "stroke" msgstr "Kontur" #: ../src/widgets/gradient-toolbar.cpp:1084 +#: ../src/widgets/mesh-toolbar.cpp:238 msgid "Create gradient in the stroke" msgstr "Farbverlauf für die Kontur erzeugen" # CHECK #: ../src/widgets/gradient-toolbar.cpp:1087 +#: ../src/widgets/mesh-toolbar.cpp:241 msgid "on:" msgstr "auf:" @@ -25049,7 +25432,7 @@ msgstr "Neuen Stopp einfügen" #: ../src/widgets/gradient-toolbar.cpp:1203 #: ../src/widgets/gradient-toolbar.cpp:1204 -#: ../src/widgets/gradient-vector.cpp:909 +#: ../src/widgets/gradient-vector.cpp:908 msgid "Delete stop" msgstr "Zwischenfarbe löschen" @@ -25069,42 +25452,42 @@ msgstr "Verknüpfe Farbverläufe" msgid "Link gradients to change all related gradients" msgstr "Verknüpfe Farbverläufe, um alle verbundenen Farbverläufe zu ändern" -#: ../src/widgets/gradient-vector.cpp:333 -#: ../src/widgets/paint-selector.cpp:919 +#: ../src/widgets/gradient-vector.cpp:332 +#: ../src/widgets/paint-selector.cpp:922 msgid "No document selected" msgstr "Kein Dokument gewählt" -#: ../src/widgets/gradient-vector.cpp:337 +#: ../src/widgets/gradient-vector.cpp:336 msgid "No gradients in document" msgstr "Keine Farbverläufe im Dokument" -#: ../src/widgets/gradient-vector.cpp:341 +#: ../src/widgets/gradient-vector.cpp:340 msgid "No gradient selected" msgstr "Kein Farbverlauf markiert" #. TRANSLATORS: "Stop" means: a "phase" of a gradient -#: ../src/widgets/gradient-vector.cpp:904 +#: ../src/widgets/gradient-vector.cpp:903 msgid "Add stop" msgstr "Zwischenfarbe hinzufügen" -#: ../src/widgets/gradient-vector.cpp:907 +#: ../src/widgets/gradient-vector.cpp:906 msgid "Add another control stop to gradient" msgstr "Weitere Zwischenfarbe zum Verlauf hinzufügen" -#: ../src/widgets/gradient-vector.cpp:912 +#: ../src/widgets/gradient-vector.cpp:911 msgid "Delete current control stop from gradient" msgstr "Aktuelle Zwischenfarbe aus dem Farbverlauf löschen" #. TRANSLATORS: "Stop" means: a "phase" of a gradient -#: ../src/widgets/gradient-vector.cpp:980 +#: ../src/widgets/gradient-vector.cpp:979 msgid "Stop Color" msgstr "Zwischenfarbe" -#: ../src/widgets/gradient-vector.cpp:1010 +#: ../src/widgets/gradient-vector.cpp:1007 msgid "Gradient editor" msgstr "Farbverlaufs-Editor" -#: ../src/widgets/gradient-vector.cpp:1310 +#: ../src/widgets/gradient-vector.cpp:1307 msgid "Change gradient stop color" msgstr "Zwischenfarbe des Farbverlaufs ändern" @@ -25172,233 +25555,294 @@ msgstr "LPE Dialog öffnen" msgid "Open LPE dialog (to adapt parameters numerically)" msgstr "Öffnet den LPE-Dialog (erlaubt Anpassung der Parameterwerte)" -#: ../src/widgets/measure-toolbar.cpp:103 ../src/widgets/text-toolbar.cpp:1289 +#: ../src/widgets/measure-toolbar.cpp:102 ../src/widgets/text-toolbar.cpp:1287 msgid "Font Size" msgstr "Schriftgröße" -#: ../src/widgets/measure-toolbar.cpp:103 +#: ../src/widgets/measure-toolbar.cpp:102 msgid "Font Size:" msgstr "Schriftgröße" -#: ../src/widgets/measure-toolbar.cpp:104 +#: ../src/widgets/measure-toolbar.cpp:103 msgid "The font size to be used in the measurement labels" msgstr "Die Schriftgröße, die für die Messungen verwendet werden" -#: ../src/widgets/measure-toolbar.cpp:116 -#: ../src/widgets/measure-toolbar.cpp:124 +#: ../src/widgets/measure-toolbar.cpp:115 +#: ../src/widgets/measure-toolbar.cpp:123 msgid "The units to be used for the measurements" msgstr "Die Einheiten, die für die Messungen verwendet werden" -#: ../src/widgets/node-toolbar.cpp:351 +#: ../src/widgets/mesh-toolbar.cpp:204 +msgid "normal" +msgstr "Normal" + +#: ../src/widgets/mesh-toolbar.cpp:204 +msgid "Create mesh gradient" +msgstr "Gitter-Farbverlauf erzeugen" + +#: ../src/widgets/mesh-toolbar.cpp:208 +msgid "conical" +msgstr "konisch" + +#: ../src/widgets/mesh-toolbar.cpp:208 +msgid "Create conical gradient" +msgstr "Konischen Farbverlauf erzeugen" + +#: ../src/widgets/mesh-toolbar.cpp:263 +msgid "Rows" +msgstr "Reihen:" + +#: ../src/widgets/mesh-toolbar.cpp:263 ../share/extensions/layout_nup.inx.h:12 +msgid "Rows:" +msgstr "Reihen:" + +#: ../src/widgets/mesh-toolbar.cpp:263 +msgid "Number of rows in new mesh" +msgstr "Anzahl der Zeilen im neuen Gitter" + +#: ../src/widgets/mesh-toolbar.cpp:279 +msgid "Columns" +msgstr "Spalten:" + +#: ../src/widgets/mesh-toolbar.cpp:279 +msgid "Columns:" +msgstr "Spalten:" + +#: ../src/widgets/mesh-toolbar.cpp:279 +msgid "Number of columns in new mesh" +msgstr "Anzahl der Spalten im neuen Gitter" + +#: ../src/widgets/mesh-toolbar.cpp:293 +msgid "Edit Fill" +msgstr "Füllung bearbeiten…" + +#: ../src/widgets/mesh-toolbar.cpp:294 +msgid "Edit fill mesh" +msgstr "Füllungsgitter bearbeiten…" + +#: ../src/widgets/mesh-toolbar.cpp:305 +msgid "Edit Stroke" +msgstr "Kontur bearbeiten…" + +#: ../src/widgets/mesh-toolbar.cpp:306 +msgid "Edit stroke mesh" +msgstr "Konturgitter bearbeiten…" + +#: ../src/widgets/mesh-toolbar.cpp:317 ../src/widgets/node-toolbar.cpp:530 +msgid "Show Handles" +msgstr "Anfasser zeigen" + +#: ../src/widgets/mesh-toolbar.cpp:318 +#, fuzzy +msgid "Show side and tensor handles" +msgstr "Anzeigen der Anfasser" + +#: ../src/widgets/node-toolbar.cpp:350 msgid "Insert node" msgstr "Knoten einfügen" -#: ../src/widgets/node-toolbar.cpp:352 +#: ../src/widgets/node-toolbar.cpp:351 msgid "Insert new nodes into selected segments" msgstr "Neue Knoten in den gewählten Segmenten einfügen" -#: ../src/widgets/node-toolbar.cpp:355 +#: ../src/widgets/node-toolbar.cpp:354 msgid "Insert" msgstr "Einfügen" -#: ../src/widgets/node-toolbar.cpp:366 +#: ../src/widgets/node-toolbar.cpp:365 msgid "Insert node at min X" msgstr "Knoten einfügen bei min X" -#: ../src/widgets/node-toolbar.cpp:367 +#: ../src/widgets/node-toolbar.cpp:366 msgid "Insert new nodes at min X into selected segments" msgstr "Neue Knoten bei min X in die gewählten Segmente einfügen" -#: ../src/widgets/node-toolbar.cpp:370 +#: ../src/widgets/node-toolbar.cpp:369 msgid "Insert min X" msgstr "Eingabe min X" -#: ../src/widgets/node-toolbar.cpp:376 +#: ../src/widgets/node-toolbar.cpp:375 msgid "Insert node at max X" msgstr "Knoten einfügen bei max X" -#: ../src/widgets/node-toolbar.cpp:377 +#: ../src/widgets/node-toolbar.cpp:376 msgid "Insert new nodes at max X into selected segments" msgstr "Neue Knoten bei max X in die gewählten Segmente einfügen" -#: ../src/widgets/node-toolbar.cpp:380 +#: ../src/widgets/node-toolbar.cpp:379 msgid "Insert max X" msgstr "Eingabe max X" -#: ../src/widgets/node-toolbar.cpp:386 +#: ../src/widgets/node-toolbar.cpp:385 msgid "Insert node at min Y" msgstr "Knoten einfügen bei min Y" -#: ../src/widgets/node-toolbar.cpp:387 +#: ../src/widgets/node-toolbar.cpp:386 msgid "Insert new nodes at min Y into selected segments" msgstr "Neue Knoten bei min Y in die gewählten Segmente einfügen" -#: ../src/widgets/node-toolbar.cpp:390 +#: ../src/widgets/node-toolbar.cpp:389 msgid "Insert min Y" msgstr "Eingabe min Y" -#: ../src/widgets/node-toolbar.cpp:396 +#: ../src/widgets/node-toolbar.cpp:395 msgid "Insert node at max Y" msgstr "Knoten einfügen bei max Y" -#: ../src/widgets/node-toolbar.cpp:397 +#: ../src/widgets/node-toolbar.cpp:396 msgid "Insert new nodes at max Y into selected segments" msgstr "Neue Knoten bei max Y in die gewählten Segmente einfügen" -#: ../src/widgets/node-toolbar.cpp:400 +#: ../src/widgets/node-toolbar.cpp:399 msgid "Insert max Y" msgstr "Eingabe max Y" -#: ../src/widgets/node-toolbar.cpp:408 +#: ../src/widgets/node-toolbar.cpp:407 msgid "Delete selected nodes" msgstr "Die gewählten Knoten löschen" -#: ../src/widgets/node-toolbar.cpp:419 +#: ../src/widgets/node-toolbar.cpp:418 msgid "Join selected nodes" msgstr "Gewählte Endknoten verbinden" -#: ../src/widgets/node-toolbar.cpp:422 +#: ../src/widgets/node-toolbar.cpp:421 msgid "Join" msgstr "Verbinden" # !!! difference to "split"? -#: ../src/widgets/node-toolbar.cpp:430 +#: ../src/widgets/node-toolbar.cpp:429 msgid "Break path at selected nodes" msgstr "Pfad an den gewählten Knoten auftrennen" -#: ../src/widgets/node-toolbar.cpp:440 +#: ../src/widgets/node-toolbar.cpp:439 msgid "Join with segment" msgstr "Segment verbinden" -#: ../src/widgets/node-toolbar.cpp:441 +#: ../src/widgets/node-toolbar.cpp:440 msgid "Join selected endnodes with a new segment" msgstr "Gewählte Endknoten durch ein neues Segment verbinden" -#: ../src/widgets/node-toolbar.cpp:450 +#: ../src/widgets/node-toolbar.cpp:449 msgid "Delete segment" msgstr "Segment löschen" -#: ../src/widgets/node-toolbar.cpp:451 +#: ../src/widgets/node-toolbar.cpp:450 msgid "Delete segment between two non-endpoint nodes" msgstr "Pfad zwischen zwei Knoten auftrennen" -#: ../src/widgets/node-toolbar.cpp:460 +#: ../src/widgets/node-toolbar.cpp:459 msgid "Node Cusp" msgstr "Knoten eckig" -#: ../src/widgets/node-toolbar.cpp:461 +#: ../src/widgets/node-toolbar.cpp:460 msgid "Make selected nodes corner" msgstr "Die gewählten Knoten in Ecken umwandeln" -#: ../src/widgets/node-toolbar.cpp:470 +#: ../src/widgets/node-toolbar.cpp:469 msgid "Node Smooth" msgstr "Knoten glatt" -#: ../src/widgets/node-toolbar.cpp:471 +#: ../src/widgets/node-toolbar.cpp:470 msgid "Make selected nodes smooth" msgstr "Die gewählten Knoten glätten" -#: ../src/widgets/node-toolbar.cpp:480 +#: ../src/widgets/node-toolbar.cpp:479 msgid "Node Symmetric" msgstr "Knoten symmetrisch" -#: ../src/widgets/node-toolbar.cpp:481 +#: ../src/widgets/node-toolbar.cpp:480 msgid "Make selected nodes symmetric" msgstr "Die gewählten Knoten symmetrisch machen" -#: ../src/widgets/node-toolbar.cpp:490 +#: ../src/widgets/node-toolbar.cpp:489 msgid "Node Auto" msgstr "Knoten automatisch" -#: ../src/widgets/node-toolbar.cpp:491 +#: ../src/widgets/node-toolbar.cpp:490 msgid "Make selected nodes auto-smooth" msgstr "Die gewählten Knoten automatisch abrunden" -#: ../src/widgets/node-toolbar.cpp:500 +#: ../src/widgets/node-toolbar.cpp:499 msgid "Node Line" msgstr "Knoten in Linien" -#: ../src/widgets/node-toolbar.cpp:501 +#: ../src/widgets/node-toolbar.cpp:500 msgid "Make selected segments lines" msgstr "Die gewählten Abschnitte in Linien umwandeln" -#: ../src/widgets/node-toolbar.cpp:510 +#: ../src/widgets/node-toolbar.cpp:509 msgid "Node Curve" msgstr "Knoten in Kurven" -#: ../src/widgets/node-toolbar.cpp:511 +#: ../src/widgets/node-toolbar.cpp:510 msgid "Make selected segments curves" msgstr "Die gewählten Abschnitte in Kurven umwandeln" -#: ../src/widgets/node-toolbar.cpp:520 +#: ../src/widgets/node-toolbar.cpp:519 msgid "Show Transform Handles" msgstr "Anfasser zeigen" -#: ../src/widgets/node-toolbar.cpp:521 +#: ../src/widgets/node-toolbar.cpp:520 msgid "Show transformation handles for selected nodes" msgstr "Zeige Anfasser für gewählte Knoten" #: ../src/widgets/node-toolbar.cpp:531 -msgid "Show Handles" -msgstr "Anfasser zeigen" - -#: ../src/widgets/node-toolbar.cpp:532 msgid "Show Bezier handles of selected nodes" msgstr "Die Bézier-Anfasser von ausgewählten Knoten anzeigen" -#: ../src/widgets/node-toolbar.cpp:542 +#: ../src/widgets/node-toolbar.cpp:541 msgid "Show Outline" msgstr "Umriss zeigen" -#: ../src/widgets/node-toolbar.cpp:543 +#: ../src/widgets/node-toolbar.cpp:542 msgid "Show path outline (without path effects)" msgstr "Zeige Entwurfspfad (ohne Pfadeffekte)" -#: ../src/widgets/node-toolbar.cpp:565 +#: ../src/widgets/node-toolbar.cpp:564 msgid "Edit clipping paths" msgstr "Ausschneidepfad bearbeiten" -#: ../src/widgets/node-toolbar.cpp:566 +#: ../src/widgets/node-toolbar.cpp:565 msgid "Show clipping path(s) of selected object(s)" msgstr "Zeige Bézier-Anfasser für Ausschneidungspfade an ausgewählten Objekten" -#: ../src/widgets/node-toolbar.cpp:576 +#: ../src/widgets/node-toolbar.cpp:575 msgid "Edit masks" msgstr "Maskierung bearbeiten" -#: ../src/widgets/node-toolbar.cpp:577 +#: ../src/widgets/node-toolbar.cpp:576 msgid "Show mask(s) of selected object(s)" msgstr "Zeige Bézier-Anfasser für Maskierungen an ausgewählten Objekten" -#: ../src/widgets/node-toolbar.cpp:591 +#: ../src/widgets/node-toolbar.cpp:590 msgid "X coordinate:" msgstr "X-Koordinate:" -#: ../src/widgets/node-toolbar.cpp:591 +#: ../src/widgets/node-toolbar.cpp:590 msgid "X coordinate of selected node(s)" msgstr "X-Koordinate der Auswahl" -#: ../src/widgets/node-toolbar.cpp:609 +#: ../src/widgets/node-toolbar.cpp:608 msgid "Y coordinate:" msgstr "Y-Koordinate" -#: ../src/widgets/node-toolbar.cpp:609 +#: ../src/widgets/node-toolbar.cpp:608 msgid "Y coordinate of selected node(s)" msgstr "Y-Koordinate der Auswahl" -#: ../src/widgets/paintbucket-toolbar.cpp:155 +#: ../src/widgets/paintbucket-toolbar.cpp:153 msgid "Fill by" msgstr "Füllen mit:" -#: ../src/widgets/paintbucket-toolbar.cpp:156 +#: ../src/widgets/paintbucket-toolbar.cpp:154 msgid "Fill by:" msgstr "Füllen mit:" -#: ../src/widgets/paintbucket-toolbar.cpp:168 +#: ../src/widgets/paintbucket-toolbar.cpp:166 msgid "Fill Threshold" msgstr "Füll-Schwellwert:" -#: ../src/widgets/paintbucket-toolbar.cpp:169 +#: ../src/widgets/paintbucket-toolbar.cpp:167 msgid "" "The maximum allowed difference between the clicked pixel and the neighboring " "pixels to be counted in the fill" @@ -25406,35 +25850,35 @@ msgstr "" "Der maximal erlaubte Unterschied zwischen dem angeklickten Pixel und den " "benachbarten Pixeln, um noch zur Füllung zu gehören" -#: ../src/widgets/paintbucket-toolbar.cpp:195 +#: ../src/widgets/paintbucket-toolbar.cpp:193 msgid "Grow/shrink by" msgstr "Vergrößern/Verkleinern um:" -#: ../src/widgets/paintbucket-toolbar.cpp:195 +#: ../src/widgets/paintbucket-toolbar.cpp:193 msgid "Grow/shrink by:" msgstr "Vergrößern/Verkleinern um:" -#: ../src/widgets/paintbucket-toolbar.cpp:196 +#: ../src/widgets/paintbucket-toolbar.cpp:194 msgid "" "The amount to grow (positive) or shrink (negative) the created fill path" msgstr "" "Erzeugten Füllungspfad vergrößern (positive) oder verkleinern (negativ)" -#: ../src/widgets/paintbucket-toolbar.cpp:221 +#: ../src/widgets/paintbucket-toolbar.cpp:219 msgid "Close gaps" msgstr "Lücken schließen" -#: ../src/widgets/paintbucket-toolbar.cpp:222 +#: ../src/widgets/paintbucket-toolbar.cpp:220 msgid "Close gaps:" msgstr "Lücken schließen:" -#: ../src/widgets/paintbucket-toolbar.cpp:233 -#: ../src/widgets/pencil-toolbar.cpp:327 ../src/widgets/spiral-toolbar.cpp:307 -#: ../src/widgets/star-toolbar.cpp:577 +#: ../src/widgets/paintbucket-toolbar.cpp:231 +#: ../src/widgets/pencil-toolbar.cpp:326 ../src/widgets/spiral-toolbar.cpp:304 +#: ../src/widgets/star-toolbar.cpp:576 msgid "Defaults" msgstr "Vorgaben" -#: ../src/widgets/paintbucket-toolbar.cpp:234 +#: ../src/widgets/paintbucket-toolbar.cpp:232 msgid "" "Reset paint bucket parameters to defaults (use Inkscape Preferences > Tools " "to change defaults)" @@ -25442,28 +25886,28 @@ msgstr "" "Die Parameter des Farbeimers auf Vorgabewerte zurücksetzen (Menü Datei » " "Inkscape-Einstellungen » Werkzeuge, um die Vorgabeeinstellungen zu ändern)" -#: ../src/widgets/paint-selector.cpp:231 +#: ../src/widgets/paint-selector.cpp:234 msgid "No paint" msgstr "Nicht zeichnen" -#: ../src/widgets/paint-selector.cpp:233 +#: ../src/widgets/paint-selector.cpp:236 msgid "Flat color" msgstr "Einfache Farbe" -#: ../src/widgets/paint-selector.cpp:235 +#: ../src/widgets/paint-selector.cpp:238 msgid "Linear gradient" msgstr "Linearer Farbverlauf" -#: ../src/widgets/paint-selector.cpp:237 +#: ../src/widgets/paint-selector.cpp:240 msgid "Radial gradient" msgstr "Radialer Farbverlauf" -#: ../src/widgets/paint-selector.cpp:243 +#: ../src/widgets/paint-selector.cpp:246 msgid "Unset paint (make it undefined so it can be inherited)" msgstr "Farbe nicht setzen (damit sie nicht übernommen/vererbt werden kann)" #. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/painting.html#FillRuleProperty -#: ../src/widgets/paint-selector.cpp:260 +#: ../src/widgets/paint-selector.cpp:263 msgid "" "Any path self-intersections or subpaths create holes in the fill (fill-rule: " "evenodd)" @@ -25472,43 +25916,43 @@ msgstr "" "Löcher (Füllregel: evenodd)" #. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/painting.html#FillRuleProperty -#: ../src/widgets/paint-selector.cpp:271 +#: ../src/widgets/paint-selector.cpp:274 msgid "" "Fill is solid unless a subpath is counterdirectional (fill-rule: nonzero)" msgstr "" "Vollständiges Füllen, außer ein eingefügter Pfad läuft entgegengesetzt " "(Füllregel: nonzero)" -#: ../src/widgets/paint-selector.cpp:587 +#: ../src/widgets/paint-selector.cpp:590 msgid "No objects" msgstr "Keine Objekte" -#: ../src/widgets/paint-selector.cpp:598 +#: ../src/widgets/paint-selector.cpp:601 msgid "Multiple styles" msgstr "Mehrfachstile" -#: ../src/widgets/paint-selector.cpp:609 +#: ../src/widgets/paint-selector.cpp:612 msgid "Paint is undefined" msgstr "Farbe ist undefiniert" -#: ../src/widgets/paint-selector.cpp:620 +#: ../src/widgets/paint-selector.cpp:623 msgid "No paint" msgstr "Keine Farbe" -#: ../src/widgets/paint-selector.cpp:691 +#: ../src/widgets/paint-selector.cpp:694 msgid "Flat color" msgstr "Farbbereich" #. sp_gradient_selector_set_mode(SP_GRADIENT_SELECTOR(gsel), SP_GRADIENT_SELECTOR_MODE_LINEAR); -#: ../src/widgets/paint-selector.cpp:755 +#: ../src/widgets/paint-selector.cpp:758 msgid "Linear gradient" msgstr "Linearer Farbverlauf" -#: ../src/widgets/paint-selector.cpp:758 +#: ../src/widgets/paint-selector.cpp:761 msgid "Radial gradient" msgstr "Radialer Farbverlauf" -#: ../src/widgets/paint-selector.cpp:1052 +#: ../src/widgets/paint-selector.cpp:1055 msgid "" "Use the Node tool to adjust position, scale, and rotation of the " "pattern on canvas. Use Object > Pattern > Objects to Pattern to " @@ -25518,87 +25962,87 @@ msgstr "" "Musters anzupassen. Mit Objekt » Füllmuster » Objekte in Füllmuster " "umwandeln lassen sich neue Füllmuster von ausgewählten Objekten erzeugen." -#: ../src/widgets/paint-selector.cpp:1065 +#: ../src/widgets/paint-selector.cpp:1068 msgid "Pattern fill" msgstr "Füllmuster" -#: ../src/widgets/paint-selector.cpp:1161 +#: ../src/widgets/paint-selector.cpp:1164 msgid "Swatch fill" msgstr "Farbmusterfüllung" -#: ../src/widgets/pencil-toolbar.cpp:131 +#: ../src/widgets/pencil-toolbar.cpp:130 msgid "Bezier" msgstr "Bezier" -#: ../src/widgets/pencil-toolbar.cpp:132 +#: ../src/widgets/pencil-toolbar.cpp:131 msgid "Create regular Bezier path" msgstr "Erstelle Bezier Pfad" -#: ../src/widgets/pencil-toolbar.cpp:139 +#: ../src/widgets/pencil-toolbar.cpp:138 msgid "Create Spiro path" msgstr "Erstelle Spiral-Pfad" -#: ../src/widgets/pencil-toolbar.cpp:146 +#: ../src/widgets/pencil-toolbar.cpp:145 msgid "Zigzag" msgstr "Zickzack" -#: ../src/widgets/pencil-toolbar.cpp:147 +#: ../src/widgets/pencil-toolbar.cpp:146 msgid "Create a sequence of straight line segments" msgstr "Erstelle eine Folge von Gerade Liniensegmenten" -#: ../src/widgets/pencil-toolbar.cpp:153 +#: ../src/widgets/pencil-toolbar.cpp:152 msgid "Paraxial" msgstr "achsenparallel" -#: ../src/widgets/pencil-toolbar.cpp:154 +#: ../src/widgets/pencil-toolbar.cpp:153 msgid "Create a sequence of paraxial line segments" msgstr "Erstelle eine Folge von Achsenparallelen Liniensegmenten" -#: ../src/widgets/pencil-toolbar.cpp:162 +#: ../src/widgets/pencil-toolbar.cpp:161 msgid "Mode of new lines drawn by this tool" msgstr "Modus für neue Linie mit diesem Werkzeug" -#: ../src/widgets/pencil-toolbar.cpp:191 +#: ../src/widgets/pencil-toolbar.cpp:190 msgid "Triangle in" msgstr "Dreieck Anfang" -#: ../src/widgets/pencil-toolbar.cpp:192 +#: ../src/widgets/pencil-toolbar.cpp:191 msgid "Triangle out" msgstr "Dreieck Ende" -#: ../src/widgets/pencil-toolbar.cpp:194 +#: ../src/widgets/pencil-toolbar.cpp:193 msgid "From clipboard" msgstr "Aus Zwischenablage" -#: ../src/widgets/pencil-toolbar.cpp:219 ../src/widgets/pencil-toolbar.cpp:220 +#: ../src/widgets/pencil-toolbar.cpp:218 ../src/widgets/pencil-toolbar.cpp:219 msgid "Shape:" msgstr "Form:" -#: ../src/widgets/pencil-toolbar.cpp:219 +#: ../src/widgets/pencil-toolbar.cpp:218 msgid "Shape of new paths drawn by this tool" msgstr "Stil von neuen Pfaden mit diesem Werkzeug" -#: ../src/widgets/pencil-toolbar.cpp:304 +#: ../src/widgets/pencil-toolbar.cpp:303 msgid "(many nodes, rough)" msgstr "(viele Knoten, grob)" -#: ../src/widgets/pencil-toolbar.cpp:304 +#: ../src/widgets/pencil-toolbar.cpp:303 msgid "(few nodes, smooth)" msgstr "(wenige Knoten, weich)" -#: ../src/widgets/pencil-toolbar.cpp:307 +#: ../src/widgets/pencil-toolbar.cpp:306 msgid "Smoothing:" msgstr "Glättung:" -#: ../src/widgets/pencil-toolbar.cpp:307 +#: ../src/widgets/pencil-toolbar.cpp:306 msgid "Smoothing: " msgstr "Glättung:" -#: ../src/widgets/pencil-toolbar.cpp:308 +#: ../src/widgets/pencil-toolbar.cpp:307 msgid "How much smoothing (simplifying) is applied to the line" msgstr "Wie stark die Linie geglättet (vereinfacht) wird" -#: ../src/widgets/pencil-toolbar.cpp:328 +#: ../src/widgets/pencil-toolbar.cpp:327 msgid "" "Reset pencil parameters to defaults (use Inkscape Preferences > Tools to " "change defaults)" @@ -25606,59 +26050,59 @@ msgstr "" "Die Parameter des Stiftes auf Vorgabewerte zurücksetzen (Menü Datei » " "Inkscape-Einstellungen » Werkzeuge, um die Grundeinstellungen zu ändern)" -#: ../src/widgets/rect-toolbar.cpp:129 +#: ../src/widgets/rect-toolbar.cpp:128 msgid "Change rectangle" msgstr "Rechteck ändern" -#: ../src/widgets/rect-toolbar.cpp:316 +#: ../src/widgets/rect-toolbar.cpp:315 msgid "W:" msgstr "W:" -#: ../src/widgets/rect-toolbar.cpp:316 +#: ../src/widgets/rect-toolbar.cpp:315 msgid "Width of rectangle" msgstr "Breite des Rechtecks" -#: ../src/widgets/rect-toolbar.cpp:333 +#: ../src/widgets/rect-toolbar.cpp:332 msgid "H:" msgstr "H:" -#: ../src/widgets/rect-toolbar.cpp:333 +#: ../src/widgets/rect-toolbar.cpp:332 msgid "Height of rectangle" msgstr "Höhe des Rechtecks" -#: ../src/widgets/rect-toolbar.cpp:347 ../src/widgets/rect-toolbar.cpp:362 +#: ../src/widgets/rect-toolbar.cpp:346 ../src/widgets/rect-toolbar.cpp:361 msgid "not rounded" msgstr "Nicht abgerundet" -#: ../src/widgets/rect-toolbar.cpp:350 +#: ../src/widgets/rect-toolbar.cpp:349 msgid "Horizontal radius" msgstr "Horizontaler Radius" -#: ../src/widgets/rect-toolbar.cpp:350 +#: ../src/widgets/rect-toolbar.cpp:349 msgid "Rx:" msgstr "Rx:" -#: ../src/widgets/rect-toolbar.cpp:350 +#: ../src/widgets/rect-toolbar.cpp:349 msgid "Horizontal radius of rounded corners" msgstr "Horizontaler Radius einer abgerundeten Ecke" -#: ../src/widgets/rect-toolbar.cpp:365 +#: ../src/widgets/rect-toolbar.cpp:364 msgid "Vertical radius" msgstr "Vertikaler Radius" -#: ../src/widgets/rect-toolbar.cpp:365 +#: ../src/widgets/rect-toolbar.cpp:364 msgid "Ry:" msgstr "Ry:" -#: ../src/widgets/rect-toolbar.cpp:365 +#: ../src/widgets/rect-toolbar.cpp:364 msgid "Vertical radius of rounded corners" msgstr "Vertikaler Radius einer abgerundeten Ecke" -#: ../src/widgets/rect-toolbar.cpp:384 +#: ../src/widgets/rect-toolbar.cpp:383 msgid "Not rounded" msgstr "Nicht abgerundet" -#: ../src/widgets/rect-toolbar.cpp:385 +#: ../src/widgets/rect-toolbar.cpp:384 msgid "Make corners sharp" msgstr "Spitze Ecken" @@ -25803,91 +26247,91 @@ msgstr "Farbverlaufs-Anfasser verschieben" msgid "Move patterns" msgstr "Muster verschieben" -#: ../src/widgets/spiral-toolbar.cpp:118 +#: ../src/widgets/spiral-toolbar.cpp:115 msgid "Change spiral" msgstr "Spirale ändern" -#: ../src/widgets/spiral-toolbar.cpp:264 +#: ../src/widgets/spiral-toolbar.cpp:261 msgid "just a curve" msgstr "Kurve ziehen" -#: ../src/widgets/spiral-toolbar.cpp:264 +#: ../src/widgets/spiral-toolbar.cpp:261 msgid "one full revolution" msgstr "eine volle Umdrehung" -#: ../src/widgets/spiral-toolbar.cpp:267 +#: ../src/widgets/spiral-toolbar.cpp:264 msgid "Number of turns" msgstr "Anzahl der Drehungen" -#: ../src/widgets/spiral-toolbar.cpp:267 +#: ../src/widgets/spiral-toolbar.cpp:264 msgid "Turns:" msgstr "Umdrehungen:" -#: ../src/widgets/spiral-toolbar.cpp:267 +#: ../src/widgets/spiral-toolbar.cpp:264 msgid "Number of revolutions" msgstr "Anzahl der Umdrehungen" -#: ../src/widgets/spiral-toolbar.cpp:278 +#: ../src/widgets/spiral-toolbar.cpp:275 msgid "circle" msgstr "Kreis" -#: ../src/widgets/spiral-toolbar.cpp:278 +#: ../src/widgets/spiral-toolbar.cpp:275 msgid "edge is much denser" msgstr "Kante ist viel dichter" -#: ../src/widgets/spiral-toolbar.cpp:278 +#: ../src/widgets/spiral-toolbar.cpp:275 msgid "edge is denser" msgstr "Kante ist dichter" -#: ../src/widgets/spiral-toolbar.cpp:278 +#: ../src/widgets/spiral-toolbar.cpp:275 msgid "even" msgstr "eben" -#: ../src/widgets/spiral-toolbar.cpp:278 +#: ../src/widgets/spiral-toolbar.cpp:275 msgid "center is denser" msgstr "Mittelpunkt ist dichter" -#: ../src/widgets/spiral-toolbar.cpp:278 +#: ../src/widgets/spiral-toolbar.cpp:275 msgid "center is much denser" msgstr "Zentrum ist viel dichter" -#: ../src/widgets/spiral-toolbar.cpp:281 +#: ../src/widgets/spiral-toolbar.cpp:278 msgid "Divergence" msgstr "Abweichung" -#: ../src/widgets/spiral-toolbar.cpp:281 +#: ../src/widgets/spiral-toolbar.cpp:278 msgid "Divergence:" msgstr "Abweichung:" -#: ../src/widgets/spiral-toolbar.cpp:281 +#: ../src/widgets/spiral-toolbar.cpp:278 msgid "How much denser/sparser are outer revolutions; 1 = uniform" msgstr "Dichte der äußeren Umdrehungen; 1 = gleichförmig" -#: ../src/widgets/spiral-toolbar.cpp:292 +#: ../src/widgets/spiral-toolbar.cpp:289 msgid "starts from center" msgstr "startet vom Mittelpunkt" -#: ../src/widgets/spiral-toolbar.cpp:292 +#: ../src/widgets/spiral-toolbar.cpp:289 msgid "starts mid-way" msgstr "beginnt mittig" -#: ../src/widgets/spiral-toolbar.cpp:292 +#: ../src/widgets/spiral-toolbar.cpp:289 msgid "starts near edge" msgstr "Startet nahe der Ecke" -#: ../src/widgets/spiral-toolbar.cpp:295 +#: ../src/widgets/spiral-toolbar.cpp:292 msgid "Inner radius" msgstr "Innerer Radius" -#: ../src/widgets/spiral-toolbar.cpp:295 +#: ../src/widgets/spiral-toolbar.cpp:292 msgid "Inner radius:" msgstr "Innerer Radius:" -#: ../src/widgets/spiral-toolbar.cpp:295 +#: ../src/widgets/spiral-toolbar.cpp:292 msgid "Radius of the innermost revolution (relative to the spiral size)" msgstr "Radius der innersten Umdrehung (relativ zur Gesamtgröße der Spirale)" -#: ../src/widgets/spiral-toolbar.cpp:308 ../src/widgets/star-toolbar.cpp:578 +#: ../src/widgets/spiral-toolbar.cpp:305 ../src/widgets/star-toolbar.cpp:577 msgid "" "Reset shape parameters to defaults (use Inkscape Preferences > Tools to " "change defaults)" @@ -25897,114 +26341,114 @@ msgstr "" # (swatches) #. Width -#: ../src/widgets/spray-toolbar.cpp:130 +#: ../src/widgets/spray-toolbar.cpp:129 msgid "(narrow spray)" msgstr "(eng sprühen)" -#: ../src/widgets/spray-toolbar.cpp:130 +#: ../src/widgets/spray-toolbar.cpp:129 msgid "(broad spray)" msgstr "(breit sprühen)" -#: ../src/widgets/spray-toolbar.cpp:133 +#: ../src/widgets/spray-toolbar.cpp:132 msgid "The width of the spray area (relative to the visible canvas area)" msgstr "Breite des Sprühbereichs (relativ zum sichtbaren Dokumentausschnitt)" -#: ../src/widgets/spray-toolbar.cpp:146 +#: ../src/widgets/spray-toolbar.cpp:145 msgid "(maximum mean)" msgstr "(maximales Mittel)" -#: ../src/widgets/spray-toolbar.cpp:149 +#: ../src/widgets/spray-toolbar.cpp:148 msgid "Focus" msgstr "Fokus" -#: ../src/widgets/spray-toolbar.cpp:149 +#: ../src/widgets/spray-toolbar.cpp:148 msgid "Focus:" msgstr "Fokus:" -#: ../src/widgets/spray-toolbar.cpp:149 +#: ../src/widgets/spray-toolbar.cpp:148 msgid "0 to spray a spot; increase to enlarge the ring radius" msgstr "0 um einen Punkt zu sprühen. Erhöhen, um den Ringradius zu erweitern." #. Standard_deviation -#: ../src/widgets/spray-toolbar.cpp:162 +#: ../src/widgets/spray-toolbar.cpp:161 msgid "(minimum scatter)" msgstr "(minimale Streuung)" -#: ../src/widgets/spray-toolbar.cpp:162 +#: ../src/widgets/spray-toolbar.cpp:161 msgid "(maximum scatter)" msgstr "(maximale Streuung)" -#: ../src/widgets/spray-toolbar.cpp:165 +#: ../src/widgets/spray-toolbar.cpp:164 msgctxt "Spray tool" msgid "Scatter" msgstr "Streuung" -#: ../src/widgets/spray-toolbar.cpp:165 +#: ../src/widgets/spray-toolbar.cpp:164 msgctxt "Spray tool" msgid "Scatter:" msgstr "Streuung:" -#: ../src/widgets/spray-toolbar.cpp:165 +#: ../src/widgets/spray-toolbar.cpp:164 msgid "Increase to scatter sprayed objects" msgstr "Vergrößern der Streuung gesprühter Objekte" -#: ../src/widgets/spray-toolbar.cpp:184 +#: ../src/widgets/spray-toolbar.cpp:183 msgid "Spray copies of the initial selection" msgstr "Sprühe Kopien vom zuletzt ausgewählten Objekt" -#: ../src/widgets/spray-toolbar.cpp:191 +#: ../src/widgets/spray-toolbar.cpp:190 msgid "Spray clones of the initial selection" msgstr "Sprühe Klone vom zuletzt ausgewählten Objekt" -#: ../src/widgets/spray-toolbar.cpp:197 +#: ../src/widgets/spray-toolbar.cpp:196 msgid "Spray single path" msgstr "Sprühe einzelnen Pfad" -#: ../src/widgets/spray-toolbar.cpp:198 +#: ../src/widgets/spray-toolbar.cpp:197 msgid "Spray objects in a single path" msgstr "Sprüht Objekte in einen einzelnen Pfad" -#: ../src/widgets/spray-toolbar.cpp:202 ../src/widgets/tweak-toolbar.cpp:272 +#: ../src/widgets/spray-toolbar.cpp:201 ../src/widgets/tweak-toolbar.cpp:271 msgid "Mode" msgstr "Modus" #. Population -#: ../src/widgets/spray-toolbar.cpp:222 +#: ../src/widgets/spray-toolbar.cpp:221 msgid "(low population)" msgstr "(niedrige Population)" -#: ../src/widgets/spray-toolbar.cpp:222 +#: ../src/widgets/spray-toolbar.cpp:221 msgid "(high population)" msgstr "(hoher Zuwachs)" -#: ../src/widgets/spray-toolbar.cpp:225 +#: ../src/widgets/spray-toolbar.cpp:224 msgid "Amount" msgstr "Menge" -#: ../src/widgets/spray-toolbar.cpp:226 +#: ../src/widgets/spray-toolbar.cpp:225 msgid "Adjusts the number of items sprayed per click" msgstr "Anzahl der Objekte festlegen, die per Klick gesprüht werden." -#: ../src/widgets/spray-toolbar.cpp:242 +#: ../src/widgets/spray-toolbar.cpp:241 msgid "" "Use the pressure of the input device to alter the amount of sprayed objects" msgstr "" "Druckempfindlichkeit des Eingabegeräts benutzen, um die Anzahl der zu " "sprühenden Objekte zu beeinflussen" -#: ../src/widgets/spray-toolbar.cpp:252 +#: ../src/widgets/spray-toolbar.cpp:251 msgid "(high rotation variation)" msgstr "(starke Abweichung)" -#: ../src/widgets/spray-toolbar.cpp:255 +#: ../src/widgets/spray-toolbar.cpp:254 msgid "Rotation" msgstr "_Rotation" -#: ../src/widgets/spray-toolbar.cpp:255 +#: ../src/widgets/spray-toolbar.cpp:254 msgid "Rotation:" msgstr "_Rotation" -#: ../src/widgets/spray-toolbar.cpp:257 +#: ../src/widgets/spray-toolbar.cpp:256 #, no-c-format msgid "" "Variation of the rotation of the sprayed objects; 0% for the same rotation " @@ -26013,21 +26457,21 @@ msgstr "" "Variiert die Drehung der zu sprühenden Objekte. 0% bedeutet gleiche Drehung " "wie das Originalobjekt." -#: ../src/widgets/spray-toolbar.cpp:270 +#: ../src/widgets/spray-toolbar.cpp:269 msgid "(high scale variation)" msgstr "(starke Abweichung)" -#: ../src/widgets/spray-toolbar.cpp:273 +#: ../src/widgets/spray-toolbar.cpp:272 msgctxt "Spray tool" msgid "Scale" msgstr "Skalieren" -#: ../src/widgets/spray-toolbar.cpp:273 +#: ../src/widgets/spray-toolbar.cpp:272 msgctxt "Spray tool" msgid "Scale:" msgstr "Skalierung:" -#: ../src/widgets/spray-toolbar.cpp:275 +#: ../src/widgets/spray-toolbar.cpp:274 #, no-c-format msgid "" "Variation in the scale of the sprayed objects; 0% for the same scale than " @@ -26036,86 +26480,96 @@ msgstr "" "Variiert die Größe der zu sprühenden Objekte. 0% bedeutet gleiche Größe wie " "das Originalobjekt." -#: ../src/widgets/sp-attribute-widget.cpp:301 +#: ../src/widgets/sp-attribute-widget.cpp:299 msgid "Set attribute" msgstr "Attribut festlegen" -#: ../src/widgets/sp-color-icc-selector.cpp:106 +#: ../src/widgets/sp-color-icc-selector.cpp:257 msgid "CMS" msgstr "CMS" -#: ../src/widgets/sp-color-icc-selector.cpp:213 +#: ../src/widgets/sp-color-icc-selector.cpp:355 #: ../src/widgets/sp-color-scales.cpp:428 msgid "_R:" msgstr "_R:" -#: ../src/widgets/sp-color-icc-selector.cpp:213 -#: ../src/widgets/sp-color-icc-selector.cpp:214 +#. TYPE_RGB_16 +#: ../src/widgets/sp-color-icc-selector.cpp:356 #: ../src/widgets/sp-color-scales.cpp:431 msgid "_G:" msgstr "_G:" -#: ../src/widgets/sp-color-icc-selector.cpp:213 +#: ../src/widgets/sp-color-icc-selector.cpp:357 #: ../src/widgets/sp-color-scales.cpp:434 msgid "_B:" msgstr "_B:" -#: ../src/widgets/sp-color-icc-selector.cpp:215 -#: ../src/widgets/sp-color-icc-selector.cpp:216 +#: ../src/widgets/sp-color-icc-selector.cpp:359 +#, fuzzy +msgid "G:" +msgstr "_G:" + +#: ../src/widgets/sp-color-icc-selector.cpp:359 +msgid "Gray" +msgstr "Grau" + +#. TYPE_GRAY_16 +#: ../src/widgets/sp-color-icc-selector.cpp:361 +#: ../src/widgets/sp-color-icc-selector.cpp:365 #: ../src/widgets/sp-color-scales.cpp:454 msgid "_H:" msgstr "_H:" -#: ../src/widgets/sp-color-icc-selector.cpp:215 -#: ../src/widgets/sp-color-icc-selector.cpp:216 +#. TYPE_HSV_16 +#: ../src/widgets/sp-color-icc-selector.cpp:362 +#: ../src/widgets/sp-color-icc-selector.cpp:367 #: ../src/widgets/sp-color-scales.cpp:457 msgid "_S:" msgstr "_S:" -#: ../src/widgets/sp-color-icc-selector.cpp:216 +#. TYPE_HLS_16 +#: ../src/widgets/sp-color-icc-selector.cpp:366 #: ../src/widgets/sp-color-scales.cpp:460 msgid "_L:" msgstr "_L:" -#: ../src/widgets/sp-color-icc-selector.cpp:217 -#: ../src/widgets/sp-color-icc-selector.cpp:218 +#: ../src/widgets/sp-color-icc-selector.cpp:369 +#: ../src/widgets/sp-color-icc-selector.cpp:374 #: ../src/widgets/sp-color-scales.cpp:482 msgid "_C:" msgstr "_C:" -#: ../src/widgets/sp-color-icc-selector.cpp:217 -#: ../src/widgets/sp-color-icc-selector.cpp:218 +#. TYPE_CMYK_16 +#. TYPE_CMY_16 +#: ../src/widgets/sp-color-icc-selector.cpp:370 +#: ../src/widgets/sp-color-icc-selector.cpp:375 #: ../src/widgets/sp-color-scales.cpp:485 msgid "_M:" msgstr "_M:" -#: ../src/widgets/sp-color-icc-selector.cpp:217 -#: ../src/widgets/sp-color-icc-selector.cpp:218 +#: ../src/widgets/sp-color-icc-selector.cpp:371 +#: ../src/widgets/sp-color-icc-selector.cpp:376 #: ../src/widgets/sp-color-scales.cpp:488 msgid "_Y:" msgstr "Y:" -#: ../src/widgets/sp-color-icc-selector.cpp:217 +#: ../src/widgets/sp-color-icc-selector.cpp:372 #: ../src/widgets/sp-color-scales.cpp:491 msgid "_K:" msgstr "_K:" -#: ../src/widgets/sp-color-icc-selector.cpp:228 -msgid "Gray" -msgstr "Grau" - # ??? Check! -#: ../src/widgets/sp-color-icc-selector.cpp:297 +#: ../src/widgets/sp-color-icc-selector.cpp:455 msgid "Fix" msgstr "Festlegen" # ??? Check! -#: ../src/widgets/sp-color-icc-selector.cpp:300 +#: ../src/widgets/sp-color-icc-selector.cpp:458 msgid "Fix RGB fallback to match icc-color() value." msgstr "Legt RGB-Ausweichwert für Entsprechung des icc-color()-Parameters fest" #. Label -#: ../src/widgets/sp-color-icc-selector.cpp:438 +#: ../src/widgets/sp-color-icc-selector.cpp:561 #: ../src/widgets/sp-color-scales.cpp:437 #: ../src/widgets/sp-color-scales.cpp:463 #: ../src/widgets/sp-color-scales.cpp:494 @@ -26123,8 +26577,8 @@ msgstr "Legt RGB-Ausweichwert für Entsprechung des icc-color()-Parameters fest" msgid "_A:" msgstr "_A:" -#: ../src/widgets/sp-color-icc-selector.cpp:457 -#: ../src/widgets/sp-color-icc-selector.cpp:479 +#: ../src/widgets/sp-color-icc-selector.cpp:572 +#: ../src/widgets/sp-color-icc-selector.cpp:585 #: ../src/widgets/sp-color-scales.cpp:438 #: ../src/widgets/sp-color-scales.cpp:439 #: ../src/widgets/sp-color-scales.cpp:464 @@ -26136,24 +26590,24 @@ msgstr "_A:" msgid "Alpha (opacity)" msgstr "Alpha (Deckkraft)" -#: ../src/widgets/sp-color-notebook.cpp:387 +#: ../src/widgets/sp-color-notebook.cpp:385 msgid "Color Managed" msgstr "Farb-Management" -#: ../src/widgets/sp-color-notebook.cpp:394 +#: ../src/widgets/sp-color-notebook.cpp:392 msgid "Out of gamut!" msgstr "Farbbereichswarnung:" -#: ../src/widgets/sp-color-notebook.cpp:401 +#: ../src/widgets/sp-color-notebook.cpp:399 msgid "Too much ink!" msgstr "Zu viel Farbe!" #. Create RGBA entry and color preview -#: ../src/widgets/sp-color-notebook.cpp:418 +#: ../src/widgets/sp-color-notebook.cpp:416 msgid "RGBA_:" msgstr "RGBA_:" -#: ../src/widgets/sp-color-notebook.cpp:426 +#: ../src/widgets/sp-color-notebook.cpp:424 msgid "Hexadecimal RGBA value of the color" msgstr "Hexadezimaler RGBA-Wert der Farbe" @@ -26181,173 +26635,173 @@ msgstr "Wert" msgid "Type text in a text node" msgstr "Text in einem Text-Knoten tippen" -#: ../src/widgets/star-toolbar.cpp:115 +#: ../src/widgets/star-toolbar.cpp:114 msgid "Star: Change number of corners" msgstr "Stern: Anzahl der Ecken ändern" -#: ../src/widgets/star-toolbar.cpp:168 +#: ../src/widgets/star-toolbar.cpp:167 msgid "Star: Change spoke ratio" msgstr "Stern: Verhältnis der Spitzen ändern" -#: ../src/widgets/star-toolbar.cpp:213 +#: ../src/widgets/star-toolbar.cpp:212 msgid "Make polygon" msgstr "Polygon erstellen" -#: ../src/widgets/star-toolbar.cpp:213 +#: ../src/widgets/star-toolbar.cpp:212 msgid "Make star" msgstr "Stern erstellen" -#: ../src/widgets/star-toolbar.cpp:252 +#: ../src/widgets/star-toolbar.cpp:251 msgid "Star: Change rounding" msgstr "Stern: Abrundung ändern" -#: ../src/widgets/star-toolbar.cpp:292 +#: ../src/widgets/star-toolbar.cpp:291 msgid "Star: Change randomization" msgstr "Stern: Zufälligkeit ändern" -#: ../src/widgets/star-toolbar.cpp:476 +#: ../src/widgets/star-toolbar.cpp:475 msgid "Regular polygon (with one handle) instead of a star" msgstr "Gewöhnliches Vieleck (Polygon mit einem Anfasser) statt eines Sterns" -#: ../src/widgets/star-toolbar.cpp:483 +#: ../src/widgets/star-toolbar.cpp:482 msgid "Star instead of a regular polygon (with one handle)" msgstr "Stern statt eines gewöhnlichen Vielecks (Polygon mit einem Anfasser)" -#: ../src/widgets/star-toolbar.cpp:504 +#: ../src/widgets/star-toolbar.cpp:503 msgid "triangle/tri-star" msgstr "Dreieck/Stern mit drei Spitzen" -#: ../src/widgets/star-toolbar.cpp:504 +#: ../src/widgets/star-toolbar.cpp:503 msgid "square/quad-star" msgstr "Quadrat/Stern mit vier Spitzen" -#: ../src/widgets/star-toolbar.cpp:504 +#: ../src/widgets/star-toolbar.cpp:503 msgid "pentagon/five-pointed star" msgstr "Fünfeck/Stern mit fünf Spitzen" -#: ../src/widgets/star-toolbar.cpp:504 +#: ../src/widgets/star-toolbar.cpp:503 msgid "hexagon/six-pointed star" msgstr "Sechseck/Stern mit sechs Spitzen" -#: ../src/widgets/star-toolbar.cpp:507 +#: ../src/widgets/star-toolbar.cpp:506 msgid "Corners" msgstr "Ecken" -#: ../src/widgets/star-toolbar.cpp:507 +#: ../src/widgets/star-toolbar.cpp:506 msgid "Corners:" msgstr "Ecken:" -#: ../src/widgets/star-toolbar.cpp:507 +#: ../src/widgets/star-toolbar.cpp:506 msgid "Number of corners of a polygon or star" msgstr "Zahl der Ecken eines Polygons oder Sterns" -#: ../src/widgets/star-toolbar.cpp:520 +#: ../src/widgets/star-toolbar.cpp:519 msgid "thin-ray star" msgstr "Dünnstrahliger Stern" -#: ../src/widgets/star-toolbar.cpp:520 +#: ../src/widgets/star-toolbar.cpp:519 msgid "pentagram" msgstr "Pentagram" -#: ../src/widgets/star-toolbar.cpp:520 +#: ../src/widgets/star-toolbar.cpp:519 msgid "hexagram" msgstr "hexagram" -#: ../src/widgets/star-toolbar.cpp:520 +#: ../src/widgets/star-toolbar.cpp:519 msgid "heptagram" msgstr "heptagram" -#: ../src/widgets/star-toolbar.cpp:520 +#: ../src/widgets/star-toolbar.cpp:519 msgid "octagram" msgstr "octagram" -#: ../src/widgets/star-toolbar.cpp:520 +#: ../src/widgets/star-toolbar.cpp:519 msgid "regular polygon" msgstr "Regelmäßiges Polygon erstellen" -#: ../src/widgets/star-toolbar.cpp:523 +#: ../src/widgets/star-toolbar.cpp:522 msgid "Spoke ratio" msgstr "Spitzenverhältnis:" -#: ../src/widgets/star-toolbar.cpp:523 +#: ../src/widgets/star-toolbar.cpp:522 msgid "Spoke ratio:" msgstr "Spitzenverhältnis:" #. TRANSLATORS: Tip radius of a star is the distance from the center to the farthest handle. #. Base radius is the same for the closest handle. -#: ../src/widgets/star-toolbar.cpp:526 +#: ../src/widgets/star-toolbar.cpp:525 msgid "Base radius to tip radius ratio" msgstr "Verhältnis vom Radius des Grundkörpers zum Radius der Spitzen" -#: ../src/widgets/star-toolbar.cpp:544 +#: ../src/widgets/star-toolbar.cpp:543 msgid "stretched" msgstr "gestreckt" -#: ../src/widgets/star-toolbar.cpp:544 +#: ../src/widgets/star-toolbar.cpp:543 msgid "twisted" msgstr "verdreht" -#: ../src/widgets/star-toolbar.cpp:544 +#: ../src/widgets/star-toolbar.cpp:543 msgid "slightly pinched" msgstr "leicht eingedrückt" -#: ../src/widgets/star-toolbar.cpp:544 +#: ../src/widgets/star-toolbar.cpp:543 msgid "NOT rounded" msgstr "NICHT abgerundet" -#: ../src/widgets/star-toolbar.cpp:544 +#: ../src/widgets/star-toolbar.cpp:543 msgid "slightly rounded" msgstr "schwach abgerundet" -#: ../src/widgets/star-toolbar.cpp:544 +#: ../src/widgets/star-toolbar.cpp:543 msgid "visibly rounded" msgstr "sichtbar abgerundet" -#: ../src/widgets/star-toolbar.cpp:544 +#: ../src/widgets/star-toolbar.cpp:543 msgid "well rounded" msgstr "gut abgerundet" -#: ../src/widgets/star-toolbar.cpp:544 +#: ../src/widgets/star-toolbar.cpp:543 msgid "amply rounded" msgstr "reichlich abgerundet" -#: ../src/widgets/star-toolbar.cpp:544 ../src/widgets/star-toolbar.cpp:559 +#: ../src/widgets/star-toolbar.cpp:543 ../src/widgets/star-toolbar.cpp:558 msgid "blown up" msgstr "aufgebläht" -#: ../src/widgets/star-toolbar.cpp:547 +#: ../src/widgets/star-toolbar.cpp:546 msgid "Rounded:" msgstr "Abrundung:" -#: ../src/widgets/star-toolbar.cpp:547 +#: ../src/widgets/star-toolbar.cpp:546 msgid "How much rounded are the corners (0 for sharp)" msgstr "Wie stark werden die Ecken abgerundet (0 für harte Kante)" -#: ../src/widgets/star-toolbar.cpp:559 +#: ../src/widgets/star-toolbar.cpp:558 msgid "NOT randomized" msgstr "NICHT durcheinander" -#: ../src/widgets/star-toolbar.cpp:559 +#: ../src/widgets/star-toolbar.cpp:558 msgid "slightly irregular" msgstr "leicht unregelmäßig" -#: ../src/widgets/star-toolbar.cpp:559 +#: ../src/widgets/star-toolbar.cpp:558 msgid "visibly randomized" msgstr "sichtbar unregelmäßig" -#: ../src/widgets/star-toolbar.cpp:559 +#: ../src/widgets/star-toolbar.cpp:558 msgid "strongly randomized" msgstr "stark unregelmäßig" -#: ../src/widgets/star-toolbar.cpp:562 +#: ../src/widgets/star-toolbar.cpp:561 msgid "Randomized" msgstr "unregelmäßig" -#: ../src/widgets/star-toolbar.cpp:562 +#: ../src/widgets/star-toolbar.cpp:561 msgid "Randomized:" msgstr "Zufallsänderung:" -#: ../src/widgets/star-toolbar.cpp:562 +#: ../src/widgets/star-toolbar.cpp:561 msgid "Scatter randomly the corners and angles" msgstr "Zufällige Variationen der Ecken und Winkel" @@ -26415,21 +26869,20 @@ msgstr "Quadratisches Ende" msgid "Dashes:" msgstr "Strichlinien:" -#: ../src/widgets/stroke-style.cpp:346 -msgid "_Start Markers:" -msgstr "_Startmarkierung:" +#. Drop down marker selectors +#. TRANSLATORS: Path markers are an SVG feature that allows you to attach arbitrary shapes +#. (arrowheads, bullets, faces, whatever) to the start, end, or middle nodes of a path. +#: ../src/widgets/stroke-style.cpp:345 +msgid "Markers:" +msgstr "Markierungen" -#: ../src/widgets/stroke-style.cpp:347 +#: ../src/widgets/stroke-style.cpp:351 msgid "Start Markers are drawn on the first node of a path or shape" msgstr "" "Startmakierungen werden am ersten Knoten eines Pfades oder einer Form " "gezeichnet." -#: ../src/widgets/stroke-style.cpp:365 -msgid "_Mid Markers:" -msgstr "_Mittelmarkierung:" - -#: ../src/widgets/stroke-style.cpp:366 +#: ../src/widgets/stroke-style.cpp:360 msgid "" "Mid Markers are drawn on every node of a path or shape except the first and " "last nodes" @@ -26437,638 +26890,634 @@ msgstr "" "Mittenmarkierungen werden auf jedem Knoten entlang eines Pfades - außer dem " "ersten und letzten - gezeichnet." -#: ../src/widgets/stroke-style.cpp:384 -msgid "_End Markers:" -msgstr "_Endmarkierung:" - -#: ../src/widgets/stroke-style.cpp:385 +#: ../src/widgets/stroke-style.cpp:369 msgid "End Markers are drawn on the last node of a path or shape" msgstr "" "Endmarkierungen werden auf dem ersten und letzten Knoten eines Pfades oder " "einer Form gezeichnet." -#: ../src/widgets/stroke-style.cpp:512 +#: ../src/widgets/stroke-style.cpp:487 msgid "Set markers" msgstr "Markierungen setzen" -#: ../src/widgets/stroke-style.cpp:1100 ../src/widgets/stroke-style.cpp:1185 +#: ../src/widgets/stroke-style.cpp:1075 ../src/widgets/stroke-style.cpp:1160 msgid "Set stroke style" msgstr "Stil der Kontur setzen" -#: ../src/widgets/stroke-style.cpp:1273 +#: ../src/widgets/stroke-style.cpp:1248 msgid "Set marker color" msgstr "Farbe der Markierung setzen" -#: ../src/widgets/swatch-selector.cpp:140 +#: ../src/widgets/swatch-selector.cpp:137 msgid "Change swatch color" msgstr "Farbmuster-Farbe ändern" -#: ../src/widgets/text-toolbar.cpp:180 +#: ../src/widgets/text-toolbar.cpp:178 msgid "Text: Change font family" msgstr "Text: Schriftfamilie ändern" -#: ../src/widgets/text-toolbar.cpp:244 +#: ../src/widgets/text-toolbar.cpp:242 msgid "Text: Change font size" msgstr "Text: Schriftgröße ändern" -#: ../src/widgets/text-toolbar.cpp:282 +#: ../src/widgets/text-toolbar.cpp:280 msgid "Text: Change font style" msgstr "Text: Schriftstil ändern" -#: ../src/widgets/text-toolbar.cpp:360 +#: ../src/widgets/text-toolbar.cpp:358 msgid "Text: Change superscript or subscript" msgstr "Text: Ändern von Hoch- und Tiefgestellt" -#: ../src/widgets/text-toolbar.cpp:505 +#: ../src/widgets/text-toolbar.cpp:503 msgid "Text: Change alignment" msgstr "Text: Ausrichtung ändern" -#: ../src/widgets/text-toolbar.cpp:548 +#: ../src/widgets/text-toolbar.cpp:546 msgid "Text: Change line-height" msgstr "Text: Linienhöhe ändern" -#: ../src/widgets/text-toolbar.cpp:597 +#: ../src/widgets/text-toolbar.cpp:595 msgid "Text: Change word-spacing" msgstr "Text: Wortabstand ändern" -#: ../src/widgets/text-toolbar.cpp:638 +#: ../src/widgets/text-toolbar.cpp:636 msgid "Text: Change letter-spacing" msgstr "Text: Buchstabenabstand ändern" -#: ../src/widgets/text-toolbar.cpp:678 +#: ../src/widgets/text-toolbar.cpp:676 msgid "Text: Change dx (kern)" msgstr "Text: Ändern dx (kern)" -#: ../src/widgets/text-toolbar.cpp:712 +#: ../src/widgets/text-toolbar.cpp:710 msgid "Text: Change dy" msgstr "Text: Ändern dy" -#: ../src/widgets/text-toolbar.cpp:747 +#: ../src/widgets/text-toolbar.cpp:745 msgid "Text: Change rotate" msgstr "Text: Ändern Drehung" -#: ../src/widgets/text-toolbar.cpp:795 +#: ../src/widgets/text-toolbar.cpp:793 msgid "Text: Change orientation" msgstr "Text: Richtung ändern" -#: ../src/widgets/text-toolbar.cpp:1237 +#: ../src/widgets/text-toolbar.cpp:1235 msgid "Font Family" msgstr "Schriftfamilie" -#: ../src/widgets/text-toolbar.cpp:1238 +#: ../src/widgets/text-toolbar.cpp:1236 msgid "Select Font Family (Alt-X to access)" msgstr "Schriftart-Familie auswählen (Alt + X zum Setzen)" #. Focus widget #. Enable entry completion -#: ../src/widgets/text-toolbar.cpp:1248 +#: ../src/widgets/text-toolbar.cpp:1246 msgid "Select all text with this font-family" msgstr "Wähle allen Text mit dieser Schriftart-Familie aus" -#: ../src/widgets/text-toolbar.cpp:1252 +#: ../src/widgets/text-toolbar.cpp:1250 msgid "Font not found on system" msgstr "Schrift wurde im System nicht gefunden" -#: ../src/widgets/text-toolbar.cpp:1311 +#: ../src/widgets/text-toolbar.cpp:1309 msgid "Font Style" msgstr "Schriftstil" -#: ../src/widgets/text-toolbar.cpp:1312 +#: ../src/widgets/text-toolbar.cpp:1310 msgid "Font style" msgstr "Schriftstil" #. Name -#: ../src/widgets/text-toolbar.cpp:1329 +#: ../src/widgets/text-toolbar.cpp:1327 msgid "Toggle Superscript" msgstr "Hochgestellt umschalten" #. Label -#: ../src/widgets/text-toolbar.cpp:1330 +#: ../src/widgets/text-toolbar.cpp:1328 msgid "Toggle superscript" msgstr "Hochgestellt umschalten" #. Name -#: ../src/widgets/text-toolbar.cpp:1342 +#: ../src/widgets/text-toolbar.cpp:1340 msgid "Toggle Subscript" msgstr "Tiefgestellt umschalten" #. Label -#: ../src/widgets/text-toolbar.cpp:1343 +#: ../src/widgets/text-toolbar.cpp:1341 msgid "Toggle subscript" msgstr "Tiefgestellt umschalten" -#: ../src/widgets/text-toolbar.cpp:1384 +#: ../src/widgets/text-toolbar.cpp:1382 msgid "Justify" msgstr "Blocksatz" #. Name -#: ../src/widgets/text-toolbar.cpp:1391 +#: ../src/widgets/text-toolbar.cpp:1389 msgid "Alignment" msgstr "Ausrichtung" #. Label -#: ../src/widgets/text-toolbar.cpp:1392 +#: ../src/widgets/text-toolbar.cpp:1390 msgid "Text alignment" msgstr "Textausrichtung" -#: ../src/widgets/text-toolbar.cpp:1419 +#: ../src/widgets/text-toolbar.cpp:1417 msgid "Horizontal" msgstr "Horizontal" -#: ../src/widgets/text-toolbar.cpp:1426 +#: ../src/widgets/text-toolbar.cpp:1424 msgid "Vertical" msgstr "Vertikal" #. Label -#: ../src/widgets/text-toolbar.cpp:1433 +#: ../src/widgets/text-toolbar.cpp:1431 msgid "Text orientation" msgstr "Textausrichtung" #. Drop down menu -#: ../src/widgets/text-toolbar.cpp:1456 +#: ../src/widgets/text-toolbar.cpp:1454 msgid "Smaller spacing" msgstr "Kleinerer Abstand" -#: ../src/widgets/text-toolbar.cpp:1456 ../src/widgets/text-toolbar.cpp:1487 -#: ../src/widgets/text-toolbar.cpp:1518 +#: ../src/widgets/text-toolbar.cpp:1454 ../src/widgets/text-toolbar.cpp:1485 +#: ../src/widgets/text-toolbar.cpp:1516 msgctxt "Text tool" msgid "Normal" msgstr "Normal" -#: ../src/widgets/text-toolbar.cpp:1456 +#: ../src/widgets/text-toolbar.cpp:1454 msgid "Larger spacing" msgstr "Größerer Abstand" #. name -#: ../src/widgets/text-toolbar.cpp:1461 +#: ../src/widgets/text-toolbar.cpp:1459 msgid "Line Height" msgstr "Linienhöhe" #. label -#: ../src/widgets/text-toolbar.cpp:1462 +#: ../src/widgets/text-toolbar.cpp:1460 msgid "Line:" msgstr "Linie:" #. short label -#: ../src/widgets/text-toolbar.cpp:1463 +#: ../src/widgets/text-toolbar.cpp:1461 msgid "Spacing between lines (times font size)" msgstr "Abstand zwischen Linien (Times Schriftgröße)" #. Drop down menu -#: ../src/widgets/text-toolbar.cpp:1487 ../src/widgets/text-toolbar.cpp:1518 +#: ../src/widgets/text-toolbar.cpp:1485 ../src/widgets/text-toolbar.cpp:1516 msgid "Negative spacing" msgstr "Negativer Abstand" -#: ../src/widgets/text-toolbar.cpp:1487 ../src/widgets/text-toolbar.cpp:1518 +#: ../src/widgets/text-toolbar.cpp:1485 ../src/widgets/text-toolbar.cpp:1516 msgid "Positive spacing" msgstr "Positiver Abstand" #. name -#: ../src/widgets/text-toolbar.cpp:1492 +#: ../src/widgets/text-toolbar.cpp:1490 msgid "Word spacing" msgstr "Wortabstand" #. label -#: ../src/widgets/text-toolbar.cpp:1493 +#: ../src/widgets/text-toolbar.cpp:1491 msgid "Word:" msgstr "Wort:" #. short label -#: ../src/widgets/text-toolbar.cpp:1494 +#: ../src/widgets/text-toolbar.cpp:1492 msgid "Spacing between words (px)" msgstr "Abstand zwischen Wörtern (px)" #. name -#: ../src/widgets/text-toolbar.cpp:1523 +#: ../src/widgets/text-toolbar.cpp:1521 msgid "Letter spacing" msgstr "Buchstabenabstand" #. label -#: ../src/widgets/text-toolbar.cpp:1524 +#: ../src/widgets/text-toolbar.cpp:1522 msgid "Letter:" msgstr "Buchstabe:" #. short label -#: ../src/widgets/text-toolbar.cpp:1525 +#: ../src/widgets/text-toolbar.cpp:1523 msgid "Spacing between letters (px)" msgstr "Abstand zwischen Buchstaben (px)" #. name -#: ../src/widgets/text-toolbar.cpp:1554 +#: ../src/widgets/text-toolbar.cpp:1552 msgid "Kerning" msgstr "Unterschneidung" #. label -#: ../src/widgets/text-toolbar.cpp:1555 +#: ../src/widgets/text-toolbar.cpp:1553 msgid "Kern:" msgstr "Kern:" #. short label -#: ../src/widgets/text-toolbar.cpp:1556 +#: ../src/widgets/text-toolbar.cpp:1554 msgid "Horizontal kerning (px)" msgstr "Horizontale Unterschneidung (px)" #. name -#: ../src/widgets/text-toolbar.cpp:1585 +#: ../src/widgets/text-toolbar.cpp:1583 msgid "Vertical Shift" msgstr "Vertikaler Versatz" #. label -#: ../src/widgets/text-toolbar.cpp:1586 +#: ../src/widgets/text-toolbar.cpp:1584 msgid "Vert:" msgstr "Vert:" #. short label -#: ../src/widgets/text-toolbar.cpp:1587 +#: ../src/widgets/text-toolbar.cpp:1585 msgid "Vertical shift (px)" msgstr "Vertikaler Versatz (px)" #. name -#: ../src/widgets/text-toolbar.cpp:1616 +#: ../src/widgets/text-toolbar.cpp:1614 msgid "Letter rotation" msgstr "Buchstabenrotation" #. label -#: ../src/widgets/text-toolbar.cpp:1617 +#: ../src/widgets/text-toolbar.cpp:1615 msgid "Rot:" msgstr "Rotation:" #. short label -#: ../src/widgets/text-toolbar.cpp:1618 +#: ../src/widgets/text-toolbar.cpp:1616 msgid "Character rotation (degrees)" msgstr "Zeichenrotation [Grad]" -#: ../src/widgets/toolbox.cpp:177 +#: ../src/widgets/toolbox.cpp:181 msgid "Color/opacity used for color tweaking" msgstr "Farbe / Opazität zur Farbjustage" -#: ../src/widgets/toolbox.cpp:185 +#: ../src/widgets/toolbox.cpp:189 msgid "Style of new stars" msgstr "Stil von neuen Sternen" -#: ../src/widgets/toolbox.cpp:187 +#: ../src/widgets/toolbox.cpp:191 msgid "Style of new rectangles" msgstr "Stil von neuen Rechtecken" -#: ../src/widgets/toolbox.cpp:189 +#: ../src/widgets/toolbox.cpp:193 msgid "Style of new 3D boxes" msgstr "Stil von neuen 3D-Boxen" -#: ../src/widgets/toolbox.cpp:191 +#: ../src/widgets/toolbox.cpp:195 msgid "Style of new ellipses" msgstr "Stil von neuen Ellipsen" -#: ../src/widgets/toolbox.cpp:193 +#: ../src/widgets/toolbox.cpp:197 msgid "Style of new spirals" msgstr "Stil von neuen Spiralen" -#: ../src/widgets/toolbox.cpp:195 +#: ../src/widgets/toolbox.cpp:199 msgid "Style of new paths created by Pencil" msgstr "Stil von neuen Pfaden (Malwerkzeug)" -#: ../src/widgets/toolbox.cpp:197 +#: ../src/widgets/toolbox.cpp:201 msgid "Style of new paths created by Pen" msgstr "Stil von neuen Pfaden (Zeichenwerkzeug)" -#: ../src/widgets/toolbox.cpp:199 +#: ../src/widgets/toolbox.cpp:203 msgid "Style of new calligraphic strokes" msgstr "Stil von neuen kalligrafischen Strichen" -#: ../src/widgets/toolbox.cpp:201 ../src/widgets/toolbox.cpp:203 +#: ../src/widgets/toolbox.cpp:205 ../src/widgets/toolbox.cpp:207 msgid "TBD" msgstr "\"Beschreibung fehlt noch!\"" -#: ../src/widgets/toolbox.cpp:215 +#: ../src/widgets/toolbox.cpp:219 msgid "Style of Paint Bucket fill objects" msgstr "Stil von neuen Farbeimer-Objekten" -#: ../src/widgets/toolbox.cpp:1678 +#: ../src/widgets/toolbox.cpp:1682 msgid "Bounding box" msgstr "Umrandungsbox" -#: ../src/widgets/toolbox.cpp:1678 +#: ../src/widgets/toolbox.cpp:1682 msgid "Snap bounding boxes" msgstr "An der Umrandung einrasten" -#: ../src/widgets/toolbox.cpp:1687 +#: ../src/widgets/toolbox.cpp:1691 msgid "Bounding box edges" msgstr "Kanten der Umrandung" -#: ../src/widgets/toolbox.cpp:1687 +#: ../src/widgets/toolbox.cpp:1691 msgid "Snap to edges of a bounding box" msgstr "An Kanten einer Umrandung einrasten" -#: ../src/widgets/toolbox.cpp:1696 +#: ../src/widgets/toolbox.cpp:1700 msgid "Bounding box corners" msgstr "Ecken der Umrandung" -#: ../src/widgets/toolbox.cpp:1696 +#: ../src/widgets/toolbox.cpp:1700 msgid "Snap bounding box corners" msgstr "An Ecken der Umrandung einrasten" -#: ../src/widgets/toolbox.cpp:1705 +#: ../src/widgets/toolbox.cpp:1709 msgid "BBox Edge Midpoints" msgstr "Mittenpunkte der Umrandungskanten" -#: ../src/widgets/toolbox.cpp:1705 +#: ../src/widgets/toolbox.cpp:1709 msgid "Snap midpoints of bounding box edges" msgstr "An Mittelpunkten von Umrandungslinien ein-/ausrasten" -#: ../src/widgets/toolbox.cpp:1715 +#: ../src/widgets/toolbox.cpp:1719 msgid "BBox Centers" msgstr "Mittelpunkt Umrandung" -#: ../src/widgets/toolbox.cpp:1715 +#: ../src/widgets/toolbox.cpp:1719 msgid "Snapping centers of bounding boxes" msgstr "An Mittelpunkten von Umrandungen ein-/ausrasten" -#: ../src/widgets/toolbox.cpp:1724 +#: ../src/widgets/toolbox.cpp:1728 msgid "Snap nodes, paths, and handles" msgstr "Knoten, Pfade und Anfasser einrasten" -#: ../src/widgets/toolbox.cpp:1732 +#: ../src/widgets/toolbox.cpp:1736 msgid "Snap to paths" msgstr "An Objektpfaden einrasten" -#: ../src/widgets/toolbox.cpp:1741 +#: ../src/widgets/toolbox.cpp:1745 msgid "Path intersections" msgstr "Pfadüberschneidung" -#: ../src/widgets/toolbox.cpp:1741 +#: ../src/widgets/toolbox.cpp:1745 msgid "Snap to path intersections" msgstr "An Pfadüberschneidungen einrasten" -#: ../src/widgets/toolbox.cpp:1750 +#: ../src/widgets/toolbox.cpp:1754 msgid "To nodes" msgstr "An Knoten" -#: ../src/widgets/toolbox.cpp:1750 +#: ../src/widgets/toolbox.cpp:1754 msgid "Snap cusp nodes, incl. rectangle corners" msgstr "An spitzen Knoten einrasten (inkl. Ecken von Rechtecken)" -#: ../src/widgets/toolbox.cpp:1759 +#: ../src/widgets/toolbox.cpp:1763 msgid "Smooth nodes" msgstr "Glatte Knotten" -#: ../src/widgets/toolbox.cpp:1759 +#: ../src/widgets/toolbox.cpp:1763 msgid "Snap smooth nodes, incl. quadrant points of ellipses" msgstr "Einrasten an glatten Knoten, inkl. Quadrant-Punkten von Ellipsen" -#: ../src/widgets/toolbox.cpp:1768 +#: ../src/widgets/toolbox.cpp:1772 msgid "Line Midpoints" msgstr "Linien-Mittelpunkte" -#: ../src/widgets/toolbox.cpp:1768 +#: ../src/widgets/toolbox.cpp:1772 msgid "Snap midpoints of line segments" msgstr "Einrasten an Mittelpunkten von Liniensegmenten" -#: ../src/widgets/toolbox.cpp:1777 +#: ../src/widgets/toolbox.cpp:1781 msgid "Others" msgstr "Andere" -#: ../src/widgets/toolbox.cpp:1777 +#: ../src/widgets/toolbox.cpp:1781 msgid "Snap other points (centers, guide origins, gradient handles, etc.)" msgstr "" "Einrasten an anderen Punkten (Zentren, Führungslinien-Ursprung, " "Verlaufsanfasser, etc.)" -#: ../src/widgets/toolbox.cpp:1785 +#: ../src/widgets/toolbox.cpp:1789 msgid "Object Centers" msgstr "Objektzentrum" -#: ../src/widgets/toolbox.cpp:1785 +#: ../src/widgets/toolbox.cpp:1789 msgid "Snap centers of objects" msgstr "An Objektmittelpunkten einrasten" -#: ../src/widgets/toolbox.cpp:1794 +#: ../src/widgets/toolbox.cpp:1798 msgid "Rotation Centers" msgstr "Rotationszentren" -#: ../src/widgets/toolbox.cpp:1794 +#: ../src/widgets/toolbox.cpp:1798 msgid "Snap an item's rotation center" msgstr "An Rotationszentren von Objekten einrasten" -#: ../src/widgets/toolbox.cpp:1803 +#: ../src/widgets/toolbox.cpp:1807 msgid "Text baseline" msgstr "Text-Grundlinie" -#: ../src/widgets/toolbox.cpp:1803 +#: ../src/widgets/toolbox.cpp:1807 msgid "Snap text anchors and baselines" msgstr "An TExtankern und Grundlinien einrasten" -#: ../src/widgets/toolbox.cpp:1813 +#: ../src/widgets/toolbox.cpp:1817 msgid "Page border" msgstr "Seitenrand" -#: ../src/widgets/toolbox.cpp:1813 +#: ../src/widgets/toolbox.cpp:1817 msgid "Snap to the page border" msgstr "Am Seitenrand einrasten" -#: ../src/widgets/toolbox.cpp:1822 +#: ../src/widgets/toolbox.cpp:1826 msgid "Snap to grids" msgstr "Am Gitter einrasten" -#: ../src/widgets/toolbox.cpp:1831 +#: ../src/widgets/toolbox.cpp:1835 msgid "Snap guides" msgstr "An Führungslinien einrasten" #. Width -#: ../src/widgets/tweak-toolbar.cpp:144 +#: ../src/widgets/tweak-toolbar.cpp:143 msgid "(pinch tweak)" msgstr "(Zupfjustage)" -#: ../src/widgets/tweak-toolbar.cpp:144 +#: ../src/widgets/tweak-toolbar.cpp:143 msgid "(broad tweak)" msgstr "(breite Justage)" -#: ../src/widgets/tweak-toolbar.cpp:147 +#: ../src/widgets/tweak-toolbar.cpp:146 msgid "The width of the tweak area (relative to the visible canvas area)" msgstr "Breite des Justagebereichs (relativ zum sichtbaren Dokumentausschnitt)" #. Force -#: ../src/widgets/tweak-toolbar.cpp:161 +#: ../src/widgets/tweak-toolbar.cpp:160 msgid "(minimum force)" msgstr "(minimale Stärke)" -#: ../src/widgets/tweak-toolbar.cpp:161 +#: ../src/widgets/tweak-toolbar.cpp:160 msgid "(maximum force)" msgstr "(maximale Stärke)" -#: ../src/widgets/tweak-toolbar.cpp:164 +#: ../src/widgets/tweak-toolbar.cpp:163 msgid "Force" msgstr "Kraft:" -#: ../src/widgets/tweak-toolbar.cpp:164 +#: ../src/widgets/tweak-toolbar.cpp:163 msgid "Force:" msgstr "Kraft:" -#: ../src/widgets/tweak-toolbar.cpp:164 +#: ../src/widgets/tweak-toolbar.cpp:163 msgid "The force of the tweak action" msgstr "Die Kraft der Modellierungsaktion" -#: ../src/widgets/tweak-toolbar.cpp:182 +#: ../src/widgets/tweak-toolbar.cpp:181 msgid "Move mode" msgstr "Verschiebungs-Modus" -#: ../src/widgets/tweak-toolbar.cpp:183 +#: ../src/widgets/tweak-toolbar.cpp:182 msgid "Move objects in any direction" msgstr "Verschiebe Objekte in irgendeine Richtung" -#: ../src/widgets/tweak-toolbar.cpp:189 +#: ../src/widgets/tweak-toolbar.cpp:188 msgid "Move in/out mode" msgstr "Her-/Wegbewegen" -#: ../src/widgets/tweak-toolbar.cpp:190 +#: ../src/widgets/tweak-toolbar.cpp:189 msgid "Move objects towards cursor; with Shift from cursor" msgstr "Verschiebt Objekte zum Cursor; mit Shift vom Cursor weg" -#: ../src/widgets/tweak-toolbar.cpp:196 +#: ../src/widgets/tweak-toolbar.cpp:195 msgid "Move jitter mode" msgstr "Zittern hinzufügen" -#: ../src/widgets/tweak-toolbar.cpp:197 +#: ../src/widgets/tweak-toolbar.cpp:196 msgid "Move objects in random directions" msgstr "Objekte in zufällige Richtungen verschieben" -#: ../src/widgets/tweak-toolbar.cpp:203 +#: ../src/widgets/tweak-toolbar.cpp:202 msgid "Scale mode" msgstr "Skalierungsmodus" -#: ../src/widgets/tweak-toolbar.cpp:204 +#: ../src/widgets/tweak-toolbar.cpp:203 msgid "Shrink objects, with Shift enlarge" msgstr "Schrumpft Objekte, mit Shift Erweitern" -#: ../src/widgets/tweak-toolbar.cpp:210 +#: ../src/widgets/tweak-toolbar.cpp:209 msgid "Rotate mode" msgstr "Rotationsmodus" -#: ../src/widgets/tweak-toolbar.cpp:211 +#: ../src/widgets/tweak-toolbar.cpp:210 msgid "Rotate objects, with Shift counterclockwise" msgstr "Objekte rotieren, mit Shift gegen den Uhrzeigersinn" -#: ../src/widgets/tweak-toolbar.cpp:217 +#: ../src/widgets/tweak-toolbar.cpp:216 msgid "Duplicate/delete mode" msgstr "Duplizieren/Löschen-Modus" -#: ../src/widgets/tweak-toolbar.cpp:218 +#: ../src/widgets/tweak-toolbar.cpp:217 msgid "Duplicate objects, with Shift delete" msgstr "Dupliziert Objekte; mit Shift Löschen" -#: ../src/widgets/tweak-toolbar.cpp:224 +#: ../src/widgets/tweak-toolbar.cpp:223 msgid "Push mode" msgstr "Drückmodus" -#: ../src/widgets/tweak-toolbar.cpp:225 +#: ../src/widgets/tweak-toolbar.cpp:224 msgid "Push parts of paths in any direction" msgstr "Teile des Pfades in eine beliebige Richtung schieben" -#: ../src/widgets/tweak-toolbar.cpp:231 +#: ../src/widgets/tweak-toolbar.cpp:230 msgid "Shrink/grow mode" msgstr "Schrumpf-/Wachstums-Modus" -#: ../src/widgets/tweak-toolbar.cpp:232 +#: ../src/widgets/tweak-toolbar.cpp:231 msgid "Shrink (inset) parts of paths; with Shift grow (outset)" msgstr "Teile von Pfaden Schrumpfen (Eindrücken); mit Umschalt Vergrößern" -#: ../src/widgets/tweak-toolbar.cpp:238 +#: ../src/widgets/tweak-toolbar.cpp:237 msgid "Attract/repel mode" msgstr "Anziehen-/Abstoßenmodus" -#: ../src/widgets/tweak-toolbar.cpp:239 +#: ../src/widgets/tweak-toolbar.cpp:238 msgid "Attract parts of paths towards cursor; with Shift from cursor" msgstr "" "Teile von Pfaden werden vom Zeiger angezogen oder mit Umschalt abgestoßen" -#: ../src/widgets/tweak-toolbar.cpp:245 +#: ../src/widgets/tweak-toolbar.cpp:244 msgid "Roughen mode" msgstr "Aufraumodus" -#: ../src/widgets/tweak-toolbar.cpp:246 +#: ../src/widgets/tweak-toolbar.cpp:245 msgid "Roughen parts of paths" msgstr "Teile von Pfaden anrauen" -#: ../src/widgets/tweak-toolbar.cpp:252 +#: ../src/widgets/tweak-toolbar.cpp:251 msgid "Color paint mode" msgstr "Farbmalmodus" -#: ../src/widgets/tweak-toolbar.cpp:253 +#: ../src/widgets/tweak-toolbar.cpp:252 msgid "Paint the tool's color upon selected objects" msgstr "Malt mit der Farbe des Werkzeugs auf ausgewählte Objekte" -#: ../src/widgets/tweak-toolbar.cpp:259 +#: ../src/widgets/tweak-toolbar.cpp:258 msgid "Color jitter mode" msgstr "Farbrauschen beeinflußen" -#: ../src/widgets/tweak-toolbar.cpp:260 +#: ../src/widgets/tweak-toolbar.cpp:259 msgid "Jitter the colors of selected objects" msgstr "Farben der gewählten Objekte verrauschen" -#: ../src/widgets/tweak-toolbar.cpp:266 +#: ../src/widgets/tweak-toolbar.cpp:265 msgid "Blur mode" msgstr "Unschärfemodus" -#: ../src/widgets/tweak-toolbar.cpp:267 +#: ../src/widgets/tweak-toolbar.cpp:266 msgid "Blur selected objects more; with Shift, blur less" msgstr "Ausgewählte Objekte stärker verwischen (mit Umschalt weniger)" -#: ../src/widgets/tweak-toolbar.cpp:294 +#: ../src/widgets/tweak-toolbar.cpp:293 msgid "Channels:" msgstr "Kanäle:" -#: ../src/widgets/tweak-toolbar.cpp:306 +#: ../src/widgets/tweak-toolbar.cpp:305 msgid "In color mode, act on objects' hue" msgstr "Im Farbmodus auf den Farbton eines Objekts wirken" #. TRANSLATORS: "H" here stands for hue -#: ../src/widgets/tweak-toolbar.cpp:310 +#: ../src/widgets/tweak-toolbar.cpp:309 msgid "H" msgstr "H" -#: ../src/widgets/tweak-toolbar.cpp:322 +#: ../src/widgets/tweak-toolbar.cpp:321 msgid "In color mode, act on objects' saturation" msgstr "Im Farbmodus auf die Farbsättigung eines Objekts wirken" #. TRANSLATORS: "S" here stands for Saturation -#: ../src/widgets/tweak-toolbar.cpp:326 +#: ../src/widgets/tweak-toolbar.cpp:325 msgid "S" msgstr "S" -#: ../src/widgets/tweak-toolbar.cpp:338 +#: ../src/widgets/tweak-toolbar.cpp:337 msgid "In color mode, act on objects' lightness" msgstr "Im Farbmodus auf die Helligkeit eines Objekts wirken" #. TRANSLATORS: "L" here stands for Lightness -#: ../src/widgets/tweak-toolbar.cpp:342 +#: ../src/widgets/tweak-toolbar.cpp:341 msgid "L" msgstr "L" -#: ../src/widgets/tweak-toolbar.cpp:354 +#: ../src/widgets/tweak-toolbar.cpp:353 msgid "In color mode, act on objects' opacity" msgstr "Im Farbmodus auf die Deckkraft eines Objekts wirken" #. TRANSLATORS: "O" here stands for Opacity -#: ../src/widgets/tweak-toolbar.cpp:358 +#: ../src/widgets/tweak-toolbar.cpp:357 msgid "O" msgstr "O" #. Fidelity -#: ../src/widgets/tweak-toolbar.cpp:369 +#: ../src/widgets/tweak-toolbar.cpp:368 msgid "(rough, simplified)" msgstr "(rau, einfach)" -#: ../src/widgets/tweak-toolbar.cpp:369 +#: ../src/widgets/tweak-toolbar.cpp:368 msgid "(fine, but many nodes)" msgstr "(fein, aber viele Knoten)" -#: ../src/widgets/tweak-toolbar.cpp:372 +#: ../src/widgets/tweak-toolbar.cpp:371 msgid "Fidelity" msgstr "Treue" -#: ../src/widgets/tweak-toolbar.cpp:372 +#: ../src/widgets/tweak-toolbar.cpp:371 msgid "Fidelity:" msgstr "Genauigkeit:" -#: ../src/widgets/tweak-toolbar.cpp:373 +#: ../src/widgets/tweak-toolbar.cpp:372 msgid "" "Low fidelity simplifies paths; high fidelity preserves path features but may " "generate a lot of new nodes" @@ -27076,7 +27525,7 @@ msgstr "" "Geringere Originaltreue vereinfacht den Pfad. Ein hoher Wert erhält die " "Pfadstruktur, erzeugt aber viele neuen Knoten" -#: ../src/widgets/tweak-toolbar.cpp:392 +#: ../src/widgets/tweak-toolbar.cpp:391 msgid "Use the pressure of the input device to alter the force of tweak action" msgstr "" "Druckempfindlichkeit des Eingabegeräts benutzen, um die Kraft der " @@ -27142,6 +27591,17 @@ msgstr "" "Module werden von der Erweiterung benötigt. Bitte installieren Sie diese und " "versuchen es erneut." +#: ../share/extensions/dxf_outlines.py:300 +msgid "" +"Error: Field 'Layer match name' must be filled when using 'By name match' " +"option" +msgstr "" + +#: ../share/extensions/dxf_outlines.py:341 +#, fuzzy, python-format +msgid "Warning: Layer '%s' not found!" +msgstr "Ebene nicht gefunden.\n" + #: ../share/extensions/embedimage.py:84 msgid "" "No xlink:href or sodipodi:absref attributes found, or they do not point to " @@ -27181,6 +27641,11 @@ msgstr "Image extrahiert zu: %s" msgid "Unable to find image data." msgstr "Problem beim Auffinden der Bilderdaten" +#: ../share/extensions/extrude.py:43 +#, fuzzy +msgid "Need at least 2 paths selected" +msgstr "Pfad auswählen, wenn nichts gewählt wurde" + #: ../share/extensions/funcplot.py:48 msgid "x-interval cannot be zero. Please modify 'Start X' or 'End X'" msgstr "" @@ -27456,6 +27921,20 @@ msgid "" "added." msgstr "Schnittwerkzeug noch nicht definiert" +#: ../share/extensions/generate_voronoi.py:35 +msgid "" +"Failed to import the subprocess module. Please report this as a bug at: " +"https://bugs.launchpad.net/inkscape." +msgstr "" + +#: ../share/extensions/generate_voronoi.py:36 +msgid "Python version is: " +msgstr "Python Version ist:" + +#: ../share/extensions/generate_voronoi.py:94 +msgid "Please select an object" +msgstr "Bitte wählen Sie ein Objekt." + #: ../share/extensions/gimp_xcf.py:39 msgid "Gimp must be installed and set in your path variable." msgstr "Gimp muss installiert und in Ihren Pfadvariablen gesetzt sein." @@ -27831,6 +28310,16 @@ msgstr "" msgid "Internal Error. No view type selected\n" msgstr "Interner Fehler. Kein Ansichtstyp gewählt\n" +#: ../share/extensions/print_win32_vector.py:41 +msgid "sorry, this will run only on Windows, exiting..." +msgstr "" +"Entschuldigung, aber das funktioniert nur unter Windows. Wird abgebrochen..." + +# CairoRenderContext ist Eigenname? +#: ../share/extensions/print_win32_vector.py:179 +msgid "Failed to open default printer" +msgstr "Fehler beim Öffnen des Standard-Druckers" + #: ../share/extensions/render_barcode_datamatrix.py:202 msgid "Unrecognised DataMatrix size" msgstr "Nicht erkannte Datenmatrix-Größe" @@ -27845,6 +28334,11 @@ msgstr "Ungültiger Bit-Wert. Das ist ein Fehler!" msgid "Please enter an input string" msgstr "Bitte geben Sie einen Eingabe-Zeichenfolge ein" +#. abort if converting blank text +#: ../share/extensions/render_barcode_qrcode.py:1053 +msgid "Please enter an input text" +msgstr "Bitte geben Sie eine Eingabe-Zeichenfolge ein" + #: ../share/extensions/replace_font.py:133 msgid "" "Couldn't find anything using that font, please ensure the spelling and " @@ -27905,6 +28399,12 @@ msgstr "" msgid "Could not locate file: %s" msgstr "Konnte Datei nicht finden: %s" +#: ../share/extensions/svgcalendar.py:266 +#: ../share/extensions/svgcalendar.py:288 +#, fuzzy +msgid "You must select a correct system encoding." +msgstr "Sie müssen zwei Elemente auswählen." + #: ../share/extensions/uniconv-ext.py:56 #: ../share/extensions/uniconv_output.py:122 msgid "You need to install the UniConvertor software.\n" @@ -28167,7 +28667,8 @@ msgid "HSL Adjust" msgstr "HSL anpassen" #: ../share/extensions/color_HSL_adjust.inx.h:3 -msgid "Hue (°):" +#, fuzzy +msgid "Hue (°)" msgstr "Farbton (°):" #: ../share/extensions/color_HSL_adjust.inx.h:4 @@ -28175,8 +28676,8 @@ msgid "Random hue" msgstr "Zufallsfarbton" #: ../share/extensions/color_HSL_adjust.inx.h:6 -#, no-c-format -msgid "Saturation (%):" +#, fuzzy, no-c-format +msgid "Saturation (%)" msgstr "Sättigung (%):" #: ../share/extensions/color_HSL_adjust.inx.h:7 @@ -28184,8 +28685,8 @@ msgid "Random saturation" msgstr "Zufallssättigung" #: ../share/extensions/color_HSL_adjust.inx.h:9 -#, no-c-format -msgid "Lightness (%):" +#, fuzzy, no-c-format +msgid "Lightness (%)" msgstr "Helligkeit (%):" #: ../share/extensions/color_HSL_adjust.inx.h:10 @@ -28671,26 +29172,47 @@ msgid "Character Encoding" msgstr "Zeichen-Kodierung" #: ../share/extensions/dxf_outlines.inx.h:7 -msgid "keep only visible layers" -msgstr "Nur sichtbare Ebenen behalten" +#, fuzzy +msgid "Layer export selection" +msgstr "Auswahl löschen" + +#: ../share/extensions/dxf_outlines.inx.h:8 +#, fuzzy +msgid "Layer match name" +msgstr "Ebenenname:" -#: ../share/extensions/dxf_outlines.inx.h:16 +#: ../share/extensions/dxf_outlines.inx.h:17 msgid "Latin 1" msgstr "Latein 1" -#: ../share/extensions/dxf_outlines.inx.h:17 +#: ../share/extensions/dxf_outlines.inx.h:18 msgid "CP 1250" msgstr "CP 1250" -#: ../share/extensions/dxf_outlines.inx.h:18 +#: ../share/extensions/dxf_outlines.inx.h:19 msgid "CP 1252" msgstr "CP 1252" -#: ../share/extensions/dxf_outlines.inx.h:19 +#: ../share/extensions/dxf_outlines.inx.h:20 msgid "UTF 8" msgstr "UTF 8" #: ../share/extensions/dxf_outlines.inx.h:21 +#, fuzzy +msgid "All (default)" +msgstr "(Vorgabe)" + +#: ../share/extensions/dxf_outlines.inx.h:22 +#, fuzzy +msgid "Visible only" +msgstr "Sichtbare Farben" + +#: ../share/extensions/dxf_outlines.inx.h:23 +msgid "By name match" +msgstr "" + +#: ../share/extensions/dxf_outlines.inx.h:25 +#, fuzzy msgid "" "- AutoCAD Release 14 DXF format.\n" "- The base unit parameter specifies in what unit the coordinates are output " @@ -28703,7 +29225,8 @@ msgid "" "Master and AutoDesk viewers, not Inkscape.\n" "- LWPOLYLINE output is a multiply-connected polyline, disable it to use a " "legacy version of the LINE output.\n" -"- You can choose to export all layers or only visible ones" +"- You can choose to export all layers, only visible ones or by name match " +"(case insensitive and use comma ',' as separator)" msgstr "" "- AutoCAD R14-Format.\n" "- Die Basiseinheit Parameter gibt an, in welcher Einheit die Koordinaten " @@ -28717,7 +29240,7 @@ msgstr "" "- Es werden nur LWPOLYLINE- und SPLINE-Elemente unterstützt.\n" "-Sie können alle oder nur sichtbare Ebenen exportieren" -#: ../share/extensions/dxf_outlines.inx.h:30 +#: ../share/extensions/dxf_outlines.inx.h:34 msgid "Desktop Cutting Plotter (AutoCAD DXF R14) (*.dxf)" msgstr "Desktop Schnitt-Plotter (AutoCAD DXF R14) (*.dxf)" @@ -28776,9 +29299,15 @@ msgid "Embed Images" msgstr "Alle Bilder einbetten" #: ../share/extensions/embedimage.inx.h:2 +#: ../share/extensions/embedselectedimages.inx.h:2 msgid "Embed only selected images" msgstr "Nur ausgewählte Bilder einbetten" +#: ../share/extensions/embedselectedimages.inx.h:1 +#, fuzzy +msgid "Embed Selected Images" +msgstr "Nur ausgewählte Bilder einbetten" + #: ../share/extensions/eps_input.inx.h:1 msgid "EPS Input" msgstr "EPS einlesen" @@ -29014,31 +29543,6 @@ msgstr "Achsen zeichnen" msgid "Add x-axis endpoints" msgstr "Fügt Endpunkt auf X-Achse hinzu" -#: ../share/extensions/gears.inx.h:1 -msgid "Gear" -msgstr "Zahnrad" - -#: ../share/extensions/gears.inx.h:2 -msgid "Number of teeth:" -msgstr "Anzahl der Zähne:" - -# !!! -#: ../share/extensions/gears.inx.h:3 -msgid "Circular pitch (tooth size):" -msgstr "Kreisteilung (Zahngröße):" - -#: ../share/extensions/gears.inx.h:4 -msgid "Pressure angle (degrees):" -msgstr "Druckwinkel (Grad):" - -#: ../share/extensions/gears.inx.h:5 -msgid "Diameter of center hole (0 for none):" -msgstr "Durchmesser des Zenterlochs (0 für kein):" - -#: ../share/extensions/gears.inx.h:10 -msgid "Unit of measurement for both circular pitch and center diameter." -msgstr "Einheit der Messung für Kreisteilung und Mittendurchmesser." - #: ../share/extensions/gcodetools_about.inx.h:1 msgid "About" msgstr "Über" @@ -30139,18 +30643,22 @@ msgid "Guillotine" msgstr "Guillotine" #: ../share/extensions/guillotine.inx.h:2 -msgid "Directory to save images to" +#, fuzzy +msgid "Directory to save images to:" msgstr "Pfad zum Speicherort des Bildes:" #: ../share/extensions/guillotine.inx.h:3 -msgid "Image name (without extension)" +#, fuzzy +msgid "Image name (without extension):" msgstr "Bildname (ohne Erweiterung)" #: ../share/extensions/guillotine.inx.h:4 -msgid "Ignore these settings and use export hints?" +#, fuzzy +msgid "Ignore these settings and use export hints" msgstr "Einstellungen ignorieren und Export-Hinweise nutzen?" #: ../share/extensions/guillotine.inx.h:5 +#: ../share/extensions/print_win32_vector.inx.h:2 msgid "Export" msgstr "Exportieren" @@ -30171,7 +30679,8 @@ msgstr "" "konvertiert wurden. Der Plot wird automatisch auf den Nullpunkt ausgerichtet." #: ../share/extensions/hpgl_output.inx.h:3 -msgid "Resolution (dpi)" +#, fuzzy +msgid "Resolution (dpi):" msgstr "Auflösung (Punkte pro Zoll)" #: ../share/extensions/hpgl_output.inx.h:4 @@ -30185,7 +30694,8 @@ msgstr "" "durch Versuch und Fehler (Standard: '1016')" #: ../share/extensions/hpgl_output.inx.h:5 -msgid "Pen number" +#, fuzzy +msgid "Pen number:" msgstr "Stiftnummer" #: ../share/extensions/hpgl_output.inx.h:6 @@ -30231,7 +30741,8 @@ msgstr "" "'Aus')" #: ../share/extensions/hpgl_output.inx.h:13 -msgid "Curve flatness" +#, fuzzy +msgid "Curve flatness:" msgstr "Kurven-Ebenheit" #: ../share/extensions/hpgl_output.inx.h:14 @@ -30255,7 +30766,8 @@ msgstr "" "'Überschnitt'-Parameter nicht verwendet (Standard: 'Ein')" #: ../share/extensions/hpgl_output.inx.h:17 -msgid "Overcut (mm)" +#, fuzzy +msgid "Overcut (mm):" msgstr "Überschnitt (mm)" #: ../share/extensions/hpgl_output.inx.h:18 @@ -30279,7 +30791,8 @@ msgstr "" "'Werkzeugversatz' und 'Return-Faktor' -Parameter unbenutzt (Standard: 'Ein')" #: ../share/extensions/hpgl_output.inx.h:21 -msgid "Tool offset (mm)" +#, fuzzy +msgid "Tool offset (mm):" msgstr "Werkzeugversatz (mm)" #: ../share/extensions/hpgl_output.inx.h:22 @@ -30288,7 +30801,8 @@ msgstr "" "Der Versatz zwischen Werkzeugspitze und -achse in mm (Standard: '0.25')" #: ../share/extensions/hpgl_output.inx.h:23 -msgid "Return Factor" +#, fuzzy +msgid "Return Factor:" msgstr "Return-Faktor" #: ../share/extensions/hpgl_output.inx.h:24 @@ -30303,7 +30817,8 @@ msgstr "" "nur durch Experimentieren bestimmen (Standard: '2,50')" #: ../share/extensions/hpgl_output.inx.h:25 -msgid "X offset (mm)" +#, fuzzy +msgid "X offset (mm):" msgstr "X Versatz (mm)" #: ../share/extensions/hpgl_output.inx.h:26 @@ -30315,7 +30830,8 @@ msgstr "" "(Standard: '0.00')" #: ../share/extensions/hpgl_output.inx.h:27 -msgid "Y offset (mm)" +#, fuzzy +msgid "Y offset (mm):" msgstr "Y Versatz (mm)" #: ../share/extensions/hpgl_output.inx.h:28 @@ -30339,7 +30855,8 @@ msgstr "" "Plotter (Standard: 'Aus')" #: ../share/extensions/hpgl_output.inx.h:32 -msgid "Serial Port" +#, fuzzy +msgid "Serial Port:" msgstr "Serieller Port" #: ../share/extensions/hpgl_output.inx.h:33 @@ -30351,7 +30868,8 @@ msgstr "" "'COM1', unter Linux so etwas wie: '/dev/ttyUSB0' (Standard: 'COM1')" #: ../share/extensions/hpgl_output.inx.h:34 -msgid "Baud Rate" +#, fuzzy +msgid "Baud Rate:" msgstr "Baudrate" #: ../share/extensions/hpgl_output.inx.h:35 @@ -30366,6 +30884,24 @@ msgstr "HP Graphics Language Datei (*.hpgl)" msgid "Export to an HP Graphics Language file" msgstr "Export in eine HP Graphic Language Datei" +#: ../share/extensions/ink2canvas.inx.h:1 +#, fuzzy +msgid "Convert to html5 canvas" +msgstr "Umwandeln in Blindenschrift" + +#: ../share/extensions/ink2canvas.inx.h:2 +msgid "HTML 5 canvas (*.html)" +msgstr "HTML 5 Arbeitsfläche (*.html)" + +#: ../share/extensions/ink2canvas.inx.h:3 +msgid "HTML 5 canvas code" +msgstr "HTML 5 Arbeitsflächen-code" + +#: ../share/extensions/inkscape_follow_link.inx.h:1 +#, fuzzy +msgid "Follow Link" +msgstr "Verknüpfung _folgen" + #: ../share/extensions/inkscape_help_askaquestion.inx.h:1 msgid "Ask Us a Question" msgstr "Fragen Sie uns" @@ -31095,10 +31631,6 @@ msgstr "Seitenrand" msgid "Layout dimensions" msgstr "Layout-Abmessungen" -#: ../share/extensions/layout_nup.inx.h:12 -msgid "Rows:" -msgstr "Reihen:" - #: ../share/extensions/layout_nup.inx.h:13 msgid "Cols:" msgstr "Spalten:" @@ -31351,6 +31883,10 @@ msgstr "Schriftgröße (px)" msgid "Offset (px):" msgstr "Versatz (px):" +#: ../share/extensions/measure.inx.h:8 +msgid "Precision:" +msgstr "Genauigkeit" + #: ../share/extensions/measure.inx.h:9 msgid "Scale Factor (Drawing:Real Length) = 1:" msgstr "Maßstab (Zeichnung:Wirkliche Länge) = 1:" @@ -31359,10 +31895,6 @@ msgstr "Maßstab (Zeichnung:Wirkliche Länge) = 1:" msgid "Length Unit:" msgstr "Längeneinheit: " -#: ../share/extensions/measure.inx.h:11 -msgid "Length" -msgstr "Länge" - #: ../share/extensions/measure.inx.h:12 msgctxt "measure extension" msgid "Area" @@ -31456,23 +31988,28 @@ msgid "End t-value:" msgstr "Ende t-Wert" #: ../share/extensions/param_curves.inx.h:5 -msgid "Multiply t-range by 2*pi:" +#, fuzzy +msgid "Multiply t-range by 2*pi" msgstr "T-Bereich mit 2*pi multiplizieren" #: ../share/extensions/param_curves.inx.h:6 -msgid "x-value of rectangle's left:" +#, fuzzy +msgid "X-value of rectangle's left:" msgstr "x-Wert der linken Seite des Rechtecks" #: ../share/extensions/param_curves.inx.h:7 -msgid "x-value of rectangle's right:" +#, fuzzy +msgid "X-value of rectangle's right:" msgstr "x-Wert der rechten Seite des Rechtecks" #: ../share/extensions/param_curves.inx.h:8 -msgid "y-value of rectangle's bottom:" +#, fuzzy +msgid "Y-value of rectangle's bottom:" msgstr "y-Wert der unteren Kante des Rechtecks" #: ../share/extensions/param_curves.inx.h:9 -msgid "y-value of rectangle's top:" +#, fuzzy +msgid "Y-value of rectangle's top:" msgstr "y-Wert der oberen Kante des Rechtecks" #: ../share/extensions/param_curves.inx.h:10 @@ -31491,12 +32028,14 @@ msgstr "" "Erste Ableitungen werden immer nummerisch bestimmt." #: ../share/extensions/param_curves.inx.h:26 -msgid "x-Function:" +#, fuzzy +msgid "X-Function:" msgstr "x-Funktion" #: ../share/extensions/param_curves.inx.h:27 -msgid "y-Function:" -msgstr "y-Funktion" +#, fuzzy +msgid "Y-Function:" +msgstr "x-Funktion" #: ../share/extensions/pathalongpath.inx.h:1 msgid "Pattern along Path" @@ -31921,6 +32460,11 @@ msgstr "Mittel" msgid "View Previous Glyph" msgstr "Vorherigen Glyph zeigen" +#: ../share/extensions/print_win32_vector.inx.h:1 +#, fuzzy +msgid "Win32 Vector Print" +msgstr "Windows 32-bit-Druck" + #: ../share/extensions/printing_marks.inx.h:1 msgid "Printing Marks" msgstr "Druck-Markierungen" @@ -32095,6 +32639,52 @@ msgstr "H (Durchschn. 30%)" msgid "Square size (px):" msgstr "Quadratische Größe / px" +#: ../share/extensions/render_gears.inx.h:1 +#: ../share/extensions/render_gear_rack.inx.h:6 +msgid "Gear" +msgstr "Zahnrad" + +#: ../share/extensions/render_gears.inx.h:2 +msgid "Number of teeth:" +msgstr "Anzahl der Zähne:" + +# !!! +#: ../share/extensions/render_gears.inx.h:3 +msgid "Circular pitch (tooth size):" +msgstr "Kreisteilung (Zahngröße):" + +#: ../share/extensions/render_gears.inx.h:4 +msgid "Pressure angle (degrees):" +msgstr "Druckwinkel (Grad):" + +#: ../share/extensions/render_gears.inx.h:5 +msgid "Diameter of center hole (0 for none):" +msgstr "Durchmesser des Zenterlochs (0 für kein):" + +#: ../share/extensions/render_gears.inx.h:10 +msgid "Unit of measurement for both circular pitch and center diameter." +msgstr "Einheit der Messung für Kreisteilung und Mittendurchmesser." + +#: ../share/extensions/render_gear_rack.inx.h:1 +#, fuzzy +msgid "Rack Gear" +msgstr "Zahnrad" + +#: ../share/extensions/render_gear_rack.inx.h:2 +#, fuzzy +msgid "Rack Length:" +msgstr "Länge:" + +#: ../share/extensions/render_gear_rack.inx.h:3 +#, fuzzy +msgid "Tooth Spacing:" +msgstr "Horizontale Abstände" + +#: ../share/extensions/render_gear_rack.inx.h:4 +#, fuzzy +msgid "Contact Angle:" +msgstr "Gergonne-Dreieck" + #: ../share/extensions/replace_font.inx.h:1 msgid "Replace font" msgstr "Schrift ersetzen" @@ -32104,11 +32694,13 @@ msgid "Find and Replace font" msgstr "Schrift Suchen und Ersetzen" #: ../share/extensions/replace_font.inx.h:3 -msgid "Find this font: " +#, fuzzy +msgid "Find font: " msgstr "Finde diese Schrift:" #: ../share/extensions/replace_font.inx.h:4 -msgid "And replace with: " +#, fuzzy +msgid "Replace with: " msgstr "Und ersetze mit:" #: ../share/extensions/replace_font.inx.h:5 @@ -32684,10 +33276,6 @@ msgid "The options below have no influence when the above is checked." msgstr "" "Ist das obere Häckchen gesetzt, sind die unteren Optionen bedeutungslos." -#: ../share/extensions/svgcalendar.inx.h:19 -msgid "Colors" -msgstr "Farben" - # !!! correct? #: ../share/extensions/svgcalendar.inx.h:20 msgid "Year color:" @@ -32779,6 +33367,19 @@ msgstr "Konvertiere SVG Schrift zu Glyph-Ebenen" msgid "Load only the first 30 glyphs (Recommended)" msgstr "Lade nur die ersten 30 Glyphen (Empfohlen)" +#: ../share/extensions/synfig_output.inx.h:1 +#, fuzzy +msgid "Synfig Output" +msgstr "SVG-Ausgabe" + +#: ../share/extensions/synfig_output.inx.h:2 +msgid "Synfig Animation (*.sif)" +msgstr "Synfig Animation (*.sif)" + +#: ../share/extensions/synfig_output.inx.h:3 +msgid "Synfig Animation written using the sif-file exporter extension" +msgstr "" + #: ../share/extensions/text_braille.inx.h:1 msgid "Convert to Braille" msgstr "Umwandeln in Blindenschrift" @@ -33385,6 +33986,82 @@ msgstr "Ein beliebtes Dateiformat für Clipart" msgid "XAML Input" msgstr "XAML einlesen" +#~ msgid "Crop:" +#~ msgstr "Schneiden:" + +#~ msgid "Red:" +#~ msgstr "Rot:" + +#~ msgid "Green:" +#~ msgstr "Grün:" + +#~ msgid "Blue:" +#~ msgstr "Blau:" + +#~ msgid "Lightness:" +#~ msgstr "Helligkeit:" + +#~ msgid "Alpha:" +#~ msgstr "Alpha:" + +#~ msgid "Level:" +#~ msgstr "Ebene:" + +#~ msgid "Contrast:" +#~ msgstr "Kontrast:" + +#~ msgid "Colors:" +#~ msgstr "Farben:" + +#~ msgid "Glow:" +#~ msgstr "Glühen:" + +#~ msgid "Simplify:" +#~ msgstr "Vereinfachen:" + +#~ msgid "Blur:" +#~ msgstr "Unschärfe:" + +#~ msgid "Select only one group to convert to symbol." +#~ msgstr "Nur eine Gruppe für Symbolkonvertierung auswählen." + +#~ msgid "Select original (Shift+D) to convert to symbol." +#~ msgstr "Original (Umschalt+D) wählen, um zum Symbol zu konvertieren." + +#~ msgid "Group selection first to convert to symbol." +#~ msgstr "Gruppieren der Auswahl bevor Konvertierung zum Symbol" + +#~ msgid "Preview scale: " +#~ msgstr "Vorschauskalierung:" + +# ??? Check! +#~ msgid "Fit" +#~ msgstr "Einpassen" + +#~ msgid "Fit to width" +#~ msgstr "Einpassen zur Breite" + +#~ msgid "Fit to height" +#~ msgstr "Einpassen zur Höhe" + +#~ msgid "Preview size: " +#~ msgstr "Vorschaugröße:" + +#~ msgid "_Start Markers:" +#~ msgstr "_Startmarkierung:" + +#~ msgid "_Mid Markers:" +#~ msgstr "_Mittelmarkierung:" + +#~ msgid "_End Markers:" +#~ msgstr "_Endmarkierung:" + +#~ msgid "keep only visible layers" +#~ msgstr "Nur sichtbare Ebenen behalten" + +#~ msgid "y-Function:" +#~ msgstr "y-Funktion" + #~ msgid "T_ype: " #~ msgstr "T_yp: " @@ -33596,9 +34273,6 @@ msgstr "XAML einlesen" #~ msgid "Dark mode" #~ msgstr "Dunkle Prägung" -#~ msgid "Invert gradient" -#~ msgstr "Farbverlauf invertieren" - #, fuzzy #~ msgid "[Unstable!] Power stroke" #~ msgstr "Kontur des Musters" @@ -34114,9 +34788,6 @@ msgstr "XAML einlesen" #~ "Weiche gefärbte Kontur mit Möglichkeit der Entsättigung und " #~ "Farbwertrotation" -#~ msgid "Glow" -#~ msgstr "Glühen" - #~ msgid "Glow of object's own color at the edges" #~ msgstr "Lichthof mit Objektfarbe um die Kanten" @@ -34431,15 +35102,9 @@ msgstr "XAML einlesen" #~ msgid "link" #~ msgstr "verknüpfen" -#~ msgid "Windows 32-bit Print" -#~ msgstr "Windows 32-bit-Druck" - #~ msgid "Iconify" #~ msgstr "Einklappen" -#~ msgid "(invalid UTF-8 string)" -#~ msgstr "(ungültiger UTF-8 string)" - #, fuzzy #~ msgid "Label:" #~ msgstr "_Bezeichner:" @@ -35032,9 +35697,6 @@ msgstr "XAML einlesen" #~ msgid "Object _Properties" #~ msgstr "Objekt_eigenschaften" -#~ msgid "Color profiles directory (%s) is unavailable." -#~ msgstr "Verzeichnis der Farbprofile (%s) nicht auffindbar." - #~ msgid "Create new objects with:" #~ msgstr "Objekte erstellen mit:" @@ -35134,9 +35796,6 @@ msgstr "XAML einlesen" #~ msgid "Toggle snapping on or off" #~ msgstr "Einrasten aus- oder einschalten" -#~ msgid "Rows" -#~ msgstr "Reihen:" - #~ msgid "Radius [px]" #~ msgstr "Radius [px]" @@ -35287,9 +35946,6 @@ msgstr "XAML einlesen" #~ msgid "Color/opacity used for color spraying" #~ msgstr "Farbe/Opazität zum Farbsprühen" -#~ msgid "Show node transformation handles" -#~ msgstr "Anzeigen der Anfasser" - #~ msgid "Show next path effect parameter for editing" #~ msgstr "Nächsten Pfad-Effekt-Parameter zum Bearbeiten wählen" @@ -35558,9 +36214,6 @@ msgstr "XAML einlesen" #~ msgid "Line which serves as 'mirror' for the reflection" #~ msgstr "Linie, die als 'Spiegel' für die Rflektion dienen soll." -#~ msgid "Handle to control the distance of the offset from the curve" -#~ msgstr "Anfasser zum Einstellen der Entfernung des Offset der Kurve" - #~ msgid "Adjust the offset" #~ msgstr "Versatz-Abstand anpassen" @@ -36254,9 +36907,6 @@ msgstr "XAML einlesen" #~ msgid "Preferred resolution (DPI) of bitmaps" #~ msgstr "Bevorzugte Auflösung der Bitmaps (Punkte pro Zoll)" -#~ msgid "PDF via Cairo (*.pdf)" -#~ msgstr "PDF durch Cairo (*.pdf)" - #~ msgid "PDF File" #~ msgstr "PDF Datei" -- cgit v1.2.3 From 4deb0f64f3bdab48475819a4d236f125594244f4 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Sun, 21 Jul 2013 23:38:29 -0400 Subject: Ported "widgets/ruler.*" away from SPMetric. (bzr r12380.1.48) --- src/sp-namedview.cpp | 13 +++++++++++++ src/sp-namedview.h | 1 + src/widgets/desktop-widget.cpp | 17 +++++++++-------- src/widgets/ruler.cpp | 36 +++++++++++++++++++----------------- src/widgets/ruler.h | 11 ++++++++--- 5 files changed, 50 insertions(+), 28 deletions(-) diff --git a/src/sp-namedview.cpp b/src/sp-namedview.cpp index bf3adf816..d01185981 100644 --- a/src/sp-namedview.cpp +++ b/src/sp-namedview.cpp @@ -1138,6 +1138,19 @@ SPMetric SPNamedView::getDefaultMetric() const } } +/** + * Returns namedview's default unit. + */ +Inkscape::Util::Unit const SPNamedView::getDefaultUnit() const +{ + if (doc_units) { + return *doc_units; + } else { + Inkscape::Util::UnitTable unit_table; + return *(new Inkscape::Util::Unit(unit_table.getUnit("pt"))); + } +} + /** * Returns the first grid it could find that isEnabled(). Returns NULL, if none is enabled */ diff --git a/src/sp-namedview.h b/src/sp-namedview.h index f9629f0c6..7f7e81f1f 100644 --- a/src/sp-namedview.h +++ b/src/sp-namedview.h @@ -85,6 +85,7 @@ struct SPNamedView : public SPObjectGroup { guint getViewCount(); GSList const *getViewList() const; SPMetric getDefaultMetric() const; + Inkscape::Util::Unit const getDefaultUnit() const; void translateGuides(Geom::Translate const &translation); void translateGrids(Geom::Translate const &translation); diff --git a/src/widgets/desktop-widget.cpp b/src/widgets/desktop-widget.cpp index 56a5baf5b..863912d03 100644 --- a/src/widgets/desktop-widget.cpp +++ b/src/widgets/desktop-widget.cpp @@ -393,9 +393,10 @@ void SPDesktopWidget::init( SPDesktopWidget *dtw ) GtkWidget *eventbox = gtk_event_box_new (); dtw->hruler = sp_ruler_new(GTK_ORIENTATION_HORIZONTAL); dtw->hruler_box = eventbox; - sp_ruler_set_unit(SP_RULER(dtw->hruler), SP_PT); Inkscape::Util::UnitTable unit_table; - gtk_widget_set_tooltip_text (dtw->hruler_box, gettext(unit_table.getUnit("pt").name_plural.c_str())); + Inkscape::Util::Unit pt = unit_table.getUnit("pt"); + sp_ruler_set_unit(SP_RULER(dtw->hruler), pt); + gtk_widget_set_tooltip_text (dtw->hruler_box, gettext(pt.name_plural.c_str())); gtk_container_add (GTK_CONTAINER (eventbox), dtw->hruler); g_signal_connect (G_OBJECT (eventbox), "button_press_event", G_CALLBACK (sp_dt_hruler_event), dtw); g_signal_connect (G_OBJECT (eventbox), "button_release_event", G_CALLBACK (sp_dt_hruler_event), dtw); @@ -423,8 +424,8 @@ void SPDesktopWidget::init( SPDesktopWidget *dtw ) eventbox = gtk_event_box_new (); dtw->vruler = sp_ruler_new(GTK_ORIENTATION_VERTICAL); dtw->vruler_box = eventbox; - sp_ruler_set_unit (SP_RULER (dtw->vruler), SP_PT); - gtk_widget_set_tooltip_text (dtw->vruler_box, gettext(unit_table.getUnit("pt").name_plural.c_str())); + sp_ruler_set_unit (SP_RULER (dtw->vruler), pt); + gtk_widget_set_tooltip_text (dtw->vruler_box, gettext(pt.name_plural.c_str())); gtk_container_add (GTK_CONTAINER (eventbox), GTK_WIDGET (dtw->vruler)); #if GTK_CHECK_VERSION(3,0,0) @@ -1675,7 +1676,7 @@ SPDesktopWidget* SPDesktopWidget::createInstance(SPNamedView *namedview) { SPDesktopWidget *dtw = static_cast(g_object_new(SP_TYPE_DESKTOP_WIDGET, NULL)); - dtw->dt2r = namedview->doc_units->factor; + dtw->dt2r = 1. / namedview->doc_units->factor; dtw->ruler_origin = Geom::Point(0,0); //namedview->gridorigin; Why was the grid origin used here? @@ -1747,11 +1748,11 @@ void SPDesktopWidget::namedviewModified(SPObject *obj, guint flags) SPNamedView *nv=SP_NAMEDVIEW(obj); if (flags & SP_OBJECT_MODIFIED_FLAG) { - this->dt2r = nv->doc_units->factor; + this->dt2r = 1. / nv->doc_units->factor; this->ruler_origin = Geom::Point(0,0); //nv->gridorigin; Why was the grid origin used here? - sp_ruler_set_unit(SP_RULER (this->vruler), nv->getDefaultMetric()); - sp_ruler_set_unit(SP_RULER (this->hruler), nv->getDefaultMetric()); + sp_ruler_set_unit(SP_RULER (this->vruler), nv->getDefaultUnit()); + sp_ruler_set_unit(SP_RULER (this->hruler), nv->getDefaultUnit()); /* This loops through all the grandchildren of aux toolbox, * and for each that it finds, it performs an sp_search_by_data_recursive(), diff --git a/src/widgets/ruler.cpp b/src/widgets/ruler.cpp index c1f9be2a5..274e1df54 100644 --- a/src/widgets/ruler.cpp +++ b/src/widgets/ruler.cpp @@ -33,9 +33,9 @@ #include "widget-sizes.h" #include "ruler.h" -#include "unit-constants.h" #include "round.h" #include +#include "util/units.h" #define ROUND(x) ((int) ((x) + 0.5)) @@ -62,7 +62,7 @@ enum { typedef struct { GtkOrientation orientation; - SPMetric unit; + Inkscape::Util::Unit *unit; gdouble lower; gdouble upper; gdouble position; @@ -196,11 +196,10 @@ sp_ruler_class_init (SPRulerClass *klass) /* FIXME: Should probably use g_param_spec_enum */ g_object_class_install_property (object_class, PROP_UNIT, - g_param_spec_uint ("unit", + g_param_spec_string ("unit", _("Unit"), _("Unit of the ruler"), - 0, 8, - SP_PX, + "px", static_cast(GTK_PARAM_READWRITE))); g_object_class_install_property (object_class, @@ -259,8 +258,10 @@ sp_ruler_init (SPRuler *ruler) gtk_widget_set_has_window (GTK_WIDGET (ruler), FALSE); + Inkscape::Util::UnitTable unit_table; + priv->orientation = GTK_ORIENTATION_HORIZONTAL; - priv->unit = SP_PX; + priv->unit = new Inkscape::Util::Unit(unit_table.getUnit("px")); priv->lower = 0; priv->upper = 0; priv->position = 0; @@ -379,6 +380,8 @@ sp_ruler_set_property (GObject *object, SPRuler *ruler = SP_RULER (object); SPRulerPrivate *priv = SP_RULER_GET_PRIVATE (ruler); + Inkscape::Util::UnitTable unit_table; + switch (prop_id) { case PROP_ORIENTATION: @@ -387,7 +390,7 @@ sp_ruler_set_property (GObject *object, break; case PROP_UNIT: - sp_ruler_set_unit (ruler, static_cast(g_value_get_int (value))); + sp_ruler_set_unit (ruler, unit_table.getUnit(g_value_get_string (value))); break; case PROP_LOWER: @@ -436,7 +439,7 @@ sp_ruler_get_property (GObject *object, break; case PROP_UNIT: - g_value_set_int (value, priv->unit); + g_value_set_string (value, priv->unit->abbr.c_str()); break; case PROP_LOWER: g_value_set_double (value, priv->lower); @@ -1071,15 +1074,15 @@ sp_ruler_remove_track_widget (SPRuler *ruler, */ void sp_ruler_set_unit (SPRuler *ruler, - SPMetric unit) + const Inkscape::Util::Unit &unit) { SPRulerPrivate *priv = SP_RULER_GET_PRIVATE (ruler); g_return_if_fail (SP_IS_RULER (ruler)); - if (priv->unit != unit) + if (*priv->unit != unit) { - priv->unit = unit; + priv->unit = new Inkscape::Util::Unit(unit); g_object_notify(G_OBJECT(ruler), "unit"); gtk_widget_queue_draw (GTK_WIDGET (ruler)); @@ -1092,11 +1095,9 @@ sp_ruler_set_unit (SPRuler *ruler, * * Return value: the unit currently used in the @ruler widget. **/ -SPMetric +Inkscape::Util::Unit* sp_ruler_get_unit (SPRuler *ruler) { - g_return_val_if_fail(SP_IS_RULER(ruler), static_cast(0)); - return SP_RULER_GET_PRIVATE (ruler)->unit; } @@ -1184,10 +1185,11 @@ sp_ruler_draw_ticks (SPRuler *ruler) gint text_size; gint pos; gdouble max_size; - SPMetric unit; + Inkscape::Util::Unit *unit; SPRulerMetric ruler_metric = ruler_metric_general; /* The metric to use for this unit system */ PangoLayout *layout; PangoRectangle logical_rect, ink_rect; + Inkscape::Util::UnitTable unit_table; if (! gtk_widget_is_drawable (widget)) return; @@ -1300,7 +1302,7 @@ sp_ruler_draw_ticks (SPRuler *ruler) /* Inkscape change to ruler: Use a 1,2,4,8... scale for inches * or a 1,2,5,10... scale for everything else */ - if (sp_ruler_get_unit (ruler) == SP_IN) + if (*sp_ruler_get_unit (ruler) == unit_table.getUnit("in")) ruler_metric = ruler_metric_inches; for (scale = 0; scale < G_N_ELEMENTS (ruler_metric.ruler_scale); scale++) @@ -1319,7 +1321,7 @@ sp_ruler_draw_ticks (SPRuler *ruler) gdouble subd_incr; /* hack to get proper subdivisions at full pixels */ - if (unit == SP_PX && scale == 1 && i == 1) + if (*unit == unit_table.getUnit("px") && scale == 1 && i == 1) subd_incr = 1.0; else subd_incr = ((gdouble) ruler_metric.ruler_scale[scale] / diff --git a/src/widgets/ruler.h b/src/widgets/ruler.h index f0d866fff..08760f584 100644 --- a/src/widgets/ruler.h +++ b/src/widgets/ruler.h @@ -14,10 +14,15 @@ */ #include -#include "sp-metric.h" #include #include +namespace Inkscape { + namespace Util { + class Unit; + } +} + G_BEGIN_DECLS #define SP_TYPE_RULER (sp_ruler_get_type ()) @@ -51,8 +56,8 @@ void sp_ruler_remove_track_widget (SPRuler *ruler, GtkWidget *widget); void sp_ruler_set_unit (SPRuler *ruler, - SPMetric unit); -SPMetric sp_ruler_get_unit (SPRuler *ruler); + const Inkscape::Util::Unit &unit); +Inkscape::Util::Unit *sp_ruler_get_unit (SPRuler *ruler); void sp_ruler_set_position (SPRuler *ruler, gdouble set_position); gdouble sp_ruler_get_position (SPRuler *ruler); -- cgit v1.2.3 From 0b2190b4a186f4b1a2265c85b4baa801d49e5534 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Sun, 21 Jul 2013 23:50:53 -0400 Subject: Removed SPMetric. (bzr r12380.1.49) --- src/CMakeLists.txt | 1 - src/Makefile_insert | 1 - src/sp-metric.h | 28 ---------------------------- src/sp-namedview.cpp | 13 ------------- src/sp-namedview.h | 2 -- src/util/units.cpp | 22 ---------------------- src/util/units.h | 1 - 7 files changed, 68 deletions(-) delete mode 100644 src/sp-metric.h diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index f975f16bf..b2af3809d 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -135,7 +135,6 @@ set(sp_SRC sp-mesh-row-fns.h sp-mesh-row.h sp-metadata.h - sp-metric.h sp-missing-glyph.h sp-namedview.h sp-object-group.h diff --git a/src/Makefile_insert b/src/Makefile_insert index ba14056e5..32771b99f 100644 --- a/src/Makefile_insert +++ b/src/Makefile_insert @@ -199,7 +199,6 @@ ink_common_sources += \ sp-mesh-patch.cpp sp-mesh-patch.h \ sp-mesh-row-fns.h \ sp-mesh-row.cpp sp-mesh-row.h \ - sp-metric.h \ sp-missing-glyph.cpp sp-missing-glyph.h \ sp-namedview.cpp sp-namedview.h \ sp-object.cpp sp-object.h \ diff --git a/src/sp-metric.h b/src/sp-metric.h deleted file mode 100644 index 31f3330fa..000000000 --- a/src/sp-metric.h +++ /dev/null @@ -1,28 +0,0 @@ -#ifndef INKSCAPE_SP_METRIC_H -#define INKSCAPE_SP_METRIC_H - -/** Known metrics so far. (I don't know why this doesn't include pica.) */ -enum SPMetric { - SP_NONE, - SP_MM, - SP_CM, - SP_IN, - SP_FT, - SP_PT, - SP_PC, - SP_PX, - SP_M -}; - -#endif /* !INKSCAPE_SP_METRIC_H */ - -/* - Local Variables: - mode:c++ - c-file-style:"stroustrup" - c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +)) - indent-tabs-mode:nil - fill-column:99 - End: -*/ -// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 : diff --git a/src/sp-namedview.cpp b/src/sp-namedview.cpp index d01185981..dde205eed 100644 --- a/src/sp-namedview.cpp +++ b/src/sp-namedview.cpp @@ -1125,19 +1125,6 @@ double SPNamedView::getMarginLength(gchar const * const key, return value; } - -/** - * Returns namedview's default metric. - */ -SPMetric SPNamedView::getDefaultMetric() const -{ - if (doc_units) { - return (SPMetric) doc_units->metric(); - } else { - return SP_PT; - } -} - /** * Returns namedview's default unit. */ diff --git a/src/sp-namedview.h b/src/sp-namedview.h index 7f7e81f1f..26febd7d3 100644 --- a/src/sp-namedview.h +++ b/src/sp-namedview.h @@ -21,7 +21,6 @@ #define SP_IS_NAMEDVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SP_TYPE_NAMEDVIEW)) #include "sp-object-group.h" -#include "sp-metric.h" #include "snap.h" #include "document.h" #include "util/units.h" @@ -84,7 +83,6 @@ struct SPNamedView : public SPObjectGroup { gchar const *getName() const; guint getViewCount(); GSList const *getViewList() const; - SPMetric getDefaultMetric() const; Inkscape::Util::Unit const getDefaultUnit() const; void translateGuides(Geom::Translate const &translation); diff --git a/src/util/units.cpp b/src/util/units.cpp index 01424520b..582c52090 100644 --- a/src/util/units.cpp +++ b/src/util/units.cpp @@ -187,28 +187,6 @@ int Unit::svgUnit() const return 0; } -/** Temporary - get metric. */ -int Unit::metric() const -{ - if (!abbr.compare("mm")) - return 1; - if (!abbr.compare("cm")) - return 2; - if (!abbr.compare("in")) - return 3; - if (!abbr.compare("ft")) - return 4; - if (!abbr.compare("pt")) - return 5; - if (!abbr.compare("pc")) - return 6; - if (!abbr.compare("px")) - return 7; - if (!abbr.compare("m")) - return 8; - return 0; -} - UnitTable::UnitTable() { // if we swich to the xml file, don't forget to force locale to 'C' diff --git a/src/util/units.h b/src/util/units.h index 0bbe604ef..99ba93c6b 100644 --- a/src/util/units.h +++ b/src/util/units.h @@ -80,7 +80,6 @@ class Unit { // temporary int svgUnit() const; - int metric() const; }; class Quantity { -- cgit v1.2.3 From eb7b26af09df66f30ba50058e9e4a583028cd81a Mon Sep 17 00:00:00 2001 From: Krzysztof Kosi??ski Date: Tue, 23 Jul 2013 12:54:01 +0200 Subject: Remove the disabled script dialog and the nonfunctional Java binding (bzr r12428) --- build.xml | 57 +- configure.ac | 2 - src/CMakeLists.txt | 1 - src/Makefile.am | 6 - src/bind/CMakeLists.txt | 18 - src/bind/DomStub.java | 299 --- src/bind/Makefile_insert | 11 - src/bind/dobinding.cpp | 251 --- src/bind/java/org/inkscape/cmn/BaseInterface.java | 85 - src/bind/java/org/inkscape/cmn/BaseObject.java | 81 - src/bind/java/org/inkscape/cmn/Gateway.java | 346 ---- src/bind/java/org/inkscape/cmn/Resource.java | 66 - src/bind/java/org/inkscape/dom/AttrImpl.java | 58 - .../java/org/inkscape/dom/CDATASectionImpl.java | 37 - .../java/org/inkscape/dom/CharacterDataImpl.java | 70 - src/bind/java/org/inkscape/dom/CommentImpl.java | 37 - src/bind/java/org/inkscape/dom/DOMBase.java | 72 - .../org/inkscape/dom/DOMConfigurationImpl.java | 53 - .../java/org/inkscape/dom/DOMErrorHandlerImpl.java | 38 - src/bind/java/org/inkscape/dom/DOMErrorImpl.java | 48 - .../org/inkscape/dom/DOMImplementationImpl.java | 60 - .../inkscape/dom/DOMImplementationListImpl.java | 43 - .../inkscape/dom/DOMImplementationSourceImpl.java | 41 - src/bind/java/org/inkscape/dom/DOMLocatorImpl.java | 48 - .../java/org/inkscape/dom/DOMStringListImpl.java | 43 - .../org/inkscape/dom/DocumentFragmentImpl.java | 36 - src/bind/java/org/inkscape/dom/DocumentImpl.java | 138 -- .../java/org/inkscape/dom/DocumentTypeImpl.java | 52 - src/bind/java/org/inkscape/dom/ElementImpl.java | 111 -- src/bind/java/org/inkscape/dom/EntityImpl.java | 49 - .../java/org/inkscape/dom/EntityReferenceImpl.java | 37 - src/bind/java/org/inkscape/dom/NameListImpl.java | 46 - .../java/org/inkscape/dom/NamedNodeMapImpl.java | 65 - src/bind/java/org/inkscape/dom/NodeImpl.java | 139 -- src/bind/java/org/inkscape/dom/NodeListImpl.java | 41 - src/bind/java/org/inkscape/dom/NotationImpl.java | 41 - .../inkscape/dom/ProcessingInstructionImpl.java | 46 - src/bind/java/org/inkscape/dom/TextImpl.java | 52 - src/bind/java/org/inkscape/dom/TypeInfoImpl.java | 44 - .../java/org/inkscape/dom/UserDataHandlerImpl.java | 45 - .../org/inkscape/dom/css/CSS2PropertiesImpl.java | 527 ------ .../org/inkscape/dom/css/CSSCharsetRuleImpl.java | 44 - .../org/inkscape/dom/css/CSSFontFaceRuleImpl.java | 43 - .../org/inkscape/dom/css/CSSImportRuleImpl.java | 48 - .../org/inkscape/dom/css/CSSMediaRuleImpl.java | 53 - .../java/org/inkscape/dom/css/CSSPageRuleImpl.java | 46 - .../inkscape/dom/css/CSSPrimitiveValueImpl.java | 68 - .../java/org/inkscape/dom/css/CSSRuleImpl.java | 51 - .../java/org/inkscape/dom/css/CSSRuleListImpl.java | 44 - .../inkscape/dom/css/CSSStyleDeclarationImpl.java | 66 - .../org/inkscape/dom/css/CSSStyleRuleImpl.java | 47 - .../org/inkscape/dom/css/CSSStyleSheetImpl.java | 55 - .../org/inkscape/dom/css/CSSUnknownRuleImpl.java | 37 - .../java/org/inkscape/dom/css/CSSValueImpl.java | 46 - .../org/inkscape/dom/css/CSSValueListImpl.java | 45 - .../java/org/inkscape/dom/css/CounterImpl.java | 44 - .../inkscape/dom/css/DOMImplementationCSSImpl.java | 47 - .../java/org/inkscape/dom/css/DocumentCSSImpl.java | 47 - .../dom/css/ElementCSSInlineStyleImpl.java | 43 - .../java/org/inkscape/dom/css/RGBColorImpl.java | 45 - src/bind/java/org/inkscape/dom/css/RectImpl.java | 48 - .../java/org/inkscape/dom/css/ViewCSSImpl.java | 46 - .../org/inkscape/dom/events/CustomEventImpl.java | 46 - .../org/inkscape/dom/events/DocumentEventImpl.java | 48 - .../java/org/inkscape/dom/events/EventImpl.java | 74 - .../org/inkscape/dom/events/EventListenerImpl.java | 41 - .../org/inkscape/dom/events/EventTargetImpl.java | 71 - .../org/inkscape/dom/events/KeyboardEventImpl.java | 70 - .../org/inkscape/dom/events/MouseEventImpl.java | 96 - .../org/inkscape/dom/events/MutationEventImpl.java | 67 - .../inkscape/dom/events/MutationNameEventImpl.java | 58 - .../org/inkscape/dom/events/TextEventImpl.java | 55 - .../java/org/inkscape/dom/events/UIEventImpl.java | 56 - .../smil/ElementExclusiveTimeContainerImpl.java | 50 - .../org/inkscape/dom/smil/ElementLayoutImpl.java | 50 - .../dom/smil/ElementParallelTimeContainerImpl.java | 47 - .../smil/ElementSequentialTimeContainerImpl.java | 37 - .../inkscape/dom/smil/ElementSyncBehaviorImpl.java | 53 - .../dom/smil/ElementTargetAttributesImpl.java | 46 - .../org/inkscape/dom/smil/ElementTestImpl.java | 73 - .../dom/smil/ElementTimeContainerImpl.java | 43 - .../inkscape/dom/smil/ElementTimeControlImpl.java | 45 - .../org/inkscape/dom/smil/ElementTimeImpl.java | 95 - .../dom/smil/ElementTimeManipulationImpl.java | 60 - .../dom/smil/SMILAnimateColorElementImpl.java | 37 - .../inkscape/dom/smil/SMILAnimateElementImpl.java | 37 - .../dom/smil/SMILAnimateMotionElementImpl.java | 46 - .../org/inkscape/dom/smil/SMILAnimationImpl.java | 153 -- .../org/inkscape/dom/smil/SMILDocumentImpl.java | 103 - .../org/inkscape/dom/smil/SMILElementImpl.java | 42 - .../inkscape/dom/smil/SMILLayoutElementImpl.java | 43 - .../inkscape/dom/smil/SMILMediaElementImpl.java | 152 -- .../org/inkscape/dom/smil/SMILRefElementImpl.java | 37 - .../inkscape/dom/smil/SMILRegionElementImpl.java | 76 - .../inkscape/dom/smil/SMILRegionInterfaceImpl.java | 42 - .../dom/smil/SMILRootLayoutElementImpl.java | 67 - .../org/inkscape/dom/smil/SMILSetElementImpl.java | 122 -- .../inkscape/dom/smil/SMILSwitchElementImpl.java | 40 - .../dom/smil/SMILTopLayoutElementImpl.java | 66 - .../java/org/inkscape/dom/smil/TimeEventImpl.java | 49 - src/bind/java/org/inkscape/dom/smil/TimeImpl.java | 70 - .../java/org/inkscape/dom/smil/TimeListImpl.java | 43 - .../dom/stylesheets/DocumentStyleImpl.java | 43 - .../inkscape/dom/stylesheets/LinkStyleImpl.java | 41 - .../inkscape/dom/stylesheets/MediaListImpl.java | 53 - .../inkscape/dom/stylesheets/StyleSheetImpl.java | 56 - .../dom/stylesheets/StyleSheetListImpl.java | 42 - .../org/inkscape/dom/svg/GetSVGDocumentImpl.java | 43 - .../java/org/inkscape/dom/svg/SVGAElementImpl.java | 176 -- .../dom/svg/SVGAltGlyphDefElementImpl.java | 36 - .../inkscape/dom/svg/SVGAltGlyphElementImpl.java | 60 - .../dom/svg/SVGAltGlyphItemElementImpl.java | 36 - .../java/org/inkscape/dom/svg/SVGAngleImpl.java | 50 - .../dom/svg/SVGAnimateColorElementImpl.java | 36 - .../inkscape/dom/svg/SVGAnimateElementImpl.java | 35 - .../dom/svg/SVGAnimateMotionElementImpl.java | 35 - .../dom/svg/SVGAnimateTransformElementImpl.java | 35 - .../org/inkscape/dom/svg/SVGAnimatedAngleImpl.java | 43 - .../inkscape/dom/svg/SVGAnimatedBooleanImpl.java | 46 - .../dom/svg/SVGAnimatedEnumerationImpl.java | 45 - .../inkscape/dom/svg/SVGAnimatedIntegerImpl.java | 46 - .../inkscape/dom/svg/SVGAnimatedLengthImpl.java | 44 - .../dom/svg/SVGAnimatedLengthListImpl.java | 42 - .../inkscape/dom/svg/SVGAnimatedNumberImpl.java | 45 - .../dom/svg/SVGAnimatedNumberListImpl.java | 43 - .../inkscape/dom/svg/SVGAnimatedPathDataImpl.java | 46 - .../inkscape/dom/svg/SVGAnimatedPointsImpl.java | 43 - .../svg/SVGAnimatedPreserveAspectRatioImpl.java | 39 - .../org/inkscape/dom/svg/SVGAnimatedRectImpl.java | 38 - .../inkscape/dom/svg/SVGAnimatedStringImpl.java | 39 - .../dom/svg/SVGAnimatedTransformListImpl.java | 39 - .../inkscape/dom/svg/SVGAnimationElementImpl.java | 132 -- .../java/org/inkscape/dom/svg/SVGCSSRuleImpl.java | 39 - .../org/inkscape/dom/svg/SVGCircleElementImpl.java | 172 -- .../inkscape/dom/svg/SVGClipPathElementImpl.java | 134 -- .../java/org/inkscape/dom/svg/SVGColorImpl.java | 54 - .../dom/svg/SVGColorProfileElementImpl.java | 68 - .../inkscape/dom/svg/SVGColorProfileRuleImpl.java | 53 - .../SVGComponentTransferFunctionElementImpl.java | 50 - .../org/inkscape/dom/svg/SVGCursorElementImpl.java | 84 - .../dom/svg/SVGDefinitionSrcElementImpl.java | 36 - .../org/inkscape/dom/svg/SVGDefsElementImpl.java | 165 -- .../org/inkscape/dom/svg/SVGDescElementImpl.java | 82 - .../java/org/inkscape/dom/svg/SVGDocumentImpl.java | 65 - .../java/org/inkscape/dom/svg/SVGElementImpl.java | 53 - .../inkscape/dom/svg/SVGElementInstanceImpl.java | 52 - .../dom/svg/SVGElementInstanceListImpl.java | 42 - .../inkscape/dom/svg/SVGEllipseElementImpl.java | 172 -- .../java/org/inkscape/dom/svg/SVGEventImpl.java | 40 - .../dom/svg/SVGExternalResourcesRequiredImpl.java | 44 - .../inkscape/dom/svg/SVGFEBlendElementImpl.java | 84 - .../dom/svg/SVGFEColorMatrixElementImpl.java | 84 - .../dom/svg/SVGFEComponentTransferElementImpl.java | 79 - .../dom/svg/SVGFECompositeElementImpl.java | 93 - .../dom/svg/SVGFEConvolveMatrixElementImpl.java | 99 - .../dom/svg/SVGFEDiffuseLightingElementImpl.java | 86 - .../dom/svg/SVGFEDisplacementMapElementImpl.java | 81 - .../dom/svg/SVGFEDistantLightElementImpl.java | 45 - .../inkscape/dom/svg/SVGFEFloodElementImpl.java | 79 - .../inkscape/dom/svg/SVGFEFuncAElementImpl.java | 39 - .../inkscape/dom/svg/SVGFEFuncBElementImpl.java | 39 - .../inkscape/dom/svg/SVGFEFuncGElementImpl.java | 39 - .../inkscape/dom/svg/SVGFEFuncRElementImpl.java | 40 - .../dom/svg/SVGFEGaussianBlurElementImpl.java | 85 - .../inkscape/dom/svg/SVGFEImageElementImpl.java | 116 -- .../inkscape/dom/svg/SVGFEMergeElementImpl.java | 74 - .../dom/svg/SVGFEMergeNodeElementImpl.java | 44 - .../dom/svg/SVGFEMorphologyElementImpl.java | 78 - .../inkscape/dom/svg/SVGFEOffsetElementImpl.java | 79 - .../dom/svg/SVGFEPointLightElementImpl.java | 44 - .../dom/svg/SVGFESpecularLightingElementImpl.java | 81 - .../dom/svg/SVGFESpotLightElementImpl.java | 49 - .../org/inkscape/dom/svg/SVGFETileElementImpl.java | 75 - .../dom/svg/SVGFETurbulenceElementImpl.java | 85 - .../org/inkscape/dom/svg/SVGFilterElementImpl.java | 106 -- .../SVGFilterPrimitiveStandardAttributesImpl.java | 47 - .../org/inkscape/dom/svg/SVGFitToViewBoxImpl.java | 46 - .../org/inkscape/dom/svg/SVGFontElementImpl.java | 69 - .../inkscape/dom/svg/SVGFontFaceElementImpl.java | 39 - .../dom/svg/SVGFontFaceFormatElementImpl.java | 38 - .../dom/svg/SVGFontFaceNameElementImpl.java | 39 - .../dom/svg/SVGFontFaceSrcElementImpl.java | 38 - .../dom/svg/SVGFontFaceUriElementImpl.java | 38 - .../dom/svg/SVGForeignObjectElementImpl.java | 169 -- .../java/org/inkscape/dom/svg/SVGGElementImpl.java | 166 -- .../org/inkscape/dom/svg/SVGGlyphElementImpl.java | 64 - .../inkscape/dom/svg/SVGGlyphRefElementImpl.java | 90 - .../inkscape/dom/svg/SVGGradientElementImpl.java | 87 - .../org/inkscape/dom/svg/SVGHKernElementImpl.java | 38 - .../java/org/inkscape/dom/svg/SVGICCColorImpl.java | 44 - .../org/inkscape/dom/svg/SVGImageElementImpl.java | 178 -- .../org/inkscape/dom/svg/SVGLangSpaceImpl.java | 47 - .../java/org/inkscape/dom/svg/SVGLengthImpl.java | 52 - .../org/inkscape/dom/svg/SVGLengthListImpl.java | 56 - .../org/inkscape/dom/svg/SVGLineElementImpl.java | 170 -- .../dom/svg/SVGLinearGradientElementImpl.java | 45 - .../org/inkscape/dom/svg/SVGLocatableImpl.java | 51 - .../org/inkscape/dom/svg/SVGMPathElementImpl.java | 63 - .../org/inkscape/dom/svg/SVGMarkerElementImpl.java | 107 -- .../org/inkscape/dom/svg/SVGMaskElementImpl.java | 108 -- .../java/org/inkscape/dom/svg/SVGMatrixImpl.java | 72 - .../inkscape/dom/svg/SVGMetadataElementImpl.java | 38 - .../dom/svg/SVGMissingGlyphElementImpl.java | 61 - .../java/org/inkscape/dom/svg/SVGNumberImpl.java | 42 - .../org/inkscape/dom/svg/SVGNumberListImpl.java | 58 - .../java/org/inkscape/dom/svg/SVGPaintImpl.java | 49 - .../org/inkscape/dom/svg/SVGPathElementImpl.java | 215 --- .../org/inkscape/dom/svg/SVGPathSegArcAbsImpl.java | 61 - .../org/inkscape/dom/svg/SVGPathSegArcRelImpl.java | 61 - .../inkscape/dom/svg/SVGPathSegClosePathImpl.java | 38 - .../dom/svg/SVGPathSegCurvetoCubicAbsImpl.java | 58 - .../dom/svg/SVGPathSegCurvetoCubicRelImpl.java | 58 - .../svg/SVGPathSegCurvetoCubicSmoothAbsImpl.java | 52 - .../svg/SVGPathSegCurvetoCubicSmoothRelImpl.java | 52 - .../dom/svg/SVGPathSegCurvetoQuadraticAbsImpl.java | 52 - .../dom/svg/SVGPathSegCurvetoQuadraticRelImpl.java | 52 - .../SVGPathSegCurvetoQuadraticSmoothAbsImpl.java | 46 - .../SVGPathSegCurvetoQuadraticSmoothRelImpl.java | 46 - .../java/org/inkscape/dom/svg/SVGPathSegImpl.java | 38 - .../inkscape/dom/svg/SVGPathSegLinetoAbsImpl.java | 46 - .../dom/svg/SVGPathSegLinetoHorizontalAbsImpl.java | 43 - .../dom/svg/SVGPathSegLinetoHorizontalRelImpl.java | 43 - .../inkscape/dom/svg/SVGPathSegLinetoRelImpl.java | 46 - .../dom/svg/SVGPathSegLinetoVerticalAbsImpl.java | 43 - .../dom/svg/SVGPathSegLinetoVerticalRelImpl.java | 43 - .../org/inkscape/dom/svg/SVGPathSegListImpl.java | 57 - .../inkscape/dom/svg/SVGPathSegMovetoAbsImpl.java | 46 - .../inkscape/dom/svg/SVGPathSegMovetoRelImpl.java | 46 - .../inkscape/dom/svg/SVGPatternElementImpl.java | 135 -- .../java/org/inkscape/dom/svg/SVGPointImpl.java | 49 - .../org/inkscape/dom/svg/SVGPointListImpl.java | 56 - .../inkscape/dom/svg/SVGPolygonElementImpl.java | 177 -- .../inkscape/dom/svg/SVGPolylineElementImpl.java | 175 -- .../dom/svg/SVGPreserveAspectRatioImpl.java | 44 - .../dom/svg/SVGRadialGradientElementImpl.java | 46 - .../org/inkscape/dom/svg/SVGRectElementImpl.java | 170 -- .../java/org/inkscape/dom/svg/SVGRectImpl.java | 49 - .../inkscape/dom/svg/SVGRenderingIntentImpl.java | 36 - .../org/inkscape/dom/svg/SVGSVGElementImpl.java | 280 --- .../org/inkscape/dom/svg/SVGScriptElementImpl.java | 70 - .../org/inkscape/dom/svg/SVGSetElementImpl.java | 38 - .../org/inkscape/dom/svg/SVGStopElementImpl.java | 62 - .../org/inkscape/dom/svg/SVGStringListImpl.java | 56 - .../java/org/inkscape/dom/svg/SVGStylableImpl.java | 47 - .../org/inkscape/dom/svg/SVGStyleElementImpl.java | 52 - .../org/inkscape/dom/svg/SVGSwitchElementImpl.java | 166 -- .../org/inkscape/dom/svg/SVGSymbolElementImpl.java | 161 -- .../org/inkscape/dom/svg/SVGTRefElementImpl.java | 54 - .../org/inkscape/dom/svg/SVGTSpanElementImpl.java | 38 - .../java/org/inkscape/dom/svg/SVGTestsImpl.java | 45 - .../dom/svg/SVGTextContentElementImpl.java | 161 -- .../org/inkscape/dom/svg/SVGTextElementImpl.java | 69 - .../inkscape/dom/svg/SVGTextPathElementImpl.java | 57 - .../dom/svg/SVGTextPositioningElementImpl.java | 45 - .../org/inkscape/dom/svg/SVGTitleElementImpl.java | 79 - .../org/inkscape/dom/svg/SVGTransformImpl.java | 49 - .../org/inkscape/dom/svg/SVGTransformListImpl.java | 60 - .../org/inkscape/dom/svg/SVGTransformableImpl.java | 42 - .../org/inkscape/dom/svg/SVGURIReferenceImpl.java | 42 - .../org/inkscape/dom/svg/SVGUnitTypesImpl.java | 36 - .../org/inkscape/dom/svg/SVGUseElementImpl.java | 180 -- .../org/inkscape/dom/svg/SVGVKernElementImpl.java | 38 - .../org/inkscape/dom/svg/SVGViewElementImpl.java | 77 - .../java/org/inkscape/dom/svg/SVGViewSpecImpl.java | 64 - .../org/inkscape/dom/svg/SVGZoomAndPanImpl.java | 43 - .../org/inkscape/dom/svg/SVGZoomEventImpl.java | 47 - .../org/inkscape/dom/views/AbstractViewImpl.java | 42 - .../org/inkscape/dom/views/DocumentViewImpl.java | 43 - src/bind/java/org/inkscape/script/Editor.java | 311 ---- .../java/org/inkscape/script/ScriptConsole.java | 652 ------- src/bind/java/org/inkscape/script/Terminal.java | 297 --- src/bind/java/org/w3c/dom/css/CSS2Properties.java | 1411 -------------- src/bind/java/org/w3c/dom/css/CSSCharsetRule.java | 48 - src/bind/java/org/w3c/dom/css/CSSFontFaceRule.java | 28 - src/bind/java/org/w3c/dom/css/CSSImportRule.java | 44 - src/bind/java/org/w3c/dom/css/CSSMediaRule.java | 76 - src/bind/java/org/w3c/dom/css/CSSPageRule.java | 41 - .../java/org/w3c/dom/css/CSSPrimitiveValue.java | 296 --- src/bind/java/org/w3c/dom/css/CSSRule.java | 93 - src/bind/java/org/w3c/dom/css/CSSRuleList.java | 43 - .../java/org/w3c/dom/css/CSSStyleDeclaration.java | 152 -- src/bind/java/org/w3c/dom/css/CSSStyleRule.java | 42 - src/bind/java/org/w3c/dom/css/CSSStyleSheet.java | 85 - src/bind/java/org/w3c/dom/css/CSSUnknownRule.java | 22 - src/bind/java/org/w3c/dom/css/CSSValue.java | 68 - src/bind/java/org/w3c/dom/css/CSSValueList.java | 46 - src/bind/java/org/w3c/dom/css/Counter.java | 38 - .../java/org/w3c/dom/css/DOMImplementationCSS.java | 40 - src/bind/java/org/w3c/dom/css/DocumentCSS.java | 50 - .../org/w3c/dom/css/ElementCSSInlineStyle.java | 32 - src/bind/java/org/w3c/dom/css/RGBColor.java | 47 - src/bind/java/org/w3c/dom/css/Rect.java | 44 - src/bind/java/org/w3c/dom/css/ViewCSS.java | 43 - src/bind/java/org/w3c/dom/events/CustomEvent.java | 70 - .../java/org/w3c/dom/events/DocumentEvent.java | 86 - src/bind/java/org/w3c/dom/events/Event.java | 209 --- .../java/org/w3c/dom/events/EventException.java | 41 - .../java/org/w3c/dom/events/EventListener.java | 40 - src/bind/java/org/w3c/dom/events/EventTarget.java | 202 -- .../java/org/w3c/dom/events/KeyboardEvent.java | 178 -- src/bind/java/org/w3c/dom/events/MouseEvent.java | 219 --- .../java/org/w3c/dom/events/MutationEvent.java | 160 -- .../java/org/w3c/dom/events/MutationNameEvent.java | 104 -- src/bind/java/org/w3c/dom/events/TextEvent.java | 81 - src/bind/java/org/w3c/dom/events/UIEvent.java | 82 - .../dom/smil/ElementExclusiveTimeContainer.java | 41 - src/bind/java/org/w3c/dom/smil/ElementLayout.java | 55 - .../w3c/dom/smil/ElementParallelTimeContainer.java | 40 - .../dom/smil/ElementSequentialTimeContainer.java | 21 - .../java/org/w3c/dom/smil/ElementSyncBehavior.java | 49 - .../org/w3c/dom/smil/ElementTargetAttributes.java | 38 - src/bind/java/org/w3c/dom/smil/ElementTest.java | 83 - src/bind/java/org/w3c/dom/smil/ElementTime.java | 150 -- .../org/w3c/dom/smil/ElementTimeContainer.java | 39 - .../java/org/w3c/dom/smil/ElementTimeControl.java | 103 - .../org/w3c/dom/smil/ElementTimeManipulation.java | 75 - .../org/w3c/dom/smil/SMILAnimateColorElement.java | 20 - .../java/org/w3c/dom/smil/SMILAnimateElement.java | 20 - .../org/w3c/dom/smil/SMILAnimateMotionElement.java | 41 - src/bind/java/org/w3c/dom/smil/SMILAnimation.java | 124 -- src/bind/java/org/w3c/dom/smil/SMILDocument.java | 28 - src/bind/java/org/w3c/dom/smil/SMILElement.java | 40 - .../java/org/w3c/dom/smil/SMILLayoutElement.java | 33 - .../java/org/w3c/dom/smil/SMILMediaElement.java | 157 -- src/bind/java/org/w3c/dom/smil/SMILRefElement.java | 20 - .../java/org/w3c/dom/smil/SMILRegionElement.java | 47 - .../java/org/w3c/dom/smil/SMILRegionInterface.java | 26 - .../org/w3c/dom/smil/SMILRootLayoutElement.java | 21 - src/bind/java/org/w3c/dom/smil/SMILSetElement.java | 27 - .../java/org/w3c/dom/smil/SMILSwitchElement.java | 30 - .../org/w3c/dom/smil/SMILTopLayoutElement.java | 21 - src/bind/java/org/w3c/dom/smil/Time.java | 119 -- src/bind/java/org/w3c/dom/smil/TimeEvent.java | 53 - src/bind/java/org/w3c/dom/smil/TimeList.java | 41 - .../org/w3c/dom/stylesheets/DocumentStyle.java | 34 - .../java/org/w3c/dom/stylesheets/LinkStyle.java | 31 - .../java/org/w3c/dom/stylesheets/MediaList.java | 81 - .../java/org/w3c/dom/stylesheets/StyleSheet.java | 95 - .../org/w3c/dom/stylesheets/StyleSheetList.java | 42 - src/bind/java/org/w3c/dom/svg/GetSVGDocument.java | 9 - src/bind/java/org/w3c/dom/svg/SVGAElement.java | 16 - .../org/w3c/dom/svg/SVGAltGlyphDefElement.java | 6 - .../java/org/w3c/dom/svg/SVGAltGlyphElement.java | 15 - .../org/w3c/dom/svg/SVGAltGlyphItemElement.java | 6 - src/bind/java/org/w3c/dom/svg/SVGAngle.java | 26 - .../org/w3c/dom/svg/SVGAnimateColorElement.java | 6 - .../java/org/w3c/dom/svg/SVGAnimateElement.java | 6 - .../org/w3c/dom/svg/SVGAnimateMotionElement.java | 6 - .../w3c/dom/svg/SVGAnimateTransformElement.java | 6 - .../java/org/w3c/dom/svg/SVGAnimatedAngle.java | 7 - .../java/org/w3c/dom/svg/SVGAnimatedBoolean.java | 10 - .../org/w3c/dom/svg/SVGAnimatedEnumeration.java | 10 - .../java/org/w3c/dom/svg/SVGAnimatedInteger.java | 10 - .../java/org/w3c/dom/svg/SVGAnimatedLength.java | 7 - .../org/w3c/dom/svg/SVGAnimatedLengthList.java | 7 - .../java/org/w3c/dom/svg/SVGAnimatedNumber.java | 10 - .../org/w3c/dom/svg/SVGAnimatedNumberList.java | 7 - .../java/org/w3c/dom/svg/SVGAnimatedPathData.java | 9 - .../java/org/w3c/dom/svg/SVGAnimatedPoints.java | 7 - .../dom/svg/SVGAnimatedPreserveAspectRatio.java | 7 - src/bind/java/org/w3c/dom/svg/SVGAnimatedRect.java | 7 - .../java/org/w3c/dom/svg/SVGAnimatedString.java | 10 - .../org/w3c/dom/svg/SVGAnimatedTransformList.java | 7 - .../java/org/w3c/dom/svg/SVGAnimationElement.java | 20 - src/bind/java/org/w3c/dom/svg/SVGCSSRule.java | 10 - .../java/org/w3c/dom/svg/SVGCircleElement.java | 17 - .../java/org/w3c/dom/svg/SVGClipPathElement.java | 13 - src/bind/java/org/w3c/dom/svg/SVGColor.java | 25 - .../org/w3c/dom/svg/SVGColorProfileElement.java | 19 - .../java/org/w3c/dom/svg/SVGColorProfileRule.java | 18 - .../svg/SVGComponentTransferFunctionElement.java | 21 - .../java/org/w3c/dom/svg/SVGCursorElement.java | 11 - .../org/w3c/dom/svg/SVGDefinitionSrcElement.java | 6 - src/bind/java/org/w3c/dom/svg/SVGDefsElement.java | 14 - src/bind/java/org/w3c/dom/svg/SVGDescElement.java | 8 - src/bind/java/org/w3c/dom/svg/SVGDocument.java | 15 - src/bind/java/org/w3c/dom/svg/SVGElement.java | 17 - .../java/org/w3c/dom/svg/SVGElementInstance.java | 16 - .../org/w3c/dom/svg/SVGElementInstanceList.java | 8 - .../java/org/w3c/dom/svg/SVGEllipseElement.java | 18 - src/bind/java/org/w3c/dom/svg/SVGEvent.java | 8 - src/bind/java/org/w3c/dom/svg/SVGException.java | 13 - .../w3c/dom/svg/SVGExternalResourcesRequired.java | 6 - .../java/org/w3c/dom/svg/SVGFEBlendElement.java | 18 - .../org/w3c/dom/svg/SVGFEColorMatrixElement.java | 17 - .../w3c/dom/svg/SVGFEComponentTransferElement.java | 8 - .../org/w3c/dom/svg/SVGFECompositeElement.java | 23 - .../w3c/dom/svg/SVGFEConvolveMatrixElement.java | 24 - .../w3c/dom/svg/SVGFEDiffuseLightingElement.java | 12 - .../w3c/dom/svg/SVGFEDisplacementMapElement.java | 19 - .../org/w3c/dom/svg/SVGFEDistantLightElement.java | 8 - .../java/org/w3c/dom/svg/SVGFEFloodElement.java | 8 - .../java/org/w3c/dom/svg/SVGFEFuncAElement.java | 6 - .../java/org/w3c/dom/svg/SVGFEFuncBElement.java | 6 - .../java/org/w3c/dom/svg/SVGFEFuncGElement.java | 6 - .../java/org/w3c/dom/svg/SVGFEFuncRElement.java | 6 - .../org/w3c/dom/svg/SVGFEGaussianBlurElement.java | 12 - .../java/org/w3c/dom/svg/SVGFEImageElement.java | 13 - .../java/org/w3c/dom/svg/SVGFEMergeElement.java | 7 - .../org/w3c/dom/svg/SVGFEMergeNodeElement.java | 7 - .../org/w3c/dom/svg/SVGFEMorphologyElement.java | 16 - .../java/org/w3c/dom/svg/SVGFEOffsetElement.java | 10 - .../org/w3c/dom/svg/SVGFEPointLightElement.java | 9 - .../w3c/dom/svg/SVGFESpecularLightingElement.java | 11 - .../org/w3c/dom/svg/SVGFESpotLightElement.java | 14 - .../java/org/w3c/dom/svg/SVGFETileElement.java | 8 - .../org/w3c/dom/svg/SVGFETurbulenceElement.java | 22 - .../java/org/w3c/dom/svg/SVGFilterElement.java | 21 - .../svg/SVGFilterPrimitiveStandardAttributes.java | 11 - src/bind/java/org/w3c/dom/svg/SVGFitToViewBox.java | 7 - src/bind/java/org/w3c/dom/svg/SVGFontElement.java | 8 - .../java/org/w3c/dom/svg/SVGFontFaceElement.java | 6 - .../org/w3c/dom/svg/SVGFontFaceFormatElement.java | 6 - .../org/w3c/dom/svg/SVGFontFaceNameElement.java | 6 - .../org/w3c/dom/svg/SVGFontFaceSrcElement.java | 6 - .../org/w3c/dom/svg/SVGFontFaceUriElement.java | 6 - .../org/w3c/dom/svg/SVGForeignObjectElement.java | 18 - src/bind/java/org/w3c/dom/svg/SVGGElement.java | 14 - src/bind/java/org/w3c/dom/svg/SVGGlyphElement.java | 7 - .../java/org/w3c/dom/svg/SVGGlyphRefElement.java | 28 - .../java/org/w3c/dom/svg/SVGGradientElement.java | 19 - src/bind/java/org/w3c/dom/svg/SVGHKernElement.java | 6 - src/bind/java/org/w3c/dom/svg/SVGICCColor.java | 10 - src/bind/java/org/w3c/dom/svg/SVGImageElement.java | 20 - src/bind/java/org/w3c/dom/svg/SVGLangSpace.java | 13 - src/bind/java/org/w3c/dom/svg/SVGLength.java | 32 - src/bind/java/org/w3c/dom/svg/SVGLengthList.java | 23 - src/bind/java/org/w3c/dom/svg/SVGLineElement.java | 18 - .../org/w3c/dom/svg/SVGLinearGradientElement.java | 10 - src/bind/java/org/w3c/dom/svg/SVGLocatable.java | 13 - src/bind/java/org/w3c/dom/svg/SVGMPathElement.java | 8 - .../java/org/w3c/dom/svg/SVGMarkerElement.java | 29 - src/bind/java/org/w3c/dom/svg/SVGMaskElement.java | 17 - src/bind/java/org/w3c/dom/svg/SVGMatrix.java | 39 - .../java/org/w3c/dom/svg/SVGMetadataElement.java | 6 - .../org/w3c/dom/svg/SVGMissingGlyphElement.java | 7 - src/bind/java/org/w3c/dom/svg/SVGNumber.java | 10 - src/bind/java/org/w3c/dom/svg/SVGNumberList.java | 23 - src/bind/java/org/w3c/dom/svg/SVGPaint.java | 26 - src/bind/java/org/w3c/dom/svg/SVGPathElement.java | 39 - src/bind/java/org/w3c/dom/svg/SVGPathSeg.java | 29 - .../java/org/w3c/dom/svg/SVGPathSegArcAbs.java | 29 - .../java/org/w3c/dom/svg/SVGPathSegArcRel.java | 29 - .../java/org/w3c/dom/svg/SVGPathSegClosePath.java | 6 - .../org/w3c/dom/svg/SVGPathSegCurvetoCubicAbs.java | 26 - .../org/w3c/dom/svg/SVGPathSegCurvetoCubicRel.java | 26 - .../dom/svg/SVGPathSegCurvetoCubicSmoothAbs.java | 20 - .../dom/svg/SVGPathSegCurvetoCubicSmoothRel.java | 20 - .../w3c/dom/svg/SVGPathSegCurvetoQuadraticAbs.java | 20 - .../w3c/dom/svg/SVGPathSegCurvetoQuadraticRel.java | 20 - .../svg/SVGPathSegCurvetoQuadraticSmoothAbs.java | 14 - .../svg/SVGPathSegCurvetoQuadraticSmoothRel.java | 14 - .../java/org/w3c/dom/svg/SVGPathSegLinetoAbs.java | 14 - .../w3c/dom/svg/SVGPathSegLinetoHorizontalAbs.java | 11 - .../w3c/dom/svg/SVGPathSegLinetoHorizontalRel.java | 11 - .../java/org/w3c/dom/svg/SVGPathSegLinetoRel.java | 14 - .../w3c/dom/svg/SVGPathSegLinetoVerticalAbs.java | 11 - .../w3c/dom/svg/SVGPathSegLinetoVerticalRel.java | 11 - src/bind/java/org/w3c/dom/svg/SVGPathSegList.java | 23 - .../java/org/w3c/dom/svg/SVGPathSegMovetoAbs.java | 14 - .../java/org/w3c/dom/svg/SVGPathSegMovetoRel.java | 14 - .../java/org/w3c/dom/svg/SVGPatternElement.java | 20 - src/bind/java/org/w3c/dom/svg/SVGPoint.java | 15 - src/bind/java/org/w3c/dom/svg/SVGPointList.java | 23 - .../java/org/w3c/dom/svg/SVGPolygonElement.java | 15 - .../java/org/w3c/dom/svg/SVGPolylineElement.java | 15 - .../org/w3c/dom/svg/SVGPreserveAspectRatio.java | 30 - .../org/w3c/dom/svg/SVGRadialGradientElement.java | 11 - src/bind/java/org/w3c/dom/svg/SVGRect.java | 19 - src/bind/java/org/w3c/dom/svg/SVGRectElement.java | 20 - .../java/org/w3c/dom/svg/SVGRenderingIntent.java | 12 - src/bind/java/org/w3c/dom/svg/SVGSVGElement.java | 74 - .../java/org/w3c/dom/svg/SVGScriptElement.java | 13 - src/bind/java/org/w3c/dom/svg/SVGSetElement.java | 6 - src/bind/java/org/w3c/dom/svg/SVGStopElement.java | 8 - src/bind/java/org/w3c/dom/svg/SVGStringList.java | 23 - src/bind/java/org/w3c/dom/svg/SVGStylable.java | 12 - src/bind/java/org/w3c/dom/svg/SVGStyleElement.java | 20 - .../java/org/w3c/dom/svg/SVGSwitchElement.java | 14 - .../java/org/w3c/dom/svg/SVGSymbolElement.java | 13 - src/bind/java/org/w3c/dom/svg/SVGTRefElement.java | 7 - src/bind/java/org/w3c/dom/svg/SVGTSpanElement.java | 6 - src/bind/java/org/w3c/dom/svg/SVGTests.java | 10 - .../org/w3c/dom/svg/SVGTextContentElement.java | 37 - src/bind/java/org/w3c/dom/svg/SVGTextElement.java | 7 - .../java/org/w3c/dom/svg/SVGTextPathElement.java | 19 - .../org/w3c/dom/svg/SVGTextPositioningElement.java | 11 - src/bind/java/org/w3c/dom/svg/SVGTitleElement.java | 8 - src/bind/java/org/w3c/dom/svg/SVGTransform.java | 24 - .../java/org/w3c/dom/svg/SVGTransformList.java | 25 - .../java/org/w3c/dom/svg/SVGTransformable.java | 7 - src/bind/java/org/w3c/dom/svg/SVGURIReference.java | 6 - src/bind/java/org/w3c/dom/svg/SVGUnitTypes.java | 9 - src/bind/java/org/w3c/dom/svg/SVGUseElement.java | 21 - src/bind/java/org/w3c/dom/svg/SVGVKernElement.java | 6 - src/bind/java/org/w3c/dom/svg/SVGViewElement.java | 10 - src/bind/java/org/w3c/dom/svg/SVGViewSpec.java | 13 - src/bind/java/org/w3c/dom/svg/SVGZoomAndPan.java | 15 - src/bind/java/org/w3c/dom/svg/SVGZoomEvent.java | 13 - src/bind/java/org/w3c/dom/views/AbstractView.java | 27 - src/bind/java/org/w3c/dom/views/DocumentView.java | 30 - src/bind/javabind-private.h | 147 -- src/bind/javabind.cpp | 1209 ------------ src/bind/javabind.h | 405 ---- src/bind/javainc/jni.h | 1959 -------------------- src/bind/javainc/linux/jni_md.h | 26 - src/bind/javainc/solaris/jni_md.h | 42 - src/bind/javainc/win32/jni_md.h | 37 - src/bind/makefile.in | 17 - src/check-header-compile.in | 1 - src/extension/CMakeLists.txt | 4 - src/extension/script/InkscapeScript.cpp | 223 --- src/extension/script/InkscapeScript.h | 102 - src/extension/script/Makefile_insert | 6 - src/extension/script/makefile.in | 17 - src/menus-skeleton.h | 1 - src/ui/CMakeLists.txt | 2 - src/ui/dialog/Makefile_insert | 2 - src/ui/dialog/dialog-manager.cpp | 3 - src/ui/dialog/scriptdialog.cpp | 255 --- src/ui/dialog/scriptdialog.h | 64 - src/verbs.cpp | 7 - src/verbs.h | 1 - 523 files changed, 1 insertion(+), 32452 deletions(-) delete mode 100644 src/bind/CMakeLists.txt delete mode 100644 src/bind/DomStub.java delete mode 100644 src/bind/Makefile_insert delete mode 100644 src/bind/dobinding.cpp delete mode 100644 src/bind/java/org/inkscape/cmn/BaseInterface.java delete mode 100644 src/bind/java/org/inkscape/cmn/BaseObject.java delete mode 100644 src/bind/java/org/inkscape/cmn/Gateway.java delete mode 100644 src/bind/java/org/inkscape/cmn/Resource.java delete mode 100644 src/bind/java/org/inkscape/dom/AttrImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/CDATASectionImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/CharacterDataImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/CommentImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/DOMBase.java delete mode 100644 src/bind/java/org/inkscape/dom/DOMConfigurationImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/DOMErrorHandlerImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/DOMErrorImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/DOMImplementationImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/DOMImplementationListImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/DOMImplementationSourceImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/DOMLocatorImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/DOMStringListImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/DocumentFragmentImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/DocumentImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/DocumentTypeImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/ElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/EntityImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/EntityReferenceImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/NameListImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/NamedNodeMapImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/NodeImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/NodeListImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/NotationImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/ProcessingInstructionImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/TextImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/TypeInfoImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/UserDataHandlerImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/css/CSS2PropertiesImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/css/CSSCharsetRuleImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/css/CSSFontFaceRuleImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/css/CSSImportRuleImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/css/CSSMediaRuleImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/css/CSSPageRuleImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/css/CSSPrimitiveValueImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/css/CSSRuleImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/css/CSSRuleListImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/css/CSSStyleDeclarationImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/css/CSSStyleRuleImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/css/CSSStyleSheetImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/css/CSSUnknownRuleImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/css/CSSValueImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/css/CSSValueListImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/css/CounterImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/css/DOMImplementationCSSImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/css/DocumentCSSImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/css/ElementCSSInlineStyleImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/css/RGBColorImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/css/RectImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/css/ViewCSSImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/events/CustomEventImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/events/DocumentEventImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/events/EventImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/events/EventListenerImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/events/EventTargetImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/events/KeyboardEventImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/events/MouseEventImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/events/MutationEventImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/events/MutationNameEventImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/events/TextEventImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/events/UIEventImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/ElementExclusiveTimeContainerImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/ElementLayoutImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/ElementParallelTimeContainerImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/ElementSequentialTimeContainerImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/ElementSyncBehaviorImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/ElementTargetAttributesImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/ElementTestImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/ElementTimeContainerImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/ElementTimeControlImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/ElementTimeImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/ElementTimeManipulationImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/SMILAnimateColorElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/SMILAnimateElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/SMILAnimateMotionElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/SMILAnimationImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/SMILDocumentImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/SMILElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/SMILLayoutElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/SMILMediaElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/SMILRefElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/SMILRegionElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/SMILRegionInterfaceImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/SMILRootLayoutElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/SMILSetElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/SMILSwitchElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/SMILTopLayoutElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/TimeEventImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/TimeImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/smil/TimeListImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/stylesheets/DocumentStyleImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/stylesheets/LinkStyleImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/stylesheets/MediaListImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/stylesheets/StyleSheetImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/stylesheets/StyleSheetListImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/GetSVGDocumentImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGAElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGAltGlyphDefElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGAltGlyphElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGAltGlyphItemElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGAngleImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGAnimateColorElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGAnimateElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGAnimateMotionElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGAnimateTransformElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGAnimatedAngleImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGAnimatedBooleanImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGAnimatedEnumerationImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGAnimatedIntegerImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGAnimatedLengthImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGAnimatedLengthListImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGAnimatedNumberImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGAnimatedNumberListImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGAnimatedPathDataImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGAnimatedPointsImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGAnimatedPreserveAspectRatioImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGAnimatedRectImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGAnimatedStringImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGAnimatedTransformListImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGAnimationElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGCSSRuleImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGCircleElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGClipPathElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGColorImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGColorProfileElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGColorProfileRuleImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGComponentTransferFunctionElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGCursorElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGDefinitionSrcElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGDefsElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGDescElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGDocumentImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGElementInstanceImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGElementInstanceListImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGEllipseElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGEventImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGExternalResourcesRequiredImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFEBlendElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFEColorMatrixElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFEComponentTransferElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFECompositeElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFEConvolveMatrixElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFEDiffuseLightingElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFEDisplacementMapElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFEDistantLightElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFEFloodElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFEFuncAElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFEFuncBElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFEFuncGElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFEFuncRElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFEGaussianBlurElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFEImageElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFEMergeElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFEMergeNodeElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFEMorphologyElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFEOffsetElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFEPointLightElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFESpecularLightingElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFESpotLightElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFETileElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFETurbulenceElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFilterElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFilterPrimitiveStandardAttributesImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFitToViewBoxImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFontElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFontFaceElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFontFaceFormatElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFontFaceNameElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFontFaceSrcElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGFontFaceUriElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGForeignObjectElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGGElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGGlyphElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGGlyphRefElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGGradientElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGHKernElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGICCColorImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGImageElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGLangSpaceImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGLengthImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGLengthListImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGLineElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGLinearGradientElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGLocatableImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGMPathElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGMarkerElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGMaskElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGMatrixImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGMetadataElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGMissingGlyphElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGNumberImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGNumberListImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPaintImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPathElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPathSegArcAbsImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPathSegArcRelImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPathSegClosePathImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoCubicAbsImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoCubicRelImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoCubicSmoothAbsImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoCubicSmoothRelImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoQuadraticAbsImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoQuadraticRelImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoQuadraticSmoothAbsImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoQuadraticSmoothRelImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPathSegImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPathSegLinetoAbsImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPathSegLinetoHorizontalAbsImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPathSegLinetoHorizontalRelImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPathSegLinetoRelImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPathSegLinetoVerticalAbsImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPathSegLinetoVerticalRelImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPathSegListImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPathSegMovetoAbsImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPathSegMovetoRelImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPatternElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPointImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPointListImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPolygonElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPolylineElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGPreserveAspectRatioImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGRadialGradientElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGRectElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGRectImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGRenderingIntentImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGSVGElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGScriptElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGSetElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGStopElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGStringListImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGStylableImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGStyleElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGSwitchElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGSymbolElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGTRefElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGTSpanElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGTestsImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGTextContentElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGTextElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGTextPathElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGTextPositioningElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGTitleElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGTransformImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGTransformListImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGTransformableImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGURIReferenceImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGUnitTypesImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGUseElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGVKernElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGViewElementImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGViewSpecImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGZoomAndPanImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/svg/SVGZoomEventImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/views/AbstractViewImpl.java delete mode 100644 src/bind/java/org/inkscape/dom/views/DocumentViewImpl.java delete mode 100644 src/bind/java/org/inkscape/script/Editor.java delete mode 100644 src/bind/java/org/inkscape/script/ScriptConsole.java delete mode 100644 src/bind/java/org/inkscape/script/Terminal.java delete mode 100644 src/bind/java/org/w3c/dom/css/CSS2Properties.java delete mode 100644 src/bind/java/org/w3c/dom/css/CSSCharsetRule.java delete mode 100644 src/bind/java/org/w3c/dom/css/CSSFontFaceRule.java delete mode 100644 src/bind/java/org/w3c/dom/css/CSSImportRule.java delete mode 100644 src/bind/java/org/w3c/dom/css/CSSMediaRule.java delete mode 100644 src/bind/java/org/w3c/dom/css/CSSPageRule.java delete mode 100644 src/bind/java/org/w3c/dom/css/CSSPrimitiveValue.java delete mode 100644 src/bind/java/org/w3c/dom/css/CSSRule.java delete mode 100644 src/bind/java/org/w3c/dom/css/CSSRuleList.java delete mode 100644 src/bind/java/org/w3c/dom/css/CSSStyleDeclaration.java delete mode 100644 src/bind/java/org/w3c/dom/css/CSSStyleRule.java delete mode 100644 src/bind/java/org/w3c/dom/css/CSSStyleSheet.java delete mode 100644 src/bind/java/org/w3c/dom/css/CSSUnknownRule.java delete mode 100644 src/bind/java/org/w3c/dom/css/CSSValue.java delete mode 100644 src/bind/java/org/w3c/dom/css/CSSValueList.java delete mode 100644 src/bind/java/org/w3c/dom/css/Counter.java delete mode 100644 src/bind/java/org/w3c/dom/css/DOMImplementationCSS.java delete mode 100644 src/bind/java/org/w3c/dom/css/DocumentCSS.java delete mode 100644 src/bind/java/org/w3c/dom/css/ElementCSSInlineStyle.java delete mode 100644 src/bind/java/org/w3c/dom/css/RGBColor.java delete mode 100644 src/bind/java/org/w3c/dom/css/Rect.java delete mode 100644 src/bind/java/org/w3c/dom/css/ViewCSS.java delete mode 100644 src/bind/java/org/w3c/dom/events/CustomEvent.java delete mode 100644 src/bind/java/org/w3c/dom/events/DocumentEvent.java delete mode 100644 src/bind/java/org/w3c/dom/events/Event.java delete mode 100644 src/bind/java/org/w3c/dom/events/EventException.java delete mode 100644 src/bind/java/org/w3c/dom/events/EventListener.java delete mode 100644 src/bind/java/org/w3c/dom/events/EventTarget.java delete mode 100644 src/bind/java/org/w3c/dom/events/KeyboardEvent.java delete mode 100644 src/bind/java/org/w3c/dom/events/MouseEvent.java delete mode 100644 src/bind/java/org/w3c/dom/events/MutationEvent.java delete mode 100644 src/bind/java/org/w3c/dom/events/MutationNameEvent.java delete mode 100644 src/bind/java/org/w3c/dom/events/TextEvent.java delete mode 100644 src/bind/java/org/w3c/dom/events/UIEvent.java delete mode 100644 src/bind/java/org/w3c/dom/smil/ElementExclusiveTimeContainer.java delete mode 100644 src/bind/java/org/w3c/dom/smil/ElementLayout.java delete mode 100644 src/bind/java/org/w3c/dom/smil/ElementParallelTimeContainer.java delete mode 100644 src/bind/java/org/w3c/dom/smil/ElementSequentialTimeContainer.java delete mode 100644 src/bind/java/org/w3c/dom/smil/ElementSyncBehavior.java delete mode 100644 src/bind/java/org/w3c/dom/smil/ElementTargetAttributes.java delete mode 100644 src/bind/java/org/w3c/dom/smil/ElementTest.java delete mode 100644 src/bind/java/org/w3c/dom/smil/ElementTime.java delete mode 100644 src/bind/java/org/w3c/dom/smil/ElementTimeContainer.java delete mode 100644 src/bind/java/org/w3c/dom/smil/ElementTimeControl.java delete mode 100644 src/bind/java/org/w3c/dom/smil/ElementTimeManipulation.java delete mode 100644 src/bind/java/org/w3c/dom/smil/SMILAnimateColorElement.java delete mode 100644 src/bind/java/org/w3c/dom/smil/SMILAnimateElement.java delete mode 100644 src/bind/java/org/w3c/dom/smil/SMILAnimateMotionElement.java delete mode 100644 src/bind/java/org/w3c/dom/smil/SMILAnimation.java delete mode 100644 src/bind/java/org/w3c/dom/smil/SMILDocument.java delete mode 100644 src/bind/java/org/w3c/dom/smil/SMILElement.java delete mode 100644 src/bind/java/org/w3c/dom/smil/SMILLayoutElement.java delete mode 100644 src/bind/java/org/w3c/dom/smil/SMILMediaElement.java delete mode 100644 src/bind/java/org/w3c/dom/smil/SMILRefElement.java delete mode 100644 src/bind/java/org/w3c/dom/smil/SMILRegionElement.java delete mode 100644 src/bind/java/org/w3c/dom/smil/SMILRegionInterface.java delete mode 100644 src/bind/java/org/w3c/dom/smil/SMILRootLayoutElement.java delete mode 100644 src/bind/java/org/w3c/dom/smil/SMILSetElement.java delete mode 100644 src/bind/java/org/w3c/dom/smil/SMILSwitchElement.java delete mode 100644 src/bind/java/org/w3c/dom/smil/SMILTopLayoutElement.java delete mode 100644 src/bind/java/org/w3c/dom/smil/Time.java delete mode 100644 src/bind/java/org/w3c/dom/smil/TimeEvent.java delete mode 100644 src/bind/java/org/w3c/dom/smil/TimeList.java delete mode 100644 src/bind/java/org/w3c/dom/stylesheets/DocumentStyle.java delete mode 100644 src/bind/java/org/w3c/dom/stylesheets/LinkStyle.java delete mode 100644 src/bind/java/org/w3c/dom/stylesheets/MediaList.java delete mode 100644 src/bind/java/org/w3c/dom/stylesheets/StyleSheet.java delete mode 100644 src/bind/java/org/w3c/dom/stylesheets/StyleSheetList.java delete mode 100644 src/bind/java/org/w3c/dom/svg/GetSVGDocument.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGAElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGAltGlyphDefElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGAltGlyphElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGAltGlyphItemElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGAngle.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGAnimateColorElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGAnimateElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGAnimateMotionElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGAnimateTransformElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGAnimatedAngle.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGAnimatedBoolean.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGAnimatedEnumeration.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGAnimatedInteger.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGAnimatedLength.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGAnimatedLengthList.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGAnimatedNumber.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGAnimatedNumberList.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGAnimatedPathData.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGAnimatedPoints.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGAnimatedPreserveAspectRatio.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGAnimatedRect.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGAnimatedString.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGAnimatedTransformList.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGAnimationElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGCSSRule.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGCircleElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGClipPathElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGColor.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGColorProfileElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGColorProfileRule.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGComponentTransferFunctionElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGCursorElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGDefinitionSrcElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGDefsElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGDescElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGDocument.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGElementInstance.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGElementInstanceList.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGEllipseElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGEvent.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGException.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGExternalResourcesRequired.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFEBlendElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFEColorMatrixElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFEComponentTransferElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFECompositeElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFEConvolveMatrixElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFEDiffuseLightingElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFEDisplacementMapElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFEDistantLightElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFEFloodElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFEFuncAElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFEFuncBElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFEFuncGElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFEFuncRElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFEGaussianBlurElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFEImageElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFEMergeElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFEMergeNodeElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFEMorphologyElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFEOffsetElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFEPointLightElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFESpecularLightingElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFESpotLightElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFETileElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFETurbulenceElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFilterElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFilterPrimitiveStandardAttributes.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFitToViewBox.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFontElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFontFaceElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFontFaceFormatElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFontFaceNameElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFontFaceSrcElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGFontFaceUriElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGForeignObjectElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGGElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGGlyphElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGGlyphRefElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGGradientElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGHKernElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGICCColor.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGImageElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGLangSpace.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGLength.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGLengthList.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGLineElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGLinearGradientElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGLocatable.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGMPathElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGMarkerElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGMaskElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGMatrix.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGMetadataElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGMissingGlyphElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGNumber.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGNumberList.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPaint.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPathElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPathSeg.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPathSegArcAbs.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPathSegArcRel.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPathSegClosePath.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoCubicAbs.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoCubicRel.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoCubicSmoothAbs.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoCubicSmoothRel.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoQuadraticAbs.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoQuadraticRel.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoQuadraticSmoothAbs.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoQuadraticSmoothRel.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPathSegLinetoAbs.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPathSegLinetoHorizontalAbs.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPathSegLinetoHorizontalRel.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPathSegLinetoRel.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPathSegLinetoVerticalAbs.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPathSegLinetoVerticalRel.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPathSegList.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPathSegMovetoAbs.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPathSegMovetoRel.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPatternElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPoint.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPointList.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPolygonElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPolylineElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGPreserveAspectRatio.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGRadialGradientElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGRect.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGRectElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGRenderingIntent.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGSVGElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGScriptElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGSetElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGStopElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGStringList.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGStylable.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGStyleElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGSwitchElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGSymbolElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGTRefElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGTSpanElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGTests.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGTextContentElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGTextElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGTextPathElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGTextPositioningElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGTitleElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGTransform.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGTransformList.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGTransformable.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGURIReference.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGUnitTypes.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGUseElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGVKernElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGViewElement.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGViewSpec.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGZoomAndPan.java delete mode 100644 src/bind/java/org/w3c/dom/svg/SVGZoomEvent.java delete mode 100644 src/bind/java/org/w3c/dom/views/AbstractView.java delete mode 100644 src/bind/java/org/w3c/dom/views/DocumentView.java delete mode 100644 src/bind/javabind-private.h delete mode 100644 src/bind/javabind.cpp delete mode 100644 src/bind/javabind.h delete mode 100644 src/bind/javainc/jni.h delete mode 100644 src/bind/javainc/linux/jni_md.h delete mode 100644 src/bind/javainc/solaris/jni_md.h delete mode 100644 src/bind/javainc/win32/jni_md.h delete mode 100644 src/bind/makefile.in delete mode 100644 src/extension/script/InkscapeScript.cpp delete mode 100644 src/extension/script/InkscapeScript.h delete mode 100644 src/extension/script/Makefile_insert delete mode 100644 src/extension/script/makefile.in delete mode 100644 src/ui/dialog/scriptdialog.cpp delete mode 100644 src/ui/dialog/scriptdialog.h diff --git a/build.xml b/build.xml index f22186b0d..defb02782 100644 --- a/build.xml +++ b/build.xml @@ -92,9 +92,6 @@ - - - - - @@ -392,8 +387,6 @@ -I${devlibs}/python/include - - -I${src}/bind/javainc -I${src}/bind/javainc/win32 @@ -840,54 +833,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/configure.ac b/configure.ac index 2c98d8239..6dddb64e3 100644 --- a/configure.ac +++ b/configure.ac @@ -1021,7 +1021,6 @@ AC_CONFIG_FILES([ Makefile src/Makefile src/check-header-compile -src/bind/makefile src/debug/makefile src/dialogs/makefile src/display/makefile @@ -1029,7 +1028,6 @@ src/dom/makefile src/extension/implementation/makefile src/extension/internal/makefile src/extension/makefile -src/extension/script/makefile src/extension/dbus/wrapper/inkdbus.pc src/filters/makefile src/helper/makefile diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index fa54940db..87f223150 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -538,7 +538,6 @@ list(APPEND inkscape_SRC # All folders for internal inkscape # these call add_inkscape_source -add_subdirectory(bind) add_subdirectory(debug) add_subdirectory(dialogs) add_subdirectory(display) diff --git a/src/Makefile.am b/src/Makefile.am index b9ec53ab1..3a937d58b 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -82,8 +82,6 @@ AM_CPPFLAGS = \ $(INKSCAPE_CFLAGS) \ -I$(top_srcdir)/cxxtest \ $(WIN32_CFLAGS) \ - -I$(srcdir)/bind/javainc \ - -I$(srcdir)/bind/javainc/linux \ -I$(builddir)/extension/dbus \ $(X11_CFLAGS) @@ -107,7 +105,6 @@ endif # Include all partial makefiles from subdirectories include Makefile_insert -include bind/Makefile_insert include dialogs/Makefile_insert include display/Makefile_insert include dom/Makefile_insert @@ -115,7 +112,6 @@ include extension/Makefile_insert include extension/dbus/Makefile_insert include extension/implementation/Makefile_insert include extension/internal/Makefile_insert -include extension/script/Makefile_insert include filters/Makefile_insert include helper/Makefile_insert include io/Makefile_insert @@ -147,7 +143,6 @@ EXTRA_DIST += \ $(top_srcdir)/Doxyfile \ sp-skeleton.cpp sp-skeleton.h \ util/makefile.in \ - bind/makefile.in \ debug/makefile.in \ dialogs/makefile.in \ display/makefile.in \ @@ -155,7 +150,6 @@ EXTRA_DIST += \ extension/implementation/makefile.in \ extension/internal/makefile.in \ extension/makefile.in \ - extension/script/makefile.in \ filters/makefile.in \ helper/makefile.in \ io/makefile.in \ diff --git a/src/bind/CMakeLists.txt b/src/bind/CMakeLists.txt deleted file mode 100644 index 9b6abad4f..000000000 --- a/src/bind/CMakeLists.txt +++ /dev/null @@ -1,18 +0,0 @@ - -set(bind_SRC - dobinding.cpp - javabind.cpp - - - # ------- - # Headers - javabind-private.h - javabind.h - javainc/jni.h - javainc/linux/jni_md.h - javainc/solaris/jni_md.h - javainc/win32/jni_md.h -) - -# add_inkscape_lib(bind_LIB "${bind_SRC}") -add_inkscape_source("${bind_SRC}") diff --git a/src/bind/DomStub.java b/src/bind/DomStub.java deleted file mode 100644 index df82e5012..000000000 --- a/src/bind/DomStub.java +++ /dev/null @@ -1,299 +0,0 @@ - -import java.io.*; -import java.util.HashMap; -import java.util.ArrayList; -import java.util.Collections; - - -/** - * This is not an actual java binding class. Rather, it is - * a simple tool for generating C++ native method stubs from classfiles - */ -public class DomStub -{ - -class MethodEntry -{ -ArrayList parms; -String name; -String type; - -public void addParam(String type) -{ - parms.add(type); -} - -public MethodEntry(String methodName, String type) -{ - this.name = methodName; - this.type = type; - parms = new ArrayList(); -} -} - - -class ClassEntry -{ -ArrayList methods; -String name; - -public void addMethod(MethodEntry method) -{ - methods.add(method); -} - -public ClassEntry(String className) -{ - this.name = className; - methods = new ArrayList(); -} -} - - -HashMap classes; - - -BufferedWriter out; - -void err(String msg) -{ - System.out.println("DomStub err:" + msg); -} - -void trace(String msg) -{ - System.out.println("DomStub:" + msg); -} - -void po(String msg) -{ - try - { - out.write(msg); - } - catch (IOException e) - { - } -} - - -//######################################################################## -//# G E N E R A T E -//######################################################################## - -void dumpClasses() -{ - for (ClassEntry ce : classes.values()) - { - trace("########################"); - trace("Class " + ce.name); - for (MethodEntry me : ce.methods) - { - trace(" " + me.type + " " + me.name); - for (String parm : me.parms) - { - trace(" " + parm); - } - } - } -} - - -void generateMethod(MethodEntry me) -{ - po("/**\n"); - po(" * Method : " + me.name + "\n"); - po(" */\n"); - for (String parm : me.parms) - { - po(" " + parm + "\n"); - } - -} - -void generateClass(ClassEntry ce) -{ - po("//################################################################\n"); - po("//## " + ce.name + "\n"); - po("//################################################################\n"); - - for (MethodEntry me : ce.methods) - generateMethod(me); - -} - - -void generate() -{ - ArrayList classNames = new ArrayList(classes.keySet()); - Collections.sort(classNames); - for (String key : classNames) - { - ClassEntry ce = classes.get(key); - generateClass(ce); - } -} - -//######################################################################## -//# P A R S E -//######################################################################## -boolean parseEntry(String className, String methodName, String signature) -{ - //trace("Decl :" + methodDecl); - //trace("params:" + params); - //################################# - //# Parse class and method lines - //################################# - String s = className.substring(14); - className = s.replace('_', '/'); - methodName = methodName.substring(14); - signature = signature.substring(14); - //trace("className : " + className); - //trace("methodName : " + methodName); - - int pos = signature.indexOf('('); - if (pos<0) - { - err("no opening ( for signature"); - return false; - } - pos++; - int p2 = signature.indexOf(')', pos); - if (p2<0) - { - err("no closing ) for signature"); - return false; - } - String parms = signature.substring(pos, p2); - String type = signature.substring(p2+1); - //################################# - //# create method entry. add to new or existing class - //################################# - MethodEntry method = new MethodEntry(methodName, type); - - ClassEntry clazz = classes.get(className); - if (clazz == null) - { - clazz = new ClassEntry(className); - classes.put(className, clazz); - } - clazz.addMethod(method); - - //################################# - //# Parse signature line - //################################# - - pos = 0; - int len = parms.length(); - while (pos(); -} - - - -public static void main(String argv[]) -{ - DomStub st = new DomStub(); - boolean ret = st.processFile("out.h"); -} - - -} \ No newline at end of file diff --git a/src/bind/Makefile_insert b/src/bind/Makefile_insert deleted file mode 100644 index b640957d3..000000000 --- a/src/bind/Makefile_insert +++ /dev/null @@ -1,11 +0,0 @@ -## Makefile.am fragment sourced by src/Makefile.am. - -ink_common_sources += \ - bind/javabind.h \ - bind/javabind-private.h \ - bind/javabind.cpp \ - bind/dobinding.cpp \ - bind/javainc/jni.h \ - bind/javainc/linux/jni_md.h \ - bind/javainc/solaris/jni_md.h \ - bind/javainc/win32/jni_md.h diff --git a/src/bind/dobinding.cpp b/src/bind/dobinding.cpp deleted file mode 100644 index 03b16a9dd..000000000 --- a/src/bind/dobinding.cpp +++ /dev/null @@ -1,251 +0,0 @@ -/* - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (C) 2007-2008 Bob Jamison - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - */ - - -#include -#include -#include -#include -#include - -#ifdef __WIN32__ -#include -#else -#include -#include -#endif - -#include "javabind.h" -#include "javabind-private.h" - -#include -#include - -namespace Inkscape -{ -namespace Bind -{ - -using namespace org::w3c::dom; - -/** - * This file has the actual C++ --> Java bindings - * This file can get quite large! - */ - -/** - * This struct associates a class name with its native - * bindings. Since C++ does not allow "flexible" arrays, - * we will separate each of the tables into a JNINativeMethod - * array, and a class with a name and a pointer to that array. - */ -typedef struct -{ - const char *className; - JNINativeMethod *methods; -} NativeClass; - -/** - * Although I dislike macros, this one seems reasonable - */ -#define EXCEPTION (getExceptionString(env).c_str()) - -//######################################################################## -//# BASE OBJECT -//######################################################################## - -static jmethodID _getPointer_id = NULL; - -static jlong getPointer(JNIEnv *env, jobject obj) -{ - if (!_getPointer_id) - { - _getPointer_id = env->GetMethodID(env->GetObjectClass(obj), "getPointer", "()J"); - if (!_getPointer_id) - { - err("getPointer(): %s", EXCEPTION); - return 0; - } - } - jlong val = env->CallLongMethod(obj, _getPointer_id); - return val; -} - - -static jmethodID _setPointer_id = NULL; - -static void setPointer(JNIEnv *env, jobject obj, jlong val) -{ - if (!_setPointer_id) - { - _setPointer_id = env->GetMethodID(env->GetObjectClass(obj), "setPointer", "(J)V"); - if (!_setPointer_id) - { - err("setPointer(): %s", EXCEPTION); - return; - } - } - env->CallVoidMethod(obj, _setPointer_id, val); -} - - -static void JNICALL BaseObject_construct (JNIEnv *env, jobject obj) -{ - setPointer(env, obj, 0L); -} - -static void JNICALL BaseObject_destruct (JNIEnv *env, jobject obj) -{ - BaseObject *ptr = reinterpret_cast(getPointer(env, obj)); - if (ptr) - { - delete ptr; - } - setPointer(env, obj, 0L); -} - - -static JNINativeMethod nm_BaseObject[] = -{ -{ (char *)"construct", (char *)"()V", (void *)BaseObject_construct }, -{ (char *)"destruct", (char *)"()V", (void *)BaseObject_destruct }, -{ NULL, NULL, NULL } -}; - -static NativeClass nc_BaseObject = -{ - "org/inkscape/cmn/BaseObject", - nm_BaseObject -}; - -//######################################################################## -//# BASE OBJECT -//######################################################################## - -static void JNICALL DOMBase_construct - (JNIEnv *env, jobject obj) -{ - setPointer(env, obj, 0L); -} - -static void JNICALL DOMBase_destruct - (JNIEnv *env, jobject obj) -{ - NodePtr *ptr = reinterpret_cast(getPointer(env, obj)); - if (ptr) - { - delete ptr; - } - setPointer(env, obj, 0L); -} - - -static JNINativeMethod nm_DOMBase[] = -{ -{ (char *)"construct", (char *)"()V", (void *)DOMBase_construct }, -{ (char *)"destruct", (char *)"()V", (void *)DOMBase_destruct }, -{ NULL, NULL, NULL } -}; - -static NativeClass nc_DOMBase = -{ - "org/inkscape/dom/DOMBase", - nm_DOMBase -}; - - -//######################################################################## -//# DOMImplementation -//######################################################################## - - -static void JNICALL DOMImplementation_nCreateDocument - (JNIEnv *env, jobject obj) -{ - DOMImplementationImpl domImpl; - DocumentTypePtr docType = domImpl.createDocumentType("", "", ""); - DocumentPtr doc = domImpl.createDocument("", "", docType); - DocumentPtr *ptr = new DocumentPtr(doc); - setPointer(env, obj, (jlong)ptr); -} - - - -static JNINativeMethod nm_DOMImplementation[] = -{ -{ (char *)"construct", (char *)"()V", (void *)DOMImplementation_nCreateDocument }, -{ NULL, NULL, NULL } -}; - -static NativeClass nc_DOMImplementation = -{ - "org/inkscape/dom/DOMImplementation", - nm_DOMImplementation -}; - - - -//######################################################################## -//# MAIN -//######################################################################## - - -/** - * This is a table-of-tables, matching a class name to its - * table of native methods. We can probably think of a cleaner way - * of doing this - */ -static NativeClass *allClasses[] = -{ - &nc_BaseObject, - &nc_DOMBase, - &nc_DOMImplementation, - NULL -}; - - - -bool JavaBinderyImpl::doBinding() -{ - for (NativeClass **nc = allClasses ; *nc ; nc++) - { - bool ret = registerNatives((*nc)->className, (*nc)->methods); - if (!ret) - { - err("Could not bind native methods"); - return false; - } - } - return true; -} - - - - -} // namespace Bind -} // namespace Inkscape - -//######################################################################## -//# E N D O F F I L E -//######################################################################## diff --git a/src/bind/java/org/inkscape/cmn/BaseInterface.java b/src/bind/java/org/inkscape/cmn/BaseInterface.java deleted file mode 100644 index 2cc1228f5..000000000 --- a/src/bind/java/org/inkscape/cmn/BaseInterface.java +++ /dev/null @@ -1,85 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (C) 2007-2008 Bob Jamison - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - */ - -package org.inkscape.cmn; - -/** - * A BaseInterface is not an object of its down, but is owned - * by a parent BaseObject. It has no mapping to a C++ object of - * its own, but is merely the delegate that a BaseObject calls. - * This is how we provide some semblance of multiple inheritance, - * and keep the native method count down. - */ -public class BaseInterface extends BaseObject -{ -BaseObject parent; - - -public void setParent(BaseObject par) -{ - parent = par; -} - -/** - * Overloaded. getPointer() means that -any- java instance rooted on - * either BaseObject or BaseInterface can call getPointer() to get the - * handle to the associated C++ object pointer. The difference is that - * BaseObject holds the actual pointer, while BaseInterface refers to - * its owner BaseObject. - */ -protected long getPointer() -{ - if (parent == null) - return 0L; - else - return parent.getPointer(); -} - -/** - * Since this is an interface, construct() - * means nothing. Nothing must happen - */ -protected void construct() -{ -} - -/** - * Since this is an interface, destruct() - * means nothing. Nothing must happen - */ -protected void destruct() -{ -} - - -/** - * Instances of this "interface" can only exist parasitically attached - * to a BaseObject - */ -public BaseInterface() -{ - setParent(null); -} - -} diff --git a/src/bind/java/org/inkscape/cmn/BaseObject.java b/src/bind/java/org/inkscape/cmn/BaseObject.java deleted file mode 100644 index b2c7aac8f..000000000 --- a/src/bind/java/org/inkscape/cmn/BaseObject.java +++ /dev/null @@ -1,81 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (C) 2007-2008 Bob Jamison - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - */ - -package org.inkscape.cmn; - -/** - * This is the base of all classes which map to a corresponding - * C++ object. The _pointer value is storage for the C++ object's - * pointer. Construct() and destruct() are called for when things - * need to be setup or cleaned up on the C++ side during creation or - * destruction of this object. - * - * @see BaseInterface for how we add multiple inheritance to classes - * which are rooted on this class. - */ -public class BaseObject -{ - -private long _pointer; - -/** - * getPointer() means that -any- java instance rooted on - * either BaseObject or BaseInterface can call getPointer() to get the - * handle to the associated C++ object pointer. The difference is that - * BaseObject holds the actual pointer, while BaseInterface refers to - * its owner BaseObject. - */ -protected long getPointer() -{ - return _pointer; -} - -/** - * sets the pointer to the associated C++ object to a new value - */ -protected void setPointer(long val) -{ - _pointer = val; -} - -protected native void construct(); - -protected native void destruct(); - -protected BaseInterface imbue(BaseInterface intf) -{ - intf.setParent(this); - return intf; -} - - -/** - * Simple constructor - */ -public BaseObject() -{ - construct(); -} - -} diff --git a/src/bind/java/org/inkscape/cmn/Gateway.java b/src/bind/java/org/inkscape/cmn/Gateway.java deleted file mode 100644 index fa70d2b7d..000000000 --- a/src/bind/java/org/inkscape/cmn/Gateway.java +++ /dev/null @@ -1,346 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (C) 2007-2008 Bob Jamison - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - */ - -package org.inkscape.cmn; - -import java.util.List; -import java.io.FileReader; -import java.io.PrintStream; -import java.io.OutputStream; -import java.io.IOException; -import javax.swing.JOptionPane; - -//####for xml -//read -import org.w3c.dom.Document; -import java.io.ByteArrayInputStream; -import javax.xml.parsers.DocumentBuilder; -import javax.xml.parsers.DocumentBuilderFactory; -//write -import java.io.ByteArrayOutputStream; -import javax.xml.transform.TransformerFactory; -import javax.xml.transform.Transformer; -import javax.xml.transform.dom.DOMSource; -import javax.xml.transform.stream.StreamResult; - -import org.inkscape.script.ScriptConsole; - - - -/** - * Provide a gateway from C to Java, to simplify adding - * interfaces. - */ -public class Gateway -{ -/** - * Pointer back to the BinderyImpl C++ object that launched me - */ -long backPtr; - - -//######################################################################## -//# MESSSAGES -//######################################################################## -void err(String message) -{ - ScriptConsole console = ScriptConsole.getInstance(); - if (console != null) - console.err("Gateway err:" + message); - else - log("Gateway err:" + message); -} - -void msg(String message) -{ - ScriptConsole console = ScriptConsole.getInstance(); - if (console != null) - console.msg("Gateway err:" + message); - else - log("Gateway:" + message); -} - -void trace(String message) -{ - ScriptConsole console = ScriptConsole.getInstance(); - if (console != null) - console.trace("Gateway:" + message); - else - log("Gateway:" + message); -} - - -//######################################################################## -//# U T I L I T Y -//######################################################################## - -/** - * Parse a String to an XML Document - */ -public Document stringToDoc(String xmlStr) -{ - if (xmlStr == null || xmlStr.length()==0) - return null; - Document doc = null; - try - { - DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); - DocumentBuilder parser = factory.newDocumentBuilder(); - doc = parser.parse(new ByteArrayInputStream(xmlStr.getBytes())); - } - catch (java.io.IOException e) - { - err("stringToDoc:" + e); - return null; - } - catch (javax.xml.parsers.ParserConfigurationException e) - { - err("stringToDoc:" + e); - return null; - } - catch (org.xml.sax.SAXException e) - { - err("stringToDoc:" + e); - return null; - } - return doc; -} - - - -/** - * Serialize an XML Document to a string - */ -public String docToString(Document doc) -{ - if (doc == null) - return ""; - String buf = ""; - try - { - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - TransformerFactory factory = TransformerFactory.newInstance(); - Transformer tf = factory.newTransformer(); - tf.transform(new DOMSource(doc), new StreamResult(baos)); - baos.close(); - buf = baos.toString(); - } - catch (java.io.IOException e) - { - err("docToString:" + e); - return null; - } - catch (javax.xml.transform.TransformerConfigurationException e) - { - err("docToString:" + e); - return null; - } - catch (javax.xml.transform.TransformerException e) - { - err("docToString:" + e); - return null; - } - return buf; -} - - -//######################################################################## -//# R E P R (inkscape's xml tree) -//######################################################################## - -private native String documentGet(long backPtr); - -public String documentGet() -{ - return documentGet(backPtr); -} - - -public Document documentGetXml() -{ - String xmlStr = documentGet(); - return stringToDoc(xmlStr); -} - -private native boolean documentSet(long backPtr, String xmlStr); - -public boolean documentSet(String xmlStr) -{ - return documentSet(backPtr, xmlStr); -} - -public boolean documentSetXml(Document doc) -{ - String xmlStr = docToString(doc); - return documentSet(xmlStr); -} - - -//######################################################################## -//# LOGGING STREAM -//######################################################################## - -public native void logWrite(long backptr, int ch); - -class LogStream extends OutputStream -{ - -public void write(int ch) -{ - logWrite(backPtr, ch); -} - -} - -PrintStream log = null; - -/** - * printf-style logging - */ -void log(String fmt, Object... args) -{ - log.printf("Gateway:" + fmt, args); -} - - -//######################################################################## -//# RUN -//######################################################################## - - -/** - * Run a script buffer - * - * @param backPtr pointer back to the C context that called this - * @param lang the scripting language to run - * @param str the script buffer to execute - * @return true if successful, else false - */ -public boolean scriptRun(String lang, String str) -{ - //wrap whole thing in try/catch, since this will - //likely be called from C - try - { - ScriptConsole console = ScriptConsole.getInstance(); - if (console == null) - { - err("ScriptConsole not initialized"); - return false; - } - return console.doRun(lang, str); - } - catch (Exception e) - { - err("run :" + e); - e.printStackTrace(); - return false; - } -} - - -/** - * Run a script file - * - * @param backPtr pointer back to the C context that called this - * @param lang the scripting language to run - * @param fname the script file to execute - * @return true if successful, else false - */ -public boolean scriptRunFile(String lang, String fname) -{ - //wrap whole thing in try/catch, since this will - //likely be called from C - try - { - { - ScriptConsole console = ScriptConsole.getInstance(); - if (console == null) - { - err("ScriptConsole not initialized"); - return false; - } - return console.doRun(lang, fname); - } - } - catch (Exception e) - { - err("scriptRunFile :" + e); - return false; - } -} - - - - - -//######################################################################## -//# C O N S O L E -//######################################################################## - - -public boolean showConsole() -{ - ScriptConsole.getInstance().setVisible(true); - return true; -} - - -//######################################################################## -//# CONSTRUCTOR -//######################################################################## - - - - -/** - * Constructor - * @param backPtr pointer back to the C context that called this - */ -public Gateway(long backPtr) -{ - /** - * Set up the logging stream - */ - log = new PrintStream(new LogStream()); - - //Point back to C++ object - this.backPtr = backPtr; - - _instance = this; -} - -private static Gateway _instance = null; - -public static Gateway getInstance() -{ - return _instance; -} - -} -//######################################################################## -//# E N D O F F I L E -//######################################################################## - - diff --git a/src/bind/java/org/inkscape/cmn/Resource.java b/src/bind/java/org/inkscape/cmn/Resource.java deleted file mode 100644 index 3ad139d8a..000000000 --- a/src/bind/java/org/inkscape/cmn/Resource.java +++ /dev/null @@ -1,66 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (C) 2007-2008 Bob Jamison - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - */ - -package org.inkscape.cmn; - -import java.awt.Image; -import javax.swing.ImageIcon; -import java.net.URL; - - - -/** - * This class will hold various functions for getting a - * resource from the classpath or jarfile - */ -public class Resource -{ - - -public static ImageIcon getIcon(String name) -{ - - String path = "/data/icons/" + name; - URL imgurl = Resource.class.getResource(path); - if (imgurl == null) - { - System.err.println("Icon '" + path + "' not found"); - return null; - } - ImageIcon icon = new ImageIcon(imgurl); - return icon; -} - -public static Image getImage(String name) -{ - - ImageIcon icon = getIcon(name); - if (icon == null) - return null; - return icon.getImage(); -} - - -} - diff --git a/src/bind/java/org/inkscape/dom/AttrImpl.java b/src/bind/java/org/inkscape/dom/AttrImpl.java deleted file mode 100644 index ead12c6c5..000000000 --- a/src/bind/java/org/inkscape/dom/AttrImpl.java +++ /dev/null @@ -1,58 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html - */ - - -package org.inkscape.dom; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.Element; -import org.w3c.dom.TypeInfo; - - -public class AttrImpl - extends NodeImpl - implements org.w3c.dom.Attr -{ - -public native String getName(); - -public native boolean getSpecified(); - -public native String getValue(); - -public native void setValue(String value) - throws DOMException; - -public native Element getOwnerElement(); - -public native TypeInfo getSchemaTypeInfo(); - -public native boolean isId(); - -} diff --git a/src/bind/java/org/inkscape/dom/CDATASectionImpl.java b/src/bind/java/org/inkscape/dom/CDATASectionImpl.java deleted file mode 100644 index 3ac77da54..000000000 --- a/src/bind/java/org/inkscape/dom/CDATASectionImpl.java +++ /dev/null @@ -1,37 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html - */ - - -package org.inkscape.dom; - - -public class CDATASectionImpl - extends TextImpl - implements org.w3c.dom.CDATASection -{ -} diff --git a/src/bind/java/org/inkscape/dom/CharacterDataImpl.java b/src/bind/java/org/inkscape/dom/CharacterDataImpl.java deleted file mode 100644 index 1c540a41c..000000000 --- a/src/bind/java/org/inkscape/dom/CharacterDataImpl.java +++ /dev/null @@ -1,70 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html - */ - - - -package org.inkscape.dom; - -import org.w3c.dom.DOMException; - - - - -public class CharacterDataImpl - extends NodeImpl - implements org.w3c.dom.CharacterData -{ - -public native String getData() - throws DOMException; -public native void setData(String data) - throws DOMException; - -public native int getLength(); - -public native String substringData(int offset, - int count) - throws DOMException; - -public native void appendData(String arg) - throws DOMException; - -public native void insertData(int offset, - String arg) - throws DOMException; - -public native void deleteData(int offset, - int count) - throws DOMException; - -public native void replaceData(int offset, - int count, - String arg) - throws DOMException; - -} diff --git a/src/bind/java/org/inkscape/dom/CommentImpl.java b/src/bind/java/org/inkscape/dom/CommentImpl.java deleted file mode 100644 index 5abe4d14b..000000000 --- a/src/bind/java/org/inkscape/dom/CommentImpl.java +++ /dev/null @@ -1,37 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html - */ - - -package org.inkscape.dom; - - -public class CommentImpl - extends CharacterDataImpl - implements org.w3c.dom.Comment -{ -} diff --git a/src/bind/java/org/inkscape/dom/DOMBase.java b/src/bind/java/org/inkscape/dom/DOMBase.java deleted file mode 100644 index 4ab1409f0..000000000 --- a/src/bind/java/org/inkscape/dom/DOMBase.java +++ /dev/null @@ -1,72 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (C) 2007 Bob Jamison - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - */ - -package org.inkscape.dom; - - - -/** - * This is the base Java class upon which - * all of the DOM classes are rooted - */ -public class DOMBase - extends org.inkscape.cmn.BaseObject -{ - -/** - * @see dobinding.cpp: DOMBase_construct(). - * - * Overloaded from BaseObject so that we can do 'special' construction - */ -protected native void construct(); - -/** - * @see dobinding.cpp: DOMBase_destruct() - * - * Overloaded from BaseObject so that we can do 'special' destruction - */ -protected native void destruct(); - - - -/** - * Overload Object.finalize() so that we - * can perform proper cleanup. - */ -protected void finalize() -{ - destruct(); -} - - -public DOMBase() -{ - construct(); -} - -} -//######################################################################## -//# E N D O F F I L E -//######################################################################## - diff --git a/src/bind/java/org/inkscape/dom/DOMConfigurationImpl.java b/src/bind/java/org/inkscape/dom/DOMConfigurationImpl.java deleted file mode 100644 index 23ed58628..000000000 --- a/src/bind/java/org/inkscape/dom/DOMConfigurationImpl.java +++ /dev/null @@ -1,53 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html - */ - -package org.inkscape.dom; - -import org.w3c.dom.DOMException; -import org.w3c.dom.DOMStringList; - - - - -public class DOMConfigurationImpl - implements org.w3c.dom.DOMConfiguration -{ - -public native void setParameter(String name, - Object value) - throws DOMException; - -public native Object getParameter(String name) - throws DOMException; - -public native boolean canSetParameter(String name, - Object value); - -public native DOMStringList getParameterNames(); - -} diff --git a/src/bind/java/org/inkscape/dom/DOMErrorHandlerImpl.java b/src/bind/java/org/inkscape/dom/DOMErrorHandlerImpl.java deleted file mode 100644 index 5cdbe2ee9..000000000 --- a/src/bind/java/org/inkscape/dom/DOMErrorHandlerImpl.java +++ /dev/null @@ -1,38 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html - */ - -package org.inkscape.dom; - - -public class DOMErrorHandlerImpl - implements org.w3c.dom.DOMErrorHandler -{ - -public native boolean handleError(org.w3c.dom.DOMError error); - -} diff --git a/src/bind/java/org/inkscape/dom/DOMErrorImpl.java b/src/bind/java/org/inkscape/dom/DOMErrorImpl.java deleted file mode 100644 index 80cb09b9b..000000000 --- a/src/bind/java/org/inkscape/dom/DOMErrorImpl.java +++ /dev/null @@ -1,48 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html - */ - -package org.inkscape.dom; - - -public class DOMErrorImpl - implements org.w3c.dom.DOMError -{ - -public native short getSeverity(); - -public native String getMessage(); - -public native String getType(); - -public native Object getRelatedException(); - -public native Object getRelatedData(); - -public native org.w3c.dom.DOMLocator getLocation(); - -} diff --git a/src/bind/java/org/inkscape/dom/DOMImplementationImpl.java b/src/bind/java/org/inkscape/dom/DOMImplementationImpl.java deleted file mode 100644 index 1c4188ed7..000000000 --- a/src/bind/java/org/inkscape/dom/DOMImplementationImpl.java +++ /dev/null @@ -1,60 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html - */ - -package org.inkscape.dom; - -import org.w3c.dom.DOMException; -import org.w3c.dom.Document; -import org.w3c.dom.DocumentType; - - - -public class DOMImplementationImpl - implements org.w3c.dom.DOMImplementation -{ - -public native boolean hasFeature(String feature, - String version); - - -public native DocumentType createDocumentType(String qualifiedName, - String publicId, - String systemId) - throws DOMException; - - -public native Document createDocument(String namespaceURI, - String qualifiedName, - DocumentType doctype) - throws DOMException; - - -public native Object getFeature(String feature, - String version); - -} diff --git a/src/bind/java/org/inkscape/dom/DOMImplementationListImpl.java b/src/bind/java/org/inkscape/dom/DOMImplementationListImpl.java deleted file mode 100644 index 35bee53d2..000000000 --- a/src/bind/java/org/inkscape/dom/DOMImplementationListImpl.java +++ /dev/null @@ -1,43 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html - */ - -package org.inkscape.dom; - -import org.w3c.dom.DOMImplementation; - - -public class DOMImplementationListImpl - implements org.w3c.dom.DOMImplementationList -{ - -public native DOMImplementation item(int index); - - -public native int getLength(); - -} diff --git a/src/bind/java/org/inkscape/dom/DOMImplementationSourceImpl.java b/src/bind/java/org/inkscape/dom/DOMImplementationSourceImpl.java deleted file mode 100644 index a2a2a8f26..000000000 --- a/src/bind/java/org/inkscape/dom/DOMImplementationSourceImpl.java +++ /dev/null @@ -1,41 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html - */ - -package org.inkscape.dom; - -import org.w3c.dom.DOMImplementation; -import org.w3c.dom.DOMImplementationList; - -public class DOMImplementationSourceImpl - implements org.w3c.dom.DOMImplementationSource -{ -public native DOMImplementation getDOMImplementation(String features); - -public native DOMImplementationList getDOMImplementationList(String features); - -} diff --git a/src/bind/java/org/inkscape/dom/DOMLocatorImpl.java b/src/bind/java/org/inkscape/dom/DOMLocatorImpl.java deleted file mode 100644 index c5abe4ca1..000000000 --- a/src/bind/java/org/inkscape/dom/DOMLocatorImpl.java +++ /dev/null @@ -1,48 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html - */ - -package org.inkscape.dom; - - -public class DOMLocatorImpl - implements org.w3c.dom.DOMLocator -{ - -public native int getLineNumber(); - -public native int getColumnNumber(); - -public native int getByteOffset(); - -public native int getUtf16Offset(); - -public native org.w3c.dom.Node getRelatedNode(); - -public native String getUri(); - -} diff --git a/src/bind/java/org/inkscape/dom/DOMStringListImpl.java b/src/bind/java/org/inkscape/dom/DOMStringListImpl.java deleted file mode 100644 index 91c31c574..000000000 --- a/src/bind/java/org/inkscape/dom/DOMStringListImpl.java +++ /dev/null @@ -1,43 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html - */ - -package org.inkscape.dom; - - - -public class DOMStringListImpl - implements org.w3c.dom.DOMStringList -{ - -public native String item(int index); - -public native int getLength(); - -public native boolean contains(String str); - -} diff --git a/src/bind/java/org/inkscape/dom/DocumentFragmentImpl.java b/src/bind/java/org/inkscape/dom/DocumentFragmentImpl.java deleted file mode 100644 index 4148f598e..000000000 --- a/src/bind/java/org/inkscape/dom/DocumentFragmentImpl.java +++ /dev/null @@ -1,36 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html - */ - -package org.inkscape.dom; - - -public class DocumentFragmentImpl - extends NodeImpl - implements org.w3c.dom.DocumentFragment -{ -} diff --git a/src/bind/java/org/inkscape/dom/DocumentImpl.java b/src/bind/java/org/inkscape/dom/DocumentImpl.java deleted file mode 100644 index e381ce573..000000000 --- a/src/bind/java/org/inkscape/dom/DocumentImpl.java +++ /dev/null @@ -1,138 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html - */ - - -package org.inkscape.dom; - -import org.w3c.dom.DOMException; - - -import org.w3c.dom.Attr; -import org.w3c.dom.CDATASection; -import org.w3c.dom.Comment; -import org.w3c.dom.DocumentFragment; -import org.w3c.dom.DocumentType; -import org.w3c.dom.DOMConfiguration; -import org.w3c.dom.DOMImplementation; -import org.w3c.dom.DOMStringList; -import org.w3c.dom.Element; -import org.w3c.dom.EntityReference; -import org.w3c.dom.Node; -import org.w3c.dom.NodeList; -import org.w3c.dom.ProcessingInstruction; -import org.w3c.dom.Text; - - - -public class DocumentImpl - extends NodeImpl - implements org.w3c.dom.Document -{ - -public native DocumentType getDoctype(); - -public native DOMImplementation getImplementation(); - -public native Element getDocumentElement(); - -public native Element createElement(String tagName) - throws DOMException; - -public native DocumentFragment createDocumentFragment(); - -public native Text createTextNode(String data); - -public native Comment createComment(String data); - -public native CDATASection createCDATASection(String data) - throws DOMException; - -public native ProcessingInstruction createProcessingInstruction(String target, - String data) - throws DOMException; - -public native Attr createAttribute(String name) - throws DOMException; - -public native EntityReference createEntityReference(String name) - throws DOMException; - -public native NodeList getElementsByTagName(String tagname); - -public native Node importNode(Node importedNode, - boolean deep) - throws DOMException; - -public native Element createElementNS(String namespaceURI, - String qualifiedName) - throws DOMException; - -public native Attr createAttributeNS(String namespaceURI, - String qualifiedName) - throws DOMException; - -public native NodeList getElementsByTagNameNS(String namespaceURI, - String localName); - -public native Element getElementById(String elementId); - -public native String getInputEncoding(); - -public native String getXmlEncoding(); - -public native boolean getXmlStandalone(); - -public native void setXmlStandalone(boolean xmlStandalone) - throws DOMException; - -public native String getXmlVersion(); - -public native void setXmlVersion(String xmlVersion) - throws DOMException; - -public native boolean getStrictErrorChecking(); - -public native void setStrictErrorChecking(boolean strictErrorChecking); - -public native String getDocumentURI(); - -public native void setDocumentURI(String documentURI); - -public native Node adoptNode(Node source) - throws DOMException; - -public native DOMConfiguration getDomConfig(); - -public native void normalizeDocument(); - -public native Node renameNode(Node n, - String namespaceURI, - String qualifiedName) - throws DOMException; - -} diff --git a/src/bind/java/org/inkscape/dom/DocumentTypeImpl.java b/src/bind/java/org/inkscape/dom/DocumentTypeImpl.java deleted file mode 100644 index d3aa13552..000000000 --- a/src/bind/java/org/inkscape/dom/DocumentTypeImpl.java +++ /dev/null @@ -1,52 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html - */ - -package org.inkscape.dom; - -import org.w3c.dom.NamedNodeMap; - - - -public class DocumentTypeImpl - extends NodeImpl - implements org.w3c.dom.DocumentType -{ - -public native String getName(); - -public native NamedNodeMap getEntities(); - -public native NamedNodeMap getNotations(); - -public native String getPublicId(); - -public native String getSystemId(); - -public native String getInternalSubset(); - -} diff --git a/src/bind/java/org/inkscape/dom/ElementImpl.java b/src/bind/java/org/inkscape/dom/ElementImpl.java deleted file mode 100644 index 9040c6ba4..000000000 --- a/src/bind/java/org/inkscape/dom/ElementImpl.java +++ /dev/null @@ -1,111 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html - */ - -package org.inkscape.dom; - -import org.w3c.dom.DOMException; -import org.w3c.dom.Attr; -import org.w3c.dom.NodeList; -import org.w3c.dom.TypeInfo; - - - - -public class ElementImpl - extends NodeImpl - implements org.w3c.dom.Element - -{ - -public native String getTagName(); - -public native String getAttribute(String name); - -public native void setAttribute(String name, - String value) - throws DOMException; - -public native void removeAttribute(String name) - throws DOMException; - -public native Attr getAttributeNode(String name); - -public native Attr setAttributeNode(Attr newAttr) - throws DOMException; - -public native Attr removeAttributeNode(Attr oldAttr) - throws DOMException; - -public native NodeList getElementsByTagName(String name); - -public native String getAttributeNS(String namespaceURI, - String localName) - throws DOMException; - -public native void setAttributeNS(String namespaceURI, - String qualifiedName, - String value) - throws DOMException; - -public native void removeAttributeNS(String namespaceURI, - String localName) - throws DOMException; - -public native Attr getAttributeNodeNS(String namespaceURI, - String localName) - throws DOMException; - -public native Attr setAttributeNodeNS(Attr newAttr) - throws DOMException; - -public native NodeList getElementsByTagNameNS(String namespaceURI, - String localName) - throws DOMException; - -public native boolean hasAttribute(String name); - -public native boolean hasAttributeNS(String namespaceURI, - String localName) - throws DOMException; - -public native TypeInfo getSchemaTypeInfo(); - -public native void setIdAttribute(String name, - boolean isId) - throws DOMException; - -public native void setIdAttributeNS(String namespaceURI, - String localName, - boolean isId) - throws DOMException; - -public native void setIdAttributeNode(Attr idAttr, - boolean isId) - throws DOMException; - -} diff --git a/src/bind/java/org/inkscape/dom/EntityImpl.java b/src/bind/java/org/inkscape/dom/EntityImpl.java deleted file mode 100644 index 9b86060a6..000000000 --- a/src/bind/java/org/inkscape/dom/EntityImpl.java +++ /dev/null @@ -1,49 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html - */ - -package org.inkscape.dom; - - - -public class EntityImpl - extends NodeImpl - implements org.w3c.dom.Entity -{ -public native String getPublicId(); - -public native String getSystemId(); - -public native String getNotationName(); - -public native String getInputEncoding(); - -public native String getXmlEncoding(); - -public native String getXmlVersion(); - -} diff --git a/src/bind/java/org/inkscape/dom/EntityReferenceImpl.java b/src/bind/java/org/inkscape/dom/EntityReferenceImpl.java deleted file mode 100644 index 32bbe6d58..000000000 --- a/src/bind/java/org/inkscape/dom/EntityReferenceImpl.java +++ /dev/null @@ -1,37 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html - */ - -package org.inkscape.dom; - - - -public class EntityReferenceImpl - extends NodeImpl - implements org.w3c.dom.EntityReference -{ -} diff --git a/src/bind/java/org/inkscape/dom/NameListImpl.java b/src/bind/java/org/inkscape/dom/NameListImpl.java deleted file mode 100644 index e6d1f10fe..000000000 --- a/src/bind/java/org/inkscape/dom/NameListImpl.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html - */ - -package org.inkscape.dom; - - -public class NameListImpl - implements org.w3c.dom.NameList -{ -public native String getName(int index); - -public native String getNamespaceURI(int index); - -public native int getLength(); - -public native boolean contains(String str); - -public native boolean containsNS(String namespaceURI, - String name); - -} diff --git a/src/bind/java/org/inkscape/dom/NamedNodeMapImpl.java b/src/bind/java/org/inkscape/dom/NamedNodeMapImpl.java deleted file mode 100644 index 2ee9a7c1e..000000000 --- a/src/bind/java/org/inkscape/dom/NamedNodeMapImpl.java +++ /dev/null @@ -1,65 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html - */ - -package org.inkscape.dom; - -import org.w3c.dom.DOMException; -import org.w3c.dom.Node; - - - - -public class NamedNodeMapImpl - implements org.w3c.dom.NamedNodeMap -{ - -public native Node getNamedItem(String name); - - -public native Node setNamedItem(Node arg) - throws DOMException; - -public native Node removeNamedItem(String name) - throws DOMException; - -public native Node item(int index); - -public native int getLength(); - -public native Node getNamedItemNS(String namespaceURI, - String localName) - throws DOMException; - -public native Node setNamedItemNS(Node arg) - throws DOMException; - -public native Node removeNamedItemNS(String namespaceURI, - String localName) - throws DOMException; - -} diff --git a/src/bind/java/org/inkscape/dom/NodeImpl.java b/src/bind/java/org/inkscape/dom/NodeImpl.java deleted file mode 100644 index e6071df42..000000000 --- a/src/bind/java/org/inkscape/dom/NodeImpl.java +++ /dev/null @@ -1,139 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html - */ - -package org.inkscape.dom; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.Document; -import org.w3c.dom.NamedNodeMap; -import org.w3c.dom.Node; -import org.w3c.dom.NodeList; -import org.w3c.dom.UserDataHandler; - - - - -public class NodeImpl - extends DOMBase - implements org.w3c.dom.Node -{ - -public native String getNodeName(); - -public native String getNodeValue() - throws DOMException; -public native void setNodeValue(String nodeValue) - throws DOMException; - -public native short getNodeType(); - -public native Node getParentNode(); - -public native NodeList getChildNodes(); - -public native Node getFirstChild(); - -public native Node getLastChild(); - -public native Node getPreviousSibling(); - -public native Node getNextSibling(); - -public native NamedNodeMap getAttributes(); - -public native Document getOwnerDocument(); - -public native Node insertBefore(Node newChild, - Node refChild) - throws DOMException; - -public native Node replaceChild(Node newChild, - Node oldChild) - throws DOMException; - -public native Node removeChild(Node oldChild) - throws DOMException; - -public native Node appendChild(Node newChild) - throws DOMException; - -public native boolean hasChildNodes(); - -public native Node cloneNode(boolean deep); - -public native void normalize(); - -public native boolean isSupported(String feature, - String version); - -public native String getNamespaceURI(); - -public native String getPrefix(); - -public native void setPrefix(String prefix) - throws DOMException; - -public native String getLocalName(); - -public native boolean hasAttributes(); - -public native String getBaseURI(); - - -public native short compareDocumentPosition(Node other) - throws DOMException; - - -public native String getTextContent() - throws DOMException; - -public native void setTextContent(String textContent) - throws DOMException; - - -public native boolean isSameNode(Node other); - -public native String lookupPrefix(String namespaceURI); - -public native boolean isDefaultNamespace(String namespaceURI); - -public native String lookupNamespaceURI(String prefix); - -public native boolean isEqualNode(Node arg); - -public native Object getFeature(String feature, - String version); - -public native Object setUserData(String key, - Object data, - UserDataHandler handler); - -public native Object getUserData(String key); - -} diff --git a/src/bind/java/org/inkscape/dom/NodeListImpl.java b/src/bind/java/org/inkscape/dom/NodeListImpl.java deleted file mode 100644 index 14568cc81..000000000 --- a/src/bind/java/org/inkscape/dom/NodeListImpl.java +++ /dev/null @@ -1,41 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html - */ - -package org.inkscape.dom; - - -public class NodeListImpl - implements org.w3c.dom.NodeList -{ - -public native org.w3c.dom.Node item(int index); - - -public native int getLength(); - -} diff --git a/src/bind/java/org/inkscape/dom/NotationImpl.java b/src/bind/java/org/inkscape/dom/NotationImpl.java deleted file mode 100644 index 326e24f88..000000000 --- a/src/bind/java/org/inkscape/dom/NotationImpl.java +++ /dev/null @@ -1,41 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html - */ - -package org.inkscape.dom; - - -public class NotationImpl - extends NodeImpl - implements org.w3c.dom.Notation -{ - -public native String getPublicId(); - -public native String getSystemId(); - -} diff --git a/src/bind/java/org/inkscape/dom/ProcessingInstructionImpl.java b/src/bind/java/org/inkscape/dom/ProcessingInstructionImpl.java deleted file mode 100644 index db63fd8c0..000000000 --- a/src/bind/java/org/inkscape/dom/ProcessingInstructionImpl.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html - */ - -package org.inkscape.dom; - -import org.w3c.dom.DOMException; - - - -public class ProcessingInstructionImpl - extends NodeImpl - implements org.w3c.dom.ProcessingInstruction -{ - -public native String getTarget(); - -public native String getData(); - -public native void setData(String data) throws DOMException; - -} diff --git a/src/bind/java/org/inkscape/dom/TextImpl.java b/src/bind/java/org/inkscape/dom/TextImpl.java deleted file mode 100644 index 0c0bb79b8..000000000 --- a/src/bind/java/org/inkscape/dom/TextImpl.java +++ /dev/null @@ -1,52 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html - */ - -package org.inkscape.dom; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.Text; - - - -public class TextImpl - extends CharacterDataImpl - implements org.w3c.dom.Text -{ - -public native Text splitText(int offset) - throws DOMException; - -public native boolean isElementContentWhitespace(); - -public native String getWholeText(); - -public native Text replaceWholeText(String content) - throws DOMException; - -} diff --git a/src/bind/java/org/inkscape/dom/TypeInfoImpl.java b/src/bind/java/org/inkscape/dom/TypeInfoImpl.java deleted file mode 100644 index d19f5f6db..000000000 --- a/src/bind/java/org/inkscape/dom/TypeInfoImpl.java +++ /dev/null @@ -1,44 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html - */ - -package org.inkscape.dom; - - -public class TypeInfoImpl - implements org.w3c.dom.TypeInfo -{ - -public native String getTypeName(); - -public native String getTypeNamespace(); - -public native boolean isDerivedFrom(String typeNamespaceArg, - String typeNameArg, - int derivationMethod); - -} diff --git a/src/bind/java/org/inkscape/dom/UserDataHandlerImpl.java b/src/bind/java/org/inkscape/dom/UserDataHandlerImpl.java deleted file mode 100644 index 98ebeae38..000000000 --- a/src/bind/java/org/inkscape/dom/UserDataHandlerImpl.java +++ /dev/null @@ -1,45 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/java-binding.html - */ - -package org.inkscape.dom; - -import org.w3c.dom.Node; - - - -public class UserDataHandlerImpl - implements org.w3c.dom.UserDataHandler -{ - -public native void handle(short operation, - String key, - Object data, - Node src, - Node dst); - -} diff --git a/src/bind/java/org/inkscape/dom/css/CSS2PropertiesImpl.java b/src/bind/java/org/inkscape/dom/css/CSS2PropertiesImpl.java deleted file mode 100644 index 2b1404da5..000000000 --- a/src/bind/java/org/inkscape/dom/css/CSS2PropertiesImpl.java +++ /dev/null @@ -1,527 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/DOM-Level-2-Style - */ - - -package org.inkscape.dom.css; - -import org.w3c.dom.DOMException; - - -public class CSS2PropertiesImpl - implements org.w3c.dom.css.CSS2Properties -{ - -public native String getAzimuth(); -public native void setAzimuth(String azimuth) - throws DOMException; - -public native String getBackground(); -public native void setBackground(String background) - throws DOMException; - -public native String getBackgroundAttachment(); -public native void setBackgroundAttachment(String backgroundAttachment) - throws DOMException; - -public native String getBackgroundColor(); -public native void setBackgroundColor(String backgroundColor) - throws DOMException; - -public native String getBackgroundImage(); -public native void setBackgroundImage(String backgroundImage) - throws DOMException; - -public native String getBackgroundPosition(); -public native void setBackgroundPosition(String backgroundPosition) - throws DOMException; - -public native String getBackgroundRepeat(); -public native void setBackgroundRepeat(String backgroundRepeat) - throws DOMException; - -public native String getBorder(); -public native void setBorder(String border) - throws DOMException; - -public native String getBorderCollapse(); -public native void setBorderCollapse(String borderCollapse) - throws DOMException; - -public native String getBorderColor(); -public native void setBorderColor(String borderColor) - throws DOMException; - -public native String getBorderSpacing(); -public native void setBorderSpacing(String borderSpacing) - throws DOMException; - -public native String getBorderStyle(); -public native void setBorderStyle(String borderStyle) - throws DOMException; - -public native String getBorderTop(); -public native void setBorderTop(String borderTop) - throws DOMException; - -public native String getBorderRight(); -public native void setBorderRight(String borderRight) - throws DOMException; - -public native String getBorderBottom(); -public native void setBorderBottom(String borderBottom) - throws DOMException; - -public native String getBorderLeft(); -public native void setBorderLeft(String borderLeft) - throws DOMException; - -public native String getBorderTopColor(); -public native void setBorderTopColor(String borderTopColor) - throws DOMException; - -public native String getBorderRightColor(); -public native void setBorderRightColor(String borderRightColor) - throws DOMException; - -public native String getBorderBottomColor(); -public native void setBorderBottomColor(String borderBottomColor) - throws DOMException; - -public native String getBorderLeftColor(); -public native void setBorderLeftColor(String borderLeftColor) - throws DOMException; - -public native String getBorderTopStyle(); -public native void setBorderTopStyle(String borderTopStyle) - throws DOMException; - -public native String getBorderRightStyle(); -public native void setBorderRightStyle(String borderRightStyle) - throws DOMException; - -public native String getBorderBottomStyle(); -public native void setBorderBottomStyle(String borderBottomStyle) - throws DOMException; - -public native String getBorderLeftStyle(); -public native void setBorderLeftStyle(String borderLeftStyle) - throws DOMException; - -public native String getBorderTopWidth(); -public native void setBorderTopWidth(String borderTopWidth) - throws DOMException; - -public native String getBorderRightWidth(); -public native void setBorderRightWidth(String borderRightWidth) - throws DOMException; - -public native String getBorderBottomWidth(); -public native void setBorderBottomWidth(String borderBottomWidth) - throws DOMException; - -public native String getBorderLeftWidth(); -public native void setBorderLeftWidth(String borderLeftWidth) - throws DOMException; - -public native String getBorderWidth(); -public native void setBorderWidth(String borderWidth) - throws DOMException; - -public native String getBottom(); -public native void setBottom(String bottom) - throws DOMException; - -public native String getCaptionSide(); -public native void setCaptionSide(String captionSide) - throws DOMException; - -public native String getClear(); -public native void setClear(String clear) - throws DOMException; - -public native String getClip(); -public native void setClip(String clip) - throws DOMException; - -public native String getColor(); -public native void setColor(String color) - throws DOMException; - -public native String getContent(); -public native void setContent(String content) - throws DOMException; - -public native String getCounterIncrement(); -public native void setCounterIncrement(String counterIncrement) - throws DOMException; - -public native String getCounterReset(); -public native void setCounterReset(String counterReset) - throws DOMException; - -public native String getCue(); -public native void setCue(String cue) - throws DOMException; - -public native String getCueAfter(); -public native void setCueAfter(String cueAfter) - throws DOMException; - -public native String getCueBefore(); -public native void setCueBefore(String cueBefore) - throws DOMException; - -public native String getCursor(); -public native void setCursor(String cursor) - throws DOMException; - -public native String getDirection(); -public native void setDirection(String direction) - throws DOMException; - -public native String getDisplay(); -public native void setDisplay(String display) - throws DOMException; - -public native String getElevation(); -public native void setElevation(String elevation) - throws DOMException; - -public native String getEmptyCells(); -public native void setEmptyCells(String emptyCells) - throws DOMException; - -public native String getCssFloat(); -public native void setCssFloat(String cssFloat) - throws DOMException; - -public native String getFont(); -public native void setFont(String font) - throws DOMException; - -public native String getFontFamily(); -public native void setFontFamily(String fontFamily) - throws DOMException; - -public native String getFontSize(); -public native void setFontSize(String fontSize) - throws DOMException; - -public native String getFontSizeAdjust(); -public native void setFontSizeAdjust(String fontSizeAdjust) - throws DOMException; - -public native String getFontStretch(); -public native void setFontStretch(String fontStretch) - throws DOMException; - -public native String getFontStyle(); -public native void setFontStyle(String fontStyle) - throws DOMException; - -public native String getFontVariant(); -public native void setFontVariant(String fontVariant) - throws DOMException; - -public native String getFontWeight(); -public native void setFontWeight(String fontWeight) - throws DOMException; - -public native String getHeight(); -public native void setHeight(String height) - throws DOMException; - -public native String getLeft(); -public native void setLeft(String left) - throws DOMException; - -public native String getLetterSpacing(); -public native void setLetterSpacing(String letterSpacing) - throws DOMException; - -public native String getLineHeight(); -public native void setLineHeight(String lineHeight) - throws DOMException; - -public native String getListStyle(); -public native void setListStyle(String listStyle) - throws DOMException; - -public native String getListStyleImage(); -public native void setListStyleImage(String listStyleImage) - throws DOMException; - -public native String getListStylePosition(); -public native void setListStylePosition(String listStylePosition) - throws DOMException; - -public native String getListStyleType(); -public native void setListStyleType(String listStyleType) - throws DOMException; - -public native String getMargin(); -public native void setMargin(String margin) - throws DOMException; - -public native String getMarginTop(); -public native void setMarginTop(String marginTop) - throws DOMException; - -public native String getMarginRight(); -public native void setMarginRight(String marginRight) - throws DOMException; - -public native String getMarginBottom(); -public native void setMarginBottom(String marginBottom) - throws DOMException; - -public native String getMarginLeft(); -public native void setMarginLeft(String marginLeft) - throws DOMException; - -public native String getMarkerOffset(); -public native void setMarkerOffset(String markerOffset) - throws DOMException; - -public native String getMarks(); -public native void setMarks(String marks) - throws DOMException; - -public native String getMaxHeight(); -public native void setMaxHeight(String maxHeight) - throws DOMException; - -public native String getMaxWidth(); -public native void setMaxWidth(String maxWidth) - throws DOMException; - -public native String getMinHeight(); -public native void setMinHeight(String minHeight) - throws DOMException; - -public native String getMinWidth(); -public native void setMinWidth(String minWidth) - throws DOMException; - -public native String getOrphans(); -public native void setOrphans(String orphans) - throws DOMException; - -public native String getOutline(); -public native void setOutline(String outline) - throws DOMException; - -public native String getOutlineColor(); -public native void setOutlineColor(String outlineColor) - throws DOMException; - -public native String getOutlineStyle(); -public native void setOutlineStyle(String outlineStyle) - throws DOMException; - -public native String getOutlineWidth(); -public native void setOutlineWidth(String outlineWidth) - throws DOMException; - -public native String getOverflow(); -public native void setOverflow(String overflow) - throws DOMException; - -public native String getPadding(); -public native void setPadding(String padding) - throws DOMException; - -public native String getPaddingTop(); -public native void setPaddingTop(String paddingTop) - throws DOMException; - -public native String getPaddingRight(); -public native void setPaddingRight(String paddingRight) - throws DOMException; - -public native String getPaddingBottom(); -public native void setPaddingBottom(String paddingBottom) - throws DOMException; - -public native String getPaddingLeft(); -public native void setPaddingLeft(String paddingLeft) - throws DOMException; - -public native String getPage(); -public native void setPage(String page) - throws DOMException; - -public native String getPageBreakAfter(); -public native void setPageBreakAfter(String pageBreakAfter) - throws DOMException; - -public native String getPageBreakBefore(); -public native void setPageBreakBefore(String pageBreakBefore) - throws DOMException; - -public native String getPageBreakInside(); -public native void setPageBreakInside(String pageBreakInside) - throws DOMException; - -public native String getPause(); -public native void setPause(String pause) - throws DOMException; - -public native String getPauseAfter(); -public native void setPauseAfter(String pauseAfter) - throws DOMException; - -public native String getPauseBefore(); -public native void setPauseBefore(String pauseBefore) - throws DOMException; - -public native String getPitch(); -public native void setPitch(String pitch) - throws DOMException; - -public native String getPitchRange(); -public native void setPitchRange(String pitchRange) - throws DOMException; - -public native String getPlayDuring(); -public native void setPlayDuring(String playDuring) - throws DOMException; - -public native String getPosition(); -public native void setPosition(String position) - throws DOMException; - -public native String getQuotes(); -public native void setQuotes(String quotes) - throws DOMException; - -public native String getRichness(); -public native void setRichness(String richness) - throws DOMException; - -public native String getRight(); -public native void setRight(String right) - throws DOMException; - -public native String getSize(); -public native void setSize(String size) - throws DOMException; - -public native String getSpeak(); -public native void setSpeak(String speak) - throws DOMException; - -public native String getSpeakHeader(); -public native void setSpeakHeader(String speakHeader) - throws DOMException; - -public native String getSpeakNumeral(); -public native void setSpeakNumeral(String speakNumeral) - throws DOMException; - -public native String getSpeakPunctuation(); -public native void setSpeakPunctuation(String speakPunctuation) - throws DOMException; - -public native String getSpeechRate(); -public native void setSpeechRate(String speechRate) - throws DOMException; - -public native String getStress(); -public native void setStress(String stress) - throws DOMException; - -public native String getTableLayout(); -public native void setTableLayout(String tableLayout) - throws DOMException; - -public native String getTextAlign(); -public native void setTextAlign(String textAlign) - throws DOMException; - -public native String getTextDecoration(); -public native void setTextDecoration(String textDecoration) - throws DOMException; - -public native String getTextIndent(); -public native void setTextIndent(String textIndent) - throws DOMException; - -public native String getTextShadow(); -public native void setTextShadow(String textShadow) - throws DOMException; - -public native String getTextTransform(); -public native void setTextTransform(String textTransform) - throws DOMException; - -public native String getTop(); -public native void setTop(String top) - throws DOMException; - -public native String getUnicodeBidi(); -public native void setUnicodeBidi(String unicodeBidi) - throws DOMException; - -public native String getVerticalAlign(); -public native void setVerticalAlign(String verticalAlign) - throws DOMException; - -public native String getVisibility(); -public native void setVisibility(String visibility) - throws DOMException; - -public native String getVoiceFamily(); -public native void setVoiceFamily(String voiceFamily) - throws DOMException; - -public native String getVolume(); -public native void setVolume(String volume) - throws DOMException; - -public native String getWhiteSpace(); -public native void setWhiteSpace(String whiteSpace) - throws DOMException; - -public native String getWidows(); -public native void setWidows(String widows) - throws DOMException; - -public native String getWidth(); -public native void setWidth(String width) - throws DOMException; - -public native String getWordSpacing(); -public native void setWordSpacing(String wordSpacing) - throws DOMException; - -public native String getZIndex(); -public native void setZIndex(String zIndex) - throws DOMException; - -} diff --git a/src/bind/java/org/inkscape/dom/css/CSSCharsetRuleImpl.java b/src/bind/java/org/inkscape/dom/css/CSSCharsetRuleImpl.java deleted file mode 100644 index b29173353..000000000 --- a/src/bind/java/org/inkscape/dom/css/CSSCharsetRuleImpl.java +++ /dev/null @@ -1,44 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/DOM-Level-2-Style - */ - - -package org.inkscape.dom.css; - -import org.w3c.dom.DOMException; - - -public class CSSCharsetRuleImpl - extends CSSRuleImpl - implements org.w3c.dom.css.CSSCharsetRule -{ - -public native String getEncoding(); -public native void setEncoding(String encoding) - throws DOMException; - -} diff --git a/src/bind/java/org/inkscape/dom/css/CSSFontFaceRuleImpl.java b/src/bind/java/org/inkscape/dom/css/CSSFontFaceRuleImpl.java deleted file mode 100644 index cfa779e27..000000000 --- a/src/bind/java/org/inkscape/dom/css/CSSFontFaceRuleImpl.java +++ /dev/null @@ -1,43 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/DOM-Level-2-Style - */ - - -package org.inkscape.dom.css; - -import org.w3c.dom.css.CSSStyleDeclaration; - - - -public class CSSFontFaceRuleImpl - extends CSSRuleImpl - implements org.w3c.dom.css.CSSFontFaceRule -{ - -public native CSSStyleDeclaration getStyle(); - -} diff --git a/src/bind/java/org/inkscape/dom/css/CSSImportRuleImpl.java b/src/bind/java/org/inkscape/dom/css/CSSImportRuleImpl.java deleted file mode 100644 index 8efb7265f..000000000 --- a/src/bind/java/org/inkscape/dom/css/CSSImportRuleImpl.java +++ /dev/null @@ -1,48 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/DOM-Level-2-Style - */ - - -package org.inkscape.dom.css; - -import org.w3c.dom.css.CSSStyleSheet; -import org.w3c.dom.stylesheets.MediaList; - - - -public class CSSImportRuleImpl - extends CSSRuleImpl - implements org.w3c.dom.css.CSSImportRule -{ - -public native String getHref(); - -public native MediaList getMedia(); - -public native CSSStyleSheet getStyleSheet(); - -} diff --git a/src/bind/java/org/inkscape/dom/css/CSSMediaRuleImpl.java b/src/bind/java/org/inkscape/dom/css/CSSMediaRuleImpl.java deleted file mode 100644 index 0993592ba..000000000 --- a/src/bind/java/org/inkscape/dom/css/CSSMediaRuleImpl.java +++ /dev/null @@ -1,53 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/DOM-Level-2-Style - */ - - -package org.inkscape.dom.css; - -import org.w3c.dom.DOMException; -import org.w3c.dom.stylesheets.MediaList; -import org.w3c.dom.css.CSSRuleList; - - -public class CSSMediaRuleImpl - extends CSSRuleImpl - implements org.w3c.dom.css.CSSMediaRule -{ - -public native MediaList getMedia(); - -public native CSSRuleList getCssRules(); - -public native int insertRule(String rule, - int index) - throws DOMException; - -public native void deleteRule(int index) - throws DOMException; - -} diff --git a/src/bind/java/org/inkscape/dom/css/CSSPageRuleImpl.java b/src/bind/java/org/inkscape/dom/css/CSSPageRuleImpl.java deleted file mode 100644 index 1b7594304..000000000 --- a/src/bind/java/org/inkscape/dom/css/CSSPageRuleImpl.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/DOM-Level-2-Style - */ - -package org.inkscape.dom.css; - -import org.w3c.dom.DOMException; -import org.w3c.dom.css.CSSStyleDeclaration; - - -public class CSSPageRuleImpl - extends CSSRuleImpl - implements org.w3c.dom.css.CSSPageRule -{ - -public native String getSelectorText(); -public native void setSelectorText(String selectorText) - throws DOMException; - -public native CSSStyleDeclaration getStyle(); - -} diff --git a/src/bind/java/org/inkscape/dom/css/CSSPrimitiveValueImpl.java b/src/bind/java/org/inkscape/dom/css/CSSPrimitiveValueImpl.java deleted file mode 100644 index 34abe3ca1..000000000 --- a/src/bind/java/org/inkscape/dom/css/CSSPrimitiveValueImpl.java +++ /dev/null @@ -1,68 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/DOM-Level-2-Style - */ - - -package org.inkscape.dom.css; - -import org.w3c.dom.DOMException; -import org.w3c.dom.css.Counter; -import org.w3c.dom.css.RGBColor; -import org.w3c.dom.css.Rect; - - -public class CSSPrimitiveValueImpl - extends CSSValueImpl - implements org.w3c.dom.css.CSSPrimitiveValue -{ - -public native short getPrimitiveType(); - -public native void setFloatValue(short unitType, - float floatValue) - throws DOMException; - -public native float getFloatValue(short unitType) - throws DOMException; - -public native void setStringValue(short stringType, - String stringValue) - throws DOMException; - -public native String getStringValue() - throws DOMException; - -public native Counter getCounterValue() - throws DOMException; - -public native Rect getRectValue() - throws DOMException; - -public native RGBColor getRGBColorValue() - throws DOMException; - -} diff --git a/src/bind/java/org/inkscape/dom/css/CSSRuleImpl.java b/src/bind/java/org/inkscape/dom/css/CSSRuleImpl.java deleted file mode 100644 index ace49a055..000000000 --- a/src/bind/java/org/inkscape/dom/css/CSSRuleImpl.java +++ /dev/null @@ -1,51 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/DOM-Level-2-Style - */ - - -package org.inkscape.dom.css; - -import org.w3c.dom.DOMException; -import org.w3c.dom.css.CSSStyleSheet; -import org.w3c.dom.css.CSSRule; - - -public class CSSRuleImpl - implements org.w3c.dom.css.CSSRule -{ - -public native short getType(); - -public native String getCssText(); -public native void setCssText(String cssText) - throws DOMException; - -public native CSSStyleSheet getParentStyleSheet(); - -public native CSSRule getParentRule(); - -} diff --git a/src/bind/java/org/inkscape/dom/css/CSSRuleListImpl.java b/src/bind/java/org/inkscape/dom/css/CSSRuleListImpl.java deleted file mode 100644 index 9fa2d0535..000000000 --- a/src/bind/java/org/inkscape/dom/css/CSSRuleListImpl.java +++ /dev/null @@ -1,44 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/DOM-Level-2-Style - */ - - -package org.inkscape.dom.css; - -import org.w3c.dom.css.CSSRule; - - - -public class CSSRuleListImpl - implements org.w3c.dom.css.CSSRuleList -{ - -public native int getLength(); - -public native CSSRule item(int index); - -} diff --git a/src/bind/java/org/inkscape/dom/css/CSSStyleDeclarationImpl.java b/src/bind/java/org/inkscape/dom/css/CSSStyleDeclarationImpl.java deleted file mode 100644 index 73483f07b..000000000 --- a/src/bind/java/org/inkscape/dom/css/CSSStyleDeclarationImpl.java +++ /dev/null @@ -1,66 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/DOM-Level-2-Style - */ - - -package org.inkscape.dom.css; - -import org.w3c.dom.DOMException; -import org.w3c.dom.css.CSSRule; -import org.w3c.dom.css.CSSValue; - - - -public class CSSStyleDeclarationImpl - implements org.w3c.dom.css.CSSStyleDeclaration -{ - -public native String getCssText(); -public native void setCssText(String cssText) - throws DOMException; - -public native String getPropertyValue(String propertyName); - -public native CSSValue getPropertyCSSValue(String propertyName); - -public native String removeProperty(String propertyName) - throws DOMException; - -public native String getPropertyPriority(String propertyName); - -public native void setProperty(String propertyName, - String value, - String priority) - throws DOMException; - -public native int getLength(); - -public native String item(int index); - -public native CSSRule getParentRule(); - -} diff --git a/src/bind/java/org/inkscape/dom/css/CSSStyleRuleImpl.java b/src/bind/java/org/inkscape/dom/css/CSSStyleRuleImpl.java deleted file mode 100644 index de2d4945e..000000000 --- a/src/bind/java/org/inkscape/dom/css/CSSStyleRuleImpl.java +++ /dev/null @@ -1,47 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/DOM-Level-2-Style - */ - - -package org.inkscape.dom.css; - -import org.w3c.dom.DOMException; -import org.w3c.dom.css.CSSStyleDeclaration; - - -public class CSSStyleRuleImpl - extends CSSRuleImpl - implements org.w3c.dom.css.CSSStyleRule -{ - -public native String getSelectorText(); -public native void setSelectorText(String selectorText) - throws DOMException; - -public native CSSStyleDeclaration getStyle(); - -} diff --git a/src/bind/java/org/inkscape/dom/css/CSSStyleSheetImpl.java b/src/bind/java/org/inkscape/dom/css/CSSStyleSheetImpl.java deleted file mode 100644 index ed14d69c9..000000000 --- a/src/bind/java/org/inkscape/dom/css/CSSStyleSheetImpl.java +++ /dev/null @@ -1,55 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/DOM-Level-2-Style - */ - - -package org.inkscape.dom.css; - -import org.w3c.dom.DOMException; -import org.w3c.dom.stylesheets.StyleSheet; -import org.w3c.dom.css.CSSRule; -import org.w3c.dom.css.CSSRuleList; - - -public class CSSStyleSheetImpl - extends org.inkscape.dom.stylesheets.StyleSheetImpl - implements org.w3c.dom.css.CSSStyleSheet -{ - -public native CSSRule getOwnerRule(); - - -public native CSSRuleList getCssRules(); - -public native int insertRule(String rule, - int index) - throws DOMException; - -public native void deleteRule(int index) - throws DOMException; - -} diff --git a/src/bind/java/org/inkscape/dom/css/CSSUnknownRuleImpl.java b/src/bind/java/org/inkscape/dom/css/CSSUnknownRuleImpl.java deleted file mode 100644 index d09a73681..000000000 --- a/src/bind/java/org/inkscape/dom/css/CSSUnknownRuleImpl.java +++ /dev/null @@ -1,37 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/DOM-Level-2-Style - */ - - -package org.inkscape.dom.css; - - -public class CSSUnknownRuleImpl - extends CSSRuleImpl - implements org.w3c.dom.css.CSSUnknownRule -{ -} diff --git a/src/bind/java/org/inkscape/dom/css/CSSValueImpl.java b/src/bind/java/org/inkscape/dom/css/CSSValueImpl.java deleted file mode 100644 index 6782a95b7..000000000 --- a/src/bind/java/org/inkscape/dom/css/CSSValueImpl.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/DOM-Level-2-Style - */ - - - -package org.inkscape.dom.css; - -import org.w3c.dom.DOMException; - - -public class CSSValueImpl - implements org.w3c.dom.css.CSSValue -{ - -public native String getCssText(); -public native void setCssText(String cssText) - throws DOMException; - -public native short getCssValueType(); - -} diff --git a/src/bind/java/org/inkscape/dom/css/CSSValueListImpl.java b/src/bind/java/org/inkscape/dom/css/CSSValueListImpl.java deleted file mode 100644 index 334afb1c7..000000000 --- a/src/bind/java/org/inkscape/dom/css/CSSValueListImpl.java +++ /dev/null @@ -1,45 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/DOM-Level-2-Style - */ - - -package org.inkscape.dom.css; - -import org.w3c.dom.css.CSSValue; - - - -public class CSSValueListImpl - extends CSSValueImpl - implements org.w3c.dom.css.CSSValueList -{ - -public native int getLength(); - -public native CSSValue item(int index); - -} diff --git a/src/bind/java/org/inkscape/dom/css/CounterImpl.java b/src/bind/java/org/inkscape/dom/css/CounterImpl.java deleted file mode 100644 index 1f656b944..000000000 --- a/src/bind/java/org/inkscape/dom/css/CounterImpl.java +++ /dev/null @@ -1,44 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/DOM-Level-2-Style - */ - - -package org.inkscape.dom.css; - - - -public class CounterImpl - implements org.w3c.dom.css.Counter -{ - -public native String getIdentifier(); - -public native String getListStyle(); - -public native String getSeparator(); - -} diff --git a/src/bind/java/org/inkscape/dom/css/DOMImplementationCSSImpl.java b/src/bind/java/org/inkscape/dom/css/DOMImplementationCSSImpl.java deleted file mode 100644 index 16bf7a994..000000000 --- a/src/bind/java/org/inkscape/dom/css/DOMImplementationCSSImpl.java +++ /dev/null @@ -1,47 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/DOM-Level-2-Style - */ - - -package org.inkscape.dom.css; - -import org.w3c.dom.DOMImplementation; -import org.w3c.dom.DOMException; -import org.w3c.dom.css.CSSStyleSheet; - - -public class DOMImplementationCSSImpl - extends - org.inkscape.dom.DOMImplementationImpl - implements org.w3c.dom.css.DOMImplementationCSS -{ - -public native CSSStyleSheet createCSSStyleSheet(String title, - String media) - throws DOMException; - -} diff --git a/src/bind/java/org/inkscape/dom/css/DocumentCSSImpl.java b/src/bind/java/org/inkscape/dom/css/DocumentCSSImpl.java deleted file mode 100644 index bbbd9c110..000000000 --- a/src/bind/java/org/inkscape/dom/css/DocumentCSSImpl.java +++ /dev/null @@ -1,47 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/DOM-Level-2-Style - */ - - -package org.inkscape.dom.css; - -import org.w3c.dom.stylesheets.DocumentStyle; -import org.w3c.dom.Element; -import org.w3c.dom.css.CSSStyleDeclaration; - - - -public class DocumentCSSImpl - extends - org.inkscape.dom.stylesheets.DocumentStyleImpl - implements org.w3c.dom.css.DocumentCSS -{ - -public native CSSStyleDeclaration getOverrideStyle(Element elt, - String pseudoElt); - -} diff --git a/src/bind/java/org/inkscape/dom/css/ElementCSSInlineStyleImpl.java b/src/bind/java/org/inkscape/dom/css/ElementCSSInlineStyleImpl.java deleted file mode 100644 index ba36ae487..000000000 --- a/src/bind/java/org/inkscape/dom/css/ElementCSSInlineStyleImpl.java +++ /dev/null @@ -1,43 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/DOM-Level-2-Style - */ - - - -package org.inkscape.dom.css; - -import org.w3c.dom.css.CSSStyleDeclaration; - - - -public class ElementCSSInlineStyleImpl - implements org.w3c.dom.css.ElementCSSInlineStyle -{ - -public native CSSStyleDeclaration getStyle(); - -} diff --git a/src/bind/java/org/inkscape/dom/css/RGBColorImpl.java b/src/bind/java/org/inkscape/dom/css/RGBColorImpl.java deleted file mode 100644 index 0f4d50b58..000000000 --- a/src/bind/java/org/inkscape/dom/css/RGBColorImpl.java +++ /dev/null @@ -1,45 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/DOM-Level-2-Style - */ - - -package org.inkscape.dom.css; - -import org.w3c.dom.css.CSSPrimitiveValue; - - -public class RGBColorImpl - implements org.w3c.dom.css.RGBColor -{ - -public native CSSPrimitiveValue getRed(); - -public native CSSPrimitiveValue getGreen(); - -public native CSSPrimitiveValue getBlue(); - -} diff --git a/src/bind/java/org/inkscape/dom/css/RectImpl.java b/src/bind/java/org/inkscape/dom/css/RectImpl.java deleted file mode 100644 index 1ef0a766a..000000000 --- a/src/bind/java/org/inkscape/dom/css/RectImpl.java +++ /dev/null @@ -1,48 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/DOM-Level-2-Style - */ - - - -package org.inkscape.dom.css; - -import org.w3c.dom.css.CSSPrimitiveValue; - - -public class RectImpl - implements org.w3c.dom.css.Rect -{ - -public native CSSPrimitiveValue getTop(); - -public native CSSPrimitiveValue getRight(); - -public native CSSPrimitiveValue getBottom(); - -public native CSSPrimitiveValue getLeft(); - -} diff --git a/src/bind/java/org/inkscape/dom/css/ViewCSSImpl.java b/src/bind/java/org/inkscape/dom/css/ViewCSSImpl.java deleted file mode 100644 index c52d056b7..000000000 --- a/src/bind/java/org/inkscape/dom/css/ViewCSSImpl.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/DOM-Level-2-Style - */ - - -package org.inkscape.dom.css; - -import org.w3c.dom.views.AbstractView; -import org.w3c.dom.Element; -import org.w3c.dom.css.CSSStyleDeclaration; - - -public class ViewCSSImpl - extends - org.inkscape.dom.views.AbstractViewImpl - implements org.w3c.dom.css.ViewCSS -{ - -public native CSSStyleDeclaration getComputedStyle(Element elt, - String pseudoElt); - -} diff --git a/src/bind/java/org/inkscape/dom/events/CustomEventImpl.java b/src/bind/java/org/inkscape/dom/events/CustomEventImpl.java deleted file mode 100644 index 3762e57e2..000000000 --- a/src/bind/java/org/inkscape/dom/events/CustomEventImpl.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the Events files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2003/NOTE-DOM-Level-3-Events-20031107/java-binding.html - */ - -package org.inkscape.dom.events; - -import org.w3c.dom.events.EventTarget; - - - -public class CustomEventImpl - extends EventImpl - implements org.w3c.dom.events.CustomEvent -{ -public native void setDispatchState(EventTarget target, - short phase); - -public native boolean isPropagationStopped(); - -public native boolean isImmediatePropagationStopped(); - -} diff --git a/src/bind/java/org/inkscape/dom/events/DocumentEventImpl.java b/src/bind/java/org/inkscape/dom/events/DocumentEventImpl.java deleted file mode 100644 index 504427db3..000000000 --- a/src/bind/java/org/inkscape/dom/events/DocumentEventImpl.java +++ /dev/null @@ -1,48 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the Events files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2003/NOTE-DOM-Level-3-Events-20031107/java-binding.html - */ - -package org.inkscape.dom.events; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.events.Event; - - - -public class DocumentEventImpl - extends - org.inkscape.cmn.BaseInterface - implements org.w3c.dom.events.DocumentEvent -{ - -public native Event createEvent(String eventType) - throws DOMException; -public native boolean canDispatch(String namespaceURI, - String type); - -} diff --git a/src/bind/java/org/inkscape/dom/events/EventImpl.java b/src/bind/java/org/inkscape/dom/events/EventImpl.java deleted file mode 100644 index 858a3e095..000000000 --- a/src/bind/java/org/inkscape/dom/events/EventImpl.java +++ /dev/null @@ -1,74 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the Events files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2003/NOTE-DOM-Level-3-Events-20031107/java-binding.html - */ - -package org.inkscape.dom.events; - -import org.w3c.dom.events.EventTarget; - - - -public class EventImpl - implements org.w3c.dom.events.Event -{ - -public native String getType(); - -public native EventTarget getTarget(); - -public native EventTarget getCurrentTarget(); - -public native short getEventPhase(); - -public native boolean getBubbles(); - -public native boolean getCancelable(); - -public native long getTimeStamp(); - -public native void stopPropagation(); - -public native void preventDefault(); - -public native void initEvent(String eventTypeArg, - boolean canBubbleArg, - boolean cancelableArg); - -public native String getNamespaceURI(); - -public native boolean isCustom(); - -public native void stopImmediatePropagation(); - -public native boolean isDefaultPrevented(); - -public native void initEventNS(String namespaceURIArg, - String eventTypeArg, - boolean canBubbleArg, - boolean cancelableArg); - -} diff --git a/src/bind/java/org/inkscape/dom/events/EventListenerImpl.java b/src/bind/java/org/inkscape/dom/events/EventListenerImpl.java deleted file mode 100644 index 4b680ff86..000000000 --- a/src/bind/java/org/inkscape/dom/events/EventListenerImpl.java +++ /dev/null @@ -1,41 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the Events files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2003/NOTE-DOM-Level-3-Events-20031107/java-binding.html - */ - -package org.inkscape.dom.events; - -import org.w3c.dom.events.Event; - - - -public class EventListenerImpl - implements org.w3c.dom.events.EventListener -{ - -public native void handleEvent(Event evt); - -} diff --git a/src/bind/java/org/inkscape/dom/events/EventTargetImpl.java b/src/bind/java/org/inkscape/dom/events/EventTargetImpl.java deleted file mode 100644 index 34778f03b..000000000 --- a/src/bind/java/org/inkscape/dom/events/EventTargetImpl.java +++ /dev/null @@ -1,71 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the Events files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2003/NOTE-DOM-Level-3-Events-20031107/java-binding.html - */ - -package org.inkscape.dom.events; - -import org.w3c.dom.events.EventException; -import org.w3c.dom.events.Event; -import org.w3c.dom.events.EventListener; - - - -public class EventTargetImpl - extends - org.inkscape.cmn.BaseInterface - implements org.w3c.dom.events.EventTarget -{ - -public native void addEventListener(String type, - EventListener listener, - boolean useCapture); - -public native void removeEventListener(String type, - EventListener listener, - boolean useCapture); - -public native boolean dispatchEvent(Event evt) - throws EventException; - -public native void addEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture, - Object evtGroup); - -public native void removeEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture); - -public native boolean willTriggerNS(String namespaceURI, - String type); - -public native boolean hasEventListenerNS(String namespaceURI, - String type); - -} diff --git a/src/bind/java/org/inkscape/dom/events/KeyboardEventImpl.java b/src/bind/java/org/inkscape/dom/events/KeyboardEventImpl.java deleted file mode 100644 index 24f8de968..000000000 --- a/src/bind/java/org/inkscape/dom/events/KeyboardEventImpl.java +++ /dev/null @@ -1,70 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the Events files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2003/NOTE-DOM-Level-3-Events-20031107/java-binding.html - */ - -package org.inkscape.dom.events; - -import org.w3c.dom.views.AbstractView; - - -public class KeyboardEventImpl - extends UIEventImpl - implements org.w3c.dom.events.KeyboardEvent -{ - -public native String getKeyIdentifier(); - -public native int getKeyLocation(); - -public native boolean getCtrlKey(); - -public native boolean getShiftKey(); - -public native boolean getAltKey(); - -public native boolean getMetaKey(); - -public native boolean getModifierState(String keyIdentifierArg); - -public native void initKeyboardEvent(String typeArg, - boolean canBubbleArg, - boolean cancelableArg, - AbstractView viewArg, - String keyIdentifierArg, - int keyLocationArg, - String modifiersList); - -public native void initKeyboardEventNS(String namespaceURI, - String typeArg, - boolean canBubbleArg, - boolean cancelableArg, - AbstractView viewArg, - String keyIdentifierArg, - int keyLocationArg, - String modifiersList); - -} diff --git a/src/bind/java/org/inkscape/dom/events/MouseEventImpl.java b/src/bind/java/org/inkscape/dom/events/MouseEventImpl.java deleted file mode 100644 index 900074643..000000000 --- a/src/bind/java/org/inkscape/dom/events/MouseEventImpl.java +++ /dev/null @@ -1,96 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the Events files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2003/NOTE-DOM-Level-3-Events-20031107/java-binding.html - */ - -package org.inkscape.dom.events; - -import org.w3c.dom.views.AbstractView; - -import org.w3c.dom.events.EventTarget; - - - -public class MouseEventImpl - extends UIEventImpl - implements org.w3c.dom.events.MouseEvent -{ - -public native int getScreenX(); - -public native int getScreenY(); - -public native int getClientX(); - -public native int getClientY(); - -public native boolean getCtrlKey(); - -public native boolean getShiftKey(); - -public native boolean getAltKey(); - -public native boolean getMetaKey(); - -public native short getButton(); - -public native EventTarget getRelatedTarget(); - -public native void initMouseEvent(String typeArg, - boolean canBubbleArg, - boolean cancelableArg, - AbstractView viewArg, - int detailArg, - int screenXArg, - int screenYArg, - int clientXArg, - int clientYArg, - boolean ctrlKeyArg, - boolean altKeyArg, - boolean shiftKeyArg, - boolean metaKeyArg, - short buttonArg, - EventTarget relatedTargetArg); - -public native boolean getModifierState(String keyIdentifierArg); - -public native void initMouseEventNS(String namespaceURI, - String typeArg, - boolean canBubbleArg, - boolean cancelableArg, - AbstractView viewArg, - int detailArg, - int screenXArg, - int screenYArg, - int clientXArg, - int clientYArg, - short buttonArg, - EventTarget relatedTargetArg, - String modifiersList); - -} - - diff --git a/src/bind/java/org/inkscape/dom/events/MutationEventImpl.java b/src/bind/java/org/inkscape/dom/events/MutationEventImpl.java deleted file mode 100644 index df3b9915c..000000000 --- a/src/bind/java/org/inkscape/dom/events/MutationEventImpl.java +++ /dev/null @@ -1,67 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the Events files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2003/NOTE-DOM-Level-3-Events-20031107/java-binding.html - */ - -package org.inkscape.dom.events; - -import org.w3c.dom.Node; - - -public class MutationEventImpl - extends EventImpl - implements org.w3c.dom.events.MutationEvent -{ -public native Node getRelatedNode(); - -public native String getPrevValue(); - -public native String getNewValue(); - -public native String getAttrName(); - -public native short getAttrChange(); - -public native void initMutationEvent(String typeArg, - boolean canBubbleArg, - boolean cancelableArg, - Node relatedNodeArg, - String prevValueArg, - String newValueArg, - String attrNameArg, - short attrChangeArg); - -public native void initMutationEventNS(String namespaceURI, - String typeArg, - boolean canBubbleArg, - boolean cancelableArg, - Node relatedNodeArg, - String prevValueArg, - String newValueArg, - String attrNameArg, - short attrChangeArg); - -} diff --git a/src/bind/java/org/inkscape/dom/events/MutationNameEventImpl.java b/src/bind/java/org/inkscape/dom/events/MutationNameEventImpl.java deleted file mode 100644 index 5ee722bfa..000000000 --- a/src/bind/java/org/inkscape/dom/events/MutationNameEventImpl.java +++ /dev/null @@ -1,58 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the Events files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2003/NOTE-DOM-Level-3-Events-20031107/java-binding.html - */ - -package org.inkscape.dom.events; - -import org.w3c.dom.Node; - - -public class MutationNameEventImpl - extends MutationEventImpl - implements org.w3c.dom.events.MutationNameEvent -{ - -public native String getPrevNamespaceURI(); - -public native String getPrevNodeName(); - -public native void initMutationNameEvent(String typeArg, - boolean canBubbleArg, - boolean cancelableArg, - Node relatedNodeArg, - String prevNamespaceURIArg, - String prevNodeNameArg); - -public native void initMutationNameEventNS(String namespaceURI, - String typeArg, - boolean canBubbleArg, - boolean cancelableArg, - Node relatedNodeArg, - String prevNamespaceURIArg, - String prevNodeNameArg); - -} diff --git a/src/bind/java/org/inkscape/dom/events/TextEventImpl.java b/src/bind/java/org/inkscape/dom/events/TextEventImpl.java deleted file mode 100644 index c62963c53..000000000 --- a/src/bind/java/org/inkscape/dom/events/TextEventImpl.java +++ /dev/null @@ -1,55 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the Events files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2003/NOTE-DOM-Level-3-Events-20031107/java-binding.html - */ - - -package org.inkscape.dom.events; - -import org.w3c.dom.views.AbstractView; - - -public class TextEventImpl - extends UIEventImpl - implements org.w3c.dom.events.TextEvent -{ - -public native String getData(); - -public native void initTextEvent(String typeArg, - boolean canBubbleArg, - boolean cancelableArg, - AbstractView viewArg, - String dataArg); - -public native void initTextEventNS(String namespaceURI, - String type, - boolean canBubbleArg, - boolean cancelableArg, - AbstractView viewArg, - String dataArg); - -} diff --git a/src/bind/java/org/inkscape/dom/events/UIEventImpl.java b/src/bind/java/org/inkscape/dom/events/UIEventImpl.java deleted file mode 100644 index bb66d154f..000000000 --- a/src/bind/java/org/inkscape/dom/events/UIEventImpl.java +++ /dev/null @@ -1,56 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the Events files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2003/NOTE-DOM-Level-3-Events-20031107/java-binding.html - */ - -package org.inkscape.dom.events; - -import org.w3c.dom.views.AbstractView; - - -public class UIEventImpl - extends EventImpl - implements org.w3c.dom.events.UIEvent -{ - -public native AbstractView getView(); - -public native int getDetail(); - -public native void initUIEvent(String typeArg, - boolean canBubbleArg, - boolean cancelableArg, - AbstractView viewArg, - int detailArg); - -public native void initUIEventNS(String namespaceURI, - String typeArg, - boolean canBubbleArg, - boolean cancelableArg, - AbstractView viewArg, - int detailArg); - -} diff --git a/src/bind/java/org/inkscape/dom/smil/ElementExclusiveTimeContainerImpl.java b/src/bind/java/org/inkscape/dom/smil/ElementExclusiveTimeContainerImpl.java deleted file mode 100644 index bc9ce930e..000000000 --- a/src/bind/java/org/inkscape/dom/smil/ElementExclusiveTimeContainerImpl.java +++ /dev/null @@ -1,50 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - -import org.w3c.dom.DOMException; -import org.w3c.dom.NodeList; - - -public class ElementExclusiveTimeContainerImpl - extends ElementTimeContainerImpl - implements org.w3c.dom.smil.ElementExclusiveTimeContainer -{ - - -public native String getEndSync(); -public native void setEndSync(String endSync) - throws DOMException; - - -public native NodeList getPausedElements(); - - -} - diff --git a/src/bind/java/org/inkscape/dom/smil/ElementLayoutImpl.java b/src/bind/java/org/inkscape/dom/smil/ElementLayoutImpl.java deleted file mode 100644 index 2dfeacbe7..000000000 --- a/src/bind/java/org/inkscape/dom/smil/ElementLayoutImpl.java +++ /dev/null @@ -1,50 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - -import org.w3c.dom.DOMException; - - -public class ElementLayoutImpl - extends - org.inkscape.cmn.BaseInterface - implements org.w3c.dom.smil.ElementLayout -{ - -public native String getTitle(); -public native void setTitle(String title) throws DOMException; -public native String getBackgroundColor(); -public native void setBackgroundColor(String backgroundColor) throws DOMException; -public native int getHeight(); -public native void setHeight(int height) throws DOMException; -public native int getWidth(); -public native void setWidth(int width) throws DOMException; - -} - diff --git a/src/bind/java/org/inkscape/dom/smil/ElementParallelTimeContainerImpl.java b/src/bind/java/org/inkscape/dom/smil/ElementParallelTimeContainerImpl.java deleted file mode 100644 index 1feed68dd..000000000 --- a/src/bind/java/org/inkscape/dom/smil/ElementParallelTimeContainerImpl.java +++ /dev/null @@ -1,47 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - -import org.w3c.dom.DOMException; - - -public class ElementParallelTimeContainerImpl - extends ElementTimeContainerImpl - implements org.w3c.dom.smil.ElementParallelTimeContainer -{ - -public native String getEndSync(); -public native void setEndSync(String endSync) - throws DOMException; - - -public native float getImplicitDuration(); - -} - diff --git a/src/bind/java/org/inkscape/dom/smil/ElementSequentialTimeContainerImpl.java b/src/bind/java/org/inkscape/dom/smil/ElementSequentialTimeContainerImpl.java deleted file mode 100644 index 51a3abd38..000000000 --- a/src/bind/java/org/inkscape/dom/smil/ElementSequentialTimeContainerImpl.java +++ /dev/null @@ -1,37 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - - -public class ElementSequentialTimeContainerImpl - extends ElementTimeContainerImpl - implements org.w3c.dom.smil.ElementSequentialTimeContainer -{ -} - diff --git a/src/bind/java/org/inkscape/dom/smil/ElementSyncBehaviorImpl.java b/src/bind/java/org/inkscape/dom/smil/ElementSyncBehaviorImpl.java deleted file mode 100644 index 891895064..000000000 --- a/src/bind/java/org/inkscape/dom/smil/ElementSyncBehaviorImpl.java +++ /dev/null @@ -1,53 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - - -public class ElementSyncBehaviorImpl - extends - org.inkscape.cmn.BaseInterface - implements org.w3c.dom.smil.ElementSyncBehavior -{ - -public native String getSyncBehavior(); - - -public native float getSyncTolerance(); - - -public native String getDefaultSyncBehavior(); - - -public native float getDefaultSyncTolerance(); - - -public native boolean getSyncMaster(); - -} - diff --git a/src/bind/java/org/inkscape/dom/smil/ElementTargetAttributesImpl.java b/src/bind/java/org/inkscape/dom/smil/ElementTargetAttributesImpl.java deleted file mode 100644 index e406a67e9..000000000 --- a/src/bind/java/org/inkscape/dom/smil/ElementTargetAttributesImpl.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - - -public class ElementTargetAttributesImpl - extends - org.inkscape.cmn.BaseInterface - implements org.w3c.dom.smil.ElementTargetAttributes -{ - -public native String getAttributeName(); -public native void setAttributeName(String attributeName); - - -public native short getAttributeType(); -public native void setAttributeType(short attributeType); - -} - diff --git a/src/bind/java/org/inkscape/dom/smil/ElementTestImpl.java b/src/bind/java/org/inkscape/dom/smil/ElementTestImpl.java deleted file mode 100644 index 8ab0c57b5..000000000 --- a/src/bind/java/org/inkscape/dom/smil/ElementTestImpl.java +++ /dev/null @@ -1,73 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - -import org.w3c.dom.DOMException; - -public class ElementTestImpl - extends - org.inkscape.cmn.BaseInterface - implements org.w3c.dom.smil.ElementTest -{ - -public native int getSystemBitrate(); -public native void setSystemBitrate(int systemBitrate) - throws DOMException; - - -public native boolean getSystemCaptions(); -public native void setSystemCaptions(boolean systemCaptions) - throws DOMException; - - -public native String getSystemLanguage(); -public native void setSystemLanguage(String systemLanguage) - throws DOMException; - - -public native boolean getSystemRequired(); - - -public native boolean getSystemScreenSize(); - - -public native boolean getSystemScreenDepth(); - - -public native String getSystemOverdubOrSubtitle(); -public native void setSystemOverdubOrSubtitle(String systemOverdubOrSubtitle) - throws DOMException; - - -public native boolean getSystemAudioDesc(); -public native void setSystemAudioDesc(boolean systemAudioDesc) - throws DOMException; - -} - diff --git a/src/bind/java/org/inkscape/dom/smil/ElementTimeContainerImpl.java b/src/bind/java/org/inkscape/dom/smil/ElementTimeContainerImpl.java deleted file mode 100644 index 2f4fc4cb2..000000000 --- a/src/bind/java/org/inkscape/dom/smil/ElementTimeContainerImpl.java +++ /dev/null @@ -1,43 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - -import org.w3c.dom.NodeList; - - -public class ElementTimeContainerImpl - extends ElementTimeImpl - implements org.w3c.dom.smil.ElementTimeContainer -{ - -public native NodeList getTimeChildren(); -public native NodeList getActiveChildrenAt(float instant); - -} - diff --git a/src/bind/java/org/inkscape/dom/smil/ElementTimeControlImpl.java b/src/bind/java/org/inkscape/dom/smil/ElementTimeControlImpl.java deleted file mode 100644 index e82161139..000000000 --- a/src/bind/java/org/inkscape/dom/smil/ElementTimeControlImpl.java +++ /dev/null @@ -1,45 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - -import org.w3c.dom.DOMException; - - -public class ElementTimeControlImpl - extends - org.inkscape.cmn.BaseInterface - implements org.w3c.dom.smil.ElementTimeControl -{ -public native boolean beginElement() throws DOMException; -public native boolean endElement() throws DOMException; -public native boolean beginElementAt(float offset) throws DOMException; -public native boolean endElementAt(float offset) throws DOMException; - -} - diff --git a/src/bind/java/org/inkscape/dom/smil/ElementTimeImpl.java b/src/bind/java/org/inkscape/dom/smil/ElementTimeImpl.java deleted file mode 100644 index fd1567033..000000000 --- a/src/bind/java/org/inkscape/dom/smil/ElementTimeImpl.java +++ /dev/null @@ -1,95 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.smil.TimeList; - - - -public class ElementTimeImpl - extends - org.inkscape.cmn.BaseInterface - implements org.w3c.dom.smil.ElementTime -{ - -public native TimeList getBegin(); -public native void setBegin(TimeList begin) - throws DOMException; - - -public native TimeList getEnd(); -public native void setEnd(TimeList end) - throws DOMException; - - -public native float getDur(); -public native void setDur(float dur) - throws DOMException; - - - -public native short getRestart(); -public native void setRestart(short restart) - throws DOMException; - - - -public native short getFill(); -public native void setFill(short fill) - throws DOMException; - - -public native float getRepeatCount(); -public native void setRepeatCount(float repeatCount) - throws DOMException; - - -public native float getRepeatDur(); -public native void setRepeatDur(float repeatDur) - throws DOMException; - - -public native boolean beginElement(); - - -public native boolean endElement(); - - -public native void pauseElement(); - - -public native void resumeElement(); - - -public native void seekElement(float seekTo); - -} - diff --git a/src/bind/java/org/inkscape/dom/smil/ElementTimeManipulationImpl.java b/src/bind/java/org/inkscape/dom/smil/ElementTimeManipulationImpl.java deleted file mode 100644 index 89acd6188..000000000 --- a/src/bind/java/org/inkscape/dom/smil/ElementTimeManipulationImpl.java +++ /dev/null @@ -1,60 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - -import org.w3c.dom.DOMException; - - -public class ElementTimeManipulationImpl - extends - org.inkscape.cmn.BaseInterface - implements org.w3c.dom.smil.ElementTimeManipulation -{ - -public native float getSpeed(); -public native void setSpeed(float speed) - throws DOMException; - - -public native float getAccelerate(); -public native void setAccelerate(float accelerate) - throws DOMException; - - -public native float getDecelerate(); -public native void setDecelerate(float decelerate) - throws DOMException; - - -public native boolean getAutoReverse(); -public native void setAutoReverse(boolean autoReverse) - throws DOMException; - -} - diff --git a/src/bind/java/org/inkscape/dom/smil/SMILAnimateColorElementImpl.java b/src/bind/java/org/inkscape/dom/smil/SMILAnimateColorElementImpl.java deleted file mode 100644 index 028bda1a9..000000000 --- a/src/bind/java/org/inkscape/dom/smil/SMILAnimateColorElementImpl.java +++ /dev/null @@ -1,37 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - - -public class SMILAnimateColorElementImpl - extends SMILAnimationImpl - implements org.w3c.dom.smil.SMILAnimateColorElement -{ -} - diff --git a/src/bind/java/org/inkscape/dom/smil/SMILAnimateElementImpl.java b/src/bind/java/org/inkscape/dom/smil/SMILAnimateElementImpl.java deleted file mode 100644 index 371174d4e..000000000 --- a/src/bind/java/org/inkscape/dom/smil/SMILAnimateElementImpl.java +++ /dev/null @@ -1,37 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - - -public class SMILAnimateElementImpl - extends SMILAnimationImpl - implements org.w3c.dom.smil.SMILAnimateElement -{ -} - diff --git a/src/bind/java/org/inkscape/dom/smil/SMILAnimateMotionElementImpl.java b/src/bind/java/org/inkscape/dom/smil/SMILAnimateMotionElementImpl.java deleted file mode 100644 index b5f9a5a10..000000000 --- a/src/bind/java/org/inkscape/dom/smil/SMILAnimateMotionElementImpl.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - -import org.w3c.dom.DOMException; - - -public class SMILAnimateMotionElementImpl - extends SMILAnimateElementImpl - implements org.w3c.dom.smil.SMILAnimateMotionElement -{ - -public native String getPath(); -public native void setPath(String path) throws DOMException; - -public native String getOrigin(); -public native void setOrigin(String origin) throws DOMException; - -} - diff --git a/src/bind/java/org/inkscape/dom/smil/SMILAnimationImpl.java b/src/bind/java/org/inkscape/dom/smil/SMILAnimationImpl.java deleted file mode 100644 index 46c8feeb3..000000000 --- a/src/bind/java/org/inkscape/dom/smil/SMILAnimationImpl.java +++ /dev/null @@ -1,153 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.smil.TimeList; - - -public class SMILAnimationImpl - extends SMILElementImpl - //ElementTargetAttributes, - //ElementTime, - //ElementTimeControl - implements org.w3c.dom.smil.SMILAnimation -{ - -public SMILAnimationImpl() -{ - imbue(_ElementTargetAttributes = new ElementTargetAttributesImpl()); - imbue(_ElementTime = new ElementTimeImpl()); - imbue(_ElementTimeControl = new ElementTimeControlImpl()); -} - -//from ElementTargetAttributes -ElementTargetAttributesImpl _ElementTargetAttributes; -public String getAttributeName() - { return _ElementTargetAttributes.getAttributeName(); } -public void setAttributeName(String attributeName) - { _ElementTargetAttributes.setAttributeName(attributeName); } -public short getAttributeType() - { return _ElementTargetAttributes.getAttributeType(); } -public void setAttributeType(short attributeType) - { _ElementTargetAttributes.setAttributeType(attributeType); } -//end ElementTargetAttributes - -//from ElementTime -ElementTimeImpl _ElementTime; -public TimeList getBegin() - { return _ElementTime.getBegin(); } -public void setBegin(TimeList begin) throws DOMException - { _ElementTime.setBegin(begin); } -public TimeList getEnd() - { return _ElementTime.getEnd(); } -public void setEnd(TimeList end) throws DOMException - { _ElementTime.setEnd(end); } -public float getDur() - { return _ElementTime.getDur(); } -public void setDur(float dur) throws DOMException - { _ElementTime.setDur(dur); } -public short getRestart() - { return _ElementTime.getRestart(); } -public void setRestart(short restart) throws DOMException - { _ElementTime.setRestart(restart); } -public short getFill() - { return _ElementTime.getFill(); } -public void setFill(short fill) throws DOMException - { _ElementTime.setFill(fill); } -public float getRepeatCount() - { return _ElementTime.getRepeatCount(); } -public void setRepeatCount(float repeatCount) throws DOMException - { _ElementTime.setRepeatCount(repeatCount); } -public float getRepeatDur() - { return _ElementTime.getRepeatDur(); } -public void setRepeatDur(float repeatDur) throws DOMException - { _ElementTime.setRepeatDur(repeatDur); } -public boolean beginElement() - { return _ElementTime.beginElement(); } -public boolean endElement() - { return _ElementTime.endElement(); } -public void pauseElement() - { _ElementTime.pauseElement(); } -public void resumeElement() - { _ElementTime.resumeElement(); } -public void seekElement(float seekTo) - { _ElementTime.seekElement(seekTo); } -//end ElementTime - - -//from ElementTimeControl -ElementTimeControlImpl _ElementTimeControl; -public boolean beginElementAt(float offset) throws DOMException - { return _ElementTimeControl.beginElementAt(offset); } -public boolean endElementAt(float offset) throws DOMException - { return _ElementTimeControl.endElementAt(offset); } -//end ElementTimeControl - - -public native short getAdditive(); -public native void setAdditive(short additive) - throws DOMException; - - -public native short getAccumulate(); -public native void setAccumulate(short accumulate) - throws DOMException; - -public native short getCalcMode(); -public native void setCalcMode(short calcMode) - throws DOMException; - -public native String getKeySplines(); -public native void setKeySplines(String keySplines) - throws DOMException; - -public native TimeList getKeyTimes(); -public native void setKeyTimes(TimeList keyTimes) - throws DOMException; - -public native String getValues(); -public native void setValues(String values) - throws DOMException; - -public native String getFrom(); -public native void setFrom(String from) - throws DOMException; - -public native String getTo(); -public native void setTo(String to) - throws DOMException; - -public native String getBy(); -public native void setBy(String by) - throws DOMException; - -} - diff --git a/src/bind/java/org/inkscape/dom/smil/SMILDocumentImpl.java b/src/bind/java/org/inkscape/dom/smil/SMILDocumentImpl.java deleted file mode 100644 index 15104bf47..000000000 --- a/src/bind/java/org/inkscape/dom/smil/SMILDocumentImpl.java +++ /dev/null @@ -1,103 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.NodeList; -import org.w3c.dom.smil.TimeList; - - - -public class SMILDocumentImpl - extends org.inkscape.dom.DocumentImpl - //ElementTimeContainer - implements org.w3c.dom.smil.SMILDocument -{ -public SMILDocumentImpl() -{ - imbue(_ElementTimeContainer = new ElementTimeContainerImpl()); - _ElementTime = (ElementTimeImpl)_ElementTimeContainer; -} - - - -//from ElementTimeContainer -ElementTimeContainerImpl _ElementTimeContainer; -public NodeList getTimeChildren() - { return _ElementTimeContainer.getTimeChildren(); } -public NodeList getActiveChildrenAt(float instant) - { return _ElementTimeContainer.getActiveChildrenAt(instant); } -//end ElementTimeContainer - -//from ElementTime -ElementTimeImpl _ElementTime; -public TimeList getBegin() - { return _ElementTime.getBegin(); } -public void setBegin(TimeList begin) throws DOMException - { _ElementTime.setBegin(begin); } -public TimeList getEnd() - { return _ElementTime.getEnd(); } -public void setEnd(TimeList end) throws DOMException - { _ElementTime.setEnd(end); } -public float getDur() - { return _ElementTime.getDur(); } -public void setDur(float dur) throws DOMException - { _ElementTime.setDur(dur); } -public short getRestart() - { return _ElementTime.getRestart(); } -public void setRestart(short restart) throws DOMException - { _ElementTime.setRestart(restart); } -public short getFill() - { return _ElementTime.getFill(); } -public void setFill(short fill) throws DOMException - { _ElementTime.setFill(fill); } -public float getRepeatCount() - { return _ElementTime.getRepeatCount(); } -public void setRepeatCount(float repeatCount) throws DOMException - { _ElementTime.setRepeatCount(repeatCount); } -public float getRepeatDur() - { return _ElementTime.getRepeatDur(); } -public void setRepeatDur(float repeatDur) throws DOMException - { _ElementTime.setRepeatDur(repeatDur); } -public boolean beginElement() - { return _ElementTime.beginElement(); } -public boolean endElement() - { return _ElementTime.endElement(); } -public void pauseElement() - { _ElementTime.pauseElement(); } -public void resumeElement() - { _ElementTime.resumeElement(); } -public void seekElement(float seekTo) - { _ElementTime.seekElement(seekTo); } -//end ElementTime - - -} - diff --git a/src/bind/java/org/inkscape/dom/smil/SMILElementImpl.java b/src/bind/java/org/inkscape/dom/smil/SMILElementImpl.java deleted file mode 100644 index d69fdf02e..000000000 --- a/src/bind/java/org/inkscape/dom/smil/SMILElementImpl.java +++ /dev/null @@ -1,42 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - -import org.w3c.dom.DOMException; - -public class SMILElementImpl - extends org.inkscape.dom.ElementImpl - implements org.w3c.dom.smil.SMILElement -{ - -public native String getId(); -public native void setId(String id) throws DOMException; - -} - diff --git a/src/bind/java/org/inkscape/dom/smil/SMILLayoutElementImpl.java b/src/bind/java/org/inkscape/dom/smil/SMILLayoutElementImpl.java deleted file mode 100644 index 51fc5912a..000000000 --- a/src/bind/java/org/inkscape/dom/smil/SMILLayoutElementImpl.java +++ /dev/null @@ -1,43 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - - -public class SMILLayoutElementImpl - extends SMILElementImpl - implements org.w3c.dom.smil.SMILLayoutElement -{ - -public native String getType(); - - -public native boolean getResolved(); - -} - diff --git a/src/bind/java/org/inkscape/dom/smil/SMILMediaElementImpl.java b/src/bind/java/org/inkscape/dom/smil/SMILMediaElementImpl.java deleted file mode 100644 index 67e8b032a..000000000 --- a/src/bind/java/org/inkscape/dom/smil/SMILMediaElementImpl.java +++ /dev/null @@ -1,152 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.smil.TimeList; - - - -public class SMILMediaElementImpl - extends SMILElementImpl - //ElementTime - implements org.w3c.dom.smil.SMILMediaElement -{ -public SMILMediaElementImpl() -{ - imbue(_ElementTime = new ElementTimeImpl()); -} - -//from ElementTime -ElementTimeImpl _ElementTime; -public TimeList getBegin() - { return _ElementTime.getBegin(); } -public void setBegin(TimeList begin) throws DOMException - { _ElementTime.setBegin(begin); } -public TimeList getEnd() - { return _ElementTime.getEnd(); } -public void setEnd(TimeList end) throws DOMException - { _ElementTime.setEnd(end); } -public float getDur() - { return _ElementTime.getDur(); } -public void setDur(float dur) throws DOMException - { _ElementTime.setDur(dur); } -public short getRestart() - { return _ElementTime.getRestart(); } -public void setRestart(short restart) throws DOMException - { _ElementTime.setRestart(restart); } -public short getFill() - { return _ElementTime.getFill(); } -public void setFill(short fill) throws DOMException - { _ElementTime.setFill(fill); } -public float getRepeatCount() - { return _ElementTime.getRepeatCount(); } -public void setRepeatCount(float repeatCount) throws DOMException - { _ElementTime.setRepeatCount(repeatCount); } -public float getRepeatDur() - { return _ElementTime.getRepeatDur(); } -public void setRepeatDur(float repeatDur) throws DOMException - { _ElementTime.setRepeatDur(repeatDur); } -public boolean beginElement() - { return _ElementTime.beginElement(); } -public boolean endElement() - { return _ElementTime.endElement(); } -public void pauseElement() - { _ElementTime.pauseElement(); } -public void resumeElement() - { _ElementTime.resumeElement(); } -public void seekElement(float seekTo) - { _ElementTime.seekElement(seekTo); } -//end ElementTime - - -public native String getAbstractAttr(); -public native void setAbstractAttr(String abstractAttr) - throws DOMException; - - -public native String getAlt(); -public native void setAlt(String alt) - throws DOMException; - -public native String getAuthor(); -public native void setAuthor(String author) - throws DOMException; - -public native String getClipBegin(); -public native void setClipBegin(String clipBegin) - throws DOMException; - -public native String getClipEnd(); -public native void setClipEnd(String clipEnd) - throws DOMException; - -public native String getCopyright(); -public native void setCopyright(String copyright) - throws DOMException; - -public native String getLongdesc(); -public native void setLongdesc(String longdesc) - throws DOMException; - -public native String getPort(); -public native void setPort(String port) - throws DOMException; - -public native String getReadIndex(); -public native void setReadIndex(String readIndex) - throws DOMException; - -public native String getRtpformat(); -public native void setRtpformat(String rtpformat) - throws DOMException; - -public native String getSrc(); -public native void setSrc(String src) - throws DOMException; - -public native String getStripRepeat(); -public native void setStripRepeat(String stripRepeat) - throws DOMException; - -public native String getTitle(); -public native void setTitle(String title) - throws DOMException; - -public native String getTransport(); -public native void setTransport(String transport) - throws DOMException; - -public native String getType(); -public native void setType(String type) - throws DOMException; - -} - diff --git a/src/bind/java/org/inkscape/dom/smil/SMILRefElementImpl.java b/src/bind/java/org/inkscape/dom/smil/SMILRefElementImpl.java deleted file mode 100644 index 1eb3d6a28..000000000 --- a/src/bind/java/org/inkscape/dom/smil/SMILRefElementImpl.java +++ /dev/null @@ -1,37 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - - -public class SMILRefElementImpl - extends SMILMediaElementImpl - implements org.w3c.dom.smil.SMILRefElement -{ -} - diff --git a/src/bind/java/org/inkscape/dom/smil/SMILRegionElementImpl.java b/src/bind/java/org/inkscape/dom/smil/SMILRegionElementImpl.java deleted file mode 100644 index d85cf3d0f..000000000 --- a/src/bind/java/org/inkscape/dom/smil/SMILRegionElementImpl.java +++ /dev/null @@ -1,76 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - -import org.w3c.dom.DOMException; - - -public class SMILRegionElementImpl - extends SMILElementImpl - //ElementLayout - implements org.w3c.dom.smil.SMILRegionElement -{ - -public SMILRegionElementImpl() -{ - imbue(_ElementLayout = new ElementLayoutImpl()); -} - -//from ElementLayout -ElementLayoutImpl _ElementLayout; -public String getTitle() - { return _ElementLayout.getTitle(); } -public void setTitle(String title) throws DOMException - { _ElementLayout.setTitle(title); } -public String getBackgroundColor() - { return _ElementLayout.getBackgroundColor(); } -public void setBackgroundColor(String backgroundColor) throws DOMException - { _ElementLayout.setBackgroundColor(backgroundColor); } -public int getHeight() - { return _ElementLayout.getHeight(); } -public void setHeight(int height) throws DOMException - { _ElementLayout.setHeight(height); } -public int getWidth() - { return _ElementLayout.getWidth(); } -public void setWidth(int width) throws DOMException - { _ElementLayout.setWidth(width); } -//end ElementLayout - - -public native String getFit(); -public native void setFit(String fit) throws DOMException; - -public native String getTop(); -public native void setTop(String top) throws DOMException; - -public native int getZIndex(); -public native void setZIndex(int zIndex) throws DOMException; - -} - diff --git a/src/bind/java/org/inkscape/dom/smil/SMILRegionInterfaceImpl.java b/src/bind/java/org/inkscape/dom/smil/SMILRegionInterfaceImpl.java deleted file mode 100644 index 1f44f9d1b..000000000 --- a/src/bind/java/org/inkscape/dom/smil/SMILRegionInterfaceImpl.java +++ /dev/null @@ -1,42 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - -import org.w3c.dom.smil.SMILRegionElement; - - -public class SMILRegionInterfaceImpl - implements org.w3c.dom.smil.SMILRegionInterface -{ - -public native SMILRegionElement getRegion(); -public native void setRegion(SMILRegionElement region); - -} - diff --git a/src/bind/java/org/inkscape/dom/smil/SMILRootLayoutElementImpl.java b/src/bind/java/org/inkscape/dom/smil/SMILRootLayoutElementImpl.java deleted file mode 100644 index 01def0622..000000000 --- a/src/bind/java/org/inkscape/dom/smil/SMILRootLayoutElementImpl.java +++ /dev/null @@ -1,67 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - -import org.w3c.dom.DOMException; - - - -public class SMILRootLayoutElementImpl - extends SMILElementImpl - //, ElementLayout - implements org.w3c.dom.smil.SMILRootLayoutElement -{ - -public SMILRootLayoutElementImpl() -{ - imbue(_ElementLayout = new ElementLayoutImpl()); -} - -//from ElementLayout -ElementLayoutImpl _ElementLayout; -public String getTitle() - { return _ElementLayout.getTitle(); } -public void setTitle(String title) throws DOMException - { _ElementLayout.setTitle(title); } -public String getBackgroundColor() - { return _ElementLayout.getBackgroundColor(); } -public void setBackgroundColor(String backgroundColor) throws DOMException - { _ElementLayout.setBackgroundColor(backgroundColor); } -public int getHeight() - { return _ElementLayout.getHeight(); } -public void setHeight(int height) throws DOMException - { _ElementLayout.setHeight(height); } -public int getWidth() - { return _ElementLayout.getWidth(); } -public void setWidth(int width) throws DOMException - { _ElementLayout.setWidth(width); } -//end ElementLayout - -} - diff --git a/src/bind/java/org/inkscape/dom/smil/SMILSetElementImpl.java b/src/bind/java/org/inkscape/dom/smil/SMILSetElementImpl.java deleted file mode 100644 index fce213000..000000000 --- a/src/bind/java/org/inkscape/dom/smil/SMILSetElementImpl.java +++ /dev/null @@ -1,122 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.smil.TimeList; - - - -public class SMILSetElementImpl - extends SMILElementImpl - //ElementTimeControl, - //ElementTime, - //ElementTargetAttributes - implements org.w3c.dom.smil.SMILSetElement -{ - -public SMILSetElementImpl() -{ - imbue(_ElementTimeControl = new ElementTimeControlImpl()); - imbue(_ElementTime = new ElementTimeImpl()); - imbue(_ElementTargetAttributes = new ElementTargetAttributesImpl()); -} - - -//from ElementTimeControl -ElementTimeControlImpl _ElementTimeControl; -public boolean beginElementAt(float offset) throws DOMException - { return _ElementTimeControl.beginElementAt(offset); } -public boolean endElementAt(float offset) throws DOMException - { return _ElementTimeControl.endElementAt(offset); } -//end ElementTimeControl - -//from ElementTime -ElementTimeImpl _ElementTime; -public TimeList getBegin() - { return _ElementTime.getBegin(); } -public void setBegin(TimeList begin) throws DOMException - { _ElementTime.setBegin(begin); } -public TimeList getEnd() - { return _ElementTime.getEnd(); } -public void setEnd(TimeList end) throws DOMException - { _ElementTime.setEnd(end); } -public float getDur() - { return _ElementTime.getDur(); } -public void setDur(float dur) throws DOMException - { _ElementTime.setDur(dur); } -public short getRestart() - { return _ElementTime.getRestart(); } -public void setRestart(short restart) throws DOMException - { _ElementTime.setRestart(restart); } -public short getFill() - { return _ElementTime.getFill(); } -public void setFill(short fill) throws DOMException - { _ElementTime.setFill(fill); } -public float getRepeatCount() - { return _ElementTime.getRepeatCount(); } -public void setRepeatCount(float repeatCount) throws DOMException - { _ElementTime.setRepeatCount(repeatCount); } -public float getRepeatDur() - { return _ElementTime.getRepeatDur(); } -public void setRepeatDur(float repeatDur) throws DOMException - { _ElementTime.setRepeatDur(repeatDur); } -public boolean beginElement() - { return _ElementTime.beginElement(); } -public boolean endElement() - { return _ElementTime.endElement(); } -public void pauseElement() - { _ElementTime.pauseElement(); } -public void resumeElement() - { _ElementTime.resumeElement(); } -public void seekElement(float seekTo) - { _ElementTime.seekElement(seekTo); } -//end ElementTime - -//from ElementTargetAttributes -ElementTargetAttributesImpl _ElementTargetAttributes; -public String getAttributeName() - { return _ElementTargetAttributes.getAttributeName(); } -public void setAttributeName(String attributeName) - { _ElementTargetAttributes.setAttributeName(attributeName); } -public short getAttributeType() - { return _ElementTargetAttributes.getAttributeType(); } -public void setAttributeType(short attributeType) - { _ElementTargetAttributes.setAttributeType(attributeType); } -//end ElementTargetAttributes - - - - -public native String getTo(); -public native void setTo(String to); - -} - diff --git a/src/bind/java/org/inkscape/dom/smil/SMILSwitchElementImpl.java b/src/bind/java/org/inkscape/dom/smil/SMILSwitchElementImpl.java deleted file mode 100644 index 78fe093b5..000000000 --- a/src/bind/java/org/inkscape/dom/smil/SMILSwitchElementImpl.java +++ /dev/null @@ -1,40 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - - -public class SMILSwitchElementImpl - extends SMILElementImpl - implements org.w3c.dom.smil.SMILSwitchElement -{ - -public native org.w3c.dom.Element getSelectedElement(); - -} - diff --git a/src/bind/java/org/inkscape/dom/smil/SMILTopLayoutElementImpl.java b/src/bind/java/org/inkscape/dom/smil/SMILTopLayoutElementImpl.java deleted file mode 100644 index c5982e5b3..000000000 --- a/src/bind/java/org/inkscape/dom/smil/SMILTopLayoutElementImpl.java +++ /dev/null @@ -1,66 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - -import org.w3c.dom.DOMException; - - - -public class SMILTopLayoutElementImpl - extends SMILElementImpl - //, ElementLayout - implements org.w3c.dom.smil.SMILTopLayoutElement -{ -public SMILTopLayoutElementImpl() -{ - imbue(_ElementLayout = new ElementLayoutImpl()); -} - -//from ElementLayout -ElementLayoutImpl _ElementLayout; -public String getTitle() - { return _ElementLayout.getTitle(); } -public void setTitle(String title) throws DOMException - { _ElementLayout.setTitle(title); } -public String getBackgroundColor() - { return _ElementLayout.getBackgroundColor(); } -public void setBackgroundColor(String backgroundColor) throws DOMException - { _ElementLayout.setBackgroundColor(backgroundColor); } -public int getHeight() - { return _ElementLayout.getHeight(); } -public void setHeight(int height) throws DOMException - { _ElementLayout.setHeight(height); } -public int getWidth() - { return _ElementLayout.getWidth(); } -public void setWidth(int width) throws DOMException - { _ElementLayout.setWidth(width); } -//end ElementLayout - -} - diff --git a/src/bind/java/org/inkscape/dom/smil/TimeEventImpl.java b/src/bind/java/org/inkscape/dom/smil/TimeEventImpl.java deleted file mode 100644 index 40305a7ba..000000000 --- a/src/bind/java/org/inkscape/dom/smil/TimeEventImpl.java +++ /dev/null @@ -1,49 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - -import org.w3c.dom.views.AbstractView; - - - -public class TimeEventImpl - extends org.inkscape.dom.events.EventImpl - implements org.w3c.dom.smil.TimeEvent -{ - -public native AbstractView getView(); - -public native int getDetail(); - -public native void initTimeEvent(String typeArg, - AbstractView viewArg, - int detailArg); - -} - diff --git a/src/bind/java/org/inkscape/dom/smil/TimeImpl.java b/src/bind/java/org/inkscape/dom/smil/TimeImpl.java deleted file mode 100644 index e5c6d5987..000000000 --- a/src/bind/java/org/inkscape/dom/smil/TimeImpl.java +++ /dev/null @@ -1,70 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - -import org.w3c.dom.DOMException; -import org.w3c.dom.Element; - - - -public class TimeImpl - implements org.w3c.dom.smil.Time -{ - -public native boolean getResolved(); - -public native double getResolvedOffset(); - -public native short getTimeType(); - -public native double getOffset(); -public native void setOffset(double offset) - throws DOMException; - -public native Element getBaseElement(); -public native void setBaseElement(Element baseElement) - throws DOMException; - - -public native boolean getBaseBegin(); -public native void setBaseBegin(boolean baseBegin) - throws DOMException; - - -public native String getEvent(); -public native void setEvent(String event) - throws DOMException; - - -public native String getMarker(); -public native void setMarker(String marker) - throws DOMException; - -} - diff --git a/src/bind/java/org/inkscape/dom/smil/TimeListImpl.java b/src/bind/java/org/inkscape/dom/smil/TimeListImpl.java deleted file mode 100644 index 88759e61b..000000000 --- a/src/bind/java/org/inkscape/dom/smil/TimeListImpl.java +++ /dev/null @@ -1,43 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that the SMIL files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/smil-boston-dom/java-binding.html - */ - -package org.inkscape.dom.smil; - -import org.w3c.dom.smil.Time; - - -public class TimeListImpl - implements org.w3c.dom.smil.TimeList -{ - -public native Time item(int index); - -public native int getLength(); - -} - diff --git a/src/bind/java/org/inkscape/dom/stylesheets/DocumentStyleImpl.java b/src/bind/java/org/inkscape/dom/stylesheets/DocumentStyleImpl.java deleted file mode 100644 index 924e06d4e..000000000 --- a/src/bind/java/org/inkscape/dom/stylesheets/DocumentStyleImpl.java +++ /dev/null @@ -1,43 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/DOM-Level-2-Style/ - */ - - -package org.inkscape.dom.stylesheets; - -import org.w3c.dom.stylesheets.StyleSheetList; - - -public class DocumentStyleImpl - extends - org.inkscape.cmn.BaseInterface - implements org.w3c.dom.stylesheets.DocumentStyle -{ - -public native StyleSheetList getStyleSheets(); - -} diff --git a/src/bind/java/org/inkscape/dom/stylesheets/LinkStyleImpl.java b/src/bind/java/org/inkscape/dom/stylesheets/LinkStyleImpl.java deleted file mode 100644 index 8497fbccd..000000000 --- a/src/bind/java/org/inkscape/dom/stylesheets/LinkStyleImpl.java +++ /dev/null @@ -1,41 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/DOM-Level-2-Style/ - */ - -package org.inkscape.dom.stylesheets; - -import org.w3c.dom.stylesheets.StyleSheet; - - - -public class LinkStyleImpl - implements org.w3c.dom.stylesheets.LinkStyle -{ - -public native StyleSheet getSheet(); - -} diff --git a/src/bind/java/org/inkscape/dom/stylesheets/MediaListImpl.java b/src/bind/java/org/inkscape/dom/stylesheets/MediaListImpl.java deleted file mode 100644 index 7451dd55d..000000000 --- a/src/bind/java/org/inkscape/dom/stylesheets/MediaListImpl.java +++ /dev/null @@ -1,53 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/DOM-Level-2-Style/ - */ - - -package org.inkscape.dom.stylesheets; - -import org.w3c.dom.DOMException; - - -public class MediaListImpl - implements org.w3c.dom.stylesheets.MediaList -{ - -public native String getMediaText(); -public native void setMediaText(String mediaText) - throws DOMException; - -public native int getLength(); - -public native String item(int index); - -public native void deleteMedium(String oldMedium) - throws DOMException; - -public native void appendMedium(String newMedium) - throws DOMException; - -} diff --git a/src/bind/java/org/inkscape/dom/stylesheets/StyleSheetImpl.java b/src/bind/java/org/inkscape/dom/stylesheets/StyleSheetImpl.java deleted file mode 100644 index 7383fa871..000000000 --- a/src/bind/java/org/inkscape/dom/stylesheets/StyleSheetImpl.java +++ /dev/null @@ -1,56 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/DOM-Level-2-Style/ - */ - -package org.inkscape.dom.stylesheets; - -import org.w3c.dom.Node; -import org.w3c.dom.stylesheets.StyleSheet; -import org.w3c.dom.stylesheets.MediaList; - - - -public class StyleSheetImpl - implements org.w3c.dom.stylesheets.StyleSheet -{ - -public native String getType(); - -public native boolean getDisabled(); -public native void setDisabled(boolean disabled); - -public native Node getOwnerNode(); - -public native StyleSheet getParentStyleSheet(); - -public native String getHref(); - -public native String getTitle(); - -public native MediaList getMedia(); - -} diff --git a/src/bind/java/org/inkscape/dom/stylesheets/StyleSheetListImpl.java b/src/bind/java/org/inkscape/dom/stylesheets/StyleSheetListImpl.java deleted file mode 100644 index 11d024948..000000000 --- a/src/bind/java/org/inkscape/dom/stylesheets/StyleSheetListImpl.java +++ /dev/null @@ -1,42 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these DOM files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/DOM-Level-2-Style/ - */ - - -package org.inkscape.dom.stylesheets; - -import org.w3c.dom.stylesheets.StyleSheet; - -public class StyleSheetListImpl - implements org.w3c.dom.stylesheets.StyleSheetList -{ - -public native int getLength(); - -public native StyleSheet item(int index); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/GetSVGDocumentImpl.java b/src/bind/java/org/inkscape/dom/svg/GetSVGDocumentImpl.java deleted file mode 100644 index afa49fd2f..000000000 --- a/src/bind/java/org/inkscape/dom/svg/GetSVGDocumentImpl.java +++ /dev/null @@ -1,43 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; -import org.w3c.dom.svg.SVGDocument; - - -public class GetSVGDocumentImpl - implements org.w3c.dom.svg.GetSVGDocument -{ - -public native SVGDocument getSVGDocument ( ) - throws DOMException; - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGAElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGAElementImpl.java deleted file mode 100644 index 5a2c8986f..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGAElementImpl.java +++ /dev/null @@ -1,176 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - -import org.w3c.dom.events.Event; -import org.w3c.dom.events.EventTarget; -import org.w3c.dom.events.EventException; -import org.w3c.dom.events.EventListener; - - -public class SVGAElementImpl - extends - SVGElementImpl - //SVGURIReference, - //SVGTests, - //SVGLangSpace, - //SVGExternalResourcesRequired, - //SVGStylable, - //SVGTransformable, - //EventTarget - implements org.w3c.dom.svg.SVGAElement -{ - -public SVGAElementImpl() -{ - imbue(_SVGURIReference = new SVGURIReferenceImpl()); - imbue(_SVGTests = new SVGTestsImpl()); - imbue(_SVGLangSpace = new SVGLangSpaceImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); - imbue(_SVGStylable = new SVGStylableImpl()); - imbue(_SVGTransformable = new SVGTransformableImpl()); - imbue(_EventTarget = new org.inkscape.dom.events.EventTargetImpl()); -} - - -//from SVGURIReference -private SVGURIReferenceImpl _SVGURIReference; -public SVGAnimatedString getHref() - { return _SVGURIReference.getHref(); } -//end SVGURIReference - -//from SVGTests -private SVGTestsImpl _SVGTests; -public SVGStringList getRequiredFeatures() - { return _SVGTests.getRequiredFeatures(); } -public SVGStringList getRequiredExtensions() - { return _SVGTests.getRequiredExtensions(); } -public SVGStringList getSystemLanguage() - { return _SVGTests.getSystemLanguage(); } -public boolean hasExtension (String extension) - { return _SVGTests.hasExtension(extension); } -//end SVGTests - -//from SVGLangSpace -private SVGLangSpaceImpl _SVGLangSpace; -public String getXMLlang() - { return _SVGLangSpace.getXMLlang(); } -public void setXMLlang(String xmllang) - throws DOMException - { _SVGLangSpace.setXMLlang(xmllang); } -public String getXMLspace() - { return _SVGLangSpace.getXMLspace(); } -public void setXMLspace(String xmlspace) - throws DOMException - { _SVGLangSpace.setXMLspace(xmlspace); } -//end SVGLangSpace - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - -//from SVGTransformable -private SVGTransformableImpl _SVGTransformable; -public SVGAnimatedTransformList getTransform() - { return _SVGTransformable.getTransform(); } -//end SVGTransformable - -//from SVGLocatable (from SVGTransformable) -public SVGElement getNearestViewportElement() - { return _SVGTransformable.getNearestViewportElement(); } -public SVGElement getFarthestViewportElement() - { return _SVGTransformable.getFarthestViewportElement(); } -public SVGRect getBBox() - { return _SVGTransformable.getBBox(); } -public SVGMatrix getCTM() - { return _SVGTransformable.getCTM(); } -public SVGMatrix getScreenCTM() - { return _SVGTransformable.getScreenCTM(); } -public SVGMatrix getTransformToElement (SVGElement element) - throws SVGException - { return _SVGTransformable.getTransformToElement(element); } -//end SVGLocatable - -//from EventTarget -private org.inkscape.dom.events.EventTargetImpl _EventTarget; -public void addEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.addEventListener(type, listener, useCapture); } -public void removeEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListener(type, listener, useCapture); } -public boolean dispatchEvent(Event evt) - throws EventException - { return _EventTarget.dispatchEvent(evt); } -public void addEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture, - Object evtGroup) - { _EventTarget.addEventListenerNS(namespaceURI, type, listener, useCapture, evtGroup); } -public void removeEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListenerNS(namespaceURI, type, listener, useCapture); } -public boolean willTriggerNS(String namespaceURI, - String type) - { return _EventTarget.willTriggerNS(namespaceURI, type); } -public boolean hasEventListenerNS(String namespaceURI, - String type) - { return _EventTarget.hasEventListenerNS(namespaceURI, type); } -//end EventTarget - - -public native SVGAnimatedString getTarget( ); - - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGAltGlyphDefElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGAltGlyphDefElementImpl.java deleted file mode 100644 index a7d7fa013..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGAltGlyphDefElementImpl.java +++ /dev/null @@ -1,36 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -public class SVGAltGlyphDefElementImpl - extends SVGElementImpl - implements org.w3c.dom.svg.SVGAltGlyphDefElement -{ -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGAltGlyphElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGAltGlyphElementImpl.java deleted file mode 100644 index a3d8522cb..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGAltGlyphElementImpl.java +++ /dev/null @@ -1,60 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; -import org.w3c.dom.svg.*; - - -public class SVGAltGlyphElementImpl - extends - SVGTextPositioningElementImpl - //SVGURIReference - implements org.w3c.dom.svg.SVGAltGlyphElement -{ - -public SVGAltGlyphElementImpl() -{ - imbue(_SVGURIReference = new SVGURIReferenceImpl()); -} - -//from SVGURIReference -private SVGURIReferenceImpl _SVGURIReference; -public SVGAnimatedString getHref() - { return _SVGURIReference.getHref(); } -//end SVGURIReference - - -public native String getGlyphRef(); -public native void setGlyphRef(String glyphRef) throws DOMException; -public native String getFormat(); -public native void setFormat(String format) throws DOMException; - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGAltGlyphItemElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGAltGlyphItemElementImpl.java deleted file mode 100644 index 6c769576a..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGAltGlyphItemElementImpl.java +++ /dev/null @@ -1,36 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -public class SVGAltGlyphItemElementImpl - extends SVGElementImpl - implements org.w3c.dom.svg.SVGAltGlyphItemElement -{ -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGAngleImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGAngleImpl.java deleted file mode 100644 index 8c6f385d4..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGAngleImpl.java +++ /dev/null @@ -1,50 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -public class SVGAngleImpl - implements org.w3c.dom.svg.SVGAngle -{ -public native short getUnitType( ); -public native float getValue( ); -public native void setValue( float value ) - throws DOMException; -public native float getValueInSpecifiedUnits( ); -public native void setValueInSpecifiedUnits( float valueInSpecifiedUnits ) - throws DOMException; -public native String getValueAsString( ); -public native void setValueAsString( String valueAsString ) - throws DOMException; - -public native void newValueSpecifiedUnits ( short unitType, float valueInSpecifiedUnits ); -public native void convertToSpecifiedUnits ( short unitType ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGAnimateColorElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGAnimateColorElementImpl.java deleted file mode 100644 index d8dbeeab0..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGAnimateColorElementImpl.java +++ /dev/null @@ -1,36 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -public class SVGAnimateColorElementImpl - extends SVGAnimationElementImpl - implements org.w3c.dom.svg.SVGAnimateColorElement -{ -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGAnimateElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGAnimateElementImpl.java deleted file mode 100644 index fb4cf9fe0..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGAnimateElementImpl.java +++ /dev/null @@ -1,35 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -public class SVGAnimateElementImpl - extends SVGAnimationElementImpl - implements org.w3c.dom.svg.SVGAnimateElement -{ -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGAnimateMotionElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGAnimateMotionElementImpl.java deleted file mode 100644 index 40911bf9d..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGAnimateMotionElementImpl.java +++ /dev/null @@ -1,35 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -public class SVGAnimateMotionElementImpl - extends SVGAnimationElementImpl - implements org.w3c.dom.svg.SVGAnimateMotionElement -{ -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGAnimateTransformElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGAnimateTransformElementImpl.java deleted file mode 100644 index 1be3639ac..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGAnimateTransformElementImpl.java +++ /dev/null @@ -1,35 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -public class SVGAnimateTransformElementImpl - extends SVGAnimationElementImpl - implements org.w3c.dom.svg.SVGAnimateTransformElement -{ -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedAngleImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGAnimatedAngleImpl.java deleted file mode 100644 index f419f49cc..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedAngleImpl.java +++ /dev/null @@ -1,43 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGAngle; - - - -public class SVGAnimatedAngleImpl - implements org.w3c.dom.svg.SVGAnimatedAngle -{ - -public native SVGAngle getBaseVal( ); -public native SVGAngle getAnimVal( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedBooleanImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGAnimatedBooleanImpl.java deleted file mode 100644 index 7501e5120..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedBooleanImpl.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - - -public class SVGAnimatedBooleanImpl - implements org.w3c.dom.svg.SVGAnimatedBoolean -{ - -public native boolean getBaseVal( ); - -public native void setBaseVal( boolean baseVal ) - throws DOMException; - -public native boolean getAnimVal( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedEnumerationImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGAnimatedEnumerationImpl.java deleted file mode 100644 index f38118053..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedEnumerationImpl.java +++ /dev/null @@ -1,45 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -public class SVGAnimatedEnumerationImpl - implements org.w3c.dom.svg.SVGAnimatedEnumeration -{ - -public native short getBaseVal( ); - -public native void setBaseVal( short baseVal ) - throws DOMException; - -public native short getAnimVal( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedIntegerImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGAnimatedIntegerImpl.java deleted file mode 100644 index dc6ad43d1..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedIntegerImpl.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - - -public class SVGAnimatedIntegerImpl - implements org.w3c.dom.svg.SVGAnimatedInteger -{ - -public native int getBaseVal( ); - -public native void setBaseVal( int baseVal ) - throws DOMException; - -public native int getAnimVal( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedLengthImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGAnimatedLengthImpl.java deleted file mode 100644 index 44dce05c8..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedLengthImpl.java +++ /dev/null @@ -1,44 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGLength; - - -public class SVGAnimatedLengthImpl - implements org.w3c.dom.svg.SVGAnimatedLength -{ - -public native SVGLength getBaseVal( ); - -public native SVGLength getAnimVal( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedLengthListImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGAnimatedLengthListImpl.java deleted file mode 100644 index b9ec6059a..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedLengthListImpl.java +++ /dev/null @@ -1,42 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGLengthList; - - -public class SVGAnimatedLengthListImpl - implements org.w3c.dom.svg.SVGAnimatedLengthList -{ - -public native SVGLengthList getBaseVal( ); -public native SVGLengthList getAnimVal( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedNumberImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGAnimatedNumberImpl.java deleted file mode 100644 index dffbb259c..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedNumberImpl.java +++ /dev/null @@ -1,45 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -public class SVGAnimatedNumberImpl - implements org.w3c.dom.svg.SVGAnimatedNumber -{ - -public native float getBaseVal( ); - -public native void setBaseVal( float baseVal ) - throws DOMException; - -public native float getAnimVal( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedNumberListImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGAnimatedNumberListImpl.java deleted file mode 100644 index 0862330b0..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedNumberListImpl.java +++ /dev/null @@ -1,43 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGNumberList; - - -public class SVGAnimatedNumberListImpl - implements org.w3c.dom.svg.SVGAnimatedNumberList -{ - -public native SVGNumberList getBaseVal( ); - -public native SVGNumberList getAnimVal( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedPathDataImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGAnimatedPathDataImpl.java deleted file mode 100644 index a26e0b5f7..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedPathDataImpl.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGPathSegList; - - -public class SVGAnimatedPathDataImpl - extends - org.inkscape.cmn.BaseInterface - implements org.w3c.dom.svg.SVGAnimatedPathData -{ - -public native SVGPathSegList getPathSegList( ); -public native SVGPathSegList getNormalizedPathSegList( ); -public native SVGPathSegList getAnimatedPathSegList( ); -public native SVGPathSegList getAnimatedNormalizedPathSegList( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedPointsImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGAnimatedPointsImpl.java deleted file mode 100644 index 3b79d667a..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedPointsImpl.java +++ /dev/null @@ -1,43 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGPointList; - - -public class SVGAnimatedPointsImpl - extends - org.inkscape.cmn.BaseInterface - implements org.w3c.dom.svg.SVGAnimatedPoints -{ - -public native SVGPointList getPoints( ); -public native SVGPointList getAnimatedPoints( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedPreserveAspectRatioImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGAnimatedPreserveAspectRatioImpl.java deleted file mode 100644 index 93d463ca0..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedPreserveAspectRatioImpl.java +++ /dev/null @@ -1,39 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGPreserveAspectRatio; - - -public class SVGAnimatedPreserveAspectRatioImpl - implements org.w3c.dom.svg.SVGAnimatedPreserveAspectRatio -{ -public native SVGPreserveAspectRatio getBaseVal( ); -public native SVGPreserveAspectRatio getAnimVal( ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedRectImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGAnimatedRectImpl.java deleted file mode 100644 index ba2bc09a8..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedRectImpl.java +++ /dev/null @@ -1,38 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGRect; - -public class SVGAnimatedRectImpl - implements org.w3c.dom.svg.SVGAnimatedRect -{ -public native SVGRect getBaseVal( ); -public native SVGRect getAnimVal( ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedStringImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGAnimatedStringImpl.java deleted file mode 100644 index 4276bcb13..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedStringImpl.java +++ /dev/null @@ -1,39 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; -public class SVGAnimatedStringImpl - implements org.w3c.dom.svg.SVGAnimatedString -{ -public native String getBaseVal( ); -public native void setBaseVal( String baseVal ) - throws DOMException; -public native String getAnimVal( ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedTransformListImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGAnimatedTransformListImpl.java deleted file mode 100644 index 21a015177..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGAnimatedTransformListImpl.java +++ /dev/null @@ -1,39 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGTransformList; - - -public class SVGAnimatedTransformListImpl - implements org.w3c.dom.svg.SVGAnimatedTransformList -{ -public native SVGTransformList getBaseVal( ); -public native SVGTransformList getAnimVal( ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGAnimationElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGAnimationElementImpl.java deleted file mode 100644 index 8681052fd..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGAnimationElementImpl.java +++ /dev/null @@ -1,132 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; -import org.w3c.dom.events.EventTarget; -import org.w3c.dom.smil.ElementTimeControl; -import org.w3c.dom.svg.*; - -import org.w3c.dom.events.EventException; -import org.w3c.dom.events.Event; -import org.w3c.dom.events.EventListener; - - - -public class SVGAnimationElementImpl - extends - SVGElementImpl - //SVGTests, - //SVGExternalResourcesRequired, - //ElementTimeControl, - //EventTarget - implements org.w3c.dom.svg.SVGAnimationElement -{ - -public SVGAnimationElementImpl() -{ - imbue(_SVGTests = new SVGTestsImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); - imbue(_ElementTimeControl = new org.inkscape.dom.smil.ElementTimeControlImpl()); - imbue(_EventTarget = new org.inkscape.dom.events.EventTargetImpl()); -} - -//from SVGTests -private SVGTestsImpl _SVGTests; -public SVGStringList getRequiredFeatures() - { return _SVGTests.getRequiredFeatures(); } -public SVGStringList getRequiredExtensions() - { return _SVGTests.getRequiredExtensions(); } -public SVGStringList getSystemLanguage() - { return _SVGTests.getSystemLanguage(); } -public boolean hasExtension (String extension) - { return _SVGTests.hasExtension(extension); } -//end SVGTests - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - -//from ElementTimeControl -org.inkscape.dom.smil.ElementTimeControlImpl _ElementTimeControl; -public boolean beginElement() throws DOMException - { return _ElementTimeControl.beginElement(); } -public boolean endElement() throws DOMException - { return _ElementTimeControl.endElement(); } -public boolean beginElementAt(float offset) throws DOMException - { return _ElementTimeControl.beginElementAt(offset); } -public boolean endElementAt(float offset) throws DOMException - { return _ElementTimeControl.endElementAt(offset); } -//end ElementTimeControl - - -//from EventTarget -private org.inkscape.dom.events.EventTargetImpl _EventTarget; -public void addEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.addEventListener(type, listener, useCapture); } -public void removeEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListener(type, listener, useCapture); } -public boolean dispatchEvent(Event evt) - throws EventException - { return _EventTarget.dispatchEvent(evt); } -public void addEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture, - Object evtGroup) - { _EventTarget.addEventListenerNS(namespaceURI, type, listener, useCapture, evtGroup); } -public void removeEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListenerNS(namespaceURI, type, listener, useCapture); } -public boolean willTriggerNS(String namespaceURI, - String type) - { return _EventTarget.willTriggerNS(namespaceURI, type); } -public boolean hasEventListenerNS(String namespaceURI, - String type) - { return _EventTarget.hasEventListenerNS(namespaceURI, type); } -//end EventTarget - - -public native SVGElement getTargetElement( ); - -public native float getStartTime ( ); - -public native float getCurrentTime ( ); - -public native float getSimpleDuration ( ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGCSSRuleImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGCSSRuleImpl.java deleted file mode 100644 index d99f6da80..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGCSSRuleImpl.java +++ /dev/null @@ -1,39 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - - - -public class SVGCSSRuleImpl - extends - org.inkscape.dom.css.CSSRuleImpl - implements org.w3c.dom.svg.SVGCSSRule -{ - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGCircleElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGCircleElementImpl.java deleted file mode 100644 index 4391867b4..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGCircleElementImpl.java +++ /dev/null @@ -1,172 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - -import org.w3c.dom.events.EventTarget; -import org.w3c.dom.events.EventException; -import org.w3c.dom.events.Event; -import org.w3c.dom.events.EventListener; - - -public class SVGCircleElementImpl - extends - SVGElementImpl - //SVGTests, - //SVGLangSpace, - //SVGExternalResourcesRequired, - //SVGStylable, - //SVGTransformable, - //EventTarget - implements org.w3c.dom.svg.SVGCircleElement -{ - -public SVGCircleElementImpl() -{ - imbue(_SVGTests = new SVGTestsImpl()); - imbue(_SVGLangSpace = new SVGLangSpaceImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); - imbue(_SVGStylable = new SVGStylableImpl()); - imbue(_SVGTransformable = new SVGTransformableImpl()); - imbue(_EventTarget = new org.inkscape.dom.events.EventTargetImpl()); -} - - -//from SVGTests -private SVGTestsImpl _SVGTests; -public SVGStringList getRequiredFeatures() - { return _SVGTests.getRequiredFeatures(); } -public SVGStringList getRequiredExtensions() - { return _SVGTests.getRequiredExtensions(); } -public SVGStringList getSystemLanguage() - { return _SVGTests.getSystemLanguage(); } -public boolean hasExtension (String extension) - { return _SVGTests.hasExtension(extension); } -//end SVGTests - -//from SVGLangSpace -private SVGLangSpaceImpl _SVGLangSpace; -public String getXMLlang() - { return _SVGLangSpace.getXMLlang(); } -public void setXMLlang(String xmllang) - throws DOMException - { _SVGLangSpace.setXMLlang(xmllang); } -public String getXMLspace() - { return _SVGLangSpace.getXMLspace(); } -public void setXMLspace(String xmlspace) - throws DOMException - { _SVGLangSpace.setXMLspace(xmlspace); } -//end SVGLangSpace - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - - -//from SVGTransformable -private SVGTransformableImpl _SVGTransformable; -public SVGAnimatedTransformList getTransform() - { return _SVGTransformable.getTransform(); } -//end SVGTransformable - -//from SVGLocatable (from SVGTransformable) -public SVGElement getNearestViewportElement() - { return _SVGTransformable.getNearestViewportElement(); } -public SVGElement getFarthestViewportElement() - { return _SVGTransformable.getFarthestViewportElement(); } -public SVGRect getBBox() - { return _SVGTransformable.getBBox(); } -public SVGMatrix getCTM() - { return _SVGTransformable.getCTM(); } -public SVGMatrix getScreenCTM() - { return _SVGTransformable.getScreenCTM(); } -public SVGMatrix getTransformToElement (SVGElement element) - throws SVGException - { return _SVGTransformable.getTransformToElement(element); } -//end SVGLocatable - -//from EventTarget -private org.inkscape.dom.events.EventTargetImpl _EventTarget; -public void addEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.addEventListener(type, listener, useCapture); } -public void removeEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListener(type, listener, useCapture); } -public boolean dispatchEvent(Event evt) - throws EventException - { return _EventTarget.dispatchEvent(evt); } -public void addEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture, - Object evtGroup) - { _EventTarget.addEventListenerNS(namespaceURI, type, listener, useCapture, evtGroup); } -public void removeEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListenerNS(namespaceURI, type, listener, useCapture); } -public boolean willTriggerNS(String namespaceURI, - String type) - { return _EventTarget.willTriggerNS(namespaceURI, type); } -public boolean hasEventListenerNS(String namespaceURI, - String type) - { return _EventTarget.hasEventListenerNS(namespaceURI, type); } -//end EventTarget - - -public native SVGAnimatedLength getCx( ); - -public native SVGAnimatedLength getCy( ); - -public native SVGAnimatedLength getR( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGClipPathElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGClipPathElementImpl.java deleted file mode 100644 index be5dcbbfa..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGClipPathElementImpl.java +++ /dev/null @@ -1,134 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - - - - -public class SVGClipPathElementImpl - extends - SVGElementImpl - //SVGTests, - //SVGLangSpace, - //SVGExternalResourcesRequired, - //SVGStylable, - //SVGTransformable, - //SVGUnitTypes - implements org.w3c.dom.svg.SVGClipPathElement -{ - -public SVGClipPathElementImpl() -{ - imbue(_SVGTests = new SVGTestsImpl()); - imbue(_SVGLangSpace = new SVGLangSpaceImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); - imbue(_SVGStylable = new SVGStylableImpl()); - imbue(_SVGTransformable = new SVGTransformableImpl()); -} - -//from SVGTests -private SVGTestsImpl _SVGTests; -public SVGStringList getRequiredFeatures() - { return _SVGTests.getRequiredFeatures(); } -public SVGStringList getRequiredExtensions() - { return _SVGTests.getRequiredExtensions(); } -public SVGStringList getSystemLanguage() - { return _SVGTests.getSystemLanguage(); } -public boolean hasExtension (String extension) - { return _SVGTests.hasExtension(extension); } -//end SVGTests - -//from SVGLangSpace -private SVGLangSpaceImpl _SVGLangSpace; -public String getXMLlang() - { return _SVGLangSpace.getXMLlang(); } -public void setXMLlang(String xmllang) - throws DOMException - { _SVGLangSpace.setXMLlang(xmllang); } -public String getXMLspace() - { return _SVGLangSpace.getXMLspace(); } -public void setXMLspace(String xmlspace) - throws DOMException - { _SVGLangSpace.setXMLspace(xmlspace); } -//end SVGLangSpace - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - - -//from SVGTransformable -private SVGTransformableImpl _SVGTransformable; -public SVGAnimatedTransformList getTransform() - { return _SVGTransformable.getTransform(); } -//end SVGTransformable - -//from SVGLocatable (from SVGTransformable) -public SVGElement getNearestViewportElement() - { return _SVGTransformable.getNearestViewportElement(); } -public SVGElement getFarthestViewportElement() - { return _SVGTransformable.getFarthestViewportElement(); } -public SVGRect getBBox() - { return _SVGTransformable.getBBox(); } -public SVGMatrix getCTM() - { return _SVGTransformable.getCTM(); } -public SVGMatrix getScreenCTM() - { return _SVGTransformable.getScreenCTM(); } -public SVGMatrix getTransformToElement (SVGElement element) - throws SVGException - { return _SVGTransformable.getTransformToElement(element); } -//end SVGLocatable - - - - -public native SVGAnimatedEnumeration getClipPathUnits( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGColorImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGColorImpl.java deleted file mode 100644 index 51d11e777..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGColorImpl.java +++ /dev/null @@ -1,54 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGException; -import org.w3c.dom.css.RGBColor; -import org.w3c.dom.css.CSSValue; - -import org.w3c.dom.svg.SVGICCColor; - -public class SVGColorImpl - extends - org.inkscape.dom.css.CSSValueImpl - implements org.w3c.dom.svg.SVGColor -{ - -public native short getColorType( ); -public native RGBColor getRGBColor( ); -public native SVGICCColor getICCColor( ); - -public native void setRGBColor ( String rgbColor ) - throws SVGException; -public native void setRGBColorICCColor ( String rgbColor, String iccColor ) - throws SVGException; -public native void setColor ( short colorType, String rgbColor, String iccColor ) - throws SVGException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGColorProfileElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGColorProfileElementImpl.java deleted file mode 100644 index 6e9e70a74..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGColorProfileElementImpl.java +++ /dev/null @@ -1,68 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; -import org.w3c.dom.svg.SVGAnimatedString; - - - -public class SVGColorProfileElementImpl - extends - SVGElementImpl - //SVGURIReference, - //SVGRenderingIntent - implements org.w3c.dom.svg.SVGColorProfileElement -{ - -public SVGColorProfileElementImpl() -{ - imbue(_SVGURIReference = new SVGURIReferenceImpl()); -} - -//from SVGURIReference -private SVGURIReferenceImpl _SVGURIReference; -public SVGAnimatedString getHref() - { return _SVGURIReference.getHref(); } -//end SVGURIReference - - -public native String getLocal( ); -public native void setLocal( String local ) - throws DOMException; - -public native String getName( ); -public native void setName( String name ) - throws DOMException; - -public native short getRenderingIntent( ); -public native void setRenderingIntent( short renderingIntent ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGColorProfileRuleImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGColorProfileRuleImpl.java deleted file mode 100644 index 62b95b219..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGColorProfileRuleImpl.java +++ /dev/null @@ -1,53 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - - -public class SVGColorProfileRuleImpl - extends - SVGCSSRuleImpl - //SVGRenderingIntent - implements org.w3c.dom.svg.SVGColorProfileRule -{ - -public native String getSrc( ); -public native void setSrc( String src ) - throws DOMException; - -public native String getName( ); -public native void setName( String name ) - throws DOMException; - -public native short getRenderingIntent( ); -public native void setRenderingIntent( short renderingIntent ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGComponentTransferFunctionElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGComponentTransferFunctionElementImpl.java deleted file mode 100644 index e257e76c8..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGComponentTransferFunctionElementImpl.java +++ /dev/null @@ -1,50 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGAnimatedEnumeration; -import org.w3c.dom.svg.SVGAnimatedNumberList; -import org.w3c.dom.svg.SVGAnimatedNumber; - - -public class SVGComponentTransferFunctionElementImpl - extends - SVGElementImpl - implements org.w3c.dom.svg.SVGComponentTransferFunctionElement -{ - -public native SVGAnimatedEnumeration getType( ); -public native SVGAnimatedNumberList getTableValues( ); -public native SVGAnimatedNumber getSlope( ); -public native SVGAnimatedNumber getIntercept( ); -public native SVGAnimatedNumber getAmplitude( ); -public native SVGAnimatedNumber getExponent( ); -public native SVGAnimatedNumber getOffset( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGCursorElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGCursorElementImpl.java deleted file mode 100644 index 29ffd4a10..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGCursorElementImpl.java +++ /dev/null @@ -1,84 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.*; - - -public class SVGCursorElementImpl - extends - SVGElementImpl - //SVGURIReference, - //SVGTests, - //SVGExternalResourcesRequired - implements org.w3c.dom.svg.SVGCursorElement -{ - -public SVGCursorElementImpl() -{ - imbue(_SVGURIReference = new SVGURIReferenceImpl()); - imbue(_SVGTests = new SVGTestsImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); -} - - -//from SVGURIReference -private SVGURIReferenceImpl _SVGURIReference; -public SVGAnimatedString getHref() - { return _SVGURIReference.getHref(); } -//end SVGURIReference - -//from SVGTests -private SVGTestsImpl _SVGTests; -public SVGStringList getRequiredFeatures() - { return _SVGTests.getRequiredFeatures(); } -public SVGStringList getRequiredExtensions() - { return _SVGTests.getRequiredExtensions(); } -public SVGStringList getSystemLanguage() - { return _SVGTests.getSystemLanguage(); } -public boolean hasExtension (String extension) - { return _SVGTests.hasExtension(extension); } -//end SVGTests - - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - - - - -public native SVGAnimatedLength getX( ); - -public native SVGAnimatedLength getY( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGDefinitionSrcElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGDefinitionSrcElementImpl.java deleted file mode 100644 index bc57aa1c9..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGDefinitionSrcElementImpl.java +++ /dev/null @@ -1,36 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -public class SVGDefinitionSrcElementImpl - extends - SVGElementImpl - implements org.w3c.dom.svg.SVGDefinitionSrcElement -{ -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGDefsElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGDefsElementImpl.java deleted file mode 100644 index b1d23df04..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGDefsElementImpl.java +++ /dev/null @@ -1,165 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - -import org.w3c.dom.events.Event; -import org.w3c.dom.events.EventTarget; -import org.w3c.dom.events.EventException; -import org.w3c.dom.events.EventListener; - - - -public class SVGDefsElementImpl - extends - SVGElementImpl - //SVGTests, - //SVGLangSpace, - //SVGExternalResourcesRequired, - //SVGStylable, - //SVGTransformable, - //EventTarget - implements org.w3c.dom.svg.SVGDefsElement -{ -public SVGDefsElementImpl() -{ - imbue(_SVGTests = new SVGTestsImpl()); - imbue(_SVGLangSpace = new SVGLangSpaceImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); - imbue(_SVGStylable = new SVGStylableImpl()); - imbue(_SVGTransformable = new SVGTransformableImpl()); - imbue(_EventTarget = new org.inkscape.dom.events.EventTargetImpl()); -} - - - -//from SVGTests -private SVGTestsImpl _SVGTests; -public SVGStringList getRequiredFeatures() - { return _SVGTests.getRequiredFeatures(); } -public SVGStringList getRequiredExtensions() - { return _SVGTests.getRequiredExtensions(); } -public SVGStringList getSystemLanguage() - { return _SVGTests.getSystemLanguage(); } -public boolean hasExtension (String extension) - { return _SVGTests.hasExtension(extension); } -//end SVGTests - -//from SVGLangSpace -private SVGLangSpaceImpl _SVGLangSpace; -public String getXMLlang() - { return _SVGLangSpace.getXMLlang(); } -public void setXMLlang(String xmllang) - throws DOMException - { _SVGLangSpace.setXMLlang(xmllang); } -public String getXMLspace() - { return _SVGLangSpace.getXMLspace(); } -public void setXMLspace(String xmlspace) - throws DOMException - { _SVGLangSpace.setXMLspace(xmlspace); } -//end SVGLangSpace - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - -//from SVGTransformable -private SVGTransformableImpl _SVGTransformable; -public SVGAnimatedTransformList getTransform() - { return _SVGTransformable.getTransform(); } -//end SVGTransformable - -//from SVGLocatable (from SVGTransformable) -public SVGElement getNearestViewportElement() - { return _SVGTransformable.getNearestViewportElement(); } -public SVGElement getFarthestViewportElement() - { return _SVGTransformable.getFarthestViewportElement(); } -public SVGRect getBBox() - { return _SVGTransformable.getBBox(); } -public SVGMatrix getCTM() - { return _SVGTransformable.getCTM(); } -public SVGMatrix getScreenCTM() - { return _SVGTransformable.getScreenCTM(); } -public SVGMatrix getTransformToElement (SVGElement element) - throws SVGException - { return _SVGTransformable.getTransformToElement(element); } -//end SVGLocatable - -//from EventTarget -private org.inkscape.dom.events.EventTargetImpl _EventTarget; -public void addEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.addEventListener(type, listener, useCapture); } -public void removeEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListener(type, listener, useCapture); } -public boolean dispatchEvent(Event evt) - throws EventException - { return _EventTarget.dispatchEvent(evt); } -public void addEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture, - Object evtGroup) - { _EventTarget.addEventListenerNS(namespaceURI, type, listener, useCapture, evtGroup); } -public void removeEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListenerNS(namespaceURI, type, listener, useCapture); } -public boolean willTriggerNS(String namespaceURI, - String type) - { return _EventTarget.willTriggerNS(namespaceURI, type); } -public boolean hasEventListenerNS(String namespaceURI, - String type) - { return _EventTarget.hasEventListenerNS(namespaceURI, type); } -//end EventTarget - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGDescElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGDescElementImpl.java deleted file mode 100644 index 56a510974..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGDescElementImpl.java +++ /dev/null @@ -1,82 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - - - -public class SVGDescElementImpl - extends - SVGElementImpl - // SVGLangSpace, - // SVGStylable - implements org.w3c.dom.svg.SVGDescElement -{ - -public SVGDescElementImpl() -{ - imbue(_SVGLangSpace = new SVGLangSpaceImpl()); - imbue(_SVGStylable = new SVGStylableImpl()); -} - - -//from SVGLangSpace -private SVGLangSpaceImpl _SVGLangSpace; -public String getXMLlang() - { return _SVGLangSpace.getXMLlang(); } -public void setXMLlang(String xmllang) - throws DOMException - { _SVGLangSpace.setXMLlang(xmllang); } -public String getXMLspace() - { return _SVGLangSpace.getXMLspace(); } -public void setXMLspace(String xmlspace) - throws DOMException - { _SVGLangSpace.setXMLspace(xmlspace); } -//end SVGLangSpace - - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGDocumentImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGDocumentImpl.java deleted file mode 100644 index 9ee152446..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGDocumentImpl.java +++ /dev/null @@ -1,65 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; -import org.w3c.dom.Document; -import org.w3c.dom.events.Event; -import org.w3c.dom.events.DocumentEvent; - -import org.w3c.dom.svg.SVGSVGElement; - - -public class SVGDocumentImpl - extends - org.inkscape.dom.DocumentImpl - //DocumentEvent - implements org.w3c.dom.svg.SVGDocument -{ -public SVGDocumentImpl() -{ - imbue(_DocumentEvent = new org.inkscape.dom.events.DocumentEventImpl()); -} - -//from DocumentEvent -org.inkscape.dom.events.DocumentEventImpl _DocumentEvent; -public Event createEvent(String eventType) throws DOMException - { return _DocumentEvent.createEvent(eventType); } -public boolean canDispatch(String namespaceURI, String type) - { return _DocumentEvent.canDispatch(namespaceURI, type); } -//end DocumentEvent - -public native String getTitle( ); -public native String getReferrer( ); -public native String getDomain( ); -public native String getURL( ); -public native SVGSVGElement getRootElement( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGElementImpl.java deleted file mode 100644 index f0f8c3436..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGElementImpl.java +++ /dev/null @@ -1,53 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; -import org.w3c.dom.svg.SVGElement; -import org.w3c.dom.svg.SVGSVGElement; - - - -public class SVGElementImpl - extends - org.inkscape.dom.ElementImpl - implements org.w3c.dom.svg.SVGElement -{ - -public native String getId( ); -public native void setId( String id ) - throws DOMException; -public native String getXMLbase( ); -public native void setXMLbase( String xmlbase ) - throws DOMException; -public native SVGSVGElement getOwnerSVGElement( ); -public native SVGElement getViewportElement( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGElementInstanceImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGElementInstanceImpl.java deleted file mode 100644 index 2d33de6c2..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGElementInstanceImpl.java +++ /dev/null @@ -1,52 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGElement; -import org.w3c.dom.svg.SVGUseElement; -import org.w3c.dom.svg.SVGElementInstance; -import org.w3c.dom.svg.SVGElementInstanceList; - - -public class SVGElementInstanceImpl - extends - org.inkscape.dom.events.EventTargetImpl - implements org.w3c.dom.svg.SVGElementInstance -{ - -public native SVGElement getCorrespondingElement( ); -public native SVGUseElement getCorrespondingUseElement( ); -public native SVGElementInstance getParentNode( ); -public native SVGElementInstanceList getChildNodes( ); -public native SVGElementInstance getFirstChild( ); -public native SVGElementInstance getLastChild( ); -public native SVGElementInstance getPreviousSibling( ); -public native SVGElementInstance getNextSibling( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGElementInstanceListImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGElementInstanceListImpl.java deleted file mode 100644 index c504701ae..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGElementInstanceListImpl.java +++ /dev/null @@ -1,42 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGElementInstance; - - -public class SVGElementInstanceListImpl - implements org.w3c.dom.svg.SVGElementInstanceList -{ -public native int getLength( ); - -public native SVGElementInstance item ( int index ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGEllipseElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGEllipseElementImpl.java deleted file mode 100644 index 2e2111649..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGEllipseElementImpl.java +++ /dev/null @@ -1,172 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - -import org.w3c.dom.events.Event; -import org.w3c.dom.events.EventTarget; -import org.w3c.dom.events.EventException; -import org.w3c.dom.events.EventListener; - - -public class SVGEllipseElementImpl - extends - SVGElementImpl - //SVGTests, - //SVGLangSpace, - //SVGExternalResourcesRequired, - //SVGStylable, - //SVGTransformable, - //EventTarget - implements org.w3c.dom.svg.SVGEllipseElement -{ -public SVGEllipseElementImpl() -{ - imbue(_SVGTests = new SVGTestsImpl()); - imbue(_SVGLangSpace = new SVGLangSpaceImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); - imbue(_SVGStylable = new SVGStylableImpl()); - imbue(_SVGTransformable = new SVGTransformableImpl()); - imbue(_EventTarget = new org.inkscape.dom.events.EventTargetImpl()); -} - -//from SVGTests -private SVGTestsImpl _SVGTests; -public SVGStringList getRequiredFeatures() - { return _SVGTests.getRequiredFeatures(); } -public SVGStringList getRequiredExtensions() - { return _SVGTests.getRequiredExtensions(); } -public SVGStringList getSystemLanguage() - { return _SVGTests.getSystemLanguage(); } -public boolean hasExtension (String extension) - { return _SVGTests.hasExtension(extension); } -//end SVGTests - -//from SVGLangSpace -private SVGLangSpaceImpl _SVGLangSpace; -public String getXMLlang() - { return _SVGLangSpace.getXMLlang(); } -public void setXMLlang(String xmllang) - throws DOMException - { _SVGLangSpace.setXMLlang(xmllang); } -public String getXMLspace() - { return _SVGLangSpace.getXMLspace(); } -public void setXMLspace(String xmlspace) - throws DOMException - { _SVGLangSpace.setXMLspace(xmlspace); } -//end SVGLangSpace - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - -//from SVGTransformable -private SVGTransformableImpl _SVGTransformable; -public SVGAnimatedTransformList getTransform() - { return _SVGTransformable.getTransform(); } -//end SVGTransformable - -//from SVGLocatable (from SVGTransformable) -public SVGElement getNearestViewportElement() - { return _SVGTransformable.getNearestViewportElement(); } -public SVGElement getFarthestViewportElement() - { return _SVGTransformable.getFarthestViewportElement(); } -public SVGRect getBBox() - { return _SVGTransformable.getBBox(); } -public SVGMatrix getCTM() - { return _SVGTransformable.getCTM(); } -public SVGMatrix getScreenCTM() - { return _SVGTransformable.getScreenCTM(); } -public SVGMatrix getTransformToElement (SVGElement element) - throws SVGException - { return _SVGTransformable.getTransformToElement(element); } -//end SVGLocatable - -//from EventTarget -private org.inkscape.dom.events.EventTargetImpl _EventTarget; -public void addEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.addEventListener(type, listener, useCapture); } -public void removeEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListener(type, listener, useCapture); } -public boolean dispatchEvent(Event evt) - throws EventException - { return _EventTarget.dispatchEvent(evt); } -public void addEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture, - Object evtGroup) - { _EventTarget.addEventListenerNS(namespaceURI, type, listener, useCapture, evtGroup); } -public void removeEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListenerNS(namespaceURI, type, listener, useCapture); } -public boolean willTriggerNS(String namespaceURI, - String type) - { return _EventTarget.willTriggerNS(namespaceURI, type); } -public boolean hasEventListenerNS(String namespaceURI, - String type) - { return _EventTarget.hasEventListenerNS(namespaceURI, type); } -//end EventTarget - - - -public native SVGAnimatedLength getCx( ); - -public native SVGAnimatedLength getCy( ); - -public native SVGAnimatedLength getRx( ); - -public native SVGAnimatedLength getRy( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGEventImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGEventImpl.java deleted file mode 100644 index ab1b4686d..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGEventImpl.java +++ /dev/null @@ -1,40 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - - - - -public class SVGEventImpl - extends - org.inkscape.dom.events.EventImpl - implements org.w3c.dom.svg.SVGEvent -{ -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGExternalResourcesRequiredImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGExternalResourcesRequiredImpl.java deleted file mode 100644 index 08fac8312..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGExternalResourcesRequiredImpl.java +++ /dev/null @@ -1,44 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGAnimatedBoolean; - - -public class SVGExternalResourcesRequiredImpl - extends - org.inkscape.cmn.BaseInterface - implements org.w3c.dom.svg.SVGExternalResourcesRequired -{ - -public native SVGAnimatedBoolean getExternalResourcesRequired( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFEBlendElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFEBlendElementImpl.java deleted file mode 100644 index a55f2ef49..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFEBlendElementImpl.java +++ /dev/null @@ -1,84 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - - - -public class SVGFEBlendElementImpl - extends - SVGElementImpl - //SVGFilterPrimitiveStandardAttributes - implements org.w3c.dom.svg.SVGFEBlendElement -{ -public SVGFEBlendElementImpl() -{ - imbue(_SVGFilterPrimitiveStandardAttributes = - new SVGFilterPrimitiveStandardAttributesImpl()); -} - - -//from SVGFilterPrimitiveStandardAttributes -SVGFilterPrimitiveStandardAttributesImpl _SVGFilterPrimitiveStandardAttributes; -public SVGAnimatedLength getX() - { return _SVGFilterPrimitiveStandardAttributes.getX(); } -public SVGAnimatedLength getY() - { return _SVGFilterPrimitiveStandardAttributes.getY(); } -public SVGAnimatedLength getWidth() - { return _SVGFilterPrimitiveStandardAttributes.getWidth(); } -public SVGAnimatedLength getHeight() - { return _SVGFilterPrimitiveStandardAttributes.getHeight(); } -public SVGAnimatedString getResult() - { return _SVGFilterPrimitiveStandardAttributes.getResult(); } -//end SVGFilterPrimitiveStandardAttributes - -//from SVGStylable (from SVGFilterPrimitiveStandardAttributes) -public SVGAnimatedString getClassName() - { return _SVGFilterPrimitiveStandardAttributes.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGFilterPrimitiveStandardAttributes.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGFilterPrimitiveStandardAttributes.getPresentationAttribute(name); } -//end SVGStylable - - -public native SVGAnimatedString getIn1(); - -public native SVGAnimatedString getIn2(); - -public native SVGAnimatedEnumeration getMode(); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFEColorMatrixElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFEColorMatrixElementImpl.java deleted file mode 100644 index 9a68d21ab..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFEColorMatrixElementImpl.java +++ /dev/null @@ -1,84 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - - - -public class SVGFEColorMatrixElementImpl - extends - SVGElementImpl - //SVGFilterPrimitiveStandardAttributes - implements org.w3c.dom.svg.SVGFEColorMatrixElement -{ -public SVGFEColorMatrixElementImpl() -{ - imbue(_SVGFilterPrimitiveStandardAttributes = - new SVGFilterPrimitiveStandardAttributesImpl()); -} - -//from SVGFilterPrimitiveStandardAttributes -SVGFilterPrimitiveStandardAttributesImpl _SVGFilterPrimitiveStandardAttributes; -public SVGAnimatedLength getX() - { return _SVGFilterPrimitiveStandardAttributes.getX(); } -public SVGAnimatedLength getY() - { return _SVGFilterPrimitiveStandardAttributes.getY(); } -public SVGAnimatedLength getWidth() - { return _SVGFilterPrimitiveStandardAttributes.getWidth(); } -public SVGAnimatedLength getHeight() - { return _SVGFilterPrimitiveStandardAttributes.getHeight(); } -public SVGAnimatedString getResult() - { return _SVGFilterPrimitiveStandardAttributes.getResult(); } -//end SVGFilterPrimitiveStandardAttributes - -//from SVGStylable (from SVGFilterPrimitiveStandardAttributes) -public SVGAnimatedString getClassName() - { return _SVGFilterPrimitiveStandardAttributes.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGFilterPrimitiveStandardAttributes.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGFilterPrimitiveStandardAttributes.getPresentationAttribute(name); } -//end SVGStylable - - - -public native SVGAnimatedString getIn1( ); - -public native SVGAnimatedEnumeration getType( ); - -public native SVGAnimatedNumberList getValues( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFEComponentTransferElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFEComponentTransferElementImpl.java deleted file mode 100644 index 8ecf3180c..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFEComponentTransferElementImpl.java +++ /dev/null @@ -1,79 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - - - -public class SVGFEComponentTransferElementImpl - extends - SVGElementImpl - //SVGFilterPrimitiveStandardAttributes - implements org.w3c.dom.svg.SVGFEComponentTransferElement -{ -public SVGFEComponentTransferElementImpl() -{ - imbue(_SVGFilterPrimitiveStandardAttributes = - new SVGFilterPrimitiveStandardAttributesImpl()); -} - -//from SVGFilterPrimitiveStandardAttributes -SVGFilterPrimitiveStandardAttributesImpl _SVGFilterPrimitiveStandardAttributes; -public SVGAnimatedLength getX() - { return _SVGFilterPrimitiveStandardAttributes.getX(); } -public SVGAnimatedLength getY() - { return _SVGFilterPrimitiveStandardAttributes.getY(); } -public SVGAnimatedLength getWidth() - { return _SVGFilterPrimitiveStandardAttributes.getWidth(); } -public SVGAnimatedLength getHeight() - { return _SVGFilterPrimitiveStandardAttributes.getHeight(); } -public SVGAnimatedString getResult() - { return _SVGFilterPrimitiveStandardAttributes.getResult(); } -//end SVGFilterPrimitiveStandardAttributes - -//from SVGStylable (from SVGFilterPrimitiveStandardAttributes) -public SVGAnimatedString getClassName() - { return _SVGFilterPrimitiveStandardAttributes.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGFilterPrimitiveStandardAttributes.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGFilterPrimitiveStandardAttributes.getPresentationAttribute(name); } -//end SVGStylable - - - -public native SVGAnimatedString getIn1( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFECompositeElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFECompositeElementImpl.java deleted file mode 100644 index 0b5ca1276..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFECompositeElementImpl.java +++ /dev/null @@ -1,93 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - - - -public class SVGFECompositeElementImpl - extends - SVGElementImpl - //SVGFilterPrimitiveStandardAttributes - implements org.w3c.dom.svg.SVGFECompositeElement -{ -public SVGFECompositeElementImpl() -{ - imbue(_SVGFilterPrimitiveStandardAttributes = - new SVGFilterPrimitiveStandardAttributesImpl()); -} - -//from SVGFilterPrimitiveStandardAttributes -SVGFilterPrimitiveStandardAttributesImpl _SVGFilterPrimitiveStandardAttributes; -public SVGAnimatedLength getX() - { return _SVGFilterPrimitiveStandardAttributes.getX(); } -public SVGAnimatedLength getY() - { return _SVGFilterPrimitiveStandardAttributes.getY(); } -public SVGAnimatedLength getWidth() - { return _SVGFilterPrimitiveStandardAttributes.getWidth(); } -public SVGAnimatedLength getHeight() - { return _SVGFilterPrimitiveStandardAttributes.getHeight(); } -public SVGAnimatedString getResult() - { return _SVGFilterPrimitiveStandardAttributes.getResult(); } -//end SVGFilterPrimitiveStandardAttributes - -//from SVGStylable (from SVGFilterPrimitiveStandardAttributes) -public SVGAnimatedString getClassName() - { return _SVGFilterPrimitiveStandardAttributes.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGFilterPrimitiveStandardAttributes.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGFilterPrimitiveStandardAttributes.getPresentationAttribute(name); } -//end SVGStylable - - - - -public native SVGAnimatedString getIn1( ); - -public native SVGAnimatedString getIn2( ); - -public native SVGAnimatedEnumeration getOperator( ); - -public native SVGAnimatedNumber getK1( ); - -public native SVGAnimatedNumber getK2( ); - -public native SVGAnimatedNumber getK3( ); - -public native SVGAnimatedNumber getK4( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFEConvolveMatrixElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFEConvolveMatrixElementImpl.java deleted file mode 100644 index 5fc3514b6..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFEConvolveMatrixElementImpl.java +++ /dev/null @@ -1,99 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - - -public class SVGFEConvolveMatrixElementImpl - extends - SVGElementImpl - //SVGFilterPrimitiveStandardAttributes - implements org.w3c.dom.svg.SVGFEConvolveMatrixElement -{ -public SVGFEConvolveMatrixElementImpl() -{ - imbue(_SVGFilterPrimitiveStandardAttributes = - new SVGFilterPrimitiveStandardAttributesImpl()); -} - -//from SVGFilterPrimitiveStandardAttributes -SVGFilterPrimitiveStandardAttributesImpl _SVGFilterPrimitiveStandardAttributes; -public SVGAnimatedLength getX() - { return _SVGFilterPrimitiveStandardAttributes.getX(); } -public SVGAnimatedLength getY() - { return _SVGFilterPrimitiveStandardAttributes.getY(); } -public SVGAnimatedLength getWidth() - { return _SVGFilterPrimitiveStandardAttributes.getWidth(); } -public SVGAnimatedLength getHeight() - { return _SVGFilterPrimitiveStandardAttributes.getHeight(); } -public SVGAnimatedString getResult() - { return _SVGFilterPrimitiveStandardAttributes.getResult(); } -//end SVGFilterPrimitiveStandardAttributes - -//from SVGStylable (from SVGFilterPrimitiveStandardAttributes) -public SVGAnimatedString getClassName() - { return _SVGFilterPrimitiveStandardAttributes.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGFilterPrimitiveStandardAttributes.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGFilterPrimitiveStandardAttributes.getPresentationAttribute(name); } -//end SVGStylable - - - -public native SVGAnimatedInteger getOrderX( ); - -public native SVGAnimatedInteger getOrderY( ); - -public native SVGAnimatedNumberList getKernelMatrix( ); - -public native SVGAnimatedNumber getDivisor( ); - -public native SVGAnimatedNumber getBias( ); - -public native SVGAnimatedInteger getTargetX( ); - -public native SVGAnimatedInteger getTargetY( ); - -public native SVGAnimatedEnumeration getEdgeMode( ); - -public native SVGAnimatedNumber getKernelUnitLengthX( ); - -public native SVGAnimatedNumber getKernelUnitLengthY( ); - -public native SVGAnimatedBoolean getPreserveAlpha( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFEDiffuseLightingElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFEDiffuseLightingElementImpl.java deleted file mode 100644 index 49c95cbec..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFEDiffuseLightingElementImpl.java +++ /dev/null @@ -1,86 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - - -public class SVGFEDiffuseLightingElementImpl - extends - SVGElementImpl - //SVGFilterPrimitiveStandardAttributes - implements org.w3c.dom.svg.SVGFEDiffuseLightingElement -{ -public SVGFEDiffuseLightingElementImpl() -{ - imbue(_SVGFilterPrimitiveStandardAttributes = - new SVGFilterPrimitiveStandardAttributesImpl()); -} - -//from SVGFilterPrimitiveStandardAttributes -SVGFilterPrimitiveStandardAttributesImpl _SVGFilterPrimitiveStandardAttributes; -public SVGAnimatedLength getX() - { return _SVGFilterPrimitiveStandardAttributes.getX(); } -public SVGAnimatedLength getY() - { return _SVGFilterPrimitiveStandardAttributes.getY(); } -public SVGAnimatedLength getWidth() - { return _SVGFilterPrimitiveStandardAttributes.getWidth(); } -public SVGAnimatedLength getHeight() - { return _SVGFilterPrimitiveStandardAttributes.getHeight(); } -public SVGAnimatedString getResult() - { return _SVGFilterPrimitiveStandardAttributes.getResult(); } -//end SVGFilterPrimitiveStandardAttributes - -//from SVGStylable (from SVGFilterPrimitiveStandardAttributes) -public SVGAnimatedString getClassName() - { return _SVGFilterPrimitiveStandardAttributes.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGFilterPrimitiveStandardAttributes.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGFilterPrimitiveStandardAttributes.getPresentationAttribute(name); } -//end SVGStylable - - -public native SVGAnimatedString getIn1( ); - -public native SVGAnimatedNumber getSurfaceScale( ); - -public native SVGAnimatedNumber getDiffuseConstant( ); - -public native SVGAnimatedNumber getKernelUnitLengthX( ); - -public native SVGAnimatedNumber getKernelUnitLengthY( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFEDisplacementMapElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFEDisplacementMapElementImpl.java deleted file mode 100644 index 53c3199c3..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFEDisplacementMapElementImpl.java +++ /dev/null @@ -1,81 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - - -public class SVGFEDisplacementMapElementImpl - extends - SVGElementImpl - //SVGFilterPrimitiveStandardAttributes - implements org.w3c.dom.svg.SVGFEDisplacementMapElement -{ -public SVGFEDisplacementMapElementImpl() -{ - imbue(_SVGFilterPrimitiveStandardAttributes = - new SVGFilterPrimitiveStandardAttributesImpl()); -} - -//from SVGFilterPrimitiveStandardAttributes -SVGFilterPrimitiveStandardAttributesImpl _SVGFilterPrimitiveStandardAttributes; -public SVGAnimatedLength getX() - { return _SVGFilterPrimitiveStandardAttributes.getX(); } -public SVGAnimatedLength getY() - { return _SVGFilterPrimitiveStandardAttributes.getY(); } -public SVGAnimatedLength getWidth() - { return _SVGFilterPrimitiveStandardAttributes.getWidth(); } -public SVGAnimatedLength getHeight() - { return _SVGFilterPrimitiveStandardAttributes.getHeight(); } -public SVGAnimatedString getResult() - { return _SVGFilterPrimitiveStandardAttributes.getResult(); } -//end SVGFilterPrimitiveStandardAttributes - -//from SVGStylable (from SVGFilterPrimitiveStandardAttributes) -public SVGAnimatedString getClassName() - { return _SVGFilterPrimitiveStandardAttributes.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGFilterPrimitiveStandardAttributes.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGFilterPrimitiveStandardAttributes.getPresentationAttribute(name); } -//end SVGStylable - - -public native SVGAnimatedString getIn1( ); -public native SVGAnimatedString getIn2( ); -public native SVGAnimatedNumber getScale( ); -public native SVGAnimatedEnumeration getXChannelSelector( ); -public native SVGAnimatedEnumeration getYChannelSelector( ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFEDistantLightElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFEDistantLightElementImpl.java deleted file mode 100644 index bda6f9f2c..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFEDistantLightElementImpl.java +++ /dev/null @@ -1,45 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGAnimatedNumber; - - -public class SVGFEDistantLightElementImpl - extends - SVGElementImpl - implements org.w3c.dom.svg.SVGFEDistantLightElement -{ - -public native SVGAnimatedNumber getAzimuth( ); -public native SVGAnimatedNumber getElevation( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFEFloodElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFEFloodElementImpl.java deleted file mode 100644 index 476633c0c..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFEFloodElementImpl.java +++ /dev/null @@ -1,79 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - - - -public class SVGFEFloodElementImpl - extends - SVGElementImpl - //SVGFilterPrimitiveStandardAttributes - implements org.w3c.dom.svg.SVGFEFloodElement -{ -public SVGFEFloodElementImpl() -{ - imbue(_SVGFilterPrimitiveStandardAttributes = - new SVGFilterPrimitiveStandardAttributesImpl()); -} - -//from SVGFilterPrimitiveStandardAttributes -SVGFilterPrimitiveStandardAttributesImpl _SVGFilterPrimitiveStandardAttributes; -public SVGAnimatedLength getX() - { return _SVGFilterPrimitiveStandardAttributes.getX(); } -public SVGAnimatedLength getY() - { return _SVGFilterPrimitiveStandardAttributes.getY(); } -public SVGAnimatedLength getWidth() - { return _SVGFilterPrimitiveStandardAttributes.getWidth(); } -public SVGAnimatedLength getHeight() - { return _SVGFilterPrimitiveStandardAttributes.getHeight(); } -public SVGAnimatedString getResult() - { return _SVGFilterPrimitiveStandardAttributes.getResult(); } -//end SVGFilterPrimitiveStandardAttributes - -//from SVGStylable (from SVGFilterPrimitiveStandardAttributes) -public SVGAnimatedString getClassName() - { return _SVGFilterPrimitiveStandardAttributes.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGFilterPrimitiveStandardAttributes.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGFilterPrimitiveStandardAttributes.getPresentationAttribute(name); } -//end SVGStylable - - - -public native SVGAnimatedString getIn1( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFEFuncAElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFEFuncAElementImpl.java deleted file mode 100644 index 347f2b0de..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFEFuncAElementImpl.java +++ /dev/null @@ -1,39 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - - -public class SVGFEFuncAElementImpl - extends - SVGComponentTransferFunctionElementImpl - implements org.w3c.dom.svg.SVGFEFuncAElement -{ -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFEFuncBElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFEFuncBElementImpl.java deleted file mode 100644 index 536521c4a..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFEFuncBElementImpl.java +++ /dev/null @@ -1,39 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - - -public class SVGFEFuncBElementImpl - extends - SVGComponentTransferFunctionElementImpl - implements org.w3c.dom.svg.SVGFEFuncBElement -{ -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFEFuncGElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFEFuncGElementImpl.java deleted file mode 100644 index 09e50e137..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFEFuncGElementImpl.java +++ /dev/null @@ -1,39 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - - -public class SVGFEFuncGElementImpl - extends - SVGComponentTransferFunctionElementImpl - implements org.w3c.dom.svg.SVGFEFuncGElement -{ -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFEFuncRElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFEFuncRElementImpl.java deleted file mode 100644 index 21cf4674e..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFEFuncRElementImpl.java +++ /dev/null @@ -1,40 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - - - -public class SVGFEFuncRElementImpl - extends - SVGComponentTransferFunctionElementImpl - implements org.w3c.dom.svg.SVGFEFuncRElement -{ -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFEGaussianBlurElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFEGaussianBlurElementImpl.java deleted file mode 100644 index 07c085d35..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFEGaussianBlurElementImpl.java +++ /dev/null @@ -1,85 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - - -public class SVGFEGaussianBlurElementImpl - extends - SVGElementImpl - //SVGFilterPrimitiveStandardAttributes - implements org.w3c.dom.svg.SVGFEGaussianBlurElement -{ -public SVGFEGaussianBlurElementImpl() -{ - imbue(_SVGFilterPrimitiveStandardAttributes = - new SVGFilterPrimitiveStandardAttributesImpl()); -} - -//from SVGFilterPrimitiveStandardAttributes -SVGFilterPrimitiveStandardAttributesImpl _SVGFilterPrimitiveStandardAttributes; -public SVGAnimatedLength getX() - { return _SVGFilterPrimitiveStandardAttributes.getX(); } -public SVGAnimatedLength getY() - { return _SVGFilterPrimitiveStandardAttributes.getY(); } -public SVGAnimatedLength getWidth() - { return _SVGFilterPrimitiveStandardAttributes.getWidth(); } -public SVGAnimatedLength getHeight() - { return _SVGFilterPrimitiveStandardAttributes.getHeight(); } -public SVGAnimatedString getResult() - { return _SVGFilterPrimitiveStandardAttributes.getResult(); } -//end SVGFilterPrimitiveStandardAttributes - -//from SVGStylable (from SVGFilterPrimitiveStandardAttributes) -public SVGAnimatedString getClassName() - { return _SVGFilterPrimitiveStandardAttributes.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGFilterPrimitiveStandardAttributes.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGFilterPrimitiveStandardAttributes.getPresentationAttribute(name); } -//end SVGStylable - - - - -public native SVGAnimatedString getIn1( ); - -public native SVGAnimatedNumber getStdDeviationX( ); - -public native SVGAnimatedNumber getStdDeviationY( ); - -public native void setStdDeviation ( float stdDeviationX, float stdDeviationY ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFEImageElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFEImageElementImpl.java deleted file mode 100644 index 896e96228..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFEImageElementImpl.java +++ /dev/null @@ -1,116 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - -import org.w3c.dom.events.Event; -import org.w3c.dom.events.EventTarget; -import org.w3c.dom.events.EventException; -import org.w3c.dom.events.EventListener; - - -public class SVGFEImageElementImpl - extends - SVGElementImpl - //SVGURIReference, - //SVGLangSpace, - //SVGExternalResourcesRequired, - //SVGFilterPrimitiveStandardAttributes - implements org.w3c.dom.svg.SVGFEImageElement -{ -public SVGFEImageElementImpl() -{ - imbue(_SVGURIReference = new SVGURIReferenceImpl()); - imbue(_SVGLangSpace = new SVGLangSpaceImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); - imbue(_SVGFilterPrimitiveStandardAttributes = - new SVGFilterPrimitiveStandardAttributesImpl()); -} - - -//from SVGURIReference -private SVGURIReferenceImpl _SVGURIReference; -public SVGAnimatedString getHref() - { return _SVGURIReference.getHref(); } -//end SVGURIReference - -//from SVGLangSpace -private SVGLangSpaceImpl _SVGLangSpace; -public String getXMLlang() - { return _SVGLangSpace.getXMLlang(); } -public void setXMLlang(String xmllang) - throws DOMException - { _SVGLangSpace.setXMLlang(xmllang); } -public String getXMLspace() - { return _SVGLangSpace.getXMLspace(); } -public void setXMLspace(String xmlspace) - throws DOMException - { _SVGLangSpace.setXMLspace(xmlspace); } -//end SVGLangSpace - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - -//from SVGFilterPrimitiveStandardAttributes -SVGFilterPrimitiveStandardAttributesImpl _SVGFilterPrimitiveStandardAttributes; -public SVGAnimatedLength getX() - { return _SVGFilterPrimitiveStandardAttributes.getX(); } -public SVGAnimatedLength getY() - { return _SVGFilterPrimitiveStandardAttributes.getY(); } -public SVGAnimatedLength getWidth() - { return _SVGFilterPrimitiveStandardAttributes.getWidth(); } -public SVGAnimatedLength getHeight() - { return _SVGFilterPrimitiveStandardAttributes.getHeight(); } -public SVGAnimatedString getResult() - { return _SVGFilterPrimitiveStandardAttributes.getResult(); } -//end SVGFilterPrimitiveStandardAttributes - -//from SVGStylable (from SVGFilterPrimitiveStandardAttributes) -public SVGAnimatedString getClassName() - { return _SVGFilterPrimitiveStandardAttributes.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGFilterPrimitiveStandardAttributes.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGFilterPrimitiveStandardAttributes.getPresentationAttribute(name); } -//end SVGStylable - - -public native SVGAnimatedPreserveAspectRatio getPreserveAspectRatio( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFEMergeElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFEMergeElementImpl.java deleted file mode 100644 index 29e878b69..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFEMergeElementImpl.java +++ /dev/null @@ -1,74 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - - -public class SVGFEMergeElementImpl - extends - SVGElementImpl - //SVGFilterPrimitiveStandardAttributes - implements org.w3c.dom.svg.SVGFEMergeElement -{ -public SVGFEMergeElementImpl() -{ - imbue(_SVGFilterPrimitiveStandardAttributes = - new SVGFilterPrimitiveStandardAttributesImpl()); -} - -//from SVGFilterPrimitiveStandardAttributes -SVGFilterPrimitiveStandardAttributesImpl _SVGFilterPrimitiveStandardAttributes; -public SVGAnimatedLength getX() - { return _SVGFilterPrimitiveStandardAttributes.getX(); } -public SVGAnimatedLength getY() - { return _SVGFilterPrimitiveStandardAttributes.getY(); } -public SVGAnimatedLength getWidth() - { return _SVGFilterPrimitiveStandardAttributes.getWidth(); } -public SVGAnimatedLength getHeight() - { return _SVGFilterPrimitiveStandardAttributes.getHeight(); } -public SVGAnimatedString getResult() - { return _SVGFilterPrimitiveStandardAttributes.getResult(); } -//end SVGFilterPrimitiveStandardAttributes - -//from SVGStylable (from SVGFilterPrimitiveStandardAttributes) -public SVGAnimatedString getClassName() - { return _SVGFilterPrimitiveStandardAttributes.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGFilterPrimitiveStandardAttributes.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGFilterPrimitiveStandardAttributes.getPresentationAttribute(name); } -//end SVGStylable - - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFEMergeNodeElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFEMergeNodeElementImpl.java deleted file mode 100644 index 9083d0ae0..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFEMergeNodeElementImpl.java +++ /dev/null @@ -1,44 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGAnimatedString; - - -public class SVGFEMergeNodeElementImpl - extends - SVGElementImpl - implements org.w3c.dom.svg.SVGFEMergeNodeElement -{ - -public native SVGAnimatedString getIn1( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFEMorphologyElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFEMorphologyElementImpl.java deleted file mode 100644 index 4952375d0..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFEMorphologyElementImpl.java +++ /dev/null @@ -1,78 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - - -public class SVGFEMorphologyElementImpl - extends - SVGElementImpl - //SVGFilterPrimitiveStandardAttributes - implements org.w3c.dom.svg.SVGFEMorphologyElement -{ -public SVGFEMorphologyElementImpl() -{ - imbue(_SVGFilterPrimitiveStandardAttributes = - new SVGFilterPrimitiveStandardAttributesImpl()); -} - -//from SVGFilterPrimitiveStandardAttributes -SVGFilterPrimitiveStandardAttributesImpl _SVGFilterPrimitiveStandardAttributes; -public SVGAnimatedLength getX() - { return _SVGFilterPrimitiveStandardAttributes.getX(); } -public SVGAnimatedLength getY() - { return _SVGFilterPrimitiveStandardAttributes.getY(); } -public SVGAnimatedLength getWidth() - { return _SVGFilterPrimitiveStandardAttributes.getWidth(); } -public SVGAnimatedLength getHeight() - { return _SVGFilterPrimitiveStandardAttributes.getHeight(); } -public SVGAnimatedString getResult() - { return _SVGFilterPrimitiveStandardAttributes.getResult(); } -//end SVGFilterPrimitiveStandardAttributes - -//from SVGStylable (from SVGFilterPrimitiveStandardAttributes) -public SVGAnimatedString getClassName() - { return _SVGFilterPrimitiveStandardAttributes.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGFilterPrimitiveStandardAttributes.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGFilterPrimitiveStandardAttributes.getPresentationAttribute(name); } -//end SVGStylable - - - -public native SVGAnimatedString getIn1(); -public native SVGAnimatedEnumeration getOperator(); -public native SVGAnimatedNumber getRadiusX(); -public native SVGAnimatedNumber getRadiusY(); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFEOffsetElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFEOffsetElementImpl.java deleted file mode 100644 index 86ca46c5b..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFEOffsetElementImpl.java +++ /dev/null @@ -1,79 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - - - -public class SVGFEOffsetElementImpl - extends - SVGElementImpl - //SVGFilterPrimitiveStandardAttributes - implements org.w3c.dom.svg.SVGFEOffsetElement -{ -public SVGFEOffsetElementImpl() -{ - imbue(_SVGFilterPrimitiveStandardAttributes = - new SVGFilterPrimitiveStandardAttributesImpl()); -} - -//from SVGFilterPrimitiveStandardAttributes -SVGFilterPrimitiveStandardAttributesImpl _SVGFilterPrimitiveStandardAttributes; -public SVGAnimatedLength getX() - { return _SVGFilterPrimitiveStandardAttributes.getX(); } -public SVGAnimatedLength getY() - { return _SVGFilterPrimitiveStandardAttributes.getY(); } -public SVGAnimatedLength getWidth() - { return _SVGFilterPrimitiveStandardAttributes.getWidth(); } -public SVGAnimatedLength getHeight() - { return _SVGFilterPrimitiveStandardAttributes.getHeight(); } -public SVGAnimatedString getResult() - { return _SVGFilterPrimitiveStandardAttributes.getResult(); } -//end SVGFilterPrimitiveStandardAttributes - -//from SVGStylable (from SVGFilterPrimitiveStandardAttributes) -public SVGAnimatedString getClassName() - { return _SVGFilterPrimitiveStandardAttributes.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGFilterPrimitiveStandardAttributes.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGFilterPrimitiveStandardAttributes.getPresentationAttribute(name); } -//end SVGStylable - -public native SVGAnimatedString getIn1(); - -public native SVGAnimatedNumber getDx(); - -public native SVGAnimatedNumber getDy(); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFEPointLightElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFEPointLightElementImpl.java deleted file mode 100644 index 5da2e6571..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFEPointLightElementImpl.java +++ /dev/null @@ -1,44 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGAnimatedNumber; - - -public class SVGFEPointLightElementImpl - extends - SVGElementImpl - implements org.w3c.dom.svg.SVGFEPointLightElement -{ -public native SVGAnimatedNumber getX( ); -public native SVGAnimatedNumber getY( ); -public native SVGAnimatedNumber getZ( ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFESpecularLightingElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFESpecularLightingElementImpl.java deleted file mode 100644 index 4d1091497..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFESpecularLightingElementImpl.java +++ /dev/null @@ -1,81 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - - -public class SVGFESpecularLightingElementImpl - extends - SVGElementImpl - //SVGFilterPrimitiveStandardAttributes - implements org.w3c.dom.svg.SVGFESpecularLightingElement -{ -public SVGFESpecularLightingElementImpl() -{ - imbue(_SVGFilterPrimitiveStandardAttributes = - new SVGFilterPrimitiveStandardAttributesImpl()); -} - -//from SVGFilterPrimitiveStandardAttributes -SVGFilterPrimitiveStandardAttributesImpl _SVGFilterPrimitiveStandardAttributes; -public SVGAnimatedLength getX() - { return _SVGFilterPrimitiveStandardAttributes.getX(); } -public SVGAnimatedLength getY() - { return _SVGFilterPrimitiveStandardAttributes.getY(); } -public SVGAnimatedLength getWidth() - { return _SVGFilterPrimitiveStandardAttributes.getWidth(); } -public SVGAnimatedLength getHeight() - { return _SVGFilterPrimitiveStandardAttributes.getHeight(); } -public SVGAnimatedString getResult() - { return _SVGFilterPrimitiveStandardAttributes.getResult(); } -//end SVGFilterPrimitiveStandardAttributes - -//from SVGStylable (from SVGFilterPrimitiveStandardAttributes) -public SVGAnimatedString getClassName() - { return _SVGFilterPrimitiveStandardAttributes.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGFilterPrimitiveStandardAttributes.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGFilterPrimitiveStandardAttributes.getPresentationAttribute(name); } -//end SVGStylable - - -public native SVGAnimatedString getIn1( ); - -public native SVGAnimatedNumber getSurfaceScale( ); - -public native SVGAnimatedNumber getSpecularConstant( ); - -public native SVGAnimatedNumber getSpecularExponent( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFESpotLightElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFESpotLightElementImpl.java deleted file mode 100644 index 9cd942d59..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFESpotLightElementImpl.java +++ /dev/null @@ -1,49 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGAnimatedNumber; - - -public class SVGFESpotLightElementImpl - extends - SVGElementImpl - implements org.w3c.dom.svg.SVGFESpotLightElement -{ -public native SVGAnimatedNumber getX( ); -public native SVGAnimatedNumber getY( ); -public native SVGAnimatedNumber getZ( ); -public native SVGAnimatedNumber getPointsAtX( ); -public native SVGAnimatedNumber getPointsAtY( ); -public native SVGAnimatedNumber getPointsAtZ( ); -public native SVGAnimatedNumber getSpecularExponent( ); -public native SVGAnimatedNumber getLimitingConeAngle( ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFETileElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFETileElementImpl.java deleted file mode 100644 index 768f1d7b0..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFETileElementImpl.java +++ /dev/null @@ -1,75 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - - -public class SVGFETileElementImpl - extends - SVGElementImpl - //SVGFilterPrimitiveStandardAttributes - implements org.w3c.dom.svg.SVGFETileElement -{ -public SVGFETileElementImpl() -{ - imbue(_SVGFilterPrimitiveStandardAttributes = - new SVGFilterPrimitiveStandardAttributesImpl()); -} - -//from SVGFilterPrimitiveStandardAttributes -SVGFilterPrimitiveStandardAttributesImpl _SVGFilterPrimitiveStandardAttributes; -public SVGAnimatedLength getX() - { return _SVGFilterPrimitiveStandardAttributes.getX(); } -public SVGAnimatedLength getY() - { return _SVGFilterPrimitiveStandardAttributes.getY(); } -public SVGAnimatedLength getWidth() - { return _SVGFilterPrimitiveStandardAttributes.getWidth(); } -public SVGAnimatedLength getHeight() - { return _SVGFilterPrimitiveStandardAttributes.getHeight(); } -public SVGAnimatedString getResult() - { return _SVGFilterPrimitiveStandardAttributes.getResult(); } -//end SVGFilterPrimitiveStandardAttributes - -//from SVGStylable (from SVGFilterPrimitiveStandardAttributes) -public SVGAnimatedString getClassName() - { return _SVGFilterPrimitiveStandardAttributes.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGFilterPrimitiveStandardAttributes.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGFilterPrimitiveStandardAttributes.getPresentationAttribute(name); } -//end SVGStylable - - -public native SVGAnimatedString getIn1( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFETurbulenceElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFETurbulenceElementImpl.java deleted file mode 100644 index 15c206fe7..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFETurbulenceElementImpl.java +++ /dev/null @@ -1,85 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - - -public class SVGFETurbulenceElementImpl - extends - SVGElementImpl - //SVGFilterPrimitiveStandardAttributes - implements org.w3c.dom.svg.SVGFETurbulenceElement -{ -public SVGFETurbulenceElementImpl() -{ - imbue(_SVGFilterPrimitiveStandardAttributes = - new SVGFilterPrimitiveStandardAttributesImpl()); -} - -//from SVGFilterPrimitiveStandardAttributes -SVGFilterPrimitiveStandardAttributesImpl _SVGFilterPrimitiveStandardAttributes; -public SVGAnimatedLength getX() - { return _SVGFilterPrimitiveStandardAttributes.getX(); } -public SVGAnimatedLength getY() - { return _SVGFilterPrimitiveStandardAttributes.getY(); } -public SVGAnimatedLength getWidth() - { return _SVGFilterPrimitiveStandardAttributes.getWidth(); } -public SVGAnimatedLength getHeight() - { return _SVGFilterPrimitiveStandardAttributes.getHeight(); } -public SVGAnimatedString getResult() - { return _SVGFilterPrimitiveStandardAttributes.getResult(); } -//end SVGFilterPrimitiveStandardAttributes - -//from SVGStylable (from SVGFilterPrimitiveStandardAttributes) -public SVGAnimatedString getClassName() - { return _SVGFilterPrimitiveStandardAttributes.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGFilterPrimitiveStandardAttributes.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGFilterPrimitiveStandardAttributes.getPresentationAttribute(name); } -//end SVGStylable - - -public native SVGAnimatedNumber getBaseFrequencyX( ); - -public native SVGAnimatedNumber getBaseFrequencyY( ); - -public native SVGAnimatedInteger getNumOctaves( ); - -public native SVGAnimatedNumber getSeed( ); - -public native SVGAnimatedEnumeration getStitchTiles( ); - -public native SVGAnimatedEnumeration getType( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFilterElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFilterElementImpl.java deleted file mode 100644 index d5b36e81e..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFilterElementImpl.java +++ /dev/null @@ -1,106 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - - - -public class SVGFilterElementImpl - extends - SVGElementImpl - //SVGURIReference, - //SVGLangSpace, - //SVGExternalResourcesRequired, - //SVGStylable, - //SVGUnitTypes - implements org.w3c.dom.svg.SVGFilterElement -{ -public SVGFilterElementImpl() -{ - imbue(_SVGURIReference = new SVGURIReferenceImpl()); - imbue(_SVGLangSpace = new SVGLangSpaceImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); - imbue(_SVGStylable = new SVGStylableImpl()); -} - - -//from SVGURIReference -private SVGURIReferenceImpl _SVGURIReference; -public SVGAnimatedString getHref() - { return _SVGURIReference.getHref(); } -//end SVGURIReference - -//from SVGLangSpace -private SVGLangSpaceImpl _SVGLangSpace; -public String getXMLlang() - { return _SVGLangSpace.getXMLlang(); } -public void setXMLlang(String xmllang) - throws DOMException - { _SVGLangSpace.setXMLlang(xmllang); } -public String getXMLspace() - { return _SVGLangSpace.getXMLspace(); } -public void setXMLspace(String xmlspace) - throws DOMException - { _SVGLangSpace.setXMLspace(xmlspace); } -//end SVGLangSpace - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - - -public native SVGAnimatedEnumeration getFilterUnits( ); -public native SVGAnimatedEnumeration getPrimitiveUnits( ); -public native SVGAnimatedLength getX( ); -public native SVGAnimatedLength getY( ); -public native SVGAnimatedLength getWidth( ); -public native SVGAnimatedLength getHeight( ); -public native SVGAnimatedInteger getFilterResX( ); -public native SVGAnimatedInteger getFilterResY( ); -public native void setFilterRes ( int filterResX, int filterResY ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFilterPrimitiveStandardAttributesImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFilterPrimitiveStandardAttributesImpl.java deleted file mode 100644 index 1dd6b2ea6..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFilterPrimitiveStandardAttributesImpl.java +++ /dev/null @@ -1,47 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGAnimatedLength; -import org.w3c.dom.svg.SVGAnimatedString; - - -public class SVGFilterPrimitiveStandardAttributesImpl - extends - SVGStylableImpl - implements org.w3c.dom.svg.SVGFilterPrimitiveStandardAttributes -{ -public native SVGAnimatedLength getX( ); -public native SVGAnimatedLength getY( ); -public native SVGAnimatedLength getWidth( ); -public native SVGAnimatedLength getHeight( ); -public native SVGAnimatedString getResult( ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFitToViewBoxImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFitToViewBoxImpl.java deleted file mode 100644 index a319e03bf..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFitToViewBoxImpl.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGAnimatedRect; -import org.w3c.dom.svg.SVGAnimatedPreserveAspectRatio; - - -public class SVGFitToViewBoxImpl - extends - org.inkscape.cmn.BaseInterface - implements org.w3c.dom.svg.SVGFitToViewBox -{ - -public native SVGAnimatedRect getViewBox( ); -public native SVGAnimatedPreserveAspectRatio getPreserveAspectRatio( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFontElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFontElementImpl.java deleted file mode 100644 index 40e55e27c..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFontElementImpl.java +++ /dev/null @@ -1,69 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - - - -public class SVGFontElementImpl - extends - SVGElementImpl - //SVGExternalResourcesRequired, - //SVGStylable - implements org.w3c.dom.svg.SVGFontElement -{ -public SVGFontElementImpl() -{ - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); - imbue(_SVGStylable = new SVGStylableImpl()); -} - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFontFaceElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFontFaceElementImpl.java deleted file mode 100644 index 3e5da61f5..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFontFaceElementImpl.java +++ /dev/null @@ -1,39 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - - -public class SVGFontFaceElementImpl - extends - SVGElementImpl - implements org.w3c.dom.svg.SVGFontFaceElement -{ -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFontFaceFormatElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFontFaceFormatElementImpl.java deleted file mode 100644 index 448ffe732..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFontFaceFormatElementImpl.java +++ /dev/null @@ -1,38 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -public class SVGFontFaceFormatElementImpl - extends - SVGElementImpl - implements org.w3c.dom.svg.SVGFontFaceFormatElement -{ -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFontFaceNameElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFontFaceNameElementImpl.java deleted file mode 100644 index 506e1136f..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFontFaceNameElementImpl.java +++ /dev/null @@ -1,39 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - - -public class SVGFontFaceNameElementImpl - extends - SVGElementImpl - implements org.w3c.dom.svg.SVGFontFaceNameElement -{ -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFontFaceSrcElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFontFaceSrcElementImpl.java deleted file mode 100644 index 7f86c9453..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFontFaceSrcElementImpl.java +++ /dev/null @@ -1,38 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -public class SVGFontFaceSrcElementImpl - extends - SVGElementImpl - implements org.w3c.dom.svg.SVGFontFaceSrcElement -{ -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGFontFaceUriElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGFontFaceUriElementImpl.java deleted file mode 100644 index 228bc4867..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGFontFaceUriElementImpl.java +++ /dev/null @@ -1,38 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -public class SVGFontFaceUriElementImpl - extends - SVGElementImpl - implements org.w3c.dom.svg.SVGFontFaceUriElement -{ -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGForeignObjectElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGForeignObjectElementImpl.java deleted file mode 100644 index 63df6409b..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGForeignObjectElementImpl.java +++ /dev/null @@ -1,169 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - -import org.w3c.dom.events.Event; -import org.w3c.dom.events.EventTarget; -import org.w3c.dom.events.EventException; -import org.w3c.dom.events.EventListener; - - - -public class SVGForeignObjectElementImpl - extends - SVGElementImpl - //SVGTests, - //SVGLangSpace, - //SVGExternalResourcesRequired, - //SVGStylable, - //SVGTransformable, - //EventTarget - implements org.w3c.dom.svg.SVGForeignObjectElement -{ -public SVGForeignObjectElementImpl() -{ - imbue(_SVGTests = new SVGTestsImpl()); - imbue(_SVGLangSpace = new SVGLangSpaceImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); - imbue(_SVGStylable = new SVGStylableImpl()); - imbue(_SVGTransformable = new SVGTransformableImpl()); - imbue(_EventTarget = new org.inkscape.dom.events.EventTargetImpl()); -} - - -//from SVGTests -private SVGTestsImpl _SVGTests; -public SVGStringList getRequiredFeatures() - { return _SVGTests.getRequiredFeatures(); } -public SVGStringList getRequiredExtensions() - { return _SVGTests.getRequiredExtensions(); } -public SVGStringList getSystemLanguage() - { return _SVGTests.getSystemLanguage(); } -public boolean hasExtension (String extension) - { return _SVGTests.hasExtension(extension); } -//end SVGTests - -//from SVGLangSpace -private SVGLangSpaceImpl _SVGLangSpace; -public String getXMLlang() - { return _SVGLangSpace.getXMLlang(); } -public void setXMLlang(String xmllang) - throws DOMException - { _SVGLangSpace.setXMLlang(xmllang); } -public String getXMLspace() - { return _SVGLangSpace.getXMLspace(); } -public void setXMLspace(String xmlspace) - throws DOMException - { _SVGLangSpace.setXMLspace(xmlspace); } -//end SVGLangSpace - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - -//from SVGTransformable -private SVGTransformableImpl _SVGTransformable; -public SVGAnimatedTransformList getTransform() - { return _SVGTransformable.getTransform(); } -//end SVGTransformable - -//from SVGLocatable (from SVGTransformable) -public SVGElement getNearestViewportElement() - { return _SVGTransformable.getNearestViewportElement(); } -public SVGElement getFarthestViewportElement() - { return _SVGTransformable.getFarthestViewportElement(); } -public SVGRect getBBox() - { return _SVGTransformable.getBBox(); } -public SVGMatrix getCTM() - { return _SVGTransformable.getCTM(); } -public SVGMatrix getScreenCTM() - { return _SVGTransformable.getScreenCTM(); } -public SVGMatrix getTransformToElement (SVGElement element) - throws SVGException - { return _SVGTransformable.getTransformToElement(element); } -//end SVGLocatable - -//from EventTarget -private org.inkscape.dom.events.EventTargetImpl _EventTarget; -public void addEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.addEventListener(type, listener, useCapture); } -public void removeEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListener(type, listener, useCapture); } -public boolean dispatchEvent(Event evt) - throws EventException - { return _EventTarget.dispatchEvent(evt); } -public void addEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture, - Object evtGroup) - { _EventTarget.addEventListenerNS(namespaceURI, type, listener, useCapture, evtGroup); } -public void removeEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListenerNS(namespaceURI, type, listener, useCapture); } -public boolean willTriggerNS(String namespaceURI, - String type) - { return _EventTarget.willTriggerNS(namespaceURI, type); } -public boolean hasEventListenerNS(String namespaceURI, - String type) - { return _EventTarget.hasEventListenerNS(namespaceURI, type); } -//end EventTarget - - - -public native SVGAnimatedLength getX( ); -public native SVGAnimatedLength getY( ); -public native SVGAnimatedLength getWidth( ); -public native SVGAnimatedLength getHeight( ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGGElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGGElementImpl.java deleted file mode 100644 index fcc026984..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGGElementImpl.java +++ /dev/null @@ -1,166 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - -import org.w3c.dom.events.Event; -import org.w3c.dom.events.EventTarget; -import org.w3c.dom.events.EventException; -import org.w3c.dom.events.EventListener; - - - -public class SVGGElementImpl - extends - SVGElementImpl - //SVGTests, - //SVGLangSpace, - //SVGExternalResourcesRequired, - //SVGStylable, - //SVGTransformable, - //EventTarget - implements org.w3c.dom.svg.SVGGElement -{ - -public SVGGElementImpl() -{ - imbue(_SVGTests = new SVGTestsImpl()); - imbue(_SVGLangSpace = new SVGLangSpaceImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); - imbue(_SVGStylable = new SVGStylableImpl()); - imbue(_SVGTransformable = new SVGTransformableImpl()); - imbue(_EventTarget = new org.inkscape.dom.events.EventTargetImpl()); -} - - -//from SVGTests -private SVGTestsImpl _SVGTests; -public SVGStringList getRequiredFeatures() - { return _SVGTests.getRequiredFeatures(); } -public SVGStringList getRequiredExtensions() - { return _SVGTests.getRequiredExtensions(); } -public SVGStringList getSystemLanguage() - { return _SVGTests.getSystemLanguage(); } -public boolean hasExtension (String extension) - { return _SVGTests.hasExtension(extension); } -//end SVGTests - -//from SVGLangSpace -private SVGLangSpaceImpl _SVGLangSpace; -public String getXMLlang() - { return _SVGLangSpace.getXMLlang(); } -public void setXMLlang(String xmllang) - throws DOMException - { _SVGLangSpace.setXMLlang(xmllang); } -public String getXMLspace() - { return _SVGLangSpace.getXMLspace(); } -public void setXMLspace(String xmlspace) - throws DOMException - { _SVGLangSpace.setXMLspace(xmlspace); } -//end SVGLangSpace - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - -//from SVGTransformable -private SVGTransformableImpl _SVGTransformable; -public SVGAnimatedTransformList getTransform() - { return _SVGTransformable.getTransform(); } -//end SVGTransformable - -//from SVGLocatable (from SVGTransformable) -public SVGElement getNearestViewportElement() - { return _SVGTransformable.getNearestViewportElement(); } -public SVGElement getFarthestViewportElement() - { return _SVGTransformable.getFarthestViewportElement(); } -public SVGRect getBBox() - { return _SVGTransformable.getBBox(); } -public SVGMatrix getCTM() - { return _SVGTransformable.getCTM(); } -public SVGMatrix getScreenCTM() - { return _SVGTransformable.getScreenCTM(); } -public SVGMatrix getTransformToElement (SVGElement element) - throws SVGException - { return _SVGTransformable.getTransformToElement(element); } -//end SVGLocatable - -//from EventTarget -private org.inkscape.dom.events.EventTargetImpl _EventTarget; -public void addEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.addEventListener(type, listener, useCapture); } -public void removeEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListener(type, listener, useCapture); } -public boolean dispatchEvent(Event evt) - throws EventException - { return _EventTarget.dispatchEvent(evt); } -public void addEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture, - Object evtGroup) - { _EventTarget.addEventListenerNS(namespaceURI, type, listener, useCapture, evtGroup); } -public void removeEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListenerNS(namespaceURI, type, listener, useCapture); } -public boolean willTriggerNS(String namespaceURI, - String type) - { return _EventTarget.willTriggerNS(namespaceURI, type); } -public boolean hasEventListenerNS(String namespaceURI, - String type) - { return _EventTarget.hasEventListenerNS(namespaceURI, type); } -//end EventTarget - - - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGGlyphElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGGlyphElementImpl.java deleted file mode 100644 index b5dfc9fc0..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGGlyphElementImpl.java +++ /dev/null @@ -1,64 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - - - -public class SVGGlyphElementImpl - extends - SVGElementImpl - //SVGStylable - implements org.w3c.dom.svg.SVGGlyphElement -{ -public SVGGlyphElementImpl() -{ - imbue(_SVGStylable = new SVGStylableImpl()); -} - - - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - - - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGGlyphRefElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGGlyphRefElementImpl.java deleted file mode 100644 index 8f72f4fec..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGGlyphRefElementImpl.java +++ /dev/null @@ -1,90 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - - -public class SVGGlyphRefElementImpl - extends - SVGElementImpl - //SVGURIReference, - //SVGStylable - implements org.w3c.dom.svg.SVGGlyphRefElement -{ -public SVGGlyphRefElementImpl() -{ - imbue(_SVGURIReference = new SVGURIReferenceImpl()); - imbue(_SVGStylable = new SVGStylableImpl()); -} - - -//from SVGURIReference -private SVGURIReferenceImpl _SVGURIReference; -public SVGAnimatedString getHref() - { return _SVGURIReference.getHref(); } -//end SVGURIReference - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - - - -public native String getGlyphRef( ); -public native void setGlyphRef( String glyphRef ) - throws DOMException; -public native String getFormat( ); -public native void setFormat( String format ) - throws DOMException; -public native float getX( ); -public native void setX( float x ) - throws DOMException; -public native float getY( ); -public native void setY( float y ) - throws DOMException; -public native float getDx( ); -public native void setDx( float dx ) - throws DOMException; -public native float getDy( ); -public native void setDy( float dy ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGGradientElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGGradientElementImpl.java deleted file mode 100644 index 5d4206901..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGGradientElementImpl.java +++ /dev/null @@ -1,87 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - - - -public class SVGGradientElementImpl - extends - SVGElementImpl - //SVGURIReference, - //SVGExternalResourcesRequired, - //SVGStylable, - //SVGUnitTypes - implements org.w3c.dom.svg.SVGGradientElement -{ - -public SVGGradientElementImpl() -{ - imbue(_SVGURIReference = new SVGURIReferenceImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); - imbue(_SVGStylable = new SVGStylableImpl()); -} - -//from SVGURIReference -private SVGURIReferenceImpl _SVGURIReference; -public SVGAnimatedString getHref() - { return _SVGURIReference.getHref(); } -//end SVGURIReference - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - - - -public native SVGAnimatedEnumeration getGradientUnits( ); -public native SVGAnimatedTransformList getGradientTransform( ); -public native SVGAnimatedEnumeration getSpreadMethod( ); -} - - diff --git a/src/bind/java/org/inkscape/dom/svg/SVGHKernElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGHKernElementImpl.java deleted file mode 100644 index d8d303ec1..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGHKernElementImpl.java +++ /dev/null @@ -1,38 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -public class SVGHKernElementImpl - extends - SVGElementImpl - implements org.w3c.dom.svg.SVGHKernElement -{ -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGICCColorImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGICCColorImpl.java deleted file mode 100644 index f282df71e..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGICCColorImpl.java +++ /dev/null @@ -1,44 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; -import org.w3c.dom.svg.SVGNumberList; - - -public class SVGICCColorImpl - implements org.w3c.dom.svg.SVGICCColor -{ -public native String getColorProfile( ); -public native void setColorProfile( String colorProfile ) - throws DOMException; -public native SVGNumberList getColors( ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGImageElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGImageElementImpl.java deleted file mode 100644 index d7f287fd1..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGImageElementImpl.java +++ /dev/null @@ -1,178 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - -import org.w3c.dom.events.Event; -import org.w3c.dom.events.EventTarget; -import org.w3c.dom.events.EventException; -import org.w3c.dom.events.EventListener; - - - -public class SVGImageElementImpl - extends - SVGElementImpl - //SVGURIReference, - //SVGTests, - //SVGLangSpace, - //SVGExternalResourcesRequired, - //SVGStylable, - //SVGTransformable, - //EventTarget - implements org.w3c.dom.svg.SVGImageElement -{ - -public SVGImageElementImpl() -{ - imbue(_SVGURIReference = new SVGURIReferenceImpl()); - imbue(_SVGTests = new SVGTestsImpl()); - imbue(_SVGLangSpace = new SVGLangSpaceImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); - imbue(_SVGStylable = new SVGStylableImpl()); - imbue(_SVGTransformable = new SVGTransformableImpl()); - imbue(_EventTarget = new org.inkscape.dom.events.EventTargetImpl()); -} - - -//from SVGURIReference -private SVGURIReferenceImpl _SVGURIReference; -public SVGAnimatedString getHref() - { return _SVGURIReference.getHref(); } -//end SVGURIReference - -//from SVGTests -private SVGTestsImpl _SVGTests; -public SVGStringList getRequiredFeatures() - { return _SVGTests.getRequiredFeatures(); } -public SVGStringList getRequiredExtensions() - { return _SVGTests.getRequiredExtensions(); } -public SVGStringList getSystemLanguage() - { return _SVGTests.getSystemLanguage(); } -public boolean hasExtension (String extension) - { return _SVGTests.hasExtension(extension); } -//end SVGTests - -//from SVGLangSpace -private SVGLangSpaceImpl _SVGLangSpace; -public String getXMLlang() - { return _SVGLangSpace.getXMLlang(); } -public void setXMLlang(String xmllang) - throws DOMException - { _SVGLangSpace.setXMLlang(xmllang); } -public String getXMLspace() - { return _SVGLangSpace.getXMLspace(); } -public void setXMLspace(String xmlspace) - throws DOMException - { _SVGLangSpace.setXMLspace(xmlspace); } -//end SVGLangSpace - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - -//from SVGTransformable -private SVGTransformableImpl _SVGTransformable; -public SVGAnimatedTransformList getTransform() - { return _SVGTransformable.getTransform(); } -//end SVGTransformable - -//from SVGLocatable (from SVGTransformable) -public SVGElement getNearestViewportElement() - { return _SVGTransformable.getNearestViewportElement(); } -public SVGElement getFarthestViewportElement() - { return _SVGTransformable.getFarthestViewportElement(); } -public SVGRect getBBox() - { return _SVGTransformable.getBBox(); } -public SVGMatrix getCTM() - { return _SVGTransformable.getCTM(); } -public SVGMatrix getScreenCTM() - { return _SVGTransformable.getScreenCTM(); } -public SVGMatrix getTransformToElement (SVGElement element) - throws SVGException - { return _SVGTransformable.getTransformToElement(element); } -//end SVGLocatable - -//from EventTarget -private org.inkscape.dom.events.EventTargetImpl _EventTarget; -public void addEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.addEventListener(type, listener, useCapture); } -public void removeEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListener(type, listener, useCapture); } -public boolean dispatchEvent(Event evt) - throws EventException - { return _EventTarget.dispatchEvent(evt); } -public void addEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture, - Object evtGroup) - { _EventTarget.addEventListenerNS(namespaceURI, type, listener, useCapture, evtGroup); } -public void removeEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListenerNS(namespaceURI, type, listener, useCapture); } -public boolean willTriggerNS(String namespaceURI, - String type) - { return _EventTarget.willTriggerNS(namespaceURI, type); } -public boolean hasEventListenerNS(String namespaceURI, - String type) - { return _EventTarget.hasEventListenerNS(namespaceURI, type); } -//end EventTarget - -public native SVGAnimatedLength getX( ); -public native SVGAnimatedLength getY( ); -public native SVGAnimatedLength getWidth( ); -public native SVGAnimatedLength getHeight( ); -public native SVGAnimatedPreserveAspectRatio getPreserveAspectRatio( ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGLangSpaceImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGLangSpaceImpl.java deleted file mode 100644 index 5caed0330..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGLangSpaceImpl.java +++ /dev/null @@ -1,47 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - - -public class SVGLangSpaceImpl - extends - org.inkscape.cmn.BaseInterface - implements org.w3c.dom.svg.SVGLangSpace -{ -public native String getXMLlang( ); -public native void setXMLlang( String xmllang ) - throws DOMException; -public native String getXMLspace( ); -public native void setXMLspace( String xmlspace ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGLengthImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGLengthImpl.java deleted file mode 100644 index 7b6bf9f86..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGLengthImpl.java +++ /dev/null @@ -1,52 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - - -public class SVGLengthImpl - implements org.w3c.dom.svg.SVGLength -{ -public native short getUnitType( ); -public native float getValue( ); -public native void setValue( float value ) - throws DOMException; -public native float getValueInSpecifiedUnits( ); -public native void setValueInSpecifiedUnits( float valueInSpecifiedUnits ) - throws DOMException; -public native String getValueAsString( ); -public native void setValueAsString( String valueAsString ) - throws DOMException; - -public native void newValueSpecifiedUnits ( short unitType, float valueInSpecifiedUnits ); -public native void convertToSpecifiedUnits ( short unitType ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGLengthListImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGLengthListImpl.java deleted file mode 100644 index 4f0ce4c66..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGLengthListImpl.java +++ /dev/null @@ -1,56 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; -import org.w3c.dom.svg.SVGException; -import org.w3c.dom.svg.SVGLength; - - -public class SVGLengthListImpl - implements org.w3c.dom.svg.SVGLengthList -{ -public native int getNumberOfItems( ); - -public native void clear ( ) - throws DOMException; -public native SVGLength initialize ( SVGLength newItem ) - throws DOMException, SVGException; -public native SVGLength getItem ( int index ) - throws DOMException; -public native SVGLength insertItemBefore ( SVGLength newItem, int index ) - throws DOMException, SVGException; -public native SVGLength replaceItem ( SVGLength newItem, int index ) - throws DOMException, SVGException; -public native SVGLength removeItem ( int index ) - throws DOMException; -public native SVGLength appendItem ( SVGLength newItem ) - throws DOMException, SVGException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGLineElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGLineElementImpl.java deleted file mode 100644 index 74a5f7a61..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGLineElementImpl.java +++ /dev/null @@ -1,170 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - -import org.w3c.dom.events.Event; -import org.w3c.dom.events.EventTarget; -import org.w3c.dom.events.EventException; -import org.w3c.dom.events.EventListener; - - - -public class SVGLineElementImpl - extends - SVGElementImpl - //SVGTests, - //SVGLangSpace, - //SVGExternalResourcesRequired, - //SVGStylable, - //SVGTransformable, - //EventTarget - implements org.w3c.dom.svg.SVGLineElement -{ - -public SVGLineElementImpl() -{ - imbue(_SVGTests = new SVGTestsImpl()); - imbue(_SVGLangSpace = new SVGLangSpaceImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); - imbue(_SVGStylable = new SVGStylableImpl()); - imbue(_SVGTransformable = new SVGTransformableImpl()); - imbue(_EventTarget = new org.inkscape.dom.events.EventTargetImpl()); -} - - -//from SVGTests -private SVGTestsImpl _SVGTests; -public SVGStringList getRequiredFeatures() - { return _SVGTests.getRequiredFeatures(); } -public SVGStringList getRequiredExtensions() - { return _SVGTests.getRequiredExtensions(); } -public SVGStringList getSystemLanguage() - { return _SVGTests.getSystemLanguage(); } -public boolean hasExtension (String extension) - { return _SVGTests.hasExtension(extension); } -//end SVGTests - -//from SVGLangSpace -private SVGLangSpaceImpl _SVGLangSpace; -public String getXMLlang() - { return _SVGLangSpace.getXMLlang(); } -public void setXMLlang(String xmllang) - throws DOMException - { _SVGLangSpace.setXMLlang(xmllang); } -public String getXMLspace() - { return _SVGLangSpace.getXMLspace(); } -public void setXMLspace(String xmlspace) - throws DOMException - { _SVGLangSpace.setXMLspace(xmlspace); } -//end SVGLangSpace - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - -//from SVGTransformable -private SVGTransformableImpl _SVGTransformable; -public SVGAnimatedTransformList getTransform() - { return _SVGTransformable.getTransform(); } -//end SVGTransformable - -//from SVGLocatable (from SVGTransformable) -public SVGElement getNearestViewportElement() - { return _SVGTransformable.getNearestViewportElement(); } -public SVGElement getFarthestViewportElement() - { return _SVGTransformable.getFarthestViewportElement(); } -public SVGRect getBBox() - { return _SVGTransformable.getBBox(); } -public SVGMatrix getCTM() - { return _SVGTransformable.getCTM(); } -public SVGMatrix getScreenCTM() - { return _SVGTransformable.getScreenCTM(); } -public SVGMatrix getTransformToElement (SVGElement element) - throws SVGException - { return _SVGTransformable.getTransformToElement(element); } -//end SVGLocatable - -//from EventTarget -private org.inkscape.dom.events.EventTargetImpl _EventTarget; -public void addEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.addEventListener(type, listener, useCapture); } -public void removeEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListener(type, listener, useCapture); } -public boolean dispatchEvent(Event evt) - throws EventException - { return _EventTarget.dispatchEvent(evt); } -public void addEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture, - Object evtGroup) - { _EventTarget.addEventListenerNS(namespaceURI, type, listener, useCapture, evtGroup); } -public void removeEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListenerNS(namespaceURI, type, listener, useCapture); } -public boolean willTriggerNS(String namespaceURI, - String type) - { return _EventTarget.willTriggerNS(namespaceURI, type); } -public boolean hasEventListenerNS(String namespaceURI, - String type) - { return _EventTarget.hasEventListenerNS(namespaceURI, type); } -//end EventTarget - - -public native SVGAnimatedLength getX1( ); -public native SVGAnimatedLength getY1( ); -public native SVGAnimatedLength getX2( ); -public native SVGAnimatedLength getY2( ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGLinearGradientElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGLinearGradientElementImpl.java deleted file mode 100644 index 26d3bb8c0..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGLinearGradientElementImpl.java +++ /dev/null @@ -1,45 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGAnimatedLength; - - -public class SVGLinearGradientElementImpl - extends - SVGGradientElementImpl - implements org.w3c.dom.svg.SVGLinearGradientElement -{ -public native SVGAnimatedLength getX1( ); -public native SVGAnimatedLength getY1( ); -public native SVGAnimatedLength getX2( ); -public native SVGAnimatedLength getY2( ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGLocatableImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGLocatableImpl.java deleted file mode 100644 index df9a0d59b..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGLocatableImpl.java +++ /dev/null @@ -1,51 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGException; -import org.w3c.dom.svg.SVGElement; -import org.w3c.dom.svg.SVGRect; -import org.w3c.dom.svg.SVGMatrix; - - -public class SVGLocatableImpl - extends - org.inkscape.cmn.BaseInterface - implements org.w3c.dom.svg.SVGLocatable -{ -public native SVGElement getNearestViewportElement( ); -public native SVGElement getFarthestViewportElement( ); - -public native SVGRect getBBox ( ); -public native SVGMatrix getCTM ( ); -public native SVGMatrix getScreenCTM ( ); -public native SVGMatrix getTransformToElement ( SVGElement element ) - throws SVGException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGMPathElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGMPathElementImpl.java deleted file mode 100644 index 9d7c1c6ee..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGMPathElementImpl.java +++ /dev/null @@ -1,63 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.*; - - -public class SVGMPathElementImpl - extends - SVGElementImpl - //SVGURIReference, - //SVGExternalResourcesRequired - implements org.w3c.dom.svg.SVGMPathElement -{ - -public SVGMPathElementImpl() -{ - imbue(_SVGURIReference = new SVGURIReferenceImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); -} - - -//from SVGURIReference -private SVGURIReferenceImpl _SVGURIReference; -public SVGAnimatedString getHref() - { return _SVGURIReference.getHref(); } -//end SVGURIReference - - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGMarkerElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGMarkerElementImpl.java deleted file mode 100644 index 656ae0f17..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGMarkerElementImpl.java +++ /dev/null @@ -1,107 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - - - -public class SVGMarkerElementImpl - extends - SVGElementImpl - //SVGLangSpace, - //SVGExternalResourcesRequired, - //SVGStylable, - //SVGFitToViewBox - implements org.w3c.dom.svg.SVGMarkerElement -{ - -public SVGMarkerElementImpl() -{ - imbue(_SVGLangSpace = new SVGLangSpaceImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); - imbue(_SVGStylable = new SVGStylableImpl()); - imbue(_SVGFitToViewBox = new SVGFitToViewBoxImpl()); -} - -//from SVGLangSpace -private SVGLangSpaceImpl _SVGLangSpace; -public String getXMLlang() - { return _SVGLangSpace.getXMLlang(); } -public void setXMLlang(String xmllang) - throws DOMException - { _SVGLangSpace.setXMLlang(xmllang); } -public String getXMLspace() - { return _SVGLangSpace.getXMLspace(); } -public void setXMLspace(String xmlspace) - throws DOMException - { _SVGLangSpace.setXMLspace(xmlspace); } -//end SVGLangSpace - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - -//from SVGFitToViewBox -SVGFitToViewBoxImpl _SVGFitToViewBox; -public SVGAnimatedRect getViewBox() - { return _SVGFitToViewBox.getViewBox(); } -public SVGAnimatedPreserveAspectRatio getPreserveAspectRatio() - { return _SVGFitToViewBox.getPreserveAspectRatio(); } -//end SVGFitToViewBox - - -public native SVGAnimatedLength getRefX( ); -public native SVGAnimatedLength getRefY( ); -public native SVGAnimatedEnumeration getMarkerUnits( ); -public native SVGAnimatedLength getMarkerWidth( ); -public native SVGAnimatedLength getMarkerHeight( ); -public native SVGAnimatedEnumeration getOrientType( ); -public native SVGAnimatedAngle getOrientAngle( ); -public native void setOrientToAuto ( ); -public native void setOrientToAngle ( SVGAngle angle ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGMaskElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGMaskElementImpl.java deleted file mode 100644 index 507095771..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGMaskElementImpl.java +++ /dev/null @@ -1,108 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - - -public class SVGMaskElementImpl - extends - SVGElementImpl - //SVGTests, - //SVGLangSpace, - //SVGExternalResourcesRequired, - //SVGStylable, - //SVGUnitTypes - implements org.w3c.dom.svg.SVGMaskElement -{ - -public SVGMaskElementImpl() -{ - imbue(_SVGTests = new SVGTestsImpl()); - imbue(_SVGLangSpace = new SVGLangSpaceImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); - imbue(_SVGStylable = new SVGStylableImpl()); -} - - -//from SVGTests -private SVGTestsImpl _SVGTests; -public SVGStringList getRequiredFeatures() - { return _SVGTests.getRequiredFeatures(); } -public SVGStringList getRequiredExtensions() - { return _SVGTests.getRequiredExtensions(); } -public SVGStringList getSystemLanguage() - { return _SVGTests.getSystemLanguage(); } -public boolean hasExtension (String extension) - { return _SVGTests.hasExtension(extension); } -//end SVGTests - -//from SVGLangSpace -private SVGLangSpaceImpl _SVGLangSpace; -public String getXMLlang() - { return _SVGLangSpace.getXMLlang(); } -public void setXMLlang(String xmllang) - throws DOMException - { _SVGLangSpace.setXMLlang(xmllang); } -public String getXMLspace() - { return _SVGLangSpace.getXMLspace(); } -public void setXMLspace(String xmlspace) - throws DOMException - { _SVGLangSpace.setXMLspace(xmlspace); } -//end SVGLangSpace - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - - -public native SVGAnimatedEnumeration getMaskUnits( ); -public native SVGAnimatedEnumeration getMaskContentUnits( ); -public native SVGAnimatedLength getX( ); -public native SVGAnimatedLength getY( ); -public native SVGAnimatedLength getWidth( ); -public native SVGAnimatedLength getHeight( ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGMatrixImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGMatrixImpl.java deleted file mode 100644 index 65cf6fbfe..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGMatrixImpl.java +++ /dev/null @@ -1,72 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; -import org.w3c.dom.svg.SVGException; -import org.w3c.dom.svg.SVGMatrix; - - -public class SVGMatrixImpl - implements org.w3c.dom.svg.SVGMatrix -{ -public native float getA( ); -public native void setA( float a ) - throws DOMException; -public native float getB( ); -public native void setB( float b ) - throws DOMException; -public native float getC( ); -public native void setC( float c ) - throws DOMException; -public native float getD( ); -public native void setD( float d ) - throws DOMException; -public native float getE( ); -public native void setE( float e ) - throws DOMException; -public native float getF( ); -public native void setF( float f ) - throws DOMException; - -public native SVGMatrix multiply ( SVGMatrix secondMatrix ); -public native SVGMatrix inverse ( ) - throws SVGException; -public native SVGMatrix translate ( float x, float y ); -public native SVGMatrix scale ( float scaleFactor ); -public native SVGMatrix scaleNonUniform ( float scaleFactorX, float scaleFactorY ); -public native SVGMatrix rotate ( float angle ); -public native SVGMatrix rotateFromVector ( float x, float y ) - throws SVGException; -public native SVGMatrix flipX ( ); -public native SVGMatrix flipY ( ); -public native SVGMatrix skewX ( float angle ); -public native SVGMatrix skewY ( float angle ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGMetadataElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGMetadataElementImpl.java deleted file mode 100644 index e0197ee6f..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGMetadataElementImpl.java +++ /dev/null @@ -1,38 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -public class SVGMetadataElementImpl - extends - SVGElementImpl - implements org.w3c.dom.svg.SVGMetadataElement -{ -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGMissingGlyphElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGMissingGlyphElementImpl.java deleted file mode 100644 index cbb115ee1..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGMissingGlyphElementImpl.java +++ /dev/null @@ -1,61 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - - - -public class SVGMissingGlyphElementImpl - extends - SVGElementImpl - //SVGStylable - implements org.w3c.dom.svg.SVGMissingGlyphElement -{ - -public SVGMissingGlyphElementImpl() -{ - imbue(_SVGStylable = new SVGStylableImpl()); -} - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGNumberImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGNumberImpl.java deleted file mode 100644 index 1a0c94ffd..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGNumberImpl.java +++ /dev/null @@ -1,42 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - - -public class SVGNumberImpl - implements org.w3c.dom.svg.SVGNumber -{ -public native float getValue( ); -public native void setValue( float value ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGNumberListImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGNumberListImpl.java deleted file mode 100644 index 7e2b0c693..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGNumberListImpl.java +++ /dev/null @@ -1,58 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; -import org.w3c.dom.svg.SVGException; -import org.w3c.dom.svg.SVGNumber; - - -public class SVGNumberListImpl - implements org.w3c.dom.svg.SVGNumberList -{ - -public native int getNumberOfItems( ); - -public native void clear ( ) - throws DOMException; -public native SVGNumber initialize ( SVGNumber newItem ) - throws DOMException, SVGException; -public native SVGNumber getItem ( int index ) - throws DOMException; -public native SVGNumber insertItemBefore ( SVGNumber newItem, int index ) - throws DOMException, SVGException; -public native SVGNumber replaceItem ( SVGNumber newItem, int index ) - throws DOMException, SVGException; -public native SVGNumber removeItem ( int index ) - throws DOMException; -public native SVGNumber appendItem ( SVGNumber newItem ) - throws DOMException, SVGException; - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPaintImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPaintImpl.java deleted file mode 100644 index 7387ae150..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPaintImpl.java +++ /dev/null @@ -1,49 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.css.RGBColor; -import org.w3c.dom.svg.SVGException; - - - -public class SVGPaintImpl - extends - SVGColorImpl - implements org.w3c.dom.svg.SVGPaint -{ -public native short getPaintType( ); -public native String getUri( ); - -public native void setUri ( String uri ); -public native void setPaint ( short paintType, String uri, - String rgbColor, String iccColor ) - throws SVGException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPathElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPathElementImpl.java deleted file mode 100644 index 692c13213..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPathElementImpl.java +++ /dev/null @@ -1,215 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - -import org.w3c.dom.events.Event; -import org.w3c.dom.events.EventTarget; -import org.w3c.dom.events.EventException; -import org.w3c.dom.events.EventListener; - - -public class SVGPathElementImpl - extends - SVGElementImpl - //SVGTests, - //SVGLangSpace, - //SVGExternalResourcesRequired, - //SVGStylable, - //SVGTransformable, - //EventTarget, - //SVGAnimatedPathData - implements org.w3c.dom.svg.SVGPathElement -{ - -public SVGPathElementImpl() -{ - imbue(_SVGTests = new SVGTestsImpl()); - imbue(_SVGLangSpace = new SVGLangSpaceImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); - imbue(_SVGStylable = new SVGStylableImpl()); - imbue(_SVGTransformable = new SVGTransformableImpl()); - imbue(_EventTarget = new org.inkscape.dom.events.EventTargetImpl()); - imbue(_SVGAnimatedPathData = new SVGAnimatedPathDataImpl()); -} - - -//from SVGURIReference -private SVGURIReferenceImpl _SVGURIReference; -public SVGAnimatedString getHref() - { return _SVGURIReference.getHref(); } -//end SVGURIReference - -//from SVGTests -private SVGTestsImpl _SVGTests; -public SVGStringList getRequiredFeatures() - { return _SVGTests.getRequiredFeatures(); } -public SVGStringList getRequiredExtensions() - { return _SVGTests.getRequiredExtensions(); } -public SVGStringList getSystemLanguage() - { return _SVGTests.getSystemLanguage(); } -public boolean hasExtension (String extension) - { return _SVGTests.hasExtension(extension); } -//end SVGTests - -//from SVGLangSpace -private SVGLangSpaceImpl _SVGLangSpace; -public String getXMLlang() - { return _SVGLangSpace.getXMLlang(); } -public void setXMLlang(String xmllang) - throws DOMException - { _SVGLangSpace.setXMLlang(xmllang); } -public String getXMLspace() - { return _SVGLangSpace.getXMLspace(); } -public void setXMLspace(String xmlspace) - throws DOMException - { _SVGLangSpace.setXMLspace(xmlspace); } -//end SVGLangSpace - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - -//from SVGTransformable -private SVGTransformableImpl _SVGTransformable; -public SVGAnimatedTransformList getTransform() - { return _SVGTransformable.getTransform(); } -//end SVGTransformable - -//from SVGLocatable (from SVGTransformable) -public SVGElement getNearestViewportElement() - { return _SVGTransformable.getNearestViewportElement(); } -public SVGElement getFarthestViewportElement() - { return _SVGTransformable.getFarthestViewportElement(); } -public SVGRect getBBox() - { return _SVGTransformable.getBBox(); } -public SVGMatrix getCTM() - { return _SVGTransformable.getCTM(); } -public SVGMatrix getScreenCTM() - { return _SVGTransformable.getScreenCTM(); } -public SVGMatrix getTransformToElement (SVGElement element) - throws SVGException - { return _SVGTransformable.getTransformToElement(element); } -//end SVGLocatable - -//from EventTarget -private org.inkscape.dom.events.EventTargetImpl _EventTarget; -public void addEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.addEventListener(type, listener, useCapture); } -public void removeEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListener(type, listener, useCapture); } -public boolean dispatchEvent(Event evt) - throws EventException - { return _EventTarget.dispatchEvent(evt); } -public void addEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture, - Object evtGroup) - { _EventTarget.addEventListenerNS(namespaceURI, type, listener, useCapture, evtGroup); } -public void removeEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListenerNS(namespaceURI, type, listener, useCapture); } -public boolean willTriggerNS(String namespaceURI, - String type) - { return _EventTarget.willTriggerNS(namespaceURI, type); } -public boolean hasEventListenerNS(String namespaceURI, - String type) - { return _EventTarget.hasEventListenerNS(namespaceURI, type); } -//end EventTarget - -//from SVGAnimatedPathData -SVGAnimatedPathDataImpl _SVGAnimatedPathData; -public SVGPathSegList getPathSegList() - { return _SVGAnimatedPathData.getPathSegList(); } -public SVGPathSegList getNormalizedPathSegList() - { return _SVGAnimatedPathData.getNormalizedPathSegList(); } -public SVGPathSegList getAnimatedPathSegList() - { return _SVGAnimatedPathData.getAnimatedPathSegList(); } -public SVGPathSegList getAnimatedNormalizedPathSegList() - { return _SVGAnimatedPathData.getAnimatedNormalizedPathSegList(); } -//end SVGAnimatedPathData - -public native SVGAnimatedNumber getPathLength( ); -public native float getTotalLength ( ); -public native SVGPoint getPointAtLength ( float distance ); -public native int getPathSegAtLength ( float distance ); - -//CREATEs -public native SVGPathSegClosePath createSVGPathSegClosePath ( ); -public native SVGPathSegMovetoAbs createSVGPathSegMovetoAbs ( float x, float y ); -public native SVGPathSegMovetoRel createSVGPathSegMovetoRel ( float x, float y ); -public native SVGPathSegLinetoAbs createSVGPathSegLinetoAbs ( float x, float y ); -public native SVGPathSegLinetoRel createSVGPathSegLinetoRel ( float x, float y ); - -public native SVGPathSegCurvetoCubicAbs createSVGPathSegCurvetoCubicAbs ( float x, float y, float x1, float y1, float x2, float y2 ); -public native SVGPathSegCurvetoCubicRel createSVGPathSegCurvetoCubicRel ( float x, float y, float x1, float y1, float x2, float y2 ); - -public native SVGPathSegCurvetoQuadraticAbs createSVGPathSegCurvetoQuadraticAbs ( float x, float y, float x1, float y1 ); -public native SVGPathSegCurvetoQuadraticRel createSVGPathSegCurvetoQuadraticRel ( float x, float y, float x1, float y1 ); - -public native SVGPathSegArcAbs createSVGPathSegArcAbs ( float x, float y, float r1, float r2, float angle, boolean largeArcFlag, boolean sweepFlag ); -public native SVGPathSegArcRel createSVGPathSegArcRel ( float x, float y, float r1, float r2, float angle, boolean largeArcFlag, boolean sweepFlag ); - -public native SVGPathSegLinetoHorizontalAbs createSVGPathSegLinetoHorizontalAbs ( float x ); -public native SVGPathSegLinetoHorizontalRel createSVGPathSegLinetoHorizontalRel ( float x ); - -public native SVGPathSegLinetoVerticalAbs createSVGPathSegLinetoVerticalAbs ( float y ); -public native SVGPathSegLinetoVerticalRel createSVGPathSegLinetoVerticalRel ( float y ); - -public native SVGPathSegCurvetoCubicSmoothAbs createSVGPathSegCurvetoCubicSmoothAbs ( float x, float y, float x2, float y2 ); -public native SVGPathSegCurvetoCubicSmoothRel createSVGPathSegCurvetoCubicSmoothRel ( float x, float y, float x2, float y2 ); - -public native SVGPathSegCurvetoQuadraticSmoothAbs createSVGPathSegCurvetoQuadraticSmoothAbs ( float x, float y ); -public native SVGPathSegCurvetoQuadraticSmoothRel createSVGPathSegCurvetoQuadraticSmoothRel ( float x, float y ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPathSegArcAbsImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPathSegArcAbsImpl.java deleted file mode 100644 index ebef29a0a..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPathSegArcAbsImpl.java +++ /dev/null @@ -1,61 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -public class SVGPathSegArcAbsImpl - extends - SVGPathSegImpl - implements org.w3c.dom.svg.SVGPathSegArcAbs -{ -public native float getX( ); -public native void setX( float x ) - throws DOMException; -public native float getY( ); -public native void setY( float y ) - throws DOMException; -public native float getR1( ); -public native void setR1( float r1 ) - throws DOMException; -public native float getR2( ); -public native void setR2( float r2 ) - throws DOMException; -public native float getAngle( ); -public native void setAngle( float angle ) - throws DOMException; -public native boolean getLargeArcFlag( ); -public native void setLargeArcFlag( boolean largeArcFlag ) - throws DOMException; -public native boolean getSweepFlag( ); -public native void setSweepFlag( boolean sweepFlag ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPathSegArcRelImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPathSegArcRelImpl.java deleted file mode 100644 index 5d2b15774..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPathSegArcRelImpl.java +++ /dev/null @@ -1,61 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -public class SVGPathSegArcRelImpl - extends - SVGPathSegImpl - implements org.w3c.dom.svg.SVGPathSegArcRel -{ -public native float getX( ); -public native void setX( float x ) - throws DOMException; -public native float getY( ); -public native void setY( float y ) - throws DOMException; -public native float getR1( ); -public native void setR1( float r1 ) - throws DOMException; -public native float getR2( ); -public native void setR2( float r2 ) - throws DOMException; -public native float getAngle( ); -public native void setAngle( float angle ) - throws DOMException; -public native boolean getLargeArcFlag( ); -public native void setLargeArcFlag( boolean largeArcFlag ) - throws DOMException; -public native boolean getSweepFlag( ); -public native void setSweepFlag( boolean sweepFlag ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPathSegClosePathImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPathSegClosePathImpl.java deleted file mode 100644 index c1615d007..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPathSegClosePathImpl.java +++ /dev/null @@ -1,38 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -public class SVGPathSegClosePathImpl - extends - SVGPathSegImpl - implements org.w3c.dom.svg.SVGPathSegClosePath -{ -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoCubicAbsImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoCubicAbsImpl.java deleted file mode 100644 index 2ace254c2..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoCubicAbsImpl.java +++ /dev/null @@ -1,58 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -public class SVGPathSegCurvetoCubicAbsImpl - extends - SVGPathSegImpl - implements org.w3c.dom.svg.SVGPathSegCurvetoCubicAbs -{ -public native float getX( ); -public native void setX( float x ) - throws DOMException; -public native float getY( ); -public native void setY( float y ) - throws DOMException; -public native float getX1( ); -public native void setX1( float x1 ) - throws DOMException; -public native float getY1( ); -public native void setY1( float y1 ) - throws DOMException; -public native float getX2( ); -public native void setX2( float x2 ) - throws DOMException; -public native float getY2( ); -public native void setY2( float y2 ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoCubicRelImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoCubicRelImpl.java deleted file mode 100644 index d3bbf140b..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoCubicRelImpl.java +++ /dev/null @@ -1,58 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -public class SVGPathSegCurvetoCubicRelImpl - extends - SVGPathSegImpl - implements org.w3c.dom.svg.SVGPathSegCurvetoCubicRel -{ -public native float getX( ); -public native void setX( float x ) - throws DOMException; -public native float getY( ); -public native void setY( float y ) - throws DOMException; -public native float getX1( ); -public native void setX1( float x1 ) - throws DOMException; -public native float getY1( ); -public native void setY1( float y1 ) - throws DOMException; -public native float getX2( ); -public native void setX2( float x2 ) - throws DOMException; -public native float getY2( ); -public native void setY2( float y2 ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoCubicSmoothAbsImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoCubicSmoothAbsImpl.java deleted file mode 100644 index 1c1b1328c..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoCubicSmoothAbsImpl.java +++ /dev/null @@ -1,52 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -public class SVGPathSegCurvetoCubicSmoothAbsImpl - extends - SVGPathSegImpl - implements org.w3c.dom.svg.SVGPathSegCurvetoCubicSmoothAbs -{ -public native float getX( ); -public native void setX( float x ) - throws DOMException; -public native float getY( ); -public native void setY( float y ) - throws DOMException; -public native float getX2( ); -public native void setX2( float x2 ) - throws DOMException; -public native float getY2( ); -public native void setY2( float y2 ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoCubicSmoothRelImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoCubicSmoothRelImpl.java deleted file mode 100644 index 265228bb5..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoCubicSmoothRelImpl.java +++ /dev/null @@ -1,52 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -public class SVGPathSegCurvetoCubicSmoothRelImpl - extends - SVGPathSegImpl - implements org.w3c.dom.svg.SVGPathSegCurvetoCubicSmoothRel -{ -public native float getX( ); -public native void setX( float x ) - throws DOMException; -public native float getY( ); -public native void setY( float y ) - throws DOMException; -public native float getX2( ); -public native void setX2( float x2 ) - throws DOMException; -public native float getY2( ); -public native void setY2( float y2 ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoQuadraticAbsImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoQuadraticAbsImpl.java deleted file mode 100644 index bc2b39052..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoQuadraticAbsImpl.java +++ /dev/null @@ -1,52 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -public class SVGPathSegCurvetoQuadraticAbsImpl - extends - SVGPathSegImpl - implements org.w3c.dom.svg.SVGPathSegCurvetoQuadraticAbs -{ -public native float getX( ); -public native void setX( float x ) - throws DOMException; -public native float getY( ); -public native void setY( float y ) - throws DOMException; -public native float getX1( ); -public native void setX1( float x1 ) - throws DOMException; -public native float getY1( ); -public native void setY1( float y1 ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoQuadraticRelImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoQuadraticRelImpl.java deleted file mode 100644 index 35dd8f927..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoQuadraticRelImpl.java +++ /dev/null @@ -1,52 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -public class SVGPathSegCurvetoQuadraticRelImpl - extends - SVGPathSegImpl - implements org.w3c.dom.svg.SVGPathSegCurvetoQuadraticRel -{ -public native float getX( ); -public native void setX( float x ) - throws DOMException; -public native float getY( ); -public native void setY( float y ) - throws DOMException; -public native float getX1( ); -public native void setX1( float x1 ) - throws DOMException; -public native float getY1( ); -public native void setY1( float y1 ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoQuadraticSmoothAbsImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoQuadraticSmoothAbsImpl.java deleted file mode 100644 index 50f0f4be2..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoQuadraticSmoothAbsImpl.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -public class SVGPathSegCurvetoQuadraticSmoothAbsImpl - extends - SVGPathSegImpl - implements org.w3c.dom.svg.SVGPathSegCurvetoQuadraticSmoothAbs -{ -public native float getX( ); -public native void setX( float x ) - throws DOMException; -public native float getY( ); -public native void setY( float y ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoQuadraticSmoothRelImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoQuadraticSmoothRelImpl.java deleted file mode 100644 index c55c706fc..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPathSegCurvetoQuadraticSmoothRelImpl.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -public class SVGPathSegCurvetoQuadraticSmoothRelImpl - extends - SVGPathSegImpl - implements org.w3c.dom.svg.SVGPathSegCurvetoQuadraticSmoothRel -{ -public native float getX( ); -public native void setX( float x ) - throws DOMException; -public native float getY( ); -public native void setY( float y ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPathSegImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPathSegImpl.java deleted file mode 100644 index 2a57b613c..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPathSegImpl.java +++ /dev/null @@ -1,38 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -public class SVGPathSegImpl - implements org.w3c.dom.svg.SVGPathSeg -{ -public native short getPathSegType( ); -public native String getPathSegTypeAsLetter( ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPathSegLinetoAbsImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPathSegLinetoAbsImpl.java deleted file mode 100644 index c53dc3de3..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPathSegLinetoAbsImpl.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -public class SVGPathSegLinetoAbsImpl - extends - SVGPathSegImpl - implements org.w3c.dom.svg.SVGPathSegLinetoAbs -{ -public native float getX( ); -public native void setX( float x ) - throws DOMException; -public native float getY( ); -public native void setY( float y ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPathSegLinetoHorizontalAbsImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPathSegLinetoHorizontalAbsImpl.java deleted file mode 100644 index d7e29c87d..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPathSegLinetoHorizontalAbsImpl.java +++ /dev/null @@ -1,43 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -public class SVGPathSegLinetoHorizontalAbsImpl - extends - SVGPathSegImpl - implements org.w3c.dom.svg.SVGPathSegLinetoHorizontalAbs -{ -public native float getX( ); -public native void setX( float x ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPathSegLinetoHorizontalRelImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPathSegLinetoHorizontalRelImpl.java deleted file mode 100644 index 105f321e8..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPathSegLinetoHorizontalRelImpl.java +++ /dev/null @@ -1,43 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -public class SVGPathSegLinetoHorizontalRelImpl - extends - SVGPathSegImpl - implements org.w3c.dom.svg.SVGPathSegLinetoHorizontalRel -{ -public native float getX( ); -public native void setX( float x ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPathSegLinetoRelImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPathSegLinetoRelImpl.java deleted file mode 100644 index 1c941a79e..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPathSegLinetoRelImpl.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -public class SVGPathSegLinetoRelImpl - extends - SVGPathSegImpl - implements org.w3c.dom.svg.SVGPathSegLinetoRel -{ -public native float getX( ); -public native void setX( float x ) - throws DOMException; -public native float getY( ); -public native void setY( float y ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPathSegLinetoVerticalAbsImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPathSegLinetoVerticalAbsImpl.java deleted file mode 100644 index ef7e38820..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPathSegLinetoVerticalAbsImpl.java +++ /dev/null @@ -1,43 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -public class SVGPathSegLinetoVerticalAbsImpl - extends - SVGPathSegImpl - implements org.w3c.dom.svg.SVGPathSegLinetoVerticalAbs -{ -public native float getY( ); -public native void setY( float y ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPathSegLinetoVerticalRelImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPathSegLinetoVerticalRelImpl.java deleted file mode 100644 index 22fdf9232..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPathSegLinetoVerticalRelImpl.java +++ /dev/null @@ -1,43 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -public class SVGPathSegLinetoVerticalRelImpl - extends - SVGPathSegImpl - implements org.w3c.dom.svg.SVGPathSegLinetoVerticalRel -{ -public native float getY( ); -public native void setY( float y ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPathSegListImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPathSegListImpl.java deleted file mode 100644 index 99d10586c..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPathSegListImpl.java +++ /dev/null @@ -1,57 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; -import org.w3c.dom.svg.SVGException; - -import org.w3c.dom.svg.SVGPathSeg; - - -public class SVGPathSegListImpl - implements org.w3c.dom.svg.SVGPathSegList -{ -public native int getNumberOfItems( ); - -public native void clear ( ) - throws DOMException; -public native SVGPathSeg initialize ( SVGPathSeg newItem ) - throws DOMException, SVGException; -public native SVGPathSeg getItem ( int index ) - throws DOMException; -public native SVGPathSeg insertItemBefore ( SVGPathSeg newItem, int index ) - throws DOMException, SVGException; -public native SVGPathSeg replaceItem ( SVGPathSeg newItem, int index ) - throws DOMException, SVGException; -public native SVGPathSeg removeItem ( int index ) - throws DOMException; -public native SVGPathSeg appendItem ( SVGPathSeg newItem ) - throws DOMException, SVGException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPathSegMovetoAbsImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPathSegMovetoAbsImpl.java deleted file mode 100644 index a2e08dc46..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPathSegMovetoAbsImpl.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -public class SVGPathSegMovetoAbsImpl - extends - SVGPathSegImpl - implements org.w3c.dom.svg.SVGPathSegMovetoAbs -{ -public native float getX( ); -public native void setX( float x ) - throws DOMException; -public native float getY( ); -public native void setY( float y ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPathSegMovetoRelImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPathSegMovetoRelImpl.java deleted file mode 100644 index 989925787..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPathSegMovetoRelImpl.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -public class SVGPathSegMovetoRelImpl - extends - SVGPathSegImpl - implements org.w3c.dom.svg.SVGPathSegMovetoRel -{ -public native float getX( ); -public native void setX( float x ) - throws DOMException; -public native float getY( ); -public native void setY( float y ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPatternElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPatternElementImpl.java deleted file mode 100644 index 9d8c774fe..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPatternElementImpl.java +++ /dev/null @@ -1,135 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - -import org.w3c.dom.events.Event; -import org.w3c.dom.events.EventTarget; -import org.w3c.dom.events.EventException; -import org.w3c.dom.events.EventListener; - - -public class SVGPatternElementImpl - extends - SVGElementImpl - //SVGURIReference, - //SVGTests, - //SVGLangSpace, - //SVGExternalResourcesRequired, - //SVGStylable, - //SVGFitToViewBox, - //SVGUnitTypes - implements org.w3c.dom.svg.SVGPatternElement -{ - -public SVGPatternElementImpl() -{ - imbue(_SVGURIReference = new SVGURIReferenceImpl()); - imbue(_SVGTests = new SVGTestsImpl()); - imbue(_SVGLangSpace = new SVGLangSpaceImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); - imbue(_SVGStylable = new SVGStylableImpl()); - imbue(_SVGFitToViewBox = new SVGFitToViewBoxImpl()); -} - - -//from SVGURIReference -private SVGURIReferenceImpl _SVGURIReference; -public SVGAnimatedString getHref() - { return _SVGURIReference.getHref(); } -//end SVGURIReference - -//from SVGTests -private SVGTestsImpl _SVGTests; -public SVGStringList getRequiredFeatures() - { return _SVGTests.getRequiredFeatures(); } -public SVGStringList getRequiredExtensions() - { return _SVGTests.getRequiredExtensions(); } -public SVGStringList getSystemLanguage() - { return _SVGTests.getSystemLanguage(); } -public boolean hasExtension (String extension) - { return _SVGTests.hasExtension(extension); } -//end SVGTests - -//from SVGLangSpace -private SVGLangSpaceImpl _SVGLangSpace; -public String getXMLlang() - { return _SVGLangSpace.getXMLlang(); } -public void setXMLlang(String xmllang) - throws DOMException - { _SVGLangSpace.setXMLlang(xmllang); } -public String getXMLspace() - { return _SVGLangSpace.getXMLspace(); } -public void setXMLspace(String xmlspace) - throws DOMException - { _SVGLangSpace.setXMLspace(xmlspace); } -//end SVGLangSpace - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - -//from SVGFitToViewBox -SVGFitToViewBoxImpl _SVGFitToViewBox; -public SVGAnimatedRect getViewBox() - { return _SVGFitToViewBox.getViewBox(); } -public SVGAnimatedPreserveAspectRatio getPreserveAspectRatio() - { return _SVGFitToViewBox.getPreserveAspectRatio(); } -//end SVGFitToViewBox - - - -public native SVGAnimatedEnumeration getPatternUnits( ); -public native SVGAnimatedEnumeration getPatternContentUnits( ); -public native SVGAnimatedTransformList getPatternTransform( ); -public native SVGAnimatedLength getX( ); -public native SVGAnimatedLength getY( ); -public native SVGAnimatedLength getWidth( ); -public native SVGAnimatedLength getHeight( ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPointImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPointImpl.java deleted file mode 100644 index 87f806a1b..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPointImpl.java +++ /dev/null @@ -1,49 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; -import org.w3c.dom.svg.SVGPoint; -import org.w3c.dom.svg.SVGMatrix; - - -public class SVGPointImpl - implements org.w3c.dom.svg.SVGPoint -{ -public native float getX( ); -public native void setX( float x ) - throws DOMException; -public native float getY( ); -public native void setY( float y ) - throws DOMException; - -public native SVGPoint matrixTransform ( SVGMatrix matrix ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPointListImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPointListImpl.java deleted file mode 100644 index e1ab60265..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPointListImpl.java +++ /dev/null @@ -1,56 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; -import org.w3c.dom.svg.SVGException; -import org.w3c.dom.svg.SVGPoint; - - -public class SVGPointListImpl - implements org.w3c.dom.svg.SVGPointList -{ -public native int getNumberOfItems( ); - -public native void clear ( ) - throws DOMException; -public native SVGPoint initialize ( SVGPoint newItem ) - throws DOMException, SVGException; -public native SVGPoint getItem ( int index ) - throws DOMException; -public native SVGPoint insertItemBefore ( SVGPoint newItem, int index ) - throws DOMException, SVGException; -public native SVGPoint replaceItem ( SVGPoint newItem, int index ) - throws DOMException, SVGException; -public native SVGPoint removeItem ( int index ) - throws DOMException; -public native SVGPoint appendItem ( SVGPoint newItem ) - throws DOMException, SVGException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPolygonElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPolygonElementImpl.java deleted file mode 100644 index a93eca993..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPolygonElementImpl.java +++ /dev/null @@ -1,177 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - -import org.w3c.dom.events.Event; -import org.w3c.dom.events.EventTarget; -import org.w3c.dom.events.EventException; -import org.w3c.dom.events.EventListener; - - - -public class SVGPolygonElementImpl - extends - SVGElementImpl - //SVGTests, - //SVGLangSpace, - //SVGExternalResourcesRequired, - //SVGStylable, - //SVGTransformable, - //EventTarget, - //SVGAnimatedPoints - implements org.w3c.dom.svg.SVGPolygonElement -{ - -public SVGPolygonElementImpl() -{ - imbue(_SVGTests = new SVGTestsImpl()); - imbue(_SVGLangSpace = new SVGLangSpaceImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); - imbue(_SVGStylable = new SVGStylableImpl()); - imbue(_SVGTransformable = new SVGTransformableImpl()); - imbue(_EventTarget = new org.inkscape.dom.events.EventTargetImpl()); - imbue(_SVGAnimatedPoints = new SVGAnimatedPointsImpl()); -} - - -//from SVGTests -private SVGTestsImpl _SVGTests; -public SVGStringList getRequiredFeatures() - { return _SVGTests.getRequiredFeatures(); } -public SVGStringList getRequiredExtensions() - { return _SVGTests.getRequiredExtensions(); } -public SVGStringList getSystemLanguage() - { return _SVGTests.getSystemLanguage(); } -public boolean hasExtension (String extension) - { return _SVGTests.hasExtension(extension); } -//end SVGTests - -//from SVGLangSpace -private SVGLangSpaceImpl _SVGLangSpace; -public String getXMLlang() - { return _SVGLangSpace.getXMLlang(); } -public void setXMLlang(String xmllang) - throws DOMException - { _SVGLangSpace.setXMLlang(xmllang); } -public String getXMLspace() - { return _SVGLangSpace.getXMLspace(); } -public void setXMLspace(String xmlspace) - throws DOMException - { _SVGLangSpace.setXMLspace(xmlspace); } -//end SVGLangSpace - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - -//from SVGTransformable -private SVGTransformableImpl _SVGTransformable; -public SVGAnimatedTransformList getTransform() - { return _SVGTransformable.getTransform(); } -//end SVGTransformable - -//from SVGLocatable (from SVGTransformable) -public SVGElement getNearestViewportElement() - { return _SVGTransformable.getNearestViewportElement(); } -public SVGElement getFarthestViewportElement() - { return _SVGTransformable.getFarthestViewportElement(); } -public SVGRect getBBox() - { return _SVGTransformable.getBBox(); } -public SVGMatrix getCTM() - { return _SVGTransformable.getCTM(); } -public SVGMatrix getScreenCTM() - { return _SVGTransformable.getScreenCTM(); } -public SVGMatrix getTransformToElement (SVGElement element) - throws SVGException - { return _SVGTransformable.getTransformToElement(element); } -//end SVGLocatable - -//from EventTarget -private org.inkscape.dom.events.EventTargetImpl _EventTarget; -public void addEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.addEventListener(type, listener, useCapture); } -public void removeEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListener(type, listener, useCapture); } -public boolean dispatchEvent(Event evt) - throws EventException - { return _EventTarget.dispatchEvent(evt); } -public void addEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture, - Object evtGroup) - { _EventTarget.addEventListenerNS(namespaceURI, type, listener, useCapture, evtGroup); } -public void removeEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListenerNS(namespaceURI, type, listener, useCapture); } -public boolean willTriggerNS(String namespaceURI, - String type) - { return _EventTarget.willTriggerNS(namespaceURI, type); } -public boolean hasEventListenerNS(String namespaceURI, - String type) - { return _EventTarget.hasEventListenerNS(namespaceURI, type); } -//end EventTarget - - -//from SVGAnimatedPoints -SVGAnimatedPointsImpl _SVGAnimatedPoints; -public SVGPointList getPoints() - { return _SVGAnimatedPoints.getPoints(); } -public SVGPointList getAnimatedPoints() - { return _SVGAnimatedPoints.getAnimatedPoints(); } -//end SVGAnimatedPoints - - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPolylineElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPolylineElementImpl.java deleted file mode 100644 index ea017691d..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPolylineElementImpl.java +++ /dev/null @@ -1,175 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - -import org.w3c.dom.events.Event; -import org.w3c.dom.events.EventTarget; -import org.w3c.dom.events.EventException; -import org.w3c.dom.events.EventListener; - - -public class SVGPolylineElementImpl - extends - SVGElementImpl - //SVGTests, - //SVGLangSpace, - //SVGExternalResourcesRequired, - //SVGStylable, - //SVGTransformable, - //EventTarget, - //SVGAnimatedPoints - implements org.w3c.dom.svg.SVGPolylineElement -{ - -public SVGPolylineElementImpl() -{ - imbue(_SVGTests = new SVGTestsImpl()); - imbue(_SVGLangSpace = new SVGLangSpaceImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); - imbue(_SVGStylable = new SVGStylableImpl()); - imbue(_SVGTransformable = new SVGTransformableImpl()); - imbue(_EventTarget = new org.inkscape.dom.events.EventTargetImpl()); - imbue(_SVGAnimatedPoints = new SVGAnimatedPointsImpl()); -} - - -//from SVGTests -private SVGTestsImpl _SVGTests; -public SVGStringList getRequiredFeatures() - { return _SVGTests.getRequiredFeatures(); } -public SVGStringList getRequiredExtensions() - { return _SVGTests.getRequiredExtensions(); } -public SVGStringList getSystemLanguage() - { return _SVGTests.getSystemLanguage(); } -public boolean hasExtension (String extension) - { return _SVGTests.hasExtension(extension); } -//end SVGTests - -//from SVGLangSpace -private SVGLangSpaceImpl _SVGLangSpace; -public String getXMLlang() - { return _SVGLangSpace.getXMLlang(); } -public void setXMLlang(String xmllang) - throws DOMException - { _SVGLangSpace.setXMLlang(xmllang); } -public String getXMLspace() - { return _SVGLangSpace.getXMLspace(); } -public void setXMLspace(String xmlspace) - throws DOMException - { _SVGLangSpace.setXMLspace(xmlspace); } -//end SVGLangSpace - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - -//from SVGTransformable -private SVGTransformableImpl _SVGTransformable; -public SVGAnimatedTransformList getTransform() - { return _SVGTransformable.getTransform(); } -//end SVGTransformable - -//from SVGLocatable (from SVGTransformable) -public SVGElement getNearestViewportElement() - { return _SVGTransformable.getNearestViewportElement(); } -public SVGElement getFarthestViewportElement() - { return _SVGTransformable.getFarthestViewportElement(); } -public SVGRect getBBox() - { return _SVGTransformable.getBBox(); } -public SVGMatrix getCTM() - { return _SVGTransformable.getCTM(); } -public SVGMatrix getScreenCTM() - { return _SVGTransformable.getScreenCTM(); } -public SVGMatrix getTransformToElement (SVGElement element) - throws SVGException - { return _SVGTransformable.getTransformToElement(element); } -//end SVGLocatable - -//from EventTarget -private org.inkscape.dom.events.EventTargetImpl _EventTarget; -public void addEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.addEventListener(type, listener, useCapture); } -public void removeEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListener(type, listener, useCapture); } -public boolean dispatchEvent(Event evt) - throws EventException - { return _EventTarget.dispatchEvent(evt); } -public void addEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture, - Object evtGroup) - { _EventTarget.addEventListenerNS(namespaceURI, type, listener, useCapture, evtGroup); } -public void removeEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListenerNS(namespaceURI, type, listener, useCapture); } -public boolean willTriggerNS(String namespaceURI, - String type) - { return _EventTarget.willTriggerNS(namespaceURI, type); } -public boolean hasEventListenerNS(String namespaceURI, - String type) - { return _EventTarget.hasEventListenerNS(namespaceURI, type); } -//end EventTarget - - -//from SVGAnimatedPoints -SVGAnimatedPointsImpl _SVGAnimatedPoints; -public SVGPointList getPoints() - { return _SVGAnimatedPoints.getPoints(); } -public SVGPointList getAnimatedPoints() - { return _SVGAnimatedPoints.getAnimatedPoints(); } -//end SVGAnimatedPoints - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGPreserveAspectRatioImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGPreserveAspectRatioImpl.java deleted file mode 100644 index 07d9e26ec..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGPreserveAspectRatioImpl.java +++ /dev/null @@ -1,44 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -public class SVGPreserveAspectRatioImpl - implements org.w3c.dom.svg.SVGPreserveAspectRatio -{ -public native short getAlign( ); -public native void setAlign( short align ) - throws DOMException; -public native short getMeetOrSlice( ); -public native void setMeetOrSlice( short meetOrSlice ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGRadialGradientElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGRadialGradientElementImpl.java deleted file mode 100644 index 28db7de38..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGRadialGradientElementImpl.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGAnimatedLength; - - -public class SVGRadialGradientElementImpl - extends - SVGGradientElementImpl - implements org.w3c.dom.svg.SVGRadialGradientElement -{ -public native SVGAnimatedLength getCx( ); -public native SVGAnimatedLength getCy( ); -public native SVGAnimatedLength getR( ); -public native SVGAnimatedLength getFx( ); -public native SVGAnimatedLength getFy( ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGRectElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGRectElementImpl.java deleted file mode 100644 index e0a3aefc7..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGRectElementImpl.java +++ /dev/null @@ -1,170 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - -import org.w3c.dom.events.Event; -import org.w3c.dom.events.EventTarget; -import org.w3c.dom.events.EventException; -import org.w3c.dom.events.EventListener; - - - -public class SVGRectElementImpl - extends - SVGElementImpl - //SVGTests, - //SVGLangSpace, - //SVGExternalResourcesRequired, - //SVGStylable, - //SVGTransformable, - //EventTarget - implements org.w3c.dom.svg.SVGRectElement -{ - -public SVGRectElementImpl() -{ - imbue(_SVGTests = new SVGTestsImpl()); - imbue(_SVGLangSpace = new SVGLangSpaceImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); - imbue(_SVGStylable = new SVGStylableImpl()); - imbue(_SVGTransformable = new SVGTransformableImpl()); - imbue(_EventTarget = new org.inkscape.dom.events.EventTargetImpl()); -} - - -//from SVGTests -private SVGTestsImpl _SVGTests; -public SVGStringList getRequiredFeatures() - { return _SVGTests.getRequiredFeatures(); } -public SVGStringList getRequiredExtensions() - { return _SVGTests.getRequiredExtensions(); } -public SVGStringList getSystemLanguage() - { return _SVGTests.getSystemLanguage(); } -public boolean hasExtension (String extension) - { return _SVGTests.hasExtension(extension); } -//end SVGTests - -//from SVGLangSpace -private SVGLangSpaceImpl _SVGLangSpace; -public String getXMLlang() - { return _SVGLangSpace.getXMLlang(); } -public void setXMLlang(String xmllang) - throws DOMException - { _SVGLangSpace.setXMLlang(xmllang); } -public String getXMLspace() - { return _SVGLangSpace.getXMLspace(); } -public void setXMLspace(String xmlspace) - throws DOMException - { _SVGLangSpace.setXMLspace(xmlspace); } -//end SVGLangSpace - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - -//from SVGTransformable -private SVGTransformableImpl _SVGTransformable; -public SVGAnimatedTransformList getTransform() - { return _SVGTransformable.getTransform(); } -//end SVGTransformable - -//from SVGLocatable (from SVGTransformable) -public SVGElement getNearestViewportElement() - { return _SVGTransformable.getNearestViewportElement(); } -public SVGElement getFarthestViewportElement() - { return _SVGTransformable.getFarthestViewportElement(); } -public SVGRect getBBox() - { return _SVGTransformable.getBBox(); } -public SVGMatrix getCTM() - { return _SVGTransformable.getCTM(); } -public SVGMatrix getScreenCTM() - { return _SVGTransformable.getScreenCTM(); } -public SVGMatrix getTransformToElement (SVGElement element) - throws SVGException - { return _SVGTransformable.getTransformToElement(element); } -//end SVGLocatable - -//from EventTarget -private org.inkscape.dom.events.EventTargetImpl _EventTarget; -public void addEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.addEventListener(type, listener, useCapture); } -public void removeEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListener(type, listener, useCapture); } -public boolean dispatchEvent(Event evt) - throws EventException - { return _EventTarget.dispatchEvent(evt); } -public void addEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture, - Object evtGroup) - { _EventTarget.addEventListenerNS(namespaceURI, type, listener, useCapture, evtGroup); } -public void removeEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListenerNS(namespaceURI, type, listener, useCapture); } -public boolean willTriggerNS(String namespaceURI, - String type) - { return _EventTarget.willTriggerNS(namespaceURI, type); } -public boolean hasEventListenerNS(String namespaceURI, - String type) - { return _EventTarget.hasEventListenerNS(namespaceURI, type); } -//end EventTarget - -public native SVGAnimatedLength getX( ); -public native SVGAnimatedLength getY( ); -public native SVGAnimatedLength getWidth( ); -public native SVGAnimatedLength getHeight( ); -public native SVGAnimatedLength getRx( ); -public native SVGAnimatedLength getRy( ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGRectImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGRectImpl.java deleted file mode 100644 index 9b4b0e762..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGRectImpl.java +++ /dev/null @@ -1,49 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - - -public class SVGRectImpl - implements org.w3c.dom.svg.SVGRect -{ -public native float getX( ); -public native void setX( float x ) - throws DOMException; -public native float getY( ); -public native void setY( float y ) - throws DOMException; -public native float getWidth( ); -public native void setWidth( float width ) - throws DOMException; -public native float getHeight( ); -public native void setHeight( float height ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGRenderingIntentImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGRenderingIntentImpl.java deleted file mode 100644 index 629a105cb..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGRenderingIntentImpl.java +++ /dev/null @@ -1,36 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -public class SVGRenderingIntentImpl - implements org.w3c.dom.svg.SVGRenderingIntent -{ -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGSVGElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGSVGElementImpl.java deleted file mode 100644 index a98db9e07..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGSVGElementImpl.java +++ /dev/null @@ -1,280 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.NodeList; -import org.w3c.dom.Element; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; -import org.w3c.dom.css.RGBColor; - -import org.w3c.dom.views.DocumentView; - -import org.w3c.dom.events.Event; -import org.w3c.dom.events.EventTarget; -import org.w3c.dom.events.EventException; -import org.w3c.dom.events.EventListener; -import org.w3c.dom.events.DocumentEvent; - -import org.w3c.dom.stylesheets.DocumentStyle; -import org.w3c.dom.stylesheets.StyleSheetList; - - - -public class SVGSVGElementImpl - extends - SVGElementImpl - //SVGTests, - //SVGLangSpace, - //SVGExternalResourcesRequired, - //SVGStylable, - //SVGLocatable, - //SVGFitToViewBox, - //SVGZoomAndPan, - //EventTarget, - //DocumentEvent, - //ViewCSS, - //DocumentCSS - implements org.w3c.dom.svg.SVGSVGElement -{ -public SVGSVGElementImpl() -{ - imbue(_SVGTests = new SVGTestsImpl()); - imbue(_SVGLangSpace = new SVGLangSpaceImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); - imbue(_SVGStylable = new SVGStylableImpl()); - imbue(_SVGLocatable = new SVGLocatableImpl()); - imbue(_SVGFitToViewBox = new SVGFitToViewBoxImpl()); - imbue(_SVGZoomAndPan = new SVGZoomAndPanImpl()); - imbue(_EventTarget = new org.inkscape.dom.events.EventTargetImpl()); - imbue(_DocumentEvent = new org.inkscape.dom.events.DocumentEventImpl()); - imbue(_ViewCSS = new org.inkscape.dom.css.ViewCSSImpl()); - imbue(_DocumentCSS = new org.inkscape.dom.css.DocumentCSSImpl()); -} - - -//from SVGURIReference -private SVGURIReferenceImpl _SVGURIReference; -public SVGAnimatedString getHref() - { return _SVGURIReference.getHref(); } -//end SVGURIReference - -//from SVGTests -private SVGTestsImpl _SVGTests; -public SVGStringList getRequiredFeatures() - { return _SVGTests.getRequiredFeatures(); } -public SVGStringList getRequiredExtensions() - { return _SVGTests.getRequiredExtensions(); } -public SVGStringList getSystemLanguage() - { return _SVGTests.getSystemLanguage(); } -public boolean hasExtension (String extension) - { return _SVGTests.hasExtension(extension); } -//end SVGTests - -//from SVGLangSpace -private SVGLangSpaceImpl _SVGLangSpace; -public String getXMLlang() - { return _SVGLangSpace.getXMLlang(); } -public void setXMLlang(String xmllang) - throws DOMException - { _SVGLangSpace.setXMLlang(xmllang); } -public String getXMLspace() - { return _SVGLangSpace.getXMLspace(); } -public void setXMLspace(String xmlspace) - throws DOMException - { _SVGLangSpace.setXMLspace(xmlspace); } -//end SVGLangSpace - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - -//from SVGLocatable -private SVGLocatableImpl _SVGLocatable; -public SVGElement getNearestViewportElement() - { return _SVGLocatable.getNearestViewportElement(); } -public SVGElement getFarthestViewportElement() - { return _SVGLocatable.getFarthestViewportElement(); } -public SVGRect getBBox() - { return _SVGLocatable.getBBox(); } -public SVGMatrix getCTM() - { return _SVGLocatable.getCTM(); } -public SVGMatrix getScreenCTM() - { return _SVGLocatable.getScreenCTM(); } -public SVGMatrix getTransformToElement (SVGElement element) - throws SVGException - { return _SVGLocatable.getTransformToElement(element); } -//end SVGLocatable - -//from EventTarget -private org.inkscape.dom.events.EventTargetImpl _EventTarget; -public void addEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.addEventListener(type, listener, useCapture); } -public void removeEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListener(type, listener, useCapture); } -public boolean dispatchEvent(Event evt) - throws EventException - { return _EventTarget.dispatchEvent(evt); } -public void addEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture, - Object evtGroup) - { _EventTarget.addEventListenerNS(namespaceURI, type, listener, useCapture, evtGroup); } -public void removeEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListenerNS(namespaceURI, type, listener, useCapture); } -public boolean willTriggerNS(String namespaceURI, - String type) - { return _EventTarget.willTriggerNS(namespaceURI, type); } -public boolean hasEventListenerNS(String namespaceURI, - String type) - { return _EventTarget.hasEventListenerNS(namespaceURI, type); } -//end EventTarget - -//from SVGFitToViewBox -SVGFitToViewBoxImpl _SVGFitToViewBox; -public SVGAnimatedRect getViewBox() - { return _SVGFitToViewBox.getViewBox(); } -public SVGAnimatedPreserveAspectRatio getPreserveAspectRatio() - { return _SVGFitToViewBox.getPreserveAspectRatio(); } -//end SVGFitToViewBox - -//from SVGZoomAndPan -SVGZoomAndPanImpl _SVGZoomAndPan; -public short getZoomAndPan() - { return _SVGZoomAndPan.getZoomAndPan(); } -public void setZoomAndPan(short zoomAndPan) throws DOMException - { _SVGZoomAndPan.setZoomAndPan(zoomAndPan); } -//end SVGZoomAndPan - - -//from DocumentEvent -org.inkscape.dom.events.DocumentEventImpl _DocumentEvent; -public Event createEvent(String eventType) throws DOMException - { return _DocumentEvent.createEvent(eventType); } -public boolean canDispatch(String namespaceURI, String type) - { return _DocumentEvent.canDispatch(namespaceURI, type); } -//end DocumentEvent - -//from ViewCSS -org.inkscape.dom.css.ViewCSSImpl _ViewCSS; -public CSSStyleDeclaration getComputedStyle(Element elt, String pseudoElt) - { return _ViewCSS.getComputedStyle(elt, pseudoElt); } -//end ViewCSS - -//from AbstractView (from ViewCSS) -public DocumentView getDocument() - { return _ViewCSS.getDocument(); } -//end AbstractView - -//from DocumentCSS -org.inkscape.dom.css.DocumentCSSImpl _DocumentCSS; -public CSSStyleDeclaration getOverrideStyle(Element elt, String pseudoElt) - { return _DocumentCSS.getOverrideStyle(elt, pseudoElt); } -//end DocumentCSS - -//from DocumentStyle (from DocumentCSS) -public StyleSheetList getStyleSheets() - { return _DocumentCSS.getStyleSheets(); } -//end DocumentStyle - - -public native SVGAnimatedLength getX( ); -public native SVGAnimatedLength getY( ); -public native SVGAnimatedLength getWidth( ); -public native SVGAnimatedLength getHeight( ); -public native String getContentScriptType( ); -public native void setContentScriptType( String contentScriptType ) - throws DOMException; -public native String getContentStyleType( ); -public native void setContentStyleType( String contentStyleType ) - throws DOMException; -public native SVGRect getViewport( ); -public native float getPixelUnitToMillimeterX( ); -public native float getPixelUnitToMillimeterY( ); -public native float getScreenPixelToMillimeterX( ); -public native float getScreenPixelToMillimeterY( ); -public native boolean getUseCurrentView( ); -public native void setUseCurrentView( boolean useCurrentView ) - throws DOMException; -public native SVGViewSpec getCurrentView( ); -public native float getCurrentScale( ); -public native void setCurrentScale( float currentScale ) - throws DOMException; -public native SVGPoint getCurrentTranslate( ); - -public native int suspendRedraw ( int max_wait_milliseconds ); -public native void unsuspendRedraw ( int suspend_handle_id ) - throws DOMException; -public native void unsuspendRedrawAll ( ); -public native void forceRedraw ( ); -public native void pauseAnimations ( ); -public native void unpauseAnimations ( ); -public native boolean animationsPaused ( ); -public native float getCurrentTime ( ); -public native void setCurrentTime ( float seconds ); -public native NodeList getIntersectionList ( SVGRect rect, SVGElement referenceElement ); -public native NodeList getEnclosureList ( SVGRect rect, SVGElement referenceElement ); -public native boolean checkIntersection ( SVGElement element, SVGRect rect ); -public native boolean checkEnclosure ( SVGElement element, SVGRect rect ); -public native void deselectAll ( ); -public native SVGNumber createSVGNumber ( ); -public native SVGLength createSVGLength ( ); -public native SVGAngle createSVGAngle ( ); -public native SVGPoint createSVGPoint ( ); -public native SVGMatrix createSVGMatrix ( ); -public native SVGRect createSVGRect ( ); -public native SVGTransform createSVGTransform ( ); -public native SVGTransform createSVGTransformFromMatrix ( SVGMatrix matrix ); -public native Element getElementById ( String elementId ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGScriptElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGScriptElementImpl.java deleted file mode 100644 index a211ad345..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGScriptElementImpl.java +++ /dev/null @@ -1,70 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; -import org.w3c.dom.svg.*; - - - -public class SVGScriptElementImpl - extends - SVGElementImpl - //SVGURIReference, - //SVGExternalResourcesRequired - implements org.w3c.dom.svg.SVGScriptElement -{ - -public SVGScriptElementImpl() -{ - imbue(_SVGURIReference = new SVGURIReferenceImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); -} - - -//from SVGURIReference -private SVGURIReferenceImpl _SVGURIReference; -public SVGAnimatedString getHref() - { return _SVGURIReference.getHref(); } -//end SVGURIReference - - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - - - -public native String getType( ); -public native void setType( String type ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGSetElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGSetElementImpl.java deleted file mode 100644 index 9187d6104..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGSetElementImpl.java +++ /dev/null @@ -1,38 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -public class SVGSetElementImpl - extends - SVGAnimationElementImpl - implements org.w3c.dom.svg.SVGSetElement -{ -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGStopElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGStopElementImpl.java deleted file mode 100644 index dee28e3ed..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGStopElementImpl.java +++ /dev/null @@ -1,62 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - - -public class SVGStopElementImpl - extends - SVGElementImpl - //SVGStylable - implements org.w3c.dom.svg.SVGStopElement -{ - -public SVGStopElementImpl() -{ - imbue(_SVGStylable = new SVGStylableImpl()); -} - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - - -public native SVGAnimatedNumber getOffset( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGStringListImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGStringListImpl.java deleted file mode 100644 index cb352d9c9..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGStringListImpl.java +++ /dev/null @@ -1,56 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; -import org.w3c.dom.svg.SVGException; - - - -public class SVGStringListImpl - implements org.w3c.dom.svg.SVGStringList -{ -public native int getNumberOfItems( ); - -public native void clear ( ) - throws DOMException; -public native String initialize ( String newItem ) - throws DOMException, SVGException; -public native String getItem ( int index ) - throws DOMException; -public native String insertItemBefore ( String newItem, int index ) - throws DOMException, SVGException; -public native String replaceItem ( String newItem, int index ) - throws DOMException, SVGException; -public native String removeItem ( int index ) - throws DOMException; -public native String appendItem ( String newItem ) - throws DOMException, SVGException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGStylableImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGStylableImpl.java deleted file mode 100644 index 7523d456d..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGStylableImpl.java +++ /dev/null @@ -1,47 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; -import org.w3c.dom.svg.SVGAnimatedString; - -public class SVGStylableImpl - extends - org.inkscape.cmn.BaseInterface - implements org.w3c.dom.svg.SVGStylable -{ - -public native SVGAnimatedString getClassName( ); -public native CSSStyleDeclaration getStyle( ); -public native CSSValue getPresentationAttribute ( String name ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGStyleElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGStyleElementImpl.java deleted file mode 100644 index 8b7408434..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGStyleElementImpl.java +++ /dev/null @@ -1,52 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -public class SVGStyleElementImpl - extends - SVGElementImpl - implements org.w3c.dom.svg.SVGStyleElement -{ -public native String getXMLspace( ); -public native void setXMLspace( String xmlspace ) - throws DOMException; -public native String getType( ); -public native void setType( String type ) - throws DOMException; -public native String getMedia( ); -public native void setMedia( String media ) - throws DOMException; -public native String getTitle( ); -public native void setTitle( String title ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGSwitchElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGSwitchElementImpl.java deleted file mode 100644 index fa74caf70..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGSwitchElementImpl.java +++ /dev/null @@ -1,166 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - -import org.w3c.dom.events.Event; -import org.w3c.dom.events.EventTarget; -import org.w3c.dom.events.EventException; -import org.w3c.dom.events.EventListener; - - -public class SVGSwitchElementImpl - extends - SVGElementImpl - //SVGTests, - //SVGLangSpace, - //SVGExternalResourcesRequired, - //SVGStylable, - //SVGTransformable, - //EventTarget - implements org.w3c.dom.svg.SVGSwitchElement -{ - -public SVGSwitchElementImpl() -{ - imbue(_SVGTests = new SVGTestsImpl()); - imbue(_SVGLangSpace = new SVGLangSpaceImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); - imbue(_SVGStylable = new SVGStylableImpl()); - imbue(_SVGTransformable = new SVGTransformableImpl()); - imbue(_EventTarget = new org.inkscape.dom.events.EventTargetImpl()); -} - - -//from SVGTests -private SVGTestsImpl _SVGTests; -public SVGStringList getRequiredFeatures() - { return _SVGTests.getRequiredFeatures(); } -public SVGStringList getRequiredExtensions() - { return _SVGTests.getRequiredExtensions(); } -public SVGStringList getSystemLanguage() - { return _SVGTests.getSystemLanguage(); } -public boolean hasExtension (String extension) - { return _SVGTests.hasExtension(extension); } -//end SVGTests - -//from SVGLangSpace -private SVGLangSpaceImpl _SVGLangSpace; -public String getXMLlang() - { return _SVGLangSpace.getXMLlang(); } -public void setXMLlang(String xmllang) - throws DOMException - { _SVGLangSpace.setXMLlang(xmllang); } -public String getXMLspace() - { return _SVGLangSpace.getXMLspace(); } -public void setXMLspace(String xmlspace) - throws DOMException - { _SVGLangSpace.setXMLspace(xmlspace); } -//end SVGLangSpace - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - -//from SVGTransformable -private SVGTransformableImpl _SVGTransformable; -public SVGAnimatedTransformList getTransform() - { return _SVGTransformable.getTransform(); } -//end SVGTransformable - -//from SVGLocatable (from SVGTransformable) -public SVGElement getNearestViewportElement() - { return _SVGTransformable.getNearestViewportElement(); } -public SVGElement getFarthestViewportElement() - { return _SVGTransformable.getFarthestViewportElement(); } -public SVGRect getBBox() - { return _SVGTransformable.getBBox(); } -public SVGMatrix getCTM() - { return _SVGTransformable.getCTM(); } -public SVGMatrix getScreenCTM() - { return _SVGTransformable.getScreenCTM(); } -public SVGMatrix getTransformToElement (SVGElement element) - throws SVGException - { return _SVGTransformable.getTransformToElement(element); } -//end SVGLocatable - -//from EventTarget -private org.inkscape.dom.events.EventTargetImpl _EventTarget; -public void addEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.addEventListener(type, listener, useCapture); } -public void removeEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListener(type, listener, useCapture); } -public boolean dispatchEvent(Event evt) - throws EventException - { return _EventTarget.dispatchEvent(evt); } -public void addEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture, - Object evtGroup) - { _EventTarget.addEventListenerNS(namespaceURI, type, listener, useCapture, evtGroup); } -public void removeEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListenerNS(namespaceURI, type, listener, useCapture); } -public boolean willTriggerNS(String namespaceURI, - String type) - { return _EventTarget.willTriggerNS(namespaceURI, type); } -public boolean hasEventListenerNS(String namespaceURI, - String type) - { return _EventTarget.hasEventListenerNS(namespaceURI, type); } -//end EventTarget - - -} - diff --git a/src/bind/java/org/inkscape/dom/svg/SVGSymbolElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGSymbolElementImpl.java deleted file mode 100644 index 5fded7c3a..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGSymbolElementImpl.java +++ /dev/null @@ -1,161 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - -import org.w3c.dom.events.Event; -import org.w3c.dom.events.EventTarget; -import org.w3c.dom.events.EventException; -import org.w3c.dom.events.EventListener; - - - -public class SVGSymbolElementImpl - extends - SVGElementImpl - //SVGLangSpace, - //SVGExternalResourcesRequired, - //SVGStylable, - //SVGFitToViewBox, - //EventTarget - implements org.w3c.dom.svg.SVGSymbolElement -{ - -public SVGSymbolElementImpl() -{ - imbue(_SVGLangSpace = new SVGLangSpaceImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); - imbue(_SVGStylable = new SVGStylableImpl()); - imbue(_SVGTransformable = new SVGTransformableImpl()); - imbue(_SVGFitToViewBox = new SVGFitToViewBoxImpl()); - imbue(_EventTarget = new org.inkscape.dom.events.EventTargetImpl()); -} - - -//from SVGLangSpace -private SVGLangSpaceImpl _SVGLangSpace; -public String getXMLlang() - { return _SVGLangSpace.getXMLlang(); } -public void setXMLlang(String xmllang) - throws DOMException - { _SVGLangSpace.setXMLlang(xmllang); } -public String getXMLspace() - { return _SVGLangSpace.getXMLspace(); } -public void setXMLspace(String xmlspace) - throws DOMException - { _SVGLangSpace.setXMLspace(xmlspace); } -//end SVGLangSpace - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - -//from SVGTransformable -private SVGTransformableImpl _SVGTransformable; -public SVGAnimatedTransformList getTransform() - { return _SVGTransformable.getTransform(); } -//end SVGTransformable - -//from SVGLocatable (from SVGTransformable) -public SVGElement getNearestViewportElement() - { return _SVGTransformable.getNearestViewportElement(); } -public SVGElement getFarthestViewportElement() - { return _SVGTransformable.getFarthestViewportElement(); } -public SVGRect getBBox() - { return _SVGTransformable.getBBox(); } -public SVGMatrix getCTM() - { return _SVGTransformable.getCTM(); } -public SVGMatrix getScreenCTM() - { return _SVGTransformable.getScreenCTM(); } -public SVGMatrix getTransformToElement (SVGElement element) - throws SVGException - { return _SVGTransformable.getTransformToElement(element); } -//end SVGLocatable - -//from SVGFitToViewBox -SVGFitToViewBoxImpl _SVGFitToViewBox; -public SVGAnimatedRect getViewBox() - { return _SVGFitToViewBox.getViewBox(); } -public SVGAnimatedPreserveAspectRatio getPreserveAspectRatio() - { return _SVGFitToViewBox.getPreserveAspectRatio(); } -//end SVGFitToViewBox - -//from EventTarget -private org.inkscape.dom.events.EventTargetImpl _EventTarget; -public void addEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.addEventListener(type, listener, useCapture); } -public void removeEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListener(type, listener, useCapture); } -public boolean dispatchEvent(Event evt) - throws EventException - { return _EventTarget.dispatchEvent(evt); } -public void addEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture, - Object evtGroup) - { _EventTarget.addEventListenerNS(namespaceURI, type, listener, useCapture, evtGroup); } -public void removeEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListenerNS(namespaceURI, type, listener, useCapture); } -public boolean willTriggerNS(String namespaceURI, - String type) - { return _EventTarget.willTriggerNS(namespaceURI, type); } -public boolean hasEventListenerNS(String namespaceURI, - String type) - { return _EventTarget.hasEventListenerNS(namespaceURI, type); } -//end EventTarget - - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGTRefElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGTRefElementImpl.java deleted file mode 100644 index 545c1f305..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGTRefElementImpl.java +++ /dev/null @@ -1,54 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGAnimatedString; - - - -public class SVGTRefElementImpl - extends - SVGTextPositioningElementImpl - //SVGURIReference - implements org.w3c.dom.svg.SVGTRefElement -{ - -public SVGTRefElementImpl() -{ - imbue(_SVGURIReference = new SVGURIReferenceImpl()); -} - - -//from SVGURIReference -private SVGURIReferenceImpl _SVGURIReference; -public SVGAnimatedString getHref() - { return _SVGURIReference.getHref(); } -//end SVGURIReference - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGTSpanElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGTSpanElementImpl.java deleted file mode 100644 index 89ed5dabb..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGTSpanElementImpl.java +++ /dev/null @@ -1,38 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -public class SVGTSpanElementImpl - extends - SVGTextPositioningElementImpl - implements org.w3c.dom.svg.SVGTSpanElement -{ -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGTestsImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGTestsImpl.java deleted file mode 100644 index 5f0a8c727..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGTestsImpl.java +++ /dev/null @@ -1,45 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGStringList; - - -public class SVGTestsImpl - extends - org.inkscape.cmn.BaseInterface - implements org.w3c.dom.svg.SVGTests -{ -public native SVGStringList getRequiredFeatures( ); -public native SVGStringList getRequiredExtensions( ); -public native SVGStringList getSystemLanguage( ); -public native boolean hasExtension ( String extension ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGTextContentElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGTextContentElementImpl.java deleted file mode 100644 index 3a271ce7a..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGTextContentElementImpl.java +++ /dev/null @@ -1,161 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.events.EventTarget; -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - -import org.w3c.dom.events.EventException; -import org.w3c.dom.events.Event; -import org.w3c.dom.events.EventListener; - - - - -public class SVGTextContentElementImpl - extends - SVGElementImpl - //SVGTests, - //SVGLangSpace, - //SVGExternalResourcesRequired, - //SVGStylable, - //EventTarget - implements org.w3c.dom.svg.SVGTextContentElement -{ - -public SVGTextContentElementImpl() -{ - imbue(_SVGTests = new SVGTestsImpl()); - imbue(_SVGLangSpace = new SVGLangSpaceImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); - imbue(_SVGStylable = new SVGStylableImpl()); - imbue(_EventTarget = new org.inkscape.dom.events.EventTargetImpl()); -} - - -//from SVGTests -private SVGTestsImpl _SVGTests; -public SVGStringList getRequiredFeatures() - { return _SVGTests.getRequiredFeatures(); } -public SVGStringList getRequiredExtensions() - { return _SVGTests.getRequiredExtensions(); } -public SVGStringList getSystemLanguage() - { return _SVGTests.getSystemLanguage(); } -public boolean hasExtension (String extension) - { return _SVGTests.hasExtension(extension); } -//end SVGTests - -//from SVGLangSpace -private SVGLangSpaceImpl _SVGLangSpace; -public String getXMLlang() - { return _SVGLangSpace.getXMLlang(); } -public void setXMLlang(String xmllang) - throws DOMException - { _SVGLangSpace.setXMLlang(xmllang); } -public String getXMLspace() - { return _SVGLangSpace.getXMLspace(); } -public void setXMLspace(String xmlspace) - throws DOMException - { _SVGLangSpace.setXMLspace(xmlspace); } -//end SVGLangSpace - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - -//from EventTarget -private org.inkscape.dom.events.EventTargetImpl _EventTarget; -public void addEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.addEventListener(type, listener, useCapture); } -public void removeEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListener(type, listener, useCapture); } -public boolean dispatchEvent(Event evt) - throws EventException - { return _EventTarget.dispatchEvent(evt); } -public void addEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture, - Object evtGroup) - { _EventTarget.addEventListenerNS(namespaceURI, type, listener, useCapture, evtGroup); } -public void removeEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListenerNS(namespaceURI, type, listener, useCapture); } -public boolean willTriggerNS(String namespaceURI, - String type) - { return _EventTarget.willTriggerNS(namespaceURI, type); } -public boolean hasEventListenerNS(String namespaceURI, - String type) - { return _EventTarget.hasEventListenerNS(namespaceURI, type); } -//end EventTarget - - - -public native SVGAnimatedLength getTextLength( ); -public native SVGAnimatedEnumeration getLengthAdjust( ); - -public native int getNumberOfChars ( ); -public native float getComputedTextLength ( ); -public native float getSubStringLength ( int charnum, int nchars ) - throws DOMException; -public native SVGPoint getStartPositionOfChar ( int charnum ) - throws DOMException; -public native SVGPoint getEndPositionOfChar ( int charnum ) - throws DOMException; -public native SVGRect getExtentOfChar ( int charnum ) - throws DOMException; -public native float getRotationOfChar ( int charnum ) - throws DOMException; -public native int getCharNumAtPosition ( SVGPoint point ); -public native void selectSubString ( int charnum, int nchars ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGTextElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGTextElementImpl.java deleted file mode 100644 index a312aade8..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGTextElementImpl.java +++ /dev/null @@ -1,69 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.*; - - -public class SVGTextElementImpl - extends - SVGTextPositioningElementImpl - //SVGTransformable - implements org.w3c.dom.svg.SVGTextElement -{ - -public SVGTextElementImpl() -{ - imbue(_SVGTransformable = new SVGTransformableImpl()); -} - - -//from SVGTransformable -private SVGTransformableImpl _SVGTransformable; -public SVGAnimatedTransformList getTransform() - { return _SVGTransformable.getTransform(); } -//end SVGTransformable - -//from SVGLocatable (from SVGTransformable) -public SVGElement getNearestViewportElement() - { return _SVGTransformable.getNearestViewportElement(); } -public SVGElement getFarthestViewportElement() - { return _SVGTransformable.getFarthestViewportElement(); } -public SVGRect getBBox() - { return _SVGTransformable.getBBox(); } -public SVGMatrix getCTM() - { return _SVGTransformable.getCTM(); } -public SVGMatrix getScreenCTM() - { return _SVGTransformable.getScreenCTM(); } -public SVGMatrix getTransformToElement (SVGElement element) - throws SVGException - { return _SVGTransformable.getTransformToElement(element); } -//end SVGLocatable - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGTextPathElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGTextPathElementImpl.java deleted file mode 100644 index ce6a96da9..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGTextPathElementImpl.java +++ /dev/null @@ -1,57 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGAnimatedLength; -import org.w3c.dom.svg.SVGAnimatedString; -import org.w3c.dom.svg.SVGAnimatedEnumeration; - -public class SVGTextPathElementImpl - extends - SVGTextContentElementImpl - //SVGURIReference - implements org.w3c.dom.svg.SVGTextPathElement -{ - -public SVGTextPathElementImpl() -{ - imbue(_SVGURIReference = new SVGURIReferenceImpl()); -} - - -//from SVGURIReference -private SVGURIReferenceImpl _SVGURIReference; -public SVGAnimatedString getHref() - { return _SVGURIReference.getHref(); } -//end SVGURIReference - -public native SVGAnimatedLength getStartOffset( ); -public native SVGAnimatedEnumeration getMethod( ); -public native SVGAnimatedEnumeration getSpacing( ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGTextPositioningElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGTextPositioningElementImpl.java deleted file mode 100644 index 1192f081a..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGTextPositioningElementImpl.java +++ /dev/null @@ -1,45 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGAnimatedLengthList; -import org.w3c.dom.svg.SVGAnimatedNumberList; - - -public class SVGTextPositioningElementImpl - extends - SVGTextContentElementImpl - implements org.w3c.dom.svg.SVGTextPositioningElement -{ -public native SVGAnimatedLengthList getX( ); -public native SVGAnimatedLengthList getY( ); -public native SVGAnimatedLengthList getDx( ); -public native SVGAnimatedLengthList getDy( ); -public native SVGAnimatedNumberList getRotate( ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGTitleElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGTitleElementImpl.java deleted file mode 100644 index 83cdea5bf..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGTitleElementImpl.java +++ /dev/null @@ -1,79 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - - - -public class SVGTitleElementImpl - extends - SVGElementImpl - //SVGLangSpace, - //SVGStylable - implements org.w3c.dom.svg.SVGTitleElement -{ - -public SVGTitleElementImpl() -{ - imbue(_SVGLangSpace = new SVGLangSpaceImpl()); - imbue(_SVGStylable = new SVGStylableImpl()); -} - -//from SVGLangSpace -private SVGLangSpaceImpl _SVGLangSpace; -public String getXMLlang() - { return _SVGLangSpace.getXMLlang(); } -public void setXMLlang(String xmllang) - throws DOMException - { _SVGLangSpace.setXMLlang(xmllang); } -public String getXMLspace() - { return _SVGLangSpace.getXMLspace(); } -public void setXMLspace(String xmlspace) - throws DOMException - { _SVGLangSpace.setXMLspace(xmlspace); } -//end SVGLangSpace - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGTransformImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGTransformImpl.java deleted file mode 100644 index 1a5fdc3e5..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGTransformImpl.java +++ /dev/null @@ -1,49 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGMatrix; - - -public class SVGTransformImpl - implements org.w3c.dom.svg.SVGTransform -{ -public native short getType( ); -public native SVGMatrix getMatrix( ); -public native float getAngle( ); - -public native void setMatrix ( SVGMatrix matrix ); -public native void setTranslate ( float tx, float ty ); -public native void setScale ( float sx, float sy ); -public native void setRotate ( float angle, float cx, float cy ); -public native void setSkewX ( float angle ); -public native void setSkewY ( float angle ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGTransformListImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGTransformListImpl.java deleted file mode 100644 index 6fa6012a3..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGTransformListImpl.java +++ /dev/null @@ -1,60 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; -import org.w3c.dom.svg.SVGException; - -import org.w3c.dom.svg.SVGTransform; -import org.w3c.dom.svg.SVGMatrix; - - -public class SVGTransformListImpl - implements org.w3c.dom.svg.SVGTransformList -{ -public native int getNumberOfItems( ); - -public native void clear ( ) - throws DOMException; -public native SVGTransform initialize ( SVGTransform newItem ) - throws DOMException, SVGException; -public native SVGTransform getItem ( int index ) - throws DOMException; -public native SVGTransform insertItemBefore ( SVGTransform newItem, int index ) - throws DOMException, SVGException; -public native SVGTransform replaceItem ( SVGTransform newItem, int index ) - throws DOMException, SVGException; -public native SVGTransform removeItem ( int index ) - throws DOMException; -public native SVGTransform appendItem ( SVGTransform newItem ) - throws DOMException, SVGException; -public native SVGTransform createSVGTransformFromMatrix ( SVGMatrix matrix ); -public native SVGTransform consolidate ( ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGTransformableImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGTransformableImpl.java deleted file mode 100644 index 96384f6f6..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGTransformableImpl.java +++ /dev/null @@ -1,42 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGAnimatedTransformList; - - -public class SVGTransformableImpl - extends - SVGLocatableImpl - implements org.w3c.dom.svg.SVGTransformable -{ -public native SVGAnimatedTransformList getTransform( ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGURIReferenceImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGURIReferenceImpl.java deleted file mode 100644 index 2e3bb0bd4..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGURIReferenceImpl.java +++ /dev/null @@ -1,42 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.SVGAnimatedString; - - -public class SVGURIReferenceImpl - extends - org.inkscape.cmn.BaseInterface - implements org.w3c.dom.svg.SVGURIReference -{ -public native SVGAnimatedString getHref( ); -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGUnitTypesImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGUnitTypesImpl.java deleted file mode 100644 index b76dab8ea..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGUnitTypesImpl.java +++ /dev/null @@ -1,36 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -public class SVGUnitTypesImpl - implements org.w3c.dom.svg.SVGUnitTypes -{ -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGUseElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGUseElementImpl.java deleted file mode 100644 index 3283cdc26..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGUseElementImpl.java +++ /dev/null @@ -1,180 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -import org.w3c.dom.svg.*; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - -import org.w3c.dom.events.Event; -import org.w3c.dom.events.EventTarget; -import org.w3c.dom.events.EventException; -import org.w3c.dom.events.EventListener; - - -public class SVGUseElementImpl - extends - SVGElementImpl - //SVGURIReference, - //SVGTests, - //SVGLangSpace, - //SVGExternalResourcesRequired, - //SVGStylable, - //SVGTransformable, - //EventTarget - implements org.w3c.dom.svg.SVGUseElement -{ -public SVGUseElementImpl() -{ - imbue(_SVGURIReference = new SVGURIReferenceImpl()); - imbue(_SVGTests = new SVGTestsImpl()); - imbue(_SVGLangSpace = new SVGLangSpaceImpl()); - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); - imbue(_SVGStylable = new SVGStylableImpl()); - imbue(_SVGTransformable = new SVGTransformableImpl()); - imbue(_EventTarget = new org.inkscape.dom.events.EventTargetImpl()); -} - - -//from SVGURIReference -private SVGURIReferenceImpl _SVGURIReference; -public SVGAnimatedString getHref() - { return _SVGURIReference.getHref(); } -//end SVGURIReference - -//from SVGTests -private SVGTestsImpl _SVGTests; -public SVGStringList getRequiredFeatures() - { return _SVGTests.getRequiredFeatures(); } -public SVGStringList getRequiredExtensions() - { return _SVGTests.getRequiredExtensions(); } -public SVGStringList getSystemLanguage() - { return _SVGTests.getSystemLanguage(); } -public boolean hasExtension (String extension) - { return _SVGTests.hasExtension(extension); } -//end SVGTests - -//from SVGLangSpace -private SVGLangSpaceImpl _SVGLangSpace; -public String getXMLlang() - { return _SVGLangSpace.getXMLlang(); } -public void setXMLlang(String xmllang) - throws DOMException - { _SVGLangSpace.setXMLlang(xmllang); } -public String getXMLspace() - { return _SVGLangSpace.getXMLspace(); } -public void setXMLspace(String xmlspace) - throws DOMException - { _SVGLangSpace.setXMLspace(xmlspace); } -//end SVGLangSpace - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - -//from SVGStylable -private SVGStylableImpl _SVGStylable; -public SVGAnimatedString getClassName() - { return _SVGStylable.getClassName(); } -public CSSStyleDeclaration getStyle() - { return _SVGStylable.getStyle(); } -public CSSValue getPresentationAttribute(String name) - { return _SVGStylable.getPresentationAttribute(name); } -//end SVGStylable - -//from SVGTransformable -private SVGTransformableImpl _SVGTransformable; -public SVGAnimatedTransformList getTransform() - { return _SVGTransformable.getTransform(); } -//end SVGTransformable - -//from SVGLocatable (from SVGTransformable) -public SVGElement getNearestViewportElement() - { return _SVGTransformable.getNearestViewportElement(); } -public SVGElement getFarthestViewportElement() - { return _SVGTransformable.getFarthestViewportElement(); } -public SVGRect getBBox() - { return _SVGTransformable.getBBox(); } -public SVGMatrix getCTM() - { return _SVGTransformable.getCTM(); } -public SVGMatrix getScreenCTM() - { return _SVGTransformable.getScreenCTM(); } -public SVGMatrix getTransformToElement (SVGElement element) - throws SVGException - { return _SVGTransformable.getTransformToElement(element); } -//end SVGLocatable - -//from EventTarget -private org.inkscape.dom.events.EventTargetImpl _EventTarget; -public void addEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.addEventListener(type, listener, useCapture); } -public void removeEventListener(String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListener(type, listener, useCapture); } -public boolean dispatchEvent(Event evt) - throws EventException - { return _EventTarget.dispatchEvent(evt); } -public void addEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture, - Object evtGroup) - { _EventTarget.addEventListenerNS(namespaceURI, type, listener, useCapture, evtGroup); } -public void removeEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture) - { _EventTarget.removeEventListenerNS(namespaceURI, type, listener, useCapture); } -public boolean willTriggerNS(String namespaceURI, - String type) - { return _EventTarget.willTriggerNS(namespaceURI, type); } -public boolean hasEventListenerNS(String namespaceURI, - String type) - { return _EventTarget.hasEventListenerNS(namespaceURI, type); } -//end EventTarget - - -public native SVGAnimatedLength getX( ); -public native SVGAnimatedLength getY( ); -public native SVGAnimatedLength getWidth( ); -public native SVGAnimatedLength getHeight( ); -public native SVGElementInstance getInstanceRoot( ); -public native SVGElementInstance getAnimatedInstanceRoot( ); - -} - - diff --git a/src/bind/java/org/inkscape/dom/svg/SVGVKernElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGVKernElementImpl.java deleted file mode 100644 index 97af0c646..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGVKernElementImpl.java +++ /dev/null @@ -1,38 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -public class SVGVKernElementImpl - extends - SVGElementImpl - implements org.w3c.dom.svg.SVGVKernElement -{ -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGViewElementImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGViewElementImpl.java deleted file mode 100644 index c47336a02..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGViewElementImpl.java +++ /dev/null @@ -1,77 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; -import org.w3c.dom.svg.*; - - -public class SVGViewElementImpl - extends - SVGElementImpl - //SVGExternalResourcesRequired, - //SVGFitToViewBox, - //SVGZoomAndPan - implements org.w3c.dom.svg.SVGViewElement -{ -public SVGViewElementImpl() -{ - imbue(_SVGExternalResourcesRequired = new SVGExternalResourcesRequiredImpl()); - imbue(_SVGFitToViewBox = new SVGFitToViewBoxImpl()); - imbue(_SVGZoomAndPan = new SVGZoomAndPanImpl()); -} - - -//from SVGExternalResourcesRequired -private SVGExternalResourcesRequiredImpl _SVGExternalResourcesRequired; -public SVGAnimatedBoolean getExternalResourcesRequired() - { return _SVGExternalResourcesRequired.getExternalResourcesRequired(); } -//end SVGExternalResourcesRequired - - -//from SVGFitToViewBox -SVGFitToViewBoxImpl _SVGFitToViewBox; -public SVGAnimatedRect getViewBox() - { return _SVGFitToViewBox.getViewBox(); } -public SVGAnimatedPreserveAspectRatio getPreserveAspectRatio() - { return _SVGFitToViewBox.getPreserveAspectRatio(); } -//end SVGFitToViewBox - -//from SVGZoomAndPan -SVGZoomAndPanImpl _SVGZoomAndPan; -public short getZoomAndPan() - { return _SVGZoomAndPan.getZoomAndPan(); } -public void setZoomAndPan(short zoomAndPan) throws DOMException - { _SVGZoomAndPan.setZoomAndPan(zoomAndPan); } -//end SVGZoomAndPan - - -public native SVGStringList getViewTarget( ); - -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGViewSpecImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGViewSpecImpl.java deleted file mode 100644 index 20042bad5..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGViewSpecImpl.java +++ /dev/null @@ -1,64 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - -package org.inkscape.dom.svg; - -import org.w3c.dom.svg.*; - - - -public class SVGViewSpecImpl - extends - SVGZoomAndPanImpl - //SVGFitToViewBox - implements org.w3c.dom.svg.SVGViewSpec -{ - -public SVGViewSpecImpl() -{ - imbue(_SVGFitToViewBox = new SVGFitToViewBoxImpl()); -} - - -//from SVGFitToViewBox -SVGFitToViewBoxImpl _SVGFitToViewBox; -public SVGAnimatedRect getViewBox() - { return _SVGFitToViewBox.getViewBox(); } -public SVGAnimatedPreserveAspectRatio getPreserveAspectRatio() - { return _SVGFitToViewBox.getPreserveAspectRatio(); } -//end SVGFitToViewBox - - -public native SVGTransformList getTransform( ); -public native SVGElement getViewTarget( ); -public native String getViewBoxString( ); -public native String getPreserveAspectRatioString( ); -public native String getTransformString( ); -public native String getViewTargetString( ); -} - diff --git a/src/bind/java/org/inkscape/dom/svg/SVGZoomAndPanImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGZoomAndPanImpl.java deleted file mode 100644 index d77d64f75..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGZoomAndPanImpl.java +++ /dev/null @@ -1,43 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG11/java.html - */ - - - -package org.inkscape.dom.svg; - -import org.w3c.dom.DOMException; - -public class SVGZoomAndPanImpl - extends - org.inkscape.cmn.BaseInterface - implements org.w3c.dom.svg.SVGZoomAndPan -{ -public native short getZoomAndPan( ); -public native void setZoomAndPan( short zoomAndPan ) - throws DOMException; -} diff --git a/src/bind/java/org/inkscape/dom/svg/SVGZoomEventImpl.java b/src/bind/java/org/inkscape/dom/svg/SVGZoomEventImpl.java deleted file mode 100644 index 018eee915..000000000 --- a/src/bind/java/org/inkscape/dom/svg/SVGZoomEventImpl.java +++ /dev/null @@ -1,47 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these SVG files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/SVG/java.html - */ - - -package org.inkscape.dom.svg; - -import org.w3c.dom.events.UIEvent; -import org.w3c.dom.svg.SVGRect; -import org.w3c.dom.svg.SVGPoint; - - -public class SVGZoomEventImpl - extends - org.inkscape.dom.events.UIEventImpl - implements org.w3c.dom.svg.SVGZoomEvent -{ -public native SVGRect getZoomRectScreen( ); -public native float getPreviousScale( ); -public native SVGPoint getPreviousTranslate( ); -public native float getNewScale( ); -public native SVGPoint getNewTranslate( ); -} diff --git a/src/bind/java/org/inkscape/dom/views/AbstractViewImpl.java b/src/bind/java/org/inkscape/dom/views/AbstractViewImpl.java deleted file mode 100644 index 9b2bd2dad..000000000 --- a/src/bind/java/org/inkscape/dom/views/AbstractViewImpl.java +++ /dev/null @@ -1,42 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Views-20001113/java-binding.html - */ - -package org.inkscape.dom.views; - -import org.w3c.dom.views.DocumentView; - - -public class AbstractViewImpl - extends - org.inkscape.cmn.BaseInterface - implements org.w3c.dom.views.AbstractView -{ - -public native DocumentView getDocument(); - -} diff --git a/src/bind/java/org/inkscape/dom/views/DocumentViewImpl.java b/src/bind/java/org/inkscape/dom/views/DocumentViewImpl.java deleted file mode 100644 index a0ae88004..000000000 --- a/src/bind/java/org/inkscape/dom/views/DocumentViewImpl.java +++ /dev/null @@ -1,43 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (c) 2007-2008 Inkscape.org - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * Note that these files are implementations of the Java - * interface package found here: - * http://www.w3.org/TR/2000/REC-DOM-Level-2-Views-20001113/java-binding.html - */ - - -package org.inkscape.dom.views; - -import org.w3c.dom.views.AbstractView; - - -public class DocumentViewImpl - extends - org.inkscape.cmn.BaseInterface - implements org.w3c.dom.views.DocumentView -{ - -public native AbstractView getDefaultView(); - -} diff --git a/src/bind/java/org/inkscape/script/Editor.java b/src/bind/java/org/inkscape/script/Editor.java deleted file mode 100644 index 81d65f4cf..000000000 --- a/src/bind/java/org/inkscape/script/Editor.java +++ /dev/null @@ -1,311 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (C) 2007-2008 Bob Jamison - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - */ - -package org.inkscape.script; - - -import java.awt.BorderLayout; -import java.security.MessageDigest; -import java.security.NoSuchAlgorithmException; -import javax.swing.filechooser.FileNameExtensionFilter; -import javax.swing.JFileChooser; -import javax.swing.JOptionPane; -import javax.swing.JPanel; -import javax.swing.JTextPane; - -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; - - - -/** - * A simple script editor for quick fixes. - */ -public class Editor extends JPanel -{ -ScriptConsole parent; -JTextPane textPane; - -//######################################################################## -//# MESSSAGES -//######################################################################## -void err(String fmt, Object... arguments) -{ - parent.err("Editor err:" + fmt, arguments); -} - -void msg(String fmt, Object... arguments) -{ - parent.msg("Editor:" + fmt, arguments); -} - -void trace(String fmt, Object... arguments) -{ - parent.trace("Editor:" + fmt, arguments); -} - - -//######################################################################## -//# U T I L I T Y -//######################################################################## - -private JFileChooser _chooser; - -JFileChooser getChooser() -{ - if (_chooser == null) - { - _chooser = new JFileChooser(); - _chooser.setAcceptAllFileFilterUsed(false); - _chooser.setCurrentDirectory(new File(".")); - FileNameExtensionFilter filter = new FileNameExtensionFilter( - "Script Files", "js", "py", "r"); - _chooser.setFileFilter(filter); - } - return _chooser; -} - - -/** - * Returns the current text contained in this editor - */ -public String getText() -{ - return textPane.getText(); -} - - -String lastHash = null; - -/** - * Sets the text of this editor - */ -public void setText(String txt) -{ - textPane.setText(txt); - lastHash = getHash(txt); - trace("hash:" + lastHash); -} - -MessageDigest md = null; - -final String hex = "0123456789abcdef"; - -String toHex(byte arr[]) -{ - StringBuffer buf = new StringBuffer(); - for (byte b : arr) - { - buf.append(hex.charAt((b>>4) & 15)); - buf.append(hex.charAt((b ) & 15)); - } - return buf.toString(); -} - -String getHash(String text) -{ - if (md == null) - { - try - { - md = MessageDigest.getInstance("MD5"); - } - catch (NoSuchAlgorithmException e) - { - err("getHash: " + e); - return ""; - } - } - byte hash[] = md.digest(text.getBytes()); - return toHex(hash); -} - - -//######################################################################## -//# L O A D / S A V E -//######################################################################## -String fileName = ""; - -/** - * Gets the name of the current file in the editor - */ -public String getFileName() -{ - return fileName; -} - -/** - * Sets the name of the current file in the editor - */ -public void setFileName(String val) -{ - fileName = val; -} - -/** - * Selects and opens a file, loading into the editor - */ -public boolean openFile() -{ - JFileChooser chooser = getChooser(); - int ret = chooser.showOpenDialog(this); - if (ret != JFileChooser.APPROVE_OPTION) - return false; - File f = chooser.getSelectedFile(); - String fname = f.getName(); - try - { - FileReader in = new FileReader(fname); - StringBuffer buf = new StringBuffer(); - while (true) - { - int ch = in.read(); - if (ch < 0) - break; - buf.append((char)ch); - } - in.close(); - setText(buf.toString()); - } - catch (IOException e) - { - err("save file:" + e); - return false; - } - return true; -} - - -/** - * Saves the file currently in the editor. Uses the Save - * selector if there is not current file name. - */ -public boolean saveFile() -{ - if (!isDirty()) - return true; - - String fname = getFileName(); - if (fname == null || fname.length()==0) - { - JFileChooser chooser = getChooser(); - int ret = chooser.showSaveDialog(this); - if (ret != JFileChooser.APPROVE_OPTION) - return false; - File f = chooser.getSelectedFile(); - fname = f.getName(); - } - try - { - FileWriter out = new FileWriter(fname); - out.write(getText()); - out.close(); - setFileName(fname); - resetDirty(); - } - catch (IOException e) - { - err("save file:" + e); - return false; - } - return true; -} - - -/** - * Saves the file currently in the editor under a new name. - * Get the new name from the chooser, and see if it already exists. - */ -public boolean saveAsFile() -{ - JFileChooser chooser = getChooser(); - int ret = chooser.showSaveDialog(this); - if (ret != JFileChooser.APPROVE_OPTION) - return false; - File f = chooser.getSelectedFile(); - String fname = f.getName(); - if (f.exists()) - { - ret = JOptionPane.showConfirmDialog(this, - "File '" + fname + "' already exists. Overwrite?"); - if (ret != JOptionPane.YES_OPTION) - return false; - } - try - { - FileWriter out = new FileWriter(fname); - out.write(getText()); - out.close(); - setFileName(fname); - resetDirty(); - } - catch (IOException e) - { - err("saveAs file:" + e); - return false; - } - return true; -} - - -/** - * State that the editor is now 'unedited' - */ -public void resetDirty() -{ - lastHash = getHash(getText()); -} - -/** - * Determines if the editor has been edited since the last open/save - */ -public boolean isDirty() -{ - String txt = getText(); - String hash = getHash(txt); - if ( (lastHash == null && txt.length()>0) || - (lastHash != null && !lastHash.equals(hash)) ) - return true; - return false; -} - - -/** - * Creates the editor for the ScriptConsole - */ -public Editor(ScriptConsole par) -{ - super(); - parent = par; - setLayout(new BorderLayout()); - textPane = new JTextPane(); - add(textPane, BorderLayout.CENTER); -} - - - -} - diff --git a/src/bind/java/org/inkscape/script/ScriptConsole.java b/src/bind/java/org/inkscape/script/ScriptConsole.java deleted file mode 100644 index 8241e2797..000000000 --- a/src/bind/java/org/inkscape/script/ScriptConsole.java +++ /dev/null @@ -1,652 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (C) 2007-2008 Bob Jamison - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - */ - -package org.inkscape.script; - -import org.inkscape.cmn.Resource; - -import javax.script.*; - -import javax.swing.WindowConstants; -import javax.swing.JFrame; -import javax.swing.JButton; -import javax.swing.JMenu; -import javax.swing.JLabel; -import javax.swing.JMenuBar; -import javax.swing.JMenuItem; -import javax.swing.JComboBox; -import javax.swing.ButtonGroup; -import javax.swing.JOptionPane; -import javax.swing.JTabbedPane; -import javax.swing.JToolBar; -import javax.swing.Action; -import javax.swing.AbstractAction; - - -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; -import java.awt.BorderLayout; - -import java.io.File; -import java.io.FileReader; -import java.io.FileWriter; -import java.io.IOException; - - -import java.util.List; -import java.util.HashMap; -import java.util.ArrayList; -import java.util.List; - - - -/** - * This is the main Script Console window. It contains - * a terminal-like console, and a simple script editor. - */ -public class ScriptConsole extends JFrame -{ -Terminal terminal; -Editor editor; - -JTabbedPane tabPane; -JToolBar toolbar; -JMenuBar menubar; -JComboBox engineBox; - -//######################################################################## -//# MESSSAGES -//######################################################################## -public void err(String fmt, Object... arguments) -{ - terminal.errorf("ScriptConsole err:" + fmt + "\n", arguments); -} - -public void msg(String fmt, Object... arguments) -{ - terminal.outputf("ScriptConsole:" + fmt, arguments); -} - -public void trace(String fmt, Object... arguments) -{ - terminal.outputf("ScriptConsole:" + fmt + "\n", arguments); -} - - - - - - -void alert(String msg) -{ - JOptionPane.showMessageDialog(this, msg); -} - - - - -//######################################################################## -//# S C R I P T S -//######################################################################## -ScriptEngine engine; - -ArrayList engines; - - -public void setEngine(ScriptEngine engine) -{ - this.engine = engine; - this.engine.getContext().setWriter(terminal.getOutWriter()); - this.engine.getContext().setErrorWriter(terminal.getErrWriter()); - //do something to make the combobox show the current engine -} - - -public ScriptEngine getEngine() -{ - return engine; -} - - -public boolean setEngine(String langName) -{ - for (ScriptEngine engine : engines) - { - for(String name: engine.getFactory().getNames()) - { - if (langName.equalsIgnoreCase(name)) - { - setEngine(engine); - return true; - } - } - } - return false; -} - - -/** - * Run a script buffer - * - * @param str the script buffer to execute - * @return true if successful, else false - */ -public boolean doRunCmd(String str) -{ - if (engine == null) - { - err("No engine set"); - return false; - } - - //execute script from buffer - try - { - getEngine().eval(str); - } - catch (javax.script.ScriptException e) - { - err("Executing script: " + e); - //e.printStackTrace(); - } - terminal.output("\nscript> "); - return true; -} - -/** - * Run a script buffer - * - * @param str the script buffer to execute - * @return true if successful, else false - */ -public boolean doRun(String str) -{ - if (engine == null) - { - err("No engine set"); - return false; - } - - //execute script from buffer - try - { - getEngine().eval(str); - } - catch (javax.script.ScriptException e) - { - err("Executing script: " + e); - //e.printStackTrace(); - } - return true; -} - - -/** - * Run a script buffer - * - * @param lang the scripting language to run - * @param str the script buffer to execute - * @return true if successful, else false - */ -public boolean doRun(String lang, String str) -{ - // find script engine - if (!setEngine(lang)) - { - err("doRun: cannot find script engine '" + lang + "'"); - return false; - } - return doRun(str); -} - - -/** - * Run a script file - * - * @param fname the script file to execute - * @return true if successful, else false - */ -public boolean doRunFile(String fname) -{ - if (engine == null) - { - err("No engine set"); - return false; - } - - //try opening file and feeding into engine - FileReader in = null; - boolean ret = true; - try - { - in = new FileReader(fname); - } - catch (java.io.IOException e) - { - err("Executing file: " + e); - return false; - } - try - { - engine.eval(in); - } - catch (javax.script.ScriptException e) - { - err("Executing file: " + e); - ret = false; - } - try - { - in.close(); - } - catch (java.io.IOException e) - { - err("Executing file: " + e); - return false; - } - return ret; -} - - -/** - * Run a script file - * - * @param lang the scripting language to run - * @param fname the script file to execute - * @return true if successful, else false - */ -public boolean doRunFile(String lang, String fname) -{ - // find script engine - if (!setEngine(lang)) - { - err("doRunFile: cannot find script engine '" + lang + "'"); - return false; - } - return doRunFile(fname); -} - - - -class ScriptEngineAction extends AbstractAction -{ - - -public void actionPerformed(ActionEvent evt) -{ - int index = engineBox.getSelectedIndex(); - if (index<0) - return; - ScriptEngine engine = engines.get(index); - setEngine(engine); -} - -public ScriptEngineAction() -{ - super("SelectEngine", null); - putValue(SHORT_DESCRIPTION, "Select a scripting engine"); -} - -} - - -private void initScripts() -{ - engines = new ArrayList(); - Action action = new ScriptEngineAction(); - engineBox = new JComboBox(); - engineBox.setAction(action); - engineBox.setEditable(false); - toolbar.add(engineBox); - - ScriptEngineManager scriptEngineManager = - new ScriptEngineManager(); - List factories = - scriptEngineManager.getEngineFactories(); - for (ScriptEngineFactory factory: factories) - { - trace("ScriptEngineFactory Info"); - String engName = factory.getEngineName(); - String engVersion = factory.getEngineVersion(); - String fullEngName = engName + " (" + engVersion + ")"; - String langName = factory.getLanguageName(); - String langVersion = factory.getLanguageVersion(); - String fullLangName = langName + " (" + langVersion + ")"; - trace("\t" + fullEngName); - List engNames = factory.getNames(); - for(String name: engNames) - { - trace("\tEngine Alias: " + name); - } - trace("\t" + fullLangName); - engines.add(factory.getScriptEngine()); - engineBox.addItem(fullLangName + " / " + fullEngName); - } - if (engineBox.getItemCount()>0) - { - engineBox.setSelectedIndex(0); - setEngine(engines.get(0)); - } -} - - -static final String defaultCodeStr = - "/**\n" + - " * This is some example Javascript.\n" + - " * Try executing\n" + - " */\n" + - "importPackage(javax.swing);\n" + - "function sayHello() {\n" + - " JOptionPane.showMessageDialog(null, 'Hello, world!',\n" + - " 'Welcome to Inkscape', JOptionPane.WARNING_MESSAGE);\n" + - "}\n" + - "\n" + - "sayHello();\n" + - "\n"; - - -//######################################################################## -//# A C T I O N S -//######################################################################## -Action newAction; -Action openAction; -Action quitAction; -Action runAction; -Action saveAction; -Action saveAsAction; -Action stopAction; - - - -class NewAction extends AbstractAction -{ - -public void actionPerformed(ActionEvent evt) -{ - // -} - -public NewAction() -{ - super("New", Resource.getIcon("document-new.png")); - putValue(SHORT_DESCRIPTION, "Create a new script file"); -} - -} - - - -class OpenAction extends AbstractAction -{ - -public void actionPerformed(ActionEvent evt) -{ - editor.openFile(); -} - -public OpenAction() -{ - super("Open", Resource.getIcon("document-open.png")); - putValue(SHORT_DESCRIPTION, "Open a script file"); -} - -} - - - -class QuitAction extends AbstractAction -{ - -public void actionPerformed(ActionEvent evt) -{ - setVisible(false); -} - -public QuitAction() -{ - super("Quit", Resource.getIcon("system-log-out.png")); - putValue(SHORT_DESCRIPTION, "Quit this script console"); -} - -} - - - -class RunAction extends AbstractAction -{ - -public void actionPerformed(ActionEvent evt) -{ - String txt = editor.getText(); - doRun(txt); -} - -public RunAction() -{ - super("Run", Resource.getIcon("go-next.png")); - putValue(SHORT_DESCRIPTION, "Run the script in the editor"); -} - -} - - - -class SaveAction extends AbstractAction -{ - -public void actionPerformed(ActionEvent evt) -{ - editor.saveFile(); -} - -public SaveAction() -{ - super("Save", Resource.getIcon("document-save.png")); - putValue(SHORT_DESCRIPTION, "Save file"); -} - -} - - - -class SaveAsAction extends AbstractAction -{ - -public void actionPerformed(ActionEvent evt) -{ - editor.saveAsFile(); -} - -public SaveAsAction() -{ - super("SaveAs", Resource.getIcon("document-save-as.png")); - putValue(SHORT_DESCRIPTION, "Save under a new file name"); -} - -} - - - -class StopAction extends AbstractAction -{ - -public void actionPerformed(ActionEvent evt) -{ - //# -} - -public StopAction() -{ - super("Stop", Resource.getIcon("process-stop.png")); - putValue(SHORT_DESCRIPTION, "Stop the running script"); -} - -} - - - -HashMap actions; -void setupActions() -{ - actions = new HashMap(); - actions.put("New", newAction = new NewAction()); - actions.put("Open", openAction = new OpenAction()); - actions.put("Quit", quitAction = new QuitAction()); - actions.put("Run", runAction = new RunAction()); - actions.put("Save", saveAction = new SaveAction()); - actions.put("SaveAs", saveAsAction = new SaveAsAction()); - actions.put("Stop", stopAction = new StopAction()); -} - - -public void enableAction(String name) -{ - Action action = actions.get(name); - if (action == null) - return; - action.setEnabled(true); -} - -public void disableAction(String name) -{ - Action action = actions.get(name); - if (action == null) - return; - action.setEnabled(false); -} - - - -//######################################################################## -//# S E T U P -//######################################################################## - -JButton toolbarButton(Action action) -{ - JButton btn = new JButton(action); - btn.setText(""); - btn.setToolTipText((String)action.getValue(Action.SHORT_DESCRIPTION)); - return btn; -} - - -private boolean setup() -{ - setTitle("Inkscape Script Console"); - setSize(600, 400); - setIconImage(Resource.getImage("inkscape.png")); - setDefaultCloseOperation(WindowConstants.HIDE_ON_CLOSE); - - //###################################################### - //# A C T I O N S - //###################################################### - setupActions(); - - //###################################################### - //# M E N U - //###################################################### - menubar = new JMenuBar(); - setJMenuBar(menubar); - - JMenu menu = new JMenu("File"); - menubar.add(menu); - menu.add(new JMenuItem(openAction)); - menu.add(new JMenuItem(saveAction)); - menu.add(new JMenuItem(saveAsAction)); - menu.add(new JMenuItem(quitAction)); - - menu = new JMenu("Run"); - menubar.add(menu); - menu.add(new JMenuItem(runAction)); - menu.add(new JMenuItem(stopAction)); - - //###################################################### - //# T O O L B A R - //###################################################### - toolbar = new JToolBar(); - getContentPane().add(toolbar, BorderLayout.NORTH); - toolbar.add(toolbarButton(openAction)); - toolbar.add(toolbarButton(saveAction)); - toolbar.add(toolbarButton(runAction)); - toolbar.add(toolbarButton(stopAction)); - - //###################################################### - //# C O N T E N T - //###################################################### - tabPane = new JTabbedPane(); - getContentPane().add(tabPane, BorderLayout.CENTER); - - terminal = new Terminal(); - tabPane.addTab("Console", - Resource.getIcon("utilities-terminal.png"), - terminal); - terminal.output("\nscript> "); - - editor = new Editor(this); - tabPane.addTab("Script", - Resource.getIcon("accessories-text-editor.png"), - editor); - - editor.setText(defaultCodeStr); - - //###################################################### - //# E N G I N E - //###################################################### - initScripts(); - - return true; -} - - - - - - -public ScriptConsole() -{ - setup(); -} - - -private static ScriptConsole _instance = null; -public static ScriptConsole getInstance() -{ - if (_instance == null) - _instance = new ScriptConsole(); - return _instance; -} - - -public static void main(String argv[]) -{ - ScriptConsole sc = getInstance(); - sc.setVisible(true); -} - - -} -//######################################################################## -//# E N D O F F I L E -//######################################################################## - diff --git a/src/bind/java/org/inkscape/script/Terminal.java b/src/bind/java/org/inkscape/script/Terminal.java deleted file mode 100644 index 22d2cb251..000000000 --- a/src/bind/java/org/inkscape/script/Terminal.java +++ /dev/null @@ -1,297 +0,0 @@ -/** - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (C) 2007-2008 Bob Jamison - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - */ - -package org.inkscape.script; - -import java.awt.BorderLayout; -import javax.swing.JFrame; -import javax.swing.JPanel; -import javax.swing.JTextPane; -import javax.swing.JScrollPane; -import javax.swing.text.DefaultCaret; -import javax.swing.text.Document; -import javax.swing.text.BadLocationException; -import javax.swing.text.StyleConstants; -import javax.swing.text.SimpleAttributeSet; -import java.awt.Color; -import java.awt.event.KeyEvent; -import java.awt.event.KeyListener; -import java.awt.Font; - -import java.io.ByteArrayOutputStream; -import java.io.PrintStream; -import java.io.IOException; -import java.io.Writer; -import java.io.PrintWriter; - -public class Terminal extends JPanel - implements KeyListener -{ - -SimpleAttributeSet inTextAttr; -SimpleAttributeSet outTextAttr; -SimpleAttributeSet errTextAttr; - -StringBuffer buf = new StringBuffer(); -JTextPane textPane; - -void err(String msg) -{ - System.out.println("Terminal err: " + msg); -} - -void trace(String msg) -{ - System.out.println("Terminal: " + msg); -} - - -void processInputLine(String txt) -{ - ScriptConsole cons = ScriptConsole.getInstance(); - if (cons != null) - cons.doRunCmd(txt); -} - - - -class OutWriter extends Writer -{ - -public void write(char[] cbuf, int off, int len) -{ - String s = new String(cbuf, off, len); - output(s); -} - -public void flush() -{ -} - -public void close() -{ -} - -} - - - -PrintWriter outWriter; - -public Writer getOutWriter() -{ - if (outWriter == null) - outWriter = new PrintWriter(new OutWriter()); - return outWriter; -} - - -public void output(String txt) -{ - Document doc = textPane.getDocument(); - try - { - doc.insertString(doc.getLength(), txt, outTextAttr); - textPane.setCaretPosition(doc.getLength()); - } - catch (BadLocationException e) - { - } - -} - - -public void outputf(String fmt, Object... args) -{ - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - PrintStream out = new PrintStream(baos); - out.printf(fmt, args); - out.close(); - String s = baos.toString(); - output(s); -} - - - -class ErrWriter extends Writer -{ - -public void write(char[] cbuf, int off, int len) -{ - String s = new String(cbuf, off, len); - error(s); -} - -public void flush() -{ -} - -public void close() -{ -} - -} - - - -PrintWriter errWriter; - -public Writer getErrWriter() -{ - if (errWriter == null) - errWriter = new PrintWriter(new ErrWriter()); - return errWriter; -} - - -public void error(String txt) -{ - Document doc = textPane.getDocument(); - try - { - doc.insertString(doc.getLength(), txt, errTextAttr); - textPane.setCaretPosition(doc.getLength()); - } - catch (BadLocationException e) - { - } - -} - -public void errorf(String fmt, Object... args) -{ - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - PrintStream out = new PrintStream(baos); - out.printf(fmt, args); - out.close(); - String s = baos.toString(); - error(s); -} - - -public void keyPressed(KeyEvent evt) -{ -} - -public void keyReleased(KeyEvent evt) -{ -} - -public void keyTyped(KeyEvent evt) -{ - Document doc = textPane.getDocument(); - char ch = evt.getKeyChar(); - if (ch == 127) - { - } - else if (ch == '\b') - { - if (buf.length() == 0) - return; - try - { - buf.delete(buf.length()-1, buf.length()); - doc.remove(doc.getLength()-1, 1); - textPane.setCaretPosition(doc.getLength()); - } - catch (BadLocationException e) - { - err("keyTyped:" + e); - } - } - else - { - try - { - buf.append(ch); - doc.insertString(doc.getLength(), "" + ch, inTextAttr); - textPane.setCaretPosition(doc.getLength()); - } - catch (BadLocationException e) - { - } - if (ch == '\n' || ch == '\r') - { - String txt = buf.toString(); - buf.delete(0, buf.length()); - txt = txt.trim(); - processInputLine(txt); - } - } - - - -} - - - -void setup() -{ - setLayout(new BorderLayout()); - textPane = new JTextPane(); - add(new JScrollPane(textPane), BorderLayout.CENTER); - textPane.setEditable(false); - textPane.setBackground(Color.BLACK); - textPane.setCaretColor(Color.WHITE); - textPane.setCaret(new DefaultCaret()); - textPane.getCaret().setVisible(true); - textPane.getCaret().setBlinkRate(500); - Font currentFont = textPane.getFont(); - textPane.setFont(new Font("Monospaced", currentFont.getStyle(), currentFont.getSize())); - textPane.addKeyListener(this); - - inTextAttr = new SimpleAttributeSet(); - StyleConstants.setForeground(inTextAttr, Color.YELLOW); - outTextAttr = new SimpleAttributeSet(); - StyleConstants.setForeground(outTextAttr, Color.GREEN); - errTextAttr = new SimpleAttributeSet(); - StyleConstants.setForeground(errTextAttr, Color.RED); - - -} - - - - - - -public Terminal() -{ - super(); - setup(); -} - - - -public static void main(String argv[]) -{ - Terminal t = new Terminal(); - JFrame par = new JFrame("Terminal Test"); - par.setSize(500, 350); - par.getContentPane().add(t); - par.setVisible(true); -} - -} - diff --git a/src/bind/java/org/w3c/dom/css/CSS2Properties.java b/src/bind/java/org/w3c/dom/css/CSS2Properties.java deleted file mode 100644 index b84df9b30..000000000 --- a/src/bind/java/org/w3c/dom/css/CSS2Properties.java +++ /dev/null @@ -1,1411 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.DOMException; - -/** - * The CSS2Properties interface represents a convenience - * mechanism for retrieving and setting properties within a - * CSSStyleDeclaration. The attributes of this interface - * correspond to all the properties specified in CSS2. Getting an attribute - * of this interface is equivalent to calling the - * getPropertyValue method of the - * CSSStyleDeclaration interface. Setting an attribute of this - * interface is equivalent to calling the setProperty method of - * the CSSStyleDeclaration interface. - *

A conformant implementation of the CSS module is not required to - * implement the CSS2Properties interface. If an implementation - * does implement this interface, the expectation is that language-specific - * methods can be used to cast from an instance of the - * CSSStyleDeclaration interface to the - * CSS2Properties interface. - *

If an implementation does implement this interface, it is expected to - * understand the specific syntax of the shorthand properties, and apply - * their semantics; when the margin property is set, for - * example, the marginTop, marginRight, - * marginBottom and marginLeft properties are - * actually being set by the underlying implementation. - *

When dealing with CSS "shorthand" properties, the shorthand properties - * should be decomposed into their component longhand properties as - * appropriate, and when querying for their value, the form returned should - * be the shortest form exactly equivalent to the declarations made in the - * ruleset. However, if there is no shorthand declaration that could be - * added to the ruleset without changing in any way the rules already - * declared in the ruleset (i.e., by adding longhand rules that were - * previously not declared in the ruleset), then the empty string should be - * returned for the shorthand property. - *

For example, querying for the font property should not - * return "normal normal normal 14pt/normal Arial, sans-serif", when "14pt - * Arial, sans-serif" suffices. (The normals are initial values, and are - * implied by use of the longhand property.) - *

If the values for all the longhand properties that compose a particular - * string are the initial values, then a string consisting of all the - * initial values should be returned (e.g. a border-width value - * of "medium" should be returned as such, not as ""). - *

For some shorthand properties that take missing values from other - * sides, such as the margin, padding, and - * border-[width|style|color] properties, the minimum number of - * sides possible should be used; i.e., "0px 10px" will be returned instead - * of "0px 10px 0px 10px". - *

If the value of a shorthand property can not be decomposed into its - * component longhand properties, as is the case for the font - * property with a value of "menu", querying for the values of the component - * longhand properties should return the empty string. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSS2Properties { - /** - * See the azimuth property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getAzimuth(); - public void setAzimuth(String azimuth) - throws DOMException; - - /** - * See the background property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBackground(); - public void setBackground(String background) - throws DOMException; - - /** - * See the background-attachment property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBackgroundAttachment(); - public void setBackgroundAttachment(String backgroundAttachment) - throws DOMException; - - /** - * See the background-color property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBackgroundColor(); - public void setBackgroundColor(String backgroundColor) - throws DOMException; - - /** - * See the background-image property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBackgroundImage(); - public void setBackgroundImage(String backgroundImage) - throws DOMException; - - /** - * See the background-position property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBackgroundPosition(); - public void setBackgroundPosition(String backgroundPosition) - throws DOMException; - - /** - * See the background-repeat property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBackgroundRepeat(); - public void setBackgroundRepeat(String backgroundRepeat) - throws DOMException; - - /** - * See the border property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBorder(); - public void setBorder(String border) - throws DOMException; - - /** - * See the border-collapse property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBorderCollapse(); - public void setBorderCollapse(String borderCollapse) - throws DOMException; - - /** - * See the border-color property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBorderColor(); - public void setBorderColor(String borderColor) - throws DOMException; - - /** - * See the border-spacing property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBorderSpacing(); - public void setBorderSpacing(String borderSpacing) - throws DOMException; - - /** - * See the border-style property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBorderStyle(); - public void setBorderStyle(String borderStyle) - throws DOMException; - - /** - * See the border-top property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBorderTop(); - public void setBorderTop(String borderTop) - throws DOMException; - - /** - * See the border-right property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBorderRight(); - public void setBorderRight(String borderRight) - throws DOMException; - - /** - * See the border-bottom property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBorderBottom(); - public void setBorderBottom(String borderBottom) - throws DOMException; - - /** - * See the border-left property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBorderLeft(); - public void setBorderLeft(String borderLeft) - throws DOMException; - - /** - * See the border-top-color property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBorderTopColor(); - public void setBorderTopColor(String borderTopColor) - throws DOMException; - - /** - * See the border-right-color property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBorderRightColor(); - public void setBorderRightColor(String borderRightColor) - throws DOMException; - - /** - * See the border-bottom-color property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBorderBottomColor(); - public void setBorderBottomColor(String borderBottomColor) - throws DOMException; - - /** - * See the border-left-color property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBorderLeftColor(); - public void setBorderLeftColor(String borderLeftColor) - throws DOMException; - - /** - * See the border-top-style property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBorderTopStyle(); - public void setBorderTopStyle(String borderTopStyle) - throws DOMException; - - /** - * See the border-right-style property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBorderRightStyle(); - public void setBorderRightStyle(String borderRightStyle) - throws DOMException; - - /** - * See the border-bottom-style property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBorderBottomStyle(); - public void setBorderBottomStyle(String borderBottomStyle) - throws DOMException; - - /** - * See the border-left-style property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBorderLeftStyle(); - public void setBorderLeftStyle(String borderLeftStyle) - throws DOMException; - - /** - * See the border-top-width property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBorderTopWidth(); - public void setBorderTopWidth(String borderTopWidth) - throws DOMException; - - /** - * See the border-right-width property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBorderRightWidth(); - public void setBorderRightWidth(String borderRightWidth) - throws DOMException; - - /** - * See the border-bottom-width property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBorderBottomWidth(); - public void setBorderBottomWidth(String borderBottomWidth) - throws DOMException; - - /** - * See the border-left-width property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBorderLeftWidth(); - public void setBorderLeftWidth(String borderLeftWidth) - throws DOMException; - - /** - * See the border-width property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBorderWidth(); - public void setBorderWidth(String borderWidth) - throws DOMException; - - /** - * See the bottom property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getBottom(); - public void setBottom(String bottom) - throws DOMException; - - /** - * See the caption-side property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getCaptionSide(); - public void setCaptionSide(String captionSide) - throws DOMException; - - /** - * See the clear property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getClear(); - public void setClear(String clear) - throws DOMException; - - /** - * See the clip property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getClip(); - public void setClip(String clip) - throws DOMException; - - /** - * See the color property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getColor(); - public void setColor(String color) - throws DOMException; - - /** - * See the content property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getContent(); - public void setContent(String content) - throws DOMException; - - /** - * See the counter-increment property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getCounterIncrement(); - public void setCounterIncrement(String counterIncrement) - throws DOMException; - - /** - * See the counter-reset property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getCounterReset(); - public void setCounterReset(String counterReset) - throws DOMException; - - /** - * See the cue property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getCue(); - public void setCue(String cue) - throws DOMException; - - /** - * See the cue-after property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getCueAfter(); - public void setCueAfter(String cueAfter) - throws DOMException; - - /** - * See the cue-before property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getCueBefore(); - public void setCueBefore(String cueBefore) - throws DOMException; - - /** - * See the cursor property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getCursor(); - public void setCursor(String cursor) - throws DOMException; - - /** - * See the direction property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getDirection(); - public void setDirection(String direction) - throws DOMException; - - /** - * See the display property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getDisplay(); - public void setDisplay(String display) - throws DOMException; - - /** - * See the elevation property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getElevation(); - public void setElevation(String elevation) - throws DOMException; - - /** - * See the empty-cells property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getEmptyCells(); - public void setEmptyCells(String emptyCells) - throws DOMException; - - /** - * See the float property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getCssFloat(); - public void setCssFloat(String cssFloat) - throws DOMException; - - /** - * See the font property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getFont(); - public void setFont(String font) - throws DOMException; - - /** - * See the font-family property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getFontFamily(); - public void setFontFamily(String fontFamily) - throws DOMException; - - /** - * See the font-size property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getFontSize(); - public void setFontSize(String fontSize) - throws DOMException; - - /** - * See the font-size-adjust property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getFontSizeAdjust(); - public void setFontSizeAdjust(String fontSizeAdjust) - throws DOMException; - - /** - * See the font-stretch property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getFontStretch(); - public void setFontStretch(String fontStretch) - throws DOMException; - - /** - * See the font-style property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getFontStyle(); - public void setFontStyle(String fontStyle) - throws DOMException; - - /** - * See the font-variant property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getFontVariant(); - public void setFontVariant(String fontVariant) - throws DOMException; - - /** - * See the font-weight property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getFontWeight(); - public void setFontWeight(String fontWeight) - throws DOMException; - - /** - * See the height property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getHeight(); - public void setHeight(String height) - throws DOMException; - - /** - * See the left property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getLeft(); - public void setLeft(String left) - throws DOMException; - - /** - * See the letter-spacing property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getLetterSpacing(); - public void setLetterSpacing(String letterSpacing) - throws DOMException; - - /** - * See the line-height property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getLineHeight(); - public void setLineHeight(String lineHeight) - throws DOMException; - - /** - * See the list-style property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getListStyle(); - public void setListStyle(String listStyle) - throws DOMException; - - /** - * See the list-style-image property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getListStyleImage(); - public void setListStyleImage(String listStyleImage) - throws DOMException; - - /** - * See the list-style-position property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getListStylePosition(); - public void setListStylePosition(String listStylePosition) - throws DOMException; - - /** - * See the list-style-type property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getListStyleType(); - public void setListStyleType(String listStyleType) - throws DOMException; - - /** - * See the margin property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getMargin(); - public void setMargin(String margin) - throws DOMException; - - /** - * See the margin-top property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getMarginTop(); - public void setMarginTop(String marginTop) - throws DOMException; - - /** - * See the margin-right property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getMarginRight(); - public void setMarginRight(String marginRight) - throws DOMException; - - /** - * See the margin-bottom property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getMarginBottom(); - public void setMarginBottom(String marginBottom) - throws DOMException; - - /** - * See the margin-left property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getMarginLeft(); - public void setMarginLeft(String marginLeft) - throws DOMException; - - /** - * See the marker-offset property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getMarkerOffset(); - public void setMarkerOffset(String markerOffset) - throws DOMException; - - /** - * See the marks property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getMarks(); - public void setMarks(String marks) - throws DOMException; - - /** - * See the max-height property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getMaxHeight(); - public void setMaxHeight(String maxHeight) - throws DOMException; - - /** - * See the max-width property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getMaxWidth(); - public void setMaxWidth(String maxWidth) - throws DOMException; - - /** - * See the min-height property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getMinHeight(); - public void setMinHeight(String minHeight) - throws DOMException; - - /** - * See the min-width property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getMinWidth(); - public void setMinWidth(String minWidth) - throws DOMException; - - /** - * See the orphans property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getOrphans(); - public void setOrphans(String orphans) - throws DOMException; - - /** - * See the outline property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getOutline(); - public void setOutline(String outline) - throws DOMException; - - /** - * See the outline-color property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getOutlineColor(); - public void setOutlineColor(String outlineColor) - throws DOMException; - - /** - * See the outline-style property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getOutlineStyle(); - public void setOutlineStyle(String outlineStyle) - throws DOMException; - - /** - * See the outline-width property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getOutlineWidth(); - public void setOutlineWidth(String outlineWidth) - throws DOMException; - - /** - * See the overflow property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getOverflow(); - public void setOverflow(String overflow) - throws DOMException; - - /** - * See the padding property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getPadding(); - public void setPadding(String padding) - throws DOMException; - - /** - * See the padding-top property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getPaddingTop(); - public void setPaddingTop(String paddingTop) - throws DOMException; - - /** - * See the padding-right property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getPaddingRight(); - public void setPaddingRight(String paddingRight) - throws DOMException; - - /** - * See the padding-bottom property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getPaddingBottom(); - public void setPaddingBottom(String paddingBottom) - throws DOMException; - - /** - * See the padding-left property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getPaddingLeft(); - public void setPaddingLeft(String paddingLeft) - throws DOMException; - - /** - * See the page property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getPage(); - public void setPage(String page) - throws DOMException; - - /** - * See the page-break-after property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getPageBreakAfter(); - public void setPageBreakAfter(String pageBreakAfter) - throws DOMException; - - /** - * See the page-break-before property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getPageBreakBefore(); - public void setPageBreakBefore(String pageBreakBefore) - throws DOMException; - - /** - * See the page-break-inside property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getPageBreakInside(); - public void setPageBreakInside(String pageBreakInside) - throws DOMException; - - /** - * See the pause property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getPause(); - public void setPause(String pause) - throws DOMException; - - /** - * See the pause-after property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getPauseAfter(); - public void setPauseAfter(String pauseAfter) - throws DOMException; - - /** - * See the pause-before property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getPauseBefore(); - public void setPauseBefore(String pauseBefore) - throws DOMException; - - /** - * See the pitch property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getPitch(); - public void setPitch(String pitch) - throws DOMException; - - /** - * See the pitch-range property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getPitchRange(); - public void setPitchRange(String pitchRange) - throws DOMException; - - /** - * See the play-during property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getPlayDuring(); - public void setPlayDuring(String playDuring) - throws DOMException; - - /** - * See the position property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getPosition(); - public void setPosition(String position) - throws DOMException; - - /** - * See the quotes property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getQuotes(); - public void setQuotes(String quotes) - throws DOMException; - - /** - * See the richness property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getRichness(); - public void setRichness(String richness) - throws DOMException; - - /** - * See the right property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getRight(); - public void setRight(String right) - throws DOMException; - - /** - * See the size property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getSize(); - public void setSize(String size) - throws DOMException; - - /** - * See the speak property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getSpeak(); - public void setSpeak(String speak) - throws DOMException; - - /** - * See the speak-header property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getSpeakHeader(); - public void setSpeakHeader(String speakHeader) - throws DOMException; - - /** - * See the speak-numeral property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getSpeakNumeral(); - public void setSpeakNumeral(String speakNumeral) - throws DOMException; - - /** - * See the speak-punctuation property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getSpeakPunctuation(); - public void setSpeakPunctuation(String speakPunctuation) - throws DOMException; - - /** - * See the speech-rate property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getSpeechRate(); - public void setSpeechRate(String speechRate) - throws DOMException; - - /** - * See the stress property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getStress(); - public void setStress(String stress) - throws DOMException; - - /** - * See the table-layout property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getTableLayout(); - public void setTableLayout(String tableLayout) - throws DOMException; - - /** - * See the text-align property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getTextAlign(); - public void setTextAlign(String textAlign) - throws DOMException; - - /** - * See the text-decoration property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getTextDecoration(); - public void setTextDecoration(String textDecoration) - throws DOMException; - - /** - * See the text-indent property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getTextIndent(); - public void setTextIndent(String textIndent) - throws DOMException; - - /** - * See the text-shadow property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getTextShadow(); - public void setTextShadow(String textShadow) - throws DOMException; - - /** - * See the text-transform property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getTextTransform(); - public void setTextTransform(String textTransform) - throws DOMException; - - /** - * See the top property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getTop(); - public void setTop(String top) - throws DOMException; - - /** - * See the unicode-bidi property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getUnicodeBidi(); - public void setUnicodeBidi(String unicodeBidi) - throws DOMException; - - /** - * See the vertical-align property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getVerticalAlign(); - public void setVerticalAlign(String verticalAlign) - throws DOMException; - - /** - * See the visibility property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getVisibility(); - public void setVisibility(String visibility) - throws DOMException; - - /** - * See the voice-family property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getVoiceFamily(); - public void setVoiceFamily(String voiceFamily) - throws DOMException; - - /** - * See the volume property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getVolume(); - public void setVolume(String volume) - throws DOMException; - - /** - * See the white-space property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getWhiteSpace(); - public void setWhiteSpace(String whiteSpace) - throws DOMException; - - /** - * See the widows property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getWidows(); - public void setWidows(String widows) - throws DOMException; - - /** - * See the width property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getWidth(); - public void setWidth(String width) - throws DOMException; - - /** - * See the word-spacing property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getWordSpacing(); - public void setWordSpacing(String wordSpacing) - throws DOMException; - - /** - * See the z-index property definition in CSS2. - * @exception DOMException - * SYNTAX_ERR: Raised if the new value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public String getZIndex(); - public void setZIndex(String zIndex) - throws DOMException; - -} diff --git a/src/bind/java/org/w3c/dom/css/CSSCharsetRule.java b/src/bind/java/org/w3c/dom/css/CSSCharsetRule.java deleted file mode 100644 index ac1884557..000000000 --- a/src/bind/java/org/w3c/dom/css/CSSCharsetRule.java +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.DOMException; - -/** - * The CSSCharsetRule interface represents a @charset rule in a - * CSS style sheet. The value of the encoding attribute does - * not affect the encoding of text data in the DOM objects; this encoding is - * always UTF-16. After a stylesheet is loaded, the value of the - * encoding attribute is the value found in the - * @charset rule. If there was no @charset in the - * original document, then no CSSCharsetRule is created. The - * value of the encoding attribute may also be used as a hint - * for the encoding used on serialization of the style sheet. - *

The value of the @charset rule (and therefore of the - * CSSCharsetRule) may not correspond to the encoding the - * document actually came in; character encoding information e.g. in an HTTP - * header, has priority (see CSS document representation) but this is not - * reflected in the CSSCharsetRule. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSCharsetRule extends CSSRule { - /** - * The encoding information used in this @charset rule. - * @exception DOMException - * SYNTAX_ERR: Raised if the specified encoding value has a syntax error - * and is unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this encoding rule is - * readonly. - */ - public String getEncoding(); - public void setEncoding(String encoding) - throws DOMException; - -} diff --git a/src/bind/java/org/w3c/dom/css/CSSFontFaceRule.java b/src/bind/java/org/w3c/dom/css/CSSFontFaceRule.java deleted file mode 100644 index a17957061..000000000 --- a/src/bind/java/org/w3c/dom/css/CSSFontFaceRule.java +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -/** - * The CSSFontFaceRule interface represents a @font-face rule in - * a CSS style sheet. The @font-face rule is used to hold a set - * of font descriptions. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSFontFaceRule extends CSSRule { - /** - * The declaration-block of this rule. - */ - public CSSStyleDeclaration getStyle(); - -} diff --git a/src/bind/java/org/w3c/dom/css/CSSImportRule.java b/src/bind/java/org/w3c/dom/css/CSSImportRule.java deleted file mode 100644 index e18ad569b..000000000 --- a/src/bind/java/org/w3c/dom/css/CSSImportRule.java +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.stylesheets.MediaList; - -/** - * The CSSImportRule interface represents a @import rule within - * a CSS style sheet. The @import rule is used to import style - * rules from other style sheets. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSImportRule extends CSSRule { - /** - * The location of the style sheet to be imported. The attribute will not - * contain the "url(...)" specifier around the URI. - */ - public String getHref(); - - /** - * A list of media types for which this style sheet may be used. - */ - public MediaList getMedia(); - - /** - * The style sheet referred to by this rule, if it has been loaded. The - * value of this attribute is null if the style sheet has - * not yet been loaded or if it will not be loaded (e.g. if the style - * sheet is for a media type not supported by the user agent). - */ - public CSSStyleSheet getStyleSheet(); - -} diff --git a/src/bind/java/org/w3c/dom/css/CSSMediaRule.java b/src/bind/java/org/w3c/dom/css/CSSMediaRule.java deleted file mode 100644 index c74d3faf5..000000000 --- a/src/bind/java/org/w3c/dom/css/CSSMediaRule.java +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.DOMException; -import org.w3c.dom.stylesheets.MediaList; - -/** - * The CSSMediaRule interface represents a @media rule in a CSS - * style sheet. A @media rule can be used to delimit style - * rules for specific media types. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSMediaRule extends CSSRule { - /** - * A list of media types for this rule. - */ - public MediaList getMedia(); - - /** - * A list of all CSS rules contained within the media block. - */ - public CSSRuleList getCssRules(); - - /** - * Used to insert a new rule into the media block. - * @param rule The parsable text representing the rule. For rule sets - * this contains both the selector and the style declaration. For - * at-rules, this specifies both the at-identifier and the rule - * content. - * @param index The index within the media block's rule collection of the - * rule before which to insert the specified rule. If the specified - * index is equal to the length of the media blocks's rule collection, - * the rule will be added to the end of the media block. - * @return The index within the media block's rule collection of the - * newly inserted rule. - * @exception DOMException - * HIERARCHY_REQUEST_ERR: Raised if the rule cannot be inserted at the - * specified index, e.g., if an @import rule is inserted - * after a standard rule set or other at-rule. - *
INDEX_SIZE_ERR: Raised if the specified index is not a valid - * insertion point. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this media rule is - * readonly. - *
SYNTAX_ERR: Raised if the specified rule has a syntax error and - * is unparsable. - */ - public int insertRule(String rule, - int index) - throws DOMException; - - /** - * Used to delete a rule from the media block. - * @param index The index within the media block's rule collection of the - * rule to remove. - * @exception DOMException - * INDEX_SIZE_ERR: Raised if the specified index does not correspond to - * a rule in the media rule list. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this media rule is - * readonly. - */ - public void deleteRule(int index) - throws DOMException; - -} diff --git a/src/bind/java/org/w3c/dom/css/CSSPageRule.java b/src/bind/java/org/w3c/dom/css/CSSPageRule.java deleted file mode 100644 index d2fc9c351..000000000 --- a/src/bind/java/org/w3c/dom/css/CSSPageRule.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.DOMException; - -/** - * The CSSPageRule interface represents a @page rule within a - * CSS style sheet. The @page rule is used to specify the - * dimensions, orientation, margins, etc. of a page box for paged media. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSPageRule extends CSSRule { - /** - * The parsable textual representation of the page selector for the rule. - * @exception DOMException - * SYNTAX_ERR: Raised if the specified CSS string value has a syntax - * error and is unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this rule is readonly. - */ - public String getSelectorText(); - public void setSelectorText(String selectorText) - throws DOMException; - - /** - * The declaration-block of this rule. - */ - public CSSStyleDeclaration getStyle(); - -} diff --git a/src/bind/java/org/w3c/dom/css/CSSPrimitiveValue.java b/src/bind/java/org/w3c/dom/css/CSSPrimitiveValue.java deleted file mode 100644 index 781ce8ab4..000000000 --- a/src/bind/java/org/w3c/dom/css/CSSPrimitiveValue.java +++ /dev/null @@ -1,296 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.DOMException; - -/** - * The CSSPrimitiveValue interface represents a single CSS value - * . This interface may be used to determine the value of a specific style - * property currently set in a block or to set a specific style property - * explicitly within the block. An instance of this interface might be - * obtained from the getPropertyCSSValue method of the - * CSSStyleDeclaration interface. A - * CSSPrimitiveValue object only occurs in a context of a CSS - * property. - *

Conversions are allowed between absolute values (from millimeters to - * centimeters, from degrees to radians, and so on) but not between relative - * values. (For example, a pixel value cannot be converted to a centimeter - * value.) Percentage values can't be converted since they are relative to - * the parent value (or another property value). There is one exception for - * color percentage values: since a color percentage value is relative to - * the range 0-255, a color percentage value can be converted to a number; - * (see also the RGBColor interface). - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSPrimitiveValue extends CSSValue { - // UnitTypes - /** - * The value is not a recognized CSS2 value. The value can only be - * obtained by using the cssText attribute. - */ - public static final short CSS_UNKNOWN = 0; - /** - * The value is a simple number. The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_NUMBER = 1; - /** - * The value is a percentage. The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_PERCENTAGE = 2; - /** - * The value is a length (ems). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_EMS = 3; - /** - * The value is a length (exs). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_EXS = 4; - /** - * The value is a length (px). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_PX = 5; - /** - * The value is a length (cm). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_CM = 6; - /** - * The value is a length (mm). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_MM = 7; - /** - * The value is a length (in). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_IN = 8; - /** - * The value is a length (pt). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_PT = 9; - /** - * The value is a length (pc). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_PC = 10; - /** - * The value is an angle (deg). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_DEG = 11; - /** - * The value is an angle (rad). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_RAD = 12; - /** - * The value is an angle (grad). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_GRAD = 13; - /** - * The value is a time (ms). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_MS = 14; - /** - * The value is a time (s). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_S = 15; - /** - * The value is a frequency (Hz). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_HZ = 16; - /** - * The value is a frequency (kHz). The value can be obtained by using the - * getFloatValue method. - */ - public static final short CSS_KHZ = 17; - /** - * The value is a number with an unknown dimension. The value can be - * obtained by using the getFloatValue method. - */ - public static final short CSS_DIMENSION = 18; - /** - * The value is a STRING. The value can be obtained by using the - * getStringValue method. - */ - public static final short CSS_STRING = 19; - /** - * The value is a URI. The value can be obtained by using the - * getStringValue method. - */ - public static final short CSS_URI = 20; - /** - * The value is an identifier. The value can be obtained by using the - * getStringValue method. - */ - public static final short CSS_IDENT = 21; - /** - * The value is a attribute function. The value can be obtained by using - * the getStringValue method. - */ - public static final short CSS_ATTR = 22; - /** - * The value is a counter or counters function. The value can be obtained - * by using the getCounterValue method. - */ - public static final short CSS_COUNTER = 23; - /** - * The value is a rect function. The value can be obtained by using the - * getRectValue method. - */ - public static final short CSS_RECT = 24; - /** - * The value is a RGB color. The value can be obtained by using the - * getRGBColorValue method. - */ - public static final short CSS_RGBCOLOR = 25; - - /** - * The type of the value as defined by the constants specified above. - */ - public short getPrimitiveType(); - - /** - * A method to set the float value with a specified unit. If the property - * attached with this value can not accept the specified unit or the - * float value, the value will be unchanged and a - * DOMException will be raised. - * @param unitType A unit code as defined above. The unit code can only - * be a float unit type (i.e. CSS_NUMBER, - * CSS_PERCENTAGE, CSS_EMS, - * CSS_EXS, CSS_PX, CSS_CM, - * CSS_MM, CSS_IN, CSS_PT, - * CSS_PC, CSS_DEG, CSS_RAD, - * CSS_GRAD, CSS_MS, CSS_S, - * CSS_HZ, CSS_KHZ, - * CSS_DIMENSION). - * @param floatValue The new float value. - * @exception DOMException - * INVALID_ACCESS_ERR: Raised if the attached property doesn't support - * the float value or the unit type. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setFloatValue(short unitType, - float floatValue) - throws DOMException; - - /** - * This method is used to get a float value in a specified unit. If this - * CSS value doesn't contain a float value or can't be converted into - * the specified unit, a DOMException is raised. - * @param unitType A unit code to get the float value. The unit code can - * only be a float unit type (i.e. CSS_NUMBER, - * CSS_PERCENTAGE, CSS_EMS, - * CSS_EXS, CSS_PX, CSS_CM, - * CSS_MM, CSS_IN, CSS_PT, - * CSS_PC, CSS_DEG, CSS_RAD, - * CSS_GRAD, CSS_MS, CSS_S, - * CSS_HZ, CSS_KHZ, - * CSS_DIMENSION). - * @return The float value in the specified unit. - * @exception DOMException - * INVALID_ACCESS_ERR: Raised if the CSS value doesn't contain a float - * value or if the float value can't be converted into the specified - * unit. - */ - public float getFloatValue(short unitType) - throws DOMException; - - /** - * A method to set the string value with the specified unit. If the - * property attached to this value can't accept the specified unit or - * the string value, the value will be unchanged and a - * DOMException will be raised. - * @param stringType A string code as defined above. The string code can - * only be a string unit type (i.e. CSS_STRING, - * CSS_URI, CSS_IDENT, and - * CSS_ATTR). - * @param stringValue The new string value. - * @exception DOMException - * INVALID_ACCESS_ERR: Raised if the CSS value doesn't contain a string - * value or if the string value can't be converted into the specified - * unit. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this property is readonly. - */ - public void setStringValue(short stringType, - String stringValue) - throws DOMException; - - /** - * This method is used to get the string value. If the CSS value doesn't - * contain a string value, a DOMException is raised. Some - * properties (like 'font-family' or 'voice-family') convert a - * whitespace separated list of idents to a string. - * @return The string value in the current unit. The current - * primitiveType can only be a string unit type (i.e. - * CSS_STRING, CSS_URI, - * CSS_IDENT and CSS_ATTR). - * @exception DOMException - * INVALID_ACCESS_ERR: Raised if the CSS value doesn't contain a string - * value. - */ - public String getStringValue() - throws DOMException; - - /** - * This method is used to get the Counter value. If this CSS value - * doesn't contain a counter value, a DOMException is - * raised. Modification to the corresponding style property can be - * achieved using the Counter interface. - * @return The Counter value. - * @exception DOMException - * INVALID_ACCESS_ERR: Raised if the CSS value doesn't contain a - * Counter value (e.g. this is not CSS_COUNTER). - */ - public Counter getCounterValue() - throws DOMException; - - /** - * This method is used to get the Rect value. If this CSS value doesn't - * contain a rect value, a DOMException is raised. - * Modification to the corresponding style property can be achieved - * using the Rect interface. - * @return The Rect value. - * @exception DOMException - * INVALID_ACCESS_ERR: Raised if the CSS value doesn't contain a Rect - * value. (e.g. this is not CSS_RECT). - */ - public Rect getRectValue() - throws DOMException; - - /** - * This method is used to get the RGB color. If this CSS value doesn't - * contain a RGB color value, a DOMException is raised. - * Modification to the corresponding style property can be achieved - * using the RGBColor interface. - * @return the RGB color value. - * @exception DOMException - * INVALID_ACCESS_ERR: Raised if the attached property can't return a - * RGB color value (e.g. this is not CSS_RGBCOLOR). - */ - public RGBColor getRGBColorValue() - throws DOMException; - -} diff --git a/src/bind/java/org/w3c/dom/css/CSSRule.java b/src/bind/java/org/w3c/dom/css/CSSRule.java deleted file mode 100644 index 8626f8089..000000000 --- a/src/bind/java/org/w3c/dom/css/CSSRule.java +++ /dev/null @@ -1,93 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.DOMException; - -/** - * The CSSRule interface is the abstract base interface for any - * type of CSS statement. This includes both rule sets and at-rules. An - * implementation is expected to preserve all rules specified in a CSS style - * sheet, even if the rule is not recognized by the parser. Unrecognized - * rules are represented using the CSSUnknownRule interface. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSRule { - // RuleType - /** - * The rule is a CSSUnknownRule. - */ - public static final short UNKNOWN_RULE = 0; - /** - * The rule is a CSSStyleRule. - */ - public static final short STYLE_RULE = 1; - /** - * The rule is a CSSCharsetRule. - */ - public static final short CHARSET_RULE = 2; - /** - * The rule is a CSSImportRule. - */ - public static final short IMPORT_RULE = 3; - /** - * The rule is a CSSMediaRule. - */ - public static final short MEDIA_RULE = 4; - /** - * The rule is a CSSFontFaceRule. - */ - public static final short FONT_FACE_RULE = 5; - /** - * The rule is a CSSPageRule. - */ - public static final short PAGE_RULE = 6; - - /** - * The type of the rule, as defined above. The expectation is that - * binding-specific casting methods can be used to cast down from an - * instance of the CSSRule interface to the specific - * derived interface implied by the type. - */ - public short getType(); - - /** - * The parsable textual representation of the rule. This reflects the - * current state of the rule and not its initial value. - * @exception DOMException - * SYNTAX_ERR: Raised if the specified CSS string value has a syntax - * error and is unparsable. - *
INVALID_MODIFICATION_ERR: Raised if the specified CSS string - * value represents a different type of rule than the current one. - *
HIERARCHY_REQUEST_ERR: Raised if the rule cannot be inserted at - * this point in the style sheet. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if the rule is readonly. - */ - public String getCssText(); - public void setCssText(String cssText) - throws DOMException; - - /** - * The style sheet that contains this rule. - */ - public CSSStyleSheet getParentStyleSheet(); - - /** - * If this rule is contained inside another rule (e.g. a style rule - * inside an @media block), this is the containing rule. If this rule is - * not nested inside any other rules, this returns null. - */ - public CSSRule getParentRule(); - -} diff --git a/src/bind/java/org/w3c/dom/css/CSSRuleList.java b/src/bind/java/org/w3c/dom/css/CSSRuleList.java deleted file mode 100644 index ba4052074..000000000 --- a/src/bind/java/org/w3c/dom/css/CSSRuleList.java +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -/** - * The CSSRuleList interface provides the abstraction of an - * ordered collection of CSS rules. - *

The items in the CSSRuleList are accessible via an - * integral index, starting from 0. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSRuleList { - /** - * The number of CSSRules in the list. The range of valid - * child rule indices is 0 to length-1 - * inclusive. - */ - public int getLength(); - - /** - * Used to retrieve a CSS rule by ordinal index. The order in this - * collection represents the order of the rules in the CSS style sheet. - * If index is greater than or equal to the number of rules in the list, - * this returns null. - * @param indexIndex into the collection - * @return The style rule at the index position in the - * CSSRuleList, or null if that is not a - * valid index. - */ - public CSSRule item(int index); - -} diff --git a/src/bind/java/org/w3c/dom/css/CSSStyleDeclaration.java b/src/bind/java/org/w3c/dom/css/CSSStyleDeclaration.java deleted file mode 100644 index d017fbd55..000000000 --- a/src/bind/java/org/w3c/dom/css/CSSStyleDeclaration.java +++ /dev/null @@ -1,152 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.DOMException; - -/** - * The CSSStyleDeclaration interface represents a single CSS - * declaration block. This interface may be used to determine the style - * properties currently set in a block or to set style properties explicitly - * within the block. - *

While an implementation may not recognize all CSS properties within a - * CSS declaration block, it is expected to provide access to all specified - * properties in the style sheet through the CSSStyleDeclaration - * interface. Furthermore, implementations that support a specific level of - * CSS should correctly handle CSS shorthand properties for that level. For - * a further discussion of shorthand properties, see the - * CSS2Properties interface. - *

This interface is also used to provide a read-only access to the - * computed values of an element. See also the ViewCSS - * interface. The CSS Object Model doesn't provide an access to the - * specified or actual values of the CSS cascade. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSStyleDeclaration { - /** - * The parsable textual representation of the declaration block - * (excluding the surrounding curly braces). Setting this attribute will - * result in the parsing of the new value and resetting of all the - * properties in the declaration block including the removal or addition - * of properties. - * @exception DOMException - * SYNTAX_ERR: Raised if the specified CSS string value has a syntax - * error and is unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this declaration is - * readonly or a property is readonly. - */ - public String getCssText(); - public void setCssText(String cssText) - throws DOMException; - - /** - * Used to retrieve the value of a CSS property if it has been explicitly - * set within this declaration block. - * @param propertyName The name of the CSS property. See the CSS property - * index. - * @return Returns the value of the property if it has been explicitly - * set for this declaration block. Returns the empty string if the - * property has not been set. - */ - public String getPropertyValue(String propertyName); - - /** - * Used to retrieve the object representation of the value of a CSS - * property if it has been explicitly set within this declaration block. - * This method returns null if the property is a shorthand - * property. Shorthand property values can only be accessed and modified - * as strings, using the getPropertyValue and - * setProperty methods. - * @param propertyName The name of the CSS property. See the CSS property - * index. - * @return Returns the value of the property if it has been explicitly - * set for this declaration block. Returns null if the - * property has not been set. - */ - public CSSValue getPropertyCSSValue(String propertyName); - - /** - * Used to remove a CSS property if it has been explicitly set within - * this declaration block. - * @param propertyName The name of the CSS property. See the CSS property - * index. - * @return Returns the value of the property if it has been explicitly - * set for this declaration block. Returns the empty string if the - * property has not been set or the property name does not correspond - * to a known CSS property. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this declaration is readonly - * or the property is readonly. - */ - public String removeProperty(String propertyName) - throws DOMException; - - /** - * Used to retrieve the priority of a CSS property (e.g. the - * "important" qualifier) if the property has been - * explicitly set in this declaration block. - * @param propertyName The name of the CSS property. See the CSS property - * index. - * @return A string representing the priority (e.g. - * "important") if one exists. The empty string if none - * exists. - */ - public String getPropertyPriority(String propertyName); - - /** - * Used to set a property value and priority within this declaration - * block. - * @param propertyName The name of the CSS property. See the CSS property - * index. - * @param value The new value of the property. - * @param priority The new priority of the property (e.g. - * "important"). - * @exception DOMException - * SYNTAX_ERR: Raised if the specified value has a syntax error and is - * unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this declaration is - * readonly or the property is readonly. - */ - public void setProperty(String propertyName, - String value, - String priority) - throws DOMException; - - /** - * The number of properties that have been explicitly set in this - * declaration block. The range of valid indices is 0 to length-1 - * inclusive. - */ - public int getLength(); - - /** - * Used to retrieve the properties that have been explicitly set in this - * declaration block. The order of the properties retrieved using this - * method does not have to be the order in which they were set. This - * method can be used to iterate over all properties in this declaration - * block. - * @param index Index of the property name to retrieve. - * @return The name of the property at this ordinal position. The empty - * string if no property exists at this position. - */ - public String item(int index); - - /** - * The CSS rule that contains this declaration block or null - * if this CSSStyleDeclaration is not attached to a - * CSSRule. - */ - public CSSRule getParentRule(); - -} diff --git a/src/bind/java/org/w3c/dom/css/CSSStyleRule.java b/src/bind/java/org/w3c/dom/css/CSSStyleRule.java deleted file mode 100644 index 45a647b19..000000000 --- a/src/bind/java/org/w3c/dom/css/CSSStyleRule.java +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.DOMException; - -/** - * The CSSStyleRule interface represents a single rule set in a - * CSS style sheet. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSStyleRule extends CSSRule { - /** - * The textual representation of the selector for the rule set. The - * implementation may have stripped out insignificant whitespace while - * parsing the selector. - * @exception DOMException - * SYNTAX_ERR: Raised if the specified CSS string value has a syntax - * error and is unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this rule is readonly. - */ - public String getSelectorText(); - public void setSelectorText(String selectorText) - throws DOMException; - - /** - * The declaration-block of this rule set. - */ - public CSSStyleDeclaration getStyle(); - -} diff --git a/src/bind/java/org/w3c/dom/css/CSSStyleSheet.java b/src/bind/java/org/w3c/dom/css/CSSStyleSheet.java deleted file mode 100644 index cdfd74d9a..000000000 --- a/src/bind/java/org/w3c/dom/css/CSSStyleSheet.java +++ /dev/null @@ -1,85 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.DOMException; -import org.w3c.dom.stylesheets.StyleSheet; - -/** - * The CSSStyleSheet interface is a concrete interface used to - * represent a CSS style sheet i.e., a style sheet whose content type is - * "text/css". - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSStyleSheet extends StyleSheet { - /** - * If this style sheet comes from an @import rule, the - * ownerRule attribute will contain the - * CSSImportRule. In that case, the ownerNode - * attribute in the StyleSheet interface will be - * null. If the style sheet comes from an element or a - * processing instruction, the ownerRule attribute will be - * null and the ownerNode attribute will - * contain the Node. - */ - public CSSRule getOwnerRule(); - - /** - * The list of all CSS rules contained within the style sheet. This - * includes both rule sets and at-rules. - */ - public CSSRuleList getCssRules(); - - /** - * Used to insert a new rule into the style sheet. The new rule now - * becomes part of the cascade. - * @param rule The parsable text representing the rule. For rule sets - * this contains both the selector and the style declaration. For - * at-rules, this specifies both the at-identifier and the rule - * content. - * @param index The index within the style sheet's rule list of the rule - * before which to insert the specified rule. If the specified index - * is equal to the length of the style sheet's rule collection, the - * rule will be added to the end of the style sheet. - * @return The index within the style sheet's rule collection of the - * newly inserted rule. - * @exception DOMException - * HIERARCHY_REQUEST_ERR: Raised if the rule cannot be inserted at the - * specified index e.g. if an @import rule is inserted - * after a standard rule set or other at-rule. - *
INDEX_SIZE_ERR: Raised if the specified index is not a valid - * insertion point. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this style sheet is - * readonly. - *
SYNTAX_ERR: Raised if the specified rule has a syntax error and - * is unparsable. - */ - public int insertRule(String rule, - int index) - throws DOMException; - - /** - * Used to delete a rule from the style sheet. - * @param index The index within the style sheet's rule list of the rule - * to remove. - * @exception DOMException - * INDEX_SIZE_ERR: Raised if the specified index does not correspond to - * a rule in the style sheet's rule list. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this style sheet is - * readonly. - */ - public void deleteRule(int index) - throws DOMException; - -} diff --git a/src/bind/java/org/w3c/dom/css/CSSUnknownRule.java b/src/bind/java/org/w3c/dom/css/CSSUnknownRule.java deleted file mode 100644 index 763d5f1b6..000000000 --- a/src/bind/java/org/w3c/dom/css/CSSUnknownRule.java +++ /dev/null @@ -1,22 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -/** - * The CSSUnknownRule interface represents an at-rule not - * supported by this user agent. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSUnknownRule extends CSSRule { -} diff --git a/src/bind/java/org/w3c/dom/css/CSSValue.java b/src/bind/java/org/w3c/dom/css/CSSValue.java deleted file mode 100644 index c40929095..000000000 --- a/src/bind/java/org/w3c/dom/css/CSSValue.java +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.DOMException; - -/** - * The CSSValue interface represents a simple or a complex - * value. A CSSValue object only occurs in a context of a CSS - * property. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSValue { - // UnitTypes - /** - * The value is inherited and the cssText contains "inherit". - */ - public static final short CSS_INHERIT = 0; - /** - * The value is a primitive value and an instance of the - * CSSPrimitiveValue interface can be obtained by using - * binding-specific casting methods on this instance of the - * CSSValue interface. - */ - public static final short CSS_PRIMITIVE_VALUE = 1; - /** - * The value is a CSSValue list and an instance of the - * CSSValueList interface can be obtained by using - * binding-specific casting methods on this instance of the - * CSSValue interface. - */ - public static final short CSS_VALUE_LIST = 2; - /** - * The value is a custom value. - */ - public static final short CSS_CUSTOM = 3; - - /** - * A string representation of the current value. - * @exception DOMException - * SYNTAX_ERR: Raised if the specified CSS string value has a syntax - * error (according to the attached property) or is unparsable. - *
INVALID_MODIFICATION_ERR: Raised if the specified CSS string - * value represents a different type of values than the values allowed - * by the CSS property. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this value is readonly. - */ - public String getCssText(); - public void setCssText(String cssText) - throws DOMException; - - /** - * A code defining the type of the value as defined above. - */ - public short getCssValueType(); - -} diff --git a/src/bind/java/org/w3c/dom/css/CSSValueList.java b/src/bind/java/org/w3c/dom/css/CSSValueList.java deleted file mode 100644 index b159165d9..000000000 --- a/src/bind/java/org/w3c/dom/css/CSSValueList.java +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -/** - * The CSSValueList interface provides the abstraction of an - * ordered collection of CSS values. - *

Some properties allow an empty list into their syntax. In that case, - * these properties take the none identifier. So, an empty list - * means that the property has the value none. - *

The items in the CSSValueList are accessible via an - * integral index, starting from 0. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface CSSValueList extends CSSValue { - /** - * The number of CSSValues in the list. The range of valid - * values of the indices is 0 to length-1 - * inclusive. - */ - public int getLength(); - - /** - * Used to retrieve a CSSValue by ordinal index. The order in - * this collection represents the order of the values in the CSS style - * property. If index is greater than or equal to the number of values - * in the list, this returns null. - * @param indexIndex into the collection. - * @return The CSSValue at the index position - * in the CSSValueList, or null if that is - * not a valid index. - */ - public CSSValue item(int index); - -} diff --git a/src/bind/java/org/w3c/dom/css/Counter.java b/src/bind/java/org/w3c/dom/css/Counter.java deleted file mode 100644 index 8cd4967b3..000000000 --- a/src/bind/java/org/w3c/dom/css/Counter.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -/** - * The Counter interface is used to represent any counter or - * counters function value. This interface reflects the values in the - * underlying style property. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface Counter { - /** - * This attribute is used for the identifier of the counter. - */ - public String getIdentifier(); - - /** - * This attribute is used for the style of the list. - */ - public String getListStyle(); - - /** - * This attribute is used for the separator of the nested counters. - */ - public String getSeparator(); - -} diff --git a/src/bind/java/org/w3c/dom/css/DOMImplementationCSS.java b/src/bind/java/org/w3c/dom/css/DOMImplementationCSS.java deleted file mode 100644 index 66755de64..000000000 --- a/src/bind/java/org/w3c/dom/css/DOMImplementationCSS.java +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.DOMImplementation; -import org.w3c.dom.DOMException; - -/** - * This interface allows the DOM user to create a CSSStyleSheet - * outside the context of a document. There is no way to associate the new - * CSSStyleSheet with a document in DOM Level 2. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface DOMImplementationCSS extends DOMImplementation { - /** - * Creates a new CSSStyleSheet. - * @param title The advisory title. See also the section. - * @param media The comma-separated list of media associated with the new - * style sheet. See also the section. - * @return A new CSS style sheet. - * @exception DOMException - * SYNTAX_ERR: Raised if the specified media string value has a syntax - * error and is unparsable. - */ - public CSSStyleSheet createCSSStyleSheet(String title, - String media) - throws DOMException; - -} diff --git a/src/bind/java/org/w3c/dom/css/DocumentCSS.java b/src/bind/java/org/w3c/dom/css/DocumentCSS.java deleted file mode 100644 index bb1b8540a..000000000 --- a/src/bind/java/org/w3c/dom/css/DocumentCSS.java +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.stylesheets.DocumentStyle; -import org.w3c.dom.Element; - -/** - * This interface represents a document with a CSS view. - *

The getOverrideStyle method provides a mechanism through - * which a DOM author could effect immediate change to the style of an - * element without modifying the explicitly linked style sheets of a - * document or the inline style of elements in the style sheets. This style - * sheet comes after the author style sheet in the cascade algorithm and is - * called override style sheet. The override style sheet takes precedence - * over author style sheets. An "!important" declaration still takes - * precedence over a normal declaration. Override, author, and user style - * sheets all may contain "!important" declarations. User "!important" rules - * take precedence over both override and author "!important" rules, and - * override "!important" rules take precedence over author "!important" - * rules. - *

The expectation is that an instance of the DocumentCSS - * interface can be obtained by using binding-specific casting methods on an - * instance of the Document interface. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface DocumentCSS extends DocumentStyle { - /** - * This method is used to retrieve the override style declaration for a - * specified element and a specified pseudo-element. - * @param elt The element whose style is to be modified. This parameter - * cannot be null. - * @param pseudoElt The pseudo-element or null if none. - * @return The override style declaration. - */ - public CSSStyleDeclaration getOverrideStyle(Element elt, - String pseudoElt); - -} diff --git a/src/bind/java/org/w3c/dom/css/ElementCSSInlineStyle.java b/src/bind/java/org/w3c/dom/css/ElementCSSInlineStyle.java deleted file mode 100644 index 98b60bf9d..000000000 --- a/src/bind/java/org/w3c/dom/css/ElementCSSInlineStyle.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -/** - * Inline style information attached to elements is exposed through the - * style attribute. This represents the contents of the STYLE - * attribute for HTML elements (or elements in other schemas or DTDs which - * use the STYLE attribute in the same way). The expectation is that an - * instance of the ElementCSSInlineStyle interface can be obtained by using - * binding-specific casting methods on an instance of the Element interface - * when the element supports inline CSS style informations. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface ElementCSSInlineStyle { - /** - * The style attribute. - */ - public CSSStyleDeclaration getStyle(); - -} diff --git a/src/bind/java/org/w3c/dom/css/RGBColor.java b/src/bind/java/org/w3c/dom/css/RGBColor.java deleted file mode 100644 index cd5daa567..000000000 --- a/src/bind/java/org/w3c/dom/css/RGBColor.java +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -/** - * The RGBColor interface is used to represent any RGB color - * value. This interface reflects the values in the underlying style - * property. Hence, modifications made to the CSSPrimitiveValue - * objects modify the style property. - *

A specified RGB color is not clipped (even if the number is outside the - * range 0-255 or 0%-100%). A computed RGB color is clipped depending on the - * device. - *

Even if a style sheet can only contain an integer for a color value, - * the internal storage of this integer is a float, and this can be used as - * a float in the specified or the computed style. - *

A color percentage value can always be converted to a number and vice - * versa. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface RGBColor { - /** - * This attribute is used for the red value of the RGB color. - */ - public CSSPrimitiveValue getRed(); - - /** - * This attribute is used for the green value of the RGB color. - */ - public CSSPrimitiveValue getGreen(); - - /** - * This attribute is used for the blue value of the RGB color. - */ - public CSSPrimitiveValue getBlue(); - -} diff --git a/src/bind/java/org/w3c/dom/css/Rect.java b/src/bind/java/org/w3c/dom/css/Rect.java deleted file mode 100644 index f5efb1084..000000000 --- a/src/bind/java/org/w3c/dom/css/Rect.java +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -/** - * The Rect interface is used to represent any rect value. This - * interface reflects the values in the underlying style property. Hence, - * modifications made to the CSSPrimitiveValue objects modify - * the style property. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface Rect { - /** - * This attribute is used for the top of the rect. - */ - public CSSPrimitiveValue getTop(); - - /** - * This attribute is used for the right of the rect. - */ - public CSSPrimitiveValue getRight(); - - /** - * This attribute is used for the bottom of the rect. - */ - public CSSPrimitiveValue getBottom(); - - /** - * This attribute is used for the left of the rect. - */ - public CSSPrimitiveValue getLeft(); - -} diff --git a/src/bind/java/org/w3c/dom/css/ViewCSS.java b/src/bind/java/org/w3c/dom/css/ViewCSS.java deleted file mode 100644 index 6c98bd4ec..000000000 --- a/src/bind/java/org/w3c/dom/css/ViewCSS.java +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.css; - -import org.w3c.dom.views.AbstractView; -import org.w3c.dom.Element; - -/** - * This interface represents a CSS view. The getComputedStyle - * method provides a read only access to the computed values of an element. - *

The expectation is that an instance of the ViewCSS - * interface can be obtained by using binding-specific casting methods on an - * instance of the AbstractView interface. - *

Since a computed style is related to an Element node, if - * this element is removed from the document, the associated - * CSSStyleDeclaration and CSSValue related to - * this declaration are no longer valid. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface ViewCSS extends AbstractView { - /** - * This method is used to get the computed style as it is defined in . - * @param elt The element whose style is to be computed. This parameter - * cannot be null. - * @param pseudoElt The pseudo-element or null if none. - * @return The computed style. The CSSStyleDeclaration is - * read-only and contains only absolute values. - */ - public CSSStyleDeclaration getComputedStyle(Element elt, - String pseudoElt); - -} diff --git a/src/bind/java/org/w3c/dom/events/CustomEvent.java b/src/bind/java/org/w3c/dom/events/CustomEvent.java deleted file mode 100644 index c7bdf0433..000000000 --- a/src/bind/java/org/w3c/dom/events/CustomEvent.java +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] in the hope that - * it will be useful, but WITHOUT ANY WARRANTY; without even the implied - * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.events; - -/** - * The CustomEvent interface gives access to the attributes - * Event.currentTarget and Event.eventPhase. It is - * intended to be used by the DOM Events implementation to access the - * underlying current target and event phase while dispatching a custom - * Event in the tree; it is also intended to be implemented, - * and not used, by DOM applications. - *

The methods contained in this interface are not intended to be used by - * a DOM application, especially during the dispatch on the - * Event object. Changing the current target or the current - * phase may result in unpredictable results of the event flow. The DOM - * Events implementation should ensure that both methods return the - * appropriate current target and phase before invoking each event listener - * on the current target to protect DOM applications from malicious event - * listeners. - *

Note: If this interface is supported by the event object, - * Event.isCustom() must return true. - *

See also the Document Object Model (DOM) Level 3 Events Specification. - * @since DOM Level 3 - */ -public interface CustomEvent extends Event { - /** - * The setDispatchState method is used by the DOM Events - * implementation to set the values of Event.currentTarget - * and Event.eventPhase. It also reset the states of - * isPropagationStopped and - * isImmediatePropagationStopped. - * @param target Specifies the new value for the - * Event.currentTarget attribute. - * @param phase Specifies the new value for the - * Event.eventPhase attribute. - */ - public void setDispatchState(EventTarget target, - short phase); - - /** - * This method will return true if the method - * stopPropagation() has been called for this event, - * false in any other cases. - * @return true if the event propagation has been stopped - * in the current group. - */ - public boolean isPropagationStopped(); - - /** - * The isImmediatePropagationStopped method is used by the - * DOM Events implementation to know if the method - * stopImmediatePropagation() has been called for this - * event. It returns true if the method has been called, - * false otherwise. - * @return true if the event propagation has been stopped - * immediately in the current group. - */ - public boolean isImmediatePropagationStopped(); - -} diff --git a/src/bind/java/org/w3c/dom/events/DocumentEvent.java b/src/bind/java/org/w3c/dom/events/DocumentEvent.java deleted file mode 100644 index 8f50dd74b..000000000 --- a/src/bind/java/org/w3c/dom/events/DocumentEvent.java +++ /dev/null @@ -1,86 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] in the hope that - * it will be useful, but WITHOUT ANY WARRANTY; without even the implied - * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.events; - -import org.w3c.dom.DOMException; - -/** - * The DocumentEvent interface provides a mechanism by which the - * user can create an Event object of a type supported by the - * implementation. If the feature "Events" is supported by the - * Document object, the DocumentEvent interface - * must be implemented on the same object. If the feature "+Events" is - * supported by the Document object, an object that supports - * the DocumentEvent interface must be returned by invoking the - * method Node.getFeature("+Events", "3.0") on the - * Document object. - *

See also the Document Object Model (DOM) Level 3 Events Specification. - * @since DOM Level 2 - */ -public interface DocumentEvent { - /** - * - * @param eventType The eventType parameter specifies the - * name of the DOM Events interface to be supported by the created - * event object, e.g. "Event", "MouseEvent", - * "MutationEvent" and so on. If the Event - * is to be dispatched via the EventTarget.dispatchEvent() - * method the appropriate event init method must be called after - * creation in order to initialize the Event's values. - * As an example, a user wishing to synthesize some kind of - * UIEvent would invoke - * DocumentEvent.createEvent("UIEvent"). The - * UIEvent.initUIEventNS() method could then be called on - * the newly created UIEvent object to set the specific - * type of user interface event to be dispatched, - * {"http://www.w3.org/2001/xml-events", "DOMActivate"} - * for example, and set its context information, e.g. - * UIEvent.detail in this example. The - * createEvent method is used in creating - * Events when it is either inconvenient or unnecessary - * for the user to create an Event themselves. In cases - * where the implementation provided Event is - * insufficient, users may supply their own Event - * implementations for use with the - * EventTarget.dispatchEvent() method. However, the DOM - * implementation needs access to the attributes - * Event.currentTarget and Event.eventPhase - * to appropriately propagate the event in the DOM tree. Therefore - * users' Event implementations might need to support the - * CustomEvent interface for that effect. - *

Note: For backward compatibility reason, "UIEvents", - * "MouseEvents", "MutationEvents", and "HTMLEvents" feature names are - * valid values for the parameter eventType and represent - * respectively the interfaces "UIEvent", "MouseEvent", - * "MutationEvent", and "Event". - * @return The newly created event object. - * @exception DOMException - * NOT_SUPPORTED_ERR: Raised if the implementation does not support the - * Event interface requested. - */ - public Event createEvent(String eventType) - throws DOMException; - - /** - * Test if the implementation can generate events of a specified type. - * @param namespaceURI Specifies the Event.namespaceURI of - * the event. - * @param type Specifies the Event.type of the event. - * @return true if the implementation can generate and - * dispatch this event type, false otherwise. - * @since DOM Level 3 - */ - public boolean canDispatch(String namespaceURI, - String type); - -} diff --git a/src/bind/java/org/w3c/dom/events/Event.java b/src/bind/java/org/w3c/dom/events/Event.java deleted file mode 100644 index 949931518..000000000 --- a/src/bind/java/org/w3c/dom/events/Event.java +++ /dev/null @@ -1,209 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] in the hope that - * it will be useful, but WITHOUT ANY WARRANTY; without even the implied - * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.events; - -/** - * The Event interface is used to provide contextual information - * about an event to the listener processing the event. An object which - * implements the Event interface is passed as the parameter to - * an EventListener. More specific context information is - * passed to event listeners by deriving additional interfaces from - * Event which contain information directly relating to the - * type of event they represent. These derived interfaces are also - * implemented by the object passed to the event listener. - *

To create an instance of the Event interface, use the - * DocumentEvent.createEvent("Event") method call. - *

See also the Document Object Model (DOM) Level 3 Events Specification. - * @since DOM Level 2 - */ -public interface Event { - // PhaseType - /** - * The current event phase is the capture phase. - */ - public static final short CAPTURING_PHASE = 1; - /** - * The current event is in the target phase, i.e. it is being evaluated - * at the event target. - */ - public static final short AT_TARGET = 2; - /** - * The current event phase is the bubbling phase. - */ - public static final short BUBBLING_PHASE = 3; - - /** - * The name should be an NCName as defined in [XML Namespaces] - * and is case-sensitive. - *
If the attribute Event.namespaceURI is different from - * null, this attribute represents a local name. - */ - public String getType(); - - /** - * Used to indicate the event target. This attribute contains the target - * node when used with the . - */ - public EventTarget getTarget(); - - /** - * Used to indicate the EventTarget whose - * EventListeners are currently being processed. This is - * particularly useful during the capture and bubbling phases. This - * attribute could contain the target node or a target ancestor when - * used with the . - */ - public EventTarget getCurrentTarget(); - - /** - * Used to indicate which phase of event flow is currently being - * accomplished. - */ - public short getEventPhase(); - - /** - * Used to indicate whether or not an event is a bubbling event. If the - * event can bubble the value is true, otherwise the value - * is false. - */ - public boolean getBubbles(); - - /** - * Used to indicate whether or not an event can have its default action - * prevented (see also ). If the default action can be prevented the - * value is true, otherwise the value is false - * . - */ - public boolean getCancelable(); - - /** - * Used to specify the time (in milliseconds relative to the epoch) at - * which the event was created. Due to the fact that some systems may - * not provide this information the value of timeStamp may - * be not available for all events. When not available, a value of - * 0 will be returned. Examples of epoch time are the time - * of the system start or 0:0:0 UTC 1st January 1970. - */ - public long getTimeStamp(); - - /** - * This method is used to prevent event listeners of the same group to be - * triggered but its effect is deferred until all event listeners - * attached on the currentTarget have been triggered (see - * ). Once it has been called, further calls to that method have no - * additional effect. - *

Note: This method does not prevent the default action from - * being invoked; use preventDefault for that effect. - */ - public void stopPropagation(); - - /** - * If an event is cancelable, the preventDefault method is - * used to signify that the event is to be canceled, meaning any default - * action normally taken by the implementation as a result of the event - * will not occur (see also ), and thus independently of event groups. - * Calling this method for a non-cancelable event has no effect. - *

Note: This method does not stop the event propagation; use - * stopPropagation or stopImmediatePropagation - * for that effect. - */ - public void preventDefault(); - - /** - * The initEvent method is used to initialize the value of - * an Event created through the - * DocumentEvent.createEvent method. This method may only - * be called before the Event has been dispatched via the - * EventTarget.dispatchEvent() method. If the method is - * called several times before invoking - * EventTarget.dispatchEvent, only the final invocation - * takes precedence. This method has no effect if called after the event - * has been dispatched. If called from a subclass of the - * Event interface only the values specified in this method - * are modified, all other attributes are left unchanged. - *
This method sets the Event.type attribute to - * eventTypeArg, and Event.namespaceURI to - * null. To initialize an event with a namespace URI, use - * the Event.initEventNS(namespaceURIArg, eventTypeArg, ...) - * method. - * @param eventTypeArg Specifies Event.type. - * @param canBubbleArg Specifies Event.bubbles. This - * parameter overrides the intrinsic bubbling behavior of the event. - * @param cancelableArg Specifies Event.cancelable. This - * parameter overrides the intrinsic cancelable behavior of the event. - */ - public void initEvent(String eventTypeArg, - boolean canBubbleArg, - boolean cancelableArg); - - /** - * The namespace URI associated with this event at creation time, or - * null if it is unspecified. - *
For events initialized with a DOM Level 2 Events method, such as - * Event.initEvent(), this is always null. - * @since DOM Level 3 - */ - public String getNamespaceURI(); - - /** - * This method will always return false, unless the event - * implements the CustomEvent interface. - * @return false, unless the event object implements the - * CustomEvent interface. - * @since DOM Level 3 - */ - public boolean isCustom(); - - /** - * This method is used to prevent event listeners of the same group to be - * triggered and, unlike stopPropagation its effect is - * immediate (see ). Once it has been called, further calls to that - * method have no additional effect. - *

Note: This method does not prevent the default action from - * being invoked; use Event.preventDefault() for that - * effect. - * @since DOM Level 3 - */ - public void stopImmediatePropagation(); - - /** - * This method will return true if the method - * Event.preventDefault() has been called for this event, - * false otherwise. - * @return true if Event.preventDefault() has - * been called for this event. - * @since DOM Level 3 - */ - public boolean isDefaultPrevented(); - - /** - * The initEventNS method is used to initialize the value of - * an Event object and has the same behavior as - * Event.initEvent(). - * @param namespaceURIArg Specifies Event.namespaceuRI, the - * namespace URI associated with this event, or null if - * no namespace. - * @param eventTypeArg Specifies Event.type, the local name - * of the event type. - * @param canBubbleArg Refer to the Event.initEvent() - * method for a description of this parameter. - * @param cancelableArg Refer to the Event.initEvent() - * method for a description of this parameter. - * @since DOM Level 3 - */ - public void initEventNS(String namespaceURIArg, - String eventTypeArg, - boolean canBubbleArg, - boolean cancelableArg); - -} diff --git a/src/bind/java/org/w3c/dom/events/EventException.java b/src/bind/java/org/w3c/dom/events/EventException.java deleted file mode 100644 index 51763b46b..000000000 --- a/src/bind/java/org/w3c/dom/events/EventException.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] in the hope that - * it will be useful, but WITHOUT ANY WARRANTY; without even the implied - * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.events; - -/** - * Event operations may throw an EventException as specified in - * their method descriptions. - *

See also the Document Object Model (DOM) Level 3 Events Specification. - * @since DOM Level 2 - */ -public class EventException extends RuntimeException { - public EventException(short code, String message) { - super(message); - this.code = code; - } - public short code; - // EventExceptionCode - /** - * If the Event.type was not specified by initializing the - * event before the method was called. Specification of the - * Event.type as null or an empty string will - * also trigger this exception. - */ - public static final short UNSPECIFIED_EVENT_TYPE_ERR = 0; - /** - * If the Event object is already dispatched in the tree. - * @since DOM Level 3 - */ - public static final short DISPATCH_REQUEST_ERR = 1; - -} diff --git a/src/bind/java/org/w3c/dom/events/EventListener.java b/src/bind/java/org/w3c/dom/events/EventListener.java deleted file mode 100644 index a5102b130..000000000 --- a/src/bind/java/org/w3c/dom/events/EventListener.java +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] in the hope that - * it will be useful, but WITHOUT ANY WARRANTY; without even the implied - * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.events; - -/** - * The EventListener interface is the primary way for handling - * events. Users implement the EventListener interface and - * register their event listener on an EventTarget. The users - * should also remove their EventListener from its - * EventTarget after they have completed using the listener. - *

Copying a Node, with methods such as - * Node.cloneNode or Range.cloneContents, does not - * copy the event listeners attached to it. Event listeners must be attached - * to the newly created Node afterwards if so desired. - *

Moving a Node, with methods Document.adoptNode - * , Node.appendChild, or Range.extractContents, - * does not affect the event listeners attached to it. - *

See also the Document Object Model (DOM) Level 3 Events Specification. - * @since DOM Level 2 - */ -public interface EventListener { - /** - * This method is called whenever an event occurs of the event type for - * which the EventListener interface was registered. - * @param evt The Event contains contextual information - * about the event. - */ - public void handleEvent(Event evt); - -} diff --git a/src/bind/java/org/w3c/dom/events/EventTarget.java b/src/bind/java/org/w3c/dom/events/EventTarget.java deleted file mode 100644 index 1be6edace..000000000 --- a/src/bind/java/org/w3c/dom/events/EventTarget.java +++ /dev/null @@ -1,202 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] in the hope that - * it will be useful, but WITHOUT ANY WARRANTY; without even the implied - * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.events; - -/** - * The EventTarget interface is implemented by all the objects - * which could be event targets in an implementation which supports the . - * The interface allows registration, removal or query of event listeners, - * and dispatch of events to an event target. - *

When used with , this interface is implemented by all target nodes and - * target ancestors, i.e. all DOM Nodes of the tree support - * this interface when the implementation conforms to DOM Level 3 Events - * and, therefore, this interface can be obtained by using binding-specific - * casting methods on an instance of the Node interface. - *

Invoking addEventListener or - * addEventListenerNS multiple times on the same - * EventTarget with the same parameters ( - * namespaceURI, type, listener, and - * useCapture) is considered to be a no-op and thus - * independently of the event group. They do not cause the - * EventListener to be called more than once and do not cause a - * change in the triggering order. In order to guarantee that an event - * listener will be added to the event target for the specified event group, - * one needs to invoke removeEventListener or - * removeEventListenerNS first. - *

See also the Document Object Model (DOM) Level 3 Events Specification. - * @since DOM Level 2 - */ -public interface EventTarget { - /** - * This method allows the registration of an event listener in the - * default group and, depending on the useCapture - * parameter, on the capture phase of the DOM event flow or its target - * and bubbling phases. - * @param type Specifies the Event.type associated with the - * event for which the user is registering. - * @param listener The listener parameter takes an object - * implemented by the user which implements the - * EventListener interface and contains the method to be - * called when the event occurs. - * @param useCapture If true, useCapture indicates that the - * user wishes to add the event listener for the capture phase only, - * i.e. this event listener will not be triggered during the target - * and bubbling phases. If false, the event listener will - * only be triggered during the target and bubbling phases. - */ - public void addEventListener(String type, - EventListener listener, - boolean useCapture); - - /** - * This method allows the removal of event listeners from the default - * group. - *
Calling removeEventListener with arguments which do - * not identify any currently registered EventListener on - * the EventTarget has no effect. - * @param type Specifies the Event.type for which the user - * registered the event listener. - * @param listener The EventListener to be removed. - * @param useCapture Specifies whether the EventListener - * being removed was registered for the capture phase or not. If a - * listener was registered twice, once for the capture phase and once - * for the target and bubbling phases, each must be removed - * separately. Removal of an event listener registered for the capture - * phase does not affect the same event listener registered for the - * target and bubbling phases, and vice versa. - */ - public void removeEventListener(String type, - EventListener listener, - boolean useCapture); - - /** - * This method allows the dispatch of events into the implementation's - * event model. The event target of the event is the - * EventTarget object on which dispatchEvent - * is called. - * @param evt The event to be dispatched. - * @return Indicates whether any of the listeners which handled the - * event called Event.preventDefault(). If - * Event.preventDefault() was called the returned value - * is false, else it is true. - * @exception EventException - * UNSPECIFIED_EVENT_TYPE_ERR: Raised if the Event.type - * was not specified by initializing the event before - * dispatchEvent was called. Specification of the - * Event.type as null or an empty string - * will also trigger this exception. - *
DISPATCH_REQUEST_ERR: Raised if the Event object is - * already being dispatched in the tree. - *
NOT_SUPPORTED_ERR: Raised if the Event object has - * not been created using DocumentEvent.createEvent() or - * does not support the interface CustomEvent. - * @version DOM Level 3 - */ - public boolean dispatchEvent(Event evt) - throws EventException; - - /** - * This method allows the registration of an event listener in a - * specified group or the default group and, depending on the - * useCapture parameter, on the capture phase of the DOM - * event flow or its target and bubbling phases. - * @param namespaceURI Specifies the Event.namespaceURI - * associated with the event for which the user is registering. - * @param type Specifies the Event.type associated with the - * event for which the user is registering. - * @param listener The listener parameter takes an object - * implemented by the user which implements the - * EventListener interface and contains the method to be - * called when the event occurs. - * @param useCapture If true, useCapture indicates that the - * user wishes to add the event listener for the capture phase only, - * i.e. this event listener will not be triggered during the target - * and bubbling phases. If false, the event listener will - * only be triggered during the target and bubbling phases. - * @param evtGroup The object that represents the event group to - * associate with the EventListener (see also ). Use - * null to attach the event listener to the default - * group. - * @since DOM Level 3 - */ - public void addEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture, - Object evtGroup); - - /** - * This method allows the removal of an event listener, independently of - * the associated event group. - *
Calling removeEventListenerNS with arguments which do - * not identify any currently registered EventListener on - * the EventTarget has no effect. - * @param namespaceURI Specifies the Event.namespaceURI - * associated with the event for which the user registered the event - * listener. - * @param type Specifies the Event.type associated with the - * event for which the user registered the event listener. - * @param listener The EventListener parameter indicates - * the EventListener to be removed. - * @param useCapture Specifies whether the EventListener - * being removed was registered for the capture phase or not. If a - * listener was registered twice, once for the capture phase and once - * for the target and bubbling phases, each must be removed - * separately. Removal of an event listener registered for the capture - * phase does not affect the same event listener registered for the - * target and bubbling phases, and vice versa. - * @since DOM Level 3 - */ - public void removeEventListenerNS(String namespaceURI, - String type, - EventListener listener, - boolean useCapture); - - /** - * This method allows the DOM application to know if an event listener, - * attached to this EventTarget or one of its ancestors, - * will be triggered by the specified event type during the dispatch of - * the event to this event target or one of its descendants. - * @param namespaceURI Specifies the Event.namespaceURI - * associated with the event. - * @param type Specifies the Event.type associated with the - * event. - * @return true if an event listener will be triggered on - * the EventTarget with the specified event type, - * false otherwise. - * @since DOM Level 3 - */ - public boolean willTriggerNS(String namespaceURI, - String type); - - /** - * This method allows the DOM application to know if this - * EventTarget contains an event listener registered for - * the specified event type. This is useful for determining at which - * nodes within a hierarchy altered handling of specific event types has - * been introduced, but should not be used to determine whether the - * specified event type triggers an event listener (see - * EventTarget.willTriggerNS()). - * @param namespaceURI Specifies the Event.namespaceURI - * associated with the event. - * @param type Specifies the Event.type associated with the - * event. - * @return true if an event listener is registered on this - * EventTarget for the specified event type, - * false otherwise. - * @since DOM Level 3 - */ - public boolean hasEventListenerNS(String namespaceURI, - String type); - -} diff --git a/src/bind/java/org/w3c/dom/events/KeyboardEvent.java b/src/bind/java/org/w3c/dom/events/KeyboardEvent.java deleted file mode 100644 index e166f5f77..000000000 --- a/src/bind/java/org/w3c/dom/events/KeyboardEvent.java +++ /dev/null @@ -1,178 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] in the hope that - * it will be useful, but WITHOUT ANY WARRANTY; without even the implied - * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.events; - -import org.w3c.dom.views.AbstractView; - -/** - * The KeyboardEvent interface provides specific contextual - * information associated with keyboard devices. Each keyboard event - * references a key using an identifier. Keyboard events are commonly - * directed at the element that has the focus. - *

The KeyboardEvent interface provides convenient attributes - * for some common modifiers keys: KeyboardEvent.ctrlKey, - * KeyboardEvent.shiftKey, KeyboardEvent.altKey, - * KeyboardEvent.metaKey. These attributes are equivalent to - * use the method - * KeyboardEvent.getModifierState(keyIdentifierArg) with - * "Control", "Shift", "Alt", or "Meta" respectively. - *

To create an instance of the KeyboardEvent interface, use - * the DocumentEvent.createEvent("KeyboardEvent") method call. - *

See also the Document Object Model (DOM) Level 3 Events Specification. - * @since DOM Level 3 - */ -public interface KeyboardEvent extends UIEvent { - // KeyLocationCode - /** - * The key activation is not distinguished as the left or right version - * of the key, and did not originate from the numeric keypad (or did not - * originate with a virtual key corresponding to the numeric keypad). - * Example: the 'Q' key on a PC 101 Key US keyboard. - */ - public static final int DOM_KEY_LOCATION_STANDARD = 0x00; - /** - * The key activated is in the left key location (there is more than one - * possible location for this key). Example: the left Shift key on a PC - * 101 Key US keyboard. - */ - public static final int DOM_KEY_LOCATION_LEFT = 0x01; - /** - * The key activation is in the right key location (there is more than - * one possible location for this key). Example: the right Shift key on - * a PC 101 Key US keyboard. - */ - public static final int DOM_KEY_LOCATION_RIGHT = 0x02; - /** - * The key activation originated on the numeric keypad or with a virtual - * key corresponding to the numeric keypad. Example: the '1' key on a PC - * 101 Key US keyboard located on the numeric pad. - */ - public static final int DOM_KEY_LOCATION_NUMPAD = 0x03; - - /** - * keyIdentifier holds the identifier of the key. The key - * identifiers are defined in Appendix A.2 "". Implementations that are - * unable to identify a key must use the key identifier - * "Unidentified". - */ - public String getKeyIdentifier(); - - /** - * The keyLocation attribute contains an indication of the - * location of they key on the device, as described in . - */ - public int getKeyLocation(); - - /** - * true if the control (Ctrl) key modifier is activated. - */ - public boolean getCtrlKey(); - - /** - * true if the shift (Shift) key modifier is activated. - */ - public boolean getShiftKey(); - - /** - * true if the alternative (Alt) key modifier is activated. - *

Note: The Option key modifier on Macintosh systems must be - * represented using this key modifier. - */ - public boolean getAltKey(); - - /** - * true if the meta (Meta) key modifier is activated. - *

Note: The Command key modifier on Macintosh systems must be - * represented using this key modifier. - */ - public boolean getMetaKey(); - - /** - * This methods queries the state of a modifier using a key identifier. - * See also . - * @param keyIdentifierArg A modifier key identifier. Common modifier - * keys are "Alt", "AltGraph", - * "CapsLock", "Control", "Meta" - * , "NumLock", "Scroll", or - * "Shift". - *

Note: If an application wishes to distinguish between - * right and left modifiers, this information could be deduced using - * keyboard events and KeyboardEvent.keyLocation. - * @return true if it is modifier key and the modifier is - * activated, false otherwise. - */ - public boolean getModifierState(String keyIdentifierArg); - - /** - * The initKeyboardEvent method is used to initialize the - * value of a KeyboardEvent object and has the same - * behavior as UIEvent.initUIEvent(). The value of - * UIEvent.detail remains undefined. - * @param typeArg Refer to the UIEvent.initUIEvent() method - * for a description of this parameter. - * @param canBubbleArg Refer to the UIEvent.initUIEvent() - * method for a description of this parameter. - * @param cancelableArg Refer to the UIEvent.initUIEvent() - * method for a description of this parameter. - * @param viewArg Refer to the UIEvent.initUIEvent() method - * for a description of this parameter. - * @param keyIdentifierArg Specifies - * KeyboardEvent.keyIdentifier. - * @param keyLocationArg Specifies KeyboardEvent.keyLocation - * . - * @param modifiersList A white space separated list of modifier key identifiers to be activated on this - * object. - */ - public void initKeyboardEvent(String typeArg, - boolean canBubbleArg, - boolean cancelableArg, - AbstractView viewArg, - String keyIdentifierArg, - int keyLocationArg, - String modifiersList); - - /** - * The initKeyboardEventNS method is used to initialize the - * value of a KeyboardEvent object and has the same - * behavior as UIEvent.initUIEventNS(). The value of - * UIEvent.detail remains undefined. - * @param namespaceURI Refer to the UIEvent.initUIEventNS() - * method for a description of this parameter. - * @param typeArg Refer to the UIEvent.initUIEventNS() - * method for a description of this parameter. - * @param canBubbleArg Refer to the UIEvent.initUIEventNS() - * method for a description of this parameter. - * @param cancelableArg Refer to the UIEvent.initUIEventNS() - * method for a description of this parameter. - * @param viewArg Refer to the UIEvent.initUIEventNS() - * method for a description of this parameter. - * @param keyIdentifierArg Refer to the - * KeyboardEvent.initKeyboardEvent() method for a - * description of this parameter. - * @param keyLocationArg Refer to the - * KeyboardEvent.initKeyboardEvent() method for a - * description of this parameter. - * @param modifiersList A white space separated list of modifier key identifiers to be activated on this - * object. As an example, "Control Alt" will activated - * the control and alt modifiers. - */ - public void initKeyboardEventNS(String namespaceURI, - String typeArg, - boolean canBubbleArg, - boolean cancelableArg, - AbstractView viewArg, - String keyIdentifierArg, - int keyLocationArg, - String modifiersList); - -} diff --git a/src/bind/java/org/w3c/dom/events/MouseEvent.java b/src/bind/java/org/w3c/dom/events/MouseEvent.java deleted file mode 100644 index 9877e8dbc..000000000 --- a/src/bind/java/org/w3c/dom/events/MouseEvent.java +++ /dev/null @@ -1,219 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] in the hope that - * it will be useful, but WITHOUT ANY WARRANTY; without even the implied - * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.events; - -import org.w3c.dom.views.AbstractView; - -/** - * The MouseEvent interface provides specific contextual - * information associated with Mouse events. - *

In the case of nested elements mouse events are always targeted at the - * most deeply nested element. Ancestors of the targeted element may use - * bubbling to obtain notification of mouse events which occur within theirs - * descendent elements. - *

To create an instance of the MouseEvent interface, use the - * DocumentEvent.createEvent("MouseEvent") method call. - *

Note: When initializing MouseEvent objects using - * initMouseEvent or initMouseEventNS, - * implementations should use the client coordinates clientX - * and clientY for calculation of other coordinates (such as - * target coordinates exposed by DOM Level 0 implementations). - *

See also the Document Object Model (DOM) Level 3 Events Specification. - * @since DOM Level 2 - */ -public interface MouseEvent extends UIEvent { - /** - * The horizontal coordinate at which the event occurred relative to the - * origin of the screen coordinate system. - */ - public int getScreenX(); - - /** - * The vertical coordinate at which the event occurred relative to the - * origin of the screen coordinate system. - */ - public int getScreenY(); - - /** - * The horizontal coordinate at which the event occurred relative to the - * DOM implementation's client area. - */ - public int getClientX(); - - /** - * The vertical coordinate at which the event occurred relative to the DOM - * implementation's client area. - */ - public int getClientY(); - - /** - * true if the control (Ctrl) key modifier is activated. - */ - public boolean getCtrlKey(); - - /** - * true if the shift (Shift) key modifier is activated. - */ - public boolean getShiftKey(); - - /** - * true if the alt (alternative) key modifier is activated. - *

Note: The Option key modifier on Macintosh systems must be - * represented using this key modifier. - */ - public boolean getAltKey(); - - /** - * true if the meta (Meta) key modifier is activated. - *

Note: The Command key modifier on Macintosh system must be - * represented using this meta key. - */ - public boolean getMetaKey(); - - /** - * During mouse events caused by the depression or release of a mouse - * button, button is used to indicate which mouse button - * changed state. 0 indicates the normal button of the - * mouse (in general on the left or the one button on Macintosh mice, - * used to activate a button or select text). 2 indicates - * the contextual property (in general on the right, used to display a - * context menu) button of the mouse if present. 1 - * indicates the extra (in general in the middle and often combined with - * the mouse wheel) button. Some mice may provide or simulate more - * buttons, and values higher than 2 can be used to - * represent such buttons. - */ - public short getButton(); - - /** - * Used to identify a secondary EventTarget related to a UI - * event. Currently this attribute is used with the mouseover event to - * indicate the EventTarget which the pointing device - * exited and with the mouseout event to indicate the - * EventTarget which the pointing device entered. - */ - public EventTarget getRelatedTarget(); - - /** - * The initMouseEvent method is used to initialize the value - * of a MouseEvent object and has the same behavior as - * UIEvent.initUIEvent(). - * @param typeArg Refer to the UIEvent.initUIEvent() method - * for a description of this parameter. - * @param canBubbleArg Refer to the UIEvent.initUIEvent() - * method for a description of this parameter. - * @param cancelableArg Refer to the UIEvent.initUIEvent() - * method for a description of this parameter. - * @param viewArg Refer to the UIEvent.initUIEvent() method - * for a description of this parameter. - * @param detailArg Refer to the UIEvent.initUIEvent() - * method for a description of this parameter. - * @param screenXArg Specifies MouseEvent.screenX. - * @param screenYArg Specifies MouseEvent.screenY. - * @param clientXArg Specifies MouseEvent.clientX. - * @param clientYArg Specifies MouseEvent.clientY. - * @param ctrlKeyArg Specifies MouseEvent.ctrlKey. - * @param altKeyArg Specifies MouseEvent.altKey. - * @param shiftKeyArg Specifies MouseEvent.shiftKey. - * @param metaKeyArg Specifies MouseEvent.metaKey. - * @param buttonArg Specifies MouseEvent.button. - * @param relatedTargetArg Specifies - * MouseEvent.relatedTarget. - */ - public void initMouseEvent(String typeArg, - boolean canBubbleArg, - boolean cancelableArg, - AbstractView viewArg, - int detailArg, - int screenXArg, - int screenYArg, - int clientXArg, - int clientYArg, - boolean ctrlKeyArg, - boolean altKeyArg, - boolean shiftKeyArg, - boolean metaKeyArg, - short buttonArg, - EventTarget relatedTargetArg); - - /** - * This methods queries the state of a modifier using a key identifier. - * See also . - * @param keyIdentifierArg A modifier key identifier, as defined by the - * KeyboardEvent.keyIdentifier attribute. Common modifier - * keys are "Alt", "AltGraph", - * "CapsLock", "Control", "Meta" - * , "NumLock", "Scroll", or - * "Shift". - *

Note: If an application wishes to distinguish between - * right and left modifiers, this information could be deduced using - * keyboard events and KeyboardEvent.keyLocation. - * @return true if it is modifier key and the modifier is - * activated, false otherwise. - * @since DOM Level 3 - */ - public boolean getModifierState(String keyIdentifierArg); - - /** - * The initMouseEventNS method is used to initialize the - * value of a MouseEvent object and has the same behavior - * as UIEvent.initUIEventNS(). - * @param namespaceURI Refer to the UIEvent.initUIEventNS() - * method for a description of this parameter. - * @param typeArg Refer to the UIEvent.initUIEventNS() - * method for a description of this parameter. - * @param canBubbleArg Refer to the UIEvent.initUIEventNS() - * method for a description of this parameter. - * @param cancelableArg Refer to the UIEvent.initUIEventNS() - * method for a description of this parameter. - * @param viewArg Refer to the UIEvent.initUIEventNS() - * method for a description of this parameter. - * @param detailArg Refer to the UIEvent.initUIEventNS() - * method for a description of this parameter. - * @param screenXArg Refer to the - * MouseEvent.initMouseEvent() method for a description - * of this parameter. - * @param screenYArg Refer to the - * MouseEvent.initMouseEvent() method for a description - * of this parameter. - * @param clientXArg Refer to the - * MouseEvent.initMouseEvent() method for a description - * of this parameter. - * @param clientYArg Refer to the - * MouseEvent.initMouseEvent() method for a description - * of this parameter. - * @param buttonArg Refer to the MouseEvent.initMouseEvent() - * method for a description of this parameter. - * @param relatedTargetArg Refer to the - * MouseEvent.initMouseEvent() method for a description - * of this parameter. - * @param modifiersList A white space separated list of modifier key identifiers to be activated on this - * object. As an example, "Control Alt" will activated - * the control and alt modifiers. - * @since DOM Level 3 - */ - public void initMouseEventNS(String namespaceURI, - String typeArg, - boolean canBubbleArg, - boolean cancelableArg, - AbstractView viewArg, - int detailArg, - int screenXArg, - int screenYArg, - int clientXArg, - int clientYArg, - short buttonArg, - EventTarget relatedTargetArg, - String modifiersList); - -} diff --git a/src/bind/java/org/w3c/dom/events/MutationEvent.java b/src/bind/java/org/w3c/dom/events/MutationEvent.java deleted file mode 100644 index 12d8b2f6b..000000000 --- a/src/bind/java/org/w3c/dom/events/MutationEvent.java +++ /dev/null @@ -1,160 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] in the hope that - * it will be useful, but WITHOUT ANY WARRANTY; without even the implied - * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.events; - -import org.w3c.dom.Node; - -/** - * The MutationEvent interface provides specific contextual - * information associated with Mutation events. - *

To create an instance of the MutationEvent interface, use - * the DocumentEvent.createEvent("MutationEvent") method call. - *

See also the Document Object Model (DOM) Level 3 Events Specification. - * @since DOM Level 2 - */ -public interface MutationEvent extends Event { - // attrChangeType - /** - * The Attr was modified in place. - */ - public static final short MODIFICATION = 1; - /** - * The Attr was just added. - */ - public static final short ADDITION = 2; - /** - * The Attr was just removed. - */ - public static final short REMOVAL = 3; - - /** - * relatedNode is used to identify a secondary node related - * to a mutation event. For example, if a mutation event is dispatched - * to a node indicating that its parent has changed, the - * relatedNode is the changed parent. If an event is - * instead dispatched to a subtree indicating a node was changed within - * it, the relatedNode is the changed node. In the case of - * the - * {"http://www.w3.org/2001/xml-events", "DOMAttrModified"} - * event it indicates the Attr node which was modified, - * added, or removed. - */ - public Node getRelatedNode(); - - /** - * prevValue indicates the previous value of the - * Attr node in - * {"http://www.w3.org/2001/xml-events", "DOMAttrModified"} - * events, and of the CharacterData node in - * {"http://www.w3.org/2001/xml-events", "DOMCharacterDataModified"} - * events. - */ - public String getPrevValue(); - - /** - * newValue indicates the new value of the Attr - * node in - * {"http://www.w3.org/2001/xml-events", "DOMAttrModified"} - * events, and of the CharacterData node in - * {"http://www.w3.org/2001/xml-events", "DOMCharacterDataModified"} - * events. - */ - public String getNewValue(); - - /** - * attrName indicates the name of the changed - * Attr node in a - * {"http://www.w3.org/2001/xml-events", "DOMAttrModified"} - * event. - */ - public String getAttrName(); - - /** - * attrChange indicates the type of change which triggered - * the - * {"http://www.w3.org/2001/xml-events", "DOMAttrModified"} - * event. The values can be MODIFICATION, - * ADDITION, or REMOVAL. - */ - public short getAttrChange(); - - /** - * The initMutationEvent method is used to initialize the - * value of a MutationEvent object and has the same - * behavior as Event.initEvent(). - * @param typeArg Refer to the Event.initEvent() method for - * a description of this parameter. - * @param canBubbleArg Refer to the Event.initEvent() - * method for a description of this parameter. - * @param cancelableArg Refer to the Event.initEvent() - * method for a description of this parameter. - * @param relatedNodeArg Specifies MutationEvent.relatedNode - * . - * @param prevValueArg Specifies MutationEvent.prevValue. - * This value may be null. - * @param newValueArg Specifies MutationEvent.newValue. - * This value may be null. - * @param attrNameArg Specifies MutationEvent.attrname. - * This value may be null. - * @param attrChangeArg Specifies MutationEvent.attrChange. - * This value may be null. - */ - public void initMutationEvent(String typeArg, - boolean canBubbleArg, - boolean cancelableArg, - Node relatedNodeArg, - String prevValueArg, - String newValueArg, - String attrNameArg, - short attrChangeArg); - - /** - * The initMutationEventNS method is used to initialize the - * value of a MutationEvent object and has the same - * behavior as Event.initEventNS(). - * @param namespaceURI Refer to the Event.initEventNS() - * method for a description of this parameter. - * @param typeArg Refer to the Event.initEventNS() method - * for a description of this parameter. - * @param canBubbleArg Refer to the Event.initEventNS() - * method for a description of this parameter. - * @param cancelableArg Refer to the Event.initEventNS() - * method for a description of this parameter. - * @param relatedNodeArg Refer to the - * MutationEvent.initMutationEvent() method for a - * description of this parameter. - * @param prevValueArg Refer to the - * MutationEvent.initMutationEvent() method for a - * description of this parameter. - * @param newValueArg Refer to the - * MutationEvent.initMutationEvent() method for a - * description of this parameter. - * @param attrNameArg Refer to the - * MutationEvent.initMutationEvent() method for a - * description of this parameter. - * @param attrChangeArg Refer to the - * MutationEvent.initMutationEvent() method for a - * description of this parameter. - * @since DOM Level 3 - */ - public void initMutationEventNS(String namespaceURI, - String typeArg, - boolean canBubbleArg, - boolean cancelableArg, - Node relatedNodeArg, - String prevValueArg, - String newValueArg, - String attrNameArg, - short attrChangeArg); - -} diff --git a/src/bind/java/org/w3c/dom/events/MutationNameEvent.java b/src/bind/java/org/w3c/dom/events/MutationNameEvent.java deleted file mode 100644 index f5c217198..000000000 --- a/src/bind/java/org/w3c/dom/events/MutationNameEvent.java +++ /dev/null @@ -1,104 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] in the hope that - * it will be useful, but WITHOUT ANY WARRANTY; without even the implied - * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.events; - -import org.w3c.dom.Node; - -/** - * The MutationNameEvent interface provides specific contextual - * information associated with Mutation name event types. - *

To create an instance of the MutationNameEvent interface, - * use the Document.createEvent("MutationNameEvent") method - * call. - *

See also the Document Object Model (DOM) Level 3 Events Specification. - * @since DOM Level 3 - */ -public interface MutationNameEvent extends MutationEvent { - /** - * The previous value of the relatedNode's - * namespaceURI. - */ - public String getPrevNamespaceURI(); - - /** - * The previous value of the relatedNode's - * nodeName. - */ - public String getPrevNodeName(); - - /** - * The initMutationNameEvent method is used to initialize - * the value of a MutationNameEvent object and has the same - * behavior as MutationEvent.initMutationEvent(). - * @param typeArg Refer to the - * MutationEvent.initMutationEvent() method for a - * description of this parameter. - * @param canBubbleArg Refer to the - * MutationEvent.initMutationEvent() method for a - * description of this parameter. - * @param cancelableArg Refer to the - * MutationEvent.initMutationEvent() method for a - * description of this parameter. - * @param relatedNodeArg Refer to the - * MutationEvent.initMutationEvent() method for a - * description of this parameter. - * @param prevNamespaceURIArg Specifies - * MutationNameEvent.prevNamespaceURI. This value may be - * null. - * @param prevNodeNameArg Specifies - * MutationNameEvent.prevNodeName. - * @since DOM Level 3 - */ - public void initMutationNameEvent(String typeArg, - boolean canBubbleArg, - boolean cancelableArg, - Node relatedNodeArg, - String prevNamespaceURIArg, - String prevNodeNameArg); - - /** - * The initMutationNameEventNS method is used to initialize - * the value of a MutationNameEvent object and has the same - * behavior as MutationEvent.initMutationEventNS(). - * @param namespaceURI Refer to the - * MutationEvent.initMutationEventNS() method for a - * description of this parameter. - * @param typeArg Refer to the - * MutationEvent.initMutationEventNS() method for a - * description of this parameter. - * @param canBubbleArg Refer to the - * MutationEvent.initMutationEventNS() method for a - * description of this parameter. - * @param cancelableArg Refer to the - * MutationEvent.initMutationEventNS() method for a - * description of this parameter. - * @param relatedNodeArg Refer to the - * MutationEvent.initMutationEventNS() method for a - * description of this parameter. - * @param prevNamespaceURIArg Refer to the - * MutationEvent.initMutationEvent() method for a - * description of this parameter. - * @param prevNodeNameArg Refer to the - * MutationEvent.initMutationEvent() method for a - * description of this parameter. - * @since DOM Level 3 - */ - public void initMutationNameEventNS(String namespaceURI, - String typeArg, - boolean canBubbleArg, - boolean cancelableArg, - Node relatedNodeArg, - String prevNamespaceURIArg, - String prevNodeNameArg); - -} diff --git a/src/bind/java/org/w3c/dom/events/TextEvent.java b/src/bind/java/org/w3c/dom/events/TextEvent.java deleted file mode 100644 index 4ba5f5abf..000000000 --- a/src/bind/java/org/w3c/dom/events/TextEvent.java +++ /dev/null @@ -1,81 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] in the hope that - * it will be useful, but WITHOUT ANY WARRANTY; without even the implied - * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.events; - -import org.w3c.dom.views.AbstractView; - -/** - * The TextEvent interface provides specific contextual - * information associated with Text Events. - *

To create an instance of the TextEvent interface, use the - * DocumentEvent.createEvent("TextEvent") method call. - *

See also the Document Object Model (DOM) Level 3 Events Specification. - * @since DOM Level 3 - */ -public interface TextEvent extends UIEvent { - /** - * data holds the value of the characters generated by the - * character device. This may be a single Unicode character or a - * non-empty sequence of Unicode characters [Unicode]. Characters should be normalized as defined by the Unicode - * normalization form NFC, defined in [UTR #15]. This - * attribute cannot be null or contain the empty string. - */ - public String getData(); - - /** - * The initTextEvent method is used to initialize the value - * of a TextEvent object and has the same behavior as - * UIEvent.initUIEvent(). The value of - * UIEvent.detail remains undefined. - * @param typeArg Refer to the UIEvent.initUIEvent() method - * for a description of this parameter. - * @param canBubbleArg Refer to the UIEvent.initUIEvent() - * method for a description of this parameter. - * @param cancelableArg Refer to the UIEvent.initUIEvent() - * method for a description of this parameter. - * @param viewArg Refer to the UIEvent.initUIEvent() method - * for a description of this parameter. - * @param dataArg Specifies TextEvent.data. - */ - public void initTextEvent(String typeArg, - boolean canBubbleArg, - boolean cancelableArg, - AbstractView viewArg, - String dataArg); - - /** - * The initTextEventNS method is used to initialize the - * value of a TextEvent object and has the same behavior as - * UIEvent.initUIEventNS(). The value of - * UIEvent.detail remains undefined. - * @param namespaceURI Refer to the UIEvent.initUIEventNS() - * method for a description of this parameter. - * @param type Refer to the UIEvent.initUIEventNS() method - * for a description of this parameter. - * @param canBubbleArg Refer to the UIEvent.initUIEventNS() - * method for a description of this parameter. - * @param cancelableArg Refer to the UIEvent.initUIEventNS() - * method for a description of this parameter. - * @param viewArg Refer to the UIEvent.initUIEventNS() - * method for a description of this parameter. - * @param dataArg Refer to the TextEvent.initTextEvent() - * method for a description of this parameter. - */ - public void initTextEventNS(String namespaceURI, - String type, - boolean canBubbleArg, - boolean cancelableArg, - AbstractView viewArg, - String dataArg); - -} diff --git a/src/bind/java/org/w3c/dom/events/UIEvent.java b/src/bind/java/org/w3c/dom/events/UIEvent.java deleted file mode 100644 index e4a819c73..000000000 --- a/src/bind/java/org/w3c/dom/events/UIEvent.java +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Copyright (c) 2003 World Wide Web Consortium, - * - * (Massachusetts Institute of Technology, European Research Consortium for - * Informatics and Mathematics, Keio University). All Rights Reserved. This - * work is distributed under the W3C(r) Software License [1] in the hope that - * it will be useful, but WITHOUT ANY WARRANTY; without even the implied - * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - * - * [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231 - */ - -package org.w3c.dom.events; - -import org.w3c.dom.views.AbstractView; - -/** - * The UIEvent interface provides specific contextual - * information associated with User Interface events. - *

To create an instance of the UIEvent interface, use the - * DocumentEvent.createEvent("UIEvent") method call. - *

See also the Document Object Model (DOM) Level 3 Events Specification. - * @since DOM Level 2 - */ -public interface UIEvent extends Event { - /** - * The view attribute identifies the AbstractView - * from which the event was generated. - */ - public AbstractView getView(); - - /** - * Specifies some detail information about the Event, - * depending on the type of event. - */ - public int getDetail(); - - /** - * The initUIEvent method is used to initialize the value of - * a UIEvent object and has the same behavior as - * Event.initEvent(). - * @param typeArg Refer to the Event.initEvent() method for - * a description of this parameter. - * @param canBubbleArg Refer to the Event.initEvent() - * method for a description of this parameter. - * @param cancelableArg Refer to the Event.initEvent() - * method for a description of this parameter. - * @param viewArg Specifies UIEvent.view. - * @param detailArg Specifies UIEvent.detail. - */ - public void initUIEvent(String typeArg, - boolean canBubbleArg, - boolean cancelableArg, - AbstractView viewArg, - int detailArg); - - /** - * The initUIEventNS method is used to initialize the value - * of a UIEvent object and has the same behavior as - * Event.initEventNS(). - * @param namespaceURI Refer to the Event.initEventNS() - * method for a description of this parameter. - * @param typeArg Refer to the Event.initEventNS() method - * for a description of this parameter. - * @param canBubbleArg Refer to the Event.initEventNS() - * method for a description of this parameter. - * @param cancelableArg Refer to the Event.initEventNS() - * method for a description of this parameter. - * @param viewArg Refer to the UIEvent.initUIEvent() method - * for a description of this parameter. - * @param detailArg Refer to the UIEvent.initUIEvent() - * method for a description of this parameter. - * @since DOM Level 3 - */ - public void initUIEventNS(String namespaceURI, - String typeArg, - boolean canBubbleArg, - boolean cancelableArg, - AbstractView viewArg, - int detailArg); - -} diff --git a/src/bind/java/org/w3c/dom/smil/ElementExclusiveTimeContainer.java b/src/bind/java/org/w3c/dom/smil/ElementExclusiveTimeContainer.java deleted file mode 100644 index 84c7a14b4..000000000 --- a/src/bind/java/org/w3c/dom/smil/ElementExclusiveTimeContainer.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -import org.w3c.dom.DOMException; -import org.w3c.dom.NodeList; - -/** - * This interface defines a time container with semantics based upon par, but - * with the additional constraint that only one child element may play at a - * time. - */ -public interface ElementExclusiveTimeContainer extends ElementTimeContainer { - /** - * Controls the end of the container. Need to address thr id-ref value. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getEndSync(); - public void setEndSync(String endSync) - throws DOMException; - - /** - * This should support another method to get the ordered collection of - * paused elements (the paused stack) at a given point in time. - * @return All paused elements at the current time. - */ - public NodeList getPausedElements(); - -} - diff --git a/src/bind/java/org/w3c/dom/smil/ElementLayout.java b/src/bind/java/org/w3c/dom/smil/ElementLayout.java deleted file mode 100644 index 7f3128fae..000000000 --- a/src/bind/java/org/w3c/dom/smil/ElementLayout.java +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -import org.w3c.dom.DOMException; - -/** - * This interface is used by SMIL elements root-layout, top-layout and region. - * - */ -public interface ElementLayout { - /** - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getTitle(); - public void setTitle(String title) - throws DOMException; - - /** - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getBackgroundColor(); - public void setBackgroundColor(String backgroundColor) - throws DOMException; - - /** - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public int getHeight(); - public void setHeight(int height) - throws DOMException; - - /** - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public int getWidth(); - public void setWidth(int width) - throws DOMException; - -} - diff --git a/src/bind/java/org/w3c/dom/smil/ElementParallelTimeContainer.java b/src/bind/java/org/w3c/dom/smil/ElementParallelTimeContainer.java deleted file mode 100644 index a796bc7be..000000000 --- a/src/bind/java/org/w3c/dom/smil/ElementParallelTimeContainer.java +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -import org.w3c.dom.DOMException; - -/** - * A parallel container defines a simple parallel time grouping - * in which multiple elements can play back at the same time. It may have to - * specify a repeat iteration. (?) - */ -public interface ElementParallelTimeContainer extends ElementTimeContainer { - /** - * Controls the end of the container. Need to address thr id-ref value. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getEndSync(); - public void setEndSync(String endSync) - throws DOMException; - - /** - * This method returns the implicit duration in seconds. - * @return The implicit duration in seconds or -1 if the implicit is - * unknown (indefinite?). - */ - public float getImplicitDuration(); - -} - diff --git a/src/bind/java/org/w3c/dom/smil/ElementSequentialTimeContainer.java b/src/bind/java/org/w3c/dom/smil/ElementSequentialTimeContainer.java deleted file mode 100644 index bca584164..000000000 --- a/src/bind/java/org/w3c/dom/smil/ElementSequentialTimeContainer.java +++ /dev/null @@ -1,21 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -/** - * A seq container defines a sequence of elements in which - * elements play one after the other. - */ -public interface ElementSequentialTimeContainer extends ElementTimeContainer { -} - diff --git a/src/bind/java/org/w3c/dom/smil/ElementSyncBehavior.java b/src/bind/java/org/w3c/dom/smil/ElementSyncBehavior.java deleted file mode 100644 index e75feccc0..000000000 --- a/src/bind/java/org/w3c/dom/smil/ElementSyncBehavior.java +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -/** - * The synchronization behavior extension. - */ -public interface ElementSyncBehavior { - /** - * The runtime synchronization behavior for an element. - */ - public String getSyncBehavior(); - - /** - * The sync tolerance for the associated element. It has an effect only if - * the element has syncBehavior="locked" . - */ - public float getSyncTolerance(); - - /** - * Defines the default value for the runtime synchronization behavior for - * an element, and all descendents. - */ - public String getDefaultSyncBehavior(); - - /** - * Defines the default value for the sync tolerance for an element, and - * all descendents. - */ - public float getDefaultSyncTolerance(); - - /** - * If set to true, forces the time container playback to sync to this - * element. - */ - public boolean getSyncMaster(); - -} - diff --git a/src/bind/java/org/w3c/dom/smil/ElementTargetAttributes.java b/src/bind/java/org/w3c/dom/smil/ElementTargetAttributes.java deleted file mode 100644 index 23a37b638..000000000 --- a/src/bind/java/org/w3c/dom/smil/ElementTargetAttributes.java +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -/** - * This interface define the set of animation target extensions. - */ -public interface ElementTargetAttributes { - /** - * The name of the target attribute. - */ - public String getAttributeName(); - public void setAttributeName(String attributeName); - - // attributeTypes - public static final short ATTRIBUTE_TYPE_AUTO = 0; - public static final short ATTRIBUTE_TYPE_CSS = 1; - public static final short ATTRIBUTE_TYPE_XML = 2; - - /** - * A code representing the value of the attributeType attribute, as - * defined above. Default value is ATTRIBUTE_TYPE_CODE . - */ - public short getAttributeType(); - public void setAttributeType(short attributeType); - -} - diff --git a/src/bind/java/org/w3c/dom/smil/ElementTest.java b/src/bind/java/org/w3c/dom/smil/ElementTest.java deleted file mode 100644 index 78fe497d5..000000000 --- a/src/bind/java/org/w3c/dom/smil/ElementTest.java +++ /dev/null @@ -1,83 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -import org.w3c.dom.DOMException; - -/** - * Defines the test attributes interface. See the Test attributes definition - * . - */ -public interface ElementTest { - /** - * The systemBitrate value. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public int getSystemBitrate(); - public void setSystemBitrate(int systemBitrate) - throws DOMException; - - /** - * The systemCaptions value. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public boolean getSystemCaptions(); - public void setSystemCaptions(boolean systemCaptions) - throws DOMException; - - /** - * The systemLanguage value. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getSystemLanguage(); - public void setSystemLanguage(String systemLanguage) - throws DOMException; - - /** - * The result of the evaluation of the systemRequired attribute. - */ - public boolean getSystemRequired(); - - /** - * The result of the evaluation of the systemScreenSize attribute. - */ - public boolean getSystemScreenSize(); - - /** - * The result of the evaluation of the systemScreenDepth attribute. - */ - public boolean getSystemScreenDepth(); - - /** - * The value of the systemOverdubOrSubtitle attribute. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getSystemOverdubOrSubtitle(); - public void setSystemOverdubOrSubtitle(String systemOverdubOrSubtitle) - throws DOMException; - - /** - * The value of the systemAudioDesc attribute. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public boolean getSystemAudioDesc(); - public void setSystemAudioDesc(boolean systemAudioDesc) - throws DOMException; - -} - diff --git a/src/bind/java/org/w3c/dom/smil/ElementTime.java b/src/bind/java/org/w3c/dom/smil/ElementTime.java deleted file mode 100644 index 715d46ac9..000000000 --- a/src/bind/java/org/w3c/dom/smil/ElementTime.java +++ /dev/null @@ -1,150 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -import org.w3c.dom.DOMException; - -/** - * This interface defines the set of timing attributes that are common to all - * timed elements. - */ -public interface ElementTime { - /** - * The desired value (as a list of times) of the begin instant of this - * node. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public TimeList getBegin(); - public void setBegin(TimeList begin) - throws DOMException; - - /** - * The list of active ends for this node. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public TimeList getEnd(); - public void setEnd(TimeList end) - throws DOMException; - - /** - * The desired simple duration value of this node in seconds. Negative - * value means "indefinite". - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public float getDur(); - public void setDur(float dur) - throws DOMException; - - // restartTypes - public static final short RESTART_ALWAYS = 0; - public static final short RESTART_NEVER = 1; - public static final short RESTART_WHEN_NOT_ACTIVE = 2; - - /** - * A code representing the value of the restart attribute, as defined - * above. Default value is RESTART_ALWAYS . - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public short getRestart(); - public void setRestart(short restart) - throws DOMException; - - // fillTypes - public static final short FILL_REMOVE = 0; - public static final short FILL_FREEZE = 1; - - /** - * A code representing the value of the fill attribute, as defined - * above. Default value is FILL_REMOVE . - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public short getFill(); - public void setFill(short fill) - throws DOMException; - - /** - * The repeatCount attribute causes the element to play repeatedly - * (loop) for the specified number of times. A negative value repeat the - * element indefinitely. Default value is 0 (unspecified). - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public float getRepeatCount(); - public void setRepeatCount(float repeatCount) - throws DOMException; - - /** - * The repeatDur causes the element to play repeatedly (loop) for the - * specified duration in milliseconds. Negative means "indefinite". - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public float getRepeatDur(); - public void setRepeatDur(float repeatDur) - throws DOMException; - - /** - * Causes this element to begin the local timeline (subject to sync - * constraints). - * @return true if the method call was successful and the - * element was begun. false if the method call failed. - * Possible reasons for failure include: The element doesn't support - * the beginElement method. (the beginEvent - * attribute is not set to "undefinite" ) The element is - * already active and can't be restart when it is active. (the - * restart attribute is set to "whenNotActive" - * ) The element is active or has been active and can't be restart. - * (the restart attribute is set to "never" ). - * - */ - public boolean beginElement(); - - /** - * Causes this element to end the local timeline (subject to sync - * constraints). - * @return true if the method call was successful and the - * element was endeed. false if method call failed. - * Possible reasons for failure include: The element doesn't support - * the endElement method. (the endEvent - * attribute is not set to "undefinite" ) The element is - * not active. - */ - public boolean endElement(); - - /** - * Causes this element to pause the local timeline (subject to sync - * constraints). - */ - public void pauseElement(); - - /** - * Causes this element to resume a paused local timeline. - */ - public void resumeElement(); - - /** - * Seeks this element to the specified point on the local timeline - * (subject to sync constraints). If this is a timeline, this must seek - * the entire timeline (i.e. propagate to all timeChildren). - * @param seekTo The desired position on the local timeline in - * milliseconds. - */ - public void seekElement(float seekTo); - -} - diff --git a/src/bind/java/org/w3c/dom/smil/ElementTimeContainer.java b/src/bind/java/org/w3c/dom/smil/ElementTimeContainer.java deleted file mode 100644 index 69b39e820..000000000 --- a/src/bind/java/org/w3c/dom/smil/ElementTimeContainer.java +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -import org.w3c.dom.NodeList; - -/** - * This is a placeholder - subject to change. This represents generic - * timelines. - */ -public interface ElementTimeContainer extends ElementTime { - /** - * A NodeList that contains all timed childrens of this node. If there are - * no timed children, the Nodelist is empty. An iterator - * is more appropriate here than a node list but it requires Traversal - * module support. - */ - public NodeList getTimeChildren(); - - /** - * Returns a list of child elements active at the specified invocation. - * @param instant The desired position on the local timeline in - * milliseconds. - * @return List of timed child-elements active at instant. - */ - public NodeList getActiveChildrenAt(float instant); - -} - diff --git a/src/bind/java/org/w3c/dom/smil/ElementTimeControl.java b/src/bind/java/org/w3c/dom/smil/ElementTimeControl.java deleted file mode 100644 index e546b3609..000000000 --- a/src/bind/java/org/w3c/dom/smil/ElementTimeControl.java +++ /dev/null @@ -1,103 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -import org.w3c.dom.DOMException; - -/** - */ -public interface ElementTimeControl { - /** - * Causes this element to begin the local timeline (subject to sync - * constraints). - * @return true if the method call was successful and the - * element was begun. false if the method call failed. - * Possible reasons for failure include: The element doesn't support - * the beginElement method. (the begin - * attribute is not set to "indefinite" ) The element is - * already active and can't be restart when it is active. (the - * restart attribute is set to "whenNotActive" - * ) The element is active or has been active and can't be restart. - * (the restart attribute is set to "never" ). - * - * @exception DOMException - * SYNTAX_ERR: The element was not defined with the appropriate syntax - * to allow beginElement calls. - */ - public boolean beginElement() - throws DOMException; - - /** - * Causes this element to begin the local timeline (subject to sync - * constraints), at the passed offset from the current time when the - * method is called. If the offset is >= 0, the semantics are - * equivalent to an event-base begin with the specified offset. If the - * offset is < 0, the semantics are equivalent to beginElement(), but - * the element active duration is evaluated as though the element had - * begun at the passed (negative) offset from the current time when the - * method is called. - * @param offset The offset in seconds at which to begin the element. - * @return true if the method call was successful and the - * element was begun. false if the method call failed. - * Possible reasons for failure include: The element doesn't support - * the beginElementAt method. (the begin - * attribute is not set to "indefinite" ) The element is - * already active and can't be restart when it is active. (the - * restart attribute is set to "whenNotActive" - * ) The element is active or has been active and can't be restart. - * (the restart attribute is set to "never" ). - * - * @exception DOMException - * SYNTAX_ERR: The element was not defined with the appropriate syntax - * to allow beginElementAt calls. - */ - public boolean beginElementAt(float offset) - throws DOMException; - - /** - * Causes this element to end the local timeline (subject to sync - * constraints). - * @return true if the method call was successful and the - * element was ended. false if method call failed. - * Possible reasons for failure include: The element doesn't support - * the endElement method. (the end attribute - * is not set to "indefinite" ) The element is not active. - * - * @exception DOMException - * SYNTAX_ERR: The element was not defined with the appropriate syntax - * to allow endElement calls. - */ - public boolean endElement() - throws DOMException; - - /** - * Causes this element to end the local timeline (subject to sync - * constraints) at the specified offset from the current time when the - * method is called. - * @param offset The offset in seconds at which to end the element. Must - * be >= 0. - * @return true if the method call was successful and the - * element was ended. false if method call failed. - * Possible reasons for failure include: The element doesn't support - * the endElementAt method. (the end - * attribute is not set to "indefinite" ) The element is - * not active. - * @exception DOMException - * SYNTAX_ERR: The element was not defined with the appropriate syntax - * to allow endElementAt calls. - */ - public boolean endElementAt(float offset) - throws DOMException; - -} - diff --git a/src/bind/java/org/w3c/dom/smil/ElementTimeManipulation.java b/src/bind/java/org/w3c/dom/smil/ElementTimeManipulation.java deleted file mode 100644 index bb83326e6..000000000 --- a/src/bind/java/org/w3c/dom/smil/ElementTimeManipulation.java +++ /dev/null @@ -1,75 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -import org.w3c.dom.DOMException; - -/** - * This interface support use-cases commonly associated with animation. - * "accelerate" and "decelerate" are float values in the timing draft and - * percentage values even in this draft if both of them represent a - * percentage. - */ -public interface ElementTimeManipulation { - /** - * Defines the playback speed of element time. The value is specified as - * a multiple of normal (parent time container) play speed. Legal values - * are signed floating point values. Zero values are not allowed. The - * default is 1.0 (no modification of speed). - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public float getSpeed(); - public void setSpeed(float speed) - throws DOMException; - - /** - * The percentage value of the simple acceleration of time for the - * element. Allowed values are from 0 to 100 . - * Default value is 0 (no acceleration). - *
The sum of the values for accelerate and decelerate must not exceed - * 100. If it does, the deceleration value will be reduced to make the - * sum legal. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public float getAccelerate(); - public void setAccelerate(float accelerate) - throws DOMException; - - /** - * The percentage value of the simple decelerate of time for the - * element. Allowed values are from 0 to 100 . - * Default value is 0 (no deceleration). - *
The sum of the values for accelerate and decelerate must not exceed - * 100. If it does, the deceleration value will be reduced to make the - * sum legal. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public float getDecelerate(); - public void setDecelerate(float decelerate) - throws DOMException; - - /** - * The autoReverse attribute controls the "play forwards then backwards" - * functionality. Default value is false . - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public boolean getAutoReverse(); - public void setAutoReverse(boolean autoReverse) - throws DOMException; - -} - diff --git a/src/bind/java/org/w3c/dom/smil/SMILAnimateColorElement.java b/src/bind/java/org/w3c/dom/smil/SMILAnimateColorElement.java deleted file mode 100644 index 9bd9d13a6..000000000 --- a/src/bind/java/org/w3c/dom/smil/SMILAnimateColorElement.java +++ /dev/null @@ -1,20 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -/** - * This interface represents the SMIL animateColor element. - */ -public interface SMILAnimateColorElement extends SMILAnimation { -} - diff --git a/src/bind/java/org/w3c/dom/smil/SMILAnimateElement.java b/src/bind/java/org/w3c/dom/smil/SMILAnimateElement.java deleted file mode 100644 index 9393e00c5..000000000 --- a/src/bind/java/org/w3c/dom/smil/SMILAnimateElement.java +++ /dev/null @@ -1,20 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -/** - * This interface represents the SMIL animate element. - */ -public interface SMILAnimateElement extends SMILAnimation { -} - diff --git a/src/bind/java/org/w3c/dom/smil/SMILAnimateMotionElement.java b/src/bind/java/org/w3c/dom/smil/SMILAnimateMotionElement.java deleted file mode 100644 index 6a140ad9f..000000000 --- a/src/bind/java/org/w3c/dom/smil/SMILAnimateMotionElement.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -import org.w3c.dom.DOMException; - -/** - * This interface present the animationMotion element in SMIL. - */ -public interface SMILAnimateMotionElement extends SMILAnimateElement { - /** - * Specifies the curve that describes the attribute value as a function - * of time. Check with the SVG spec for better support - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getPath(); - public void setPath(String path) - throws DOMException; - - /** - * Specifies the origin of motion for the animation. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getOrigin(); - public void setOrigin(String origin) - throws DOMException; - -} - diff --git a/src/bind/java/org/w3c/dom/smil/SMILAnimation.java b/src/bind/java/org/w3c/dom/smil/SMILAnimation.java deleted file mode 100644 index 8615dfaeb..000000000 --- a/src/bind/java/org/w3c/dom/smil/SMILAnimation.java +++ /dev/null @@ -1,124 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -import org.w3c.dom.DOMException; - -/** - * This interface define the set of animation extensions for SMIL. The - * attributes will go in a XLink interface. - */ -public interface SMILAnimation extends SMILElement, ElementTargetAttributes, ElementTime, ElementTimeControl { - // additiveTypes - public static final short ADDITIVE_REPLACE = 0; - public static final short ADDITIVE_SUM = 1; - - /** - * A code representing the value of the additive attribute, as defined - * above. Default value is ADDITIVE_REPLACE . - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public short getAdditive(); - public void setAdditive(short additive) - throws DOMException; - - // accumulateTypes - public static final short ACCUMULATE_NONE = 0; - public static final short ACCUMULATE_SUM = 1; - - /** - * A code representing the value of the accumulate attribute, as defined - * above. Default value is ACCUMULATE_NONE . - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public short getAccumulate(); - public void setAccumulate(short accumulate) - throws DOMException; - - // calcModeTypes - public static final short CALCMODE_DISCRETE = 0; - public static final short CALCMODE_LINEAR = 1; - public static final short CALCMODE_PACED = 2; - public static final short CALCMODE_SPLINE = 3; - - /** - * A code representing the value of the calcMode attribute, as defined - * above. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public short getCalcMode(); - public void setCalcMode(short calcMode) - throws DOMException; - - /** - * A DOMString representing the value of the keySplines - * attribute. Need an interface a point (x1,y1,x2,y2) - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getKeySplines(); - public void setKeySplines(String keySplines) - throws DOMException; - - /** - * A list of the time value of the keyTimes attribute. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public TimeList getKeyTimes(); - public void setKeyTimes(TimeList keyTimes) - throws DOMException; - - /** - * A DOMString representing the value of the values - * attribute. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getValues(); - public void setValues(String values) - throws DOMException; - - /** - * A DOMString representing the value of the from attribute. - * - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getFrom(); - public void setFrom(String from) - throws DOMException; - - /** - * A DOMString representing the value of the to attribute. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getTo(); - public void setTo(String to) - throws DOMException; - - /** - * A DOMString representing the value of the by attribute. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getBy(); - public void setBy(String by) - throws DOMException; - -} - diff --git a/src/bind/java/org/w3c/dom/smil/SMILDocument.java b/src/bind/java/org/w3c/dom/smil/SMILDocument.java deleted file mode 100644 index 5f54dd329..000000000 --- a/src/bind/java/org/w3c/dom/smil/SMILDocument.java +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -import org.w3c.dom.Document; - -/** - * A SMIL document is the root of the SMIL Hierarchy and holds the entire - * content. Beside providing access to the hierarchy, it also provides some - * convenience methods for accessing certain sets of information from the - * document. Cover document timing, document locking?, linking modality and - * any other document level issues. Are there issues with nested SMIL files? - * Is it worth talking about different document scenarios, corresponding to - * differing profiles? E.g. Standalone SMIL, HTML integration, etc. - */ -public interface SMILDocument extends Document, ElementSequentialTimeContainer { -} - diff --git a/src/bind/java/org/w3c/dom/smil/SMILElement.java b/src/bind/java/org/w3c/dom/smil/SMILElement.java deleted file mode 100644 index 748de23fc..000000000 --- a/src/bind/java/org/w3c/dom/smil/SMILElement.java +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -import org.w3c.dom.DOMException; -import org.w3c.dom.Element; - -/** - * The SMILElement interface is the base for all SMIL element - * types. It follows the model of the HTMLElement in the HTML - * DOM, extending the base Element class to denote SMIL-specific - * elements. - *

Note that the SMILElement interface overlaps with the - * HTMLElement interface. In practice, an integrated document - * profile that include HTML and SMIL modules will effectively implement both - * interfaces (see also the DOM documentation discussion of Inheritance vs - * Flattened Views of the API ). // etc. This needs attention - */ -public interface SMILElement extends Element { - /** - * The unique id. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getId(); - public void setId(String id) - throws DOMException; - -} - diff --git a/src/bind/java/org/w3c/dom/smil/SMILLayoutElement.java b/src/bind/java/org/w3c/dom/smil/SMILLayoutElement.java deleted file mode 100644 index 2d6136db3..000000000 --- a/src/bind/java/org/w3c/dom/smil/SMILLayoutElement.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -/** - * Declares layout type for the document. See the LAYOUT element definition . - * - */ -public interface SMILLayoutElement extends SMILElement { - /** - * The mime type of the layout langage used in this layout element.The - * default value of the type attribute is "text/smil-basic-layout". - */ - public String getType(); - - /** - * true if the player can understand the mime type, - * false otherwise. - */ - public boolean getResolved(); - -} - diff --git a/src/bind/java/org/w3c/dom/smil/SMILMediaElement.java b/src/bind/java/org/w3c/dom/smil/SMILMediaElement.java deleted file mode 100644 index d6a2d2de2..000000000 --- a/src/bind/java/org/w3c/dom/smil/SMILMediaElement.java +++ /dev/null @@ -1,157 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -import org.w3c.dom.DOMException; - -/** - * Declares media content. - */ -public interface SMILMediaElement extends ElementTime, SMILElement { - /** - * See the abstract attribute from . - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getAbstractAttr(); - public void setAbstractAttr(String abstractAttr) - throws DOMException; - - /** - * See the alt attribute from . - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getAlt(); - public void setAlt(String alt) - throws DOMException; - - /** - * See the author attribute from . - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getAuthor(); - public void setAuthor(String author) - throws DOMException; - - /** - * See the clipBegin attribute from . - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getClipBegin(); - public void setClipBegin(String clipBegin) - throws DOMException; - - /** - * See the clipEnd attribute from . - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getClipEnd(); - public void setClipEnd(String clipEnd) - throws DOMException; - - /** - * See the copyright attribute from . - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getCopyright(); - public void setCopyright(String copyright) - throws DOMException; - - /** - * See the longdesc attribute from . - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getLongdesc(); - public void setLongdesc(String longdesc) - throws DOMException; - - /** - * See the port attribute from . - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getPort(); - public void setPort(String port) - throws DOMException; - - /** - * See the readIndex attribute from . - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getReadIndex(); - public void setReadIndex(String readIndex) - throws DOMException; - - /** - * See the rtpformat attribute from . - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getRtpformat(); - public void setRtpformat(String rtpformat) - throws DOMException; - - /** - * See the src attribute from . - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getSrc(); - public void setSrc(String src) - throws DOMException; - - /** - * See the stripRepeat attribute from . - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getStripRepeat(); - public void setStripRepeat(String stripRepeat) - throws DOMException; - - /** - * See the title attribute from . - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getTitle(); - public void setTitle(String title) - throws DOMException; - - /** - * See the transport attribute from . - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getTransport(); - public void setTransport(String transport) - throws DOMException; - - /** - * See the type attribute from . - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getType(); - public void setType(String type) - throws DOMException; - -} - diff --git a/src/bind/java/org/w3c/dom/smil/SMILRefElement.java b/src/bind/java/org/w3c/dom/smil/SMILRefElement.java deleted file mode 100644 index adeb2b354..000000000 --- a/src/bind/java/org/w3c/dom/smil/SMILRefElement.java +++ /dev/null @@ -1,20 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -/** - * // audio, video, ... - */ -public interface SMILRefElement extends SMILMediaElement { -} - diff --git a/src/bind/java/org/w3c/dom/smil/SMILRegionElement.java b/src/bind/java/org/w3c/dom/smil/SMILRegionElement.java deleted file mode 100644 index 927fb4007..000000000 --- a/src/bind/java/org/w3c/dom/smil/SMILRegionElement.java +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -import org.w3c.dom.DOMException; - -/** - * Controls the position, size and scaling of media object elements. See the - * region element definition . - */ -public interface SMILRegionElement extends SMILElement, ElementLayout { - /** - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getFit(); - public void setFit(String fit) - throws DOMException; - - /** - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public String getTop(); - public void setTop(String top) - throws DOMException; - - /** - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this attribute is readonly. - */ - public int getZIndex(); - public void setZIndex(int zIndex) - throws DOMException; - -} - diff --git a/src/bind/java/org/w3c/dom/smil/SMILRegionInterface.java b/src/bind/java/org/w3c/dom/smil/SMILRegionInterface.java deleted file mode 100644 index b5e43c3b2..000000000 --- a/src/bind/java/org/w3c/dom/smil/SMILRegionInterface.java +++ /dev/null @@ -1,26 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -/** - * Declares rendering surface for an element. See the region attribute - * definition . - */ -public interface SMILRegionInterface { - /** - */ - public SMILRegionElement getRegion(); - public void setRegion(SMILRegionElement region); - -} - diff --git a/src/bind/java/org/w3c/dom/smil/SMILRootLayoutElement.java b/src/bind/java/org/w3c/dom/smil/SMILRootLayoutElement.java deleted file mode 100644 index 327ecd6b2..000000000 --- a/src/bind/java/org/w3c/dom/smil/SMILRootLayoutElement.java +++ /dev/null @@ -1,21 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -/** - * Declares layout properties for the root-layout element. See the - * root-layout element definition . - */ -public interface SMILRootLayoutElement extends SMILElement, ElementLayout { -} - diff --git a/src/bind/java/org/w3c/dom/smil/SMILSetElement.java b/src/bind/java/org/w3c/dom/smil/SMILSetElement.java deleted file mode 100644 index 8e0b1b72f..000000000 --- a/src/bind/java/org/w3c/dom/smil/SMILSetElement.java +++ /dev/null @@ -1,27 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -/** - * This interface represents the set element. - */ -public interface SMILSetElement extends ElementTimeControl, ElementTime, ElementTargetAttributes, SMILElement { - /** - * Specifies the value for the attribute during the duration of this - * element. - */ - public String getTo(); - public void setTo(String to); - -} - diff --git a/src/bind/java/org/w3c/dom/smil/SMILSwitchElement.java b/src/bind/java/org/w3c/dom/smil/SMILSwitchElement.java deleted file mode 100644 index 27abb91cf..000000000 --- a/src/bind/java/org/w3c/dom/smil/SMILSwitchElement.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -import org.w3c.dom.Element; - -/** - * Defines a block of content control. See the switch element definition . - */ -public interface SMILSwitchElement extends SMILElement { - /** - * Returns the slected element at runtime. null if the - * selected element is not yet available. - * @return The selected Element for thisd switch - * element. - */ - public Element getSelectedElement(); - -} - diff --git a/src/bind/java/org/w3c/dom/smil/SMILTopLayoutElement.java b/src/bind/java/org/w3c/dom/smil/SMILTopLayoutElement.java deleted file mode 100644 index 26214191b..000000000 --- a/src/bind/java/org/w3c/dom/smil/SMILTopLayoutElement.java +++ /dev/null @@ -1,21 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -/** - * Declares layout properties for the top-layout element. See the top-layout - * element definition . - */ -public interface SMILTopLayoutElement extends SMILElement, ElementLayout { -} - diff --git a/src/bind/java/org/w3c/dom/smil/Time.java b/src/bind/java/org/w3c/dom/smil/Time.java deleted file mode 100644 index 72fe08668..000000000 --- a/src/bind/java/org/w3c/dom/smil/Time.java +++ /dev/null @@ -1,119 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -import org.w3c.dom.DOMException; -import org.w3c.dom.Element; - -/** - * The Time interface is a datatype that represents times within - * the timegraph. A Time has a type, key values to describe the - * time, and a boolean to indicate whether the values are currently - * unresolved. Still need to address the wallclock values. - */ -public interface Time { - /** - * A boolean indicating whether the current Time has been - * fully resolved to the document schedule. Note that for this to be - * true, the current Time must be defined (not indefinite), - * the syncbase and all Time 's that the syncbase depends on - * must be defined (not indefinite), and the begin Time of - * all ascendent time containers of this element and all Time - * elements that this depends upon must be defined (not indefinite). - *
If this Time is based upon an event, this - * Time will only be resolved once the specified event has - * happened, subject to the constraints of the time container. - *
Note that this may change from true to false when the parent time - * container ends its simple duration (including when it repeats or - * restarts). - */ - public boolean getResolved(); - - /** - * The clock value in seconds relative to the parent time container begin. - * This indicates the resolved time relationship to the parent time - * container. This is only valid if resolved is true. - */ - public double getResolvedOffset(); - - // TimeTypes - public static final short SMIL_TIME_INDEFINITE = 0; - public static final short SMIL_TIME_OFFSET = 1; - public static final short SMIL_TIME_SYNC_BASED = 2; - public static final short SMIL_TIME_EVENT_BASED = 3; - public static final short SMIL_TIME_WALLCLOCK = 4; - public static final short SMIL_TIME_MEDIA_MARKER = 5; - - /** - * A code representing the type of the underlying object, as defined - * above. - */ - public short getTimeType(); - - /** - * The clock value in seconds relative to the syncbase or eventbase. - * Default value is 0 . - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised on attempts to modify this - * readonly attribute. - */ - public double getOffset(); - public void setOffset(double offset) - throws DOMException; - - /** - * The base element for a sync-based or event-based time. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised on attempts to modify this - * readonly attribute. - */ - public Element getBaseElement(); - public void setBaseElement(Element baseElement) - throws DOMException; - - /** - * If true , indicates that a sync-based time is relative to - * the begin of the baseElement. If false , indicates that a - * sync-based time is relative to the active end of the baseElement. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised on attempts to modify this - * readonly attribute. - */ - public boolean getBaseBegin(); - public void setBaseBegin(boolean baseBegin) - throws DOMException; - - /** - * The name of the event for an event-based time. Default value is - * null . - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised on attempts to modify this - * readonly attribute. - */ - public String getEvent(); - public void setEvent(String event) - throws DOMException; - - /** - * The name of the marker from the media element, for media marker times. - * Default value is null . - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised on attempts to modify this - * readonly attribute. - */ - public String getMarker(); - public void setMarker(String marker) - throws DOMException; - -} - diff --git a/src/bind/java/org/w3c/dom/smil/TimeEvent.java b/src/bind/java/org/w3c/dom/smil/TimeEvent.java deleted file mode 100644 index a79c4ca05..000000000 --- a/src/bind/java/org/w3c/dom/smil/TimeEvent.java +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -import org.w3c.dom.events.Event; -import org.w3c.dom.views.AbstractView; - -/** - * The TimeEvent interface provides specific contextual - * information associated with Time events. - */ -public interface TimeEvent extends Event { - /** - * The view attribute identifies the - * AbstractView from which the event was generated. - */ - public AbstractView getView(); - - /** - * Specifies some detail information about the Event , - * depending on the type of event. - */ - public int getDetail(); - - /** - * The initTimeEvent method is used to initialize the value - * of a TimeEvent created through the - * DocumentEvent interface. This method may only be called - * before the TimeEvent has been dispatched via the - * dispatchEvent method, though it may be called multiple - * times during that phase if necessary. If called multiple times, the - * final invocation takes precedence. - * @param typeArg Specifies the event type. - * @param viewArg Specifies the Event 's - * AbstractView . - * @param detailArg Specifies the Event 's detail. - */ - public void initTimeEvent(String typeArg, - AbstractView viewArg, - int detailArg); - -} - diff --git a/src/bind/java/org/w3c/dom/smil/TimeList.java b/src/bind/java/org/w3c/dom/smil/TimeList.java deleted file mode 100644 index 7cec133fa..000000000 --- a/src/bind/java/org/w3c/dom/smil/TimeList.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. See W3C License http://www.w3.org/Consortium/Legal/ for more - * details. - */ - -package org.w3c.dom.smil; - -/** - * The TimeList interface provides the abstraction of an ordered - * collection of times, without defining or constraining how this collection - * is implemented. - *

The items in the TimeList are accessible via an integral - * index, starting from 0. - */ -public interface TimeList { - /** - * Returns the index th item in the collection. If - * index is greater than or equal to the number of times in - * the list, this returns null . - * @param index Index into the collection. - * @return The time at the index th position in the - * TimeList , or null if that is not a valid - * index. - */ - public Time item(int index); - - /** - * The number of times in the list. The range of valid child time indices - * is 0 to length-1 inclusive. - */ - public int getLength(); - -} - diff --git a/src/bind/java/org/w3c/dom/stylesheets/DocumentStyle.java b/src/bind/java/org/w3c/dom/stylesheets/DocumentStyle.java deleted file mode 100644 index 2270505e7..000000000 --- a/src/bind/java/org/w3c/dom/stylesheets/DocumentStyle.java +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.stylesheets; - -/** - * The DocumentStyle interface provides a mechanism by which the - * style sheets embedded in a document can be retrieved. The expectation is - * that an instance of the DocumentStyle interface can be - * obtained by using binding-specific casting methods on an instance of the - * Document interface. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface DocumentStyle { - /** - * A list containing all the style sheets explicitly linked into or - * embedded in a document. For HTML documents, this includes external - * style sheets, included via the HTML LINK element, and inline STYLE - * elements. In XML, this includes external style sheets, included via - * style sheet processing instructions (see ). - */ - public StyleSheetList getStyleSheets(); - -} diff --git a/src/bind/java/org/w3c/dom/stylesheets/LinkStyle.java b/src/bind/java/org/w3c/dom/stylesheets/LinkStyle.java deleted file mode 100644 index 481bd19db..000000000 --- a/src/bind/java/org/w3c/dom/stylesheets/LinkStyle.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.stylesheets; - -/** - * The LinkStyle interface provides a mechanism by which a style - * sheet can be retrieved from the node responsible for linking it into a - * document. An instance of the LinkStyle interface can be - * obtained using binding-specific casting methods on an instance of a - * linking node (HTMLLinkElement, HTMLStyleElement - * or ProcessingInstruction in DOM Level 2). - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface LinkStyle { - /** - * The style sheet. - */ - public StyleSheet getSheet(); - -} diff --git a/src/bind/java/org/w3c/dom/stylesheets/MediaList.java b/src/bind/java/org/w3c/dom/stylesheets/MediaList.java deleted file mode 100644 index 92c46609f..000000000 --- a/src/bind/java/org/w3c/dom/stylesheets/MediaList.java +++ /dev/null @@ -1,81 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.stylesheets; - -import org.w3c.dom.DOMException; - -/** - * The MediaList interface provides the abstraction of an - * ordered collection of media, without defining or constraining how this - * collection is implemented. An empty list is the same as a list that - * contains the medium "all". - *

The items in the MediaList are accessible via an integral - * index, starting from 0. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface MediaList { - /** - * The parsable textual representation of the media list. This is a - * comma-separated list of media. - * @exception DOMException - * SYNTAX_ERR: Raised if the specified string value has a syntax error - * and is unparsable. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this media list is - * readonly. - */ - public String getMediaText(); - public void setMediaText(String mediaText) - throws DOMException; - - /** - * The number of media in the list. The range of valid media is - * 0 to length-1 inclusive. - */ - public int getLength(); - - /** - * Returns the indexth in the list. If index is - * greater than or equal to the number of media in the list, this - * returns null. - * @param index Index into the collection. - * @return The medium at the indexth position in the - * MediaList, or null if that is not a valid - * index. - */ - public String item(int index); - - /** - * Deletes the medium indicated by oldMedium from the list. - * @param oldMediumThe medium to delete in the media list. - * @exception DOMException - * NO_MODIFICATION_ALLOWED_ERR: Raised if this list is readonly. - *
NOT_FOUND_ERR: Raised if oldMedium is not in the - * list. - */ - public void deleteMedium(String oldMedium) - throws DOMException; - - /** - * Adds the medium newMedium to the end of the list. If the - * newMedium is already used, it is first removed. - * @param newMediumThe new medium to add. - * @exception DOMException - * INVALID_CHARACTER_ERR: If the medium contains characters that are - * invalid in the underlying style language. - *
NO_MODIFICATION_ALLOWED_ERR: Raised if this list is readonly. - */ - public void appendMedium(String newMedium) - throws DOMException; - -} diff --git a/src/bind/java/org/w3c/dom/stylesheets/StyleSheet.java b/src/bind/java/org/w3c/dom/stylesheets/StyleSheet.java deleted file mode 100644 index 94ccc1885..000000000 --- a/src/bind/java/org/w3c/dom/stylesheets/StyleSheet.java +++ /dev/null @@ -1,95 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.stylesheets; - -import org.w3c.dom.Node; - -/** - * The StyleSheet interface is the abstract base interface for - * any type of style sheet. It represents a single style sheet associated - * with a structured document. In HTML, the StyleSheet interface represents - * either an external style sheet, included via the HTML LINK element, or - * an inline STYLE element. In XML, this interface represents an external - * style sheet, included via a style sheet processing instruction. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface StyleSheet { - /** - * This specifies the style sheet language for this style sheet. The - * style sheet language is specified as a content type (e.g. - * "text/css"). The content type is often specified in the - * ownerNode. Also see the type attribute definition for - * the LINK element in HTML 4.0, and the type - * pseudo-attribute for the XML style sheet processing instruction. - */ - public String getType(); - - /** - * false if the style sheet is applied to the document. - * true if it is not. Modifying this attribute may cause a - * new resolution of style for the document. A stylesheet only applies - * if both an appropriate medium definition is present and the disabled - * attribute is false. So, if the media doesn't apply to the current - * user agent, the disabled attribute is ignored. - */ - public boolean getDisabled(); - public void setDisabled(boolean disabled); - - /** - * The node that associates this style sheet with the document. For HTML, - * this may be the corresponding LINK or STYLE - * element. For XML, it may be the linking processing instruction. For - * style sheets that are included by other style sheets, the value of - * this attribute is null. - */ - public Node getOwnerNode(); - - /** - * For style sheet languages that support the concept of style sheet - * inclusion, this attribute represents the including style sheet, if - * one exists. If the style sheet is a top-level style sheet, or the - * style sheet language does not support inclusion, the value of this - * attribute is null. - */ - public StyleSheet getParentStyleSheet(); - - /** - * If the style sheet is a linked style sheet, the value of its attribute - * is its location. For inline style sheets, the value of this attribute - * is null. See the href attribute definition for the - * LINK element in HTML 4.0, and the href pseudo-attribute - * for the XML style sheet processing instruction. - */ - public String getHref(); - - /** - * The advisory title. The title is often specified in the - * ownerNode. See the title attribute definition for the - * LINK element in HTML 4.0, and the title pseudo-attribute - * for the XML style sheet processing instruction. - */ - public String getTitle(); - - /** - * The intended destination media for style information. The media is - * often specified in the ownerNode. If no media has been - * specified, the MediaList will be empty. See the media - * attribute definition for the LINK element in HTML 4.0, - * and the media pseudo-attribute for the XML style sheet processing - * instruction . Modifying the media list may cause a change to the - * attribute disabled. - */ - public MediaList getMedia(); - -} diff --git a/src/bind/java/org/w3c/dom/stylesheets/StyleSheetList.java b/src/bind/java/org/w3c/dom/stylesheets/StyleSheetList.java deleted file mode 100644 index 76c0c59e1..000000000 --- a/src/bind/java/org/w3c/dom/stylesheets/StyleSheetList.java +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.stylesheets; - -/** - * The StyleSheetList interface provides the abstraction of an - * ordered collection of style sheets. - *

The items in the StyleSheetList are accessible via an - * integral index, starting from 0. - *

See also the Document Object Model (DOM) Level 2 Style Specification. - * @since DOM Level 2 - */ -public interface StyleSheetList { - /** - * The number of StyleSheets in the list. The range of valid - * child stylesheet indices is 0 to length-1 - * inclusive. - */ - public int getLength(); - - /** - * Used to retrieve a style sheet by ordinal index. If index is greater - * than or equal to the number of style sheets in the list, this returns - * null. - * @param indexIndex into the collection - * @return The style sheet at the index position in the - * StyleSheetList, or null if that is not a - * valid index. - */ - public StyleSheet item(int index); - -} diff --git a/src/bind/java/org/w3c/dom/svg/GetSVGDocument.java b/src/bind/java/org/w3c/dom/svg/GetSVGDocument.java deleted file mode 100644 index cc8970137..000000000 --- a/src/bind/java/org/w3c/dom/svg/GetSVGDocument.java +++ /dev/null @@ -1,9 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface GetSVGDocument { - public SVGDocument getSVGDocument ( ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGAElement.java b/src/bind/java/org/w3c/dom/svg/SVGAElement.java deleted file mode 100644 index a403086cd..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGAElement.java +++ /dev/null @@ -1,16 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.events.EventTarget; - -public interface SVGAElement extends - SVGElement, - SVGURIReference, - SVGTests, - SVGLangSpace, - SVGExternalResourcesRequired, - SVGStylable, - SVGTransformable, - EventTarget { - public SVGAnimatedString getTarget( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGAltGlyphDefElement.java b/src/bind/java/org/w3c/dom/svg/SVGAltGlyphDefElement.java deleted file mode 100644 index c8e4d2dd0..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGAltGlyphDefElement.java +++ /dev/null @@ -1,6 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGAltGlyphDefElement extends - SVGElement { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGAltGlyphElement.java b/src/bind/java/org/w3c/dom/svg/SVGAltGlyphElement.java deleted file mode 100644 index 4362efb35..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGAltGlyphElement.java +++ /dev/null @@ -1,15 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGAltGlyphElement extends - SVGTextPositioningElement, - SVGURIReference { - public String getGlyphRef( ); - public void setGlyphRef( String glyphRef ) - throws DOMException; - public String getFormat( ); - public void setFormat( String format ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGAltGlyphItemElement.java b/src/bind/java/org/w3c/dom/svg/SVGAltGlyphItemElement.java deleted file mode 100644 index 93c01b3d5..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGAltGlyphItemElement.java +++ /dev/null @@ -1,6 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGAltGlyphItemElement extends - SVGElement { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGAngle.java b/src/bind/java/org/w3c/dom/svg/SVGAngle.java deleted file mode 100644 index 8f212b7c5..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGAngle.java +++ /dev/null @@ -1,26 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; -public interface SVGAngle { - // Angle Unit Types - public static final short SVG_ANGLETYPE_UNKNOWN = 0; - public static final short SVG_ANGLETYPE_UNSPECIFIED = 1; - public static final short SVG_ANGLETYPE_DEG = 2; - public static final short SVG_ANGLETYPE_RAD = 3; - public static final short SVG_ANGLETYPE_GRAD = 4; - - public short getUnitType( ); - public float getValue( ); - public void setValue( float value ) - throws DOMException; - public float getValueInSpecifiedUnits( ); - public void setValueInSpecifiedUnits( float valueInSpecifiedUnits ) - throws DOMException; - public String getValueAsString( ); - public void setValueAsString( String valueAsString ) - throws DOMException; - - public void newValueSpecifiedUnits ( short unitType, float valueInSpecifiedUnits ); - public void convertToSpecifiedUnits ( short unitType ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGAnimateColorElement.java b/src/bind/java/org/w3c/dom/svg/SVGAnimateColorElement.java deleted file mode 100644 index 9efb69aab..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGAnimateColorElement.java +++ /dev/null @@ -1,6 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGAnimateColorElement extends - SVGAnimationElement { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGAnimateElement.java b/src/bind/java/org/w3c/dom/svg/SVGAnimateElement.java deleted file mode 100644 index 4d365b257..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGAnimateElement.java +++ /dev/null @@ -1,6 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGAnimateElement extends - SVGAnimationElement { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGAnimateMotionElement.java b/src/bind/java/org/w3c/dom/svg/SVGAnimateMotionElement.java deleted file mode 100644 index a06728dde..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGAnimateMotionElement.java +++ /dev/null @@ -1,6 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGAnimateMotionElement extends - SVGAnimationElement { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGAnimateTransformElement.java b/src/bind/java/org/w3c/dom/svg/SVGAnimateTransformElement.java deleted file mode 100644 index 1f4ac36cd..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGAnimateTransformElement.java +++ /dev/null @@ -1,6 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGAnimateTransformElement extends - SVGAnimationElement { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGAnimatedAngle.java b/src/bind/java/org/w3c/dom/svg/SVGAnimatedAngle.java deleted file mode 100644 index ae5d8a08a..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGAnimatedAngle.java +++ /dev/null @@ -1,7 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGAnimatedAngle { - public SVGAngle getBaseVal( ); - public SVGAngle getAnimVal( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGAnimatedBoolean.java b/src/bind/java/org/w3c/dom/svg/SVGAnimatedBoolean.java deleted file mode 100644 index 1a5e39259..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGAnimatedBoolean.java +++ /dev/null @@ -1,10 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; -public interface SVGAnimatedBoolean { - public boolean getBaseVal( ); - public void setBaseVal( boolean baseVal ) - throws DOMException; - public boolean getAnimVal( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGAnimatedEnumeration.java b/src/bind/java/org/w3c/dom/svg/SVGAnimatedEnumeration.java deleted file mode 100644 index 71122ffe4..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGAnimatedEnumeration.java +++ /dev/null @@ -1,10 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; -public interface SVGAnimatedEnumeration { - public short getBaseVal( ); - public void setBaseVal( short baseVal ) - throws DOMException; - public short getAnimVal( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGAnimatedInteger.java b/src/bind/java/org/w3c/dom/svg/SVGAnimatedInteger.java deleted file mode 100644 index dbc20bc35..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGAnimatedInteger.java +++ /dev/null @@ -1,10 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; -public interface SVGAnimatedInteger { - public int getBaseVal( ); - public void setBaseVal( int baseVal ) - throws DOMException; - public int getAnimVal( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGAnimatedLength.java b/src/bind/java/org/w3c/dom/svg/SVGAnimatedLength.java deleted file mode 100644 index 75da0ceb7..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGAnimatedLength.java +++ /dev/null @@ -1,7 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGAnimatedLength { - public SVGLength getBaseVal( ); - public SVGLength getAnimVal( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGAnimatedLengthList.java b/src/bind/java/org/w3c/dom/svg/SVGAnimatedLengthList.java deleted file mode 100644 index 4294f55ed..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGAnimatedLengthList.java +++ /dev/null @@ -1,7 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGAnimatedLengthList { - public SVGLengthList getBaseVal( ); - public SVGLengthList getAnimVal( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGAnimatedNumber.java b/src/bind/java/org/w3c/dom/svg/SVGAnimatedNumber.java deleted file mode 100644 index 39bb6a14d..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGAnimatedNumber.java +++ /dev/null @@ -1,10 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; -public interface SVGAnimatedNumber { - public float getBaseVal( ); - public void setBaseVal( float baseVal ) - throws DOMException; - public float getAnimVal( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGAnimatedNumberList.java b/src/bind/java/org/w3c/dom/svg/SVGAnimatedNumberList.java deleted file mode 100644 index 29ea31ad0..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGAnimatedNumberList.java +++ /dev/null @@ -1,7 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGAnimatedNumberList { - public SVGNumberList getBaseVal( ); - public SVGNumberList getAnimVal( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGAnimatedPathData.java b/src/bind/java/org/w3c/dom/svg/SVGAnimatedPathData.java deleted file mode 100644 index 3154b9ba0..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGAnimatedPathData.java +++ /dev/null @@ -1,9 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGAnimatedPathData { - public SVGPathSegList getPathSegList( ); - public SVGPathSegList getNormalizedPathSegList( ); - public SVGPathSegList getAnimatedPathSegList( ); - public SVGPathSegList getAnimatedNormalizedPathSegList( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGAnimatedPoints.java b/src/bind/java/org/w3c/dom/svg/SVGAnimatedPoints.java deleted file mode 100644 index 1f7f7280c..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGAnimatedPoints.java +++ /dev/null @@ -1,7 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGAnimatedPoints { - public SVGPointList getPoints( ); - public SVGPointList getAnimatedPoints( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGAnimatedPreserveAspectRatio.java b/src/bind/java/org/w3c/dom/svg/SVGAnimatedPreserveAspectRatio.java deleted file mode 100644 index a3cddac37..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGAnimatedPreserveAspectRatio.java +++ /dev/null @@ -1,7 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGAnimatedPreserveAspectRatio { - public SVGPreserveAspectRatio getBaseVal( ); - public SVGPreserveAspectRatio getAnimVal( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGAnimatedRect.java b/src/bind/java/org/w3c/dom/svg/SVGAnimatedRect.java deleted file mode 100644 index 405d45c04..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGAnimatedRect.java +++ /dev/null @@ -1,7 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGAnimatedRect { - public SVGRect getBaseVal( ); - public SVGRect getAnimVal( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGAnimatedString.java b/src/bind/java/org/w3c/dom/svg/SVGAnimatedString.java deleted file mode 100644 index 78cf12e0c..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGAnimatedString.java +++ /dev/null @@ -1,10 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; -public interface SVGAnimatedString { - public String getBaseVal( ); - public void setBaseVal( String baseVal ) - throws DOMException; - public String getAnimVal( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGAnimatedTransformList.java b/src/bind/java/org/w3c/dom/svg/SVGAnimatedTransformList.java deleted file mode 100644 index 793df4316..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGAnimatedTransformList.java +++ /dev/null @@ -1,7 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGAnimatedTransformList { - public SVGTransformList getBaseVal( ); - public SVGTransformList getAnimVal( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGAnimationElement.java b/src/bind/java/org/w3c/dom/svg/SVGAnimationElement.java deleted file mode 100644 index f299c2b94..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGAnimationElement.java +++ /dev/null @@ -1,20 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; -import org.w3c.dom.events.EventTarget; -import org.w3c.dom.smil.ElementTimeControl; - -public interface SVGAnimationElement extends - SVGElement, - SVGTests, - SVGExternalResourcesRequired, - ElementTimeControl, - EventTarget { - public SVGElement getTargetElement( ); - - public float getStartTime ( ); - public float getCurrentTime ( ); - public float getSimpleDuration ( ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGCSSRule.java b/src/bind/java/org/w3c/dom/svg/SVGCSSRule.java deleted file mode 100644 index 5365e5dfd..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGCSSRule.java +++ /dev/null @@ -1,10 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.css.CSSRule; - -public interface SVGCSSRule extends - CSSRule { - // Additional CSS RuleType to support ICC color specifications - public static final short COLOR_PROFILE_RULE = 7; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGCircleElement.java b/src/bind/java/org/w3c/dom/svg/SVGCircleElement.java deleted file mode 100644 index 6c9aa02ec..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGCircleElement.java +++ /dev/null @@ -1,17 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.events.EventTarget; - -public interface SVGCircleElement extends - SVGElement, - SVGTests, - SVGLangSpace, - SVGExternalResourcesRequired, - SVGStylable, - SVGTransformable, - EventTarget { - public SVGAnimatedLength getCx( ); - public SVGAnimatedLength getCy( ); - public SVGAnimatedLength getR( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGClipPathElement.java b/src/bind/java/org/w3c/dom/svg/SVGClipPathElement.java deleted file mode 100644 index ebe018c2c..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGClipPathElement.java +++ /dev/null @@ -1,13 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGClipPathElement extends - SVGElement, - SVGTests, - SVGLangSpace, - SVGExternalResourcesRequired, - SVGStylable, - SVGTransformable, - SVGUnitTypes { - public SVGAnimatedEnumeration getClipPathUnits( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGColor.java b/src/bind/java/org/w3c/dom/svg/SVGColor.java deleted file mode 100644 index 27e942ac8..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGColor.java +++ /dev/null @@ -1,25 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.css.RGBColor; -import org.w3c.dom.css.CSSValue; - -public interface SVGColor extends - CSSValue { - // Color Types - public static final short SVG_COLORTYPE_UNKNOWN = 0; - public static final short SVG_COLORTYPE_RGBCOLOR = 1; - public static final short SVG_COLORTYPE_RGBCOLOR_ICCCOLOR = 2; - public static final short SVG_COLORTYPE_CURRENTCOLOR = 3; - - public short getColorType( ); - public RGBColor getRGBColor( ); - public SVGICCColor getICCColor( ); - - public void setRGBColor ( String rgbColor ) - throws SVGException; - public void setRGBColorICCColor ( String rgbColor, String iccColor ) - throws SVGException; - public void setColor ( short colorType, String rgbColor, String iccColor ) - throws SVGException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGColorProfileElement.java b/src/bind/java/org/w3c/dom/svg/SVGColorProfileElement.java deleted file mode 100644 index ce6d33598..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGColorProfileElement.java +++ /dev/null @@ -1,19 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGColorProfileElement extends - SVGElement, - SVGURIReference, - SVGRenderingIntent { - public String getLocal( ); - public void setLocal( String local ) - throws DOMException; - public String getName( ); - public void setName( String name ) - throws DOMException; - public short getRenderingIntent( ); - public void setRenderingIntent( short renderingIntent ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGColorProfileRule.java b/src/bind/java/org/w3c/dom/svg/SVGColorProfileRule.java deleted file mode 100644 index 97faa309b..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGColorProfileRule.java +++ /dev/null @@ -1,18 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGColorProfileRule extends - SVGCSSRule, - SVGRenderingIntent { - public String getSrc( ); - public void setSrc( String src ) - throws DOMException; - public String getName( ); - public void setName( String name ) - throws DOMException; - public short getRenderingIntent( ); - public void setRenderingIntent( short renderingIntent ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGComponentTransferFunctionElement.java b/src/bind/java/org/w3c/dom/svg/SVGComponentTransferFunctionElement.java deleted file mode 100644 index 82e061141..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGComponentTransferFunctionElement.java +++ /dev/null @@ -1,21 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGComponentTransferFunctionElement extends - SVGElement { - // Component Transfer Types - public static final short SVG_FECOMPONENTTRANSFER_TYPE_UNKNOWN = 0; - public static final short SVG_FECOMPONENTTRANSFER_TYPE_IDENTITY = 1; - public static final short SVG_FECOMPONENTTRANSFER_TYPE_TABLE = 2; - public static final short SVG_FECOMPONENTTRANSFER_TYPE_DISCRETE = 3; - public static final short SVG_FECOMPONENTTRANSFER_TYPE_LINEAR = 4; - public static final short SVG_FECOMPONENTTRANSFER_TYPE_GAMMA = 5; - - public SVGAnimatedEnumeration getType( ); - public SVGAnimatedNumberList getTableValues( ); - public SVGAnimatedNumber getSlope( ); - public SVGAnimatedNumber getIntercept( ); - public SVGAnimatedNumber getAmplitude( ); - public SVGAnimatedNumber getExponent( ); - public SVGAnimatedNumber getOffset( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGCursorElement.java b/src/bind/java/org/w3c/dom/svg/SVGCursorElement.java deleted file mode 100644 index cc8cdf298..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGCursorElement.java +++ /dev/null @@ -1,11 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGCursorElement extends - SVGElement, - SVGURIReference, - SVGTests, - SVGExternalResourcesRequired { - public SVGAnimatedLength getX( ); - public SVGAnimatedLength getY( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGDefinitionSrcElement.java b/src/bind/java/org/w3c/dom/svg/SVGDefinitionSrcElement.java deleted file mode 100644 index 4123b5a97..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGDefinitionSrcElement.java +++ /dev/null @@ -1,6 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGDefinitionSrcElement extends - SVGElement { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGDefsElement.java b/src/bind/java/org/w3c/dom/svg/SVGDefsElement.java deleted file mode 100644 index 6b83bedc3..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGDefsElement.java +++ /dev/null @@ -1,14 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.events.EventTarget; - -public interface SVGDefsElement extends - SVGElement, - SVGTests, - SVGLangSpace, - SVGExternalResourcesRequired, - SVGStylable, - SVGTransformable, - EventTarget { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGDescElement.java b/src/bind/java/org/w3c/dom/svg/SVGDescElement.java deleted file mode 100644 index d3eaf7384..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGDescElement.java +++ /dev/null @@ -1,8 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGDescElement extends - SVGElement, - SVGLangSpace, - SVGStylable { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGDocument.java b/src/bind/java/org/w3c/dom/svg/SVGDocument.java deleted file mode 100644 index b6d9064b8..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGDocument.java +++ /dev/null @@ -1,15 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.Document; -import org.w3c.dom.events.DocumentEvent; - -public interface SVGDocument extends - Document, - DocumentEvent { - public String getTitle( ); - public String getReferrer( ); - public String getDomain( ); - public String getURL( ); - public SVGSVGElement getRootElement( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGElement.java b/src/bind/java/org/w3c/dom/svg/SVGElement.java deleted file mode 100644 index d6a0299ca..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGElement.java +++ /dev/null @@ -1,17 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; -import org.w3c.dom.Element; - -public interface SVGElement extends - Element { - public String getId( ); - public void setId( String id ) - throws DOMException; - public String getXMLbase( ); - public void setXMLbase( String xmlbase ) - throws DOMException; - public SVGSVGElement getOwnerSVGElement( ); - public SVGElement getViewportElement( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGElementInstance.java b/src/bind/java/org/w3c/dom/svg/SVGElementInstance.java deleted file mode 100644 index 2509ec9c6..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGElementInstance.java +++ /dev/null @@ -1,16 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.events.EventTarget; - -public interface SVGElementInstance extends - EventTarget { - public SVGElement getCorrespondingElement( ); - public SVGUseElement getCorrespondingUseElement( ); - public SVGElementInstance getParentNode( ); - public SVGElementInstanceList getChildNodes( ); - public SVGElementInstance getFirstChild( ); - public SVGElementInstance getLastChild( ); - public SVGElementInstance getPreviousSibling( ); - public SVGElementInstance getNextSibling( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGElementInstanceList.java b/src/bind/java/org/w3c/dom/svg/SVGElementInstanceList.java deleted file mode 100644 index 010ddfb4f..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGElementInstanceList.java +++ /dev/null @@ -1,8 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGElementInstanceList { - public int getLength( ); - - public SVGElementInstance item ( int index ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGEllipseElement.java b/src/bind/java/org/w3c/dom/svg/SVGEllipseElement.java deleted file mode 100644 index 2f7f7dbaa..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGEllipseElement.java +++ /dev/null @@ -1,18 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.events.EventTarget; - -public interface SVGEllipseElement extends - SVGElement, - SVGTests, - SVGLangSpace, - SVGExternalResourcesRequired, - SVGStylable, - SVGTransformable, - EventTarget { - public SVGAnimatedLength getCx( ); - public SVGAnimatedLength getCy( ); - public SVGAnimatedLength getRx( ); - public SVGAnimatedLength getRy( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGEvent.java b/src/bind/java/org/w3c/dom/svg/SVGEvent.java deleted file mode 100644 index 252825ba7..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGEvent.java +++ /dev/null @@ -1,8 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.events.Event; - -public interface SVGEvent extends - Event { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGException.java b/src/bind/java/org/w3c/dom/svg/SVGException.java deleted file mode 100644 index 64f3743e1..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGException.java +++ /dev/null @@ -1,13 +0,0 @@ -package org.w3c.dom.svg; - -public class SVGException extends RuntimeException { - public SVGException(short code, String message) { - super(message); - this.code = code; - } - public short code; - // ExceptionCode - public static final short SVG_WRONG_TYPE_ERR = 0; - public static final short SVG_INVALID_VALUE_ERR = 1; - public static final short SVG_MATRIX_NOT_INVERTABLE = 2; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGExternalResourcesRequired.java b/src/bind/java/org/w3c/dom/svg/SVGExternalResourcesRequired.java deleted file mode 100644 index aa362066f..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGExternalResourcesRequired.java +++ /dev/null @@ -1,6 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGExternalResourcesRequired { - public SVGAnimatedBoolean getExternalResourcesRequired( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFEBlendElement.java b/src/bind/java/org/w3c/dom/svg/SVGFEBlendElement.java deleted file mode 100644 index 3d8a11ade..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFEBlendElement.java +++ /dev/null @@ -1,18 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFEBlendElement extends - SVGElement, - SVGFilterPrimitiveStandardAttributes { - // Blend Mode Types - public static final short SVG_FEBLEND_MODE_UNKNOWN = 0; - public static final short SVG_FEBLEND_MODE_NORMAL = 1; - public static final short SVG_FEBLEND_MODE_MULTIPLY = 2; - public static final short SVG_FEBLEND_MODE_SCREEN = 3; - public static final short SVG_FEBLEND_MODE_DARKEN = 4; - public static final short SVG_FEBLEND_MODE_LIGHTEN = 5; - - public SVGAnimatedString getIn1( ); - public SVGAnimatedString getIn2( ); - public SVGAnimatedEnumeration getMode( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFEColorMatrixElement.java b/src/bind/java/org/w3c/dom/svg/SVGFEColorMatrixElement.java deleted file mode 100644 index 6aac0e35c..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFEColorMatrixElement.java +++ /dev/null @@ -1,17 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFEColorMatrixElement extends - SVGElement, - SVGFilterPrimitiveStandardAttributes { - // Color Matrix Types - public static final short SVG_FECOLORMATRIX_TYPE_UNKNOWN = 0; - public static final short SVG_FECOLORMATRIX_TYPE_MATRIX = 1; - public static final short SVG_FECOLORMATRIX_TYPE_SATURATE = 2; - public static final short SVG_FECOLORMATRIX_TYPE_HUEROTATE = 3; - public static final short SVG_FECOLORMATRIX_TYPE_LUMINANCETOALPHA = 4; - - public SVGAnimatedString getIn1( ); - public SVGAnimatedEnumeration getType( ); - public SVGAnimatedNumberList getValues( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFEComponentTransferElement.java b/src/bind/java/org/w3c/dom/svg/SVGFEComponentTransferElement.java deleted file mode 100644 index 38d3fba34..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFEComponentTransferElement.java +++ /dev/null @@ -1,8 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFEComponentTransferElement extends - SVGElement, - SVGFilterPrimitiveStandardAttributes { - public SVGAnimatedString getIn1( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFECompositeElement.java b/src/bind/java/org/w3c/dom/svg/SVGFECompositeElement.java deleted file mode 100644 index 244888d01..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFECompositeElement.java +++ /dev/null @@ -1,23 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFECompositeElement extends - SVGElement, - SVGFilterPrimitiveStandardAttributes { - // Composite Operators - public static final short SVG_FECOMPOSITE_OPERATOR_UNKNOWN = 0; - public static final short SVG_FECOMPOSITE_OPERATOR_OVER = 1; - public static final short SVG_FECOMPOSITE_OPERATOR_IN = 2; - public static final short SVG_FECOMPOSITE_OPERATOR_OUT = 3; - public static final short SVG_FECOMPOSITE_OPERATOR_ATOP = 4; - public static final short SVG_FECOMPOSITE_OPERATOR_XOR = 5; - public static final short SVG_FECOMPOSITE_OPERATOR_ARITHMETIC = 6; - - public SVGAnimatedString getIn1( ); - public SVGAnimatedString getIn2( ); - public SVGAnimatedEnumeration getOperator( ); - public SVGAnimatedNumber getK1( ); - public SVGAnimatedNumber getK2( ); - public SVGAnimatedNumber getK3( ); - public SVGAnimatedNumber getK4( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFEConvolveMatrixElement.java b/src/bind/java/org/w3c/dom/svg/SVGFEConvolveMatrixElement.java deleted file mode 100644 index 391a0d858..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFEConvolveMatrixElement.java +++ /dev/null @@ -1,24 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFEConvolveMatrixElement extends - SVGElement, - SVGFilterPrimitiveStandardAttributes { - // Edge Mode Values - public static final short SVG_EDGEMODE_UNKNOWN = 0; - public static final short SVG_EDGEMODE_DUPLICATE = 1; - public static final short SVG_EDGEMODE_WRAP = 2; - public static final short SVG_EDGEMODE_NONE = 3; - - public SVGAnimatedInteger getOrderX( ); - public SVGAnimatedInteger getOrderY( ); - public SVGAnimatedNumberList getKernelMatrix( ); - public SVGAnimatedNumber getDivisor( ); - public SVGAnimatedNumber getBias( ); - public SVGAnimatedInteger getTargetX( ); - public SVGAnimatedInteger getTargetY( ); - public SVGAnimatedEnumeration getEdgeMode( ); - public SVGAnimatedNumber getKernelUnitLengthX( ); - public SVGAnimatedNumber getKernelUnitLengthY( ); - public SVGAnimatedBoolean getPreserveAlpha( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFEDiffuseLightingElement.java b/src/bind/java/org/w3c/dom/svg/SVGFEDiffuseLightingElement.java deleted file mode 100644 index e5c01e87c..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFEDiffuseLightingElement.java +++ /dev/null @@ -1,12 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFEDiffuseLightingElement extends - SVGElement, - SVGFilterPrimitiveStandardAttributes { - public SVGAnimatedString getIn1( ); - public SVGAnimatedNumber getSurfaceScale( ); - public SVGAnimatedNumber getDiffuseConstant( ); - public SVGAnimatedNumber getKernelUnitLengthX( ); - public SVGAnimatedNumber getKernelUnitLengthY( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFEDisplacementMapElement.java b/src/bind/java/org/w3c/dom/svg/SVGFEDisplacementMapElement.java deleted file mode 100644 index 4c82fd85a..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFEDisplacementMapElement.java +++ /dev/null @@ -1,19 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFEDisplacementMapElement extends - SVGElement, - SVGFilterPrimitiveStandardAttributes { - // Channel Selectors - public static final short SVG_CHANNEL_UNKNOWN = 0; - public static final short SVG_CHANNEL_R = 1; - public static final short SVG_CHANNEL_G = 2; - public static final short SVG_CHANNEL_B = 3; - public static final short SVG_CHANNEL_A = 4; - - public SVGAnimatedString getIn1( ); - public SVGAnimatedString getIn2( ); - public SVGAnimatedNumber getScale( ); - public SVGAnimatedEnumeration getXChannelSelector( ); - public SVGAnimatedEnumeration getYChannelSelector( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFEDistantLightElement.java b/src/bind/java/org/w3c/dom/svg/SVGFEDistantLightElement.java deleted file mode 100644 index a96a1e15d..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFEDistantLightElement.java +++ /dev/null @@ -1,8 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFEDistantLightElement extends - SVGElement { - public SVGAnimatedNumber getAzimuth( ); - public SVGAnimatedNumber getElevation( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFEFloodElement.java b/src/bind/java/org/w3c/dom/svg/SVGFEFloodElement.java deleted file mode 100644 index 313097a2f..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFEFloodElement.java +++ /dev/null @@ -1,8 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFEFloodElement extends - SVGElement, - SVGFilterPrimitiveStandardAttributes { - public SVGAnimatedString getIn1( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFEFuncAElement.java b/src/bind/java/org/w3c/dom/svg/SVGFEFuncAElement.java deleted file mode 100644 index fa9773524..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFEFuncAElement.java +++ /dev/null @@ -1,6 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFEFuncAElement extends - SVGComponentTransferFunctionElement { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFEFuncBElement.java b/src/bind/java/org/w3c/dom/svg/SVGFEFuncBElement.java deleted file mode 100644 index 17733d62b..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFEFuncBElement.java +++ /dev/null @@ -1,6 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFEFuncBElement extends - SVGComponentTransferFunctionElement { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFEFuncGElement.java b/src/bind/java/org/w3c/dom/svg/SVGFEFuncGElement.java deleted file mode 100644 index 5078436f1..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFEFuncGElement.java +++ /dev/null @@ -1,6 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFEFuncGElement extends - SVGComponentTransferFunctionElement { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFEFuncRElement.java b/src/bind/java/org/w3c/dom/svg/SVGFEFuncRElement.java deleted file mode 100644 index 72efaac9d..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFEFuncRElement.java +++ /dev/null @@ -1,6 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFEFuncRElement extends - SVGComponentTransferFunctionElement { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFEGaussianBlurElement.java b/src/bind/java/org/w3c/dom/svg/SVGFEGaussianBlurElement.java deleted file mode 100644 index b3385fa4b..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFEGaussianBlurElement.java +++ /dev/null @@ -1,12 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFEGaussianBlurElement extends - SVGElement, - SVGFilterPrimitiveStandardAttributes { - public SVGAnimatedString getIn1( ); - public SVGAnimatedNumber getStdDeviationX( ); - public SVGAnimatedNumber getStdDeviationY( ); - - public void setStdDeviation ( float stdDeviationX, float stdDeviationY ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFEImageElement.java b/src/bind/java/org/w3c/dom/svg/SVGFEImageElement.java deleted file mode 100644 index b74daa7d2..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFEImageElement.java +++ /dev/null @@ -1,13 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFEImageElement extends - SVGElement, - SVGURIReference, - SVGLangSpace, - SVGExternalResourcesRequired, - SVGFilterPrimitiveStandardAttributes { - - public SVGAnimatedPreserveAspectRatio getPreserveAspectRatio( ); - -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFEMergeElement.java b/src/bind/java/org/w3c/dom/svg/SVGFEMergeElement.java deleted file mode 100644 index cea3d6fa9..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFEMergeElement.java +++ /dev/null @@ -1,7 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFEMergeElement extends - SVGElement, - SVGFilterPrimitiveStandardAttributes { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFEMergeNodeElement.java b/src/bind/java/org/w3c/dom/svg/SVGFEMergeNodeElement.java deleted file mode 100644 index e0ae4c402..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFEMergeNodeElement.java +++ /dev/null @@ -1,7 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFEMergeNodeElement extends - SVGElement { - public SVGAnimatedString getIn1( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFEMorphologyElement.java b/src/bind/java/org/w3c/dom/svg/SVGFEMorphologyElement.java deleted file mode 100644 index b04c80c84..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFEMorphologyElement.java +++ /dev/null @@ -1,16 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFEMorphologyElement extends - SVGElement, - SVGFilterPrimitiveStandardAttributes { - // Morphology Operators - public static final short SVG_MORPHOLOGY_OPERATOR_UNKNOWN = 0; - public static final short SVG_MORPHOLOGY_OPERATOR_ERODE = 1; - public static final short SVG_MORPHOLOGY_OPERATOR_DILATE = 2; - - public SVGAnimatedString getIn1( ); - public SVGAnimatedEnumeration getOperator( ); - public SVGAnimatedNumber getRadiusX( ); - public SVGAnimatedNumber getRadiusY( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFEOffsetElement.java b/src/bind/java/org/w3c/dom/svg/SVGFEOffsetElement.java deleted file mode 100644 index 6a76b8d42..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFEOffsetElement.java +++ /dev/null @@ -1,10 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFEOffsetElement extends - SVGElement, - SVGFilterPrimitiveStandardAttributes { - public SVGAnimatedString getIn1( ); - public SVGAnimatedNumber getDx( ); - public SVGAnimatedNumber getDy( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFEPointLightElement.java b/src/bind/java/org/w3c/dom/svg/SVGFEPointLightElement.java deleted file mode 100644 index cec24b204..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFEPointLightElement.java +++ /dev/null @@ -1,9 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFEPointLightElement extends - SVGElement { - public SVGAnimatedNumber getX( ); - public SVGAnimatedNumber getY( ); - public SVGAnimatedNumber getZ( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFESpecularLightingElement.java b/src/bind/java/org/w3c/dom/svg/SVGFESpecularLightingElement.java deleted file mode 100644 index 2070f72dc..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFESpecularLightingElement.java +++ /dev/null @@ -1,11 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFESpecularLightingElement extends - SVGElement, - SVGFilterPrimitiveStandardAttributes { - public SVGAnimatedString getIn1( ); - public SVGAnimatedNumber getSurfaceScale( ); - public SVGAnimatedNumber getSpecularConstant( ); - public SVGAnimatedNumber getSpecularExponent( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFESpotLightElement.java b/src/bind/java/org/w3c/dom/svg/SVGFESpotLightElement.java deleted file mode 100644 index 2beaaf55d..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFESpotLightElement.java +++ /dev/null @@ -1,14 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFESpotLightElement extends - SVGElement { - public SVGAnimatedNumber getX( ); - public SVGAnimatedNumber getY( ); - public SVGAnimatedNumber getZ( ); - public SVGAnimatedNumber getPointsAtX( ); - public SVGAnimatedNumber getPointsAtY( ); - public SVGAnimatedNumber getPointsAtZ( ); - public SVGAnimatedNumber getSpecularExponent( ); - public SVGAnimatedNumber getLimitingConeAngle( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFETileElement.java b/src/bind/java/org/w3c/dom/svg/SVGFETileElement.java deleted file mode 100644 index 4c281292b..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFETileElement.java +++ /dev/null @@ -1,8 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFETileElement extends - SVGElement, - SVGFilterPrimitiveStandardAttributes { - public SVGAnimatedString getIn1( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFETurbulenceElement.java b/src/bind/java/org/w3c/dom/svg/SVGFETurbulenceElement.java deleted file mode 100644 index f8badaafc..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFETurbulenceElement.java +++ /dev/null @@ -1,22 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFETurbulenceElement extends - SVGElement, - SVGFilterPrimitiveStandardAttributes { - // Turbulence Types - public static final short SVG_TURBULENCE_TYPE_UNKNOWN = 0; - public static final short SVG_TURBULENCE_TYPE_FRACTALNOISE = 1; - public static final short SVG_TURBULENCE_TYPE_TURBULENCE = 2; - // Stitch Options - public static final short SVG_STITCHTYPE_UNKNOWN = 0; - public static final short SVG_STITCHTYPE_STITCH = 1; - public static final short SVG_STITCHTYPE_NOSTITCH = 2; - - public SVGAnimatedNumber getBaseFrequencyX( ); - public SVGAnimatedNumber getBaseFrequencyY( ); - public SVGAnimatedInteger getNumOctaves( ); - public SVGAnimatedNumber getSeed( ); - public SVGAnimatedEnumeration getStitchTiles( ); - public SVGAnimatedEnumeration getType( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFilterElement.java b/src/bind/java/org/w3c/dom/svg/SVGFilterElement.java deleted file mode 100644 index 01e57fdf2..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFilterElement.java +++ /dev/null @@ -1,21 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFilterElement extends - SVGElement, - SVGURIReference, - SVGLangSpace, - SVGExternalResourcesRequired, - SVGStylable, - SVGUnitTypes { - public SVGAnimatedEnumeration getFilterUnits( ); - public SVGAnimatedEnumeration getPrimitiveUnits( ); - public SVGAnimatedLength getX( ); - public SVGAnimatedLength getY( ); - public SVGAnimatedLength getWidth( ); - public SVGAnimatedLength getHeight( ); - public SVGAnimatedInteger getFilterResX( ); - public SVGAnimatedInteger getFilterResY( ); - - public void setFilterRes ( int filterResX, int filterResY ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFilterPrimitiveStandardAttributes.java b/src/bind/java/org/w3c/dom/svg/SVGFilterPrimitiveStandardAttributes.java deleted file mode 100644 index cd7ed6276..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFilterPrimitiveStandardAttributes.java +++ /dev/null @@ -1,11 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFilterPrimitiveStandardAttributes extends - SVGStylable { - public SVGAnimatedLength getX( ); - public SVGAnimatedLength getY( ); - public SVGAnimatedLength getWidth( ); - public SVGAnimatedLength getHeight( ); - public SVGAnimatedString getResult( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFitToViewBox.java b/src/bind/java/org/w3c/dom/svg/SVGFitToViewBox.java deleted file mode 100644 index d40c6a1a4..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFitToViewBox.java +++ /dev/null @@ -1,7 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFitToViewBox { - public SVGAnimatedRect getViewBox( ); - public SVGAnimatedPreserveAspectRatio getPreserveAspectRatio( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFontElement.java b/src/bind/java/org/w3c/dom/svg/SVGFontElement.java deleted file mode 100644 index e11dc355e..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFontElement.java +++ /dev/null @@ -1,8 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFontElement extends - SVGElement, - SVGExternalResourcesRequired, - SVGStylable { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFontFaceElement.java b/src/bind/java/org/w3c/dom/svg/SVGFontFaceElement.java deleted file mode 100644 index b201c9456..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFontFaceElement.java +++ /dev/null @@ -1,6 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFontFaceElement extends - SVGElement { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFontFaceFormatElement.java b/src/bind/java/org/w3c/dom/svg/SVGFontFaceFormatElement.java deleted file mode 100644 index 895cd6c77..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFontFaceFormatElement.java +++ /dev/null @@ -1,6 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFontFaceFormatElement extends - SVGElement { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFontFaceNameElement.java b/src/bind/java/org/w3c/dom/svg/SVGFontFaceNameElement.java deleted file mode 100644 index 723370a07..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFontFaceNameElement.java +++ /dev/null @@ -1,6 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFontFaceNameElement extends - SVGElement { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFontFaceSrcElement.java b/src/bind/java/org/w3c/dom/svg/SVGFontFaceSrcElement.java deleted file mode 100644 index dcc898b6f..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFontFaceSrcElement.java +++ /dev/null @@ -1,6 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFontFaceSrcElement extends - SVGElement { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGFontFaceUriElement.java b/src/bind/java/org/w3c/dom/svg/SVGFontFaceUriElement.java deleted file mode 100644 index 39dd039e9..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGFontFaceUriElement.java +++ /dev/null @@ -1,6 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGFontFaceUriElement extends - SVGElement { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGForeignObjectElement.java b/src/bind/java/org/w3c/dom/svg/SVGForeignObjectElement.java deleted file mode 100644 index 49e37af09..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGForeignObjectElement.java +++ /dev/null @@ -1,18 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.events.EventTarget; - -public interface SVGForeignObjectElement extends - SVGElement, - SVGTests, - SVGLangSpace, - SVGExternalResourcesRequired, - SVGStylable, - SVGTransformable, - EventTarget { - public SVGAnimatedLength getX( ); - public SVGAnimatedLength getY( ); - public SVGAnimatedLength getWidth( ); - public SVGAnimatedLength getHeight( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGGElement.java b/src/bind/java/org/w3c/dom/svg/SVGGElement.java deleted file mode 100644 index e9a78190e..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGGElement.java +++ /dev/null @@ -1,14 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.events.EventTarget; - -public interface SVGGElement extends - SVGElement, - SVGTests, - SVGLangSpace, - SVGExternalResourcesRequired, - SVGStylable, - SVGTransformable, - EventTarget { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGGlyphElement.java b/src/bind/java/org/w3c/dom/svg/SVGGlyphElement.java deleted file mode 100644 index 9354bb74d..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGGlyphElement.java +++ /dev/null @@ -1,7 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGGlyphElement extends - SVGElement, - SVGStylable { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGGlyphRefElement.java b/src/bind/java/org/w3c/dom/svg/SVGGlyphRefElement.java deleted file mode 100644 index c16aaa1cb..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGGlyphRefElement.java +++ /dev/null @@ -1,28 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGGlyphRefElement extends - SVGElement, - SVGURIReference, - SVGStylable { - public String getGlyphRef( ); - public void setGlyphRef( String glyphRef ) - throws DOMException; - public String getFormat( ); - public void setFormat( String format ) - throws DOMException; - public float getX( ); - public void setX( float x ) - throws DOMException; - public float getY( ); - public void setY( float y ) - throws DOMException; - public float getDx( ); - public void setDx( float dx ) - throws DOMException; - public float getDy( ); - public void setDy( float dy ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGGradientElement.java b/src/bind/java/org/w3c/dom/svg/SVGGradientElement.java deleted file mode 100644 index 8cbc03f1c..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGGradientElement.java +++ /dev/null @@ -1,19 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGGradientElement extends - SVGElement, - SVGURIReference, - SVGExternalResourcesRequired, - SVGStylable, - SVGUnitTypes { - // Spread Method Types - public static final short SVG_SPREADMETHOD_UNKNOWN = 0; - public static final short SVG_SPREADMETHOD_PAD = 1; - public static final short SVG_SPREADMETHOD_REFLECT = 2; - public static final short SVG_SPREADMETHOD_REPEAT = 3; - - public SVGAnimatedEnumeration getGradientUnits( ); - public SVGAnimatedTransformList getGradientTransform( ); - public SVGAnimatedEnumeration getSpreadMethod( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGHKernElement.java b/src/bind/java/org/w3c/dom/svg/SVGHKernElement.java deleted file mode 100644 index ca527b67c..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGHKernElement.java +++ /dev/null @@ -1,6 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGHKernElement extends - SVGElement { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGICCColor.java b/src/bind/java/org/w3c/dom/svg/SVGICCColor.java deleted file mode 100644 index e04962838..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGICCColor.java +++ /dev/null @@ -1,10 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; -public interface SVGICCColor { - public String getColorProfile( ); - public void setColorProfile( String colorProfile ) - throws DOMException; - public SVGNumberList getColors( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGImageElement.java b/src/bind/java/org/w3c/dom/svg/SVGImageElement.java deleted file mode 100644 index f77101f91..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGImageElement.java +++ /dev/null @@ -1,20 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.events.EventTarget; - -public interface SVGImageElement extends - SVGElement, - SVGURIReference, - SVGTests, - SVGLangSpace, - SVGExternalResourcesRequired, - SVGStylable, - SVGTransformable, - EventTarget { - public SVGAnimatedLength getX( ); - public SVGAnimatedLength getY( ); - public SVGAnimatedLength getWidth( ); - public SVGAnimatedLength getHeight( ); - public SVGAnimatedPreserveAspectRatio getPreserveAspectRatio( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGLangSpace.java b/src/bind/java/org/w3c/dom/svg/SVGLangSpace.java deleted file mode 100644 index 300d52725..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGLangSpace.java +++ /dev/null @@ -1,13 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGLangSpace { - public String getXMLlang( ); - public void setXMLlang( String xmllang ) - throws DOMException; - public String getXMLspace( ); - public void setXMLspace( String xmlspace ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGLength.java b/src/bind/java/org/w3c/dom/svg/SVGLength.java deleted file mode 100644 index 88b7bdd38..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGLength.java +++ /dev/null @@ -1,32 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; -public interface SVGLength { - // Length Unit Types - public static final short SVG_LENGTHTYPE_UNKNOWN = 0; - public static final short SVG_LENGTHTYPE_NUMBER = 1; - public static final short SVG_LENGTHTYPE_PERCENTAGE = 2; - public static final short SVG_LENGTHTYPE_EMS = 3; - public static final short SVG_LENGTHTYPE_EXS = 4; - public static final short SVG_LENGTHTYPE_PX = 5; - public static final short SVG_LENGTHTYPE_CM = 6; - public static final short SVG_LENGTHTYPE_MM = 7; - public static final short SVG_LENGTHTYPE_IN = 8; - public static final short SVG_LENGTHTYPE_PT = 9; - public static final short SVG_LENGTHTYPE_PC = 10; - - public short getUnitType( ); - public float getValue( ); - public void setValue( float value ) - throws DOMException; - public float getValueInSpecifiedUnits( ); - public void setValueInSpecifiedUnits( float valueInSpecifiedUnits ) - throws DOMException; - public String getValueAsString( ); - public void setValueAsString( String valueAsString ) - throws DOMException; - - public void newValueSpecifiedUnits ( short unitType, float valueInSpecifiedUnits ); - public void convertToSpecifiedUnits ( short unitType ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGLengthList.java b/src/bind/java/org/w3c/dom/svg/SVGLengthList.java deleted file mode 100644 index ba4c259e8..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGLengthList.java +++ /dev/null @@ -1,23 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGLengthList { - public int getNumberOfItems( ); - - public void clear ( ) - throws DOMException; - public SVGLength initialize ( SVGLength newItem ) - throws DOMException, SVGException; - public SVGLength getItem ( int index ) - throws DOMException; - public SVGLength insertItemBefore ( SVGLength newItem, int index ) - throws DOMException, SVGException; - public SVGLength replaceItem ( SVGLength newItem, int index ) - throws DOMException, SVGException; - public SVGLength removeItem ( int index ) - throws DOMException; - public SVGLength appendItem ( SVGLength newItem ) - throws DOMException, SVGException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGLineElement.java b/src/bind/java/org/w3c/dom/svg/SVGLineElement.java deleted file mode 100644 index 45b947cbc..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGLineElement.java +++ /dev/null @@ -1,18 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.events.EventTarget; - -public interface SVGLineElement extends - SVGElement, - SVGTests, - SVGLangSpace, - SVGExternalResourcesRequired, - SVGStylable, - SVGTransformable, - EventTarget { - public SVGAnimatedLength getX1( ); - public SVGAnimatedLength getY1( ); - public SVGAnimatedLength getX2( ); - public SVGAnimatedLength getY2( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGLinearGradientElement.java b/src/bind/java/org/w3c/dom/svg/SVGLinearGradientElement.java deleted file mode 100644 index 189eda2cb..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGLinearGradientElement.java +++ /dev/null @@ -1,10 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGLinearGradientElement extends - SVGGradientElement { - public SVGAnimatedLength getX1( ); - public SVGAnimatedLength getY1( ); - public SVGAnimatedLength getX2( ); - public SVGAnimatedLength getY2( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGLocatable.java b/src/bind/java/org/w3c/dom/svg/SVGLocatable.java deleted file mode 100644 index 618b955eb..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGLocatable.java +++ /dev/null @@ -1,13 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGLocatable { - public SVGElement getNearestViewportElement( ); - public SVGElement getFarthestViewportElement( ); - - public SVGRect getBBox ( ); - public SVGMatrix getCTM ( ); - public SVGMatrix getScreenCTM ( ); - public SVGMatrix getTransformToElement ( SVGElement element ) - throws SVGException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGMPathElement.java b/src/bind/java/org/w3c/dom/svg/SVGMPathElement.java deleted file mode 100644 index 36032385b..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGMPathElement.java +++ /dev/null @@ -1,8 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGMPathElement extends - SVGElement, - SVGURIReference, - SVGExternalResourcesRequired { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGMarkerElement.java b/src/bind/java/org/w3c/dom/svg/SVGMarkerElement.java deleted file mode 100644 index 810ce56f4..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGMarkerElement.java +++ /dev/null @@ -1,29 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGMarkerElement extends - SVGElement, - SVGLangSpace, - SVGExternalResourcesRequired, - SVGStylable, - SVGFitToViewBox { - // Marker Unit Types - public static final short SVG_MARKERUNITS_UNKNOWN = 0; - public static final short SVG_MARKERUNITS_USERSPACEONUSE = 1; - public static final short SVG_MARKERUNITS_STROKEWIDTH = 2; - // Marker Orientation Types - public static final short SVG_MARKER_ORIENT_UNKNOWN = 0; - public static final short SVG_MARKER_ORIENT_AUTO = 1; - public static final short SVG_MARKER_ORIENT_ANGLE = 2; - - public SVGAnimatedLength getRefX( ); - public SVGAnimatedLength getRefY( ); - public SVGAnimatedEnumeration getMarkerUnits( ); - public SVGAnimatedLength getMarkerWidth( ); - public SVGAnimatedLength getMarkerHeight( ); - public SVGAnimatedEnumeration getOrientType( ); - public SVGAnimatedAngle getOrientAngle( ); - - public void setOrientToAuto ( ); - public void setOrientToAngle ( SVGAngle angle ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGMaskElement.java b/src/bind/java/org/w3c/dom/svg/SVGMaskElement.java deleted file mode 100644 index bb3a8651f..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGMaskElement.java +++ /dev/null @@ -1,17 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGMaskElement extends - SVGElement, - SVGTests, - SVGLangSpace, - SVGExternalResourcesRequired, - SVGStylable, - SVGUnitTypes { - public SVGAnimatedEnumeration getMaskUnits( ); - public SVGAnimatedEnumeration getMaskContentUnits( ); - public SVGAnimatedLength getX( ); - public SVGAnimatedLength getY( ); - public SVGAnimatedLength getWidth( ); - public SVGAnimatedLength getHeight( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGMatrix.java b/src/bind/java/org/w3c/dom/svg/SVGMatrix.java deleted file mode 100644 index 652b4e1b0..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGMatrix.java +++ /dev/null @@ -1,39 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGMatrix { - public float getA( ); - public void setA( float a ) - throws DOMException; - public float getB( ); - public void setB( float b ) - throws DOMException; - public float getC( ); - public void setC( float c ) - throws DOMException; - public float getD( ); - public void setD( float d ) - throws DOMException; - public float getE( ); - public void setE( float e ) - throws DOMException; - public float getF( ); - public void setF( float f ) - throws DOMException; - - public SVGMatrix multiply ( SVGMatrix secondMatrix ); - public SVGMatrix inverse ( ) - throws SVGException; - public SVGMatrix translate ( float x, float y ); - public SVGMatrix scale ( float scaleFactor ); - public SVGMatrix scaleNonUniform ( float scaleFactorX, float scaleFactorY ); - public SVGMatrix rotate ( float angle ); - public SVGMatrix rotateFromVector ( float x, float y ) - throws SVGException; - public SVGMatrix flipX ( ); - public SVGMatrix flipY ( ); - public SVGMatrix skewX ( float angle ); - public SVGMatrix skewY ( float angle ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGMetadataElement.java b/src/bind/java/org/w3c/dom/svg/SVGMetadataElement.java deleted file mode 100644 index d8485d124..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGMetadataElement.java +++ /dev/null @@ -1,6 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGMetadataElement extends - SVGElement { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGMissingGlyphElement.java b/src/bind/java/org/w3c/dom/svg/SVGMissingGlyphElement.java deleted file mode 100644 index 8c777fb2a..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGMissingGlyphElement.java +++ /dev/null @@ -1,7 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGMissingGlyphElement extends - SVGElement, - SVGStylable { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGNumber.java b/src/bind/java/org/w3c/dom/svg/SVGNumber.java deleted file mode 100644 index 1dcdc8a23..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGNumber.java +++ /dev/null @@ -1,10 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGNumber { - public float getValue( ); - public void setValue( float value ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGNumberList.java b/src/bind/java/org/w3c/dom/svg/SVGNumberList.java deleted file mode 100644 index a2db146fc..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGNumberList.java +++ /dev/null @@ -1,23 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGNumberList { - public int getNumberOfItems( ); - - public void clear ( ) - throws DOMException; - public SVGNumber initialize ( SVGNumber newItem ) - throws DOMException, SVGException; - public SVGNumber getItem ( int index ) - throws DOMException; - public SVGNumber insertItemBefore ( SVGNumber newItem, int index ) - throws DOMException, SVGException; - public SVGNumber replaceItem ( SVGNumber newItem, int index ) - throws DOMException, SVGException; - public SVGNumber removeItem ( int index ) - throws DOMException; - public SVGNumber appendItem ( SVGNumber newItem ) - throws DOMException, SVGException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPaint.java b/src/bind/java/org/w3c/dom/svg/SVGPaint.java deleted file mode 100644 index 66d54c668..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPaint.java +++ /dev/null @@ -1,26 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.css.RGBColor; - -public interface SVGPaint extends - SVGColor { - // Paint Types - public static final short SVG_PAINTTYPE_UNKNOWN = 0; - public static final short SVG_PAINTTYPE_RGBCOLOR = 1; - public static final short SVG_PAINTTYPE_RGBCOLOR_ICCCOLOR = 2; - public static final short SVG_PAINTTYPE_NONE = 101; - public static final short SVG_PAINTTYPE_CURRENTCOLOR = 102; - public static final short SVG_PAINTTYPE_URI_NONE = 103; - public static final short SVG_PAINTTYPE_URI_CURRENTCOLOR = 104; - public static final short SVG_PAINTTYPE_URI_RGBCOLOR = 105; - public static final short SVG_PAINTTYPE_URI_RGBCOLOR_ICCCOLOR = 106; - public static final short SVG_PAINTTYPE_URI = 107; - - public short getPaintType( ); - public String getUri( ); - - public void setUri ( String uri ); - public void setPaint ( short paintType, String uri, String rgbColor, String iccColor ) - throws SVGException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPathElement.java b/src/bind/java/org/w3c/dom/svg/SVGPathElement.java deleted file mode 100644 index 71efe6d69..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPathElement.java +++ /dev/null @@ -1,39 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.events.EventTarget; - -public interface SVGPathElement extends - SVGElement, - SVGTests, - SVGLangSpace, - SVGExternalResourcesRequired, - SVGStylable, - SVGTransformable, - EventTarget, - SVGAnimatedPathData { - public SVGAnimatedNumber getPathLength( ); - - public float getTotalLength ( ); - public SVGPoint getPointAtLength ( float distance ); - public int getPathSegAtLength ( float distance ); - public SVGPathSegClosePath createSVGPathSegClosePath ( ); - public SVGPathSegMovetoAbs createSVGPathSegMovetoAbs ( float x, float y ); - public SVGPathSegMovetoRel createSVGPathSegMovetoRel ( float x, float y ); - public SVGPathSegLinetoAbs createSVGPathSegLinetoAbs ( float x, float y ); - public SVGPathSegLinetoRel createSVGPathSegLinetoRel ( float x, float y ); - public SVGPathSegCurvetoCubicAbs createSVGPathSegCurvetoCubicAbs ( float x, float y, float x1, float y1, float x2, float y2 ); - public SVGPathSegCurvetoCubicRel createSVGPathSegCurvetoCubicRel ( float x, float y, float x1, float y1, float x2, float y2 ); - public SVGPathSegCurvetoQuadraticAbs createSVGPathSegCurvetoQuadraticAbs ( float x, float y, float x1, float y1 ); - public SVGPathSegCurvetoQuadraticRel createSVGPathSegCurvetoQuadraticRel ( float x, float y, float x1, float y1 ); - public SVGPathSegArcAbs createSVGPathSegArcAbs ( float x, float y, float r1, float r2, float angle, boolean largeArcFlag, boolean sweepFlag ); - public SVGPathSegArcRel createSVGPathSegArcRel ( float x, float y, float r1, float r2, float angle, boolean largeArcFlag, boolean sweepFlag ); - public SVGPathSegLinetoHorizontalAbs createSVGPathSegLinetoHorizontalAbs ( float x ); - public SVGPathSegLinetoHorizontalRel createSVGPathSegLinetoHorizontalRel ( float x ); - public SVGPathSegLinetoVerticalAbs createSVGPathSegLinetoVerticalAbs ( float y ); - public SVGPathSegLinetoVerticalRel createSVGPathSegLinetoVerticalRel ( float y ); - public SVGPathSegCurvetoCubicSmoothAbs createSVGPathSegCurvetoCubicSmoothAbs ( float x, float y, float x2, float y2 ); - public SVGPathSegCurvetoCubicSmoothRel createSVGPathSegCurvetoCubicSmoothRel ( float x, float y, float x2, float y2 ); - public SVGPathSegCurvetoQuadraticSmoothAbs createSVGPathSegCurvetoQuadraticSmoothAbs ( float x, float y ); - public SVGPathSegCurvetoQuadraticSmoothRel createSVGPathSegCurvetoQuadraticSmoothRel ( float x, float y ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPathSeg.java b/src/bind/java/org/w3c/dom/svg/SVGPathSeg.java deleted file mode 100644 index dea607e41..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPathSeg.java +++ /dev/null @@ -1,29 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGPathSeg { - // Path Segment Types - public static final short PATHSEG_UNKNOWN = 0; - public static final short PATHSEG_CLOSEPATH = 1; - public static final short PATHSEG_MOVETO_ABS = 2; - public static final short PATHSEG_MOVETO_REL = 3; - public static final short PATHSEG_LINETO_ABS = 4; - public static final short PATHSEG_LINETO_REL = 5; - public static final short PATHSEG_CURVETO_CUBIC_ABS = 6; - public static final short PATHSEG_CURVETO_CUBIC_REL = 7; - public static final short PATHSEG_CURVETO_QUADRATIC_ABS = 8; - public static final short PATHSEG_CURVETO_QUADRATIC_REL = 9; - public static final short PATHSEG_ARC_ABS = 10; - public static final short PATHSEG_ARC_REL = 11; - public static final short PATHSEG_LINETO_HORIZONTAL_ABS = 12; - public static final short PATHSEG_LINETO_HORIZONTAL_REL = 13; - public static final short PATHSEG_LINETO_VERTICAL_ABS = 14; - public static final short PATHSEG_LINETO_VERTICAL_REL = 15; - public static final short PATHSEG_CURVETO_CUBIC_SMOOTH_ABS = 16; - public static final short PATHSEG_CURVETO_CUBIC_SMOOTH_REL = 17; - public static final short PATHSEG_CURVETO_QUADRATIC_SMOOTH_ABS = 18; - public static final short PATHSEG_CURVETO_QUADRATIC_SMOOTH_REL = 19; - - public short getPathSegType( ); - public String getPathSegTypeAsLetter( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPathSegArcAbs.java b/src/bind/java/org/w3c/dom/svg/SVGPathSegArcAbs.java deleted file mode 100644 index 84c2e7e2b..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPathSegArcAbs.java +++ /dev/null @@ -1,29 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGPathSegArcAbs extends - SVGPathSeg { - public float getX( ); - public void setX( float x ) - throws DOMException; - public float getY( ); - public void setY( float y ) - throws DOMException; - public float getR1( ); - public void setR1( float r1 ) - throws DOMException; - public float getR2( ); - public void setR2( float r2 ) - throws DOMException; - public float getAngle( ); - public void setAngle( float angle ) - throws DOMException; - public boolean getLargeArcFlag( ); - public void setLargeArcFlag( boolean largeArcFlag ) - throws DOMException; - public boolean getSweepFlag( ); - public void setSweepFlag( boolean sweepFlag ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPathSegArcRel.java b/src/bind/java/org/w3c/dom/svg/SVGPathSegArcRel.java deleted file mode 100644 index 074bb799c..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPathSegArcRel.java +++ /dev/null @@ -1,29 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGPathSegArcRel extends - SVGPathSeg { - public float getX( ); - public void setX( float x ) - throws DOMException; - public float getY( ); - public void setY( float y ) - throws DOMException; - public float getR1( ); - public void setR1( float r1 ) - throws DOMException; - public float getR2( ); - public void setR2( float r2 ) - throws DOMException; - public float getAngle( ); - public void setAngle( float angle ) - throws DOMException; - public boolean getLargeArcFlag( ); - public void setLargeArcFlag( boolean largeArcFlag ) - throws DOMException; - public boolean getSweepFlag( ); - public void setSweepFlag( boolean sweepFlag ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPathSegClosePath.java b/src/bind/java/org/w3c/dom/svg/SVGPathSegClosePath.java deleted file mode 100644 index 9beb4667d..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPathSegClosePath.java +++ /dev/null @@ -1,6 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGPathSegClosePath extends - SVGPathSeg { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoCubicAbs.java b/src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoCubicAbs.java deleted file mode 100644 index 9aeec16d6..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoCubicAbs.java +++ /dev/null @@ -1,26 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGPathSegCurvetoCubicAbs extends - SVGPathSeg { - public float getX( ); - public void setX( float x ) - throws DOMException; - public float getY( ); - public void setY( float y ) - throws DOMException; - public float getX1( ); - public void setX1( float x1 ) - throws DOMException; - public float getY1( ); - public void setY1( float y1 ) - throws DOMException; - public float getX2( ); - public void setX2( float x2 ) - throws DOMException; - public float getY2( ); - public void setY2( float y2 ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoCubicRel.java b/src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoCubicRel.java deleted file mode 100644 index 890d98ef7..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoCubicRel.java +++ /dev/null @@ -1,26 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGPathSegCurvetoCubicRel extends - SVGPathSeg { - public float getX( ); - public void setX( float x ) - throws DOMException; - public float getY( ); - public void setY( float y ) - throws DOMException; - public float getX1( ); - public void setX1( float x1 ) - throws DOMException; - public float getY1( ); - public void setY1( float y1 ) - throws DOMException; - public float getX2( ); - public void setX2( float x2 ) - throws DOMException; - public float getY2( ); - public void setY2( float y2 ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoCubicSmoothAbs.java b/src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoCubicSmoothAbs.java deleted file mode 100644 index ede2644d8..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoCubicSmoothAbs.java +++ /dev/null @@ -1,20 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGPathSegCurvetoCubicSmoothAbs extends - SVGPathSeg { - public float getX( ); - public void setX( float x ) - throws DOMException; - public float getY( ); - public void setY( float y ) - throws DOMException; - public float getX2( ); - public void setX2( float x2 ) - throws DOMException; - public float getY2( ); - public void setY2( float y2 ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoCubicSmoothRel.java b/src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoCubicSmoothRel.java deleted file mode 100644 index 2336ad699..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoCubicSmoothRel.java +++ /dev/null @@ -1,20 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGPathSegCurvetoCubicSmoothRel extends - SVGPathSeg { - public float getX( ); - public void setX( float x ) - throws DOMException; - public float getY( ); - public void setY( float y ) - throws DOMException; - public float getX2( ); - public void setX2( float x2 ) - throws DOMException; - public float getY2( ); - public void setY2( float y2 ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoQuadraticAbs.java b/src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoQuadraticAbs.java deleted file mode 100644 index 9e3d742da..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoQuadraticAbs.java +++ /dev/null @@ -1,20 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGPathSegCurvetoQuadraticAbs extends - SVGPathSeg { - public float getX( ); - public void setX( float x ) - throws DOMException; - public float getY( ); - public void setY( float y ) - throws DOMException; - public float getX1( ); - public void setX1( float x1 ) - throws DOMException; - public float getY1( ); - public void setY1( float y1 ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoQuadraticRel.java b/src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoQuadraticRel.java deleted file mode 100644 index bf2add7f4..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoQuadraticRel.java +++ /dev/null @@ -1,20 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGPathSegCurvetoQuadraticRel extends - SVGPathSeg { - public float getX( ); - public void setX( float x ) - throws DOMException; - public float getY( ); - public void setY( float y ) - throws DOMException; - public float getX1( ); - public void setX1( float x1 ) - throws DOMException; - public float getY1( ); - public void setY1( float y1 ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoQuadraticSmoothAbs.java b/src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoQuadraticSmoothAbs.java deleted file mode 100644 index de08156cc..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoQuadraticSmoothAbs.java +++ /dev/null @@ -1,14 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGPathSegCurvetoQuadraticSmoothAbs extends - SVGPathSeg { - public float getX( ); - public void setX( float x ) - throws DOMException; - public float getY( ); - public void setY( float y ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoQuadraticSmoothRel.java b/src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoQuadraticSmoothRel.java deleted file mode 100644 index 2e434493e..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPathSegCurvetoQuadraticSmoothRel.java +++ /dev/null @@ -1,14 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGPathSegCurvetoQuadraticSmoothRel extends - SVGPathSeg { - public float getX( ); - public void setX( float x ) - throws DOMException; - public float getY( ); - public void setY( float y ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPathSegLinetoAbs.java b/src/bind/java/org/w3c/dom/svg/SVGPathSegLinetoAbs.java deleted file mode 100644 index e9d666f6c..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPathSegLinetoAbs.java +++ /dev/null @@ -1,14 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGPathSegLinetoAbs extends - SVGPathSeg { - public float getX( ); - public void setX( float x ) - throws DOMException; - public float getY( ); - public void setY( float y ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPathSegLinetoHorizontalAbs.java b/src/bind/java/org/w3c/dom/svg/SVGPathSegLinetoHorizontalAbs.java deleted file mode 100644 index 6a30564d8..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPathSegLinetoHorizontalAbs.java +++ /dev/null @@ -1,11 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGPathSegLinetoHorizontalAbs extends - SVGPathSeg { - public float getX( ); - public void setX( float x ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPathSegLinetoHorizontalRel.java b/src/bind/java/org/w3c/dom/svg/SVGPathSegLinetoHorizontalRel.java deleted file mode 100644 index 353dd607e..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPathSegLinetoHorizontalRel.java +++ /dev/null @@ -1,11 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGPathSegLinetoHorizontalRel extends - SVGPathSeg { - public float getX( ); - public void setX( float x ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPathSegLinetoRel.java b/src/bind/java/org/w3c/dom/svg/SVGPathSegLinetoRel.java deleted file mode 100644 index f41da3905..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPathSegLinetoRel.java +++ /dev/null @@ -1,14 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGPathSegLinetoRel extends - SVGPathSeg { - public float getX( ); - public void setX( float x ) - throws DOMException; - public float getY( ); - public void setY( float y ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPathSegLinetoVerticalAbs.java b/src/bind/java/org/w3c/dom/svg/SVGPathSegLinetoVerticalAbs.java deleted file mode 100644 index 77d4e70fe..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPathSegLinetoVerticalAbs.java +++ /dev/null @@ -1,11 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGPathSegLinetoVerticalAbs extends - SVGPathSeg { - public float getY( ); - public void setY( float y ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPathSegLinetoVerticalRel.java b/src/bind/java/org/w3c/dom/svg/SVGPathSegLinetoVerticalRel.java deleted file mode 100644 index fc46adcfe..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPathSegLinetoVerticalRel.java +++ /dev/null @@ -1,11 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGPathSegLinetoVerticalRel extends - SVGPathSeg { - public float getY( ); - public void setY( float y ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPathSegList.java b/src/bind/java/org/w3c/dom/svg/SVGPathSegList.java deleted file mode 100644 index f5005e7c3..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPathSegList.java +++ /dev/null @@ -1,23 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGPathSegList { - public int getNumberOfItems( ); - - public void clear ( ) - throws DOMException; - public SVGPathSeg initialize ( SVGPathSeg newItem ) - throws DOMException, SVGException; - public SVGPathSeg getItem ( int index ) - throws DOMException; - public SVGPathSeg insertItemBefore ( SVGPathSeg newItem, int index ) - throws DOMException, SVGException; - public SVGPathSeg replaceItem ( SVGPathSeg newItem, int index ) - throws DOMException, SVGException; - public SVGPathSeg removeItem ( int index ) - throws DOMException; - public SVGPathSeg appendItem ( SVGPathSeg newItem ) - throws DOMException, SVGException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPathSegMovetoAbs.java b/src/bind/java/org/w3c/dom/svg/SVGPathSegMovetoAbs.java deleted file mode 100644 index 80642f5b3..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPathSegMovetoAbs.java +++ /dev/null @@ -1,14 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGPathSegMovetoAbs extends - SVGPathSeg { - public float getX( ); - public void setX( float x ) - throws DOMException; - public float getY( ); - public void setY( float y ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPathSegMovetoRel.java b/src/bind/java/org/w3c/dom/svg/SVGPathSegMovetoRel.java deleted file mode 100644 index 405c56fbc..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPathSegMovetoRel.java +++ /dev/null @@ -1,14 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGPathSegMovetoRel extends - SVGPathSeg { - public float getX( ); - public void setX( float x ) - throws DOMException; - public float getY( ); - public void setY( float y ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPatternElement.java b/src/bind/java/org/w3c/dom/svg/SVGPatternElement.java deleted file mode 100644 index cfa147173..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPatternElement.java +++ /dev/null @@ -1,20 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGPatternElement extends - SVGElement, - SVGURIReference, - SVGTests, - SVGLangSpace, - SVGExternalResourcesRequired, - SVGStylable, - SVGFitToViewBox, - SVGUnitTypes { - public SVGAnimatedEnumeration getPatternUnits( ); - public SVGAnimatedEnumeration getPatternContentUnits( ); - public SVGAnimatedTransformList getPatternTransform( ); - public SVGAnimatedLength getX( ); - public SVGAnimatedLength getY( ); - public SVGAnimatedLength getWidth( ); - public SVGAnimatedLength getHeight( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPoint.java b/src/bind/java/org/w3c/dom/svg/SVGPoint.java deleted file mode 100644 index 982576cd2..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPoint.java +++ /dev/null @@ -1,15 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGPoint { - public float getX( ); - public void setX( float x ) - throws DOMException; - public float getY( ); - public void setY( float y ) - throws DOMException; - - public SVGPoint matrixTransform ( SVGMatrix matrix ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPointList.java b/src/bind/java/org/w3c/dom/svg/SVGPointList.java deleted file mode 100644 index 8fe262a9e..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPointList.java +++ /dev/null @@ -1,23 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGPointList { - public int getNumberOfItems( ); - - public void clear ( ) - throws DOMException; - public SVGPoint initialize ( SVGPoint newItem ) - throws DOMException, SVGException; - public SVGPoint getItem ( int index ) - throws DOMException; - public SVGPoint insertItemBefore ( SVGPoint newItem, int index ) - throws DOMException, SVGException; - public SVGPoint replaceItem ( SVGPoint newItem, int index ) - throws DOMException, SVGException; - public SVGPoint removeItem ( int index ) - throws DOMException; - public SVGPoint appendItem ( SVGPoint newItem ) - throws DOMException, SVGException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPolygonElement.java b/src/bind/java/org/w3c/dom/svg/SVGPolygonElement.java deleted file mode 100644 index 6171fb69c..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPolygonElement.java +++ /dev/null @@ -1,15 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.events.EventTarget; - -public interface SVGPolygonElement extends - SVGElement, - SVGTests, - SVGLangSpace, - SVGExternalResourcesRequired, - SVGStylable, - SVGTransformable, - EventTarget, - SVGAnimatedPoints { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPolylineElement.java b/src/bind/java/org/w3c/dom/svg/SVGPolylineElement.java deleted file mode 100644 index 9fad2ab31..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPolylineElement.java +++ /dev/null @@ -1,15 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.events.EventTarget; - -public interface SVGPolylineElement extends - SVGElement, - SVGTests, - SVGLangSpace, - SVGExternalResourcesRequired, - SVGStylable, - SVGTransformable, - EventTarget, - SVGAnimatedPoints { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGPreserveAspectRatio.java b/src/bind/java/org/w3c/dom/svg/SVGPreserveAspectRatio.java deleted file mode 100644 index 919569dac..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGPreserveAspectRatio.java +++ /dev/null @@ -1,30 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGPreserveAspectRatio { - // Alignment Types - public static final short SVG_PRESERVEASPECTRATIO_UNKNOWN = 0; - public static final short SVG_PRESERVEASPECTRATIO_NONE = 1; - public static final short SVG_PRESERVEASPECTRATIO_XMINYMIN = 2; - public static final short SVG_PRESERVEASPECTRATIO_XMIDYMIN = 3; - public static final short SVG_PRESERVEASPECTRATIO_XMAXYMIN = 4; - public static final short SVG_PRESERVEASPECTRATIO_XMINYMID = 5; - public static final short SVG_PRESERVEASPECTRATIO_XMIDYMID = 6; - public static final short SVG_PRESERVEASPECTRATIO_XMAXYMID = 7; - public static final short SVG_PRESERVEASPECTRATIO_XMINYMAX = 8; - public static final short SVG_PRESERVEASPECTRATIO_XMIDYMAX = 9; - public static final short SVG_PRESERVEASPECTRATIO_XMAXYMAX = 10; - // Meet-or-slice Types - public static final short SVG_MEETORSLICE_UNKNOWN = 0; - public static final short SVG_MEETORSLICE_MEET = 1; - public static final short SVG_MEETORSLICE_SLICE = 2; - - public short getAlign( ); - public void setAlign( short align ) - throws DOMException; - public short getMeetOrSlice( ); - public void setMeetOrSlice( short meetOrSlice ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGRadialGradientElement.java b/src/bind/java/org/w3c/dom/svg/SVGRadialGradientElement.java deleted file mode 100644 index 6c8af9294..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGRadialGradientElement.java +++ /dev/null @@ -1,11 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGRadialGradientElement extends - SVGGradientElement { - public SVGAnimatedLength getCx( ); - public SVGAnimatedLength getCy( ); - public SVGAnimatedLength getR( ); - public SVGAnimatedLength getFx( ); - public SVGAnimatedLength getFy( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGRect.java b/src/bind/java/org/w3c/dom/svg/SVGRect.java deleted file mode 100644 index fd6de0603..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGRect.java +++ /dev/null @@ -1,19 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGRect { - public float getX( ); - public void setX( float x ) - throws DOMException; - public float getY( ); - public void setY( float y ) - throws DOMException; - public float getWidth( ); - public void setWidth( float width ) - throws DOMException; - public float getHeight( ); - public void setHeight( float height ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGRectElement.java b/src/bind/java/org/w3c/dom/svg/SVGRectElement.java deleted file mode 100644 index 4c79150f3..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGRectElement.java +++ /dev/null @@ -1,20 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.events.EventTarget; - -public interface SVGRectElement extends - SVGElement, - SVGTests, - SVGLangSpace, - SVGExternalResourcesRequired, - SVGStylable, - SVGTransformable, - EventTarget { - public SVGAnimatedLength getX( ); - public SVGAnimatedLength getY( ); - public SVGAnimatedLength getWidth( ); - public SVGAnimatedLength getHeight( ); - public SVGAnimatedLength getRx( ); - public SVGAnimatedLength getRy( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGRenderingIntent.java b/src/bind/java/org/w3c/dom/svg/SVGRenderingIntent.java deleted file mode 100644 index fc46f9f79..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGRenderingIntent.java +++ /dev/null @@ -1,12 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGRenderingIntent { - // Rendering Intent Types - public static final short RENDERING_INTENT_UNKNOWN = 0; - public static final short RENDERING_INTENT_AUTO = 1; - public static final short RENDERING_INTENT_PERCEPTUAL = 2; - public static final short RENDERING_INTENT_RELATIVE_COLORIMETRIC = 3; - public static final short RENDERING_INTENT_SATURATION = 4; - public static final short RENDERING_INTENT_ABSOLUTE_COLORIMETRIC = 5; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGSVGElement.java b/src/bind/java/org/w3c/dom/svg/SVGSVGElement.java deleted file mode 100644 index 6507a1304..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGSVGElement.java +++ /dev/null @@ -1,74 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.events.DocumentEvent; -import org.w3c.dom.events.EventTarget; -import org.w3c.dom.DOMException; -import org.w3c.dom.NodeList; -import org.w3c.dom.Element; -import org.w3c.dom.css.ViewCSS; -import org.w3c.dom.css.DocumentCSS; -import org.w3c.dom.css.RGBColor; - -public interface SVGSVGElement extends - SVGElement, - SVGTests, - SVGLangSpace, - SVGExternalResourcesRequired, - SVGStylable, - SVGLocatable, - SVGFitToViewBox, - SVGZoomAndPan, - EventTarget, - DocumentEvent, - ViewCSS, - DocumentCSS { - public SVGAnimatedLength getX( ); - public SVGAnimatedLength getY( ); - public SVGAnimatedLength getWidth( ); - public SVGAnimatedLength getHeight( ); - public String getContentScriptType( ); - public void setContentScriptType( String contentScriptType ) - throws DOMException; - public String getContentStyleType( ); - public void setContentStyleType( String contentStyleType ) - throws DOMException; - public SVGRect getViewport( ); - public float getPixelUnitToMillimeterX( ); - public float getPixelUnitToMillimeterY( ); - public float getScreenPixelToMillimeterX( ); - public float getScreenPixelToMillimeterY( ); - public boolean getUseCurrentView( ); - public void setUseCurrentView( boolean useCurrentView ) - throws DOMException; - public SVGViewSpec getCurrentView( ); - public float getCurrentScale( ); - public void setCurrentScale( float currentScale ) - throws DOMException; - public SVGPoint getCurrentTranslate( ); - - public int suspendRedraw ( int max_wait_milliseconds ); - public void unsuspendRedraw ( int suspend_handle_id ) - throws DOMException; - public void unsuspendRedrawAll ( ); - public void forceRedraw ( ); - public void pauseAnimations ( ); - public void unpauseAnimations ( ); - public boolean animationsPaused ( ); - public float getCurrentTime ( ); - public void setCurrentTime ( float seconds ); - public NodeList getIntersectionList ( SVGRect rect, SVGElement referenceElement ); - public NodeList getEnclosureList ( SVGRect rect, SVGElement referenceElement ); - public boolean checkIntersection ( SVGElement element, SVGRect rect ); - public boolean checkEnclosure ( SVGElement element, SVGRect rect ); - public void deselectAll ( ); - public SVGNumber createSVGNumber ( ); - public SVGLength createSVGLength ( ); - public SVGAngle createSVGAngle ( ); - public SVGPoint createSVGPoint ( ); - public SVGMatrix createSVGMatrix ( ); - public SVGRect createSVGRect ( ); - public SVGTransform createSVGTransform ( ); - public SVGTransform createSVGTransformFromMatrix ( SVGMatrix matrix ); - public Element getElementById ( String elementId ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGScriptElement.java b/src/bind/java/org/w3c/dom/svg/SVGScriptElement.java deleted file mode 100644 index 14863e6eb..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGScriptElement.java +++ /dev/null @@ -1,13 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGScriptElement extends - SVGElement, - SVGURIReference, - SVGExternalResourcesRequired { - public String getType( ); - public void setType( String type ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGSetElement.java b/src/bind/java/org/w3c/dom/svg/SVGSetElement.java deleted file mode 100644 index 0ca9c09ef..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGSetElement.java +++ /dev/null @@ -1,6 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGSetElement extends - SVGAnimationElement { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGStopElement.java b/src/bind/java/org/w3c/dom/svg/SVGStopElement.java deleted file mode 100644 index 5865e6e60..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGStopElement.java +++ /dev/null @@ -1,8 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGStopElement extends - SVGElement, - SVGStylable { - public SVGAnimatedNumber getOffset( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGStringList.java b/src/bind/java/org/w3c/dom/svg/SVGStringList.java deleted file mode 100644 index d0fa0df9c..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGStringList.java +++ /dev/null @@ -1,23 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGStringList { - public int getNumberOfItems( ); - - public void clear ( ) - throws DOMException; - public String initialize ( String newItem ) - throws DOMException, SVGException; - public String getItem ( int index ) - throws DOMException; - public String insertItemBefore ( String newItem, int index ) - throws DOMException, SVGException; - public String replaceItem ( String newItem, int index ) - throws DOMException, SVGException; - public String removeItem ( int index ) - throws DOMException; - public String appendItem ( String newItem ) - throws DOMException, SVGException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGStylable.java b/src/bind/java/org/w3c/dom/svg/SVGStylable.java deleted file mode 100644 index 82c4913f8..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGStylable.java +++ /dev/null @@ -1,12 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.css.CSSStyleDeclaration; -import org.w3c.dom.css.CSSValue; - -public interface SVGStylable { - public SVGAnimatedString getClassName( ); - public CSSStyleDeclaration getStyle( ); - - public CSSValue getPresentationAttribute ( String name ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGStyleElement.java b/src/bind/java/org/w3c/dom/svg/SVGStyleElement.java deleted file mode 100644 index 1051ef67f..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGStyleElement.java +++ /dev/null @@ -1,20 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGStyleElement extends - SVGElement { - public String getXMLspace( ); - public void setXMLspace( String xmlspace ) - throws DOMException; - public String getType( ); - public void setType( String type ) - throws DOMException; - public String getMedia( ); - public void setMedia( String media ) - throws DOMException; - public String getTitle( ); - public void setTitle( String title ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGSwitchElement.java b/src/bind/java/org/w3c/dom/svg/SVGSwitchElement.java deleted file mode 100644 index c5187563b..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGSwitchElement.java +++ /dev/null @@ -1,14 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.events.EventTarget; - -public interface SVGSwitchElement extends - SVGElement, - SVGTests, - SVGLangSpace, - SVGExternalResourcesRequired, - SVGStylable, - SVGTransformable, - EventTarget { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGSymbolElement.java b/src/bind/java/org/w3c/dom/svg/SVGSymbolElement.java deleted file mode 100644 index ee288bc92..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGSymbolElement.java +++ /dev/null @@ -1,13 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.events.EventTarget; - -public interface SVGSymbolElement extends - SVGElement, - SVGLangSpace, - SVGExternalResourcesRequired, - SVGStylable, - SVGFitToViewBox, - EventTarget { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGTRefElement.java b/src/bind/java/org/w3c/dom/svg/SVGTRefElement.java deleted file mode 100644 index 2d8202ede..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGTRefElement.java +++ /dev/null @@ -1,7 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGTRefElement extends - SVGTextPositioningElement, - SVGURIReference { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGTSpanElement.java b/src/bind/java/org/w3c/dom/svg/SVGTSpanElement.java deleted file mode 100644 index 729b857db..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGTSpanElement.java +++ /dev/null @@ -1,6 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGTSpanElement extends - SVGTextPositioningElement { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGTests.java b/src/bind/java/org/w3c/dom/svg/SVGTests.java deleted file mode 100644 index a7026a5b0..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGTests.java +++ /dev/null @@ -1,10 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGTests { - public SVGStringList getRequiredFeatures( ); - public SVGStringList getRequiredExtensions( ); - public SVGStringList getSystemLanguage( ); - - public boolean hasExtension ( String extension ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGTextContentElement.java b/src/bind/java/org/w3c/dom/svg/SVGTextContentElement.java deleted file mode 100644 index c7c212961..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGTextContentElement.java +++ /dev/null @@ -1,37 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.events.EventTarget; -import org.w3c.dom.DOMException; - -public interface SVGTextContentElement extends - SVGElement, - SVGTests, - SVGLangSpace, - SVGExternalResourcesRequired, - SVGStylable, - EventTarget { - // lengthAdjust Types - public static final short LENGTHADJUST_UNKNOWN = 0; - public static final short LENGTHADJUST_SPACING = 1; - public static final short LENGTHADJUST_SPACINGANDGLYPHS = 2; - - public SVGAnimatedLength getTextLength( ); - public SVGAnimatedEnumeration getLengthAdjust( ); - - public int getNumberOfChars ( ); - public float getComputedTextLength ( ); - public float getSubStringLength ( int charnum, int nchars ) - throws DOMException; - public SVGPoint getStartPositionOfChar ( int charnum ) - throws DOMException; - public SVGPoint getEndPositionOfChar ( int charnum ) - throws DOMException; - public SVGRect getExtentOfChar ( int charnum ) - throws DOMException; - public float getRotationOfChar ( int charnum ) - throws DOMException; - public int getCharNumAtPosition ( SVGPoint point ); - public void selectSubString ( int charnum, int nchars ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGTextElement.java b/src/bind/java/org/w3c/dom/svg/SVGTextElement.java deleted file mode 100644 index f25cc3c20..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGTextElement.java +++ /dev/null @@ -1,7 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGTextElement extends - SVGTextPositioningElement, - SVGTransformable { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGTextPathElement.java b/src/bind/java/org/w3c/dom/svg/SVGTextPathElement.java deleted file mode 100644 index 0a8a256ad..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGTextPathElement.java +++ /dev/null @@ -1,19 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGTextPathElement extends - SVGTextContentElement, - SVGURIReference { - // textPath Method Types - public static final short TEXTPATH_METHODTYPE_UNKNOWN = 0; - public static final short TEXTPATH_METHODTYPE_ALIGN = 1; - public static final short TEXTPATH_METHODTYPE_STRETCH = 2; - // textPath Spacing Types - public static final short TEXTPATH_SPACINGTYPE_UNKNOWN = 0; - public static final short TEXTPATH_SPACINGTYPE_AUTO = 1; - public static final short TEXTPATH_SPACINGTYPE_EXACT = 2; - - public SVGAnimatedLength getStartOffset( ); - public SVGAnimatedEnumeration getMethod( ); - public SVGAnimatedEnumeration getSpacing( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGTextPositioningElement.java b/src/bind/java/org/w3c/dom/svg/SVGTextPositioningElement.java deleted file mode 100644 index d47887b8d..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGTextPositioningElement.java +++ /dev/null @@ -1,11 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGTextPositioningElement extends - SVGTextContentElement { - public SVGAnimatedLengthList getX( ); - public SVGAnimatedLengthList getY( ); - public SVGAnimatedLengthList getDx( ); - public SVGAnimatedLengthList getDy( ); - public SVGAnimatedNumberList getRotate( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGTitleElement.java b/src/bind/java/org/w3c/dom/svg/SVGTitleElement.java deleted file mode 100644 index cbf45fe2a..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGTitleElement.java +++ /dev/null @@ -1,8 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGTitleElement extends - SVGElement, - SVGLangSpace, - SVGStylable { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGTransform.java b/src/bind/java/org/w3c/dom/svg/SVGTransform.java deleted file mode 100644 index 16df6080f..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGTransform.java +++ /dev/null @@ -1,24 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGTransform { - // Transform Types - public static final short SVG_TRANSFORM_UNKNOWN = 0; - public static final short SVG_TRANSFORM_MATRIX = 1; - public static final short SVG_TRANSFORM_TRANSLATE = 2; - public static final short SVG_TRANSFORM_SCALE = 3; - public static final short SVG_TRANSFORM_ROTATE = 4; - public static final short SVG_TRANSFORM_SKEWX = 5; - public static final short SVG_TRANSFORM_SKEWY = 6; - - public short getType( ); - public SVGMatrix getMatrix( ); - public float getAngle( ); - - public void setMatrix ( SVGMatrix matrix ); - public void setTranslate ( float tx, float ty ); - public void setScale ( float sx, float sy ); - public void setRotate ( float angle, float cx, float cy ); - public void setSkewX ( float angle ); - public void setSkewY ( float angle ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGTransformList.java b/src/bind/java/org/w3c/dom/svg/SVGTransformList.java deleted file mode 100644 index 3e3a4c217..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGTransformList.java +++ /dev/null @@ -1,25 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGTransformList { - public int getNumberOfItems( ); - - public void clear ( ) - throws DOMException; - public SVGTransform initialize ( SVGTransform newItem ) - throws DOMException, SVGException; - public SVGTransform getItem ( int index ) - throws DOMException; - public SVGTransform insertItemBefore ( SVGTransform newItem, int index ) - throws DOMException, SVGException; - public SVGTransform replaceItem ( SVGTransform newItem, int index ) - throws DOMException, SVGException; - public SVGTransform removeItem ( int index ) - throws DOMException; - public SVGTransform appendItem ( SVGTransform newItem ) - throws DOMException, SVGException; - public SVGTransform createSVGTransformFromMatrix ( SVGMatrix matrix ); - public SVGTransform consolidate ( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGTransformable.java b/src/bind/java/org/w3c/dom/svg/SVGTransformable.java deleted file mode 100644 index 9abaaf0b1..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGTransformable.java +++ /dev/null @@ -1,7 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGTransformable extends - SVGLocatable { - public SVGAnimatedTransformList getTransform( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGURIReference.java b/src/bind/java/org/w3c/dom/svg/SVGURIReference.java deleted file mode 100644 index 3f2f784df..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGURIReference.java +++ /dev/null @@ -1,6 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGURIReference { - public SVGAnimatedString getHref( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGUnitTypes.java b/src/bind/java/org/w3c/dom/svg/SVGUnitTypes.java deleted file mode 100644 index 9fc7685e9..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGUnitTypes.java +++ /dev/null @@ -1,9 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGUnitTypes { - // Unit Types - public static final short SVG_UNIT_TYPE_UNKNOWN = 0; - public static final short SVG_UNIT_TYPE_USERSPACEONUSE = 1; - public static final short SVG_UNIT_TYPE_OBJECTBOUNDINGBOX = 2; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGUseElement.java b/src/bind/java/org/w3c/dom/svg/SVGUseElement.java deleted file mode 100644 index 3ce448141..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGUseElement.java +++ /dev/null @@ -1,21 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.events.EventTarget; - -public interface SVGUseElement extends - SVGElement, - SVGURIReference, - SVGTests, - SVGLangSpace, - SVGExternalResourcesRequired, - SVGStylable, - SVGTransformable, - EventTarget { - public SVGAnimatedLength getX( ); - public SVGAnimatedLength getY( ); - public SVGAnimatedLength getWidth( ); - public SVGAnimatedLength getHeight( ); - public SVGElementInstance getInstanceRoot( ); - public SVGElementInstance getAnimatedInstanceRoot( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGVKernElement.java b/src/bind/java/org/w3c/dom/svg/SVGVKernElement.java deleted file mode 100644 index cc2e4f4f1..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGVKernElement.java +++ /dev/null @@ -1,6 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGVKernElement extends - SVGElement { -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGViewElement.java b/src/bind/java/org/w3c/dom/svg/SVGViewElement.java deleted file mode 100644 index 08adbecd8..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGViewElement.java +++ /dev/null @@ -1,10 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGViewElement extends - SVGElement, - SVGExternalResourcesRequired, - SVGFitToViewBox, - SVGZoomAndPan { - public SVGStringList getViewTarget( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGViewSpec.java b/src/bind/java/org/w3c/dom/svg/SVGViewSpec.java deleted file mode 100644 index 97ef6bad9..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGViewSpec.java +++ /dev/null @@ -1,13 +0,0 @@ - -package org.w3c.dom.svg; - -public interface SVGViewSpec extends - SVGZoomAndPan, - SVGFitToViewBox { - public SVGTransformList getTransform( ); - public SVGElement getViewTarget( ); - public String getViewBoxString( ); - public String getPreserveAspectRatioString( ); - public String getTransformString( ); - public String getViewTargetString( ); -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGZoomAndPan.java b/src/bind/java/org/w3c/dom/svg/SVGZoomAndPan.java deleted file mode 100644 index f8f910eb4..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGZoomAndPan.java +++ /dev/null @@ -1,15 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.DOMException; - -public interface SVGZoomAndPan { - // Zoom and Pan Types - public static final short SVG_ZOOMANDPAN_UNKNOWN = 0; - public static final short SVG_ZOOMANDPAN_DISABLE = 1; - public static final short SVG_ZOOMANDPAN_MAGNIFY = 2; - - public short getZoomAndPan( ); - public void setZoomAndPan( short zoomAndPan ) - throws DOMException; -} diff --git a/src/bind/java/org/w3c/dom/svg/SVGZoomEvent.java b/src/bind/java/org/w3c/dom/svg/SVGZoomEvent.java deleted file mode 100644 index 7ab430d2b..000000000 --- a/src/bind/java/org/w3c/dom/svg/SVGZoomEvent.java +++ /dev/null @@ -1,13 +0,0 @@ - -package org.w3c.dom.svg; - -import org.w3c.dom.events.UIEvent; - -public interface SVGZoomEvent extends - UIEvent { - public SVGRect getZoomRectScreen( ); - public float getPreviousScale( ); - public SVGPoint getPreviousTranslate( ); - public float getNewScale( ); - public SVGPoint getNewTranslate( ); -} diff --git a/src/bind/java/org/w3c/dom/views/AbstractView.java b/src/bind/java/org/w3c/dom/views/AbstractView.java deleted file mode 100644 index 97e8f0e2b..000000000 --- a/src/bind/java/org/w3c/dom/views/AbstractView.java +++ /dev/null @@ -1,27 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.views; - -/** - * A base interface that all views shall derive from. - *

See also the Document Object Model (DOM) Level 2 Views Specification. - * @since DOM Level 2 - */ -public interface AbstractView { - /** - * The source DocumentView of which this is an - * AbstractView. - */ - public DocumentView getDocument(); - -} diff --git a/src/bind/java/org/w3c/dom/views/DocumentView.java b/src/bind/java/org/w3c/dom/views/DocumentView.java deleted file mode 100644 index 2cb9eebb8..000000000 --- a/src/bind/java/org/w3c/dom/views/DocumentView.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Copyright (c) 2000 World Wide Web Consortium, - * (Massachusetts Institute of Technology, Institut National de - * Recherche en Informatique et en Automatique, Keio University). All - * Rights Reserved. This program is distributed under the W3C's Software - * Intellectual Property License. This program is distributed in the - * hope that it will be useful, but WITHOUT ANY WARRANTY; without even - * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - * PURPOSE. - * See W3C License http://www.w3.org/Consortium/Legal/ for more details. - */ - -package org.w3c.dom.views; - -/** - * The DocumentView interface is implemented by - * Document objects in DOM implementations supporting DOM - * Views. It provides an attribute to retrieve the default view of a - * document. - *

See also the Document Object Model (DOM) Level 2 Views Specification. - * @since DOM Level 2 - */ -public interface DocumentView { - /** - * The default AbstractView for this Document, - * or null if none available. - */ - public AbstractView getDefaultView(); - -} diff --git a/src/bind/javabind-private.h b/src/bind/javabind-private.h deleted file mode 100644 index 56ff2e2ff..000000000 --- a/src/bind/javabind-private.h +++ /dev/null @@ -1,147 +0,0 @@ -/** - * @file - * @brief This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - */ -/* - * Authors: - * Bob Jamison - * - * Copyright (C) 2007-2008 Bob Jamison - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#ifndef SEEN_JAVABIND_PRIVATE_H -#define SEEN_JAVABIND_PRIVATE_H - -#include -#include "javabind.h" - -namespace Inkscape -{ - -namespace Bind -{ - - -class JavaBinderyImpl : public JavaBindery -{ -public: - - JavaBinderyImpl(); - - virtual ~JavaBinderyImpl(); - - virtual bool loadJVM(); - - virtual bool callStatic(int type, - const String &className, - const String &methodName, - const String &signature, - const std::vector ¶ms, - Value &retval); - - virtual bool callInstance( - int type, - const jobject obj, - const String &methodName, - const String &signature, - const std::vector ¶ms, - Value &retval); - - virtual bool callMain(const String &className, - const std::vector &args); - - virtual bool isLoaded(); - - /** - * - */ - virtual bool scriptRun(const String &lang, const String &script); - - /** - * - */ - virtual bool scriptRunFile(const String &lang, const String &fileName); - - virtual bool showConsole(); - - virtual bool registerNatives(const String &className, - const JNINativeMethod *methods); - - virtual bool doBinding(); - - virtual String getException(); - - virtual bool setupGateway(); - - static JavaBinderyImpl *getInstance(); - - -private: - - JavaVM *jvm; - JNIEnv *env; - jobject gatewayObj; -}; - - -//######################################################################## -//# MESSAGES -//######################################################################## - -void err(const char *fmt, ...); - -void msg(const char *fmt, ...); - -//######################################################################## -//# UTILITY -//######################################################################## - -String normalizePath(const String &str); - -String getExceptionString(JNIEnv *env); - -jint getInt(JNIEnv *env, jobject obj, const char *name); - -void setInt(JNIEnv *env, jobject obj, const char *name, jint val); - -jlong getLong(JNIEnv *env, jobject obj, const char *name); - -void setLong(JNIEnv *env, jobject obj, const char *name, jlong val); - -jfloat getFloat(JNIEnv *env, jobject obj, const char *name); - -void setFloat(JNIEnv *env, jobject obj, const char *name, jfloat val); - -jdouble getDouble(JNIEnv *env, jobject obj, const char *name); - -void setDouble(JNIEnv *env, jobject obj, const char *name, jdouble val); - -String getString(JNIEnv *env, jobject obj, const char *name); - -void setString(JNIEnv *env, jobject obj, const char *name, const String &val); - - - -} // namespace Bind -} // namespace Inkscape - -#endif // SEEN_JAVABIND_PRIVATE_H -//######################################################################## -//# E N D O F F I L E -//######################################################################## - diff --git a/src/bind/javabind.cpp b/src/bind/javabind.cpp deleted file mode 100644 index 8a66bac59..000000000 --- a/src/bind/javabind.cpp +++ /dev/null @@ -1,1209 +0,0 @@ -/** - * @file - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Note: We must limit Java or JVM-specific code to this file - * and to dobinding.cpp. It should be hidden from javabind.h - * - * This file is mostly about getting things up and running, and - * providing the basic C-to-Java hooks. - * - * dobinding.cpp will have the rote and repetitious - * class-by-class binding - */ -/* - * Authors: - * Bob Jamison - * - * Copyright (C) 2007-2008 Bob Jamison - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#ifdef HAVE_CONFIG_H -# include "config.h" -#endif - -#include -#include -#include -#include -#include - -#include -#include - - -#ifdef __WIN32__ -#include -#else -#include -#include -#endif - -#if HAVE_SYS_STAT_H -#include -#endif - -#include "javabind.h" -#include "javabind-private.h" -#include -#include -#include - -//For repr and document -#include -#include -#include - - - -namespace Inkscape -{ - -namespace Bind -{ - - -//######################################################################## -//# DEFINITIONS -//######################################################################## - -typedef jint (*CreateVMFunc)(JavaVM **, JNIEnv **, void *); - - - -//######################################################################## -//# UTILITY -//######################################################################## - -/** - * Normalize path. Java wants '/', even on Windows - */ -String normalizePath(const String &str) -{ - String buf; - for (unsigned int i=0 ; iGetStringUTFChars(jstr, JNI_FALSE); - String str = chars; - env->ReleaseStringUTFChars(jstr, chars); - return str; -} - - -/** - * Check if the VM has encountered an Exception. If so, get the String for it - * and clear the exception - */ -String getExceptionString(JNIEnv *env) -{ - String buf; - jthrowable exc = env->ExceptionOccurred(); - if (!exc) - return buf; - jclass cls = env->GetObjectClass(exc); - jmethodID mid = env->GetMethodID(cls, "toString", "()Ljava/lang/String;"); - jstring jstr = (jstring) env->CallObjectMethod(exc, mid); - buf.append(getString(env, jstr)); - env->ExceptionClear(); - return buf; -} - -//######################################################################## -//# CONSTRUCTOR/DESTRUCTOR -//######################################################################## - -static JavaBinderyImpl *_instance = NULL; - -JavaBindery *JavaBindery::getInstance() -{ - return JavaBinderyImpl::getInstance(); -} - -JavaBinderyImpl *JavaBinderyImpl::getInstance() -{ - if (!_instance) - { - _instance = new JavaBinderyImpl(); - } - return _instance; -} - -JavaBinderyImpl::JavaBinderyImpl() -{ - jvm = NULL; - env = NULL; - gatewayObj = NULL; -} - -JavaBinderyImpl::~JavaBinderyImpl() -{ -} - - -//######################################################################## -//# MESSAGES -//######################################################################## - -void err(const char *fmt, ...) -{ - va_list args; - g_warning("JavaBinderyImpl err:"); - va_start(args, fmt); - g_logv(G_LOG_DOMAIN, G_LOG_LEVEL_WARNING, fmt, args); - va_end(args); - g_warning("\n"); -} - -void msg(const char *fmt, ...) -{ - va_list args; - g_message("JavaBinderyImpl:"); - va_start(args, fmt); - g_logv(G_LOG_DOMAIN, G_LOG_LEVEL_MESSAGE, fmt, args); - va_end(args); - g_message("\n"); -} - - - -//######################################################################## -//# W I N 3 2 S T Y L E -//######################################################################## -#ifdef __WIN32__ - - -#define DIR_SEPARATOR "\\" -#define PATH_SEPARATOR ";" - - - -static bool getRegistryString(HKEY /*root*/, const char *keyName, - const char *valName, char *buf, int buflen) -{ - HKEY key; - DWORD bufsiz = buflen; - RegOpenKeyEx(HKEY_LOCAL_MACHINE, keyName, 0, KEY_READ, &key); - int ret = RegQueryValueEx(key, TEXT(valName), - NULL, NULL, (BYTE *)buf, &bufsiz); - if (ret != ERROR_SUCCESS) - { - err("Key '%s\\%s not found\n", keyName, valName); - return false; - } - RegCloseKey(key); - return true; -} - - -static String cleanPath(const String &s) -{ - String buf; - for (unsigned int i=0 ; i=0) - { - //msg("found"); - return jpath; - } - } - return ""; -} - - - -/** - * Attempt to find and load a jvm.dll file. Find the createVM() - * function's address and return it - */ -static CreateVMFunc getCreateVMFunc() -{ - bool found = false; - String libname; - - /** - * First, look for an embedded jre in the .exe's dir. - * This allows us to package our own JRE if we want to. - */ - String inkscapeHome = getExePath(); - inkscapeHome.append("\\jre"); - msg("INKSCAPE_HOME='%s'", inkscapeHome.c_str()); - String path = checkPathUnderRoot(inkscapeHome); - if (path.size() > 0) - { - libname = path; - found = true; - } - - /** - * Next, look for JAVA_HOME. This will allow the user - * to override what's in the registry - */ - if (!found) - { - const char *envStr = getenv("JAVA_HOME"); - if (envStr) - { - String javaHome = cleanPath(envStr); - msg("JAVA_HOME='%s'", javaHome.c_str()); - path = checkPathUnderRoot(javaHome); - if (path.size() > 0) - { - libname = path; - found = true; - } - } - } - - //not at JAVA_HOME. check the registry - if (!found) - { - char verbuf[16]; - char regpath[80]; - strcpy(regpath, "SOFTWARE\\JavaSoft\\Java Runtime Environment"); - bool ret = getRegistryString(HKEY_LOCAL_MACHINE, - regpath, "CurrentVersion", verbuf, 15); - if (!ret) - { - msg("JVM CurrentVersion not found in registry at '%s'", regpath); - } - else - { - strcat(regpath, "\\"); - strcat(regpath, verbuf); - //msg("reg path: %s\n", regpath); - char valbuf[80]; - ret = getRegistryString(HKEY_LOCAL_MACHINE, - regpath, "RuntimeLib", valbuf, 79); - if (ret) - { - found = true; - libname = valbuf; - } - else - { - msg("JVM RuntimeLib not found in registry at '%s'", - regpath); - } - } - } - - if (!found) - { - err("JVM not found at JAVA_HOME or in registry"); - return NULL; - } - - /** - * If we are here, then we seem to have a valid path for jvm.dll - * Give it a try - */ - msg("getCreateVMFunc: Loading JVM: %s", libname.c_str()); - HMODULE lib = LoadLibrary(libname.c_str()); - if (!lib) - { - err("Java VM not found at '%s'", libname.c_str()); - return NULL; - } - CreateVMFunc createVM = (CreateVMFunc)GetProcAddress(lib, "JNI_CreateJavaVM"); - if (!createVM) - { - err("Could not find 'JNI_CreateJavaVM' in shared library '%s'", - libname.c_str()); - return NULL; - } - return createVM; -} - -/** - * Return the directory where the Java classes/libs/resources are - * located - */ -static void getJavaRoot(String &javaroot) -{ - /* - javaroot = getExePath(); - javaroot.append("\\"); - javaroot.append(INKSCAPE_BINDDIR); - javaroot.append("\\java"); - */ - javaroot = INKSCAPE_BINDDIR; - javaroot.append("\\java"); -} - - - - -//######################################################################## -//# U N I X S T Y L E -//######################################################################## -#else /* !__WIN32__ */ - - -#define DIR_SEPARATOR "/" -#define PATH_SEPARATOR ":" - - -/** - * Recursively descend into a directory looking for libjvm.so - */ -static bool findJVMRecursive(const String &dirpath, - std::vector &results) -{ - DIR *dir = opendir(dirpath.c_str()); - if (!dir) - return false; - bool ret = false; - while (true) - { - struct dirent *de = readdir(dir); - if (!de) - break; - String fname = de->d_name; - if (fname == "." || fname == "..") - continue; - String path = dirpath; - path.push_back('/'); - path.append(fname); - if (fname == "libjvm.so") - { - ret = true; - results.push_back(path); - continue; - } - struct stat finfo; - if (lstat(path.c_str(), &finfo)<0) - { - break; - } - if (finfo.st_mode & S_IFDIR) - { - ret |= findJVMRecursive(path, results); - } - } - closedir(dir); - return ret; -} - - -/** - * Some common places on a Unix filesystem where JVMs are - * often found. - */ -static const char *commonJavaPaths[] = -{ - "/usr/lib/jvm/jre", - "/usr/lib/jvm", - "/usr/local/lib/jvm/jre", - "/usr/local/lib/jvm", - "/usr/java", - "/usr/local/java", - NULL -}; - - - -/** - * Look for a Java VM (libjvm.so) in several Unix places - */ -static bool findJVM(String &result) -{ - std::vector results; - bool found = false; - - /* Is there one specified by the user? */ - const char *javaHome = getenv("JAVA_HOME"); - if (javaHome && findJVMRecursive(javaHome, results)) - found = true; - else for (const char **path = commonJavaPaths ; *path ; path++) - { - if (findJVMRecursive(*path, results)) - { - found = true; - break; - } - } - if (!found) - { - return false; - } - if (results.empty()) - return false; - //Look first for a Client VM - for (unsigned int i=0 ; id_name; - if (fname == "." || fname == "..") - continue; - if (fname.size()<5) //x.jar - continue; - if (fname.compare(fname.size()-4, 4, ".jar") != 0) - continue; - - String path = libdir; - path.append(DIR_SEPARATOR); - path.append(fname); - - cp.append(PATH_SEPARATOR); - cp.append(path); - } - closedir(dir); - - result = cp; -} - - - -//======================================================================== -// Gateway -//======================================================================== -/** - * This is provided to scripts can grab the current copy or the - * repr tree. If anyone has a smarter way of doing this, please implement. - */ -static jstring JNICALL documentGet(JNIEnv *env, jobject /*obj*/, jlong /*ptr*/) -{ - //JavaBinderyImpl *bind = (JavaBinderyImpl *)ptr; - String buf = sp_repr_save_buf((SP_ACTIVE_DOCUMENT)->rdoc); - jstring jstr = env->NewStringUTF(buf.c_str()); - return jstr; -} - -/** - * This is provided to scripts can load an XML tree into Inkscape. - * If anyone has a smarter way of doing this, please implement. - */ -static jboolean JNICALL documentSet(JNIEnv */*env*/, jobject /*obj*/, jlong /*ptr*/, jstring /*jstr*/) -{ - /* - JavaBinderyImpl *bind = (JavaBinderyImpl *)ptr; - String s = getString(env, jstr); - SPDocument *doc = sp_document_new_from_mem(s.c_str(), s.size(), true); - */ - return JNI_TRUE; -} - -/** - * This method is used to allow the gateway class to - * redirect its logging stream here. - * For the main C++/Java bindings, see dobinding.cpp - */ -static void JNICALL logWrite(JNIEnv */*env*/, jobject /*obj*/, jlong ptr, jint ch) -{ - JavaBinderyImpl *bind = reinterpret_cast(ptr); - bind->log(ch); -} - - -static JNINativeMethod gatewayMethods[] = -{ -{ (char *)"documentGet", (char *)"(J)Ljava/lang/String;", (void *)documentGet }, -{ (char *)"documentSet", (char *)"(JLjava/lang/String;)Z", (void *)documentSet }, -{ (char *)"logWrite", (char *)"(JI)V", (void *)logWrite }, -{ NULL, NULL, NULL } -}; - - -/** - * This sets up the 'Gateway' java class for execution of - * scripts. The class's constructor takes a jlong. This java long - * is used to store the pointer to 'this'. When ScriptRunner makes - * native calls, it passes that jlong back, so that it can call the - * methods of this C++ class. - */ -bool JavaBinderyImpl::setupGateway() -{ - String className = "org/inkscape/cmn/Gateway"; - if (!registerNatives(className, gatewayMethods)) - { - return false; - } - jclass cls = env->FindClass(className.c_str()); - if (!cls) - { - err("setupGateway: cannot find class '%s' : %s", - className.c_str(), getException().c_str()); - return false; - } - jmethodID mid = env->GetMethodID(cls, "", "(J)V"); - if (!mid) - { - err("setupGateway: cannot find constructor for '%s' : %s", - className.c_str(), getException().c_str()); - return false; - } - gatewayObj = env->NewObject(cls, mid, ((jlong)this)); - if (!gatewayObj) - { - err("setupGateway: cannot construct '%s' : %s", - className.c_str(), getException().c_str()); - return false; - } - - msg("Gateway ready"); - return true; -} - -bool JavaBinderyImpl::scriptRun(const String &lang, const String &script) -{ - if (!loadJVM()) - return false; - - std::vector params; - Value langParm(lang); - params.push_back(langParm); - Value scriptParm(script); - params.push_back(scriptParm); - Value retval; - callInstance(Value::BIND_VOID, gatewayObj, "scriptRun", - "(Ljava/lang/String;Ljava/lang/String;)Z", params, retval); - return retval.getBoolean(); -} - -bool JavaBinderyImpl::scriptRunFile(const String &lang, const String &fname) -{ - if (!loadJVM()) - return false; - - std::vector params; - Value langParm(lang); - params.push_back(langParm); - Value fnameParm(fname); - params.push_back(fnameParm); - Value retval; - callInstance(Value::BIND_VOID, gatewayObj, "scriptRunFile", - "(Ljava/lang/String;Ljava/lang/String;)Z", params, retval); - return retval.getBoolean(); -} - -bool JavaBinderyImpl::showConsole() -{ - if (!loadJVM()) - return false; - - std::vector params; - Value retval; - callInstance(Value::BIND_VOID, gatewayObj, "showConsole", - "()Z", params, retval); - return retval.getBoolean(); -} - - -//======================================================================== -// End Gateway -//======================================================================== - - -/** - * This is used to grab output from the VM itself. See 'options' below. - */ -static int JNICALL vfprintfHook(FILE* /*f*/, const char *fmt, va_list args) -{ - g_logv(G_LOG_DOMAIN, G_LOG_LEVEL_MESSAGE, fmt, args); - return JNI_TRUE; -} - - -/** - * This is the most important part of this class. Here we - * attempt to find, load, and initialize a java (or mlvm?) virtual - * machine. - * - * @return true if successful, else false - */ -bool JavaBinderyImpl::loadJVM() -{ - if (jvm) - return true; - - CreateVMFunc createVM = getCreateVMFunc(); - if (!createVM) - { - err("Could not find 'JNI_CreateJavaVM' in shared library"); - return false; - } - - String javaroot; - getJavaRoot(javaroot); - String cp; - populateClassPath(javaroot, cp); - String classpath = "-Djava.class.path="; - classpath.append(normalizePath(cp)); - msg("Class path is: '%s'", classpath.c_str()); - - String libpath = "-Djava.library.path="; - libpath.append(javaroot); - libpath.append(DIR_SEPARATOR); - libpath.append("libm"); - libpath = normalizePath(libpath); - msg("Lib path is: '%s'", libpath.c_str()); - - JavaVMInitArgs vm_args; - JavaVMOption options[10];//should be enough - int nOptions = 0; - options[nOptions++].optionString = (char *)classpath.c_str(); - options[nOptions++].optionString = (char *)libpath.c_str(); - //options[nOptions++].optionString = (char *)"-verbose:jni"; - options[nOptions ].optionString = (char *)"vfprintf"; - options[nOptions++].extraInfo = (void *)vfprintfHook; - vm_args.version = JNI_VERSION_1_4; - vm_args.options = options; - vm_args.nOptions = nOptions; - vm_args.ignoreUnrecognized = true; - - if (createVM(&jvm, &env, &vm_args) < 0) - { - err("JNI_CreateJavaVM() failed"); - return false; - } - - //get jvm version - jint vers = env->GetVersion(); - int versionMajor = (vers>>16) & 0xffff; - int versionMinor = (vers ) & 0xffff; - msg("Loaded JVM version %d.%d", versionMajor, versionMinor); - - if (!setupGateway()) { - // set jvm = NULL, otherwise, this method will return true when called for the second time while the gateway might not have been created! - jvm->DestroyJavaVM(); - jvm = NULL; - env = NULL; - err("Java bindings: setupGateway() failed"); - return false; - } - - return true; -} - - -/** - * This is a difficult method. What we are doing is trying to - * call a static method with a list of arguments. Similar to - * a varargs call, we need to marshal the Values into their - * Java equivalents and make the proper call. - * - * @param type the return type of the method - * @param className the full (package / name) name of the java class - * @param methodName the name of the method being invoked - * @param signature the method signature (ex: "(Ljava/lang/String;I)V" ) - * that describes the param and return types of the method. - * @param retval the return value of the java method - * @return true if the call was successful, else false. This is not - * the return value of the method. - */ -bool JavaBinderyImpl::callStatic(int type, - const String &className, - const String &methodName, - const String &signature, - const std::vector ¶ms, - Value &retval) -{ - jclass cls = env->FindClass(className.c_str()); - if (!cls) - { - err("Could not find class '%s' : %s", - className.c_str(), getException().c_str()); - return false; - } - jmethodID mid = env->GetStaticMethodID(cls, - methodName.c_str(), signature.c_str()); - if (!mid) - { - err("Could not find method '%s:%s/%s' : %s", - className.c_str(), methodName.c_str(), - signature.c_str(), getException().c_str()); - return false; - } - /** - * Assemble your parameters into a form usable by JNI - */ - jvalue *jvals = new jvalue[params.size()]; - for (unsigned int i=0 ; iNewStringUTF(v.getString().c_str()); - break; - } - default: - { - err("Unknown value type: %d", v.getType()); - delete [] jvals; - return false; - } - } - } - switch (type) - { - case Value::BIND_VOID: - { - env->CallStaticVoidMethodA(cls, mid, jvals); - break; - } - case Value::BIND_BOOLEAN: - { - jboolean ret = env->CallStaticBooleanMethodA(cls, mid, jvals); - if (ret == JNI_TRUE) //remember, don't truncate - retval.setBoolean(true); - else - retval.setBoolean(false); - break; - } - case Value::BIND_INT: - { - jint ret = env->CallStaticIntMethodA(cls, mid, jvals); - retval.setInt(ret); - break; - } - case Value::BIND_DOUBLE: - { - jdouble ret = env->CallStaticDoubleMethodA(cls, mid, jvals); - retval.setDouble(ret); - break; - } - case Value::BIND_STRING: - { - jobject ret = env->CallStaticObjectMethodA(cls, mid, jvals); - jstring jstr = (jstring) ret; - const char *str = env->GetStringUTFChars(jstr, JNI_FALSE); - retval.setString(str); - env->ReleaseStringUTFChars(jstr, str); - break; - } - default: - { - err("Unknown return type: %d", type); - return false; - } - } - delete [] jvals; - String errStr = getException(); - if (errStr.size()>0) - { - err("callStatic: %s", errStr.c_str()); - return false; - } - return true; -} - - - -/** - * Another difficult method. However, this time we are operating - * on an existing instance jobject. - * - * @param type the return type of the method - * @param obj the instance upon which to make the call - * @param methodName the name of the method being invoked - * @param signature the method signature (ex: "(Ljava/lang/String;I)V" ) - * that describes the param and return types of the method. - * @param retval the return value of the java method - * @return true if the call was successful, else false. This is not - * the return value of the method. - */ -bool JavaBinderyImpl::callInstance( - int type, - const jobject obj, - const String &methodName, - const String &signature, - const std::vector ¶ms, - Value &retval) -{ - jmethodID mid = env->GetMethodID(env->GetObjectClass(obj), - methodName.c_str(), signature.c_str()); - if (!mid) - { - err("Could not find method '%s/%s' : %s", - methodName.c_str(), - signature.c_str(), getException().c_str()); - return false; - } - /** - * Assemble your parameters into a form usable by JNI - */ - jvalue *jvals = new jvalue[params.size()]; - for (unsigned int i=0 ; iNewStringUTF(v.getString().c_str()); - break; - } - default: - { - err("Unknown value type: %d", v.getType()); - delete [] jvals; - return false; - } - } - } - switch (type) - { - case Value::BIND_VOID: - { - env->CallVoidMethodA(obj, mid, jvals); - break; - } - case Value::BIND_BOOLEAN: - { - jboolean ret = env->CallBooleanMethodA(obj, mid, jvals); - if (ret == JNI_TRUE) //remember, don't truncate - retval.setBoolean(true); - else - retval.setBoolean(false); - break; - } - case Value::BIND_INT: - { - jint ret = env->CallIntMethodA(obj, mid, jvals); - retval.setInt(ret); - break; - } - case Value::BIND_DOUBLE: - { - jdouble ret = env->CallDoubleMethodA(obj, mid, jvals); - retval.setDouble(ret); - break; - } - case Value::BIND_STRING: - { - jobject ret = env->CallObjectMethodA(obj, mid, jvals); - jstring jstr = (jstring) ret; - const char *str = env->GetStringUTFChars(jstr, JNI_FALSE); - retval.setString(str); - env->ReleaseStringUTFChars(jstr, str); - break; - } - default: - { - err("Unknown return type: %d", type); - return false; - } - } - delete [] jvals; - String errStr = getException(); - if (errStr.size()>0) - { - err("callStatic: %s", errStr.c_str()); - return false; - } - return true; -} - - - - -/** - * Fetch the last exception from the JVM, if any. Clear it to - * continue processing - * - * @return the exception's descriptio,if any. Else "" - */ -String JavaBinderyImpl::getException() -{ - return getExceptionString(env); -} - - - -/** - * Convenience method to call the static void main(String argv[]) - * method of a given class - * - * @param className full name of the java class - * @args the argument strings to the method - * @return true if successful, else false - */ -bool JavaBinderyImpl::callMain(const String &className, - const std::vector &args) -{ - std::vector parms; - for (unsigned int i=0 ; iFindClass(className.c_str()); - if (!cls) - { - err("Could not find class '%s'", className.c_str()); - return false; - } - //msg("registerNatives: class '%s' found", className.c_str()); - - /** - * hack for JDK bug http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6493522 - */ - jmethodID mid = env->GetMethodID(env->GetObjectClass(cls), "getConstructors", - "()[Ljava/lang/reflect/Constructor;"); - if (!mid) - { - err("Could not get reflect mid for 'getConstructors' : %s", - getException().c_str()); - return false; - } - jobject res = env->CallObjectMethod(cls, mid); - if (!res) - { - err("Could not get constructors : %s", getException().c_str()); - return false; - } - /** - * end hack - */ - jint nrMethods = 0; - for (const JNINativeMethod *m = methods ; m->name ; m++) - nrMethods++; - jint ret = env->RegisterNatives(cls, methods, nrMethods); - if (ret < 0) - { - err("Could not register %d native methods for '%s' : %s", - nrMethods, className.c_str(), getException().c_str()); - return false; - } - return true; -} - - - - -} // namespace Bind -} // namespace Inkscape - -//######################################################################## -//# E N D O F F I L E -//######################################################################## diff --git a/src/bind/javabind.h b/src/bind/javabind.h deleted file mode 100644 index c11656a66..000000000 --- a/src/bind/javabind.h +++ /dev/null @@ -1,405 +0,0 @@ -/** - * @file - * @brief This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - */ -/* - * Authors: - * Bob Jamison - * - * Copyright (C) 2007-2008 Bob Jamison - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#ifndef SEEN_JAVABIND_H -#define SEEN_JAVABIND_H - -#include -#include - - -namespace Inkscape -{ - -namespace Bind -{ - - -/** - * Select which String implementation we want to use - */ -typedef Glib::ustring String; - - -/** - * This is the base class of all things which will be C++ object - * instances - */ -class BaseObject -{ -public: - - /** - * Simple constructor - */ - BaseObject() - {} - - /** - * Destructor - */ - virtual ~BaseObject() - {} - -}; - - -/** - * - */ -class Value -{ -public: - - /** - * Types for this value - */ - typedef enum - { - BIND_VOID, - BIND_INT, - BIND_BOOLEAN, - BIND_DOUBLE, - BIND_STRING, - BIND_OBJECT - } ValueType; - - /** - * - */ - Value() - { - init(); - } - - /** - * - */ - Value(int ival) - { - init(); - setInt(ival); - } - - /** - * - */ - Value(bool bval) - { - init(); - setBoolean(bval); - } - - /** - * - */ - Value(double dval) - { - init(); - setDouble(dval); - } - - /** - * - */ - Value(const String &sval) - { - init(); - setString(sval); - } - - /** - * - */ - Value(const Value &other) - { - assign(other); - } - - /** - * - */ - Value &operator=(const Value &other) - { - assign(other); - return *this; - } - - /** - * - */ - virtual ~Value() - { - } - - /** - * - */ - int getType() - { return type; } - - /** - * - */ - void setBoolean(bool val) - { type = BIND_BOOLEAN; ival = (int)val; } - - /** - * - */ - bool getBoolean() - { - if (type == BIND_BOOLEAN) - return (bool)ival; - else - return false; - } - - /** - * - */ - void setInt(int val) - { type = BIND_INT; ival = val; } - - /** - * - */ - bool getInt() - { - if (type == BIND_INT) - return ival; - else - return 0; - } - - /** - * - */ - void setDouble(double val) - { type = BIND_DOUBLE; dval = val; } - - /** - * - */ - double getDouble() - { - if (type == BIND_DOUBLE) - return dval; - else - return 0.0; - } - - /** - * - */ - void setString(const String &val) - { type = BIND_STRING; sval = val; } - - /** - * - */ - String getString() - { - if (type == BIND_STRING) - return sval; - else - return ""; - } - - -private: - - void init() - { - type = BIND_INT; - ival = 0; - dval = 0.0; - sval = ""; - } - - void assign(const Value &other) - { - type = other.type; - ival = other.ival; - dval = other.dval; - sval = other.sval; - } - - int type; - long ival; - double dval; - String sval; - -}; - - - - - -/** - * - */ -class JavaBindery -{ -public: - - /** - * - */ - JavaBindery() - {} - - /** - * - */ - virtual ~JavaBindery() - {} - - /** - * - */ - virtual bool loadJVM() - { - return false; - } - - /** - * - */ - virtual bool callStatic(int /*type*/, - const String &/*className*/, - const String &/*methodName*/, - const String &/*signature*/, - const std::vector &/*params*/, - Value &/*retval*/) - { - return false; - } - - /** - * - */ - virtual bool callMain(const String &/*className*/, - const std::vector &/*args*/) - { - return false; - } - - /** - * - */ - virtual bool isLoaded() - { - return false; - } - - /** - * - */ - virtual bool scriptRun(const String &/*lang*/, const String &/*script*/) - { - return false; - } - - /** - * - */ - virtual bool scriptRunFile(const String &/*lang*/, const String &/*fileName*/) - { - return false; - } - - /** - * - */ - virtual bool showConsole() - { - return false; - } - - /** - * - */ - virtual bool doBinding() - { - return false; - } - - /** - * - */ - virtual String getException() - { - return ""; - } - - virtual String logGet() - { - return logBuf; - } - - virtual void logClear() - { - logBuf.clear(); - } - - virtual void log(int ch) - { - logBuf.push_back((char)ch); - if (ch == '\n' || ch == '\r') - { - g_message("%s", logBuf.c_str()); - logBuf.clear(); - } - } - - - /** - * Return a singleton instance of this bindery - */ - static JavaBindery *getInstance(); - -protected: - - - String stdOutBuf; - String stdErrBuf; - String logBuf; - -}; - - - - - -} // namespace Bind -} // namespace Inkscape - -#endif // SEEN_JAVABIND_H -//######################################################################## -//# E N D O F F I L E -//######################################################################## - diff --git a/src/bind/javainc/jni.h b/src/bind/javainc/jni.h deleted file mode 100644 index 5989c043f..000000000 --- a/src/bind/javainc/jni.h +++ /dev/null @@ -1,1959 +0,0 @@ -/* - * Copyright 1996-2006 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * This code is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License version 2 only, as - * published by the Free Software Foundation. Sun designates this - * particular file as subject to the "Classpath" exception as provided - * by Sun in the LICENSE file that accompanied this code. - * - * This code is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * version 2 for more details (a copy is included in the LICENSE file that - * accompanied this code). - * - * You should have received a copy of the GNU General Public License version - * 2 along with this work; if not, write to the Free Software Foundation, - * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. - * - * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, - * CA 95054 USA or visit www.sun.com if you need additional information or - * have any questions. - */ - -/* - * We used part of Netscape's Java Runtime Interface (JRI) as the starting - * point of our design and implementation. - */ - -/* *************************************************************************** - * Java Runtime Interface - * Copyright (c) 1996 Netscape Communications Corporation. All rights reserved. - *****************************************************************************/ - -#ifndef _JAVASOFT_JNI_H_ -#define _JAVASOFT_JNI_H_ - -#include -#include - -/* jni_md.h contains the machine-dependent typedefs for jbyte, jint - and jlong */ - -#include "jni_md.h" - -#ifdef __cplusplus -extern "C" { -#endif - -/* - * JNI Types - */ - -#ifndef JNI_TYPES_ALREADY_DEFINED_IN_JNI_MD_H - -typedef unsigned char jboolean; -typedef unsigned short jchar; -typedef short jshort; -typedef float jfloat; -typedef double jdouble; - -typedef jint jsize; - -#ifdef __cplusplus - -class _jobject {}; -class _jclass : public _jobject {}; -class _jthrowable : public _jobject {}; -class _jstring : public _jobject {}; -class _jarray : public _jobject {}; -class _jbooleanArray : public _jarray {}; -class _jbyteArray : public _jarray {}; -class _jcharArray : public _jarray {}; -class _jshortArray : public _jarray {}; -class _jintArray : public _jarray {}; -class _jlongArray : public _jarray {}; -class _jfloatArray : public _jarray {}; -class _jdoubleArray : public _jarray {}; -class _jobjectArray : public _jarray {}; - -typedef _jobject *jobject; -typedef _jclass *jclass; -typedef _jthrowable *jthrowable; -typedef _jstring *jstring; -typedef _jarray *jarray; -typedef _jbooleanArray *jbooleanArray; -typedef _jbyteArray *jbyteArray; -typedef _jcharArray *jcharArray; -typedef _jshortArray *jshortArray; -typedef _jintArray *jintArray; -typedef _jlongArray *jlongArray; -typedef _jfloatArray *jfloatArray; -typedef _jdoubleArray *jdoubleArray; -typedef _jobjectArray *jobjectArray; - -#else - -struct _jobject; - -typedef struct _jobject *jobject; -typedef jobject jclass; -typedef jobject jthrowable; -typedef jobject jstring; -typedef jobject jarray; -typedef jarray jbooleanArray; -typedef jarray jbyteArray; -typedef jarray jcharArray; -typedef jarray jshortArray; -typedef jarray jintArray; -typedef jarray jlongArray; -typedef jarray jfloatArray; -typedef jarray jdoubleArray; -typedef jarray jobjectArray; - -#endif - -typedef jobject jweak; - -typedef union jvalue { - jboolean z; - jbyte b; - jchar c; - jshort s; - jint i; - jlong j; - jfloat f; - jdouble d; - jobject l; -} jvalue; - -struct _jfieldID; -typedef struct _jfieldID *jfieldID; - -struct _jmethodID; -typedef struct _jmethodID *jmethodID; - -/* Return values from jobjectRefType */ -typedef enum _jobjectType { - JNIInvalidRefType = 0, - JNILocalRefType = 1, - JNIGlobalRefType = 2, - JNIWeakGlobalRefType = 3 -} jobjectRefType; - - -#endif /* JNI_TYPES_ALREADY_DEFINED_IN_JNI_MD_H */ - -/* - * jboolean constants - */ - -#define JNI_FALSE 0 -#define JNI_TRUE 1 - -/* - * possible return values for JNI functions. - */ - -#define JNI_OK 0 /* success */ -#define JNI_ERR (-1) /* unknown error */ -#define JNI_EDETACHED (-2) /* thread detached from the VM */ -#define JNI_EVERSION (-3) /* JNI version error */ -#define JNI_ENOMEM (-4) /* not enough memory */ -#define JNI_EEXIST (-5) /* VM already created */ -#define JNI_EINVAL (-6) /* invalid arguments */ - -/* - * used in ReleaseScalarArrayElements - */ - -#define JNI_COMMIT 1 -#define JNI_ABORT 2 - -/* - * used in RegisterNatives to describe native method name, signature, - * and function pointer. - */ - -typedef struct { - char *name; - char *signature; - void *fnPtr; -} JNINativeMethod; - -/* - * JNI Native Method Interface. - */ - -struct JNINativeInterface_; - -struct JNIEnv_; - -#ifdef __cplusplus -typedef JNIEnv_ JNIEnv; -#else -typedef const struct JNINativeInterface_ *JNIEnv; -#endif - -/* - * JNI Invocation Interface. - */ - -struct JNIInvokeInterface_; - -struct JavaVM_; - -#ifdef __cplusplus -typedef JavaVM_ JavaVM; -#else -typedef const struct JNIInvokeInterface_ *JavaVM; -#endif - -struct JNINativeInterface_ { - void *reserved0; - void *reserved1; - void *reserved2; - - void *reserved3; - jint (JNICALL *GetVersion)(JNIEnv *env); - - jclass (JNICALL *DefineClass) - (JNIEnv *env, const char *name, jobject loader, const jbyte *buf, - jsize len); - jclass (JNICALL *FindClass) - (JNIEnv *env, const char *name); - - jmethodID (JNICALL *FromReflectedMethod) - (JNIEnv *env, jobject method); - jfieldID (JNICALL *FromReflectedField) - (JNIEnv *env, jobject field); - - jobject (JNICALL *ToReflectedMethod) - (JNIEnv *env, jclass cls, jmethodID methodID, jboolean isStatic); - - jclass (JNICALL *GetSuperclass) - (JNIEnv *env, jclass sub); - jboolean (JNICALL *IsAssignableFrom) - (JNIEnv *env, jclass sub, jclass sup); - - jobject (JNICALL *ToReflectedField) - (JNIEnv *env, jclass cls, jfieldID fieldID, jboolean isStatic); - - jint (JNICALL *Throw) - (JNIEnv *env, jthrowable obj); - jint (JNICALL *ThrowNew) - (JNIEnv *env, jclass clazz, const char *msg); - jthrowable (JNICALL *ExceptionOccurred) - (JNIEnv *env); - void (JNICALL *ExceptionDescribe) - (JNIEnv *env); - void (JNICALL *ExceptionClear) - (JNIEnv *env); - void (JNICALL *FatalError) - (JNIEnv *env, const char *msg); - - jint (JNICALL *PushLocalFrame) - (JNIEnv *env, jint capacity); - jobject (JNICALL *PopLocalFrame) - (JNIEnv *env, jobject result); - - jobject (JNICALL *NewGlobalRef) - (JNIEnv *env, jobject lobj); - void (JNICALL *DeleteGlobalRef) - (JNIEnv *env, jobject gref); - void (JNICALL *DeleteLocalRef) - (JNIEnv *env, jobject obj); - jboolean (JNICALL *IsSameObject) - (JNIEnv *env, jobject obj1, jobject obj2); - jobject (JNICALL *NewLocalRef) - (JNIEnv *env, jobject ref); - jint (JNICALL *EnsureLocalCapacity) - (JNIEnv *env, jint capacity); - - jobject (JNICALL *AllocObject) - (JNIEnv *env, jclass clazz); - jobject (JNICALL *NewObject) - (JNIEnv *env, jclass clazz, jmethodID methodID, ...); - jobject (JNICALL *NewObjectV) - (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args); - jobject (JNICALL *NewObjectA) - (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args); - - jclass (JNICALL *GetObjectClass) - (JNIEnv *env, jobject obj); - jboolean (JNICALL *IsInstanceOf) - (JNIEnv *env, jobject obj, jclass clazz); - - jmethodID (JNICALL *GetMethodID) - (JNIEnv *env, jclass clazz, const char *name, const char *sig); - - jobject (JNICALL *CallObjectMethod) - (JNIEnv *env, jobject obj, jmethodID methodID, ...); - jobject (JNICALL *CallObjectMethodV) - (JNIEnv *env, jobject obj, jmethodID methodID, va_list args); - jobject (JNICALL *CallObjectMethodA) - (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue * args); - - jboolean (JNICALL *CallBooleanMethod) - (JNIEnv *env, jobject obj, jmethodID methodID, ...); - jboolean (JNICALL *CallBooleanMethodV) - (JNIEnv *env, jobject obj, jmethodID methodID, va_list args); - jboolean (JNICALL *CallBooleanMethodA) - (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue * args); - - jbyte (JNICALL *CallByteMethod) - (JNIEnv *env, jobject obj, jmethodID methodID, ...); - jbyte (JNICALL *CallByteMethodV) - (JNIEnv *env, jobject obj, jmethodID methodID, va_list args); - jbyte (JNICALL *CallByteMethodA) - (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue *args); - - jchar (JNICALL *CallCharMethod) - (JNIEnv *env, jobject obj, jmethodID methodID, ...); - jchar (JNICALL *CallCharMethodV) - (JNIEnv *env, jobject obj, jmethodID methodID, va_list args); - jchar (JNICALL *CallCharMethodA) - (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue *args); - - jshort (JNICALL *CallShortMethod) - (JNIEnv *env, jobject obj, jmethodID methodID, ...); - jshort (JNICALL *CallShortMethodV) - (JNIEnv *env, jobject obj, jmethodID methodID, va_list args); - jshort (JNICALL *CallShortMethodA) - (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue *args); - - jint (JNICALL *CallIntMethod) - (JNIEnv *env, jobject obj, jmethodID methodID, ...); - jint (JNICALL *CallIntMethodV) - (JNIEnv *env, jobject obj, jmethodID methodID, va_list args); - jint (JNICALL *CallIntMethodA) - (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue *args); - - jlong (JNICALL *CallLongMethod) - (JNIEnv *env, jobject obj, jmethodID methodID, ...); - jlong (JNICALL *CallLongMethodV) - (JNIEnv *env, jobject obj, jmethodID methodID, va_list args); - jlong (JNICALL *CallLongMethodA) - (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue *args); - - jfloat (JNICALL *CallFloatMethod) - (JNIEnv *env, jobject obj, jmethodID methodID, ...); - jfloat (JNICALL *CallFloatMethodV) - (JNIEnv *env, jobject obj, jmethodID methodID, va_list args); - jfloat (JNICALL *CallFloatMethodA) - (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue *args); - - jdouble (JNICALL *CallDoubleMethod) - (JNIEnv *env, jobject obj, jmethodID methodID, ...); - jdouble (JNICALL *CallDoubleMethodV) - (JNIEnv *env, jobject obj, jmethodID methodID, va_list args); - jdouble (JNICALL *CallDoubleMethodA) - (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue *args); - - void (JNICALL *CallVoidMethod) - (JNIEnv *env, jobject obj, jmethodID methodID, ...); - void (JNICALL *CallVoidMethodV) - (JNIEnv *env, jobject obj, jmethodID methodID, va_list args); - void (JNICALL *CallVoidMethodA) - (JNIEnv *env, jobject obj, jmethodID methodID, const jvalue * args); - - jobject (JNICALL *CallNonvirtualObjectMethod) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...); - jobject (JNICALL *CallNonvirtualObjectMethodV) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, - va_list args); - jobject (JNICALL *CallNonvirtualObjectMethodA) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, - const jvalue * args); - - jboolean (JNICALL *CallNonvirtualBooleanMethod) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...); - jboolean (JNICALL *CallNonvirtualBooleanMethodV) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, - va_list args); - jboolean (JNICALL *CallNonvirtualBooleanMethodA) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, - const jvalue * args); - - jbyte (JNICALL *CallNonvirtualByteMethod) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...); - jbyte (JNICALL *CallNonvirtualByteMethodV) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, - va_list args); - jbyte (JNICALL *CallNonvirtualByteMethodA) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, - const jvalue *args); - - jchar (JNICALL *CallNonvirtualCharMethod) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...); - jchar (JNICALL *CallNonvirtualCharMethodV) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, - va_list args); - jchar (JNICALL *CallNonvirtualCharMethodA) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, - const jvalue *args); - - jshort (JNICALL *CallNonvirtualShortMethod) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...); - jshort (JNICALL *CallNonvirtualShortMethodV) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, - va_list args); - jshort (JNICALL *CallNonvirtualShortMethodA) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, - const jvalue *args); - - jint (JNICALL *CallNonvirtualIntMethod) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...); - jint (JNICALL *CallNonvirtualIntMethodV) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, - va_list args); - jint (JNICALL *CallNonvirtualIntMethodA) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, - const jvalue *args); - - jlong (JNICALL *CallNonvirtualLongMethod) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...); - jlong (JNICALL *CallNonvirtualLongMethodV) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, - va_list args); - jlong (JNICALL *CallNonvirtualLongMethodA) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, - const jvalue *args); - - jfloat (JNICALL *CallNonvirtualFloatMethod) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...); - jfloat (JNICALL *CallNonvirtualFloatMethodV) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, - va_list args); - jfloat (JNICALL *CallNonvirtualFloatMethodA) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, - const jvalue *args); - - jdouble (JNICALL *CallNonvirtualDoubleMethod) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...); - jdouble (JNICALL *CallNonvirtualDoubleMethodV) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, - va_list args); - jdouble (JNICALL *CallNonvirtualDoubleMethodA) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, - const jvalue *args); - - void (JNICALL *CallNonvirtualVoidMethod) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, ...); - void (JNICALL *CallNonvirtualVoidMethodV) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, - va_list args); - void (JNICALL *CallNonvirtualVoidMethodA) - (JNIEnv *env, jobject obj, jclass clazz, jmethodID methodID, - const jvalue * args); - - jfieldID (JNICALL *GetFieldID) - (JNIEnv *env, jclass clazz, const char *name, const char *sig); - - jobject (JNICALL *GetObjectField) - (JNIEnv *env, jobject obj, jfieldID fieldID); - jboolean (JNICALL *GetBooleanField) - (JNIEnv *env, jobject obj, jfieldID fieldID); - jbyte (JNICALL *GetByteField) - (JNIEnv *env, jobject obj, jfieldID fieldID); - jchar (JNICALL *GetCharField) - (JNIEnv *env, jobject obj, jfieldID fieldID); - jshort (JNICALL *GetShortField) - (JNIEnv *env, jobject obj, jfieldID fieldID); - jint (JNICALL *GetIntField) - (JNIEnv *env, jobject obj, jfieldID fieldID); - jlong (JNICALL *GetLongField) - (JNIEnv *env, jobject obj, jfieldID fieldID); - jfloat (JNICALL *GetFloatField) - (JNIEnv *env, jobject obj, jfieldID fieldID); - jdouble (JNICALL *GetDoubleField) - (JNIEnv *env, jobject obj, jfieldID fieldID); - - void (JNICALL *SetObjectField) - (JNIEnv *env, jobject obj, jfieldID fieldID, jobject val); - void (JNICALL *SetBooleanField) - (JNIEnv *env, jobject obj, jfieldID fieldID, jboolean val); - void (JNICALL *SetByteField) - (JNIEnv *env, jobject obj, jfieldID fieldID, jbyte val); - void (JNICALL *SetCharField) - (JNIEnv *env, jobject obj, jfieldID fieldID, jchar val); - void (JNICALL *SetShortField) - (JNIEnv *env, jobject obj, jfieldID fieldID, jshort val); - void (JNICALL *SetIntField) - (JNIEnv *env, jobject obj, jfieldID fieldID, jint val); - void (JNICALL *SetLongField) - (JNIEnv *env, jobject obj, jfieldID fieldID, jlong val); - void (JNICALL *SetFloatField) - (JNIEnv *env, jobject obj, jfieldID fieldID, jfloat val); - void (JNICALL *SetDoubleField) - (JNIEnv *env, jobject obj, jfieldID fieldID, jdouble val); - - jmethodID (JNICALL *GetStaticMethodID) - (JNIEnv *env, jclass clazz, const char *name, const char *sig); - - jobject (JNICALL *CallStaticObjectMethod) - (JNIEnv *env, jclass clazz, jmethodID methodID, ...); - jobject (JNICALL *CallStaticObjectMethodV) - (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args); - jobject (JNICALL *CallStaticObjectMethodA) - (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args); - - jboolean (JNICALL *CallStaticBooleanMethod) - (JNIEnv *env, jclass clazz, jmethodID methodID, ...); - jboolean (JNICALL *CallStaticBooleanMethodV) - (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args); - jboolean (JNICALL *CallStaticBooleanMethodA) - (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args); - - jbyte (JNICALL *CallStaticByteMethod) - (JNIEnv *env, jclass clazz, jmethodID methodID, ...); - jbyte (JNICALL *CallStaticByteMethodV) - (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args); - jbyte (JNICALL *CallStaticByteMethodA) - (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args); - - jchar (JNICALL *CallStaticCharMethod) - (JNIEnv *env, jclass clazz, jmethodID methodID, ...); - jchar (JNICALL *CallStaticCharMethodV) - (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args); - jchar (JNICALL *CallStaticCharMethodA) - (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args); - - jshort (JNICALL *CallStaticShortMethod) - (JNIEnv *env, jclass clazz, jmethodID methodID, ...); - jshort (JNICALL *CallStaticShortMethodV) - (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args); - jshort (JNICALL *CallStaticShortMethodA) - (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args); - - jint (JNICALL *CallStaticIntMethod) - (JNIEnv *env, jclass clazz, jmethodID methodID, ...); - jint (JNICALL *CallStaticIntMethodV) - (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args); - jint (JNICALL *CallStaticIntMethodA) - (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args); - - jlong (JNICALL *CallStaticLongMethod) - (JNIEnv *env, jclass clazz, jmethodID methodID, ...); - jlong (JNICALL *CallStaticLongMethodV) - (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args); - jlong (JNICALL *CallStaticLongMethodA) - (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args); - - jfloat (JNICALL *CallStaticFloatMethod) - (JNIEnv *env, jclass clazz, jmethodID methodID, ...); - jfloat (JNICALL *CallStaticFloatMethodV) - (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args); - jfloat (JNICALL *CallStaticFloatMethodA) - (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args); - - jdouble (JNICALL *CallStaticDoubleMethod) - (JNIEnv *env, jclass clazz, jmethodID methodID, ...); - jdouble (JNICALL *CallStaticDoubleMethodV) - (JNIEnv *env, jclass clazz, jmethodID methodID, va_list args); - jdouble (JNICALL *CallStaticDoubleMethodA) - (JNIEnv *env, jclass clazz, jmethodID methodID, const jvalue *args); - - void (JNICALL *CallStaticVoidMethod) - (JNIEnv *env, jclass cls, jmethodID methodID, ...); - void (JNICALL *CallStaticVoidMethodV) - (JNIEnv *env, jclass cls, jmethodID methodID, va_list args); - void (JNICALL *CallStaticVoidMethodA) - (JNIEnv *env, jclass cls, jmethodID methodID, const jvalue * args); - - jfieldID (JNICALL *GetStaticFieldID) - (JNIEnv *env, jclass clazz, const char *name, const char *sig); - jobject (JNICALL *GetStaticObjectField) - (JNIEnv *env, jclass clazz, jfieldID fieldID); - jboolean (JNICALL *GetStaticBooleanField) - (JNIEnv *env, jclass clazz, jfieldID fieldID); - jbyte (JNICALL *GetStaticByteField) - (JNIEnv *env, jclass clazz, jfieldID fieldID); - jchar (JNICALL *GetStaticCharField) - (JNIEnv *env, jclass clazz, jfieldID fieldID); - jshort (JNICALL *GetStaticShortField) - (JNIEnv *env, jclass clazz, jfieldID fieldID); - jint (JNICALL *GetStaticIntField) - (JNIEnv *env, jclass clazz, jfieldID fieldID); - jlong (JNICALL *GetStaticLongField) - (JNIEnv *env, jclass clazz, jfieldID fieldID); - jfloat (JNICALL *GetStaticFloatField) - (JNIEnv *env, jclass clazz, jfieldID fieldID); - jdouble (JNICALL *GetStaticDoubleField) - (JNIEnv *env, jclass clazz, jfieldID fieldID); - - void (JNICALL *SetStaticObjectField) - (JNIEnv *env, jclass clazz, jfieldID fieldID, jobject value); - void (JNICALL *SetStaticBooleanField) - (JNIEnv *env, jclass clazz, jfieldID fieldID, jboolean value); - void (JNICALL *SetStaticByteField) - (JNIEnv *env, jclass clazz, jfieldID fieldID, jbyte value); - void (JNICALL *SetStaticCharField) - (JNIEnv *env, jclass clazz, jfieldID fieldID, jchar value); - void (JNICALL *SetStaticShortField) - (JNIEnv *env, jclass clazz, jfieldID fieldID, jshort value); - void (JNICALL *SetStaticIntField) - (JNIEnv *env, jclass clazz, jfieldID fieldID, jint value); - void (JNICALL *SetStaticLongField) - (JNIEnv *env, jclass clazz, jfieldID fieldID, jlong value); - void (JNICALL *SetStaticFloatField) - (JNIEnv *env, jclass clazz, jfieldID fieldID, jfloat value); - void (JNICALL *SetStaticDoubleField) - (JNIEnv *env, jclass clazz, jfieldID fieldID, jdouble value); - - jstring (JNICALL *NewString) - (JNIEnv *env, const jchar *unicode, jsize len); - jsize (JNICALL *GetStringLength) - (JNIEnv *env, jstring str); - const jchar *(JNICALL *GetStringChars) - (JNIEnv *env, jstring str, jboolean *isCopy); - void (JNICALL *ReleaseStringChars) - (JNIEnv *env, jstring str, const jchar *chars); - - jstring (JNICALL *NewStringUTF) - (JNIEnv *env, const char *utf); - jsize (JNICALL *GetStringUTFLength) - (JNIEnv *env, jstring str); - const char* (JNICALL *GetStringUTFChars) - (JNIEnv *env, jstring str, jboolean *isCopy); - void (JNICALL *ReleaseStringUTFChars) - (JNIEnv *env, jstring str, const char* chars); - - - jsize (JNICALL *GetArrayLength) - (JNIEnv *env, jarray array); - - jobjectArray (JNICALL *NewObjectArray) - (JNIEnv *env, jsize len, jclass clazz, jobject init); - jobject (JNICALL *GetObjectArrayElement) - (JNIEnv *env, jobjectArray array, jsize index); - void (JNICALL *SetObjectArrayElement) - (JNIEnv *env, jobjectArray array, jsize index, jobject val); - - jbooleanArray (JNICALL *NewBooleanArray) - (JNIEnv *env, jsize len); - jbyteArray (JNICALL *NewByteArray) - (JNIEnv *env, jsize len); - jcharArray (JNICALL *NewCharArray) - (JNIEnv *env, jsize len); - jshortArray (JNICALL *NewShortArray) - (JNIEnv *env, jsize len); - jintArray (JNICALL *NewIntArray) - (JNIEnv *env, jsize len); - jlongArray (JNICALL *NewLongArray) - (JNIEnv *env, jsize len); - jfloatArray (JNICALL *NewFloatArray) - (JNIEnv *env, jsize len); - jdoubleArray (JNICALL *NewDoubleArray) - (JNIEnv *env, jsize len); - - jboolean * (JNICALL *GetBooleanArrayElements) - (JNIEnv *env, jbooleanArray array, jboolean *isCopy); - jbyte * (JNICALL *GetByteArrayElements) - (JNIEnv *env, jbyteArray array, jboolean *isCopy); - jchar * (JNICALL *GetCharArrayElements) - (JNIEnv *env, jcharArray array, jboolean *isCopy); - jshort * (JNICALL *GetShortArrayElements) - (JNIEnv *env, jshortArray array, jboolean *isCopy); - jint * (JNICALL *GetIntArrayElements) - (JNIEnv *env, jintArray array, jboolean *isCopy); - jlong * (JNICALL *GetLongArrayElements) - (JNIEnv *env, jlongArray array, jboolean *isCopy); - jfloat * (JNICALL *GetFloatArrayElements) - (JNIEnv *env, jfloatArray array, jboolean *isCopy); - jdouble * (JNICALL *GetDoubleArrayElements) - (JNIEnv *env, jdoubleArray array, jboolean *isCopy); - - void (JNICALL *ReleaseBooleanArrayElements) - (JNIEnv *env, jbooleanArray array, jboolean *elems, jint mode); - void (JNICALL *ReleaseByteArrayElements) - (JNIEnv *env, jbyteArray array, jbyte *elems, jint mode); - void (JNICALL *ReleaseCharArrayElements) - (JNIEnv *env, jcharArray array, jchar *elems, jint mode); - void (JNICALL *ReleaseShortArrayElements) - (JNIEnv *env, jshortArray array, jshort *elems, jint mode); - void (JNICALL *ReleaseIntArrayElements) - (JNIEnv *env, jintArray array, jint *elems, jint mode); - void (JNICALL *ReleaseLongArrayElements) - (JNIEnv *env, jlongArray array, jlong *elems, jint mode); - void (JNICALL *ReleaseFloatArrayElements) - (JNIEnv *env, jfloatArray array, jfloat *elems, jint mode); - void (JNICALL *ReleaseDoubleArrayElements) - (JNIEnv *env, jdoubleArray array, jdouble *elems, jint mode); - - void (JNICALL *GetBooleanArrayRegion) - (JNIEnv *env, jbooleanArray array, jsize start, jsize l, jboolean *buf); - void (JNICALL *GetByteArrayRegion) - (JNIEnv *env, jbyteArray array, jsize start, jsize len, jbyte *buf); - void (JNICALL *GetCharArrayRegion) - (JNIEnv *env, jcharArray array, jsize start, jsize len, jchar *buf); - void (JNICALL *GetShortArrayRegion) - (JNIEnv *env, jshortArray array, jsize start, jsize len, jshort *buf); - void (JNICALL *GetIntArrayRegion) - (JNIEnv *env, jintArray array, jsize start, jsize len, jint *buf); - void (JNICALL *GetLongArrayRegion) - (JNIEnv *env, jlongArray array, jsize start, jsize len, jlong *buf); - void (JNICALL *GetFloatArrayRegion) - (JNIEnv *env, jfloatArray array, jsize start, jsize len, jfloat *buf); - void (JNICALL *GetDoubleArrayRegion) - (JNIEnv *env, jdoubleArray array, jsize start, jsize len, jdouble *buf); - - void (JNICALL *SetBooleanArrayRegion) - (JNIEnv *env, jbooleanArray array, jsize start, jsize l, const jboolean *buf); - void (JNICALL *SetByteArrayRegion) - (JNIEnv *env, jbyteArray array, jsize start, jsize len, const jbyte *buf); - void (JNICALL *SetCharArrayRegion) - (JNIEnv *env, jcharArray array, jsize start, jsize len, const jchar *buf); - void (JNICALL *SetShortArrayRegion) - (JNIEnv *env, jshortArray array, jsize start, jsize len, const jshort *buf); - void (JNICALL *SetIntArrayRegion) - (JNIEnv *env, jintArray array, jsize start, jsize len, const jint *buf); - void (JNICALL *SetLongArrayRegion) - (JNIEnv *env, jlongArray array, jsize start, jsize len, const jlong *buf); - void (JNICALL *SetFloatArrayRegion) - (JNIEnv *env, jfloatArray array, jsize start, jsize len, const jfloat *buf); - void (JNICALL *SetDoubleArrayRegion) - (JNIEnv *env, jdoubleArray array, jsize start, jsize len, const jdouble *buf); - - jint (JNICALL *RegisterNatives) - (JNIEnv *env, jclass clazz, const JNINativeMethod *methods, - jint nMethods); - jint (JNICALL *UnregisterNatives) - (JNIEnv *env, jclass clazz); - - jint (JNICALL *MonitorEnter) - (JNIEnv *env, jobject obj); - jint (JNICALL *MonitorExit) - (JNIEnv *env, jobject obj); - - jint (JNICALL *GetJavaVM) - (JNIEnv *env, JavaVM **vm); - - void (JNICALL *GetStringRegion) - (JNIEnv *env, jstring str, jsize start, jsize len, jchar *buf); - void (JNICALL *GetStringUTFRegion) - (JNIEnv *env, jstring str, jsize start, jsize len, char *buf); - - void * (JNICALL *GetPrimitiveArrayCritical) - (JNIEnv *env, jarray array, jboolean *isCopy); - void (JNICALL *ReleasePrimitiveArrayCritical) - (JNIEnv *env, jarray array, void *carray, jint mode); - - const jchar * (JNICALL *GetStringCritical) - (JNIEnv *env, jstring string, jboolean *isCopy); - void (JNICALL *ReleaseStringCritical) - (JNIEnv *env, jstring string, const jchar *cstring); - - jweak (JNICALL *NewWeakGlobalRef) - (JNIEnv *env, jobject obj); - void (JNICALL *DeleteWeakGlobalRef) - (JNIEnv *env, jweak ref); - - jboolean (JNICALL *ExceptionCheck) - (JNIEnv *env); - - jobject (JNICALL *NewDirectByteBuffer) - (JNIEnv* env, void* address, jlong capacity); - void* (JNICALL *GetDirectBufferAddress) - (JNIEnv* env, jobject buf); - jlong (JNICALL *GetDirectBufferCapacity) - (JNIEnv* env, jobject buf); - - /* New JNI 1.6 Features */ - - jobjectRefType (JNICALL *GetObjectRefType) - (JNIEnv* env, jobject obj); -}; - -/* - * We use inlined functions for C++ so that programmers can write: - * - * env->FindClass("java/lang/String") - * - * in C++ rather than: - * - * (*env)->FindClass(env, "java/lang/String") - * - * in C. - */ - -struct JNIEnv_ { - const struct JNINativeInterface_ *functions; -#ifdef __cplusplus - - jint GetVersion() { - return functions->GetVersion(this); - } - jclass DefineClass(const char *name, jobject loader, const jbyte *buf, - jsize len) { - return functions->DefineClass(this, name, loader, buf, len); - } - jclass FindClass(const char *name) { - return functions->FindClass(this, name); - } - jmethodID FromReflectedMethod(jobject method) { - return functions->FromReflectedMethod(this,method); - } - jfieldID FromReflectedField(jobject field) { - return functions->FromReflectedField(this,field); - } - - jobject ToReflectedMethod(jclass cls, jmethodID methodID, jboolean isStatic) { - return functions->ToReflectedMethod(this, cls, methodID, isStatic); - } - - jclass GetSuperclass(jclass sub) { - return functions->GetSuperclass(this, sub); - } - jboolean IsAssignableFrom(jclass sub, jclass sup) { - return functions->IsAssignableFrom(this, sub, sup); - } - - jobject ToReflectedField(jclass cls, jfieldID fieldID, jboolean isStatic) { - return functions->ToReflectedField(this,cls,fieldID,isStatic); - } - - jint Throw(jthrowable obj) { - return functions->Throw(this, obj); - } - jint ThrowNew(jclass clazz, const char *msg) { - return functions->ThrowNew(this, clazz, msg); - } - jthrowable ExceptionOccurred() { - return functions->ExceptionOccurred(this); - } - void ExceptionDescribe() { - functions->ExceptionDescribe(this); - } - void ExceptionClear() { - functions->ExceptionClear(this); - } - void FatalError(const char *msg) { - functions->FatalError(this, msg); - } - - jint PushLocalFrame(jint capacity) { - return functions->PushLocalFrame(this,capacity); - } - jobject PopLocalFrame(jobject result) { - return functions->PopLocalFrame(this,result); - } - - jobject NewGlobalRef(jobject lobj) { - return functions->NewGlobalRef(this,lobj); - } - void DeleteGlobalRef(jobject gref) { - functions->DeleteGlobalRef(this,gref); - } - void DeleteLocalRef(jobject obj) { - functions->DeleteLocalRef(this, obj); - } - - jboolean IsSameObject(jobject obj1, jobject obj2) { - return functions->IsSameObject(this,obj1,obj2); - } - - jobject NewLocalRef(jobject ref) { - return functions->NewLocalRef(this,ref); - } - jint EnsureLocalCapacity(jint capacity) { - return functions->EnsureLocalCapacity(this,capacity); - } - - jobject AllocObject(jclass clazz) { - return functions->AllocObject(this,clazz); - } - jobject NewObject(jclass clazz, jmethodID methodID, ...) { - va_list args; - jobject result; - va_start(args, methodID); - result = functions->NewObjectV(this,clazz,methodID,args); - va_end(args); - return result; - } - jobject NewObjectV(jclass clazz, jmethodID methodID, - va_list args) { - return functions->NewObjectV(this,clazz,methodID,args); - } - jobject NewObjectA(jclass clazz, jmethodID methodID, - const jvalue *args) { - return functions->NewObjectA(this,clazz,methodID,args); - } - - jclass GetObjectClass(jobject obj) { - return functions->GetObjectClass(this,obj); - } - jboolean IsInstanceOf(jobject obj, jclass clazz) { - return functions->IsInstanceOf(this,obj,clazz); - } - - jmethodID GetMethodID(jclass clazz, const char *name, - const char *sig) { - return functions->GetMethodID(this,clazz,name,sig); - } - - jobject CallObjectMethod(jobject obj, jmethodID methodID, ...) { - va_list args; - jobject result; - va_start(args,methodID); - result = functions->CallObjectMethodV(this,obj,methodID,args); - va_end(args); - return result; - } - jobject CallObjectMethodV(jobject obj, jmethodID methodID, - va_list args) { - return functions->CallObjectMethodV(this,obj,methodID,args); - } - jobject CallObjectMethodA(jobject obj, jmethodID methodID, - const jvalue * args) { - return functions->CallObjectMethodA(this,obj,methodID,args); - } - - jboolean CallBooleanMethod(jobject obj, - jmethodID methodID, ...) { - va_list args; - jboolean result; - va_start(args,methodID); - result = functions->CallBooleanMethodV(this,obj,methodID,args); - va_end(args); - return result; - } - jboolean CallBooleanMethodV(jobject obj, jmethodID methodID, - va_list args) { - return functions->CallBooleanMethodV(this,obj,methodID,args); - } - jboolean CallBooleanMethodA(jobject obj, jmethodID methodID, - const jvalue * args) { - return functions->CallBooleanMethodA(this,obj,methodID, args); - } - - jbyte CallByteMethod(jobject obj, jmethodID methodID, ...) { - va_list args; - jbyte result; - va_start(args,methodID); - result = functions->CallByteMethodV(this,obj,methodID,args); - va_end(args); - return result; - } - jbyte CallByteMethodV(jobject obj, jmethodID methodID, - va_list args) { - return functions->CallByteMethodV(this,obj,methodID,args); - } - jbyte CallByteMethodA(jobject obj, jmethodID methodID, - const jvalue * args) { - return functions->CallByteMethodA(this,obj,methodID,args); - } - - jchar CallCharMethod(jobject obj, jmethodID methodID, ...) { - va_list args; - jchar result; - va_start(args,methodID); - result = functions->CallCharMethodV(this,obj,methodID,args); - va_end(args); - return result; - } - jchar CallCharMethodV(jobject obj, jmethodID methodID, - va_list args) { - return functions->CallCharMethodV(this,obj,methodID,args); - } - jchar CallCharMethodA(jobject obj, jmethodID methodID, - const jvalue * args) { - return functions->CallCharMethodA(this,obj,methodID,args); - } - - jshort CallShortMethod(jobject obj, jmethodID methodID, ...) { - va_list args; - jshort result; - va_start(args,methodID); - result = functions->CallShortMethodV(this,obj,methodID,args); - va_end(args); - return result; - } - jshort CallShortMethodV(jobject obj, jmethodID methodID, - va_list args) { - return functions->CallShortMethodV(this,obj,methodID,args); - } - jshort CallShortMethodA(jobject obj, jmethodID methodID, - const jvalue * args) { - return functions->CallShortMethodA(this,obj,methodID,args); - } - - jint CallIntMethod(jobject obj, jmethodID methodID, ...) { - va_list args; - jint result; - va_start(args,methodID); - result = functions->CallIntMethodV(this,obj,methodID,args); - va_end(args); - return result; - } - jint CallIntMethodV(jobject obj, jmethodID methodID, - va_list args) { - return functions->CallIntMethodV(this,obj,methodID,args); - } - jint CallIntMethodA(jobject obj, jmethodID methodID, - const jvalue * args) { - return functions->CallIntMethodA(this,obj,methodID,args); - } - - jlong CallLongMethod(jobject obj, jmethodID methodID, ...) { - va_list args; - jlong result; - va_start(args,methodID); - result = functions->CallLongMethodV(this,obj,methodID,args); - va_end(args); - return result; - } - jlong CallLongMethodV(jobject obj, jmethodID methodID, - va_list args) { - return functions->CallLongMethodV(this,obj,methodID,args); - } - jlong CallLongMethodA(jobject obj, jmethodID methodID, - const jvalue * args) { - return functions->CallLongMethodA(this,obj,methodID,args); - } - - jfloat CallFloatMethod(jobject obj, jmethodID methodID, ...) { - va_list args; - jfloat result; - va_start(args,methodID); - result = functions->CallFloatMethodV(this,obj,methodID,args); - va_end(args); - return result; - } - jfloat CallFloatMethodV(jobject obj, jmethodID methodID, - va_list args) { - return functions->CallFloatMethodV(this,obj,methodID,args); - } - jfloat CallFloatMethodA(jobject obj, jmethodID methodID, - const jvalue * args) { - return functions->CallFloatMethodA(this,obj,methodID,args); - } - - jdouble CallDoubleMethod(jobject obj, jmethodID methodID, ...) { - va_list args; - jdouble result; - va_start(args,methodID); - result = functions->CallDoubleMethodV(this,obj,methodID,args); - va_end(args); - return result; - } - jdouble CallDoubleMethodV(jobject obj, jmethodID methodID, - va_list args) { - return functions->CallDoubleMethodV(this,obj,methodID,args); - } - jdouble CallDoubleMethodA(jobject obj, jmethodID methodID, - const jvalue * args) { - return functions->CallDoubleMethodA(this,obj,methodID,args); - } - - void CallVoidMethod(jobject obj, jmethodID methodID, ...) { - va_list args; - va_start(args,methodID); - functions->CallVoidMethodV(this,obj,methodID,args); - va_end(args); - } - void CallVoidMethodV(jobject obj, jmethodID methodID, - va_list args) { - functions->CallVoidMethodV(this,obj,methodID,args); - } - void CallVoidMethodA(jobject obj, jmethodID methodID, - const jvalue * args) { - functions->CallVoidMethodA(this,obj,methodID,args); - } - - jobject CallNonvirtualObjectMethod(jobject obj, jclass clazz, - jmethodID methodID, ...) { - va_list args; - jobject result; - va_start(args,methodID); - result = functions->CallNonvirtualObjectMethodV(this,obj,clazz, - methodID,args); - va_end(args); - return result; - } - jobject CallNonvirtualObjectMethodV(jobject obj, jclass clazz, - jmethodID methodID, va_list args) { - return functions->CallNonvirtualObjectMethodV(this,obj,clazz, - methodID,args); - } - jobject CallNonvirtualObjectMethodA(jobject obj, jclass clazz, - jmethodID methodID, const jvalue * args) { - return functions->CallNonvirtualObjectMethodA(this,obj,clazz, - methodID,args); - } - - jboolean CallNonvirtualBooleanMethod(jobject obj, jclass clazz, - jmethodID methodID, ...) { - va_list args; - jboolean result; - va_start(args,methodID); - result = functions->CallNonvirtualBooleanMethodV(this,obj,clazz, - methodID,args); - va_end(args); - return result; - } - jboolean CallNonvirtualBooleanMethodV(jobject obj, jclass clazz, - jmethodID methodID, va_list args) { - return functions->CallNonvirtualBooleanMethodV(this,obj,clazz, - methodID,args); - } - jboolean CallNonvirtualBooleanMethodA(jobject obj, jclass clazz, - jmethodID methodID, const jvalue * args) { - return functions->CallNonvirtualBooleanMethodA(this,obj,clazz, - methodID, args); - } - - jbyte CallNonvirtualByteMethod(jobject obj, jclass clazz, - jmethodID methodID, ...) { - va_list args; - jbyte result; - va_start(args,methodID); - result = functions->CallNonvirtualByteMethodV(this,obj,clazz, - methodID,args); - va_end(args); - return result; - } - jbyte CallNonvirtualByteMethodV(jobject obj, jclass clazz, - jmethodID methodID, va_list args) { - return functions->CallNonvirtualByteMethodV(this,obj,clazz, - methodID,args); - } - jbyte CallNonvirtualByteMethodA(jobject obj, jclass clazz, - jmethodID methodID, const jvalue * args) { - return functions->CallNonvirtualByteMethodA(this,obj,clazz, - methodID,args); - } - - jchar CallNonvirtualCharMethod(jobject obj, jclass clazz, - jmethodID methodID, ...) { - va_list args; - jchar result; - va_start(args,methodID); - result = functions->CallNonvirtualCharMethodV(this,obj,clazz, - methodID,args); - va_end(args); - return result; - } - jchar CallNonvirtualCharMethodV(jobject obj, jclass clazz, - jmethodID methodID, va_list args) { - return functions->CallNonvirtualCharMethodV(this,obj,clazz, - methodID,args); - } - jchar CallNonvirtualCharMethodA(jobject obj, jclass clazz, - jmethodID methodID, const jvalue * args) { - return functions->CallNonvirtualCharMethodA(this,obj,clazz, - methodID,args); - } - - jshort CallNonvirtualShortMethod(jobject obj, jclass clazz, - jmethodID methodID, ...) { - va_list args; - jshort result; - va_start(args,methodID); - result = functions->CallNonvirtualShortMethodV(this,obj,clazz, - methodID,args); - va_end(args); - return result; - } - jshort CallNonvirtualShortMethodV(jobject obj, jclass clazz, - jmethodID methodID, va_list args) { - return functions->CallNonvirtualShortMethodV(this,obj,clazz, - methodID,args); - } - jshort CallNonvirtualShortMethodA(jobject obj, jclass clazz, - jmethodID methodID, const jvalue * args) { - return functions->CallNonvirtualShortMethodA(this,obj,clazz, - methodID,args); - } - - jint CallNonvirtualIntMethod(jobject obj, jclass clazz, - jmethodID methodID, ...) { - va_list args; - jint result; - va_start(args,methodID); - result = functions->CallNonvirtualIntMethodV(this,obj,clazz, - methodID,args); - va_end(args); - return result; - } - jint CallNonvirtualIntMethodV(jobject obj, jclass clazz, - jmethodID methodID, va_list args) { - return functions->CallNonvirtualIntMethodV(this,obj,clazz, - methodID,args); - } - jint CallNonvirtualIntMethodA(jobject obj, jclass clazz, - jmethodID methodID, const jvalue * args) { - return functions->CallNonvirtualIntMethodA(this,obj,clazz, - methodID,args); - } - - jlong CallNonvirtualLongMethod(jobject obj, jclass clazz, - jmethodID methodID, ...) { - va_list args; - jlong result; - va_start(args,methodID); - result = functions->CallNonvirtualLongMethodV(this,obj,clazz, - methodID,args); - va_end(args); - return result; - } - jlong CallNonvirtualLongMethodV(jobject obj, jclass clazz, - jmethodID methodID, va_list args) { - return functions->CallNonvirtualLongMethodV(this,obj,clazz, - methodID,args); - } - jlong CallNonvirtualLongMethodA(jobject obj, jclass clazz, - jmethodID methodID, const jvalue * args) { - return functions->CallNonvirtualLongMethodA(this,obj,clazz, - methodID,args); - } - - jfloat CallNonvirtualFloatMethod(jobject obj, jclass clazz, - jmethodID methodID, ...) { - va_list args; - jfloat result; - va_start(args,methodID); - result = functions->CallNonvirtualFloatMethodV(this,obj,clazz, - methodID,args); - va_end(args); - return result; - } - jfloat CallNonvirtualFloatMethodV(jobject obj, jclass clazz, - jmethodID methodID, - va_list args) { - return functions->CallNonvirtualFloatMethodV(this,obj,clazz, - methodID,args); - } - jfloat CallNonvirtualFloatMethodA(jobject obj, jclass clazz, - jmethodID methodID, - const jvalue * args) { - return functions->CallNonvirtualFloatMethodA(this,obj,clazz, - methodID,args); - } - - jdouble CallNonvirtualDoubleMethod(jobject obj, jclass clazz, - jmethodID methodID, ...) { - va_list args; - jdouble result; - va_start(args,methodID); - result = functions->CallNonvirtualDoubleMethodV(this,obj,clazz, - methodID,args); - va_end(args); - return result; - } - jdouble CallNonvirtualDoubleMethodV(jobject obj, jclass clazz, - jmethodID methodID, - va_list args) { - return functions->CallNonvirtualDoubleMethodV(this,obj,clazz, - methodID,args); - } - jdouble CallNonvirtualDoubleMethodA(jobject obj, jclass clazz, - jmethodID methodID, - const jvalue * args) { - return functions->CallNonvirtualDoubleMethodA(this,obj,clazz, - methodID,args); - } - - void CallNonvirtualVoidMethod(jobject obj, jclass clazz, - jmethodID methodID, ...) { - va_list args; - va_start(args,methodID); - functions->CallNonvirtualVoidMethodV(this,obj,clazz,methodID,args); - va_end(args); - } - void CallNonvirtualVoidMethodV(jobject obj, jclass clazz, - jmethodID methodID, - va_list args) { - functions->CallNonvirtualVoidMethodV(this,obj,clazz,methodID,args); - } - void CallNonvirtualVoidMethodA(jobject obj, jclass clazz, - jmethodID methodID, - const jvalue * args) { - functions->CallNonvirtualVoidMethodA(this,obj,clazz,methodID,args); - } - - jfieldID GetFieldID(jclass clazz, const char *name, - const char *sig) { - return functions->GetFieldID(this,clazz,name,sig); - } - - jobject GetObjectField(jobject obj, jfieldID fieldID) { - return functions->GetObjectField(this,obj,fieldID); - } - jboolean GetBooleanField(jobject obj, jfieldID fieldID) { - return functions->GetBooleanField(this,obj,fieldID); - } - jbyte GetByteField(jobject obj, jfieldID fieldID) { - return functions->GetByteField(this,obj,fieldID); - } - jchar GetCharField(jobject obj, jfieldID fieldID) { - return functions->GetCharField(this,obj,fieldID); - } - jshort GetShortField(jobject obj, jfieldID fieldID) { - return functions->GetShortField(this,obj,fieldID); - } - jint GetIntField(jobject obj, jfieldID fieldID) { - return functions->GetIntField(this,obj,fieldID); - } - jlong GetLongField(jobject obj, jfieldID fieldID) { - return functions->GetLongField(this,obj,fieldID); - } - jfloat GetFloatField(jobject obj, jfieldID fieldID) { - return functions->GetFloatField(this,obj,fieldID); - } - jdouble GetDoubleField(jobject obj, jfieldID fieldID) { - return functions->GetDoubleField(this,obj,fieldID); - } - - void SetObjectField(jobject obj, jfieldID fieldID, jobject val) { - functions->SetObjectField(this,obj,fieldID,val); - } - void SetBooleanField(jobject obj, jfieldID fieldID, - jboolean val) { - functions->SetBooleanField(this,obj,fieldID,val); - } - void SetByteField(jobject obj, jfieldID fieldID, - jbyte val) { - functions->SetByteField(this,obj,fieldID,val); - } - void SetCharField(jobject obj, jfieldID fieldID, - jchar val) { - functions->SetCharField(this,obj,fieldID,val); - } - void SetShortField(jobject obj, jfieldID fieldID, - jshort val) { - functions->SetShortField(this,obj,fieldID,val); - } - void SetIntField(jobject obj, jfieldID fieldID, - jint val) { - functions->SetIntField(this,obj,fieldID,val); - } - void SetLongField(jobject obj, jfieldID fieldID, - jlong val) { - functions->SetLongField(this,obj,fieldID,val); - } - void SetFloatField(jobject obj, jfieldID fieldID, - jfloat val) { - functions->SetFloatField(this,obj,fieldID,val); - } - void SetDoubleField(jobject obj, jfieldID fieldID, - jdouble val) { - functions->SetDoubleField(this,obj,fieldID,val); - } - - jmethodID GetStaticMethodID(jclass clazz, const char *name, - const char *sig) { - return functions->GetStaticMethodID(this,clazz,name,sig); - } - - jobject CallStaticObjectMethod(jclass clazz, jmethodID methodID, - ...) { - va_list args; - jobject result; - va_start(args,methodID); - result = functions->CallStaticObjectMethodV(this,clazz,methodID,args); - va_end(args); - return result; - } - jobject CallStaticObjectMethodV(jclass clazz, jmethodID methodID, - va_list args) { - return functions->CallStaticObjectMethodV(this,clazz,methodID,args); - } - jobject CallStaticObjectMethodA(jclass clazz, jmethodID methodID, - const jvalue *args) { - return functions->CallStaticObjectMethodA(this,clazz,methodID,args); - } - - jboolean CallStaticBooleanMethod(jclass clazz, - jmethodID methodID, ...) { - va_list args; - jboolean result; - va_start(args,methodID); - result = functions->CallStaticBooleanMethodV(this,clazz,methodID,args); - va_end(args); - return result; - } - jboolean CallStaticBooleanMethodV(jclass clazz, - jmethodID methodID, va_list args) { - return functions->CallStaticBooleanMethodV(this,clazz,methodID,args); - } - jboolean CallStaticBooleanMethodA(jclass clazz, - jmethodID methodID, const jvalue *args) { - return functions->CallStaticBooleanMethodA(this,clazz,methodID,args); - } - - jbyte CallStaticByteMethod(jclass clazz, - jmethodID methodID, ...) { - va_list args; - jbyte result; - va_start(args,methodID); - result = functions->CallStaticByteMethodV(this,clazz,methodID,args); - va_end(args); - return result; - } - jbyte CallStaticByteMethodV(jclass clazz, - jmethodID methodID, va_list args) { - return functions->CallStaticByteMethodV(this,clazz,methodID,args); - } - jbyte CallStaticByteMethodA(jclass clazz, - jmethodID methodID, const jvalue *args) { - return functions->CallStaticByteMethodA(this,clazz,methodID,args); - } - - jchar CallStaticCharMethod(jclass clazz, - jmethodID methodID, ...) { - va_list args; - jchar result; - va_start(args,methodID); - result = functions->CallStaticCharMethodV(this,clazz,methodID,args); - va_end(args); - return result; - } - jchar CallStaticCharMethodV(jclass clazz, - jmethodID methodID, va_list args) { - return functions->CallStaticCharMethodV(this,clazz,methodID,args); - } - jchar CallStaticCharMethodA(jclass clazz, - jmethodID methodID, const jvalue *args) { - return functions->CallStaticCharMethodA(this,clazz,methodID,args); - } - - jshort CallStaticShortMethod(jclass clazz, - jmethodID methodID, ...) { - va_list args; - jshort result; - va_start(args,methodID); - result = functions->CallStaticShortMethodV(this,clazz,methodID,args); - va_end(args); - return result; - } - jshort CallStaticShortMethodV(jclass clazz, - jmethodID methodID, va_list args) { - return functions->CallStaticShortMethodV(this,clazz,methodID,args); - } - jshort CallStaticShortMethodA(jclass clazz, - jmethodID methodID, const jvalue *args) { - return functions->CallStaticShortMethodA(this,clazz,methodID,args); - } - - jint CallStaticIntMethod(jclass clazz, - jmethodID methodID, ...) { - va_list args; - jint result; - va_start(args,methodID); - result = functions->CallStaticIntMethodV(this,clazz,methodID,args); - va_end(args); - return result; - } - jint CallStaticIntMethodV(jclass clazz, - jmethodID methodID, va_list args) { - return functions->CallStaticIntMethodV(this,clazz,methodID,args); - } - jint CallStaticIntMethodA(jclass clazz, - jmethodID methodID, const jvalue *args) { - return functions->CallStaticIntMethodA(this,clazz,methodID,args); - } - - jlong CallStaticLongMethod(jclass clazz, - jmethodID methodID, ...) { - va_list args; - jlong result; - va_start(args,methodID); - result = functions->CallStaticLongMethodV(this,clazz,methodID,args); - va_end(args); - return result; - } - jlong CallStaticLongMethodV(jclass clazz, - jmethodID methodID, va_list args) { - return functions->CallStaticLongMethodV(this,clazz,methodID,args); - } - jlong CallStaticLongMethodA(jclass clazz, - jmethodID methodID, const jvalue *args) { - return functions->CallStaticLongMethodA(this,clazz,methodID,args); - } - - jfloat CallStaticFloatMethod(jclass clazz, - jmethodID methodID, ...) { - va_list args; - jfloat result; - va_start(args,methodID); - result = functions->CallStaticFloatMethodV(this,clazz,methodID,args); - va_end(args); - return result; - } - jfloat CallStaticFloatMethodV(jclass clazz, - jmethodID methodID, va_list args) { - return functions->CallStaticFloatMethodV(this,clazz,methodID,args); - } - jfloat CallStaticFloatMethodA(jclass clazz, - jmethodID methodID, const jvalue *args) { - return functions->CallStaticFloatMethodA(this,clazz,methodID,args); - } - - jdouble CallStaticDoubleMethod(jclass clazz, - jmethodID methodID, ...) { - va_list args; - jdouble result; - va_start(args,methodID); - result = functions->CallStaticDoubleMethodV(this,clazz,methodID,args); - va_end(args); - return result; - } - jdouble CallStaticDoubleMethodV(jclass clazz, - jmethodID methodID, va_list args) { - return functions->CallStaticDoubleMethodV(this,clazz,methodID,args); - } - jdouble CallStaticDoubleMethodA(jclass clazz, - jmethodID methodID, const jvalue *args) { - return functions->CallStaticDoubleMethodA(this,clazz,methodID,args); - } - - void CallStaticVoidMethod(jclass cls, jmethodID methodID, ...) { - va_list args; - va_start(args,methodID); - functions->CallStaticVoidMethodV(this,cls,methodID,args); - va_end(args); - } - void CallStaticVoidMethodV(jclass cls, jmethodID methodID, - va_list args) { - functions->CallStaticVoidMethodV(this,cls,methodID,args); - } - void CallStaticVoidMethodA(jclass cls, jmethodID methodID, - const jvalue * args) { - functions->CallStaticVoidMethodA(this,cls,methodID,args); - } - - jfieldID GetStaticFieldID(jclass clazz, const char *name, - const char *sig) { - return functions->GetStaticFieldID(this,clazz,name,sig); - } - jobject GetStaticObjectField(jclass clazz, jfieldID fieldID) { - return functions->GetStaticObjectField(this,clazz,fieldID); - } - jboolean GetStaticBooleanField(jclass clazz, jfieldID fieldID) { - return functions->GetStaticBooleanField(this,clazz,fieldID); - } - jbyte GetStaticByteField(jclass clazz, jfieldID fieldID) { - return functions->GetStaticByteField(this,clazz,fieldID); - } - jchar GetStaticCharField(jclass clazz, jfieldID fieldID) { - return functions->GetStaticCharField(this,clazz,fieldID); - } - jshort GetStaticShortField(jclass clazz, jfieldID fieldID) { - return functions->GetStaticShortField(this,clazz,fieldID); - } - jint GetStaticIntField(jclass clazz, jfieldID fieldID) { - return functions->GetStaticIntField(this,clazz,fieldID); - } - jlong GetStaticLongField(jclass clazz, jfieldID fieldID) { - return functions->GetStaticLongField(this,clazz,fieldID); - } - jfloat GetStaticFloatField(jclass clazz, jfieldID fieldID) { - return functions->GetStaticFloatField(this,clazz,fieldID); - } - jdouble GetStaticDoubleField(jclass clazz, jfieldID fieldID) { - return functions->GetStaticDoubleField(this,clazz,fieldID); - } - - void SetStaticObjectField(jclass clazz, jfieldID fieldID, - jobject value) { - functions->SetStaticObjectField(this,clazz,fieldID,value); - } - void SetStaticBooleanField(jclass clazz, jfieldID fieldID, - jboolean value) { - functions->SetStaticBooleanField(this,clazz,fieldID,value); - } - void SetStaticByteField(jclass clazz, jfieldID fieldID, - jbyte value) { - functions->SetStaticByteField(this,clazz,fieldID,value); - } - void SetStaticCharField(jclass clazz, jfieldID fieldID, - jchar value) { - functions->SetStaticCharField(this,clazz,fieldID,value); - } - void SetStaticShortField(jclass clazz, jfieldID fieldID, - jshort value) { - functions->SetStaticShortField(this,clazz,fieldID,value); - } - void SetStaticIntField(jclass clazz, jfieldID fieldID, - jint value) { - functions->SetStaticIntField(this,clazz,fieldID,value); - } - void SetStaticLongField(jclass clazz, jfieldID fieldID, - jlong value) { - functions->SetStaticLongField(this,clazz,fieldID,value); - } - void SetStaticFloatField(jclass clazz, jfieldID fieldID, - jfloat value) { - functions->SetStaticFloatField(this,clazz,fieldID,value); - } - void SetStaticDoubleField(jclass clazz, jfieldID fieldID, - jdouble value) { - functions->SetStaticDoubleField(this,clazz,fieldID,value); - } - - jstring NewString(const jchar *unicode, jsize len) { - return functions->NewString(this,unicode,len); - } - jsize GetStringLength(jstring str) { - return functions->GetStringLength(this,str); - } - const jchar *GetStringChars(jstring str, jboolean *isCopy) { - return functions->GetStringChars(this,str,isCopy); - } - void ReleaseStringChars(jstring str, const jchar *chars) { - functions->ReleaseStringChars(this,str,chars); - } - - jstring NewStringUTF(const char *utf) { - return functions->NewStringUTF(this,utf); - } - jsize GetStringUTFLength(jstring str) { - return functions->GetStringUTFLength(this,str); - } - const char* GetStringUTFChars(jstring str, jboolean *isCopy) { - return functions->GetStringUTFChars(this,str,isCopy); - } - void ReleaseStringUTFChars(jstring str, const char* chars) { - functions->ReleaseStringUTFChars(this,str,chars); - } - - jsize GetArrayLength(jarray array) { - return functions->GetArrayLength(this,array); - } - - jobjectArray NewObjectArray(jsize len, jclass clazz, - jobject init) { - return functions->NewObjectArray(this,len,clazz,init); - } - jobject GetObjectArrayElement(jobjectArray array, jsize index) { - return functions->GetObjectArrayElement(this,array,index); - } - void SetObjectArrayElement(jobjectArray array, jsize index, - jobject val) { - functions->SetObjectArrayElement(this,array,index,val); - } - - jbooleanArray NewBooleanArray(jsize len) { - return functions->NewBooleanArray(this,len); - } - jbyteArray NewByteArray(jsize len) { - return functions->NewByteArray(this,len); - } - jcharArray NewCharArray(jsize len) { - return functions->NewCharArray(this,len); - } - jshortArray NewShortArray(jsize len) { - return functions->NewShortArray(this,len); - } - jintArray NewIntArray(jsize len) { - return functions->NewIntArray(this,len); - } - jlongArray NewLongArray(jsize len) { - return functions->NewLongArray(this,len); - } - jfloatArray NewFloatArray(jsize len) { - return functions->NewFloatArray(this,len); - } - jdoubleArray NewDoubleArray(jsize len) { - return functions->NewDoubleArray(this,len); - } - - jboolean * GetBooleanArrayElements(jbooleanArray array, jboolean *isCopy) { - return functions->GetBooleanArrayElements(this,array,isCopy); - } - jbyte * GetByteArrayElements(jbyteArray array, jboolean *isCopy) { - return functions->GetByteArrayElements(this,array,isCopy); - } - jchar * GetCharArrayElements(jcharArray array, jboolean *isCopy) { - return functions->GetCharArrayElements(this,array,isCopy); - } - jshort * GetShortArrayElements(jshortArray array, jboolean *isCopy) { - return functions->GetShortArrayElements(this,array,isCopy); - } - jint * GetIntArrayElements(jintArray array, jboolean *isCopy) { - return functions->GetIntArrayElements(this,array,isCopy); - } - jlong * GetLongArrayElements(jlongArray array, jboolean *isCopy) { - return functions->GetLongArrayElements(this,array,isCopy); - } - jfloat * GetFloatArrayElements(jfloatArray array, jboolean *isCopy) { - return functions->GetFloatArrayElements(this,array,isCopy); - } - jdouble * GetDoubleArrayElements(jdoubleArray array, jboolean *isCopy) { - return functions->GetDoubleArrayElements(this,array,isCopy); - } - - void ReleaseBooleanArrayElements(jbooleanArray array, - jboolean *elems, - jint mode) { - functions->ReleaseBooleanArrayElements(this,array,elems,mode); - } - void ReleaseByteArrayElements(jbyteArray array, - jbyte *elems, - jint mode) { - functions->ReleaseByteArrayElements(this,array,elems,mode); - } - void ReleaseCharArrayElements(jcharArray array, - jchar *elems, - jint mode) { - functions->ReleaseCharArrayElements(this,array,elems,mode); - } - void ReleaseShortArrayElements(jshortArray array, - jshort *elems, - jint mode) { - functions->ReleaseShortArrayElements(this,array,elems,mode); - } - void ReleaseIntArrayElements(jintArray array, - jint *elems, - jint mode) { - functions->ReleaseIntArrayElements(this,array,elems,mode); - } - void ReleaseLongArrayElements(jlongArray array, - jlong *elems, - jint mode) { - functions->ReleaseLongArrayElements(this,array,elems,mode); - } - void ReleaseFloatArrayElements(jfloatArray array, - jfloat *elems, - jint mode) { - functions->ReleaseFloatArrayElements(this,array,elems,mode); - } - void ReleaseDoubleArrayElements(jdoubleArray array, - jdouble *elems, - jint mode) { - functions->ReleaseDoubleArrayElements(this,array,elems,mode); - } - - void GetBooleanArrayRegion(jbooleanArray array, - jsize start, jsize len, jboolean *buf) { - functions->GetBooleanArrayRegion(this,array,start,len,buf); - } - void GetByteArrayRegion(jbyteArray array, - jsize start, jsize len, jbyte *buf) { - functions->GetByteArrayRegion(this,array,start,len,buf); - } - void GetCharArrayRegion(jcharArray array, - jsize start, jsize len, jchar *buf) { - functions->GetCharArrayRegion(this,array,start,len,buf); - } - void GetShortArrayRegion(jshortArray array, - jsize start, jsize len, jshort *buf) { - functions->GetShortArrayRegion(this,array,start,len,buf); - } - void GetIntArrayRegion(jintArray array, - jsize start, jsize len, jint *buf) { - functions->GetIntArrayRegion(this,array,start,len,buf); - } - void GetLongArrayRegion(jlongArray array, - jsize start, jsize len, jlong *buf) { - functions->GetLongArrayRegion(this,array,start,len,buf); - } - void GetFloatArrayRegion(jfloatArray array, - jsize start, jsize len, jfloat *buf) { - functions->GetFloatArrayRegion(this,array,start,len,buf); - } - void GetDoubleArrayRegion(jdoubleArray array, - jsize start, jsize len, jdouble *buf) { - functions->GetDoubleArrayRegion(this,array,start,len,buf); - } - - void SetBooleanArrayRegion(jbooleanArray array, jsize start, jsize len, - const jboolean *buf) { - functions->SetBooleanArrayRegion(this,array,start,len,buf); - } - void SetByteArrayRegion(jbyteArray array, jsize start, jsize len, - const jbyte *buf) { - functions->SetByteArrayRegion(this,array,start,len,buf); - } - void SetCharArrayRegion(jcharArray array, jsize start, jsize len, - const jchar *buf) { - functions->SetCharArrayRegion(this,array,start,len,buf); - } - void SetShortArrayRegion(jshortArray array, jsize start, jsize len, - const jshort *buf) { - functions->SetShortArrayRegion(this,array,start,len,buf); - } - void SetIntArrayRegion(jintArray array, jsize start, jsize len, - const jint *buf) { - functions->SetIntArrayRegion(this,array,start,len,buf); - } - void SetLongArrayRegion(jlongArray array, jsize start, jsize len, - const jlong *buf) { - functions->SetLongArrayRegion(this,array,start,len,buf); - } - void SetFloatArrayRegion(jfloatArray array, jsize start, jsize len, - const jfloat *buf) { - functions->SetFloatArrayRegion(this,array,start,len,buf); - } - void SetDoubleArrayRegion(jdoubleArray array, jsize start, jsize len, - const jdouble *buf) { - functions->SetDoubleArrayRegion(this,array,start,len,buf); - } - - jint RegisterNatives(jclass clazz, const JNINativeMethod *methods, - jint nMethods) { - return functions->RegisterNatives(this,clazz,methods,nMethods); - } - jint UnregisterNatives(jclass clazz) { - return functions->UnregisterNatives(this,clazz); - } - - jint MonitorEnter(jobject obj) { - return functions->MonitorEnter(this,obj); - } - jint MonitorExit(jobject obj) { - return functions->MonitorExit(this,obj); - } - - jint GetJavaVM(JavaVM **vm) { - return functions->GetJavaVM(this,vm); - } - - void GetStringRegion(jstring str, jsize start, jsize len, jchar *buf) { - functions->GetStringRegion(this,str,start,len,buf); - } - void GetStringUTFRegion(jstring str, jsize start, jsize len, char *buf) { - functions->GetStringUTFRegion(this,str,start,len,buf); - } - - void * GetPrimitiveArrayCritical(jarray array, jboolean *isCopy) { - return functions->GetPrimitiveArrayCritical(this,array,isCopy); - } - void ReleasePrimitiveArrayCritical(jarray array, void *carray, jint mode) { - functions->ReleasePrimitiveArrayCritical(this,array,carray,mode); - } - - const jchar * GetStringCritical(jstring string, jboolean *isCopy) { - return functions->GetStringCritical(this,string,isCopy); - } - void ReleaseStringCritical(jstring string, const jchar *cstring) { - functions->ReleaseStringCritical(this,string,cstring); - } - - jweak NewWeakGlobalRef(jobject obj) { - return functions->NewWeakGlobalRef(this,obj); - } - void DeleteWeakGlobalRef(jweak ref) { - functions->DeleteWeakGlobalRef(this,ref); - } - - jboolean ExceptionCheck() { - return functions->ExceptionCheck(this); - } - - jobject NewDirectByteBuffer(void* address, jlong capacity) { - return functions->NewDirectByteBuffer(this, address, capacity); - } - void* GetDirectBufferAddress(jobject buf) { - return functions->GetDirectBufferAddress(this, buf); - } - jlong GetDirectBufferCapacity(jobject buf) { - return functions->GetDirectBufferCapacity(this, buf); - } - jobjectRefType GetObjectRefType(jobject obj) { - return functions->GetObjectRefType(this, obj); - } - -#endif /* __cplusplus */ -}; - -typedef struct JavaVMOption { - char *optionString; - void *extraInfo; -} JavaVMOption; - -typedef struct JavaVMInitArgs { - jint version; - - jint nOptions; - JavaVMOption *options; - jboolean ignoreUnrecognized; -} JavaVMInitArgs; - -typedef struct JavaVMAttachArgs { - jint version; - - char *name; - jobject group; -} JavaVMAttachArgs; - -/* These will be VM-specific. */ - -#define JDK1_2 -#define JDK1_4 - -/* End VM-specific. */ - -struct JNIInvokeInterface_ { - void *reserved0; - void *reserved1; - void *reserved2; - - jint (JNICALL *DestroyJavaVM)(JavaVM *vm); - - jint (JNICALL *AttachCurrentThread)(JavaVM *vm, void **penv, void *args); - - jint (JNICALL *DetachCurrentThread)(JavaVM *vm); - - jint (JNICALL *GetEnv)(JavaVM *vm, void **penv, jint version); - - jint (JNICALL *AttachCurrentThreadAsDaemon)(JavaVM *vm, void **penv, void *args); -}; - -struct JavaVM_ { - const struct JNIInvokeInterface_ *functions; -#ifdef __cplusplus - - jint DestroyJavaVM() { - return functions->DestroyJavaVM(this); - } - jint AttachCurrentThread(void **penv, void *args) { - return functions->AttachCurrentThread(this, penv, args); - } - jint DetachCurrentThread() { - return functions->DetachCurrentThread(this); - } - - jint GetEnv(void **penv, jint version) { - return functions->GetEnv(this, penv, version); - } - jint AttachCurrentThreadAsDaemon(void **penv, void *args) { - return functions->AttachCurrentThreadAsDaemon(this, penv, args); - } -#endif -}; - -#ifdef _JNI_IMPLEMENTATION_ -#define _JNI_IMPORT_OR_EXPORT_ JNIEXPORT -#else -#define _JNI_IMPORT_OR_EXPORT_ JNIIMPORT -#endif -_JNI_IMPORT_OR_EXPORT_ jint JNICALL -JNI_GetDefaultJavaVMInitArgs(void *args); - -_JNI_IMPORT_OR_EXPORT_ jint JNICALL -JNI_CreateJavaVM(JavaVM **pvm, void **penv, void *args); - -_JNI_IMPORT_OR_EXPORT_ jint JNICALL -JNI_GetCreatedJavaVMs(JavaVM **, jsize, jsize *); - -/* Defined by native libraries. */ -JNIEXPORT jint JNICALL -JNI_OnLoad(JavaVM *vm, void *reserved); - -JNIEXPORT void JNICALL -JNI_OnUnload(JavaVM *vm, void *reserved); - -#define JNI_VERSION_1_1 0x00010001 -#define JNI_VERSION_1_2 0x00010002 -#define JNI_VERSION_1_4 0x00010004 -#define JNI_VERSION_1_6 0x00010006 - -#ifdef __cplusplus -} /* extern "C" */ -#endif /* __cplusplus */ - -#endif /* !_JAVASOFT_JNI_H_ */ diff --git a/src/bind/javainc/linux/jni_md.h b/src/bind/javainc/linux/jni_md.h deleted file mode 100644 index d8c88574a..000000000 --- a/src/bind/javainc/linux/jni_md.h +++ /dev/null @@ -1,26 +0,0 @@ -/** - * This file should be replaced by the "official" jni_md.h - * for linux - */ -#ifndef __JNI_MD_H__ -#define __JNI_MD_H__ - -/** - * Nothing special for these declspecs for Linux. Leave alone. - */ -#define JNIEXPORT -#define JNIIMPORT -#define JNICALL - -typedef signed char jbyte; -typedef int jint; - -/* 64 bit? */ -#ifdef _LP64 -typedef long jlong; -#else -typedef long long jlong; -#endif - - -#endif /* __JNI_MD_H__ */ diff --git a/src/bind/javainc/solaris/jni_md.h b/src/bind/javainc/solaris/jni_md.h deleted file mode 100644 index 688d573a7..000000000 --- a/src/bind/javainc/solaris/jni_md.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright 1996-2000 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * This code is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License version 2 only, as - * published by the Free Software Foundation. Sun designates this - * particular file as subject to the "Classpath" exception as provided - * by Sun in the LICENSE file that accompanied this code. - * - * This code is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * version 2 for more details (a copy is included in the LICENSE file that - * accompanied this code). - * - * You should have received a copy of the GNU General Public License version - * 2 along with this work; if not, write to the Free Software Foundation, - * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. - * - * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, - * CA 95054 USA or visit www.sun.com if you need additional information or - * have any questions. - */ - -#ifndef _JAVASOFT_JNI_MD_H_ -#define _JAVASOFT_JNI_MD_H_ - -#define JNIEXPORT -#define JNIIMPORT -#define JNICALL - -typedef int jint; -#ifdef _LP64 /* 64-bit Solaris */ -typedef long jlong; -#else -typedef long long jlong; -#endif - -typedef signed char jbyte; - -#endif /* !_JAVASOFT_JNI_MD_H_ */ diff --git a/src/bind/javainc/win32/jni_md.h b/src/bind/javainc/win32/jni_md.h deleted file mode 100644 index 4ae350658..000000000 --- a/src/bind/javainc/win32/jni_md.h +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright 1996-1998 Sun Microsystems, Inc. All Rights Reserved. - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * This code is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License version 2 only, as - * published by the Free Software Foundation. Sun designates this - * particular file as subject to the "Classpath" exception as provided - * by Sun in the LICENSE file that accompanied this code. - * - * This code is distributed in the hope that it will be useful, but WITHOUT - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License - * version 2 for more details (a copy is included in the LICENSE file that - * accompanied this code). - * - * You should have received a copy of the GNU General Public License version - * 2 along with this work; if not, write to the Free Software Foundation, - * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. - * - * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, - * CA 95054 USA or visit www.sun.com if you need additional information or - * have any questions. - */ - -#ifndef _JAVASOFT_JNI_MD_H_ -#define _JAVASOFT_JNI_MD_H_ - -#define JNIEXPORT __declspec(dllexport) -#define JNIIMPORT __declspec(dllimport) -#define JNICALL __stdcall - -typedef long jint; -typedef __int64 jlong; -typedef signed char jbyte; - -#endif /* !_JAVASOFT_JNI_MD_H_ */ diff --git a/src/bind/makefile.in b/src/bind/makefile.in deleted file mode 100644 index 90ed85bb4..000000000 --- a/src/bind/makefile.in +++ /dev/null @@ -1,17 +0,0 @@ -# Convenience stub makefile to call the real Makefile. - -@SET_MAKE@ - -OBJEXT = @OBJEXT@ - -# Explicit so that it's the default rule. -all: - cd .. && $(MAKE) bind/all - -clean %.a %.$(OBJEXT): - cd .. && $(MAKE) bind/$@ - -.PHONY: all clean - -.SUFFIXES: -.SUFFIXES: .a .$(OBJEXT) diff --git a/src/check-header-compile.in b/src/check-header-compile.in index ca9eb6a62..2295dcf91 100755 --- a/src/check-header-compile.in +++ b/src/check-header-compile.in @@ -26,7 +26,6 @@ if [ $# = 0 ]; then -o -name ecma -prune \ -o -name render -prune \ -o -name xpath -prune \ - -o -path '*/extension/script/js' -prune \ -o -name '*.h' \ \! -name gnome.h \! -name nr-type-gnome.h \! -name Livarot.h \! -name radial.h \ \! -name '*-test.h' \ diff --git a/src/extension/CMakeLists.txt b/src/extension/CMakeLists.txt index fa4fdd740..4507d9ce2 100644 --- a/src/extension/CMakeLists.txt +++ b/src/extension/CMakeLists.txt @@ -62,8 +62,6 @@ set(extension_SRC internal/pdfinput/pdf-parser.cpp internal/pdfinput/svg-builder.cpp - script/InkscapeScript.cpp - # ------ # Header db.h @@ -136,8 +134,6 @@ set(extension_SRC internal/svg.h internal/svgz.h internal/vsd-input.h - - script/InkscapeScript.h ) if(WIN32) diff --git a/src/extension/script/InkscapeScript.cpp b/src/extension/script/InkscapeScript.cpp deleted file mode 100644 index 02cd28fa5..000000000 --- a/src/extension/script/InkscapeScript.cpp +++ /dev/null @@ -1,223 +0,0 @@ -/* - * This is a simple mechanism to bind Inkscape to Java, and thence - * to all of the nice things that can be layered upon that. - * - * Authors: - * Bob Jamison - * - * Copyright (C) 2007-2008 Bob Jamison - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 3 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - */ - - -#include "InkscapeScript.h" - - -#include - - -namespace Inkscape -{ -namespace Extension -{ -namespace Script -{ - - -typedef Inkscape::Bind::Value Value; - - -/** - * - */ -InkscapeScript::InkscapeScript() -{ -} - - - - -/** - * - */ -InkscapeScript::~InkscapeScript() -{ -} - - - - -/** - * Interprets the script in the 'script' buffer, - * storing the stdout output in 'output', and any - * error messages in 'error.' Language is one of the - * enumerated types in ScriptLanguage above. - */ -bool InkscapeScript::interpretScript(const Glib::ustring &script, - Glib::ustring & /*output*/, - Glib::ustring & /*error*/, - ScriptLanguage language) -{ - const char *langname=NULL; - //if() instead of switch() lets us scope vars - if (language == InkscapeScript::JAVASCRIPT) - { - langname="javascript"; - } - else if (language == InkscapeScript::PYTHON) - { - langname="python"; - } - else if (language == InkscapeScript::RUBY) - { - langname="ruby"; - } - else - { - g_warning("interpretScript: Unknown Script Language type: %d\n", - language); - return false; - } - - Inkscape::Bind::JavaBindery *binder = - Inkscape::Bind::JavaBindery::getInstance(); - if (!binder->loadJVM()) //idempotent - { - g_warning("interpretScript: unable to start JVM\n"); - return false; - } - std::vector parms; - Value retval; - Value parm; - parm.setString(langname); - parms.push_back(parm); - parm.setString(script); - parms.push_back(parm); - - //binder->stdOutClear(); - //binder->stdErrClear(); - bool ret = binder->callStatic(Value::BIND_BOOLEAN, - "org/inkscape/cmn/ScriptRunner", - "run", - "(Ljava/lang/String;Ljava/lang/String;)Z", - parms, - retval); - //output = binder->stdOutGet(); - //error = binder->stdErrGet(); - - if (!ret) - { - g_warning("interpretScript: failed\n"); - return false; - } - - return true; -} - - -/** - * Interprets the script in the named file, - * storing the stdout output in 'output', and any - * error messages in 'error.' Language is one of the - * enumerated types in ScriptLanguage above. - */ -bool InkscapeScript::interpretFile(const Glib::ustring &fname, - Glib::ustring & /*output*/, - Glib::ustring & /*error*/, - ScriptLanguage language) -{ - const char *langname=NULL; - //if() instead of switch() lets us scope vars - if (language == InkscapeScript::JAVASCRIPT) - { - langname="Javascript"; - } - else if (language == InkscapeScript::PYTHON) - { - langname="Python"; - } - else if (language == InkscapeScript::RUBY) - { - langname="Ruby"; - } - else - { - g_warning("interpretFile: Unknown Script Language type: %d\n", - language); - return false; - } - - Inkscape::Bind::JavaBindery *binder = - Inkscape::Bind::JavaBindery::getInstance(); - if (!binder->loadJVM()) //idempotent - { - g_warning("interpretFile: unable to start JVM\n"); - return false; - } - std::vector parms; - Value retval; - Value parm; - parm.setString(langname); - parms.push_back(parm); - parm.setString(fname); - parms.push_back(parm); - - //binder->stdOutClear(); - //binder->stdErrClear(); - bool ret = binder->callStatic(Value::BIND_BOOLEAN, - "org/inkscape/cmn/ScriptRunner", - "runFile", - "(Ljava/lang/String;Ljava/lang/String;)Z", - parms, - retval); - //output = binder->stdOutGet(); - //error = binder->stdErrGet(); - - if (!ret) - { - g_warning("interpretFile: failed\n"); - return false; - } - - return true; -} - - - - - - - - - -} // namespace Script -} // namespace Extension -} // namespace Inkscape - -//######################################################################### -//# E N D O F F I L E -//######################################################################### - -/* - Local Variables: - mode:c++ - c-file-style:"stroustrup" - c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +)) - indent-tabs-mode:nil - fill-column:99 - End: -*/ -// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 : diff --git a/src/extension/script/InkscapeScript.h b/src/extension/script/InkscapeScript.h deleted file mode 100644 index 8d6346582..000000000 --- a/src/extension/script/InkscapeScript.h +++ /dev/null @@ -1,102 +0,0 @@ -#ifndef SEEN_INKSCAPE_SCRIPT_H -#define SEEN_INKSCAPE_SCRIPT_H - -/* - * Authors: - * Bob Jamison - * - * Copyright (C) 2004-2008 Bob Jamison - * - * Released under GNU GPL, read the file 'COPYING' for more information - */ - -#include "config.h" - -namespace Glib { -class ustring; -} - -namespace Inkscape -{ -namespace Extension -{ -namespace Script -{ - - - -/** - * Inkscape Scripting container. - * This class is used to run scripts, either from a file or buffer. - */ -class InkscapeScript -{ -public: - - /** - * Which type of language? - */ - typedef enum - { - JAVASCRIPT, - PYTHON, - RUBY - } ScriptLanguage; - - /** - * Creates a generic script interpreter. - */ - InkscapeScript(); - - /** - * Destructor - */ - virtual ~InkscapeScript(); - - /** - * Interprets the script in the 'script' buffer, - * storing the stdout output in 'output', and any - * error messages in 'error.' Language is one of the - * enumerated types in ScriptLanguage above. - */ - bool interpretScript(const Glib::ustring &script, - Glib::ustring &output, - Glib::ustring &error, - ScriptLanguage language); - - /** - * Interprets the script in the named file, - * storing the stdout output in 'output', and any - * error messages in 'error.' Language is one of the - * enumerated types in ScriptLanguage above. - */ - bool interpretFile(const Glib::ustring &fname, - Glib::ustring &output, - Glib::ustring &error, - ScriptLanguage language); - - - -}; //class InkscapeScript - - - - -} // namespace Script -} // namespace Extension -} // namespace Inkscape - - - -#endif /* __INKSCAPE_SCRIPT_H__ */ - -/* - Local Variables: - mode:c++ - c-file-style:"stroustrup" - c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +)) - indent-tabs-mode:nil - fill-column:99 - End: -*/ -// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 : diff --git a/src/extension/script/Makefile_insert b/src/extension/script/Makefile_insert deleted file mode 100644 index c0bd91e81..000000000 --- a/src/extension/script/Makefile_insert +++ /dev/null @@ -1,6 +0,0 @@ -## Makefile.am fragment sourced by src/Makefile.am. - -ink_common_sources += \ - extension/script/InkscapeScript.h \ - extension/script/InkscapeScript.cpp - diff --git a/src/extension/script/makefile.in b/src/extension/script/makefile.in deleted file mode 100644 index f4857a9e3..000000000 --- a/src/extension/script/makefile.in +++ /dev/null @@ -1,17 +0,0 @@ -# Convenience stub makefile to call the real Makefile. - -@SET_MAKE@ - -OBJEXT = @OBJEXT@ - -# Explicit so that it's the default rule. -all: - cd ../.. && $(MAKE) extension/script/all - -clean %.a %.$(OBJEXT): - cd ../.. && $(MAKE) extension/script/$@ - -.PHONY: all clean - -.SUFFIXES: -.SUFFIXES: .a .$(OBJEXT) diff --git a/src/menus-skeleton.h b/src/menus-skeleton.h index 77e781763..d01e3e38c 100644 --- a/src/menus-skeleton.h +++ b/src/menus-skeleton.h @@ -141,7 +141,6 @@ static char const menus_skeleton[] = " \n" " \n" " \n" -//" \n" " \n" " \n" " \n" diff --git a/src/ui/CMakeLists.txt b/src/ui/CMakeLists.txt index f3c3b8473..e831bcf69 100644 --- a/src/ui/CMakeLists.txt +++ b/src/ui/CMakeLists.txt @@ -59,7 +59,6 @@ set(ui_SRC dialog/ocaldialogs.cpp dialog/print-colors-preview-dialog.cpp dialog/print.cpp - dialog/scriptdialog.cpp dialog/symbols.cpp dialog/xml-tree.cpp # dialog/session-player.cpp @@ -172,7 +171,6 @@ set(ui_SRC dialog/panel-dialog.h dialog/print-colors-preview-dialog.h dialog/print.h - dialog/scriptdialog.h dialog/spellcheck.h dialog/svg-fonts-dialog.h dialog/swatches.h diff --git a/src/ui/dialog/Makefile_insert b/src/ui/dialog/Makefile_insert index 580b47522..bbede9df1 100644 --- a/src/ui/dialog/Makefile_insert +++ b/src/ui/dialog/Makefile_insert @@ -81,8 +81,6 @@ ink_common_sources += \ ui/dialog/print.h \ ui/dialog/print-colors-preview-dialog.cpp \ ui/dialog/print-colors-preview-dialog.h \ - ui/dialog/scriptdialog.cpp \ - ui/dialog/scriptdialog.h \ ui/dialog/spellcheck.cpp \ ui/dialog/spellcheck.h \ ui/dialog/svg-fonts-dialog.cpp \ diff --git a/src/ui/dialog/dialog-manager.cpp b/src/ui/dialog/dialog-manager.cpp index 993f48d8f..0ce74f54e 100644 --- a/src/ui/dialog/dialog-manager.cpp +++ b/src/ui/dialog/dialog-manager.cpp @@ -32,7 +32,6 @@ #include "ui/dialog/livepatheffect-editor.h" #include "ui/dialog/memory.h" #include "ui/dialog/messages.h" -#include "ui/dialog/scriptdialog.h" #include "ui/dialog/symbols.h" #include "ui/dialog/tile.h" #include "ui/dialog/tracedialog.h" @@ -114,7 +113,6 @@ DialogManager::DialogManager() { registerFactory("ObjectAttributes", &create); registerFactory("ObjectProperties", &create); // registerFactory("PrintColorsPreviewDialog", &create); - registerFactory("Script", &create); registerFactory("SvgFontsDialog", &create); registerFactory("Swatches", &create); registerFactory("Symbols", &create); @@ -148,7 +146,6 @@ DialogManager::DialogManager() { registerFactory("ObjectAttributes", &create); registerFactory("ObjectProperties", &create); // registerFactory("PrintColorsPreviewDialog", &create); - registerFactory("Script", &create); registerFactory("SvgFontsDialog", &create); registerFactory("Swatches", &create); registerFactory("Symbols", &create); diff --git a/src/ui/dialog/scriptdialog.cpp b/src/ui/dialog/scriptdialog.cpp deleted file mode 100644 index 87794a3ce..000000000 --- a/src/ui/dialog/scriptdialog.cpp +++ /dev/null @@ -1,255 +0,0 @@ -/** - * @file - * Dialog for executing and monitoring script execution. - */ -/* Author: - * Bob Jamison - * - * Copyright (C) 2004-2008 Authors - * - * Released under GNU GPL, read the file 'COPYING' for more information - */ -#ifdef HAVE_CONFIG_H -# include -#endif - -#include "scriptdialog.h" -#include -#include -#include -#include -#include - -#include - - - -namespace Inkscape -{ -namespace UI -{ -namespace Dialog -{ - - - -//######################################################################### -//## I M P L E M E N T A T I O N -//######################################################################### - -/** - * A script editor/executor - */ -class ScriptDialogImpl : public ScriptDialog -{ - - public: - ScriptDialogImpl(); - ~ScriptDialogImpl() - {} - - - /** - * Remove all text from the dialog. - */ - void clear(); - - /** - * Execute a script in the dialog. - * - * @param lang language in which the script is programmed - */ - void execute(Inkscape::Extension::Script::InkscapeScript::ScriptLanguage lang); - - /** - * Execute a Javascript script - */ - void executeJavascript(); - - /** - * Execute a Python script - */ - void executePython(); - - /** - * Execute a Ruby script - */ - void executeRuby(); - - - - private: - Gtk::MenuBar menuBar; - Gtk::Menu fileMenu; - - //## Script text - Gtk::Frame scriptTextFrame; - Gtk::ScrolledWindow scriptTextScroll; - Gtk::TextView scriptText; - - //## Output text - Gtk::Frame outputTextFrame; - Gtk::ScrolledWindow outputTextScroll; - Gtk::TextView outputText; - - //## Error text - Gtk::Frame errorTextFrame; - Gtk::ScrolledWindow errorTextScroll; - Gtk::TextView errorText; - - - -}; - -static const char *defaultCodeStr = - "/**\n" - " * This is some example Javascript.\n" - " * Try 'Execute Javascript'\n" - " */\n" - "importPackage(javax.swing);\n" - "function sayHello() {\n" - " JOptionPane.showMessageDialog(null, 'Hello, world!',\n" - " 'Welcome to Inkscape', JOptionPane.WARNING_MESSAGE);\n" - "}\n" - "\n" - "sayHello();\n" - "\n"; - - - - -//######################################################################### -//## E V E N T S -//######################################################################### - -static void textViewClear(Gtk::TextView &view) -{ - Glib::RefPtr buffer = view.get_buffer(); - buffer->erase(buffer->begin(), buffer->end()); -} - -void ScriptDialogImpl::clear() -{ - textViewClear(scriptText); - textViewClear(outputText); - textViewClear(errorText); -} - -void ScriptDialogImpl::execute(Inkscape::Extension::Script::InkscapeScript::ScriptLanguage lang) -{ - Glib::ustring script = scriptText.get_buffer()->get_text(true); - Glib::ustring output; - Glib::ustring error; - Inkscape::Extension::Script::InkscapeScript engine; - bool ok = engine.interpretScript(script, output, error, lang); - outputText.get_buffer()->set_text(output); - errorText.get_buffer()->set_text(error); - if (!ok) - { - //do we want something here? - } -} - -void ScriptDialogImpl::executeJavascript() -{ - execute(Inkscape::Extension::Script::InkscapeScript::JAVASCRIPT); -} - -void ScriptDialogImpl::executePython() -{ - execute(Inkscape::Extension::Script::InkscapeScript::PYTHON); -} - -void ScriptDialogImpl::executeRuby() -{ - execute(Inkscape::Extension::Script::InkscapeScript::RUBY); -} - - -//######################################################################### -//## C O N S T R U C T O R / D E S T R U C T O R -//######################################################################### -ScriptDialogImpl::ScriptDialogImpl() : - ScriptDialog() -{ - Gtk::Box *contents = _getContents(); - - //## Add a menu for clear() - Gtk::MenuItem* item = Gtk::manage(new Gtk::MenuItem(_("File"), true)); - item->set_submenu(fileMenu); - menuBar.append(*item); - - item = Gtk::manage(new Gtk::MenuItem(_("_Clear"), true)); - item->signal_activate().connect(sigc::mem_fun(*this, &ScriptDialogImpl::clear)); - fileMenu.append(*item); - - item = Gtk::manage(new Gtk::MenuItem(_("_Execute Javascript"), true)); - item->signal_activate().connect(sigc::mem_fun(*this, &ScriptDialogImpl::executeJavascript)); - fileMenu.append(*item); - - item = Gtk::manage(new Gtk::MenuItem(_("_Execute Python"), true)); - item->signal_activate().connect(sigc::mem_fun(*this, &ScriptDialogImpl::executePython)); - fileMenu.append(*item); - - item = Gtk::manage(new Gtk::MenuItem(_("_Execute Ruby"), true)); - item->signal_activate().connect(sigc::mem_fun(*this, &ScriptDialogImpl::executeRuby)); - fileMenu.append(*item); - - contents->pack_start(menuBar, Gtk::PACK_SHRINK); - - //### Set up the script field - scriptText.set_editable(true); - scriptText.get_buffer()->set_text(defaultCodeStr); - scriptTextScroll.add(scriptText); - scriptTextScroll.set_policy(Gtk::POLICY_ALWAYS, Gtk::POLICY_ALWAYS); - scriptTextFrame.set_label(_("Script")); - scriptTextFrame.set_shadow_type(Gtk::SHADOW_NONE); - scriptTextFrame.add(scriptTextScroll); - contents->pack_start(scriptTextFrame); - - //### Set up the output field - outputText.set_editable(true); - outputText.get_buffer()->set_text(""); - outputTextScroll.add(outputText); - outputTextScroll.set_policy(Gtk::POLICY_ALWAYS, Gtk::POLICY_ALWAYS); - outputTextFrame.set_label(_("Output")); - outputTextFrame.set_shadow_type(Gtk::SHADOW_NONE); - outputTextFrame.add(outputTextScroll); - contents->pack_start(outputTextFrame); - - //### Set up the error field - errorText.set_editable(true); - errorText.get_buffer()->set_text(""); - errorTextScroll.add(errorText); - errorTextScroll.set_policy(Gtk::POLICY_ALWAYS, Gtk::POLICY_ALWAYS); - errorTextFrame.set_label(_("Errors")); - errorTextFrame.set_shadow_type(Gtk::SHADOW_NONE); - errorTextFrame.add(errorTextScroll); - contents->pack_start(errorTextFrame); - - // sick of this thing shrinking too much - set_size_request(350, 400); - show_all_children(); - -} - -ScriptDialog &ScriptDialog::getInstance() -{ - ScriptDialog *dialog = new ScriptDialogImpl(); - return *dialog; -} - -} //namespace Dialogs -} //namespace UI -} //namespace Inkscape - -/* - Local Variables: - mode:c++ - c-file-style:"stroustrup" - c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +)) - indent-tabs-mode:nil - fill-column:99 - End: -*/ -// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 : diff --git a/src/ui/dialog/scriptdialog.h b/src/ui/dialog/scriptdialog.h deleted file mode 100644 index d1962bf6f..000000000 --- a/src/ui/dialog/scriptdialog.h +++ /dev/null @@ -1,64 +0,0 @@ -/** @file - * @brief Script dialog - * - * This dialog is for launching scripts whose main purpose is - * the scripting of Inkscape itself. - */ -/* Authors: - * Bob Jamison - * Other dudes from The Inkscape Organization - * - * Copyright (C) 2004, 2005 Authors - * - * Released under GNU GPL, read the file 'COPYING' for more information - */ - -#ifndef __SCRIPTDIALOG_H__ -#define __SCRIPTDIALOG_H__ - -#include "ui/widget/panel.h" -#include "verbs.h" - -namespace Inkscape { -namespace UI { -namespace Dialog { - - -/** - * A script editor, loader, and executor - */ -class ScriptDialog : public UI::Widget::Panel -{ - - public: - ScriptDialog() : - UI::Widget::Panel("", "/dialogs/script", SP_VERB_DIALOG_SCRIPT) - {} - - /** - * Helper function which returns a new instance of the dialog. - * getInstance is needed by the dialog manager (Inkscape::UI::Dialog::DialogManager). - */ - static ScriptDialog &getInstance(); - - virtual ~ScriptDialog() {}; - -}; // class ScriptDialog - - -} //namespace Dialog -} //namespace UI -} //namespace Inkscape - -#endif /* __DEBUGDIALOG_H__ */ - -/* - Local Variables: - mode:c++ - c-file-style:"stroustrup" - c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +)) - indent-tabs-mode:nil - fill-column:99 - End: -*/ -// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 : diff --git a/src/verbs.cpp b/src/verbs.cpp index a085e841f..06e59be38 100644 --- a/src/verbs.cpp +++ b/src/verbs.cpp @@ -40,7 +40,6 @@ #include #include -#include "bind/javabind.h" #include "desktop.h" #include "desktop-handles.h" #include "display/curve.h" @@ -1992,10 +1991,6 @@ void DialogVerb::perform(SPAction *action, void *data) case SP_VERB_DIALOG_DEBUG: dt->_dlg_mgr->showDialog("Messages"); break; - case SP_VERB_DIALOG_SCRIPT: - //dt->_dlg_mgr->showDialog("Script"); - Inkscape::Bind::JavaBindery::getInstance()->showConsole(); - break; case SP_VERB_DIALOG_UNDO_HISTORY: dt->_dlg_mgr->showDialog("UndoHistory"); break; @@ -2821,8 +2816,6 @@ Verb *Verb::_base_verbs[] = { N_("Check spelling of text in document"), GTK_STOCK_SPELL_CHECK ), new DialogVerb(SP_VERB_DIALOG_DEBUG, "DialogDebug", N_("_Messages..."), N_("View debug messages"), INKSCAPE_ICON("dialog-messages")), - new DialogVerb(SP_VERB_DIALOG_SCRIPT, "DialogScript", N_("S_cripts..."), - N_("Run scripts"), INKSCAPE_ICON("dialog-scripts")), new DialogVerb(SP_VERB_DIALOG_TOGGLE, "DialogsToggle", N_("Show/Hide D_ialogs"), N_("Show or hide all open dialogs"), INKSCAPE_ICON("show-dialogs")), new DialogVerb(SP_VERB_DIALOG_CLONETILER, "DialogClonetiler", N_("Create Tiled Clones..."), diff --git a/src/verbs.h b/src/verbs.h index 053441b89..5cc2ad12e 100644 --- a/src/verbs.h +++ b/src/verbs.h @@ -280,7 +280,6 @@ enum { SP_VERB_DIALOG_FINDREPLACE, SP_VERB_DIALOG_SPELLCHECK, SP_VERB_DIALOG_DEBUG, - SP_VERB_DIALOG_SCRIPT, SP_VERB_DIALOG_TOGGLE, SP_VERB_DIALOG_CLONETILER, SP_VERB_DIALOG_ATTR, -- cgit v1.2.3 From 5aeb42cd7f874dbd127df4ab7ccc8ffcf25f07ab Mon Sep 17 00:00:00 2001 From: Krzysztof Kosi??ski Date: Tue, 23 Jul 2013 13:18:56 +0200 Subject: Remove the Digest class. Replace its only use with a glibmm call. (bzr r12429) --- src/color-profile.cpp | 12 +- src/dom/CMakeLists.txt | 2 - src/dom/Makefile_insert | 2 - src/dom/util/digest.cpp | 1456 ----------------------------------------------- src/dom/util/digest.h | 654 --------------------- 5 files changed, 6 insertions(+), 2120 deletions(-) delete mode 100644 src/dom/util/digest.cpp delete mode 100644 src/dom/util/digest.h diff --git a/src/color-profile.cpp b/src/color-profile.cpp index 5fb84d8ac..918fc79d4 100644 --- a/src/color-profile.cpp +++ b/src/color-profile.cpp @@ -4,6 +4,7 @@ #define noDEBUG_LCMS +#include #include #include #include @@ -41,7 +42,6 @@ #include "preferences.h" #include "dom/uri.h" -#include "dom/util/digest.h" #ifdef WIN32 #include @@ -1285,8 +1285,6 @@ Glib::ustring Inkscape::CMSSystem::getDisplayId( int screen, int monitor ) Glib::ustring Inkscape::CMSSystem::setDisplayPer( gpointer buf, guint bufLen, int screen, int monitor ) { - Glib::ustring id; - while ( static_cast(perMonitorProfiles.size()) <= screen ) { std::vector tmp; perMonitorProfiles.push_back(tmp); @@ -1302,11 +1300,13 @@ Glib::ustring Inkscape::CMSSystem::setDisplayPer( gpointer buf, guint bufLen, in cmsCloseProfile( item.hprof ); item.hprof = 0; } - id.clear(); + + Glib::ustring id; if ( buf && bufLen ) { - id = Digest::hashHex(Digest::HASH_MD5, - reinterpret_cast(buf), bufLen); + gsize len = bufLen; // len is an inout parameter + id = Glib::Checksum::compute_checksum(Glib::Checksum::CHECKSUM_MD5, + reinterpret_cast(buf), len); // Note: if this is not a valid profile, item.hprof will be set to null. item.hprof = cmsOpenProfileFromMem(buf, bufLen); diff --git a/src/dom/CMakeLists.txt b/src/dom/CMakeLists.txt index 74832a6f5..7c49466c2 100644 --- a/src/dom/CMakeLists.txt +++ b/src/dom/CMakeLists.txt @@ -20,7 +20,6 @@ set(dom_SRC io/domstream.cpp - util/digest.cpp util/ziptool.cpp @@ -57,7 +56,6 @@ set(dom_SRC io/domstream.h - util/digest.h util/ziptool.h ) diff --git a/src/dom/Makefile_insert b/src/dom/Makefile_insert index 4ed529a35..25629efb2 100644 --- a/src/dom/Makefile_insert +++ b/src/dom/Makefile_insert @@ -52,8 +52,6 @@ dom_libdom_a_SOURCES = \ dom/xpathtoken.cpp \ dom/io/domstream.cpp \ dom/io/domstream.h \ - dom/util/digest.h \ - dom/util/digest.cpp \ dom/util/ziptool.h \ dom/util/ziptool.cpp diff --git a/src/dom/util/digest.cpp b/src/dom/util/digest.cpp deleted file mode 100644 index 2baed4860..000000000 --- a/src/dom/util/digest.cpp +++ /dev/null @@ -1,1456 +0,0 @@ -/* - * Secure Hashing Tool - * * - * Authors: - * Bob Jamison - * - * Copyright (C) 2006-2008 Bob Jamison - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#include "digest.h" - - -//######################################################################## -//## U T I L I T Y -//######################################################################## - -/** - * Use this to print out a 64-bit int when otherwise difficult - */ -/* -static void pl(uint64_t val) -{ - for (int shift=56 ; shift>=0 ; shift-=8) - { - int ch = (val >> shift) & 0xff; - printf("%02x", ch); - } -} -*/ - - - -/** - * 3These truncate their arguments to - * unsigned 32-bit or unsigned 64-bit. - */ -#define TR32(x) ((x) & 0xffffffffL) -#define TR64(x) ((x) & 0xffffffffffffffffLL) - - -static const char *hexDigits = "0123456789abcdef"; - -static std::string toHex(const std::vector &bytes) -{ - std::string str; - std::vector::const_iterator iter; - for (iter = bytes.begin() ; iter != bytes.end() ; ++iter) - { - unsigned char ch = *iter; - str.push_back(hexDigits[(ch>>4) & 0x0f]); - str.push_back(hexDigits[(ch ) & 0x0f]); - } - return str; -} - - -//######################################################################## -//## D I G E S T -//######################################################################## - - -/** - * - */ -std::string Digest::finishHex() -{ - std::vector hash = finish(); - std::string str = toHex(hash); - return str; -} - -/** - * Convenience method. This is a simple way of getting a hash - */ -std::vector Digest::hash(Digest::HashType typ, - unsigned char *buf, - int len) -{ - std::vector ret; - switch (typ) - { - case HASH_MD5: - { - Md5 digest; - digest.append(buf, len); - ret = digest.finish(); - break; - } - case HASH_SHA1: - { - Sha1 digest; - digest.append(buf, len); - ret = digest.finish(); - break; - } - case HASH_SHA224: - { - Sha224 digest; - digest.append(buf, len); - ret = digest.finish(); - break; - } - case HASH_SHA256: - { - Sha256 digest; - digest.append(buf, len); - ret = digest.finish(); - break; - } - case HASH_SHA384: - { - Sha384 digest; - digest.append(buf, len); - ret = digest.finish(); - break; - } - case HASH_SHA512: - { - Sha512 digest; - digest.append(buf, len); - ret = digest.finish(); - break; - } - default: - { - break; - } - } - return ret; -} - - -/** - * Convenience method. Same as above, but for a std::string - */ -std::vector Digest::hash(Digest::HashType typ, - const std::string &str) -{ - return hash(typ, (unsigned char *)str.c_str(), str.size()); -} - -/** - * Convenience method. Return a hexidecimal string of the hash of the buffer. - */ -std::string Digest::hashHex(Digest::HashType typ, - unsigned char *buf, - int len) -{ - std::vector dig = hash(typ, buf, len); - return toHex(dig); -} - -/** - * Convenience method. Return a hexidecimal string of the hash of the - * string argument - */ -std::string Digest::hashHex(Digest::HashType typ, - const std::string &str) -{ - std::vector dig = hash(typ, str); - return toHex(dig); -} - - - -//4.1.1 and 4.1.2 -#define SHA_ROTL(X,n) ((((X) << (n)) & 0xffffffffL) | (((X) >> (32-(n))) & 0xffffffffL)) -#define SHA_Ch(x,y,z) ((z)^((x)&((y)^(z)))) -#define SHA_Maj(x,y,z) (((x)&(y))^((z)&((x)^(y)))) - - -//######################################################################## -//## S H A 1 -//######################################################################## - - -/** - * - */ -void Sha1::reset() -{ - longNr = 0; - byteNr = 0; - - // Initialize H with the magic constants (see FIPS180 for constants) - hashBuf[0] = 0x67452301L; - hashBuf[1] = 0xefcdab89L; - hashBuf[2] = 0x98badcfeL; - hashBuf[3] = 0x10325476L; - hashBuf[4] = 0xc3d2e1f0L; - - for (int i = 0; i < 4; i++) - inb[i] = 0; - - for (int i = 0; i < 80; i++) - inBuf[i] = 0; - - clearByteCount(); -} - - -/** - * - */ -void Sha1::update(unsigned char ch) -{ - incByteCount(); - - inb[byteNr++] = (uint32_t)ch; - if (byteNr >= 4) - { - inBuf[longNr++] = inb[0] << 24 | inb[1] << 16 | - inb[2] << 8 | inb[3]; - byteNr = 0; - } - if (longNr >= 16) - { - transform(); - longNr = 0; - } -} - - -void Sha1::transform() -{ - uint32_t *W = inBuf; - uint32_t *H = hashBuf; - - //for (int t = 0; t < 16 ; t++) - // printf("%2d %08lx\n", t, W[t]); - - //see 6.1.2 - for (int t = 16; t < 80 ; t++) - W[t] = SHA_ROTL((W[t-3] ^ W[t-8] ^ W[t-14] ^ W[t-16]), 1); - - uint32_t a = H[0]; - uint32_t b = H[1]; - uint32_t c = H[2]; - uint32_t d = H[3]; - uint32_t e = H[4]; - - uint32_t T; - - int t = 0; - for ( ; t < 20 ; t++) - { - //see 4.1.1 for the boolops on B,C, and D - T = TR32(SHA_ROTL(a,5) + ((b&c)|((~b)&d)) + //Ch(b,c,d)) - e + 0x5a827999L + W[t]); - e = d; d = c; c = SHA_ROTL(b, 30); b = a; a = T; - //printf("%2d %08lx %08lx %08lx %08lx %08lx\n", t, a, b, c, d, e); - } - for ( ; t < 40 ; t++) - { - T = TR32(SHA_ROTL(a,5) + (b^c^d) + e + 0x6ed9eba1L + W[t]); - e = d; d = c; c = SHA_ROTL(b, 30); b = a; a = T; - //printf("%2d %08lx %08lx %08lx %08lx %08lx\n", t, a, b, c, d, e); - } - for ( ; t < 60 ; t++) - { - T = TR32(SHA_ROTL(a,5) + ((b&c)^(b&d)^(c&d)) + - e + 0x8f1bbcdcL + W[t]); - e = d; d = c; c = SHA_ROTL(b, 30); b = a; a = T; - //printf("%2d %08lx %08lx %08lx %08lx %08lx\n", t, a, b, c, d, e); - } - for ( ; t < 80 ; t++) - { - T = TR32(SHA_ROTL(a,5) + (b^c^d) + - e + 0xca62c1d6L + W[t]); - e = d; d = c; c = SHA_ROTL(b, 30); b = a; a = T; - //printf("%2d %08lx %08lx %08lx %08lx %08lx\n", t, a, b, c, d, e); - } - - H[0] = TR32(H[0] + a); - H[1] = TR32(H[1] + b); - H[2] = TR32(H[2] + c); - H[3] = TR32(H[3] + d); - H[4] = TR32(H[4] + e); -} - - - - -/** - * - */ -std::vector Sha1::finish() -{ - //snapshot the bit count now before padding - getBitCount(); - - //Append terminal char - update(0x80); - - //pad until we have a 56 of 64 bytes, allowing for 8 bytes at the end - while ((nrBytes & 63) != 56) - update(0); - - //##### Append length in bits - appendBitCount(); - - //copy out answer - std::vector res; - for (int i=0 ; i<5 ; i++) - { - res.push_back((unsigned char)((hashBuf[i] >> 24) & 0xff)); - res.push_back((unsigned char)((hashBuf[i] >> 16) & 0xff)); - res.push_back((unsigned char)((hashBuf[i] >> 8) & 0xff)); - res.push_back((unsigned char)((hashBuf[i] ) & 0xff)); - } - - // Re-initialize the context (also zeroizes contents) - reset(); - - return res; -} - - - - -//######################################################################## -//## SHA224 -//######################################################################## - - -/** - * SHA-224 and SHA-512 share the same operations and constants - */ - -#define SHA_Rot32(x,s) ((((x) >> s)&0xffffffffL) | (((x) << (32 - s))&0xffffffffL)) -#define SHA_SIGMA0(x) (SHA_Rot32(x, 2) ^ SHA_Rot32(x, 13) ^ SHA_Rot32(x, 22)) -#define SHA_SIGMA1(x) (SHA_Rot32(x, 6) ^ SHA_Rot32(x, 11) ^ SHA_Rot32(x, 25)) -#define SHA_sigma0(x) (SHA_Rot32(x, 7) ^ SHA_Rot32(x, 18) ^ ((x) >> 3)) -#define SHA_sigma1(x) (SHA_Rot32(x, 17) ^ SHA_Rot32(x, 19) ^ ((x) >> 10)) - - -static uint32_t sha256table[64] = -{ - 0x428a2f98UL, 0x71374491UL, 0xb5c0fbcfUL, 0xe9b5dba5UL, - 0x3956c25bUL, 0x59f111f1UL, 0x923f82a4UL, 0xab1c5ed5UL, - 0xd807aa98UL, 0x12835b01UL, 0x243185beUL, 0x550c7dc3UL, - 0x72be5d74UL, 0x80deb1feUL, 0x9bdc06a7UL, 0xc19bf174UL, - 0xe49b69c1UL, 0xefbe4786UL, 0x0fc19dc6UL, 0x240ca1ccUL, - 0x2de92c6fUL, 0x4a7484aaUL, 0x5cb0a9dcUL, 0x76f988daUL, - 0x983e5152UL, 0xa831c66dUL, 0xb00327c8UL, 0xbf597fc7UL, - 0xc6e00bf3UL, 0xd5a79147UL, 0x06ca6351UL, 0x14292967UL, - 0x27b70a85UL, 0x2e1b2138UL, 0x4d2c6dfcUL, 0x53380d13UL, - 0x650a7354UL, 0x766a0abbUL, 0x81c2c92eUL, 0x92722c85UL, - 0xa2bfe8a1UL, 0xa81a664bUL, 0xc24b8b70UL, 0xc76c51a3UL, - 0xd192e819UL, 0xd6990624UL, 0xf40e3585UL, 0x106aa070UL, - 0x19a4c116UL, 0x1e376c08UL, 0x2748774cUL, 0x34b0bcb5UL, - 0x391c0cb3UL, 0x4ed8aa4aUL, 0x5b9cca4fUL, 0x682e6ff3UL, - 0x748f82eeUL, 0x78a5636fUL, 0x84c87814UL, 0x8cc70208UL, - 0x90befffaUL, 0xa4506cebUL, 0xbef9a3f7UL, 0xc67178f2UL -}; - - - - - -/** - * - */ -void Sha224::reset() -{ - longNr = 0; - byteNr = 0; - - // Initialize H with the magic constants (see FIPS180 for constants) - hashBuf[0] = 0xc1059ed8L; - hashBuf[1] = 0x367cd507L; - hashBuf[2] = 0x3070dd17L; - hashBuf[3] = 0xf70e5939L; - hashBuf[4] = 0xffc00b31L; - hashBuf[5] = 0x68581511L; - hashBuf[6] = 0x64f98fa7L; - hashBuf[7] = 0xbefa4fa4L; - - for (int i = 0 ; i < 64 ; i++) - inBuf[i] = 0; - - for (int i = 0 ; i < 4 ; i++) - inb[i] = 0; - - clearByteCount(); -} - - -/** - * - */ -void Sha224::update(unsigned char ch) -{ - incByteCount(); - - inb[byteNr++] = (uint32_t)ch; - if (byteNr >= 4) - { - inBuf[longNr++] = inb[0] << 24 | inb[1] << 16 | - inb[2] << 8 | inb[3]; - byteNr = 0; - } - if (longNr >= 16) - { - transform(); - longNr = 0; - } -} - - -void Sha224::transform() -{ - uint32_t *W = inBuf; - uint32_t *H = hashBuf; - - //for (int t = 0; t < 16 ; t++) - // printf("%2d %08lx\n", t, W[t]); - - //see 6.2.2 - for (int t = 16; t < 64 ; t++) - W[t] = TR32(SHA_sigma1(W[t-2]) + W[t-7] + SHA_sigma0(W[t-15]) + W[t-16]); - - uint32_t a = H[0]; - uint32_t b = H[1]; - uint32_t c = H[2]; - uint32_t d = H[3]; - uint32_t e = H[4]; - uint32_t f = H[5]; - uint32_t g = H[6]; - uint32_t h = H[7]; - - for (int t = 0 ; t < 64 ; t++) - { - //see 4.1.1 for the boolops - uint32_t T1 = TR32(h + SHA_SIGMA1(e) + SHA_Ch(e,f,g) + - sha256table[t] + W[t]); - uint32_t T2 = TR32(SHA_SIGMA0(a) + SHA_Maj(a,b,c)); - h = g; g = f; f = e; e = TR32(d + T1); d = c; c = b; b = a; a = TR32(T1 + T2); - //printf("%2d %08lx %08lx %08lx %08lx %08lx %08lx %08lx %08lx\n", - // t, a, b, c, d, e, f, g, h); - } - - H[0] = TR32(H[0] + a); - H[1] = TR32(H[1] + b); - H[2] = TR32(H[2] + c); - H[3] = TR32(H[3] + d); - H[4] = TR32(H[4] + e); - H[5] = TR32(H[5] + f); - H[6] = TR32(H[6] + g); - H[7] = TR32(H[7] + h); -} - - - -/** - * - */ -std::vector Sha224::finish() -{ - //save our size before padding - getBitCount(); - - // Pad with a binary 1 (0x80) - update(0x80); - //append 0's to make a 56-byte buf. - while ((nrBytes & 63) != 56) - update(0); - - //##### Append length in bits - appendBitCount(); - - // Output hash - std::vector ret; - for (int i = 0 ; i < 7 ; i++) - { - ret.push_back((unsigned char)((hashBuf[i] >> 24) & 0xff)); - ret.push_back((unsigned char)((hashBuf[i] >> 16) & 0xff)); - ret.push_back((unsigned char)((hashBuf[i] >> 8) & 0xff)); - ret.push_back((unsigned char)((hashBuf[i] ) & 0xff)); - } - - // Re-initialize the context (also zeroizes contents) - reset(); - - return ret; - -} - - - -//######################################################################## -//## SHA256 -//######################################################################## - - -/** - * - */ -void Sha256::reset() -{ - longNr = 0; - byteNr = 0; - - // Initialize H with the magic constants (see FIPS180 for constants) - hashBuf[0] = 0x6a09e667L; - hashBuf[1] = 0xbb67ae85L; - hashBuf[2] = 0x3c6ef372L; - hashBuf[3] = 0xa54ff53aL; - hashBuf[4] = 0x510e527fL; - hashBuf[5] = 0x9b05688cL; - hashBuf[6] = 0x1f83d9abL; - hashBuf[7] = 0x5be0cd19L; - - for (int i = 0 ; i < 64 ; i++) - inBuf[i] = 0; - for (int i = 0 ; i < 4 ; i++) - inb[i] = 0; - - clearByteCount(); -} - - -/** - * - */ -void Sha256::update(unsigned char ch) -{ - incByteCount(); - - inb[byteNr++] = (uint32_t)ch; - if (byteNr >= 4) - { - inBuf[longNr++] = inb[0] << 24 | inb[1] << 16 | - inb[2] << 8 | inb[3]; - byteNr = 0; - } - if (longNr >= 16) - { - transform(); - longNr = 0; - } -} - - - - -void Sha256::transform() -{ - uint32_t *H = hashBuf; - uint32_t *W = inBuf; - - //for (int t = 0; t < 16 ; t++) - // printf("%2d %08lx\n", t, W[t]); - - //see 6.2.2 - for (int t = 16; t < 64 ; t++) - W[t] = TR32(SHA_sigma1(W[t-2]) + W[t-7] + SHA_sigma0(W[t-15]) + W[t-16]); - - uint32_t a = H[0]; - uint32_t b = H[1]; - uint32_t c = H[2]; - uint32_t d = H[3]; - uint32_t e = H[4]; - uint32_t f = H[5]; - uint32_t g = H[6]; - uint32_t h = H[7]; - - for (int t = 0 ; t < 64 ; t++) - { - //see 4.1.1 for the boolops - uint32_t T1 = TR32(h + SHA_SIGMA1(e) + SHA_Ch(e,f,g) + - sha256table[t] + W[t]); - uint32_t T2 = TR32(SHA_SIGMA0(a) + SHA_Maj(a,b,c)); - h = g; g = f; f = e; e = TR32(d + T1); d = c; c = b; b = a; a = TR32(T1 + T2); - //printf("%2d %08lx %08lx %08lx %08lx %08lx %08lx %08lx %08lx\n", - // t, a, b, c, d, e, f, g, h); - } - - H[0] = TR32(H[0] + a); - H[1] = TR32(H[1] + b); - H[2] = TR32(H[2] + c); - H[3] = TR32(H[3] + d); - H[4] = TR32(H[4] + e); - H[5] = TR32(H[5] + f); - H[6] = TR32(H[6] + g); - H[7] = TR32(H[7] + h); -} - - - -/** - * - */ -std::vector Sha256::finish() -{ - //save our size before padding - getBitCount(); - - // Pad with a binary 1 (0x80) - update(0x80); - //append 0's to make a 56-byte buf. - while ((nrBytes & 63) != 56) - update(0); - - //##### Append length in bits - appendBitCount(); - - // Output hash - std::vector ret; - for (int i = 0 ; i < 8 ; i++) - { - ret.push_back((unsigned char)((hashBuf[i] >> 24) & 0xff)); - ret.push_back((unsigned char)((hashBuf[i] >> 16) & 0xff)); - ret.push_back((unsigned char)((hashBuf[i] >> 8) & 0xff)); - ret.push_back((unsigned char)((hashBuf[i] ) & 0xff)); - } - - // Re-initialize the context (also zeroizes contents) - reset(); - - return ret; - -} - - - -//######################################################################## -//## SHA384 -//######################################################################## - - -/** - * SHA-384 and SHA-512 share the same operations and constants - */ - -#undef SHA_SIGMA0 -#undef SHA_SIGMA1 -#undef SHA_sigma0 -#undef SHA_sigma1 - -#define SHA_Rot64(x,s) (((x) >> s) | ((x) << (64 - s))) -#define SHA_SIGMA0(x) (SHA_Rot64(x, 28) ^ SHA_Rot64(x, 34) ^ SHA_Rot64(x, 39)) -#define SHA_SIGMA1(x) (SHA_Rot64(x, 14) ^ SHA_Rot64(x, 18) ^ SHA_Rot64(x, 41)) -#define SHA_sigma0(x) (SHA_Rot64(x, 1) ^ SHA_Rot64(x, 8) ^ ((x) >> 7)) -#define SHA_sigma1(x) (SHA_Rot64(x, 19) ^ SHA_Rot64(x, 61) ^ ((x) >> 6)) - - -static uint64_t sha512table[80] = -{ - 0x428a2f98d728ae22ULL, 0x7137449123ef65cdULL, - 0xb5c0fbcfec4d3b2fULL, 0xe9b5dba58189dbbcULL, - 0x3956c25bf348b538ULL, 0x59f111f1b605d019ULL, - 0x923f82a4af194f9bULL, 0xab1c5ed5da6d8118ULL, - 0xd807aa98a3030242ULL, 0x12835b0145706fbeULL, - 0x243185be4ee4b28cULL, 0x550c7dc3d5ffb4e2ULL, - 0x72be5d74f27b896fULL, 0x80deb1fe3b1696b1ULL, - 0x9bdc06a725c71235ULL, 0xc19bf174cf692694ULL, - 0xe49b69c19ef14ad2ULL, 0xefbe4786384f25e3ULL, - 0x0fc19dc68b8cd5b5ULL, 0x240ca1cc77ac9c65ULL, - 0x2de92c6f592b0275ULL, 0x4a7484aa6ea6e483ULL, - 0x5cb0a9dcbd41fbd4ULL, 0x76f988da831153b5ULL, - 0x983e5152ee66dfabULL, 0xa831c66d2db43210ULL, - 0xb00327c898fb213fULL, 0xbf597fc7beef0ee4ULL, - 0xc6e00bf33da88fc2ULL, 0xd5a79147930aa725ULL, - 0x06ca6351e003826fULL, 0x142929670a0e6e70ULL, - 0x27b70a8546d22ffcULL, 0x2e1b21385c26c926ULL, - 0x4d2c6dfc5ac42aedULL, 0x53380d139d95b3dfULL, - 0x650a73548baf63deULL, 0x766a0abb3c77b2a8ULL, - 0x81c2c92e47edaee6ULL, 0x92722c851482353bULL, - 0xa2bfe8a14cf10364ULL, 0xa81a664bbc423001ULL, - 0xc24b8b70d0f89791ULL, 0xc76c51a30654be30ULL, - 0xd192e819d6ef5218ULL, 0xd69906245565a910ULL, - 0xf40e35855771202aULL, 0x106aa07032bbd1b8ULL, - 0x19a4c116b8d2d0c8ULL, 0x1e376c085141ab53ULL, - 0x2748774cdf8eeb99ULL, 0x34b0bcb5e19b48a8ULL, - 0x391c0cb3c5c95a63ULL, 0x4ed8aa4ae3418acbULL, - 0x5b9cca4f7763e373ULL, 0x682e6ff3d6b2b8a3ULL, - 0x748f82ee5defb2fcULL, 0x78a5636f43172f60ULL, - 0x84c87814a1f0ab72ULL, 0x8cc702081a6439ecULL, - 0x90befffa23631e28ULL, 0xa4506cebde82bde9ULL, - 0xbef9a3f7b2c67915ULL, 0xc67178f2e372532bULL, - 0xca273eceea26619cULL, 0xd186b8c721c0c207ULL, - 0xeada7dd6cde0eb1eULL, 0xf57d4f7fee6ed178ULL, - 0x06f067aa72176fbaULL, 0x0a637dc5a2c898a6ULL, - 0x113f9804bef90daeULL, 0x1b710b35131c471bULL, - 0x28db77f523047d84ULL, 0x32caab7b40c72493ULL, - 0x3c9ebe0a15c9bebcULL, 0x431d67c49c100d4cULL, - 0x4cc5d4becb3e42b6ULL, 0x597f299cfc657e2aULL, - 0x5fcb6fab3ad6faecULL, 0x6c44198c4a475817ULL -}; - - - - -/** - * - */ -void Sha384::reset() -{ - longNr = 0; - byteNr = 0; - - // SHA-384 differs from SHA-512 by these constants - hashBuf[0] = 0xcbbb9d5dc1059ed8ULL; - hashBuf[1] = 0x629a292a367cd507ULL; - hashBuf[2] = 0x9159015a3070dd17ULL; - hashBuf[3] = 0x152fecd8f70e5939ULL; - hashBuf[4] = 0x67332667ffc00b31ULL; - hashBuf[5] = 0x8eb44a8768581511ULL; - hashBuf[6] = 0xdb0c2e0d64f98fa7ULL; - hashBuf[7] = 0x47b5481dbefa4fa4ULL; - - for (int i = 0 ; i < 80 ; i++) - inBuf[i] = 0; - for (int i = 0 ; i < 8 ; i++) - inb[i] = 0; - - clearByteCount(); -} - - -/** - * Note that this version of update() handles 64-bit inBuf - * values. - */ -void Sha384::update(unsigned char ch) -{ - incByteCount(); - - inb[byteNr++] = (uint64_t)ch; - if (byteNr >= 8) - { - inBuf[longNr++] = inb[0] << 56 | inb[1] << 48 | - inb[2] << 40 | inb[3] << 32 | - inb[4] << 24 | inb[5] << 16 | - inb[6] << 8 | inb[7]; - byteNr = 0; - } - if (longNr >= 16) - { - transform(); - longNr = 0; - } -} - - - - -void Sha384::transform() -{ - uint64_t *H = hashBuf; - uint64_t *W = inBuf; - - /* - for (int t = 0; t < 16 ; t++) - { - printf("%2d ", t); - pl(W[t]); - printf("\n"); - } - */ - - //see 6.2.2 - for (int t = 16; t < 80 ; t++) - W[t] = TR64(SHA_sigma1(W[t-2]) + W[t-7] + SHA_sigma0(W[t-15]) + W[t-16]); - - uint64_t a = H[0]; - uint64_t b = H[1]; - uint64_t c = H[2]; - uint64_t d = H[3]; - uint64_t e = H[4]; - uint64_t f = H[5]; - uint64_t g = H[6]; - uint64_t h = H[7]; - - for (int t = 0 ; t < 80 ; t++) - { - //see 4.1.1 for the boolops - uint64_t T1 = TR64(h + SHA_SIGMA1(e) + SHA_Ch(e,f,g) + - sha512table[t] + W[t]); - uint64_t T2 = TR64(SHA_SIGMA0(a) + SHA_Maj(a,b,c)); - h = g; g = f; f = e; e = TR64(d + T1); d = c; c = b; b = a; a = TR64(T1 + T2); - } - - H[0] = TR64(H[0] + a); - H[1] = TR64(H[1] + b); - H[2] = TR64(H[2] + c); - H[3] = TR64(H[3] + d); - H[4] = TR64(H[4] + e); - H[5] = TR64(H[5] + f); - H[6] = TR64(H[6] + g); - H[7] = TR64(H[7] + h); -} - - - -/** - * - */ -std::vector Sha384::finish() -{ - //save our size before padding - getBitCount(); - - // Pad with a binary 1 (0x80) - update((unsigned char)0x80); - //append 0's to make a 112-byte buf. - //we will loop around once if already over 112 - while ((nrBytes & 127) != 112) - update(0); - - //append 128-bit size - //64 upper bits - for (int i = 0 ; i < 8 ; i++) - update((unsigned char)0x00); - //64 lower bits - //##### Append length in bits - appendBitCount(); - - // Output hash - //for SHA-384, we use the left-most 6 64-bit words - std::vector ret; - for (int i = 0 ; i < 6 ; i++) - { - ret.push_back((unsigned char)((hashBuf[i] >> 56) & 0xff)); - ret.push_back((unsigned char)((hashBuf[i] >> 48) & 0xff)); - ret.push_back((unsigned char)((hashBuf[i] >> 40) & 0xff)); - ret.push_back((unsigned char)((hashBuf[i] >> 32) & 0xff)); - ret.push_back((unsigned char)((hashBuf[i] >> 24) & 0xff)); - ret.push_back((unsigned char)((hashBuf[i] >> 16) & 0xff)); - ret.push_back((unsigned char)((hashBuf[i] >> 8) & 0xff)); - ret.push_back((unsigned char)((hashBuf[i] ) & 0xff)); - } - - // Re-initialize the context (also zeroizes contents) - reset(); - - return ret; - -} - - -//######################################################################## -//## SHA512 -//######################################################################## - - - - - -/** - * - */ -void Sha512::reset() -{ - longNr = 0; - byteNr = 0; - - // Initialize H with the magic constants (see FIPS180 for constants) - hashBuf[0] = 0x6a09e667f3bcc908ULL; - hashBuf[1] = 0xbb67ae8584caa73bULL; - hashBuf[2] = 0x3c6ef372fe94f82bULL; - hashBuf[3] = 0xa54ff53a5f1d36f1ULL; - hashBuf[4] = 0x510e527fade682d1ULL; - hashBuf[5] = 0x9b05688c2b3e6c1fULL; - hashBuf[6] = 0x1f83d9abfb41bd6bULL; - hashBuf[7] = 0x5be0cd19137e2179ULL; - - for (int i = 0 ; i < 80 ; i++) - inBuf[i] = 0; - for (int i = 0 ; i < 8 ; i++) - inb[i] = 0; - - clearByteCount(); -} - - -/** - * Note that this version of update() handles 64-bit inBuf - * values. - */ -void Sha512::update(unsigned char ch) -{ - incByteCount(); - - inb[byteNr++] = (uint64_t)ch; - if (byteNr >= 8) - { - inBuf[longNr++] = inb[0] << 56 | inb[1] << 48 | - inb[2] << 40 | inb[3] << 32 | - inb[4] << 24 | inb[5] << 16 | - inb[6] << 8 | inb[7]; - byteNr = 0; - } - if (longNr >= 16) - { - transform(); - longNr = 0; - } -} - - - - -void Sha512::transform() -{ - uint64_t *W = inBuf; - uint64_t *H = hashBuf; - - /* - for (int t = 0; t < 16 ; t++) - { - printf("%2d ", t); - pl(W[t]); - printf("\n"); - } - */ - - //see 6.2.2 - for (int t = 16; t < 80 ; t++) - W[t] = TR64(SHA_sigma1(W[t-2]) + W[t-7] + SHA_sigma0(W[t-15]) + W[t-16]); - - uint64_t a = H[0]; - uint64_t b = H[1]; - uint64_t c = H[2]; - uint64_t d = H[3]; - uint64_t e = H[4]; - uint64_t f = H[5]; - uint64_t g = H[6]; - uint64_t h = H[7]; - - for (int t = 0 ; t < 80 ; t++) - { - //see 4.1.1 for the boolops - uint64_t T1 = TR64(h + SHA_SIGMA1(e) + SHA_Ch(e,f,g) + - sha512table[t] + W[t]); - uint64_t T2 = TR64(SHA_SIGMA0(a) + SHA_Maj(a,b,c)); - h = g; g = f; f = e; e = TR64(d + T1); d = c; c = b; b = a; a = TR64(T1 + T2); - } - - H[0] = TR64(H[0] + a); - H[1] = TR64(H[1] + b); - H[2] = TR64(H[2] + c); - H[3] = TR64(H[3] + d); - H[4] = TR64(H[4] + e); - H[5] = TR64(H[5] + f); - H[6] = TR64(H[6] + g); - H[7] = TR64(H[7] + h); -} - - - -/** - * - */ -std::vector Sha512::finish() -{ - //save our size before padding - getBitCount(); - - // Pad with a binary 1 (0x80) - update(0x80); - //append 0's to make a 112-byte buf. - //we will loop around once if already over 112 - while ((nrBytes & 127) != 112) - update(0); - - //append 128-bit size - //64 upper bits - for (int i = 0 ; i < 8 ; i++) - update((unsigned char)0x00); - //64 lower bits - //##### Append length in bits - appendBitCount(); - - // Output hash - std::vector ret; - for (int i = 0 ; i < 8 ; i++) - { - ret.push_back((unsigned char)((hashBuf[i] >> 56) & 0xff)); - ret.push_back((unsigned char)((hashBuf[i] >> 48) & 0xff)); - ret.push_back((unsigned char)((hashBuf[i] >> 40) & 0xff)); - ret.push_back((unsigned char)((hashBuf[i] >> 32) & 0xff)); - ret.push_back((unsigned char)((hashBuf[i] >> 24) & 0xff)); - ret.push_back((unsigned char)((hashBuf[i] >> 16) & 0xff)); - ret.push_back((unsigned char)((hashBuf[i] >> 8) & 0xff)); - ret.push_back((unsigned char)((hashBuf[i] ) & 0xff)); - } - - // Re-initialize the context (also zeroizes contents) - reset(); - - return ret; - -} - - - -//######################################################################## -//## M D 5 -//######################################################################## - -/** - * - */ -void Md5::reset() -{ - hashBuf[0] = 0x67452301; - hashBuf[1] = 0xefcdab89; - hashBuf[2] = 0x98badcfe; - hashBuf[3] = 0x10325476; - - for (int i=0 ; i<16 ; i++) - inBuf[i] = 0; - for (int i=0 ; i<4 ; i++) - inb[i] = 0; - - clearByteCount(); - - byteNr = 0; - longNr = 0; -} - - -/** - * - */ -void Md5::update(unsigned char ch) -{ - incByteCount(); - - //pack 64 bytes into 16 longs - inb[byteNr++] = (uint32_t)ch; - if (byteNr >= 4) - { - //note the little-endianness - uint32_t val = - inb[3] << 24 | inb[2] << 16 | inb[1] << 8 | inb[0]; - inBuf[longNr++] = val; - byteNr = 0; - } - if (longNr >= 16) - { - transform(); - longNr = 0; - } -} - - - -//# The four core functions - F1 is optimized somewhat - -// #define F1(x, y, z) (x & y | ~x & z) -#define F1(x, y, z) (z ^ (x & (y ^ z))) -#define F2(x, y, z) F1(z, x, y) -#define F3(x, y, z) (x ^ y ^ z) -#define F4(x, y, z) (y ^ (x | ~z)) - -// ## This is the central step in the MD5 algorithm. -#define MD5STEP(f, w, x, y, z, data, s) \ - ( w = TR32(w + (f(x, y, z) + data)), w = w<>(32-s), w = TR32(w + x) ) - -/* - * The core of the MD5 algorithm, this alters an existing MD5 hash to - * reflect the addition of 16 longwords of new data. MD5Update blocks - * the data and converts bytes into longwords for this routine. - * @parm buf points to an array of 4 unsigned 32bit (at least) integers - * @parm in points to an array of 16 unsigned 32bit (at least) integers - */ -void Md5::transform() -{ - uint32_t *i = inBuf; - uint32_t a = hashBuf[0]; - uint32_t b = hashBuf[1]; - uint32_t c = hashBuf[2]; - uint32_t d = hashBuf[3]; - - MD5STEP(F1, a, b, c, d, i[ 0] + 0xd76aa478, 7); - MD5STEP(F1, d, a, b, c, i[ 1] + 0xe8c7b756, 12); - MD5STEP(F1, c, d, a, b, i[ 2] + 0x242070db, 17); - MD5STEP(F1, b, c, d, a, i[ 3] + 0xc1bdceee, 22); - MD5STEP(F1, a, b, c, d, i[ 4] + 0xf57c0faf, 7); - MD5STEP(F1, d, a, b, c, i[ 5] + 0x4787c62a, 12); - MD5STEP(F1, c, d, a, b, i[ 6] + 0xa8304613, 17); - MD5STEP(F1, b, c, d, a, i[ 7] + 0xfd469501, 22); - MD5STEP(F1, a, b, c, d, i[ 8] + 0x698098d8, 7); - MD5STEP(F1, d, a, b, c, i[ 9] + 0x8b44f7af, 12); - MD5STEP(F1, c, d, a, b, i[10] + 0xffff5bb1, 17); - MD5STEP(F1, b, c, d, a, i[11] + 0x895cd7be, 22); - MD5STEP(F1, a, b, c, d, i[12] + 0x6b901122, 7); - MD5STEP(F1, d, a, b, c, i[13] + 0xfd987193, 12); - MD5STEP(F1, c, d, a, b, i[14] + 0xa679438e, 17); - MD5STEP(F1, b, c, d, a, i[15] + 0x49b40821, 22); - - MD5STEP(F2, a, b, c, d, i[ 1] + 0xf61e2562, 5); - MD5STEP(F2, d, a, b, c, i[ 6] + 0xc040b340, 9); - MD5STEP(F2, c, d, a, b, i[11] + 0x265e5a51, 14); - MD5STEP(F2, b, c, d, a, i[ 0] + 0xe9b6c7aa, 20); - MD5STEP(F2, a, b, c, d, i[ 5] + 0xd62f105d, 5); - MD5STEP(F2, d, a, b, c, i[10] + 0x02441453, 9); - MD5STEP(F2, c, d, a, b, i[15] + 0xd8a1e681, 14); - MD5STEP(F2, b, c, d, a, i[ 4] + 0xe7d3fbc8, 20); - MD5STEP(F2, a, b, c, d, i[ 9] + 0x21e1cde6, 5); - MD5STEP(F2, d, a, b, c, i[14] + 0xc33707d6, 9); - MD5STEP(F2, c, d, a, b, i[ 3] + 0xf4d50d87, 14); - MD5STEP(F2, b, c, d, a, i[ 8] + 0x455a14ed, 20); - MD5STEP(F2, a, b, c, d, i[13] + 0xa9e3e905, 5); - MD5STEP(F2, d, a, b, c, i[ 2] + 0xfcefa3f8, 9); - MD5STEP(F2, c, d, a, b, i[ 7] + 0x676f02d9, 14); - MD5STEP(F2, b, c, d, a, i[12] + 0x8d2a4c8a, 20); - - MD5STEP(F3, a, b, c, d, i[ 5] + 0xfffa3942, 4); - MD5STEP(F3, d, a, b, c, i[ 8] + 0x8771f681, 11); - MD5STEP(F3, c, d, a, b, i[11] + 0x6d9d6122, 16); - MD5STEP(F3, b, c, d, a, i[14] + 0xfde5380c, 23); - MD5STEP(F3, a, b, c, d, i[ 1] + 0xa4beea44, 4); - MD5STEP(F3, d, a, b, c, i[ 4] + 0x4bdecfa9, 11); - MD5STEP(F3, c, d, a, b, i[ 7] + 0xf6bb4b60, 16); - MD5STEP(F3, b, c, d, a, i[10] + 0xbebfbc70, 23); - MD5STEP(F3, a, b, c, d, i[13] + 0x289b7ec6, 4); - MD5STEP(F3, d, a, b, c, i[ 0] + 0xeaa127fa, 11); - MD5STEP(F3, c, d, a, b, i[ 3] + 0xd4ef3085, 16); - MD5STEP(F3, b, c, d, a, i[ 6] + 0x04881d05, 23); - MD5STEP(F3, a, b, c, d, i[ 9] + 0xd9d4d039, 4); - MD5STEP(F3, d, a, b, c, i[12] + 0xe6db99e5, 11); - MD5STEP(F3, c, d, a, b, i[15] + 0x1fa27cf8, 16); - MD5STEP(F3, b, c, d, a, i[ 2] + 0xc4ac5665, 23); - - MD5STEP(F4, a, b, c, d, i[ 0] + 0xf4292244, 6); - MD5STEP(F4, d, a, b, c, i[ 7] + 0x432aff97, 10); - MD5STEP(F4, c, d, a, b, i[14] + 0xab9423a7, 15); - MD5STEP(F4, b, c, d, a, i[ 5] + 0xfc93a039, 21); - MD5STEP(F4, a, b, c, d, i[12] + 0x655b59c3, 6); - MD5STEP(F4, d, a, b, c, i[ 3] + 0x8f0ccc92, 10); - MD5STEP(F4, c, d, a, b, i[10] + 0xffeff47d, 15); - MD5STEP(F4, b, c, d, a, i[ 1] + 0x85845dd1, 21); - MD5STEP(F4, a, b, c, d, i[ 8] + 0x6fa87e4f, 6); - MD5STEP(F4, d, a, b, c, i[15] + 0xfe2ce6e0, 10); - MD5STEP(F4, c, d, a, b, i[ 6] + 0xa3014314, 15); - MD5STEP(F4, b, c, d, a, i[13] + 0x4e0811a1, 21); - MD5STEP(F4, a, b, c, d, i[ 4] + 0xf7537e82, 6); - MD5STEP(F4, d, a, b, c, i[11] + 0xbd3af235, 10); - MD5STEP(F4, c, d, a, b, i[ 2] + 0x2ad7d2bb, 15); - MD5STEP(F4, b, c, d, a, i[ 9] + 0xeb86d391, 21); - - hashBuf[0] = TR32(hashBuf[0] + a); - hashBuf[1] = TR32(hashBuf[1] + b); - hashBuf[2] = TR32(hashBuf[2] + c); - hashBuf[3] = TR32(hashBuf[3] + d); -} - - -/** - * - */ -std::vector Md5::finish() -{ - //snapshot the bit count now before padding - getBitCount(); - - //Append terminal char - update(0x80); - - //pad until we have a 56 of 64 bytes, allowing for 8 bytes at the end - while (longNr != 14) - update(0); - - //##### Append length in bits - // Don't use appendBitCount(), since md5 is little-endian - update((unsigned char)((nrBits ) & 0xff)); - update((unsigned char)((nrBits>> 8) & 0xff)); - update((unsigned char)((nrBits>>16) & 0xff)); - update((unsigned char)((nrBits>>24) & 0xff)); - update((unsigned char)((nrBits>>32) & 0xff)); - update((unsigned char)((nrBits>>40) & 0xff)); - update((unsigned char)((nrBits>>48) & 0xff)); - update((unsigned char)((nrBits>>56) & 0xff)); - - //copy out answer - std::vector res; - for (int i=0 ; i<4 ; i++) - { - //note the little-endianness - res.push_back((unsigned char)((hashBuf[i] ) & 0xff)); - res.push_back((unsigned char)((hashBuf[i] >> 8) & 0xff)); - res.push_back((unsigned char)((hashBuf[i] >> 16) & 0xff)); - res.push_back((unsigned char)((hashBuf[i] >> 24) & 0xff)); - } - - reset(); // Security! ;-) - - return res; -} - - - - - - -//######################################################################## -//## T E S T S -//######################################################################## - -/** - * Compile this file alone with -DDIGEST_TEST to run the - * tests below: - * > gcc -DDIGEST_TEST digest.cpp -o testdigest - * > testdigest - * - * If you add any new algorithms to this suite, then it is highly - * recommended that you add it to these tests and run it. - */ - -#ifdef DIGEST_TEST - - -typedef struct -{ - const char *msg; - const char *val; -} TestPair; - -static TestPair md5tests[] = -{ - { - "", - "d41d8cd98f00b204e9800998ecf8427e" - }, - { - "a", - "0cc175b9c0f1b6a831c399e269772661" - }, - { - "abc", - "900150983cd24fb0d6963f7d28e17f72" - }, - { - "message digest", - "f96b697d7cb7938d525a2f31aaf161d0" - }, - { - "abcdefghijklmnopqrstuvwxyz", - "c3fcd3d76192e4007dfb496cca67e13b" - }, - { - "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789", - "d174ab98d277d9f5a5611c2c9f419d9f" - }, - { - "12345678901234567890123456789012345678901234567890123456789012345678901234567890", - "57edf4a22be3c955ac49da2e2107b67a" - }, - { - NULL, - NULL - } -}; - - - -static TestPair sha1tests[] = -{ - { - "abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq", - "84983e441c3bd26ebaae4aa1f95129e5e54670f1" - }, - { - NULL, - NULL - } -}; - -static TestPair sha224tests[] = -{ - { - "abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq", - "75388b16512776cc5dba5da1fd890150b0c6455cb4f58b1952522525" - }, - { - NULL, - NULL - } -}; - -static TestPair sha256tests[] = -{ - { - "abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq", - "248d6a61d20638b8e5c026930c3e6039a33ce45964ff2167f6ecedd419db06c1" - }, - { - NULL, - NULL - } -}; - -static TestPair sha384tests[] = -{ - { - "abcdefghbcdefghicdefghijdefghijkefghijklfghijklmghijklmn" - "hijklmnoijklmnopjklmnopqklmnopqrlmnopqrsmnopqrstnopqrstu", - "09330c33f71147e83d192fc782cd1b4753111b173b3b05d22fa08086e3b0f712" - "fcc7c71a557e2db966c3e9fa91746039" - }, - { - NULL, - NULL - } -}; - -static TestPair sha512tests[] = -{ - { - "abcdefghbcdefghicdefghijdefghijkefghijklfghijklmghijklmn" - "hijklmnoijklmnopjklmnopqklmnopqrlmnopqrsmnopqrstnopqrstu", - "8e959b75dae313da8cf4f72814fc143f8f7779c6eb9f7fa17299aeadb6889018" - "501d289e4900f7e4331b99dec4b5433ac7d329eeb6dd26545e96e55b874be909" - }, - { - NULL, - NULL - } -}; - - -bool hashTests(Digest &digest, TestPair *tp) -{ - for (TestPair *pair = tp ; pair->msg ; pair++) - { - digest.reset(); - std::string msg = pair->msg; - std::string val = pair->val; - digest.append(msg); - std::string res = digest.finishHex(); - printf("### Msg '%s':\n hash '%s'\n exp '%s'\n", - msg.c_str(), res.c_str(), val.c_str()); - if (res != val) - { - printf("ERROR: Hash mismatch\n"); - return false; - } - } - return true; -} - - -bool millionATest(Digest &digest, const std::string &exp) -{ - digest.reset(); - for (int i=0 ; i<1000000 ; i++) - digest.append('a'); - std::string res = digest.finishHex(); - printf("\nHash of 1,000,000 'a'\n calc %s\n exp %s\n", - res.c_str(), exp.c_str()); - if (res != exp) - { - printf("ERROR: Mismatch.\n"); - return false; - } - return true; -} - -static bool doTests() -{ - printf("##########################################\n"); - printf("## MD5\n"); - printf("##########################################\n"); - Md5 md5; - if (!hashTests(md5, md5tests)) - return false; - if (!millionATest(md5, "7707d6ae4e027c70eea2a935c2296f21")) - return false; - printf("\n\n\n"); - printf("##########################################\n"); - printf("## SHA1\n"); - printf("##########################################\n"); - Sha1 sha1; - if (!hashTests(sha1, sha1tests)) - return false; - if (!millionATest(sha1, "34aa973cd4c4daa4f61eeb2bdbad27316534016f")) - return false; - printf("\n\n\n"); - printf("##########################################\n"); - printf("## SHA224\n"); - printf("##########################################\n"); - Sha224 sha224; - if (!hashTests(sha224, sha224tests)) - return false; - if (!millionATest(sha224, - "20794655980c91d8bbb4c1ea97618a4bf03f42581948b2ee4ee7ad67")) - return false; - printf("\n\n\n"); - printf("##########################################\n"); - printf("## SHA256\n"); - printf("##########################################\n"); - Sha256 sha256; - if (!hashTests(sha256, sha256tests)) - return false; - if (!millionATest(sha256, - "cdc76e5c9914fb9281a1c7e284d73e67f1809a48a497200e046d39ccc7112cd0")) - return false; - printf("\n\n\n"); - printf("##########################################\n"); - printf("## SHA384\n"); - printf("##########################################\n"); - Sha384 sha384; - if (!hashTests(sha384, sha384tests)) - return false; - /**/ - if (!millionATest(sha384, - "9d0e1809716474cb086e834e310a4a1ced149e9c00f248527972cec5704c2a5b" - "07b8b3dc38ecc4ebae97ddd87f3d8985")) - return false; - /**/ - printf("\n\n\n"); - printf("##########################################\n"); - printf("## SHA512\n"); - printf("##########################################\n"); - Sha512 sha512; - if (!hashTests(sha512, sha512tests)) - return false; - if (!millionATest(sha512, - "e718483d0ce769644e2e42c7bc15b4638e1f98b13b2044285632a803afa973eb" - "de0ff244877ea60a4cb0432ce577c31beb009c5c2c49aa2e4eadb217ad8cc09b")) - return false; - return true; -} - - -int main(int argc, char **argv) -{ - doTests(); - printf("####### done ########\n"); - return 0; -} - - -#endif /* DIGEST_TEST */ - -//######################################################################## -//## E N D O F F I L E -//######################################################################## diff --git a/src/dom/util/digest.h b/src/dom/util/digest.h deleted file mode 100644 index c161b86bb..000000000 --- a/src/dom/util/digest.h +++ /dev/null @@ -1,654 +0,0 @@ -#ifndef SEEN_DIGEST_H -#define SEEN_DIGEST_H -/* - * - * Author: - * Bob Jamison - * - * Copyright (C) 2006-2008 Bob Jamison - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - */ - -/** - * @file - * This base class and its subclasses provide an easy API for providing - * several different types of secure hashing functions for whatever use - * a developer might need. This is not intended as a high-performance - * replacement for the fine implementations already available. Rather, it - * is a small and simple (and maybe a bit slow?) tool for moderate common - * hashing requirements, like for communications and authentication. - * - * These hashes are intended to be simple to use. For example: - * Sha256 digest; - * digest.append("The quick brown dog"); - * std::string result = digest.finishHex(); - * - * Or, use one of the static convenience methods: - * - * example: std::string digest = - * Digest::hashHex(Digest::HASH_XXX, str); - * - * ...where HASH_XXX represents one of the hash - * algorithms listed in HashType. - * - * There are several forms of append() for convenience. - * finish() and finishHex() call reset() for both security and - * to prepare for the next use. - * - * - * Much effort has been applied to make this code portable, and it - * has been tested on various 32- and 64-bit machines. If you - * add another algorithm, please test it likewise. - * - * - * The SHA algorithms are derived directly from FIPS-180-3. The - * SHA tests at the bottom of digest.cpp are also directly from - * that document. - * http://csrc.nist.gov/publications/drafts/fips_180-3/draft_fips-180-3_June-08-2007.pdf - * - * The MD5 algorithm is from RFC 1321 - * - * To run the tests, compile standalone with -DDIGEST_TEST. Example: - * - * g++ -DDIGEST_TEST digest.cpp -o testdigest - * or - * g++ -DDIGEST_TEST -m64 digest.cpp -o testdigest - * - */ - -#include -#include - -#include - - - -/** - * Base class. Do not use instantiate class directly. Rather, use of of the - * subclasses below, or call one of this class's static convenience methods. - * - * For all subclasses, overload reset(), update(unsigned char), - * transform(), and finish() - */ -class Digest -{ -public: - - /** - * Different types of hash algorithms. - */ - typedef enum - { - HASH_NONE, - HASH_SHA1, - HASH_SHA224, - HASH_SHA256, - HASH_SHA384, - HASH_SHA512, - HASH_MD5 - } HashType; - - /** - * Constructor, with no type - */ - Digest() : hashType(HASH_NONE) - { reset(); } - - /** - * Destructor - */ - virtual ~Digest() - { reset(); } - - /** - * Return one of the enumerated hash types above - */ - virtual int getType() - { return hashType; } - - /** - * Append a single byte to the hash - */ - void append(unsigned char ch) - { update(ch); } - - /** - * Append a string to the hash - */ - virtual void append(const std::string &str) - { - for (unsigned int i=0 ; i &buf) - { //NOTE: function seems to be unused - for (unsigned int i=0 ; i finish() - { - std::vector ret; - return ret; - } - - - //######################## - //# Convenience methods - //######################## - - /** - * Convenience method. This is a simple way of getting a hash. - * Returns a byte buffer with the digest output. - * call with: std::vector digest = - * Digest::hash(Digest::HASH_XXX, buf, len); - */ - static std::vector hash(HashType typ, - unsigned char *buf, - int len); - /** - * Convenience method. This is a simple way of getting a hash. - * Returns a byte buffer with the digest output. - * call with: std::vector digest = - * Digest::hash(Digest::HASH_XXX, str); - */ - static std::vector hash(HashType typ, - const std::string &str); - - /** - * Convenience method. This is a simple way of getting a hash. - * Returns a string with the hexidecimal form of the digest output. - * call with: std::string digest = - * Digest::hash(Digest::HASH_XXX, buf, len); - */ - static std::string hashHex(HashType typ, - unsigned char *buf, - int len); - /** - * Convenience method. This is a simple way of getting a hash. - * Returns a string with the hexidecimal form of the digest output. - * call with: std::string digest = - * Digest::hash(Digest::HASH_XXX, str); - */ - static std::string hashHex(HashType typ, - const std::string &str); - -protected: - - /** - * Update the hash with a given byte - * Overload this in every subclass - */ - virtual void update(unsigned char /*ch*/) - {} - - /** - * Perform the particular block hashing algorithm for a - * particular type of hash. - * Overload this in every subclass - */ - virtual void transform() - {} - - - /** - * The enumerated type of the hash - */ - int hashType; - - /** - * Increment the count of bytes processed so far. Should be called - * in update() - */ - void incByteCount() - { - nrBytes++; - } - - /** - * Clear the byte / bit count information. Both for processing - * another message, also for security. Should be called in reset() - */ - void clearByteCount() - { - nrBytes = nrBits = 0; - } - - /** - * Calculates the bit count from the current byte count. Should be called - * in finish(), before any padding is added. This basically does a - * snapshot of the bitcount value before the padding. - */ - void getBitCount() - { - nrBits = (nrBytes << 3) & 0xFFFFFFFFFFFFFFFFLL; - } - - /** - * Common code for appending the 64-bit bitcount to the end of the - * message, after the padding. Should be called after padding, just - * before outputting the result. - */ - void appendBitCount() - { - update((unsigned char)((nrBits>>56) & 0xff)); - update((unsigned char)((nrBits>>48) & 0xff)); - update((unsigned char)((nrBits>>40) & 0xff)); - update((unsigned char)((nrBits>>32) & 0xff)); - update((unsigned char)((nrBits>>24) & 0xff)); - update((unsigned char)((nrBits>>16) & 0xff)); - update((unsigned char)((nrBits>> 8) & 0xff)); - update((unsigned char)((nrBits ) & 0xff)); - } - - /** - * Bit and byte counts - */ - uint64_t nrBytes; - uint64_t nrBits; -}; - - - - - -/** - * SHA-1, - * Section 6.1, SECURE HASH STANDARD - * Federal Information Processing Standards Publication 180-2 - * http://csrc.nist.gov/publications/drafts/fips_180-3/draft_fips-180-3_June-08-2007.pdf - */ -class Sha1 : public Digest -{ -public: - - /** - * Constructor - */ - Sha1() - { hashType = HASH_SHA1; reset(); } - - /** - * Destructor - */ - virtual ~Sha1() - { reset(); } - - /** - * Overloaded from Digest - */ - virtual void reset(); - - /** - * Overloaded from Digest - */ - virtual std::vector finish(); - -protected: - - /** - * Overloaded from Digest - */ - virtual void update(unsigned char val); - - /** - * Overloaded from Digest - */ - virtual void transform(); - -private: - - uint32_t hashBuf[5]; - uint32_t inBuf[80]; - - int longNr; - int byteNr; - uint32_t inb[4]; - -}; - - - - - - -/** - * SHA-224, - * Section 6.1, SECURE HASH STANDARD - * Federal Information Processing Standards Publication 180-2 - * http://csrc.nist.gov/publications/drafts/fips_180-3/draft_fips-180-3_June-08-2007.pdf - */ -class Sha224 : public Digest -{ -public: - - /** - * Constructor - */ - Sha224() - { hashType = HASH_SHA224; reset(); } - - /** - * Destructor - */ - virtual ~Sha224() - { reset(); } - - /** - * Overloaded from Digest - */ - virtual void reset(); - - /** - * Overloaded from Digest - */ - virtual std::vector finish(); - -protected: - - /** - * Overloaded from Digest - */ - virtual void update(unsigned char val); - - /** - * Overloaded from Digest - */ - virtual void transform(); - -private: - - uint32_t hashBuf[8]; - uint32_t inBuf[64]; - int longNr; - int byteNr; - uint32_t inb[4]; - -}; - - - -/** - * SHA-256, - * Section 6.1, SECURE HASH STANDARD - * Federal Information Processing Standards Publication 180-2 - * http://csrc.nist.gov/publications/drafts/fips_180-3/draft_fips-180-3_June-08-2007.pdf - */ -class Sha256 : public Digest -{ -public: - - /** - * Constructor - */ - Sha256() - { hashType = HASH_SHA256; reset(); } - - /** - * Destructor - */ - virtual ~Sha256() - { reset(); } - - /** - * Overloaded from Digest - */ - virtual void reset(); - - /** - * Overloaded from Digest - */ - virtual std::vector finish(); - -protected: - - /** - * Overloaded from Digest - */ - virtual void update(unsigned char val); - - /** - * Overloaded from Digest - */ - virtual void transform(); - -private: - - uint32_t hashBuf[8]; - uint32_t inBuf[64]; - int longNr; - int byteNr; - uint32_t inb[4]; - -}; - - - -/** - * SHA-384, - * Section 6.1, SECURE HASH STANDARD - * Federal Information Processing Standards Publication 180-2 - * http://csrc.nist.gov/publications/drafts/fips_180-3/draft_fips-180-3_June-08-2007.pdf - */ -class Sha384 : public Digest -{ -public: - - /** - * Constructor - */ - Sha384() - { hashType = HASH_SHA384; reset(); } - - /** - * Destructor - */ - virtual ~Sha384() - { reset(); } - - /** - * Overloaded from Digest - */ - virtual void reset(); - - /** - * Overloaded from Digest - */ - virtual std::vector finish(); - -protected: - - /** - * Overloaded from Digest - */ - virtual void update(unsigned char val); - - /** - * Overloaded from Digest - */ - virtual void transform(); - - - -private: - - uint64_t hashBuf[8]; - uint64_t inBuf[80]; - int longNr; - int byteNr; - uint64_t inb[8]; - -}; - - - - -/** - * SHA-512, - * Section 6.1, SECURE HASH STANDARD - * Federal Information Processing Standards Publication 180-2 - * http://csrc.nist.gov/publications/drafts/fips_180-3/draft_fips-180-3_June-08-2007.pdf - */ -class Sha512 : public Digest -{ -public: - - /** - * Constructor - */ - Sha512() - { hashType = HASH_SHA512; reset(); } - - /** - * Destructor - */ - virtual ~Sha512() - { reset(); } - - /** - * Overloaded from Digest - */ - virtual void reset(); - - /** - * Overloaded from Digest - */ - virtual std::vector finish(); - -protected: - - /** - * Overloaded from Digest - */ - virtual void update(unsigned char val); - - /** - * Overloaded from Digest - */ - virtual void transform(); - -private: - - uint64_t hashBuf[8]; - uint64_t inBuf[80]; - int longNr; - int byteNr; - uint64_t inb[8]; - -}; - - - - - - - - - -/** - * IETF RFC 1321, MD5 Specification - * http://www.ietf.org/rfc/rfc1321.txt - */ -class Md5 : public Digest -{ -public: - - /** - * Constructor - */ - Md5() - { hashType = HASH_MD5; reset(); } - - /** - * Destructor - */ - virtual ~Md5() - { reset(); } - - /** - * Overloaded from Digest - */ - virtual void reset(); - - /** - * Overloaded from Digest - */ - virtual std::vector finish(); - -protected: - - /** - * Overloaded from Digest - */ - virtual void update(unsigned char val); - - /** - * Overloaded from Digest - */ - virtual void transform(); - -private: - - uint32_t hashBuf[4]; - uint32_t inBuf[16]; - - uint32_t inb[4]; // Buffer for input bytes as longs - int byteNr; // which byte in long - int longNr; // which long in 16-long buffer - -}; - - - - - - - - - -#endif /* __DIGEST_H__ */ - - -- cgit v1.2.3 From faa38f1f6a18d5f44ebef82c7834d6b26aac34db Mon Sep 17 00:00:00 2001 From: Krzysztof Kosi??ski Date: Tue, 23 Jul 2013 13:44:43 +0200 Subject: Fix spelling error in filename (bzr r12430) --- src/widgets/CMakeLists.txt | 4 +- src/widgets/Makefile_insert | 4 +- src/widgets/eraser-toolbar.cpp | 172 +++++++++++++++++++++++++++++++++++++++++ src/widgets/eraser-toolbar.h | 35 +++++++++ src/widgets/erasor-toolbar.cpp | 172 ----------------------------------------- src/widgets/erasor-toolbar.h | 35 --------- src/widgets/toolbox.cpp | 2 +- 7 files changed, 212 insertions(+), 212 deletions(-) create mode 100644 src/widgets/eraser-toolbar.cpp create mode 100644 src/widgets/eraser-toolbar.h delete mode 100644 src/widgets/erasor-toolbar.cpp delete mode 100644 src/widgets/erasor-toolbar.h diff --git a/src/widgets/CMakeLists.txt b/src/widgets/CMakeLists.txt index 19410ee1d..fe4433153 100644 --- a/src/widgets/CMakeLists.txt +++ b/src/widgets/CMakeLists.txt @@ -6,7 +6,7 @@ set(widgets_SRC calligraphy-toolbar.cpp connector-toolbar.cpp dropper-toolbar.cpp - erasor-toolbar.cpp + eraser-toolbar.cpp lpe-toolbar.cpp measure-toolbar.cpp mesh-toolbar.cpp @@ -62,7 +62,7 @@ set(widgets_SRC calligraphy-toolbar.h connector-toolbar.h dropper-toolbar.h - erasor-toolbar.h + eraser-toolbar.h lpe-toolbar.h measure-toolbar.h mesh-toolbar.h diff --git a/src/widgets/Makefile_insert b/src/widgets/Makefile_insert index 46f0bd645..97713cbee 100644 --- a/src/widgets/Makefile_insert +++ b/src/widgets/Makefile_insert @@ -21,8 +21,8 @@ ink_common_sources += \ widgets/eek-preview.h \ widgets/ege-paint-def.cpp \ widgets/ege-paint-def.h \ - widgets/erasor-toolbar.cpp \ - widgets/erasor-toolbar.h \ + widgets/eraser-toolbar.cpp \ + widgets/eraser-toolbar.h \ widgets/fill-style.cpp \ widgets/fill-style.h \ widgets/fill-n-stroke-factory.h \ diff --git a/src/widgets/eraser-toolbar.cpp b/src/widgets/eraser-toolbar.cpp new file mode 100644 index 000000000..aca960c00 --- /dev/null +++ b/src/widgets/eraser-toolbar.cpp @@ -0,0 +1,172 @@ +/** + * @file + * Erasor aux toolbar + */ +/* Authors: + * MenTaLguY + * Lauris Kaplinski + * bulia byak + * Frank Felfe + * John Cliff + * David Turner + * Josh Andler + * Jon A. Cruz + * Maximilian Albert + * Tavmjong Bah + * Abhishek Sharma + * Kris De Gussem + * + * Copyright (C) 2004 David Turner + * Copyright (C) 2003 MenTaLguY + * Copyright (C) 1999-2011 authors + * Copyright (C) 2001-2002 Ximian, Inc. + * + * Released under GNU GPL, read the file 'COPYING' for more information + */ + +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif + +#include "ui/widget/spinbutton.h" +#include +#include "toolbox.h" +#include "eraser-toolbar.h" +#include "calligraphy-toolbar.h" + +#include "../desktop.h" +#include "../desktop-handles.h" +#include "document-undo.h" +#include "../verbs.h" +#include "../inkscape.h" +#include "../selection-chemistry.h" +#include "../selection.h" +#include "../ege-adjustment-action.h" +#include "../ege-output-action.h" +#include "../ege-select-one-action.h" +#include "../ink-action.h" +#include "../ink-comboboxentry-action.h" + +#include "../widgets/button.h" +#include "../widgets/spinbutton-events.h" +#include "../widgets/spw-utilities.h" +#include "../widgets/widget-sizes.h" +#include "../xml/node-event-vector.h" +#include "../xml/repr.h" +#include "ui/uxmanager.h" +#include "../ui/icon-names.h" +#include "../helper/unit-menu.h" +#include "../helper/units.h" +#include "../helper/unit-tracker.h" +#include "../pen-context.h" + + +using Inkscape::UnitTracker; +using Inkscape::UI::UXManager; +using Inkscape::DocumentUndo; +using Inkscape::UI::ToolboxFactory; +using Inkscape::UI::PrefPusher; + +//######################## +//## Eraser ## +//######################## + +static void sp_erc_width_value_changed( GtkAdjustment *adj, GObject *tbl ) +{ + Inkscape::Preferences *prefs = Inkscape::Preferences::get(); + prefs->setDouble( "/tools/eraser/width", gtk_adjustment_get_value(adj) ); + update_presets_list(tbl); +} + +static void sp_erasertb_mode_changed( EgeSelectOneAction *act, GObject *tbl ) +{ + SPDesktop *desktop = static_cast(g_object_get_data( tbl, "desktop" )); + bool eraserMode = ege_select_one_action_get_active( act ) != 0; + if (DocumentUndo::getUndoSensitive(sp_desktop_document(desktop))) { + Inkscape::Preferences *prefs = Inkscape::Preferences::get(); + prefs->setBool( "/tools/eraser/mode", eraserMode ); + } + + // only take action if run by the attr_changed listener + if (!g_object_get_data( tbl, "freeze" )) { + // in turn, prevent listener from responding + g_object_set_data( tbl, "freeze", GINT_TO_POINTER(TRUE) ); + + /* + if ( eraserMode != 0 ) { + } else { + } + */ + // TODO finish implementation + + g_object_set_data( tbl, "freeze", GINT_TO_POINTER(FALSE) ); + } +} + +void sp_eraser_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder) +{ + { + GtkListStore* model = gtk_list_store_new( 3, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING ); + + GtkTreeIter iter; + gtk_list_store_append( model, &iter ); + gtk_list_store_set( model, &iter, + 0, _("Delete"), + 1, _("Delete objects touched by the eraser"), + 2, INKSCAPE_ICON("draw-eraser-delete-objects"), + -1 ); + + gtk_list_store_append( model, &iter ); + gtk_list_store_set( model, &iter, + 0, _("Cut"), + 1, _("Cut out from objects"), + 2, INKSCAPE_ICON("path-difference"), + -1 ); + + EgeSelectOneAction* act = ege_select_one_action_new( "EraserModeAction", (""), (""), NULL, GTK_TREE_MODEL(model) ); + g_object_set( act, "short_label", _("Mode:"), NULL ); + gtk_action_group_add_action( mainActions, GTK_ACTION(act) ); + g_object_set_data( holder, "eraser_mode_action", act ); + + ege_select_one_action_set_appearance( act, "full" ); + ege_select_one_action_set_radio_action_type( act, INK_RADIO_ACTION_TYPE ); + g_object_set( G_OBJECT(act), "icon-property", "iconId", NULL ); + ege_select_one_action_set_icon_column( act, 2 ); + ege_select_one_action_set_tooltip_column( act, 1 ); + + /// @todo Convert to boolean? + Inkscape::Preferences *prefs = Inkscape::Preferences::get(); + gint eraserMode = prefs->getBool("/tools/eraser/mode") ? 1 : 0; + ege_select_one_action_set_active( act, eraserMode ); + g_signal_connect_after( G_OBJECT(act), "changed", G_CALLBACK(sp_erasertb_mode_changed), holder ); + } + + { + /* Width */ + gchar const* labels[] = {_("(hairline)"), 0, 0, 0, _("(default)"), 0, 0, 0, 0, _("(broad stroke)")}; + gdouble values[] = {1, 3, 5, 10, 15, 20, 30, 50, 75, 100}; + EgeAdjustmentAction *eact = create_adjustment_action( "EraserWidthAction", + _("Pen Width"), _("Width:"), + _("The width of the eraser pen (relative to the visible canvas area)"), + "/tools/eraser/width", 15, + GTK_WIDGET(desktop->canvas), NULL, holder, TRUE, "altx-eraser", + 1, 100, 1.0, 10.0, + labels, values, G_N_ELEMENTS(labels), + sp_erc_width_value_changed, 1, 0); + ege_adjustment_action_set_appearance( eact, TOOLBAR_SLIDER_HINT ); + gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); + gtk_action_set_sensitive( GTK_ACTION(eact), TRUE ); + } + +} + +/* + Local Variables: + mode:c++ + c-file-style:"stroustrup" + c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +)) + indent-tabs-mode:nil + fill-column:99 + End: +*/ +// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 : diff --git a/src/widgets/eraser-toolbar.h b/src/widgets/eraser-toolbar.h new file mode 100644 index 000000000..b1bb3a3fa --- /dev/null +++ b/src/widgets/eraser-toolbar.h @@ -0,0 +1,35 @@ +#ifndef SEEN_ERASOR_TOOLBAR_H +#define SEEN_ERASOR_TOOLBAR_H + +/** + * @file + * Erasor aux toolbar + */ +/* Authors: + * MenTaLguY + * Lauris Kaplinski + * bulia byak + * Frank Felfe + * John Cliff + * David Turner + * Josh Andler + * Jon A. Cruz + * Maximilian Albert + * Tavmjong Bah + * Abhishek Sharma + * Kris De Gussem + * + * Copyright (C) 2004 David Turner + * Copyright (C) 2003 MenTaLguY + * Copyright (C) 1999-2011 authors + * Copyright (C) 2001-2002 Ximian, Inc. + * + * Released under GNU GPL, read the file 'COPYING' for more information + */ + +#include +class SPDesktop; + +void sp_eraser_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder); + +#endif /* !SEEN_ERASOR_TOOLBAR_H */ diff --git a/src/widgets/erasor-toolbar.cpp b/src/widgets/erasor-toolbar.cpp deleted file mode 100644 index 2e074490d..000000000 --- a/src/widgets/erasor-toolbar.cpp +++ /dev/null @@ -1,172 +0,0 @@ -/** - * @file - * Erasor aux toolbar - */ -/* Authors: - * MenTaLguY - * Lauris Kaplinski - * bulia byak - * Frank Felfe - * John Cliff - * David Turner - * Josh Andler - * Jon A. Cruz - * Maximilian Albert - * Tavmjong Bah - * Abhishek Sharma - * Kris De Gussem - * - * Copyright (C) 2004 David Turner - * Copyright (C) 2003 MenTaLguY - * Copyright (C) 1999-2011 authors - * Copyright (C) 2001-2002 Ximian, Inc. - * - * Released under GNU GPL, read the file 'COPYING' for more information - */ - -#ifdef HAVE_CONFIG_H -# include "config.h" -#endif - -#include "ui/widget/spinbutton.h" -#include -#include "toolbox.h" -#include "erasor-toolbar.h" -#include "calligraphy-toolbar.h" - -#include "../desktop.h" -#include "../desktop-handles.h" -#include "document-undo.h" -#include "../verbs.h" -#include "../inkscape.h" -#include "../selection-chemistry.h" -#include "../selection.h" -#include "../ege-adjustment-action.h" -#include "../ege-output-action.h" -#include "../ege-select-one-action.h" -#include "../ink-action.h" -#include "../ink-comboboxentry-action.h" - -#include "../widgets/button.h" -#include "../widgets/spinbutton-events.h" -#include "../widgets/spw-utilities.h" -#include "../widgets/widget-sizes.h" -#include "../xml/node-event-vector.h" -#include "../xml/repr.h" -#include "ui/uxmanager.h" -#include "../ui/icon-names.h" -#include "../helper/unit-menu.h" -#include "../helper/units.h" -#include "../helper/unit-tracker.h" -#include "../pen-context.h" - - -using Inkscape::UnitTracker; -using Inkscape::UI::UXManager; -using Inkscape::DocumentUndo; -using Inkscape::UI::ToolboxFactory; -using Inkscape::UI::PrefPusher; - -//######################## -//## Eraser ## -//######################## - -static void sp_erc_width_value_changed( GtkAdjustment *adj, GObject *tbl ) -{ - Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - prefs->setDouble( "/tools/eraser/width", gtk_adjustment_get_value(adj) ); - update_presets_list(tbl); -} - -static void sp_erasertb_mode_changed( EgeSelectOneAction *act, GObject *tbl ) -{ - SPDesktop *desktop = static_cast(g_object_get_data( tbl, "desktop" )); - bool eraserMode = ege_select_one_action_get_active( act ) != 0; - if (DocumentUndo::getUndoSensitive(sp_desktop_document(desktop))) { - Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - prefs->setBool( "/tools/eraser/mode", eraserMode ); - } - - // only take action if run by the attr_changed listener - if (!g_object_get_data( tbl, "freeze" )) { - // in turn, prevent listener from responding - g_object_set_data( tbl, "freeze", GINT_TO_POINTER(TRUE) ); - - /* - if ( eraserMode != 0 ) { - } else { - } - */ - // TODO finish implementation - - g_object_set_data( tbl, "freeze", GINT_TO_POINTER(FALSE) ); - } -} - -void sp_eraser_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder) -{ - { - GtkListStore* model = gtk_list_store_new( 3, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING ); - - GtkTreeIter iter; - gtk_list_store_append( model, &iter ); - gtk_list_store_set( model, &iter, - 0, _("Delete"), - 1, _("Delete objects touched by the eraser"), - 2, INKSCAPE_ICON("draw-eraser-delete-objects"), - -1 ); - - gtk_list_store_append( model, &iter ); - gtk_list_store_set( model, &iter, - 0, _("Cut"), - 1, _("Cut out from objects"), - 2, INKSCAPE_ICON("path-difference"), - -1 ); - - EgeSelectOneAction* act = ege_select_one_action_new( "EraserModeAction", (""), (""), NULL, GTK_TREE_MODEL(model) ); - g_object_set( act, "short_label", _("Mode:"), NULL ); - gtk_action_group_add_action( mainActions, GTK_ACTION(act) ); - g_object_set_data( holder, "eraser_mode_action", act ); - - ege_select_one_action_set_appearance( act, "full" ); - ege_select_one_action_set_radio_action_type( act, INK_RADIO_ACTION_TYPE ); - g_object_set( G_OBJECT(act), "icon-property", "iconId", NULL ); - ege_select_one_action_set_icon_column( act, 2 ); - ege_select_one_action_set_tooltip_column( act, 1 ); - - /// @todo Convert to boolean? - Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - gint eraserMode = prefs->getBool("/tools/eraser/mode") ? 1 : 0; - ege_select_one_action_set_active( act, eraserMode ); - g_signal_connect_after( G_OBJECT(act), "changed", G_CALLBACK(sp_erasertb_mode_changed), holder ); - } - - { - /* Width */ - gchar const* labels[] = {_("(hairline)"), 0, 0, 0, _("(default)"), 0, 0, 0, 0, _("(broad stroke)")}; - gdouble values[] = {1, 3, 5, 10, 15, 20, 30, 50, 75, 100}; - EgeAdjustmentAction *eact = create_adjustment_action( "EraserWidthAction", - _("Pen Width"), _("Width:"), - _("The width of the eraser pen (relative to the visible canvas area)"), - "/tools/eraser/width", 15, - GTK_WIDGET(desktop->canvas), NULL, holder, TRUE, "altx-eraser", - 1, 100, 1.0, 10.0, - labels, values, G_N_ELEMENTS(labels), - sp_erc_width_value_changed, 1, 0); - ege_adjustment_action_set_appearance( eact, TOOLBAR_SLIDER_HINT ); - gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); - gtk_action_set_sensitive( GTK_ACTION(eact), TRUE ); - } - -} - -/* - Local Variables: - mode:c++ - c-file-style:"stroustrup" - c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +)) - indent-tabs-mode:nil - fill-column:99 - End: -*/ -// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 : diff --git a/src/widgets/erasor-toolbar.h b/src/widgets/erasor-toolbar.h deleted file mode 100644 index b1bb3a3fa..000000000 --- a/src/widgets/erasor-toolbar.h +++ /dev/null @@ -1,35 +0,0 @@ -#ifndef SEEN_ERASOR_TOOLBAR_H -#define SEEN_ERASOR_TOOLBAR_H - -/** - * @file - * Erasor aux toolbar - */ -/* Authors: - * MenTaLguY - * Lauris Kaplinski - * bulia byak - * Frank Felfe - * John Cliff - * David Turner - * Josh Andler - * Jon A. Cruz - * Maximilian Albert - * Tavmjong Bah - * Abhishek Sharma - * Kris De Gussem - * - * Copyright (C) 2004 David Turner - * Copyright (C) 2003 MenTaLguY - * Copyright (C) 1999-2011 authors - * Copyright (C) 2001-2002 Ximian, Inc. - * - * Released under GNU GPL, read the file 'COPYING' for more information - */ - -#include -class SPDesktop; - -void sp_eraser_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder); - -#endif /* !SEEN_ERASOR_TOOLBAR_H */ diff --git a/src/widgets/toolbox.cpp b/src/widgets/toolbox.cpp index ca593976f..98a0ff51e 100644 --- a/src/widgets/toolbox.cpp +++ b/src/widgets/toolbox.cpp @@ -79,7 +79,7 @@ #include "calligraphy-toolbar.h" #include "connector-toolbar.h" #include "dropper-toolbar.h" -#include "erasor-toolbar.h" +#include "eraser-toolbar.h" #include "gradient-toolbar.h" #include "lpe-toolbar.h" #include "mesh-toolbar.h" -- cgit v1.2.3 From 379521136cda27b5e42c7afdd87a8ac691404f16 Mon Sep 17 00:00:00 2001 From: Krzysztof Kosi??ski Date: Tue, 23 Jul 2013 18:54:03 +0200 Subject: Remove approx-equal.h and replace with Geom::are_near (bzr r12431) --- src/CMakeLists.txt | 1 - src/Makefile_insert | 2 +- src/doxygen-main.cpp | 2 +- src/satisfied-guide-cns.cpp | 4 ++-- src/sp-item-rm-unsatisfied-cns.cpp | 5 +++-- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 87f223150..02a206787 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -312,7 +312,6 @@ set(inkscape_SRC MultiPrinter.h PylogFormatter.h TRPIFormatter.h - approx-equal.h arc-context.h attributes-test.h attributes.h diff --git a/src/Makefile_insert b/src/Makefile_insert index 88f809b52..3e61f625a 100644 --- a/src/Makefile_insert +++ b/src/Makefile_insert @@ -3,7 +3,7 @@ ink_common_sources += \ util/find-last-if.h \ util/longest-common-suffix.h \ - approx-equal.h remove-last.h \ + remove-last.h \ arc-context.cpp arc-context.h \ attributes.cpp attributes.h \ attribute-rel-svg.cpp attribute-rel-svg.h \ diff --git a/src/doxygen-main.cpp b/src/doxygen-main.cpp index 04e5ab33e..1c3e5dcbb 100644 --- a/src/doxygen-main.cpp +++ b/src/doxygen-main.cpp @@ -350,7 +350,7 @@ namespace XML {} * Inkscape::Whiteboard::UndoStackObserver [\ref undo-stack-observer.cpp, \ref composite-undo-stack-observer.cpp] * [\ref document-undo.cpp] * - * {\ref dialogs/} [\ref approx-equal.h] [\ref decimal-round.h] [\ref enums.h] [\ref unit-constants.h] + * {\ref dialogs/} [\ref decimal-round.h] [\ref enums.h] [\ref unit-constants.h] */ diff --git a/src/satisfied-guide-cns.cpp b/src/satisfied-guide-cns.cpp index 57d4ffce3..588c78ce0 100644 --- a/src/satisfied-guide-cns.cpp +++ b/src/satisfied-guide-cns.cpp @@ -1,8 +1,8 @@ +#include <2geom/coord.h> #include "desktop-handles.h" #include "sp-guide.h" #include "sp-guide-constraint.h" #include "sp-namedview.h" -#include "approx-equal.h" #include "satisfied-guide-cns.h" void satisfied_guide_cns(SPDesktop const &desktop, @@ -13,7 +13,7 @@ void satisfied_guide_cns(SPDesktop const &desktop, for (GSList const *l = nv.guides; l != NULL; l = l->next) { SPGuide &g = *SP_GUIDE(l->data); for (unsigned int i = 0; i < snappoints.size(); ++i) { - if (approx_equal( g.getDistanceFrom(snappoints[i].getPoint()), 0) ) { + if (Geom::are_near(g.getDistanceFrom(snappoints[i].getPoint()), 0, 1e-2)) { cns.push_back(SPGuideConstraint(&g, i)); } } diff --git a/src/sp-item-rm-unsatisfied-cns.cpp b/src/sp-item-rm-unsatisfied-cns.cpp index c35e4fa48..8fb171c08 100644 --- a/src/sp-item-rm-unsatisfied-cns.cpp +++ b/src/sp-item-rm-unsatisfied-cns.cpp @@ -1,7 +1,7 @@ #include +#include <2geom/coord.h> -#include "approx-equal.h" #include "remove-last.h" #include "sp-guide.h" #include "sp-guide-constraint.h" @@ -22,7 +22,8 @@ void sp_item_rm_unsatisfied_cns(SPItem &item) SPGuideConstraint const &cn = item.constraints[i]; int const snappoint_ix = cn.snappoint_ix; g_assert( snappoint_ix < int(snappoints.size()) ); - if (!approx_equal( cn.g->getDistanceFrom(snappoints[snappoint_ix].getPoint()), 0) ) { + + if (!Geom::are_near(cn.g->getDistanceFrom(snappoints[snappoint_ix].getPoint()), 0, 1e-2)) { remove_last(cn.g->attached_items, SPGuideAttachment(&item, cn.snappoint_ix)); g_assert( i < item.constraints.size() ); vector::iterator const ei(&item.constraints[i]); -- cgit v1.2.3 From 971dcf0f1cc99b33e09920370214f8d50324d975 Mon Sep 17 00:00:00 2001 From: Krzysztof Kosi??ski Date: Tue, 23 Jul 2013 19:01:25 +0200 Subject: Remove unused fix for an ancient problem with g_ascii_strtod (bzr r12432) --- src/CMakeLists.txt | 1 - src/Makefile_insert | 1 - 2 files changed, 2 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 02a206787..1d27eaef1 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -216,7 +216,6 @@ set(inkscape_SRC file.cpp filter-chemistry.cpp filter-enums.cpp - fixes.cpp flood-context.cpp gc-anchored.cpp gc-finalized.cpp diff --git a/src/Makefile_insert b/src/Makefile_insert index 3e61f625a..885b89d78 100644 --- a/src/Makefile_insert +++ b/src/Makefile_insert @@ -59,7 +59,6 @@ ink_common_sources += \ fill-or-stroke.h \ filter-chemistry.cpp filter-chemistry.h \ filter-enums.cpp filter-enums.h \ - fixes.cpp \ flood-context.cpp flood-context.h \ gc-alloc.h \ gc-anchored.h gc-anchored.cpp \ -- cgit v1.2.3 From 747e668b5497b7ae74f38491446d0187ccd0bb72 Mon Sep 17 00:00:00 2001 From: Krzysztof Kosi??ski Date: Tue, 23 Jul 2013 19:02:50 +0200 Subject: Actually remove the file containing the unused fix (oops) (bzr r12433) --- src/fixes.cpp | 194 ---------------------------------------------------------- 1 file changed, 194 deletions(-) delete mode 100644 src/fixes.cpp diff --git a/src/fixes.cpp b/src/fixes.cpp deleted file mode 100644 index 4aed2c313..000000000 --- a/src/fixes.cpp +++ /dev/null @@ -1,194 +0,0 @@ -/* - * - * This is the header file to include to fix any broken definitions or funcs - * - * $Id$ - * - * 2004 Kees Cook - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version 2 - * of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - * http://www.gnu.org/copyleft/gpl.html - * - */ - -#ifdef HAVE_CONFIG_H -# include "config.h" -#endif - -//#if defined(g_ascii_strtod) -#if 0 -/* - * until 2004-04-22, g_ascii_strtod could not handle having a locale-based - * decimal separator immediately following the number ("5,4" would - * parse to "5,4" instead of "5.0" in fr_FR) - * - * This is the corrected function, lifted from 1.107 gstrfuncs.c in glib - */ -extern "C" { -#include -#include -#include -#include -#include - -gdouble -fixed_g_ascii_strtod (const gchar *nptr, - gchar **endptr) -{ - gchar *fail_pos; - gdouble val; - struct lconv *locale_data; - const char *decimal_point; - int decimal_point_len; - const char *p, *decimal_point_pos; - const char *end = NULL; /* Silence gcc */ - - g_return_val_if_fail (nptr != NULL, 0); - - fail_pos = NULL; - - locale_data = localeconv (); - decimal_point = locale_data->decimal_point; - decimal_point_len = strlen (decimal_point); - - g_assert (decimal_point_len != 0); - - decimal_point_pos = NULL; - if (decimal_point[0] != '.' || - decimal_point[1] != 0) - { - p = nptr; - /* Skip leading space */ - while (g_ascii_isspace (*p)) - p++; - - /* Skip leading optional sign */ - if (*p == '+' || *p == '-') - p++; - - if (p[0] == '0' && - (p[1] == 'x' || p[1] == 'X')) - { - p += 2; - /* HEX - find the (optional) decimal point */ - - while (g_ascii_isxdigit (*p)) - p++; - - if (*p == '.') - { - decimal_point_pos = p++; - - while (g_ascii_isxdigit (*p)) - p++; - - if (*p == 'p' || *p == 'P') - p++; - if (*p == '+' || *p == '-') - p++; - while (g_ascii_isdigit (*p)) - p++; - } - } - else - { - while (g_ascii_isdigit (*p)) - p++; - - if (*p == '.') - { - decimal_point_pos = p++; - - while (g_ascii_isdigit (*p)) - p++; - - if (*p == 'e' || *p == 'E') - p++; - if (*p == '+' || *p == '-') - p++; - while (g_ascii_isdigit (*p)) - p++; - } - } - /* For the other cases, we need not convert the decimal point */ - end = p; - } - - /* Set errno to zero, so that we can distinguish zero results - and underflows */ - errno = 0; - - if (decimal_point_pos) - { - char *copy, *c; - - /* We need to convert the '.' to the locale specific decimal point */ - copy = (char*)g_malloc (end - nptr + 1 + decimal_point_len); - - c = copy; - memcpy (c, nptr, decimal_point_pos - nptr); - c += decimal_point_pos - nptr; - memcpy (c, decimal_point, decimal_point_len); - c += decimal_point_len; - memcpy (c, decimal_point_pos + 1, end - (decimal_point_pos + 1)); - c += end - (decimal_point_pos + 1); - *c = 0; - - val = strtod (copy, &fail_pos); - - if (fail_pos) - { - if (fail_pos - copy > decimal_point_pos - nptr) - fail_pos = (char *)nptr + (fail_pos - copy) - (decimal_point_len - 1); - else - fail_pos = (char *)nptr + (fail_pos - copy); - } - - g_free (copy); - - } - else if (decimal_point[0] != '.' || - decimal_point[1] != 0) - { - char *copy; - - copy = (char*)g_malloc (end - (char *)nptr + 1); - memcpy (copy, nptr, end - nptr); - *(copy + (end - (char *)nptr)) = 0; - - val = strtod (copy, &fail_pos); - - if (fail_pos) - { - fail_pos = (char *)nptr + (fail_pos - copy); - } - - g_free (copy); - } - else - { - val = strtod (nptr, &fail_pos); - } - - if (endptr) - *endptr = fail_pos; - - return val; -} -} - -#endif /* BROKEN_G_ASCII_STRTOD */ - - -- cgit v1.2.3 From bb4fa724bd8e1a72571da73ee683fac3788642e4 Mon Sep 17 00:00:00 2001 From: Krzysztof Kosi??ski Date: Tue, 23 Jul 2013 19:06:58 +0200 Subject: Fix stray prototype of a removed function (bzr r12434) --- src/number-opt-number.h | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/number-opt-number.h b/src/number-opt-number.h index b2f2f2a1e..867d0535f 100644 --- a/src/number-opt-number.h +++ b/src/number-opt-number.h @@ -23,9 +23,6 @@ #include #include "svg/stringstream.h" - -gdouble fixed_g_ascii_strtod (const gchar *nptr, gchar **endptr); - class NumberOptNumber { public: -- cgit v1.2.3 From 338a9afe505857694f1bcc2dbbc457f004545ae2 Mon Sep 17 00:00:00 2001 From: Krzysztof Kosi??ski Date: Tue, 23 Jul 2013 19:10:46 +0200 Subject: Actually remove approx-equal.h (oops again) (bzr r12435) --- src/approx-equal.h | 25 ------------------------- 1 file changed, 25 deletions(-) delete mode 100644 src/approx-equal.h diff --git a/src/approx-equal.h b/src/approx-equal.h deleted file mode 100644 index 92f36d7a5..000000000 --- a/src/approx-equal.h +++ /dev/null @@ -1,25 +0,0 @@ -#ifndef __APROX_EQUAL_H__ -#define __APROX_EQUAL_H__ - -#include - -inline bool approx_equal(double const a, double const b) -{ - return ( (a == b) - || ( fabs( a - b ) < 1e-2 ) - || ( fabs( a / b - 1.0 ) < 1e-2 ) ); -} - - -#endif /* !__APROX_EQUAL_H__ */ - -/* - Local Variables: - mode:c++ - c-file-style:"stroustrup" - c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +)) - indent-tabs-mode:nil - fill-column:99 - End: -*/ -// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 : -- cgit v1.2.3 From 6b78e29d0a6b0a5df82b1d8779689ec41718b258 Mon Sep 17 00:00:00 2001 From: Slagvi Public Date: Wed, 24 Jul 2013 09:25:52 +0200 Subject: Old templates support removed (bzr r12379.2.13) --- src/interface.cpp | 97 +----------------------------------- src/menus-skeleton.h | 1 - src/templates/main.cpp | 16 ------ src/templates/preview.png | Bin 2426 -> 0 bytes src/ui/dialog/template-load-tab.cpp | 2 +- 5 files changed, 2 insertions(+), 114 deletions(-) delete mode 100644 src/templates/main.cpp delete mode 100644 src/templates/preview.png diff --git a/src/interface.cpp b/src/interface.cpp index 986d3107f..f9e720494 100644 --- a/src/interface.cpp +++ b/src/interface.cpp @@ -716,13 +716,6 @@ sp_recent_open(GtkRecentChooser *recent_menu, gpointer /*user_data*/) g_free(uri); } -static void -sp_file_new_from_template(GtkWidget */*widget*/, gchar const *uri) -{ - sp_file_new(uri); -} - - static bool compare_file_basenames(gchar const *a, gchar const *b) { bool rc; @@ -750,91 +743,6 @@ compare_file_basenames(gchar const *a, gchar const *b) { return rc; } -static void -sp_menu_get_svg_filenames_from_dir(gchar const *dirname, std::list *files) -{ - if ( Inkscape::IO::file_test( dirname, (GFileTest)(G_FILE_TEST_EXISTS | G_FILE_TEST_IS_DIR) ) ) { - GError *err = 0; - GDir *dir = g_dir_open(dirname, 0, &err); - - if (dir) { - for (gchar const *file = g_dir_read_name(dir); file != NULL; file = g_dir_read_name(dir)) { - if (!g_str_has_suffix(file, ".svg") && !g_str_has_suffix(file, ".svgz")) { - continue; // skip non-svg files - } - - { - gchar *basename = g_path_get_basename(file); - if (g_str_has_suffix(basename, ".svg") && g_str_has_prefix(basename, "default.")) { - g_free(basename); - basename = 0; - continue; // skip default.*.svg (i.e. default.svg and translations) - it's in the menu already - } - g_free(basename); - basename = 0; - } - - gchar const *filepath = g_build_filename(dirname, file, NULL); - files->push_front(filepath); - } - g_dir_close(dir); - } - } - - files->sort(compare_file_basenames); -} - -static void -sp_menu_add_filenames_to_menu(GtkWidget *menu, Inkscape::UI::View::View *view, std::list *files) -{ - if (!files->empty()) { - GtkWidget *sep = gtk_separator_menu_item_new(); - gtk_menu_shell_append(GTK_MENU_SHELL(menu), sep); - } - - for(std::list::iterator it=files->begin(); it != files->end(); ++it) { - gchar const *filepath = *it; - gchar const *file = g_path_get_basename(filepath); - gchar *dupfile = g_strndup(file, strlen(file) - 4); - gchar *filename = g_filename_to_utf8(dupfile, -1, NULL, NULL, NULL); - g_free(dupfile); - - GtkWidget *item = gtk_menu_item_new_with_label(filename); - g_free(filename); - - gtk_widget_show(item); - // how does "filepath" ever get freed? - g_signal_connect(G_OBJECT(item), - "activate", - G_CALLBACK(sp_file_new_from_template), - (gpointer) filepath); - - if (view) { - // set null tip for now; later use a description from the template file - g_object_set_data(G_OBJECT(item), "view", (gpointer) view); - g_signal_connect( G_OBJECT(item), "select", G_CALLBACK(sp_ui_menu_select), (gpointer) NULL ); - g_signal_connect( G_OBJECT(item), "deselect", G_CALLBACK(sp_ui_menu_deselect), NULL); - } - - gtk_menu_shell_append(GTK_MENU_SHELL(menu), item); - } - -} -static void -sp_menu_append_new_templates(GtkWidget *menu, Inkscape::UI::View::View *view) -{ - // user's local dir - std::list userfiles; - sp_menu_get_svg_filenames_from_dir(profile_path("templates"), &userfiles); - sp_menu_add_filenames_to_menu(menu, view, &userfiles); - - // system templates dir - std::list templatefiles; - sp_menu_get_svg_filenames_from_dir(INKSCAPE_TEMPLATESDIR, &templatefiles); - sp_menu_add_filenames_to_menu(menu, view, &templatefiles); - -} - static void sp_ui_checkboxes_menus(GtkMenu *m, Inkscape::UI::View::View *view) { @@ -995,10 +903,7 @@ static void sp_ui_build_dyn_menus(Inkscape::XML::Node *menus, GtkWidget *menu, I gtk_menu_shell_append(GTK_MENU_SHELL(menu), item); continue; } - if (!strcmp(menu_pntr->name(), "template-list")) { - sp_menu_append_new_templates(menu, view); - continue; - } + if (!strcmp(menu_pntr->name(), "recent-file-list")) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); diff --git a/src/menus-skeleton.h b/src/menus-skeleton.h index 7c412b605..9dcd4a80b 100644 --- a/src/menus-skeleton.h +++ b/src/menus-skeleton.h @@ -16,7 +16,6 @@ static char const menus_skeleton[] = " \n" " \n" " \n" -" \n" " \n" " \n" " \n" diff --git a/src/templates/main.cpp b/src/templates/main.cpp deleted file mode 100644 index d7a3f40a4..000000000 --- a/src/templates/main.cpp +++ /dev/null @@ -1,16 +0,0 @@ -#include - -#include "new-from-template.h" - -using namespace Inkscape::UI; - -int main (int argc, char *argv[]) -{ - Gtk::Main kit(argc, argv); - - NewFromTemplate dialog; - dialog.run(); - //Gtk::Main::run(dialog); - - return 0; -} diff --git a/src/templates/preview.png b/src/templates/preview.png deleted file mode 100644 index c56a832a2..000000000 Binary files a/src/templates/preview.png and /dev/null differ diff --git a/src/ui/dialog/template-load-tab.cpp b/src/ui/dialog/template-load-tab.cpp index ded4fc6fd..58219f8f2 100644 --- a/src/ui/dialog/template-load-tab.cpp +++ b/src/ui/dialog/template-load-tab.cpp @@ -185,7 +185,7 @@ void TemplateLoadTab::_loadTemplates() _getTemplatesFromDir(profile_path("templates") + _loading_path); // system templates dir - // _getTemplatesFromDir(INKSCAPE_TEMPLATESDIR + _loading_path); + _getTemplatesFromDir(INKSCAPE_TEMPLATESDIR + _loading_path); } -- cgit v1.2.3 From badc78fc17340975af12905bc7a0e0c4d7ab62b4 Mon Sep 17 00:00:00 2001 From: Slagvi Public Date: Wed, 24 Jul 2013 10:22:37 +0200 Subject: Templates gui fixes (bzr r12379.2.14) --- src/ui/dialog/new-from-template.cpp | 3 ++- src/ui/dialog/template-load-tab.cpp | 14 ++++++-------- src/ui/dialog/template-load-tab.h | 5 +++-- src/ui/dialog/template-widget.cpp | 17 ++++++++--------- 4 files changed, 19 insertions(+), 20 deletions(-) diff --git a/src/ui/dialog/new-from-template.cpp b/src/ui/dialog/new-from-template.cpp index 6598aecdf..2595e2cf5 100644 --- a/src/ui/dialog/new-from-template.cpp +++ b/src/ui/dialog/new-from-template.cpp @@ -30,7 +30,8 @@ NewFromTemplate::NewFromTemplate() Gtk::Alignment *align; align = manage(new Gtk::Alignment(Gtk::ALIGN_END, Gtk::ALIGN_CENTER, 0.0, 0.0)); - get_vbox()->pack_end(*align, Gtk::PACK_SHRINK, 5); + get_vbox()->pack_end(*align, Gtk::PACK_SHRINK); + align->set_padding(0, 0, 0, 15); align->add(_create_template_button); _create_template_button.signal_pressed().connect( diff --git a/src/ui/dialog/template-load-tab.cpp b/src/ui/dialog/template-load-tab.cpp index 58219f8f2..65d5e6447 100644 --- a/src/ui/dialog/template-load-tab.cpp +++ b/src/ui/dialog/template-load-tab.cpp @@ -38,18 +38,16 @@ TemplateLoadTab::TemplateLoadTab() set_border_width(10); _info_widget = manage(new TemplateWidget()); + Gtk::Label *title; title = manage(new Gtk::Label(_("Search:"))); - _tlist_box.pack_start(*title, Gtk::PACK_SHRINK, 10); - - _tlist_box.pack_start(_keywords_combo, Gtk::PACK_SHRINK, 0); + _search_box.pack_start(*title, Gtk::PACK_SHRINK); + _search_box.pack_start(_keywords_combo, Gtk::PACK_SHRINK, 5); - title = manage(new Gtk::Label(_("Templates"))); - _tlist_box.pack_start(*title, Gtk::PACK_SHRINK, 10); + _tlist_box.pack_start(_search_box, Gtk::PACK_SHRINK, 10); - add(_main_box); - _main_box.pack_start(_tlist_box, Gtk::PACK_SHRINK, 20); - _main_box.pack_start(*_info_widget, Gtk::PACK_EXPAND_WIDGET, 10); + pack_start(_tlist_box, Gtk::PACK_SHRINK); + pack_start(*_info_widget, Gtk::PACK_EXPAND_WIDGET, 5); Gtk::ScrolledWindow *scrolled; scrolled = manage(new Gtk::ScrolledWindow()); diff --git a/src/ui/dialog/template-load-tab.h b/src/ui/dialog/template-load-tab.h index cc5229c95..c3c512374 100644 --- a/src/ui/dialog/template-load-tab.h +++ b/src/ui/dialog/template-load-tab.h @@ -25,7 +25,7 @@ namespace UI { class TemplateWidget; -class TemplateLoadTab : public Gtk::Frame +class TemplateLoadTab : public Gtk::HBox { public: @@ -71,8 +71,9 @@ protected: void _loadTemplates(); void _initLists(); - Gtk::HBox _main_box; + // Gtk::HBox _main_box; Gtk::VBox _tlist_box; + Gtk::HBox _search_box; TemplateWidget *_info_widget; Gtk::ComboBoxText _keywords_combo; diff --git a/src/ui/dialog/template-widget.cpp b/src/ui/dialog/template-widget.cpp index bb2c4a683..56346403e 100644 --- a/src/ui/dialog/template-widget.cpp +++ b/src/ui/dialog/template-widget.cpp @@ -27,26 +27,25 @@ namespace UI { TemplateWidget::TemplateWidget() : _more_info_button(_("More info")) - , _short_description_label(_("Short description")) - , _template_author_label(_("by template_author")) - , _template_name_label(_("Template_name")) - , _preview_image("preview.png") + , _short_description_label(_(" ")) + , _template_author_label(_(" ")) + , _template_name_label(_("no template selected")) + , _preview_image(" ") { - Gtk::Label *title = manage(new Gtk::Label(_("Selected template"))); - pack_start(*title, Gtk::PACK_SHRINK, 10); - pack_start(_template_name_label, Gtk::PACK_SHRINK, 4); + pack_start(_template_name_label, Gtk::PACK_SHRINK, 10); pack_start(_template_author_label, Gtk::PACK_SHRINK, 0); pack_start(_preview_image, Gtk::PACK_SHRINK, 15); - pack_start(_short_description_label, Gtk::PACK_SHRINK, 4); _short_description_label.set_line_wrap(true); _short_description_label.set_size_request(200); Gtk::Alignment *align; align = manage(new Gtk::Alignment(Gtk::ALIGN_END, Gtk::ALIGN_CENTER, 0.0, 0.0)); - pack_start(*align, Gtk::PACK_SHRINK, 5); + pack_end(*align, Gtk::PACK_SHRINK); align->add(_more_info_button); + pack_end(_short_description_label, Gtk::PACK_SHRINK, 5); + _more_info_button.signal_pressed().connect( sigc::mem_fun(*this, &TemplateWidget::_displayTemplateDetails)); } -- cgit v1.2.3 From c454f042b5643bfc4dad896d5069e4f7a9af002e Mon Sep 17 00:00:00 2001 From: Krzysztof Kosi??ski Date: Wed, 24 Jul 2013 23:55:57 +0200 Subject: Remove mentions of DialogScript verb from keybinding files (bzr r12437) --- share/keys/default.xml | 1 - share/keys/inkscape.xml | 1 - share/keys/macromedia-freehand-mx.xml | 1 - share/keys/right-handed-illustration.xml | 1 - share/keys/xara.xml | 1 - 5 files changed, 5 deletions(-) diff --git a/share/keys/default.xml b/share/keys/default.xml index cb1273013..52bbd486c 100644 --- a/share/keys/default.xml +++ b/share/keys/default.xml @@ -627,7 +627,6 @@ override) the bindings in the main default.xml. - diff --git a/share/keys/inkscape.xml b/share/keys/inkscape.xml index cb1273013..52bbd486c 100644 --- a/share/keys/inkscape.xml +++ b/share/keys/inkscape.xml @@ -627,7 +627,6 @@ override) the bindings in the main default.xml. - diff --git a/share/keys/macromedia-freehand-mx.xml b/share/keys/macromedia-freehand-mx.xml index 9297f4d2b..60a9719b5 100644 --- a/share/keys/macromedia-freehand-mx.xml +++ b/share/keys/macromedia-freehand-mx.xml @@ -413,7 +413,6 @@ File, Edit, View, Modify, Text, Xtras, Window, Help. - diff --git a/share/keys/right-handed-illustration.xml b/share/keys/right-handed-illustration.xml index 28af163da..33125edba 100644 --- a/share/keys/right-handed-illustration.xml +++ b/share/keys/right-handed-illustration.xml @@ -530,7 +530,6 @@ Future improvements: - diff --git a/share/keys/xara.xml b/share/keys/xara.xml index 936ee1fd3..5229964ae 100644 --- a/share/keys/xara.xml +++ b/share/keys/xara.xml @@ -535,7 +535,6 @@ Hom/end keys-select minimum or maximum feather values - -- cgit v1.2.3 From a54cf666ee5f242b47305110e0eaa96bd282438b Mon Sep 17 00:00:00 2001 From: Krzysztof Kosi??ski Date: Thu, 25 Jul 2013 00:12:32 +0200 Subject: Remove the "simple SAX" parser. Replace its only use (loading of unit definitions in util/units.cpp) with Glib::Markup (bzr r12438) --- src/io/CMakeLists.txt | 2 - src/io/Makefile_insert | 2 - src/io/simple-sax.cpp | 1494 ------------------------------------------------ src/io/simple-sax.h | 97 ---- src/util/units.cpp | 213 ++----- src/util/units.h | 10 +- 6 files changed, 67 insertions(+), 1751 deletions(-) delete mode 100644 src/io/simple-sax.cpp delete mode 100644 src/io/simple-sax.h diff --git a/src/io/CMakeLists.txt b/src/io/CMakeLists.txt index 34502d3db..8f8355c03 100644 --- a/src/io/CMakeLists.txt +++ b/src/io/CMakeLists.txt @@ -7,7 +7,6 @@ set(io_SRC inkjar.cpp inkscapestream.cpp resource.cpp - simple-sax.cpp stringstream.cpp sys.cpp uristream.cpp @@ -22,7 +21,6 @@ set(io_SRC inkjar.h inkscapestream.h resource.h - simple-sax.h stringstream.h sys.h uristream.h diff --git a/src/io/Makefile_insert b/src/io/Makefile_insert index 935c0cc07..804c9575a 100644 --- a/src/io/Makefile_insert +++ b/src/io/Makefile_insert @@ -15,8 +15,6 @@ ink_common_sources += \ io/inkscapestream.h \ io/resource.cpp \ io/resource.h \ - io/simple-sax.cpp \ - io/simple-sax.h \ io/stringstream.cpp \ io/stringstream.h \ io/sys.h \ diff --git a/src/io/simple-sax.cpp b/src/io/simple-sax.cpp deleted file mode 100644 index 33e7b72bf..000000000 --- a/src/io/simple-sax.cpp +++ /dev/null @@ -1,1494 +0,0 @@ -/* - * SimpleSAX - * - * Authors: - * Jon A. Cruz - * - * Copyright (C) 2004 AUTHORS - * - * Released under GNU GPL, read the file 'COPYING' for more information - */ - -#include -#include -#include "simple-sax.h" - -namespace Inkscape { -namespace IO { - -SaxHandler::SaxHandler() -{ - memset( &sax, 0, sizeof(sax) ); - sax.startDocument = startDocument; - sax.endDocument = endDocument; - sax.startElement = startElement; - sax.endElement = endElement; - sax.characters = characters; -} - -SaxHandler::~SaxHandler() -{ -} - - -static int xmlErrorVals[] = { - XML_ERR_OK, - XML_ERR_INTERNAL_ERROR, - XML_ERR_NO_MEMORY, - XML_ERR_DOCUMENT_START, - XML_ERR_DOCUMENT_EMPTY, - XML_ERR_DOCUMENT_END, - XML_ERR_INVALID_HEX_CHARREF, - XML_ERR_INVALID_DEC_CHARREF, - XML_ERR_INVALID_CHARREF, - XML_ERR_INVALID_CHAR, - XML_ERR_CHARREF_AT_EOF, - XML_ERR_CHARREF_IN_PROLOG, - XML_ERR_CHARREF_IN_EPILOG, - XML_ERR_CHARREF_IN_DTD, - XML_ERR_ENTITYREF_AT_EOF, - XML_ERR_ENTITYREF_IN_PROLOG, - XML_ERR_ENTITYREF_IN_EPILOG, - XML_ERR_ENTITYREF_IN_DTD, - XML_ERR_PEREF_AT_EOF, - XML_ERR_PEREF_IN_PROLOG, - XML_ERR_PEREF_IN_EPILOG, - XML_ERR_PEREF_IN_INT_SUBSET, - XML_ERR_ENTITYREF_NO_NAME, - XML_ERR_ENTITYREF_SEMICOL_MISSING, - XML_ERR_PEREF_NO_NAME, - XML_ERR_PEREF_SEMICOL_MISSING, - XML_ERR_UNDECLARED_ENTITY, - XML_WAR_UNDECLARED_ENTITY, - XML_ERR_UNPARSED_ENTITY, - XML_ERR_ENTITY_IS_EXTERNAL, - XML_ERR_ENTITY_IS_PARAMETER, - XML_ERR_UNKNOWN_ENCODING, - XML_ERR_UNSUPPORTED_ENCODING, - XML_ERR_STRING_NOT_STARTED, - XML_ERR_STRING_NOT_CLOSED, - XML_ERR_NS_DECL_ERROR, - XML_ERR_ENTITY_NOT_STARTED, - XML_ERR_ENTITY_NOT_FINISHED, - XML_ERR_LT_IN_ATTRIBUTE, - XML_ERR_ATTRIBUTE_NOT_STARTED, - XML_ERR_ATTRIBUTE_NOT_FINISHED, - XML_ERR_ATTRIBUTE_WITHOUT_VALUE, - XML_ERR_ATTRIBUTE_REDEFINED, - XML_ERR_LITERAL_NOT_STARTED, - XML_ERR_LITERAL_NOT_FINISHED, - XML_ERR_COMMENT_NOT_FINISHED, - XML_ERR_PI_NOT_STARTED, - XML_ERR_PI_NOT_FINISHED, - XML_ERR_NOTATION_NOT_STARTED, - XML_ERR_NOTATION_NOT_FINISHED, - XML_ERR_ATTLIST_NOT_STARTED, - XML_ERR_ATTLIST_NOT_FINISHED, - XML_ERR_MIXED_NOT_STARTED, - XML_ERR_MIXED_NOT_FINISHED, - XML_ERR_ELEMCONTENT_NOT_STARTED, - XML_ERR_ELEMCONTENT_NOT_FINISHED, - XML_ERR_XMLDECL_NOT_STARTED, - XML_ERR_XMLDECL_NOT_FINISHED, - XML_ERR_CONDSEC_NOT_STARTED, - XML_ERR_CONDSEC_NOT_FINISHED, - XML_ERR_EXT_SUBSET_NOT_FINISHED, - XML_ERR_DOCTYPE_NOT_FINISHED, - XML_ERR_MISPLACED_CDATA_END, - XML_ERR_CDATA_NOT_FINISHED, - XML_ERR_RESERVED_XML_NAME, - XML_ERR_SPACE_REQUIRED, - XML_ERR_SEPARATOR_REQUIRED, - XML_ERR_NMTOKEN_REQUIRED, - XML_ERR_NAME_REQUIRED, - XML_ERR_PCDATA_REQUIRED, - XML_ERR_URI_REQUIRED, - XML_ERR_PUBID_REQUIRED, - XML_ERR_LT_REQUIRED, - XML_ERR_GT_REQUIRED, - XML_ERR_LTSLASH_REQUIRED, - XML_ERR_EQUAL_REQUIRED, - XML_ERR_TAG_NAME_MISMATCH, - XML_ERR_TAG_NOT_FINISHED, - XML_ERR_STANDALONE_VALUE, - XML_ERR_ENCODING_NAME, - XML_ERR_HYPHEN_IN_COMMENT, - XML_ERR_INVALID_ENCODING, - XML_ERR_EXT_ENTITY_STANDALONE, - XML_ERR_CONDSEC_INVALID, - XML_ERR_VALUE_REQUIRED, - XML_ERR_NOT_WELL_BALANCED, - XML_ERR_EXTRA_CONTENT, - XML_ERR_ENTITY_CHAR_ERROR, - XML_ERR_ENTITY_PE_INTERNAL, - XML_ERR_ENTITY_LOOP, - XML_ERR_ENTITY_BOUNDARY, - XML_ERR_INVALID_URI, - XML_ERR_URI_FRAGMENT, - XML_WAR_CATALOG_PI, - XML_ERR_NO_DTD, - XML_ERR_CONDSEC_INVALID_KEYWORD, - XML_ERR_VERSION_MISSING, - XML_WAR_UNKNOWN_VERSION, - XML_WAR_LANG_VALUE, - XML_WAR_NS_URI, - XML_WAR_NS_URI_RELATIVE, - XML_ERR_MISSING_ENCODING, - XML_NS_ERR_XML_NAMESPACE, - XML_NS_ERR_UNDEFINED_NAMESPACE, - XML_NS_ERR_QNAME, - XML_NS_ERR_ATTRIBUTE_REDEFINED, - XML_DTD_ATTRIBUTE_DEFAULT, - XML_DTD_ATTRIBUTE_REDEFINED, - XML_DTD_ATTRIBUTE_VALUE, - XML_DTD_CONTENT_ERROR, - XML_DTD_CONTENT_MODEL, - XML_DTD_CONTENT_NOT_DETERMINIST, - XML_DTD_DIFFERENT_PREFIX, - XML_DTD_ELEM_DEFAULT_NAMESPACE, - XML_DTD_ELEM_NAMESPACE, - XML_DTD_ELEM_REDEFINED, - XML_DTD_EMPTY_NOTATION, - XML_DTD_ENTITY_TYPE, - XML_DTD_ID_FIXED, - XML_DTD_ID_REDEFINED, - XML_DTD_ID_SUBSET, - XML_DTD_INVALID_CHILD, - XML_DTD_INVALID_DEFAULT, - XML_DTD_LOAD_ERROR, - XML_DTD_MISSING_ATTRIBUTE, - XML_DTD_MIXED_CORRUPT, - XML_DTD_MULTIPLE_ID, - XML_DTD_NO_DOC, - XML_DTD_NO_DTD, - XML_DTD_NO_ELEM_NAME, - XML_DTD_NO_PREFIX, - XML_DTD_NO_ROOT, - XML_DTD_NOTATION_REDEFINED, - XML_DTD_NOTATION_VALUE, - XML_DTD_NOT_EMPTY, - XML_DTD_NOT_PCDATA, - XML_DTD_NOT_STANDALONE, - XML_DTD_ROOT_NAME, - XML_DTD_STANDALONE_WHITE_SPACE, - XML_DTD_UNKNOWN_ATTRIBUTE, - XML_DTD_UNKNOWN_ELEM, - XML_DTD_UNKNOWN_ENTITY, - XML_DTD_UNKNOWN_ID, - XML_DTD_UNKNOWN_NOTATION, - XML_DTD_STANDALONE_DEFAULTED, - XML_DTD_XMLID_VALUE, - XML_DTD_XMLID_TYPE, - XML_HTML_STRUCURE_ERROR, - XML_HTML_UNKNOWN_TAG, - XML_RNGP_ANYNAME_ATTR_ANCESTOR, - XML_RNGP_ATTR_CONFLICT, - XML_RNGP_ATTRIBUTE_CHILDREN, - XML_RNGP_ATTRIBUTE_CONTENT, - XML_RNGP_ATTRIBUTE_EMPTY, - XML_RNGP_ATTRIBUTE_NOOP, - XML_RNGP_CHOICE_CONTENT, - XML_RNGP_CHOICE_EMPTY, - XML_RNGP_CREATE_FAILURE, - XML_RNGP_DATA_CONTENT, - XML_RNGP_DEF_CHOICE_AND_INTERLEAVE, - XML_RNGP_DEFINE_CREATE_FAILED, - XML_RNGP_DEFINE_EMPTY, - XML_RNGP_DEFINE_MISSING, - XML_RNGP_DEFINE_NAME_MISSING, - XML_RNGP_ELEM_CONTENT_EMPTY, - XML_RNGP_ELEM_CONTENT_ERROR, - XML_RNGP_ELEMENT_EMPTY, - XML_RNGP_ELEMENT_CONTENT, - XML_RNGP_ELEMENT_NAME, - XML_RNGP_ELEMENT_NO_CONTENT, - XML_RNGP_ELEM_TEXT_CONFLICT, - XML_RNGP_EMPTY, - XML_RNGP_EMPTY_CONSTRUCT, - XML_RNGP_EMPTY_CONTENT, - XML_RNGP_EMPTY_NOT_EMPTY, - XML_RNGP_ERROR_TYPE_LIB, - XML_RNGP_EXCEPT_EMPTY, - XML_RNGP_EXCEPT_MISSING, - XML_RNGP_EXCEPT_MULTIPLE, - XML_RNGP_EXCEPT_NO_CONTENT, - XML_RNGP_EXTERNALREF_EMTPY, - XML_RNGP_EXTERNAL_REF_FAILURE, - XML_RNGP_EXTERNALREF_RECURSE, - XML_RNGP_FORBIDDEN_ATTRIBUTE, - XML_RNGP_FOREIGN_ELEMENT, - XML_RNGP_GRAMMAR_CONTENT, - XML_RNGP_GRAMMAR_EMPTY, - XML_RNGP_GRAMMAR_MISSING, - XML_RNGP_GRAMMAR_NO_START, - XML_RNGP_GROUP_ATTR_CONFLICT, - XML_RNGP_HREF_ERROR, - XML_RNGP_INCLUDE_EMPTY, - XML_RNGP_INCLUDE_FAILURE, - XML_RNGP_INCLUDE_RECURSE, - XML_RNGP_INTERLEAVE_ADD, - XML_RNGP_INTERLEAVE_CREATE_FAILED, - XML_RNGP_INTERLEAVE_EMPTY, - XML_RNGP_INTERLEAVE_NO_CONTENT, - XML_RNGP_INVALID_DEFINE_NAME, - XML_RNGP_INVALID_URI, - XML_RNGP_INVALID_VALUE, - XML_RNGP_MISSING_HREF, - XML_RNGP_NAME_MISSING, - XML_RNGP_NEED_COMBINE, - XML_RNGP_NOTALLOWED_NOT_EMPTY, - XML_RNGP_NSNAME_ATTR_ANCESTOR, - XML_RNGP_NSNAME_NO_NS, - XML_RNGP_PARAM_FORBIDDEN, - XML_RNGP_PARAM_NAME_MISSING, - XML_RNGP_PARENTREF_CREATE_FAILED, - XML_RNGP_PARENTREF_NAME_INVALID, - XML_RNGP_PARENTREF_NO_NAME, - XML_RNGP_PARENTREF_NO_PARENT, - XML_RNGP_PARENTREF_NOT_EMPTY, - XML_RNGP_PARSE_ERROR, - XML_RNGP_PAT_ANYNAME_EXCEPT_ANYNAME, - XML_RNGP_PAT_ATTR_ATTR, - XML_RNGP_PAT_ATTR_ELEM, - XML_RNGP_PAT_DATA_EXCEPT_ATTR, - XML_RNGP_PAT_DATA_EXCEPT_ELEM, - XML_RNGP_PAT_DATA_EXCEPT_EMPTY, - XML_RNGP_PAT_DATA_EXCEPT_GROUP, - XML_RNGP_PAT_DATA_EXCEPT_INTERLEAVE, - XML_RNGP_PAT_DATA_EXCEPT_LIST, - XML_RNGP_PAT_DATA_EXCEPT_ONEMORE, - XML_RNGP_PAT_DATA_EXCEPT_REF, - XML_RNGP_PAT_DATA_EXCEPT_TEXT, - XML_RNGP_PAT_LIST_ATTR, - XML_RNGP_PAT_LIST_ELEM, - XML_RNGP_PAT_LIST_INTERLEAVE, - XML_RNGP_PAT_LIST_LIST, - XML_RNGP_PAT_LIST_REF, - XML_RNGP_PAT_LIST_TEXT, - XML_RNGP_PAT_NSNAME_EXCEPT_ANYNAME, - XML_RNGP_PAT_NSNAME_EXCEPT_NSNAME, - XML_RNGP_PAT_ONEMORE_GROUP_ATTR, - XML_RNGP_PAT_ONEMORE_INTERLEAVE_ATTR, - XML_RNGP_PAT_START_ATTR, - XML_RNGP_PAT_START_DATA, - XML_RNGP_PAT_START_EMPTY, - XML_RNGP_PAT_START_GROUP, - XML_RNGP_PAT_START_INTERLEAVE, - XML_RNGP_PAT_START_LIST, - XML_RNGP_PAT_START_ONEMORE, - XML_RNGP_PAT_START_TEXT, - XML_RNGP_PAT_START_VALUE, - XML_RNGP_PREFIX_UNDEFINED, - XML_RNGP_REF_CREATE_FAILED, - XML_RNGP_REF_CYCLE, - XML_RNGP_REF_NAME_INVALID, - XML_RNGP_REF_NO_DEF, - XML_RNGP_REF_NO_NAME, - XML_RNGP_REF_NOT_EMPTY, - XML_RNGP_START_CHOICE_AND_INTERLEAVE, - XML_RNGP_START_CONTENT, - XML_RNGP_START_EMPTY, - XML_RNGP_START_MISSING, - XML_RNGP_TEXT_EXPECTED, - XML_RNGP_TEXT_HAS_CHILD, - XML_RNGP_TYPE_MISSING, - XML_RNGP_TYPE_NOT_FOUND, - XML_RNGP_TYPE_VALUE, - XML_RNGP_UNKNOWN_ATTRIBUTE, - XML_RNGP_UNKNOWN_COMBINE, - XML_RNGP_UNKNOWN_CONSTRUCT, - XML_RNGP_UNKNOWN_TYPE_LIB, - XML_RNGP_URI_FRAGMENT, - XML_RNGP_URI_NOT_ABSOLUTE, - XML_RNGP_VALUE_EMPTY, - XML_RNGP_VALUE_NO_CONTENT, - XML_RNGP_XMLNS_NAME, - XML_RNGP_XML_NS, - XML_XPATH_EXPRESSION_OK, - XML_XPATH_NUMBER_ERROR, - XML_XPATH_UNFINISHED_LITERAL_ERROR, - XML_XPATH_START_LITERAL_ERROR, - XML_XPATH_VARIABLE_REF_ERROR, - XML_XPATH_UNDEF_VARIABLE_ERROR, - XML_XPATH_INVALID_PREDICATE_ERROR, - XML_XPATH_EXPR_ERROR, - XML_XPATH_UNCLOSED_ERROR, - XML_XPATH_UNKNOWN_FUNC_ERROR, - XML_XPATH_INVALID_OPERAND, - XML_XPATH_INVALID_TYPE, - XML_XPATH_INVALID_ARITY, - XML_XPATH_INVALID_CTXT_SIZE, - XML_XPATH_INVALID_CTXT_POSITION, - XML_XPATH_MEMORY_ERROR, - XML_XPTR_SYNTAX_ERROR, - XML_XPTR_RESOURCE_ERROR, - XML_XPTR_SUB_RESOURCE_ERROR, - XML_XPATH_UNDEF_PREFIX_ERROR, - XML_XPATH_ENCODING_ERROR, - XML_XPATH_INVALID_CHAR_ERROR, - XML_TREE_INVALID_HEX, - XML_TREE_INVALID_DEC, - XML_TREE_UNTERMINATED_ENTITY, - XML_SAVE_NOT_UTF8, - XML_SAVE_CHAR_INVALID, - XML_SAVE_NO_DOCTYPE, - XML_SAVE_UNKNOWN_ENCODING, - XML_REGEXP_COMPILE_ERROR, - XML_IO_UNKNOWN, - XML_IO_EACCES, - XML_IO_EAGAIN, - XML_IO_EBADF, - XML_IO_EBADMSG, - XML_IO_EBUSY, - XML_IO_ECANCELED, - XML_IO_ECHILD, - XML_IO_EDEADLK, - XML_IO_EDOM, - XML_IO_EEXIST, - XML_IO_EFAULT, - XML_IO_EFBIG, - XML_IO_EINPROGRESS, - XML_IO_EINTR, - XML_IO_EINVAL, - XML_IO_EIO, - XML_IO_EISDIR, - XML_IO_EMFILE, - XML_IO_EMLINK, - XML_IO_EMSGSIZE, - XML_IO_ENAMETOOLONG, - XML_IO_ENFILE, - XML_IO_ENODEV, - XML_IO_ENOENT, - XML_IO_ENOEXEC, - XML_IO_ENOLCK, - XML_IO_ENOMEM, - XML_IO_ENOSPC, - XML_IO_ENOSYS, - XML_IO_ENOTDIR, - XML_IO_ENOTEMPTY, - XML_IO_ENOTSUP, - XML_IO_ENOTTY, - XML_IO_ENXIO, - XML_IO_EPERM, - XML_IO_EPIPE, - XML_IO_ERANGE, - XML_IO_EROFS, - XML_IO_ESPIPE, - XML_IO_ESRCH, - XML_IO_ETIMEDOUT, - XML_IO_EXDEV, - XML_IO_NETWORK_ATTEMPT, - XML_IO_ENCODER, - XML_IO_FLUSH, - XML_IO_WRITE, - XML_IO_NO_INPUT, - XML_IO_BUFFER_FULL, - XML_IO_LOAD_ERROR, - XML_IO_ENOTSOCK, - XML_IO_EISCONN, - XML_IO_ECONNREFUSED, - XML_IO_ENETUNREACH, - XML_IO_EADDRINUSE, - XML_IO_EALREADY, - XML_IO_EAFNOSUPPORT, - XML_XINCLUDE_RECURSION, - XML_XINCLUDE_PARSE_VALUE, - XML_XINCLUDE_ENTITY_DEF_MISMATCH, - XML_XINCLUDE_NO_HREF, - XML_XINCLUDE_NO_FALLBACK, - XML_XINCLUDE_HREF_URI, - XML_XINCLUDE_TEXT_FRAGMENT, - XML_XINCLUDE_TEXT_DOCUMENT, - XML_XINCLUDE_INVALID_CHAR, - XML_XINCLUDE_BUILD_FAILED, - XML_XINCLUDE_UNKNOWN_ENCODING, - XML_XINCLUDE_MULTIPLE_ROOT, - XML_XINCLUDE_XPTR_FAILED, - XML_XINCLUDE_XPTR_RESULT, - XML_XINCLUDE_INCLUDE_IN_INCLUDE, - XML_XINCLUDE_FALLBACKS_IN_INCLUDE, - XML_XINCLUDE_FALLBACK_NOT_IN_INCLUDE, - XML_XINCLUDE_DEPRECATED_NS, - XML_XINCLUDE_FRAGMENT_ID, - XML_CATALOG_MISSING_ATTR, - XML_CATALOG_ENTRY_BROKEN, - XML_CATALOG_PREFER_VALUE, - XML_CATALOG_NOT_CATALOG, - XML_CATALOG_RECURSION, - XML_SCHEMAP_PREFIX_UNDEFINED, - XML_SCHEMAP_ATTRFORMDEFAULT_VALUE, - XML_SCHEMAP_ATTRGRP_NONAME_NOREF, - XML_SCHEMAP_ATTR_NONAME_NOREF, - XML_SCHEMAP_COMPLEXTYPE_NONAME_NOREF, - XML_SCHEMAP_ELEMFORMDEFAULT_VALUE, - XML_SCHEMAP_ELEM_NONAME_NOREF, - XML_SCHEMAP_EXTENSION_NO_BASE, - XML_SCHEMAP_FACET_NO_VALUE, - XML_SCHEMAP_FAILED_BUILD_IMPORT, - XML_SCHEMAP_GROUP_NONAME_NOREF, - XML_SCHEMAP_IMPORT_NAMESPACE_NOT_URI, - XML_SCHEMAP_IMPORT_REDEFINE_NSNAME, - XML_SCHEMAP_IMPORT_SCHEMA_NOT_URI, - XML_SCHEMAP_INVALID_BOOLEAN, - XML_SCHEMAP_INVALID_ENUM, - XML_SCHEMAP_INVALID_FACET, - XML_SCHEMAP_INVALID_FACET_VALUE, - XML_SCHEMAP_INVALID_MAXOCCURS, - XML_SCHEMAP_INVALID_MINOCCURS, - XML_SCHEMAP_INVALID_REF_AND_SUBTYPE, - XML_SCHEMAP_INVALID_WHITE_SPACE, - XML_SCHEMAP_NOATTR_NOREF, - XML_SCHEMAP_NOTATION_NO_NAME, - XML_SCHEMAP_NOTYPE_NOREF, - XML_SCHEMAP_REF_AND_SUBTYPE, - XML_SCHEMAP_RESTRICTION_NONAME_NOREF, - XML_SCHEMAP_SIMPLETYPE_NONAME, - XML_SCHEMAP_TYPE_AND_SUBTYPE, - XML_SCHEMAP_UNKNOWN_ALL_CHILD, - XML_SCHEMAP_UNKNOWN_ANYATTRIBUTE_CHILD, - XML_SCHEMAP_UNKNOWN_ATTR_CHILD, - XML_SCHEMAP_UNKNOWN_ATTRGRP_CHILD, - XML_SCHEMAP_UNKNOWN_ATTRIBUTE_GROUP, - XML_SCHEMAP_UNKNOWN_BASE_TYPE, - XML_SCHEMAP_UNKNOWN_CHOICE_CHILD, - XML_SCHEMAP_UNKNOWN_COMPLEXCONTENT_CHILD, - XML_SCHEMAP_UNKNOWN_COMPLEXTYPE_CHILD, - XML_SCHEMAP_UNKNOWN_ELEM_CHILD, - XML_SCHEMAP_UNKNOWN_EXTENSION_CHILD, - XML_SCHEMAP_UNKNOWN_FACET_CHILD, - XML_SCHEMAP_UNKNOWN_FACET_TYPE, - XML_SCHEMAP_UNKNOWN_GROUP_CHILD, - XML_SCHEMAP_UNKNOWN_IMPORT_CHILD, - XML_SCHEMAP_UNKNOWN_LIST_CHILD, - XML_SCHEMAP_UNKNOWN_NOTATION_CHILD, - XML_SCHEMAP_UNKNOWN_PROCESSCONTENT_CHILD, - XML_SCHEMAP_UNKNOWN_REF, - XML_SCHEMAP_UNKNOWN_RESTRICTION_CHILD, - XML_SCHEMAP_UNKNOWN_SCHEMAS_CHILD, - XML_SCHEMAP_UNKNOWN_SEQUENCE_CHILD, - XML_SCHEMAP_UNKNOWN_SIMPLECONTENT_CHILD, - XML_SCHEMAP_UNKNOWN_SIMPLETYPE_CHILD, - XML_SCHEMAP_UNKNOWN_TYPE, - XML_SCHEMAP_UNKNOWN_UNION_CHILD, - XML_SCHEMAP_ELEM_DEFAULT_FIXED, - XML_SCHEMAP_REGEXP_INVALID, - XML_SCHEMAP_FAILED_LOAD, - XML_SCHEMAP_NOTHING_TO_PARSE, - XML_SCHEMAP_NOROOT, - XML_SCHEMAP_REDEFINED_GROUP, - XML_SCHEMAP_REDEFINED_TYPE, - XML_SCHEMAP_REDEFINED_ELEMENT, - XML_SCHEMAP_REDEFINED_ATTRGROUP, - XML_SCHEMAP_REDEFINED_ATTR, - XML_SCHEMAP_REDEFINED_NOTATION, - XML_SCHEMAP_FAILED_PARSE, - XML_SCHEMAP_UNKNOWN_PREFIX, - XML_SCHEMAP_DEF_AND_PREFIX, - XML_SCHEMAP_UNKNOWN_INCLUDE_CHILD, - XML_SCHEMAP_INCLUDE_SCHEMA_NOT_URI, - XML_SCHEMAP_INCLUDE_SCHEMA_NO_URI, - XML_SCHEMAP_NOT_SCHEMA, - XML_SCHEMAP_UNKNOWN_MEMBER_TYPE, - XML_SCHEMAP_INVALID_ATTR_USE, - XML_SCHEMAP_RECURSIVE, - XML_SCHEMAP_SUPERNUMEROUS_LIST_ITEM_TYPE, - XML_SCHEMAP_INVALID_ATTR_COMBINATION, - XML_SCHEMAP_INVALID_ATTR_INLINE_COMBINATION, - XML_SCHEMAP_MISSING_SIMPLETYPE_CHILD, - XML_SCHEMAP_INVALID_ATTR_NAME, - XML_SCHEMAP_REF_AND_CONTENT, - XML_SCHEMAP_CT_PROPS_CORRECT_1, - XML_SCHEMAP_CT_PROPS_CORRECT_2, - XML_SCHEMAP_CT_PROPS_CORRECT_3, - XML_SCHEMAP_CT_PROPS_CORRECT_4, - XML_SCHEMAP_CT_PROPS_CORRECT_5, - XML_SCHEMAP_DERIVATION_OK_RESTRICTION_1, - XML_SCHEMAP_DERIVATION_OK_RESTRICTION_2_1_1, - XML_SCHEMAP_DERIVATION_OK_RESTRICTION_2_1_2, - XML_SCHEMAP_DERIVATION_OK_RESTRICTION_2_2, - XML_SCHEMAP_DERIVATION_OK_RESTRICTION_3, - XML_SCHEMAP_WILDCARD_INVALID_NS_MEMBER, - XML_SCHEMAP_INTERSECTION_NOT_EXPRESSIBLE, - XML_SCHEMAP_UNION_NOT_EXPRESSIBLE, - XML_SCHEMAP_SRC_IMPORT_3_1, - XML_SCHEMAP_SRC_IMPORT_3_2, - XML_SCHEMAP_DERIVATION_OK_RESTRICTION_4_1, - XML_SCHEMAP_DERIVATION_OK_RESTRICTION_4_2, - XML_SCHEMAP_DERIVATION_OK_RESTRICTION_4_3, - XML_SCHEMAP_COS_CT_EXTENDS_1_3, - XML_SCHEMAV_NOROOT, - XML_SCHEMAV_UNDECLAREDELEM, - XML_SCHEMAV_NOTTOPLEVEL, - XML_SCHEMAV_MISSING, - XML_SCHEMAV_WRONGELEM, - XML_SCHEMAV_NOTYPE, - XML_SCHEMAV_NOROLLBACK, - XML_SCHEMAV_ISABSTRACT, - XML_SCHEMAV_NOTEMPTY, - XML_SCHEMAV_ELEMCONT, - XML_SCHEMAV_HAVEDEFAULT, - XML_SCHEMAV_NOTNILLABLE, - XML_SCHEMAV_EXTRACONTENT, - XML_SCHEMAV_INVALIDATTR, - XML_SCHEMAV_INVALIDELEM, - XML_SCHEMAV_NOTDETERMINIST, - XML_SCHEMAV_CONSTRUCT, - XML_SCHEMAV_INTERNAL, - XML_SCHEMAV_NOTSIMPLE, - XML_SCHEMAV_ATTRUNKNOWN, - XML_SCHEMAV_ATTRINVALID, - XML_SCHEMAV_VALUE, - XML_SCHEMAV_FACET, - XML_SCHEMAV_CVC_DATATYPE_VALID_1_2_1, - XML_SCHEMAV_CVC_DATATYPE_VALID_1_2_2, - XML_SCHEMAV_CVC_DATATYPE_VALID_1_2_3, - XML_SCHEMAV_CVC_TYPE_3_1_1, - XML_SCHEMAV_CVC_TYPE_3_1_2, - XML_SCHEMAV_CVC_FACET_VALID, - XML_SCHEMAV_CVC_LENGTH_VALID, - XML_SCHEMAV_CVC_MINLENGTH_VALID, - XML_SCHEMAV_CVC_MAXLENGTH_VALID, - XML_SCHEMAV_CVC_MININCLUSIVE_VALID, - XML_SCHEMAV_CVC_MAXINCLUSIVE_VALID, - XML_SCHEMAV_CVC_MINEXCLUSIVE_VALID, - XML_SCHEMAV_CVC_MAXEXCLUSIVE_VALID, - XML_SCHEMAV_CVC_TOTALDIGITS_VALID, - XML_SCHEMAV_CVC_FRACTIONDIGITS_VALID, - XML_SCHEMAV_CVC_PATTERN_VALID, - XML_SCHEMAV_CVC_ENUMERATION_VALID, - XML_SCHEMAV_CVC_COMPLEX_TYPE_2_1, - XML_SCHEMAV_CVC_COMPLEX_TYPE_2_2, - XML_SCHEMAV_CVC_COMPLEX_TYPE_2_3, - XML_SCHEMAV_CVC_COMPLEX_TYPE_2_4, - -#if defined XML_SCHEMAV_CVC_ELT_1 - XML_SCHEMAV_CVC_ELT_1, - XML_SCHEMAV_CVC_ELT_2, - XML_SCHEMAV_CVC_ELT_3_1, - XML_SCHEMAV_CVC_ELT_3_2_1, - XML_SCHEMAV_CVC_ELT_3_2_2, - XML_SCHEMAV_CVC_ELT_4_1, - XML_SCHEMAV_CVC_ELT_4_2, - XML_SCHEMAV_CVC_ELT_4_3, - XML_SCHEMAV_CVC_ELT_5_1_1, - XML_SCHEMAV_CVC_ELT_5_1_2, - XML_SCHEMAV_CVC_ELT_5_2_1, - XML_SCHEMAV_CVC_ELT_5_2_2_1, - XML_SCHEMAV_CVC_ELT_5_2_2_2_1, - XML_SCHEMAV_CVC_ELT_5_2_2_2_2, - XML_SCHEMAV_CVC_ELT_6, - XML_SCHEMAV_CVC_ELT_7, - XML_SCHEMAV_CVC_ATTRIBUTE_1, - XML_SCHEMAV_CVC_ATTRIBUTE_2, - XML_SCHEMAV_CVC_ATTRIBUTE_3, - XML_SCHEMAV_CVC_ATTRIBUTE_4, - XML_SCHEMAV_CVC_COMPLEX_TYPE_3_1, - XML_SCHEMAV_CVC_COMPLEX_TYPE_3_2_1, - XML_SCHEMAV_CVC_COMPLEX_TYPE_3_2_2, - XML_SCHEMAV_CVC_COMPLEX_TYPE_4, - XML_SCHEMAV_CVC_COMPLEX_TYPE_5_1, - XML_SCHEMAV_CVC_COMPLEX_TYPE_5_2, - XML_SCHEMAV_ELEMENT_CONTENT, - XML_SCHEMAV_DOCUMENT_ELEMENT_MISSING, -#endif - -#if defined XML_SCHEMAV_CVC_COMPLEX_TYPE_1 - XML_SCHEMAV_CVC_COMPLEX_TYPE_1, - XML_SCHEMAV_CVC_AU, - XML_SCHEMAV_CVC_TYPE_1, - XML_SCHEMAV_CVC_TYPE_2, -#endif - - XML_XPTR_UNKNOWN_SCHEME, - XML_XPTR_CHILDSEQ_START, - XML_XPTR_EVAL_FAILED, - XML_XPTR_EXTRA_OBJECTS, - XML_C14N_CREATE_CTXT, - XML_C14N_REQUIRES_UTF8, - XML_C14N_CREATE_STACK, - XML_C14N_INVALID_NODE, - XML_FTP_PASV_ANSWER, - XML_FTP_EPSV_ANSWER, - XML_FTP_ACCNT, - XML_HTTP_URL_SYNTAX, - XML_HTTP_USE_IP, - XML_HTTP_UNKNOWN_HOST, - XML_SCHEMAP_SRC_SIMPLE_TYPE_1, - XML_SCHEMAP_SRC_SIMPLE_TYPE_2, - XML_SCHEMAP_SRC_SIMPLE_TYPE_3, - XML_SCHEMAP_SRC_SIMPLE_TYPE_4, - XML_SCHEMAP_SRC_RESOLVE, - XML_SCHEMAP_SRC_RESTRICTION_BASE_OR_SIMPLETYPE, - XML_SCHEMAP_SRC_LIST_ITEMTYPE_OR_SIMPLETYPE, - XML_SCHEMAP_SRC_UNION_MEMBERTYPES_OR_SIMPLETYPES, - XML_SCHEMAP_ST_PROPS_CORRECT_1, - XML_SCHEMAP_ST_PROPS_CORRECT_2, - XML_SCHEMAP_ST_PROPS_CORRECT_3, - XML_SCHEMAP_COS_ST_RESTRICTS_1_1, - XML_SCHEMAP_COS_ST_RESTRICTS_1_2, - XML_SCHEMAP_COS_ST_RESTRICTS_1_3_1, - XML_SCHEMAP_COS_ST_RESTRICTS_1_3_2, - XML_SCHEMAP_COS_ST_RESTRICTS_2_1, - XML_SCHEMAP_COS_ST_RESTRICTS_2_3_1_1, - XML_SCHEMAP_COS_ST_RESTRICTS_2_3_1_2, - XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_1, - XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_2, - XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_3, - XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_4, - XML_SCHEMAP_COS_ST_RESTRICTS_2_3_2_5, - XML_SCHEMAP_COS_ST_RESTRICTS_3_1, - XML_SCHEMAP_COS_ST_RESTRICTS_3_3_1, - XML_SCHEMAP_COS_ST_RESTRICTS_3_3_1_2, - XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_2, - XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_1, - XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_3, - XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_4, - XML_SCHEMAP_COS_ST_RESTRICTS_3_3_2_5, - XML_SCHEMAP_COS_ST_DERIVED_OK_2_1, - XML_SCHEMAP_COS_ST_DERIVED_OK_2_2, - XML_SCHEMAP_S4S_ELEM_NOT_ALLOWED, - XML_SCHEMAP_S4S_ELEM_MISSING, - XML_SCHEMAP_S4S_ATTR_NOT_ALLOWED, - XML_SCHEMAP_S4S_ATTR_MISSING, - -#if defined XML_SCHEMAP_S4S_ATTR_INVALID_VALUE - XML_SCHEMAP_S4S_ATTR_INVALID_VALUE, - XML_SCHEMAP_SRC_ELEMENT_1, - XML_SCHEMAP_SRC_ELEMENT_2_1, - XML_SCHEMAP_SRC_ELEMENT_2_2, - XML_SCHEMAP_SRC_ELEMENT_3, - XML_SCHEMAP_P_PROPS_CORRECT_1, - XML_SCHEMAP_P_PROPS_CORRECT_2_1, - XML_SCHEMAP_P_PROPS_CORRECT_2_2, - XML_SCHEMAP_E_PROPS_CORRECT_2, - XML_SCHEMAP_E_PROPS_CORRECT_3, - XML_SCHEMAP_E_PROPS_CORRECT_4, - XML_SCHEMAP_E_PROPS_CORRECT_5, - XML_SCHEMAP_E_PROPS_CORRECT_6, - XML_SCHEMAP_SRC_INCLUDE, - XML_SCHEMAP_SRC_ATTRIBUTE_1, - XML_SCHEMAP_SRC_ATTRIBUTE_2, - XML_SCHEMAP_SRC_ATTRIBUTE_3_1, - XML_SCHEMAP_SRC_ATTRIBUTE_3_2, - XML_SCHEMAP_SRC_ATTRIBUTE_4, - XML_SCHEMAP_NO_XMLNS, - XML_SCHEMAP_NO_XSI, - XML_SCHEMAP_COS_VALID_DEFAULT_1, - XML_SCHEMAP_COS_VALID_DEFAULT_2_1, - XML_SCHEMAP_COS_VALID_DEFAULT_2_2_1, - XML_SCHEMAP_COS_VALID_DEFAULT_2_2_2, - XML_SCHEMAP_CVC_SIMPLE_TYPE, - XML_SCHEMAP_COS_CT_EXTENDS_1_1, - XML_SCHEMAP_SRC_IMPORT_1_1, - XML_SCHEMAP_SRC_IMPORT_1_2, - XML_SCHEMAP_SRC_IMPORT_2, - XML_SCHEMAP_SRC_IMPORT_2_1, - XML_SCHEMAP_SRC_IMPORT_2_2, -#endif - -#if defined XML_SCHEMAP_INTERNAL - XML_SCHEMAP_INTERNAL, - XML_SCHEMAP_NOT_DETERMINISTIC, -#endif - -#if defined XML_SCHEMAP_SRC_ATTRIBUTE_GROUP_1 - XML_SCHEMAP_SRC_ATTRIBUTE_GROUP_1, - XML_SCHEMAP_SRC_ATTRIBUTE_GROUP_2, - XML_SCHEMAP_SRC_ATTRIBUTE_GROUP_3, - XML_SCHEMAP_MG_PROPS_CORRECT_1, - XML_SCHEMAP_MG_PROPS_CORRECT_2, - XML_SCHEMAP_SRC_CT_1, - XML_SCHEMAP_DERIVATION_OK_RESTRICTION_2_1_3, - XML_SCHEMAP_AU_PROPS_CORRECT_2, - XML_SCHEMAP_A_PROPS_CORRECT_2, -#endif - -1 -}; - - -static const char* xmlErrorStrs[] = { - "ERR_OK", - "ERR_INTERNAL_ERROR", - "ERR_NO_MEMORY", - "ERR_DOCUMENT_START", - "ERR_DOCUMENT_EMPTY", - "ERR_DOCUMENT_END", - "ERR_INVALID_HEX_CHARREF", - "ERR_INVALID_DEC_CHARREF", - "ERR_INVALID_CHARREF", - "ERR_INVALID_CHAR", - "ERR_CHARREF_AT_EOF", - "ERR_CHARREF_IN_PROLOG", - "ERR_CHARREF_IN_EPILOG", - "ERR_CHARREF_IN_DTD", - "ERR_ENTITYREF_AT_EOF", - "ERR_ENTITYREF_IN_PROLOG", - "ERR_ENTITYREF_IN_EPILOG", - "ERR_ENTITYREF_IN_DTD", - "ERR_PEREF_AT_EOF", - "ERR_PEREF_IN_PROLOG", - "ERR_PEREF_IN_EPILOG", - "ERR_PEREF_IN_INT_SUBSET", - "ERR_ENTITYREF_NO_NAME", - "ERR_ENTITYREF_SEMICOL_MISSING", - "ERR_PEREF_NO_NAME", - "ERR_PEREF_SEMICOL_MISSING", - "ERR_UNDECLARED_ENTITY", - "WAR_UNDECLARED_ENTITY", - "ERR_UNPARSED_ENTITY", - "ERR_ENTITY_IS_EXTERNAL", - "ERR_ENTITY_IS_PARAMETER", - "ERR_UNKNOWN_ENCODING", - "ERR_UNSUPPORTED_ENCODING", - "ERR_STRING_NOT_STARTED", - "ERR_STRING_NOT_CLOSED", - "ERR_NS_DECL_ERROR", - "ERR_ENTITY_NOT_STARTED", - "ERR_ENTITY_NOT_FINISHED", - "ERR_LT_IN_ATTRIBUTE", - "ERR_ATTRIBUTE_NOT_STARTED", - "ERR_ATTRIBUTE_NOT_FINISHED", - "ERR_ATTRIBUTE_WITHOUT_VALUE", - "ERR_ATTRIBUTE_REDEFINED", - "ERR_LITERAL_NOT_STARTED", - "ERR_LITERAL_NOT_FINISHED", - "ERR_COMMENT_NOT_FINISHED", - "ERR_PI_NOT_STARTED", - "ERR_PI_NOT_FINISHED", - "ERR_NOTATION_NOT_STARTED", - "ERR_NOTATION_NOT_FINISHED", - "ERR_ATTLIST_NOT_STARTED", - "ERR_ATTLIST_NOT_FINISHED", - "ERR_MIXED_NOT_STARTED", - "ERR_MIXED_NOT_FINISHED", - "ERR_ELEMCONTENT_NOT_STARTED", - "ERR_ELEMCONTENT_NOT_FINISHED", - "ERR_XMLDECL_NOT_STARTED", - "ERR_XMLDECL_NOT_FINISHED", - "ERR_CONDSEC_NOT_STARTED", - "ERR_CONDSEC_NOT_FINISHED", - "ERR_EXT_SUBSET_NOT_FINISHED", - "ERR_DOCTYPE_NOT_FINISHED", - "ERR_MISPLACED_CDATA_END", - "ERR_CDATA_NOT_FINISHED", - "ERR_RESERVED_XML_NAME", - "ERR_SPACE_REQUIRED", - "ERR_SEPARATOR_REQUIRED", - "ERR_NMTOKEN_REQUIRED", - "ERR_NAME_REQUIRED", - "ERR_PCDATA_REQUIRED", - "ERR_URI_REQUIRED", - "ERR_PUBID_REQUIRED", - "ERR_LT_REQUIRED", - "ERR_GT_REQUIRED", - "ERR_LTSLASH_REQUIRED", - "ERR_EQUAL_REQUIRED", - "ERR_TAG_NAME_MISMATCH", - "ERR_TAG_NOT_FINISHED", - "ERR_STANDALONE_VALUE", - "ERR_ENCODING_NAME", - "ERR_HYPHEN_IN_COMMENT", - "ERR_INVALID_ENCODING", - "ERR_EXT_ENTITY_STANDALONE", - "ERR_CONDSEC_INVALID", - "ERR_VALUE_REQUIRED", - "ERR_NOT_WELL_BALANCED", - "ERR_EXTRA_CONTENT", - "ERR_ENTITY_CHAR_ERROR", - "ERR_ENTITY_PE_INTERNAL", - "ERR_ENTITY_LOOP", - "ERR_ENTITY_BOUNDARY", - "ERR_INVALID_URI", - "ERR_URI_FRAGMENT", - "WAR_CATALOG_PI", - "ERR_NO_DTD", - "ERR_CONDSEC_INVALID_KEYWORD", - "ERR_VERSION_MISSING", - "WAR_UNKNOWN_VERSION", - "WAR_LANG_VALUE", - "WAR_NS_URI", - "WAR_NS_URI_RELATIVE", - "ERR_MISSING_ENCODING", - "NS_ERR_XML_NAMESPACE", - "NS_ERR_UNDEFINED_NAMESPACE", - "NS_ERR_QNAME", - "NS_ERR_ATTRIBUTE_REDEFINED", - "DTD_ATTRIBUTE_DEFAULT", - "DTD_ATTRIBUTE_REDEFINED", - "DTD_ATTRIBUTE_VALUE", - "DTD_CONTENT_ERROR", - "DTD_CONTENT_MODEL", - "DTD_CONTENT_NOT_DETERMINIST", - "DTD_DIFFERENT_PREFIX", - "DTD_ELEM_DEFAULT_NAMESPACE", - "DTD_ELEM_NAMESPACE", - "DTD_ELEM_REDEFINED", - "DTD_EMPTY_NOTATION", - "DTD_ENTITY_TYPE", - "DTD_ID_FIXED", - "DTD_ID_REDEFINED", - "DTD_ID_SUBSET", - "DTD_INVALID_CHILD", - "DTD_INVALID_DEFAULT", - "DTD_LOAD_ERROR", - "DTD_MISSING_ATTRIBUTE", - "DTD_MIXED_CORRUPT", - "DTD_MULTIPLE_ID", - "DTD_NO_DOC", - "DTD_NO_DTD", - "DTD_NO_ELEM_NAME", - "DTD_NO_PREFIX", - "DTD_NO_ROOT", - "DTD_NOTATION_REDEFINED", - "DTD_NOTATION_VALUE", - "DTD_NOT_EMPTY", - "DTD_NOT_PCDATA", - "DTD_NOT_STANDALONE", - "DTD_ROOT_NAME", - "DTD_STANDALONE_WHITE_SPACE", - "DTD_UNKNOWN_ATTRIBUTE", - "DTD_UNKNOWN_ELEM", - "DTD_UNKNOWN_ENTITY", - "DTD_UNKNOWN_ID", - "DTD_UNKNOWN_NOTATION", - "DTD_STANDALONE_DEFAULTED", - "DTD_XMLID_VALUE", - "DTD_XMLID_TYPE", - "HTML_STRUCURE_ERROR", - "HTML_UNKNOWN_TAG", - "RNGP_ANYNAME_ATTR_ANCESTOR", - "RNGP_ATTR_CONFLICT", - "RNGP_ATTRIBUTE_CHILDREN", - "RNGP_ATTRIBUTE_CONTENT", - "RNGP_ATTRIBUTE_EMPTY", - "RNGP_ATTRIBUTE_NOOP", - "RNGP_CHOICE_CONTENT", - "RNGP_CHOICE_EMPTY", - "RNGP_CREATE_FAILURE", - "RNGP_DATA_CONTENT", - "RNGP_DEF_CHOICE_AND_INTERLEAVE", - "RNGP_DEFINE_CREATE_FAILED", - "RNGP_DEFINE_EMPTY", - "RNGP_DEFINE_MISSING", - "RNGP_DEFINE_NAME_MISSING", - "RNGP_ELEM_CONTENT_EMPTY", - "RNGP_ELEM_CONTENT_ERROR", - "RNGP_ELEMENT_EMPTY", - "RNGP_ELEMENT_CONTENT", - "RNGP_ELEMENT_NAME", - "RNGP_ELEMENT_NO_CONTENT", - "RNGP_ELEM_TEXT_CONFLICT", - "RNGP_EMPTY", - "RNGP_EMPTY_CONSTRUCT", - "RNGP_EMPTY_CONTENT", - "RNGP_EMPTY_NOT_EMPTY", - "RNGP_ERROR_TYPE_LIB", - "RNGP_EXCEPT_EMPTY", - "RNGP_EXCEPT_MISSING", - "RNGP_EXCEPT_MULTIPLE", - "RNGP_EXCEPT_NO_CONTENT", - "RNGP_EXTERNALREF_EMTPY", - "RNGP_EXTERNAL_REF_FAILURE", - "RNGP_EXTERNALREF_RECURSE", - "RNGP_FORBIDDEN_ATTRIBUTE", - "RNGP_FOREIGN_ELEMENT", - "RNGP_GRAMMAR_CONTENT", - "RNGP_GRAMMAR_EMPTY", - "RNGP_GRAMMAR_MISSING", - "RNGP_GRAMMAR_NO_START", - "RNGP_GROUP_ATTR_CONFLICT", - "RNGP_HREF_ERROR", - "RNGP_INCLUDE_EMPTY", - "RNGP_INCLUDE_FAILURE", - "RNGP_INCLUDE_RECURSE", - "RNGP_INTERLEAVE_ADD", - "RNGP_INTERLEAVE_CREATE_FAILED", - "RNGP_INTERLEAVE_EMPTY", - "RNGP_INTERLEAVE_NO_CONTENT", - "RNGP_INVALID_DEFINE_NAME", - "RNGP_INVALID_URI", - "RNGP_INVALID_VALUE", - "RNGP_MISSING_HREF", - "RNGP_NAME_MISSING", - "RNGP_NEED_COMBINE", - "RNGP_NOTALLOWED_NOT_EMPTY", - "RNGP_NSNAME_ATTR_ANCESTOR", - "RNGP_NSNAME_NO_NS", - "RNGP_PARAM_FORBIDDEN", - "RNGP_PARAM_NAME_MISSING", - "RNGP_PARENTREF_CREATE_FAILED", - "RNGP_PARENTREF_NAME_INVALID", - "RNGP_PARENTREF_NO_NAME", - "RNGP_PARENTREF_NO_PARENT", - "RNGP_PARENTREF_NOT_EMPTY", - "RNGP_PARSE_ERROR", - "RNGP_PAT_ANYNAME_EXCEPT_ANYNAME", - "RNGP_PAT_ATTR_ATTR", - "RNGP_PAT_ATTR_ELEM", - "RNGP_PAT_DATA_EXCEPT_ATTR", - "RNGP_PAT_DATA_EXCEPT_ELEM", - "RNGP_PAT_DATA_EXCEPT_EMPTY", - "RNGP_PAT_DATA_EXCEPT_GROUP", - "RNGP_PAT_DATA_EXCEPT_INTERLEAVE", - "RNGP_PAT_DATA_EXCEPT_LIST", - "RNGP_PAT_DATA_EXCEPT_ONEMORE", - "RNGP_PAT_DATA_EXCEPT_REF", - "RNGP_PAT_DATA_EXCEPT_TEXT", - "RNGP_PAT_LIST_ATTR", - "RNGP_PAT_LIST_ELEM", - "RNGP_PAT_LIST_INTERLEAVE", - "RNGP_PAT_LIST_LIST", - "RNGP_PAT_LIST_REF", - "RNGP_PAT_LIST_TEXT", - "RNGP_PAT_NSNAME_EXCEPT_ANYNAME", - "RNGP_PAT_NSNAME_EXCEPT_NSNAME", - "RNGP_PAT_ONEMORE_GROUP_ATTR", - "RNGP_PAT_ONEMORE_INTERLEAVE_ATTR", - "RNGP_PAT_START_ATTR", - "RNGP_PAT_START_DATA", - "RNGP_PAT_START_EMPTY", - "RNGP_PAT_START_GROUP", - "RNGP_PAT_START_INTERLEAVE", - "RNGP_PAT_START_LIST", - "RNGP_PAT_START_ONEMORE", - "RNGP_PAT_START_TEXT", - "RNGP_PAT_START_VALUE", - "RNGP_PREFIX_UNDEFINED", - "RNGP_REF_CREATE_FAILED", - "RNGP_REF_CYCLE", - "RNGP_REF_NAME_INVALID", - "RNGP_REF_NO_DEF", - "RNGP_REF_NO_NAME", - "RNGP_REF_NOT_EMPTY", - "RNGP_START_CHOICE_AND_INTERLEAVE", - "RNGP_START_CONTENT", - "RNGP_START_EMPTY", - "RNGP_START_MISSING", - "RNGP_TEXT_EXPECTED", - "RNGP_TEXT_HAS_CHILD", - "RNGP_TYPE_MISSING", - "RNGP_TYPE_NOT_FOUND", - "RNGP_TYPE_VALUE", - "RNGP_UNKNOWN_ATTRIBUTE", - "RNGP_UNKNOWN_COMBINE", - "RNGP_UNKNOWN_CONSTRUCT", - "RNGP_UNKNOWN_TYPE_LIB", - "RNGP_URI_FRAGMENT", - "RNGP_URI_NOT_ABSOLUTE", - "RNGP_VALUE_EMPTY", - "RNGP_VALUE_NO_CONTENT", - "RNGP_XMLNS_NAME", - "RNGP_XML_NS", - "XPATH_EXPRESSION_OK", - "XPATH_NUMBER_ERROR", - "XPATH_UNFINISHED_LITERAL_ERROR", - "XPATH_START_LITERAL_ERROR", - "XPATH_VARIABLE_REF_ERROR", - "XPATH_UNDEF_VARIABLE_ERROR", - "XPATH_INVALID_PREDICATE_ERROR", - "XPATH_EXPR_ERROR", - "XPATH_UNCLOSED_ERROR", - "XPATH_UNKNOWN_FUNC_ERROR", - "XPATH_INVALID_OPERAND", - "XPATH_INVALID_TYPE", - "XPATH_INVALID_ARITY", - "XPATH_INVALID_CTXT_SIZE", - "XPATH_INVALID_CTXT_POSITION", - "XPATH_MEMORY_ERROR", - "XPTR_SYNTAX_ERROR", - "XPTR_RESOURCE_ERROR", - "XPTR_SUB_RESOURCE_ERROR", - "XPATH_UNDEF_PREFIX_ERROR", - "XPATH_ENCODING_ERROR", - "XPATH_INVALID_CHAR_ERROR", - "TREE_INVALID_HEX", - "TREE_INVALID_DEC", - "TREE_UNTERMINATED_ENTITY", - "SAVE_NOT_UTF8", - "SAVE_CHAR_INVALID", - "SAVE_NO_DOCTYPE", - "SAVE_UNKNOWN_ENCODING", - "REGEXP_COMPILE_ERROR", - "IO_UNKNOWN", - "IO_EACCES", - "IO_EAGAIN", - "IO_EBADF", - "IO_EBADMSG", - "IO_EBUSY", - "IO_ECANCELED", - "IO_ECHILD", - "IO_EDEADLK", - "IO_EDOM", - "IO_EEXIST", - "IO_EFAULT", - "IO_EFBIG", - "IO_EINPROGRESS", - "IO_EINTR", - "IO_EINVAL", - "IO_EIO", - "IO_EISDIR", - "IO_EMFILE", - "IO_EMLINK", - "IO_EMSGSIZE", - "IO_ENAMETOOLONG", - "IO_ENFILE", - "IO_ENODEV", - "IO_ENOENT", - "IO_ENOEXEC", - "IO_ENOLCK", - "IO_ENOMEM", - "IO_ENOSPC", - "IO_ENOSYS", - "IO_ENOTDIR", - "IO_ENOTEMPTY", - "IO_ENOTSUP", - "IO_ENOTTY", - "IO_ENXIO", - "IO_EPERM", - "IO_EPIPE", - "IO_ERANGE", - "IO_EROFS", - "IO_ESPIPE", - "IO_ESRCH", - "IO_ETIMEDOUT", - "IO_EXDEV", - "IO_NETWORK_ATTEMPT", - "IO_ENCODER", - "IO_FLUSH", - "IO_WRITE", - "IO_NO_INPUT", - "IO_BUFFER_FULL", - "IO_LOAD_ERROR", - "IO_ENOTSOCK", - "IO_EISCONN", - "IO_ECONNREFUSED", - "IO_ENETUNREACH", - "IO_EADDRINUSE", - "IO_EALREADY", - "IO_EAFNOSUPPORT", - "XINCLUDE_RECURSION", - "XINCLUDE_PARSE_VALUE", - "XINCLUDE_ENTITY_DEF_MISMATCH", - "XINCLUDE_NO_HREF", - "XINCLUDE_NO_FALLBACK", - "XINCLUDE_HREF_URI", - "XINCLUDE_TEXT_FRAGMENT", - "XINCLUDE_TEXT_DOCUMENT", - "XINCLUDE_INVALID_CHAR", - "XINCLUDE_BUILD_FAILED", - "XINCLUDE_UNKNOWN_ENCODING", - "XINCLUDE_MULTIPLE_ROOT", - "XINCLUDE_XPTR_FAILED", - "XINCLUDE_XPTR_RESULT", - "XINCLUDE_INCLUDE_IN_INCLUDE", - "XINCLUDE_FALLBACKS_IN_INCLUDE", - "XINCLUDE_FALLBACK_NOT_IN_INCLUDE", - "XINCLUDE_DEPRECATED_NS", - "XINCLUDE_FRAGMENT_ID", - "CATALOG_MISSING_ATTR", - "CATALOG_ENTRY_BROKEN", - "CATALOG_PREFER_VALUE", - "CATALOG_NOT_CATALOG", - "CATALOG_RECURSION", - "SCHEMAP_PREFIX_UNDEFINED", - "SCHEMAP_ATTRFORMDEFAULT_VALUE", - "SCHEMAP_ATTRGRP_NONAME_NOREF", - "SCHEMAP_ATTR_NONAME_NOREF", - "SCHEMAP_COMPLEXTYPE_NONAME_NOREF", - "SCHEMAP_ELEMFORMDEFAULT_VALUE", - "SCHEMAP_ELEM_NONAME_NOREF", - "SCHEMAP_EXTENSION_NO_BASE", - "SCHEMAP_FACET_NO_VALUE", - "SCHEMAP_FAILED_BUILD_IMPORT", - "SCHEMAP_GROUP_NONAME_NOREF", - "SCHEMAP_IMPORT_NAMESPACE_NOT_URI", - "SCHEMAP_IMPORT_REDEFINE_NSNAME", - "SCHEMAP_IMPORT_SCHEMA_NOT_URI", - "SCHEMAP_INVALID_BOOLEAN", - "SCHEMAP_INVALID_ENUM", - "SCHEMAP_INVALID_FACET", - "SCHEMAP_INVALID_FACET_VALUE", - "SCHEMAP_INVALID_MAXOCCURS", - "SCHEMAP_INVALID_MINOCCURS", - "SCHEMAP_INVALID_REF_AND_SUBTYPE", - "SCHEMAP_INVALID_WHITE_SPACE", - "SCHEMAP_NOATTR_NOREF", - "SCHEMAP_NOTATION_NO_NAME", - "SCHEMAP_NOTYPE_NOREF", - "SCHEMAP_REF_AND_SUBTYPE", - "SCHEMAP_RESTRICTION_NONAME_NOREF", - "SCHEMAP_SIMPLETYPE_NONAME", - "SCHEMAP_TYPE_AND_SUBTYPE", - "SCHEMAP_UNKNOWN_ALL_CHILD", - "SCHEMAP_UNKNOWN_ANYATTRIBUTE_CHILD", - "SCHEMAP_UNKNOWN_ATTR_CHILD", - "SCHEMAP_UNKNOWN_ATTRGRP_CHILD", - "SCHEMAP_UNKNOWN_ATTRIBUTE_GROUP", - "SCHEMAP_UNKNOWN_BASE_TYPE", - "SCHEMAP_UNKNOWN_CHOICE_CHILD", - "SCHEMAP_UNKNOWN_COMPLEXCONTENT_CHILD", - "SCHEMAP_UNKNOWN_COMPLEXTYPE_CHILD", - "SCHEMAP_UNKNOWN_ELEM_CHILD", - "SCHEMAP_UNKNOWN_EXTENSION_CHILD", - "SCHEMAP_UNKNOWN_FACET_CHILD", - "SCHEMAP_UNKNOWN_FACET_TYPE", - "SCHEMAP_UNKNOWN_GROUP_CHILD", - "SCHEMAP_UNKNOWN_IMPORT_CHILD", - "SCHEMAP_UNKNOWN_LIST_CHILD", - "SCHEMAP_UNKNOWN_NOTATION_CHILD", - "SCHEMAP_UNKNOWN_PROCESSCONTENT_CHILD", - "SCHEMAP_UNKNOWN_REF", - "SCHEMAP_UNKNOWN_RESTRICTION_CHILD", - "SCHEMAP_UNKNOWN_SCHEMAS_CHILD", - "SCHEMAP_UNKNOWN_SEQUENCE_CHILD", - "SCHEMAP_UNKNOWN_SIMPLECONTENT_CHILD", - "SCHEMAP_UNKNOWN_SIMPLETYPE_CHILD", - "SCHEMAP_UNKNOWN_TYPE", - "SCHEMAP_UNKNOWN_UNION_CHILD", - "SCHEMAP_ELEM_DEFAULT_FIXED", - "SCHEMAP_REGEXP_INVALID", - "SCHEMAP_FAILED_LOAD", - "SCHEMAP_NOTHING_TO_PARSE", - "SCHEMAP_NOROOT", - "SCHEMAP_REDEFINED_GROUP", - "SCHEMAP_REDEFINED_TYPE", - "SCHEMAP_REDEFINED_ELEMENT", - "SCHEMAP_REDEFINED_ATTRGROUP", - "SCHEMAP_REDEFINED_ATTR", - "SCHEMAP_REDEFINED_NOTATION", - "SCHEMAP_FAILED_PARSE", - "SCHEMAP_UNKNOWN_PREFIX", - "SCHEMAP_DEF_AND_PREFIX", - "SCHEMAP_UNKNOWN_INCLUDE_CHILD", - "SCHEMAP_INCLUDE_SCHEMA_NOT_URI", - "SCHEMAP_INCLUDE_SCHEMA_NO_URI", - "SCHEMAP_NOT_SCHEMA", - "SCHEMAP_UNKNOWN_MEMBER_TYPE", - "SCHEMAP_INVALID_ATTR_USE", - "SCHEMAP_RECURSIVE", - "SCHEMAP_SUPERNUMEROUS_LIST_ITEM_TYPE", - "SCHEMAP_INVALID_ATTR_COMBINATION", - "SCHEMAP_INVALID_ATTR_INLINE_COMBINATION", - "SCHEMAP_MISSING_SIMPLETYPE_CHILD", - "SCHEMAP_INVALID_ATTR_NAME", - "SCHEMAP_REF_AND_CONTENT", - "SCHEMAP_CT_PROPS_CORRECT_1", - "SCHEMAP_CT_PROPS_CORRECT_2", - "SCHEMAP_CT_PROPS_CORRECT_3", - "SCHEMAP_CT_PROPS_CORRECT_4", - "SCHEMAP_CT_PROPS_CORRECT_5", - "SCHEMAP_DERIVATION_OK_RESTRICTION_1", - "SCHEMAP_DERIVATION_OK_RESTRICTION_2_1_1", - "SCHEMAP_DERIVATION_OK_RESTRICTION_2_1_2", - "SCHEMAP_DERIVATION_OK_RESTRICTION_2_2", - "SCHEMAP_DERIVATION_OK_RESTRICTION_3", - "SCHEMAP_WILDCARD_INVALID_NS_MEMBER", - "SCHEMAP_INTERSECTION_NOT_EXPRESSIBLE", - "SCHEMAP_UNION_NOT_EXPRESSIBLE", - "SCHEMAP_SRC_IMPORT_3_1", - "SCHEMAP_SRC_IMPORT_3_2", - "SCHEMAP_DERIVATION_OK_RESTRICTION_4_1", - "SCHEMAP_DERIVATION_OK_RESTRICTION_4_2", - "SCHEMAP_DERIVATION_OK_RESTRICTION_4_3", - "SCHEMAP_COS_CT_EXTENDS_1_3", - "SCHEMAV_NOROOT", - "SCHEMAV_UNDECLAREDELEM", - "SCHEMAV_NOTTOPLEVEL", - "SCHEMAV_MISSING", - "SCHEMAV_WRONGELEM", - "SCHEMAV_NOTYPE", - "SCHEMAV_NOROLLBACK", - "SCHEMAV_ISABSTRACT", - "SCHEMAV_NOTEMPTY", - "SCHEMAV_ELEMCONT", - "SCHEMAV_HAVEDEFAULT", - "SCHEMAV_NOTNILLABLE", - "SCHEMAV_EXTRACONTENT", - "SCHEMAV_INVALIDATTR", - "SCHEMAV_INVALIDELEM", - "SCHEMAV_NOTDETERMINIST", - "SCHEMAV_CONSTRUCT", - "SCHEMAV_INTERNAL", - "SCHEMAV_NOTSIMPLE", - "SCHEMAV_ATTRUNKNOWN", - "SCHEMAV_ATTRINVALID", - "SCHEMAV_VALUE", - "SCHEMAV_FACET", - "SCHEMAV_CVC_DATATYPE_VALID_1_2_1", - "SCHEMAV_CVC_DATATYPE_VALID_1_2_2", - "SCHEMAV_CVC_DATATYPE_VALID_1_2_3", - "SCHEMAV_CVC_TYPE_3_1_1", - "SCHEMAV_CVC_TYPE_3_1_2", - "SCHEMAV_CVC_FACET_VALID", - "SCHEMAV_CVC_LENGTH_VALID", - "SCHEMAV_CVC_MINLENGTH_VALID", - "SCHEMAV_CVC_MAXLENGTH_VALID", - "SCHEMAV_CVC_MININCLUSIVE_VALID", - "SCHEMAV_CVC_MAXINCLUSIVE_VALID", - "SCHEMAV_CVC_MINEXCLUSIVE_VALID", - "SCHEMAV_CVC_MAXEXCLUSIVE_VALID", - "SCHEMAV_CVC_TOTALDIGITS_VALID", - "SCHEMAV_CVC_FRACTIONDIGITS_VALID", - "SCHEMAV_CVC_PATTERN_VALID", - "SCHEMAV_CVC_ENUMERATION_VALID", - "SCHEMAV_CVC_COMPLEX_TYPE_2_1", - "SCHEMAV_CVC_COMPLEX_TYPE_2_2", - "SCHEMAV_CVC_COMPLEX_TYPE_2_3", - "SCHEMAV_CVC_COMPLEX_TYPE_2_4", - -#if defined XML_SCHEMAV_CVC_ELT_1 - "SCHEMAV_CVC_ELT_1", - "SCHEMAV_CVC_ELT_2", - "SCHEMAV_CVC_ELT_3_1", - "SCHEMAV_CVC_ELT_3_2_1", - "SCHEMAV_CVC_ELT_3_2_2", - "SCHEMAV_CVC_ELT_4_1", - "SCHEMAV_CVC_ELT_4_2", - "SCHEMAV_CVC_ELT_4_3", - "SCHEMAV_CVC_ELT_5_1_1", - "SCHEMAV_CVC_ELT_5_1_2", - "SCHEMAV_CVC_ELT_5_2_1", - "SCHEMAV_CVC_ELT_5_2_2_1", - "SCHEMAV_CVC_ELT_5_2_2_2_1", - "SCHEMAV_CVC_ELT_5_2_2_2_2", - "SCHEMAV_CVC_ELT_6", - "SCHEMAV_CVC_ELT_7", - "SCHEMAV_CVC_ATTRIBUTE_1", - "SCHEMAV_CVC_ATTRIBUTE_2", - "SCHEMAV_CVC_ATTRIBUTE_3", - "SCHEMAV_CVC_ATTRIBUTE_4", - "SCHEMAV_CVC_COMPLEX_TYPE_3_1", - "SCHEMAV_CVC_COMPLEX_TYPE_3_2_1", - "SCHEMAV_CVC_COMPLEX_TYPE_3_2_2", - "SCHEMAV_CVC_COMPLEX_TYPE_4", - "SCHEMAV_CVC_COMPLEX_TYPE_5_1", - "SCHEMAV_CVC_COMPLEX_TYPE_5_2", - "SCHEMAV_ELEMENT_CONTENT", - "SCHEMAV_DOCUMENT_ELEMENT_MISSING", -#endif - -#if defined XML_SCHEMAV_CVC_COMPLEX_TYPE_1 - "SCHEMAV_CVC_COMPLEX_TYPE_1", - "SCHEMAV_CVC_AU", - "SCHEMAV_CVC_TYPE_1", - "SCHEMAV_CVC_TYPE_2", -#endif - - "XPTR_UNKNOWN_SCHEME", - "XPTR_CHILDSEQ_START", - "XPTR_EVAL_FAILED", - "XPTR_EXTRA_OBJECTS", - "C14N_CREATE_CTXT", - "C14N_REQUIRES_UTF8", - "C14N_CREATE_STACK", - "C14N_INVALID_NODE", - "FTP_PASV_ANSWER", - "FTP_EPSV_ANSWER", - "FTP_ACCNT", - "HTTP_URL_SYNTAX", - "HTTP_USE_IP", - "HTTP_UNKNOWN_HOST", - "SCHEMAP_SRC_SIMPLE_TYPE_1", - "SCHEMAP_SRC_SIMPLE_TYPE_2", - "SCHEMAP_SRC_SIMPLE_TYPE_3", - "SCHEMAP_SRC_SIMPLE_TYPE_4", - "SCHEMAP_SRC_RESOLVE", - "SCHEMAP_SRC_RESTRICTION_BASE_OR_SIMPLETYPE", - "SCHEMAP_SRC_LIST_ITEMTYPE_OR_SIMPLETYPE", - "SCHEMAP_SRC_UNION_MEMBERTYPES_OR_SIMPLETYPES", - "SCHEMAP_ST_PROPS_CORRECT_1", - "SCHEMAP_ST_PROPS_CORRECT_2", - "SCHEMAP_ST_PROPS_CORRECT_3", - "SCHEMAP_COS_ST_RESTRICTS_1_1", - "SCHEMAP_COS_ST_RESTRICTS_1_2", - "SCHEMAP_COS_ST_RESTRICTS_1_3_1", - "SCHEMAP_COS_ST_RESTRICTS_1_3_2", - "SCHEMAP_COS_ST_RESTRICTS_2_1", - "SCHEMAP_COS_ST_RESTRICTS_2_3_1_1", - "SCHEMAP_COS_ST_RESTRICTS_2_3_1_2", - "SCHEMAP_COS_ST_RESTRICTS_2_3_2_1", - "SCHEMAP_COS_ST_RESTRICTS_2_3_2_2", - "SCHEMAP_COS_ST_RESTRICTS_2_3_2_3", - "SCHEMAP_COS_ST_RESTRICTS_2_3_2_4", - "SCHEMAP_COS_ST_RESTRICTS_2_3_2_5", - "SCHEMAP_COS_ST_RESTRICTS_3_1", - "SCHEMAP_COS_ST_RESTRICTS_3_3_1", - "SCHEMAP_COS_ST_RESTRICTS_3_3_1_2", - "SCHEMAP_COS_ST_RESTRICTS_3_3_2_2", - "SCHEMAP_COS_ST_RESTRICTS_3_3_2_1", - "SCHEMAP_COS_ST_RESTRICTS_3_3_2_3", - "SCHEMAP_COS_ST_RESTRICTS_3_3_2_4", - "SCHEMAP_COS_ST_RESTRICTS_3_3_2_5", - "SCHEMAP_COS_ST_DERIVED_OK_2_1", - "SCHEMAP_COS_ST_DERIVED_OK_2_2", - "SCHEMAP_S4S_ELEM_NOT_ALLOWED", - "SCHEMAP_S4S_ELEM_MISSING", - "SCHEMAP_S4S_ATTR_NOT_ALLOWED", - "SCHEMAP_S4S_ATTR_MISSING", - -#if defined XML_SCHEMAP_S4S_ATTR_INVALID_VALUE - "SCHEMAP_S4S_ATTR_INVALID_VALUE", - "SCHEMAP_SRC_ELEMENT_1", - "SCHEMAP_SRC_ELEMENT_2_1", - "SCHEMAP_SRC_ELEMENT_2_2", - "SCHEMAP_SRC_ELEMENT_3", - "SCHEMAP_P_PROPS_CORRECT_1", - "SCHEMAP_P_PROPS_CORRECT_2_1", - "SCHEMAP_P_PROPS_CORRECT_2_2", - "SCHEMAP_E_PROPS_CORRECT_2", - "SCHEMAP_E_PROPS_CORRECT_3", - "SCHEMAP_E_PROPS_CORRECT_4", - "SCHEMAP_E_PROPS_CORRECT_5", - "SCHEMAP_E_PROPS_CORRECT_6", - "SCHEMAP_SRC_INCLUDE", - "SCHEMAP_SRC_ATTRIBUTE_1", - "SCHEMAP_SRC_ATTRIBUTE_2", - "SCHEMAP_SRC_ATTRIBUTE_3_1", - "SCHEMAP_SRC_ATTRIBUTE_3_2", - "SCHEMAP_SRC_ATTRIBUTE_4", - "SCHEMAP_NO_XMLNS", - "SCHEMAP_NO_XSI", - "SCHEMAP_COS_VALID_DEFAULT_1", - "SCHEMAP_COS_VALID_DEFAULT_2_1", - "SCHEMAP_COS_VALID_DEFAULT_2_2_1", - "SCHEMAP_COS_VALID_DEFAULT_2_2_2", - "SCHEMAP_CVC_SIMPLE_TYPE", - "SCHEMAP_COS_CT_EXTENDS_1_1", - "SCHEMAP_SRC_IMPORT_1_1", - "SCHEMAP_SRC_IMPORT_1_2", - "SCHEMAP_SRC_IMPORT_2", - "SCHEMAP_SRC_IMPORT_2_1", - "SCHEMAP_SRC_IMPORT_2_2", -#endif - -#if defined XML_SCHEMAP_INTERNAL - "SCHEMAP_INTERNAL", - "SCHEMAP_NOT_DETERMINISTIC", -#endif - -#if defined XML_SCHEMAP_SRC_ATTRIBUTE_GROUP_1 - "SCHEMAP_SRC_ATTRIBUTE_GROUP_1", - "SCHEMAP_SRC_ATTRIBUTE_GROUP_2", - "SCHEMAP_SRC_ATTRIBUTE_GROUP_3", - "SCHEMAP_MG_PROPS_CORRECT_1", - "SCHEMAP_MG_PROPS_CORRECT_2", - "SCHEMAP_SRC_CT_1", - "SCHEMAP_DERIVATION_OK_RESTRICTION_2_1_3", - "SCHEMAP_AU_PROPS_CORRECT_2", - "SCHEMAP_A_PROPS_CORRECT_2", -#endif - NULL -}; - -const char* SaxHandler::errToStr( int errVal ) -{ - const char* str = NULL; - int index = 0; - while ( errVal != xmlErrorVals[index] && xmlErrorVals[index] >= 0 ) - { - index++; - } - - if ( errVal == xmlErrorVals[index] ) - { - str = xmlErrorStrs[index]; - } - - return str; -} - - -int SaxHandler::parseMemory( const char* buffer, int size ) -{ - int result = xmlSAXUserParseMemory( &sax, - this, - buffer, - size ); - return result; -} - -int SaxHandler::parseFile( const char* filename ) -{ - int result = xmlSAXUserParseFile( &sax, - this, - filename ); - return result; -} - -void SaxHandler::startDocument(void *user_data) -{ - SaxHandler* self = reinterpret_cast(user_data); - self->_startDocument(); -} - -void SaxHandler::endDocument(void *user_data) -{ - SaxHandler* self = reinterpret_cast(user_data); - self->_endDocument(); -} -void SaxHandler::startElement(void *user_data, - const xmlChar *name, - const xmlChar **attrs) -{ - SaxHandler* self = reinterpret_cast(user_data); - self->_startElement(name, attrs); -} -void SaxHandler::endElement(void *user_data, - const xmlChar *name) -{ - SaxHandler* self = reinterpret_cast(user_data); - self->_endElement(name); -} -void SaxHandler::characters(void *user_data, - const xmlChar *ch, - int len) -{ - SaxHandler* self = reinterpret_cast(user_data); - self->_characters(ch, len); -} - - - - - - - -FlatSaxHandler::FlatSaxHandler() - : SaxHandler() -{ -} - -FlatSaxHandler::~FlatSaxHandler() -{ -} - -void FlatSaxHandler::_startElement(const xmlChar */*name*/, const xmlChar **/*attrs*/) -{ - data.clear(); -} - -void FlatSaxHandler::_endElement(const xmlChar */*name*/) -{ - //g_message("<%s>%s", name, data.c_str(), name); - data.clear(); -} - -void FlatSaxHandler::_characters(const xmlChar *ch, int len) -{ - data.append((const char*)ch, len); -} - - -} // namespace IO -} // namespace Inkscape - -/* - Local Variables: - mode:c++ - c-file-style:"stroustrup" - c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +)) - indent-tabs-mode:nil - fill-column:99 - End: -*/ -// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 : diff --git a/src/io/simple-sax.h b/src/io/simple-sax.h deleted file mode 100644 index 17c571e19..000000000 --- a/src/io/simple-sax.h +++ /dev/null @@ -1,97 +0,0 @@ -#ifndef SEEN_SIMPLE_SAX_H -#define SEEN_SIMPLE_SAX_H - -/* - * SimpleSAX - * - * Authors: - * Jon A. Cruz - * - * Copyright (C) 2004 AUTHORS - * - * Released under GNU GPL, read the file 'COPYING' for more information - */ - -#include -#include - -namespace Inkscape { -namespace IO -{ - -class SaxHandler -{ -public: - SaxHandler(); - virtual ~SaxHandler(); - - int parseMemory( const char* buffer, int size ); - int parseFile( const char* filename ); - - static const char* errToStr( int errVal ); - -protected: - virtual void _startDocument() {} - virtual void _endDocument() {} - virtual void _startElement(const xmlChar */*name*/, const xmlChar **/*attrs*/) {} - virtual void _endElement(const xmlChar */*name*/) {} - virtual void _characters(const xmlChar */*ch*/, int /*len*/) {} - -private: - static void startDocument(void *user_data); - static void endDocument(void *user_data); - static void startElement(void *user_data, - const xmlChar *name, - const xmlChar **attrs); - static void endElement(void *user_data, - const xmlChar *name); - static void characters(void * user_data, - const xmlChar *ch, - int len); - - // Disable: - SaxHandler(SaxHandler const &); - SaxHandler &operator=(SaxHandler const &); - - xmlSAXHandler sax; -}; - - - -class FlatSaxHandler : public SaxHandler -{ -public: - FlatSaxHandler(); - virtual ~FlatSaxHandler(); - -protected: - virtual void _startElement(const xmlChar *name, const xmlChar **attrs); - virtual void _endElement(const xmlChar *name); - virtual void _characters(const xmlChar *ch, int len); - - Glib::ustring data; - -private: - // Disable: - FlatSaxHandler(FlatSaxHandler const &); - FlatSaxHandler &operator=(FlatSaxHandler const &); -}; - - - -} // namespace IO -} // namespace Inkscape - - -/* - Local Variables: - mode:c++ - c-file-style:"stroustrup" - c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +)) - indent-tabs-mode:nil - fill-column:99 - End: -*/ -// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4 : - -#endif // SEEN_SIMPLE_SAX_H diff --git a/src/util/units.cpp b/src/util/units.cpp index d1275b082..757d05ffe 100644 --- a/src/util/units.cpp +++ b/src/util/units.cpp @@ -5,8 +5,9 @@ #include #include #include +#include +#include -#include "io/simple-sax.h" #include "util/units.h" #include "path-prefix.h" #include "streq.h" @@ -47,27 +48,33 @@ std::map &getTypeMappings() namespace Inkscape { namespace Util { -class UnitsSAXHandler : public Inkscape::IO::FlatSaxHandler +class UnitParser : public Glib::Markup::Parser { public: - UnitsSAXHandler(UnitTable *table); - virtual ~UnitsSAXHandler() {} + typedef Glib::Markup::Parser::AttributeMap AttrMap; + typedef Glib::Markup::ParseContext Ctx; - virtual void _startElement(xmlChar const *name, xmlChar const **attrs); - virtual void _endElement(xmlChar const *name); + UnitParser(UnitTable *table); + virtual ~UnitParser() {} +protected: + virtual void on_start_element(Ctx &ctx, Glib::ustring const &name, AttrMap const &attrs); + virtual void on_end_element(Ctx &ctx, Glib::ustring const &name); + virtual void on_text(Ctx &ctx, Glib::ustring const &text); + + Glib::ustring _current_element; + +public: UnitTable *tbl; bool primary; bool skip; Unit unit; }; -UnitsSAXHandler::UnitsSAXHandler(UnitTable *table) : - FlatSaxHandler(), +UnitParser::UnitParser(UnitTable *table) : tbl(table), - primary(0), - skip(0), - unit() + primary(false), + skip(false) { } @@ -115,10 +122,8 @@ int Unit::defaultDigits() const { UnitTable::UnitTable() { - // if we swich to the xml file, don't forget to force locale to 'C' - // load("share/ui/units.xml"); // <-- Buggy - gchar *filename = g_build_filename(INKSCAPE_UIDIR, "units.txt", NULL); - loadText(filename); + gchar *filename = g_build_filename(INKSCAPE_UIDIR, "units.xml", NULL); + load(filename); g_free(filename); } @@ -183,165 +188,73 @@ Glib::ustring UnitTable::primary(UnitType type) const return _primary_unit[type]; } -bool UnitTable::loadText(Glib::ustring const &filename) -{ - char buf[BUFSIZE] = {0}; - - // Open file for reading - FILE * f = fopen(filename.c_str(), "r"); - if (f == NULL) { - g_warning("Could not open units file '%s': %s\n", - filename.c_str(), strerror(errno)); - g_warning("* INKSCAPE_DATADIR is: '%s'\n", INKSCAPE_DATADIR); - g_warning("* INKSCAPE_UIDIR is: '%s'\n", INKSCAPE_UIDIR); - return false; - } - - /** @todo fix this to use C++ means and explicit locale to avoid need to change. */ - // bypass current locale in order to make - // sscanf read floats with '.' as a separator - // set locale to 'C' and keep old locale - char *old_locale = g_strdup(setlocale(LC_NUMERIC, NULL)); - setlocale (LC_NUMERIC, "C"); - - while (fgets(buf, BUFSIZE, f) != NULL) { - char name[BUFSIZE] = {0}; - char plural[BUFSIZE] = {0}; - char abbr[BUFSIZE] = {0}; - char type[BUFSIZE] = {0}; - double factor = 0.0; - char primary[BUFSIZE] = {0}; - - int nchars = 0; - // locale is set to C, scanning %lf should work _everywhere_ - /** @todo address %15n, which causes a warning: */ - if (sscanf(buf, "%15s %15s %15s %15s %8lf %1s %15n", - name, plural, abbr, type, &factor, primary, &nchars) != 6) - { - // Skip the line - doesn't appear to be valid - continue; - } - - g_assert(nchars < BUFSIZE); - - char *desc = buf; - desc += nchars; // buf is now only the description - - // insert into _unit_map - if (getTypeMappings().find(type) == getTypeMappings().end()) - { - g_warning("Skipping unknown unit type '%s' for %s.\n", type, name); - continue; - } - UnitType utype = getTypeMappings()[type]; - - Unit u(utype, factor, name, plural, abbr, desc); - - // if primary is 'Y', list this unit as a primary - addUnit(u, (primary[0]=='Y' || primary[0]=='y')); - } - - // set back the saved locale - setlocale (LC_NUMERIC, old_locale); - g_free (old_locale); - - // close file - if (fclose(f) != 0) { - g_warning("Error closing units file '%s': %s\n", filename.c_str(), strerror(errno)); - return false; - } - - return true; -} - -bool UnitTable::load(Glib::ustring const &filename) { - UnitsSAXHandler handler(this); +bool UnitTable::load(std::string const &filename) { + UnitParser uparser(this); + Glib::Markup::ParseContext ctx(uparser); - int result = handler.parseFile( filename.c_str() ); - if ( result != 0 ) { - // perhaps - g_warning("Problem loading units file '%s': %d\n", filename.c_str(), result); + try { + Glib::ustring unitfile = Glib::file_get_contents(filename); + ctx.parse(unitfile); + ctx.end_parse(); + } catch (Glib::MarkupError const &e) { + g_warning("Problem loading units file '%s': %s\n", filename.c_str(), e.what().c_str()); return false; } - return true; } -bool UnitTable::save(Glib::ustring const &filename) { - - // open file for writing - FILE *f = fopen(filename.c_str(), "w"); - if (f == NULL) { - g_warning("Could not open units file '%s': %s\n", filename.c_str(), strerror(errno)); - return false; - } +bool UnitTable::save(std::string const &filename) { - // write out header - // foreach item in _unit_map, sorted alphabetically by type and then unit name - // sprintf a line - // name - // name_plural - // abbr - // type - // factor - // PRI - if listed in primary unit table, 'Y', else 'N' - // description - // write line to the file - - // close file - if (fclose(f) != 0) { - g_warning("Error closing units file '%s': %s\n", filename.c_str(), strerror(errno)); - return false; - } + g_warning("UnitTable::save(): not implemented"); return true; } - -void UnitsSAXHandler::_startElement(xmlChar const *name, xmlChar const **attrs) +void UnitParser::on_start_element(Ctx &ctx, Glib::ustring const &name, AttrMap const &attrs) { - if (streq("unit", (char const *)name)) { + _current_element = name; + if (name == "unit") { // reset for next use unit.clear(); primary = false; skip = false; - for ( int i = 0; attrs[i]; i += 2 ) { - char const *const key = (char const *)attrs[i]; - if (streq("type", key)) { - char const *type = (char const*)attrs[i+1]; - if (getTypeMappings().find(type) != getTypeMappings().end()) - { - unit.type = getTypeMappings()[type]; - } else { - g_warning("Skipping unknown unit type '%s' for %s.\n", type, name); - skip = true; - } - } else if (streq("pri", key)) { - primary = attrs[i+1][0] == 'y' || attrs[i+1][0] == 'Y'; + AttrMap::const_iterator f; + if ((f = attrs.find("type")) != attrs.end()) { + Glib::ustring type = f->second; + if (getTypeMappings().find(type) != getTypeMappings().end()) { + unit.type = getTypeMappings()[type]; + } else { + g_warning("Skipping unknown unit type '%s'.\n", type.c_str()); + skip = true; } } + if ((f = attrs.find("pri")) != attrs.end()) { + primary = (f->second[0] == 'y' || f->second[0] == 'Y'); + } } } -void UnitsSAXHandler::_endElement(xmlChar const *xname) +void UnitParser::on_text(Ctx &ctx, Glib::ustring const &text) { - char const *const name = (char const *) xname; - if (streq("name", name)) { - unit.name = data; - } else if (streq("plural", name)) { - unit.name_plural = data; - } else if (streq("abbr", name)) { - unit.abbr = data; - } else if (streq("factor", name)) { + if (_current_element == "name") { + unit.name = text; + } else if (_current_element == "plural") { + unit.name_plural = text; + } else if (_current_element == "abbr") { + unit.abbr = text; + } else if (_current_element == "factor") { // TODO make sure we use the right conversion - unit.factor = atol(data.c_str()); - } else if (streq("description", name)) { - unit.description = data; - } else if (streq("unit", name)) { - if (!skip) { - tbl->addUnit(unit, primary); - } + unit.factor = g_ascii_strtod(text.c_str(), NULL); + } else if (_current_element == "description") { + unit.description = text; + } +} + +void UnitParser::on_end_element(Ctx &ctx, Glib::ustring const &name) +{ + if (name == "unit" && !skip) { + tbl->addUnit(unit, primary); } } diff --git a/src/util/units.h b/src/util/units.h index 40c89a4a0..4b2d782e3 100644 --- a/src/util/units.h +++ b/src/util/units.h @@ -96,19 +96,17 @@ class UnitTable { void setScale(); - bool load(Glib::ustring const &filename); - - /** Loads units from a text file. + /** Load units from an XML file. * - * loadText loads and merges the contents of the given file into the UnitTable, + * Loads and merges the contents of the given file into the UnitTable, * possibly overwriting existing unit definitions. * * @param filename file to be loaded */ - bool loadText(Glib::ustring const &filename); + bool load(std::string const &filename); /** Saves the current UnitTable to the given file. */ - bool save(Glib::ustring const &filename); + bool save(std::string const &filename); protected: UnitTable::UnitMap _unit_map; -- cgit v1.2.3 From 13da86a85b5366284166ec5b0f1ae84de30de182 Mon Sep 17 00:00:00 2001 From: Krzysztof Kosi??ski Date: Thu, 25 Jul 2013 00:29:24 +0200 Subject: Remove unnecessary variable from the GMarkup-based unit parser (bzr r12439) --- src/util/units.cpp | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/src/util/units.cpp b/src/util/units.cpp index 757d05ffe..f8ebc5c1a 100644 --- a/src/util/units.cpp +++ b/src/util/units.cpp @@ -62,8 +62,6 @@ protected: virtual void on_end_element(Ctx &ctx, Glib::ustring const &name); virtual void on_text(Ctx &ctx, Glib::ustring const &text); - Glib::ustring _current_element; - public: UnitTable *tbl; bool primary; @@ -212,7 +210,6 @@ bool UnitTable::save(std::string const &filename) { void UnitParser::on_start_element(Ctx &ctx, Glib::ustring const &name, AttrMap const &attrs) { - _current_element = name; if (name == "unit") { // reset for next use unit.clear(); @@ -237,16 +234,17 @@ void UnitParser::on_start_element(Ctx &ctx, Glib::ustring const &name, AttrMap c void UnitParser::on_text(Ctx &ctx, Glib::ustring const &text) { - if (_current_element == "name") { + Glib::ustring element = ctx.get_element(); + if (element == "name") { unit.name = text; - } else if (_current_element == "plural") { + } else if (element == "plural") { unit.name_plural = text; - } else if (_current_element == "abbr") { + } else if (element == "abbr") { unit.abbr = text; - } else if (_current_element == "factor") { + } else if (element == "factor") { // TODO make sure we use the right conversion unit.factor = g_ascii_strtod(text.c_str(), NULL); - } else if (_current_element == "description") { + } else if (element == "description") { unit.description = text; } } -- cgit v1.2.3 From 6967bad3f32f3cf9e660f6009be63adf62f94058 Mon Sep 17 00:00:00 2001 From: Slagvi Public Date: Sat, 27 Jul 2013 22:14:29 +0200 Subject: Templates related bug fixes (bzr r12379.2.15) --- src/ui/dialog/template-load-tab.cpp | 10 +++++++++- src/ui/dialog/template-widget.cpp | 2 +- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/ui/dialog/template-load-tab.cpp b/src/ui/dialog/template-load-tab.cpp index 65d5e6447..d993e0233 100644 --- a/src/ui/dialog/template-load-tab.cpp +++ b/src/ui/dialog/template-load-tab.cpp @@ -191,9 +191,17 @@ TemplateLoadTab::TemplateData TemplateLoadTab::_processTemplateFile(const Glib:: { TemplateData result; result.path = path; - result.display_name = Glib::path_get_basename(path); result.is_procedural = false; + // convert path into valid template name + result.display_name = Glib::path_get_basename(path); + gsize n = 0; + while ((n = result.display_name.find_first_of("_", 0)) < Glib::ustring::npos){ + result.display_name.replace(n, 1, 1, ' '); + } + n = result.display_name.rfind(".svg"); + result.display_name.replace(n, 4, 1, ' '); + Inkscape::XML::Document *rdoc; rdoc = sp_repr_read_file(path.data(), SP_SVG_NS_URI); Inkscape::XML::Node *myRoot; diff --git a/src/ui/dialog/template-widget.cpp b/src/ui/dialog/template-widget.cpp index 56346403e..1efa790ab 100644 --- a/src/ui/dialog/template-widget.cpp +++ b/src/ui/dialog/template-widget.cpp @@ -58,7 +58,7 @@ void TemplateWidget::create() if (_current_template.is_procedural) {} else { - sp_file_new(_current_template.path); + sp_file_open(_current_template.path, NULL); } } -- cgit v1.2.3 From d11c156518710f49dc3fc8ec3408388a1a2b1ddb Mon Sep 17 00:00:00 2001 From: Slagvi Public Date: Sat, 27 Jul 2013 22:39:28 +0200 Subject: New preview rendering option in New From Template (bzr r12379.2.16) --- src/ui/dialog/template-load-tab.cpp | 1 + src/ui/dialog/template-widget.cpp | 13 ++++++++++++- src/ui/dialog/template-widget.h | 2 ++ 3 files changed, 15 insertions(+), 1 deletion(-) diff --git a/src/ui/dialog/template-load-tab.cpp b/src/ui/dialog/template-load-tab.cpp index d993e0233..ade595eaa 100644 --- a/src/ui/dialog/template-load-tab.cpp +++ b/src/ui/dialog/template-load-tab.cpp @@ -192,6 +192,7 @@ TemplateLoadTab::TemplateData TemplateLoadTab::_processTemplateFile(const Glib:: TemplateData result; result.path = path; result.is_procedural = false; + result.preview_name = ""; // convert path into valid template name result.display_name = Glib::path_get_basename(path); diff --git a/src/ui/dialog/template-widget.cpp b/src/ui/dialog/template-widget.cpp index 1efa790ab..c15d234ab 100644 --- a/src/ui/dialog/template-widget.cpp +++ b/src/ui/dialog/template-widget.cpp @@ -31,10 +31,12 @@ TemplateWidget::TemplateWidget() , _template_author_label(_(" ")) , _template_name_label(_("no template selected")) , _preview_image(" ") + , _preview_render() { pack_start(_template_name_label, Gtk::PACK_SHRINK, 10); pack_start(_template_author_label, Gtk::PACK_SHRINK, 0); pack_start(_preview_image, Gtk::PACK_SHRINK, 15); + pack_start(_preview_render, Gtk::PACK_SHRINK, 10); _short_description_label.set_line_wrap(true); _short_description_label.set_size_request(200); @@ -73,7 +75,16 @@ void TemplateWidget::display(TemplateLoadTab::TemplateData data) _short_description_label.set_text(_current_template.short_description); Glib::ustring imagePath = Glib::build_filename(Glib::path_get_dirname(_current_template.path), _current_template.preview_name); - _preview_image.set(imagePath); + if (data.preview_name != ""){ + _preview_image.set(imagePath); + _preview_image.show(); + _preview_render.hide(); + } + else{ + _preview_render.showImage(data.path); + _preview_render.show(); + _preview_image.hide(); + } } } diff --git a/src/ui/dialog/template-widget.h b/src/ui/dialog/template-widget.h index 743fb524d..b9d03415c 100644 --- a/src/ui/dialog/template-widget.h +++ b/src/ui/dialog/template-widget.h @@ -12,6 +12,7 @@ #define INKSCAPE_SEEN_UI_DIALOG_TEMPLATE_WIDGET_H #include "template-load-tab.h" +#include "filedialogimpl-gtkmm.h" #include @@ -34,6 +35,7 @@ private: Gtk::Label _template_author_label; Gtk::Label _template_name_label; Gtk::Image _preview_image; + Dialog::SVGPreview _preview_render; void _displayTemplateDetails(); }; -- cgit v1.2.3 From 2b49305a582432378732c9f26456e1ada464edbd Mon Sep 17 00:00:00 2001 From: Slagvi Public Date: Sat, 27 Jul 2013 22:51:06 +0200 Subject: Template preview size fixed (bzr r12379.2.17) --- src/ui/dialog/template-widget.cpp | 6 ++++-- src/ui/dialog/template-widget.h | 1 + 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/ui/dialog/template-widget.cpp b/src/ui/dialog/template-widget.cpp index c15d234ab..4b64c1c73 100644 --- a/src/ui/dialog/template-widget.cpp +++ b/src/ui/dialog/template-widget.cpp @@ -35,8 +35,10 @@ TemplateWidget::TemplateWidget() { pack_start(_template_name_label, Gtk::PACK_SHRINK, 10); pack_start(_template_author_label, Gtk::PACK_SHRINK, 0); - pack_start(_preview_image, Gtk::PACK_SHRINK, 15); - pack_start(_preview_render, Gtk::PACK_SHRINK, 10); + pack_start(_preview_box, Gtk::PACK_SHRINK, 0); + + _preview_box.pack_start(_preview_image, Gtk::PACK_EXPAND_PADDING, 15); + _preview_box.pack_start(_preview_render, Gtk::PACK_EXPAND_PADDING, 10); _short_description_label.set_line_wrap(true); _short_description_label.set_size_request(200); diff --git a/src/ui/dialog/template-widget.h b/src/ui/dialog/template-widget.h index b9d03415c..3c95208de 100644 --- a/src/ui/dialog/template-widget.h +++ b/src/ui/dialog/template-widget.h @@ -34,6 +34,7 @@ private: Gtk::Label _short_description_label; Gtk::Label _template_author_label; Gtk::Label _template_name_label; + Gtk::HBox _preview_box; Gtk::Image _preview_image; Dialog::SVGPreview _preview_render; -- cgit v1.2.3 From 90edb3a743ab4e9fc18ff18844cc3624433cd3fc Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Mon, 29 Jul 2013 21:47:12 -0400 Subject: Update unit extraction regular expressions. (bzr r12380.1.50) --- src/util/units.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/util/units.cpp b/src/util/units.cpp index 582c52090..342c9ff32 100644 --- a/src/util/units.cpp +++ b/src/util/units.cpp @@ -228,14 +228,14 @@ Quantity UnitTable::getQuantity(Glib::ustring const& q) const // Extract value double value = 0; - Glib::RefPtr value_regex = Glib::Regex::create("\\d+\\.?\\d"); + Glib::RefPtr value_regex = Glib::Regex::create("[-+]*[\\d+]*\\.*[\\d+]*[eE]*[-+]*\\d+"); if (value_regex->match(q, match_info)) { value = atof(match_info.fetch(0).c_str()); } // Extract unit abbreviation Glib::ustring abbr; - Glib::RefPtr unit_regex = Glib::Regex::create("[A-z]+"); + Glib::RefPtr unit_regex = Glib::Regex::create("[A-z%]+"); if (unit_regex->match(q, match_info)) { abbr = match_info.fetch(0); } -- cgit v1.2.3 From 7aab446af9e2eb34ce50c8ef0ec58710fac49396 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Mon, 29 Jul 2013 22:51:28 -0400 Subject: Cleanup. (bzr r12380.1.52) --- src/ui/CMakeLists.txt | 2 ++ src/ui/dialog/guides.cpp | 2 +- src/ui/widget/page-sizer.cpp | 4 ++-- src/util/units.cpp | 9 --------- src/util/units.h | 13 ++++++++++++- src/widgets/measure-toolbar.cpp | 5 ----- src/widgets/text-toolbar.cpp | 6 ------ 7 files changed, 17 insertions(+), 24 deletions(-) diff --git a/src/ui/CMakeLists.txt b/src/ui/CMakeLists.txt index e831bcf69..b592d2527 100644 --- a/src/ui/CMakeLists.txt +++ b/src/ui/CMakeLists.txt @@ -112,6 +112,7 @@ set(ui_SRC widget/text.cpp widget/tolerance-slider.cpp widget/unit-menu.cpp + widget/unit-tracker.cpp view/view.cpp view/view-widget.cpp @@ -240,6 +241,7 @@ set(ui_SRC widget/text.h widget/tolerance-slider.h widget/unit-menu.h + widget/unit-tracker.h view/edit-widget-interface.h view/view-widget.h diff --git a/src/ui/dialog/guides.cpp b/src/ui/dialog/guides.cpp index 9a7b19c35..2de387364 100644 --- a/src/ui/dialog/guides.cpp +++ b/src/ui/dialog/guides.cpp @@ -230,7 +230,7 @@ void GuidelinePropertiesDialog::_setup() { _unit_menu.setUnitType(UNIT_TYPE_LINEAR); _unit_menu.setUnit("px"); if (_desktop->namedview->doc_units) { - //_unit_menu.setUnit( sp_unit_get_abbreviation(_desktop->namedview->doc_units) ); + _unit_menu.setUnit( _desktop->namedview->doc_units->abbr ); } _spin_angle.setUnit(_angle_unit_status); diff --git a/src/ui/widget/page-sizer.cpp b/src/ui/widget/page-sizer.cpp index f6392cfd8..b15ab2823 100644 --- a/src/ui/widget/page-sizer.cpp +++ b/src/ui/widget/page-sizer.cpp @@ -313,9 +313,9 @@ PageSizer::PageSizer(Registry & _wr) SPNamedView *nv = sp_desktop_namedview(dt); _wr.setUpdating (true); if (nv->units) { - //_dimensionUnits.setUnit(nv->units); + _dimensionUnits.setUnit(nv->units->abbr); } else if (nv->doc_units) { - //_dimensionUnits.setUnit(nv->doc_units); + _dimensionUnits.setUnit(nv->doc_units->abbr); } _wr.setUpdating (false); diff --git a/src/util/units.cpp b/src/util/units.cpp index f40e33c67..7f60eb391 100644 --- a/src/util/units.cpp +++ b/src/util/units.cpp @@ -132,7 +132,6 @@ int Unit::defaultDigits() const return factor_digits; } -/** Checks if a unit is compatible with the specified unit. */ bool Unit::compatibleWith(const Unit &u) const { // Percentages @@ -154,19 +153,16 @@ bool Unit::compatibleWith(const Glib::ustring u) const return compatibleWith(unit_table.getUnit(u)); } -/** Check if units are equal. */ bool operator== (const Unit &u1, const Unit &u2) { return (u1.type == u2.type && u1.name.compare(u2.name) == 0); } -/** Check if units are not equal. */ bool operator!= (const Unit &u1, const Unit &u2) { return !(u1 == u2); } -/** Temporary - get SVG unit. */ int Unit::svgUnit() const { if (!abbr.compare("px")) @@ -355,7 +351,6 @@ void UnitParser::on_end_element(Ctx &ctx, Glib::ustring const &name) } } -/** Initialize a quantity. */ Quantity::Quantity(double q, const Unit &u) { unit = new Unit(u); @@ -368,7 +363,6 @@ Quantity::Quantity(double q, const Glib::ustring u) quantity = q; } -/** Checks if a quantity is compatible with the specified unit. */ bool Quantity::compatibleWith(const Unit &u) const { return unit->compatibleWith(u); @@ -379,7 +373,6 @@ bool Quantity::compatibleWith(const Glib::ustring u) const return compatibleWith(unit_table.getUnit(u)); } -/** Return the quantity's value in the specified unit. */ double Quantity::value(const Unit &u) const { return convert(quantity, *unit, u); @@ -390,7 +383,6 @@ double Quantity::value(const Glib::ustring u) const return value(unit_table.getUnit(u)); } -/** Return a printable string of the value in the specified unit. */ Glib::ustring Quantity::string(const Unit &u) const { return Glib::ustring::format(std::fixed, std::setprecision(2), value(u)) + " " + unit->abbr; } @@ -402,7 +394,6 @@ Glib::ustring Quantity::string() const { return string(*unit); } -/** Convert distances. */ double Quantity::convert(const double from_dist, const Unit &from, const Unit &to) { // Percentage diff --git a/src/util/units.h b/src/util/units.h index 79b62be60..c30fa24b3 100644 --- a/src/util/units.h +++ b/src/util/units.h @@ -65,6 +65,7 @@ class Unit { */ int defaultDigits() const; + /** Checks if a unit is compatible with the specified unit. */ bool compatibleWith(const Unit &u) const; bool compatibleWith(const Glib::ustring) const; @@ -75,10 +76,12 @@ class Unit { Glib::ustring abbr; Glib::ustring description; + /** Check if units are equal. */ friend bool operator== (const Unit &u1, const Unit &u2); + /** Check if units are not equal. */ friend bool operator!= (const Unit &u1, const Unit &u2); - // temporary + /** Get SVG unit. */ int svgUnit() const; }; @@ -87,16 +90,24 @@ public: const Unit *unit; double quantity; + /** Initialize a quantity. */ Quantity(double q, const Unit &u); // constructor Quantity(double q, const Glib::ustring u); // constructor + + /** Checks if a quantity is compatible with the specified unit. */ bool compatibleWith(const Unit &u) const; bool compatibleWith(const Glib::ustring u) const; + + /** Return the quantity's value in the specified unit. */ double value(const Unit &u) const; double value(const Glib::ustring u) const; + + /** Return a printable string of the value in the specified unit. */ Glib::ustring string(const Unit &u) const; Glib::ustring string(const Glib::ustring u) const; Glib::ustring string() const; + /** Convert distances. */ static double convert(const double from_dist, const Unit &from, const Unit &to); static double convert(const double from_dist, const Glib::ustring from, const Unit &to); static double convert(const double from_dist, const Unit &from, const Glib::ustring to); diff --git a/src/widgets/measure-toolbar.cpp b/src/widgets/measure-toolbar.cpp index d51a81457..53ed2d275 100644 --- a/src/widgets/measure-toolbar.cpp +++ b/src/widgets/measure-toolbar.cpp @@ -93,9 +93,6 @@ void sp_measure_toolbox_prep(SPDesktop * desktop, GtkActionGroup* mainActions, G Inkscape::Preferences *prefs = Inkscape::Preferences::get(); tracker->setActiveUnitByAbbr(prefs->getString("/tools/measure/unit").c_str()); - //tracker->setUnitType(UNIT_TYPE_LINEAR); - //tracker->setUnit("px"); - g_object_set_data( holder, "tracker", tracker ); EgeAdjustmentAction *eact = 0; @@ -125,10 +122,8 @@ void sp_measure_toolbox_prep(SPDesktop * desktop, GtkActionGroup* mainActions, G // units menu { GtkAction* act = tracker->createAction( "MeasureUnitsAction", _("Units:"), _("The units to be used for the measurements") ); - //EgeOutputAction* act = ege_output_action_new( "MeasureUnitsAction", _("Units:"), _("The units to be used for the measurements"), 0 ); g_signal_connect_after( G_OBJECT(act), "changed", G_CALLBACK(measure_unit_changed), holder ); gtk_action_group_add_action( mainActions, act ); - //gtk_action_group_add_action( mainActions, GTK_ACTION( act ) ); } } // end of sp_measure_toolbox_prep() diff --git a/src/widgets/text-toolbar.cpp b/src/widgets/text-toolbar.cpp index a7bd25b2c..7554f4faf 100644 --- a/src/widgets/text-toolbar.cpp +++ b/src/widgets/text-toolbar.cpp @@ -1213,12 +1213,6 @@ void sp_text_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje Inkscape::Preferences *prefs = Inkscape::Preferences::get(); Inkscape::IconSize secondarySize = ToolboxFactory::prefToSize("/toolbox/secondary", 1); - // Is this used? - /*UnitTracker* tracker = new UnitTracker( SP_UNIT_ABSOLUTE | SP_UNIT_DEVICE ); - //tracker->setActiveUnit( sp_desktop_namedview(desktop)->doc_units ); - tracker->setActiveUnit(&sp_unit_get_by_id(SP_UNIT_PX)); - g_object_set_data( holder, "tracker", tracker );*/ - /* Font family */ { // Font list -- cgit v1.2.3 From b2dd3583e7372d23d18bbc6e861f4f645ec3dc37 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Tue, 30 Jul 2013 23:17:21 +0200 Subject: Further refactoring of EventContexts. (bzr r11608.1.109) --- src/arc-context.cpp | 4 +- src/arc-context.h | 4 +- src/box3d-context.cpp | 4 +- src/box3d-context.h | 4 +- src/common-context.cpp | 164 ++++--- src/common-context.h | 11 +- src/connector-context.cpp | 6 +- src/connector-context.h | 6 +- src/desktop-handles.cpp | 14 +- src/desktop-handles.h | 2 +- src/desktop-style.cpp | 2 +- src/desktop.cpp | 67 ++- src/desktop.h | 15 + src/draw-context.cpp | 2 +- src/draw-context.h | 2 +- src/dropper-context.cpp | 2 +- src/dropper-context.h | 2 +- src/dyna-draw-context.cpp | 841 ++++++++++++++++----------------- src/dyna-draw-context.h | 30 +- src/eraser-context.cpp | 395 +++++++--------- src/eraser-context.h | 17 +- src/event-context.cpp | 46 +- src/event-context.h | 21 +- src/flood-context.cpp | 4 +- src/flood-context.h | 4 +- src/gradient-chemistry.cpp | 2 +- src/gradient-context.cpp | 6 +- src/gradient-context.h | 2 +- src/inkscape.cpp | 8 +- src/lpe-tool-context.cpp | 4 +- src/lpe-tool-context.h | 4 +- src/measure-context.cpp | 2 +- src/measure-context.h | 2 +- src/mesh-context.cpp | 6 +- src/mesh-context.h | 2 +- src/pen-context.cpp | 4 +- src/pen-context.h | 4 +- src/pencil-context.cpp | 2 +- src/pencil-context.h | 2 +- src/rect-context.cpp | 4 +- src/rect-context.h | 4 +- src/select-context.cpp | 4 +- src/select-context.h | 4 +- src/spiral-context.cpp | 2 +- src/spiral-context.h | 2 +- src/spray-context.cpp | 334 ++++++------- src/spray-context.h | 4 +- src/star-context.cpp | 53 +-- src/star-context.h | 7 +- src/text-context.cpp | 8 +- src/text-context.h | 4 +- src/tools-switch.cpp | 44 +- src/tweak-context.cpp | 4 +- src/tweak-context.h | 5 +- src/ui/dialog/align-and-distribute.cpp | 25 +- src/ui/tool/node-tool.cpp | 8 +- src/ui/tool/node-tool.h | 33 +- src/widgets/gradient-toolbar.cpp | 10 +- src/zoom-context.cpp | 35 +- src/zoom-context.h | 10 +- 60 files changed, 1147 insertions(+), 1176 deletions(-) diff --git a/src/arc-context.cpp b/src/arc-context.cpp index ade624365..827a0eb35 100644 --- a/src/arc-context.cpp +++ b/src/arc-context.cpp @@ -143,7 +143,7 @@ void SPArcContext::setup() { this->_message_context = new Inkscape::MessageContext(this->desktop->messageStack()); } -gint SPArcContext::item_handler(SPItem* item, GdkEvent* event) { +bool SPArcContext::item_handler(SPItem* item, GdkEvent* event) { gint ret = FALSE; switch (event->type) { @@ -167,7 +167,7 @@ gint SPArcContext::item_handler(SPItem* item, GdkEvent* event) { return ret; } -gint SPArcContext::root_handler(GdkEvent* event) { +bool SPArcContext::root_handler(GdkEvent* event) { static bool dragging; Inkscape::Selection *selection = sp_desktop_selection(desktop); diff --git a/src/arc-context.h b/src/arc-context.h index f544dd322..25b8762b2 100644 --- a/src/arc-context.h +++ b/src/arc-context.h @@ -35,8 +35,8 @@ public: virtual void setup(); virtual void finish(); - virtual gint root_handler(GdkEvent* event); - virtual gint item_handler(SPItem* item, GdkEvent* event); + virtual bool root_handler(GdkEvent* event); + virtual bool item_handler(SPItem* item, GdkEvent* event); virtual const std::string& getPrefsPath(); diff --git a/src/box3d-context.cpp b/src/box3d-context.cpp index 6d1a3dde4..f0bb67dcc 100644 --- a/src/box3d-context.cpp +++ b/src/box3d-context.cpp @@ -182,7 +182,7 @@ void Box3DContext::setup() { this->_message_context = new Inkscape::MessageContext(this->desktop->messageStack()); } -gint Box3DContext::item_handler(SPItem* item, GdkEvent* event) { +bool Box3DContext::item_handler(SPItem* item, GdkEvent* event) { gint ret = FALSE; switch (event->type) { @@ -206,7 +206,7 @@ gint Box3DContext::item_handler(SPItem* item, GdkEvent* event) { return ret; } -gint Box3DContext::root_handler(GdkEvent* event) { +bool Box3DContext::root_handler(GdkEvent* event) { static bool dragging; SPDocument *document = sp_desktop_document (desktop); diff --git a/src/box3d-context.h b/src/box3d-context.h index 0c7630eb4..7f910158e 100644 --- a/src/box3d-context.h +++ b/src/box3d-context.h @@ -37,8 +37,8 @@ public: virtual void setup(); virtual void finish(); - virtual gint root_handler(GdkEvent* event); - virtual gint item_handler(SPItem* item, GdkEvent* event); + virtual bool root_handler(GdkEvent* event); + virtual bool item_handler(SPItem* item, GdkEvent* event); virtual const std::string& getPrefsPath(); diff --git a/src/common-context.cpp b/src/common-context.cpp index 5ccbaaf5a..e6b82cf82 100644 --- a/src/common-context.cpp +++ b/src/common-context.cpp @@ -9,6 +9,7 @@ #include "streq.h" #include "preferences.h" #include "display/sp-canvas-item.h" +#include "desktop.h" #define MIN_PRESSURE 0.0 #define MAX_PRESSURE 1.0 @@ -19,130 +20,145 @@ #define DRAG_MAX 1.0 SPCommonContext::SPCommonContext() : SPEventContext() { - SPCommonContext* ctx = this; - - ctx->_message_context = 0; - ctx->tremor = 0; - ctx->usetilt = 0; - ctx->is_drawing = false; - ctx->xtilt = 0; - ctx->ytilt = 0; - ctx->usepressure = 0; + this->_message_context = 0; + this->tremor = 0; + this->usetilt = 0; + this->is_drawing = false; + this->xtilt = 0; + this->ytilt = 0; + this->usepressure = 0; // ctx->cursor_shape = cursor_eraser_xpm; // ctx->hot_x = 4; // ctx->hot_y = 4; - ctx->accumulated = 0; - ctx->segments = 0; - ctx->currentcurve = 0; - ctx->currentshape = 0; - ctx->npoints = 0; - ctx->cal1 = 0; - ctx->cal2 = 0; - ctx->repr = 0; + this->accumulated = 0; + this->segments = 0; + this->currentcurve = 0; + this->currentshape = 0; + this->npoints = 0; + this->cal1 = 0; + this->cal2 = 0; + this->repr = 0; /* Common values */ - ctx->cur = Geom::Point(0,0); - ctx->last = Geom::Point(0,0); - ctx->vel = Geom::Point(0,0); - ctx->vel_max = 0; - ctx->acc = Geom::Point(0,0); - ctx->ang = Geom::Point(0,0); - ctx->del = Geom::Point(0,0); + this->cur = Geom::Point(0,0); + this->last = Geom::Point(0,0); + this->vel = Geom::Point(0,0); + this->vel_max = 0; + this->acc = Geom::Point(0,0); + this->ang = Geom::Point(0,0); + this->del = Geom::Point(0,0); /* attributes */ - ctx->dragging = FALSE; + this->dragging = FALSE; - ctx->mass = 0.3; - ctx->drag = DRAG_DEFAULT; - ctx->angle = 30.0; - ctx->width = 0.2; - ctx->pressure = DEFAULT_PRESSURE; + this->mass = 0.3; + this->drag = DRAG_DEFAULT; + this->angle = 30.0; + this->width = 0.2; + this->pressure = DEFAULT_PRESSURE; - ctx->vel_thin = 0.1; - ctx->flatness = 0.9; - ctx->cap_rounding = 0.0; + this->vel_thin = 0.1; + this->flatness = 0.9; + this->cap_rounding = 0.0; - ctx->abs_width = false; + this->abs_width = false; } SPCommonContext::~SPCommonContext() { - SPCommonContext *ctx = SP_COMMON_CONTEXT(this); - - if (ctx->accumulated) { - ctx->accumulated = ctx->accumulated->unref(); - ctx->accumulated = 0; + if (this->accumulated) { + this->accumulated = this->accumulated->unref(); + this->accumulated = 0; } - while (ctx->segments) { - sp_canvas_item_destroy(SP_CANVAS_ITEM(ctx->segments->data)); - ctx->segments = g_slist_remove(ctx->segments, ctx->segments->data); + while (this->segments) { + sp_canvas_item_destroy(SP_CANVAS_ITEM(this->segments->data)); + this->segments = g_slist_remove(this->segments, this->segments->data); } - if (ctx->currentcurve) { - ctx->currentcurve = ctx->currentcurve->unref(); - ctx->currentcurve = 0; + if (this->currentcurve) { + this->currentcurve = this->currentcurve->unref(); + this->currentcurve = 0; } - if (ctx->cal1) { - ctx->cal1 = ctx->cal1->unref(); - ctx->cal1 = 0; + + if (this->cal1) { + this->cal1 = this->cal1->unref(); + this->cal1 = 0; } - if (ctx->cal2) { - ctx->cal2 = ctx->cal2->unref(); - ctx->cal2 = 0; + + if (this->cal2) { + this->cal2 = this->cal2->unref(); + this->cal2 = 0; } - if (ctx->currentshape) { - sp_canvas_item_destroy(ctx->currentshape); - ctx->currentshape = 0; + if (this->currentshape) { + sp_canvas_item_destroy(this->currentshape); + this->currentshape = 0; } - if (ctx->_message_context) { - delete ctx->_message_context; - ctx->_message_context = 0; + if (this->_message_context) { + delete this->_message_context; + this->_message_context = 0; } //G_OBJECT_CLASS(sp_common_context_parent_class)->dispose(object); } void SPCommonContext::set(const Inkscape::Preferences::Entry& value) { - SPEventContext* ec = this; - - SPCommonContext *ctx = SP_COMMON_CONTEXT(ec); Glib::ustring path = value.getEntryName(); // ignore preset modifications - static Glib::ustring const presets_path = ec->pref_observer->observed_path + "/preset"; + static Glib::ustring const presets_path = this->pref_observer->observed_path + "/preset"; Glib::ustring const &full_path = value.getPath(); - if (full_path.compare(0, presets_path.size(), presets_path) == 0) return; + + if (full_path.compare(0, presets_path.size(), presets_path) == 0) { + return; + } if (path == "mass") { - ctx->mass = 0.01 * CLAMP(value.getInt(10), 0, 100); + this->mass = 0.01 * CLAMP(value.getInt(10), 0, 100); } else if (path == "wiggle") { - ctx->drag = CLAMP((1 - 0.01 * value.getInt()), - DRAG_MIN, DRAG_MAX); // drag is inverse to wiggle + this->drag = CLAMP((1 - 0.01 * value.getInt()), DRAG_MIN, DRAG_MAX); // drag is inverse to wiggle } else if (path == "angle") { - ctx->angle = CLAMP(value.getDouble(), -90, 90); + this->angle = CLAMP(value.getDouble(), -90, 90); } else if (path == "width") { - ctx->width = 0.01 * CLAMP(value.getInt(10), 1, 100); + this->width = 0.01 * CLAMP(value.getInt(10), 1, 100); } else if (path == "thinning") { - ctx->vel_thin = 0.01 * CLAMP(value.getInt(10), -100, 100); + this->vel_thin = 0.01 * CLAMP(value.getInt(10), -100, 100); } else if (path == "tremor") { - ctx->tremor = 0.01 * CLAMP(value.getInt(), 0, 100); + this->tremor = 0.01 * CLAMP(value.getInt(), 0, 100); } else if (path == "flatness") { - ctx->flatness = 0.01 * CLAMP(value.getInt(), 0, 100); + this->flatness = 0.01 * CLAMP(value.getInt(), 0, 100); } else if (path == "usepressure") { - ctx->usepressure = value.getBool(); + this->usepressure = value.getBool(); } else if (path == "usetilt") { - ctx->usetilt = value.getBool(); + this->usetilt = value.getBool(); } else if (path == "abs_width") { - ctx->abs_width = value.getBool(); + this->abs_width = value.getBool(); } else if (path == "cap_rounding") { - ctx->cap_rounding = value.getDouble(); + this->cap_rounding = value.getDouble(); } } +/* Get normalized point */ +Geom::Point SPCommonContext::getNormalizedPoint(Geom::Point v) const { + Geom::Rect drect = this->desktop->get_display_area(); + + double const max = MAX ( drect.dimensions()[Geom::X], drect.dimensions()[Geom::Y] ); + + return Geom::Point(( v[Geom::X] - drect.min()[Geom::X] ) / max, ( v[Geom::Y] - drect.min()[Geom::Y] ) / max); +} + +/* Get view point */ +Geom::Point SPCommonContext::getViewPoint(Geom::Point n) const { + Geom::Rect drect = this->desktop->get_display_area(); + + double const max = MAX ( drect.dimensions()[Geom::X], drect.dimensions()[Geom::Y] ); + + return Geom::Point(n[Geom::X] * max + drect.min()[Geom::X], n[Geom::Y] * max + drect.min()[Geom::Y]); +} + /* Local Variables: mode:c++ diff --git a/src/common-context.h b/src/common-context.h index ffcf8de38..dc4c82251 100644 --- a/src/common-context.h +++ b/src/common-context.h @@ -23,9 +23,6 @@ #include "display/curve.h" #include <2geom/point.h> -#define SP_COMMON_CONTEXT(obj) ((SPCommonContext*)obj) -#define SP_IS_COMMON_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj)) - #define SAMPLING_SIZE 8 /* fixme: ?? */ class SPCommonContext : public SPEventContext { @@ -33,6 +30,9 @@ public: SPCommonContext(); virtual ~SPCommonContext(); + virtual void set(const Inkscape::Preferences::Entry& val); + +protected: /** accumulated shape which ultimately goes in svg:path */ SPCurve *accumulated; @@ -89,14 +89,15 @@ public: double tremor; double cap_rounding; - Inkscape::MessageContext *_message_context; + //Inkscape::MessageContext *_message_context; bool is_drawing; /** uses absolute width independent of zoom */ bool abs_width; - virtual void set(const Inkscape::Preferences::Entry& val); + Geom::Point getViewPoint(Geom::Point n) const; + Geom::Point getNormalizedPoint(Geom::Point v) const; }; #endif // COMMON_CONTEXT_H_SEEN diff --git a/src/connector-context.cpp b/src/connector-context.cpp index 12d9e41b8..72a01dee9 100644 --- a/src/connector-context.cpp +++ b/src/connector-context.cpp @@ -417,7 +417,7 @@ cc_deselect_handle(SPKnot* knot) sp_knot_update_ctrl(knot); } -gint SPConnectorContext::item_handler(SPItem* item, GdkEvent* event) { +bool SPConnectorContext::item_handler(SPItem* item, GdkEvent* event) { gint ret = FALSE; Geom::Point p(event->button.x, event->button.y); @@ -472,7 +472,7 @@ gint SPConnectorContext::item_handler(SPItem* item, GdkEvent* event) { return ret; } -gint SPConnectorContext::root_handler(GdkEvent* event) { +bool SPConnectorContext::root_handler(GdkEvent* event) { gint ret = FALSE; switch (event->type) { @@ -1096,7 +1096,7 @@ cc_generic_knot_handler(SPCanvasItem *, GdkEvent *event, SPKnot *knot) static gboolean endpt_handler(SPKnot */*knot*/, GdkEvent *event, SPConnectorContext *cc) { - g_assert( SP_IS_CONNECTOR_CONTEXT(cc) ); + //g_assert( SP_IS_CONNECTOR_CONTEXT(cc) ); gboolean consumed = FALSE; diff --git a/src/connector-context.h b/src/connector-context.h index 1071bdced..3e8c89f14 100644 --- a/src/connector-context.h +++ b/src/connector-context.h @@ -21,7 +21,7 @@ #include #define SP_CONNECTOR_CONTEXT(obj) ((SPConnectorContext*)obj) -#define SP_IS_CONNECTOR_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj)) +//#define SP_IS_CONNECTOR_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj)) struct SPKnot; class SPCurve; @@ -99,8 +99,8 @@ public: virtual void setup(); virtual void finish(); virtual void set(const Inkscape::Preferences::Entry& val); - virtual gint root_handler(GdkEvent* event); - virtual gint item_handler(SPItem* item, GdkEvent* event); + virtual bool root_handler(GdkEvent* event); + virtual bool item_handler(SPItem* item, GdkEvent* event); virtual const std::string& getPrefsPath(); diff --git a/src/desktop-handles.cpp b/src/desktop-handles.cpp index f7ffbed70..ebfa22c3e 100644 --- a/src/desktop-handles.cpp +++ b/src/desktop-handles.cpp @@ -15,13 +15,13 @@ #include "desktop.h" #include "desktop-handles.h" -SPEventContext * -sp_desktop_event_context (SPDesktop const * desktop) -{ - g_return_val_if_fail (desktop != NULL, NULL); - - return desktop->event_context; -} +//SPEventContext * +//sp_desktop_event_context (SPDesktop const * desktop) +//{ +// g_return_val_if_fail (desktop != NULL, NULL); +// +// return desktop->event_context; +//} Inkscape::Selection * sp_desktop_selection (SPDesktop const * desktop) diff --git a/src/desktop-handles.h b/src/desktop-handles.h index cca929369..7cd903b83 100644 --- a/src/desktop-handles.h +++ b/src/desktop-handles.h @@ -34,7 +34,7 @@ namespace Inkscape { #define SP_COORDINATES_UNDERLINE_X (1 << Geom::X) #define SP_COORDINATES_UNDERLINE_Y (1 << Geom::Y) -SPEventContext * sp_desktop_event_context (SPDesktop const * desktop); +//SPEventContext * sp_desktop_event_context (SPDesktop const * desktop); Inkscape::Selection * sp_desktop_selection (SPDesktop const * desktop); SPDocument * sp_desktop_document (SPDesktop const * desktop); SPCanvas * sp_desktop_canvas (SPDesktop const * desktop); diff --git a/src/desktop-style.cpp b/src/desktop-style.cpp index c632f9033..f8fad9711 100644 --- a/src/desktop-style.cpp +++ b/src/desktop-style.cpp @@ -200,7 +200,7 @@ sp_desktop_set_style(SPDesktop *desktop, SPCSSAttr *css, bool change, bool write if (!intercepted) { // If we have an event context, update its cursor (TODO: it could be neater to do this with the signal sent above, but what if the signal gets intercepted?) if (desktop->event_context) { - sp_event_context_update_cursor(desktop->event_context); + desktop->event_context->sp_event_context_update_cursor(); } // Remove text attributes if not text... diff --git a/src/desktop.cpp b/src/desktop.cpp index 029e58c59..332ae5996 100644 --- a/src/desktop.cpp +++ b/src/desktop.cpp @@ -401,6 +401,65 @@ SPDesktop::~SPDesktop() { } + +SPEventContext* SPDesktop::getEventContext() const { + return event_context; +} + +Inkscape::Selection* SPDesktop::getSelection() const { + return selection; +} + +SPDocument* SPDesktop::getDocument() const { + return doc(); +} + +SPCanvas* SPDesktop::getCanvas() const { + return SP_CANVAS_ITEM(main)->canvas; +} + +SPCanvasItem* SPDesktop::getAcetate() const { + return acetate; +} + +SPCanvasGroup* SPDesktop::getMain() const { + return main; +} + +SPCanvasGroup* SPDesktop::getGridGroup() const { + return gridgroup; +} + +SPCanvasGroup* SPDesktop::getGuides() const { + return guides; +} + +SPCanvasItem* SPDesktop::getDrawing() const { + return drawing; +} + +SPCanvasGroup* SPDesktop::getSketch() const { + return sketch; +} + +SPCanvasGroup* SPDesktop::getControls() const { + return controls; +} + +SPCanvasGroup* SPDesktop::getTempGroup() const { + return tempgroup; +} + +Inkscape::MessageStack* SPDesktop::getMessageStack() const { + return messageStack(); +} + +SPNamedView* SPDesktop::getNamedView() const { + return namedview; +} + + + //-------------------------------------------------------------------- /* Public methods */ @@ -1444,10 +1503,10 @@ void SPDesktop::setWaitingCursor() waiting_cursor = true; } -void SPDesktop::clearWaitingCursor() -{ - if (waiting_cursor) - sp_event_context_update_cursor(sp_desktop_event_context(this)); +void SPDesktop::clearWaitingCursor() { + if (waiting_cursor) { + this->event_context->sp_event_context_update_cursor(); + } } void SPDesktop::toggleColorProfAdjust() diff --git a/src/desktop.h b/src/desktop.h index d971b5bb2..3d4513425 100644 --- a/src/desktop.h +++ b/src/desktop.h @@ -135,6 +135,21 @@ public: Inkscape::Display::TemporaryItemList *temporary_item_list; Inkscape::Display::SnapIndicator *snapindicator; + SPEventContext* getEventContext() const; + Inkscape::Selection* getSelection() const; + SPDocument* getDocument() const; + SPCanvas* getCanvas() const; + SPCanvasItem* getAcetate() const; + SPCanvasGroup* getMain() const; + SPCanvasGroup* getGridGroup() const; + SPCanvasGroup* getGuides() const; + SPCanvasItem* getDrawing() const; + SPCanvasGroup* getSketch() const; + SPCanvasGroup* getControls() const; + SPCanvasGroup* getTempGroup() const; + Inkscape::MessageStack* getMessageStack() const; + SPNamedView* getNamedView() const; + SPCanvasItem *acetate; SPCanvasGroup *main; SPCanvasGroup *gridgroup; diff --git a/src/draw-context.cpp b/src/draw-context.cpp index bb2468b98..fed757c0e 100644 --- a/src/draw-context.cpp +++ b/src/draw-context.cpp @@ -192,7 +192,7 @@ void SPDrawContext::finish() { void SPDrawContext::set(const Inkscape::Preferences::Entry& value) { } -gint SPDrawContext::root_handler(GdkEvent* event) { +bool SPDrawContext::root_handler(GdkEvent* event) { SPEventContext* ec = this; gint ret = FALSE; diff --git a/src/draw-context.h b/src/draw-context.h index af21d7ec3..96f38ea27 100644 --- a/src/draw-context.h +++ b/src/draw-context.h @@ -83,7 +83,7 @@ public: virtual void setup(); virtual void finish(); virtual void set(const Inkscape::Preferences::Entry& val); - virtual gint root_handler(GdkEvent* event); + virtual bool root_handler(GdkEvent* event); }; /** diff --git a/src/dropper-context.cpp b/src/dropper-context.cpp index 1f10dffa7..7dfe203ba 100644 --- a/src/dropper-context.cpp +++ b/src/dropper-context.cpp @@ -166,7 +166,7 @@ guint32 SPDropperContext::get_color() { (pick == SP_DROPPER_PICK_ACTUAL && setalpha) ? this->alpha : 1.0); } -gint SPDropperContext::root_handler(GdkEvent* event) { +bool SPDropperContext::root_handler(GdkEvent* event) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); int ret = FALSE; diff --git a/src/dropper-context.h b/src/dropper-context.h index a95b4662e..a6ddf7305 100644 --- a/src/dropper-context.h +++ b/src/dropper-context.h @@ -31,7 +31,7 @@ public: virtual void setup(); virtual void finish(); - virtual gint root_handler(GdkEvent* event); + virtual bool root_handler(GdkEvent* event); virtual const std::string& getPrefsPath(); diff --git a/src/dyna-draw-context.cpp b/src/dyna-draw-context.cpp index 894fa91b5..da90d926f 100644 --- a/src/dyna-draw-context.cpp +++ b/src/dyna-draw-context.cpp @@ -81,17 +81,7 @@ using Inkscape::DocumentUndo; #define DYNA_MIN_WIDTH 1.0e-6 -static void clear_current(SPDynaDrawContext *dc); -static void set_to_accumulated(SPDynaDrawContext *dc, bool unionize, bool subtract); static void add_cap(SPCurve *curve, Geom::Point const &from, Geom::Point const &to, double rounding); -static bool accumulate_calligraphic(SPDynaDrawContext *dc); - -static void fit_and_split(SPDynaDrawContext *ddc, gboolean release); - -static void sp_dyna_draw_reset(SPDynaDrawContext *ddc, Geom::Point p); -static Geom::Point sp_dyna_draw_get_npoint(SPDynaDrawContext const *ddc, Geom::Point v); -static Geom::Point sp_dyna_draw_get_vpoint(SPDynaDrawContext const *ddc, Geom::Point n); -static void draw_temporary_box(SPDynaDrawContext *dc); #include "tool-factory.h" @@ -145,98 +135,82 @@ SPDynaDrawContext::SPDynaDrawContext() : SPCommonContext() { } SPDynaDrawContext::~SPDynaDrawContext() { - SPDynaDrawContext *ddc = SP_DYNA_DRAW_CONTEXT(this); - - if (ddc->hatch_area) { - sp_canvas_item_destroy(ddc->hatch_area); - ddc->hatch_area = NULL; + if (this->hatch_area) { + sp_canvas_item_destroy(this->hatch_area); + this->hatch_area = NULL; } - - - //G_OBJECT_CLASS(sp_dyna_draw_context_parent_class)->dispose(object); - -// ddc->hatch_pointer_past.~list(); -// ddc->hatch_nearest_past.~list(); -// ddc->inertia_vectors.~list(); -// ddc->hatch_vectors.~list(); } void SPDynaDrawContext::setup() { - SPEventContext* ec = this; - - SPDynaDrawContext *ddc = SP_DYNA_DRAW_CONTEXT(ec); - -// if ((SP_EVENT_CONTEXT_CLASS(sp_dyna_draw_context_parent_class))->setup) -// (SP_EVENT_CONTEXT_CLASS(sp_dyna_draw_context_parent_class))->setup(ec); SPCommonContext::setup(); - ddc->accumulated = new SPCurve(); - ddc->currentcurve = new SPCurve(); + this->accumulated = new SPCurve(); + this->currentcurve = new SPCurve(); - ddc->cal1 = new SPCurve(); - ddc->cal2 = new SPCurve(); + this->cal1 = new SPCurve(); + this->cal2 = new SPCurve(); + + this->currentshape = sp_canvas_item_new(sp_desktop_sketch(this->desktop), SP_TYPE_CANVAS_BPATH, NULL); + sp_canvas_bpath_set_fill(SP_CANVAS_BPATH(this->currentshape), DDC_RED_RGBA, SP_WIND_RULE_EVENODD); + sp_canvas_bpath_set_stroke(SP_CANVAS_BPATH(this->currentshape), 0x00000000, 1.0, SP_STROKE_LINEJOIN_MITER, SP_STROKE_LINECAP_BUTT); - ddc->currentshape = sp_canvas_item_new(sp_desktop_sketch(ec->desktop), SP_TYPE_CANVAS_BPATH, NULL); - sp_canvas_bpath_set_fill(SP_CANVAS_BPATH(ddc->currentshape), DDC_RED_RGBA, SP_WIND_RULE_EVENODD); - sp_canvas_bpath_set_stroke(SP_CANVAS_BPATH(ddc->currentshape), 0x00000000, 1.0, SP_STROKE_LINEJOIN_MITER, SP_STROKE_LINECAP_BUTT); /* fixme: Cannot we cascade it to root more clearly? */ - g_signal_connect(G_OBJECT(ddc->currentshape), "event", G_CALLBACK(sp_desktop_root_handler), ec->desktop); + g_signal_connect(G_OBJECT(this->currentshape), "event", G_CALLBACK(sp_desktop_root_handler), this->desktop); { /* TODO: this can be done either with an arcto, and should maybe also be put in a general file (other tools use this as well) */ SPCurve *c = new SPCurve(); + const double C1 = 0.552; + c->moveto(-1,0); c->curveto(-1, C1, -C1, 1, 0, 1 ); c->curveto(C1, 1, 1, C1, 1, 0 ); c->curveto(1, -C1, C1, -1, 0, -1 ); c->curveto(-C1, -1, -1, -C1, -1, 0 ); c->closepath(); - ddc->hatch_area = sp_canvas_bpath_new(sp_desktop_controls(ec->desktop), c); + + this->hatch_area = sp_canvas_bpath_new(sp_desktop_controls(this->desktop), c); + c->unref(); - sp_canvas_bpath_set_fill(SP_CANVAS_BPATH(ddc->hatch_area), 0x00000000,(SPWindRule)0); - sp_canvas_bpath_set_stroke(SP_CANVAS_BPATH(ddc->hatch_area), 0x0000007f, 1.0, SP_STROKE_LINEJOIN_MITER, SP_STROKE_LINECAP_BUTT); - sp_canvas_item_hide(ddc->hatch_area); + + sp_canvas_bpath_set_fill(SP_CANVAS_BPATH(this->hatch_area), 0x00000000,(SPWindRule)0); + sp_canvas_bpath_set_stroke(SP_CANVAS_BPATH(this->hatch_area), 0x0000007f, 1.0, SP_STROKE_LINEJOIN_MITER, SP_STROKE_LINECAP_BUTT); + sp_canvas_item_hide(this->hatch_area); } - sp_event_context_read(ec, "mass"); - sp_event_context_read(ec, "wiggle"); - sp_event_context_read(ec, "angle"); - sp_event_context_read(ec, "width"); - sp_event_context_read(ec, "thinning"); - sp_event_context_read(ec, "tremor"); - sp_event_context_read(ec, "flatness"); - sp_event_context_read(ec, "tracebackground"); - sp_event_context_read(ec, "usepressure"); - sp_event_context_read(ec, "usetilt"); - sp_event_context_read(ec, "abs_width"); - sp_event_context_read(ec, "keep_selected"); - sp_event_context_read(ec, "cap_rounding"); - - ddc->is_drawing = false; - ddc->_message_context = new Inkscape::MessageContext((ec->desktop)->messageStack()); + sp_event_context_read(this, "mass"); + sp_event_context_read(this, "wiggle"); + sp_event_context_read(this, "angle"); + sp_event_context_read(this, "width"); + sp_event_context_read(this, "thinning"); + sp_event_context_read(this, "tremor"); + sp_event_context_read(this, "flatness"); + sp_event_context_read(this, "tracebackground"); + sp_event_context_read(this, "usepressure"); + sp_event_context_read(this, "usetilt"); + sp_event_context_read(this, "abs_width"); + sp_event_context_read(this, "keep_selected"); + sp_event_context_read(this, "cap_rounding"); + + this->is_drawing = false; + this->_message_context = new Inkscape::MessageContext((this->desktop)->messageStack()); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); if (prefs->getBool("/tools/calligraphic/selcue")) { - ec->enableSelectionCue(); + this->enableSelectionCue(); } } void SPDynaDrawContext::set(const Inkscape::Preferences::Entry& val) { - SPEventContext* ec = this; - - SPDynaDrawContext *ddc = SP_DYNA_DRAW_CONTEXT(ec); Glib::ustring path = val.getEntryName(); if (path == "tracebackground") { - ddc->trace_bg = val.getBool(); + this->trace_bg = val.getBool(); } else if (path == "keep_selected") { - ddc->keep_selected = val.getBool(); + this->keep_selected = val.getBool(); } else { //pass on up to parent class to handle common attributes. -// if ( SP_COMMON_CONTEXT_CLASS(sp_dyna_draw_context_parent_class)->set ) { -// SP_COMMON_CONTEXT_CLASS(sp_dyna_draw_context_parent_class)->set(ec, val); -// } SPCommonContext::set(val); } @@ -249,66 +223,64 @@ flerp(double f0, double f1, double p) return f0 + ( f1 - f0 ) * p; } -/* Get normalized point */ -static Geom::Point -sp_dyna_draw_get_npoint(SPDynaDrawContext const *dc, Geom::Point v) -{ - Geom::Rect drect = SP_EVENT_CONTEXT(dc)->desktop->get_display_area(); - double const max = MAX ( drect.dimensions()[Geom::X], drect.dimensions()[Geom::Y] ); - return Geom::Point(( v[Geom::X] - drect.min()[Geom::X] ) / max, ( v[Geom::Y] - drect.min()[Geom::Y] ) / max); +///* Get normalized point */ +//Geom::Point SPDynaDrawContext::getNormalizedPoint(Geom::Point v) const { +// Geom::Rect drect = desktop->get_display_area(); +// +// double const max = MAX ( drect.dimensions()[Geom::X], drect.dimensions()[Geom::Y] ); +// +// return Geom::Point(( v[Geom::X] - drect.min()[Geom::X] ) / max, ( v[Geom::Y] - drect.min()[Geom::Y] ) / max); +//} +// +///* Get view point */ +//Geom::Point SPDynaDrawContext::getViewPoint(Geom::Point n) const { +// Geom::Rect drect = desktop->get_display_area(); +// +// double const max = MAX ( drect.dimensions()[Geom::X], drect.dimensions()[Geom::Y] ); +// +// return Geom::Point(n[Geom::X] * max + drect.min()[Geom::X], n[Geom::Y] * max + drect.min()[Geom::Y]); +//} + +void SPDynaDrawContext::reset(Geom::Point p) { + this->last = this->cur = this->getNormalizedPoint(p); + + this->vel = Geom::Point(0,0); + this->vel_max = 0; + this->acc = Geom::Point(0,0); + this->ang = Geom::Point(0,0); + this->del = Geom::Point(0,0); } -/* Get view point */ -static Geom::Point -sp_dyna_draw_get_vpoint(SPDynaDrawContext const *dc, Geom::Point n) -{ - Geom::Rect drect = SP_EVENT_CONTEXT(dc)->desktop->get_display_area(); - double const max = MAX ( drect.dimensions()[Geom::X], drect.dimensions()[Geom::Y] ); - return Geom::Point(n[Geom::X] * max + drect.min()[Geom::X], n[Geom::Y] * max + drect.min()[Geom::Y]); -} +void SPDynaDrawContext::extinput(GdkEvent *event) { + if (gdk_event_get_axis (event, GDK_AXIS_PRESSURE, &this->pressure)) { + this->pressure = CLAMP (this->pressure, DDC_MIN_PRESSURE, DDC_MAX_PRESSURE); + } else { + this->pressure = DDC_DEFAULT_PRESSURE; + } -static void -sp_dyna_draw_reset(SPDynaDrawContext *dc, Geom::Point p) -{ - dc->last = dc->cur = sp_dyna_draw_get_npoint(dc, p); - dc->vel = Geom::Point(0,0); - dc->vel_max = 0; - dc->acc = Geom::Point(0,0); - dc->ang = Geom::Point(0,0); - dc->del = Geom::Point(0,0); -} + if (gdk_event_get_axis (event, GDK_AXIS_XTILT, &this->xtilt)) { + this->xtilt = CLAMP (this->xtilt, DDC_MIN_TILT, DDC_MAX_TILT); + } else { + this->xtilt = DDC_DEFAULT_TILT; + } -static void -sp_dyna_draw_extinput(SPDynaDrawContext *dc, GdkEvent *event) -{ - if (gdk_event_get_axis (event, GDK_AXIS_PRESSURE, &dc->pressure)) - dc->pressure = CLAMP (dc->pressure, DDC_MIN_PRESSURE, DDC_MAX_PRESSURE); - else - dc->pressure = DDC_DEFAULT_PRESSURE; - - if (gdk_event_get_axis (event, GDK_AXIS_XTILT, &dc->xtilt)) - dc->xtilt = CLAMP (dc->xtilt, DDC_MIN_TILT, DDC_MAX_TILT); - else - dc->xtilt = DDC_DEFAULT_TILT; - - if (gdk_event_get_axis (event, GDK_AXIS_YTILT, &dc->ytilt)) - dc->ytilt = CLAMP (dc->ytilt, DDC_MIN_TILT, DDC_MAX_TILT); - else - dc->ytilt = DDC_DEFAULT_TILT; + if (gdk_event_get_axis (event, GDK_AXIS_YTILT, &this->ytilt)) { + this->ytilt = CLAMP (this->ytilt, DDC_MIN_TILT, DDC_MAX_TILT); + } else { + this->ytilt = DDC_DEFAULT_TILT; + } } -static gboolean -sp_dyna_draw_apply(SPDynaDrawContext *dc, Geom::Point p) -{ - Geom::Point n = sp_dyna_draw_get_npoint(dc, p); +bool SPDynaDrawContext::apply(Geom::Point p) { + Geom::Point n = this->getNormalizedPoint(p); /* Calculate mass and drag */ - double const mass = flerp(1.0, 160.0, dc->mass); - double const drag = flerp(0.0, 0.5, dc->drag * dc->drag); + double const mass = flerp(1.0, 160.0, this->mass); + double const drag = flerp(0.0, 0.5, this->drag * this->drag); /* Calculate force and acceleration */ - Geom::Point force = n - dc->cur; + Geom::Point force = n - this->cur; // If force is below the absolute threshold DYNA_EPSILON, // or we haven't yet reached DYNA_VEL_START (i.e. at the beginning of stroke) @@ -317,27 +289,27 @@ sp_dyna_draw_apply(SPDynaDrawContext *dc, Geom::Point p) // This prevents flips, blobs, and jerks caused by microscopic tremor of the tablet pen, // especially bothersome at the start of the stroke where we don't yet have the inertia to // smooth them out. - if ( Geom::L2(force) < DYNA_EPSILON || (dc->vel_max < DYNA_VEL_START && Geom::L2(force) < DYNA_EPSILON_START)) { + if ( Geom::L2(force) < DYNA_EPSILON || (this->vel_max < DYNA_VEL_START && Geom::L2(force) < DYNA_EPSILON_START)) { return FALSE; } - dc->acc = force / mass; + this->acc = force / mass; /* Calculate new velocity */ - dc->vel += dc->acc; + this->vel += this->acc; - if (Geom::L2(dc->vel) > dc->vel_max) - dc->vel_max = Geom::L2(dc->vel); + if (Geom::L2(this->vel) > this->vel_max) + this->vel_max = Geom::L2(this->vel); /* Calculate angle of drawing tool */ double a1; - if (dc->usetilt) { + if (this->usetilt) { // 1a. calculate nib angle from input device tilt: - gdouble length = std::sqrt(dc->xtilt*dc->xtilt + dc->ytilt*dc->ytilt);; + gdouble length = std::sqrt(this->xtilt*this->xtilt + this->ytilt*this->ytilt);; if (length > 0) { - Geom::Point ang1 = Geom::Point(dc->ytilt/length, dc->xtilt/length); + Geom::Point ang1 = Geom::Point(this->ytilt/length, this->xtilt/length); a1 = atan2(ang1); } else @@ -345,17 +317,17 @@ sp_dyna_draw_apply(SPDynaDrawContext *dc, Geom::Point p) } else { // 1b. fixed dc->angle (absolutely flat nib): - double const radians = ( (dc->angle - 90) / 180.0 ) * M_PI; + double const radians = ( (this->angle - 90) / 180.0 ) * M_PI; Geom::Point ang1 = Geom::Point(-sin(radians), cos(radians)); a1 = atan2(ang1); } // 2. perpendicular to dc->vel (absolutely non-flat nib): - gdouble const mag_vel = Geom::L2(dc->vel); + gdouble const mag_vel = Geom::L2(this->vel); if ( mag_vel < DYNA_EPSILON ) { return FALSE; } - Geom::Point ang2 = Geom::rot90(dc->vel) / mag_vel; + Geom::Point ang2 = Geom::rot90(this->vel) / mag_vel; // 3. Average them using flatness parameter: // calculate angles @@ -373,53 +345,51 @@ sp_dyna_draw_apply(SPDynaDrawContext *dc, Geom::Point p) a2 += 2*M_PI; // find the flatness-weighted bisector angle, unflip if a2 was flipped // FIXME: when dc->vel is oscillating around the fixed angle, the new_ang flips back and forth. How to avoid this? - double new_ang = a1 + (1 - dc->flatness) * (a2 - a1) - (flipped? M_PI : 0); + double new_ang = a1 + (1 - this->flatness) * (a2 - a1) - (flipped? M_PI : 0); // Try to detect a sudden flip when the new angle differs too much from the previous for the // current velocity; in that case discard this move - double angle_delta = Geom::L2(Geom::Point (cos (new_ang), sin (new_ang)) - dc->ang); - if ( angle_delta / Geom::L2(dc->vel) > 4000 ) { + double angle_delta = Geom::L2(Geom::Point (cos (new_ang), sin (new_ang)) - this->ang); + if ( angle_delta / Geom::L2(this->vel) > 4000 ) { return FALSE; } // convert to point - dc->ang = Geom::Point (cos (new_ang), sin (new_ang)); + this->ang = Geom::Point (cos (new_ang), sin (new_ang)); // g_print ("force %g acc %g vel_max %g vel %g a1 %g a2 %g new_ang %g\n", Geom::L2(force), Geom::L2(dc->acc), dc->vel_max, Geom::L2(dc->vel), a1, a2, new_ang); /* Apply drag */ - dc->vel *= 1.0 - drag; + this->vel *= 1.0 - drag; /* Update position */ - dc->last = dc->cur; - dc->cur += dc->vel; + this->last = this->cur; + this->cur += this->vel; return TRUE; } -static void -sp_dyna_draw_brush(SPDynaDrawContext *dc) -{ - g_assert( dc->npoints >= 0 && dc->npoints < SAMPLING_SIZE ); +void SPDynaDrawContext::brush() { + g_assert( this->npoints >= 0 && this->npoints < SAMPLING_SIZE ); // How much velocity thins strokestyle - double vel_thin = flerp (0, 160, dc->vel_thin); + double vel_thin = flerp (0, 160, this->vel_thin); // Influence of pressure on thickness - double pressure_thick = (dc->usepressure ? dc->pressure : 1.0); + double pressure_thick = (this->usepressure ? this->pressure : 1.0); // get the real brush point, not the same as pointer (affected by hatch tracking and/or mass // drag) - Geom::Point brush = sp_dyna_draw_get_vpoint(dc, dc->cur); - Geom::Point brush_w = SP_EVENT_CONTEXT(dc)->desktop->d2w(brush); + Geom::Point brush = this->getViewPoint(this->cur); + Geom::Point brush_w = SP_EVENT_CONTEXT(this)->desktop->d2w(brush); double trace_thick = 1; - if (dc->trace_bg) { + if (this->trace_bg) { // pick single pixel double R, G, B, A; Geom::IntRect area = Geom::IntRect::from_xywh(brush_w.floor(), Geom::IntPoint(1, 1)); cairo_surface_t *s = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, 1, 1); - sp_canvas_arena_render_surface(SP_CANVAS_ARENA(sp_desktop_drawing(SP_EVENT_CONTEXT(dc)->desktop)), s, area); + sp_canvas_arena_render_surface(SP_CANVAS_ARENA(sp_desktop_drawing(SP_EVENT_CONTEXT(this)->desktop)), s, area); ink_cairo_surface_average_color_premul(s, R, G, B, A); cairo_surface_destroy(s); double max = MAX (MAX (R, G), B); @@ -429,10 +399,10 @@ sp_dyna_draw_brush(SPDynaDrawContext *dc) //g_print ("L %g thick %g\n", L, trace_thick); } - double width = (pressure_thick * trace_thick - vel_thin * Geom::L2(dc->vel)) * dc->width; + double width = (pressure_thick * trace_thick - vel_thin * Geom::L2(this->vel)) * this->width; double tremble_left = 0, tremble_right = 0; - if (dc->tremor > 0) { + if (this->tremor > 0) { // obtain two normally distributed random variables, using polar Box-Muller transform double x1, x2, w, y1, y2; do { @@ -449,28 +419,28 @@ sp_dyna_draw_brush(SPDynaDrawContext *dc) // (2) deflection depends on width, but is upped for small widths for better visual uniformity across widths; // (3) deflection somewhat depends on speed, to prevent fast strokes looking // comparatively smooth and slow ones excessively jittery - tremble_left = (y1)*dc->tremor * (0.15 + 0.8*width) * (0.35 + 14*Geom::L2(dc->vel)); - tremble_right = (y2)*dc->tremor * (0.15 + 0.8*width) * (0.35 + 14*Geom::L2(dc->vel)); + tremble_left = (y1)*this->tremor * (0.15 + 0.8*width) * (0.35 + 14*Geom::L2(this->vel)); + tremble_right = (y2)*this->tremor * (0.15 + 0.8*width) * (0.35 + 14*Geom::L2(this->vel)); } - if ( width < 0.02 * dc->width ) { - width = 0.02 * dc->width; + if ( width < 0.02 * this->width ) { + width = 0.02 * this->width; } double dezoomify_factor = 0.05 * 1000; - if (!dc->abs_width) { - dezoomify_factor /= SP_EVENT_CONTEXT(dc)->desktop->current_zoom(); + if (!this->abs_width) { + dezoomify_factor /= SP_EVENT_CONTEXT(this)->desktop->current_zoom(); } - Geom::Point del_left = dezoomify_factor * (width + tremble_left) * dc->ang; - Geom::Point del_right = dezoomify_factor * (width + tremble_right) * dc->ang; + Geom::Point del_left = dezoomify_factor * (width + tremble_left) * this->ang; + Geom::Point del_right = dezoomify_factor * (width + tremble_right) * this->ang; - dc->point1[dc->npoints] = brush + del_left; - dc->point2[dc->npoints] = brush - del_right; + this->point1[this->npoints] = brush + del_left; + this->point2[this->npoints] = brush - del_right; - dc->del = 0.5*(del_left + del_right); + this->del = 0.5*(del_left + del_right); - dc->npoints++; + this->npoints++; } static void @@ -479,51 +449,45 @@ sp_ddc_update_toolbox (SPDesktop *desktop, const gchar *id, double value) desktop->setToolboxAdjustmentValue (id, value); } -static void -calligraphic_cancel(SPDynaDrawContext *dc) -{ - SPDesktop *desktop = SP_EVENT_CONTEXT(dc)->desktop; - dc->dragging = FALSE; - dc->is_drawing = false; +void SPDynaDrawContext::cancel() { + this->dragging = false; + this->is_drawing = false; + sp_canvas_item_ungrab(SP_CANVAS_ITEM(desktop->acetate), 0); - /* Remove all temporary line segments */ - while (dc->segments) { - sp_canvas_item_destroy(SP_CANVAS_ITEM(dc->segments->data)); - dc->segments = g_slist_remove(dc->segments, dc->segments->data); - } - /* reset accumulated curve */ - dc->accumulated->reset(); - clear_current(dc); - if (dc->repr) { - dc->repr = NULL; - } -} -gint SPDynaDrawContext::root_handler(GdkEvent* event) { - SPEventContext* event_context = this; + /* Remove all temporary line segments */ + while (this->segments) { + sp_canvas_item_destroy(SP_CANVAS_ITEM(this->segments->data)); + this->segments = g_slist_remove(this->segments, this->segments->data); + } + + /* reset accumulated curve */ + this->accumulated->reset(); + this->clear_current(); - SPDynaDrawContext *dc = SP_DYNA_DRAW_CONTEXT(event_context); - SPDesktop *desktop = event_context->desktop; + if (this->repr) { + this->repr = NULL; + } +} +bool SPDynaDrawContext::root_handler(GdkEvent* event) { gint ret = FALSE; switch (event->type) { case GDK_BUTTON_PRESS: - if (event->button.button == 1 && !event_context->space_panning) { - - SPDesktop *desktop = SP_EVENT_CONTEXT_DESKTOP(dc); - - if (Inkscape::have_viable_layer(desktop, dc->_message_context) == false) { + if (event->button.button == 1 && !this->space_panning) { + if (Inkscape::have_viable_layer(desktop, this->_message_context) == false) { return TRUE; } - dc->accumulated->reset(); - if (dc->repr) { - dc->repr = NULL; + this->accumulated->reset(); + + if (this->repr) { + this->repr = NULL; } /* initialize first point */ - dc->npoints = 0; + this->npoints = 0; sp_canvas_item_grab(SP_CANVAS_ITEM(desktop->acetate), ( GDK_KEY_PRESS_MASK | @@ -536,8 +500,8 @@ gint SPDynaDrawContext::root_handler(GdkEvent* event) { ret = TRUE; desktop->canvas->forceFullRedrawAfterInterruptions(3); - dc->is_drawing = true; - dc->just_started_drawing = true; + this->is_drawing = true; + this->just_started_drawing = true; } break; case GDK_MOTION_NOTIFY: @@ -545,9 +509,9 @@ gint SPDynaDrawContext::root_handler(GdkEvent* event) { Geom::Point const motion_w(event->motion.x, event->motion.y); Geom::Point motion_dt(desktop->w2d(motion_w)); - sp_dyna_draw_extinput(dc, event); + this->extinput(event); - dc->_message_context->clear(); + this->_message_context->clear(); // for hatching: double hatch_dist = 0; @@ -563,12 +527,12 @@ gint SPDynaDrawContext::root_handler(GdkEvent* event) { // One item selected, and it's a path; // let's try to track it as a guide - if (selected != dc->hatch_item) { - dc->hatch_item = selected; - if (dc->hatch_livarot_path) - delete dc->hatch_livarot_path; - dc->hatch_livarot_path = Path_for_item (dc->hatch_item, true, true); - dc->hatch_livarot_path->ConvertWithBackData(0.01); + if (selected != this->hatch_item) { + this->hatch_item = selected; + if (this->hatch_livarot_path) + delete this->hatch_livarot_path; + this->hatch_livarot_path = Path_for_item (this->hatch_item, true, true); + this->hatch_livarot_path->ConvertWithBackData(0.01); } // calculate pointer point in the guide item's coords @@ -576,8 +540,8 @@ gint SPDynaDrawContext::root_handler(GdkEvent* event) { pointer = motion_dt * motion_to_curve; // calculate the nearest point on the guide path - boost::optional position = get_nearest_position_on_Path(dc->hatch_livarot_path, pointer); - nearest = get_point_on_Path(dc->hatch_livarot_path, position->piece, position->t); + boost::optional position = get_nearest_position_on_Path(this->hatch_livarot_path, pointer); + nearest = get_point_on_Path(this->hatch_livarot_path, position->piece, position->t); // distance from pointer to nearest @@ -585,16 +549,16 @@ gint SPDynaDrawContext::root_handler(GdkEvent* event) { // unit-length vector hatch_unit_vector = (pointer - nearest)/hatch_dist; - dc->_message_context->set(Inkscape::NORMAL_MESSAGE, _("Guide path selected; start drawing along the guide with Ctrl")); + this->_message_context->set(Inkscape::NORMAL_MESSAGE, _("Guide path selected; start drawing along the guide with Ctrl")); } else { - dc->_message_context->set(Inkscape::NORMAL_MESSAGE, _("Select a guide path to track with Ctrl")); + this->_message_context->set(Inkscape::NORMAL_MESSAGE, _("Select a guide path to track with Ctrl")); } } - if ( dc->is_drawing && (event->motion.state & GDK_BUTTON1_MASK) && !event_context->space_panning) { - dc->dragging = TRUE; + if ( this->is_drawing && (event->motion.state & GDK_BUTTON1_MASK) && !this->space_panning) { + this->dragging = TRUE; - if (event->motion.state & GDK_CONTROL_MASK && dc->hatch_item) { // hatching + if (event->motion.state & GDK_CONTROL_MASK && this->hatch_item) { // hatching #define HATCH_VECTOR_ELEMENTS 12 #define INERTIA_ELEMENTS 24 @@ -616,33 +580,33 @@ gint SPDynaDrawContext::root_handler(GdkEvent* event) { // mass recommended; with zero mass, jerks are still quite noticeable). double speed = 1; - if (Geom::L2(dc->hatch_last_nearest) != 0) { + if (Geom::L2(this->hatch_last_nearest) != 0) { // the distance nearest moved since the last motion event - double nearest_moved = Geom::L2(nearest - dc->hatch_last_nearest); + double nearest_moved = Geom::L2(nearest - this->hatch_last_nearest); // the distance pointer moved since the last motion event - double pointer_moved = Geom::L2(pointer - dc->hatch_last_pointer); + double pointer_moved = Geom::L2(pointer - this->hatch_last_pointer); // store them in stacks limited to SPEED_ELEMENTS - dc->hatch_nearest_past.push_front(nearest_moved); - if (dc->hatch_nearest_past.size() > SPEED_ELEMENTS) - dc->hatch_nearest_past.pop_back(); - dc->hatch_pointer_past.push_front(pointer_moved); - if (dc->hatch_pointer_past.size() > SPEED_ELEMENTS) - dc->hatch_pointer_past.pop_back(); + this->hatch_nearest_past.push_front(nearest_moved); + if (this->hatch_nearest_past.size() > SPEED_ELEMENTS) + this->hatch_nearest_past.pop_back(); + this->hatch_pointer_past.push_front(pointer_moved); + if (this->hatch_pointer_past.size() > SPEED_ELEMENTS) + this->hatch_pointer_past.pop_back(); // If the stacks are full, - if (dc->hatch_nearest_past.size() == SPEED_ELEMENTS) { + if (this->hatch_nearest_past.size() == SPEED_ELEMENTS) { // calculate the sums of all stored movements - double nearest_sum = std::accumulate (dc->hatch_nearest_past.begin(), dc->hatch_nearest_past.end(), 0.0); - double pointer_sum = std::accumulate (dc->hatch_pointer_past.begin(), dc->hatch_pointer_past.end(), 0.0); + double nearest_sum = std::accumulate (this->hatch_nearest_past.begin(), this->hatch_nearest_past.end(), 0.0); + double pointer_sum = std::accumulate (this->hatch_pointer_past.begin(), this->hatch_pointer_past.end(), 0.0); // and divide to get the speed speed = nearest_sum/pointer_sum; //g_print ("nearest sum %g pointer_sum %g speed %g\n", nearest_sum, pointer_sum, speed); } } - if ( dc->hatch_escaped // already escaped, do not reattach + if ( this->hatch_escaped // already escaped, do not reattach || (speed < SPEED_MIN) // stuck; most likely reached end of traced stroke - || (dc->hatch_spacing > 0 && hatch_dist > 50 * dc->hatch_spacing) // went too far from the guide + || (this->hatch_spacing > 0 && hatch_dist > 50 * this->hatch_spacing) // went too far from the guide ) { // We are NOT attracted to the guide! @@ -650,12 +614,12 @@ gint SPDynaDrawContext::root_handler(GdkEvent* event) { // Remember hatch_escaped so we don't get // attracted again until the end of this stroke - dc->hatch_escaped = true; + this->hatch_escaped = true; - if (dc->inertia_vectors.size() >= INERTIA_ELEMENTS/2) { // move by inertia - Geom::Point moved_past_escape = motion_dt - dc->inertia_vectors.front(); + if (this->inertia_vectors.size() >= INERTIA_ELEMENTS/2) { // move by inertia + Geom::Point moved_past_escape = motion_dt - this->inertia_vectors.front(); Geom::Point inertia = - dc->inertia_vectors.front() - dc->inertia_vectors.back(); + this->inertia_vectors.front() - this->inertia_vectors.back(); double dot = Geom::dot (moved_past_escape, inertia); dot /= Geom::L2(moved_past_escape) * Geom::L2(inertia); @@ -663,7 +627,7 @@ gint SPDynaDrawContext::root_handler(GdkEvent* event) { if (dot > 0) { // mouse is still moving in approx the same direction Geom::Point should_have_moved = (inertia) * (1/Geom::L2(inertia)) * Geom::L2(moved_past_escape); - motion_dt = dc->inertia_vectors.front() + + motion_dt = this->inertia_vectors.front() + (INERTIA_FORCE * should_have_moved + (1 - INERTIA_FORCE) * moved_past_escape); } } @@ -674,19 +638,19 @@ gint SPDynaDrawContext::root_handler(GdkEvent* event) { // summed, to detect if we accidentally flipped to the other side of the // guide Geom::Point hatch_vector_accumulated = std::accumulate - (dc->hatch_vectors.begin(), dc->hatch_vectors.end(), Geom::Point(0,0)); + (this->hatch_vectors.begin(), this->hatch_vectors.end(), Geom::Point(0,0)); double dot = Geom::dot (pointer - nearest, hatch_vector_accumulated); dot /= Geom::L2(pointer - nearest) * Geom::L2(hatch_vector_accumulated); - if (dc->hatch_spacing != 0) { // spacing was already set + if (this->hatch_spacing != 0) { // spacing was already set double target; if (speed > SPEED_NORMAL) { // all ok, strictly obey the spacing - target = dc->hatch_spacing; + target = this->hatch_spacing; } else { // looks like we're starting to lose speed, // so _gradually_ let go attraction to prevent jerks - target = (dc->hatch_spacing * speed + hatch_dist * (SPEED_NORMAL - speed))/SPEED_NORMAL; + target = (this->hatch_spacing * speed + hatch_dist * (SPEED_NORMAL - speed))/SPEED_NORMAL; } if (!IS_NAN(dot) && dot < -0.5) {// flip target = -target; @@ -697,91 +661,91 @@ gint SPDynaDrawContext::root_handler(GdkEvent* event) { // some limited feedback: allow persistent pulling to slightly change // the spacing - dc->hatch_spacing += (hatch_dist - dc->hatch_spacing)/3500; + this->hatch_spacing += (hatch_dist - this->hatch_spacing)/3500; // return it to the desktop coords motion_dt = new_pointer * motion_to_curve.inverse(); if (speed >= SPEED_NORMAL) { - dc->inertia_vectors.push_front(motion_dt); - if (dc->inertia_vectors.size() > INERTIA_ELEMENTS) - dc->inertia_vectors.pop_back(); + this->inertia_vectors.push_front(motion_dt); + if (this->inertia_vectors.size() > INERTIA_ELEMENTS) + this->inertia_vectors.pop_back(); } } else { // this is the first motion event, set the dist - dc->hatch_spacing = hatch_dist; + this->hatch_spacing = hatch_dist; } // remember last points - dc->hatch_last_pointer = pointer; - dc->hatch_last_nearest = nearest; + this->hatch_last_pointer = pointer; + this->hatch_last_nearest = nearest; - dc->hatch_vectors.push_front(pointer - nearest); - if (dc->hatch_vectors.size() > HATCH_VECTOR_ELEMENTS) - dc->hatch_vectors.pop_back(); + this->hatch_vectors.push_front(pointer - nearest); + if (this->hatch_vectors.size() > HATCH_VECTOR_ELEMENTS) + this->hatch_vectors.pop_back(); } - dc->_message_context->set(Inkscape::NORMAL_MESSAGE, dc->hatch_escaped? _("Tracking: connection to guide path lost!") : _("Tracking a guide path")); + this->_message_context->set(Inkscape::NORMAL_MESSAGE, this->hatch_escaped? _("Tracking: connection to guide path lost!") : _("Tracking a guide path")); } else { - dc->_message_context->set(Inkscape::NORMAL_MESSAGE, _("Drawing a calligraphic stroke")); + this->_message_context->set(Inkscape::NORMAL_MESSAGE, _("Drawing a calligraphic stroke")); } - if (dc->just_started_drawing) { - dc->just_started_drawing = false; - sp_dyna_draw_reset(dc, motion_dt); + if (this->just_started_drawing) { + this->just_started_drawing = false; + this->reset(motion_dt); } - if (!sp_dyna_draw_apply(dc, motion_dt)) { + if (!this->apply(motion_dt)) { ret = TRUE; break; } - if ( dc->cur != dc->last ) { - sp_dyna_draw_brush(dc); - g_assert( dc->npoints > 0 ); - fit_and_split(dc, FALSE); + if ( this->cur != this->last ) { + this->brush(); + g_assert( this->npoints > 0 ); + this->fit_and_split(false); } ret = TRUE; } // Draw the hatching circle if necessary if (event->motion.state & GDK_CONTROL_MASK) { - if (dc->hatch_spacing == 0 && hatch_dist != 0) { + if (this->hatch_spacing == 0 && hatch_dist != 0) { // Haven't set spacing yet: gray, center free, update radius live Geom::Point c = desktop->w2d(motion_w); Geom::Affine const sm (Geom::Scale(hatch_dist, hatch_dist) * Geom::Translate(c)); - sp_canvas_item_affine_absolute(dc->hatch_area, sm); - sp_canvas_bpath_set_stroke(SP_CANVAS_BPATH(dc->hatch_area), 0x7f7f7fff, 1.0, SP_STROKE_LINEJOIN_MITER, SP_STROKE_LINECAP_BUTT); - sp_canvas_item_show(dc->hatch_area); - } else if (dc->dragging && !dc->hatch_escaped) { + sp_canvas_item_affine_absolute(this->hatch_area, sm); + sp_canvas_bpath_set_stroke(SP_CANVAS_BPATH(this->hatch_area), 0x7f7f7fff, 1.0, SP_STROKE_LINEJOIN_MITER, SP_STROKE_LINECAP_BUTT); + sp_canvas_item_show(this->hatch_area); + } else if (this->dragging && !this->hatch_escaped) { // Tracking: green, center snapped, fixed radius Geom::Point c = motion_dt; - Geom::Affine const sm (Geom::Scale(dc->hatch_spacing, dc->hatch_spacing) * Geom::Translate(c)); - sp_canvas_item_affine_absolute(dc->hatch_area, sm); - sp_canvas_bpath_set_stroke(SP_CANVAS_BPATH(dc->hatch_area), 0x00FF00ff, 1.0, SP_STROKE_LINEJOIN_MITER, SP_STROKE_LINECAP_BUTT); - sp_canvas_item_show(dc->hatch_area); - } else if (dc->dragging && dc->hatch_escaped) { + Geom::Affine const sm (Geom::Scale(this->hatch_spacing, this->hatch_spacing) * Geom::Translate(c)); + sp_canvas_item_affine_absolute(this->hatch_area, sm); + sp_canvas_bpath_set_stroke(SP_CANVAS_BPATH(this->hatch_area), 0x00FF00ff, 1.0, SP_STROKE_LINEJOIN_MITER, SP_STROKE_LINECAP_BUTT); + sp_canvas_item_show(this->hatch_area); + } else if (this->dragging && this->hatch_escaped) { // Tracking escaped: red, center free, fixed radius Geom::Point c = motion_dt; - Geom::Affine const sm (Geom::Scale(dc->hatch_spacing, dc->hatch_spacing) * Geom::Translate(c)); + Geom::Affine const sm (Geom::Scale(this->hatch_spacing, this->hatch_spacing) * Geom::Translate(c)); - sp_canvas_item_affine_absolute(dc->hatch_area, sm); - sp_canvas_bpath_set_stroke(SP_CANVAS_BPATH(dc->hatch_area), 0xFF0000ff, 1.0, SP_STROKE_LINEJOIN_MITER, SP_STROKE_LINECAP_BUTT); - sp_canvas_item_show(dc->hatch_area); + sp_canvas_item_affine_absolute(this->hatch_area, sm); + sp_canvas_bpath_set_stroke(SP_CANVAS_BPATH(this->hatch_area), 0xFF0000ff, 1.0, SP_STROKE_LINEJOIN_MITER, SP_STROKE_LINECAP_BUTT); + sp_canvas_item_show(this->hatch_area); } else { // Not drawing but spacing set: gray, center snapped, fixed radius - Geom::Point c = (nearest + dc->hatch_spacing * hatch_unit_vector) * motion_to_curve.inverse(); + Geom::Point c = (nearest + this->hatch_spacing * hatch_unit_vector) * motion_to_curve.inverse(); if (!IS_NAN(c[Geom::X]) && !IS_NAN(c[Geom::Y])) { - Geom::Affine const sm (Geom::Scale(dc->hatch_spacing, dc->hatch_spacing) * Geom::Translate(c)); - sp_canvas_item_affine_absolute(dc->hatch_area, sm); - sp_canvas_bpath_set_stroke(SP_CANVAS_BPATH(dc->hatch_area), 0x7f7f7fff, 1.0, SP_STROKE_LINEJOIN_MITER, SP_STROKE_LINECAP_BUTT); - sp_canvas_item_show(dc->hatch_area); + Geom::Affine const sm (Geom::Scale(this->hatch_spacing, this->hatch_spacing) * Geom::Translate(c)); + sp_canvas_item_affine_absolute(this->hatch_area, sm); + sp_canvas_bpath_set_stroke(SP_CANVAS_BPATH(this->hatch_area), 0x7f7f7fff, 1.0, SP_STROKE_LINEJOIN_MITER, SP_STROKE_LINECAP_BUTT); + sp_canvas_item_show(this->hatch_area); } } } else { - sp_canvas_item_hide(dc->hatch_area); + sp_canvas_item_hide(this->hatch_area); } } break; @@ -794,54 +758,54 @@ gint SPDynaDrawContext::root_handler(GdkEvent* event) { sp_canvas_item_ungrab(SP_CANVAS_ITEM(desktop->acetate), event->button.time); desktop->canvas->endForcedFullRedraws(); - dc->is_drawing = false; + this->is_drawing = false; - if (dc->dragging && event->button.button == 1 && !event_context->space_panning) { - dc->dragging = FALSE; + if (this->dragging && event->button.button == 1 && !this->space_panning) { + this->dragging = FALSE; - sp_dyna_draw_apply(dc, motion_dt); + this->apply(motion_dt); /* Remove all temporary line segments */ - while (dc->segments) { - sp_canvas_item_destroy(SP_CANVAS_ITEM(dc->segments->data)); - dc->segments = g_slist_remove(dc->segments, dc->segments->data); + while (this->segments) { + sp_canvas_item_destroy(SP_CANVAS_ITEM(this->segments->data)); + this->segments = g_slist_remove(this->segments, this->segments->data); } /* Create object */ - fit_and_split(dc, TRUE); - if (accumulate_calligraphic(dc)) - set_to_accumulated(dc, event->button.state & GDK_SHIFT_MASK, event->button.state & GDK_MOD1_MASK); // performs document_done + this->fit_and_split(true); + if (this->accumulate()) + this->set_to_accumulated(event->button.state & GDK_SHIFT_MASK, event->button.state & GDK_MOD1_MASK); // performs document_done else g_warning ("Failed to create path: invalid data in dc->cal1 or dc->cal2"); /* reset accumulated curve */ - dc->accumulated->reset(); + this->accumulated->reset(); - clear_current(dc); - if (dc->repr) { - dc->repr = NULL; + this->clear_current(); + if (this->repr) { + this->repr = NULL; } - if (!dc->hatch_pointer_past.empty()) dc->hatch_pointer_past.clear(); - if (!dc->hatch_nearest_past.empty()) dc->hatch_nearest_past.clear(); - if (!dc->inertia_vectors.empty()) dc->inertia_vectors.clear(); - if (!dc->hatch_vectors.empty()) dc->hatch_vectors.clear(); - dc->hatch_last_nearest = Geom::Point(0,0); - dc->hatch_last_pointer = Geom::Point(0,0); - dc->hatch_escaped = false; - dc->hatch_item = NULL; - dc->hatch_livarot_path = NULL; - dc->just_started_drawing = false; - - if (dc->hatch_spacing != 0 && !dc->keep_selected) { + if (!this->hatch_pointer_past.empty()) this->hatch_pointer_past.clear(); + if (!this->hatch_nearest_past.empty()) this->hatch_nearest_past.clear(); + if (!this->inertia_vectors.empty()) this->inertia_vectors.clear(); + if (!this->hatch_vectors.empty()) this->hatch_vectors.clear(); + this->hatch_last_nearest = Geom::Point(0,0); + this->hatch_last_pointer = Geom::Point(0,0); + this->hatch_escaped = false; + this->hatch_item = NULL; + this->hatch_livarot_path = NULL; + this->just_started_drawing = false; + + if (this->hatch_spacing != 0 && !this->keep_selected) { // we do not select the newly drawn path, so increase spacing by step - if (dc->hatch_spacing_step == 0) { - dc->hatch_spacing_step = dc->hatch_spacing; + if (this->hatch_spacing_step == 0) { + this->hatch_spacing_step = this->hatch_spacing; } - dc->hatch_spacing += dc->hatch_spacing_step; + this->hatch_spacing += this->hatch_spacing_step; } - dc->_message_context->clear(); + this->_message_context->clear(); ret = TRUE; } break; @@ -852,53 +816,53 @@ gint SPDynaDrawContext::root_handler(GdkEvent* event) { case GDK_KEY_Up: case GDK_KEY_KP_Up: if (!MOD__CTRL_ONLY(event)) { - dc->angle += 5.0; - if (dc->angle > 90.0) - dc->angle = 90.0; - sp_ddc_update_toolbox (desktop, "calligraphy-angle", dc->angle); + this->angle += 5.0; + if (this->angle > 90.0) + this->angle = 90.0; + sp_ddc_update_toolbox (desktop, "calligraphy-angle", this->angle); ret = TRUE; } break; case GDK_KEY_Down: case GDK_KEY_KP_Down: if (!MOD__CTRL_ONLY(event)) { - dc->angle -= 5.0; - if (dc->angle < -90.0) - dc->angle = -90.0; - sp_ddc_update_toolbox (desktop, "calligraphy-angle", dc->angle); + this->angle -= 5.0; + if (this->angle < -90.0) + this->angle = -90.0; + sp_ddc_update_toolbox (desktop, "calligraphy-angle", this->angle); ret = TRUE; } break; case GDK_KEY_Right: case GDK_KEY_KP_Right: if (!MOD__CTRL_ONLY(event)) { - dc->width += 0.01; - if (dc->width > 1.0) - dc->width = 1.0; - sp_ddc_update_toolbox (desktop, "altx-calligraphy", dc->width * 100); // the same spinbutton is for alt+x + this->width += 0.01; + if (this->width > 1.0) + this->width = 1.0; + sp_ddc_update_toolbox (desktop, "altx-calligraphy", this->width * 100); // the same spinbutton is for alt+x ret = TRUE; } break; case GDK_KEY_Left: case GDK_KEY_KP_Left: if (!MOD__CTRL_ONLY(event)) { - dc->width -= 0.01; - if (dc->width < 0.01) - dc->width = 0.01; - sp_ddc_update_toolbox (desktop, "altx-calligraphy", dc->width * 100); + this->width -= 0.01; + if (this->width < 0.01) + this->width = 0.01; + sp_ddc_update_toolbox (desktop, "altx-calligraphy", this->width * 100); ret = TRUE; } break; case GDK_KEY_Home: case GDK_KEY_KP_Home: - dc->width = 0.01; - sp_ddc_update_toolbox (desktop, "altx-calligraphy", dc->width * 100); + this->width = 0.01; + sp_ddc_update_toolbox (desktop, "altx-calligraphy", this->width * 100); ret = TRUE; break; case GDK_KEY_End: case GDK_KEY_KP_End: - dc->width = 1.0; - sp_ddc_update_toolbox (desktop, "altx-calligraphy", dc->width * 100); + this->width = 1.0; + sp_ddc_update_toolbox (desktop, "altx-calligraphy", this->width * 100); ret = TRUE; break; case GDK_KEY_x: @@ -909,17 +873,17 @@ gint SPDynaDrawContext::root_handler(GdkEvent* event) { } break; case GDK_KEY_Escape: - if (dc->is_drawing) { + if (this->is_drawing) { // if drawing, cancel, otherwise pass it up for deselecting - calligraphic_cancel (dc); + this->cancel(); ret = TRUE; } break; case GDK_KEY_z: case GDK_KEY_Z: - if (MOD__CTRL_ONLY(event) && dc->is_drawing) { + if (MOD__CTRL_ONLY(event) && this->is_drawing) { // if drawing, cancel, otherwise pass it up for undo - calligraphic_cancel (dc); + this->cancel(); ret = TRUE; } break; @@ -932,13 +896,14 @@ gint SPDynaDrawContext::root_handler(GdkEvent* event) { switch (get_group0_keyval(&event->key)) { case GDK_KEY_Control_L: case GDK_KEY_Control_R: - dc->_message_context->clear(); - dc->hatch_spacing = 0; - dc->hatch_spacing_step = 0; + this->_message_context->clear(); + this->hatch_spacing = 0; + this->hatch_spacing_step = 0; break; default: break; } + break; default: break; @@ -955,26 +920,20 @@ gint SPDynaDrawContext::root_handler(GdkEvent* event) { } -static void -clear_current(SPDynaDrawContext *dc) -{ +void SPDynaDrawContext::clear_current() { /* reset bpath */ - sp_canvas_bpath_set_bpath(SP_CANVAS_BPATH(dc->currentshape), NULL); + sp_canvas_bpath_set_bpath(SP_CANVAS_BPATH(this->currentshape), NULL); /* reset curve */ - dc->currentcurve->reset(); - dc->cal1->reset(); - dc->cal2->reset(); + this->currentcurve->reset(); + this->cal1->reset(); + this->cal2->reset(); /* reset points */ - dc->npoints = 0; + this->npoints = 0; } -static void -set_to_accumulated(SPDynaDrawContext *dc, bool unionize, bool subtract) -{ - SPDesktop *desktop = SP_EVENT_CONTEXT(dc)->desktop; - - if (!dc->accumulated->is_empty()) { - if (!dc->repr) { +void SPDynaDrawContext::set_to_accumulated(bool unionize, bool subtract) { + if (!this->accumulated->is_empty()) { + if (!this->repr) { /* Create object */ Inkscape::XML::Document *xml_doc = desktop->doc()->getReprDoc(); Inkscape::XML::Node *repr = xml_doc->createElement("svg:path"); @@ -982,36 +941,37 @@ set_to_accumulated(SPDynaDrawContext *dc, bool unionize, bool subtract) /* Set style */ sp_desktop_apply_style_tool (desktop, repr, "/tools/calligraphic", false); - dc->repr = repr; + this->repr = repr; - SPItem *item=SP_ITEM(desktop->currentLayer()->appendChildRepr(dc->repr)); - Inkscape::GC::release(dc->repr); + SPItem *item=SP_ITEM(desktop->currentLayer()->appendChildRepr(this->repr)); + Inkscape::GC::release(this->repr); item->transform = SP_ITEM(desktop->currentLayer())->i2doc_affine().inverse(); item->updateRepr(); } - Geom::PathVector pathv = dc->accumulated->get_pathvector() * desktop->dt2doc(); + + Geom::PathVector pathv = this->accumulated->get_pathvector() * desktop->dt2doc(); gchar *str = sp_svg_write_path(pathv); g_assert( str != NULL ); - dc->repr->setAttribute("d", str); + this->repr->setAttribute("d", str); g_free(str); if (unionize) { - sp_desktop_selection(desktop)->add(dc->repr); + sp_desktop_selection(desktop)->add(this->repr); sp_selected_path_union_skip_undo(sp_desktop_selection(desktop), desktop); } else if (subtract) { - sp_desktop_selection(desktop)->add(dc->repr); + sp_desktop_selection(desktop)->add(this->repr); sp_selected_path_diff_skip_undo(sp_desktop_selection(desktop), desktop); } else { - if (dc->keep_selected) { - sp_desktop_selection(desktop)->set(dc->repr); + if (this->keep_selected) { + sp_desktop_selection(desktop)->set(this->repr); } } - } else { - if (dc->repr) { - sp_repr_unparent(dc->repr); + if (this->repr) { + sp_repr_unparent(this->repr); } - dc->repr = NULL; + + this->repr = NULL; } DocumentUndo::done(sp_desktop_document(desktop), SP_VERB_CONTEXT_CALLIGRAPHIC, @@ -1033,54 +993,54 @@ add_cap(SPCurve *curve, } } -static bool -accumulate_calligraphic(SPDynaDrawContext *dc) -{ - if ( - dc->cal1->is_empty() || - dc->cal2->is_empty() || - (dc->cal1->get_segment_count() <= 0) || - dc->cal1->first_path()->closed() - ) { - dc->cal1->reset(); - dc->cal2->reset(); - return false; // failure - } +bool SPDynaDrawContext::accumulate() { + if ( + this->cal1->is_empty() || + this->cal2->is_empty() || + (this->cal1->get_segment_count() <= 0) || + this->cal1->first_path()->closed() + ) { - SPCurve *rev_cal2 = dc->cal2->create_reverse(); - if ( - (rev_cal2->get_segment_count() <= 0) || - rev_cal2->first_path()->closed() - ) { - rev_cal2->unref(); - dc->cal1->reset(); - dc->cal2->reset(); - return false; // failure - } + this->cal1->reset(); + this->cal2->reset(); + + return false; // failure + } + + SPCurve *rev_cal2 = this->cal2->create_reverse(); + + if ((rev_cal2->get_segment_count() <= 0) || rev_cal2->first_path()->closed()) { + rev_cal2->unref(); + + this->cal1->reset(); + this->cal2->reset(); + + return false; // failure + } - Geom::Curve const * dc_cal1_firstseg = dc->cal1->first_segment(); - Geom::Curve const * rev_cal2_firstseg = rev_cal2->first_segment(); - Geom::Curve const * dc_cal1_lastseg = dc->cal1->last_segment(); - Geom::Curve const * rev_cal2_lastseg = rev_cal2->last_segment(); + Geom::Curve const * dc_cal1_firstseg = this->cal1->first_segment(); + Geom::Curve const * rev_cal2_firstseg = rev_cal2->first_segment(); + Geom::Curve const * dc_cal1_lastseg = this->cal1->last_segment(); + Geom::Curve const * rev_cal2_lastseg = rev_cal2->last_segment(); - dc->accumulated->reset(); /* Is this required ?? */ + this->accumulated->reset(); /* Is this required ?? */ - dc->accumulated->append(dc->cal1, false); + this->accumulated->append(this->cal1, false); - add_cap(dc->accumulated, dc_cal1_lastseg->finalPoint(), rev_cal2_firstseg->initialPoint(), dc->cap_rounding); + add_cap(this->accumulated, dc_cal1_lastseg->finalPoint(), rev_cal2_firstseg->initialPoint(), this->cap_rounding); - dc->accumulated->append(rev_cal2, true); + this->accumulated->append(rev_cal2, true); - add_cap(dc->accumulated, rev_cal2_lastseg->finalPoint(), dc_cal1_firstseg->initialPoint(), dc->cap_rounding); + add_cap(this->accumulated, rev_cal2_lastseg->finalPoint(), dc_cal1_firstseg->initialPoint(), this->cap_rounding); - dc->accumulated->closepath(); + this->accumulated->closepath(); - rev_cal2->unref(); + rev_cal2->unref(); - dc->cal1->reset(); - dc->cal2->reset(); + this->cal1->reset(); + this->cal2->reset(); - return true; // success + return true; // success } static double square(double const x) @@ -1088,48 +1048,45 @@ static double square(double const x) return x * x; } -static void -fit_and_split(SPDynaDrawContext *dc, gboolean release) -{ - SPDesktop *desktop = SP_EVENT_CONTEXT(dc)->desktop; - +void SPDynaDrawContext::fit_and_split(bool release) { double const tolerance_sq = square( desktop->w2d().descrim() * TOLERANCE_CALLIGRAPHIC ); #ifdef DYNA_DRAW_VERBOSE g_print("[F&S:R=%c]", release?'T':'F'); #endif - if (!( dc->npoints > 0 && dc->npoints < SAMPLING_SIZE )) + if (!( this->npoints > 0 && this->npoints < SAMPLING_SIZE )) { return; // just clicked + } - if ( dc->npoints == SAMPLING_SIZE - 1 || release ) { + if ( this->npoints == SAMPLING_SIZE - 1 || release ) { #define BEZIER_SIZE 4 #define BEZIER_MAX_BEZIERS 8 #define BEZIER_MAX_LENGTH ( BEZIER_SIZE * BEZIER_MAX_BEZIERS ) #ifdef DYNA_DRAW_VERBOSE g_print("[F&S:#] dc->npoints:%d, release:%s\n", - dc->npoints, release ? "TRUE" : "FALSE"); + this->npoints, release ? "TRUE" : "FALSE"); #endif /* Current calligraphic */ - if ( dc->cal1->is_empty() || dc->cal2->is_empty() ) { + if ( this->cal1->is_empty() || this->cal2->is_empty() ) { /* dc->npoints > 0 */ /* g_print("calligraphics(1|2) reset\n"); */ - dc->cal1->reset(); - dc->cal2->reset(); + this->cal1->reset(); + this->cal2->reset(); - dc->cal1->moveto(dc->point1[0]); - dc->cal2->moveto(dc->point2[0]); + this->cal1->moveto(this->point1[0]); + this->cal2->moveto(this->point2[0]); } Geom::Point b1[BEZIER_MAX_LENGTH]; - gint const nb1 = Geom::bezier_fit_cubic_r(b1, dc->point1, dc->npoints, + gint const nb1 = Geom::bezier_fit_cubic_r(b1, this->point1, this->npoints, tolerance_sq, BEZIER_MAX_BEZIERS); g_assert( nb1 * BEZIER_SIZE <= gint(G_N_ELEMENTS(b1)) ); Geom::Point b2[BEZIER_MAX_LENGTH]; - gint const nb2 = Geom::bezier_fit_cubic_r(b2, dc->point2, dc->npoints, + gint const nb2 = Geom::bezier_fit_cubic_r(b2, this->point2, this->npoints, tolerance_sq, BEZIER_MAX_BEZIERS); g_assert( nb2 * BEZIER_SIZE <= gint(G_N_ELEMENTS(b2)) ); @@ -1140,56 +1097,56 @@ fit_and_split(SPDynaDrawContext *dc, gboolean release) #endif /* CanvasShape */ if (! release) { - dc->currentcurve->reset(); - dc->currentcurve->moveto(b1[0]); + this->currentcurve->reset(); + this->currentcurve->moveto(b1[0]); for (Geom::Point *bp1 = b1; bp1 < b1 + BEZIER_SIZE * nb1; bp1 += BEZIER_SIZE) { - dc->currentcurve->curveto(bp1[1], bp1[2], bp1[3]); + this->currentcurve->curveto(bp1[1], bp1[2], bp1[3]); } - dc->currentcurve->lineto(b2[BEZIER_SIZE*(nb2-1) + 3]); + this->currentcurve->lineto(b2[BEZIER_SIZE*(nb2-1) + 3]); for (Geom::Point *bp2 = b2 + BEZIER_SIZE * ( nb2 - 1 ); bp2 >= b2; bp2 -= BEZIER_SIZE) { - dc->currentcurve->curveto(bp2[2], bp2[1], bp2[0]); + this->currentcurve->curveto(bp2[2], bp2[1], bp2[0]); } // FIXME: dc->segments is always NULL at this point?? - if (!dc->segments) { // first segment - add_cap(dc->currentcurve, b2[0], b1[0], dc->cap_rounding); + if (!this->segments) { // first segment + add_cap(this->currentcurve, b2[0], b1[0], this->cap_rounding); } - dc->currentcurve->closepath(); - sp_canvas_bpath_set_bpath(SP_CANVAS_BPATH(dc->currentshape), dc->currentcurve); + this->currentcurve->closepath(); + sp_canvas_bpath_set_bpath(SP_CANVAS_BPATH(this->currentshape), this->currentcurve); } /* Current calligraphic */ for (Geom::Point *bp1 = b1; bp1 < b1 + BEZIER_SIZE * nb1; bp1 += BEZIER_SIZE) { - dc->cal1->curveto(bp1[1], bp1[2], bp1[3]); + this->cal1->curveto(bp1[1], bp1[2], bp1[3]); } for (Geom::Point *bp2 = b2; bp2 < b2 + BEZIER_SIZE * nb2; bp2 += BEZIER_SIZE) { - dc->cal2->curveto(bp2[1], bp2[2], bp2[3]); + this->cal2->curveto(bp2[1], bp2[2], bp2[3]); } } else { /* fixme: ??? */ #ifdef DYNA_DRAW_VERBOSE g_print("[fit_and_split] failed to fit-cubic.\n"); #endif - draw_temporary_box(dc); + this->draw_temporary_box(); - for (gint i = 1; i < dc->npoints; i++) { - dc->cal1->lineto(dc->point1[i]); + for (gint i = 1; i < this->npoints; i++) { + this->cal1->lineto(this->point1[i]); } - for (gint i = 1; i < dc->npoints; i++) { - dc->cal2->lineto(dc->point2[i]); + for (gint i = 1; i < this->npoints; i++) { + this->cal2->lineto(this->point2[i]); } } /* Fit and draw and copy last point */ #ifdef DYNA_DRAW_VERBOSE - g_print("[%d]Yup\n", dc->npoints); + g_print("[%d]Yup\n", this->npoints); #endif if (!release) { - g_assert(!dc->currentcurve->is_empty()); + g_assert(!this->currentcurve->is_empty()); SPCanvasItem *cbp = sp_canvas_item_new(sp_desktop_sketch(desktop), SP_TYPE_CANVAS_BPATH, NULL); - SPCurve *curve = dc->currentcurve->copy(); + SPCurve *curve = this->currentcurve->copy(); sp_canvas_bpath_set_bpath(SP_CANVAS_BPATH (cbp), curve); curve->unref(); @@ -1205,36 +1162,36 @@ fit_and_split(SPDynaDrawContext *dc, gboolean release) /* fixme: Cannot we cascade it to root more clearly? */ g_signal_connect(G_OBJECT(cbp), "event", G_CALLBACK(sp_desktop_root_handler), desktop); - dc->segments = g_slist_prepend(dc->segments, cbp); + this->segments = g_slist_prepend(this->segments, cbp); } - dc->point1[0] = dc->point1[dc->npoints - 1]; - dc->point2[0] = dc->point2[dc->npoints - 1]; - dc->npoints = 1; + this->point1[0] = this->point1[this->npoints - 1]; + this->point2[0] = this->point2[this->npoints - 1]; + this->npoints = 1; } else { - draw_temporary_box(dc); + this->draw_temporary_box(); } } -static void -draw_temporary_box(SPDynaDrawContext *dc) -{ - dc->currentcurve->reset(); +void SPDynaDrawContext::draw_temporary_box() { + this->currentcurve->reset(); - dc->currentcurve->moveto(dc->point2[dc->npoints-1]); - for (gint i = dc->npoints-2; i >= 0; i--) { - dc->currentcurve->lineto(dc->point2[i]); + this->currentcurve->moveto(this->point2[this->npoints-1]); + + for (gint i = this->npoints-2; i >= 0; i--) { + this->currentcurve->lineto(this->point2[i]); } - for (gint i = 0; i < dc->npoints; i++) { - dc->currentcurve->lineto(dc->point1[i]); + + for (gint i = 0; i < this->npoints; i++) { + this->currentcurve->lineto(this->point1[i]); } - if (dc->npoints >= 2) { - add_cap(dc->currentcurve, dc->point1[dc->npoints-1], dc->point2[dc->npoints-1], dc->cap_rounding); + if (this->npoints >= 2) { + add_cap(this->currentcurve, this->point1[this->npoints-1], this->point2[this->npoints-1], this->cap_rounding); } - dc->currentcurve->closepath(); - sp_canvas_bpath_set_bpath(SP_CANVAS_BPATH(dc->currentshape), dc->currentcurve); + this->currentcurve->closepath(); + sp_canvas_bpath_set_bpath(SP_CANVAS_BPATH(this->currentshape), this->currentcurve); } /* diff --git a/src/dyna-draw-context.h b/src/dyna-draw-context.h index cfb6b2b12..36a429a8d 100644 --- a/src/dyna-draw-context.h +++ b/src/dyna-draw-context.h @@ -21,10 +21,6 @@ #include "common-context.h" #include "splivarot.h" -#define SP_DYNA_DRAW_CONTEXT(obj) ((SPDynaDrawContext*)obj) -#define SP_IS_DYNA_DRAW_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj)) - - #define DDC_MIN_PRESSURE 0.0 #define DDC_MAX_PRESSURE 1.0 #define DDC_DEFAULT_PRESSURE 1.0 @@ -38,6 +34,15 @@ public: SPDynaDrawContext(); virtual ~SPDynaDrawContext(); + static const std::string prefsPath; + + virtual void setup(); + virtual void set(const Inkscape::Preferences::Entry& val); + virtual bool root_handler(GdkEvent* event); + + virtual const std::string& getPrefsPath(); + +private: /** newly created object remain selected */ bool keep_selected; @@ -55,13 +60,16 @@ public: bool just_started_drawing; bool trace_bg; - static const std::string prefsPath; - - virtual void setup(); - virtual void set(const Inkscape::Preferences::Entry& val); - virtual gint root_handler(GdkEvent* event); - - virtual const std::string& getPrefsPath(); + void clear_current(); + void set_to_accumulated(bool unionize, bool subtract); + bool accumulate(); + void fit_and_split(bool release); + void draw_temporary_box(); + void cancel(); + void brush(); + bool apply(Geom::Point p); + void extinput(GdkEvent *event); + void reset(Geom::Point p); }; #endif // SP_DYNA_DRAW_CONTEXT_H_SEEN diff --git a/src/eraser-context.cpp b/src/eraser-context.cpp index 63737da61..6391419eb 100644 --- a/src/eraser-context.cpp +++ b/src/eraser-context.cpp @@ -83,18 +83,6 @@ using Inkscape::DocumentUndo; #define DRAG_DEFAULT 1.0 #define DRAG_MAX 1.0 -static void clear_current(SPEraserContext *dc); -static void set_to_accumulated(SPEraserContext *dc); -static void add_cap(SPCurve *curve, Geom::Point const &pre, Geom::Point const &from, Geom::Point const &to, Geom::Point const &post, double rounding); -static void accumulate_eraser(SPEraserContext *dc); - -static void fit_and_split(SPEraserContext *erc, gboolean release); - -static void sp_eraser_reset(SPEraserContext *erc, Geom::Point p); -static Geom::Point sp_eraser_get_npoint(SPEraserContext const *erc, Geom::Point v); -static Geom::Point sp_eraser_get_vpoint(SPEraserContext const *erc, Geom::Point n); -static void draw_temporary_box(SPEraserContext *dc); - #include "tool-factory.h" namespace { @@ -181,66 +169,42 @@ flerp(double f0, double f1, double p) return f0 + ( f1 - f0 ) * p; } -/* Get normalized point */ -static Geom::Point -sp_eraser_get_npoint(SPEraserContext const *dc, Geom::Point v) -{ - Geom::Rect drect = SP_EVENT_CONTEXT(dc)->desktop->get_display_area(); - double const max = MAX ( drect.dimensions()[Geom::X], drect.dimensions()[Geom::Y] ); - return Geom::Point(( v[Geom::X] - drect.min()[Geom::X] ) / max, ( v[Geom::Y] - drect.min()[Geom::Y] ) / max); -} - -/* Get view point */ -static Geom::Point -sp_eraser_get_vpoint(SPEraserContext const *dc, Geom::Point n) -{ - Geom::Rect drect = SP_EVENT_CONTEXT(dc)->desktop->get_display_area(); - double const max = MAX ( drect.dimensions()[Geom::X], drect.dimensions()[Geom::Y] ); - return Geom::Point(n[Geom::X] * max + drect.min()[Geom::X], n[Geom::Y] * max + drect.min()[Geom::Y]); -} - -static void -sp_eraser_reset(SPEraserContext *dc, Geom::Point p) -{ - dc->last = dc->cur = sp_eraser_get_npoint(dc, p); - dc->vel = Geom::Point(0,0); - dc->vel_max = 0; - dc->acc = Geom::Point(0,0); - dc->ang = Geom::Point(0,0); - dc->del = Geom::Point(0,0); +void SPEraserContext::reset(Geom::Point p) { + this->last = this->cur = getNormalizedPoint(p); + this->vel = Geom::Point(0,0); + this->vel_max = 0; + this->acc = Geom::Point(0,0); + this->ang = Geom::Point(0,0); + this->del = Geom::Point(0,0); } -static void -sp_eraser_extinput(SPEraserContext *dc, GdkEvent *event) -{ - if (gdk_event_get_axis (event, GDK_AXIS_PRESSURE, &dc->pressure)) - dc->pressure = CLAMP (dc->pressure, ERC_MIN_PRESSURE, ERC_MAX_PRESSURE); +void SPEraserContext::extinput(GdkEvent *event) { + if (gdk_event_get_axis (event, GDK_AXIS_PRESSURE, &this->pressure)) + this->pressure = CLAMP (this->pressure, ERC_MIN_PRESSURE, ERC_MAX_PRESSURE); else - dc->pressure = ERC_DEFAULT_PRESSURE; + this->pressure = ERC_DEFAULT_PRESSURE; - if (gdk_event_get_axis (event, GDK_AXIS_XTILT, &dc->xtilt)) - dc->xtilt = CLAMP (dc->xtilt, ERC_MIN_TILT, ERC_MAX_TILT); + if (gdk_event_get_axis (event, GDK_AXIS_XTILT, &this->xtilt)) + this->xtilt = CLAMP (this->xtilt, ERC_MIN_TILT, ERC_MAX_TILT); else - dc->xtilt = ERC_DEFAULT_TILT; + this->xtilt = ERC_DEFAULT_TILT; - if (gdk_event_get_axis (event, GDK_AXIS_YTILT, &dc->ytilt)) - dc->ytilt = CLAMP (dc->ytilt, ERC_MIN_TILT, ERC_MAX_TILT); + if (gdk_event_get_axis (event, GDK_AXIS_YTILT, &this->ytilt)) + this->ytilt = CLAMP (this->ytilt, ERC_MIN_TILT, ERC_MAX_TILT); else - dc->ytilt = ERC_DEFAULT_TILT; + this->ytilt = ERC_DEFAULT_TILT; } -static gboolean -sp_eraser_apply(SPEraserContext *dc, Geom::Point p) -{ - Geom::Point n = sp_eraser_get_npoint(dc, p); +bool SPEraserContext::apply(Geom::Point p) { + Geom::Point n = getNormalizedPoint(p); /* Calculate mass and drag */ - double const mass = flerp(1.0, 160.0, dc->mass); - double const drag = flerp(0.0, 0.5, dc->drag * dc->drag); + double const mass = flerp(1.0, 160.0, this->mass); + double const drag = flerp(0.0, 0.5, this->drag * this->drag); /* Calculate force and acceleration */ - Geom::Point force = n - dc->cur; + Geom::Point force = n - this->cur; // If force is below the absolute threshold ERASER_EPSILON, // or we haven't yet reached ERASER_VEL_START (i.e. at the beginning of stroke) @@ -249,27 +213,27 @@ sp_eraser_apply(SPEraserContext *dc, Geom::Point p) // This prevents flips, blobs, and jerks caused by microscopic tremor of the tablet pen, // especially bothersome at the start of the stroke where we don't yet have the inertia to // smooth them out. - if ( Geom::L2(force) < ERASER_EPSILON || (dc->vel_max < ERASER_VEL_START && Geom::L2(force) < ERASER_EPSILON_START)) { + if ( Geom::L2(force) < ERASER_EPSILON || (this->vel_max < ERASER_VEL_START && Geom::L2(force) < ERASER_EPSILON_START)) { return FALSE; } - dc->acc = force / mass; + this->acc = force / mass; /* Calculate new velocity */ - dc->vel += dc->acc; + this->vel += this->acc; - if (Geom::L2(dc->vel) > dc->vel_max) - dc->vel_max = Geom::L2(dc->vel); + if (Geom::L2(this->vel) > this->vel_max) + this->vel_max = Geom::L2(this->vel); /* Calculate angle of drawing tool */ double a1; - if (dc->usetilt) { + if (this->usetilt) { // 1a. calculate nib angle from input device tilt: - gdouble length = std::sqrt(dc->xtilt*dc->xtilt + dc->ytilt*dc->ytilt);; + gdouble length = std::sqrt(this->xtilt*this->xtilt + this->ytilt*this->ytilt);; if (length > 0) { - Geom::Point ang1 = Geom::Point(dc->ytilt/length, dc->xtilt/length); + Geom::Point ang1 = Geom::Point(this->ytilt/length, this->xtilt/length); a1 = atan2(ang1); } else @@ -277,17 +241,17 @@ sp_eraser_apply(SPEraserContext *dc, Geom::Point p) } else { // 1b. fixed dc->angle (absolutely flat nib): - double const radians = ( (dc->angle - 90) / 180.0 ) * M_PI; + double const radians = ( (this->angle - 90) / 180.0 ) * M_PI; Geom::Point ang1 = Geom::Point(-sin(radians), cos(radians)); a1 = atan2(ang1); } // 2. perpendicular to dc->vel (absolutely non-flat nib): - gdouble const mag_vel = Geom::L2(dc->vel); + gdouble const mag_vel = Geom::L2(this->vel); if ( mag_vel < ERASER_EPSILON ) { return FALSE; } - Geom::Point ang2 = Geom::rot90(dc->vel) / mag_vel; + Geom::Point ang2 = Geom::rot90(this->vel) / mag_vel; // 3. Average them using flatness parameter: // calculate angles @@ -305,52 +269,50 @@ sp_eraser_apply(SPEraserContext *dc, Geom::Point p) a2 += 2*M_PI; // find the flatness-weighted bisector angle, unflip if a2 was flipped // FIXME: when dc->vel is oscillating around the fixed angle, the new_ang flips back and forth. How to avoid this? - double new_ang = a1 + (1 - dc->flatness) * (a2 - a1) - (flipped? M_PI : 0); + double new_ang = a1 + (1 - this->flatness) * (a2 - a1) - (flipped? M_PI : 0); // Try to detect a sudden flip when the new angle differs too much from the previous for the // current velocity; in that case discard this move - double angle_delta = Geom::L2(Geom::Point (cos (new_ang), sin (new_ang)) - dc->ang); - if ( angle_delta / Geom::L2(dc->vel) > 4000 ) { + double angle_delta = Geom::L2(Geom::Point (cos (new_ang), sin (new_ang)) - this->ang); + if ( angle_delta / Geom::L2(this->vel) > 4000 ) { return FALSE; } // convert to point - dc->ang = Geom::Point (cos (new_ang), sin (new_ang)); + this->ang = Geom::Point (cos (new_ang), sin (new_ang)); // g_print ("force %g acc %g vel_max %g vel %g a1 %g a2 %g new_ang %g\n", Geom::L2(force), Geom::L2(dc->acc), dc->vel_max, Geom::L2(dc->vel), a1, a2, new_ang); /* Apply drag */ - dc->vel *= 1.0 - drag; + this->vel *= 1.0 - drag; /* Update position */ - dc->last = dc->cur; - dc->cur += dc->vel; + this->last = this->cur; + this->cur += this->vel; return TRUE; } -static void -sp_eraser_brush(SPEraserContext *dc) -{ - g_assert( dc->npoints >= 0 && dc->npoints < SAMPLING_SIZE ); +void SPEraserContext::brush() { + g_assert( this->npoints >= 0 && this->npoints < SAMPLING_SIZE ); // How much velocity thins strokestyle - double vel_thin = flerp (0, 160, dc->vel_thin); + double vel_thin = flerp (0, 160, this->vel_thin); // Influence of pressure on thickness - double pressure_thick = (dc->usepressure ? dc->pressure : 1.0); + double pressure_thick = (this->usepressure ? this->pressure : 1.0); // get the real brush point, not the same as pointer (affected by hatch tracking and/or mass // drag) - Geom::Point brush = sp_eraser_get_vpoint(dc, dc->cur); + Geom::Point brush = getViewPoint(this->cur); //Geom::Point brush_w = SP_EVENT_CONTEXT(dc)->desktop->d2w(brush); double trace_thick = 1; - double width = (pressure_thick * trace_thick - vel_thin * Geom::L2(dc->vel)) * dc->width; + double width = (pressure_thick * trace_thick - vel_thin * Geom::L2(this->vel)) * this->width; double tremble_left = 0, tremble_right = 0; - if (dc->tremor > 0) { + if (this->tremor > 0) { // obtain two normally distributed random variables, using polar Box-Muller transform double x1, x2, w, y1, y2; do { @@ -367,28 +329,28 @@ sp_eraser_brush(SPEraserContext *dc) // (2) deflection depends on width, but is upped for small widths for better visual uniformity across widths; // (3) deflection somewhat depends on speed, to prevent fast strokes looking // comparatively smooth and slow ones excessively jittery - tremble_left = (y1)*dc->tremor * (0.15 + 0.8*width) * (0.35 + 14*Geom::L2(dc->vel)); - tremble_right = (y2)*dc->tremor * (0.15 + 0.8*width) * (0.35 + 14*Geom::L2(dc->vel)); + tremble_left = (y1)*this->tremor * (0.15 + 0.8*width) * (0.35 + 14*Geom::L2(this->vel)); + tremble_right = (y2)*this->tremor * (0.15 + 0.8*width) * (0.35 + 14*Geom::L2(this->vel)); } - if ( width < 0.02 * dc->width ) { - width = 0.02 * dc->width; + if ( width < 0.02 * this->width ) { + width = 0.02 * this->width; } double dezoomify_factor = 0.05 * 1000; - if (!dc->abs_width) { - dezoomify_factor /= SP_EVENT_CONTEXT(dc)->desktop->current_zoom(); + if (!this->abs_width) { + dezoomify_factor /= SP_EVENT_CONTEXT(this)->desktop->current_zoom(); } - Geom::Point del_left = dezoomify_factor * (width + tremble_left) * dc->ang; - Geom::Point del_right = dezoomify_factor * (width + tremble_right) * dc->ang; + Geom::Point del_left = dezoomify_factor * (width + tremble_left) * this->ang; + Geom::Point del_right = dezoomify_factor * (width + tremble_right) * this->ang; - dc->point1[dc->npoints] = brush + del_left; - dc->point2[dc->npoints] = brush - del_right; + this->point1[this->npoints] = brush + del_left; + this->point2[this->npoints] = brush - del_right; - dc->del = 0.5*(del_left + del_right); + this->del = 0.5*(del_left + del_right); - dc->npoints++; + this->npoints++; } static void @@ -397,27 +359,25 @@ sp_erc_update_toolbox (SPDesktop *desktop, const gchar *id, double value) desktop->setToolboxAdjustmentValue (id, value); } -static void -eraser_cancel(SPEraserContext *dc) -{ - SPDesktop *desktop = SP_EVENT_CONTEXT(dc)->desktop; - dc->dragging = FALSE; - dc->is_drawing = false; +void SPEraserContext::cancel() { + SPDesktop *desktop = SP_EVENT_CONTEXT(this)->desktop; + this->dragging = FALSE; + this->is_drawing = false; sp_canvas_item_ungrab(SP_CANVAS_ITEM(desktop->acetate), 0); /* Remove all temporary line segments */ - while (dc->segments) { - sp_canvas_item_destroy(SP_CANVAS_ITEM(dc->segments->data)); - dc->segments = g_slist_remove(dc->segments, dc->segments->data); + while (this->segments) { + sp_canvas_item_destroy(SP_CANVAS_ITEM(this->segments->data)); + this->segments = g_slist_remove(this->segments, this->segments->data); } /* reset accumulated curve */ - dc->accumulated->reset(); - clear_current(dc); - if (dc->repr) { - dc->repr = NULL; + this->accumulated->reset(); + this->clear_current(); + if (this->repr) { + this->repr = NULL; } } -gint SPEraserContext::root_handler(GdkEvent* event) { +bool SPEraserContext::root_handler(GdkEvent* event) { gint ret = FALSE; switch (event->type) { @@ -430,9 +390,9 @@ gint SPEraserContext::root_handler(GdkEvent* event) { Geom::Point const button_w(event->button.x, event->button.y); Geom::Point const button_dt(desktop->w2d(button_w)); - sp_eraser_reset(this, button_dt); - sp_eraser_extinput(this, event); - sp_eraser_apply(this, button_dt); + this->reset(button_dt); + this->extinput(event); + this->apply(button_dt); this->accumulated->reset(); @@ -465,7 +425,7 @@ gint SPEraserContext::root_handler(GdkEvent* event) { Geom::Point const motion_w(event->motion.x, event->motion.y); Geom::Point motion_dt(desktop->w2d(motion_w) ); - sp_eraser_extinput(this, event); + this->extinput(event); this->_message_context->clear(); @@ -474,15 +434,15 @@ gint SPEraserContext::root_handler(GdkEvent* event) { this->_message_context->set(Inkscape::NORMAL_MESSAGE, _("Drawing an eraser stroke")); - if (!sp_eraser_apply(this, motion_dt)) { + if (!this->apply(motion_dt)) { ret = TRUE; break; } if ( this->cur != this->last ) { - sp_eraser_brush(this); + this->brush(); g_assert( this->npoints > 0 ); - fit_and_split(this, FALSE); + this->fit_and_split(false); } ret = TRUE; @@ -503,7 +463,7 @@ gint SPEraserContext::root_handler(GdkEvent* event) { if (this->dragging && event->button.button == 1 && !this->space_panning) { this->dragging = FALSE; - sp_eraser_apply(this, motion_dt); + this->apply(motion_dt); /* Remove all temporary line segments */ while (this->segments) { @@ -512,14 +472,14 @@ gint SPEraserContext::root_handler(GdkEvent* event) { } /* Create object */ - fit_and_split(this, TRUE); - accumulate_eraser(this); - set_to_accumulated(this); // performs document_done + this->fit_and_split(true); + this->accumulate(); + this->set_to_accumulated(); // performs document_done /* reset accumulated curve */ this->accumulated->reset(); - clear_current(this); + this->clear_current(); if (this->repr) { this->repr = NULL; } @@ -620,7 +580,7 @@ gint SPEraserContext::root_handler(GdkEvent* event) { if (this->is_drawing) { // if drawing, cancel, otherwise pass it up for deselecting - eraser_cancel (this); + this->cancel(); ret = TRUE; } break; @@ -629,7 +589,7 @@ gint SPEraserContext::root_handler(GdkEvent* event) { case GDK_KEY_Z: if (MOD__CTRL_ONLY(event) && this->is_drawing) { // if drawing, cancel, otherwise pass it up for undo - eraser_cancel (this); + this->cancel(); ret = TRUE; } break; @@ -662,29 +622,24 @@ gint SPEraserContext::root_handler(GdkEvent* event) { return ret; } -static void -clear_current(SPEraserContext *dc) -{ +void SPEraserContext::clear_current() { // reset bpath - sp_canvas_bpath_set_bpath(SP_CANVAS_BPATH(dc->currentshape), NULL); + sp_canvas_bpath_set_bpath(SP_CANVAS_BPATH(this->currentshape), NULL); // reset curve - dc->currentcurve->reset(); - dc->cal1->reset(); - dc->cal2->reset(); + this->currentcurve->reset(); + this->cal1->reset(); + this->cal2->reset(); // reset points - dc->npoints = 0; + this->npoints = 0; } -static void -set_to_accumulated(SPEraserContext *dc) -{ - SPDesktop *desktop = SP_EVENT_CONTEXT(dc)->desktop; +void SPEraserContext::set_to_accumulated() { bool workDone = false; - if (!dc->accumulated->is_empty()) { - if (!dc->repr) { + if (!this->accumulated->is_empty()) { + if (!this->repr) { /* Create object */ Inkscape::XML::Document *xml_doc = desktop->doc()->getReprDoc(); Inkscape::XML::Node *repr = xml_doc->createElement("svg:path"); @@ -692,22 +647,22 @@ set_to_accumulated(SPEraserContext *dc) /* Set style */ sp_desktop_apply_style_tool (desktop, repr, "/tools/eraser", false); - dc->repr = repr; + this->repr = repr; - SPItem *item=SP_ITEM(desktop->currentLayer()->appendChildRepr(dc->repr)); - Inkscape::GC::release(dc->repr); + SPItem *item=SP_ITEM(desktop->currentLayer()->appendChildRepr(this->repr)); + Inkscape::GC::release(this->repr); item->transform = SP_ITEM(desktop->currentLayer())->i2doc_affine().inverse(); item->updateRepr(); } - Geom::PathVector pathv = dc->accumulated->get_pathvector() * desktop->dt2doc(); + Geom::PathVector pathv = this->accumulated->get_pathvector() * desktop->dt2doc(); gchar *str = sp_svg_write_path(pathv); g_assert( str != NULL ); - dc->repr->setAttribute("d", str); + this->repr->setAttribute("d", str); g_free(str); - if ( dc->repr ) { + if ( this->repr ) { bool wasSelection = false; Inkscape::Selection *selection = sp_desktop_selection(desktop); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); @@ -715,7 +670,7 @@ set_to_accumulated(SPEraserContext *dc) gint eraserMode = prefs->getBool("/tools/eraser/mode") ? 1 : 0; Inkscape::XML::Document *xml_doc = desktop->doc()->getReprDoc(); - SPItem* acid = SP_ITEM(desktop->doc()->getObjectByRepr(dc->repr)); + SPItem* acid = SP_ITEM(desktop->doc()->getObjectByRepr(this->repr)); Geom::OptRect eraserBbox = acid->visualBounds(); Geom::Rect bounds = (*eraserBbox) * desktop->doc2dt(); std::vector remainingItems; @@ -744,8 +699,8 @@ set_to_accumulated(SPEraserContext *dc) Geom::OptRect bbox = item->visualBounds(); if (bbox && bbox->intersects(*eraserBbox)) { - Inkscape::XML::Node* dup = dc->repr->duplicate(xml_doc); - dc->repr->parent()->appendChild(dup); + Inkscape::XML::Node* dup = this->repr->duplicate(xml_doc); + this->repr->parent()->appendChild(dup); Inkscape::GC::release(dup); // parent takes over selection->set(item); @@ -798,13 +753,13 @@ set_to_accumulated(SPEraserContext *dc) } // Remove the eraser stroke itself: - sp_repr_unparent( dc->repr ); - dc->repr = 0; + sp_repr_unparent( this->repr ); + this->repr = 0; } } else { - if (dc->repr) { - sp_repr_unparent(dc->repr); - dc->repr = 0; + if (this->repr) { + sp_repr_unparent(this->repr); + this->repr = 0; } } @@ -848,21 +803,19 @@ add_cap(SPCurve *curve, } } -static void -accumulate_eraser(SPEraserContext *dc) -{ - if ( !dc->cal1->is_empty() && !dc->cal2->is_empty() ) { - dc->accumulated->reset(); /* Is this required ?? */ - SPCurve *rev_cal2 = dc->cal2->create_reverse(); +void SPEraserContext::accumulate() { + if ( !this->cal1->is_empty() && !this->cal2->is_empty() ) { + this->accumulated->reset(); /* Is this required ?? */ + SPCurve *rev_cal2 = this->cal2->create_reverse(); - g_assert(dc->cal1->get_segment_count() > 0); + g_assert(this->cal1->get_segment_count() > 0); g_assert(rev_cal2->get_segment_count() > 0); - g_assert( ! dc->cal1->first_path()->closed() ); + g_assert( ! this->cal1->first_path()->closed() ); g_assert( ! rev_cal2->first_path()->closed() ); - Geom::CubicBezier const * dc_cal1_firstseg = dynamic_cast( dc->cal1->first_segment() ); + Geom::CubicBezier const * dc_cal1_firstseg = dynamic_cast( this->cal1->first_segment() ); Geom::CubicBezier const * rev_cal2_firstseg = dynamic_cast( rev_cal2->first_segment() ); - Geom::CubicBezier const * dc_cal1_lastseg = dynamic_cast( dc->cal1->last_segment() ); + Geom::CubicBezier const * dc_cal1_lastseg = dynamic_cast( this->cal1->last_segment() ); Geom::CubicBezier const * rev_cal2_lastseg = dynamic_cast( rev_cal2->last_segment() ); g_assert( dc_cal1_firstseg ); @@ -870,20 +823,20 @@ accumulate_eraser(SPEraserContext *dc) g_assert( dc_cal1_lastseg ); g_assert( rev_cal2_lastseg ); - dc->accumulated->append(dc->cal1, FALSE); + this->accumulated->append(this->cal1, FALSE); - add_cap(dc->accumulated, (*dc_cal1_lastseg)[2], (*dc_cal1_lastseg)[3], (*rev_cal2_firstseg)[0], (*rev_cal2_firstseg)[1], dc->cap_rounding); + add_cap(this->accumulated, (*dc_cal1_lastseg)[2], (*dc_cal1_lastseg)[3], (*rev_cal2_firstseg)[0], (*rev_cal2_firstseg)[1], this->cap_rounding); - dc->accumulated->append(rev_cal2, TRUE); + this->accumulated->append(rev_cal2, TRUE); - add_cap(dc->accumulated, (*rev_cal2_lastseg)[2], (*rev_cal2_lastseg)[3], (*dc_cal1_firstseg)[0], (*dc_cal1_firstseg)[1], dc->cap_rounding); + add_cap(this->accumulated, (*rev_cal2_lastseg)[2], (*rev_cal2_lastseg)[3], (*dc_cal1_firstseg)[0], (*dc_cal1_firstseg)[1], this->cap_rounding); - dc->accumulated->closepath(); + this->accumulated->closepath(); rev_cal2->unref(); - dc->cal1->reset(); - dc->cal2->reset(); + this->cal1->reset(); + this->cal2->reset(); } } @@ -892,47 +845,43 @@ static double square(double const x) return x * x; } -static void -fit_and_split(SPEraserContext *dc, gboolean release) -{ - SPDesktop *desktop = SP_EVENT_CONTEXT(dc)->desktop; - +void SPEraserContext::fit_and_split(bool release) { double const tolerance_sq = square( desktop->w2d().descrim() * TOLERANCE_ERASER ); #ifdef ERASER_VERBOSE g_print("[F&S:R=%c]", release?'T':'F'); #endif - if (!( dc->npoints > 0 && dc->npoints < SAMPLING_SIZE )) + if (!( this->npoints > 0 && this->npoints < SAMPLING_SIZE )) return; // just clicked - if ( dc->npoints == SAMPLING_SIZE - 1 || release ) { + if ( this->npoints == SAMPLING_SIZE - 1 || release ) { #define BEZIER_SIZE 4 #define BEZIER_MAX_BEZIERS 8 #define BEZIER_MAX_LENGTH ( BEZIER_SIZE * BEZIER_MAX_BEZIERS ) #ifdef ERASER_VERBOSE - g_print("[F&S:#] dc->npoints:%d, release:%s\n", + g_print("[F&S:#] this->npoints:%d, release:%s\n", dc->npoints, release ? "TRUE" : "FALSE"); #endif /* Current eraser */ - if ( dc->cal1->is_empty() || dc->cal2->is_empty() ) { + if ( this->cal1->is_empty() || this->cal2->is_empty() ) { /* dc->npoints > 0 */ /* g_print("erasers(1|2) reset\n"); */ - dc->cal1->reset(); - dc->cal2->reset(); + this->cal1->reset(); + this->cal2->reset(); - dc->cal1->moveto(dc->point1[0]); - dc->cal2->moveto(dc->point2[0]); + this->cal1->moveto(this->point1[0]); + this->cal2->moveto(this->point2[0]); } Geom::Point b1[BEZIER_MAX_LENGTH]; - gint const nb1 = Geom::bezier_fit_cubic_r(b1, dc->point1, dc->npoints, tolerance_sq, BEZIER_MAX_BEZIERS); + gint const nb1 = Geom::bezier_fit_cubic_r(b1, this->point1, this->npoints, tolerance_sq, BEZIER_MAX_BEZIERS); g_assert( nb1 * BEZIER_SIZE <= gint(G_N_ELEMENTS(b1)) ); Geom::Point b2[BEZIER_MAX_LENGTH]; - gint const nb2 = Geom::bezier_fit_cubic_r(b2, dc->point2, dc->npoints, tolerance_sq, BEZIER_MAX_BEZIERS); + gint const nb2 = Geom::bezier_fit_cubic_r(b2, this->point2, this->npoints, tolerance_sq, BEZIER_MAX_BEZIERS); g_assert( nb2 * BEZIER_SIZE <= gint(G_N_ELEMENTS(b2)) ); if ( nb1 != -1 && nb2 != -1 ) { @@ -943,63 +892,63 @@ fit_and_split(SPEraserContext *dc, gboolean release) /* CanvasShape */ if (! release) { - dc->currentcurve->reset(); - dc->currentcurve->moveto(b1[0]); + this->currentcurve->reset(); + this->currentcurve->moveto(b1[0]); for (Geom::Point *bp1 = b1; bp1 < b1 + BEZIER_SIZE * nb1; bp1 += BEZIER_SIZE) { - dc->currentcurve->curveto(bp1[1], bp1[2], bp1[3]); + this->currentcurve->curveto(bp1[1], bp1[2], bp1[3]); } - dc->currentcurve->lineto(b2[BEZIER_SIZE*(nb2-1) + 3]); + this->currentcurve->lineto(b2[BEZIER_SIZE*(nb2-1) + 3]); for (Geom::Point *bp2 = b2 + BEZIER_SIZE * ( nb2 - 1 ); bp2 >= b2; bp2 -= BEZIER_SIZE) { - dc->currentcurve->curveto(bp2[2], bp2[1], bp2[0]); + this->currentcurve->curveto(bp2[2], bp2[1], bp2[0]); } - // FIXME: dc->segments is always NULL at this point?? - if (!dc->segments) { // first segment - add_cap(dc->currentcurve, b2[1], b2[0], b1[0], b1[1], dc->cap_rounding); + // FIXME: this->segments is always NULL at this point?? + if (!this->segments) { // first segment + add_cap(this->currentcurve, b2[1], b2[0], b1[0], b1[1], this->cap_rounding); } - dc->currentcurve->closepath(); - sp_canvas_bpath_set_bpath(SP_CANVAS_BPATH(dc->currentshape), dc->currentcurve); + this->currentcurve->closepath(); + sp_canvas_bpath_set_bpath(SP_CANVAS_BPATH(this->currentshape), this->currentcurve); } /* Current eraser */ for (Geom::Point *bp1 = b1; bp1 < b1 + BEZIER_SIZE * nb1; bp1 += BEZIER_SIZE) { - dc->cal1->curveto(bp1[1], bp1[2], bp1[3]); + this->cal1->curveto(bp1[1], bp1[2], bp1[3]); } for (Geom::Point *bp2 = b2; bp2 < b2 + BEZIER_SIZE * nb2; bp2 += BEZIER_SIZE) { - dc->cal2->curveto(bp2[1], bp2[2], bp2[3]); + this->cal2->curveto(bp2[1], bp2[2], bp2[3]); } } else { /* fixme: ??? */ #ifdef ERASER_VERBOSE g_print("[fit_and_split] failed to fit-cubic.\n"); #endif - draw_temporary_box(dc); + this->draw_temporary_box(); - for (gint i = 1; i < dc->npoints; i++) { - dc->cal1->lineto(dc->point1[i]); + for (gint i = 1; i < this->npoints; i++) { + this->cal1->lineto(this->point1[i]); } - for (gint i = 1; i < dc->npoints; i++) { - dc->cal2->lineto(dc->point2[i]); + for (gint i = 1; i < this->npoints; i++) { + this->cal2->lineto(this->point2[i]); } } /* Fit and draw and copy last point */ #ifdef ERASER_VERBOSE - g_print("[%d]Yup\n", dc->npoints); + g_print("[%d]Yup\n", this->npoints); #endif if (!release) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); gint eraserMode = prefs->getBool("/tools/eraser/mode") ? 1 : 0; - g_assert(!dc->currentcurve->is_empty()); + g_assert(!this->currentcurve->is_empty()); SPCanvasItem *cbp = sp_canvas_item_new(sp_desktop_sketch(desktop), SP_TYPE_CANVAS_BPATH, NULL); - SPCurve *curve = dc->currentcurve->copy(); + SPCurve *curve = this->currentcurve->copy(); sp_canvas_bpath_set_bpath(SP_CANVAS_BPATH (cbp), curve); curve->unref(); @@ -1015,43 +964,41 @@ fit_and_split(SPEraserContext *dc, gboolean release) /* fixme: Cannot we cascade it to root more clearly? */ g_signal_connect(G_OBJECT(cbp), "event", G_CALLBACK(sp_desktop_root_handler), desktop); - dc->segments = g_slist_prepend(dc->segments, cbp); + this->segments = g_slist_prepend(this->segments, cbp); if ( !eraserMode ) { sp_canvas_item_hide(cbp); - sp_canvas_item_hide(dc->currentshape); + sp_canvas_item_hide(this->currentshape); } } - dc->point1[0] = dc->point1[dc->npoints - 1]; - dc->point2[0] = dc->point2[dc->npoints - 1]; - dc->npoints = 1; + this->point1[0] = this->point1[this->npoints - 1]; + this->point2[0] = this->point2[this->npoints - 1]; + this->npoints = 1; } else { - draw_temporary_box(dc); + this->draw_temporary_box(); } } -static void -draw_temporary_box(SPEraserContext *dc) -{ - dc->currentcurve->reset(); +void SPEraserContext::draw_temporary_box() { + this->currentcurve->reset(); - dc->currentcurve->moveto(dc->point1[dc->npoints-1]); + this->currentcurve->moveto(this->point1[this->npoints-1]); - for (gint i = dc->npoints-2; i >= 0; i--) { - dc->currentcurve->lineto(dc->point1[i]); + for (gint i = this->npoints-2; i >= 0; i--) { + this->currentcurve->lineto(this->point1[i]); } - for (gint i = 0; i < dc->npoints; i++) { - dc->currentcurve->lineto(dc->point2[i]); + for (gint i = 0; i < this->npoints; i++) { + this->currentcurve->lineto(this->point2[i]); } - if (dc->npoints >= 2) { - add_cap(dc->currentcurve, dc->point2[dc->npoints-2], dc->point2[dc->npoints-1], dc->point1[dc->npoints-1], dc->point1[dc->npoints-2], dc->cap_rounding); + if (this->npoints >= 2) { + add_cap(this->currentcurve, this->point2[this->npoints-2], this->point2[this->npoints-1], this->point1[this->npoints-1], this->point1[this->npoints-2], this->cap_rounding); } - dc->currentcurve->closepath(); - sp_canvas_bpath_set_bpath(SP_CANVAS_BPATH(dc->currentshape), dc->currentcurve); + this->currentcurve->closepath(); + sp_canvas_bpath_set_bpath(SP_CANVAS_BPATH(this->currentshape), this->currentcurve); } /* diff --git a/src/eraser-context.h b/src/eraser-context.h index 7c9ef7f50..7ff1cf712 100644 --- a/src/eraser-context.h +++ b/src/eraser-context.h @@ -21,9 +21,6 @@ #include "common-context.h" -#define SP_ERASER_CONTEXT(obj) ((SPEraserContext*)obj) -#define SP_IS_ERASER_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj)) - #define ERC_MIN_PRESSURE 0.0 #define ERC_MAX_PRESSURE 1.0 #define ERC_DEFAULT_PRESSURE 1.0 @@ -40,9 +37,21 @@ public: static const std::string prefsPath; virtual void setup(); - virtual gint root_handler(GdkEvent* event); + virtual bool root_handler(GdkEvent* event); virtual const std::string& getPrefsPath(); + +private: + void reset(Geom::Point p); + void extinput(GdkEvent *event); + bool apply(Geom::Point p); + void brush(); + void cancel(); + void clear_current(); + void set_to_accumulated(); + void accumulate(); + void fit_and_split(bool release); + void draw_temporary_box(); }; #endif // SP_ERASER_CONTEXT_H_SEEN diff --git a/src/event-context.cpp b/src/event-context.cpp index edf34b923..bea5f63f6 100644 --- a/src/event-context.cpp +++ b/src/event-context.cpp @@ -166,60 +166,60 @@ static void sp_event_context_set_cursor(SPEventContext *event_context, GdkCursor /** * Recreates and draws cursor on desktop related to SPEventContext. */ -void sp_event_context_update_cursor(SPEventContext *ec) { - GtkWidget *w = GTK_WIDGET(sp_desktop_canvas(ec->desktop)); +void SPEventContext::sp_event_context_update_cursor() { + GtkWidget *w = GTK_WIDGET(sp_desktop_canvas(this->desktop)); if (gtk_widget_get_window (w)) { GtkStyle *style = gtk_widget_get_style(w); /* fixme: */ - if (ec->cursor_shape) { + if (this->cursor_shape) { GdkDisplay *display = gdk_display_get_default(); if (gdk_display_supports_cursor_alpha(display) && gdk_display_supports_cursor_color(display)) { bool fillHasColor=false, strokeHasColor=false; - guint32 fillColor = sp_desktop_get_color_tool(ec->desktop, ec->getPrefsPath(), true, &fillHasColor); - guint32 strokeColor = sp_desktop_get_color_tool(ec->desktop, ec->getPrefsPath(), false, &strokeHasColor); - double fillOpacity = fillHasColor ? sp_desktop_get_opacity_tool(ec->desktop, ec->getPrefsPath(), true) : 0; - double strokeOpacity = strokeHasColor ? sp_desktop_get_opacity_tool(ec->desktop, ec->getPrefsPath(), false) : 0; + guint32 fillColor = sp_desktop_get_color_tool(this->desktop, this->getPrefsPath(), true, &fillHasColor); + guint32 strokeColor = sp_desktop_get_color_tool(this->desktop, this->getPrefsPath(), false, &strokeHasColor); + double fillOpacity = fillHasColor ? sp_desktop_get_opacity_tool(this->desktop, this->getPrefsPath(), true) : 0; + double strokeOpacity = strokeHasColor ? sp_desktop_get_opacity_tool(this->desktop, this->getPrefsPath(), false) : 0; GdkPixbuf *pixbuf = sp_cursor_pixbuf_from_xpm( - ec->cursor_shape, + this->cursor_shape, style->black, style->white, SP_RGBA32_U_COMPOSE(SP_RGBA32_R_U(fillColor),SP_RGBA32_G_U(fillColor),SP_RGBA32_B_U(fillColor),SP_COLOR_F_TO_U(fillOpacity)), SP_RGBA32_U_COMPOSE(SP_RGBA32_R_U(strokeColor),SP_RGBA32_G_U(strokeColor),SP_RGBA32_B_U(strokeColor),SP_COLOR_F_TO_U(strokeOpacity)) ); if (pixbuf != NULL) { - if (ec->cursor) { + if (this->cursor) { #if GTK_CHECK_VERSION(3,0,0) - g_object_unref(ec->cursor); + g_object_unref(this->cursor); #else - gdk_cursor_unref(ec->cursor); + gdk_cursor_unref(this->cursor); #endif } - ec->cursor = gdk_cursor_new_from_pixbuf(display, pixbuf, ec->hot_x, ec->hot_y); + this->cursor = gdk_cursor_new_from_pixbuf(display, pixbuf, this->hot_x, this->hot_y); g_object_unref(pixbuf); } } else { - GdkPixbuf *pixbuf = gdk_pixbuf_new_from_xpm_data((const gchar **)ec->cursor_shape); + GdkPixbuf *pixbuf = gdk_pixbuf_new_from_xpm_data((const gchar **)this->cursor_shape); if (pixbuf) { - if (ec->cursor) { + if (this->cursor) { #if GTK_CHECK_VERSION(3,0,0) - g_object_unref(ec->cursor); + g_object_unref(this->cursor); #else - gdk_cursor_unref(ec->cursor); + gdk_cursor_unref(this->cursor); #endif } - ec->cursor = gdk_cursor_new_from_pixbuf(display, - pixbuf, ec->hot_x, ec->hot_y); + this->cursor = gdk_cursor_new_from_pixbuf(display, + pixbuf, this->hot_x, this->hot_y); g_object_unref(pixbuf); } } } - gdk_window_set_cursor(gtk_widget_get_window (w), ec->cursor); + gdk_window_set_cursor(gtk_widget_get_window (w), this->cursor); gdk_flush(); } - ec->desktop->waiting_cursor = false; + this->desktop->waiting_cursor = false; } /** @@ -234,7 +234,7 @@ void SPEventContext::setup() { this->pref_observer = new ToolPrefObserver(this->getPrefsPath(), this); Inkscape::Preferences::get()->addObserver(*(this->pref_observer)); - sp_event_context_update_cursor(this); + this->sp_event_context_update_cursor(); } /** @@ -361,7 +361,7 @@ static gdouble accelerate_scroll(GdkEvent *event, gdouble acceleration, // return event_context->ceventcontext->root_handler(event); //} -gint SPEventContext::root_handler(GdkEvent* event) { +bool SPEventContext::root_handler(GdkEvent* event) { static Geom::Point button_w; static unsigned int panning = 0; static unsigned int panning_cursor = 0; @@ -872,7 +872,7 @@ gint SPEventContext::root_handler(GdkEvent* event) { // return ec->ceventcontext->item_handler(item, event); //} -gint SPEventContext::item_handler(SPItem* item, GdkEvent* event) { +bool SPEventContext::item_handler(SPItem* item, GdkEvent* event) { int ret = FALSE; switch (event->type) { diff --git a/src/event-context.h b/src/event-context.h index 15cab4bf0..38474a208 100644 --- a/src/event-context.h +++ b/src/event-context.h @@ -148,8 +148,8 @@ public: virtual void activate(); virtual void deactivate(); - virtual gint root_handler(GdkEvent* event); - virtual gint item_handler(SPItem* item, GdkEvent* event); + virtual bool root_handler(GdkEvent* event); + virtual bool item_handler(SPItem* item, GdkEvent* event); virtual const std::string& getPrefsPath() = 0; @@ -170,6 +170,9 @@ public: SPEventContext * const ec; }; +//protected: + void sp_event_context_update_cursor(); + private: SPEventContext(const SPEventContext&); SPEventContext& operator=(const SPEventContext&); @@ -196,7 +199,7 @@ void sp_event_root_menu_popup(SPDesktop *desktop, SPItem *item, GdkEvent *event) gint gobble_key_events(guint keyval, gint mask); gint gobble_motion_events(gint mask); -void sp_event_context_update_cursor(SPEventContext *ec); +//void sp_event_context_update_cursor(SPEventContext *ec); void sp_event_show_modifier_tip(Inkscape::MessageContext *message_context, GdkEvent *event, gchar const *ctrl_tip, gchar const *shift_tip, gchar const *alt_tip); @@ -208,14 +211,14 @@ SPItem *sp_event_context_over_item (SPDesktop *desktop, SPItem *item, Geom::Poin void sp_toggle_dropper(SPDesktop *dt); -ShapeEditor *sp_event_context_get_shape_editor (SPEventContext *ec); +//ShapeEditor *sp_event_context_get_shape_editor (SPEventContext *ec); bool sp_event_context_knot_mouseover(SPEventContext *ec); -void ec_shape_event_attr_changed(Inkscape::XML::Node *shape_repr, - gchar const *name, gchar const *old_value, gchar const *new_value, - bool const is_interactive, gpointer const data); - -void event_context_print_event_info(GdkEvent *event, bool print_return = true); +//void ec_shape_event_attr_changed(Inkscape::XML::Node *shape_repr, +// gchar const *name, gchar const *old_value, gchar const *new_value, +// bool const is_interactive, gpointer const data); +// +//void event_context_print_event_info(GdkEvent *event, bool print_return = true); #endif // SEEN_SP_EVENT_CONTEXT_H diff --git a/src/flood-context.cpp b/src/flood-context.cpp index 3d2975e41..824c6e329 100644 --- a/src/flood-context.cpp +++ b/src/flood-context.cpp @@ -1092,7 +1092,7 @@ static void sp_flood_do_flood_fill(SPEventContext *event_context, GdkEvent *even DocumentUndo::done(document, SP_VERB_CONTEXT_PAINTBUCKET, _("Fill bounded area")); } -gint SPFloodContext::item_handler(SPItem* item, GdkEvent* event) { +bool SPFloodContext::item_handler(SPItem* item, GdkEvent* event) { gint ret = FALSE; switch (event->type) { @@ -1124,7 +1124,7 @@ gint SPFloodContext::item_handler(SPItem* item, GdkEvent* event) { return ret; } -gint SPFloodContext::root_handler(GdkEvent* event) { +bool SPFloodContext::root_handler(GdkEvent* event) { static bool dragging; gint ret = FALSE; diff --git a/src/flood-context.h b/src/flood-context.h index 5a60aa0f3..accfd1e40 100644 --- a/src/flood-context.h +++ b/src/flood-context.h @@ -41,8 +41,8 @@ public: static const std::string prefsPath; virtual void setup(); - virtual gint root_handler(GdkEvent* event); - virtual gint item_handler(SPItem* item, GdkEvent* event); + virtual bool root_handler(GdkEvent* event); + virtual bool item_handler(SPItem* item, GdkEvent* event); virtual const std::string& getPrefsPath(); diff --git a/src/gradient-chemistry.cpp b/src/gradient-chemistry.cpp index a0c20c609..7dcbdf98c 100644 --- a/src/gradient-chemistry.cpp +++ b/src/gradient-chemistry.cpp @@ -1571,7 +1571,7 @@ void sp_gradient_invert_selected_gradients(SPDesktop *desktop, Inkscape::PaintTa void sp_gradient_reverse_selected_gradients(SPDesktop *desktop) { Inkscape::Selection *selection = sp_desktop_selection(desktop); - SPEventContext *ev = sp_desktop_event_context(desktop); + SPEventContext *ev = desktop->getEventContext(); if (!ev) { return; diff --git a/src/gradient-context.cpp b/src/gradient-context.cpp index 4fa1f263d..1e9bef354 100644 --- a/src/gradient-context.cpp +++ b/src/gradient-context.cpp @@ -475,7 +475,7 @@ sp_gradient_context_add_stop_near_point (SPGradientContext *rc, SPItem *item, G ec->get_drag()->selectByStop(newstop); } -gint SPGradientContext::root_handler(GdkEvent* event) { +bool SPGradientContext::root_handler(GdkEvent* event) { static bool dragging; Inkscape::Selection *selection = sp_desktop_selection (desktop); @@ -608,11 +608,11 @@ gint SPGradientContext::root_handler(GdkEvent* event) { if (this->cursor_addnode && !over_line) { this->cursor_shape = cursor_gradient_xpm; - sp_event_context_update_cursor(this); + this->sp_event_context_update_cursor(); this->cursor_addnode = false; } else if (!this->cursor_addnode && over_line) { this->cursor_shape = cursor_gradient_add_xpm; - sp_event_context_update_cursor(this); + this->sp_event_context_update_cursor(); this->cursor_addnode = true; } } diff --git a/src/gradient-context.h b/src/gradient-context.h index 21418f89e..0c2a7eb3d 100644 --- a/src/gradient-context.h +++ b/src/gradient-context.h @@ -43,7 +43,7 @@ public: static const std::string prefsPath; virtual void setup(); - virtual gint root_handler(GdkEvent* event); + virtual bool root_handler(GdkEvent* event); virtual const std::string& getPrefsPath(); diff --git a/src/inkscape.cpp b/src/inkscape.cpp index a24bd2b8a..e1cabd2d5 100644 --- a/src/inkscape.cpp +++ b/src/inkscape.cpp @@ -1013,7 +1013,7 @@ inkscape_add_desktop (SPDesktop * desktop) inkscape->desktops = g_slist_prepend (inkscape->desktops, desktop); g_signal_emit (G_OBJECT (inkscape), inkscape_signals[ACTIVATE_DESKTOP], 0, desktop); - g_signal_emit (G_OBJECT (inkscape), inkscape_signals[SET_EVENTCONTEXT], 0, sp_desktop_event_context (desktop)); + g_signal_emit (G_OBJECT (inkscape), inkscape_signals[SET_EVENTCONTEXT], 0, desktop->getEventContext()); g_signal_emit (G_OBJECT (inkscape), inkscape_signals[SET_SELECTION], 0, sp_desktop_selection (desktop)); g_signal_emit (G_OBJECT (inkscape), inkscape_signals[CHANGE_SELECTION], 0, sp_desktop_selection (desktop)); } @@ -1035,7 +1035,7 @@ inkscape_remove_desktop (SPDesktop * desktop) inkscape->desktops = g_slist_remove (inkscape->desktops, new_desktop); inkscape->desktops = g_slist_prepend (inkscape->desktops, new_desktop); g_signal_emit (G_OBJECT (inkscape), inkscape_signals[ACTIVATE_DESKTOP], 0, new_desktop); - g_signal_emit (G_OBJECT (inkscape), inkscape_signals[SET_EVENTCONTEXT], 0, sp_desktop_event_context (new_desktop)); + g_signal_emit (G_OBJECT (inkscape), inkscape_signals[SET_EVENTCONTEXT], 0, new_desktop->getEventContext()); g_signal_emit (G_OBJECT (inkscape), inkscape_signals[SET_SELECTION], 0, sp_desktop_selection (new_desktop)); g_signal_emit (G_OBJECT (inkscape), inkscape_signals[CHANGE_SELECTION], 0, sp_desktop_selection (new_desktop)); } else { @@ -1075,7 +1075,7 @@ inkscape_activate_desktop (SPDesktop * desktop) inkscape->desktops = g_slist_prepend (inkscape->desktops, desktop); g_signal_emit (G_OBJECT (inkscape), inkscape_signals[ACTIVATE_DESKTOP], 0, desktop); - g_signal_emit (G_OBJECT (inkscape), inkscape_signals[SET_EVENTCONTEXT], 0, sp_desktop_event_context (desktop)); + g_signal_emit (G_OBJECT (inkscape), inkscape_signals[SET_EVENTCONTEXT], 0, desktop->getEventContext()); g_signal_emit (G_OBJECT (inkscape), inkscape_signals[SET_SELECTION], 0, sp_desktop_selection (desktop)); g_signal_emit (G_OBJECT (inkscape), inkscape_signals[CHANGE_SELECTION], 0, sp_desktop_selection (desktop)); } @@ -1342,7 +1342,7 @@ SPEventContext * inkscape_active_event_context (void) { if (SP_ACTIVE_DESKTOP) { - return sp_desktop_event_context (SP_ACTIVE_DESKTOP); + return SP_ACTIVE_DESKTOP->getEventContext(); } return NULL; diff --git a/src/lpe-tool-context.cpp b/src/lpe-tool-context.cpp index 26d52767d..7ff262a3c 100644 --- a/src/lpe-tool-context.cpp +++ b/src/lpe-tool-context.cpp @@ -182,7 +182,7 @@ void SPLPEToolContext::set(const Inkscape::Preferences::Entry& val) { */ } -gint SPLPEToolContext::item_handler(SPItem* item, GdkEvent* event) { +bool SPLPEToolContext::item_handler(SPItem* item, GdkEvent* event) { SPEventContext* ec = this; gint ret = FALSE; @@ -214,7 +214,7 @@ gint SPLPEToolContext::item_handler(SPItem* item, GdkEvent* event) { return ret; } -gint SPLPEToolContext::root_handler(GdkEvent* event) { +bool SPLPEToolContext::root_handler(GdkEvent* event) { SPEventContext* event_context = this; SPLPEToolContext *lc = SP_LPETOOL_CONTEXT(event_context); diff --git a/src/lpe-tool-context.h b/src/lpe-tool-context.h index 18eaedf69..657916342 100644 --- a/src/lpe-tool-context.h +++ b/src/lpe-tool-context.h @@ -62,8 +62,8 @@ public: virtual void setup(); virtual void set(const Inkscape::Preferences::Entry& val); - virtual gint root_handler(GdkEvent* event); - virtual gint item_handler(SPItem* item, GdkEvent* event); + virtual bool root_handler(GdkEvent* event); + virtual bool item_handler(SPItem* item, GdkEvent* event); virtual const std::string& getPrefsPath(); }; diff --git a/src/measure-context.cpp b/src/measure-context.cpp index 99f1d8d06..9ee728bc8 100644 --- a/src/measure-context.cpp +++ b/src/measure-context.cpp @@ -311,7 +311,7 @@ static void calculate_intersections(SPDesktop * /*desktop*/, SPItem* item, Geom: } } -gint SPMeasureContext::root_handler(GdkEvent* event) { +bool SPMeasureContext::root_handler(GdkEvent* event) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); tolerance = prefs->getIntLimited("/options/dragtolerance/value", 0, 0, 100); diff --git a/src/measure-context.h b/src/measure-context.h index 76509e91c..2449d5735 100644 --- a/src/measure-context.h +++ b/src/measure-context.h @@ -25,7 +25,7 @@ public: static const std::string prefsPath; virtual void finish(); - virtual gint root_handler(GdkEvent* event); + virtual bool root_handler(GdkEvent* event); virtual const std::string& getPrefsPath(); diff --git a/src/mesh-context.cpp b/src/mesh-context.cpp index fce4cbb9a..915ac0f7f 100644 --- a/src/mesh-context.cpp +++ b/src/mesh-context.cpp @@ -443,7 +443,7 @@ sp_mesh_context_corner_operation (SPMeshContext *rc, MeshCornerOperation operati /** Handles all keyboard and mouse input for meshs. */ -gint SPMeshContext::root_handler(GdkEvent* event) { +bool SPMeshContext::root_handler(GdkEvent* event) { static bool dragging; Inkscape::Selection *selection = sp_desktop_selection (desktop); @@ -615,11 +615,11 @@ gint SPMeshContext::root_handler(GdkEvent* event) { if (this->cursor_addnode && !over_line) { this->cursor_shape = cursor_gradient_xpm; - sp_event_context_update_cursor(this); + this->sp_event_context_update_cursor(); this->cursor_addnode = false; } else if (!this->cursor_addnode && over_line) { this->cursor_shape = cursor_gradient_add_xpm; - sp_event_context_update_cursor(this); + this->sp_event_context_update_cursor(); this->cursor_addnode = true; } } diff --git a/src/mesh-context.h b/src/mesh-context.h index 19614a41b..69eef1086 100644 --- a/src/mesh-context.h +++ b/src/mesh-context.h @@ -45,7 +45,7 @@ public: static const std::string prefsPath; virtual void setup(); - virtual gint root_handler(GdkEvent* event); + virtual bool root_handler(GdkEvent* event); virtual const std::string& getPrefsPath(); diff --git a/src/pen-context.cpp b/src/pen-context.cpp index 21fc4fc51..690b520bc 100644 --- a/src/pen-context.cpp +++ b/src/pen-context.cpp @@ -291,7 +291,7 @@ static void spdc_endpoint_snap_handle(SPPenContext const *const pc, Geom::Point } } -gint SPPenContext::item_handler(SPItem* item, GdkEvent* event) { +bool SPPenContext::item_handler(SPItem* item, GdkEvent* event) { SPEventContext* ec = this; SPPenContext *const pc = SP_PEN_CONTEXT(ec); @@ -321,7 +321,7 @@ gint SPPenContext::item_handler(SPItem* item, GdkEvent* event) { /** * Callback to handle all pen events. */ -gint SPPenContext::root_handler(GdkEvent* event) { +bool SPPenContext::root_handler(GdkEvent* event) { SPEventContext* ec = this; SPPenContext *const pc = SP_PEN_CONTEXT(ec); diff --git a/src/pen-context.h b/src/pen-context.h index f8549035b..070d33a26 100644 --- a/src/pen-context.h +++ b/src/pen-context.h @@ -63,8 +63,8 @@ public: virtual void setup(); virtual void finish(); virtual void set(const Inkscape::Preferences::Entry& val); - virtual gint root_handler(GdkEvent* event); - virtual gint item_handler(SPItem* item, GdkEvent* event); + virtual bool root_handler(GdkEvent* event); + virtual bool item_handler(SPItem* item, GdkEvent* event); virtual const std::string& getPrefsPath(); }; diff --git a/src/pencil-context.cpp b/src/pencil-context.cpp index 28ae41974..b81580f3a 100644 --- a/src/pencil-context.cpp +++ b/src/pencil-context.cpp @@ -143,7 +143,7 @@ spdc_endpoint_snap(SPPencilContext const *pc, Geom::Point &p, guint const state) /** * Callback for handling all pencil context events. */ -gint SPPencilContext::root_handler(GdkEvent* event) { +bool SPPencilContext::root_handler(GdkEvent* event) { SPEventContext* ec = this; SPPencilContext *const pc = SP_PENCIL_CONTEXT(ec); diff --git a/src/pencil-context.h b/src/pencil-context.h index 198242f76..a0d2effe6 100644 --- a/src/pencil-context.h +++ b/src/pencil-context.h @@ -40,7 +40,7 @@ public: static const std::string prefsPath; virtual void setup(); - virtual gint root_handler(GdkEvent* event); + virtual bool root_handler(GdkEvent* event); virtual const std::string& getPrefsPath(); }; diff --git a/src/rect-context.cpp b/src/rect-context.cpp index f93ddf6c3..23c4794c1 100644 --- a/src/rect-context.cpp +++ b/src/rect-context.cpp @@ -159,7 +159,7 @@ void SPRectContext::set(const Inkscape::Preferences::Entry& val) { } } -gint SPRectContext::item_handler(SPItem* item, GdkEvent* event) { +bool SPRectContext::item_handler(SPItem* item, GdkEvent* event) { gint ret = FALSE; switch (event->type) { @@ -181,7 +181,7 @@ gint SPRectContext::item_handler(SPItem* item, GdkEvent* event) { return ret; } -gint SPRectContext::root_handler(GdkEvent* event) { +bool SPRectContext::root_handler(GdkEvent* event) { static bool dragging; SPDesktop *desktop = this->desktop; diff --git a/src/rect-context.h b/src/rect-context.h index ab65a3b7a..1856a3d7e 100644 --- a/src/rect-context.h +++ b/src/rect-context.h @@ -34,8 +34,8 @@ public: virtual void setup(); virtual void finish(); virtual void set(const Inkscape::Preferences::Entry& val); - virtual gint root_handler(GdkEvent* event); - virtual gint item_handler(SPItem* item, GdkEvent* event); + virtual bool root_handler(GdkEvent* event); + virtual bool item_handler(SPItem* item, GdkEvent* event); virtual const std::string& getPrefsPath(); diff --git a/src/select-context.cpp b/src/select-context.cpp index 4badac3d8..efedb23e2 100644 --- a/src/select-context.cpp +++ b/src/select-context.cpp @@ -277,7 +277,7 @@ sp_select_context_up_one_layer(SPDesktop *desktop) } } -gint SPSelectContext::item_handler(SPItem* item, GdkEvent* event) { +bool SPSelectContext::item_handler(SPItem* item, GdkEvent* event) { gint ret = FALSE; Inkscape::Preferences *prefs = Inkscape::Preferences::get(); @@ -455,7 +455,7 @@ sp_select_context_reset_opacities(SPEventContext *event_context) sc->cycling_items_cmp = NULL; } -gint SPSelectContext::root_handler(GdkEvent* event) { +bool SPSelectContext::root_handler(GdkEvent* event) { SPItem *item = NULL; SPItem *item_at_point = NULL, *group_at_point = NULL, *item_in_group = NULL; gint ret = FALSE; diff --git a/src/select-context.h b/src/select-context.h index 2f9406a8c..ab60083b1 100644 --- a/src/select-context.h +++ b/src/select-context.h @@ -52,8 +52,8 @@ public: virtual void setup(); virtual void set(const Inkscape::Preferences::Entry& val); - virtual gint root_handler(GdkEvent* event); - virtual gint item_handler(SPItem* item, GdkEvent* event); + virtual bool root_handler(GdkEvent* event); + virtual bool item_handler(SPItem* item, GdkEvent* event); virtual const std::string& getPrefsPath(); }; diff --git a/src/spiral-context.cpp b/src/spiral-context.cpp index cf0e81dbe..6b060b424 100644 --- a/src/spiral-context.cpp +++ b/src/spiral-context.cpp @@ -163,7 +163,7 @@ void SPSpiralContext::set(const Inkscape::Preferences::Entry& val) { } } -gint SPSpiralContext::root_handler(GdkEvent* event) { +bool SPSpiralContext::root_handler(GdkEvent* event) { static gboolean dragging; SPDesktop *desktop = this->desktop; diff --git a/src/spiral-context.h b/src/spiral-context.h index c2f579e28..518d8ad41 100644 --- a/src/spiral-context.h +++ b/src/spiral-context.h @@ -36,7 +36,7 @@ public: virtual void setup(); virtual void finish(); virtual void set(const Inkscape::Preferences::Entry& val); - virtual gint root_handler(GdkEvent* event); + virtual bool root_handler(GdkEvent* event); virtual const std::string& getPrefsPath(); diff --git a/src/spray-context.cpp b/src/spray-context.cpp index 66cc30c6d..c96df20b2 100644 --- a/src/spray-context.cpp +++ b/src/spray-context.cpp @@ -130,62 +130,49 @@ static void sp_spray_scale_rel(Geom::Point c, SPDesktop */*desktop*/, SPItem *it } SPSprayContext::SPSprayContext() : SPEventContext() { - SPSprayContext* tc = this; - - tc->usetilt = 0; - tc->_message_context = 0; - tc->dilate_area = 0; - tc->usetext = false; - tc->population = 0; - tc->is_drawing = false; - tc->mode = 0; - tc->usepressure = 0; - - SPEventContext *event_context = SP_EVENT_CONTEXT(tc); - - event_context->cursor_shape = cursor_spray_xpm; - event_context->hot_x = 4; - event_context->hot_y = 4; + this->usetilt = 0; + this->message_context = 0; + this->dilate_area = 0; + this->usetext = false; + this->population = 0; + this->is_drawing = false; + this->mode = 0; + this->usepressure = 0; + + this->cursor_shape = cursor_spray_xpm; + this->hot_x = 4; + this->hot_y = 4; /* attributes */ - tc->dragging = FALSE; - tc->distrib = 1; - tc->width = 0.2; - tc->force = 0.2; - tc->ratio = 0; - tc->tilt = 0; - tc->mean = 0.2; - tc->rotation_variation = 0; - tc->standard_deviation = 0.2; - tc->scale = 1; - tc->scale_variation = 1; - tc->pressure = TC_DEFAULT_PRESSURE; - - tc->is_dilating = false; - tc->has_dilated = false; - - //new (&tc->style_set_connection) sigc::connection(); + this->dragging = FALSE; + this->distrib = 1; + this->width = 0.2; + this->force = 0.2; + this->ratio = 0; + this->tilt = 0; + this->mean = 0.2; + this->rotation_variation = 0; + this->standard_deviation = 0.2; + this->scale = 1; + this->scale_variation = 1; + this->pressure = TC_DEFAULT_PRESSURE; + + this->is_dilating = false; + this->has_dilated = false; } SPSprayContext::~SPSprayContext() { - SPSprayContext *tc = SP_SPRAY_CONTEXT(this); - SPEventContext *ec = SP_EVENT_CONTEXT(this); + this->enableGrDrag(false); + this->style_set_connection.disconnect(); - ec->enableGrDrag(false); - - tc->style_set_connection.disconnect(); - //tc->style_set_connection.~connection(); - - if (tc->dilate_area) { - sp_canvas_item_destroy(tc->dilate_area); - tc->dilate_area = NULL; + if (this->dilate_area) { + sp_canvas_item_destroy(this->dilate_area); + this->dilate_area = NULL; } - if (tc->_message_context) { - delete tc->_message_context; + if (this->message_context) { + delete this->message_context; } - - //G_OBJECT_CLASS(sp_spray_context_parent_class)->dispose(object); } static bool is_transform_modes(gint mode) @@ -213,29 +200,22 @@ static void sp_spray_update_cursor(SPSprayContext *tc, bool /*with_shift*/) switch (tc->mode) { case SPRAY_MODE_COPY: - tc->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag, click or click and scroll to spray copies of the initial selection."), sel_message); + tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag, click or click and scroll to spray copies of the initial selection."), sel_message); break; case SPRAY_MODE_CLONE: - tc->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag, click or click and scroll to spray clones of the initial selection."), sel_message); + tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag, click or click and scroll to spray clones of the initial selection."), sel_message); break; case SPRAY_MODE_SINGLE_PATH: - tc->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag, click or click and scroll to spray in a single path of the initial selection."), sel_message); + tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag, click or click and scroll to spray in a single path of the initial selection."), sel_message); break; default: break; } - sp_event_context_update_cursor(event_context); + event_context->sp_event_context_update_cursor(); g_free(sel_message); } void SPSprayContext::setup() { - SPEventContext* ec = this; - - SPSprayContext *tc = SP_SPRAY_CONTEXT(ec); - -// if ((SP_EVENT_CONTEXT_CLASS(sp_spray_context_parent_class))->setup) { -// (SP_EVENT_CONTEXT_CLASS(sp_spray_context_parent_class))->setup(ec); -// } SPEventContext::setup(); { @@ -248,72 +228,69 @@ void SPSprayContext::setup() { c->curveto(1, -C1, C1, -1, 0, -1 ); c->curveto(-C1, -1, -1, -C1, -1, 0 ); c->closepath(); - tc->dilate_area = sp_canvas_bpath_new(sp_desktop_controls(ec->desktop), c); + this->dilate_area = sp_canvas_bpath_new(sp_desktop_controls(this->desktop), c); c->unref(); - sp_canvas_bpath_set_fill(SP_CANVAS_BPATH(tc->dilate_area), 0x00000000,(SPWindRule)0); - sp_canvas_bpath_set_stroke(SP_CANVAS_BPATH(tc->dilate_area), 0xff9900ff, 1.0, SP_STROKE_LINEJOIN_MITER, SP_STROKE_LINECAP_BUTT); - sp_canvas_item_hide(tc->dilate_area); + sp_canvas_bpath_set_fill(SP_CANVAS_BPATH(this->dilate_area), 0x00000000,(SPWindRule)0); + sp_canvas_bpath_set_stroke(SP_CANVAS_BPATH(this->dilate_area), 0xff9900ff, 1.0, SP_STROKE_LINEJOIN_MITER, SP_STROKE_LINECAP_BUTT); + sp_canvas_item_hide(this->dilate_area); } - tc->is_drawing = false; + this->is_drawing = false; - tc->_message_context = new Inkscape::MessageContext((ec->desktop)->messageStack()); + this->message_context = new Inkscape::MessageContext((this->desktop)->messageStack()); - sp_event_context_read(ec, "distrib"); - sp_event_context_read(ec, "width"); - sp_event_context_read(ec, "ratio"); - sp_event_context_read(ec, "tilt"); - sp_event_context_read(ec, "rotation_variation"); - sp_event_context_read(ec, "scale_variation"); - sp_event_context_read(ec, "mode"); - sp_event_context_read(ec, "population"); - sp_event_context_read(ec, "force"); - sp_event_context_read(ec, "mean"); - sp_event_context_read(ec, "standard_deviation"); - sp_event_context_read(ec, "usepressure"); - sp_event_context_read(ec, "Scale"); + sp_event_context_read(this, "distrib"); + sp_event_context_read(this, "width"); + sp_event_context_read(this, "ratio"); + sp_event_context_read(this, "tilt"); + sp_event_context_read(this, "rotation_variation"); + sp_event_context_read(this, "scale_variation"); + sp_event_context_read(this, "mode"); + sp_event_context_read(this, "population"); + sp_event_context_read(this, "force"); + sp_event_context_read(this, "mean"); + sp_event_context_read(this, "standard_deviation"); + sp_event_context_read(this, "usepressure"); + sp_event_context_read(this, "Scale"); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); if (prefs->getBool("/tools/spray/selcue")) { - ec->enableSelectionCue(); + this->enableSelectionCue(); } if (prefs->getBool("/tools/spray/gradientdrag")) { - ec->enableGrDrag(); + this->enableGrDrag(); } } void SPSprayContext::set(const Inkscape::Preferences::Entry& val) { - SPEventContext* ec = this; - - SPSprayContext *tc = SP_SPRAY_CONTEXT(ec); Glib::ustring path = val.getEntryName(); if (path == "mode") { - tc->mode = val.getInt(); - sp_spray_update_cursor(tc, false); + this->mode = val.getInt(); + sp_spray_update_cursor(this, false); } else if (path == "width") { - tc->width = 0.01 * CLAMP(val.getInt(10), 1, 100); + this->width = 0.01 * CLAMP(val.getInt(10), 1, 100); } else if (path == "usepressure") { - tc->usepressure = val.getBool(); + this->usepressure = val.getBool(); } else if (path == "population") { - tc->population = 0.01 * CLAMP(val.getInt(10), 1, 100); + this->population = 0.01 * CLAMP(val.getInt(10), 1, 100); } else if (path == "rotation_variation") { - tc->rotation_variation = CLAMP(val.getDouble(0.0), 0, 100.0); + this->rotation_variation = CLAMP(val.getDouble(0.0), 0, 100.0); } else if (path == "scale_variation") { - tc->scale_variation = CLAMP(val.getDouble(1.0), 0, 100.0); + this->scale_variation = CLAMP(val.getDouble(1.0), 0, 100.0); } else if (path == "standard_deviation") { - tc->standard_deviation = 0.01 * CLAMP(val.getInt(10), 1, 100); + this->standard_deviation = 0.01 * CLAMP(val.getInt(10), 1, 100); } else if (path == "mean") { - tc->mean = 0.01 * CLAMP(val.getInt(10), 1, 100); + this->mean = 0.01 * CLAMP(val.getInt(10), 1, 100); // Not implemented in the toolbar and preferences yet } else if (path == "distribution") { - tc->distrib = val.getInt(1); + this->distrib = val.getInt(1); } else if (path == "tilt") { - tc->tilt = CLAMP(val.getDouble(0.1), 0, 1000.0); + this->tilt = CLAMP(val.getDouble(0.1), 0, 1000.0); } else if (path == "ratio") { - tc->ratio = CLAMP(val.getDouble(), 0.0, 0.9); + this->ratio = CLAMP(val.getDouble(), 0.0, 0.9); } else if (path == "force") { - tc->force = CLAMP(val.getDouble(1.0), 0, 1.0); + this->force = CLAMP(val.getDouble(1.0), 0, 1.0); } } @@ -618,43 +595,38 @@ static void sp_spray_switch_mode(SPSprayContext *tc, gint mode, bool with_shift) sp_spray_update_cursor(tc, with_shift); } -gint SPSprayContext::root_handler(GdkEvent* event) { - SPEventContext* event_context = this; - - SPSprayContext *tc = SP_SPRAY_CONTEXT(event_context); - SPDesktop *desktop = event_context->desktop; - +bool SPSprayContext::root_handler(GdkEvent* event) { gint ret = FALSE; switch (event->type) { case GDK_ENTER_NOTIFY: - sp_canvas_item_show(tc->dilate_area); + sp_canvas_item_show(this->dilate_area); break; case GDK_LEAVE_NOTIFY: - sp_canvas_item_hide(tc->dilate_area); + sp_canvas_item_hide(this->dilate_area); break; case GDK_BUTTON_PRESS: - if (event->button.button == 1 && !event_context->space_panning) { - if (Inkscape::have_viable_layer(desktop, tc->_message_context) == false) { + if (event->button.button == 1 && !this->space_panning) { + if (Inkscape::have_viable_layer(desktop, this->message_context) == false) { return TRUE; } Geom::Point const motion_w(event->button.x, event->button.y); Geom::Point const motion_dt(desktop->w2d(motion_w)); - tc->last_push = desktop->dt2doc(motion_dt); + this->last_push = desktop->dt2doc(motion_dt); - sp_spray_extinput(tc, event); + sp_spray_extinput(this, event); desktop->canvas->forceFullRedrawAfterInterruptions(3); - tc->is_drawing = true; - tc->is_dilating = true; - tc->has_dilated = false; + this->is_drawing = true; + this->is_dilating = true; + this->has_dilated = false; - if(tc->is_dilating && event->button.button == 1 && !event_context->space_panning) { - sp_spray_dilate(tc, motion_w, desktop->dt2doc(motion_dt), Geom::Point(0,0), MOD__SHIFT(event)); + if(this->is_dilating && event->button.button == 1 && !this->space_panning) { + sp_spray_dilate(this, motion_w, desktop->dt2doc(motion_dt), Geom::Point(0,0), MOD__SHIFT(event)); } - tc->has_dilated = true; + this->has_dilated = true; ret = TRUE; } break; @@ -663,27 +635,27 @@ gint SPSprayContext::root_handler(GdkEvent* event) { event->motion.y); Geom::Point motion_dt(desktop->w2d(motion_w)); Geom::Point motion_doc(desktop->dt2doc(motion_dt)); - sp_spray_extinput(tc, event); + sp_spray_extinput(this, event); // draw the dilating cursor - double radius = get_dilate_radius(tc); - Geom::Affine const sm (Geom::Scale(radius/(1-tc->ratio), radius/(1+tc->ratio)) ); - sp_canvas_item_affine_absolute(tc->dilate_area, (sm*Geom::Rotate(tc->tilt))*Geom::Translate(desktop->w2d(motion_w))); - sp_canvas_item_show(tc->dilate_area); + double radius = get_dilate_radius(this); + Geom::Affine const sm (Geom::Scale(radius/(1-this->ratio), radius/(1+this->ratio)) ); + sp_canvas_item_affine_absolute(this->dilate_area, (sm*Geom::Rotate(this->tilt))*Geom::Translate(desktop->w2d(motion_w))); + sp_canvas_item_show(this->dilate_area); guint num = 0; if (!desktop->selection->isEmpty()) { num = g_slist_length(const_cast(desktop->selection->itemList())); } if (num == 0) { - tc->_message_context->flash(Inkscape::ERROR_MESSAGE, _("Nothing selected! Select objects to spray.")); + this->message_context->flash(Inkscape::ERROR_MESSAGE, _("Nothing selected! Select objects to spray.")); } // dilating: - if (tc->is_drawing && ( event->motion.state & GDK_BUTTON1_MASK )) { - sp_spray_dilate(tc, motion_w, motion_doc, motion_doc - tc->last_push, event->button.state & GDK_SHIFT_MASK? true : false); - //tc->last_push = motion_doc; - tc->has_dilated = true; + if (this->is_drawing && ( event->motion.state & GDK_BUTTON1_MASK )) { + sp_spray_dilate(this, motion_w, motion_doc, motion_doc - this->last_push, event->button.state & GDK_SHIFT_MASK? true : false); + //this->last_push = motion_doc; + this->has_dilated = true; // it's slow, so prevent clogging up with events gobble_motion_events(GDK_BUTTON1_MASK); @@ -695,31 +667,31 @@ gint SPSprayContext::root_handler(GdkEvent* event) { case GDK_SCROLL: { if (event->scroll.state & GDK_BUTTON1_MASK) { double temp ; - temp = tc->population; - tc->population = 1.0; - desktop->setToolboxAdjustmentValue("population", tc->population * 100); + temp = this->population; + this->population = 1.0; + desktop->setToolboxAdjustmentValue("population", this->population * 100); Geom::Point const scroll_w(event->button.x, event->button.y); Geom::Point const scroll_dt = desktop->point();; Geom::Point motion_doc(desktop->dt2doc(scroll_dt)); switch (event->scroll.direction) { case GDK_SCROLL_DOWN: case GDK_SCROLL_UP: { - if (Inkscape::have_viable_layer(desktop, tc->_message_context) == false) { + if (Inkscape::have_viable_layer(desktop, this->message_context) == false) { return TRUE; } - tc->last_push = desktop->dt2doc(scroll_dt); - sp_spray_extinput(tc, event); + this->last_push = desktop->dt2doc(scroll_dt); + sp_spray_extinput(this, event); desktop->canvas->forceFullRedrawAfterInterruptions(3); - tc->is_drawing = true; - tc->is_dilating = true; - tc->has_dilated = false; - if(tc->is_dilating && !event_context->space_panning) { - sp_spray_dilate(tc, scroll_w, desktop->dt2doc(scroll_dt), Geom::Point(0,0), false); + this->is_drawing = true; + this->is_dilating = true; + this->has_dilated = false; + if(this->is_dilating && !this->space_panning) { + sp_spray_dilate(this, scroll_w, desktop->dt2doc(scroll_dt), Geom::Point(0,0), false); } - tc->has_dilated = true; + this->has_dilated = true; - tc->population = temp; - desktop->setToolboxAdjustmentValue("population", tc->population * 100); + this->population = temp; + desktop->setToolboxAdjustmentValue("population", this->population * 100); ret = TRUE; } @@ -738,27 +710,27 @@ gint SPSprayContext::root_handler(GdkEvent* event) { Geom::Point const motion_dt(desktop->w2d(motion_w)); desktop->canvas->endForcedFullRedraws(); - tc->is_drawing = false; + this->is_drawing = false; - if (tc->is_dilating && event->button.button == 1 && !event_context->space_panning) { - if (!tc->has_dilated) { + if (this->is_dilating && event->button.button == 1 && !this->space_panning) { + if (!this->has_dilated) { // if we did not rub, do a light tap - tc->pressure = 0.03; - sp_spray_dilate(tc, motion_w, desktop->dt2doc(motion_dt), Geom::Point(0,0), MOD__SHIFT(event)); + this->pressure = 0.03; + sp_spray_dilate(this, motion_w, desktop->dt2doc(motion_dt), Geom::Point(0,0), MOD__SHIFT(event)); } - tc->is_dilating = false; - tc->has_dilated = false; - switch (tc->mode) { + this->is_dilating = false; + this->has_dilated = false; + switch (this->mode) { case SPRAY_MODE_COPY: - DocumentUndo::done(sp_desktop_document(SP_EVENT_CONTEXT(tc)->desktop), + DocumentUndo::done(sp_desktop_document(SP_EVENT_CONTEXT(this)->desktop), SP_VERB_CONTEXT_SPRAY, _("Spray with copies")); break; case SPRAY_MODE_CLONE: - DocumentUndo::done(sp_desktop_document(SP_EVENT_CONTEXT(tc)->desktop), + DocumentUndo::done(sp_desktop_document(SP_EVENT_CONTEXT(this)->desktop), SP_VERB_CONTEXT_SPRAY, _("Spray with clones")); break; case SPRAY_MODE_SINGLE_PATH: - DocumentUndo::done(sp_desktop_document(SP_EVENT_CONTEXT(tc)->desktop), + DocumentUndo::done(sp_desktop_document(SP_EVENT_CONTEXT(this)->desktop), SP_VERB_CONTEXT_SPRAY, _("Spray in single path")); break; } @@ -771,83 +743,83 @@ gint SPSprayContext::root_handler(GdkEvent* event) { case GDK_KEY_j: case GDK_KEY_J: if (MOD__SHIFT_ONLY(event)) { - sp_spray_switch_mode(tc, SPRAY_MODE_COPY, MOD__SHIFT(event)); + sp_spray_switch_mode(this, SPRAY_MODE_COPY, MOD__SHIFT(event)); ret = TRUE; } break; case GDK_KEY_k: case GDK_KEY_K: if (MOD__SHIFT_ONLY(event)) { - sp_spray_switch_mode(tc, SPRAY_MODE_CLONE, MOD__SHIFT(event)); + sp_spray_switch_mode(this, SPRAY_MODE_CLONE, MOD__SHIFT(event)); ret = TRUE; } break; case GDK_KEY_l: case GDK_KEY_L: if (MOD__SHIFT_ONLY(event)) { - sp_spray_switch_mode(tc, SPRAY_MODE_SINGLE_PATH, MOD__SHIFT(event)); + sp_spray_switch_mode(this, SPRAY_MODE_SINGLE_PATH, MOD__SHIFT(event)); ret = TRUE; } break; case GDK_KEY_Up: case GDK_KEY_KP_Up: if (!MOD__CTRL_ONLY(event)) { - tc->population += 0.01; - if (tc->population > 1.0) { - tc->population = 1.0; + this->population += 0.01; + if (this->population > 1.0) { + this->population = 1.0; } - desktop->setToolboxAdjustmentValue("spray-population", tc->population * 100); + desktop->setToolboxAdjustmentValue("spray-population", this->population * 100); ret = TRUE; } break; case GDK_KEY_Down: case GDK_KEY_KP_Down: if (!MOD__CTRL_ONLY(event)) { - tc->population -= 0.01; - if (tc->population < 0.0) { - tc->population = 0.0; + this->population -= 0.01; + if (this->population < 0.0) { + this->population = 0.0; } - desktop->setToolboxAdjustmentValue("spray-population", tc->population * 100); + desktop->setToolboxAdjustmentValue("spray-population", this->population * 100); ret = TRUE; } break; case GDK_KEY_Right: case GDK_KEY_KP_Right: if (!MOD__CTRL_ONLY(event)) { - tc->width += 0.01; - if (tc->width > 1.0) { - tc->width = 1.0; + this->width += 0.01; + if (this->width > 1.0) { + this->width = 1.0; } // the same spinbutton is for alt+x - desktop->setToolboxAdjustmentValue("altx-spray", tc->width * 100); - sp_spray_update_area(tc); + desktop->setToolboxAdjustmentValue("altx-spray", this->width * 100); + sp_spray_update_area(this); ret = TRUE; } break; case GDK_KEY_Left: case GDK_KEY_KP_Left: if (!MOD__CTRL_ONLY(event)) { - tc->width -= 0.01; - if (tc->width < 0.01) { - tc->width = 0.01; + this->width -= 0.01; + if (this->width < 0.01) { + this->width = 0.01; } - desktop->setToolboxAdjustmentValue("altx-spray", tc->width * 100); - sp_spray_update_area(tc); + desktop->setToolboxAdjustmentValue("altx-spray", this->width * 100); + sp_spray_update_area(this); ret = TRUE; } break; case GDK_KEY_Home: case GDK_KEY_KP_Home: - tc->width = 0.01; - desktop->setToolboxAdjustmentValue("altx-spray", tc->width * 100); - sp_spray_update_area(tc); + this->width = 0.01; + desktop->setToolboxAdjustmentValue("altx-spray", this->width * 100); + sp_spray_update_area(this); ret = TRUE; break; case GDK_KEY_End: case GDK_KEY_KP_End: - tc->width = 1.0; - desktop->setToolboxAdjustmentValue("altx-spray", tc->width * 100); - sp_spray_update_area(tc); + this->width = 1.0; + desktop->setToolboxAdjustmentValue("altx-spray", this->width * 100); + sp_spray_update_area(this); ret = TRUE; break; case GDK_KEY_x: @@ -859,7 +831,7 @@ gint SPSprayContext::root_handler(GdkEvent* event) { break; case GDK_KEY_Shift_L: case GDK_KEY_Shift_R: - sp_spray_update_cursor(tc, true); + sp_spray_update_cursor(this, true); break; case GDK_KEY_Control_L: case GDK_KEY_Control_R: @@ -867,7 +839,7 @@ gint SPSprayContext::root_handler(GdkEvent* event) { case GDK_KEY_Delete: case GDK_KEY_KP_Delete: case GDK_KEY_BackSpace: - ret = event_context->deleteSelectedDrag(MOD__CTRL_ONLY(event)); + ret = this->deleteSelectedDrag(MOD__CTRL_ONLY(event)); break; default: @@ -880,15 +852,15 @@ gint SPSprayContext::root_handler(GdkEvent* event) { switch (get_group0_keyval(&event->key)) { case GDK_KEY_Shift_L: case GDK_KEY_Shift_R: - sp_spray_update_cursor(tc, false); + sp_spray_update_cursor(this, false); break; case GDK_KEY_Control_L: case GDK_KEY_Control_R: - sp_spray_switch_mode (tc, prefs->getInt("/tools/spray/mode"), MOD__SHIFT(event)); - tc->_message_context->clear(); + sp_spray_switch_mode (this, prefs->getInt("/tools/spray/mode"), MOD__SHIFT(event)); + this->message_context->clear(); break; default: - sp_spray_switch_mode (tc, prefs->getInt("/tools/spray/mode"), MOD__SHIFT(event)); + sp_spray_switch_mode (this, prefs->getInt("/tools/spray/mode"), MOD__SHIFT(event)); break; } } diff --git a/src/spray-context.h b/src/spray-context.h index 327402945..1bae7c4e4 100644 --- a/src/spray-context.h +++ b/src/spray-context.h @@ -77,7 +77,7 @@ public: gint mode; - Inkscape::MessageContext *_message_context; + Inkscape::MessageContext *message_context; bool is_drawing; @@ -92,7 +92,7 @@ public: virtual void setup(); virtual void set(const Inkscape::Preferences::Entry& val); - virtual gint root_handler(GdkEvent* event); + virtual bool root_handler(GdkEvent* event); virtual const std::string& getPrefsPath(); }; diff --git a/src/star-context.cpp b/src/star-context.cpp index 4272fb1a0..3601a4d49 100644 --- a/src/star-context.cpp +++ b/src/star-context.cpp @@ -67,35 +67,30 @@ const std::string& SPStarContext::getPrefsPath() { const std::string SPStarContext::prefsPath = "/tools/shapes/star"; SPStarContext::SPStarContext() : SPEventContext() { - SPStarContext* star_context = this; + this->randomized = 0; + this->message_context = 0; + this->rounded = 0; - star_context->randomized = 0; - star_context->_message_context = 0; - star_context->rounded = 0; - - SPEventContext *event_context = SP_EVENT_CONTEXT (star_context); - - event_context->cursor_shape = cursor_star_xpm; - event_context->hot_x = 4; - event_context->hot_y = 4; - event_context->xp = 0; - event_context->yp = 0; - event_context->tolerance = 0; - event_context->within_tolerance = false; - event_context->item_to_select = NULL; - //event_context->tool_url = "/tools/shapes/star"; + this->cursor_shape = cursor_star_xpm; + this->hot_x = 4; + this->hot_y = 4; + this->xp = 0; + this->yp = 0; + this->tolerance = 0; + this->within_tolerance = false; + this->item_to_select = NULL; + //this->tool_url = "/tools/shapes/star"; - star_context->star = NULL; + this->star = NULL; - star_context->magnitude = 5; - star_context->proportion = 0.5; - star_context->isflatsided = false; + this->magnitude = 5; + this->proportion = 0.5; + this->isflatsided = false; } void SPStarContext::finish() { - SPDesktop *desktop = this->desktop; - sp_canvas_item_ungrab(SP_CANVAS_ITEM(desktop->acetate), GDK_CURRENT_TIME); + this->finishItem(); this->sel_changed_connection.disconnect(); @@ -115,8 +110,8 @@ SPStarContext::~SPStarContext() { this->finishItem(); } - if (this->_message_context) { - delete this->_message_context; + if (this->message_context) { + delete this->message_context; } } @@ -164,7 +159,7 @@ void SPStarContext::setup() { this->enableGrDrag(); } - this->_message_context = new Inkscape::MessageContext(this->desktop->messageStack()); + this->message_context = new Inkscape::MessageContext(this->desktop->messageStack()); } void SPStarContext::set(const Inkscape::Preferences::Entry& val) { @@ -183,7 +178,7 @@ void SPStarContext::set(const Inkscape::Preferences::Entry& val) { } } -gint SPStarContext::root_handler(GdkEvent* event) { +bool SPStarContext::root_handler(GdkEvent* event) { static bool dragging; SPDesktop *desktop = this->desktop; @@ -383,7 +378,7 @@ void SPStarContext::drag(Geom::Point p, guint state) int const snaps = prefs->getInt("/options/rotationsnapsperpi/value", 12); if (!this->star) { - if (Inkscape::have_viable_layer(desktop, this->_message_context) == false) { + if (Inkscape::have_viable_layer(desktop, this->message_context) == false) { return; } @@ -430,7 +425,7 @@ void SPStarContext::drag(Geom::Point p, guint state) /* status text */ GString *rads = SP_PX_TO_METRIC_STRING(r1, desktop->namedview->getDefaultMetric()); - this->_message_context->setF(Inkscape::IMMEDIATE_MESSAGE, + this->message_context->setF(Inkscape::IMMEDIATE_MESSAGE, ( this->isflatsided? _("Polygon: radius %s, angle %5g°; with Ctrl to snap angle") : _("Star: radius %s, angle %5g°; with Ctrl to snap angle") ), @@ -440,7 +435,7 @@ void SPStarContext::drag(Geom::Point p, guint state) } void SPStarContext::finishItem() { - this->_message_context->clear(); + this->message_context->clear(); if (this->star != NULL) { if (this->star->r[1] == 0) { diff --git a/src/star-context.h b/src/star-context.h index 8902b5450..a068e4441 100644 --- a/src/star-context.h +++ b/src/star-context.h @@ -21,9 +21,6 @@ #include "sp-star.h" -#define SP_STAR_CONTEXT(obj) ((SPStarContext*)obj) -#define SP_IS_STAR_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj)) - class SPStarContext : public SPEventContext { public: SPStarContext(); @@ -34,7 +31,7 @@ public: virtual void setup(); virtual void finish(); virtual void set(const Inkscape::Preferences::Entry& val); - virtual gint root_handler(GdkEvent* event); + virtual bool root_handler(GdkEvent* event); virtual const std::string& getPrefsPath(); @@ -60,7 +57,7 @@ private: sigc::connection sel_changed_connection; - Inkscape::MessageContext *_message_context; + Inkscape::MessageContext *message_context; void drag(Geom::Point p, guint state); void finishItem(); diff --git a/src/text-context.cpp b/src/text-context.cpp index 254fafe6b..fea159834 100644 --- a/src/text-context.cpp +++ b/src/text-context.cpp @@ -299,7 +299,7 @@ void SPTextContext::finish() { tc->text_selection_quads.clear(); } -gint SPTextContext::item_handler(SPItem* item, GdkEvent* event) { +bool SPTextContext::item_handler(SPItem* item, GdkEvent* event) { SPEventContext* event_context = this; SPTextContext *tc = SP_TEXT_CONTEXT(event_context); @@ -421,7 +421,7 @@ gint SPTextContext::item_handler(SPItem* item, GdkEvent* event) { event_context->cursor_shape = cursor_text_insert_xpm; event_context->hot_x = 7; event_context->hot_y = 10; - sp_event_context_update_cursor(event_context); + event_context->sp_event_context_update_cursor(); sp_text_context_update_text_selection(tc); if (SP_IS_TEXT (item_ungrouped)) { @@ -563,7 +563,7 @@ static void show_curr_uni_char(SPTextContext *const tc) } } -gint SPTextContext::root_handler(GdkEvent* event) { +bool SPTextContext::root_handler(GdkEvent* event) { SPEventContext* event_context = this; SPTextContext *const tc = SP_TEXT_CONTEXT(event_context); @@ -617,7 +617,7 @@ gint SPTextContext::root_handler(GdkEvent* event) { event_context->cursor_shape = cursor_text_xpm; event_context->hot_x = 7; event_context->hot_y = 7; - sp_event_context_update_cursor(event_context); + event_context->sp_event_context_update_cursor(); desktop->event_context->defaultMessageContext()->clear(); } diff --git a/src/text-context.h b/src/text-context.h index adcd92991..8da7af7e5 100644 --- a/src/text-context.h +++ b/src/text-context.h @@ -76,8 +76,8 @@ public: virtual void setup(); virtual void finish(); - virtual gint root_handler(GdkEvent* event); - virtual gint item_handler(SPItem* item, GdkEvent* event); + virtual bool root_handler(GdkEvent* event); + virtual bool item_handler(SPItem* item, GdkEvent* event); virtual const std::string& getPrefsPath(); }; diff --git a/src/tools-switch.cpp b/src/tools-switch.cpp index ec917f331..fd160e518 100644 --- a/src/tools-switch.cpp +++ b/src/tools-switch.cpp @@ -129,131 +129,131 @@ tools_switch(SPDesktop *dt, int num) //dt->set_event_context(SP_TYPE_SELECT_CONTEXT, tool_names[num]); /* fixme: This is really ugly hack. We should bind and unbind class methods */ dt->activate_guides(true); - inkscape_eventcontext_set(sp_desktop_event_context(dt)); + inkscape_eventcontext_set(dt->getEventContext()); break; case TOOLS_NODES: //dt->set_event_context(INK_TYPE_NODE_TOOL, tool_names[num]); dt->activate_guides(true); - inkscape_eventcontext_set(sp_desktop_event_context(dt)); + inkscape_eventcontext_set(dt->getEventContext()); break; case TOOLS_TWEAK: //dt->set_event_context(SP_TYPE_TWEAK_CONTEXT, tool_names[num]); dt->activate_guides(true); - inkscape_eventcontext_set(sp_desktop_event_context(dt)); + inkscape_eventcontext_set(dt->getEventContext()); dt->tipsMessageContext()->set(Inkscape::NORMAL_MESSAGE, _("To tweak a path by pushing, select it and drag over it.")); break; case TOOLS_SPRAY: //dt->set_event_context(SP_TYPE_SPRAY_CONTEXT, tool_names[num]); dt->activate_guides(true); - inkscape_eventcontext_set(sp_desktop_event_context(dt)); + inkscape_eventcontext_set(dt->getEventContext()); dt->tipsMessageContext()->set(Inkscape::NORMAL_MESSAGE, _("Drag, click or click and scroll to spray the selected objects.")); break; case TOOLS_SHAPES_RECT: //dt->set_event_context(SP_TYPE_RECT_CONTEXT, tool_names[num]); dt->activate_guides(false); - inkscape_eventcontext_set(sp_desktop_event_context(dt)); + inkscape_eventcontext_set(dt->getEventContext()); dt->tipsMessageContext()->set(Inkscape::NORMAL_MESSAGE, _("Drag to create a rectangle. Drag controls to round corners and resize. Click to select.")); break; case TOOLS_SHAPES_3DBOX: //dt->set_event_context(SP_TYPE_BOX3D_CONTEXT, tool_names[num]); dt->activate_guides(false); - inkscape_eventcontext_set(sp_desktop_event_context(dt)); + inkscape_eventcontext_set(dt->getEventContext()); dt->tipsMessageContext()->set(Inkscape::NORMAL_MESSAGE, _("Drag to create a 3D box. Drag controls to resize in perspective. Click to select (with Ctrl+Alt for single faces).")); break; case TOOLS_SHAPES_ARC: //dt->set_event_context(SP_TYPE_ARC_CONTEXT, tool_names[num]); dt->activate_guides(false); - inkscape_eventcontext_set(sp_desktop_event_context(dt)); + inkscape_eventcontext_set(dt->getEventContext()); dt->tipsMessageContext()->set(Inkscape::NORMAL_MESSAGE, _("Drag to create an ellipse. Drag controls to make an arc or segment. Click to select.")); break; case TOOLS_SHAPES_STAR: //dt->set_event_context(SP_TYPE_STAR_CONTEXT, tool_names[num]); dt->activate_guides(false); - inkscape_eventcontext_set(sp_desktop_event_context(dt)); + inkscape_eventcontext_set(dt->getEventContext()); dt->tipsMessageContext()->set(Inkscape::NORMAL_MESSAGE, _("Drag to create a star. Drag controls to edit the star shape. Click to select.")); break; case TOOLS_SHAPES_SPIRAL: //dt->set_event_context(SP_TYPE_SPIRAL_CONTEXT, tool_names[num]); dt->activate_guides(false); - inkscape_eventcontext_set(sp_desktop_event_context(dt)); + inkscape_eventcontext_set(dt->getEventContext()); dt->tipsMessageContext()->set(Inkscape::NORMAL_MESSAGE, _("Drag to create a spiral. Drag controls to edit the spiral shape. Click to select.")); break; case TOOLS_FREEHAND_PENCIL: //dt->set_event_context(SP_TYPE_PENCIL_CONTEXT, tool_names[num]); dt->activate_guides(false); - inkscape_eventcontext_set(sp_desktop_event_context(dt)); + inkscape_eventcontext_set(dt->getEventContext()); dt->tipsMessageContext()->set(Inkscape::NORMAL_MESSAGE, _("Drag to create a freehand line. Shift appends to selected path, Alt activates sketch mode.")); break; case TOOLS_FREEHAND_PEN: //dt->set_event_context(SP_TYPE_PEN_CONTEXT, tool_names[num]); dt->activate_guides(false); - inkscape_eventcontext_set(sp_desktop_event_context(dt)); + inkscape_eventcontext_set(dt->getEventContext()); dt->tipsMessageContext()->set(Inkscape::NORMAL_MESSAGE, _("Click or click and drag to start a path; with Shift to append to selected path. Ctrl+click to create single dots (straight line modes only).")); break; case TOOLS_CALLIGRAPHIC: //dt->set_event_context(SP_TYPE_DYNA_DRAW_CONTEXT, tool_names[num]); dt->activate_guides(false); - inkscape_eventcontext_set(sp_desktop_event_context(dt)); + inkscape_eventcontext_set(dt->getEventContext()); dt->tipsMessageContext()->set(Inkscape::NORMAL_MESSAGE, _("Drag to draw a calligraphic stroke; with Ctrl to track a guide path. Arrow keys adjust width (left/right) and angle (up/down).")); break; case TOOLS_TEXT: //dt->set_event_context(SP_TYPE_TEXT_CONTEXT, tool_names[num]); dt->activate_guides(false); - inkscape_eventcontext_set(sp_desktop_event_context(dt)); + inkscape_eventcontext_set(dt->getEventContext()); dt->tipsMessageContext()->set(Inkscape::NORMAL_MESSAGE, _("Click to select or create text, drag to create flowed text; then type.")); break; case TOOLS_GRADIENT: //dt->set_event_context(SP_TYPE_GRADIENT_CONTEXT, tool_names[num]); dt->activate_guides(false); - inkscape_eventcontext_set(sp_desktop_event_context(dt)); + inkscape_eventcontext_set(dt->getEventContext()); dt->tipsMessageContext()->set(Inkscape::NORMAL_MESSAGE, _("Drag or double click to create a gradient on selected objects, drag handles to adjust gradients.")); break; case TOOLS_MESH: //dt->set_event_context(SP_TYPE_MESH_CONTEXT, tool_names[num]); dt->activate_guides(false); - inkscape_eventcontext_set(sp_desktop_event_context(dt)); + inkscape_eventcontext_set(dt->getEventContext()); dt->tipsMessageContext()->set(Inkscape::NORMAL_MESSAGE, _("Drag or double click to create a mesh on selected objects, drag handles to adjust meshes.")); break; case TOOLS_ZOOM: //dt->set_event_context(SP_TYPE_ZOOM_CONTEXT, tool_names[num]); dt->activate_guides(false); - inkscape_eventcontext_set(sp_desktop_event_context(dt)); + inkscape_eventcontext_set(dt->getEventContext()); dt->tipsMessageContext()->set(Inkscape::NORMAL_MESSAGE, _("Click or drag around an area to zoom in, Shift+click to zoom out.")); break; case TOOLS_MEASURE: //dt->set_event_context(SP_TYPE_MEASURE_CONTEXT, tool_names[num]); dt->activate_guides(false); - inkscape_eventcontext_set(sp_desktop_event_context(dt)); + inkscape_eventcontext_set(dt->getEventContext()); dt->tipsMessageContext()->set(Inkscape::NORMAL_MESSAGE, _("Drag to measure the dimensions of objects.")); break; case TOOLS_DROPPER: //dt->set_event_context(SP_TYPE_DROPPER_CONTEXT, tool_names[num]); dt->activate_guides(false); - inkscape_eventcontext_set(sp_desktop_event_context(dt)); + inkscape_eventcontext_set(dt->getEventContext()); dt->tipsMessageContext()->set(Inkscape::NORMAL_MESSAGE, _("Click to set fill, Shift+click to set stroke; drag to average color in area; with Alt to pick inverse color; Ctrl+C to copy the color under mouse to clipboard")); break; case TOOLS_CONNECTOR: //dt->set_event_context(SP_TYPE_CONNECTOR_CONTEXT, tool_names[num]); dt->activate_guides(false); - inkscape_eventcontext_set(sp_desktop_event_context(dt)); + inkscape_eventcontext_set(dt->getEventContext()); dt->tipsMessageContext()->set(Inkscape::NORMAL_MESSAGE, _("Click and drag between shapes to create a connector.")); break; case TOOLS_PAINTBUCKET: //dt->set_event_context(SP_TYPE_FLOOD_CONTEXT, tool_names[num]); dt->activate_guides(false); - inkscape_eventcontext_set(sp_desktop_event_context(dt)); + inkscape_eventcontext_set(dt->getEventContext()); dt->tipsMessageContext()->set(Inkscape::NORMAL_MESSAGE, _("Click to paint a bounded area, Shift+click to union the new fill with the current selection, Ctrl+click to change the clicked object's fill and stroke to the current setting.")); break; case TOOLS_ERASER: //dt->set_event_context(SP_TYPE_ERASER_CONTEXT, tool_names[num]); dt->activate_guides(false); - inkscape_eventcontext_set(sp_desktop_event_context(dt)); + inkscape_eventcontext_set(dt->getEventContext()); dt->tipsMessageContext()->set(Inkscape::NORMAL_MESSAGE, _("Drag to erase.")); break; case TOOLS_LPETOOL: //dt->set_event_context(SP_TYPE_LPETOOL_CONTEXT, tool_names[num]); dt->activate_guides(false); - inkscape_eventcontext_set(sp_desktop_event_context(dt)); + inkscape_eventcontext_set(dt->getEventContext()); dt->tipsMessageContext()->set(Inkscape::NORMAL_MESSAGE, _("Choose a subtool from the toolbar")); break; } diff --git a/src/tweak-context.cpp b/src/tweak-context.cpp index 4e842abbb..74e2e12e2 100644 --- a/src/tweak-context.cpp +++ b/src/tweak-context.cpp @@ -258,7 +258,7 @@ sp_tweak_update_cursor (SPTweakContext *tc, bool with_shift) event_context->cursor_shape = cursor_color_xpm; break; } - sp_event_context_update_cursor(event_context); + event_context->sp_event_context_update_cursor(); g_free(sel_message); } @@ -1154,7 +1154,7 @@ sp_tweak_switch_mode_temporarily (SPTweakContext *tc, gint mode, bool with_shift sp_tweak_update_cursor (tc, with_shift); } -gint SPTweakContext::root_handler(GdkEvent* event) { +bool SPTweakContext::root_handler(GdkEvent* event) { gint ret = FALSE; switch (event->type) { diff --git a/src/tweak-context.h b/src/tweak-context.h index 1ca279ca1..2d3eaa1e4 100644 --- a/src/tweak-context.h +++ b/src/tweak-context.h @@ -15,9 +15,6 @@ #include "event-context.h" #include <2geom/point.h> -#define SP_TWEAK_CONTEXT(obj) ((SPTweakContext*)obj) -#define SP_IS_TWEAK_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj)) - #define SAMPLING_SIZE 8 /* fixme: ?? */ #define TC_MIN_PRESSURE 0.0 @@ -79,7 +76,7 @@ public: virtual void setup(); virtual void set(const Inkscape::Preferences::Entry& val); - virtual gint root_handler(GdkEvent* event); + virtual bool root_handler(GdkEvent* event); virtual const std::string& getPrefsPath(); diff --git a/src/ui/dialog/align-and-distribute.cpp b/src/ui/dialog/align-and-distribute.cpp index 8845b60e5..38f10c59c 100644 --- a/src/ui/dialog/align-and-distribute.cpp +++ b/src/ui/dialog/align-and-distribute.cpp @@ -47,6 +47,7 @@ #include "widgets/icon.h" #include "sp-root.h" #include "document-undo.h" +#include "desktop.h" #include @@ -367,19 +368,25 @@ public : private : Geom::Dim2 _orientation; bool _distribute; - virtual void on_button_click() - { - if (!_dialog.getDesktop()) return; - SPEventContext *event_context = sp_desktop_event_context(_dialog.getDesktop()); - if (!INK_IS_NODE_TOOL (event_context)) return; + virtual void on_button_click() { + if (!_dialog.getDesktop()) { + return; + } + + SPEventContext *event_context = _dialog.getDesktop()->getEventContext(); + + if (!INK_IS_NODE_TOOL(event_context)) { + return; + } + InkNodeTool *nt = INK_NODE_TOOL(event_context); - if (_distribute) + if (_distribute) { nt->_multipath->distributeNodes(_orientation); - else + } else { nt->_multipath->alignNodes(_orientation); - + } } }; @@ -825,7 +832,7 @@ private : static void on_tool_changed(Inkscape::Application */*inkscape*/, SPEventContext */*context*/, AlignAndDistribute *daad) { SPDesktop *desktop = SP_ACTIVE_DESKTOP; - if (desktop && sp_desktop_event_context(desktop)) + if (desktop && desktop->getEventContext()) daad->setMode(tools_active(desktop) == TOOLS_NODES); } diff --git a/src/ui/tool/node-tool.cpp b/src/ui/tool/node-tool.cpp index b65ca22b9..d424c1fdb 100644 --- a/src/ui/tool/node-tool.cpp +++ b/src/ui/tool/node-tool.cpp @@ -411,7 +411,7 @@ void InkNodeTool::selection_changed(Inkscape::Selection *sel) { this->desktop->updateNow(); } -gint InkNodeTool::root_handler(GdkEvent* event) { +bool InkNodeTool::root_handler(GdkEvent* event) { /* things to handle here: * 1. selection of items * 2. passing events to manipulators @@ -613,7 +613,7 @@ void InkNodeTool::update_tip(GdkEvent *event) { } } -gint InkNodeTool::item_handler(SPItem* item, GdkEvent* event) { +bool InkNodeTool::item_handler(SPItem* item, GdkEvent* event) { SPEventContext::item_handler(item, event); return FALSE; @@ -684,13 +684,13 @@ void InkNodeTool::mouseover_changed(Inkscape::UI::ControlPoint *p) { this->cursor_shape = cursor_node_d_xpm; this->hot_x = 1; this->hot_y = 1; - sp_event_context_update_cursor(this); + this->sp_event_context_update_cursor(); this->cursor_drag = true; } else if (!cdp && this->cursor_drag) { this->cursor_shape = cursor_node_xpm; this->hot_x = 1; this->hot_y = 1; - sp_event_context_update_cursor(this); + this->sp_event_context_update_cursor(); this->cursor_drag = false; } } diff --git a/src/ui/tool/node-tool.h b/src/ui/tool/node-tool.h index df8b5d782..313cc0561 100644 --- a/src/ui/tool/node-tool.h +++ b/src/ui/tool/node-tool.h @@ -15,22 +15,23 @@ #include #include "event-context.h" -#define INK_NODE_TOOL(obj) ((InkNodeTool*)obj) -#define INK_IS_NODE_TOOL(obj) (dynamic_cast((const SPEventContext*)obj)) - namespace Inkscape { + namespace Display { + class TemporaryItem; + } + + namespace UI { + class MultiPathManipulator; + class ControlPointSelection; + class Selector; + class ControlPoint; -namespace Display { -class TemporaryItem; -} // namespace Display -namespace UI { -class MultiPathManipulator; -class ControlPointSelection; -class Selector; -struct PathSharedData; -class ControlPoint; -} // namespace UI -} // namespace Inkscape + struct PathSharedData; + } +} + +#define INK_NODE_TOOL(obj) ((InkNodeTool*)obj) +#define INK_IS_NODE_TOOL(obj) (dynamic_cast((const SPEventContext*)obj)) class InkNodeTool : public SPEventContext { public: @@ -47,8 +48,8 @@ public: virtual void setup(); virtual void set(const Inkscape::Preferences::Entry& val); - virtual gint root_handler(GdkEvent* event); - virtual gint item_handler(SPItem* item, GdkEvent* event); + virtual bool root_handler(GdkEvent* event); + virtual bool item_handler(SPItem* item, GdkEvent* event); virtual const std::string& getPrefsPath(); diff --git a/src/widgets/gradient-toolbar.cpp b/src/widgets/gradient-toolbar.cpp index 291e19016..ecb9df4c4 100644 --- a/src/widgets/gradient-toolbar.cpp +++ b/src/widgets/gradient-toolbar.cpp @@ -373,7 +373,7 @@ static void gr_tb_selection_changed(Inkscape::Selection * /*selection*/, gpointe Inkscape::Selection *selection = sp_desktop_selection(desktop); // take from desktop, not from args if (selection) { - SPEventContext *ev = sp_desktop_event_context(desktop); + SPEventContext *ev = desktop->getEventContext(); GrDrag *drag = NULL; if (ev) { drag = ev->get_drag(); @@ -585,7 +585,7 @@ static void gr_add_stop(GtkWidget * /*button*/, GtkWidget *vb) return; } - SPEventContext *ev = sp_desktop_event_context(desktop); + SPEventContext *ev = desktop->getEventContext(); SPGradientContext *rc = SP_GRADIENT_CONTEXT(ev); if (rc) { @@ -607,7 +607,7 @@ static void gr_remove_stop(GtkWidget * /*button*/, GtkWidget *vb) return; } - SPEventContext *ev = sp_desktop_event_context(desktop); + SPEventContext *ev = desktop->getEventContext(); GrDrag *drag = NULL; if (ev) { drag = ev->get_drag(); @@ -939,7 +939,7 @@ static void gr_gradient_combo_changed(EgeSelectOneAction *act, gpointer data) SPDesktop *desktop = static_cast(data); Inkscape::Selection *selection = sp_desktop_selection(desktop); - SPEventContext *ev = sp_desktop_event_context(desktop); + SPEventContext *ev = desktop->getEventContext(); gr_apply_gradient(selection, ev? ev->get_drag() : NULL, gr); @@ -981,7 +981,7 @@ static void gr_stop_combo_changed(GtkComboBox * /*widget*/, GtkWidget *data) } SPDesktop *desktop = static_cast(g_object_get_data(G_OBJECT(data), "desktop")); - SPEventContext *ev = sp_desktop_event_context(desktop); + SPEventContext *ev = desktop->getEventContext(); SPGradient *gr = gr_get_selected_gradient(data); select_drag_by_stop(data, gr, ev); diff --git a/src/zoom-context.cpp b/src/zoom-context.cpp index 99577648f..6efc122f7 100644 --- a/src/zoom-context.cpp +++ b/src/zoom-context.cpp @@ -25,12 +25,6 @@ #include "selection-chemistry.h" #include "zoom-context.h" - -//static gint xp = 0, yp = 0; // where drag started -//static gint tolerance = 0; -//static bool within_tolerance = false; -static bool escaped; - #include "tool-factory.h" namespace { @@ -52,6 +46,7 @@ SPZoomContext::SPZoomContext() : SPEventContext() { this->cursor_shape = cursor_zoom_xpm; this->hot_x = 6; this->hot_y = 6; + this->escaped = false; } SPZoomContext::~SPZoomContext() { @@ -80,21 +75,13 @@ void SPZoomContext::setup() { SPEventContext::setup(); } -//gint SPZoomContext::item_handler(SPItem* item, GdkEvent* event) { -// gint ret = FALSE; -// -// ret = SPEventContext::item_handler(item, event); -// -// return ret; -//} - -gint SPZoomContext::root_handler(GdkEvent* event) { +bool SPZoomContext::root_handler(GdkEvent* event) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); tolerance = prefs->getIntLimited("/options/dragtolerance/value", 0, 0, 100); double const zoom_inc = prefs->getDoubleLimited("/options/zoomincrement/value", M_SQRT2, 1.01, 10); - gint ret = FALSE; + bool ret = false; switch (event->type) { case GDK_BUTTON_PRESS: @@ -112,14 +99,14 @@ gint SPZoomContext::root_handler(GdkEvent* event) { escaped = false; - ret = TRUE; + ret = true; } else if (event->button.button == 3) { double const zoom_rel( (event->button.state & GDK_SHIFT_MASK) ? zoom_inc : 1 / zoom_inc ); desktop->zoom_relative_keep_point(button_dt, zoom_rel); - ret = TRUE; + ret = true; } sp_canvas_item_grab(SP_CANVAS_ITEM(desktop->acetate), @@ -132,7 +119,7 @@ gint SPZoomContext::root_handler(GdkEvent* event) { case GDK_MOTION_NOTIFY: if ((event->motion.state & GDK_BUTTON1_MASK) && !this->space_panning) { - ret = TRUE; + ret = true; if ( within_tolerance && ( abs( (gint) event->motion.x - xp ) < tolerance ) @@ -169,7 +156,7 @@ gint SPZoomContext::root_handler(GdkEvent* event) { desktop->zoom_relative_keep_point(button_dt, zoom_rel); } - ret = TRUE; + ret = true; } Inkscape::Rubberband::get(desktop)->stop(); @@ -193,7 +180,7 @@ gint SPZoomContext::root_handler(GdkEvent* event) { Inkscape::Rubberband::get(desktop)->stop(); xp = yp = 0; escaped = true; - ret = TRUE; + ret = true; break; case GDK_KEY_Up: @@ -202,13 +189,13 @@ gint SPZoomContext::root_handler(GdkEvent* event) { case GDK_KEY_KP_Down: // prevent the zoom field from activation if (!MOD__CTRL_ONLY(event)) - ret = TRUE; + ret = true; break; case GDK_KEY_Shift_L: case GDK_KEY_Shift_R: this->cursor_shape = cursor_zoom_out_xpm; - sp_event_context_update_cursor(this); + this->sp_event_context_update_cursor(); break; case GDK_KEY_Delete: @@ -226,7 +213,7 @@ gint SPZoomContext::root_handler(GdkEvent* event) { case GDK_KEY_Shift_L: case GDK_KEY_Shift_R: this->cursor_shape = cursor_zoom_xpm; - sp_event_context_update_cursor(this); + this->sp_event_context_update_cursor(); break; default: break; diff --git a/src/zoom-context.h b/src/zoom-context.h index f5f2145b1..b5d022e5e 100644 --- a/src/zoom-context.h +++ b/src/zoom-context.h @@ -23,17 +23,17 @@ public: SPZoomContext(); virtual ~SPZoomContext(); - //SPEventContext event_context; - SPCanvasItem *grabbed; - static const std::string prefsPath; virtual void setup(); virtual void finish(); - virtual gint root_handler(GdkEvent* event); - //virtual gint item_handler(SPItem* item, GdkEvent* event); + virtual bool root_handler(GdkEvent* event); virtual const std::string& getPrefsPath(); + +private: + SPCanvasItem *grabbed; + bool escaped; }; #endif -- cgit v1.2.3 From ed40d19ee34bde5b7a6b7bf38904838f8d072f87 Mon Sep 17 00:00:00 2001 From: Krzysztof Kosi??ski Date: Wed, 31 Jul 2013 20:18:48 +0200 Subject: Fix selection of images in outline mode. Fixes LP #1089702 Fixed bugs: - https://launchpad.net/bugs/1089702 (bzr r12440) --- src/display/drawing-image.cpp | 46 ++++++++++++++----------------------------- 1 file changed, 15 insertions(+), 31 deletions(-) diff --git a/src/display/drawing-image.cpp b/src/display/drawing-image.cpp index 753249e60..bdb7c15b0 100644 --- a/src/display/drawing-image.cpp +++ b/src/display/drawing-image.cpp @@ -9,6 +9,7 @@ * Released under GNU GPL, read the file 'COPYING' for more information */ +#include <2geom/bezier-curve.h> #include "display/cairo-utils.h" #include "display/drawing.h" #include "display/drawing-context.h" @@ -287,21 +288,9 @@ unsigned DrawingImage::_renderItem(DrawingContext &ct, Geom::IntRect const &/*ar static double distance_to_segment (Geom::Point const &p, Geom::Point const &a1, Geom::Point const &a2) { - // calculate sides of the triangle and their squares - double d1 = Geom::L2(p - a1); - double d1_2 = d1 * d1; - double d2 = Geom::L2(p - a2); - double d2_2 = d2 * d2; - double a = Geom::L2(a1 - a2); - double a_2 = a * a; - - // if one of the angles at the base is > 90, return the corresponding side - if (d1_2 + a_2 <= d2_2) return d1; - if (d2_2 + a_2 <= d1_2) return d2; - - // otherwise calculate the height to the base - double peri = (a + d1 + d2)/2; - return (2*sqrt(peri * (peri - a) * (peri - d1) * (peri - d2))/a); + Geom::LineSegment l(a1, a2); + Geom::Point np = l.pointAt(l.nearestPoint(p)); + return Geom::distance(np, p); } DrawingItem * @@ -313,22 +302,17 @@ DrawingImage::_pickItem(Geom::Point const &p, double delta, unsigned /*sticky*/) if (outline) { Geom::Rect r = bounds(); - - Geom::Point c00 = r.corner(0); - Geom::Point c01 = r.corner(3); - Geom::Point c11 = r.corner(2); - Geom::Point c10 = r.corner(1); - - // frame - if (distance_to_segment (p, c00, c10) < delta) return this; - if (distance_to_segment (p, c10, c11) < delta) return this; - if (distance_to_segment (p, c11, c01) < delta) return this; - if (distance_to_segment (p, c01, c00) < delta) return this; - - // diagonals - if (distance_to_segment (p, c00, c11) < delta) return this; - if (distance_to_segment (p, c10, c01) < delta) return this; - + Geom::Point pick = p * _ctm.inverse(); + + // find whether any side or diagonal is within delta + // to do so, iterate over all pairs of corners + for (unsigned i = 0; i < 3; ++i) { // for i=3, there is nothing to do + for (unsigned j = i+1; j < 4; ++j) { + if (distance_to_segment(pick, r.corner(i), r.corner(j)) < delta) { + return this; + } + } + } return NULL; } else { -- cgit v1.2.3 From 989abbac025a8b3349748d19a613a08586c5fdcd Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Wed, 31 Jul 2013 21:11:20 +0200 Subject: Fixed SPObject ctor and dtor; removed singleton.h; some smaller changes. (bzr r11608.1.110) --- src/Makefile_insert | 1 - src/arc-context.cpp | 13 +++------ src/arc-context.h | 2 -- src/box3d-context.cpp | 14 ++-------- src/box3d-context.h | 2 -- src/common-context.cpp | 8 ------ src/connector-context.cpp | 2 +- src/desktop.cpp | 2 +- src/dyna-draw-context.cpp | 60 +++++++++++++++++----------------------- src/eraser-context.cpp | 12 ++++---- src/event-context.cpp | 10 +++---- src/event-context.h | 4 +-- src/factory.h | 17 +++++++++++- src/flood-context.cpp | 9 +----- src/flood-context.h | 2 -- src/gradient-context.cpp | 17 ++++-------- src/gradient-context.h | 2 -- src/lpe-tool-context.cpp | 8 +----- src/lpe-tool-context.h | 2 -- src/mesh-context.cpp | 17 ++++-------- src/mesh-context.h | 2 -- src/pen-context.cpp | 18 ++++++------ src/pencil-context.cpp | 16 +++++------ src/rect-context.cpp | 20 ++++---------- src/rect-context.h | 2 -- src/singleton.h | 12 -------- src/sp-factory.h | 7 +++-- src/sp-item.cpp | 4 +-- src/sp-object.cpp | 16 +++++------ src/sp-object.h | 7 +++-- src/spiral-context.cpp | 14 ++-------- src/spiral-context.h | 2 -- src/spray-context.cpp | 7 ----- src/spray-context.h | 2 -- src/star-context.cpp | 7 ----- src/star-context.h | 2 -- src/text-context.cpp | 10 +++---- src/tool-factory.h | 7 +++-- src/tweak-context.cpp | 39 +++++++++++--------------- src/tweak-context.h | 2 -- src/ui/tool/node-tool.cpp | 22 ++++++--------- src/ui/tool/node-tool.h | 1 - src/ui/widget/selected-style.cpp | 14 +++++----- 43 files changed, 161 insertions(+), 276 deletions(-) delete mode 100644 src/singleton.h diff --git a/src/Makefile_insert b/src/Makefile_insert index d17fad8b9..0fa7069ef 100644 --- a/src/Makefile_insert +++ b/src/Makefile_insert @@ -141,7 +141,6 @@ ink_common_sources += \ seltrans-handles.cpp seltrans-handles.h \ shape-editor.cpp shape-editor.h \ shortcuts.cpp shortcuts.h \ - singleton.h \ snap.cpp snap.h \ snap-enums.h snap-candidate.h \ snapped-curve.cpp snapped-curve.h \ diff --git a/src/arc-context.cpp b/src/arc-context.cpp index 827a0eb35..1f14bd270 100644 --- a/src/arc-context.cpp +++ b/src/arc-context.cpp @@ -67,7 +67,6 @@ const std::string SPArcContext::prefsPath = "/tools/shapes/arc"; SPArcContext::SPArcContext() : SPEventContext() { - this->_message_context = 0; this->cursor_shape = cursor_ellipse_xpm; this->hot_x = 4; this->hot_y = 4; @@ -101,8 +100,6 @@ SPArcContext::~SPArcContext() { if (this->arc) { this->finishItem(); } - - delete this->_message_context; } /** @@ -139,8 +136,6 @@ void SPArcContext::setup() { if (prefs->getBool("/tools/shapes/gradientdrag")) { this->enableGrDrag(); } - - this->_message_context = new Inkscape::MessageContext(this->desktop->messageStack()); } bool SPArcContext::item_handler(SPItem* item, GdkEvent* event) { @@ -357,7 +352,7 @@ bool SPArcContext::root_handler(GdkEvent* event) { void SPArcContext::drag(Geom::Point pt, guint state) { if (!this->arc) { - if (Inkscape::have_viable_layer(desktop, this->_message_context) == false) { + if (Inkscape::have_viable_layer(desktop, this->message_context) == false) { return; } @@ -435,9 +430,9 @@ void SPArcContext::drag(Geom::Point pt, guint state) { ratio_y = (int) rint (rdimy / rdimx); } - this->_message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Ellipse: %s × %s (constrained to ratio %d:%d); with Shift to draw around the starting point"), xs->str, ys->str, ratio_x, ratio_y); + this->message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Ellipse: %s × %s (constrained to ratio %d:%d); with Shift to draw around the starting point"), xs->str, ys->str, ratio_x, ratio_y); } else { - this->_message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Ellipse: %s × %s; with Ctrl to make square or integer-ratio ellipse; with Shift to draw around the starting point"), xs->str, ys->str); + this->message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Ellipse: %s × %s; with Ctrl to make square or integer-ratio ellipse; with Shift to draw around the starting point"), xs->str, ys->str); } g_string_free(xs, FALSE); @@ -445,7 +440,7 @@ void SPArcContext::drag(Geom::Point pt, guint state) { } void SPArcContext::finishItem() { - this->_message_context->clear(); + this->message_context->clear(); if (this->arc != NULL) { if (this->arc->rx.computed == 0 || this->arc->ry.computed == 0) { diff --git a/src/arc-context.h b/src/arc-context.h index 25b8762b2..2fe6eff1e 100644 --- a/src/arc-context.h +++ b/src/arc-context.h @@ -47,8 +47,6 @@ private: sigc::connection sel_changed_connection; - Inkscape::MessageContext *_message_context; - void selection_changed(Inkscape::Selection* selection); void drag(Geom::Point pt, guint state); diff --git a/src/box3d-context.cpp b/src/box3d-context.cpp index f0bb67dcc..1e0a62a1b 100644 --- a/src/box3d-context.cpp +++ b/src/box3d-context.cpp @@ -70,8 +70,6 @@ const std::string& Box3DContext::getPrefsPath() { const std::string Box3DContext::prefsPath = "/tools/shapes/3dbox"; Box3DContext::Box3DContext() : SPEventContext() { - this->_message_context = 0; - this->cursor_shape = cursor_3dbox_xpm; this->hot_x = 4; this->hot_y = 4; @@ -113,10 +111,6 @@ Box3DContext::~Box3DContext() { if (this->box3d) { this->finishItem(); } - - if (this->_message_context) { - delete this->_message_context; - } } /** @@ -178,8 +172,6 @@ void Box3DContext::setup() { if (prefs->getBool("/tools/shapes/gradientdrag")) { this->enableGrDrag(); } - - this->_message_context = new Inkscape::MessageContext(this->desktop->messageStack()); } bool Box3DContext::item_handler(SPItem* item, GdkEvent* event) { @@ -522,7 +514,7 @@ bool Box3DContext::root_handler(GdkEvent* event) { void Box3DContext::drag(guint state) { if (!this->box3d) { - if (Inkscape::have_viable_layer(desktop, this->_message_context) == false) { + if (Inkscape::have_viable_layer(desktop, this->message_context) == false) { return; } @@ -594,11 +586,11 @@ void Box3DContext::drag(guint state) { box3d_position_set(this->box3d); // status text - this->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("3D Box; with Shift to extrude along the Z axis")); + this->message_context->setF(Inkscape::NORMAL_MESSAGE, _("3D Box; with Shift to extrude along the Z axis")); } void Box3DContext::finishItem() { - this->_message_context->clear(); + this->message_context->clear(); this->ctrl_dragged = false; this->extruded = false; diff --git a/src/box3d-context.h b/src/box3d-context.h index 7f910158e..164e3bde8 100644 --- a/src/box3d-context.h +++ b/src/box3d-context.h @@ -67,8 +67,6 @@ private: sigc::connection sel_changed_connection; - Inkscape::MessageContext *_message_context; - void selection_changed(Inkscape::Selection* selection); void drag(guint state); diff --git a/src/common-context.cpp b/src/common-context.cpp index e6b82cf82..fb984cbf1 100644 --- a/src/common-context.cpp +++ b/src/common-context.cpp @@ -20,7 +20,6 @@ #define DRAG_MAX 1.0 SPCommonContext::SPCommonContext() : SPEventContext() { - this->_message_context = 0; this->tremor = 0; this->usetilt = 0; this->is_drawing = false; @@ -96,13 +95,6 @@ SPCommonContext::~SPCommonContext() { sp_canvas_item_destroy(this->currentshape); this->currentshape = 0; } - - if (this->_message_context) { - delete this->_message_context; - this->_message_context = 0; - } - - //G_OBJECT_CLASS(sp_common_context_parent_class)->dispose(object); } void SPCommonContext::set(const Inkscape::Preferences::Entry& value) { diff --git a/src/connector-context.cpp b/src/connector-context.cpp index 72a01dee9..c79c58125 100644 --- a/src/connector-context.cpp +++ b/src/connector-context.cpp @@ -518,7 +518,7 @@ connector_handle_button_press(SPConnectorContext *const cc, GdkEventButton const SPDesktop *desktop = SP_EVENT_CONTEXT_DESKTOP(cc); - if (Inkscape::have_viable_layer(desktop, cc->_message_context) == false) { + if (Inkscape::have_viable_layer(desktop, cc->message_context) == false) { return TRUE; } diff --git a/src/desktop.cpp b/src/desktop.cpp index 332ae5996..a8de8ee50 100644 --- a/src/desktop.cpp +++ b/src/desktop.cpp @@ -682,7 +682,7 @@ void SPDesktop::set_event_context2(const std::string& toolName) { event_context = ToolFactory::instance().createObject(toolName); event_context->desktop = this; - event_context->_message_context = new Inkscape::MessageContext(this->messageStack()); + event_context->message_context = new Inkscape::MessageContext(this->messageStack()); event_context->setup(); diff --git a/src/dyna-draw-context.cpp b/src/dyna-draw-context.cpp index da90d926f..05ebc3a4a 100644 --- a/src/dyna-draw-context.cpp +++ b/src/dyna-draw-context.cpp @@ -102,36 +102,29 @@ const std::string& SPDynaDrawContext::getPrefsPath() { const std::string SPDynaDrawContext::prefsPath = "/tools/calligraphic"; SPDynaDrawContext::SPDynaDrawContext() : SPCommonContext() { - SPDynaDrawContext* ddc = this; + this->cursor_shape = cursor_calligraphy_xpm; + this->hot_x = 4; + this->hot_y = 4; - ddc->cursor_shape = cursor_calligraphy_xpm; - ddc->hot_x = 4; - ddc->hot_y = 4; + this->vel_thin = 0.1; + this->flatness = 0.9; + this->cap_rounding = 0.0; - ddc->vel_thin = 0.1; - ddc->flatness = 0.9; - ddc->cap_rounding = 0.0; + this->abs_width = false; + this->keep_selected = true; - ddc->abs_width = false; - ddc->keep_selected = true; + this->hatch_spacing = 0; + this->hatch_spacing_step = 0; - ddc->hatch_spacing = 0; - ddc->hatch_spacing_step = 0; + this->hatch_last_nearest = Geom::Point(0,0); + this->hatch_last_pointer = Geom::Point(0,0); + this->hatch_escaped = false; + this->hatch_area = NULL; + this->hatch_item = NULL; + this->hatch_livarot_path = NULL; -// new (&ddc->hatch_pointer_past) std::list(); -// new (&ddc->hatch_nearest_past) std::list(); -// new (&ddc->inertia_vectors) std::list(); -// new (&ddc->hatch_vectors) std::list(); - - ddc->hatch_last_nearest = Geom::Point(0,0); - ddc->hatch_last_pointer = Geom::Point(0,0); - ddc->hatch_escaped = false; - ddc->hatch_area = NULL; - ddc->hatch_item = NULL; - ddc->hatch_livarot_path = NULL; - - ddc->trace_bg = false; - ddc->just_started_drawing = false; + this->trace_bg = false; + this->just_started_drawing = false; } SPDynaDrawContext::~SPDynaDrawContext() { @@ -194,7 +187,6 @@ void SPDynaDrawContext::setup() { sp_event_context_read(this, "cap_rounding"); this->is_drawing = false; - this->_message_context = new Inkscape::MessageContext((this->desktop)->messageStack()); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); if (prefs->getBool("/tools/calligraphic/selcue")) { @@ -476,7 +468,7 @@ bool SPDynaDrawContext::root_handler(GdkEvent* event) { switch (event->type) { case GDK_BUTTON_PRESS: if (event->button.button == 1 && !this->space_panning) { - if (Inkscape::have_viable_layer(desktop, this->_message_context) == false) { + if (Inkscape::have_viable_layer(desktop, this->message_context) == false) { return TRUE; } @@ -511,7 +503,7 @@ bool SPDynaDrawContext::root_handler(GdkEvent* event) { Geom::Point motion_dt(desktop->w2d(motion_w)); this->extinput(event); - this->_message_context->clear(); + this->message_context->clear(); // for hatching: double hatch_dist = 0; @@ -549,9 +541,9 @@ bool SPDynaDrawContext::root_handler(GdkEvent* event) { // unit-length vector hatch_unit_vector = (pointer - nearest)/hatch_dist; - this->_message_context->set(Inkscape::NORMAL_MESSAGE, _("Guide path selected; start drawing along the guide with Ctrl")); + this->message_context->set(Inkscape::NORMAL_MESSAGE, _("Guide path selected; start drawing along the guide with Ctrl")); } else { - this->_message_context->set(Inkscape::NORMAL_MESSAGE, _("Select a guide path to track with Ctrl")); + this->message_context->set(Inkscape::NORMAL_MESSAGE, _("Select a guide path to track with Ctrl")); } } @@ -686,10 +678,10 @@ bool SPDynaDrawContext::root_handler(GdkEvent* event) { this->hatch_vectors.pop_back(); } - this->_message_context->set(Inkscape::NORMAL_MESSAGE, this->hatch_escaped? _("Tracking: connection to guide path lost!") : _("Tracking a guide path")); + this->message_context->set(Inkscape::NORMAL_MESSAGE, this->hatch_escaped? _("Tracking: connection to guide path lost!") : _("Tracking a guide path")); } else { - this->_message_context->set(Inkscape::NORMAL_MESSAGE, _("Drawing a calligraphic stroke")); + this->message_context->set(Inkscape::NORMAL_MESSAGE, _("Drawing a calligraphic stroke")); } if (this->just_started_drawing) { @@ -805,7 +797,7 @@ bool SPDynaDrawContext::root_handler(GdkEvent* event) { this->hatch_spacing += this->hatch_spacing_step; } - this->_message_context->clear(); + this->message_context->clear(); ret = TRUE; } break; @@ -896,7 +888,7 @@ bool SPDynaDrawContext::root_handler(GdkEvent* event) { switch (get_group0_keyval(&event->key)) { case GDK_KEY_Control_L: case GDK_KEY_Control_R: - this->_message_context->clear(); + this->message_context->clear(); this->hatch_spacing = 0; this->hatch_spacing_step = 0; break; diff --git a/src/eraser-context.cpp b/src/eraser-context.cpp index 6391419eb..b2df86434 100644 --- a/src/eraser-context.cpp +++ b/src/eraser-context.cpp @@ -152,8 +152,6 @@ static ProfileFloatElement f_profile[PROFILE_FLOAT_SIZE] = { this->is_drawing = false; - this->_message_context = new Inkscape::MessageContext(desktop->messageStack()); - Inkscape::Preferences *prefs = Inkscape::Preferences::get(); if (prefs->getBool("/tools/eraser/selcue", 0) != 0) { this->enableSelectionCue(); @@ -383,7 +381,7 @@ bool SPEraserContext::root_handler(GdkEvent* event) { switch (event->type) { case GDK_BUTTON_PRESS: if (event->button.button == 1 && !this->space_panning) { - if (Inkscape::have_viable_layer(desktop, this->_message_context) == false) { + if (Inkscape::have_viable_layer(desktop, this->message_context) == false) { return TRUE; } @@ -427,12 +425,12 @@ bool SPEraserContext::root_handler(GdkEvent* event) { ); this->extinput(event); - this->_message_context->clear(); + this->message_context->clear(); if ( this->is_drawing && (event->motion.state & GDK_BUTTON1_MASK) && !this->space_panning) { this->dragging = TRUE; - this->_message_context->set(Inkscape::NORMAL_MESSAGE, _("Drawing an eraser stroke")); + this->message_context->set(Inkscape::NORMAL_MESSAGE, _("Drawing an eraser stroke")); if (!this->apply(motion_dt)) { ret = TRUE; @@ -484,7 +482,7 @@ bool SPEraserContext::root_handler(GdkEvent* event) { this->repr = NULL; } - this->_message_context->clear(); + this->message_context->clear(); ret = TRUE; } @@ -603,7 +601,7 @@ bool SPEraserContext::root_handler(GdkEvent* event) { switch (get_group0_keyval(&event->key)) { case GDK_KEY_Control_L: case GDK_KEY_Control_R: - this->_message_context->clear(); + this->message_context->clear(); break; default: diff --git a/src/event-context.cpp b/src/event-context.cpp index bea5f63f6..e5ea85818 100644 --- a/src/event-context.cpp +++ b/src/event-context.cpp @@ -104,7 +104,7 @@ SPEventContext::SPEventContext() { this->desktop = NULL; this->cursor = NULL; - this->_message_context = NULL; + this->message_context = NULL; this->_selcue = NULL; this->_grdrag = NULL; this->space_panning = false; @@ -115,8 +115,8 @@ SPEventContext::SPEventContext() { } SPEventContext::~SPEventContext() { - if (this->_message_context) { - delete this->_message_context; + if (this->message_context) { + delete this->message_context; } if (this->cursor != NULL) { @@ -704,7 +704,7 @@ bool SPEventContext::root_handler(GdkEvent* event) { panning = 4; this->space_panning = true; - this->_message_context->set(Inkscape::INFORMATION_MESSAGE, + this->message_context->set(Inkscape::INFORMATION_MESSAGE, _("Space+mouse move to pan canvas")); ret = TRUE; @@ -728,7 +728,7 @@ bool SPEventContext::root_handler(GdkEvent* event) { // Stop panning on any key release if (this->space_panning) { this->space_panning = false; - this->_message_context->clear(); + this->message_context->clear(); } if (panning) { diff --git a/src/event-context.h b/src/event-context.h index 38474a208..51c49b123 100644 --- a/src/event-context.h +++ b/src/event-context.h @@ -122,10 +122,10 @@ public: ///< be selected if this is a click not drag Inkscape::MessageContext *defaultMessageContext() { - return _message_context; + return message_context; } - Inkscape::MessageContext *_message_context; + Inkscape::MessageContext *message_context; Inkscape::SelCue *_selcue; diff --git a/src/factory.h b/src/factory.h index 495db5474..ca90a6e9a 100644 --- a/src/factory.h +++ b/src/factory.h @@ -1,9 +1,21 @@ -#pragma once +#ifndef FACTORY_H_SEEN +#define FACTORY_H_SEEN #include #include #include +/** + * A simple singleton implementation. + */ +template +struct Singleton { + static T& instance() { + static T inst; + return inst; + } +}; + namespace FactoryExceptions { class TypeNotRegistered : public std::exception { public: @@ -78,3 +90,6 @@ struct NodeTraits { return name; } }; + +#endif + diff --git a/src/flood-context.cpp b/src/flood-context.cpp index 824c6e329..09a1d5742 100644 --- a/src/flood-context.cpp +++ b/src/flood-context.cpp @@ -92,7 +92,6 @@ const std::string& SPFloodContext::getPrefsPath() { const std::string SPFloodContext::prefsPath = "/tools/paintbucket"; SPFloodContext::SPFloodContext() : SPEventContext() { - this->_message_context = 0; this->cursor_shape = cursor_paintbucket_xpm; this->hot_x = 11; this->hot_y = 30; @@ -115,10 +114,6 @@ SPFloodContext::~SPFloodContext() { if (this->item) { this->finishItem(); } - - if (this->_message_context) { - delete this->_message_context; - } } /** @@ -145,8 +140,6 @@ void SPFloodContext::setup() { sigc::mem_fun(this, &SPFloodContext::selection_changed) ); - this->_message_context = new Inkscape::MessageContext((this->desktop)->messageStack()); - Inkscape::Preferences *prefs = Inkscape::Preferences::get(); if (prefs->getBool("/tools/paintbucket/selcue")) { @@ -1231,7 +1224,7 @@ bool SPFloodContext::root_handler(GdkEvent* event) { } void SPFloodContext::finishItem() { - this->_message_context->clear(); + this->message_context->clear(); if (this->item != NULL) { this->item->updateRepr(); diff --git a/src/flood-context.h b/src/flood-context.h index accfd1e40..a864f464a 100644 --- a/src/flood-context.h +++ b/src/flood-context.h @@ -36,8 +36,6 @@ public: sigc::connection sel_changed_connection; - Inkscape::MessageContext *_message_context; - static const std::string prefsPath; virtual void setup(); diff --git a/src/gradient-context.cpp b/src/gradient-context.cpp index 1e9bef354..5921426cf 100644 --- a/src/gradient-context.cpp +++ b/src/gradient-context.cpp @@ -74,7 +74,6 @@ const std::string SPGradientContext::prefsPath = "/tools/gradient"; SPGradientContext::SPGradientContext() : SPEventContext() { this->node_added = false; this->subselcon = 0; - this->_message_context = 0; this->selcon = 0; this->cursor_addnode = false; @@ -91,10 +90,6 @@ SPGradientContext::SPGradientContext() : SPEventContext() { SPGradientContext::~SPGradientContext() { this->enableGrDrag(false); - if (this->_message_context) { - delete this->_message_context; - } - this->selcon->disconnect(); delete this->selcon; @@ -138,7 +133,7 @@ void SPGradientContext::selection_changed(Inkscape::Selection*) { //TRANSLATORS: Mind the space in front. This is part of a compound message ngettext(" out of %d gradient handle"," out of %d gradient handles",n_tot), ngettext(" on %d selected object"," on %d selected objects",n_obj),NULL); - rc->_message_context->setF(Inkscape::NORMAL_MESSAGE, + rc->message_context->setF(Inkscape::NORMAL_MESSAGE, message,_(gr_handle_descr[drag->singleSelectedDraggerSingleDraggableType()]), n_tot, n_obj); } else { gchar * message = g_strconcat( @@ -147,16 +142,16 @@ void SPGradientContext::selection_changed(Inkscape::Selection*) { "One handle merging %d stops (drag with Shift to separate) selected",drag->singleSelectedDraggerNumDraggables()), ngettext(" out of %d gradient handle"," out of %d gradient handles",n_tot), ngettext(" on %d selected object"," on %d selected objects",n_obj),NULL); - rc->_message_context->setF(Inkscape::NORMAL_MESSAGE,message,drag->singleSelectedDraggerNumDraggables(), n_tot, n_obj); + rc->message_context->setF(Inkscape::NORMAL_MESSAGE,message,drag->singleSelectedDraggerNumDraggables(), n_tot, n_obj); } } else if (n_sel > 1) { //TRANSLATORS: The plural refers to number of selected gradient handles. This is part of a compound message (part two indicates selected object count) gchar * message = g_strconcat(ngettext("%d gradient handle selected out of %d","%d gradient handles selected out of %d",n_sel), //TRANSLATORS: Mind the space in front. (Refers to gradient handles selected). This is part of a compound message ngettext(" on %d selected object"," on %d selected objects",n_obj),NULL); - rc->_message_context->setF(Inkscape::NORMAL_MESSAGE,message, n_sel, n_tot, n_obj); + rc->message_context->setF(Inkscape::NORMAL_MESSAGE,message, n_sel, n_tot, n_obj); } else if (n_sel == 0) { - rc->_message_context->setF(Inkscape::NORMAL_MESSAGE, + rc->message_context->setF(Inkscape::NORMAL_MESSAGE, //TRANSLATORS: The plural refers to number of selected objects ngettext("No gradient handles selected out of %d on %d selected object", "No gradient handles selected out of %d on %d selected objects",n_obj), n_tot, n_obj); @@ -175,8 +170,6 @@ void SPGradientContext::setup() { this->enableGrDrag(); Inkscape::Selection *selection = sp_desktop_selection(this->desktop); - this->_message_context = new Inkscape::MessageContext(sp_desktop_message_stack(this->desktop)); - this->selcon = new sigc::connection(selection->connectChanged( sigc::mem_fun(this, &SPGradientContext::selection_changed) )); @@ -955,7 +948,7 @@ static void sp_gradient_drag(SPGradientContext &rc, Geom::Point const pt, guint // status text; we do not track coords because this branch is run once, not all the time // during drag int n_objects = g_slist_length((GSList *) selection->itemList()); - rc._message_context->setF(Inkscape::NORMAL_MESSAGE, + rc.message_context->setF(Inkscape::NORMAL_MESSAGE, ngettext("Gradient for %d object; with Ctrl to snap angle", "Gradient for %d objects; with Ctrl to snap angle", n_objects), n_objects); diff --git a/src/gradient-context.h b/src/gradient-context.h index 0c2a7eb3d..fb964f904 100644 --- a/src/gradient-context.h +++ b/src/gradient-context.h @@ -35,8 +35,6 @@ public: Geom::Point mousepoint_doc; // stores mousepoint when over_line in doc coords - Inkscape::MessageContext *_message_context; - sigc::connection *selcon; sigc::connection *subselcon; diff --git a/src/lpe-tool-context.cpp b/src/lpe-tool-context.cpp index 7ff262a3c..a1c812049 100644 --- a/src/lpe-tool-context.cpp +++ b/src/lpe-tool-context.cpp @@ -79,9 +79,8 @@ SPLPEToolContext::SPLPEToolContext() : SPPenContext() { lc->mode = Inkscape::LivePathEffect::BEND_PATH; lc->shape_editor = 0; - lc->_lpetool_message_context = 0; - lc->cursor_shape = cursor_crosshairs_xpm; + lc->cursor_shape = cursor_crosshairs_xpm; lc->hot_x = 7; lc->hot_y = 7; @@ -107,9 +106,6 @@ SPLPEToolContext::~SPLPEToolContext() { lc->sel_changed_connection.disconnect(); //lc->sel_changed_connection.~connection(); - if (lc->_lpetool_message_context) { - delete lc->_lpetool_message_context; - } //G_OBJECT_CLASS(sp_lpetool_context_parent_class)->dispose(object); } @@ -149,8 +145,6 @@ void SPLPEToolContext::setup() { if (prefs->getBool("/tools/lpetool/selcue")) { ec->enableSelectionCue(); } - - lc->_lpetool_message_context = new Inkscape::MessageContext((ec->desktop)->messageStack()); } /** diff --git a/src/lpe-tool-context.h b/src/lpe-tool-context.h index 657916342..6d36594fe 100644 --- a/src/lpe-tool-context.h +++ b/src/lpe-tool-context.h @@ -53,8 +53,6 @@ public: std::map *measuring_items; - Inkscape::MessageContext *_lpetool_message_context; - sigc::connection sel_changed_connection; sigc::connection sel_modified_connection; diff --git a/src/mesh-context.cpp b/src/mesh-context.cpp index 915ac0f7f..ecd847fa4 100644 --- a/src/mesh-context.cpp +++ b/src/mesh-context.cpp @@ -74,7 +74,6 @@ const std::string SPMeshContext::prefsPath = "/tools/mesh"; SPMeshContext::SPMeshContext() : SPEventContext() { this->selcon = 0; - this->_message_context = 0; this->node_added = false; this->subselcon = 0; @@ -92,10 +91,6 @@ SPMeshContext::SPMeshContext() : SPEventContext() { SPMeshContext::~SPMeshContext() { this->enableGrDrag(false); - if (this->_message_context) { - delete this->_message_context; - } - this->selcon->disconnect(); delete this->selcon; @@ -135,7 +130,7 @@ void SPMeshContext::selection_changed(Inkscape::Selection* sel) { //TRANSLATORS: Mind the space in front. This is part of a compound message ngettext(" out of %d mesh handle"," out of %d mesh handles",n_tot), ngettext(" on %d selected object"," on %d selected objects",n_obj),NULL); - this->_message_context->setF(Inkscape::NORMAL_MESSAGE, + this->message_context->setF(Inkscape::NORMAL_MESSAGE, message,_(ms_handle_descr[drag->singleSelectedDraggerSingleDraggableType()]), n_tot, n_obj); } else { gchar * message = @@ -146,7 +141,7 @@ void SPMeshContext::selection_changed(Inkscape::Selection* sel) { drag->singleSelectedDraggerNumDraggables()), ngettext(" out of %d mesh handle"," out of %d mesh handles",n_tot), ngettext(" on %d selected object"," on %d selected objects",n_obj),NULL); - this->_message_context->setF(Inkscape::NORMAL_MESSAGE,message,drag->singleSelectedDraggerNumDraggables(), n_tot, n_obj); + this->message_context->setF(Inkscape::NORMAL_MESSAGE,message,drag->singleSelectedDraggerNumDraggables(), n_tot, n_obj); } } else if (n_sel > 1) { //TRANSLATORS: The plural refers to number of selected mesh handles. This is part of a compound message (part two indicates selected object count) @@ -154,9 +149,9 @@ void SPMeshContext::selection_changed(Inkscape::Selection* sel) { g_strconcat(ngettext("%d mesh handle selected out of %d","%d mesh handles selected out of %d",n_sel), //TRANSLATORS: Mind the space in front. (Refers to gradient handles selected). This is part of a compound message ngettext(" on %d selected object"," on %d selected objects",n_obj),NULL); - this->_message_context->setF(Inkscape::NORMAL_MESSAGE,message, n_sel, n_tot, n_obj); + this->message_context->setF(Inkscape::NORMAL_MESSAGE,message, n_sel, n_tot, n_obj); } else if (n_sel == 0) { - this->_message_context->setF(Inkscape::NORMAL_MESSAGE, + this->message_context->setF(Inkscape::NORMAL_MESSAGE, //TRANSLATORS: The plural refers to number of selected objects ngettext("No mesh handles selected out of %d on %d selected object", "No mesh handles selected out of %d on %d selected objects",n_obj), n_tot, n_obj); @@ -240,8 +235,6 @@ void SPMeshContext::setup() { this->enableGrDrag(); Inkscape::Selection *selection = sp_desktop_selection(this->desktop); - this->_message_context = new Inkscape::MessageContext(sp_desktop_message_stack(this->desktop)); - this->selcon = new sigc::connection(selection->connectChanged( sigc::mem_fun(this, &SPMeshContext::selection_changed) )); @@ -995,7 +988,7 @@ static void sp_mesh_drag(SPMeshContext &rc, Geom::Point const /*pt*/, guint /*st // status text; we do not track coords because this branch is run once, not all the time // during drag int n_objects = g_slist_length((GSList *) selection->itemList()); - rc._message_context->setF(Inkscape::NORMAL_MESSAGE, + rc.message_context->setF(Inkscape::NORMAL_MESSAGE, ngettext("Gradient for %d object; with Ctrl to snap angle", "Gradient for %d objects; with Ctrl to snap angle", n_objects), n_objects); diff --git a/src/mesh-context.h b/src/mesh-context.h index 69eef1086..1d360268e 100644 --- a/src/mesh-context.h +++ b/src/mesh-context.h @@ -37,8 +37,6 @@ public: Geom::Point mousepoint_doc; // stores mousepoint when over_line in doc coords - Inkscape::MessageContext *_message_context; - sigc::connection *selcon; sigc::connection *subselcon; diff --git a/src/pen-context.cpp b/src/pen-context.cpp index 690b520bc..fbcb6dae5 100644 --- a/src/pen-context.cpp +++ b/src/pen-context.cpp @@ -205,8 +205,8 @@ static void pen_cancel (SPPenContext *const pc) sp_canvas_item_hide(pc->c1); sp_canvas_item_hide(pc->cl0); sp_canvas_item_hide(pc->cl1); - pc->_message_context->clear(); - pc->_message_context->flash(Inkscape::NORMAL_MESSAGE, _("Drawing cancelled")); + pc->message_context->clear(); + pc->message_context->flash(Inkscape::NORMAL_MESSAGE, _("Drawing cancelled")); pc->desktop->canvas->endForcedFullRedraws(); } @@ -386,7 +386,7 @@ static gint pen_handle_button_press(SPPenContext *const pc, GdkEventButton const // make sure this is not the last click for a waiting LPE (otherwise we want to finish the path) && pc->expecting_clicks_for_LPE != 1) { - if (Inkscape::have_viable_layer(desktop, dc->_message_context) == false) { + if (Inkscape::have_viable_layer(desktop, dc->message_context) == false) { return TRUE; } @@ -623,20 +623,20 @@ static gint pen_handle_motion_notify(SPPenContext *const pc, GdkEventMotion cons } if (anchor && !pc->anchor_statusbar) { - pc->_message_context->set(Inkscape::NORMAL_MESSAGE, _("Click or click and drag to close and finish the path.")); + pc->message_context->set(Inkscape::NORMAL_MESSAGE, _("Click or click and drag to close and finish the path.")); pc->anchor_statusbar = true; } else if (!anchor && pc->anchor_statusbar) { - pc->_message_context->clear(); + pc->message_context->clear(); pc->anchor_statusbar = false; } ret = TRUE; } else { if (anchor && !pc->anchor_statusbar) { - pc->_message_context->set(Inkscape::NORMAL_MESSAGE, _("Click or click and drag to continue the path from this point.")); + pc->message_context->set(Inkscape::NORMAL_MESSAGE, _("Click or click and drag to continue the path from this point.")); pc->anchor_statusbar = true; } else if (!anchor && pc->anchor_statusbar) { - pc->_message_context->clear(); + pc->message_context->clear(); pc->anchor_statusbar = false; } if (!sp_event_context_knot_mouseover(pc)) { @@ -1185,7 +1185,7 @@ static void spdc_pen_set_angle_distance_status_message(SPPenContext *const pc, G if (prefs->getBool("/options/compassangledisplay/value", 0) != 0) angle = angle_to_compass (angle); - pc->_message_context->setF(Inkscape::IMMEDIATE_MESSAGE, message, angle, dist->str); + pc->message_context->setF(Inkscape::IMMEDIATE_MESSAGE, message, angle, dist->str); g_string_free(dist, FALSE); } @@ -1314,7 +1314,7 @@ static void spdc_pen_finish(SPPenContext *const pc, gboolean const closed) pen_disable_events(pc); SPDesktop *const desktop = pc->desktop; - pc->_message_context->clear(); + pc->message_context->clear(); desktop->messageStack()->flash(Inkscape::NORMAL_MESSAGE, _("Drawing finished")); pc->red_curve->reset(); diff --git a/src/pencil-context.cpp b/src/pencil-context.cpp index b81580f3a..c7257ff10 100644 --- a/src/pencil-context.cpp +++ b/src/pencil-context.cpp @@ -198,7 +198,7 @@ pencil_handle_button_press(SPPencilContext *const pc, GdkEventButton const &beve SPDesktop *desktop = SP_EVENT_CONTEXT_DESKTOP(dc); Inkscape::Selection *selection = sp_desktop_selection(desktop); - if (Inkscape::have_viable_layer(desktop, dc->_message_context) == false) { + if (Inkscape::have_viable_layer(desktop, dc->message_context) == false) { return TRUE; } @@ -359,21 +359,21 @@ pencil_handle_motion_notify(SPPencilContext *const pc, GdkEventMotion const &mev } if (anchor && !pc->anchor_statusbar) { - pc->_message_context->set(Inkscape::NORMAL_MESSAGE, _("Release here to close and finish the path.")); + pc->message_context->set(Inkscape::NORMAL_MESSAGE, _("Release here to close and finish the path.")); pc->anchor_statusbar = true; } else if (!anchor && pc->anchor_statusbar) { - pc->_message_context->clear(); + pc->message_context->clear(); pc->anchor_statusbar = false; } else if (!anchor) { - pc->_message_context->set(Inkscape::NORMAL_MESSAGE, _("Drawing a freehand path")); + pc->message_context->set(Inkscape::NORMAL_MESSAGE, _("Drawing a freehand path")); } } else { if (anchor && !pc->anchor_statusbar) { - pc->_message_context->set(Inkscape::NORMAL_MESSAGE, _("Drag to continue the path from this point.")); + pc->message_context->set(Inkscape::NORMAL_MESSAGE, _("Drag to continue the path from this point.")); pc->anchor_statusbar = true; } else if (!anchor && pc->anchor_statusbar) { - pc->_message_context->clear(); + pc->message_context->clear(); pc->anchor_statusbar = false; } } @@ -517,8 +517,8 @@ pencil_cancel (SPPencilContext *const pc) pc->green_anchor = sp_draw_anchor_destroy(pc->green_anchor); } - pc->_message_context->clear(); - pc->_message_context->flash(Inkscape::NORMAL_MESSAGE, _("Drawing cancelled")); + pc->message_context->clear(); + pc->message_context->flash(Inkscape::NORMAL_MESSAGE, _("Drawing cancelled")); pc->desktop->canvas->endForcedFullRedraws(); } diff --git a/src/rect-context.cpp b/src/rect-context.cpp index 23c4794c1..2a3c8dd2b 100644 --- a/src/rect-context.cpp +++ b/src/rect-context.cpp @@ -64,8 +64,6 @@ const std::string& SPRectContext::getPrefsPath() { const std::string SPRectContext::prefsPath = "/tools/shapes/rect"; SPRectContext::SPRectContext() : SPEventContext() { - this->_message_context = 0; - this->cursor_shape = cursor_rect_xpm; this->hot_x = 4; this->hot_y = 4; @@ -102,10 +100,6 @@ SPRectContext::~SPRectContext() { if (this->rect) { this->finishItem(); } - - if (this->_message_context) { - delete this->_message_context; - } } /** @@ -143,8 +137,6 @@ void SPRectContext::setup() { if (prefs->getBool("/tools/shapes/gradientdrag")) { this->enableGrDrag(); } - - this->_message_context = new Inkscape::MessageContext(this->desktop->messageStack()); } void SPRectContext::set(const Inkscape::Preferences::Entry& val) { @@ -396,7 +388,7 @@ void SPRectContext::drag(Geom::Point const pt, guint state) { SPDesktop *desktop = this->desktop; if (!this->rect) { - if (Inkscape::have_viable_layer(desktop, this->_message_context) == false) { + if (Inkscape::have_viable_layer(desktop, this->message_context) == false) { return; } @@ -459,16 +451,16 @@ void SPRectContext::drag(Geom::Point const pt, guint state) { } if (!is_golden_ratio) { - this->_message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Rectangle: %s × %s (constrained to ratio %d:%d); with Shift to draw around the starting point"), xs->str, ys->str, ratio_x, ratio_y); + this->message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Rectangle: %s × %s (constrained to ratio %d:%d); with Shift to draw around the starting point"), xs->str, ys->str, ratio_x, ratio_y); } else { if (ratio_y == 1) { - this->_message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Rectangle: %s × %s (constrained to golden ratio 1.618 : 1); with Shift to draw around the starting point"), xs->str, ys->str); + this->message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Rectangle: %s × %s (constrained to golden ratio 1.618 : 1); with Shift to draw around the starting point"), xs->str, ys->str); } else { - this->_message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Rectangle: %s × %s (constrained to golden ratio 1 : 1.618); with Shift to draw around the starting point"), xs->str, ys->str); + this->message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Rectangle: %s × %s (constrained to golden ratio 1 : 1.618); with Shift to draw around the starting point"), xs->str, ys->str); } } } else { - this->_message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Rectangle: %s × %s; with Ctrl to make square or integer-ratio rectangle; with Shift to draw around the starting point"), xs->str, ys->str); + this->message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Rectangle: %s × %s; with Ctrl to make square or integer-ratio rectangle; with Shift to draw around the starting point"), xs->str, ys->str); } g_string_free(xs, FALSE); @@ -476,7 +468,7 @@ void SPRectContext::drag(Geom::Point const pt, guint state) { } void SPRectContext::finishItem() { - this->_message_context->clear(); + this->message_context->clear(); if (this->rect != NULL) { if (this->rect->width.computed == 0 || this->rect->height.computed == 0) { diff --git a/src/rect-context.h b/src/rect-context.h index 1856a3d7e..f57a1266a 100644 --- a/src/rect-context.h +++ b/src/rect-context.h @@ -48,8 +48,6 @@ private: sigc::connection sel_changed_connection; - Inkscape::MessageContext *_message_context; - void drag(Geom::Point const pt, guint state); void finishItem(); void cancel(); diff --git a/src/singleton.h b/src/singleton.h deleted file mode 100644 index 022e314e4..000000000 --- a/src/singleton.h +++ /dev/null @@ -1,12 +0,0 @@ -#pragma once - -/** - * A simple singleton implementation. - */ -template -struct Singleton { - static T& instance() { - static T inst; - return inst; - } -}; diff --git a/src/sp-factory.h b/src/sp-factory.h index 50c328aa8..7a6416cad 100644 --- a/src/sp-factory.h +++ b/src/sp-factory.h @@ -1,7 +1,10 @@ -#pragma once +#ifndef SP_FACTORY_SEEN +#define SP_FACTORY_SEEN #include "factory.h" -#include "singleton.h" class SPObject; typedef Singleton< Factory > SPFactory; + + +#endif diff --git a/src/sp-item.cpp b/src/sp-item.cpp index ed1a2ef79..f313ed7c1 100644 --- a/src/sp-item.cpp +++ b/src/sp-item.cpp @@ -117,9 +117,9 @@ SPItem::SPItem() : SPObject() { avoidRef = new SPAvoidRef(this); - new (&constraints) std::vector(); + //new (&constraints) std::vector(); - new (&_transformed_signal) sigc::signal(); + //new (&_transformed_signal) sigc::signal(); } SPItem::~SPItem() { diff --git a/src/sp-object.cpp b/src/sp-object.cpp index 167d8a331..08ed9fc8d 100644 --- a/src/sp-object.cpp +++ b/src/sp-object.cpp @@ -128,10 +128,10 @@ SPObject::SPObject() { this->_collection_policy = SPObject::COLLECT_WITH_PARENT; - new (&this->_release_signal) sigc::signal(); - new (&this->_modified_signal) sigc::signal(); - new (&this->_delete_signal) sigc::signal(); - new (&this->_position_changed_signal) sigc::signal(); + //new (&this->_release_signal) sigc::signal(); + //new (&this->_modified_signal) sigc::signal(); + //new (&this->_delete_signal) sigc::signal(); + //new (&this->_position_changed_signal) sigc::signal(); this->_successor = NULL; // FIXME: now we create style for all objects, but per SVG, only the following can have style attribute: @@ -156,10 +156,10 @@ SPObject::~SPObject() { this->_successor = NULL; } - this->_release_signal.~signal(); - this->_modified_signal.~signal(); - this->_delete_signal.~signal(); - this->_position_changed_signal.~signal(); + //this->_release_signal.~signal(); + //this->_modified_signal.~signal(); + //this->_delete_signal.~signal(); + //this->_position_changed_signal.~signal(); } // CPPIFY: make pure virtual diff --git a/src/sp-object.h b/src/sp-object.h index c9e7bbace..449049611 100644 --- a/src/sp-object.h +++ b/src/sp-object.h @@ -822,7 +822,7 @@ public: friend class SPObjectImpl; -public: +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); @@ -833,12 +833,13 @@ public: virtual void set(unsigned int key, const gchar* value); - virtual void read_content(); - virtual void update(SPCtx* ctx, unsigned int flags); virtual void modified(unsigned int flags); virtual Inkscape::XML::Node* write(Inkscape::XML::Document* doc, Inkscape::XML::Node* repr, guint flags); + +public: + virtual void read_content(); }; diff --git a/src/spiral-context.cpp b/src/spiral-context.cpp index 6b060b424..dc2bd6149 100644 --- a/src/spiral-context.cpp +++ b/src/spiral-context.cpp @@ -63,8 +63,6 @@ const std::string& SPSpiralContext::getPrefsPath() { const std::string SPSpiralContext::prefsPath = "/tools/shapes/spiral"; SPSpiralContext::SPSpiralContext() : SPEventContext() { - this->_message_context = 0; - this->cursor_shape = cursor_spiral_xpm; this->hot_x = 4; this->hot_y = 4; @@ -104,10 +102,6 @@ SPSpiralContext::~SPSpiralContext() { if (this->spiral) { this->finishItem(); } - - if (this->_message_context) { - delete this->_message_context; - } } /** @@ -147,8 +141,6 @@ void SPSpiralContext::setup() { if (prefs->getBool("/tools/shapes/gradientdrag")) { this->enableGrDrag(); } - - this->_message_context = new Inkscape::MessageContext(this->desktop->messageStack()); } void SPSpiralContext::set(const Inkscape::Preferences::Entry& val) { @@ -362,7 +354,7 @@ void SPSpiralContext::drag(Geom::Point const &p, guint state) { int const snaps = prefs->getInt("/options/rotationsnapsperpi/value", 12); if (!this->spiral) { - if (Inkscape::have_viable_layer(desktop, this->_message_context) == false) { + if (Inkscape::have_viable_layer(desktop, this->message_context) == false) { return; } @@ -408,14 +400,14 @@ void SPSpiralContext::drag(Geom::Point const &p, guint state) { /* status text */ GString *rads = SP_PX_TO_METRIC_STRING(rad, desktop->namedview->getDefaultMetric()); - this->_message_context->setF(Inkscape::IMMEDIATE_MESSAGE, + this->message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Spiral: radius %s, angle %5g°; with Ctrl to snap angle"), rads->str, sp_round((arg + 2.0*M_PI*this->spiral->revo)*180/M_PI, 0.0001)); g_string_free(rads, FALSE); } void SPSpiralContext::finishItem() { - this->_message_context->clear(); + this->message_context->clear(); if (this->spiral != NULL) { if (this->spiral->rad == 0) { diff --git a/src/spiral-context.h b/src/spiral-context.h index 518d8ad41..9e3987eeb 100644 --- a/src/spiral-context.h +++ b/src/spiral-context.h @@ -49,8 +49,6 @@ private: sigc::connection sel_changed_connection; - Inkscape::MessageContext *_message_context; - void drag(Geom::Point const &p, guint state); void finishItem(); void cancel(); diff --git a/src/spray-context.cpp b/src/spray-context.cpp index c96df20b2..8256d6861 100644 --- a/src/spray-context.cpp +++ b/src/spray-context.cpp @@ -131,7 +131,6 @@ static void sp_spray_scale_rel(Geom::Point c, SPDesktop */*desktop*/, SPItem *it SPSprayContext::SPSprayContext() : SPEventContext() { this->usetilt = 0; - this->message_context = 0; this->dilate_area = 0; this->usetext = false; this->population = 0; @@ -169,10 +168,6 @@ SPSprayContext::~SPSprayContext() { sp_canvas_item_destroy(this->dilate_area); this->dilate_area = NULL; } - - if (this->message_context) { - delete this->message_context; - } } static bool is_transform_modes(gint mode) @@ -237,8 +232,6 @@ void SPSprayContext::setup() { this->is_drawing = false; - this->message_context = new Inkscape::MessageContext((this->desktop)->messageStack()); - sp_event_context_read(this, "distrib"); sp_event_context_read(this, "width"); sp_event_context_read(this, "ratio"); diff --git a/src/spray-context.h b/src/spray-context.h index 1bae7c4e4..a3bcb93de 100644 --- a/src/spray-context.h +++ b/src/spray-context.h @@ -77,8 +77,6 @@ public: gint mode; - Inkscape::MessageContext *message_context; - bool is_drawing; bool is_dilating; diff --git a/src/star-context.cpp b/src/star-context.cpp index 3601a4d49..d4dee3892 100644 --- a/src/star-context.cpp +++ b/src/star-context.cpp @@ -68,7 +68,6 @@ const std::string SPStarContext::prefsPath = "/tools/shapes/star"; SPStarContext::SPStarContext() : SPEventContext() { this->randomized = 0; - this->message_context = 0; this->rounded = 0; this->cursor_shape = cursor_star_xpm; @@ -109,10 +108,6 @@ SPStarContext::~SPStarContext() { if (this->star) { this->finishItem(); } - - if (this->message_context) { - delete this->message_context; - } } /** @@ -158,8 +153,6 @@ void SPStarContext::setup() { if (prefs->getBool("/tools/shapes/gradientdrag")) { this->enableGrDrag(); } - - this->message_context = new Inkscape::MessageContext(this->desktop->messageStack()); } void SPStarContext::set(const Inkscape::Preferences::Entry& val) { diff --git a/src/star-context.h b/src/star-context.h index a068e4441..af66f3201 100644 --- a/src/star-context.h +++ b/src/star-context.h @@ -57,8 +57,6 @@ private: sigc::connection sel_changed_connection; - Inkscape::MessageContext *message_context; - void drag(Geom::Point p, guint state); void finishItem(); void cancel(); diff --git a/src/text-context.cpp b/src/text-context.cpp index fea159834..1d1511470 100644 --- a/src/text-context.cpp +++ b/src/text-context.cpp @@ -646,7 +646,7 @@ bool SPTextContext::root_handler(GdkEvent* event) { // status text GString *xs = SP_PX_TO_METRIC_STRING(fabs((p - tc->p0)[Geom::X]), desktop->namedview->getDefaultMetric()); GString *ys = SP_PX_TO_METRIC_STRING(fabs((p - tc->p0)[Geom::Y]), desktop->namedview->getDefaultMetric()); - event_context->_message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Flowed text frame: %s × %s"), xs->str, ys->str); + event_context->message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Flowed text frame: %s × %s"), xs->str, ys->str); g_string_free(xs, FALSE); g_string_free(ys, FALSE); @@ -703,7 +703,7 @@ bool SPTextContext::root_handler(GdkEvent* event) { im_cursor.height = (int) -floor(SP_EVENT_CONTEXT(tc)->desktop->d2w(cursor_size)[Geom::Y]); gtk_im_context_set_cursor_location(tc->imc, &im_cursor); } - event_context->_message_context->set(Inkscape::NORMAL_MESSAGE, _("Type text; Enter to start new line.")); // FIXME:: this is a copy of a string from _update_cursor below, do not desync + event_context->message_context->set(Inkscape::NORMAL_MESSAGE, _("Type text; Enter to start new line.")); // FIXME:: this is a copy of a string from _update_cursor below, do not desync event_context->within_tolerance = false; } else if (tc->creating) { @@ -1650,9 +1650,9 @@ static void sp_text_context_update_cursor(SPTextContext *tc, bool scroll_to_see } } - SP_EVENT_CONTEXT(tc)->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("Type or edit flowed text (%d characters%s); Enter to start new paragraph."), nChars, trunc); + SP_EVENT_CONTEXT(tc)->message_context->setF(Inkscape::NORMAL_MESSAGE, _("Type or edit flowed text (%d characters%s); Enter to start new paragraph."), nChars, trunc); } else { - SP_EVENT_CONTEXT(tc)->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("Type or edit text (%d characters%s); Enter to start new line."), nChars, trunc); + SP_EVENT_CONTEXT(tc)->message_context->setF(Inkscape::NORMAL_MESSAGE, _("Type or edit text (%d characters%s); Enter to start new line."), nChars, trunc); } } else { @@ -1660,7 +1660,7 @@ static void sp_text_context_update_cursor(SPTextContext *tc, bool scroll_to_see sp_canvas_item_hide(tc->frame); tc->show = FALSE; if (!tc->nascent_object) { - SP_EVENT_CONTEXT(tc)->_message_context->set(Inkscape::NORMAL_MESSAGE, _("Click to select or create text, drag to create flowed text; then type.")); // FIXME: this is a copy of string from tools-switch, do not desync + SP_EVENT_CONTEXT(tc)->message_context->set(Inkscape::NORMAL_MESSAGE, _("Click to select or create text, drag to create flowed text; then type.")); // FIXME: this is a copy of string from tools-switch, do not desync } } diff --git a/src/tool-factory.h b/src/tool-factory.h index 3892606c6..48b277495 100644 --- a/src/tool-factory.h +++ b/src/tool-factory.h @@ -1,7 +1,10 @@ -#pragma once +#ifndef TOOL_FACTORY_SEEN +#define TOOL_FACTORY_SEEN #include "factory.h" -#include "singleton.h" class SPEventContext; typedef Singleton< Factory > ToolFactory; + + +#endif diff --git a/src/tweak-context.cpp b/src/tweak-context.cpp index 74e2e12e2..3afdc177c 100644 --- a/src/tweak-context.cpp +++ b/src/tweak-context.cpp @@ -107,7 +107,6 @@ const std::string& SPTweakContext::getPrefsPath() { const std::string SPTweakContext::prefsPath = "/tools/tweak"; SPTweakContext::SPTweakContext() : SPEventContext() { - this->_message_context = 0; this->mode = 0; this->dilate_area = 0; this->usetilt = 0; @@ -144,10 +143,6 @@ SPTweakContext::~SPTweakContext() { sp_canvas_item_destroy(this->dilate_area); this->dilate_area = NULL; } - - if (this->_message_context) { - delete this->_message_context; - } } static bool is_transform_mode (gint mode) @@ -182,11 +177,11 @@ sp_tweak_update_cursor (SPTweakContext *tc, bool with_shift) switch (tc->mode) { case TWEAK_MODE_MOVE: - tc->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag to move."), sel_message); + tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag to move."), sel_message); event_context->cursor_shape = cursor_tweak_move_xpm; break; case TWEAK_MODE_MOVE_IN_OUT: - tc->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to move in; with Shift to move out."), sel_message); + tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to move in; with Shift to move out."), sel_message); if (with_shift) { event_context->cursor_shape = cursor_tweak_move_out_xpm; } else { @@ -194,11 +189,11 @@ sp_tweak_update_cursor (SPTweakContext *tc, bool with_shift) } break; case TWEAK_MODE_MOVE_JITTER: - tc->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to move randomly."), sel_message); + tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to move randomly."), sel_message); event_context->cursor_shape = cursor_tweak_move_jitter_xpm; break; case TWEAK_MODE_SCALE: - tc->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to scale down; with Shift to scale up."), sel_message); + tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to scale down; with Shift to scale up."), sel_message); if (with_shift) { event_context->cursor_shape = cursor_tweak_scale_up_xpm; } else { @@ -206,7 +201,7 @@ sp_tweak_update_cursor (SPTweakContext *tc, bool with_shift) } break; case TWEAK_MODE_ROTATE: - tc->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to rotate clockwise; with Shift, counterclockwise."), sel_message); + tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to rotate clockwise; with Shift, counterclockwise."), sel_message); if (with_shift) { event_context->cursor_shape = cursor_tweak_rotate_counterclockwise_xpm; } else { @@ -214,7 +209,7 @@ sp_tweak_update_cursor (SPTweakContext *tc, bool with_shift) } break; case TWEAK_MODE_MORELESS: - tc->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to duplicate; with Shift, delete."), sel_message); + tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to duplicate; with Shift, delete."), sel_message); if (with_shift) { event_context->cursor_shape = cursor_tweak_less_xpm; } else { @@ -222,11 +217,11 @@ sp_tweak_update_cursor (SPTweakContext *tc, bool with_shift) } break; case TWEAK_MODE_PUSH: - tc->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag to push paths."), sel_message); + tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag to push paths."), sel_message); event_context->cursor_shape = cursor_push_xpm; break; case TWEAK_MODE_SHRINK_GROW: - tc->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to inset paths; with Shift to outset."), sel_message); + tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to inset paths; with Shift to outset."), sel_message); if (with_shift) { event_context->cursor_shape = cursor_thicken_xpm; } else { @@ -234,7 +229,7 @@ sp_tweak_update_cursor (SPTweakContext *tc, bool with_shift) } break; case TWEAK_MODE_ATTRACT_REPEL: - tc->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to attract paths; with Shift to repel."), sel_message); + tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to attract paths; with Shift to repel."), sel_message); if (with_shift) { event_context->cursor_shape = cursor_repel_xpm; } else { @@ -242,19 +237,19 @@ sp_tweak_update_cursor (SPTweakContext *tc, bool with_shift) } break; case TWEAK_MODE_ROUGHEN: - tc->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to roughen paths."), sel_message); + tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to roughen paths."), sel_message); event_context->cursor_shape = cursor_roughen_xpm; break; case TWEAK_MODE_COLORPAINT: - tc->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to paint objects with color."), sel_message); + tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to paint objects with color."), sel_message); event_context->cursor_shape = cursor_color_xpm; break; case TWEAK_MODE_COLORJITTER: - tc->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to randomize colors."), sel_message); + tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to randomize colors."), sel_message); event_context->cursor_shape = cursor_color_xpm; break; case TWEAK_MODE_BLUR: - tc->_message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to increase blur; with Shift to decrease."), sel_message); + tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to increase blur; with Shift to decrease."), sel_message); event_context->cursor_shape = cursor_color_xpm; break; } @@ -296,8 +291,6 @@ void SPTweakContext::setup() { this->is_drawing = false; - this->_message_context = new Inkscape::MessageContext(this->desktop->messageStack()); - sp_event_context_read(this, "width"); sp_event_context_read(this, "mode"); sp_event_context_read(this, "fidelity"); @@ -1167,7 +1160,7 @@ bool SPTweakContext::root_handler(GdkEvent* event) { case GDK_BUTTON_PRESS: if (event->button.button == 1 && !this->space_panning) { - if (Inkscape::have_viable_layer(desktop, this->_message_context) == false) { + if (Inkscape::have_viable_layer(desktop, this->message_context) == false) { return TRUE; } @@ -1205,7 +1198,7 @@ bool SPTweakContext::root_handler(GdkEvent* event) { num = g_slist_length(const_cast(desktop->selection->itemList())); } if (num == 0) { - this->_message_context->flash(Inkscape::ERROR_MESSAGE, _("Nothing selected! Select objects to tweak.")); + this->message_context->flash(Inkscape::ERROR_MESSAGE, _("Nothing selected! Select objects to tweak.")); } // dilating: @@ -1498,7 +1491,7 @@ bool SPTweakContext::root_handler(GdkEvent* event) { case GDK_KEY_Control_L: case GDK_KEY_Control_R: sp_tweak_switch_mode (this, prefs->getInt("/tools/tweak/mode"), MOD__SHIFT(event)); - this->_message_context->clear(); + this->message_context->clear(); break; default: sp_tweak_switch_mode (this, prefs->getInt("/tools/tweak/mode"), MOD__SHIFT(event)); diff --git a/src/tweak-context.h b/src/tweak-context.h index 2d3eaa1e4..ac046a875 100644 --- a/src/tweak-context.h +++ b/src/tweak-context.h @@ -56,8 +56,6 @@ public: gint mode; - Inkscape::MessageContext *_message_context; - bool is_drawing; bool is_dilating; diff --git a/src/ui/tool/node-tool.cpp b/src/ui/tool/node-tool.cpp index d424c1fdb..4b236e94c 100644 --- a/src/ui/tool/node-tool.cpp +++ b/src/ui/tool/node-tool.cpp @@ -127,7 +127,6 @@ InkNodeTool::InkNodeTool() : SPEventContext() { this->single_node_transform_handles = false; this->show_transform_handles = false; this->cursor_drag = false; - this->_node_message_context = 0; this->live_objects = false; this->edit_clipping_paths = false; this->live_outline = false; @@ -183,16 +182,11 @@ InkNodeTool::~InkNodeTool() { destroy_group(data.outline_group); destroy_group(data.dragpoint_group); destroy_group(this->_transform_handle_group); - - if (this->_node_message_context) { - delete this->_node_message_context; - } } void InkNodeTool::setup() { SPEventContext::setup(); - this->_node_message_context = new Inkscape::MessageContext((this->desktop)->messageStack()); this->_path_data = new Inkscape::UI::PathSharedData(); Inkscape::UI::PathSharedData &data = *this->_path_data; @@ -559,11 +553,11 @@ void InkNodeTool::update_tip(GdkEvent *event) { if (state_held_shift(new_state)) { if (this->_last_over) { - this->_node_message_context->set(Inkscape::NORMAL_MESSAGE, + this->message_context->set(Inkscape::NORMAL_MESSAGE, C_("Node tool tip", "Shift: drag to add nodes to the selection, " "click to toggle object selection")); } else { - this->_node_message_context->set(Inkscape::NORMAL_MESSAGE, + this->message_context->set(Inkscape::NORMAL_MESSAGE, C_("Node tool tip", "Shift: drag to add nodes to the selection")); } @@ -584,30 +578,30 @@ void InkNodeTool::update_tip(GdkEvent *event) { char *dyntip = g_strdup_printf(C_("Node tool tip", "%s Drag to select nodes, click to edit only this object (more: Shift)"), nodestring); - this->_node_message_context->set(Inkscape::NORMAL_MESSAGE, dyntip); + this->message_context->set(Inkscape::NORMAL_MESSAGE, dyntip); g_free(dyntip); } else { char *dyntip = g_strdup_printf(C_("Node tool tip", "%s Drag to select nodes, click clear the selection"), nodestring); - this->_node_message_context->set(Inkscape::NORMAL_MESSAGE, dyntip); + this->message_context->set(Inkscape::NORMAL_MESSAGE, dyntip); g_free(dyntip); } g_free(nodestring); } else if (!this->_multipath->empty()) { if (this->_last_over) { - this->_node_message_context->set(Inkscape::NORMAL_MESSAGE, C_("Node tool tip", + this->message_context->set(Inkscape::NORMAL_MESSAGE, C_("Node tool tip", "Drag to select nodes, click to edit only this object")); } else { - this->_node_message_context->set(Inkscape::NORMAL_MESSAGE, C_("Node tool tip", + this->message_context->set(Inkscape::NORMAL_MESSAGE, C_("Node tool tip", "Drag to select nodes, click to clear the selection")); } } else { if (this->_last_over) { - this->_node_message_context->set(Inkscape::NORMAL_MESSAGE, C_("Node tool tip", + this->message_context->set(Inkscape::NORMAL_MESSAGE, C_("Node tool tip", "Drag to select objects to edit, click to edit this object (more: Shift)")); } else { - this->_node_message_context->set(Inkscape::NORMAL_MESSAGE, C_("Node tool tip", + this->message_context->set(Inkscape::NORMAL_MESSAGE, C_("Node tool tip", "Drag to select objects to edit")); } } diff --git a/src/ui/tool/node-tool.h b/src/ui/tool/node-tool.h index 313cc0561..779cf98e6 100644 --- a/src/ui/tool/node-tool.h +++ b/src/ui/tool/node-tool.h @@ -58,7 +58,6 @@ private: sigc::connection _mouseover_changed_connection; sigc::connection _sizeUpdatedConn; - Inkscape::MessageContext *_node_message_context; SPItem *flashed_item; Inkscape::Display::TemporaryItem *flash_tempitem; Inkscape::UI::Selector* _selector; diff --git a/src/ui/widget/selected-style.cpp b/src/ui/widget/selected-style.cpp index 8cb0c5588..08589a0b6 100644 --- a/src/ui/widget/selected-style.cpp +++ b/src/ui/widget/selected-style.cpp @@ -1351,25 +1351,25 @@ RotateableSwatch::do_motion(double by, guint modifier) { DocumentUndo::maybeDone(sp_desktop_document(parent->getDesktop()), undokey, SP_VERB_DIALOG_FILL_STROKE, (_("Adjust alpha"))); double ch = hsla[3]; - parent->getDesktop()->event_context->_message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Adjusting alpha: was %.3g, now %.3g (diff %.3g); with Ctrl to adjust lightness, with Shift to adjust saturation, without modifiers to adjust hue"), ch - diff, ch, diff); + parent->getDesktop()->event_context->message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Adjusting alpha: was %.3g, now %.3g (diff %.3g); with Ctrl to adjust lightness, with Shift to adjust saturation, without modifiers to adjust hue"), ch - diff, ch, diff); } else if (modifier == 2) { // saturation DocumentUndo::maybeDone(sp_desktop_document(parent->getDesktop()), undokey, SP_VERB_DIALOG_FILL_STROKE, (_("Adjust saturation"))); double ch = hsla[1]; - parent->getDesktop()->event_context->_message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Adjusting saturation: was %.3g, now %.3g (diff %.3g); with Ctrl to adjust lightness, with Alt to adjust alpha, without modifiers to adjust hue"), ch - diff, ch, diff); + parent->getDesktop()->event_context->message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Adjusting saturation: was %.3g, now %.3g (diff %.3g); with Ctrl to adjust lightness, with Alt to adjust alpha, without modifiers to adjust hue"), ch - diff, ch, diff); } else if (modifier == 1) { // lightness DocumentUndo::maybeDone(sp_desktop_document(parent->getDesktop()), undokey, SP_VERB_DIALOG_FILL_STROKE, (_("Adjust lightness"))); double ch = hsla[2]; - parent->getDesktop()->event_context->_message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Adjusting lightness: was %.3g, now %.3g (diff %.3g); with Shift to adjust saturation, with Alt to adjust alpha, without modifiers to adjust hue"), ch - diff, ch, diff); + parent->getDesktop()->event_context->message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Adjusting lightness: was %.3g, now %.3g (diff %.3g); with Shift to adjust saturation, with Alt to adjust alpha, without modifiers to adjust hue"), ch - diff, ch, diff); } else { // hue DocumentUndo::maybeDone(sp_desktop_document(parent->getDesktop()), undokey, SP_VERB_DIALOG_FILL_STROKE, (_("Adjust hue"))); double ch = hsla[0]; - parent->getDesktop()->event_context->_message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Adjusting hue: was %.3g, now %.3g (diff %.3g); with Shift to adjust saturation, with Alt to adjust alpha, with Ctrl to adjust lightness"), ch - diff, ch, diff); + parent->getDesktop()->event_context->message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Adjusting hue: was %.3g, now %.3g (diff %.3g); with Shift to adjust saturation, with Alt to adjust alpha, with Ctrl to adjust lightness"), ch - diff, ch, diff); } } @@ -1424,7 +1424,7 @@ RotateableSwatch::do_release(double by, guint modifier) { undokey = "ssrot1"; } - parent->getDesktop()->event_context->_message_context->clear(); + parent->getDesktop()->event_context->message_context->clear(); startcolor_set = false; } @@ -1490,7 +1490,7 @@ RotateableStrokeWidth::do_motion(double by, guint modifier) { double diff = value_adjust(startvalue, by, modifier, false); DocumentUndo::maybeDone(sp_desktop_document(parent->getDesktop()), undokey, SP_VERB_DIALOG_FILL_STROKE, (_("Adjust stroke width"))); - parent->getDesktop()->event_context->_message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Adjusting stroke width: was %.3g, now %.3g (diff %.3g)"), startvalue, startvalue + diff, diff); + parent->getDesktop()->event_context->message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Adjusting stroke width: was %.3g, now %.3g (diff %.3g)"), startvalue, startvalue + diff, diff); } } @@ -1511,7 +1511,7 @@ RotateableStrokeWidth::do_release(double by, guint modifier) { } else { undokey = "swrot1"; } - parent->getDesktop()->event_context->_message_context->clear(); + parent->getDesktop()->event_context->message_context->clear(); } void -- cgit v1.2.3 From 1c65c51cbdb35b5dfda7c06ec3458ef5a43e6733 Mon Sep 17 00:00:00 2001 From: Uwe Sch??ler Date: Wed, 31 Jul 2013 22:14:19 +0200 Subject: German translation update (bzr r12441) --- po/de.po | 155 +++++++++++++++++++++++---------------------------------------- 1 file changed, 55 insertions(+), 100 deletions(-) diff --git a/po/de.po b/po/de.po index 91ced205b..d929cb9bb 100644 --- a/po/de.po +++ b/po/de.po @@ -18,7 +18,7 @@ msgstr "" "Project-Id-Version: inkscape\n" "Report-Msgid-Bugs-To: inkscape-devel@lists.sourceforge.net\n" "POT-Creation-Date: 2013-06-27 21:15+0200\n" -"PO-Revision-Date: 2013-07-21 11:09+0100\n" +"PO-Revision-Date: 2013-07-31 22:10+0100\n" "Last-Translator: Uwe Schoeler \n" "Language-Team: \n" "Language: de\n" @@ -7627,9 +7627,8 @@ msgstr "Effekt-Typ:" #: ../src/extension/internal/filter/paint.h:501 #: ../src/extension/internal/filter/paint.h:860 #: ../src/extension/internal/filter/paint.h:975 -#, fuzzy msgid "Levels" -msgstr "Ebenen:" +msgstr "Ebenen" #: ../src/extension/internal/filter/paint.h:510 msgid "Electro solarization effects" @@ -7653,9 +7652,8 @@ msgid "Contrasted" msgstr "Abgestochen" #: ../src/extension/internal/filter/paint.h:591 -#, fuzzy msgid "Line width" -msgstr "Linienstärke:" +msgstr "Linienstärke" #: ../src/extension/internal/filter/paint.h:593 #: ../src/extension/internal/filter/paint.h:861 @@ -7759,19 +7757,16 @@ msgid "Drop Shadow" msgstr "Abgesetzter Schatten" #: ../src/extension/internal/filter/shadows.h:61 -#, fuzzy msgid "Blur radius (px)" -msgstr "Unschärfen Radius" +msgstr "Unschärfen Radius (px)" #: ../src/extension/internal/filter/shadows.h:62 -#, fuzzy msgid "Horizontal offset (px)" -msgstr "Horizontaler Versatz (px):" +msgstr "Horizontaler Versatz (px)" #: ../src/extension/internal/filter/shadows.h:63 -#, fuzzy msgid "Vertical offset (px)" -msgstr "Vertikaler Versatz (px):" +msgstr "Vertikaler Versatz (px)" #: ../src/extension/internal/filter/shadows.h:64 msgid "Shadow type:" @@ -11247,9 +11242,8 @@ msgid "" msgstr "" #: ../src/main.cpp:394 -#, fuzzy msgid "PS Level" -msgstr "Ebene" +msgstr "PS Level" #: ../src/main.cpp:398 msgid "Export document to a PDF file" @@ -11500,11 +11494,11 @@ msgstr[1] "" #: ../src/mesh-context.cpp:336 msgid "Split mesh row/column" -msgstr "" +msgstr "Teile Gitter Reihe/Spalte" #: ../src/mesh-context.cpp:422 msgid "Toggled mesh path type." -msgstr "" +msgstr "Gitter-Pfadtyp umschalten" #: ../src/mesh-context.cpp:426 msgid "Approximated arc for mesh side." @@ -12963,12 +12957,11 @@ msgstr "" # !!! palettes, not swatches? #: ../src/shortcuts.cpp:225 -#, fuzzy, c-format +#, c-format msgid "Keyboard directory (%s) is unavailable." -msgstr "Palettenverzeichnis (%s) nicht auffindbar." +msgstr "Tastatur-verzeichnis (%s) nicht verfügbar." #: ../src/shortcuts.cpp:369 -#, fuzzy msgid "Select a file to import" msgstr "Wählen Sie die zu importierende Datei" @@ -13212,9 +13205,9 @@ msgid "Text span" msgstr "Textweite" #: ../src/sp-use.cpp:303 -#, fuzzy, c-format +#, c-format msgid "'%s' Symbol" -msgstr "Klonen des Symbols" +msgstr "'%s' Symbol" #. TRANSLATORS: Used for statusbar description for long chains: #. * "Clone of: Clone of: ... in Layer 1". @@ -17944,14 +17937,12 @@ msgid "Maximized" msgstr "Maximiert" #: ../src/ui/dialog/inkscape-preferences.cpp:650 -#, fuzzy msgid "Default window size:" -msgstr "Vorgabe Gittereinstellungen" +msgstr "Standard Fenstergröße:" #: ../src/ui/dialog/inkscape-preferences.cpp:651 -#, fuzzy msgid "Set the default window size" -msgstr "Standard-Farbverlauf erzeugen" +msgstr "Standard Fenstergröße setzen:" #: ../src/ui/dialog/inkscape-preferences.cpp:654 msgid "Saving window geometry (size and position)" @@ -19483,9 +19474,8 @@ msgid "Bitmap import:" msgstr "Bitmap-Import:" #: ../src/ui/dialog/inkscape-preferences.cpp:1444 -#, fuzzy msgid "Bitmap import quality:" -msgstr "Bitmap-Import:" +msgstr "Bitmap-Import-Qualität:" #: ../src/ui/dialog/inkscape-preferences.cpp:1447 msgid "Default _import resolution:" @@ -20482,14 +20472,12 @@ msgid "Current Document" msgstr "Aktuelles Dokument" #: ../src/ui/dialog/symbols.cpp:204 -#, fuzzy msgid "Add Symbol from the current document." -msgstr "Aktuelle Ebene vereinzeln" +msgstr "Symbol vom aktuellen Dokument hinzufügen." #: ../src/ui/dialog/symbols.cpp:213 -#, fuzzy msgid "Remove Symbol from the current document." -msgstr "Stopp für derzeitigen Farbverlauf auswählen" +msgstr "Symbol vom aktuellen Dokument entfernen." #: ../src/ui/dialog/symbols.cpp:226 msgid "Make Icons bigger by zooming in." @@ -20504,9 +20492,8 @@ msgid "Toggle 'fit' symbols in icon space." msgstr "" #: ../src/ui/dialog/symbols.cpp:557 -#, fuzzy msgid "Unnamed Symbols" -msgstr "Khmer (km) Symbole" +msgstr "Unbenannte Symbole" #. TRANSLATORS: An item in context menu on a colour in the swatches #: ../src/ui/dialog/swatches.cpp:258 @@ -26505,9 +26492,8 @@ msgid "_B:" msgstr "_B:" #: ../src/widgets/sp-color-icc-selector.cpp:359 -#, fuzzy msgid "G:" -msgstr "_G:" +msgstr "G:" #: ../src/widgets/sp-color-icc-selector.cpp:359 msgid "Gray" @@ -27598,9 +27584,9 @@ msgid "" msgstr "" #: ../share/extensions/dxf_outlines.py:341 -#, fuzzy, python-format +#, python-format msgid "Warning: Layer '%s' not found!" -msgstr "Ebene nicht gefunden.\n" +msgstr "Warnung: Ebene '%s' nicht gefunden!" #: ../share/extensions/embedimage.py:84 msgid "" @@ -28667,27 +28653,26 @@ msgid "HSL Adjust" msgstr "HSL anpassen" #: ../share/extensions/color_HSL_adjust.inx.h:3 -#, fuzzy msgid "Hue (°)" -msgstr "Farbton (°):" +msgstr "Farbton (°)" #: ../share/extensions/color_HSL_adjust.inx.h:4 msgid "Random hue" msgstr "Zufallsfarbton" #: ../share/extensions/color_HSL_adjust.inx.h:6 -#, fuzzy, no-c-format +#, no-c-format msgid "Saturation (%)" -msgstr "Sättigung (%):" +msgstr "Sättigung (%)" #: ../share/extensions/color_HSL_adjust.inx.h:7 msgid "Random saturation" msgstr "Zufallssättigung" #: ../share/extensions/color_HSL_adjust.inx.h:9 -#, fuzzy, no-c-format +#, no-c-format msgid "Lightness (%)" -msgstr "Helligkeit (%):" +msgstr "Helligkeit (%)" #: ../share/extensions/color_HSL_adjust.inx.h:10 msgid "Random lightness" @@ -29172,9 +29157,8 @@ msgid "Character Encoding" msgstr "Zeichen-Kodierung" #: ../share/extensions/dxf_outlines.inx.h:7 -#, fuzzy msgid "Layer export selection" -msgstr "Auswahl löschen" +msgstr "Ebenen-Export-Auswahl" #: ../share/extensions/dxf_outlines.inx.h:8 #, fuzzy @@ -29198,9 +29182,8 @@ msgid "UTF 8" msgstr "UTF 8" #: ../share/extensions/dxf_outlines.inx.h:21 -#, fuzzy msgid "All (default)" -msgstr "(Vorgabe)" +msgstr "Alle (Vorgabe)" #: ../share/extensions/dxf_outlines.inx.h:22 #, fuzzy @@ -29304,9 +29287,8 @@ msgid "Embed only selected images" msgstr "Nur ausgewählte Bilder einbetten" #: ../share/extensions/embedselectedimages.inx.h:1 -#, fuzzy msgid "Embed Selected Images" -msgstr "Nur ausgewählte Bilder einbetten" +msgstr "Ausgewählte Bilder einbetten" #: ../share/extensions/eps_input.inx.h:1 msgid "EPS Input" @@ -30643,19 +30625,16 @@ msgid "Guillotine" msgstr "Guillotine" #: ../share/extensions/guillotine.inx.h:2 -#, fuzzy msgid "Directory to save images to:" msgstr "Pfad zum Speicherort des Bildes:" #: ../share/extensions/guillotine.inx.h:3 -#, fuzzy msgid "Image name (without extension):" -msgstr "Bildname (ohne Erweiterung)" +msgstr "Bildname (ohne Erweiterung):" #: ../share/extensions/guillotine.inx.h:4 -#, fuzzy msgid "Ignore these settings and use export hints" -msgstr "Einstellungen ignorieren und Export-Hinweise nutzen?" +msgstr "Einstellungen ignorieren und Export-Hinweise nutzen" #: ../share/extensions/guillotine.inx.h:5 #: ../share/extensions/print_win32_vector.inx.h:2 @@ -30679,9 +30658,8 @@ msgstr "" "konvertiert wurden. Der Plot wird automatisch auf den Nullpunkt ausgerichtet." #: ../share/extensions/hpgl_output.inx.h:3 -#, fuzzy msgid "Resolution (dpi):" -msgstr "Auflösung (Punkte pro Zoll)" +msgstr "Auflösung (dpi):" #: ../share/extensions/hpgl_output.inx.h:4 msgid "" @@ -30694,9 +30672,8 @@ msgstr "" "durch Versuch und Fehler (Standard: '1016')" #: ../share/extensions/hpgl_output.inx.h:5 -#, fuzzy msgid "Pen number:" -msgstr "Stiftnummer" +msgstr "Stiftnummer:" #: ../share/extensions/hpgl_output.inx.h:6 msgid "The number of the pen (tool) to use, on most plotters 1 (Standard: '1')" @@ -30741,9 +30718,8 @@ msgstr "" "'Aus')" #: ../share/extensions/hpgl_output.inx.h:13 -#, fuzzy msgid "Curve flatness:" -msgstr "Kurven-Ebenheit" +msgstr "Kurven-Ebenheit:" #: ../share/extensions/hpgl_output.inx.h:14 msgid "" @@ -30766,9 +30742,8 @@ msgstr "" "'Überschnitt'-Parameter nicht verwendet (Standard: 'Ein')" #: ../share/extensions/hpgl_output.inx.h:17 -#, fuzzy msgid "Overcut (mm):" -msgstr "Überschnitt (mm)" +msgstr "Überschnitt (mm):" #: ../share/extensions/hpgl_output.inx.h:18 msgid "" @@ -30791,9 +30766,8 @@ msgstr "" "'Werkzeugversatz' und 'Return-Faktor' -Parameter unbenutzt (Standard: 'Ein')" #: ../share/extensions/hpgl_output.inx.h:21 -#, fuzzy msgid "Tool offset (mm):" -msgstr "Werkzeugversatz (mm)" +msgstr "Werkzeugversatz (mm):" #: ../share/extensions/hpgl_output.inx.h:22 msgid "The offset from the tool tip to the tool axis in mm (Standard: '0.25')" @@ -30801,9 +30775,8 @@ msgstr "" "Der Versatz zwischen Werkzeugspitze und -achse in mm (Standard: '0.25')" #: ../share/extensions/hpgl_output.inx.h:23 -#, fuzzy msgid "Return Factor:" -msgstr "Return-Faktor" +msgstr "Return-Faktor:" #: ../share/extensions/hpgl_output.inx.h:24 msgid "" @@ -30817,9 +30790,8 @@ msgstr "" "nur durch Experimentieren bestimmen (Standard: '2,50')" #: ../share/extensions/hpgl_output.inx.h:25 -#, fuzzy msgid "X offset (mm):" -msgstr "X Versatz (mm)" +msgstr "X Versatz (mm:" #: ../share/extensions/hpgl_output.inx.h:26 msgid "" @@ -30830,9 +30802,8 @@ msgstr "" "(Standard: '0.00')" #: ../share/extensions/hpgl_output.inx.h:27 -#, fuzzy msgid "Y offset (mm):" -msgstr "Y Versatz (mm)" +msgstr "Y Versatz (mm):" #: ../share/extensions/hpgl_output.inx.h:28 msgid "Plot invisible layers" @@ -30855,9 +30826,8 @@ msgstr "" "Plotter (Standard: 'Aus')" #: ../share/extensions/hpgl_output.inx.h:32 -#, fuzzy msgid "Serial Port:" -msgstr "Serieller Port" +msgstr "Serieller Port:" #: ../share/extensions/hpgl_output.inx.h:33 msgid "" @@ -30868,9 +30838,8 @@ msgstr "" "'COM1', unter Linux so etwas wie: '/dev/ttyUSB0' (Standard: 'COM1')" #: ../share/extensions/hpgl_output.inx.h:34 -#, fuzzy msgid "Baud Rate:" -msgstr "Baudrate" +msgstr "Baudrate:" #: ../share/extensions/hpgl_output.inx.h:35 msgid "The Baud rate of your serial connection (Standard: '9600')" @@ -30898,9 +30867,8 @@ msgid "HTML 5 canvas code" msgstr "HTML 5 Arbeitsflächen-code" #: ../share/extensions/inkscape_follow_link.inx.h:1 -#, fuzzy msgid "Follow Link" -msgstr "Verknüpfung _folgen" +msgstr "Verknüpfung folgen" #: ../share/extensions/inkscape_help_askaquestion.inx.h:1 msgid "Ask Us a Question" @@ -31993,24 +31961,20 @@ msgid "Multiply t-range by 2*pi" msgstr "T-Bereich mit 2*pi multiplizieren" #: ../share/extensions/param_curves.inx.h:6 -#, fuzzy msgid "X-value of rectangle's left:" -msgstr "x-Wert der linken Seite des Rechtecks" +msgstr "X-Wert der linken Seite des Rechtecks:" #: ../share/extensions/param_curves.inx.h:7 -#, fuzzy msgid "X-value of rectangle's right:" -msgstr "x-Wert der rechten Seite des Rechtecks" +msgstr "X-Wert der rechten Seite des Rechtecks:" #: ../share/extensions/param_curves.inx.h:8 -#, fuzzy msgid "Y-value of rectangle's bottom:" -msgstr "y-Wert der unteren Kante des Rechtecks" +msgstr "Y-Wert der unteren Kante des Rechtecks:" #: ../share/extensions/param_curves.inx.h:9 -#, fuzzy msgid "Y-value of rectangle's top:" -msgstr "y-Wert der oberen Kante des Rechtecks" +msgstr "Y-Wert der oberen Kante des Rechtecks:" #: ../share/extensions/param_curves.inx.h:10 msgid "Samples:" @@ -32028,14 +31992,12 @@ msgstr "" "Erste Ableitungen werden immer nummerisch bestimmt." #: ../share/extensions/param_curves.inx.h:26 -#, fuzzy msgid "X-Function:" -msgstr "x-Funktion" +msgstr "X-Funktion:" #: ../share/extensions/param_curves.inx.h:27 -#, fuzzy msgid "Y-Function:" -msgstr "x-Funktion" +msgstr "Y-Funktion:" #: ../share/extensions/pathalongpath.inx.h:1 msgid "Pattern along Path" @@ -32461,9 +32423,8 @@ msgid "View Previous Glyph" msgstr "Vorherigen Glyph zeigen" #: ../share/extensions/print_win32_vector.inx.h:1 -#, fuzzy msgid "Win32 Vector Print" -msgstr "Windows 32-bit-Druck" +msgstr "Windows32-Vektor-Druck" #: ../share/extensions/printing_marks.inx.h:1 msgid "Printing Marks" @@ -32666,24 +32627,20 @@ msgid "Unit of measurement for both circular pitch and center diameter." msgstr "Einheit der Messung für Kreisteilung und Mittendurchmesser." #: ../share/extensions/render_gear_rack.inx.h:1 -#, fuzzy msgid "Rack Gear" -msgstr "Zahnrad" +msgstr "Zahnstange" #: ../share/extensions/render_gear_rack.inx.h:2 -#, fuzzy msgid "Rack Length:" -msgstr "Länge:" +msgstr "Zahnstangenänge:" #: ../share/extensions/render_gear_rack.inx.h:3 -#, fuzzy msgid "Tooth Spacing:" -msgstr "Horizontale Abstände" +msgstr "Zanh-Abstände" #: ../share/extensions/render_gear_rack.inx.h:4 -#, fuzzy msgid "Contact Angle:" -msgstr "Gergonne-Dreieck" +msgstr "Kontaktwinkel:" #: ../share/extensions/replace_font.inx.h:1 msgid "Replace font" @@ -32694,12 +32651,10 @@ msgid "Find and Replace font" msgstr "Schrift Suchen und Ersetzen" #: ../share/extensions/replace_font.inx.h:3 -#, fuzzy msgid "Find font: " -msgstr "Finde diese Schrift:" +msgstr "Finde Schrift:" #: ../share/extensions/replace_font.inx.h:4 -#, fuzzy msgid "Replace with: " msgstr "Und ersetze mit:" -- cgit v1.2.3 From c135cb8c39a4004e9eb8adb227ba4c54848a8c45 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Wed, 31 Jul 2013 16:45:07 -0400 Subject: Added percent support back to select toolbar. (bzr r12380.1.53) --- src/ui/widget/unit-tracker.cpp | 9 ++++++++- src/ui/widget/unit-tracker.h | 1 + src/widgets/select-toolbar.cpp | 13 +++++++------ 3 files changed, 16 insertions(+), 7 deletions(-) diff --git a/src/ui/widget/unit-tracker.cpp b/src/ui/widget/unit-tracker.cpp index 372419c3b..c0d3eec9b 100644 --- a/src/ui/widget/unit-tracker.cpp +++ b/src/ui/widget/unit-tracker.cpp @@ -111,6 +111,13 @@ void UnitTracker::addAdjustment(GtkAdjustment *adj) } } +void UnitTracker::addUnit(Inkscape::Util::Unit const &u) +{ + GtkTreeIter iter; + gtk_list_store_append(_store, &iter); + gtk_list_store_set(_store, &iter, COLUMN_STRING, u.abbr.c_str(), -1); +} + void UnitTracker::setFullVal(GtkAdjustment *adj, gdouble val) { _priorValues[adj] = val; @@ -232,7 +239,7 @@ void UnitTracker::_fixupAdjustments(Inkscape::Util::Unit const oldUnit, Inkscape if ( (oldUnit.type != Inkscape::Util::UNIT_TYPE_DIMENSIONLESS) && (newUnit.type == Inkscape::Util::UNIT_TYPE_DIMENSIONLESS) ) { - val = newUnit.factor; + val = newUnit.factor * 100; _priorValues[adj] = Inkscape::Util::Quantity::convert(oldVal, oldUnit, "px"); } else if ( (oldUnit.type == Inkscape::Util::UNIT_TYPE_DIMENSIONLESS) && (newUnit.type != Inkscape::Util::UNIT_TYPE_DIMENSIONLESS) ) diff --git a/src/ui/widget/unit-tracker.h b/src/ui/widget/unit-tracker.h index 521fe50c8..cdcb07c57 100644 --- a/src/ui/widget/unit-tracker.h +++ b/src/ui/widget/unit-tracker.h @@ -39,6 +39,7 @@ public: void setActiveUnitByAbbr(gchar const *abbr); Inkscape::Util::Unit getActiveUnit() const; + void addUnit(Inkscape::Util::Unit const &u); void addAdjustment(GtkAdjustment *adj); void setFullVal(GtkAdjustment *adj, gdouble val); diff --git a/src/widgets/select-toolbar.cpp b/src/widgets/select-toolbar.cpp index 617757845..ab6d6ca3b 100644 --- a/src/widgets/select-toolbar.cpp +++ b/src/widgets/select-toolbar.cpp @@ -89,7 +89,7 @@ sp_selection_layout_widget_update(SPWidget *spw, Inkscape::Selection *sel) }; if (unit.type == Inkscape::Util::UNIT_TYPE_DIMENSIONLESS) { - double const val = unit.factor; + double const val = unit.factor * 100; for (unsigned i = 0; i < G_N_ELEMENTS(keyval); ++i) { GtkAdjustment *a = GTK_ADJUSTMENT(g_object_get_data(G_OBJECT(spw), keyval[i].key)); gtk_adjustment_set_value(a, val); @@ -202,13 +202,13 @@ sp_object_layout_any_value_changed(GtkAdjustment *adj, SPWidget *spw) y1 = y0 + Quantity::convert(gtk_adjustment_get_value(a_h), unit, "px");; yrel = Quantity::convert(gtk_adjustment_get_value(a_h), unit, "px") / bbox_user->dimensions()[Geom::Y]; } else { - double const x0_propn = gtk_adjustment_get_value (a_x) * unit.factor; + double const x0_propn = gtk_adjustment_get_value (a_x) / 100 / unit.factor; x0 = bbox_user->min()[Geom::X] * x0_propn; - double const y0_propn = gtk_adjustment_get_value (a_y) * unit.factor; + double const y0_propn = gtk_adjustment_get_value (a_y) / 100 / unit.factor; y0 = y0_propn * bbox_user->min()[Geom::Y]; - xrel = gtk_adjustment_get_value (a_w) * unit.factor; + xrel = gtk_adjustment_get_value (a_w) / 100 / unit.factor; x1 = x0 + xrel * bbox_user->dimensions()[Geom::X]; - yrel = gtk_adjustment_get_value (a_h) * unit.factor; + yrel = gtk_adjustment_get_value (a_h) / 100 / unit.factor; y1 = y0 + yrel * bbox_user->dimensions()[Geom::Y]; } @@ -493,7 +493,8 @@ void sp_select_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GOb // Create the units menu. UnitTracker* tracker = new UnitTracker(Inkscape::Util::UNIT_TYPE_LINEAR); - //tracker->addUnit( SP_UNIT_PERCENT, 0 ); + Inkscape::Util::UnitTable unit_table; + tracker->addUnit(unit_table.getUnit("%")); tracker->setActiveUnit( sp_desktop_namedview(desktop)->doc_units ); g_object_set_data( G_OBJECT(spw), "tracker", tracker ); -- cgit v1.2.3 From beecbea1b415d5b9536f2309c4f30fc258e346f5 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Wed, 31 Jul 2013 22:51:23 +0200 Subject: Cleaned up a bit; fixed struct vs. class forward declarations. (bzr r11608.1.111) --- src/color-profile.cpp | 158 +++++++-------- src/color-profile.h | 4 +- src/context-fns.h | 2 +- src/desktop-handles.h | 4 +- src/desktop.h | 4 +- src/display/canvas-axonomgrid.h | 2 +- src/display/canvas-grid.h | 2 +- src/display/nr-filter-diffuselighting.h | 6 +- src/display/nr-filter-specularlighting.h | 6 +- src/display/nr-light.h | 6 +- src/display/nr-style.h | 2 +- src/display/nr-svgfonts.h | 6 +- src/document.h | 4 +- src/event-context.h | 2 +- src/filter-chemistry.h | 4 +- src/filters/componenttransfer-funcnode.cpp | 131 +++++++------ src/filters/componenttransfer-funcnode.h | 1 + src/filters/distantlight.cpp | 90 ++++----- src/filters/distantlight.h | 1 + src/filters/mergenode.cpp | 29 +-- src/filters/mergenode.h | 1 + src/filters/pointlight.cpp | 119 ++++++------ src/filters/pointlight.h | 1 + src/filters/spotlight.cpp | 296 +++++++++++++++-------------- src/filters/spotlight.h | 1 + src/gradient-drag.h | 8 +- src/guide-snapper.h | 2 +- src/inkscape.h | 2 +- src/live_effects/lpeobject.cpp | 70 +++---- src/live_effects/lpeobject.h | 2 +- src/object-snapper.h | 2 +- src/persp3d.cpp | 27 +-- src/persp3d.h | 1 + src/snap.h | 2 +- src/sp-defs.cpp | 14 +- src/sp-defs.h | 1 + src/sp-desc.cpp | 11 +- src/sp-desc.h | 1 + src/sp-filter-primitive.cpp | 4 +- src/sp-filter-primitive.h | 4 +- src/sp-filter-reference.h | 2 +- src/sp-filter.cpp | 176 ++++++++--------- src/sp-filter.h | 3 +- src/sp-gradient.h | 2 +- src/sp-mesh-array.h | 2 +- src/sp-object.cpp | 66 +------ src/sp-paint-server-reference.h | 2 +- src/sp-pattern.h | 2 +- src/trace/trace.h | 2 +- src/ui/dialog/svg-fonts-dialog.h | 6 +- src/ui/tool/control-point.h | 2 +- src/ui/view/view-widget.h | 2 +- src/widgets/gradient-vector.h | 2 +- src/widgets/paint-selector.h | 2 +- src/widgets/toolbox.h | 2 +- 55 files changed, 592 insertions(+), 714 deletions(-) diff --git a/src/color-profile.cpp b/src/color-profile.cpp index 8e51ea6de..61442b11a 100644 --- a/src/color-profile.cpp +++ b/src/color-profile.cpp @@ -207,40 +207,37 @@ ColorProfile::~ColorProfile() { * Callback: free object */ void ColorProfile::release() { - ColorProfile* object = this; - // Unregister ourselves - if ( object->document ) { - object->document->removeResource("iccprofile", object); + if ( this->document ) { + this->document->removeResource("iccprofile", this); } - ColorProfile *cprof = COLORPROFILE(object); - if ( cprof->href ) { - g_free( cprof->href ); - cprof->href = 0; + if ( this->href ) { + g_free( this->href ); + this->href = 0; } - if ( cprof->local ) { - g_free( cprof->local ); - cprof->local = 0; + if ( this->local ) { + g_free( this->local ); + this->local = 0; } - if ( cprof->name ) { - g_free( cprof->name ); - cprof->name = 0; + if ( this->name ) { + g_free( this->name ); + this->name = 0; } - if ( cprof->intentStr ) { - g_free( cprof->intentStr ); - cprof->intentStr = 0; + if ( this->intentStr ) { + g_free( this->intentStr ); + this->intentStr = 0; } #if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2) - cprof->impl->_clearProfile(); + this->impl->_clearProfile(); #endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2) - delete cprof->impl; - cprof->impl = 0; + delete this->impl; + this->impl = 0; } #if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2) @@ -271,24 +268,21 @@ void ColorProfileImpl::_clearProfile() * Callback: set attributes from associated repr. */ void ColorProfile::build(SPDocument *document, Inkscape::XML::Node *repr) { - ColorProfile* object = this; - - ColorProfile *cprof = COLORPROFILE(object); - g_assert(cprof->href == 0); - g_assert(cprof->local == 0); - g_assert(cprof->name == 0); - g_assert(cprof->intentStr == 0); + g_assert(this->href == 0); + g_assert(this->local == 0); + g_assert(this->name == 0); + g_assert(this->intentStr == 0); SPObject::build(document, repr); - object->readAttr( "xlink:href" ); - object->readAttr( "local" ); - object->readAttr( "name" ); - object->readAttr( "rendering-intent" ); + this->readAttr( "xlink:href" ); + this->readAttr( "local" ); + this->readAttr( "name" ); + this->readAttr( "rendering-intent" ); // Register if ( document ) { - document->addResource( "iccprofile", object ); + document->addResource( "iccprofile", this ); } } @@ -297,19 +291,15 @@ void ColorProfile::build(SPDocument *document, Inkscape::XML::Node *repr) { * Callback: set attribute. */ void ColorProfile::set(unsigned key, gchar const *value) { - ColorProfile* object = this; - - ColorProfile *cprof = COLORPROFILE(object); - switch (key) { case SP_ATTR_XLINK_HREF: - if ( cprof->href ) { - g_free( cprof->href ); - cprof->href = 0; + if ( this->href ) { + g_free( this->href ); + this->href = 0; } if ( value ) { - cprof->href = g_strdup( value ); - if ( *cprof->href ) { + this->href = g_strdup( value ); + if ( *this->href ) { #if HAVE_LIBLCMS1 cmsErrorAction( LCMS_ERROR_SHOW ); #endif @@ -320,10 +310,10 @@ void ColorProfile::set(unsigned key, gchar const *value) { //LCMSAPI cmsHPROFILE LCMSEXPORT cmsOpenProfileFromMem(LPVOID MemPtr, cmsUInt32Number dwSize); // Try to open relative - SPDocument *doc = object->document; + SPDocument *doc = this->document; if (!doc) { doc = SP_ACTIVE_DOCUMENT; - g_warning("object has no document. using active"); + g_warning("this has no document. using active"); } //# 1. Get complete URI of document gchar const *docbase = doc->getURI(); @@ -333,7 +323,7 @@ void ColorProfile::set(unsigned key, gchar const *value) { docbase = ""; } - gchar* escaped = g_uri_escape_string(cprof->href, "!*'();:@=+$,/?#[]", TRUE); + gchar* escaped = g_uri_escape_string(this->href, "!*'();:@=+$,/?#[]", TRUE); //g_message("docbase:%s\n", docbase); org::w3c::dom::URI docUri(docbase); @@ -343,67 +333,67 @@ void ColorProfile::set(unsigned key, gchar const *value) { // the w3c specs. All absolute and relative issues are considered org::w3c::dom::URI cprofUri = docUri.resolve(hrefUri); gchar* fullname = g_uri_unescape_string(cprofUri.getNativePath().c_str(), ""); - cprof->impl->_clearProfile(); - cprof->impl->_profHandle = cmsOpenProfileFromFile( fullname, "r" ); - if ( cprof->impl->_profHandle ) { - cprof->impl->_profileSpace = cmsGetColorSpace( cprof->impl->_profHandle ); - cprof->impl->_profileClass = cmsGetDeviceClass( cprof->impl->_profHandle ); + this->impl->_clearProfile(); + this->impl->_profHandle = cmsOpenProfileFromFile( fullname, "r" ); + if ( this->impl->_profHandle ) { + this->impl->_profileSpace = cmsGetColorSpace( this->impl->_profHandle ); + this->impl->_profileClass = cmsGetDeviceClass( this->impl->_profHandle ); } - DEBUG_MESSAGE( lcmsOne, "cmsOpenProfileFromFile( '%s'...) = %p", fullname, (void*)cprof->impl->_profHandle ); + DEBUG_MESSAGE( lcmsOne, "cmsOpenProfileFromFile( '%s'...) = %p", fullname, (void*)this->impl->_profHandle ); g_free(escaped); escaped = 0; g_free(fullname); #endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2) } } - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_LOCAL: - if ( cprof->local ) { - g_free( cprof->local ); - cprof->local = 0; + if ( this->local ) { + g_free( this->local ); + this->local = 0; } - cprof->local = g_strdup( value ); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->local = g_strdup( value ); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_NAME: - if ( cprof->name ) { - g_free( cprof->name ); - cprof->name = 0; + if ( this->name ) { + g_free( this->name ); + this->name = 0; } - cprof->name = g_strdup( value ); - DEBUG_MESSAGE( lcmsTwo, " name set to '%s'", cprof->name ); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->name = g_strdup( value ); + DEBUG_MESSAGE( lcmsTwo, " name set to '%s'", this->name ); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_RENDERING_INTENT: - if ( cprof->intentStr ) { - g_free( cprof->intentStr ); - cprof->intentStr = 0; + if ( this->intentStr ) { + g_free( this->intentStr ); + this->intentStr = 0; } - cprof->intentStr = g_strdup( value ); + this->intentStr = g_strdup( value ); if ( value ) { if ( strcmp( value, "auto" ) == 0 ) { - cprof->rendering_intent = RENDERING_INTENT_AUTO; + this->rendering_intent = RENDERING_INTENT_AUTO; } else if ( strcmp( value, "perceptual" ) == 0 ) { - cprof->rendering_intent = RENDERING_INTENT_PERCEPTUAL; + this->rendering_intent = RENDERING_INTENT_PERCEPTUAL; } else if ( strcmp( value, "relative-colorimetric" ) == 0 ) { - cprof->rendering_intent = RENDERING_INTENT_RELATIVE_COLORIMETRIC; + this->rendering_intent = RENDERING_INTENT_RELATIVE_COLORIMETRIC; } else if ( strcmp( value, "saturation" ) == 0 ) { - cprof->rendering_intent = RENDERING_INTENT_SATURATION; + this->rendering_intent = RENDERING_INTENT_SATURATION; } else if ( strcmp( value, "absolute-colorimetric" ) == 0 ) { - cprof->rendering_intent = RENDERING_INTENT_ABSOLUTE_COLORIMETRIC; + this->rendering_intent = RENDERING_INTENT_ABSOLUTE_COLORIMETRIC; } else { - cprof->rendering_intent = RENDERING_INTENT_UNKNOWN; + this->rendering_intent = RENDERING_INTENT_UNKNOWN; } } else { - cprof->rendering_intent = RENDERING_INTENT_UNKNOWN; + this->rendering_intent = RENDERING_INTENT_UNKNOWN; } - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; default: @@ -416,28 +406,24 @@ void ColorProfile::set(unsigned key, gchar const *value) { * Callback: write attributes to associated repr. */ Inkscape::XML::Node* ColorProfile::write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { - ColorProfile* object = this; - - ColorProfile *cprof = COLORPROFILE(object); - if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { repr = xml_doc->createElement("svg:color-profile"); } - if ( (flags & SP_OBJECT_WRITE_ALL) || cprof->href ) { - repr->setAttribute( "xlink:href", cprof->href ); + if ( (flags & SP_OBJECT_WRITE_ALL) || this->href ) { + repr->setAttribute( "xlink:href", this->href ); } - if ( (flags & SP_OBJECT_WRITE_ALL) || cprof->local ) { - repr->setAttribute( "local", cprof->local ); + if ( (flags & SP_OBJECT_WRITE_ALL) || this->local ) { + repr->setAttribute( "local", this->local ); } - if ( (flags & SP_OBJECT_WRITE_ALL) || cprof->name ) { - repr->setAttribute( "name", cprof->name ); + if ( (flags & SP_OBJECT_WRITE_ALL) || this->name ) { + repr->setAttribute( "name", this->name ); } - if ( (flags & SP_OBJECT_WRITE_ALL) || cprof->intentStr ) { - repr->setAttribute( "rendering-intent", cprof->intentStr ); + if ( (flags & SP_OBJECT_WRITE_ALL) || this->intentStr ) { + repr->setAttribute( "rendering-intent", this->intentStr ); } SPObject::write(xml_doc, repr, flags); diff --git a/src/color-profile.h b/src/color-profile.h index 152e61f57..2da757b91 100644 --- a/src/color-profile.h +++ b/src/color-profile.h @@ -55,7 +55,7 @@ public: gchar* intentStr; guint rendering_intent; -public: +protected: ColorProfileImpl *impl; virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); @@ -68,7 +68,7 @@ public: } // namespace Inkscape -#define COLORPROFILE_TYPE (Inkscape::colorprofile_get_type()) +//#define COLORPROFILE_TYPE (Inkscape::colorprofile_get_type()) #define COLORPROFILE(obj) ((Inkscape::ColorProfile*)obj) #define IS_COLORPROFILE(obj) (dynamic_cast((SPObject*)obj)) diff --git a/src/context-fns.h b/src/context-fns.h index 12d6e6194..43a45e4c7 100644 --- a/src/context-fns.h +++ b/src/context-fns.h @@ -16,7 +16,7 @@ class SPDesktop; class SPItem; -struct SPEventContext; +class SPEventContext; const double goldenratio = 1.61803398874989484820; // golden ratio diff --git a/src/desktop-handles.h b/src/desktop-handles.h index 7cd903b83..9413f075b 100644 --- a/src/desktop-handles.h +++ b/src/desktop-handles.h @@ -16,8 +16,8 @@ class SPDesktop; class SPDocument; -struct SPEventContext; -struct SPNamedView; +class SPEventContext; +class SPNamedView; struct SPCanvas; struct SPCanvasGroup; struct SPCanvasItem; diff --git a/src/desktop.h b/src/desktop.h index 3d4513425..938c2153a 100644 --- a/src/desktop.h +++ b/src/desktop.h @@ -41,9 +41,9 @@ class SPCSSAttr; struct SPCanvas; struct SPCanvasItem; struct SPCanvasGroup; -struct SPEventContext; +class SPEventContext; class SPItem; -struct SPNamedView; +class SPNamedView; class SPObject; struct SPStyle; typedef struct _DocumentInterface DocumentInterface;//struct DocumentInterface; diff --git a/src/display/canvas-axonomgrid.h b/src/display/canvas-axonomgrid.h index f58ea3aca..4e5af863d 100644 --- a/src/display/canvas-axonomgrid.h +++ b/src/display/canvas-axonomgrid.h @@ -14,7 +14,7 @@ struct SPCanvasBuf; class SPDesktop; -struct SPNamedView; +class SPNamedView; namespace Inkscape { namespace XML { diff --git a/src/display/canvas-grid.h b/src/display/canvas-grid.h index 7eaef407f..09c261e0d 100644 --- a/src/display/canvas-grid.h +++ b/src/display/canvas-grid.h @@ -13,7 +13,7 @@ #include "line-snapper.h" class SPDesktop; -struct SPNamedView; +class SPNamedView; struct SPCanvasBuf; class SPDocument; diff --git a/src/display/nr-filter-diffuselighting.h b/src/display/nr-filter-diffuselighting.h index 15cc8e1ff..043a5eb39 100644 --- a/src/display/nr-filter-diffuselighting.h +++ b/src/display/nr-filter-diffuselighting.h @@ -19,9 +19,9 @@ #include "display/nr-filter-slot.h" #include "display/nr-filter-units.h" -struct SPFeDistantLight; -struct SPFePointLight; -struct SPFeSpotLight; +class SPFeDistantLight; +class SPFePointLight; +class SPFeSpotLight; struct SVGICCColor; namespace Inkscape { diff --git a/src/display/nr-filter-specularlighting.h b/src/display/nr-filter-specularlighting.h index 0d1c0644f..c57e3a9ff 100644 --- a/src/display/nr-filter-specularlighting.h +++ b/src/display/nr-filter-specularlighting.h @@ -17,9 +17,9 @@ #include "display/nr-light-types.h" #include "display/nr-filter-primitive.h" -struct SPFeDistantLight; -struct SPFePointLight; -struct SPFeSpotLight; +class SPFeDistantLight; +class SPFePointLight; +class SPFeSpotLight; struct SVGICCColor; namespace Inkscape { diff --git a/src/display/nr-light.h b/src/display/nr-light.h index 022243bfc..0c1235483 100644 --- a/src/display/nr-light.h +++ b/src/display/nr-light.h @@ -13,9 +13,9 @@ #include "display/nr-light-types.h" #include <2geom/forward.h> -struct SPFeDistantLight; -struct SPFePointLight; -struct SPFeSpotLight; +class SPFeDistantLight; +class SPFePointLight; +class SPFeSpotLight; namespace Inkscape { namespace Filters { diff --git a/src/display/nr-style.h b/src/display/nr-style.h index cd0bd208f..43df6f8f1 100644 --- a/src/display/nr-style.h +++ b/src/display/nr-style.h @@ -16,7 +16,7 @@ #include <2geom/rect.h> #include "color.h" -struct SPPaintServer; +class SPPaintServer; struct SPStyle; namespace Inkscape { diff --git a/src/display/nr-svgfonts.h b/src/display/nr-svgfonts.h index 1101f93f2..e1bb047bb 100644 --- a/src/display/nr-svgfonts.h +++ b/src/display/nr-svgfonts.h @@ -17,9 +17,9 @@ #include class SvgFont; -struct SPFont; -struct SPGlyph; -struct SPMissingGlyph; +class SPFont; +class SPGlyph; +class SPMissingGlyph; struct _GdkEventExpose; typedef _GdkEventExpose GdkEventExpose; diff --git a/src/document.h b/src/document.h index d49067250..423dd2aba 100644 --- a/src/document.h +++ b/src/document.h @@ -33,8 +33,8 @@ class Router; class SPItem; class SPObject; -struct SPGroup; -struct SPRoot; +class SPGroup; +class SPRoot; struct SPUnit; namespace Inkscape { diff --git a/src/event-context.h b/src/event-context.h index 51c49b123..c2c9b023d 100644 --- a/src/event-context.h +++ b/src/event-context.h @@ -23,7 +23,7 @@ class GrDrag; class SPDesktop; class SPItem; class ShapeEditor; -struct SPEventContext; +class SPEventContext; namespace Inkscape { class MessageContext; diff --git a/src/filter-chemistry.h b/src/filter-chemistry.h index b00e33bcc..2ac3ebe8f 100644 --- a/src/filter-chemistry.h +++ b/src/filter-chemistry.h @@ -19,8 +19,8 @@ #include "display/nr-filter-types.h" class SPDocument; -struct SPFilter; -struct SPFilterPrimitive; +class SPFilter; +class SPFilterPrimitive; class SPItem; class SPObject; diff --git a/src/filters/componenttransfer-funcnode.cpp b/src/filters/componenttransfer-funcnode.cpp index 8b5a8a3ab..7c5191700 100644 --- a/src/filters/componenttransfer-funcnode.cpp +++ b/src/filters/componenttransfer-funcnode.cpp @@ -31,14 +31,9 @@ #include "macros.h" /* FeFuncNode class */ -SPFeFuncNode::SPFeFuncNode() : SPObject() { - this->type = Inkscape::Filters::COMPONENTTRANSFER_TYPE_IDENTITY; - //this->tableValues = NULL; - this->slope = 1; - this->intercept = 0; - this->amplitude = 1; - this->exponent = 1; - this->offset = 0; +SPFeFuncNode::SPFeFuncNode() + : SPObject(), type(Inkscape::Filters::COMPONENTTRANSFER_TYPE_IDENTITY), + slope(1), intercept(0), amplitude(1), exponent(1), offset(0) { } SPFeFuncNode::~SPFeFuncNode() { @@ -52,56 +47,65 @@ SPFeFuncNode::~SPFeFuncNode() { void SPFeFuncNode::build(SPDocument *document, Inkscape::XML::Node *repr) { SPObject::build(document, repr); - SPFeFuncNode* object = this; - //Read values of key attributes from XML nodes into object. - object->readAttr( "type" ); - object->readAttr( "tableValues" ); - object->readAttr( "slope" ); - object->readAttr( "intercept" ); - object->readAttr( "amplitude" ); - object->readAttr( "exponent" ); - object->readAttr( "offset" ); + this->readAttr( "type" ); + this->readAttr( "tableValues" ); + this->readAttr( "slope" ); + this->readAttr( "intercept" ); + this->readAttr( "amplitude" ); + this->readAttr( "exponent" ); + this->readAttr( "offset" ); //is this necessary? - document->addResource("fefuncnode", object); //maybe feFuncR, fefuncG, feFuncB and fefuncA ? + document->addResource("fefuncnode", this); //maybe feFuncR, fefuncG, feFuncB and fefuncA ? } /** * Drops any allocated memory. */ void SPFeFuncNode::release() { - SPFeFuncNode* object = this; - //SPFeFuncNode *fefuncnode = SP_FEFUNCNODE(object); - - if ( object->document ) { + if ( this->document ) { // Unregister ourselves - object->document->removeResource("fefuncnode", object); + this->document->removeResource("fefuncnode", this); } //TODO: release resources here } static Inkscape::Filters::FilterComponentTransferType sp_feComponenttransfer_read_type(gchar const *value){ - if (!value) return Inkscape::Filters::COMPONENTTRANSFER_TYPE_ERROR; //type attribute is REQUIRED. + if (!value) { + return Inkscape::Filters::COMPONENTTRANSFER_TYPE_ERROR; //type attribute is REQUIRED. + } + switch(value[0]){ case 'i': - if (strncmp(value, "identity", 8) == 0) return Inkscape::Filters::COMPONENTTRANSFER_TYPE_IDENTITY; + if (strncmp(value, "identity", 8) == 0) { + return Inkscape::Filters::COMPONENTTRANSFER_TYPE_IDENTITY; + } break; case 't': - if (strncmp(value, "table", 5) == 0) return Inkscape::Filters::COMPONENTTRANSFER_TYPE_TABLE; + if (strncmp(value, "table", 5) == 0) { + return Inkscape::Filters::COMPONENTTRANSFER_TYPE_TABLE; + } break; case 'd': - if (strncmp(value, "discrete", 8) == 0) return Inkscape::Filters::COMPONENTTRANSFER_TYPE_DISCRETE; + if (strncmp(value, "discrete", 8) == 0) { + return Inkscape::Filters::COMPONENTTRANSFER_TYPE_DISCRETE; + } break; case 'l': - if (strncmp(value, "linear", 6) == 0) return Inkscape::Filters::COMPONENTTRANSFER_TYPE_LINEAR; + if (strncmp(value, "linear", 6) == 0) { + return Inkscape::Filters::COMPONENTTRANSFER_TYPE_LINEAR; + } break; case 'g': - if (strncmp(value, "gamma", 5) == 0) return Inkscape::Filters::COMPONENTTRANSFER_TYPE_GAMMA; + if (strncmp(value, "gamma", 5) == 0) { + return Inkscape::Filters::COMPONENTTRANSFER_TYPE_GAMMA; + } break; } + return Inkscape::Filters::COMPONENTTRANSFER_TYPE_ERROR; //type attribute is REQUIRED. } @@ -109,63 +113,65 @@ static Inkscape::Filters::FilterComponentTransferType sp_feComponenttransfer_rea * Sets a specific value in the SPFeFuncNode. */ void SPFeFuncNode::set(unsigned int key, gchar const *value) { - SPFeFuncNode* object = this; - - SPFeFuncNode *feFuncNode = SP_FEFUNCNODE(object); Inkscape::Filters::FilterComponentTransferType type; double read_num; + switch(key) { case SP_ATTR_TYPE: type = sp_feComponenttransfer_read_type(value); - if(type != feFuncNode->type) { - feFuncNode->type = type; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if(type != this->type) { + this->type = type; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_TABLEVALUES: if (value){ - feFuncNode->tableValues = helperfns_read_vector(value); - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->tableValues = helperfns_read_vector(value); + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_SLOPE: read_num = value ? helperfns_read_number(value) : 1; - if (read_num != feFuncNode->slope) { - feFuncNode->slope = read_num; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (read_num != this->slope) { + this->slope = read_num; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_INTERCEPT: read_num = value ? helperfns_read_number(value) : 0; - if (read_num != feFuncNode->intercept) { - feFuncNode->intercept = read_num; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (read_num != this->intercept) { + this->intercept = read_num; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_AMPLITUDE: read_num = value ? helperfns_read_number(value) : 1; - if (read_num != feFuncNode->amplitude) { - feFuncNode->amplitude = read_num; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (read_num != this->amplitude) { + this->amplitude = read_num; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_EXPONENT: read_num = value ? helperfns_read_number(value) : 1; - if (read_num != feFuncNode->exponent) { - feFuncNode->exponent = read_num; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (read_num != this->exponent) { + this->exponent = read_num; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_OFFSET: read_num = value ? helperfns_read_number(value) : 0; - if (read_num != feFuncNode->offset) { - feFuncNode->offset = read_num; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (read_num != this->offset) { + this->offset = read_num; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; default: -// if (((SPObjectClass *) feFuncNode_parent_class)->set) -// ((SPObjectClass *) feFuncNode_parent_class)->set(object, key, value); SPObject::set(key, value); break; } @@ -175,16 +181,11 @@ void SPFeFuncNode::set(unsigned int key, gchar const *value) { * * Receives update notifications. * */ void SPFeFuncNode::update(SPCtx *ctx, guint flags) { - SPFeFuncNode* object = this; - - SPFeFuncNode *feFuncNode = SP_FEFUNCNODE(object); - (void)feFuncNode; - if (flags & SP_OBJECT_MODIFIED_FLAG) { /* do something to trigger redisplay, updates? */ //TODO - //object->readAttr( "azimuth" ); - //object->readAttr( "elevation" ); + //this->readAttr( "azimuth" ); + //this->readAttr( "elevation" ); } SPObject::update(ctx, flags); @@ -194,16 +195,12 @@ void SPFeFuncNode::update(SPCtx *ctx, guint flags) { * Writes its settings to an incoming repr object, if any. */ Inkscape::XML::Node* SPFeFuncNode::write(Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) { - SPFeFuncNode* object = this; - SPFeFuncNode *fefuncnode = SP_FEFUNCNODE(object); - if (!repr) { - repr = object->getRepr()->duplicate(doc); + repr = this->getRepr()->duplicate(doc); } - (void)fefuncnode; /* -TODO: I'm not sure what to do here... + TODO: I'm not sure what to do here... if (fefuncnode->azimuth_set) sp_repr_set_css_double(repr, "azimuth", fefuncnode->azimuth); diff --git a/src/filters/componenttransfer-funcnode.h b/src/filters/componenttransfer-funcnode.h index deed46839..873baa196 100644 --- a/src/filters/componenttransfer-funcnode.h +++ b/src/filters/componenttransfer-funcnode.h @@ -54,6 +54,7 @@ public: double exponent; double offset; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/filters/distantlight.cpp b/src/filters/distantlight.cpp index 763ddbe7a..8b6ef023b 100644 --- a/src/filters/distantlight.cpp +++ b/src/filters/distantlight.cpp @@ -29,11 +29,8 @@ #define SP_MACROS_SILENT #include "macros.h" -SPFeDistantLight::SPFeDistantLight() : SPObject() { - this->azimuth = 0; - this->elevation = 0; - this->azimuth_set = FALSE; - this->elevation_set = FALSE; +SPFeDistantLight::SPFeDistantLight() + : SPObject(), azimuth(0), azimuth_set(FALSE), elevation(0), elevation_set(FALSE) { } SPFeDistantLight::~SPFeDistantLight() { @@ -47,27 +44,21 @@ SPFeDistantLight::~SPFeDistantLight() { void SPFeDistantLight::build(SPDocument *document, Inkscape::XML::Node *repr) { SPObject::build(document, repr); - SPFeDistantLight* object = this; - //Read values of key attributes from XML nodes into object. - object->readAttr( "azimuth" ); - object->readAttr( "elevation" ); + this->readAttr( "azimuth" ); + this->readAttr( "elevation" ); //is this necessary? - document->addResource("fedistantlight", object); + document->addResource("fedistantlight", this); } /** * Drops any allocated memory. */ void SPFeDistantLight::release() { - SPFeDistantLight* object = this; - - //SPFeDistantLight *fedistantlight = SP_FEDISTANTLIGHT(object); - - if ( object->document ) { + if ( this->document ) { // Unregister ourselves - object->document->removeResource("fedistantlight", object); + this->document->removeResource("fedistantlight", this); } //TODO: release resources here @@ -77,44 +68,51 @@ void SPFeDistantLight::release() { * Sets a specific value in the SPFeDistantLight. */ void SPFeDistantLight::set(unsigned int key, gchar const *value) { - SPFeDistantLight* object = this; - SPFeDistantLight *fedistantlight = SP_FEDISTANTLIGHT(object); gchar *end_ptr; + switch (key) { case SP_ATTR_AZIMUTH: end_ptr =NULL; + if (value) { - fedistantlight->azimuth = g_ascii_strtod(value, &end_ptr); + this->azimuth = g_ascii_strtod(value, &end_ptr); + if (end_ptr) { - fedistantlight->azimuth_set = TRUE; + this->azimuth_set = TRUE; } } + if (!value || !end_ptr) { - fedistantlight->azimuth_set = FALSE; - fedistantlight->azimuth = 0; + this->azimuth_set = FALSE; + this->azimuth = 0; } - if (object->parent && - (SP_IS_FEDIFFUSELIGHTING(object->parent) || - SP_IS_FESPECULARLIGHTING(object->parent))) { - object->parent->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (this->parent && + (SP_IS_FEDIFFUSELIGHTING(this->parent) || + SP_IS_FESPECULARLIGHTING(this->parent))) { + this->parent->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_ELEVATION: end_ptr =NULL; + if (value) { - fedistantlight->elevation = g_ascii_strtod(value, &end_ptr); + this->elevation = g_ascii_strtod(value, &end_ptr); + if (end_ptr) { - fedistantlight->elevation_set = TRUE; + this->elevation_set = TRUE; } } + if (!value || !end_ptr) { - fedistantlight->elevation_set = FALSE; - fedistantlight->elevation = 0; + this->elevation_set = FALSE; + this->elevation = 0; } - if (object->parent && - (SP_IS_FEDIFFUSELIGHTING(object->parent) || - SP_IS_FESPECULARLIGHTING(object->parent))) { - object->parent->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (this->parent && + (SP_IS_FEDIFFUSELIGHTING(this->parent) || + SP_IS_FESPECULARLIGHTING(this->parent))) { + this->parent->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; default: @@ -128,14 +126,10 @@ void SPFeDistantLight::set(unsigned int key, gchar const *value) { * * Receives update notifications. * */ void SPFeDistantLight::update(SPCtx *ctx, guint flags) { - SPFeDistantLight* object = this; - SPFeDistantLight *feDistantLight = SP_FEDISTANTLIGHT(object); - (void)feDistantLight; - if (flags & SP_OBJECT_MODIFIED_FLAG) { /* do something to trigger redisplay, updates? */ - object->readAttr( "azimuth" ); - object->readAttr( "elevation" ); + this->readAttr( "azimuth" ); + this->readAttr( "elevation" ); } SPObject::update(ctx, flags); @@ -145,17 +139,17 @@ void SPFeDistantLight::update(SPCtx *ctx, guint flags) { * Writes its settings to an incoming repr object, if any. */ Inkscape::XML::Node* SPFeDistantLight::write(Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) { - SPFeDistantLight* object = this; - SPFeDistantLight *fedistantlight = SP_FEDISTANTLIGHT(object); - if (!repr) { - repr = object->getRepr()->duplicate(doc); + repr = this->getRepr()->duplicate(doc); + } + + if (this->azimuth_set) { + sp_repr_set_css_double(repr, "azimuth", this->azimuth); } - if (fedistantlight->azimuth_set) - sp_repr_set_css_double(repr, "azimuth", fedistantlight->azimuth); - if (fedistantlight->elevation_set) - sp_repr_set_css_double(repr, "elevation", fedistantlight->elevation); + if (this->elevation_set) { + sp_repr_set_css_double(repr, "elevation", this->elevation); + } SPObject::write(doc, repr, flags); diff --git a/src/filters/distantlight.h b/src/filters/distantlight.h index b808eb279..ad9c8f53c 100644 --- a/src/filters/distantlight.h +++ b/src/filters/distantlight.h @@ -33,6 +33,7 @@ public: gfloat elevation; guint elevation_set : 1; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/filters/mergenode.cpp b/src/filters/mergenode.cpp index e356ac771..1b06db706 100644 --- a/src/filters/mergenode.cpp +++ b/src/filters/mergenode.cpp @@ -33,8 +33,8 @@ namespace { bool mergeNodeRegistered = SPFactory::instance().registerObject("svg:feMergeNode", createMergeNode); } -SPFeMergeNode::SPFeMergeNode() : SPObject() { - this->input = Inkscape::Filters::NR_FILTER_SLOT_NOT_SET; +SPFeMergeNode::SPFeMergeNode() + : SPObject(), input(Inkscape::Filters::NR_FILTER_SLOT_NOT_SET) { } SPFeMergeNode::~SPFeMergeNode() { @@ -46,8 +46,7 @@ SPFeMergeNode::~SPFeMergeNode() { * sp-object-repr.cpp's repr_name_entries array. */ void SPFeMergeNode::build(SPDocument *document, Inkscape::XML::Node *repr) { - SPFeMergeNode* object = this; - object->readAttr( "in" ); + this->readAttr( "in" ); } /** @@ -61,15 +60,13 @@ void SPFeMergeNode::release() { * Sets a specific value in the SPFeMergeNode. */ void SPFeMergeNode::set(unsigned int key, gchar const *value) { - SPFeMergeNode* object = this; - SPFeMergeNode *feMergeNode = SP_FEMERGENODE(object); - SPFeMerge *parent = SP_FEMERGE(object->parent); + SPFeMerge *parent = SP_FEMERGE(this->parent); if (key == SP_ATTR_IN) { int input = sp_filter_primitive_read_in(parent, value); - if (input != feMergeNode->input) { - feMergeNode->input = input; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + if (input != this->input) { + this->input = input; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } } @@ -81,11 +78,8 @@ void SPFeMergeNode::set(unsigned int key, gchar const *value) { * Receives update notifications. */ void SPFeMergeNode::update(SPCtx *ctx, guint flags) { - SPFeMergeNode* object = this; - //SPFeMergeNode *feMergeNode = SP_FEMERGENODE(object); - if (flags & SP_OBJECT_MODIFIED_FLAG) { - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } SPObject::update(ctx, flags); @@ -95,16 +89,13 @@ void SPFeMergeNode::update(SPCtx *ctx, guint flags) { * Writes its settings to an incoming repr object, if any. */ Inkscape::XML::Node* SPFeMergeNode::write(Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) { - SPFeMergeNode* object = this; - //SPFeMergeNode *feMergeNode = SP_FEMERGENODE(object); - - // Inkscape-only object, not copied during an "plain SVG" dump: + // Inkscape-only this, not copied during an "plain SVG" dump: if (flags & SP_OBJECT_WRITE_EXT) { if (repr) { // is this sane? //repr->mergeFrom(object->getRepr(), "id"); } else { - repr = object->getRepr()->duplicate(doc); + repr = this->getRepr()->duplicate(doc); } } diff --git a/src/filters/mergenode.h b/src/filters/mergenode.h index 346d8da24..9182780ca 100644 --- a/src/filters/mergenode.h +++ b/src/filters/mergenode.h @@ -27,6 +27,7 @@ public: int input; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/filters/pointlight.cpp b/src/filters/pointlight.cpp index ab0b1b582..1c7532b4e 100644 --- a/src/filters/pointlight.cpp +++ b/src/filters/pointlight.cpp @@ -39,14 +39,8 @@ namespace { bool pointLightRegistered = SPFactory::instance().registerObject("svg:fePointLight", createPointLight); } -SPFePointLight::SPFePointLight() : SPObject() { - this->x = 0; - this->y = 0; - this->z = 0; - - this->x_set = FALSE; - this->y_set = FALSE; - this->z_set = FALSE; +SPFePointLight::SPFePointLight() + : SPObject(), x(0), x_set(FALSE), y(0), y_set(FALSE), z(0), z_set(FALSE) { } SPFePointLight::~SPFePointLight() { @@ -61,27 +55,22 @@ SPFePointLight::~SPFePointLight() { void SPFePointLight::build(SPDocument *document, Inkscape::XML::Node *repr) { SPObject::build(document, repr); - SPFePointLight* object = this; - //Read values of key attributes from XML nodes into object. - object->readAttr( "x" ); - object->readAttr( "y" ); - object->readAttr( "z" ); + this->readAttr( "x" ); + this->readAttr( "y" ); + this->readAttr( "z" ); //is this necessary? - document->addResource("fepointlight", object); + document->addResource("fepointlight", this); } /** * Drops any allocated memory. */ void SPFePointLight::release() { - SPFePointLight* object = this; - //SPFePointLight *fepointlight = SP_FEPOINTLIGHT(object); - - if ( object->document ) { + if ( this->document ) { // Unregister ourselves - object->document->removeResource("fepointlight", object); + this->document->removeResource("fepointlight", this); } //TODO: release resources here @@ -91,63 +80,73 @@ void SPFePointLight::release() { * Sets a specific value in the SPFePointLight. */ void SPFePointLight::set(unsigned int key, gchar const *value) { - SPFePointLight* object = this; - - SPFePointLight *fepointlight = SP_FEPOINTLIGHT(object); gchar *end_ptr; + switch (key) { case SP_ATTR_X: end_ptr = NULL; + if (value) { - fepointlight->x = g_ascii_strtod(value, &end_ptr); + this->x = g_ascii_strtod(value, &end_ptr); + if (end_ptr) { - fepointlight->x_set = TRUE; + this->x_set = TRUE; } } + if (!value || !end_ptr) { - fepointlight->x = 0; - fepointlight->x_set = FALSE; + this->x = 0; + this->x_set = FALSE; } - if (object->parent && - (SP_IS_FEDIFFUSELIGHTING(object->parent) || - SP_IS_FESPECULARLIGHTING(object->parent))) { - object->parent->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (this->parent && + (SP_IS_FEDIFFUSELIGHTING(this->parent) || + SP_IS_FESPECULARLIGHTING(this->parent))) { + this->parent->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_Y: end_ptr = NULL; + if (value) { - fepointlight->y = g_ascii_strtod(value, &end_ptr); + this->y = g_ascii_strtod(value, &end_ptr); + if (end_ptr) { - fepointlight->y_set = TRUE; + this->y_set = TRUE; } } + if (!value || !end_ptr) { - fepointlight->y = 0; - fepointlight->y_set = FALSE; + this->y = 0; + this->y_set = FALSE; } - if (object->parent && - (SP_IS_FEDIFFUSELIGHTING(object->parent) || - SP_IS_FESPECULARLIGHTING(object->parent))) { - object->parent->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (this->parent && + (SP_IS_FEDIFFUSELIGHTING(this->parent) || + SP_IS_FESPECULARLIGHTING(this->parent))) { + this->parent->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_Z: end_ptr = NULL; + if (value) { - fepointlight->z = g_ascii_strtod(value, &end_ptr); + this->z = g_ascii_strtod(value, &end_ptr); + if (end_ptr) { - fepointlight->z_set = TRUE; + this->z_set = TRUE; } } + if (!value || !end_ptr) { - fepointlight->z = 0; - fepointlight->z_set = FALSE; + this->z = 0; + this->z_set = FALSE; } - if (object->parent && - (SP_IS_FEDIFFUSELIGHTING(object->parent) || - SP_IS_FESPECULARLIGHTING(object->parent))) { - object->parent->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (this->parent && + (SP_IS_FEDIFFUSELIGHTING(this->parent) || + SP_IS_FESPECULARLIGHTING(this->parent))) { + this->parent->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; default: @@ -161,16 +160,11 @@ void SPFePointLight::set(unsigned int key, gchar const *value) { * * Receives update notifications. * */ void SPFePointLight::update(SPCtx *ctx, guint flags) { - SPFePointLight* object = this; - - SPFePointLight *fePointLight = SP_FEPOINTLIGHT(object); - (void)fePointLight; - if (flags & SP_OBJECT_MODIFIED_FLAG) { /* do something to trigger redisplay, updates? */ - object->readAttr( "x" ); - object->readAttr( "y" ); - object->readAttr( "z" ); + this->readAttr( "x" ); + this->readAttr( "y" ); + this->readAttr( "z" ); } SPObject::update(ctx, flags); @@ -180,19 +174,16 @@ void SPFePointLight::update(SPCtx *ctx, guint flags) { * Writes its settings to an incoming repr object, if any. */ Inkscape::XML::Node* SPFePointLight::write(Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) { - SPFePointLight* object = this; - SPFePointLight *fepointlight = SP_FEPOINTLIGHT(object); - if (!repr) { - repr = object->getRepr()->duplicate(doc); + repr = this->getRepr()->duplicate(doc); } - if (fepointlight->x_set) - sp_repr_set_css_double(repr, "x", fepointlight->x); - if (fepointlight->y_set) - sp_repr_set_css_double(repr, "y", fepointlight->y); - if (fepointlight->z_set) - sp_repr_set_css_double(repr, "z", fepointlight->z); + if (this->x_set) + sp_repr_set_css_double(repr, "x", this->x); + if (this->y_set) + sp_repr_set_css_double(repr, "y", this->y); + if (this->z_set) + sp_repr_set_css_double(repr, "z", this->z); SPObject::write(doc, repr, flags); diff --git a/src/filters/pointlight.h b/src/filters/pointlight.h index 96bef8945..2379167b6 100644 --- a/src/filters/pointlight.h +++ b/src/filters/pointlight.h @@ -35,6 +35,7 @@ public: gfloat z; guint z_set : 1; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/filters/spotlight.cpp b/src/filters/spotlight.cpp index 1942c7710..c0344067c 100644 --- a/src/filters/spotlight.cpp +++ b/src/filters/spotlight.cpp @@ -39,24 +39,12 @@ namespace { bool spotLightRegistered = SPFactory::instance().registerObject("svg:feSpotLight", createSpotLight); } -SPFeSpotLight::SPFeSpotLight() : SPObject() { - this->x = 0; - this->y = 0; - this->z = 0; - this->pointsAtX = 0; - this->pointsAtY = 0; - this->pointsAtZ = 0; - this->specularExponent = 1; - this->limitingConeAngle = 90; - - this->x_set = FALSE; - this->y_set = FALSE; - this->z_set = FALSE; - this->pointsAtX_set = FALSE; - this->pointsAtY_set = FALSE; - this->pointsAtZ_set = FALSE; - this->specularExponent_set = FALSE; - this->limitingConeAngle_set = FALSE; +SPFeSpotLight::SPFeSpotLight() + : SPObject(), x(0), x_set(FALSE), y(0), y_set(FALSE), z(0), z_set(FALSE), pointsAtX(0), pointsAtX_set(FALSE), + pointsAtY(0), pointsAtY_set(FALSE), pointsAtZ(0), pointsAtZ_set(FALSE), + specularExponent(1), specularExponent_set(FALSE), limitingConeAngle(90), + limitingConeAngle_set(FALSE) +{ } SPFeSpotLight::~SPFeSpotLight() { @@ -71,32 +59,27 @@ SPFeSpotLight::~SPFeSpotLight() { void SPFeSpotLight::build(SPDocument *document, Inkscape::XML::Node *repr) { SPObject::build(document, repr); - SPFeSpotLight* object = this; - //Read values of key attributes from XML nodes into object. - object->readAttr( "x" ); - object->readAttr( "y" ); - object->readAttr( "z" ); - object->readAttr( "pointsAtX" ); - object->readAttr( "pointsAtY" ); - object->readAttr( "pointsAtZ" ); - object->readAttr( "specularExponent" ); - object->readAttr( "limitingConeAngle" ); + this->readAttr( "x" ); + this->readAttr( "y" ); + this->readAttr( "z" ); + this->readAttr( "pointsAtX" ); + this->readAttr( "pointsAtY" ); + this->readAttr( "pointsAtZ" ); + this->readAttr( "specularExponent" ); + this->readAttr( "limitingConeAngle" ); //is this necessary? - document->addResource("fespotlight", object); + document->addResource("fespotlight", this); } /** * Drops any allocated memory. */ void SPFeSpotLight::release() { - SPFeSpotLight* object = this; - //SPFeSpotLight *fespotlight = SP_FESPOTLIGHT(object); - - if ( object->document ) { + if ( this->document ) { // Unregister ourselves - object->document->removeResource("fespotlight", object); + this->document->removeResource("fespotlight", this); } //TODO: release resources here @@ -106,146 +89,183 @@ void SPFeSpotLight::release() { * Sets a specific value in the SPFeSpotLight. */ void SPFeSpotLight::set(unsigned int key, gchar const *value) { - SPFeSpotLight* object = this; - - SPFeSpotLight *fespotlight = SP_FESPOTLIGHT(object); gchar *end_ptr; switch (key) { case SP_ATTR_X: end_ptr = NULL; + if (value) { - fespotlight->x = g_ascii_strtod(value, &end_ptr); - if (end_ptr) - fespotlight->x_set = TRUE; + this->x = g_ascii_strtod(value, &end_ptr); + + if (end_ptr) { + this->x_set = TRUE; + } } + if(!value || !end_ptr) { - fespotlight->x = 0; - fespotlight->x_set = FALSE; + this->x = 0; + this->x_set = FALSE; } - if (object->parent && - (SP_IS_FEDIFFUSELIGHTING(object->parent) || - SP_IS_FESPECULARLIGHTING(object->parent))) { - object->parent->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (this->parent && + (SP_IS_FEDIFFUSELIGHTING(this->parent) || + SP_IS_FESPECULARLIGHTING(this->parent))) { + this->parent->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_Y: end_ptr = NULL; + if (value) { - fespotlight->y = g_ascii_strtod(value, &end_ptr); - if (end_ptr) - fespotlight->y_set = TRUE; + this->y = g_ascii_strtod(value, &end_ptr); + + if (end_ptr) { + this->y_set = TRUE; + } } + if(!value || !end_ptr) { - fespotlight->y = 0; - fespotlight->y_set = FALSE; + this->y = 0; + this->y_set = FALSE; } - if (object->parent && - (SP_IS_FEDIFFUSELIGHTING(object->parent) || - SP_IS_FESPECULARLIGHTING(object->parent))) { - object->parent->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (this->parent && + (SP_IS_FEDIFFUSELIGHTING(this->parent) || + SP_IS_FESPECULARLIGHTING(this->parent))) { + this->parent->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_Z: end_ptr = NULL; + if (value) { - fespotlight->z = g_ascii_strtod(value, &end_ptr); - if (end_ptr) - fespotlight->z_set = TRUE; + this->z = g_ascii_strtod(value, &end_ptr); + + if (end_ptr) { + this->z_set = TRUE; + } } + if(!value || !end_ptr) { - fespotlight->z = 0; - fespotlight->z_set = FALSE; + this->z = 0; + this->z_set = FALSE; } - if (object->parent && - (SP_IS_FEDIFFUSELIGHTING(object->parent) || - SP_IS_FESPECULARLIGHTING(object->parent))) { - object->parent->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (this->parent && + (SP_IS_FEDIFFUSELIGHTING(this->parent) || + SP_IS_FESPECULARLIGHTING(this->parent))) { + this->parent->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_POINTSATX: end_ptr = NULL; + if (value) { - fespotlight->pointsAtX = g_ascii_strtod(value, &end_ptr); - if (end_ptr) - fespotlight->pointsAtX_set = TRUE; + this->pointsAtX = g_ascii_strtod(value, &end_ptr); + + if (end_ptr) { + this->pointsAtX_set = TRUE; + } } + if(!value || !end_ptr) { - fespotlight->pointsAtX = 0; - fespotlight->pointsAtX_set = FALSE; + this->pointsAtX = 0; + this->pointsAtX_set = FALSE; } - if (object->parent && - (SP_IS_FEDIFFUSELIGHTING(object->parent) || - SP_IS_FESPECULARLIGHTING(object->parent))) { - object->parent->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (this->parent && + (SP_IS_FEDIFFUSELIGHTING(this->parent) || + SP_IS_FESPECULARLIGHTING(this->parent))) { + this->parent->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_POINTSATY: end_ptr = NULL; + if (value) { - fespotlight->pointsAtY = g_ascii_strtod(value, &end_ptr); - if (end_ptr) - fespotlight->pointsAtY_set = TRUE; + this->pointsAtY = g_ascii_strtod(value, &end_ptr); + + if (end_ptr) { + this->pointsAtY_set = TRUE; + } } + if(!value || !end_ptr) { - fespotlight->pointsAtY = 0; - fespotlight->pointsAtY_set = FALSE; + this->pointsAtY = 0; + this->pointsAtY_set = FALSE; } - if (object->parent && - (SP_IS_FEDIFFUSELIGHTING(object->parent) || - SP_IS_FESPECULARLIGHTING(object->parent))) { - object->parent->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (this->parent && + (SP_IS_FEDIFFUSELIGHTING(this->parent) || + SP_IS_FESPECULARLIGHTING(this->parent))) { + this->parent->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_POINTSATZ: end_ptr = NULL; + if (value) { - fespotlight->pointsAtZ = g_ascii_strtod(value, &end_ptr); - if (end_ptr) - fespotlight->pointsAtZ_set = TRUE; + this->pointsAtZ = g_ascii_strtod(value, &end_ptr); + + if (end_ptr) { + this->pointsAtZ_set = TRUE; + } } + if(!value || !end_ptr) { - fespotlight->pointsAtZ = 0; - fespotlight->pointsAtZ_set = FALSE; + this->pointsAtZ = 0; + this->pointsAtZ_set = FALSE; } - if (object->parent && - (SP_IS_FEDIFFUSELIGHTING(object->parent) || - SP_IS_FESPECULARLIGHTING(object->parent))) { - object->parent->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (this->parent && + (SP_IS_FEDIFFUSELIGHTING(this->parent) || + SP_IS_FESPECULARLIGHTING(this->parent))) { + this->parent->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_SPECULAREXPONENT: end_ptr = NULL; + if (value) { - fespotlight->specularExponent = g_ascii_strtod(value, &end_ptr); - if (end_ptr) - fespotlight->specularExponent_set = TRUE; + this->specularExponent = g_ascii_strtod(value, &end_ptr); + + if (end_ptr) { + this->specularExponent_set = TRUE; + } } + if(!value || !end_ptr) { - fespotlight->specularExponent = 1; - fespotlight->specularExponent_set = FALSE; + this->specularExponent = 1; + this->specularExponent_set = FALSE; } - if (object->parent && - (SP_IS_FEDIFFUSELIGHTING(object->parent) || - SP_IS_FESPECULARLIGHTING(object->parent))) { - object->parent->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (this->parent && + (SP_IS_FEDIFFUSELIGHTING(this->parent) || + SP_IS_FESPECULARLIGHTING(this->parent))) { + this->parent->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_LIMITINGCONEANGLE: end_ptr = NULL; + if (value) { - fespotlight->limitingConeAngle = g_ascii_strtod(value, &end_ptr); - if (end_ptr) - fespotlight->limitingConeAngle_set = TRUE; + this->limitingConeAngle = g_ascii_strtod(value, &end_ptr); + + if (end_ptr) { + this->limitingConeAngle_set = TRUE; + } } + if(!value || !end_ptr) { - fespotlight->limitingConeAngle = 90; - fespotlight->limitingConeAngle_set = FALSE; + this->limitingConeAngle = 90; + this->limitingConeAngle_set = FALSE; } - if (object->parent && - (SP_IS_FEDIFFUSELIGHTING(object->parent) || - SP_IS_FESPECULARLIGHTING(object->parent))) { - object->parent->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (this->parent && + (SP_IS_FEDIFFUSELIGHTING(this->parent) || + SP_IS_FESPECULARLIGHTING(this->parent))) { + this->parent->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; default: @@ -259,21 +279,16 @@ void SPFeSpotLight::set(unsigned int key, gchar const *value) { * * Receives update notifications. * */ void SPFeSpotLight::update(SPCtx *ctx, guint flags) { - SPFeSpotLight* object = this; - - SPFeSpotLight *feSpotLight = SP_FESPOTLIGHT(object); - (void)feSpotLight; - if (flags & SP_OBJECT_MODIFIED_FLAG) { /* do something to trigger redisplay, updates? */ - object->readAttr( "x" ); - object->readAttr( "y" ); - object->readAttr( "z" ); - object->readAttr( "pointsAtX" ); - object->readAttr( "pointsAtY" ); - object->readAttr( "pointsAtZ" ); - object->readAttr( "specularExponent" ); - object->readAttr( "limitingConeAngle" ); + this->readAttr( "x" ); + this->readAttr( "y" ); + this->readAttr( "z" ); + this->readAttr( "pointsAtX" ); + this->readAttr( "pointsAtY" ); + this->readAttr( "pointsAtZ" ); + this->readAttr( "specularExponent" ); + this->readAttr( "limitingConeAngle" ); } SPObject::update(ctx, flags); @@ -283,29 +298,26 @@ void SPFeSpotLight::update(SPCtx *ctx, guint flags) { * Writes its settings to an incoming repr object, if any. */ Inkscape::XML::Node* SPFeSpotLight::write(Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) { - SPFeSpotLight* object = this; - SPFeSpotLight *fespotlight = SP_FESPOTLIGHT(object); - if (!repr) { - repr = object->getRepr()->duplicate(doc); + repr = this->getRepr()->duplicate(doc); } - if (fespotlight->x_set) - sp_repr_set_css_double(repr, "x", fespotlight->x); - if (fespotlight->y_set) - sp_repr_set_css_double(repr, "y", fespotlight->y); - if (fespotlight->z_set) - sp_repr_set_css_double(repr, "z", fespotlight->z); - if (fespotlight->pointsAtX_set) - sp_repr_set_css_double(repr, "pointsAtX", fespotlight->pointsAtX); - if (fespotlight->pointsAtY_set) - sp_repr_set_css_double(repr, "pointsAtY", fespotlight->pointsAtY); - if (fespotlight->pointsAtZ_set) - sp_repr_set_css_double(repr, "pointsAtZ", fespotlight->pointsAtZ); - if (fespotlight->specularExponent_set) - sp_repr_set_css_double(repr, "specularExponent", fespotlight->specularExponent); - if (fespotlight->limitingConeAngle_set) - sp_repr_set_css_double(repr, "limitingConeAngle", fespotlight->limitingConeAngle); + if (this->x_set) + sp_repr_set_css_double(repr, "x", this->x); + if (this->y_set) + sp_repr_set_css_double(repr, "y", this->y); + if (this->z_set) + sp_repr_set_css_double(repr, "z", this->z); + if (this->pointsAtX_set) + sp_repr_set_css_double(repr, "pointsAtX", this->pointsAtX); + if (this->pointsAtY_set) + sp_repr_set_css_double(repr, "pointsAtY", this->pointsAtY); + if (this->pointsAtZ_set) + sp_repr_set_css_double(repr, "pointsAtZ", this->pointsAtZ); + if (this->specularExponent_set) + sp_repr_set_css_double(repr, "specularExponent", this->specularExponent); + if (this->limitingConeAngle_set) + sp_repr_set_css_double(repr, "limitingConeAngle", this->limitingConeAngle); SPObject::write(doc, repr, flags); diff --git a/src/filters/spotlight.h b/src/filters/spotlight.h index 9ea73a800..b273f72b7 100644 --- a/src/filters/spotlight.h +++ b/src/filters/spotlight.h @@ -51,6 +51,7 @@ public: guint limitingConeAngle_set : 1; //other fields +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/gradient-drag.h b/src/gradient-drag.h index 2a2465590..c92a5c22f 100644 --- a/src/gradient-drag.h +++ b/src/gradient-drag.h @@ -33,12 +33,12 @@ struct SPKnot; class SPDesktop; class SPCSSAttr; -struct SPLinearGradient; -struct SPMeshGradient; +class SPLinearGradient; +class SPMeshGradient; class SPItem; class SPObject; -struct SPRadialGradient; -struct SPStop; +class SPRadialGradient; +class SPStop; namespace Inkscape { class Selection; diff --git a/src/guide-snapper.h b/src/guide-snapper.h index aa0c45320..7aea2988b 100644 --- a/src/guide-snapper.h +++ b/src/guide-snapper.h @@ -13,7 +13,7 @@ #include "line-snapper.h" -struct SPNamedView; +class SPNamedView; namespace Inkscape { diff --git a/src/inkscape.h b/src/inkscape.h index 234b98d2c..0effc3c38 100644 --- a/src/inkscape.h +++ b/src/inkscape.h @@ -17,7 +17,7 @@ class SPDesktop; class SPDocument; -struct SPEventContext; +class SPEventContext; namespace Inkscape { class ActionContext; diff --git a/src/live_effects/lpeobject.cpp b/src/live_effects/lpeobject.cpp index b708a36cd..d61f2b2fa 100644 --- a/src/live_effects/lpeobject.cpp +++ b/src/live_effects/lpeobject.cpp @@ -41,15 +41,13 @@ static Inkscape::XML::NodeEventVector const livepatheffect_repr_events = { }; -LivePathEffectObject::LivePathEffectObject() : SPObject() { +LivePathEffectObject::LivePathEffectObject() + : SPObject(), effecttype(Inkscape::LivePathEffect::INVALID_LPE), effecttype_set(false), + lpe(NULL) +{ #ifdef LIVEPATHEFFECT_VERBOSE g_message("Init livepatheffectobject"); #endif - - this->effecttype = Inkscape::LivePathEffect::INVALID_LPE; - this->lpe = NULL; - - this->effecttype_set = false; } LivePathEffectObject::~LivePathEffectObject() { @@ -59,17 +57,15 @@ LivePathEffectObject::~LivePathEffectObject() { * Virtual build: set livepatheffect attributes from its associated XML node. */ void LivePathEffectObject::build(SPDocument *document, Inkscape::XML::Node *repr) { - LivePathEffectObject* object = this; - - g_assert(object != NULL); - g_assert(SP_IS_OBJECT(object)); + g_assert(this != NULL); + g_assert(SP_IS_OBJECT(this)); SPObject::build(document, repr); - object->readAttr( "effect" ); + this->readAttr( "effect" ); if (repr) { - repr->addListener (&livepatheffect_repr_events, object); + repr->addListener (&livepatheffect_repr_events, this); } /* Register ourselves, is this necessary? */ @@ -80,12 +76,7 @@ void LivePathEffectObject::build(SPDocument *document, Inkscape::XML::Node *repr * Virtual release of livepatheffect members before destruction. */ void LivePathEffectObject::release() { - LivePathEffectObject* object = this; - - LivePathEffectObject *lpeobj = LIVEPATHEFFECT(object); - - object->getRepr()->removeListenerByData(object); - + this->getRepr()->removeListenerByData(this); /* if (object->document) { @@ -101,14 +92,14 @@ void LivePathEffectObject::release() { } gradient->modified_connection.~connection(); - */ - if (lpeobj->lpe) { - delete lpeobj->lpe; - lpeobj->lpe = NULL; + if (this->lpe) { + delete this->lpe; + this->lpe = NULL; } - lpeobj->effecttype = Inkscape::LivePathEffect::INVALID_LPE; + + this->effecttype = Inkscape::LivePathEffect::INVALID_LPE; SPObject::release(); } @@ -117,28 +108,27 @@ void LivePathEffectObject::release() { * Virtual set: set attribute to value. */ void LivePathEffectObject::set(unsigned key, gchar const *value) { - LivePathEffectObject* object = this; - - LivePathEffectObject *lpeobj = LIVEPATHEFFECT(object); #ifdef LIVEPATHEFFECT_VERBOSE g_print("Set livepatheffect"); #endif + switch (key) { case SP_PROP_PATH_EFFECT: - if (lpeobj->lpe) { - delete lpeobj->lpe; - lpeobj->lpe = NULL; + if (this->lpe) { + delete this->lpe; + this->lpe = NULL; } if ( value && Inkscape::LivePathEffect::LPETypeConverter.is_valid_key(value) ) { - lpeobj->effecttype = Inkscape::LivePathEffect::LPETypeConverter.get_id_from_key(value); - lpeobj->lpe = Inkscape::LivePathEffect::Effect::New(lpeobj->effecttype, lpeobj); - lpeobj->effecttype_set = true; + this->effecttype = Inkscape::LivePathEffect::LPETypeConverter.get_id_from_key(value); + this->lpe = Inkscape::LivePathEffect::Effect::New(this->effecttype, this); + this->effecttype_set = true; } else { - lpeobj->effecttype = Inkscape::LivePathEffect::INVALID_LPE; - lpeobj->effecttype_set = false; + this->effecttype = Inkscape::LivePathEffect::INVALID_LPE; + this->effecttype_set = false; } - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; } @@ -149,18 +139,14 @@ void LivePathEffectObject::set(unsigned key, gchar const *value) { * Virtual write: write object attributes to repr. */ Inkscape::XML::Node* LivePathEffectObject::write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { - LivePathEffectObject* object = this; - - LivePathEffectObject *lpeobj = LIVEPATHEFFECT(object); - if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { repr = xml_doc->createElement("inkscape:path-effect"); } - if ((flags & SP_OBJECT_WRITE_ALL) || lpeobj->lpe) { - repr->setAttribute("effect", Inkscape::LivePathEffect::LPETypeConverter.get_key(lpeobj->effecttype).c_str()); + if ((flags & SP_OBJECT_WRITE_ALL) || this->lpe) { + repr->setAttribute("effect", Inkscape::LivePathEffect::LPETypeConverter.get_key(this->effecttype).c_str()); - lpeobj->lpe->writeParamsToSVG(); + this->lpe->writeParamsToSVG(); } SPObject::write(xml_doc, repr, flags); diff --git a/src/live_effects/lpeobject.h b/src/live_effects/lpeobject.h index 28ed93f1a..534a12897 100644 --- a/src/live_effects/lpeobject.h +++ b/src/live_effects/lpeobject.h @@ -40,9 +40,9 @@ public: * So one should always check whether the returned value is NULL or not */ Inkscape::LivePathEffect::Effect * get_lpe() { return lpe; }; -//private: Inkscape::LivePathEffect::Effect *lpe; // this can be NULL in a valid LivePathEffectObject +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/object-snapper.h b/src/object-snapper.h index 31e1ee501..c0dab5c58 100644 --- a/src/object-snapper.h +++ b/src/object-snapper.h @@ -15,7 +15,7 @@ #include "splivarot.h" #include "snap-candidate.h" -struct SPNamedView; +class SPNamedView; class SPItem; class SPObject; diff --git a/src/persp3d.cpp b/src/persp3d.cpp index 5188821e8..a0e6f1c02 100644 --- a/src/persp3d.cpp +++ b/src/persp3d.cpp @@ -76,15 +76,13 @@ Persp3D::~Persp3D() { void Persp3D::build(SPDocument *document, Inkscape::XML::Node *repr) { SPObject::build(document, repr); - Persp3D* object = this; - - object->readAttr( "inkscape:vp_x" ); - object->readAttr( "inkscape:vp_y" ); - object->readAttr( "inkscape:vp_z" ); - object->readAttr( "inkscape:persp3d-origin" ); + this->readAttr( "inkscape:vp_x" ); + this->readAttr( "inkscape:vp_y" ); + this->readAttr( "inkscape:vp_z" ); + this->readAttr( "inkscape:persp3d-origin" ); if (repr) { - repr->addListener (&persp3d_repr_events, object); + repr->addListener (&persp3d_repr_events, this); } } @@ -92,11 +90,8 @@ void Persp3D::build(SPDocument *document, Inkscape::XML::Node *repr) { * Virtual release of Persp3D members before destruction. */ void Persp3D::release() { - Persp3D* object = this; - - Persp3D *persp = SP_PERSP3D(object); - delete persp->perspective_impl; - object->getRepr()->removeListenerByData(object); + delete this->perspective_impl; + this->getRepr()->removeListenerByData(this); } @@ -106,9 +101,7 @@ void Persp3D::release() { // FIXME: Currently we only read the finite positions of vanishing points; // should we move VPs into their own repr (as it's done for SPStop, e.g.)? void Persp3D::set(unsigned key, gchar const *value) { - Persp3D* object = this; - - Persp3DImpl *persp_impl = SP_PERSP3D(object)->perspective_impl; + Persp3DImpl *persp_impl = this->perspective_impl; switch (key) { case SP_ATTR_INKSCAPE_PERSP3D_VP_X: { @@ -223,9 +216,7 @@ Persp3D *persp3d_document_first_persp(SPDocument *document) * Virtual write: write object attributes to repr. */ Inkscape::XML::Node* Persp3D::write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { - Persp3D* object = this; - - Persp3DImpl *persp_impl = SP_PERSP3D(object)->perspective_impl; + Persp3DImpl *persp_impl = this->perspective_impl; if ((flags & SP_OBJECT_WRITE_BUILD & SP_OBJECT_WRITE_EXT) && !repr) { // this is where we end up when saving as plain SVG (also in other circumstances?); diff --git a/src/persp3d.h b/src/persp3d.h index 2ef467cc4..e0c742123 100644 --- a/src/persp3d.h +++ b/src/persp3d.h @@ -50,6 +50,7 @@ public: Persp3DImpl *perspective_impl; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/snap.h b/src/snap.h index 6a87d95cc..67af20063 100644 --- a/src/snap.h +++ b/src/snap.h @@ -31,7 +31,7 @@ enum SPGuideDragType { // used both here and in desktop-events.cpp }; class SPGuide; -struct SPNamedView; +class SPNamedView; /** * Class to coordinate snapping operations. diff --git a/src/sp-defs.cpp b/src/sp-defs.cpp index b60c830e6..334570076 100644 --- a/src/sp-defs.cpp +++ b/src/sp-defs.cpp @@ -41,15 +41,13 @@ void SPDefs::release() { } void SPDefs::update(SPCtx *ctx, guint flags) { - SPDefs* object = this; - if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; } flags &= SP_OBJECT_MODIFIED_CASCADE; - GSList *l = g_slist_reverse(object->childList(true)); + GSList *l = g_slist_reverse(this->childList(true)); while (l) { SPObject *child = SP_OBJECT(l->data); l = g_slist_remove(l, child); @@ -61,8 +59,6 @@ void SPDefs::update(SPCtx *ctx, guint flags) { } void SPDefs::modified(unsigned int flags) { - SPDefs* object = this; - if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; } @@ -70,7 +66,7 @@ void SPDefs::modified(unsigned int flags) { flags &= SP_OBJECT_MODIFIED_CASCADE; GSList *l = NULL; - for ( SPObject *child = object->firstChild() ; child; child = child->getNext() ) { + for ( SPObject *child = this->firstChild() ; child; child = child->getNext() ) { sp_object_ref(child); l = g_slist_prepend(l, child); } @@ -88,8 +84,6 @@ void SPDefs::modified(unsigned int flags) { } Inkscape::XML::Node* SPDefs::write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { - SPDefs* object = this; - if (flags & SP_OBJECT_WRITE_BUILD) { if (!repr) { @@ -97,7 +91,7 @@ Inkscape::XML::Node* SPDefs::write(Inkscape::XML::Document *xml_doc, Inkscape::X } GSList *l = NULL; - for ( SPObject *child = object->firstChild() ; child; child = child->getNext() ) { + for ( SPObject *child = this->firstChild() ; child; child = child->getNext() ) { Inkscape::XML::Node *crepr = child->updateRepr(xml_doc, NULL, flags); if (crepr) { l = g_slist_prepend(l, crepr); @@ -111,7 +105,7 @@ Inkscape::XML::Node* SPDefs::write(Inkscape::XML::Document *xml_doc, Inkscape::X } } else { - for ( SPObject *child = object->firstChild() ; child; child = child->getNext() ) { + for ( SPObject *child = this->firstChild() ; child; child = child->getNext() ) { child->updateRepr(flags); } } diff --git a/src/sp-defs.h b/src/sp-defs.h index ece6cd46a..415aa4cd2 100644 --- a/src/sp-defs.h +++ b/src/sp-defs.h @@ -23,6 +23,7 @@ public: SPDefs(); virtual ~SPDefs(); +protected: virtual void release(); virtual void update(SPCtx* ctx, unsigned int flags); virtual void modified(unsigned int flags); diff --git a/src/sp-desc.cpp b/src/sp-desc.cpp index c8e0f16e4..199ae0176 100644 --- a/src/sp-desc.cpp +++ b/src/sp-desc.cpp @@ -32,18 +32,15 @@ SPDesc::SPDesc() : SPObject() { SPDesc::~SPDesc() { } +/** + * Writes it's settings to an incoming repr object, if any. + */ Inkscape::XML::Node* SPDesc::write(Inkscape::XML::Document* doc, Inkscape::XML::Node* repr, guint flags) { - SPDesc* object = this; - if (!repr) { - repr = object->getRepr()->duplicate(doc); + repr = this->getRepr()->duplicate(doc); } SPObject::write(doc, repr, flags); return repr; } - -/** - * Writes it's settings to an incoming repr object, if any. - */ diff --git a/src/sp-desc.h b/src/sp-desc.h index 224e3eab1..ac8fc564f 100644 --- a/src/sp-desc.h +++ b/src/sp-desc.h @@ -22,6 +22,7 @@ public: SPDesc(); virtual ~SPDesc(); +protected: virtual Inkscape::XML::Node* write(Inkscape::XML::Document* doc, Inkscape::XML::Node* repr, guint flags); }; diff --git a/src/sp-filter-primitive.cpp b/src/sp-filter-primitive.cpp index bf264011a..f6b89bc21 100644 --- a/src/sp-filter-primitive.cpp +++ b/src/sp-filter-primitive.cpp @@ -29,9 +29,9 @@ // CPPIFY: Make pure virtual. -void SPFilterPrimitive::build_renderer(Inkscape::Filters::Filter* filter) { +//void SPFilterPrimitive::build_renderer(Inkscape::Filters::Filter* filter) { // throw; -} +//} SPFilterPrimitive::SPFilterPrimitive() : SPObject() { this->image_in = Inkscape::Filters::NR_FILTER_SLOT_NOT_SET; diff --git a/src/sp-filter-primitive.h b/src/sp-filter-primitive.h index fbb4dbe29..1026937ff 100644 --- a/src/sp-filter-primitive.h +++ b/src/sp-filter-primitive.h @@ -36,6 +36,7 @@ public: /* filter primitive subregion */ SVGLength x, y, height, width; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); @@ -45,7 +46,8 @@ public: virtual Inkscape::XML::Node* write(Inkscape::XML::Document* doc, Inkscape::XML::Node* repr, guint flags); - virtual void build_renderer(Inkscape::Filters::Filter* filter); +public: + virtual void build_renderer(Inkscape::Filters::Filter* filter) = 0; }; /* Common initialization for filter primitives */ diff --git a/src/sp-filter-reference.h b/src/sp-filter-reference.h index 7a335aed4..5901dca07 100644 --- a/src/sp-filter-reference.h +++ b/src/sp-filter-reference.h @@ -5,7 +5,7 @@ class SPObject; class SPDocument; -struct SPFilter; +class SPFilter; class SPFilterReference : public Inkscape::URIReference { public: diff --git a/src/sp-filter.cpp b/src/sp-filter.cpp index 2a566efa2..91389bf7d 100644 --- a/src/sp-filter.cpp +++ b/src/sp-filter.cpp @@ -51,7 +51,12 @@ namespace { bool filterRegistered = SPFactory::instance().registerObject("svg:filter", createFilter); } -SPFilter::SPFilter() : SPObject() { +SPFilter::SPFilter() + : SPObject(), filterUnits(SP_FILTER_UNITS_OBJECTBOUNDINGBOX), filterUnits_set(FALSE), + primitiveUnits(SP_FILTER_UNITS_USERSPACEONUSE), primitiveUnits_set(FALSE), + filterRes(NumberOptNumber()), + _renderer(NULL), _image_name(new std::map), _image_number_next(0) +{ this->href = new SPFilterReference(this); this->href->changedSignal().connect(sigc::bind(sigc::ptr_fun(filter_ref_changed), this)); @@ -60,20 +65,7 @@ SPFilter::SPFilter() : SPObject() { this->width = 0; this->height = 0; - this->filterUnits = SP_FILTER_UNITS_OBJECTBOUNDINGBOX; - this->primitiveUnits = SP_FILTER_UNITS_USERSPACEONUSE; - this->filterUnits_set = FALSE; - this->primitiveUnits_set = FALSE; - - this->_renderer = NULL; - - this->_image_name = new std::map; this->_image_name->clear(); - this->_image_number_next = 0; - - this->filterRes = NumberOptNumber(); - - new (&this->modified_connection) sigc::connection(); } SPFilter::~SPFilter() { @@ -86,49 +78,43 @@ SPFilter::~SPFilter() { * sp-object-repr.cpp's repr_name_entries array. */ void SPFilter::build(SPDocument *document, Inkscape::XML::Node *repr) { - SPFilter* object = this; - //Read values of key attributes from XML nodes into object. - object->readAttr( "style" ); // struct not derived from SPItem, we need to do this ourselves. - object->readAttr( "filterUnits" ); - object->readAttr( "primitiveUnits" ); - object->readAttr( "x" ); - object->readAttr( "y" ); - object->readAttr( "width" ); - object->readAttr( "height" ); - object->readAttr( "filterRes" ); - object->readAttr( "xlink:href" ); + this->readAttr( "style" ); // struct not derived from SPItem, we need to do this ourselves. + this->readAttr( "filterUnits" ); + this->readAttr( "primitiveUnits" ); + this->readAttr( "x" ); + this->readAttr( "y" ); + this->readAttr( "width" ); + this->readAttr( "height" ); + this->readAttr( "filterRes" ); + this->readAttr( "xlink:href" ); SPObject::build(document, repr); //is this necessary? - document->addResource("filter", object); + document->addResource("filter", this); } /** * Drops any allocated memory. */ void SPFilter::release() { - SPFilter* object = this; - SPFilter *filter = SP_FILTER(object); - - if (object->document) { + if (this->document) { // Unregister ourselves - object->document->removeResource("filter", object); + this->document->removeResource("filter", this); } //TODO: release resources here //release href - if (filter->href) { - filter->modified_connection.disconnect(); - filter->href->detach(); - delete filter->href; - filter->href = NULL; + if (this->href) { + this->modified_connection.disconnect(); + this->href->detach(); + delete this->href; + this->href = NULL; } - filter->modified_connection.~connection(); - delete filter->_image_name; + delete this->_image_name; SPObject::release(); } @@ -137,68 +123,69 @@ void SPFilter::release() { * Sets a specific value in the SPFilter. */ void SPFilter::set(unsigned int key, gchar const *value) { - SPFilter* object = this; - SPFilter *filter = SP_FILTER(object); - switch (key) { case SP_ATTR_FILTERUNITS: if (value) { if (!strcmp(value, "userSpaceOnUse")) { - filter->filterUnits = SP_FILTER_UNITS_USERSPACEONUSE; + this->filterUnits = SP_FILTER_UNITS_USERSPACEONUSE; } else { - filter->filterUnits = SP_FILTER_UNITS_OBJECTBOUNDINGBOX; + this->filterUnits = SP_FILTER_UNITS_OBJECTBOUNDINGBOX; } - filter->filterUnits_set = TRUE; + + this->filterUnits_set = TRUE; } else { - filter->filterUnits = SP_FILTER_UNITS_OBJECTBOUNDINGBOX; - filter->filterUnits_set = FALSE; + this->filterUnits = SP_FILTER_UNITS_OBJECTBOUNDINGBOX; + this->filterUnits_set = FALSE; } - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_PRIMITIVEUNITS: if (value) { if (!strcmp(value, "objectBoundingBox")) { - filter->primitiveUnits = SP_FILTER_UNITS_OBJECTBOUNDINGBOX; + this->primitiveUnits = SP_FILTER_UNITS_OBJECTBOUNDINGBOX; } else { - filter->primitiveUnits = SP_FILTER_UNITS_USERSPACEONUSE; + this->primitiveUnits = SP_FILTER_UNITS_USERSPACEONUSE; } - filter->primitiveUnits_set = TRUE; + + this->primitiveUnits_set = TRUE; } else { - filter->primitiveUnits = SP_FILTER_UNITS_USERSPACEONUSE; - filter->primitiveUnits_set = FALSE; + this->primitiveUnits = SP_FILTER_UNITS_USERSPACEONUSE; + this->primitiveUnits_set = FALSE; } - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_X: - filter->x.readOrUnset(value); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->x.readOrUnset(value); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_Y: - filter->y.readOrUnset(value); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->y.readOrUnset(value); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_WIDTH: - filter->width.readOrUnset(value); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->width.readOrUnset(value); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_HEIGHT: - filter->height.readOrUnset(value); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->height.readOrUnset(value); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_FILTERRES: - filter->filterRes.set(value); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->filterRes.set(value); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_XLINK_HREF: if (value) { try { - filter->href->attach(Inkscape::URI(value)); + this->href->attach(Inkscape::URI(value)); } catch (Inkscape::BadURIException &e) { g_warning("%s", e.what()); - filter->href->detach(); + this->href->detach(); } } else { - filter->href->detach(); + this->href->detach(); } break; default: @@ -212,8 +199,6 @@ void SPFilter::set(unsigned int key, gchar const *value) { * Receives update notifications. */ void SPFilter::update(SPCtx *ctx, guint flags) { - //SPFilter *filter = SP_FILTER(object); - if (flags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG)) { @@ -228,34 +213,34 @@ void SPFilter::update(SPCtx *ctx, guint flags) { * Writes its settings to an incoming repr object, if any. */ Inkscape::XML::Node* SPFilter::write(Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) { - SPFilter* object = this; - SPFilter *filter = SP_FILTER(object); - // Original from sp-item-group.cpp if (flags & SP_OBJECT_WRITE_BUILD) { if (!repr) { - repr = doc->createElement("svg:filter"); + repr = doc->createElement("svg:this"); } + GSList *l = NULL; - for ( SPObject *child = object->firstChild(); child; child = child->getNext() ) { + for ( SPObject *child = this->firstChild(); child; child = child->getNext() ) { Inkscape::XML::Node *crepr = child->updateRepr(doc, NULL, flags); + if (crepr) { l = g_slist_prepend (l, crepr); } } + while (l) { repr->addChild((Inkscape::XML::Node *) l->data, NULL); Inkscape::GC::release((Inkscape::XML::Node *) l->data); l = g_slist_remove (l, l->data); } } else { - for ( SPObject *child = object->firstChild() ; child; child = child->getNext() ) { + for ( SPObject *child = this->firstChild() ; child; child = child->getNext() ) { child->updateRepr(flags); } } - if ((flags & SP_OBJECT_WRITE_ALL) || filter->filterUnits_set) { - switch (filter->filterUnits) { + if ((flags & SP_OBJECT_WRITE_ALL) || this->filterUnits_set) { + switch (this->filterUnits) { case SP_FILTER_UNITS_USERSPACEONUSE: repr->setAttribute("filterUnits", "userSpaceOnUse"); break; @@ -265,8 +250,8 @@ Inkscape::XML::Node* SPFilter::write(Inkscape::XML::Document *doc, Inkscape::XML } } - if ((flags & SP_OBJECT_WRITE_ALL) || filter->primitiveUnits_set) { - switch (filter->primitiveUnits) { + if ((flags & SP_OBJECT_WRITE_ALL) || this->primitiveUnits_set) { + switch (this->primitiveUnits) { case SP_FILTER_UNITS_OBJECTBOUNDINGBOX: repr->setAttribute("primitiveUnits", "objectBoundingBox"); break; @@ -276,40 +261,40 @@ Inkscape::XML::Node* SPFilter::write(Inkscape::XML::Document *doc, Inkscape::XML } } - if (filter->x._set) { - sp_repr_set_svg_double(repr, "x", filter->x.computed); + if (this->x._set) { + sp_repr_set_svg_double(repr, "x", this->x.computed); } else { repr->setAttribute("x", NULL); } - if (filter->y._set) { - sp_repr_set_svg_double(repr, "y", filter->y.computed); + if (this->y._set) { + sp_repr_set_svg_double(repr, "y", this->y.computed); } else { repr->setAttribute("y", NULL); } - if (filter->width._set) { - sp_repr_set_svg_double(repr, "width", filter->width.computed); + if (this->width._set) { + sp_repr_set_svg_double(repr, "width", this->width.computed); } else { repr->setAttribute("width", NULL); } - if (filter->height._set) { - sp_repr_set_svg_double(repr, "height", filter->height.computed); + if (this->height._set) { + sp_repr_set_svg_double(repr, "height", this->height.computed); } else { repr->setAttribute("height", NULL); } - if (filter->filterRes.getNumber()>=0) { - gchar *tmp = filter->filterRes.getValueString(); + if (this->filterRes.getNumber()>=0) { + gchar *tmp = this->filterRes.getValueString(); repr->setAttribute("filterRes", tmp); g_free(tmp); } else { repr->setAttribute("filterRes", NULL); } - if (filter->href->getURI()) { - gchar *uri_string = filter->href->getURI()->toString(); + if (this->href->getURI()) { + gchar *uri_string = this->href->getURI()->toString(); repr->setAttribute("xlink:href", uri_string); g_free(uri_string); } @@ -329,6 +314,7 @@ filter_ref_changed(SPObject *old_ref, SPObject *ref, SPFilter *filter) if (old_ref) { filter->modified_connection.disconnect(); } + if ( SP_IS_FILTER(ref) && ref != filter ) { @@ -348,24 +334,18 @@ static void filter_ref_modified(SPObject */*href*/, guint /*flags*/, SPFilter *f * Callback for child_added event. */ void SPFilter::child_added(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { - SPFilter* object = this; - //SPFilter *f = SP_FILTER(object); - SPObject::child_added(child, ref); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } /** * Callback for remove_child event. */ void SPFilter::remove_child(Inkscape::XML::Node *child) { - SPFilter* object = this; - // SPFilter *f = SP_FILTER(object); - SPObject::remove_child(child); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } void sp_filter_build_renderer(SPFilter *sp_filter, Inkscape::Filters::Filter *nr_filter) diff --git a/src/sp-filter.h b/src/sp-filter.h index 8af400367..e1e56be2c 100644 --- a/src/sp-filter.h +++ b/src/sp-filter.h @@ -33,7 +33,7 @@ class Filter; } } class SPFilterReference; -struct SPFilterPrimitive; +class SPFilterPrimitive; struct ltstr { bool operator()(const char* s1, const char* s2) const; @@ -61,6 +61,7 @@ public: std::map* _image_name; int _image_number_next; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/sp-gradient.h b/src/sp-gradient.h index 8a03d59e6..27a652377 100644 --- a/src/sp-gradient.h +++ b/src/sp-gradient.h @@ -39,7 +39,7 @@ //struct SPMeshGradient; class SPGradientReference; -struct SPStop; +class SPStop; #define SP_GRADIENT(obj) ((SPGradient*)obj) #define SP_IS_GRADIENT(obj) (dynamic_cast((SPObject*)obj)) diff --git a/src/sp-mesh-array.h b/src/sp-mesh-array.h index 5a852f003..b10974e7e 100644 --- a/src/sp-mesh-array.h +++ b/src/sp-mesh-array.h @@ -127,7 +127,7 @@ public: void setOpacity( guint i, gdouble o ); }; -struct SPMeshGradient; +class SPMeshGradient; // An array of mesh nodes. class SPMeshNodeArray { diff --git a/src/sp-object.cpp b/src/sp-object.cpp index 08ed9fc8d..95a28dd7b 100644 --- a/src/sp-object.cpp +++ b/src/sp-object.cpp @@ -104,44 +104,25 @@ public: static gchar *sp_object_get_unique_id(SPObject *object, gchar const *defid); -SPObject::SPObject() { +SPObject::SPObject() + : cloned(0), uflags(0), mflags(0), hrefcount(0), _total_hrefcount(0), + document(NULL), parent(NULL), children(NULL), _last_child(NULL), + next(NULL), id(NULL), repr(NULL), refCount(1), + _successor(NULL), _collection_policy(SPObject::COLLECT_WITH_PARENT), + _label(NULL), _default_label(NULL) +{ debug("id=%x, typename=%s",this, g_type_name_from_instance((GTypeInstance*)object)); - this->refCount = 1; - - this->repr = NULL; - this->mflags = 0; - this->id = NULL; - this->cloned = 0; - this->uflags = 0; - - this->hrefcount = 0; - this->_total_hrefcount = 0; - this->document = NULL; - this->children = this->_last_child = NULL; - this->parent = this->next = NULL; - //used XML Tree here. this->getRepr(); // TODO check why this call is made SPObjectImpl::setIdNull(this); - this->_collection_policy = SPObject::COLLECT_WITH_PARENT; - - //new (&this->_release_signal) sigc::signal(); - //new (&this->_modified_signal) sigc::signal(); - //new (&this->_delete_signal) sigc::signal(); - //new (&this->_position_changed_signal) sigc::signal(); - this->_successor = NULL; - // FIXME: now we create style for all objects, but per SVG, only the following can have style attribute: // vg, g, defs, desc, title, symbol, use, image, switch, path, rect, circle, ellipse, line, polyline, // polygon, text, tspan, tref, textPath, altGlyph, glyphRef, marker, linearGradient, radialGradient, // stop, pattern, clipPath, mask, filter, feImage, a, font, glyph, missing-glyph, foreignObject this->style = sp_style_new_from_object(this); - - this->_label = NULL; - this->_default_label = NULL; } SPObject::~SPObject() { @@ -155,11 +136,6 @@ SPObject::~SPObject() { sp_object_unref(this->_successor, NULL); this->_successor = NULL; } - - //this->_release_signal.~signal(); - //this->_modified_signal.~signal(); - //this->_delete_signal.~signal(); - //this->_position_changed_signal.~signal(); } // CPPIFY: make pure virtual @@ -209,34 +185,6 @@ public: } - - - - - -//#include -//#include -// -//void log_exception(std::exception_ptr exception) { -// try { -// std::rethrow_exception(exception); -// } catch (const std::exception& e) { -// std::cerr << "Caught Exception of type " << std::string(typeid(e).name()) << '\n'; -// std::cerr << "Message: " << std::string(e.what()) << '\n'; -// -// try { -// std::rethrow_if_nested(e); -// } catch (...) { -// std::cerr << "Inner Exception: \n"; -// log_exception(std::current_exception()); -// } -// } -//} - - - - - gchar const* SPObject::getId() const { return id; } diff --git a/src/sp-paint-server-reference.h b/src/sp-paint-server-reference.h index 5561af1a3..e08694c2f 100644 --- a/src/sp-paint-server-reference.h +++ b/src/sp-paint-server-reference.h @@ -18,7 +18,7 @@ #include "sp-object.h" #include "uri-references.h" -struct SPPaintServer; +class SPPaintServer; class SPPaintServerReference : public Inkscape::URIReference { public: diff --git a/src/sp-pattern.h b/src/sp-pattern.h index a2cef6068..78bd1549a 100644 --- a/src/sp-pattern.h +++ b/src/sp-pattern.h @@ -20,7 +20,7 @@ #define SP_PATTERN(obj) ((SPPattern*)obj) #define SP_IS_PATTERN(obj) (dynamic_cast((SPObject*)obj)) -struct SPPatternReference; +class SPPatternReference; #include "svg/svg-length.h" #include "sp-paint-server.h" diff --git a/src/trace/trace.h b/src/trace/trace.h index 9f9f44b14..662b2537e 100644 --- a/src/trace/trace.h +++ b/src/trace/trace.h @@ -26,7 +26,7 @@ #include #include -struct SPImage; +class SPImage; class SPItem; namespace Inkscape { diff --git a/src/ui/dialog/svg-fonts-dialog.h b/src/ui/dialog/svg-fonts-dialog.h index 01f70654a..e5c4631e4 100644 --- a/src/ui/dialog/svg-fonts-dialog.h +++ b/src/ui/dialog/svg-fonts-dialog.h @@ -34,8 +34,8 @@ class HScale; #endif } -struct SPGlyph; -struct SPGlyphKerning; +class SPGlyph; +class SPGlyphKerning; class SvgFont; class SvgFontDrawingArea : Gtk::DrawingArea{ @@ -52,7 +52,7 @@ private: bool on_expose_event (GdkEventExpose *event); }; -struct SPFont; +class SPFont; namespace Inkscape { namespace UI { diff --git a/src/ui/tool/control-point.h b/src/ui/tool/control-point.h index 27a0f8074..30efe8a27 100644 --- a/src/ui/tool/control-point.h +++ b/src/ui/tool/control-point.h @@ -23,7 +23,7 @@ #include "enums.h" class SPDesktop; -struct SPEventContext; +class SPEventContext; namespace Inkscape { namespace UI { diff --git a/src/ui/view/view-widget.h b/src/ui/view/view-widget.h index 295e7932b..668f9d19a 100644 --- a/src/ui/view/view-widget.h +++ b/src/ui/view/view-widget.h @@ -23,7 +23,7 @@ class View; } // namespace Inkscape class SPViewWidget; -struct SPNamedView; +class SPNamedView; #define SP_TYPE_VIEW_WIDGET (sp_view_widget_get_type ()) #define SP_VIEW_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SP_TYPE_VIEW_WIDGET, SPViewWidget)) diff --git a/src/widgets/gradient-vector.h b/src/widgets/gradient-vector.h index 64e40a35b..b63120a6e 100644 --- a/src/widgets/gradient-vector.h +++ b/src/widgets/gradient-vector.h @@ -40,7 +40,7 @@ class SPDocument; class SPObject; class SPGradient; -struct SPStop; +class SPStop; struct SPGradientVectorSelector { GtkVBox vbox; diff --git a/src/widgets/paint-selector.h b/src/widgets/paint-selector.h index a66758434..d3b3f4116 100644 --- a/src/widgets/paint-selector.h +++ b/src/widgets/paint-selector.h @@ -22,7 +22,7 @@ class SPGradient; class SPDesktop; -struct SPPattern; +class SPPattern; struct SPStyle; #define SP_TYPE_PAINT_SELECTOR (sp_paint_selector_get_type ()) diff --git a/src/widgets/toolbox.h b/src/widgets/toolbox.h index 9c839a8fe..d520d393d 100644 --- a/src/widgets/toolbox.h +++ b/src/widgets/toolbox.h @@ -23,7 +23,7 @@ #define TOOLBAR_SLIDER_HINT "full" class SPDesktop; -struct SPEventContext; +class SPEventContext; namespace Inkscape { namespace UI { -- cgit v1.2.3 From 127543bae3c0a76770e197c7058a783dea18fe3e Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Wed, 31 Jul 2013 23:23:10 +0200 Subject: Removed placement news / explicit destructor calls. (bzr r11608.1.113) --- src/sp-flowregion.cpp | 4 ++-- src/sp-flowtext.cpp | 4 ++-- src/sp-gradient.cpp | 4 ++-- src/sp-item-group.cpp | 4 ++-- src/sp-item.cpp | 2 +- src/sp-namedview.cpp | 2 +- src/sp-pattern.cpp | 4 ++-- src/sp-string.cpp | 4 ++-- src/sp-text.cpp | 8 ++++---- src/sp-tref.cpp | 12 ++++++------ src/sp-tspan.cpp | 8 ++++---- src/sp-use.cpp | 12 ++++++------ 12 files changed, 34 insertions(+), 34 deletions(-) diff --git a/src/sp-flowregion.cpp b/src/sp-flowregion.cpp index fab4c1f23..3a0aef6be 100644 --- a/src/sp-flowregion.cpp +++ b/src/sp-flowregion.cpp @@ -42,7 +42,7 @@ static void GetDest(SPObject* child,Shape **computed); SPFlowregion::SPFlowregion() : SPItem() { - new (&this->computed) std::vector; + //new (&this->computed) std::vector; } SPFlowregion::~SPFlowregion() { @@ -50,7 +50,7 @@ SPFlowregion::~SPFlowregion() { delete *it; } - this->computed.~vector(); + //this->computed.~vector(); } void SPFlowregion::child_added(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { diff --git a/src/sp-flowtext.cpp b/src/sp-flowtext.cpp index 4ee0a64b1..c7ef579ac 100644 --- a/src/sp-flowtext.cpp +++ b/src/sp-flowtext.cpp @@ -45,11 +45,11 @@ namespace { SPFlowtext::SPFlowtext() : SPItem() { this->par_indent = 0; - new (&this->layout) Inkscape::Text::Layout(); + //new (&this->layout) Inkscape::Text::Layout(); } SPFlowtext::~SPFlowtext() { - this->layout.~Layout(); + //this->layout.~Layout(); } void SPFlowtext::child_added(Inkscape::XML::Node* child, Inkscape::XML::Node* ref) { diff --git a/src/sp-gradient.cpp b/src/sp-gradient.cpp index 2cdf2198f..adfff3609 100644 --- a/src/sp-gradient.cpp +++ b/src/sp-gradient.cpp @@ -170,7 +170,7 @@ SPGradient::SPGradient() : SPPaintServer(), units(), this->vector.built = false; this->vector.stops.clear(); - new (&this->modified_connection) sigc::connection(); + //new (&this->modified_connection) sigc::connection(); } SPGradient::~SPGradient() { @@ -227,7 +227,7 @@ void SPGradient::release() this->ref = NULL; } - this->modified_connection.~connection(); + //this->modified_connection.~connection(); SPPaintServer::release(); } diff --git a/src/sp-item-group.cpp b/src/sp-item-group.cpp index 7044f2f7f..36a42f704 100644 --- a/src/sp-item-group.cpp +++ b/src/sp-item-group.cpp @@ -67,11 +67,11 @@ namespace { SPGroup::SPGroup() : SPLPEItem() { this->_layer_mode = SPGroup::GROUP; - new (&this->_display_modes) std::map(); + //new (&this->_display_modes) std::map(); } SPGroup::~SPGroup() { - this->_display_modes.~map(); + //this->_display_modes.~map(); } void SPGroup::build(SPDocument *document, Inkscape::XML::Node *repr) { diff --git a/src/sp-item.cpp b/src/sp-item.cpp index f313ed7c1..9e44bda38 100644 --- a/src/sp-item.cpp +++ b/src/sp-item.cpp @@ -418,7 +418,7 @@ void SPItem::release() { item->display = sp_item_view_list_remove(item->display, item->display); } - item->_transformed_signal.~signal(); + //item->_transformed_signal.~signal(); } void SPItem::set(unsigned int key, gchar const* value) { diff --git a/src/sp-namedview.cpp b/src/sp-namedview.cpp index e05ce7fd2..452c640b3 100644 --- a/src/sp-namedview.cpp +++ b/src/sp-namedview.cpp @@ -286,7 +286,7 @@ void SPNamedView::release() { SPObjectGroup::release(); - namedview->snap_manager.~SnapManager(); + //namedview->snap_manager.~SnapManager(); } void SPNamedView::set(unsigned int key, const gchar* value) { diff --git a/src/sp-pattern.cpp b/src/sp-pattern.cpp index 34063cb16..1aec904ae 100644 --- a/src/sp-pattern.cpp +++ b/src/sp-pattern.cpp @@ -75,7 +75,7 @@ SPPattern::SPPattern() : SPPaintServer() { this->viewBox_set = FALSE; - new (&this->modified_connection) sigc::connection(); + //new (&this->modified_connection) sigc::connection(); } SPPattern::~SPPattern() { @@ -111,7 +111,7 @@ void SPPattern::release() { this->ref = NULL; } - this->modified_connection.~connection(); + //this->modified_connection.~connection(); SPPaintServer::release(); } diff --git a/src/sp-string.cpp b/src/sp-string.cpp index 690903ce8..a826d182d 100644 --- a/src/sp-string.cpp +++ b/src/sp-string.cpp @@ -47,7 +47,7 @@ namespace { #####################################################*/ SPString::SPString() : SPObject() { - new (&this->string) Glib::ustring(); + //new (&this->string) Glib::ustring(); } SPString::~SPString() { @@ -64,7 +64,7 @@ void SPString::release() { SPString* object = this; SPString *string = SP_STRING(object); - string->string.~ustring(); + //string->string.~ustring(); SPObject::release(); } diff --git a/src/sp-text.cpp b/src/sp-text.cpp index 89d1f6510..3771238e0 100644 --- a/src/sp-text.cpp +++ b/src/sp-text.cpp @@ -72,8 +72,8 @@ namespace { # SPTEXT #####################################################*/ SPText::SPText() : SPItem() { - new (&this->layout) Inkscape::Text::Layout; - new (&this->attributes) TextTagAttributes; + //new (&this->layout) Inkscape::Text::Layout; + //new (&this->attributes) TextTagAttributes; } SPText::~SPText() { @@ -92,8 +92,8 @@ void SPText::build(SPDocument *doc, Inkscape::XML::Node *repr) { } void SPText::release() { - this->attributes.~TextTagAttributes(); - this->layout.~Layout(); + //this->attributes.~TextTagAttributes(); + //this->layout.~Layout(); SPItem::release(); } diff --git a/src/sp-tref.cpp b/src/sp-tref.cpp index 87e8498f3..97c446c33 100644 --- a/src/sp-tref.cpp +++ b/src/sp-tref.cpp @@ -64,12 +64,12 @@ static void sp_tref_delete_self(SPObject *deleted, SPTRef *self); SPTRef::SPTRef() : SPItem() { this->stringChild = NULL; - new (&this->attributes) TextTagAttributes; + //new (&this->attributes) TextTagAttributes; this->href = NULL; this->uriOriginalRef = new SPTRefReference(this); - new (&this->_delete_connection) sigc::connection(); - new (&this->_changed_connection) sigc::connection(); + //new (&this->_delete_connection) sigc::connection(); + //new (&this->_changed_connection) sigc::connection(); this->_changed_connection = this->uriOriginalRef->changedSignal().connect(sigc::bind(sigc::ptr_fun(sp_tref_href_changed), this)); @@ -78,8 +78,8 @@ SPTRef::SPTRef() : SPItem() { SPTRef::~SPTRef() { delete this->uriOriginalRef; - this->_delete_connection.~connection(); - this->_changed_connection.~connection(); + //this->_delete_connection.~connection(); + //this->_changed_connection.~connection(); } void SPTRef::build(SPDocument *document, Inkscape::XML::Node *repr) { @@ -94,7 +94,7 @@ void SPTRef::build(SPDocument *document, Inkscape::XML::Node *repr) { } void SPTRef::release() { - this->attributes.~TextTagAttributes(); + //this->attributes.~TextTagAttributes(); this->_delete_connection.disconnect(); this->_changed_connection.disconnect(); diff --git a/src/sp-tspan.cpp b/src/sp-tspan.cpp index 41afb1761..00cdf5722 100644 --- a/src/sp-tspan.cpp +++ b/src/sp-tspan.cpp @@ -63,7 +63,7 @@ namespace { #####################################################*/ SPTSpan::SPTSpan() : SPItem() { this->role = SP_TSPAN_ROLE_UNSPECIFIED; - new (&this->attributes) TextTagAttributes; + //new (&this->attributes) TextTagAttributes; } SPTSpan::~SPTSpan() { @@ -81,7 +81,7 @@ void SPTSpan::build(SPDocument *doc, Inkscape::XML::Node *repr) { } void SPTSpan::release() { - this->attributes.~TextTagAttributes(); + //this->attributes.~TextTagAttributes(); SPItem::release(); } @@ -227,7 +227,7 @@ gchar* SPTSpan::description() { void refresh_textpath_source(SPTextPath* offset); SPTextPath::SPTextPath() : SPItem() { - new (&this->attributes) TextTagAttributes; + //new (&this->attributes) TextTagAttributes; this->startOffset._set = false; this->originalPath = NULL; @@ -271,7 +271,7 @@ void SPTextPath::build(SPDocument *doc, Inkscape::XML::Node *repr) { } void SPTextPath::release() { - this->attributes.~TextTagAttributes(); + //this->attributes.~TextTagAttributes(); if (this->originalPath) { delete this->originalPath; diff --git a/src/sp-use.cpp b/src/sp-use.cpp index d923410c8..3822527a3 100644 --- a/src/sp-use.cpp +++ b/src/sp-use.cpp @@ -60,10 +60,10 @@ SPUse::SPUse() : SPItem() { this->height.unset(SVGLength::PERCENT, 1.0, 1.0); this->href = NULL; - new (&this->_delete_connection) sigc::connection(); - new (&this->_changed_connection) sigc::connection(); + //new (&this->_delete_connection) sigc::connection(); + //new (&this->_changed_connection) sigc::connection(); - new (&this->_transformed_connection) sigc::connection(); + //new (&this->_transformed_connection) sigc::connection(); this->ref = new SPUseReference(this); @@ -80,10 +80,10 @@ SPUse::~SPUse() { delete this->ref; this->ref = 0; - this->_delete_connection.~connection(); - this->_changed_connection.~connection(); + //this->_delete_connection.~connection(); + //this->_changed_connection.~connection(); - this->_transformed_connection.~connection(); + //this->_transformed_connection.~connection(); } void SPUse::build(SPDocument *document, Inkscape::XML::Node *repr) { -- cgit v1.2.3 From f1cdb3b3f47c7187d9325e8ddd8e630268dc8e8b Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Wed, 31 Jul 2013 18:33:03 -0400 Subject: Eliminate "unit-constants.h". (bzr r12380.1.54) --- src/CMakeLists.txt | 1 - src/Makefile_insert | 1 - src/document.cpp | 4 +- src/doxygen-main.cpp | 2 +- src/extension/internal/cairo-render-context.cpp | 5 +-- src/extension/internal/cairo-renderer-pdf-out.cpp | 4 +- src/extension/internal/cairo-renderer.cpp | 18 ++++----- src/extension/internal/emf-win32-inout.cpp | 1 - src/extension/internal/emf-win32-print.cpp | 2 - src/extension/internal/gdkpixbuf-input.cpp | 4 +- src/extension/internal/latex-pstricks.cpp | 6 +-- src/extension/internal/latex-text-renderer.cpp | 4 +- src/extension/internal/pdfinput/pdf-parser.cpp | 8 ++-- src/extension/internal/pdfinput/svg-builder.cpp | 4 +- src/helper/pixbuf-ops.cpp | 4 +- src/main.cpp | 12 +++--- src/selection-chemistry.cpp | 14 +++---- src/sp-text.cpp | 1 - src/style.cpp | 32 +++++++-------- src/svg/svg-length.cpp | 14 +++---- src/text-editing.cpp | 12 +++--- src/ui/clipboard.cpp | 8 ++-- src/ui/dialog/export.cpp | 7 ++-- src/ui/dialog/inkscape-preferences.cpp | 8 ++-- src/ui/dialog/print.cpp | 12 +++--- src/ui/dialog/text-edit.cpp | 4 +- src/ui/widget/rendering-options.cpp | 6 +-- src/unit-constants.h | 47 ----------------------- src/widgets/font-selector.cpp | 1 - 29 files changed, 95 insertions(+), 151 deletions(-) delete mode 100644 src/unit-constants.h diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 537e13200..4f7592119 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -481,7 +481,6 @@ set(inkscape_SRC unclump.h undo-stack-observer.h unicoderange.h - unit-constants.h uri-references.h uri.h vanishing-point.h diff --git a/src/Makefile_insert b/src/Makefile_insert index ff64dc183..429c725cd 100644 --- a/src/Makefile_insert +++ b/src/Makefile_insert @@ -250,7 +250,6 @@ ink_common_sources += \ unclump.cpp unclump.h \ undo-stack-observer.h \ unicoderange.cpp unicoderange.h \ - unit-constants.h \ uri.cpp uri.h \ uri-references.cpp uri-references.h \ vanishing-point.cpp vanishing-point.h \ diff --git a/src/document.cpp b/src/document.cpp index a024cc790..afd0a6ddc 100644 --- a/src/document.cpp +++ b/src/document.cpp @@ -62,7 +62,7 @@ #include "sp-object-repr.h" #include "sp-symbol.h" #include "transf_mat_3x4.h" -#include "unit-constants.h" +#include "util/units.h" #include "xml/repr.h" #include "xml/rebase-hrefs.h" #include "libcroco/cr-cascade.h" @@ -966,7 +966,7 @@ void SPDocument::setupViewport(SPItemCtx *ctx) if (root->viewBox_set) { // if set, take from viewBox ctx->viewport = root->viewBox; } else { // as a last resort, set size to A4 - ctx->viewport = Geom::Rect::from_xywh(0, 0, 210 * PX_PER_MM, 297 * PX_PER_MM); + ctx->viewport = Geom::Rect::from_xywh(0, 0, 210 * Inkscape::Util::Quantity::convert(1, "mm", "px"), 297 * Inkscape::Util::Quantity::convert(1, "mm", "px")); } ctx->i2vp = Geom::identity(); } diff --git a/src/doxygen-main.cpp b/src/doxygen-main.cpp index 42eb5dd13..a1d3f3604 100644 --- a/src/doxygen-main.cpp +++ b/src/doxygen-main.cpp @@ -348,7 +348,7 @@ namespace XML {} * Inkscape::Whiteboard::UndoStackObserver [\ref undo-stack-observer.cpp, \ref composite-undo-stack-observer.cpp] * [\ref document-undo.cpp] * - * {\ref dialogs/} [\ref decimal-round.h] [\ref enums.h] [\ref unit-constants.h] + * {\ref dialogs/} [\ref decimal-round.h] [\ref enums.h] */ diff --git a/src/extension/internal/cairo-render-context.cpp b/src/extension/internal/cairo-render-context.cpp index d7a560f04..09b769229 100644 --- a/src/extension/internal/cairo-render-context.cpp +++ b/src/extension/internal/cairo-render-context.cpp @@ -44,12 +44,11 @@ #include "sp-pattern.h" #include "sp-mask.h" #include "sp-clippath.h" +#include "util/units.h" #ifdef WIN32 #include "libnrtype/FontFactory.h" // USE_PANGO_WIN32 #endif -#include - #include "cairo-render-context.h" #include "cairo-renderer.h" #include "extension/system.h" @@ -855,7 +854,7 @@ CairoRenderContext::_finishSurfaceSetup(cairo_surface_t *surface, cairo_matrix_t _surface = surface; if (_vector_based_target) { - cairo_scale(_cr, PT_PER_PX, PT_PER_PX); + cairo_scale(_cr, Inkscape::Util::Quantity::convert(1, "px", "pt"), Inkscape::Util::Quantity::convert(1, "px", "pt")); } else if (cairo_surface_get_content(_surface) != CAIRO_CONTENT_ALPHA) { // set background color on non-alpha surfaces // TODO: bgcolor should be derived from SPDocument diff --git a/src/extension/internal/cairo-renderer-pdf-out.cpp b/src/extension/internal/cairo-renderer-pdf-out.cpp index 6f641fd36..da4cf1bc1 100644 --- a/src/extension/internal/cairo-renderer-pdf-out.cpp +++ b/src/extension/internal/cairo-renderer-pdf-out.cpp @@ -39,7 +39,7 @@ #include <2geom/affine.h> #include "document.h" -#include "unit-constants.h" +#include "util/units.h" namespace Inkscape { namespace Extension { @@ -197,7 +197,7 @@ CairoRendererPdfOutput::save(Inkscape::Extension::Output *mod, SPDocument *doc, float new_bleedmargin_px = 0.; try { - new_bleedmargin_px = mod->get_param_float("bleed") * PX_PER_MM; + new_bleedmargin_px = mod->get_param_float("bleed") * Inkscape::Util::Quantity::convert(1, "mm", "px"); } catch(...) { g_warning("Parameter might not exist"); diff --git a/src/extension/internal/cairo-renderer.cpp b/src/extension/internal/cairo-renderer.cpp index 0a3cff26a..f7ab63c98 100644 --- a/src/extension/internal/cairo-renderer.cpp +++ b/src/extension/internal/cairo-renderer.cpp @@ -55,7 +55,7 @@ #include "sp-mask.h" #include "sp-clippath.h" -#include +#include "util/units.h" #include "helper/png-write.h" #include "helper/pixbuf-ops.h" @@ -442,7 +442,7 @@ static void sp_asbitmap_render(SPItem *item, CairoRenderContext *ctx) */ res = ctx->getBitmapResolution(); if(res == 0) { - res = PX_PER_IN; + res = Inkscape::Util::Quantity::convert(1, "in", "px"); } TRACE(("sp_asbitmap_render: resolution: %f\n", res )); @@ -463,8 +463,8 @@ static void sp_asbitmap_render(SPItem *item, CairoRenderContext *ctx) } // The width and height of the bitmap in pixels - unsigned width = ceil(bbox->width() * (res / PX_PER_IN)); - unsigned height = ceil(bbox->height() * (res / PX_PER_IN)); + unsigned width = ceil(bbox->width() * (res / Inkscape::Util::Quantity::convert(1, "in", "px"))); + unsigned height = ceil(bbox->height() * (res / Inkscape::Util::Quantity::convert(1, "in", "px"))); if (width == 0 || height == 0) return; @@ -477,7 +477,7 @@ static void sp_asbitmap_render(SPItem *item, CairoRenderContext *ctx) double shift_y = bbox->max()[Geom::Y]; // For default 90 dpi, snap bitmap to pixel grid - if (res == PX_PER_IN) { + if (res == Inkscape::Util::Quantity::convert(1, "in", "px")) { shift_x = round (shift_x); shift_y = -round (-shift_y); // Correct rounding despite coordinate inversion. // Remove the negations when the inversion is gone. @@ -629,7 +629,7 @@ CairoRenderer::setupDocument(CairoRenderContext *ctx, SPDocument *doc, bool page if (ctx->_vector_based_target) { // convert from px to pt - d *= Geom::Scale(PT_PER_PX); + d *= Geom::Scale(Inkscape::Util::Quantity::convert(1, "px", "pt")); } ctx->_width = d.width(); @@ -647,11 +647,11 @@ CairoRenderer::setupDocument(CairoRenderContext *ctx, SPDocument *doc, bool page } else { double high = doc->getHeight(); if (ctx->_vector_based_target) - high *= PT_PER_PX; + high *= Inkscape::Util::Quantity::convert(1, "px", "pt"); // this transform translates the export drawing to a virtual page (0,0)-(width,height) - Geom::Affine tp(Geom::Translate(-d.left() * (ctx->_vector_based_target ? PX_PER_PT : 1.0), - (d.bottom() - high) * (ctx->_vector_based_target ? PX_PER_PT : 1.0))); + Geom::Affine tp(Geom::Translate(-d.left() * (ctx->_vector_based_target ? Inkscape::Util::Quantity::convert(1, "pt", "px") : 1.0), + (d.bottom() - high) * (ctx->_vector_based_target ? Inkscape::Util::Quantity::convert(1, "pt", "px") : 1.0))); ctx->transform(tp); } } diff --git a/src/extension/internal/emf-win32-inout.cpp b/src/extension/internal/emf-win32-inout.cpp index e9360a0ea..62cb53413 100644 --- a/src/extension/internal/emf-win32-inout.cpp +++ b/src/extension/internal/emf-win32-inout.cpp @@ -37,7 +37,6 @@ #include "extension/output.h" #include "display/drawing.h" #include "display/drawing-item.h" -#include "unit-constants.h" #include "clear-n_.h" #include "document.h" diff --git a/src/extension/internal/emf-win32-print.cpp b/src/extension/internal/emf-win32-print.cpp index 2b79fd5a4..99f101bb8 100644 --- a/src/extension/internal/emf-win32-print.cpp +++ b/src/extension/internal/emf-win32-print.cpp @@ -43,8 +43,6 @@ #include "emf-win32-print.h" -#include "unit-constants.h" - #include "extension/system.h" #include "extension/print.h" #include "document.h" diff --git a/src/extension/internal/gdkpixbuf-input.cpp b/src/extension/internal/gdkpixbuf-input.cpp index abfad518f..994258ccc 100644 --- a/src/extension/internal/gdkpixbuf-input.cpp +++ b/src/extension/internal/gdkpixbuf-input.cpp @@ -12,7 +12,7 @@ #include "selection-chemistry.h" #include "sp-image.h" #include "document-undo.h" -#include "unit-constants.h" +#include "util/units.h" #include "image-resolution.h" #include @@ -79,7 +79,7 @@ GdkpixbufInput::open(Inkscape::Extension::Input *mod, char const *uri) double width = gdk_pixbuf_get_width(pb); double height = gdk_pixbuf_get_height(pb); - double defaultxdpi = prefs->getDouble("/dialogs/import/defaultxdpi/value", PX_PER_IN); + double defaultxdpi = prefs->getDouble("/dialogs/import/defaultxdpi/value", Inkscape::Util::Quantity::convert(1, "in", "px")); bool forcexdpi = prefs->getBool("/dialogs/import/forcexdpi"); ImageResolution *ir = 0; double xscale = 1; diff --git a/src/extension/internal/latex-pstricks.cpp b/src/extension/internal/latex-pstricks.cpp index c1eddf539..2ece1ba87 100644 --- a/src/extension/internal/latex-pstricks.cpp +++ b/src/extension/internal/latex-pstricks.cpp @@ -21,7 +21,7 @@ #include <2geom/hvlinesegment.h> #include #include -#include +#include "util/units.h" #include "helper/geom-curves.h" #include "extension/print.h" @@ -117,8 +117,8 @@ unsigned int PrintLatex::begin (Inkscape::Extension::Print *mod, SPDocument *doc } // width and height in pt - _width = doc->getWidth() * PT_PER_PX; - _height = doc->getHeight() * PT_PER_PX; + _width = doc->getWidth() * Inkscape::Util::Quantity::convert(1, "px", "pt"); + _height = doc->getHeight() * Inkscape::Util::Quantity::convert(1, "px", "pt"); if (res >= 0) { diff --git a/src/extension/internal/latex-text-renderer.cpp b/src/extension/internal/latex-text-renderer.cpp index ecc201733..57a71b467 100644 --- a/src/extension/internal/latex-text-renderer.cpp +++ b/src/extension/internal/latex-text-renderer.cpp @@ -39,7 +39,7 @@ #include "sp-rect.h" #include "text-editing.h" -#include +#include "util/units.h" #include "extension/system.h" @@ -611,7 +611,7 @@ LaTeXTextRenderer::setupDocument(SPDocument *doc, bool pageBoundingBox, float bl // scaling of the image when including it in LaTeX os << " \\ifx\\svgwidth\\undefined%\n"; - os << " \\setlength{\\unitlength}{" << d.width() * PT_PER_PX << "bp}%\n"; // note: 'bp' is the Postscript pt unit in LaTeX, see LP bug #792384 + os << " \\setlength{\\unitlength}{" << d.width() * Inkscape::Util::Quantity::convert(1, "px", "pt") << "bp}%\n"; // note: 'bp' is the Postscript pt unit in LaTeX, see LP bug #792384 os << " \\ifx\\svgscale\\undefined%\n"; os << " \\relax%\n"; os << " \\else%\n"; diff --git a/src/extension/internal/pdfinput/pdf-parser.cpp b/src/extension/internal/pdfinput/pdf-parser.cpp index 3be7af34f..3b63e9cbe 100644 --- a/src/extension/internal/pdfinput/pdf-parser.cpp +++ b/src/extension/internal/pdfinput/pdf-parser.cpp @@ -34,7 +34,7 @@ extern "C" { #include "svg-builder.h" #include "Gfx.h" #include "pdf-parser.h" -#include "unit-constants.h" +#include "util/units.h" #include "goo/gmem.h" #include "goo/GooTimer.h" @@ -279,14 +279,14 @@ PdfParser::PdfParser(XRef *xrefA, Inkscape::Extension::Internal::SvgBuilder *bui ignoreUndef = 0; operatorHistory = NULL; builder = builderA; - builder->setDocumentSize(state->getPageWidth()*PX_PER_PT, - state->getPageHeight()*PX_PER_PT); + builder->setDocumentSize(state->getPageWidth()*Inkscape::Util::Quantity::convert(1, "pt", "px"), + state->getPageHeight()*Inkscape::Util::Quantity::convert(1, "pt", "px")); double *ctm = state->getCTM(); double scaledCTM[6]; for (int i = 0; i < 6; ++i) { baseMatrix[i] = ctm[i]; - scaledCTM[i] = PX_PER_PT * ctm[i]; + scaledCTM[i] = Inkscape::Util::Quantity::convert(1, "pt", "px") * ctm[i]; } saveState(); builder->setTransform((double*)&scaledCTM); diff --git a/src/extension/internal/pdfinput/svg-builder.cpp b/src/extension/internal/pdfinput/svg-builder.cpp index 75849f6cc..6d9ac1b1a 100644 --- a/src/extension/internal/pdfinput/svg-builder.cpp +++ b/src/extension/internal/pdfinput/svg-builder.cpp @@ -33,7 +33,7 @@ #include "svg/css-ostringstream.h" #include "svg/svg-color.h" #include "color.h" -#include "unit-constants.h" +#include "util/units.h" #include "io/stringstream.h" #include "io/base64stream.h" #include "display/nr-filter-utils.h" @@ -777,7 +777,7 @@ gchar *SvgBuilder::_createGradient(GfxShading *shading, double *matrix, bool for Geom::Affine pat_matrix(matrix[0], matrix[1], matrix[2], matrix[3], matrix[4], matrix[5]); if ( !for_shading && _is_top_level ) { - Geom::Affine flip(1.0, 0.0, 0.0, -1.0, 0.0, _height * PT_PER_PX); + Geom::Affine flip(1.0, 0.0, 0.0, -1.0, 0.0, _height * Inkscape::Util::Quantity::convert(1, "px", "pt")); pat_matrix *= flip; } gchar *transform_text = sp_svg_transform_write(pat_matrix); diff --git a/src/helper/pixbuf-ops.cpp b/src/helper/pixbuf-ops.cpp index 9cd1967d8..75c002c57 100644 --- a/src/helper/pixbuf-ops.cpp +++ b/src/helper/pixbuf-ops.cpp @@ -29,7 +29,7 @@ #include "sp-root.h" #include "sp-use.h" #include "sp-defs.h" -#include "unit-constants.h" +#include "util/units.h" #include "helper/pixbuf-ops.h" @@ -121,7 +121,7 @@ GdkPixbuf *sp_generate_internal_bitmap(SPDocument *doc, gchar const */*filename* origin[Geom::X] = origin[Geom::X] + (screen[Geom::X].extent() * ((1 - padding) / 2)); origin[Geom::Y] = origin[Geom::Y] + (screen[Geom::Y].extent() * ((1 - padding) / 2)); - Geom::Scale scale( (xdpi / PX_PER_IN), (ydpi / PX_PER_IN)); + Geom::Scale scale( (xdpi / Inkscape::Util::Quantity::convert(1, "in", "px")), (ydpi / Inkscape::Util::Quantity::convert(1, "in", "px"))); Geom::Affine affine = scale * Geom::Translate(-origin * scale); /* Create ArenaItems and set transform */ diff --git a/src/main.cpp b/src/main.cpp index d425b88bb..577cc3d79 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -68,7 +68,7 @@ #include "color.h" #include "sp-item.h" #include "sp-root.h" -#include "unit-constants.h" +#include "util/units.h" #include "svg/svg.h" #include "svg/svg-color.h" @@ -1524,7 +1524,7 @@ static int sp_do_export_png(SPDocument *doc) // default dpi if (dpi == 0.0) { - dpi = PX_PER_IN; + dpi = Inkscape::Util::Quantity::convert(1, "in", "px"); } unsigned long int width = 0; @@ -1537,7 +1537,7 @@ static int sp_do_export_png(SPDocument *doc) g_warning("Export width %lu out of range (1 - %lu). Nothing exported.", width, (unsigned long int)PNG_UINT_31_MAX); return 1; } - dpi = (gdouble) width * PX_PER_IN / area.width(); + dpi = (gdouble) width * Inkscape::Util::Quantity::convert(1, "in", "px") / area.width(); } if (sp_export_height) { @@ -1547,15 +1547,15 @@ static int sp_do_export_png(SPDocument *doc) g_warning("Export height %lu out of range (1 - %lu). Nothing exported.", height, (unsigned long int)PNG_UINT_31_MAX); return 1; } - dpi = (gdouble) height * PX_PER_IN / area.height(); + dpi = (gdouble) height * Inkscape::Util::Quantity::convert(1, "in", "px") / area.height(); } if (!sp_export_width) { - width = (unsigned long int) (area.width() * dpi / PX_PER_IN + 0.5); + width = (unsigned long int) (area.width() * dpi / Inkscape::Util::Quantity::convert(1, "in", "px") + 0.5); } if (!sp_export_height) { - height = (unsigned long int) (area.height() * dpi / PX_PER_IN + 0.5); + height = (unsigned long int) (area.height() * dpi / Inkscape::Util::Quantity::convert(1, "in", "px") + 0.5); } guint32 bgcolor = 0x00000000; diff --git a/src/selection-chemistry.cpp b/src/selection-chemistry.cpp index dc786f340..5976555f4 100644 --- a/src/selection-chemistry.cpp +++ b/src/selection-chemistry.cpp @@ -89,7 +89,7 @@ SPCycleType SP_CYCLING = SP_CYCLE_FOCUS; #include "sp-item.h" #include "box3d.h" #include "persp3d.h" -#include "unit-constants.h" +#include "util/units.h" #include "xml/simple-document.h" #include "sp-filter-reference.h" #include "gradient-drag.h" @@ -3397,7 +3397,7 @@ void sp_selection_create_bitmap_copy(SPDesktop *desktop) res = prefs_res; } else if (0 < prefs_min) { // If minsize is given, look up minimum bitmap size (default 250 pixels) and calculate resolution from it - res = PX_PER_IN * prefs_min / MIN(bbox->width(), bbox->height()); + res = Inkscape::Util::Quantity::convert(1, "in", "px") * prefs_min / MIN(bbox->width(), bbox->height()); } else { float hint_xdpi = 0, hint_ydpi = 0; Glib::ustring hint_filename; @@ -3412,14 +3412,14 @@ void sp_selection_create_bitmap_copy(SPDesktop *desktop) res = hint_xdpi; } else { // if all else fails, take the default 90 dpi - res = PX_PER_IN; + res = Inkscape::Util::Quantity::convert(1, "in", "px"); } } } // The width and height of the bitmap in pixels - unsigned width = (unsigned) floor(bbox->width() * res / PX_PER_IN); - unsigned height =(unsigned) floor(bbox->height() * res / PX_PER_IN); + unsigned width = (unsigned) floor(bbox->width() * res / Inkscape::Util::Quantity::convert(1, "in", "px")); + unsigned height =(unsigned) floor(bbox->height() * res / Inkscape::Util::Quantity::convert(1, "in", "px")); // Find out if we have to run an external filter gchar const *run = NULL; @@ -3451,7 +3451,7 @@ void sp_selection_create_bitmap_copy(SPDesktop *desktop) double shift_x = bbox->min()[Geom::X]; double shift_y = bbox->max()[Geom::Y]; - if (res == PX_PER_IN) { // for default 90 dpi, snap it to pixel grid + if (res == Inkscape::Util::Quantity::convert(1, "in", "px")) { // for default 90 dpi, snap it to pixel grid shift_x = round(shift_x); shift_y = -round(-shift_y); // this gets correct rounding despite coordinate inversion, remove the negations when the inversion is gone } @@ -3484,7 +3484,7 @@ void sp_selection_create_bitmap_copy(SPDesktop *desktop) // Create the repr for the image Inkscape::XML::Node * repr = xml_doc->createElement("svg:image"); sp_embed_image(repr, pb, "image/png"); - if (res == PX_PER_IN) { // for default 90 dpi, snap it to pixel grid + if (res == Inkscape::Util::Quantity::convert(1, "in", "px")) { // for default 90 dpi, snap it to pixel grid sp_repr_set_svg_double(repr, "width", width); sp_repr_set_svg_double(repr, "height", height); } else { diff --git a/src/sp-text.cpp b/src/sp-text.cpp index d84bbdc6c..9e0befcca 100644 --- a/src/sp-text.cpp +++ b/src/sp-text.cpp @@ -55,7 +55,6 @@ #include "sp-tspan.h" #include "text-editing.h" -#include "unit-constants.h" /*##################################################### # SPTEXT diff --git a/src/style.cpp b/src/style.cpp index 479f30597..f617973ca 100644 --- a/src/style.cpp +++ b/src/style.cpp @@ -45,7 +45,7 @@ #include "svg/css-ostringstream.h" #include "xml/repr.h" #include "xml/simple-document.h" -#include "unit-constants.h" +#include "util/units.h" #include "macros.h" #include "preferences.h" @@ -2483,11 +2483,11 @@ sp_style_css_size_px_to_units(double size, int unit) case SP_CSS_UNIT_NONE: unit_size = size; break; case SP_CSS_UNIT_PX: unit_size = size; break; - case SP_CSS_UNIT_PT: unit_size = size * PT_PER_PX; break; - case SP_CSS_UNIT_PC: unit_size = size * (PT_PER_PX / PT_PER_PC); break; - case SP_CSS_UNIT_MM: unit_size = size * MM_PER_PX; break; - case SP_CSS_UNIT_CM: unit_size = size * CM_PER_PX; break; - case SP_CSS_UNIT_IN: unit_size = size * IN_PER_PX; break; + case SP_CSS_UNIT_PT: unit_size = size * Inkscape::Util::Quantity::convert(1, "px", "pt"); break; + case SP_CSS_UNIT_PC: unit_size = size * (Inkscape::Util::Quantity::convert(1, "px", "pt") / Inkscape::Util::Quantity::convert(1, "pc", "pt")); break; + case SP_CSS_UNIT_MM: unit_size = size * Inkscape::Util::Quantity::convert(1, "px", "mm"); break; + case SP_CSS_UNIT_CM: unit_size = size * Inkscape::Util::Quantity::convert(1, "px", "cm"); break; + case SP_CSS_UNIT_IN: unit_size = size * Inkscape::Util::Quantity::convert(1, "px", "in"); break; case SP_CSS_UNIT_EM: unit_size = size / SP_CSS_FONT_SIZE_DEFAULT; break; case SP_CSS_UNIT_EX: unit_size = size * 2.0 / SP_CSS_FONT_SIZE_DEFAULT ; break; case SP_CSS_UNIT_PERCENT: unit_size = size * 100.0 / SP_CSS_FONT_SIZE_DEFAULT; break; @@ -3400,19 +3400,19 @@ sp_style_read_ilength(SPILength *val, gchar const *str) } else if (!strcmp(e, "pt")) { /* Userspace / DEVICESCALE */ val->unit = SP_CSS_UNIT_PT; - val->computed = value * PX_PER_PT; + val->computed = value * Inkscape::Util::Quantity::convert(1, "pt", "px"); } else if (!strcmp(e, "pc")) { val->unit = SP_CSS_UNIT_PC; - val->computed = value * PX_PER_PC; + val->computed = value * Inkscape::Util::Quantity::convert(1, "pc", "px"); } else if (!strcmp(e, "mm")) { val->unit = SP_CSS_UNIT_MM; - val->computed = value * PX_PER_MM; + val->computed = value * Inkscape::Util::Quantity::convert(1, "mm", "px"); } else if (!strcmp(e, "cm")) { val->unit = SP_CSS_UNIT_CM; - val->computed = value * PX_PER_CM; + val->computed = value * Inkscape::Util::Quantity::convert(1, "cm", "px"); } else if (!strcmp(e, "in")) { val->unit = SP_CSS_UNIT_IN; - val->computed = value * PX_PER_IN; + val->computed = value * Inkscape::Util::Quantity::convert(1, "in", "px"); } else if (!strcmp(e, "em")) { /* EM square */ val->unit = SP_CSS_UNIT_EM; @@ -3971,23 +3971,23 @@ sp_style_write_ilength(gchar *p, gint const len, gchar const *const key, return g_strlcpy(p, os.str().c_str(), len); break; case SP_CSS_UNIT_PT: - os << key << ":" << val->computed * PT_PER_PX << "pt;"; + os << key << ":" << val->computed * Inkscape::Util::Quantity::convert(1, "px", "pt") << "pt;"; return g_strlcpy(p, os.str().c_str(), len); break; case SP_CSS_UNIT_PC: - os << key << ":" << val->computed * PT_PER_PX / 12.0 << "pc;"; + os << key << ":" << val->computed * Inkscape::Util::Quantity::convert(1, "px", "pt") / 12.0 << "pc;"; return g_strlcpy(p, os.str().c_str(), len); break; case SP_CSS_UNIT_MM: - os << key << ":" << val->computed * MM_PER_PX << "mm;"; + os << key << ":" << val->computed * Inkscape::Util::Quantity::convert(1, "px", "mm") << "mm;"; return g_strlcpy(p, os.str().c_str(), len); break; case SP_CSS_UNIT_CM: - os << key << ":" << val->computed * CM_PER_PX << "cm;"; + os << key << ":" << val->computed * Inkscape::Util::Quantity::convert(1, "px", "cm") << "cm;"; return g_strlcpy(p, os.str().c_str(), len); break; case SP_CSS_UNIT_IN: - os << key << ":" << val->computed * IN_PER_PX << "in;"; + os << key << ":" << val->computed * Inkscape::Util::Quantity::convert(1, "px", "in") << "in;"; return g_strlcpy(p, os.str().c_str(), len); break; case SP_CSS_UNIT_EM: diff --git a/src/svg/svg-length.cpp b/src/svg/svg-length.cpp index d2f4332d8..7f93f9f0f 100644 --- a/src/svg/svg-length.cpp +++ b/src/svg/svg-length.cpp @@ -23,7 +23,7 @@ #include "svg.h" #include "stringstream.h" -#include "../unit-constants.h" +#include "util/units.h" static unsigned sp_svg_length_read_lff(gchar const *str, SVGLength::Unit *unit, float *val, float *computed, char **next); @@ -365,7 +365,7 @@ static unsigned sp_svg_length_read_lff(gchar const *str, SVGLength::Unit *unit, *unit = SVGLength::PT; } if (computed) { - *computed = v * PX_PER_PT; + *computed = v * Inkscape::Util::Quantity::convert(1, "pt", "px"); } break; case UVAL('p','c'): @@ -373,7 +373,7 @@ static unsigned sp_svg_length_read_lff(gchar const *str, SVGLength::Unit *unit, *unit = SVGLength::PC; } if (computed) { - *computed = v * PX_PER_PC; + *computed = v * Inkscape::Util::Quantity::convert(1, "pc", "px"); } break; case UVAL('m','m'): @@ -381,7 +381,7 @@ static unsigned sp_svg_length_read_lff(gchar const *str, SVGLength::Unit *unit, *unit = SVGLength::MM; } if (computed) { - *computed = v * PX_PER_MM; + *computed = v * Inkscape::Util::Quantity::convert(1, "mm", "px"); } break; case UVAL('c','m'): @@ -389,7 +389,7 @@ static unsigned sp_svg_length_read_lff(gchar const *str, SVGLength::Unit *unit, *unit = SVGLength::CM; } if (computed) { - *computed = v * PX_PER_CM; + *computed = v * Inkscape::Util::Quantity::convert(1, "cm", "px"); } break; case UVAL('i','n'): @@ -397,7 +397,7 @@ static unsigned sp_svg_length_read_lff(gchar const *str, SVGLength::Unit *unit, *unit = SVGLength::INCH; } if (computed) { - *computed = v * PX_PER_IN; + *computed = v * Inkscape::Util::Quantity::convert(1, "in", "px"); } break; case UVAL('f','t'): @@ -405,7 +405,7 @@ static unsigned sp_svg_length_read_lff(gchar const *str, SVGLength::Unit *unit, *unit = SVGLength::FOOT; } if (computed) { - *computed = v * PX_PER_FT; + *computed = v * Inkscape::Util::Quantity::convert(1, "ft", "px"); } break; case UVAL('e','m'): diff --git a/src/text-editing.cpp b/src/text-editing.cpp index 401f56bb2..0d30863d9 100644 --- a/src/text-editing.cpp +++ b/src/text-editing.cpp @@ -24,7 +24,7 @@ #include "inkscape.h" #include "message-stack.h" #include "style.h" -#include "unit-constants.h" +#include "util/units.h" #include "document.h" #include "xml/repr.h" @@ -1278,23 +1278,23 @@ sp_te_adjust_linespacing_screen (SPItem *text, Inkscape::Text::Layout::iterator style->line_height.value = style->line_height.computed; break; case SP_CSS_UNIT_PT: - style->line_height.computed += zby * PT_PER_PX; + style->line_height.computed += zby * Inkscape::Util::Quantity::convert(1, "px", "pt"); style->line_height.value = style->line_height.computed; break; case SP_CSS_UNIT_PC: - style->line_height.computed += zby * (PT_PER_PX / 12); + style->line_height.computed += zby * (Inkscape::Util::Quantity::convert(1, "px", "pt") / 12); style->line_height.value = style->line_height.computed; break; case SP_CSS_UNIT_MM: - style->line_height.computed += zby * MM_PER_PX; + style->line_height.computed += zby * Inkscape::Util::Quantity::convert(1, "px", "mm"); style->line_height.value = style->line_height.computed; break; case SP_CSS_UNIT_CM: - style->line_height.computed += zby * CM_PER_PX; + style->line_height.computed += zby * Inkscape::Util::Quantity::convert(1, "px", "cm"); style->line_height.value = style->line_height.computed; break; case SP_CSS_UNIT_IN: - style->line_height.computed += zby * IN_PER_PX; + style->line_height.computed += zby * Inkscape::Util::Quantity::convert(1, "px", "in"); style->line_height.value = style->line_height.computed; break; } diff --git a/src/ui/clipboard.cpp b/src/ui/clipboard.cpp index 72ddd90a9..629960613 100644 --- a/src/ui/clipboard.cpp +++ b/src/ui/clipboard.cpp @@ -79,7 +79,7 @@ #include "text-editing.h" #include "tools-switch.h" #include "path-chemistry.h" -#include "unit-constants.h" +#include "util/units.h" #include "helper/png-write.h" #include "svg/svg-color.h" #include "sp-namedview.h" @@ -1078,14 +1078,14 @@ void ClipboardManagerImpl::_onGet(Gtk::SelectionData &sel, guint /*info*/) try { if (out == outlist.end() && target == "image/png") { - gdouble dpi = PX_PER_IN; + gdouble dpi = Inkscape::Util::Quantity::convert(1, "in", "px"); guint32 bgcolor = 0x00000000; Geom::Point origin (_clipboardSPDoc->getRoot()->x.computed, _clipboardSPDoc->getRoot()->y.computed); Geom::Rect area = Geom::Rect(origin, origin + _clipboardSPDoc->getDimensions()); - unsigned long int width = (unsigned long int) (area.width() * dpi / PX_PER_IN + 0.5); - unsigned long int height = (unsigned long int) (area.height() * dpi / PX_PER_IN + 0.5); + unsigned long int width = (unsigned long int) (area.width() * dpi / Inkscape::Util::Quantity::convert(1, "in", "px") + 0.5); + unsigned long int height = (unsigned long int) (area.height() * dpi / Inkscape::Util::Quantity::convert(1, "in", "px") + 0.5); // read from namedview Inkscape::XML::Node *nv = sp_repr_lookup_name (_clipboardSPDoc->rroot, "sodipodi:namedview"); diff --git a/src/ui/dialog/export.cpp b/src/ui/dialog/export.cpp index 5cb9357c3..063902aa7 100644 --- a/src/ui/dialog/export.cpp +++ b/src/ui/dialog/export.cpp @@ -50,7 +50,6 @@ #include "ui/widget/unit-menu.h" #include "util/units.h" -#include "unit-constants.h" #include "helper/window.h" #include "inkscape-private.h" #include "document.h" @@ -98,7 +97,7 @@ #define SP_EXPORT_MIN_SIZE 1.0 -#define DPI_BASE PX_PER_IN +#define DPI_BASE Inkscape::Util::Quantity::convert(1, "in", "px") #define EXPORT_COORD_PRECISION 3 @@ -1048,8 +1047,8 @@ void Export::onExport () Geom::OptRect area = item->desktopVisualBounds(); if (area) { - gint width = (gint) (area->width() * dpi / PX_PER_IN + 0.5); - gint height = (gint) (area->height() * dpi / PX_PER_IN + 0.5); + gint width = (gint) (area->width() * dpi / DPI_BASE + 0.5); + gint height = (gint) (area->height() * dpi / DPI_BASE + 0.5); if (width > 1 && height > 1) { // Do export diff --git a/src/ui/dialog/inkscape-preferences.cpp b/src/ui/dialog/inkscape-preferences.cpp index bc648002d..7890b0b4c 100644 --- a/src/ui/dialog/inkscape-preferences.cpp +++ b/src/ui/dialog/inkscape-preferences.cpp @@ -28,7 +28,7 @@ #include "preferences.h" #include "verbs.h" #include "selcue.h" -#include "unit-constants.h" +#include "util/units.h" #include #include "enums.h" #include "desktop-handles.h" @@ -1428,10 +1428,10 @@ void InkscapePreferences::initPageBitmaps() _("Automatically reload linked images when file is changed on disk")); _misc_bitmap_editor.init("/options/bitmapeditor/value", true); _page_bitmaps.add_line( false, _("_Bitmap editor:"), _misc_bitmap_editor, "", "", true); - _importexport_export_res.init("/dialogs/export/defaultxdpi/value", 0.0, 6000.0, 1.0, 1.0, PX_PER_IN, true, false); + _importexport_export_res.init("/dialogs/export/defaultxdpi/value", 0.0, 6000.0, 1.0, 1.0, Inkscape::Util::Quantity::convert(1, "in", "px"), true, false); _page_bitmaps.add_line( false, _("Default export _resolution:"), _importexport_export_res, _("dpi"), _("Default bitmap resolution (in dots per inch) in the Export dialog"), false); - _bitmap_copy_res.init("/options/createbitmap/resolution", 1.0, 6000.0, 1.0, 1.0, PX_PER_IN, true, false); + _bitmap_copy_res.init("/options/createbitmap/resolution", 1.0, 6000.0, 1.0, 1.0, Inkscape::Util::Quantity::convert(1, "in", "px"), true, false); _page_bitmaps.add_line( false, _("Resolution for Create Bitmap _Copy:"), _bitmap_copy_res, _("dpi"), _("Resolution used by the Create Bitmap Copy command"), false); { @@ -1443,7 +1443,7 @@ void InkscapePreferences::initPageBitmaps() _bitmap_import_quality.init("/dialogs/import/quality", 1, 100, 1, 1, 100, true, false); _page_bitmaps.add_line( false, _("Bitmap import quality:"), _bitmap_import_quality, "%", "Bitmap import quality (jpeg only). 100 is best quality", false); } - _importexport_import_res.init("/dialogs/import/defaultxdpi/value", 0.0, 6000.0, 1.0, 1.0, PX_PER_IN, true, false); + _importexport_import_res.init("/dialogs/import/defaultxdpi/value", 0.0, 6000.0, 1.0, 1.0, Inkscape::Util::Quantity::convert(1, "in", "px"), true, false); _page_bitmaps.add_line( false, _("Default _import resolution:"), _importexport_import_res, _("dpi"), _("Default bitmap resolution (in dots per inch) for bitmap import"), false); _importexport_import_res_override.init(_("Override file resolution"), "/dialogs/import/forcexdpi", false); diff --git a/src/ui/dialog/print.cpp b/src/ui/dialog/print.cpp index 2ab8cf121..4c8c77f96 100644 --- a/src/ui/dialog/print.cpp +++ b/src/ui/dialog/print.cpp @@ -26,7 +26,7 @@ #include "ui/widget/rendering-options.h" #include "document.h" -#include "unit-constants.h" +#include "util/units.h" #include "helper/png-write.h" #include "svg/svg-color.h" #include "io/sys.h" @@ -72,8 +72,8 @@ static void draw_page( sp_export_png_file(junk->_doc, tmp_png.c_str(), 0.0, 0.0, width, height, - (unsigned long)(width * dpi / PX_PER_IN), - (unsigned long)(height * dpi / PX_PER_IN), + (unsigned long)(width * dpi / Inkscape::Util::Quantity::convert(1, "in", "px")), + (unsigned long)(height * dpi / Inkscape::Util::Quantity::convert(1, "in", "px")), dpi, dpi, bgcolor, NULL, NULL, true, NULL); // This doesn't seem to work: @@ -90,7 +90,7 @@ static void draw_page( cairo_t *cr = gtk_print_context_get_cairo_context (context); cairo_matrix_t m; cairo_get_matrix(cr, &m); - cairo_scale(cr, PT_PER_IN / dpi, PT_PER_IN / dpi); + cairo_scale(cr, Inkscape::Util::Quantity::convert(1, "in", "pt") / dpi, Inkscape::Util::Quantity::convert(1, "in", "pt") / dpi); // FIXME: why is the origin offset?? cairo_set_source_surface(cr, png->cobj(), -16.0, -16.0); cairo_paint(cr); @@ -195,8 +195,8 @@ Print::Print(SPDocument *doc, SPItem *base) : // set up paper size to match the document size gtk_print_operation_set_unit (_printop, GTK_UNIT_POINTS); GtkPageSetup *page_setup = gtk_page_setup_new(); - gdouble doc_width = _doc->getWidth() * PT_PER_PX; - gdouble doc_height = _doc->getHeight() * PT_PER_PX; + gdouble doc_width = _doc->getWidth() * Inkscape::Util::Quantity::convert(1, "px", "pt"); + gdouble doc_height = _doc->getHeight() * Inkscape::Util::Quantity::convert(1, "px", "pt"); GtkPaperSize *paper_size; if (doc_width > doc_height) { gtk_page_setup_set_orientation (page_setup, GTK_PAGE_ORIENTATION_LANDSCAPE); diff --git a/src/ui/dialog/text-edit.cpp b/src/ui/dialog/text-edit.cpp index a662495a0..4a25f723b 100644 --- a/src/ui/dialog/text-edit.cpp +++ b/src/ui/dialog/text-edit.cpp @@ -58,7 +58,7 @@ extern "C" { #include "widgets/font-selector.h" #include #include -#include "unit-constants.h" +#include "util/units.h" #include "sp-textpath.h" namespace Inkscape { @@ -401,7 +401,7 @@ void TextEdit::setPreviewText (Glib::ustring font_spec, Glib::ustring phrase) Inkscape::Preferences *prefs = Inkscape::Preferences::get(); int unit = prefs->getInt("/options/font/unitType", SP_CSS_UNIT_PT); - double pt_size = sp_style_css_size_units_to_px(sp_font_selector_get_size(fsel), unit) * PT_PER_PX; + double pt_size = sp_style_css_size_units_to_px(sp_font_selector_get_size(fsel), unit) * Inkscape::Util::Quantity::convert(1, "px", "pt"); // Pango font size is in 1024ths of a point // C++11: Glib::ustring size = std::to_string( pt_size * PANGO_SCALE ); diff --git a/src/ui/widget/rendering-options.cpp b/src/ui/widget/rendering-options.cpp index f26e71553..d6248df69 100644 --- a/src/ui/widget/rendering-options.cpp +++ b/src/ui/widget/rendering-options.cpp @@ -13,7 +13,7 @@ #endif #include "rendering-options.h" -#include "unit-constants.h" +#include "util/units.h" #include namespace Inkscape { @@ -59,8 +59,8 @@ RenderingOptions::RenderingOptions () : _radio_bitmap.signal_toggled().connect(sigc::mem_fun(*this, &RenderingOptions::_toggled)); // configure default DPI - _dpi.setRange(PT_PER_IN,2400.0); - _dpi.setValue(PT_PER_IN); + _dpi.setRange(Inkscape::Util::Quantity::convert(1, "in", "pt"),2400.0); + _dpi.setValue(Inkscape::Util::Quantity::convert(1, "in", "pt")); _dpi.setIncrements(1.0,10.0); _dpi.setDigits(0); _dpi.update(); diff --git a/src/unit-constants.h b/src/unit-constants.h deleted file mode 100644 index c56c0a6e8..000000000 --- a/src/unit-constants.h +++ /dev/null @@ -1,47 +0,0 @@ -#ifndef INKSCAPE_UNIT_CONSTANTS_H -#define INKSCAPE_UNIT_CONSTANTS_H - -// 72 points per inch divided by the SVG-recommended value of 90 pixels per inch for computer screen -// For now it is constant throughout Inkscape, later we may make it changeable. -// Ideally this should be the only place to change it, but this is not guaranteed (be careful!) -#define DEVICESCALE 0.8 - -#define PT_PER_IN 72.0 -#define PT_PER_PX DEVICESCALE -#define PT_PER_PC 12.0 -#define PX_PER_PT (1/DEVICESCALE) -#define PX_PER_PC (PX_PER_PT * PT_PER_PC) -#define PX_PER_IN (PT_PER_IN / PT_PER_PX) -#define PC_PER_IN (PT_PER_IN / PT_PER_PC) -#define M_PER_IN 0.0254 -#define M_PER_PX (M_PER_IN / PX_PER_IN) -#define CM_PER_IN 2.54 -#define MM_PER_IN 25.4 -#define MM_PER_MM 1.0 -#define MM_PER_CM 10.0 -#define MM_PER_M 1000.0 -#define IN_PER_PT (1 / PT_PER_IN) -#define IN_PER_PX (1 / PX_PER_IN) -#define IN_PER_CM (1 / CM_PER_IN) -#define IN_PER_MM (1 / MM_PER_IN) -#define IN_PER_FT 12.0 -#define FT_PER_IN (1 / IN_PER_FT) -#define PT_PER_CM (PT_PER_IN / CM_PER_IN) -#define PX_PER_CM (PX_PER_IN / CM_PER_IN) -#define M_PER_PT (M_PER_IN / PT_PER_IN) -#define PT_PER_M (PT_PER_IN / M_PER_IN) -#define PX_PER_M (PX_PER_IN / M_PER_IN) -#define CM_PER_PT (CM_PER_IN / PT_PER_IN) -#define CM_PER_PX (CM_PER_IN / PX_PER_IN) -#define MM_PER_PT (MM_PER_IN / PT_PER_IN) -#define PT_PER_MM (PT_PER_IN / MM_PER_IN) -#define PX_PER_MM (PX_PER_IN / MM_PER_IN) -#define MM_PER_PX (MM_PER_IN / PX_PER_IN) -#define PX_PER_FT (PX_PER_IN / FT_PER_IN) -#define PT_PER_PT 1.0 -#define PC_PER_PC 1.0 -#define IN_PER_IN 1.0 -#define PX_PER_PX 1.0 -#define FT_PER_FT 1.0 - -#endif /* !INKSCAPE_UNIT_CONSTANTS_H */ diff --git a/src/widgets/font-selector.cpp b/src/widgets/font-selector.cpp index 7fa848f1e..5f9098d44 100644 --- a/src/widgets/font-selector.cpp +++ b/src/widgets/font-selector.cpp @@ -33,7 +33,6 @@ #include "desktop.h" #include "widgets/font-selector.h" #include "preferences.h" -#include "unit-constants.h" /* SPFontSelector */ -- cgit v1.2.3 From 49c324545e713c1ca375b7e559418e02ebe52945 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Thu, 1 Aug 2013 01:06:31 +0200 Subject: Replacement of unnecessary variables. (bzr r11608.1.114) --- src/filters/blend.cpp | 107 ++++---- src/filters/blend.h | 1 + src/filters/colormatrix.cpp | 57 ++--- src/filters/colormatrix.h | 1 + src/filters/componenttransfer.cpp | 44 +--- src/filters/componenttransfer.h | 1 + src/filters/composite.cpp | 179 +++++++------- src/filters/composite.h | 1 + src/filters/convolvematrix.cpp | 214 +++++++++------- src/filters/convolvematrix.h | 1 + src/filters/diffuselighting.cpp | 188 +++++++------- src/filters/diffuselighting.h | 1 + src/filters/displacementmap.cpp | 107 ++++---- src/filters/displacementmap.h | 1 + src/filters/flood.cpp | 71 +++--- src/filters/flood.h | 1 + src/filters/gaussian-blur.cpp | 38 ++- src/filters/gaussian-blur.h | 1 + src/filters/image.cpp | 99 ++++---- src/filters/image.h | 1 + src/filters/merge.cpp | 26 +- src/filters/merge.h | 1 + src/filters/morphology.cpp | 64 +++-- src/filters/morphology.h | 1 + src/filters/offset.cpp | 47 ++-- src/filters/offset.h | 1 + src/filters/specularlighting.cpp | 203 ++++++++-------- src/filters/specularlighting.h | 1 + src/filters/tile.cpp | 20 +- src/filters/tile.h | 1 + src/filters/turbulence.cpp | 128 +++++----- src/filters/turbulence.h | 1 + src/sp-flowdiv.cpp | 125 +++++----- src/sp-flowdiv.h | 5 + src/sp-font-face.cpp | 499 +++++++++++++++++++------------------- src/sp-font-face.h | 1 + src/sp-font.cpp | 128 +++++----- src/sp-font.h | 1 + src/sp-glyph-kerning.cpp | 129 +++++----- src/sp-glyph-kerning.h | 1 + src/sp-glyph.cpp | 204 +++++++++------- src/sp-glyph.h | 1 + src/sp-guide.cpp | 56 ++--- src/sp-guide.h | 1 + 44 files changed, 1356 insertions(+), 1403 deletions(-) diff --git a/src/filters/blend.cpp b/src/filters/blend.cpp index d2f281805..219a099d1 100644 --- a/src/filters/blend.cpp +++ b/src/filters/blend.cpp @@ -40,10 +40,10 @@ namespace { bool blendRegistered = SPFactory::instance().registerObject("svg:feBlend", createBlend); } -SPFeBlend::SPFeBlend() : SPFilterPrimitive() { - this->blend_mode = Inkscape::Filters::BLEND_NORMAL; - - this->in2 = Inkscape::Filters::NR_FILTER_SLOT_NOT_SET; +SPFeBlend::SPFeBlend() + : SPFilterPrimitive(), blend_mode(Inkscape::Filters::BLEND_NORMAL), + in2(Inkscape::Filters::NR_FILTER_SLOT_NOT_SET) +{ } SPFeBlend::~SPFeBlend() { @@ -55,24 +55,20 @@ SPFeBlend::~SPFeBlend() { * sp-object-repr.cpp's repr_name_entries array. */ void SPFeBlend::build(SPDocument *document, Inkscape::XML::Node *repr) { - SPFeBlend* object = this; - - SPFeBlend *blend = SP_FEBLEND(object); - SPFilterPrimitive::build(document, repr); /*LOAD ATTRIBUTES FROM REPR HERE*/ - object->readAttr( "mode" ); - object->readAttr( "in2" ); + this->readAttr( "mode" ); + this->readAttr( "in2" ); /* Unlike normal in, in2 is required attribute. Make sure, we can call * it by some name. */ - if (blend->in2 == Inkscape::Filters::NR_FILTER_SLOT_NOT_SET || - blend->in2 == Inkscape::Filters::NR_FILTER_UNNAMED_SLOT) + if (this->in2 == Inkscape::Filters::NR_FILTER_SLOT_NOT_SET || + this->in2 == Inkscape::Filters::NR_FILTER_UNNAMED_SLOT) { - SPFilter *parent = SP_FILTER(object->parent); - blend->in2 = sp_filter_primitive_name_previous_out(blend); - repr->setAttribute("in2", sp_filter_name_for_image(parent, blend->in2)); + SPFilter *parent = SP_FILTER(this->parent); + this->in2 = sp_filter_primitive_name_previous_out(this); + repr->setAttribute("in2", sp_filter_name_for_image(parent, this->in2)); } } @@ -83,9 +79,11 @@ void SPFeBlend::release() { SPFilterPrimitive::release(); } -static Inkscape::Filters::FilterBlendMode sp_feBlend_readmode(gchar const *value) -{ - if (!value) return Inkscape::Filters::BLEND_NORMAL; +static Inkscape::Filters::FilterBlendMode sp_feBlend_readmode(gchar const *value) { + if (!value) { + return Inkscape::Filters::BLEND_NORMAL; + } + switch (value[0]) { case 'n': if (strncmp(value, "normal", 6) == 0) @@ -111,6 +109,7 @@ static Inkscape::Filters::FilterBlendMode sp_feBlend_readmode(gchar const *value // do nothing by default break; } + return Inkscape::Filters::BLEND_NORMAL; } @@ -118,27 +117,25 @@ static Inkscape::Filters::FilterBlendMode sp_feBlend_readmode(gchar const *value * Sets a specific value in the SPFeBlend. */ void SPFeBlend::set(unsigned int key, gchar const *value) { - SPFeBlend* object = this; - - SPFeBlend *feBlend = SP_FEBLEND(object); - (void)feBlend; - Inkscape::Filters::FilterBlendMode mode; int input; + switch(key) { /*DEAL WITH SETTING ATTRIBUTES HERE*/ case SP_ATTR_MODE: mode = sp_feBlend_readmode(value); - if (mode != feBlend->blend_mode) { - feBlend->blend_mode = mode; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (mode != this->blend_mode) { + this->blend_mode = mode; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_IN2: - input = sp_filter_primitive_read_in(feBlend, value); - if (input != feBlend->in2) { - feBlend->in2 = input; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + input = sp_filter_primitive_read_in(this, value); + + if (input != this->in2) { + this->in2 = input; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; default: @@ -151,25 +148,21 @@ void SPFeBlend::set(unsigned int key, gchar const *value) { * Receives update notifications. */ void SPFeBlend::update(SPCtx *ctx, guint flags) { - SPFeBlend* object = this; - - SPFeBlend *blend = SP_FEBLEND(object); - if (flags & SP_OBJECT_MODIFIED_FLAG) { - object->readAttr( "mode" ); - object->readAttr( "in2" ); + this->readAttr( "mode" ); + this->readAttr( "in2" ); } /* Unlike normal in, in2 is required attribute. Make sure, we can call * it by some name. */ - if (blend->in2 == Inkscape::Filters::NR_FILTER_SLOT_NOT_SET || - blend->in2 == Inkscape::Filters::NR_FILTER_UNNAMED_SLOT) + if (this->in2 == Inkscape::Filters::NR_FILTER_SLOT_NOT_SET || + this->in2 == Inkscape::Filters::NR_FILTER_UNNAMED_SLOT) { - SPFilter *parent = SP_FILTER(object->parent); - blend->in2 = sp_filter_primitive_name_previous_out(blend); + SPFilter *parent = SP_FILTER(this->parent); + this->in2 = sp_filter_primitive_name_previous_out(this); - //XML Tree being used directly here while it shouldn't be. - object->getRepr()->setAttribute("in2", sp_filter_name_for_image(parent, blend->in2)); + // TODO: XML Tree being used directly here while it shouldn't be. + this->getRepr()->setAttribute("in2", sp_filter_name_for_image(parent, this->in2)); } SPFilterPrimitive::update(ctx, flags); @@ -179,31 +172,34 @@ void SPFeBlend::update(SPCtx *ctx, guint flags) { * Writes its settings to an incoming repr object, if any. */ Inkscape::XML::Node* SPFeBlend::write(Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) { - SPFeBlend* object = this; - - SPFeBlend *blend = SP_FEBLEND(object); - SPFilter *parent = SP_FILTER(object->parent); + SPFilter *parent = SP_FILTER(this->parent); if (!repr) { repr = doc->createElement("svg:feBlend"); } - gchar const *out_name = sp_filter_name_for_image(parent, blend->in2); + gchar const *out_name = sp_filter_name_for_image(parent, this->in2); + if (out_name) { repr->setAttribute("in2", out_name); } else { SPObject *i = parent->children; - while (i && i->next != object) i = i->next; + + while (i && i->next != this) { + i = i->next; + } + SPFilterPrimitive *i_prim = SP_FILTER_PRIMITIVE(i); out_name = sp_filter_name_for_image(parent, i_prim->image_out); repr->setAttribute("in2", out_name); + if (!out_name) { g_warning("Unable to set in2 for feBlend"); } } char const *mode; - switch(blend->blend_mode) { + switch(this->blend_mode) { case Inkscape::Filters::BLEND_NORMAL: mode = "normal"; break; case Inkscape::Filters::BLEND_MULTIPLY: @@ -217,6 +213,7 @@ Inkscape::XML::Node* SPFeBlend::write(Inkscape::XML::Document *doc, Inkscape::XM default: mode = 0; } + repr->setAttribute("mode", mode); SPFilterPrimitive::write(doc, repr, flags); @@ -225,22 +222,18 @@ Inkscape::XML::Node* SPFeBlend::write(Inkscape::XML::Document *doc, Inkscape::XM } void SPFeBlend::build_renderer(Inkscape::Filters::Filter* filter) { - SPFeBlend* primitive = this; - - g_assert(primitive != NULL); + g_assert(this != NULL); g_assert(filter != NULL); - SPFeBlend *sp_blend = SP_FEBLEND(primitive); - int primitive_n = filter->add_primitive(Inkscape::Filters::NR_FILTER_BLEND); Inkscape::Filters::FilterPrimitive *nr_primitive = filter->get_primitive(primitive_n); Inkscape::Filters::FilterBlend *nr_blend = dynamic_cast(nr_primitive); g_assert(nr_blend != NULL); - sp_filter_primitive_renderer_common(primitive, nr_primitive); + sp_filter_primitive_renderer_common(this, nr_primitive); - nr_blend->set_mode(sp_blend->blend_mode); - nr_blend->set_input(1, sp_blend->in2); + nr_blend->set_mode(this->blend_mode); + nr_blend->set_input(1, this->in2); } /* diff --git a/src/filters/blend.h b/src/filters/blend.h index 4377f2cab..f8b7bd2cb 100644 --- a/src/filters/blend.h +++ b/src/filters/blend.h @@ -27,6 +27,7 @@ public: Inkscape::Filters::FilterBlendMode blend_mode; int in2; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/filters/colormatrix.cpp b/src/filters/colormatrix.cpp index 28f848ec7..58f601a65 100644 --- a/src/filters/colormatrix.cpp +++ b/src/filters/colormatrix.cpp @@ -39,9 +39,9 @@ namespace { bool colorMatrixRegistered = SPFactory::instance().registerObject("svg:feColorMatrix", createColorMatrix); } -SPFeColorMatrix::SPFeColorMatrix() : SPFilterPrimitive() { - this->value = 0; - this->type = Inkscape::Filters::COLORMATRIX_MATRIX; +SPFeColorMatrix::SPFeColorMatrix() + : SPFilterPrimitive(), type(Inkscape::Filters::COLORMATRIX_MATRIX), value(0) +{ } SPFeColorMatrix::~SPFeColorMatrix() { @@ -55,11 +55,9 @@ SPFeColorMatrix::~SPFeColorMatrix() { void SPFeColorMatrix::build(SPDocument *document, Inkscape::XML::Node *repr) { SPFilterPrimitive::build(document, repr); - SPFeColorMatrix* object = this; - /*LOAD ATTRIBUTES FROM REPR HERE*/ - object->readAttr( "type" ); - object->readAttr( "values" ); + this->readAttr( "type" ); + this->readAttr( "values" ); } /** @@ -70,7 +68,10 @@ void SPFeColorMatrix::release() { } static Inkscape::Filters::FilterColorMatrixType sp_feColorMatrix_read_type(gchar const *value){ - if (!value) return Inkscape::Filters::COLORMATRIX_MATRIX; //matrix is default + if (!value) { + return Inkscape::Filters::COLORMATRIX_MATRIX; //matrix is default + } + switch(value[0]){ case 'm': if (strcmp(value, "matrix") == 0) return Inkscape::Filters::COLORMATRIX_MATRIX; @@ -85,6 +86,7 @@ static Inkscape::Filters::FilterColorMatrixType sp_feColorMatrix_read_type(gchar if (strcmp(value, "luminanceToAlpha") == 0) return Inkscape::Filters::COLORMATRIX_LUMINANCETOALPHA; break; } + return Inkscape::Filters::COLORMATRIX_MATRIX; //matrix is default } @@ -92,26 +94,23 @@ static Inkscape::Filters::FilterColorMatrixType sp_feColorMatrix_read_type(gchar * Sets a specific value in the SPFeColorMatrix. */ void SPFeColorMatrix::set(unsigned int key, gchar const *str) { - SPFeColorMatrix* object = this; - - SPFeColorMatrix *feColorMatrix = SP_FECOLORMATRIX(object); - (void)feColorMatrix; - Inkscape::Filters::FilterColorMatrixType read_type; + /*DEAL WITH SETTING ATTRIBUTES HERE*/ switch(key) { case SP_ATTR_TYPE: read_type = sp_feColorMatrix_read_type(str); - if (feColorMatrix->type != read_type){ - feColorMatrix->type = read_type; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (this->type != read_type){ + this->type = read_type; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_VALUES: if (str){ - feColorMatrix->values = helperfns_read_vector(str); - feColorMatrix->value = helperfns_read_number(str, HELPERFNS_NO_WARNING); - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->values = helperfns_read_vector(str); + this->value = helperfns_read_number(str, HELPERFNS_NO_WARNING); + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; default: @@ -124,8 +123,6 @@ void SPFeColorMatrix::set(unsigned int key, gchar const *str) { * Receives update notifications. */ void SPFeColorMatrix::update(SPCtx *ctx, guint flags) { - SPFeColorMatrix* object = this; - if (flags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG)) { @@ -140,12 +137,10 @@ void SPFeColorMatrix::update(SPCtx *ctx, guint flags) { * Writes its settings to an incoming repr object, if any. */ Inkscape::XML::Node* SPFeColorMatrix::write(Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) { - SPFeColorMatrix* object = this; - /* TODO: Don't just clone, but create a new repr node and write all * relevant values into it */ if (!repr) { - repr = object->getRepr()->duplicate(doc); + repr = this->getRepr()->duplicate(doc); } SPFilterPrimitive::write(doc, repr, flags); @@ -154,22 +149,18 @@ Inkscape::XML::Node* SPFeColorMatrix::write(Inkscape::XML::Document *doc, Inksca } void SPFeColorMatrix::build_renderer(Inkscape::Filters::Filter* filter) { - SPFeColorMatrix* primitive = this; - - g_assert(primitive != NULL); + g_assert(this != NULL); g_assert(filter != NULL); - SPFeColorMatrix *sp_colormatrix = SP_FECOLORMATRIX(primitive); - int primitive_n = filter->add_primitive(Inkscape::Filters::NR_FILTER_COLORMATRIX); Inkscape::Filters::FilterPrimitive *nr_primitive = filter->get_primitive(primitive_n); Inkscape::Filters::FilterColorMatrix *nr_colormatrix = dynamic_cast(nr_primitive); g_assert(nr_colormatrix != NULL); - sp_filter_primitive_renderer_common(primitive, nr_primitive); - nr_colormatrix->set_type(sp_colormatrix->type); - nr_colormatrix->set_value(sp_colormatrix->value); - nr_colormatrix->set_values(sp_colormatrix->values); + sp_filter_primitive_renderer_common(this, nr_primitive); + nr_colormatrix->set_type(this->type); + nr_colormatrix->set_value(this->value); + nr_colormatrix->set_values(this->values); } /* diff --git a/src/filters/colormatrix.h b/src/filters/colormatrix.h index 3239d2f8d..4d11964dd 100644 --- a/src/filters/colormatrix.h +++ b/src/filters/colormatrix.h @@ -27,6 +27,7 @@ public: gdouble value; std::vector values; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/filters/componenttransfer.cpp b/src/filters/componenttransfer.cpp index 4d6206bf7..96d1ea0bf 100644 --- a/src/filters/componenttransfer.cpp +++ b/src/filters/componenttransfer.cpp @@ -37,8 +37,9 @@ namespace { bool componentTransferRegistered = SPFactory::instance().registerObject("svg:feComponentTransfer", createComponentTransfer); } -SPFeComponentTransfer::SPFeComponentTransfer() : SPFilterPrimitive() { - this->renderer = NULL; +SPFeComponentTransfer::SPFeComponentTransfer() + : SPFilterPrimitive(), renderer(NULL) +{ } SPFeComponentTransfer::~SPFeComponentTransfer() { @@ -95,28 +96,20 @@ static void sp_feComponentTransfer_children_modified(SPFeComponentTransfer *sp_c * Callback for child_added event. */ void SPFeComponentTransfer::child_added(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { - SPFeComponentTransfer* object = this; - - SPFeComponentTransfer *f = SP_FECOMPONENTTRANSFER(object); - SPFilterPrimitive::child_added(child, ref); - sp_feComponentTransfer_children_modified(f); - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + sp_feComponentTransfer_children_modified(this); + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } /** * Callback for remove_child event. */ void SPFeComponentTransfer::remove_child(Inkscape::XML::Node *child) { - SPFeComponentTransfer* object = this; - - SPFeComponentTransfer *f = SP_FECOMPONENTTRANSFER(object); - SPFilterPrimitive::remove_child(child); - sp_feComponentTransfer_children_modified(f); - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + sp_feComponentTransfer_children_modified(this); + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } /** @@ -130,11 +123,6 @@ void SPFeComponentTransfer::release() { * Sets a specific value in the SPFeComponentTransfer. */ void SPFeComponentTransfer::set(unsigned int key, gchar const *value) { - SPFeComponentTransfer* object = this; - - SPFeComponentTransfer *feComponentTransfer = SP_FECOMPONENTTRANSFER(object); - (void)feComponentTransfer; - switch(key) { /*DEAL WITH SETTING ATTRIBUTES HERE*/ default: @@ -147,8 +135,6 @@ void SPFeComponentTransfer::set(unsigned int key, gchar const *value) { * Receives update notifications. */ void SPFeComponentTransfer::update(SPCtx *ctx, guint flags) { - SPFeComponentTransfer* object = this; - if (flags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG)) { @@ -163,12 +149,10 @@ void SPFeComponentTransfer::update(SPCtx *ctx, guint flags) { * Writes its settings to an incoming repr object, if any. */ Inkscape::XML::Node* SPFeComponentTransfer::write(Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) { - SPFeComponentTransfer* object = this; - /* TODO: Don't just clone, but create a new repr node and write all * relevant values into it */ if (!repr) { - repr = object->getRepr()->duplicate(doc); + repr = this->getRepr()->duplicate(doc); } SPFilterPrimitive::write(doc, repr, flags); @@ -177,23 +161,19 @@ Inkscape::XML::Node* SPFeComponentTransfer::write(Inkscape::XML::Document *doc, } void SPFeComponentTransfer::build_renderer(Inkscape::Filters::Filter* filter) { - SPFeComponentTransfer* primitive = this; - - g_assert(primitive != NULL); + g_assert(this != NULL); g_assert(filter != NULL); - SPFeComponentTransfer *sp_componenttransfer = SP_FECOMPONENTTRANSFER(primitive); - int primitive_n = filter->add_primitive(Inkscape::Filters::NR_FILTER_COMPONENTTRANSFER); Inkscape::Filters::FilterPrimitive *nr_primitive = filter->get_primitive(primitive_n); Inkscape::Filters::FilterComponentTransfer *nr_componenttransfer = dynamic_cast(nr_primitive); g_assert(nr_componenttransfer != NULL); - sp_componenttransfer->renderer = nr_componenttransfer; - sp_filter_primitive_renderer_common(primitive, nr_primitive); + this->renderer = nr_componenttransfer; + sp_filter_primitive_renderer_common(this, nr_primitive); - sp_feComponentTransfer_children_modified(sp_componenttransfer); //do we need it?! + sp_feComponentTransfer_children_modified(this); //do we need it?! } /* diff --git a/src/filters/componenttransfer.h b/src/filters/componenttransfer.h index 79d842b77..3aab5cf49 100644 --- a/src/filters/componenttransfer.h +++ b/src/filters/componenttransfer.h @@ -28,6 +28,7 @@ public: Inkscape::Filters::FilterComponentTransfer *renderer; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/filters/composite.cpp b/src/filters/composite.cpp index 28147fa80..3c214a7a1 100644 --- a/src/filters/composite.cpp +++ b/src/filters/composite.cpp @@ -35,13 +35,10 @@ namespace { bool compositeRegistered = SPFactory::instance().registerObject("svg:feComposite", createComposite); } -SPFeComposite::SPFeComposite() : SPFilterPrimitive() { - this->composite_operator = COMPOSITE_DEFAULT; - this->k1 = 0; - this->k2 = 0; - this->k3 = 0; - this->k4 = 0; - this->in2 = Inkscape::Filters::NR_FILTER_SLOT_NOT_SET; +SPFeComposite::SPFeComposite() + : SPFilterPrimitive(), composite_operator(COMPOSITE_DEFAULT), + k1(0), k2(0), k3(0), k4(0), in2(Inkscape::Filters::NR_FILTER_SLOT_NOT_SET) +{ } SPFeComposite::~SPFeComposite() { @@ -53,29 +50,27 @@ SPFeComposite::~SPFeComposite() { * sp-object-repr.cpp's repr_name_entries array. */ void SPFeComposite::build(SPDocument *document, Inkscape::XML::Node *repr) { - SPFeComposite* object = this; - SPFilterPrimitive::build(document, repr); - SPFeComposite *comp = SP_FECOMPOSITE(object); + this->readAttr( "operator" ); - object->readAttr( "operator" ); - if (comp->composite_operator == COMPOSITE_ARITHMETIC) { - object->readAttr( "k1" ); - object->readAttr( "k2" ); - object->readAttr( "k3" ); - object->readAttr( "k4" ); + if (this->composite_operator == COMPOSITE_ARITHMETIC) { + this->readAttr( "k1" ); + this->readAttr( "k2" ); + this->readAttr( "k3" ); + this->readAttr( "k4" ); } - object->readAttr( "in2" ); + + this->readAttr( "in2" ); /* Unlike normal in, in2 is required attribute. Make sure, we can call * it by some name. */ - if (comp->in2 == Inkscape::Filters::NR_FILTER_SLOT_NOT_SET || - comp->in2 == Inkscape::Filters::NR_FILTER_UNNAMED_SLOT) + if (this->in2 == Inkscape::Filters::NR_FILTER_SLOT_NOT_SET || + this->in2 == Inkscape::Filters::NR_FILTER_UNNAMED_SLOT) { - SPFilter *parent = SP_FILTER(object->parent); - comp->in2 = sp_filter_primitive_name_previous_out(comp); - repr->setAttribute("in2", sp_filter_name_for_image(parent, comp->in2)); + SPFilter *parent = SP_FILTER(this->parent); + this->in2 = sp_filter_primitive_name_previous_out(this); + repr->setAttribute("in2", sp_filter_name_for_image(parent, this->in2)); } } @@ -88,14 +83,24 @@ void SPFeComposite::release() { static FeCompositeOperator sp_feComposite_read_operator(gchar const *value) { - if (!value) return COMPOSITE_DEFAULT; - - if (strcmp(value, "over") == 0) return COMPOSITE_OVER; - else if (strcmp(value, "in") == 0) return COMPOSITE_IN; - else if (strcmp(value, "out") == 0) return COMPOSITE_OUT; - else if (strcmp(value, "atop") == 0) return COMPOSITE_ATOP; - else if (strcmp(value, "xor") == 0) return COMPOSITE_XOR; - else if (strcmp(value, "arithmetic") == 0) return COMPOSITE_ARITHMETIC; + if (!value) { + return COMPOSITE_DEFAULT; + } + + if (strcmp(value, "over") == 0) { + return COMPOSITE_OVER; + } else if (strcmp(value, "in") == 0) { + return COMPOSITE_IN; + } else if (strcmp(value, "out") == 0) { + return COMPOSITE_OUT; + } else if (strcmp(value, "atop") == 0) { + return COMPOSITE_ATOP; + } else if (strcmp(value, "xor") == 0) { + return COMPOSITE_XOR; + } else if (strcmp(value, "arithmetic") == 0) { + return COMPOSITE_ARITHMETIC; + } + return COMPOSITE_DEFAULT; } @@ -103,65 +108,61 @@ sp_feComposite_read_operator(gchar const *value) { * Sets a specific value in the SPFeComposite. */ void SPFeComposite::set(unsigned int key, gchar const *value) { - SPFeComposite* object = this; - - SPFeComposite *feComposite = SP_FECOMPOSITE(object); - (void)feComposite; - int input; FeCompositeOperator op; double k_n; + switch(key) { /*DEAL WITH SETTING ATTRIBUTES HERE*/ case SP_ATTR_OPERATOR: op = sp_feComposite_read_operator(value); - if (op != feComposite->composite_operator) { - feComposite->composite_operator = op; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + if (op != this->composite_operator) { + this->composite_operator = op; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_K1: k_n = value ? helperfns_read_number(value) : 0; - if (k_n != feComposite->k1) { - feComposite->k1 = k_n; - if (feComposite->composite_operator == COMPOSITE_ARITHMETIC) - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + if (k_n != this->k1) { + this->k1 = k_n; + if (this->composite_operator == COMPOSITE_ARITHMETIC) + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_K2: k_n = value ? helperfns_read_number(value) : 0; - if (k_n != feComposite->k2) { - feComposite->k2 = k_n; - if (feComposite->composite_operator == COMPOSITE_ARITHMETIC) - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + if (k_n != this->k2) { + this->k2 = k_n; + if (this->composite_operator == COMPOSITE_ARITHMETIC) + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_K3: k_n = value ? helperfns_read_number(value) : 0; - if (k_n != feComposite->k3) { - feComposite->k3 = k_n; - if (feComposite->composite_operator == COMPOSITE_ARITHMETIC) - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + if (k_n != this->k3) { + this->k3 = k_n; + if (this->composite_operator == COMPOSITE_ARITHMETIC) + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_K4: k_n = value ? helperfns_read_number(value) : 0; - if (k_n != feComposite->k4) { - feComposite->k4 = k_n; - if (feComposite->composite_operator == COMPOSITE_ARITHMETIC) - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + if (k_n != this->k4) { + this->k4 = k_n; + if (this->composite_operator == COMPOSITE_ARITHMETIC) + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_IN2: - input = sp_filter_primitive_read_in(feComposite, value); - if (input != feComposite->in2) { - feComposite->in2 = input; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + input = sp_filter_primitive_read_in(this, value); + if (input != this->in2) { + this->in2 = input; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; @@ -175,10 +176,6 @@ void SPFeComposite::set(unsigned int key, gchar const *value) { * Receives update notifications. */ void SPFeComposite::update(SPCtx *ctx, guint flags) { - SPFeComposite* object = this; - - SPFeComposite *comp = SP_FECOMPOSITE(object); - if (flags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG)) { @@ -188,14 +185,14 @@ void SPFeComposite::update(SPCtx *ctx, guint flags) { /* Unlike normal in, in2 is required attribute. Make sure, we can call * it by some name. */ - if (comp->in2 == Inkscape::Filters::NR_FILTER_SLOT_NOT_SET || - comp->in2 == Inkscape::Filters::NR_FILTER_UNNAMED_SLOT) + if (this->in2 == Inkscape::Filters::NR_FILTER_SLOT_NOT_SET || + this->in2 == Inkscape::Filters::NR_FILTER_UNNAMED_SLOT) { - SPFilter *parent = SP_FILTER(object->parent); - comp->in2 = sp_filter_primitive_name_previous_out(comp); + SPFilter *parent = SP_FILTER(this->parent); + this->in2 = sp_filter_primitive_name_previous_out(this); //XML Tree being used directly here while it shouldn't be. - object->getRepr()->setAttribute("in2", sp_filter_name_for_image(parent, comp->in2)); + this->getRepr()->setAttribute("in2", sp_filter_name_for_image(parent, this->in2)); } SPFilterPrimitive::update(ctx, flags); @@ -205,31 +202,35 @@ void SPFeComposite::update(SPCtx *ctx, guint flags) { * Writes its settings to an incoming repr object, if any. */ Inkscape::XML::Node* SPFeComposite::write(Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) { - SPFeComposite* object = this; - - SPFeComposite *comp = SP_FECOMPOSITE(object); - SPFilter *parent = SP_FILTER(object->parent); + SPFilter *parent = SP_FILTER(this->parent); if (!repr) { repr = doc->createElement("svg:feComposite"); } - gchar const *out_name = sp_filter_name_for_image(parent, comp->in2); + gchar const *out_name = sp_filter_name_for_image(parent, this->in2); + if (out_name) { repr->setAttribute("in2", out_name); } else { SPObject *i = parent->children; - while (i && i->next != object) i = i->next; + + while (i && i->next != this) { + i = i->next; + } + SPFilterPrimitive *i_prim = SP_FILTER_PRIMITIVE(i); out_name = sp_filter_name_for_image(parent, i_prim->image_out); repr->setAttribute("in2", out_name); + if (!out_name) { g_warning("Unable to set in2 for feComposite"); } } char const *comp_op; - switch (comp->composite_operator) { + + switch (this->composite_operator) { case COMPOSITE_OVER: comp_op = "over"; break; case COMPOSITE_IN: @@ -245,13 +246,14 @@ Inkscape::XML::Node* SPFeComposite::write(Inkscape::XML::Document *doc, Inkscape default: comp_op = 0; } + repr->setAttribute("operator", comp_op); - if (comp->composite_operator == COMPOSITE_ARITHMETIC) { - sp_repr_set_svg_double(repr, "k1", comp->k1); - sp_repr_set_svg_double(repr, "k2", comp->k2); - sp_repr_set_svg_double(repr, "k3", comp->k3); - sp_repr_set_svg_double(repr, "k4", comp->k4); + if (this->composite_operator == COMPOSITE_ARITHMETIC) { + sp_repr_set_svg_double(repr, "k1", this->k1); + sp_repr_set_svg_double(repr, "k2", this->k2); + sp_repr_set_svg_double(repr, "k3", this->k3); + sp_repr_set_svg_double(repr, "k4", this->k4); } else { repr->setAttribute("k1", 0); repr->setAttribute("k2", 0); @@ -265,25 +267,22 @@ Inkscape::XML::Node* SPFeComposite::write(Inkscape::XML::Document *doc, Inkscape } void SPFeComposite::build_renderer(Inkscape::Filters::Filter* filter) { - SPFeComposite* primitive = this; - - g_assert(primitive != NULL); + g_assert(this != NULL); g_assert(filter != NULL); - SPFeComposite *sp_composite = SP_FECOMPOSITE(primitive); - int primitive_n = filter->add_primitive(Inkscape::Filters::NR_FILTER_COMPOSITE); Inkscape::Filters::FilterPrimitive *nr_primitive = filter->get_primitive(primitive_n); Inkscape::Filters::FilterComposite *nr_composite = dynamic_cast(nr_primitive); g_assert(nr_composite != NULL); - sp_filter_primitive_renderer_common(primitive, nr_primitive); + sp_filter_primitive_renderer_common(this, nr_primitive); + + nr_composite->set_operator(this->composite_operator); + nr_composite->set_input(1, this->in2); - nr_composite->set_operator(sp_composite->composite_operator); - nr_composite->set_input(1, sp_composite->in2); - if (sp_composite->composite_operator == COMPOSITE_ARITHMETIC) { - nr_composite->set_arithmetic(sp_composite->k1, sp_composite->k2, - sp_composite->k3, sp_composite->k4); + if (this->composite_operator == COMPOSITE_ARITHMETIC) { + nr_composite->set_arithmetic(this->k1, this->k2, + this->k3, this->k4); } } diff --git a/src/filters/composite.h b/src/filters/composite.h index d4272a2b0..dc124e891 100644 --- a/src/filters/composite.h +++ b/src/filters/composite.h @@ -38,6 +38,7 @@ public: double k1, k2, k3, k4; int in2; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/filters/convolvematrix.cpp b/src/filters/convolvematrix.cpp index b104a2f9f..bd710b116 100644 --- a/src/filters/convolvematrix.cpp +++ b/src/filters/convolvematrix.cpp @@ -67,18 +67,16 @@ SPFeConvolveMatrix::~SPFeConvolveMatrix() { void SPFeConvolveMatrix::build(SPDocument *document, Inkscape::XML::Node *repr) { SPFilterPrimitive::build(document, repr); - SPFeConvolveMatrix* object = this; - /*LOAD ATTRIBUTES FROM REPR HERE*/ - object->readAttr( "order" ); - object->readAttr( "kernelMatrix" ); - object->readAttr( "divisor" ); - object->readAttr( "bias" ); - object->readAttr( "targetX" ); - object->readAttr( "targetY" ); - object->readAttr( "edgeMode" ); - object->readAttr( "kernelUnitLength" ); - object->readAttr( "preserveAlpha" ); + this->readAttr( "order" ); + this->readAttr( "kernelMatrix" ); + this->readAttr( "divisor" ); + this->readAttr( "bias" ); + this->readAttr( "targetX" ); + this->readAttr( "targetY" ); + this->readAttr( "edgeMode" ); + this->readAttr( "kernelUnitLength" ); + this->readAttr( "preserveAlpha" ); } /** @@ -89,18 +87,28 @@ void SPFeConvolveMatrix::release() { } static Inkscape::Filters::FilterConvolveMatrixEdgeMode sp_feConvolveMatrix_read_edgeMode(gchar const *value){ - if (!value) return Inkscape::Filters::CONVOLVEMATRIX_EDGEMODE_DUPLICATE; //duplicate is default - switch(value[0]){ + if (!value) { + return Inkscape::Filters::CONVOLVEMATRIX_EDGEMODE_DUPLICATE; //duplicate is default + } + + switch (value[0]) { case 'd': - if (strncmp(value, "duplicate", 9) == 0) return Inkscape::Filters::CONVOLVEMATRIX_EDGEMODE_DUPLICATE; + if (strncmp(value, "duplicate", 9) == 0) { + return Inkscape::Filters::CONVOLVEMATRIX_EDGEMODE_DUPLICATE; + } break; case 'w': - if (strncmp(value, "wrap", 4) == 0) return Inkscape::Filters::CONVOLVEMATRIX_EDGEMODE_WRAP; + if (strncmp(value, "wrap", 4) == 0) { + return Inkscape::Filters::CONVOLVEMATRIX_EDGEMODE_WRAP; + } break; case 'n': - if (strncmp(value, "none", 4) == 0) return Inkscape::Filters::CONVOLVEMATRIX_EDGEMODE_NONE; + if (strncmp(value, "none", 4) == 0) { + return Inkscape::Filters::CONVOLVEMATRIX_EDGEMODE_NONE; + } break; } + return Inkscape::Filters::CONVOLVEMATRIX_EDGEMODE_DUPLICATE; //duplicate is default } @@ -108,10 +116,6 @@ static Inkscape::Filters::FilterConvolveMatrixEdgeMode sp_feConvolveMatrix_read_ * Sets a specific value in the SPFeConvolveMatrix. */ void SPFeConvolveMatrix::set(unsigned int key, gchar const *value) { - SPFeConvolveMatrix* object = this; - - SPFeConvolveMatrix *feConvolveMatrix = SP_FECONVOLVEMATRIX(object); - (void)feConvolveMatrix; double read_num; int read_int; bool read_bool; @@ -120,25 +124,41 @@ void SPFeConvolveMatrix::set(unsigned int key, gchar const *value) { switch(key) { /*DEAL WITH SETTING ATTRIBUTES HERE*/ case SP_ATTR_ORDER: - feConvolveMatrix->order.set(value); + this->order.set(value); + //From SVG spec: If is not provided, it defaults to . - if (feConvolveMatrix->order.optNumIsSet() == false) - feConvolveMatrix->order.setOptNumber(feConvolveMatrix->order.getNumber()); - if (feConvolveMatrix->targetXIsSet == false) feConvolveMatrix->targetX = (int) floor(feConvolveMatrix->order.getNumber()/2); - if (feConvolveMatrix->targetYIsSet == false) feConvolveMatrix->targetY = (int) floor(feConvolveMatrix->order.getOptNumber()/2); - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + if (this->order.optNumIsSet() == false) { + this->order.setOptNumber(this->order.getNumber()); + } + + if (this->targetXIsSet == false) { + this->targetX = (int) floor(this->order.getNumber()/2); + } + + if (this->targetYIsSet == false) { + this->targetY = (int) floor(this->order.getOptNumber()/2); + } + + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_KERNELMATRIX: if (value){ - feConvolveMatrix->kernelMatrixIsSet = true; - feConvolveMatrix->kernelMatrix = helperfns_read_vector(value); - if (! feConvolveMatrix->divisorIsSet) { - feConvolveMatrix->divisor = 0; - for (unsigned int i = 0; i< feConvolveMatrix->kernelMatrix.size(); i++) - feConvolveMatrix->divisor += feConvolveMatrix->kernelMatrix[i]; - if (feConvolveMatrix->divisor == 0) feConvolveMatrix->divisor = 1; + this->kernelMatrixIsSet = true; + this->kernelMatrix = helperfns_read_vector(value); + + if (! this->divisorIsSet) { + this->divisor = 0; + + for (unsigned int i = 0; i< this->kernelMatrix.size(); i++) { + this->divisor += this->kernelMatrix[i]; + } + + if (this->divisor == 0) { + this->divisor = 1; + } } - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } else { g_warning("For feConvolveMatrix you MUST pass a kernelMatrix parameter!"); } @@ -146,80 +166,100 @@ void SPFeConvolveMatrix::set(unsigned int key, gchar const *value) { case SP_ATTR_DIVISOR: if (value) { read_num = helperfns_read_number(value); + if (read_num == 0) { // This should actually be an error, but given our UI it is more useful to simply set divisor to the default. - if (feConvolveMatrix->kernelMatrixIsSet) { - for (unsigned int i = 0; i< feConvolveMatrix->kernelMatrix.size(); i++) - read_num += feConvolveMatrix->kernelMatrix[i]; + if (this->kernelMatrixIsSet) { + for (unsigned int i = 0; i< this->kernelMatrix.size(); i++) { + read_num += this->kernelMatrix[i]; + } + } + + if (read_num == 0) { + read_num = 1; } - if (read_num == 0) read_num = 1; - if (feConvolveMatrix->divisorIsSet || feConvolveMatrix->divisor!=read_num) { - feConvolveMatrix->divisorIsSet = false; - feConvolveMatrix->divisor = read_num; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (this->divisorIsSet || this->divisor!=read_num) { + this->divisorIsSet = false; + this->divisor = read_num; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } - } else if (!feConvolveMatrix->divisorIsSet || feConvolveMatrix->divisor!=read_num) { - feConvolveMatrix->divisorIsSet = true; - feConvolveMatrix->divisor = read_num; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + } else if (!this->divisorIsSet || this->divisor!=read_num) { + this->divisorIsSet = true; + this->divisor = read_num; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } } break; case SP_ATTR_BIAS: read_num = 0; - if (value) read_num = helperfns_read_number(value); - if (read_num != feConvolveMatrix->bias){ - feConvolveMatrix->bias = read_num; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + if (value) { + read_num = helperfns_read_number(value); + } + + if (read_num != this->bias){ + this->bias = read_num; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_TARGETX: if (value) { read_int = (int) helperfns_read_number(value); - if (read_int < 0 || read_int > feConvolveMatrix->order.getNumber()){ + + if (read_int < 0 || read_int > this->order.getNumber()){ g_warning("targetX must be a value between 0 and orderX! Assuming floor(orderX/2) as default value."); - read_int = (int) floor(feConvolveMatrix->order.getNumber()/2.0); + read_int = (int) floor(this->order.getNumber()/2.0); } - feConvolveMatrix->targetXIsSet = true; - if (read_int != feConvolveMatrix->targetX){ - feConvolveMatrix->targetX = read_int; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + this->targetXIsSet = true; + + if (read_int != this->targetX){ + this->targetX = read_int; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } } break; case SP_ATTR_TARGETY: if (value) { read_int = (int) helperfns_read_number(value); - if (read_int < 0 || read_int > feConvolveMatrix->order.getOptNumber()){ + + if (read_int < 0 || read_int > this->order.getOptNumber()){ g_warning("targetY must be a value between 0 and orderY! Assuming floor(orderY/2) as default value."); - read_int = (int) floor(feConvolveMatrix->order.getOptNumber()/2.0); + read_int = (int) floor(this->order.getOptNumber()/2.0); } - feConvolveMatrix->targetYIsSet = true; - if (read_int != feConvolveMatrix->targetY){ - feConvolveMatrix->targetY = read_int; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + this->targetYIsSet = true; + + if (read_int != this->targetY){ + this->targetY = read_int; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } } break; case SP_ATTR_EDGEMODE: read_mode = sp_feConvolveMatrix_read_edgeMode(value); - if (read_mode != feConvolveMatrix->edgeMode){ - feConvolveMatrix->edgeMode = read_mode; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (read_mode != this->edgeMode){ + this->edgeMode = read_mode; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_KERNELUNITLENGTH: - feConvolveMatrix->kernelUnitLength.set(value); + this->kernelUnitLength.set(value); + //From SVG spec: If the value is not specified, it defaults to the same value as . - if (feConvolveMatrix->kernelUnitLength.optNumIsSet() == false) - feConvolveMatrix->kernelUnitLength.setOptNumber(feConvolveMatrix->kernelUnitLength.getNumber()); - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + if (this->kernelUnitLength.optNumIsSet() == false) { + this->kernelUnitLength.setOptNumber(this->kernelUnitLength.getNumber()); + } + + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_PRESERVEALPHA: read_bool = helperfns_read_bool(value, false); - if (read_bool != feConvolveMatrix->preserveAlpha){ - feConvolveMatrix->preserveAlpha = read_bool; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (read_bool != this->preserveAlpha){ + this->preserveAlpha = read_bool; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; default: @@ -233,8 +273,6 @@ void SPFeConvolveMatrix::set(unsigned int key, gchar const *value) { * Receives update notifications. */ void SPFeConvolveMatrix::update(SPCtx *ctx, guint flags) { - SPFeConvolveMatrix* object = this; - if (flags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG)) { @@ -249,12 +287,10 @@ void SPFeConvolveMatrix::update(SPCtx *ctx, guint flags) { * Writes its settings to an incoming repr object, if any. */ Inkscape::XML::Node* SPFeConvolveMatrix::write(Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) { - SPFeConvolveMatrix* object = this; - /* TODO: Don't just clone, but create a new repr node and write all * relevant values into it */ if (!repr) { - repr = object->getRepr()->duplicate(doc); + repr = this->getRepr()->duplicate(doc); } @@ -264,28 +300,24 @@ Inkscape::XML::Node* SPFeConvolveMatrix::write(Inkscape::XML::Document *doc, Ink } void SPFeConvolveMatrix::build_renderer(Inkscape::Filters::Filter* filter) { - SPFeConvolveMatrix* primitive = this; - - g_assert(primitive != NULL); + g_assert(this != NULL); g_assert(filter != NULL); - SPFeConvolveMatrix *sp_convolve = SP_FECONVOLVEMATRIX(primitive); - int primitive_n = filter->add_primitive(Inkscape::Filters::NR_FILTER_CONVOLVEMATRIX); Inkscape::Filters::FilterPrimitive *nr_primitive = filter->get_primitive(primitive_n); Inkscape::Filters::FilterConvolveMatrix *nr_convolve = dynamic_cast(nr_primitive); g_assert(nr_convolve != NULL); - sp_filter_primitive_renderer_common(primitive, nr_primitive); + sp_filter_primitive_renderer_common(this, nr_primitive); - nr_convolve->set_targetX(sp_convolve->targetX); - nr_convolve->set_targetY(sp_convolve->targetY); - nr_convolve->set_orderX( (int)sp_convolve->order.getNumber() ); - nr_convolve->set_orderY( (int)sp_convolve->order.getOptNumber() ); - nr_convolve->set_kernelMatrix(sp_convolve->kernelMatrix); - nr_convolve->set_divisor(sp_convolve->divisor); - nr_convolve->set_bias(sp_convolve->bias); - nr_convolve->set_preserveAlpha(sp_convolve->preserveAlpha); + nr_convolve->set_targetX(this->targetX); + nr_convolve->set_targetY(this->targetY); + nr_convolve->set_orderX( (int)this->order.getNumber() ); + nr_convolve->set_orderY( (int)this->order.getOptNumber() ); + nr_convolve->set_kernelMatrix(this->kernelMatrix); + nr_convolve->set_divisor(this->divisor); + nr_convolve->set_bias(this->bias); + nr_convolve->set_preserveAlpha(this->preserveAlpha); } /* Local Variables: diff --git a/src/filters/convolvematrix.h b/src/filters/convolvematrix.h index 21bf210c4..abcf52384 100644 --- a/src/filters/convolvematrix.h +++ b/src/filters/convolvematrix.h @@ -39,6 +39,7 @@ public: bool divisorIsSet; bool kernelMatrixIsSet; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/filters/diffuselighting.cpp b/src/filters/diffuselighting.cpp index c6c0ef311..09179a69d 100644 --- a/src/filters/diffuselighting.cpp +++ b/src/filters/diffuselighting.cpp @@ -71,13 +71,11 @@ SPFeDiffuseLighting::~SPFeDiffuseLighting() { void SPFeDiffuseLighting::build(SPDocument *document, Inkscape::XML::Node *repr) { SPFilterPrimitive::build(document, repr); - SPFeDiffuseLighting* object = this; - /*LOAD ATTRIBUTES FROM REPR HERE*/ - object->readAttr( "surfaceScale" ); - object->readAttr( "diffuseConstant" ); - object->readAttr( "kernelUnitLength" ); - object->readAttr( "lighting-color" ); + this->readAttr( "surfaceScale" ); + this->readAttr( "diffuseConstant" ); + this->readAttr( "kernelUnitLength" ); + this->readAttr( "lighting-color" ); } /** @@ -91,85 +89,100 @@ void SPFeDiffuseLighting::release() { * Sets a specific value in the SPFeDiffuseLighting. */ void SPFeDiffuseLighting::set(unsigned int key, gchar const *value) { - SPFeDiffuseLighting* object = this; - - SPFeDiffuseLighting *feDiffuseLighting = SP_FEDIFFUSELIGHTING(object); gchar const *cend_ptr = NULL; gchar *end_ptr = NULL; switch(key) { /*DEAL WITH SETTING ATTRIBUTES HERE*/ -//TODO test forbidden values + //TODO test forbidden values case SP_ATTR_SURFACESCALE: end_ptr = NULL; + if (value) { - feDiffuseLighting->surfaceScale = g_ascii_strtod(value, &end_ptr); + this->surfaceScale = g_ascii_strtod(value, &end_ptr); + if (end_ptr) { - feDiffuseLighting->surfaceScale_set = TRUE; + this->surfaceScale_set = TRUE; } } + if (!value || !end_ptr) { - feDiffuseLighting->surfaceScale = 1; - feDiffuseLighting->surfaceScale_set = FALSE; + this->surfaceScale = 1; + this->surfaceScale_set = FALSE; } - if (feDiffuseLighting->renderer) { - feDiffuseLighting->renderer->surfaceScale = feDiffuseLighting->surfaceScale; + + if (this->renderer) { + this->renderer->surfaceScale = this->surfaceScale; } - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_DIFFUSECONSTANT: end_ptr = NULL; + if (value) { - feDiffuseLighting->diffuseConstant = g_ascii_strtod(value, &end_ptr); - if (end_ptr && feDiffuseLighting->diffuseConstant >= 0) { - feDiffuseLighting->diffuseConstant_set = TRUE; + this->diffuseConstant = g_ascii_strtod(value, &end_ptr); + + if (end_ptr && this->diffuseConstant >= 0) { + this->diffuseConstant_set = TRUE; } else { end_ptr = NULL; - g_warning("feDiffuseLighting: diffuseConstant should be a positive number ... defaulting to 1"); + g_warning("this: diffuseConstant should be a positive number ... defaulting to 1"); } } + if (!value || !end_ptr) { - feDiffuseLighting->diffuseConstant = 1; - feDiffuseLighting->diffuseConstant_set = FALSE; + this->diffuseConstant = 1; + this->diffuseConstant_set = FALSE; } - if (feDiffuseLighting->renderer) { - feDiffuseLighting->renderer->diffuseConstant = feDiffuseLighting->diffuseConstant; - } - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (this->renderer) { + this->renderer->diffuseConstant = this->diffuseConstant; + } + + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_KERNELUNITLENGTH: //TODO kernelUnit - //feDiffuseLighting->kernelUnitLength.set(value); + //this->kernelUnitLength.set(value); /*TODOif (feDiffuseLighting->renderer) { feDiffuseLighting->renderer->surfaceScale = feDiffuseLighting->renderer; } */ - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_PROP_LIGHTING_COLOR: cend_ptr = NULL; - feDiffuseLighting->lighting_color = sp_svg_read_color(value, &cend_ptr, 0xffffffff); + this->lighting_color = sp_svg_read_color(value, &cend_ptr, 0xffffffff); + //if a value was read if (cend_ptr) { while (g_ascii_isspace(*cend_ptr)) { ++cend_ptr; } + if (strneq(cend_ptr, "icc-color(", 10)) { - if (!feDiffuseLighting->icc) feDiffuseLighting->icc = new SVGICCColor(); - if ( ! sp_svg_read_icc_color( cend_ptr, feDiffuseLighting->icc ) ) { - delete feDiffuseLighting->icc; - feDiffuseLighting->icc = NULL; + if (!this->icc) { + this->icc = new SVGICCColor(); + } + + if ( ! sp_svg_read_icc_color( cend_ptr, this->icc ) ) { + delete this->icc; + this->icc = NULL; } } - feDiffuseLighting->lighting_color_set = TRUE; + + this->lighting_color_set = TRUE; } else { //lighting_color already contains the default value - feDiffuseLighting->lighting_color_set = FALSE; + this->lighting_color_set = FALSE; } - if (feDiffuseLighting->renderer) { - feDiffuseLighting->renderer->lighting_color = feDiffuseLighting->lighting_color; + + if (this->renderer) { + this->renderer->lighting_color = this->lighting_color; } - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); break; default: SPFilterPrimitive::set(key, value); @@ -181,13 +194,11 @@ void SPFeDiffuseLighting::set(unsigned int key, gchar const *value) { * Receives update notifications. */ void SPFeDiffuseLighting::update(SPCtx *ctx, guint flags) { - SPFeDiffuseLighting* object = this; - if (flags & (SP_OBJECT_MODIFIED_FLAG)) { - object->readAttr( "surfaceScale" ); - object->readAttr( "diffuseConstant" ); - object->readAttr( "kernelUnit" ); - object->readAttr( "lighting-color" ); + this->readAttr( "surfaceScale" ); + this->readAttr( "diffuseConstant" ); + this->readAttr( "kernelUnit" ); + this->readAttr( "lighting-color" ); } SPFilterPrimitive::update(ctx, flags); @@ -197,32 +208,33 @@ void SPFeDiffuseLighting::update(SPCtx *ctx, guint flags) { * Writes its settings to an incoming repr object, if any. */ Inkscape::XML::Node* SPFeDiffuseLighting::write(Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) { - SPFeDiffuseLighting* object = this; - - SPFeDiffuseLighting *fediffuselighting = SP_FEDIFFUSELIGHTING(object); - /* TODO: Don't just clone, but create a new repr node and write all * relevant values _and children_ into it */ if (!repr) { - repr = object->getRepr()->duplicate(doc); + repr = this->getRepr()->duplicate(doc); //repr = doc->createElement("svg:feDiffuseLighting"); } - if (fediffuselighting->surfaceScale_set) - sp_repr_set_css_double(repr, "surfaceScale", fediffuselighting->surfaceScale); - else + if (this->surfaceScale_set) { + sp_repr_set_css_double(repr, "surfaceScale", this->surfaceScale); + } else { repr->setAttribute("surfaceScale", NULL); - if (fediffuselighting->diffuseConstant_set) - sp_repr_set_css_double(repr, "diffuseConstant", fediffuselighting->diffuseConstant); - else + } + + if (this->diffuseConstant_set) { + sp_repr_set_css_double(repr, "diffuseConstant", this->diffuseConstant); + } else { repr->setAttribute("diffuseConstant", NULL); - /*TODO kernelUnits */ - if (fediffuselighting->lighting_color_set) { + } + + /*TODO kernelUnits */ + if (this->lighting_color_set) { gchar c[64]; - sp_svg_write_color(c, sizeof(c), fediffuselighting->lighting_color); + sp_svg_write_color(c, sizeof(c), this->lighting_color); repr->setAttribute("lighting-color", c); - } else + } else { repr->setAttribute("lighting-color", NULL); + } SPFilterPrimitive::write(doc, repr, flags); @@ -233,38 +245,27 @@ Inkscape::XML::Node* SPFeDiffuseLighting::write(Inkscape::XML::Document *doc, In * Callback for child_added event. */ void SPFeDiffuseLighting::child_added(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { - SPFeDiffuseLighting* object = this; - - SPFeDiffuseLighting *f = SP_FEDIFFUSELIGHTING(object); - SPFilterPrimitive::child_added(child, ref); - sp_feDiffuseLighting_children_modified(f); - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + sp_feDiffuseLighting_children_modified(this); + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } /** * Callback for remove_child event. */ void SPFeDiffuseLighting::remove_child(Inkscape::XML::Node *child) { - SPFeDiffuseLighting* object = this; - - SPFeDiffuseLighting *f = SP_FEDIFFUSELIGHTING(object); - SPFilterPrimitive::remove_child(child); - sp_feDiffuseLighting_children_modified(f); - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + sp_feDiffuseLighting_children_modified(this); + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } void SPFeDiffuseLighting::order_changed(Inkscape::XML::Node *child, Inkscape::XML::Node *old_ref, Inkscape::XML::Node *new_ref) { - SPFeDiffuseLighting* object = this; - - SPFeDiffuseLighting *f = SP_FEDIFFUSELIGHTING(object); SPFilterPrimitive::order_changed(child, old_ref, new_ref); - sp_feDiffuseLighting_children_modified(f); - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + sp_feDiffuseLighting_children_modified(this); + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } static void sp_feDiffuseLighting_children_modified(SPFeDiffuseLighting *sp_diffuselighting) @@ -287,39 +288,38 @@ static void sp_feDiffuseLighting_children_modified(SPFeDiffuseLighting *sp_diffu } void SPFeDiffuseLighting::build_renderer(Inkscape::Filters::Filter* filter) { - SPFeDiffuseLighting* primitive = this; - - g_assert(primitive != NULL); + g_assert(this != NULL); g_assert(filter != NULL); - SPFeDiffuseLighting *sp_diffuselighting = SP_FEDIFFUSELIGHTING(primitive); - int primitive_n = filter->add_primitive(Inkscape::Filters::NR_FILTER_DIFFUSELIGHTING); Inkscape::Filters::FilterPrimitive *nr_primitive = filter->get_primitive(primitive_n); Inkscape::Filters::FilterDiffuseLighting *nr_diffuselighting = dynamic_cast(nr_primitive); g_assert(nr_diffuselighting != NULL); - sp_diffuselighting->renderer = nr_diffuselighting; - sp_filter_primitive_renderer_common(primitive, nr_primitive); + this->renderer = nr_diffuselighting; + sp_filter_primitive_renderer_common(this, nr_primitive); - nr_diffuselighting->diffuseConstant = sp_diffuselighting->diffuseConstant; - nr_diffuselighting->surfaceScale = sp_diffuselighting->surfaceScale; - nr_diffuselighting->lighting_color = sp_diffuselighting->lighting_color; - nr_diffuselighting->set_icc(sp_diffuselighting->icc); + nr_diffuselighting->diffuseConstant = this->diffuseConstant; + nr_diffuselighting->surfaceScale = this->surfaceScale; + nr_diffuselighting->lighting_color = this->lighting_color; + nr_diffuselighting->set_icc(this->icc); //We assume there is at most one child nr_diffuselighting->light_type = Inkscape::Filters::NO_LIGHT; - if (SP_IS_FEDISTANTLIGHT(primitive->children)) { + + if (SP_IS_FEDISTANTLIGHT(this->children)) { nr_diffuselighting->light_type = Inkscape::Filters::DISTANT_LIGHT; - nr_diffuselighting->light.distant = SP_FEDISTANTLIGHT(primitive->children); + nr_diffuselighting->light.distant = SP_FEDISTANTLIGHT(this->children); } - if (SP_IS_FEPOINTLIGHT(primitive->children)) { + + if (SP_IS_FEPOINTLIGHT(this->children)) { nr_diffuselighting->light_type = Inkscape::Filters::POINT_LIGHT; - nr_diffuselighting->light.point = SP_FEPOINTLIGHT(primitive->children); + nr_diffuselighting->light.point = SP_FEPOINTLIGHT(this->children); } - if (SP_IS_FESPOTLIGHT(primitive->children)) { + + if (SP_IS_FESPOTLIGHT(this->children)) { nr_diffuselighting->light_type = Inkscape::Filters::SPOT_LIGHT; - nr_diffuselighting->light.spot = SP_FESPOTLIGHT(primitive->children); + nr_diffuselighting->light.spot = SP_FESPOTLIGHT(this->children); } //nr_offset->set_dx(sp_offset->dx); diff --git a/src/filters/diffuselighting.h b/src/filters/diffuselighting.h index 0434e0638..e33584b4f 100644 --- a/src/filters/diffuselighting.h +++ b/src/filters/diffuselighting.h @@ -40,6 +40,7 @@ public: Inkscape::Filters::FilterDiffuseLighting *renderer; SVGICCColor *icc; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/filters/displacementmap.cpp b/src/filters/displacementmap.cpp index 03b2834b6..473e4913f 100644 --- a/src/filters/displacementmap.cpp +++ b/src/filters/displacementmap.cpp @@ -51,25 +51,22 @@ SPFeDisplacementMap::~SPFeDisplacementMap() { * sp-object-repr.cpp's repr_name_entries array. */ void SPFeDisplacementMap::build(SPDocument *document, Inkscape::XML::Node *repr) { - SPFeDisplacementMap* object = this; - SPFilterPrimitive::build(document, repr); /*LOAD ATTRIBUTES FROM REPR HERE*/ - object->readAttr( "scale" ); - object->readAttr( "in2" ); - object->readAttr( "xChannelSelector" ); - object->readAttr( "yChannelSelector" ); + this->readAttr( "scale" ); + this->readAttr( "in2" ); + this->readAttr( "xChannelSelector" ); + this->readAttr( "yChannelSelector" ); /* Unlike normal in, in2 is required attribute. Make sure, we can call * it by some name. */ - SPFeDisplacementMap *disp = SP_FEDISPLACEMENTMAP(object); - if (disp->in2 == Inkscape::Filters::NR_FILTER_SLOT_NOT_SET || - disp->in2 == Inkscape::Filters::NR_FILTER_UNNAMED_SLOT) + if (this->in2 == Inkscape::Filters::NR_FILTER_SLOT_NOT_SET || + this->in2 == Inkscape::Filters::NR_FILTER_UNNAMED_SLOT) { - SPFilter *parent = SP_FILTER(object->parent); - disp->in2 = sp_filter_primitive_name_previous_out(disp); - repr->setAttribute("in2", sp_filter_name_for_image(parent, disp->in2)); + SPFilter *parent = SP_FILTER(this->parent); + this->in2 = sp_filter_primitive_name_previous_out(this); + repr->setAttribute("in2", sp_filter_name_for_image(parent, this->in2)); } } @@ -83,6 +80,7 @@ void SPFeDisplacementMap::release() { static FilterDisplacementMapChannelSelector sp_feDisplacementMap_readChannelSelector(gchar const *value) { if (!value) return DISPLACEMENTMAP_CHANNEL_ALPHA; + switch (value[0]) { case 'R': return DISPLACEMENTMAP_CHANNEL_RED; @@ -101,6 +99,7 @@ static FilterDisplacementMapChannelSelector sp_feDisplacementMap_readChannelSele g_warning("Invalid attribute for Channel Selector. Valid modes are 'R', 'G', 'B' or 'A'"); break; } + return DISPLACEMENTMAP_CHANNEL_ALPHA; //default is Alpha Channel } @@ -108,41 +107,42 @@ static FilterDisplacementMapChannelSelector sp_feDisplacementMap_readChannelSele * Sets a specific value in the SPFeDisplacementMap. */ void SPFeDisplacementMap::set(unsigned int key, gchar const *value) { - SPFeDisplacementMap* object = this; - - SPFeDisplacementMap *feDisplacementMap = SP_FEDISPLACEMENTMAP(object); - (void)feDisplacementMap; int input; double read_num; FilterDisplacementMapChannelSelector read_selector; + switch(key) { /*DEAL WITH SETTING ATTRIBUTES HERE*/ case SP_ATTR_XCHANNELSELECTOR: read_selector = sp_feDisplacementMap_readChannelSelector(value); - if (read_selector != feDisplacementMap->xChannelSelector){ - feDisplacementMap->xChannelSelector = read_selector; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (read_selector != this->xChannelSelector){ + this->xChannelSelector = read_selector; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_YCHANNELSELECTOR: read_selector = sp_feDisplacementMap_readChannelSelector(value); - if (read_selector != feDisplacementMap->yChannelSelector){ - feDisplacementMap->yChannelSelector = read_selector; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (read_selector != this->yChannelSelector){ + this->yChannelSelector = read_selector; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_SCALE: read_num = value ? helperfns_read_number(value) : 0; - if (read_num != feDisplacementMap->scale) { - feDisplacementMap->scale = read_num; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (read_num != this->scale) { + this->scale = read_num; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_IN2: - input = sp_filter_primitive_read_in(feDisplacementMap, value); - if (input != feDisplacementMap->in2) { - feDisplacementMap->in2 = input; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + input = sp_filter_primitive_read_in(this, value); + + if (input != this->in2) { + this->in2 = input; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; default: @@ -155,8 +155,6 @@ void SPFeDisplacementMap::set(unsigned int key, gchar const *value) { * Receives update notifications. */ void SPFeDisplacementMap::update(SPCtx *ctx, guint flags) { - SPFeDisplacementMap* object = this; - if (flags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG)) { @@ -166,15 +164,14 @@ void SPFeDisplacementMap::update(SPCtx *ctx, guint flags) { /* Unlike normal in, in2 is required attribute. Make sure, we can call * it by some name. */ - SPFeDisplacementMap *disp = SP_FEDISPLACEMENTMAP(object); - if (disp->in2 == Inkscape::Filters::NR_FILTER_SLOT_NOT_SET || - disp->in2 == Inkscape::Filters::NR_FILTER_UNNAMED_SLOT) + if (this->in2 == Inkscape::Filters::NR_FILTER_SLOT_NOT_SET || + this->in2 == Inkscape::Filters::NR_FILTER_UNNAMED_SLOT) { - SPFilter *parent = SP_FILTER(object->parent); - disp->in2 = sp_filter_primitive_name_previous_out(disp); + SPFilter *parent = SP_FILTER(this->parent); + this->in2 = sp_filter_primitive_name_previous_out(this); //XML Tree being used directly here while it shouldn't be. - object->getRepr()->setAttribute("in2", sp_filter_name_for_image(parent, disp->in2)); + this->getRepr()->setAttribute("in2", sp_filter_name_for_image(parent, this->in2)); } SPFilterPrimitive::update(ctx, flags); @@ -199,34 +196,36 @@ static char const * get_channelselector_name(FilterDisplacementMapChannelSelecto * Writes its settings to an incoming repr object, if any. */ Inkscape::XML::Node* SPFeDisplacementMap::write(Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) { - SPFeDisplacementMap* object = this; - - SPFeDisplacementMap *disp = SP_FEDISPLACEMENTMAP(object); - SPFilter *parent = SP_FILTER(object->parent); + SPFilter *parent = SP_FILTER(this->parent); if (!repr) { repr = doc->createElement("svg:feDisplacementMap"); } - gchar const *out_name = sp_filter_name_for_image(parent, disp->in2); + gchar const *out_name = sp_filter_name_for_image(parent, this->in2); if (out_name) { repr->setAttribute("in2", out_name); } else { SPObject *i = parent->children; - while (i && i->next != object) i = i->next; + + while (i && i->next != this) { + i = i->next; + } + SPFilterPrimitive *i_prim = SP_FILTER_PRIMITIVE(i); out_name = sp_filter_name_for_image(parent, i_prim->image_out); repr->setAttribute("in2", out_name); + if (!out_name) { g_warning("Unable to set in2 for feDisplacementMap"); } } - sp_repr_set_svg_double(repr, "scale", disp->scale); + sp_repr_set_svg_double(repr, "scale", this->scale); repr->setAttribute("xChannelSelector", - get_channelselector_name(disp->xChannelSelector)); + get_channelselector_name(this->xChannelSelector)); repr->setAttribute("yChannelSelector", - get_channelselector_name(disp->yChannelSelector)); + get_channelselector_name(this->yChannelSelector)); SPFilterPrimitive::write(doc, repr, flags); @@ -234,24 +233,20 @@ Inkscape::XML::Node* SPFeDisplacementMap::write(Inkscape::XML::Document *doc, In } void SPFeDisplacementMap::build_renderer(Inkscape::Filters::Filter* filter) { - SPFeDisplacementMap* primitive = this; - - g_assert(primitive != NULL); + g_assert(this != NULL); g_assert(filter != NULL); - SPFeDisplacementMap *sp_displacement_map = SP_FEDISPLACEMENTMAP(primitive); - int primitive_n = filter->add_primitive(Inkscape::Filters::NR_FILTER_DISPLACEMENTMAP); Inkscape::Filters::FilterPrimitive *nr_primitive = filter->get_primitive(primitive_n); Inkscape::Filters::FilterDisplacementMap *nr_displacement_map = dynamic_cast(nr_primitive); g_assert(nr_displacement_map != NULL); - sp_filter_primitive_renderer_common(primitive, nr_primitive); + sp_filter_primitive_renderer_common(this, nr_primitive); - nr_displacement_map->set_input(1, sp_displacement_map->in2); - nr_displacement_map->set_scale(sp_displacement_map->scale); - nr_displacement_map->set_channel_selector(0, sp_displacement_map->xChannelSelector); - nr_displacement_map->set_channel_selector(1, sp_displacement_map->yChannelSelector); + nr_displacement_map->set_input(1, this->in2); + nr_displacement_map->set_scale(this->scale); + nr_displacement_map->set_channel_selector(0, this->xChannelSelector); + nr_displacement_map->set_channel_selector(1, this->yChannelSelector); } /* diff --git a/src/filters/displacementmap.h b/src/filters/displacementmap.h index 484e25861..3100e66b7 100644 --- a/src/filters/displacementmap.h +++ b/src/filters/displacementmap.h @@ -35,6 +35,7 @@ public: FilterDisplacementMapChannelSelector xChannelSelector; FilterDisplacementMapChannelSelector yChannelSelector; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/filters/flood.cpp b/src/filters/flood.cpp index a3d357b64..134492d34 100644 --- a/src/filters/flood.cpp +++ b/src/filters/flood.cpp @@ -55,11 +55,9 @@ SPFeFlood::~SPFeFlood() { void SPFeFlood::build(SPDocument *document, Inkscape::XML::Node *repr) { SPFilterPrimitive::build(document, repr); - SPFeFlood* object = this; - /*LOAD ATTRIBUTES FROM REPR HERE*/ - object->readAttr( "flood-opacity" ); - object->readAttr( "flood-color" ); + this->readAttr( "flood-opacity" ); + this->readAttr( "flood-color" ); } /** @@ -73,10 +71,6 @@ void SPFeFlood::release() { * Sets a specific value in the SPFeFlood. */ void SPFeFlood::set(unsigned int key, gchar const *value) { - SPFeFlood* object = this; - - SPFeFlood *feFlood = SP_FEFLOOD(object); - (void)feFlood; gchar const *cend_ptr = NULL; gchar *end_ptr = NULL; guint32 read_color; @@ -89,8 +83,8 @@ void SPFeFlood::set(unsigned int key, gchar const *value) { cend_ptr = NULL; read_color = sp_svg_read_color(value, &cend_ptr, 0xffffffff); - if (cend_ptr && read_color != feFlood->color){ - feFlood->color = read_color; + if (cend_ptr && read_color != this->color){ + this->color = read_color; dirty=true; } @@ -98,36 +92,42 @@ void SPFeFlood::set(unsigned int key, gchar const *value) { while (g_ascii_isspace(*cend_ptr)) { ++cend_ptr; } + if (strneq(cend_ptr, "icc-color(", 10)) { - if (!feFlood->icc) feFlood->icc = new SVGICCColor(); - if ( ! sp_svg_read_icc_color( cend_ptr, feFlood->icc ) ) { - delete feFlood->icc; - feFlood->icc = NULL; + if (!this->icc) { + this->icc = new SVGICCColor(); + } + + if ( ! sp_svg_read_icc_color( cend_ptr, this->icc ) ) { + delete this->icc; + this->icc = NULL; } + dirty = true; } } - if (dirty) - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (dirty) { + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + } break; case SP_PROP_FLOOD_OPACITY: if (value) { read_num = g_ascii_strtod(value, &end_ptr); - if (end_ptr != NULL) - { - if (*end_ptr) - { + + if (end_ptr != NULL) { + if (*end_ptr) { g_warning("Unable to convert \"%s\" to number", value); read_num = 1; } } - } - else { + } else { read_num = 1; } - if (read_num != feFlood->opacity){ - feFlood->opacity = read_num; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (read_num != this->opacity) { + this->opacity = read_num; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; default: @@ -140,8 +140,6 @@ void SPFeFlood::set(unsigned int key, gchar const *value) { * Receives update notifications. */ void SPFeFlood::update(SPCtx *ctx, guint flags) { - SPFeFlood* object = this; - if (flags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG)) { @@ -156,12 +154,10 @@ void SPFeFlood::update(SPCtx *ctx, guint flags) { * Writes its settings to an incoming repr object, if any. */ Inkscape::XML::Node* SPFeFlood::write(Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) { - SPFeFlood* object = this; - /* TODO: Don't just clone, but create a new repr node and write all * relevant values into it */ if (!repr) { - repr = object->getRepr()->duplicate(doc); + repr = this->getRepr()->duplicate(doc); } SPFilterPrimitive::write(doc, repr, flags); @@ -170,24 +166,19 @@ Inkscape::XML::Node* SPFeFlood::write(Inkscape::XML::Document *doc, Inkscape::XM } void SPFeFlood::build_renderer(Inkscape::Filters::Filter* filter) { - SPFeFlood* primitive = this; - - g_assert(primitive != NULL); + g_assert(this != NULL); g_assert(filter != NULL); - SPFeFlood *sp_flood = SP_FEFLOOD(primitive); - (void)sp_flood; - int primitive_n = filter->add_primitive(Inkscape::Filters::NR_FILTER_FLOOD); Inkscape::Filters::FilterPrimitive *nr_primitive = filter->get_primitive(primitive_n); Inkscape::Filters::FilterFlood *nr_flood = dynamic_cast(nr_primitive); g_assert(nr_flood != NULL); - sp_filter_primitive_renderer_common(primitive, nr_primitive); + sp_filter_primitive_renderer_common(this, nr_primitive); - nr_flood->set_opacity(sp_flood->opacity); - nr_flood->set_color(sp_flood->color); - nr_flood->set_icc(sp_flood->icc); + nr_flood->set_opacity(this->opacity); + nr_flood->set_color(this->color); + nr_flood->set_icc(this->icc); } /* diff --git a/src/filters/flood.h b/src/filters/flood.h index 699157d48..67369a794 100644 --- a/src/filters/flood.h +++ b/src/filters/flood.h @@ -27,6 +27,7 @@ public: SVGICCColor *icc; double opacity; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/filters/gaussian-blur.cpp b/src/filters/gaussian-blur.cpp index e2f58f476..fc1e65925 100644 --- a/src/filters/gaussian-blur.cpp +++ b/src/filters/gaussian-blur.cpp @@ -54,9 +54,7 @@ SPGaussianBlur::~SPGaussianBlur() { void SPGaussianBlur::build(SPDocument *document, Inkscape::XML::Node *repr) { SPFilterPrimitive::build(document, repr); - SPGaussianBlur* object = this; - - object->readAttr( "stdDeviation" ); + this->readAttr( "stdDeviation" ); } /** @@ -70,14 +68,10 @@ void SPGaussianBlur::release() { * Sets a specific value in the SPGaussianBlur. */ void SPGaussianBlur::set(unsigned int key, gchar const *value) { - SPGaussianBlur* object = this; - - SPGaussianBlur *gaussianBlur = SP_GAUSSIANBLUR(object); - switch(key) { case SP_ATTR_STDDEVIATION: - gaussianBlur->stdDeviation.set(value); - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->stdDeviation.set(value); + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); break; default: SPFilterPrimitive::set(key, value); @@ -89,10 +83,8 @@ void SPGaussianBlur::set(unsigned int key, gchar const *value) { * Receives update notifications. */ void SPGaussianBlur::update(SPCtx *ctx, guint flags) { - SPGaussianBlur* object = this; - if (flags & SP_OBJECT_MODIFIED_FLAG) { - object->readAttr( "stdDeviation" ); + this->readAttr( "stdDeviation" ); } SPFilterPrimitive::update(ctx, flags); @@ -102,12 +94,10 @@ void SPGaussianBlur::update(SPCtx *ctx, guint flags) { * Writes its settings to an incoming repr object, if any. */ Inkscape::XML::Node* SPGaussianBlur::write(Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) { - SPGaussianBlur* object = this; - /* TODO: Don't just clone, but create a new repr node and write all * relevant values into it */ if (!repr) { - repr = object->getRepr()->duplicate(doc); + repr = this->getRepr()->duplicate(doc); } SPFilterPrimitive::write(doc, repr, flags); @@ -119,6 +109,7 @@ void sp_gaussianBlur_setDeviation(SPGaussianBlur *blur, float num) { blur->stdDeviation.setNumber(num); } + void sp_gaussianBlur_setDeviation(SPGaussianBlur *blur, float num, float optnum) { blur->stdDeviation.setNumber(num); @@ -126,23 +117,22 @@ void sp_gaussianBlur_setDeviation(SPGaussianBlur *blur, float num, float optnum } void SPGaussianBlur::build_renderer(Inkscape::Filters::Filter* filter) { - SPGaussianBlur* primitive = this; - - SPGaussianBlur *sp_blur = SP_GAUSSIANBLUR(primitive); - int handle = filter->add_primitive(Inkscape::Filters::NR_FILTER_GAUSSIANBLUR); Inkscape::Filters::FilterPrimitive *nr_primitive = filter->get_primitive(handle); Inkscape::Filters::FilterGaussian *nr_blur = dynamic_cast(nr_primitive); - sp_filter_primitive_renderer_common(primitive, nr_primitive); + sp_filter_primitive_renderer_common(this, nr_primitive); + + gfloat num = this->stdDeviation.getNumber(); - gfloat num = sp_blur->stdDeviation.getNumber(); if (num >= 0.0) { - gfloat optnum = sp_blur->stdDeviation.getOptNumber(); - if(optnum >= 0.0) + gfloat optnum = this->stdDeviation.getOptNumber(); + + if(optnum >= 0.0) { nr_blur->set_deviation((double) num, (double) optnum); - else + } else { nr_blur->set_deviation((double) num); + } } } diff --git a/src/filters/gaussian-blur.h b/src/filters/gaussian-blur.h index 4a8a58d36..b0e725a50 100644 --- a/src/filters/gaussian-blur.h +++ b/src/filters/gaussian-blur.h @@ -26,6 +26,7 @@ public: /** stdDeviation attribute */ NumberOptNumber stdDeviation; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/filters/image.cpp b/src/filters/image.cpp index 150e9a33f..a454061c9 100644 --- a/src/filters/image.cpp +++ b/src/filters/image.cpp @@ -59,30 +59,27 @@ SPFeImage::~SPFeImage() { * sp-object-repr.cpp's repr_name_entries array. */ void SPFeImage::build(SPDocument *document, Inkscape::XML::Node *repr) { - SPFeImage* object = this; - // Save document reference so we can load images with relative paths. - SPFeImage *feImage = SP_FEIMAGE(object); - feImage->document = document; + this->document = document; SPFilterPrimitive::build(document, repr); /*LOAD ATTRIBUTES FROM REPR HERE*/ - object->readAttr( "preserveAspectRatio" ); - object->readAttr( "xlink:href" ); + this->readAttr( "preserveAspectRatio" ); + this->readAttr( "xlink:href" ); } /** * Drops any allocated memory. */ void SPFeImage::release() { - SPFeImage* object = this; + this->_image_modified_connection.disconnect(); + this->_href_modified_connection.disconnect(); - SPFeImage *feImage = SP_FEIMAGE(object); - feImage->_image_modified_connection.disconnect(); - feImage->_href_modified_connection.disconnect(); - if (feImage->SVGElemRef) delete feImage->SVGElemRef; + if (this->SVGElemRef) { + delete this->SVGElemRef; + } SPFilterPrimitive::release(); } @@ -110,42 +107,38 @@ static void sp_feImage_href_modified(SPObject* /*old_elem*/, SPObject* new_elem, * Sets a specific value in the SPFeImage. */ void SPFeImage::set(unsigned int key, gchar const *value) { - SPFeImage* object = this; - - SPFeImage *feImage = SP_FEIMAGE(object); - (void)feImage; switch(key) { /*DEAL WITH SETTING ATTRIBUTES HERE*/ case SP_ATTR_XLINK_HREF: - if (feImage->href) { - g_free(feImage->href); + if (this->href) { + g_free(this->href); } - feImage->href = (value) ? g_strdup (value) : NULL; - if (!feImage->href) return; - delete feImage->SVGElemRef; - feImage->SVGElemRef = 0; - feImage->SVGElem = 0; - feImage->_image_modified_connection.disconnect(); - feImage->_href_modified_connection.disconnect(); + this->href = (value) ? g_strdup (value) : NULL; + if (!this->href) return; + delete this->SVGElemRef; + this->SVGElemRef = 0; + this->SVGElem = 0; + this->_image_modified_connection.disconnect(); + this->_href_modified_connection.disconnect(); try{ - Inkscape::URI SVGElem_uri(feImage->href); - feImage->SVGElemRef = new Inkscape::URIReference(feImage->document); - feImage->SVGElemRef->attach(SVGElem_uri); - feImage->from_element = true; - feImage->_href_modified_connection = feImage->SVGElemRef->changedSignal().connect(sigc::bind(sigc::ptr_fun(&sp_feImage_href_modified), object)); - if (SPObject *elemref = feImage->SVGElemRef->getObject()) { - feImage->SVGElem = SP_ITEM(elemref); - feImage->_image_modified_connection = ((SPObject*) feImage->SVGElem)->connectModified(sigc::bind(sigc::ptr_fun(&sp_feImage_elem_modified), object)); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + Inkscape::URI SVGElem_uri(this->href); + this->SVGElemRef = new Inkscape::URIReference(this->document); + this->SVGElemRef->attach(SVGElem_uri); + this->from_element = true; + this->_href_modified_connection = this->SVGElemRef->changedSignal().connect(sigc::bind(sigc::ptr_fun(&sp_feImage_href_modified), this)); + if (SPObject *elemref = this->SVGElemRef->getObject()) { + this->SVGElem = SP_ITEM(elemref); + this->_image_modified_connection = ((SPObject*) this->SVGElem)->connectModified(sigc::bind(sigc::ptr_fun(&sp_feImage_elem_modified), this)); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; } else { - g_warning("SVG element URI was not found in the document while loading feImage"); + g_warning("SVG element URI was not found in the document while loading this"); } } // catches either MalformedURIException or UnsupportedURIException catch(const Inkscape::BadURIException & e) { - feImage->from_element = false; + this->from_element = false; /* This occurs when using external image as the source */ //g_warning("caught Inkscape::BadURIException in sp_feImage_set"); break; @@ -155,9 +148,9 @@ void SPFeImage::set(unsigned int key, gchar const *value) { case SP_ATTR_PRESERVEASPECTRATIO: /* Copied from sp-image.cpp */ /* Do setup before, so we can use break to escape */ - feImage->aspect_align = SP_ASPECT_XMID_YMID; // Default - feImage->aspect_clip = SP_ASPECT_MEET; // Default - object->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG); + this->aspect_align = SP_ASPECT_XMID_YMID; // Default + this->aspect_clip = SP_ASPECT_MEET; // Default + this->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG); if (value) { int len; gchar c[256]; @@ -208,8 +201,8 @@ void SPFeImage::set(unsigned int key, gchar const *value) { break; } } - feImage->aspect_align = align; - feImage->aspect_clip = clip; + this->aspect_align = align; + this->aspect_clip = clip; } break; @@ -223,8 +216,6 @@ void SPFeImage::set(unsigned int key, gchar const *value) { * Receives update notifications. */ void SPFeImage::update(SPCtx *ctx, guint flags) { - SPFeImage* object = this; - if (flags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG)) { @@ -238,12 +229,10 @@ void SPFeImage::update(SPCtx *ctx, guint flags) { * Writes its settings to an incoming repr object, if any. */ Inkscape::XML::Node* SPFeImage::write(Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) { - SPFeImage* object = this; - /* TODO: Don't just clone, but create a new repr node and write all * relevant values into it */ if (!repr) { - repr = object->getRepr()->duplicate(doc); + repr = this->getRepr()->duplicate(doc); } SPFilterPrimitive::write(doc, repr, flags); @@ -252,26 +241,22 @@ Inkscape::XML::Node* SPFeImage::write(Inkscape::XML::Document *doc, Inkscape::XM } void SPFeImage::build_renderer(Inkscape::Filters::Filter* filter) { - SPFeImage* primitive = this; - - g_assert(primitive != NULL); + g_assert(this != NULL); g_assert(filter != NULL); - SPFeImage *sp_image = SP_FEIMAGE(primitive); - int primitive_n = filter->add_primitive(Inkscape::Filters::NR_FILTER_IMAGE); Inkscape::Filters::FilterPrimitive *nr_primitive = filter->get_primitive(primitive_n); Inkscape::Filters::FilterImage *nr_image = dynamic_cast(nr_primitive); g_assert(nr_image != NULL); - sp_filter_primitive_renderer_common(primitive, nr_primitive); + sp_filter_primitive_renderer_common(this, nr_primitive); - nr_image->from_element = sp_image->from_element; - nr_image->SVGElem = sp_image->SVGElem; - nr_image->set_align( sp_image->aspect_align ); - nr_image->set_clip( sp_image->aspect_clip ); - nr_image->set_href(sp_image->href); - nr_image->set_document(sp_image->document); + nr_image->from_element = this->from_element; + nr_image->SVGElem = this->SVGElem; + nr_image->set_align( this->aspect_align ); + nr_image->set_clip( this->aspect_clip ); + nr_image->set_href(this->href); + nr_image->set_document(this->document); } /* diff --git a/src/filters/image.h b/src/filters/image.h index 1554dc5e8..8bbab2614 100644 --- a/src/filters/image.h +++ b/src/filters/image.h @@ -39,6 +39,7 @@ public: sigc::connection _image_modified_connection; sigc::connection _href_modified_connection; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/filters/merge.cpp b/src/filters/merge.cpp index 3b126f747..882ab36dd 100644 --- a/src/filters/merge.cpp +++ b/src/filters/merge.cpp @@ -60,11 +60,6 @@ void SPFeMerge::release() { * Sets a specific value in the SPFeMerge. */ void SPFeMerge::set(unsigned int key, gchar const *value) { - SPFeMerge* object = this; - - SPFeMerge *feMerge = SP_FEMERGE(object); - (void)feMerge; - switch(key) { /*DEAL WITH SETTING ATTRIBUTES HERE*/ default: @@ -77,10 +72,8 @@ void SPFeMerge::set(unsigned int key, gchar const *value) { * Receives update notifications. */ void SPFeMerge::update(SPCtx *ctx, guint flags) { - SPFeMerge* object = this; - if (flags & SP_OBJECT_MODIFIED_FLAG) { - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } SPFilterPrimitive::update(ctx, flags); @@ -90,12 +83,10 @@ void SPFeMerge::update(SPCtx *ctx, guint flags) { * Writes its settings to an incoming repr object, if any. */ Inkscape::XML::Node* SPFeMerge::write(Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) { - SPFeMerge* object = this; - /* TODO: Don't just clone, but create a new repr node and write all * relevant values into it. And child nodes, too! */ if (!repr) { - repr = object->getRepr()->duplicate(doc); + repr = this->getRepr()->duplicate(doc); } @@ -105,29 +96,26 @@ Inkscape::XML::Node* SPFeMerge::write(Inkscape::XML::Document *doc, Inkscape::XM } void SPFeMerge::build_renderer(Inkscape::Filters::Filter* filter) { - SPFeMerge* primitive = this; - - g_assert(primitive != NULL); + g_assert(this != NULL); g_assert(filter != NULL); - SPFeMerge *sp_merge = SP_FEMERGE(primitive); - (void)sp_merge; - int primitive_n = filter->add_primitive(Inkscape::Filters::NR_FILTER_MERGE); Inkscape::Filters::FilterPrimitive *nr_primitive = filter->get_primitive(primitive_n); Inkscape::Filters::FilterMerge *nr_merge = dynamic_cast(nr_primitive); g_assert(nr_merge != NULL); - sp_filter_primitive_renderer_common(primitive, nr_primitive); + sp_filter_primitive_renderer_common(this, nr_primitive); - SPObject *input = primitive->children; + SPObject *input = this->children; int in_nr = 0; + while (input) { if (SP_IS_FEMERGENODE(input)) { SPFeMergeNode *node = SP_FEMERGENODE(input); nr_merge->set_input(in_nr, node->input); in_nr++; } + input = input->next; } } diff --git a/src/filters/merge.h b/src/filters/merge.h index a2034bc08..c7d2ce45b 100644 --- a/src/filters/merge.h +++ b/src/filters/merge.h @@ -20,6 +20,7 @@ public: SPFeMerge(); virtual ~SPFeMerge(); +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/filters/morphology.cpp b/src/filters/morphology.cpp index 14783584f..d3611b081 100644 --- a/src/filters/morphology.cpp +++ b/src/filters/morphology.cpp @@ -54,11 +54,9 @@ SPFeMorphology::~SPFeMorphology() { void SPFeMorphology::build(SPDocument *document, Inkscape::XML::Node *repr) { SPFilterPrimitive::build(document, repr); - SPFeMorphology* object = this; - /*LOAD ATTRIBUTES FROM REPR HERE*/ - object->readAttr( "operator" ); - object->readAttr( "radius" ); + this->readAttr( "operator" ); + this->readAttr( "radius" ); } /** @@ -69,15 +67,23 @@ void SPFeMorphology::release() { } static Inkscape::Filters::FilterMorphologyOperator sp_feMorphology_read_operator(gchar const *value){ - if (!value) return Inkscape::Filters::MORPHOLOGY_OPERATOR_ERODE; //erode is default + if (!value) { + return Inkscape::Filters::MORPHOLOGY_OPERATOR_ERODE; //erode is default + } + switch(value[0]){ case 'e': - if (strncmp(value, "erode", 5) == 0) return Inkscape::Filters::MORPHOLOGY_OPERATOR_ERODE; + if (strncmp(value, "erode", 5) == 0) { + return Inkscape::Filters::MORPHOLOGY_OPERATOR_ERODE; + } break; case 'd': - if (strncmp(value, "dilate", 6) == 0) return Inkscape::Filters::MORPHOLOGY_OPERATOR_DILATE; + if (strncmp(value, "dilate", 6) == 0) { + return Inkscape::Filters::MORPHOLOGY_OPERATOR_DILATE; + } break; } + return Inkscape::Filters::MORPHOLOGY_OPERATOR_ERODE; //erode is default } @@ -85,27 +91,27 @@ static Inkscape::Filters::FilterMorphologyOperator sp_feMorphology_read_operator * Sets a specific value in the SPFeMorphology. */ void SPFeMorphology::set(unsigned int key, gchar const *value) { - SPFeMorphology* object = this; - - SPFeMorphology *feMorphology = SP_FEMORPHOLOGY(object); - (void)feMorphology; - Inkscape::Filters::FilterMorphologyOperator read_operator; + switch(key) { /*DEAL WITH SETTING ATTRIBUTES HERE*/ case SP_ATTR_OPERATOR: read_operator = sp_feMorphology_read_operator(value); - if (read_operator != feMorphology->Operator){ - feMorphology->Operator = read_operator; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (read_operator != this->Operator){ + this->Operator = read_operator; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_RADIUS: - feMorphology->radius.set(value); + this->radius.set(value); + //From SVG spec: If is not provided, it defaults to . - if (feMorphology->radius.optNumIsSet() == false) - feMorphology->radius.setOptNumber(feMorphology->radius.getNumber()); - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + if (this->radius.optNumIsSet() == false) { + this->radius.setOptNumber(this->radius.getNumber()); + } + + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); break; default: SPFilterPrimitive::set(key, value); @@ -118,8 +124,6 @@ void SPFeMorphology::set(unsigned int key, gchar const *value) { * Receives update notifications. */ void SPFeMorphology::update(SPCtx *ctx, guint flags) { - SPFeMorphology* object = this; - if (flags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG)) { @@ -134,12 +138,10 @@ void SPFeMorphology::update(SPCtx *ctx, guint flags) { * Writes its settings to an incoming repr object, if any. */ Inkscape::XML::Node* SPFeMorphology::write(Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) { - SPFeMorphology* object = this; - /* TODO: Don't just clone, but create a new repr node and write all * relevant values into it */ if (!repr) { - repr = object->getRepr()->duplicate(doc); + repr = this->getRepr()->duplicate(doc); } SPFilterPrimitive::write(doc, repr, flags); @@ -148,23 +150,19 @@ Inkscape::XML::Node* SPFeMorphology::write(Inkscape::XML::Document *doc, Inkscap } void SPFeMorphology::build_renderer(Inkscape::Filters::Filter* filter) { - SPFeMorphology* primitive = this; - - g_assert(primitive != NULL); + g_assert(this != NULL); g_assert(filter != NULL); - SPFeMorphology *sp_morphology = SP_FEMORPHOLOGY(primitive); - int primitive_n = filter->add_primitive(Inkscape::Filters::NR_FILTER_MORPHOLOGY); Inkscape::Filters::FilterPrimitive *nr_primitive = filter->get_primitive(primitive_n); Inkscape::Filters::FilterMorphology *nr_morphology = dynamic_cast(nr_primitive); g_assert(nr_morphology != NULL); - sp_filter_primitive_renderer_common(primitive, nr_primitive); + sp_filter_primitive_renderer_common(this, nr_primitive); - nr_morphology->set_operator(sp_morphology->Operator); - nr_morphology->set_xradius( sp_morphology->radius.getNumber() ); - nr_morphology->set_yradius( sp_morphology->radius.getOptNumber() ); + nr_morphology->set_operator(this->Operator); + nr_morphology->set_xradius( this->radius.getNumber() ); + nr_morphology->set_yradius( this->radius.getOptNumber() ); } /* diff --git a/src/filters/morphology.h b/src/filters/morphology.h index 97ab55751..786d444f3 100644 --- a/src/filters/morphology.h +++ b/src/filters/morphology.h @@ -27,6 +27,7 @@ public: Inkscape::Filters::FilterMorphologyOperator Operator; NumberOptNumber radius; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/filters/offset.cpp b/src/filters/offset.cpp index 22582c167..234a1a964 100644 --- a/src/filters/offset.cpp +++ b/src/filters/offset.cpp @@ -49,12 +49,10 @@ SPFeOffset::~SPFeOffset() { * sp-object-repr.cpp's repr_name_entries array. */ void SPFeOffset::build(SPDocument *document, Inkscape::XML::Node *repr) { - SPFeOffset* object = this; - SPFilterPrimitive::build(document, repr); - object->readAttr( "dx" ); - object->readAttr( "dy" ); + this->readAttr( "dx" ); + this->readAttr( "dy" ); } /** @@ -68,24 +66,23 @@ void SPFeOffset::release() { * Sets a specific value in the SPFeOffset. */ void SPFeOffset::set(unsigned int key, gchar const *value) { - SPFeOffset* object = this; - - SPFeOffset *feOffset = SP_FEOFFSET(object); - double read_num; + switch(key) { case SP_ATTR_DX: read_num = value ? helperfns_read_number(value) : 0; - if (read_num != feOffset->dx) { - feOffset->dx = read_num; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (read_num != this->dx) { + this->dx = read_num; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_DY: read_num = value ? helperfns_read_number(value) : 0; - if (read_num != feOffset->dy) { - feOffset->dy = read_num; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (read_num != this->dy) { + this->dy = read_num; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; @@ -100,11 +97,9 @@ void SPFeOffset::set(unsigned int key, gchar const *value) { * Receives update notifications. */ void SPFeOffset::update(SPCtx *ctx, guint flags) { - SPFeOffset* object = this; - if (flags & SP_OBJECT_MODIFIED_FLAG) { - object->readAttr( "dx" ); - object->readAttr( "dy" ); + this->readAttr( "dx" ); + this->readAttr( "dy" ); } SPFilterPrimitive::update(ctx, flags); @@ -114,12 +109,10 @@ void SPFeOffset::update(SPCtx *ctx, guint flags) { * Writes its settings to an incoming repr object, if any. */ Inkscape::XML::Node* SPFeOffset::write(Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) { - SPFeOffset* object = this; - /* TODO: Don't just clone, but create a new repr node and write all * relevant values into it */ if (!repr) { - repr = object->getRepr()->duplicate(doc); + repr = this->getRepr()->duplicate(doc); } SPFilterPrimitive::write(doc, repr, flags); @@ -128,22 +121,18 @@ Inkscape::XML::Node* SPFeOffset::write(Inkscape::XML::Document *doc, Inkscape::X } void SPFeOffset::build_renderer(Inkscape::Filters::Filter* filter) { - SPFeOffset* primitive = this; - - g_assert(primitive != NULL); + g_assert(this != NULL); g_assert(filter != NULL); - SPFeOffset *sp_offset = SP_FEOFFSET(primitive); - int primitive_n = filter->add_primitive(Inkscape::Filters::NR_FILTER_OFFSET); Inkscape::Filters::FilterPrimitive *nr_primitive = filter->get_primitive(primitive_n); Inkscape::Filters::FilterOffset *nr_offset = dynamic_cast(nr_primitive); g_assert(nr_offset != NULL); - sp_filter_primitive_renderer_common(primitive, nr_primitive); + sp_filter_primitive_renderer_common(this, nr_primitive); - nr_offset->set_dx(sp_offset->dx); - nr_offset->set_dy(sp_offset->dy); + nr_offset->set_dx(this->dx); + nr_offset->set_dy(this->dy); } diff --git a/src/filters/offset.h b/src/filters/offset.h index 0f0ee63ee..10bed3338 100644 --- a/src/filters/offset.h +++ b/src/filters/offset.h @@ -24,6 +24,7 @@ public: double dx, dy; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/filters/specularlighting.cpp b/src/filters/specularlighting.cpp index bb291f2a9..6cdd5d9ba 100644 --- a/src/filters/specularlighting.cpp +++ b/src/filters/specularlighting.cpp @@ -71,16 +71,14 @@ SPFeSpecularLighting::~SPFeSpecularLighting() { * sp-object-repr.cpp's repr_name_entries array. */ void SPFeSpecularLighting::build(SPDocument *document, Inkscape::XML::Node *repr) { - SPFeSpecularLighting* object = this; - SPFilterPrimitive::build(document, repr); /*LOAD ATTRIBUTES FROM REPR HERE*/ - object->readAttr( "surfaceScale" ); - object->readAttr( "specularConstant" ); - object->readAttr( "specularExponent" ); - object->readAttr( "kernelUnitLength" ); - object->readAttr( "lighting-color" ); + this->readAttr( "surfaceScale" ); + this->readAttr( "specularConstant" ); + this->readAttr( "specularExponent" ); + this->readAttr( "kernelUnitLength" ); + this->readAttr( "lighting-color" ); } /** @@ -94,108 +92,106 @@ void SPFeSpecularLighting::release() { * Sets a specific value in the SPFeSpecularLighting. */ void SPFeSpecularLighting::set(unsigned int key, gchar const *value) { - SPFeSpecularLighting* object = this; - - SPFeSpecularLighting *feSpecularLighting = SP_FESPECULARLIGHTING(object); gchar const *cend_ptr = NULL; gchar *end_ptr = NULL; + switch(key) { /*DEAL WITH SETTING ATTRIBUTES HERE*/ //TODO test forbidden values case SP_ATTR_SURFACESCALE: end_ptr = NULL; if (value) { - feSpecularLighting->surfaceScale = g_ascii_strtod(value, &end_ptr); + this->surfaceScale = g_ascii_strtod(value, &end_ptr); if (end_ptr) { - feSpecularLighting->surfaceScale_set = TRUE; + this->surfaceScale_set = TRUE; } else { - g_warning("feSpecularLighting: surfaceScale should be a number ... defaulting to 1"); + g_warning("this: surfaceScale should be a number ... defaulting to 1"); } } //if the attribute is not set or has an unreadable value if (!value || !end_ptr) { - feSpecularLighting->surfaceScale = 1; - feSpecularLighting->surfaceScale_set = FALSE; + this->surfaceScale = 1; + this->surfaceScale_set = FALSE; } - if (feSpecularLighting->renderer) { - feSpecularLighting->renderer->surfaceScale = feSpecularLighting->surfaceScale; + if (this->renderer) { + this->renderer->surfaceScale = this->surfaceScale; } - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_SPECULARCONSTANT: end_ptr = NULL; if (value) { - feSpecularLighting->specularConstant = g_ascii_strtod(value, &end_ptr); - if (end_ptr && feSpecularLighting->specularConstant >= 0) { - feSpecularLighting->specularConstant_set = TRUE; + this->specularConstant = g_ascii_strtod(value, &end_ptr); + if (end_ptr && this->specularConstant >= 0) { + this->specularConstant_set = TRUE; } else { end_ptr = NULL; - g_warning("feSpecularLighting: specularConstant should be a positive number ... defaulting to 1"); + g_warning("this: specularConstant should be a positive number ... defaulting to 1"); } } if (!value || !end_ptr) { - feSpecularLighting->specularConstant = 1; - feSpecularLighting->specularConstant_set = FALSE; + this->specularConstant = 1; + this->specularConstant_set = FALSE; } - if (feSpecularLighting->renderer) { - feSpecularLighting->renderer->specularConstant = feSpecularLighting->specularConstant; + if (this->renderer) { + this->renderer->specularConstant = this->specularConstant; } - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_SPECULAREXPONENT: end_ptr = NULL; if (value) { - feSpecularLighting->specularExponent = g_ascii_strtod(value, &end_ptr); - if (feSpecularLighting->specularExponent >= 1 && feSpecularLighting->specularExponent <= 128) { - feSpecularLighting->specularExponent_set = TRUE; + this->specularExponent = g_ascii_strtod(value, &end_ptr); + if (this->specularExponent >= 1 && this->specularExponent <= 128) { + this->specularExponent_set = TRUE; } else { end_ptr = NULL; - g_warning("feSpecularLighting: specularExponent should be a number in range [1, 128] ... defaulting to 1"); + g_warning("this: specularExponent should be a number in range [1, 128] ... defaulting to 1"); } } if (!value || !end_ptr) { - feSpecularLighting->specularExponent = 1; - feSpecularLighting->specularExponent_set = FALSE; + this->specularExponent = 1; + this->specularExponent_set = FALSE; } - if (feSpecularLighting->renderer) { - feSpecularLighting->renderer->specularExponent = feSpecularLighting->specularExponent; + if (this->renderer) { + this->renderer->specularExponent = this->specularExponent; } - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_KERNELUNITLENGTH: //TODO kernelUnit - //feSpecularLighting->kernelUnitLength.set(value); + //this->kernelUnitLength.set(value); /*TODOif (feSpecularLighting->renderer) { feSpecularLighting->renderer->surfaceScale = feSpecularLighting->renderer; } */ - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_PROP_LIGHTING_COLOR: cend_ptr = NULL; - feSpecularLighting->lighting_color = sp_svg_read_color(value, &cend_ptr, 0xffffffff); + this->lighting_color = sp_svg_read_color(value, &cend_ptr, 0xffffffff); //if a value was read if (cend_ptr) { while (g_ascii_isspace(*cend_ptr)) { ++cend_ptr; } if (strneq(cend_ptr, "icc-color(", 10)) { - if (!feSpecularLighting->icc) feSpecularLighting->icc = new SVGICCColor(); - if ( ! sp_svg_read_icc_color( cend_ptr, feSpecularLighting->icc ) ) { - delete feSpecularLighting->icc; - feSpecularLighting->icc = NULL; + if (!this->icc) this->icc = new SVGICCColor(); + if ( ! sp_svg_read_icc_color( cend_ptr, this->icc ) ) { + delete this->icc; + this->icc = NULL; } } - feSpecularLighting->lighting_color_set = TRUE; + this->lighting_color_set = TRUE; } else { //lighting_color already contains the default value - feSpecularLighting->lighting_color_set = FALSE; + this->lighting_color_set = FALSE; } - if (feSpecularLighting->renderer) { - feSpecularLighting->renderer->lighting_color = feSpecularLighting->lighting_color; + if (this->renderer) { + this->renderer->lighting_color = this->lighting_color; } - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); break; default: SPFilterPrimitive::set(key, value); @@ -207,14 +203,12 @@ void SPFeSpecularLighting::set(unsigned int key, gchar const *value) { * Receives update notifications. */ void SPFeSpecularLighting::update(SPCtx *ctx, guint flags) { - SPFeSpecularLighting* object = this; - if (flags & (SP_OBJECT_MODIFIED_FLAG)) { - object->readAttr( "surfaceScale" ); - object->readAttr( "specularConstant" ); - object->readAttr( "specularExponent" ); - object->readAttr( "kernelUnitLength" ); - object->readAttr( "lighting-color" ); + this->readAttr( "surfaceScale" ); + this->readAttr( "specularConstant" ); + this->readAttr( "specularExponent" ); + this->readAttr( "kernelUnitLength" ); + this->readAttr( "lighting-color" ); } SPFilterPrimitive::update(ctx, flags); @@ -224,29 +218,32 @@ void SPFeSpecularLighting::update(SPCtx *ctx, guint flags) { * Writes its settings to an incoming repr object, if any. */ Inkscape::XML::Node* SPFeSpecularLighting::write(Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) { - SPFeSpecularLighting* object = this; - - SPFeSpecularLighting *fespecularlighting = SP_FESPECULARLIGHTING(object); - /* TODO: Don't just clone, but create a new repr node and write all * relevant values _and children_ into it */ if (!repr) { - repr = object->getRepr()->duplicate(doc); + repr = this->getRepr()->duplicate(doc); //repr = doc->createElement("svg:feSpecularLighting"); } - if (fespecularlighting->surfaceScale_set) - sp_repr_set_css_double(repr, "surfaceScale", fespecularlighting->surfaceScale); - if (fespecularlighting->specularConstant_set) - sp_repr_set_css_double(repr, "specularConstant", fespecularlighting->specularConstant); - if (fespecularlighting->specularExponent_set) - sp_repr_set_css_double(repr, "specularExponent", fespecularlighting->specularExponent); - /*TODO kernelUnits */ - if (fespecularlighting->lighting_color_set) { + if (this->surfaceScale_set) { + sp_repr_set_css_double(repr, "surfaceScale", this->surfaceScale); + } + + if (this->specularConstant_set) { + sp_repr_set_css_double(repr, "specularConstant", this->specularConstant); + } + + if (this->specularExponent_set) { + sp_repr_set_css_double(repr, "specularExponent", this->specularExponent); + } + + /*TODO kernelUnits */ + if (this->lighting_color_set) { gchar c[64]; - sp_svg_write_color(c, sizeof(c), fespecularlighting->lighting_color); + sp_svg_write_color(c, sizeof(c), this->lighting_color); repr->setAttribute("lighting-color", c); } + SPFilterPrimitive::write(doc, repr, flags); return repr; @@ -256,94 +253,84 @@ Inkscape::XML::Node* SPFeSpecularLighting::write(Inkscape::XML::Document *doc, I * Callback for child_added event. */ void SPFeSpecularLighting::child_added(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { - SPFeSpecularLighting* object = this; - - SPFeSpecularLighting *f = SP_FESPECULARLIGHTING(object); - SPFilterPrimitive::child_added(child, ref); - sp_feSpecularLighting_children_modified(f); - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + sp_feSpecularLighting_children_modified(this); + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } /** * Callback for remove_child event. */ void SPFeSpecularLighting::remove_child(Inkscape::XML::Node *child) { - SPFeSpecularLighting* object = this; - - SPFeSpecularLighting *f = SP_FESPECULARLIGHTING(object); - SPFilterPrimitive::remove_child(child); - sp_feSpecularLighting_children_modified(f); - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + sp_feSpecularLighting_children_modified(this); + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } void SPFeSpecularLighting::order_changed(Inkscape::XML::Node *child, Inkscape::XML::Node *old_ref, Inkscape::XML::Node *new_ref) { - SPFeSpecularLighting* object = this; - - SPFeSpecularLighting *f = SP_FESPECULARLIGHTING(object); SPFilterPrimitive::order_changed(child, old_ref, new_ref); - sp_feSpecularLighting_children_modified(f); - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + sp_feSpecularLighting_children_modified(this); + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } -static void sp_feSpecularLighting_children_modified(SPFeSpecularLighting *sp_specularlighting) -{ - if (sp_specularlighting->renderer) { +static void sp_feSpecularLighting_children_modified(SPFeSpecularLighting *sp_specularlighting) { + if (sp_specularlighting->renderer) { sp_specularlighting->renderer->light_type = Inkscape::Filters::NO_LIGHT; + if (SP_IS_FEDISTANTLIGHT(sp_specularlighting->children)) { sp_specularlighting->renderer->light_type = Inkscape::Filters::DISTANT_LIGHT; sp_specularlighting->renderer->light.distant = SP_FEDISTANTLIGHT(sp_specularlighting->children); } + if (SP_IS_FEPOINTLIGHT(sp_specularlighting->children)) { sp_specularlighting->renderer->light_type = Inkscape::Filters::POINT_LIGHT; sp_specularlighting->renderer->light.point = SP_FEPOINTLIGHT(sp_specularlighting->children); } + if (SP_IS_FESPOTLIGHT(sp_specularlighting->children)) { sp_specularlighting->renderer->light_type = Inkscape::Filters::SPOT_LIGHT; sp_specularlighting->renderer->light.spot = SP_FESPOTLIGHT(sp_specularlighting->children); } - } + } } void SPFeSpecularLighting::build_renderer(Inkscape::Filters::Filter* filter) { - SPFeSpecularLighting* primitive = this; - - g_assert(primitive != NULL); + g_assert(this != NULL); g_assert(filter != NULL); - SPFeSpecularLighting *sp_specularlighting = SP_FESPECULARLIGHTING(primitive); - int primitive_n = filter->add_primitive(Inkscape::Filters::NR_FILTER_SPECULARLIGHTING); Inkscape::Filters::FilterPrimitive *nr_primitive = filter->get_primitive(primitive_n); Inkscape::Filters::FilterSpecularLighting *nr_specularlighting = dynamic_cast(nr_primitive); g_assert(nr_specularlighting != NULL); - sp_specularlighting->renderer = nr_specularlighting; - sp_filter_primitive_renderer_common(primitive, nr_primitive); + this->renderer = nr_specularlighting; + sp_filter_primitive_renderer_common(this, nr_primitive); - nr_specularlighting->specularConstant = sp_specularlighting->specularConstant; - nr_specularlighting->specularExponent = sp_specularlighting->specularExponent; - nr_specularlighting->surfaceScale = sp_specularlighting->surfaceScale; - nr_specularlighting->lighting_color = sp_specularlighting->lighting_color; - nr_specularlighting->set_icc(sp_specularlighting->icc); + nr_specularlighting->specularConstant = this->specularConstant; + nr_specularlighting->specularExponent = this->specularExponent; + nr_specularlighting->surfaceScale = this->surfaceScale; + nr_specularlighting->lighting_color = this->lighting_color; + nr_specularlighting->set_icc(this->icc); //We assume there is at most one child nr_specularlighting->light_type = Inkscape::Filters::NO_LIGHT; - if (SP_IS_FEDISTANTLIGHT(primitive->children)) { + + if (SP_IS_FEDISTANTLIGHT(this->children)) { nr_specularlighting->light_type = Inkscape::Filters::DISTANT_LIGHT; - nr_specularlighting->light.distant = SP_FEDISTANTLIGHT(primitive->children); + nr_specularlighting->light.distant = SP_FEDISTANTLIGHT(this->children); } - if (SP_IS_FEPOINTLIGHT(primitive->children)) { + + if (SP_IS_FEPOINTLIGHT(this->children)) { nr_specularlighting->light_type = Inkscape::Filters::POINT_LIGHT; - nr_specularlighting->light.point = SP_FEPOINTLIGHT(primitive->children); + nr_specularlighting->light.point = SP_FEPOINTLIGHT(this->children); } - if (SP_IS_FESPOTLIGHT(primitive->children)) { + + if (SP_IS_FESPOTLIGHT(this->children)) { nr_specularlighting->light_type = Inkscape::Filters::SPOT_LIGHT; - nr_specularlighting->light.spot = SP_FESPOTLIGHT(primitive->children); + nr_specularlighting->light.spot = SP_FESPOTLIGHT(this->children); } //nr_offset->set_dx(sp_offset->dx); diff --git a/src/filters/specularlighting.h b/src/filters/specularlighting.h index 2e6cde922..081d0e0ed 100644 --- a/src/filters/specularlighting.h +++ b/src/filters/specularlighting.h @@ -46,6 +46,7 @@ public: Inkscape::Filters::FilterSpecularLighting *renderer; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/filters/tile.cpp b/src/filters/tile.cpp index 4bb93603c..19e96f47d 100644 --- a/src/filters/tile.cpp +++ b/src/filters/tile.cpp @@ -58,11 +58,6 @@ void SPFeTile::release() { * Sets a specific value in the SPFeTile. */ void SPFeTile::set(unsigned int key, gchar const *value) { - SPFeTile* object = this; - - SPFeTile *feTile = SP_FETILE(object); - (void)feTile; - switch(key) { /*DEAL WITH SETTING ATTRIBUTES HERE*/ default: @@ -75,8 +70,6 @@ void SPFeTile::set(unsigned int key, gchar const *value) { * Receives update notifications. */ void SPFeTile::update(SPCtx *ctx, guint flags) { - SPFeTile* object = this; - if (flags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG)) { @@ -91,12 +84,10 @@ void SPFeTile::update(SPCtx *ctx, guint flags) { * Writes its settings to an incoming repr object, if any. */ Inkscape::XML::Node* SPFeTile::write(Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) { - SPFeTile* object = this; - /* TODO: Don't just clone, but create a new repr node and write all * relevant values into it */ if (!repr) { - repr = object->getRepr()->duplicate(doc); + repr = this->getRepr()->duplicate(doc); } SPFilterPrimitive::write(doc, repr, flags); @@ -105,20 +96,15 @@ Inkscape::XML::Node* SPFeTile::write(Inkscape::XML::Document *doc, Inkscape::XML } void SPFeTile::build_renderer(Inkscape::Filters::Filter* filter) { - SPFeTile* primitive = this; - - g_assert(primitive != NULL); + g_assert(this != NULL); g_assert(filter != NULL); - SPFeTile *sp_tile = SP_FETILE(primitive); - (void)sp_tile; - int primitive_n = filter->add_primitive(Inkscape::Filters::NR_FILTER_TILE); Inkscape::Filters::FilterPrimitive *nr_primitive = filter->get_primitive(primitive_n); Inkscape::Filters::FilterTile *nr_tile = dynamic_cast(nr_primitive); g_assert(nr_tile != NULL); - sp_filter_primitive_renderer_common(primitive, nr_primitive); + sp_filter_primitive_renderer_common(this, nr_primitive); } /* diff --git a/src/filters/tile.h b/src/filters/tile.h index 35266c611..184858a3d 100644 --- a/src/filters/tile.h +++ b/src/filters/tile.h @@ -23,6 +23,7 @@ public: SPFeTile(); virtual ~SPFeTile(); +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/filters/turbulence.cpp b/src/filters/turbulence.cpp index caf93c3c0..d33667a8c 100644 --- a/src/filters/turbulence.cpp +++ b/src/filters/turbulence.cpp @@ -56,16 +56,14 @@ SPFeTurbulence::~SPFeTurbulence() { * sp-object-repr.cpp's repr_name_entries array. */ void SPFeTurbulence::build(SPDocument *document, Inkscape::XML::Node *repr) { - SPFeTurbulence* object = this; - SPFilterPrimitive::build(document, repr); /*LOAD ATTRIBUTES FROM REPR HERE*/ - object->readAttr( "baseFrequency" ); - object->readAttr( "numOctaves" ); - object->readAttr( "seed" ); - object->readAttr( "stitchTiles" ); - object->readAttr( "type" ); + this->readAttr( "baseFrequency" ); + this->readAttr( "numOctaves" ); + this->readAttr( "seed" ); + this->readAttr( "stitchTiles" ); + this->readAttr( "type" ); } /** @@ -76,28 +74,44 @@ void SPFeTurbulence::release() { } static bool sp_feTurbulence_read_stitchTiles(gchar const *value){ - if (!value) return false; // 'noStitch' is default + if (!value) { + return false; // 'noStitch' is default + } + switch(value[0]){ case 's': - if (strncmp(value, "stitch", 6) == 0) return true; + if (strncmp(value, "stitch", 6) == 0) { + return true; + } break; case 'n': - if (strncmp(value, "noStitch", 8) == 0) return false; + if (strncmp(value, "noStitch", 8) == 0) { + return false; + } break; } + return false; // 'noStitch' is default } static Inkscape::Filters::FilterTurbulenceType sp_feTurbulence_read_type(gchar const *value){ - if (!value) return Inkscape::Filters::TURBULENCE_TURBULENCE; // 'turbulence' is default + if (!value) { + return Inkscape::Filters::TURBULENCE_TURBULENCE; // 'turbulence' is default + } + switch(value[0]){ case 'f': - if (strncmp(value, "fractalNoise", 12) == 0) return Inkscape::Filters::TURBULENCE_FRACTALNOISE; + if (strncmp(value, "fractalNoise", 12) == 0) { + return Inkscape::Filters::TURBULENCE_FRACTALNOISE; + } break; case 't': - if (strncmp(value, "turbulence", 10) == 0) return Inkscape::Filters::TURBULENCE_TURBULENCE; + if (strncmp(value, "turbulence", 10) == 0) { + return Inkscape::Filters::TURBULENCE_TURBULENCE; + } break; } + return Inkscape::Filters::TURBULENCE_TURBULENCE; // 'turbulence' is default } @@ -105,11 +119,6 @@ static Inkscape::Filters::FilterTurbulenceType sp_feTurbulence_read_type(gchar c * Sets a specific value in the SPFeTurbulence. */ void SPFeTurbulence::set(unsigned int key, gchar const *value) { - SPFeTurbulence* object = this; - - SPFeTurbulence *feTurbulence = SP_FETURBULENCE(object); - (void)feTurbulence; - int read_int; double read_num; bool read_bool; @@ -117,45 +126,54 @@ void SPFeTurbulence::set(unsigned int key, gchar const *value) { switch(key) { /*DEAL WITH SETTING ATTRIBUTES HERE*/ - case SP_ATTR_BASEFREQUENCY: - feTurbulence->baseFrequency.set(value); - //From SVG spec: If two s are provided, the first number represents a base frequency in the X direction and the second value represents a base frequency in the Y direction. If one number is provided, then that value is used for both X and Y. - if (feTurbulence->baseFrequency.optNumIsSet() == false) - feTurbulence->baseFrequency.setOptNumber(feTurbulence->baseFrequency.getNumber()); - feTurbulence->updated = false; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->baseFrequency.set(value); + + // From SVG spec: If two s are provided, the first number represents + // a base frequency in the X direction and the second value represents a base + // frequency in the Y direction. If one number is provided, then that value is + // used for both X and Y. + if (this->baseFrequency.optNumIsSet() == false) { + this->baseFrequency.setOptNumber(this->baseFrequency.getNumber()); + } + + this->updated = false; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_NUMOCTAVES: read_int = value ? (int)floor(helperfns_read_number(value)) : 1; - if (read_int != feTurbulence->numOctaves){ - feTurbulence->numOctaves = read_int; - feTurbulence->updated = false; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (read_int != this->numOctaves){ + this->numOctaves = read_int; + this->updated = false; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_SEED: read_num = value ? helperfns_read_number(value) : 0; - if (read_num != feTurbulence->seed){ - feTurbulence->seed = read_num; - feTurbulence->updated = false; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (read_num != this->seed){ + this->seed = read_num; + this->updated = false; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_STITCHTILES: read_bool = sp_feTurbulence_read_stitchTiles(value); - if (read_bool != feTurbulence->stitchTiles){ - feTurbulence->stitchTiles = read_bool; - feTurbulence->updated = false; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (read_bool != this->stitchTiles){ + this->stitchTiles = read_bool; + this->updated = false; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; case SP_ATTR_TYPE: read_type = sp_feTurbulence_read_type(value); - if (read_type != feTurbulence->type){ - feTurbulence->type = read_type; - feTurbulence->updated = false; - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (read_type != this->type){ + this->type = read_type; + this->updated = false; + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; default: @@ -168,8 +186,6 @@ void SPFeTurbulence::set(unsigned int key, gchar const *value) { * Receives update notifications. */ void SPFeTurbulence::update(SPCtx *ctx, guint flags) { - SPFeTurbulence* object = this; - if (flags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG)) { @@ -184,12 +200,10 @@ void SPFeTurbulence::update(SPCtx *ctx, guint flags) { * Writes its settings to an incoming repr object, if any. */ Inkscape::XML::Node* SPFeTurbulence::write(Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) { - SPFeTurbulence* object = this; - /* TODO: Don't just clone, but create a new repr node and write all * relevant values into it */ if (!repr) { - repr = object->getRepr()->duplicate(doc); + repr = this->getRepr()->duplicate(doc); } SPFilterPrimitive::write(doc, repr, flags); @@ -201,27 +215,23 @@ Inkscape::XML::Node* SPFeTurbulence::write(Inkscape::XML::Document *doc, Inkscap } void SPFeTurbulence::build_renderer(Inkscape::Filters::Filter* filter) { - SPFeTurbulence* primitive = this; - - g_assert(primitive != NULL); + g_assert(this != NULL); g_assert(filter != NULL); - SPFeTurbulence *sp_turbulence = SP_FETURBULENCE(primitive); - int primitive_n = filter->add_primitive(Inkscape::Filters::NR_FILTER_TURBULENCE); Inkscape::Filters::FilterPrimitive *nr_primitive = filter->get_primitive(primitive_n); Inkscape::Filters::FilterTurbulence *nr_turbulence = dynamic_cast(nr_primitive); g_assert(nr_turbulence != NULL); - sp_filter_primitive_renderer_common(primitive, nr_primitive); + sp_filter_primitive_renderer_common(this, nr_primitive); - nr_turbulence->set_baseFrequency(0, sp_turbulence->baseFrequency.getNumber()); - nr_turbulence->set_baseFrequency(1, sp_turbulence->baseFrequency.getOptNumber()); - nr_turbulence->set_numOctaves(sp_turbulence->numOctaves); - nr_turbulence->set_seed(sp_turbulence->seed); - nr_turbulence->set_stitchTiles(sp_turbulence->stitchTiles); - nr_turbulence->set_type(sp_turbulence->type); - nr_turbulence->set_updated(sp_turbulence->updated); + nr_turbulence->set_baseFrequency(0, this->baseFrequency.getNumber()); + nr_turbulence->set_baseFrequency(1, this->baseFrequency.getOptNumber()); + nr_turbulence->set_numOctaves(this->numOctaves); + nr_turbulence->set_seed(this->seed); + nr_turbulence->set_stitchTiles(this->stitchTiles); + nr_turbulence->set_type(this->type); + nr_turbulence->set_updated(this->updated); } /* diff --git a/src/filters/turbulence.h b/src/filters/turbulence.h index 4c61665fe..d6046036a 100644 --- a/src/filters/turbulence.h +++ b/src/filters/turbulence.h @@ -36,6 +36,7 @@ public: SVGLength x, y, height, width; bool updated; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/sp-flowdiv.cpp b/src/sp-flowdiv.cpp index 13233748d..867e68441 100644 --- a/src/sp-flowdiv.cpp +++ b/src/sp-flowdiv.cpp @@ -6,10 +6,6 @@ #endif #include "xml/repr.h" -//#include "svg/svg.h" - -//#include "style.h" - #include "sp-flowdiv.h" #include "sp-string.h" #include "document.h" @@ -55,7 +51,6 @@ void SPFlowdiv::release() { } void SPFlowdiv::update(SPCtx *ctx, unsigned int flags) { - SPFlowdiv* object = this; SPItemCtx *ictx = reinterpret_cast(ctx); SPItemCtx cctx = *ictx; @@ -64,17 +59,21 @@ void SPFlowdiv::update(SPCtx *ctx, unsigned int flags) { if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; } + flags &= SP_OBJECT_MODIFIED_CASCADE; GSList* l = NULL; - for (SPObject *child = object->firstChild() ; child ; child = child->getNext() ) { + for (SPObject *child = this->firstChild() ; child ; child = child->getNext() ) { sp_object_ref(child); l = g_slist_prepend(l, child); } + l = g_slist_reverse(l); + while (l) { SPObject *child = SP_OBJECT(l->data); l = g_slist_remove(l, child); + if (flags || (child->uflags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_CHILD_MODIFIED_FLAG))) { if (SP_IS_ITEM(child)) { SPItem const &chi = *SP_ITEM(child); @@ -85,41 +84,43 @@ void SPFlowdiv::update(SPCtx *ctx, unsigned int flags) { child->updateDisplay(ctx, flags); } } + sp_object_unref(child); } } void SPFlowdiv::modified(unsigned int flags) { - SPFlowdiv* object = this; - SPItem::modified(flags); if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; } + flags &= SP_OBJECT_MODIFIED_CASCADE; GSList *l = NULL; - for ( SPObject *child = object->firstChild() ; child ; child = child->getNext() ) { + for ( SPObject *child = this->firstChild() ; child ; child = child->getNext() ) { sp_object_ref(child); l = g_slist_prepend(l, child); } + l = g_slist_reverse (l); + while (l) { SPObject *child = SP_OBJECT(l->data); l = g_slist_remove(l, child); + if (flags || (child->mflags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_CHILD_MODIFIED_FLAG))) { child->emitModified(flags); } + sp_object_unref(child); } } void SPFlowdiv::build(SPDocument *doc, Inkscape::XML::Node *repr) { - SPFlowdiv* object = this; - - object->_requireSVGVersion(Inkscape::Version(1, 2)); + this->_requireSVGVersion(Inkscape::Version(1, 2)); SPItem::build(doc, repr); } @@ -130,15 +131,16 @@ void SPFlowdiv::set(unsigned int key, const gchar* value) { Inkscape::XML::Node* SPFlowdiv::write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { - SPFlowdiv* object = this; - if ( flags & SP_OBJECT_WRITE_BUILD ) { if ( repr == NULL ) { repr = xml_doc->createElement("svg:flowDiv"); } + GSList *l = NULL; - for (SPObject* child = object->firstChild() ; child ; child = child->getNext() ) { + + for (SPObject* child = this->firstChild() ; child ; child = child->getNext() ) { Inkscape::XML::Node* c_repr = NULL; + if ( SP_IS_FLOWTSPAN (child) ) { c_repr = child->updateRepr(xml_doc, NULL, flags); } else if ( SP_IS_FLOWPARA(child) ) { @@ -146,17 +148,19 @@ Inkscape::XML::Node* SPFlowdiv::write(Inkscape::XML::Document *xml_doc, Inkscape } else if ( SP_IS_STRING(child) ) { c_repr = xml_doc->createTextNode(SP_STRING(child)->string.c_str()); } + if ( c_repr ) { l = g_slist_prepend (l, c_repr); } } + while ( l ) { repr->addChild((Inkscape::XML::Node *) l->data, NULL); Inkscape::GC::release((Inkscape::XML::Node *) l->data); l = g_slist_remove(l, l->data); } } else { - for ( SPObject* child = object->firstChild() ; child ; child = child->getNext() ) { + for ( SPObject* child = this->firstChild() ; child ; child = child->getNext() ) { if ( SP_IS_FLOWTSPAN (child) ) { child->updateRepr(flags); } else if ( SP_IS_FLOWPARA(child) ) { @@ -188,8 +192,6 @@ void SPFlowtspan::release() { } void SPFlowtspan::update(SPCtx *ctx, unsigned int flags) { - SPFlowtspan* object = this; - SPItemCtx *ictx = reinterpret_cast(ctx); SPItemCtx cctx = *ictx; @@ -198,17 +200,21 @@ void SPFlowtspan::update(SPCtx *ctx, unsigned int flags) { if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; } + flags &= SP_OBJECT_MODIFIED_CASCADE; GSList* l = NULL; - for ( SPObject *child = object->firstChild() ; child ; child = child->getNext() ) { + for ( SPObject *child = this->firstChild() ; child ; child = child->getNext() ) { sp_object_ref(child); l = g_slist_prepend(l, child); } + l = g_slist_reverse (l); + while (l) { SPObject *child = SP_OBJECT(l->data); l = g_slist_remove(l, child); + if (flags || (child->uflags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_CHILD_MODIFIED_FLAG))) { if (SP_IS_ITEM(child)) { SPItem const &chi = *SP_ITEM(child); @@ -219,39 +225,42 @@ void SPFlowtspan::update(SPCtx *ctx, unsigned int flags) { child->updateDisplay(ctx, flags); } } + sp_object_unref(child); } } void SPFlowtspan::modified(unsigned int flags) { - SPFlowtspan* object = this; - SPItem::modified(flags); if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; } + flags &= SP_OBJECT_MODIFIED_CASCADE; GSList *l = NULL; - for ( SPObject *child = object->firstChild() ; child ; child = child->getNext() ) { + for ( SPObject *child = this->firstChild() ; child ; child = child->getNext() ) { sp_object_ref(child); l = g_slist_prepend(l, child); } + l = g_slist_reverse (l); + while (l) { SPObject *child = SP_OBJECT(l->data); l = g_slist_remove(l, child); + if (flags || (child->mflags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_CHILD_MODIFIED_FLAG))) { child->emitModified(flags); } + sp_object_unref(child); } } -void SPFlowtspan::build(SPDocument *doc, Inkscape::XML::Node *repr) -{ +void SPFlowtspan::build(SPDocument *doc, Inkscape::XML::Node *repr) { SPItem::build(doc, repr); } @@ -259,17 +268,17 @@ void SPFlowtspan::set(unsigned int key, const gchar* value) { SPItem::set(key, value); } -Inkscape::XML::Node *SPFlowtspan::write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) -{ - SPFlowtspan* object = this; - +Inkscape::XML::Node *SPFlowtspan::write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { if ( flags&SP_OBJECT_WRITE_BUILD ) { if ( repr == NULL ) { repr = xml_doc->createElement("svg:flowSpan"); } + GSList *l = NULL; - for ( SPObject* child = object->firstChild() ; child ; child = child->getNext() ) { + + for ( SPObject* child = this->firstChild() ; child ; child = child->getNext() ) { Inkscape::XML::Node* c_repr = NULL; + if ( SP_IS_FLOWTSPAN(child) ) { c_repr = child->updateRepr(xml_doc, NULL, flags); } else if ( SP_IS_FLOWPARA(child) ) { @@ -277,17 +286,19 @@ Inkscape::XML::Node *SPFlowtspan::write(Inkscape::XML::Document *xml_doc, Inksca } else if ( SP_IS_STRING(child) ) { c_repr = xml_doc->createTextNode(SP_STRING(child)->string.c_str()); } + if ( c_repr ) { l = g_slist_prepend(l, c_repr); } } + while ( l ) { repr->addChild((Inkscape::XML::Node *) l->data, NULL); Inkscape::GC::release((Inkscape::XML::Node *) l->data); l = g_slist_remove(l, l->data); } } else { - for ( SPObject* child = object->firstChild() ; child ; child = child->getNext() ) { + for ( SPObject* child = this->firstChild() ; child ; child = child->getNext() ) { if ( SP_IS_FLOWTSPAN(child) ) { child->updateRepr(flags); } else if ( SP_IS_FLOWPARA(child) ) { @@ -304,8 +315,6 @@ Inkscape::XML::Node *SPFlowtspan::write(Inkscape::XML::Document *xml_doc, Inksca } - - /* * */ @@ -319,10 +328,7 @@ void SPFlowpara::release() { SPItem::release(); } -void SPFlowpara::update(SPCtx *ctx, unsigned int flags) -{ - SPFlowpara* object = this; - +void SPFlowpara::update(SPCtx *ctx, unsigned int flags) { SPItemCtx *ictx = reinterpret_cast(ctx); SPItemCtx cctx = *ictx; @@ -331,17 +337,21 @@ void SPFlowpara::update(SPCtx *ctx, unsigned int flags) if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; } + flags &= SP_OBJECT_MODIFIED_CASCADE; GSList* l = NULL; - for ( SPObject *child = object->firstChild() ; child ; child = child->getNext() ) { + for ( SPObject *child = this->firstChild() ; child ; child = child->getNext() ) { sp_object_ref(child); l = g_slist_prepend(l, child); } + l = g_slist_reverse (l); + while (l) { SPObject *child = SP_OBJECT(l->data); l = g_slist_remove(l, child); + if (flags || (child->uflags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_CHILD_MODIFIED_FLAG))) { if (SP_IS_ITEM(child)) { SPItem const &chi = *SP_ITEM(child); @@ -352,39 +362,42 @@ void SPFlowpara::update(SPCtx *ctx, unsigned int flags) child->updateDisplay(ctx, flags); } } + sp_object_unref(child); } } void SPFlowpara::modified(unsigned int flags) { - SPFlowpara* object = this; - SPItem::modified(flags); if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; } + flags &= SP_OBJECT_MODIFIED_CASCADE; GSList *l = NULL; - for ( SPObject *child = object->firstChild() ; child ; child = child->getNext() ) { + for ( SPObject *child = this->firstChild() ; child ; child = child->getNext() ) { sp_object_ref(child); l = g_slist_prepend(l, child); } + l = g_slist_reverse (l); + while (l) { SPObject *child = SP_OBJECT(l->data); l = g_slist_remove(l, child); + if (flags || (child->mflags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_CHILD_MODIFIED_FLAG))) { child->emitModified(flags); } + sp_object_unref(child); } } -void SPFlowpara::build(SPDocument *doc, Inkscape::XML::Node *repr) -{ +void SPFlowpara::build(SPDocument *doc, Inkscape::XML::Node *repr) { SPItem::build(doc, repr); } @@ -392,15 +405,17 @@ void SPFlowpara::set(unsigned int key, const gchar* value) { SPItem::set(key, value); } -Inkscape::XML::Node *SPFlowpara::write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) -{ - SPFlowpara* object = this; - +Inkscape::XML::Node *SPFlowpara::write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { if ( flags&SP_OBJECT_WRITE_BUILD ) { - if ( repr == NULL ) repr = xml_doc->createElement("svg:flowPara"); + if ( repr == NULL ) { + repr = xml_doc->createElement("svg:flowPara"); + } + GSList *l = NULL; - for ( SPObject* child = object->firstChild() ; child ; child = child->getNext() ) { + + for ( SPObject* child = this->firstChild() ; child ; child = child->getNext() ) { Inkscape::XML::Node* c_repr = NULL; + if ( SP_IS_FLOWTSPAN(child) ) { c_repr = child->updateRepr(xml_doc, NULL, flags); } else if ( SP_IS_FLOWPARA(child) ) { @@ -408,17 +423,19 @@ Inkscape::XML::Node *SPFlowpara::write(Inkscape::XML::Document *xml_doc, Inkscap } else if ( SP_IS_STRING(child) ) { c_repr = xml_doc->createTextNode(SP_STRING(child)->string.c_str()); } + if ( c_repr ) { l = g_slist_prepend(l, c_repr); } } + while ( l ) { repr->addChild((Inkscape::XML::Node *) l->data, NULL); Inkscape::GC::release((Inkscape::XML::Node *) l->data); l = g_slist_remove(l, l->data); } } else { - for ( SPObject* child = object->firstChild() ; child ; child = child->getNext() ) { + for ( SPObject* child = this->firstChild() ; child ; child = child->getNext() ) { if ( SP_IS_FLOWTSPAN(child) ) { child->updateRepr(flags); } else if ( SP_IS_FLOWPARA(child) ) { @@ -455,16 +472,15 @@ void SPFlowline::modified(unsigned int flags) { if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; } + flags &= SP_OBJECT_MODIFIED_CASCADE; } -Inkscape::XML::Node *SPFlowline::write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) -{ +Inkscape::XML::Node *SPFlowline::write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { if ( flags & SP_OBJECT_WRITE_BUILD ) { if ( repr == NULL ) { repr = xml_doc->createElement("svg:flowLine"); } - } else { } SPObject::write(xml_doc, repr, flags); @@ -493,16 +509,15 @@ void SPFlowregionbreak::modified(unsigned int flags) { if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; } + flags &= SP_OBJECT_MODIFIED_CASCADE; } -Inkscape::XML::Node *SPFlowregionbreak::write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) -{ +Inkscape::XML::Node *SPFlowregionbreak::write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { if ( flags & SP_OBJECT_WRITE_BUILD ) { if ( repr == NULL ) { repr = xml_doc->createElement("svg:flowLine"); } - } else { } SPObject::write(xml_doc, repr, flags); diff --git a/src/sp-flowdiv.h b/src/sp-flowdiv.h index 8fa64e2b8..9980dc4da 100644 --- a/src/sp-flowdiv.h +++ b/src/sp-flowdiv.h @@ -28,6 +28,7 @@ public: SPFlowdiv(); virtual ~SPFlowdiv(); +protected: virtual void build(SPDocument *document, Inkscape::XML::Node *repr); virtual void release(); virtual void update(SPCtx* ctx, guint flags); @@ -42,6 +43,7 @@ public: SPFlowtspan(); virtual ~SPFlowtspan(); +protected: virtual void build(SPDocument *document, Inkscape::XML::Node *repr); virtual void release(); virtual void update(SPCtx* ctx, guint flags); @@ -56,6 +58,7 @@ public: SPFlowpara(); virtual ~SPFlowpara(); +protected: virtual void build(SPDocument *document, Inkscape::XML::Node *repr); virtual void release(); virtual void update(SPCtx* ctx, guint flags); @@ -71,6 +74,7 @@ public: SPFlowline(); virtual ~SPFlowline(); +protected: virtual void release(); virtual void modified(unsigned int flags); @@ -82,6 +86,7 @@ public: SPFlowregionbreak(); virtual ~SPFlowregionbreak(); +protected: virtual void release(); virtual void modified(unsigned int flags); diff --git a/src/sp-font-face.cpp b/src/sp-font-face.cpp index 39242b870..9782f0c83 100644 --- a/src/sp-font-face.cpp +++ b/src/sp-font-face.cpp @@ -327,59 +327,48 @@ SPFontFace::~SPFontFace() { void SPFontFace::build(SPDocument *document, Inkscape::XML::Node *repr) { SPObject::build(document, repr); - SPFontFace* object = this; - - object->readAttr( "font-family" ); - object->readAttr( "font-style" ); - object->readAttr( "font-variant" ); - object->readAttr( "font-weight" ); - object->readAttr( "font-stretch" ); - object->readAttr( "font-size" ); - object->readAttr( "unicode-range" ); - object->readAttr( "units-per-em" ); - object->readAttr( "panose-1" ); - object->readAttr( "stem-v" ); - object->readAttr( "stem-h" ); - object->readAttr( "slope" ); - object->readAttr( "cap-height" ); - object->readAttr( "x-height" ); - object->readAttr( "accent-height" ); - object->readAttr( "ascent" ); - object->readAttr( "descent" ); - object->readAttr( "widths" ); - object->readAttr( "bbox" ); - object->readAttr( "ideographic" ); - object->readAttr( "alphabetic" ); - object->readAttr( "mathematical" ); - object->readAttr( "ranging" ); - object->readAttr( "v-ideogaphic" ); - object->readAttr( "v-alphabetic" ); - object->readAttr( "v-mathematical" ); - object->readAttr( "v-hanging" ); - object->readAttr( "underline-position" ); - object->readAttr( "underline-thickness" ); - object->readAttr( "strikethrough-position" ); - object->readAttr( "strikethrough-thickness" ); - object->readAttr( "overline-position" ); - object->readAttr( "overline-thickness" ); -} - -static void sp_fontface_children_modified(SPFontFace */*sp_fontface*/) -{ + this->readAttr( "font-family" ); + this->readAttr( "font-style" ); + this->readAttr( "font-variant" ); + this->readAttr( "font-weight" ); + this->readAttr( "font-stretch" ); + this->readAttr( "font-size" ); + this->readAttr( "unicode-range" ); + this->readAttr( "units-per-em" ); + this->readAttr( "panose-1" ); + this->readAttr( "stem-v" ); + this->readAttr( "stem-h" ); + this->readAttr( "slope" ); + this->readAttr( "cap-height" ); + this->readAttr( "x-height" ); + this->readAttr( "accent-height" ); + this->readAttr( "ascent" ); + this->readAttr( "descent" ); + this->readAttr( "widths" ); + this->readAttr( "bbox" ); + this->readAttr( "ideographic" ); + this->readAttr( "alphabetic" ); + this->readAttr( "mathematical" ); + this->readAttr( "ranging" ); + this->readAttr( "v-ideogaphic" ); + this->readAttr( "v-alphabetic" ); + this->readAttr( "v-mathematical" ); + this->readAttr( "v-hanging" ); + this->readAttr( "underline-position" ); + this->readAttr( "underline-thickness" ); + this->readAttr( "strikethrough-position" ); + this->readAttr( "strikethrough-thickness" ); + this->readAttr( "overline-position" ); + this->readAttr( "overline-thickness" ); } /** * Callback for child_added event. */ void SPFontFace::child_added(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { - SPFontFace* object = this; - - SPFontFace *f = SP_FONTFACE(object); - SPObject::child_added(child, ref); - sp_fontface_children_modified(f); - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } @@ -387,14 +376,9 @@ void SPFontFace::child_added(Inkscape::XML::Node *child, Inkscape::XML::Node *re * Callback for remove_child event. */ void SPFontFace::remove_child(Inkscape::XML::Node *child) { - SPFontFace* object = this; - - SPFontFace *f = SP_FONTFACE(object); - SPObject::remove_child(child); - sp_fontface_children_modified(f); - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } void SPFontFace::release() { @@ -402,9 +386,6 @@ void SPFontFace::release() { } void SPFontFace::set(unsigned int key, const gchar *value) { - SPFontFace* object = this; - - SPFontFace *face = SP_FONTFACE(object); std::vector style; std::vector variant; std::vector weight; @@ -412,22 +393,24 @@ void SPFontFace::set(unsigned int key, const gchar *value) { switch (key) { case SP_PROP_FONT_FAMILY: - if (face->font_family) { - g_free(face->font_family); + if (this->font_family) { + g_free(this->font_family); } - face->font_family = g_strdup(value); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + this->font_family = g_strdup(value); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_PROP_FONT_STYLE: style = sp_read_fontFaceStyleType(value); - if (face->font_style.size() != style.size()){ - face->font_style = style; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (this->font_style.size() != style.size()){ + this->font_style = style; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } else { for (unsigned int i=0;ifont_style[i]){ - face->font_style = style; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + if (style[i] != this->font_style[i]){ + this->font_style = style; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; } } @@ -435,14 +418,15 @@ void SPFontFace::set(unsigned int key, const gchar *value) { break; case SP_PROP_FONT_VARIANT: variant = sp_read_fontFaceVariantType(value); - if (face->font_variant.size() != variant.size()){ - face->font_variant = variant; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (this->font_variant.size() != variant.size()){ + this->font_variant = variant; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } else { for (unsigned int i=0;ifont_variant[i]){ - face->font_variant = variant; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + if (variant[i] != this->font_variant[i]){ + this->font_variant = variant; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; } } @@ -450,14 +434,15 @@ void SPFontFace::set(unsigned int key, const gchar *value) { break; case SP_PROP_FONT_WEIGHT: weight = sp_read_fontFaceWeightType(value); - if (face->font_weight.size() != weight.size()){ - face->font_weight = weight; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (this->font_weight.size() != weight.size()){ + this->font_weight = weight; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } else { for (unsigned int i=0;ifont_weight[i]){ - face->font_weight = weight; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + if (weight[i] != this->font_weight[i]){ + this->font_weight = weight; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; } } @@ -465,14 +450,15 @@ void SPFontFace::set(unsigned int key, const gchar *value) { break; case SP_PROP_FONT_STRETCH: stretch = sp_read_fontFaceStretchType(value); - if (face->font_stretch.size() != stretch.size()){ - face->font_stretch = stretch; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (this->font_stretch.size() != stretch.size()){ + this->font_stretch = stretch; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } else { for (unsigned int i=0;ifont_stretch[i]){ - face->font_stretch = stretch; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + if (stretch[i] != this->font_stretch[i]){ + this->font_stretch = stretch; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; } } @@ -481,207 +467,230 @@ void SPFontFace::set(unsigned int key, const gchar *value) { case SP_ATTR_UNITS_PER_EM: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != face->units_per_em){ - face->units_per_em = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->units_per_em){ + this->units_per_em = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_STEMV: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != face->stemv){ - face->stemv = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->stemv){ + this->stemv = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_STEMH: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != face->stemh){ - face->stemh = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->stemh){ + this->stemh = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_SLOPE: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != face->slope){ - face->slope = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->slope){ + this->slope = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_CAP_HEIGHT: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != face->cap_height){ - face->cap_height = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->cap_height){ + this->cap_height = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_X_HEIGHT: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != face->x_height){ - face->x_height = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->x_height){ + this->x_height = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_ACCENT_HEIGHT: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != face->accent_height){ - face->accent_height = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->accent_height){ + this->accent_height = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_ASCENT: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != face->ascent){ - face->ascent = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->ascent){ + this->ascent = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_DESCENT: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != face->descent){ - face->descent = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->descent){ + this->descent = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_IDEOGRAPHIC: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != face->ideographic){ - face->ideographic = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->ideographic){ + this->ideographic = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_ALPHABETIC: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != face->alphabetic){ - face->alphabetic = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->alphabetic){ + this->alphabetic = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_MATHEMATICAL: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != face->mathematical){ - face->mathematical = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->mathematical){ + this->mathematical = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_HANGING: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != face->hanging){ - face->hanging = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->hanging){ + this->hanging = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_V_IDEOGRAPHIC: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != face->v_ideographic){ - face->v_ideographic = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->v_ideographic){ + this->v_ideographic = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_V_ALPHABETIC: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != face->v_alphabetic){ - face->v_alphabetic = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->v_alphabetic){ + this->v_alphabetic = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_V_MATHEMATICAL: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != face->v_mathematical){ - face->v_mathematical = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->v_mathematical){ + this->v_mathematical = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_V_HANGING: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != face->v_hanging){ - face->v_hanging = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->v_hanging){ + this->v_hanging = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_UNDERLINE_POSITION: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != face->underline_position){ - face->underline_position = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->underline_position){ + this->underline_position = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_UNDERLINE_THICKNESS: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != face->underline_thickness){ - face->underline_thickness = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->underline_thickness){ + this->underline_thickness = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_STRIKETHROUGH_POSITION: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != face->strikethrough_position){ - face->strikethrough_position = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->strikethrough_position){ + this->strikethrough_position = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_STRIKETHROUGH_THICKNESS: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != face->strikethrough_thickness){ - face->strikethrough_thickness = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->strikethrough_thickness){ + this->strikethrough_thickness = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_OVERLINE_POSITION: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != face->overline_position){ - face->overline_position = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->overline_position){ + this->overline_position = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_OVERLINE_THICKNESS: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != face->overline_thickness){ - face->overline_thickness = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->overline_thickness){ + this->overline_thickness = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } @@ -695,42 +704,40 @@ void SPFontFace::set(unsigned int key, const gchar *value) { * Receives update notifications. */ void SPFontFace::update(SPCtx *ctx, guint flags) { - SPFontFace* object = this; - if (flags & (SP_OBJECT_MODIFIED_FLAG)) { - object->readAttr( "font-family" ); - object->readAttr( "font-style" ); - object->readAttr( "font-variant" ); - object->readAttr( "font-weight" ); - object->readAttr( "font-stretch" ); - object->readAttr( "font-size" ); - object->readAttr( "unicode-range" ); - object->readAttr( "units-per-em" ); - object->readAttr( "panose-1" ); - object->readAttr( "stemv" ); - object->readAttr( "stemh" ); - object->readAttr( "slope" ); - object->readAttr( "cap-height" ); - object->readAttr( "x-height" ); - object->readAttr( "accent-height" ); - object->readAttr( "ascent" ); - object->readAttr( "descent" ); - object->readAttr( "widths" ); - object->readAttr( "bbox" ); - object->readAttr( "ideographic" ); - object->readAttr( "alphabetic" ); - object->readAttr( "mathematical" ); - object->readAttr( "hanging" ); - object->readAttr( "v-ideographic" ); - object->readAttr( "v-alphabetic" ); - object->readAttr( "v-mathematical" ); - object->readAttr( "v-hanging" ); - object->readAttr( "underline-position" ); - object->readAttr( "underline-thickness" ); - object->readAttr( "strikethrough-position" ); - object->readAttr( "strikethrough-thickness" ); - object->readAttr( "overline-position" ); - object->readAttr( "overline-thickness" ); + this->readAttr( "font-family" ); + this->readAttr( "font-style" ); + this->readAttr( "font-variant" ); + this->readAttr( "font-weight" ); + this->readAttr( "font-stretch" ); + this->readAttr( "font-size" ); + this->readAttr( "unicode-range" ); + this->readAttr( "units-per-em" ); + this->readAttr( "panose-1" ); + this->readAttr( "stemv" ); + this->readAttr( "stemh" ); + this->readAttr( "slope" ); + this->readAttr( "cap-height" ); + this->readAttr( "x-height" ); + this->readAttr( "accent-height" ); + this->readAttr( "ascent" ); + this->readAttr( "descent" ); + this->readAttr( "widths" ); + this->readAttr( "bbox" ); + this->readAttr( "ideographic" ); + this->readAttr( "alphabetic" ); + this->readAttr( "mathematical" ); + this->readAttr( "hanging" ); + this->readAttr( "v-ideographic" ); + this->readAttr( "v-alphabetic" ); + this->readAttr( "v-mathematical" ); + this->readAttr( "v-hanging" ); + this->readAttr( "underline-position" ); + this->readAttr( "underline-thickness" ); + this->readAttr( "strikethrough-position" ); + this->readAttr( "strikethrough-thickness" ); + this->readAttr( "overline-position" ); + this->readAttr( "overline-thickness" ); } SPObject::update(ctx, flags); @@ -739,10 +746,6 @@ void SPFontFace::update(SPCtx *ctx, guint flags) { #define COPY_ATTR(rd,rs,key) (rd)->setAttribute((key), rs->attribute(key)); Inkscape::XML::Node* SPFontFace::write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { - SPFontFace* object = this; - - SPFontFace *face = SP_FONTFACE(object); - if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { repr = xml_doc->createElement("svg:font-face"); } @@ -755,69 +758,69 @@ Inkscape::XML::Node* SPFontFace::write(Inkscape::XML::Document *xml_doc, Inkscap //sp_repr_set_svg_double(repr, "font-stretch", face->font_stretch); //sp_repr_set_svg_double(repr, "font-size", face->font_size); //sp_repr_set_svg_double(repr, "unicode-range", face->unicode_range); - sp_repr_set_svg_double(repr, "units-per-em", face->units_per_em); + sp_repr_set_svg_double(repr, "units-per-em", this->units_per_em); //sp_repr_set_svg_double(repr, "panose-1", face->panose_1); - sp_repr_set_svg_double(repr, "stemv", face->stemv); - sp_repr_set_svg_double(repr, "stemh", face->stemh); - sp_repr_set_svg_double(repr, "slope", face->slope); - sp_repr_set_svg_double(repr, "cap-height", face->cap_height); - sp_repr_set_svg_double(repr, "x-height", face->x_height); - sp_repr_set_svg_double(repr, "accent-height", face->accent_height); - sp_repr_set_svg_double(repr, "ascent", face->ascent); - sp_repr_set_svg_double(repr, "descent", face->descent); + sp_repr_set_svg_double(repr, "stemv", this->stemv); + sp_repr_set_svg_double(repr, "stemh", this->stemh); + sp_repr_set_svg_double(repr, "slope", this->slope); + sp_repr_set_svg_double(repr, "cap-height", this->cap_height); + sp_repr_set_svg_double(repr, "x-height", this->x_height); + sp_repr_set_svg_double(repr, "accent-height", this->accent_height); + sp_repr_set_svg_double(repr, "ascent", this->ascent); + sp_repr_set_svg_double(repr, "descent", this->descent); //sp_repr_set_svg_double(repr, "widths", face->widths); //sp_repr_set_svg_double(repr, "bbox", face->bbox); - sp_repr_set_svg_double(repr, "ideographic", face->ideographic); - sp_repr_set_svg_double(repr, "alphabetic", face->alphabetic); - sp_repr_set_svg_double(repr, "mathematical", face->mathematical); - sp_repr_set_svg_double(repr, "hanging", face->hanging); - sp_repr_set_svg_double(repr, "v-ideographic", face->v_ideographic); - sp_repr_set_svg_double(repr, "v-alphabetic", face->v_alphabetic); - sp_repr_set_svg_double(repr, "v-mathematical", face->v_mathematical); - sp_repr_set_svg_double(repr, "v-hanging", face->v_hanging); - sp_repr_set_svg_double(repr, "underline-position", face->underline_position); - sp_repr_set_svg_double(repr, "underline-thickness", face->underline_thickness); - sp_repr_set_svg_double(repr, "strikethrough-position", face->strikethrough_position); - sp_repr_set_svg_double(repr, "strikethrough-thickness", face->strikethrough_thickness); - sp_repr_set_svg_double(repr, "overline-position", face->overline_position); - sp_repr_set_svg_double(repr, "overline-thickness", face->overline_thickness); - - if (repr != object->getRepr()) { + sp_repr_set_svg_double(repr, "ideographic", this->ideographic); + sp_repr_set_svg_double(repr, "alphabetic", this->alphabetic); + sp_repr_set_svg_double(repr, "mathematical", this->mathematical); + sp_repr_set_svg_double(repr, "hanging", this->hanging); + sp_repr_set_svg_double(repr, "v-ideographic", this->v_ideographic); + sp_repr_set_svg_double(repr, "v-alphabetic", this->v_alphabetic); + sp_repr_set_svg_double(repr, "v-mathematical", this->v_mathematical); + sp_repr_set_svg_double(repr, "v-hanging", this->v_hanging); + sp_repr_set_svg_double(repr, "underline-position", this->underline_position); + sp_repr_set_svg_double(repr, "underline-thickness", this->underline_thickness); + sp_repr_set_svg_double(repr, "strikethrough-position", this->strikethrough_position); + sp_repr_set_svg_double(repr, "strikethrough-thickness", this->strikethrough_thickness); + sp_repr_set_svg_double(repr, "overline-position", this->overline_position); + sp_repr_set_svg_double(repr, "overline-thickness", this->overline_thickness); + + if (repr != this->getRepr()) { // In all COPY_ATTR given below the XML tree is // being used directly while it shouldn't be. - COPY_ATTR(repr, object->getRepr(), "font-family"); - COPY_ATTR(repr, object->getRepr(), "font-style"); - COPY_ATTR(repr, object->getRepr(), "font-variant"); - COPY_ATTR(repr, object->getRepr(), "font-weight"); - COPY_ATTR(repr, object->getRepr(), "font-stretch"); - COPY_ATTR(repr, object->getRepr(), "font-size"); - COPY_ATTR(repr, object->getRepr(), "unicode-range"); - COPY_ATTR(repr, object->getRepr(), "units-per-em"); - COPY_ATTR(repr, object->getRepr(), "panose-1"); - COPY_ATTR(repr, object->getRepr(), "stemv"); - COPY_ATTR(repr, object->getRepr(), "stemh"); - COPY_ATTR(repr, object->getRepr(), "slope"); - COPY_ATTR(repr, object->getRepr(), "cap-height"); - COPY_ATTR(repr, object->getRepr(), "x-height"); - COPY_ATTR(repr, object->getRepr(), "accent-height"); - COPY_ATTR(repr, object->getRepr(), "ascent"); - COPY_ATTR(repr, object->getRepr(), "descent"); - COPY_ATTR(repr, object->getRepr(), "widths"); - COPY_ATTR(repr, object->getRepr(), "bbox"); - COPY_ATTR(repr, object->getRepr(), "ideographic"); - COPY_ATTR(repr, object->getRepr(), "alphabetic"); - COPY_ATTR(repr, object->getRepr(), "mathematical"); - COPY_ATTR(repr, object->getRepr(), "hanging"); - COPY_ATTR(repr, object->getRepr(), "v-ideographic"); - COPY_ATTR(repr, object->getRepr(), "v-alphabetic"); - COPY_ATTR(repr, object->getRepr(), "v-mathematical"); - COPY_ATTR(repr, object->getRepr(), "v-hanging"); - COPY_ATTR(repr, object->getRepr(), "underline-position"); - COPY_ATTR(repr, object->getRepr(), "underline-thickness"); - COPY_ATTR(repr, object->getRepr(), "strikethrough-position"); - COPY_ATTR(repr, object->getRepr(), "strikethrough-thickness"); - COPY_ATTR(repr, object->getRepr(), "overline-position"); - COPY_ATTR(repr, object->getRepr(), "overline-thickness"); + COPY_ATTR(repr, this->getRepr(), "font-family"); + COPY_ATTR(repr, this->getRepr(), "font-style"); + COPY_ATTR(repr, this->getRepr(), "font-variant"); + COPY_ATTR(repr, this->getRepr(), "font-weight"); + COPY_ATTR(repr, this->getRepr(), "font-stretch"); + COPY_ATTR(repr, this->getRepr(), "font-size"); + COPY_ATTR(repr, this->getRepr(), "unicode-range"); + COPY_ATTR(repr, this->getRepr(), "units-per-em"); + COPY_ATTR(repr, this->getRepr(), "panose-1"); + COPY_ATTR(repr, this->getRepr(), "stemv"); + COPY_ATTR(repr, this->getRepr(), "stemh"); + COPY_ATTR(repr, this->getRepr(), "slope"); + COPY_ATTR(repr, this->getRepr(), "cap-height"); + COPY_ATTR(repr, this->getRepr(), "x-height"); + COPY_ATTR(repr, this->getRepr(), "accent-height"); + COPY_ATTR(repr, this->getRepr(), "ascent"); + COPY_ATTR(repr, this->getRepr(), "descent"); + COPY_ATTR(repr, this->getRepr(), "widths"); + COPY_ATTR(repr, this->getRepr(), "bbox"); + COPY_ATTR(repr, this->getRepr(), "ideographic"); + COPY_ATTR(repr, this->getRepr(), "alphabetic"); + COPY_ATTR(repr, this->getRepr(), "mathematical"); + COPY_ATTR(repr, this->getRepr(), "hanging"); + COPY_ATTR(repr, this->getRepr(), "v-ideographic"); + COPY_ATTR(repr, this->getRepr(), "v-alphabetic"); + COPY_ATTR(repr, this->getRepr(), "v-mathematical"); + COPY_ATTR(repr, this->getRepr(), "v-hanging"); + COPY_ATTR(repr, this->getRepr(), "underline-position"); + COPY_ATTR(repr, this->getRepr(), "underline-thickness"); + COPY_ATTR(repr, this->getRepr(), "strikethrough-position"); + COPY_ATTR(repr, this->getRepr(), "strikethrough-thickness"); + COPY_ATTR(repr, this->getRepr(), "overline-position"); + COPY_ATTR(repr, this->getRepr(), "overline-thickness"); } SPObject::write(xml_doc, repr, flags); diff --git a/src/sp-font-face.h b/src/sp-font-face.h index 688f3735e..b119d1079 100644 --- a/src/sp-font-face.h +++ b/src/sp-font-face.h @@ -110,6 +110,7 @@ public: double overline_position; double overline_thickness; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/sp-font.cpp b/src/sp-font.cpp index b85d25918..4ac3278d7 100644 --- a/src/sp-font.cpp +++ b/src/sp-font.cpp @@ -55,32 +55,23 @@ SPFont::~SPFont() { void SPFont::build(SPDocument *document, Inkscape::XML::Node *repr) { SPObject::build(document, repr); - SPFont* object = this; - - object->readAttr( "horiz-origin-x" ); - object->readAttr( "horiz-origin-y" ); - object->readAttr( "horiz-adv-x" ); - object->readAttr( "vert-origin-x" ); - object->readAttr( "vert-origin-y" ); - object->readAttr( "vert-adv-y" ); - - document->addResource("font", object); -} - -static void sp_font_children_modified(SPFont */*sp_font*/) -{ + this->readAttr( "horiz-origin-x" ); + this->readAttr( "horiz-origin-y" ); + this->readAttr( "horiz-adv-x" ); + this->readAttr( "vert-origin-x" ); + this->readAttr( "vert-origin-y" ); + this->readAttr( "vert-adv-y" ); + + document->addResource("font", this); } /** * Callback for child_added event. */ void SPFont::child_added(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { - SPFont* object = this; - SPFont *f = SP_FONT(object); SPObject::child_added(child, ref); - sp_font_children_modified(f); - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } @@ -88,81 +79,77 @@ void SPFont::child_added(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { * Callback for remove_child event. */ void SPFont::remove_child(Inkscape::XML::Node* child) { - SPFont* object = this; - SPFont *f = SP_FONT(object); - SPObject::remove_child(child); - sp_font_children_modified(f); - object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->parent->requestModified(SP_OBJECT_MODIFIED_FLAG); } void SPFont::release() { - //SPFont *font = SP_FONT(object); - SPFont* object = this; - - object->document->removeResource("font", object); + this->document->removeResource("font", this); SPObject::release(); } void SPFont::set(unsigned int key, const gchar *value) { - SPFont* object = this; - SPFont *font = SP_FONT(object); - // TODO these are floating point, so some epsilon comparison would be good switch (key) { case SP_ATTR_HORIZ_ORIGIN_X: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != font->horiz_origin_x){ - font->horiz_origin_x = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->horiz_origin_x){ + this->horiz_origin_x = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_HORIZ_ORIGIN_Y: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != font->horiz_origin_y){ - font->horiz_origin_y = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->horiz_origin_y){ + this->horiz_origin_y = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_HORIZ_ADV_X: { double number = value ? g_ascii_strtod(value, 0) : FNT_DEFAULT_ADV; - if (number != font->horiz_adv_x){ - font->horiz_adv_x = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->horiz_adv_x){ + this->horiz_adv_x = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_VERT_ORIGIN_X: { double number = value ? g_ascii_strtod(value, 0) : FNT_DEFAULT_ADV / 2.0; - if (number != font->vert_origin_x){ - font->vert_origin_x = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->vert_origin_x){ + this->vert_origin_x = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_VERT_ORIGIN_Y: { double number = value ? g_ascii_strtod(value, 0) : FNT_DEFAULT_ASCENT; - if (number != font->vert_origin_y){ - font->vert_origin_y = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->vert_origin_y){ + this->vert_origin_y = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_VERT_ADV_Y: { double number = value ? g_ascii_strtod(value, 0) : FNT_UNITS_PER_EM; - if (number != font->vert_adv_y){ - font->vert_adv_y = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->vert_adv_y){ + this->vert_adv_y = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } @@ -176,15 +163,13 @@ void SPFont::set(unsigned int key, const gchar *value) { * Receives update notifications. */ void SPFont::update(SPCtx *ctx, guint flags) { - SPFont* object = this; - if (flags & (SP_OBJECT_MODIFIED_FLAG)) { - object->readAttr( "horiz-origin-x" ); - object->readAttr( "horiz-origin-y" ); - object->readAttr( "horiz-adv-x" ); - object->readAttr( "vert-origin-x" ); - object->readAttr( "vert-origin-y" ); - object->readAttr( "vert-adv-y" ); + this->readAttr( "horiz-origin-x" ); + this->readAttr( "horiz-origin-y" ); + this->readAttr( "horiz-adv-x" ); + this->readAttr( "vert-origin-x" ); + this->readAttr( "vert-origin-y" ); + this->readAttr( "vert-adv-y" ); } SPObject::update(ctx, flags); @@ -193,29 +178,26 @@ void SPFont::update(SPCtx *ctx, guint flags) { #define COPY_ATTR(rd,rs,key) (rd)->setAttribute((key), rs->attribute(key)); Inkscape::XML::Node* SPFont::write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { - SPFont* object = this; - SPFont *font = SP_FONT(object); - if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { - repr = xml_doc->createElement("svg:font"); + repr = xml_doc->createElement("svg:this"); } - sp_repr_set_svg_double(repr, "horiz-origin-x", font->horiz_origin_x); - sp_repr_set_svg_double(repr, "horiz-origin-y", font->horiz_origin_y); - sp_repr_set_svg_double(repr, "horiz-adv-x", font->horiz_adv_x); - sp_repr_set_svg_double(repr, "vert-origin-x", font->vert_origin_x); - sp_repr_set_svg_double(repr, "vert-origin-y", font->vert_origin_y); - sp_repr_set_svg_double(repr, "vert-adv-y", font->vert_adv_y); + sp_repr_set_svg_double(repr, "horiz-origin-x", this->horiz_origin_x); + sp_repr_set_svg_double(repr, "horiz-origin-y", this->horiz_origin_y); + sp_repr_set_svg_double(repr, "horiz-adv-x", this->horiz_adv_x); + sp_repr_set_svg_double(repr, "vert-origin-x", this->vert_origin_x); + sp_repr_set_svg_double(repr, "vert-origin-y", this->vert_origin_y); + sp_repr_set_svg_double(repr, "vert-adv-y", this->vert_adv_y); - if (repr != object->getRepr()) { + if (repr != this->getRepr()) { // All the below COPY_ATTR funtions are directly using // the XML Tree while they shouldn't - COPY_ATTR(repr, object->getRepr(), "horiz-origin-x"); - COPY_ATTR(repr, object->getRepr(), "horiz-origin-y"); - COPY_ATTR(repr, object->getRepr(), "horiz-adv-x"); - COPY_ATTR(repr, object->getRepr(), "vert-origin-x"); - COPY_ATTR(repr, object->getRepr(), "vert-origin-y"); - COPY_ATTR(repr, object->getRepr(), "vert-adv-y"); + COPY_ATTR(repr, this->getRepr(), "horiz-origin-x"); + COPY_ATTR(repr, this->getRepr(), "horiz-origin-y"); + COPY_ATTR(repr, this->getRepr(), "horiz-adv-x"); + COPY_ATTR(repr, this->getRepr(), "vert-origin-x"); + COPY_ATTR(repr, this->getRepr(), "vert-origin-y"); + COPY_ATTR(repr, this->getRepr(), "vert-adv-y"); } SPObject::write(xml_doc, repr, flags); diff --git a/src/sp-font.h b/src/sp-font.h index f88d522eb..cbc63b69d 100644 --- a/src/sp-font.h +++ b/src/sp-font.h @@ -33,6 +33,7 @@ public: double vert_origin_y; double vert_adv_y; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/sp-glyph-kerning.cpp b/src/sp-glyph-kerning.cpp index 287ade4b8..be47c7621 100644 --- a/src/sp-glyph-kerning.cpp +++ b/src/sp-glyph-kerning.cpp @@ -39,15 +39,13 @@ SPGlyphKerning::~SPGlyphKerning() { } void SPGlyphKerning::build(SPDocument *document, Inkscape::XML::Node *repr) { - SPGlyphKerning* object = this; - SPObject::build(document, repr); - object->readAttr( "u1" ); - object->readAttr( "g1" ); - object->readAttr( "u2" ); - object->readAttr( "g2" ); - object->readAttr( "k" ); + this->readAttr( "u1" ); + this->readAttr( "g1" ); + this->readAttr( "u2" ); + this->readAttr( "g2" ); + this->readAttr( "k" ); } void SPGlyphKerning::release() { @@ -55,72 +53,84 @@ void SPGlyphKerning::release() { } GlyphNames::GlyphNames(const gchar* value){ - if (value) this->names = strdup(value); + if (value) { + this->names = strdup(value); + } } GlyphNames::~GlyphNames(){ - if (this->names) g_free(this->names); + if (this->names) { + g_free(this->names); + } } bool GlyphNames::contains(const char* name){ - if (!(this->names) || !name) return false; + if (!(this->names) || !name) { + return false; + } + std::istringstream is(this->names); std::string str; std::string s(name); - while (is >> str){ - if (str == s) return true; + + while (is >> str) { + if (str == s) { + return true; + } } + return false; } void SPGlyphKerning::set(unsigned int key, const gchar *value) { - SPGlyphKerning* object = this; - - SPGlyphKerning * glyphkern = (SPGlyphKerning*) object; //even if it is a VKern this will work. I did it this way just to avoind warnings. - switch (key) { case SP_ATTR_U1: { - if (glyphkern->u1) { - delete glyphkern->u1; + if (this->u1) { + delete this->u1; } - glyphkern->u1 = new UnicodeRange(value); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + this->u1 = new UnicodeRange(value); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; } case SP_ATTR_U2: { - if (glyphkern->u2) { - delete glyphkern->u2; + if (this->u2) { + delete this->u2; } - glyphkern->u2 = new UnicodeRange(value); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + this->u2 = new UnicodeRange(value); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; } case SP_ATTR_G1: { - if (glyphkern->g1) { - delete glyphkern->g1; + if (this->g1) { + delete this->g1; } - glyphkern->g1 = new GlyphNames(value); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + this->g1 = new GlyphNames(value); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; } case SP_ATTR_G2: { - if (glyphkern->g2) { - delete glyphkern->g2; + if (this->g2) { + delete this->g2; } - glyphkern->g2 = new GlyphNames(value); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + this->g2 = new GlyphNames(value); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; } case SP_ATTR_K: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != glyphkern->k){ - glyphkern->k = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->k){ + this->k = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } @@ -136,17 +146,12 @@ void SPGlyphKerning::set(unsigned int key, const gchar *value) { * * Receives update notifications. * */ void SPGlyphKerning::update(SPCtx *ctx, guint flags) { - SPGlyphKerning* object = this; - - SPGlyphKerning *glyph = (SPGlyphKerning *)object; - (void)glyph; - if (flags & SP_OBJECT_MODIFIED_FLAG) { /* do something to trigger redisplay, updates? */ - object->readAttr( "u1" ); - object->readAttr( "u2" ); - object->readAttr( "g2" ); - object->readAttr( "k" ); + this->readAttr( "u1" ); + this->readAttr( "u2" ); + this->readAttr( "g2" ); + this->readAttr( "k" ); } SPObject::update(ctx, flags); @@ -155,13 +160,9 @@ void SPGlyphKerning::update(SPCtx *ctx, guint flags) { #define COPY_ATTR(rd,rs,key) (rd)->setAttribute((key), rs->attribute(key)); Inkscape::XML::Node* SPGlyphKerning::write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { - SPGlyphKerning* object = this; - - // SPGlyphKerning *glyph = SP_GLYPH_KERNING(object); - - if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { - repr = xml_doc->createElement("svg:glyphkerning");//fix this! - } + if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { + repr = xml_doc->createElement("svg:glyphkerning");//fix this! + } /* I am commenting out this part because I am not certain how does it work. I will have to study it later. Juca repr->setAttribute("unicode", glyph->unicode); @@ -175,19 +176,19 @@ Inkscape::XML::Node* SPGlyphKerning::write(Inkscape::XML::Document *xml_doc, Ink sp_repr_set_svg_double(repr, "vert-origin-y", glyph->vert_origin_y); sp_repr_set_svg_double(repr, "vert-adv-y", glyph->vert_adv_y); */ - if (repr != object->getRepr()) { - // All the COPY_ATTR functions below use - // XML Tree directly, while they shouldn't. - COPY_ATTR(repr, object->getRepr(), "u1"); - COPY_ATTR(repr, object->getRepr(), "g1"); - COPY_ATTR(repr, object->getRepr(), "u2"); - COPY_ATTR(repr, object->getRepr(), "g2"); - COPY_ATTR(repr, object->getRepr(), "k"); - } - - SPObject::write(xml_doc, repr, flags); - - return repr; + if (repr != this->getRepr()) { + // All the COPY_ATTR functions below use + // XML Tree directly, while they shouldn't. + COPY_ATTR(repr, this->getRepr(), "u1"); + COPY_ATTR(repr, this->getRepr(), "g1"); + COPY_ATTR(repr, this->getRepr(), "u2"); + COPY_ATTR(repr, this->getRepr(), "g2"); + COPY_ATTR(repr, this->getRepr(), "k"); + } + + SPObject::write(xml_doc, repr, flags); + + return repr; } /* Local Variables: diff --git a/src/sp-glyph-kerning.h b/src/sp-glyph-kerning.h index b805c353a..b579e5e2e 100644 --- a/src/sp-glyph-kerning.h +++ b/src/sp-glyph-kerning.h @@ -57,6 +57,7 @@ public: GlyphNames* g2; double k; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/sp-glyph.cpp b/src/sp-glyph.cpp index f18c3ef6d..695af03ba 100644 --- a/src/sp-glyph.cpp +++ b/src/sp-glyph.cpp @@ -35,8 +35,6 @@ namespace { SPGlyph::SPGlyph() : SPObject() { //TODO: correct these values: - new (&this->unicode) Glib::ustring(); - new (&this->glyph_name) Glib::ustring(); this->d = NULL; this->orientation = GLYPH_ORIENTATION_BOTH; this->arabic_form = GLYPH_ARABIC_FORM_INITIAL; @@ -53,18 +51,16 @@ SPGlyph::~SPGlyph() { void SPGlyph::build(SPDocument *document, Inkscape::XML::Node *repr) { SPObject::build(document, repr); - SPGlyph* object = this; - - object->readAttr( "unicode" ); - object->readAttr( "glyph-name" ); - object->readAttr( "d" ); - object->readAttr( "orientation" ); - object->readAttr( "arabic-form" ); - object->readAttr( "lang" ); - object->readAttr( "horiz-adv-x" ); - object->readAttr( "vert-origin-x" ); - object->readAttr( "vert-origin-y" ); - object->readAttr( "vert-adv-y" ); + this->readAttr( "unicode" ); + this->readAttr( "glyph-name" ); + this->readAttr( "d" ); + this->readAttr( "orientation" ); + this->readAttr( "arabic-form" ); + this->readAttr( "lang" ); + this->readAttr( "horiz-adv-x" ); + this->readAttr( "vert-origin-x" ); + this->readAttr( "vert-origin-y" ); + this->readAttr( "vert-adv-y" ); } void SPGlyph::release() { @@ -72,24 +68,40 @@ void SPGlyph::release() { } static glyphArabicForm sp_glyph_read_arabic_form(gchar const *value){ - if (!value) return GLYPH_ARABIC_FORM_INITIAL; //TODO: verify which is the default default (for me, the spec is not clear) + if (!value) { + return GLYPH_ARABIC_FORM_INITIAL; //TODO: verify which is the default default (for me, the spec is not clear) + } + switch(value[0]){ case 'i': - if (strncmp(value, "initial", 7) == 0) return GLYPH_ARABIC_FORM_INITIAL; - if (strncmp(value, "isolated", 8) == 0) return GLYPH_ARABIC_FORM_ISOLATED; + if (strncmp(value, "initial", 7) == 0) { + return GLYPH_ARABIC_FORM_INITIAL; + } + + if (strncmp(value, "isolated", 8) == 0) { + return GLYPH_ARABIC_FORM_ISOLATED; + } break; case 'm': - if (strncmp(value, "medial", 6) == 0) return GLYPH_ARABIC_FORM_MEDIAL; + if (strncmp(value, "medial", 6) == 0) { + return GLYPH_ARABIC_FORM_MEDIAL; + } break; case 't': - if (strncmp(value, "terminal", 8) == 0) return GLYPH_ARABIC_FORM_TERMINAL; + if (strncmp(value, "terminal", 8) == 0) { + return GLYPH_ARABIC_FORM_TERMINAL; + } break; } + return GLYPH_ARABIC_FORM_INITIAL; //TODO: VERIFY DEFAULT! } static glyphOrientation sp_glyph_read_orientation(gchar const *value){ - if (!value) return GLYPH_ORIENTATION_BOTH; + if (!value) { + return GLYPH_ORIENTATION_BOTH; + } + switch(value[0]){ case 'h': return GLYPH_ORIENTATION_HORIZONTAL; @@ -98,95 +110,112 @@ static glyphOrientation sp_glyph_read_orientation(gchar const *value){ return GLYPH_ORIENTATION_VERTICAL; break; } + //ERROR? TODO: VERIFY PROPER ERROR HANDLING return GLYPH_ORIENTATION_BOTH; } void SPGlyph::set(unsigned int key, const gchar *value) { - SPGlyph* object = this; - - SPGlyph *glyph = SP_GLYPH(object); - switch (key) { case SP_ATTR_UNICODE: { - glyph->unicode.clear(); - if (value) glyph->unicode.append(value); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->unicode.clear(); + + if (value) { + this->unicode.append(value); + } + + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; } case SP_ATTR_GLYPH_NAME: { - glyph->glyph_name.clear(); - if (value) glyph->glyph_name.append(value); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->glyph_name.clear(); + + if (value) { + this->glyph_name.append(value); + } + + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; } case SP_ATTR_D: { - if (glyph->d) g_free(glyph->d); - glyph->d = g_strdup(value); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + if (this->d) { + g_free(this->d); + } + + this->d = g_strdup(value); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; } case SP_ATTR_ORIENTATION: { glyphOrientation orient = sp_glyph_read_orientation(value); - if (glyph->orientation != orient){ - glyph->orientation = orient; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (this->orientation != orient){ + this->orientation = orient; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_ARABIC_FORM: { glyphArabicForm form = sp_glyph_read_arabic_form(value); - if (glyph->arabic_form != form){ - glyph->arabic_form = form; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (this->arabic_form != form){ + this->arabic_form = form; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_LANG: { - if (glyph->lang) g_free(glyph->lang); - glyph->lang = g_strdup(value); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + if (this->lang) { + g_free(this->lang); + } + + this->lang = g_strdup(value); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; } case SP_ATTR_HORIZ_ADV_X: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != glyph->horiz_adv_x){ - glyph->horiz_adv_x = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->horiz_adv_x){ + this->horiz_adv_x = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_VERT_ORIGIN_X: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != glyph->vert_origin_x){ - glyph->vert_origin_x = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->vert_origin_x){ + this->vert_origin_x = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_VERT_ORIGIN_Y: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != glyph->vert_origin_y){ - glyph->vert_origin_y = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->vert_origin_y){ + this->vert_origin_y = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_VERT_ADV_Y: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != glyph->vert_adv_y){ - glyph->vert_adv_y = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + + if (number != this->vert_adv_y){ + this->vert_adv_y = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } @@ -202,23 +231,18 @@ void SPGlyph::set(unsigned int key, const gchar *value) { * * Receives update notifications. * */ void SPGlyph::update(SPCtx *ctx, guint flags) { - SPGlyph* object = this; - - SPGlyph *glyph = SP_GLYPH(object); - (void)glyph; - if (flags & SP_OBJECT_MODIFIED_FLAG) { /* do something to trigger redisplay, updates? */ - object->readAttr( "unicode" ); - object->readAttr( "glyph-name" ); - object->readAttr( "d" ); - object->readAttr( "orientation" ); - object->readAttr( "arabic-form" ); - object->readAttr( "lang" ); - object->readAttr( "horiz-adv-x" ); - object->readAttr( "vert-origin-x" ); - object->readAttr( "vert-origin-y" ); - object->readAttr( "vert-adv-y" ); + this->readAttr( "unicode" ); + this->readAttr( "glyph-name" ); + this->readAttr( "d" ); + this->readAttr( "orientation" ); + this->readAttr( "arabic-form" ); + this->readAttr( "lang" ); + this->readAttr( "horiz-adv-x" ); + this->readAttr( "vert-origin-x" ); + this->readAttr( "vert-origin-y" ); + this->readAttr( "vert-adv-y" ); } SPObject::update(ctx, flags); @@ -227,13 +251,9 @@ void SPGlyph::update(SPCtx *ctx, guint flags) { #define COPY_ATTR(rd,rs,key) (rd)->setAttribute((key), rs->attribute(key)); Inkscape::XML::Node* SPGlyph::write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { - SPGlyph* object = this; - - // SPGlyph *glyph = SP_GLYPH(object); - - if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { - repr = xml_doc->createElement("svg:glyph"); - } + if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { + repr = xml_doc->createElement("svg:glyph"); + } /* I am commenting out this part because I am not certain how does it work. I will have to study it later. Juca repr->setAttribute("unicode", glyph->unicode); @@ -247,24 +267,24 @@ Inkscape::XML::Node* SPGlyph::write(Inkscape::XML::Document *xml_doc, Inkscape:: sp_repr_set_svg_double(repr, "vert-origin-y", glyph->vert_origin_y); sp_repr_set_svg_double(repr, "vert-adv-y", glyph->vert_adv_y); */ - if (repr != object->getRepr()) { - // All the COPY_ATTR functions below use - // XML Tree directly while they shouldn't. - COPY_ATTR(repr, object->getRepr(), "unicode"); - COPY_ATTR(repr, object->getRepr(), "glyph-name"); - COPY_ATTR(repr, object->getRepr(), "d"); - COPY_ATTR(repr, object->getRepr(), "orientation"); - COPY_ATTR(repr, object->getRepr(), "arabic-form"); - COPY_ATTR(repr, object->getRepr(), "lang"); - COPY_ATTR(repr, object->getRepr(), "horiz-adv-x"); - COPY_ATTR(repr, object->getRepr(), "vert-origin-x"); - COPY_ATTR(repr, object->getRepr(), "vert-origin-y"); - COPY_ATTR(repr, object->getRepr(), "vert-adv-y"); - } + if (repr != this->getRepr()) { + // All the COPY_ATTR functions below use + // XML Tree directly while they shouldn't. + COPY_ATTR(repr, this->getRepr(), "unicode"); + COPY_ATTR(repr, this->getRepr(), "glyph-name"); + COPY_ATTR(repr, this->getRepr(), "d"); + COPY_ATTR(repr, this->getRepr(), "orientation"); + COPY_ATTR(repr, this->getRepr(), "arabic-form"); + COPY_ATTR(repr, this->getRepr(), "lang"); + COPY_ATTR(repr, this->getRepr(), "horiz-adv-x"); + COPY_ATTR(repr, this->getRepr(), "vert-origin-x"); + COPY_ATTR(repr, this->getRepr(), "vert-origin-y"); + COPY_ATTR(repr, this->getRepr(), "vert-adv-y"); + } - SPObject::write(xml_doc, repr, flags); + SPObject::write(xml_doc, repr, flags); - return repr; + return repr; } /* Local Variables: diff --git a/src/sp-glyph.h b/src/sp-glyph.h index fbb3aa2ff..79ed256e9 100644 --- a/src/sp-glyph.h +++ b/src/sp-glyph.h @@ -50,6 +50,7 @@ public: double vert_origin_y; double vert_adv_y; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/sp-guide.cpp b/src/sp-guide.cpp index 4fc6e34bb..b0f4aab49 100644 --- a/src/sp-guide.cpp +++ b/src/sp-guide.cpp @@ -139,54 +139,46 @@ static void sp_guide_get_property(GObject *object, guint prop_id, GValue *value, void SPGuide::build(SPDocument *document, Inkscape::XML::Node *repr) { SPObject::build(document, repr); - SPGuide* object = this; - - object->readAttr( "inkscape:label" ); - object->readAttr( "orientation" ); - object->readAttr( "position" ); + this->readAttr( "inkscape:label" ); + this->readAttr( "orientation" ); + this->readAttr( "position" ); /* Register */ - document->addResource("guide", object); + document->addResource("guide", this); } void SPGuide::release() { - SPGuide* object = this; - SPGuide *guide = (SPGuide *) object; - - while (guide->views) { - sp_guideline_delete(SP_GUIDELINE(guide->views->data)); - guide->views = g_slist_remove(guide->views, guide->views->data); + while (this->views) { + sp_guideline_delete(SP_GUIDELINE(this->views->data)); + this->views = g_slist_remove(this->views, this->views->data); } - if (object->document) { + if (this->document) { // Unregister ourselves - object->document->removeResource("guide", object); + this->document->removeResource("guide", this); } SPObject::release(); } void SPGuide::set(unsigned int key, const gchar *value) { - SPGuide* object = this; - SPGuide *guide = SP_GUIDE(object); - switch (key) { case SP_ATTR_INKSCAPE_LABEL: if (value) { - guide->label = g_strdup(value); + this->label = g_strdup(value); } else { - guide->label = NULL; + this->label = NULL; } - sp_guide_set_label(*guide, guide->label, false); + sp_guide_set_label(*this, this->label, false); break; case SP_ATTR_ORIENTATION: { if (value && !strcmp(value, "horizontal")) { /* Visual representation of a horizontal line, constrain vertically (y coordinate). */ - guide->normal_to_line = Geom::Point(0., 1.); + this->normal_to_line = Geom::Point(0., 1.); } else if (value && !strcmp(value, "vertical")) { - guide->normal_to_line = Geom::Point(1., 0.); + this->normal_to_line = Geom::Point(1., 0.); } else if (value) { gchar ** strarray = g_strsplit(value, ",", 2); double newx, newy; @@ -196,16 +188,16 @@ void SPGuide::set(unsigned int key, const gchar *value) { if (success == 2 && (fabs(newx) > 1e-6 || fabs(newy) > 1e-6)) { Geom::Point direction(newx, newy); direction.normalize(); - guide->normal_to_line = direction; + this->normal_to_line = direction; } else { // default to vertical line for bad arguments - guide->normal_to_line = Geom::Point(1., 0.); + this->normal_to_line = Geom::Point(1., 0.); } } else { // default to vertical line for bad arguments - guide->normal_to_line = Geom::Point(1., 0.); + this->normal_to_line = Geom::Point(1., 0.); } - sp_guide_set_normal(*guide, guide->normal_to_line, false); + sp_guide_set_normal(*this, this->normal_to_line, false); } break; case SP_ATTR_POSITION: @@ -217,23 +209,23 @@ void SPGuide::set(unsigned int key, const gchar *value) { success += sp_svg_number_read_d(strarray[1], &newy); g_strfreev (strarray); if (success == 2) { - guide->point_on_line = Geom::Point(newx, newy); + this->point_on_line = Geom::Point(newx, newy); } else if (success == 1) { // before 0.46 style guideline definition. - const gchar *attr = object->getRepr()->attribute("orientation"); + const gchar *attr = this->getRepr()->attribute("orientation"); if (attr && !strcmp(attr, "horizontal")) { - guide->point_on_line = Geom::Point(0, newx); + this->point_on_line = Geom::Point(0, newx); } else { - guide->point_on_line = Geom::Point(newx, 0); + this->point_on_line = Geom::Point(newx, 0); } } } else { // default to (0,0) for bad arguments - guide->point_on_line = Geom::Point(0,0); + this->point_on_line = Geom::Point(0,0); } // update position in non-committing way // fixme: perhaps we need to add an update method instead, and request_update here - sp_guide_moveto(*guide, guide->point_on_line, false); + sp_guide_moveto(*this, this->point_on_line, false); } break; default: diff --git a/src/sp-guide.h b/src/sp-guide.h index 748420d40..18e07d719 100644 --- a/src/sp-guide.h +++ b/src/sp-guide.h @@ -51,6 +51,7 @@ public: Geom::Point getPositionFrom(Geom::Point const &pt) const; double getDistanceFrom(Geom::Point const &pt) const; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); virtual void set(unsigned int key, const gchar* value); -- cgit v1.2.3 From e79e9fe616e5da595551916ad5b9f6cb628dbb49 Mon Sep 17 00:00:00 2001 From: Alex Valavanis Date: Thu, 1 Aug 2013 00:08:04 +0100 Subject: Fix build error (bzr r12442) --- src/color-profile.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/color-profile.cpp b/src/color-profile.cpp index 918fc79d4..01e6d7062 100644 --- a/src/color-profile.cpp +++ b/src/color-profile.cpp @@ -4,8 +4,8 @@ #define noDEBUG_LCMS -#include #include +#include #include #include #include -- cgit v1.2.3 From db53a4b489fbcf45eee9f54a0b1231e6092374dc Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Thu, 1 Aug 2013 14:35:39 +0200 Subject: Fixed more mismatched-tags; replaced GObject-properties in SPGuide (bzr r11608.1.115) --- src/box3d-side.h | 2 +- src/box3d.h | 2 +- src/cms-system.h | 2 +- src/document.h | 2 +- src/draw-anchor.h | 2 +- src/extension/internal/latex-text-renderer.h | 2 +- src/persp3d.h | 2 +- src/profile-manager.h | 2 +- src/selection.h | 2 +- src/sp-guide.cpp | 88 +++++++++++++++++----------- src/sp-guide.h | 5 ++ src/sp-namedview.cpp | 32 ++++++++-- src/widgets/sp-color-icc-selector.h | 2 +- 13 files changed, 95 insertions(+), 50 deletions(-) diff --git a/src/box3d-side.h b/src/box3d-side.h index 106f3770c..fcd7eb08c 100644 --- a/src/box3d-side.h +++ b/src/box3d-side.h @@ -21,7 +21,7 @@ #define SP_IS_BOX3D_SIDE(obj) (dynamic_cast((SPObject*)obj)) class SPBox3D; -struct Persp3D; +class Persp3D; // FIXME: Would it be better to inherit from SPPath instead? class Box3DSide : public SPPolygon { diff --git a/src/box3d.h b/src/box3d.h index 6763bb271..53fd1852b 100644 --- a/src/box3d.h +++ b/src/box3d.h @@ -24,7 +24,7 @@ #define SP_BOX3D(obj) ((SPBox3D*)obj) #define SP_IS_BOX3D(obj) (dynamic_cast((SPObject*)obj)) -struct Persp3D; +class Persp3D; class Persp3DReference; class SPBox3D : public SPGroup { diff --git a/src/cms-system.h b/src/cms-system.h index ecaba956e..c528deb94 100644 --- a/src/cms-system.h +++ b/src/cms-system.h @@ -15,7 +15,7 @@ class SPDocument; namespace Inkscape { -struct ColorProfile; +class ColorProfile; class CMSSystem { public: diff --git a/src/document.h b/src/document.h index 423dd2aba..f23bf4713 100644 --- a/src/document.h +++ b/src/document.h @@ -51,7 +51,7 @@ namespace Inkscape { class SPDefs; class SP3DBox; -struct Persp3D; +class Persp3D; class Persp3DImpl; class SPItemCtx; diff --git a/src/draw-anchor.h b/src/draw-anchor.h index 89ff8b180..1ca2b9888 100644 --- a/src/draw-anchor.h +++ b/src/draw-anchor.h @@ -8,7 +8,7 @@ #include #include <2geom/point.h> -struct SPDrawContext; +class SPDrawContext; class SPCurve; struct SPCanvasItem; diff --git a/src/extension/internal/latex-text-renderer.h b/src/extension/internal/latex-text-renderer.h index 0fa94c9e6..e51c2d245 100644 --- a/src/extension/internal/latex-text-renderer.h +++ b/src/extension/internal/latex-text-renderer.h @@ -22,7 +22,7 @@ #include class SPItem; -struct SPRoot; +class SPRoot; namespace Inkscape { namespace Extension { diff --git a/src/persp3d.h b/src/persp3d.h index e0c742123..a1e8928f8 100644 --- a/src/persp3d.h +++ b/src/persp3d.h @@ -24,7 +24,7 @@ #include "inkscape.h" class SPBox3D; -struct Box3DContext; +class Box3DContext; class Persp3DImpl { public: diff --git a/src/profile-manager.h b/src/profile-manager.h index 9d361f40c..be9446c17 100644 --- a/src/profile-manager.h +++ b/src/profile-manager.h @@ -17,7 +17,7 @@ class SPDocument; namespace Inkscape { -struct ColorProfile; +class ColorProfile; class ProfileManager : public DocumentSubset, public GC::Finalized diff --git a/src/selection.h b/src/selection.h index 32eade21f..394ab64ff 100644 --- a/src/selection.h +++ b/src/selection.h @@ -31,7 +31,7 @@ class SPDesktop; class SPItem; class SPBox3D; -struct Persp3D; +class Persp3D; namespace Inkscape { class LayerModel; diff --git a/src/sp-guide.cpp b/src/sp-guide.cpp index b0f4aab49..36989e0c9 100644 --- a/src/sp-guide.cpp +++ b/src/sp-guide.cpp @@ -47,14 +47,14 @@ using Inkscape::DocumentUndo; using std::vector; -enum { - PROP_0, - PROP_COLOR, - PROP_HICOLOR -}; - -static void sp_guide_set_property(GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec); -static void sp_guide_get_property(GObject *object, guint prop_id, GValue *value, GParamSpec *pspec); +//enum { +// PROP_0, +// PROP_COLOR, +// PROP_HICOLOR +//}; +// +//static void sp_guide_set_property(GObject *object, guint prop_id, const GValue *value, GParamSpec *pspec); +//static void sp_guide_get_property(GObject *object, guint prop_id, GValue *value, GParamSpec *pspec); #include "sp-factory.h" @@ -104,38 +104,58 @@ SPGuide::SPGuide() : SPObject() { SPGuide::~SPGuide() { } -static void sp_guide_set_property(GObject *object, guint prop_id, const GValue *value, GParamSpec */*pspec*/) -{ - SPGuide &guide = *SP_GUIDE(object); - - switch (prop_id) { - case PROP_COLOR: - guide.color = g_value_get_uint(value); - for (GSList *l = guide.views; l != NULL; l = l->next) { - sp_guideline_set_color(SP_GUIDELINE(l->data), guide.color); - } - break; +guint32 SPGuide::getColor() const { + return color; +} - case PROP_HICOLOR: - guide.hicolor = g_value_get_uint(value); - break; - } +guint32 SPGuide::getHiColor() const { + return hicolor; } -static void sp_guide_get_property(GObject *object, guint prop_id, GValue *value, GParamSpec */*pspec*/) -{ - SPGuide const &guide = *SP_GUIDE(object); +void SPGuide::setColor(guint32 c) { + color = c; - switch (prop_id) { - case PROP_COLOR: - g_value_set_uint(value, guide.color); - break; - case PROP_HICOLOR: - g_value_set_uint(value, guide.hicolor); - break; - } + for (GSList *l = this->views; l != NULL; l = l->next) { + sp_guideline_set_color(SP_GUIDELINE(l->data), this->color); + } +} + +void SPGuide::setHiColor(guint32 h) { + this->hicolor = h; } +//static void sp_guide_set_property(GObject *object, guint prop_id, const GValue *value, GParamSpec */*pspec*/) +//{ +// SPGuide &guide = *SP_GUIDE(object); +// +// switch (prop_id) { +// case PROP_COLOR: +// guide.color = g_value_get_uint(value); +// for (GSList *l = guide.views; l != NULL; l = l->next) { +// sp_guideline_set_color(SP_GUIDELINE(l->data), guide.color); +// } +// break; +// +// case PROP_HICOLOR: +// guide.hicolor = g_value_get_uint(value); +// break; +// } +//} +// +//static void sp_guide_get_property(GObject *object, guint prop_id, GValue *value, GParamSpec */*pspec*/) +//{ +// SPGuide const &guide = *SP_GUIDE(object); +// +// switch (prop_id) { +// case PROP_COLOR: +// g_value_set_uint(value, guide.color); +// break; +// case PROP_HICOLOR: +// g_value_set_uint(value, guide.hicolor); +// break; +// } +//} + void SPGuide::build(SPDocument *document, Inkscape::XML::Node *repr) { SPObject::build(document, repr); diff --git a/src/sp-guide.h b/src/sp-guide.h index 18e07d719..9af56d12b 100644 --- a/src/sp-guide.h +++ b/src/sp-guide.h @@ -41,6 +41,11 @@ public: GSList *views; std::vector attached_items; + guint32 getColor() const; + guint32 getHiColor() const; + void setColor(guint32 c); + void setHiColor(guint32 h); + inline bool isHorizontal() const { return (normal_to_line[Geom::X] == 0.); }; inline bool isVertical() const { return (normal_to_line[Geom::Y] == 0.); }; inline double angle() const { return std::atan2( - normal_to_line[Geom::X], normal_to_line[Geom::Y] ); }; diff --git a/src/sp-namedview.cpp b/src/sp-namedview.cpp index 452c640b3..576de312f 100644 --- a/src/sp-namedview.cpp +++ b/src/sp-namedview.cpp @@ -260,7 +260,9 @@ void SPNamedView::build(SPDocument *document, Inkscape::XML::Node *repr) { if (SP_IS_GUIDE(o)) { SPGuide * g = SP_GUIDE(o); nv->guides = g_slist_prepend(nv->guides, g); - g_object_set(G_OBJECT(g), "color", nv->guidecolor, "hicolor", nv->guidehicolor, NULL); + //g_object_set(G_OBJECT(g), "color", nv->guidecolor, "hicolor", nv->guidehicolor, NULL); + g->setColor(nv->guidecolor); + g->setHiColor(nv->guidehicolor); } } @@ -330,38 +332,52 @@ void SPNamedView::set(unsigned int key, const gchar* value) { break; case SP_ATTR_GUIDECOLOR: nv->guidecolor = (nv->guidecolor & 0xff) | (DEFAULTGUIDECOLOR & 0xffffff00); + if (value) { nv->guidecolor = (nv->guidecolor & 0xff) | sp_svg_read_color(value, nv->guidecolor); } + for (GSList *l = nv->guides; l != NULL; l = l->next) { - g_object_set(G_OBJECT(l->data), "color", nv->guidecolor, NULL); + //g_object_set(G_OBJECT(l->data), "color", nv->guidecolor, NULL); + SP_GUIDE(l->data)->setColor(nv->guidecolor); } + object->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_GUIDEOPACITY: nv->guidecolor = (nv->guidecolor & 0xffffff00) | (DEFAULTGUIDECOLOR & 0xff); sp_nv_read_opacity(value, &nv->guidecolor); + for (GSList *l = nv->guides; l != NULL; l = l->next) { - g_object_set(G_OBJECT(l->data), "color", nv->guidecolor, NULL); + //g_object_set(G_OBJECT(l->data), "color", nv->guidecolor, NULL); + SP_GUIDE(l->data)->setColor(nv->guidecolor); } + object->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_GUIDEHICOLOR: nv->guidehicolor = (nv->guidehicolor & 0xff) | (DEFAULTGUIDEHICOLOR & 0xffffff00); + if (value) { nv->guidehicolor = (nv->guidehicolor & 0xff) | sp_svg_read_color(value, nv->guidehicolor); } + for (GSList *l = nv->guides; l != NULL; l = l->next) { - g_object_set(G_OBJECT(l->data), "hicolor", nv->guidehicolor, NULL); + //g_object_set(G_OBJECT(l->data), "hicolor", nv->guidehicolor, NULL); + SP_GUIDE(l->data)->setHiColor(nv->guidehicolor); } + object->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_GUIDEHIOPACITY: nv->guidehicolor = (nv->guidehicolor & 0xffffff00) | (DEFAULTGUIDEHICOLOR & 0xff); sp_nv_read_opacity(value, &nv->guidehicolor); + for (GSList *l = nv->guides; l != NULL; l = l->next) { - g_object_set(G_OBJECT(l->data), "hicolor", nv->guidehicolor, NULL); + //g_object_set(G_OBJECT(l->data), "hicolor", nv->guidehicolor, NULL); + SP_GUIDE(l->data)->setHiColor(nv->guidehicolor); } + object->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_SHOWBORDER: @@ -667,7 +683,11 @@ void SPNamedView::child_added(Inkscape::XML::Node *child, Inkscape::XML::Node *r if (SP_IS_GUIDE(no)) { SPGuide *g = (SPGuide *) no; nv->guides = g_slist_prepend(nv->guides, g); - g_object_set(G_OBJECT(g), "color", nv->guidecolor, "hicolor", nv->guidehicolor, NULL); + + //g_object_set(G_OBJECT(g), "color", nv->guidecolor, "hicolor", nv->guidehicolor, NULL); + g->setColor(nv->guidecolor); + g->setHiColor(nv->guidehicolor); + if (nv->editable) { for (GSList *l = nv->views; l != NULL; l = l->next) { g->SPGuide::showSPGuide(static_cast(l->data)->guides, (GCallback) sp_dt_guide_event); diff --git a/src/widgets/sp-color-icc-selector.h b/src/widgets/sp-color-icc-selector.h index 404bc7265..3eb12222c 100644 --- a/src/widgets/sp-color-icc-selector.h +++ b/src/widgets/sp-color-icc-selector.h @@ -8,7 +8,7 @@ #include "sp-color-selector.h" namespace Inkscape { -struct ColorProfile; +class ColorProfile; } struct SPColorICCSelector; -- cgit v1.2.3 From cd953884af566fce30421a9beee6cb71811ca792 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Thu, 1 Aug 2013 12:41:35 -0400 Subject: Improved math formatting. (bzr r12380.1.55) --- src/widgets/select-toolbar.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/widgets/select-toolbar.cpp b/src/widgets/select-toolbar.cpp index ab6d6ca3b..b39423635 100644 --- a/src/widgets/select-toolbar.cpp +++ b/src/widgets/select-toolbar.cpp @@ -206,9 +206,9 @@ sp_object_layout_any_value_changed(GtkAdjustment *adj, SPWidget *spw) x0 = bbox_user->min()[Geom::X] * x0_propn; double const y0_propn = gtk_adjustment_get_value (a_y) / 100 / unit.factor; y0 = y0_propn * bbox_user->min()[Geom::Y]; - xrel = gtk_adjustment_get_value (a_w) / 100 / unit.factor; + xrel = gtk_adjustment_get_value (a_w) / (100 / unit.factor); x1 = x0 + xrel * bbox_user->dimensions()[Geom::X]; - yrel = gtk_adjustment_get_value (a_h) / 100 / unit.factor; + yrel = gtk_adjustment_get_value (a_h) / (100 / unit.factor); y1 = y0 + yrel * bbox_user->dimensions()[Geom::Y]; } -- cgit v1.2.3 From aaa29715c3e2e854d6c25b6a3c3216f18824d669 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Thu, 1 Aug 2013 12:44:34 -0400 Subject: Fixed Windows compile bug. (bzr r12380.1.56) --- src/extension/internal/emf-win32-inout.cpp | 13 +++--- src/extension/internal/emf-win32-print.cpp | 70 +++++++++++++++--------------- 2 files changed, 42 insertions(+), 41 deletions(-) diff --git a/src/extension/internal/emf-win32-inout.cpp b/src/extension/internal/emf-win32-inout.cpp index 62cb53413..627d78b16 100644 --- a/src/extension/internal/emf-win32-inout.cpp +++ b/src/extension/internal/emf-win32-inout.cpp @@ -39,6 +39,7 @@ #include "display/drawing-item.h" #include "clear-n_.h" #include "document.h" +#include "util/units.h" #define WIN32_LEAN_AND_MEAN #include @@ -59,7 +60,7 @@ namespace Inkscape { namespace Extension { namespace Internal { -static float device_scale = DEVICESCALE; +static float device_scale = Inkscape::Util::Quantity::convert(1, "px", "pt"); static float device_x; static float device_y; static RECTL rc_old; @@ -776,18 +777,18 @@ myEnhMetaFileProc(HDC /*hDC*/, HANDLETABLE * /*lpHTable*/, ENHMETARECORD const * d->dc[d->level].PixelsInX = pEmr->rclFrame.right - pEmr->rclFrame.left; d->dc[d->level].PixelsInY = pEmr->rclFrame.bottom - pEmr->rclFrame.top; - device_x = pEmr->rclFrame.left/100.0*PX_PER_MM; - device_y = pEmr->rclFrame.top/100.0*PX_PER_MM; + device_x = pEmr->rclFrame.left/100.0*Inkscape::Util::Quantity::Convert(1, "mm", "px"); + device_y = pEmr->rclFrame.top/100.0*Inkscape::Util::Quantity::Convert(1, "mm", "px"); d->MMX = d->dc[d->level].PixelsInX / 100.0; d->MMY = d->dc[d->level].PixelsInY / 100.0; - d->dc[d->level].PixelsOutX = d->MMX * PX_PER_MM; - d->dc[d->level].PixelsOutY = d->MMY * PX_PER_MM; + d->dc[d->level].PixelsOutX = d->MMX * Inkscape::Util::Quantity::Convert(1, "mm", "px"); + d->dc[d->level].PixelsOutY = d->MMY * Inkscape::Util::Quantity::Convert(1, "mm", "px"); // calculate ratio of Inkscape dpi/device dpi if (pEmr->szlMillimeters.cx && pEmr->szlDevice.cx) - device_scale = PX_PER_MM*pEmr->szlMillimeters.cx/pEmr->szlDevice.cx; + device_scale = Inkscape::Util::Quantity::Convert(1, "mm", "px")*pEmr->szlMillimeters.cx/pEmr->szlDevice.cx; tmp_outdef << " width=\"" << d->MMX << "mm\"\n" << diff --git a/src/extension/internal/emf-win32-print.cpp b/src/extension/internal/emf-win32-print.cpp index 99f101bb8..8784f4ace 100644 --- a/src/extension/internal/emf-win32-print.cpp +++ b/src/extension/internal/emf-win32-print.cpp @@ -127,7 +127,7 @@ unsigned int PrintEmfWin32::begin (Inkscape::Extension::Print *mod, SPDocument * if (bbox) d = *bbox; } - d *= Geom::Scale(IN_PER_PX); + d *= Geom::Scale(Inkscape::Util::Quantity::Convert(1, "px", "in")); float dwInchesX = d.width(); float dwInchesY = d.height(); @@ -194,7 +194,7 @@ unsigned int PrintEmfWin32::begin (Inkscape::Extension::Print *mod, SPDocument * snprintf(buff, sizeof(buff)-1, "Screen=%dx%dpx, %dx%dmm", PixelsX, PixelsY, MMX, MMY); GdiComment(hdc, strlen(buff), (BYTE*) buff); - snprintf(buff, sizeof(buff)-1, "Drawing=%.1lfx%.1lfpx, %.1lfx%.1lfmm", _width, _height, dwInchesX * MM_PER_IN, dwInchesY * MM_PER_IN); + snprintf(buff, sizeof(buff)-1, "Drawing=%.1lfx%.1lfpx, %.1lfx%.1lfmm", _width, _height, dwInchesX * Inkscape::Util::Quantity::Convert(1, "in", "mm"), dwInchesY * Inkscape::Util::Quantity::Convert(1, "in", "mm")); GdiComment(hdc, strlen(buff), (BYTE*) buff); } @@ -303,7 +303,7 @@ void PrintEmfWin32::create_pen(SPStyle const *style, const Geom::Affine &transfo double scale = sqrt( (p[X]*p[X]) + (p[Y]*p[Y]) ) / sqrt(2); - DWORD linewidth = MAX( 1, (DWORD) (scale * style->stroke_width.computed * IN_PER_PX * dwDPI) ); + DWORD linewidth = MAX( 1, (DWORD) (scale * style->stroke_width.computed * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI) ); if (style->stroke_linecap.computed == 0) { linecap = PS_ENDCAP_FLAT; @@ -340,7 +340,7 @@ void PrintEmfWin32::create_pen(SPStyle const *style, const Geom::Affine &transfo n_dash = style->stroke_dash.n_dash; dash = new DWORD[n_dash]; for (i = 0; i < style->stroke_dash.n_dash; i++) { - dash[i] = (DWORD) (style->stroke_dash.dash[i] * IN_PER_PX * dwDPI); + dash[i] = (DWORD) (style->stroke_dash.dash[i] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); } } } @@ -543,8 +543,8 @@ bool PrintEmfWin32::print_simple_shape(Geom::PathVector const &pathv, const Geom Geom::Point p0 = pit->initialPoint(); - p0[X] = (p0[X] * IN_PER_PX * dwDPI); - p0[Y] = (p0[Y] * IN_PER_PX * dwDPI); + p0[X] = (p0[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + p0[Y] = (p0[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); LONG const x0 = (LONG) round(p0[X]); LONG const y0 = (LONG) round(rc.bottom-p0[Y]); @@ -563,10 +563,10 @@ bool PrintEmfWin32::print_simple_shape(Geom::PathVector const &pathv, const Geom //Geom::Point p0 = cit->initialPoint(); Geom::Point p1 = cit->finalPoint(); - //p0[X] = (p0[X] * IN_PER_PX * dwDPI); - p1[X] = (p1[X] * IN_PER_PX * dwDPI); - //p0[Y] = (p0[Y] * IN_PER_PX * dwDPI); - p1[Y] = (p1[Y] * IN_PER_PX * dwDPI); + //p0[X] = (p0[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + p1[X] = (p1[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + //p0[Y] = (p0[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + p1[Y] = (p1[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); //LONG const x0 = (LONG) round(p0[X]); //LONG const y0 = (LONG) round(rc.bottom-p0[Y]); @@ -585,14 +585,14 @@ bool PrintEmfWin32::print_simple_shape(Geom::PathVector const &pathv, const Geom Geom::Point p2 = points[2]; Geom::Point p3 = points[3]; - //p0[X] = (p0[X] * IN_PER_PX * dwDPI); - p1[X] = (p1[X] * IN_PER_PX * dwDPI); - p2[X] = (p2[X] * IN_PER_PX * dwDPI); - p3[X] = (p3[X] * IN_PER_PX * dwDPI); - //p0[Y] = (p0[Y] * IN_PER_PX * dwDPI); - p1[Y] = (p1[Y] * IN_PER_PX * dwDPI); - p2[Y] = (p2[Y] * IN_PER_PX * dwDPI); - p3[Y] = (p3[Y] * IN_PER_PX * dwDPI); + //p0[X] = (p0[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + p1[X] = (p1[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + p2[X] = (p2[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + p3[X] = (p3[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + //p0[Y] = (p0[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + p1[Y] = (p1[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + p2[Y] = (p2[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + p3[Y] = (p3[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); //LONG const x0 = (LONG) round(p0[X]); //LONG const y0 = (LONG) round(rc.bottom-p0[Y]); @@ -715,8 +715,8 @@ unsigned int PrintEmfWin32::print_pathv(Geom::PathVector const &pathv, const Geo Geom::Point p0 = pit->initialPoint(); - p0[X] = (p0[X] * IN_PER_PX * dwDPI); - p0[Y] = (p0[Y] * IN_PER_PX * dwDPI); + p0[X] = (p0[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + p0[Y] = (p0[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); LONG const x0 = (LONG) round(p0[X]); LONG const y0 = (LONG) round(rc.bottom-p0[Y]); @@ -733,10 +733,10 @@ unsigned int PrintEmfWin32::print_pathv(Geom::PathVector const &pathv, const Geo //Geom::Point p0 = cit->initialPoint(); Geom::Point p1 = cit->finalPoint(); - //p0[X] = (p0[X] * IN_PER_PX * dwDPI); - p1[X] = (p1[X] * IN_PER_PX * dwDPI); - //p0[Y] = (p0[Y] * IN_PER_PX * dwDPI); - p1[Y] = (p1[Y] * IN_PER_PX * dwDPI); + //p0[X] = (p0[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + p1[X] = (p1[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + //p0[Y] = (p0[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + p1[Y] = (p1[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); //LONG const x0 = (LONG) round(p0[X]); //LONG const y0 = (LONG) round(rc.bottom-p0[Y]); @@ -753,14 +753,14 @@ unsigned int PrintEmfWin32::print_pathv(Geom::PathVector const &pathv, const Geo Geom::Point p2 = points[2]; Geom::Point p3 = points[3]; - //p0[X] = (p0[X] * IN_PER_PX * dwDPI); - p1[X] = (p1[X] * IN_PER_PX * dwDPI); - p2[X] = (p2[X] * IN_PER_PX * dwDPI); - p3[X] = (p3[X] * IN_PER_PX * dwDPI); - //p0[Y] = (p0[Y] * IN_PER_PX * dwDPI); - p1[Y] = (p1[Y] * IN_PER_PX * dwDPI); - p2[Y] = (p2[Y] * IN_PER_PX * dwDPI); - p3[Y] = (p3[Y] * IN_PER_PX * dwDPI); + //p0[X] = (p0[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + p1[X] = (p1[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + p2[X] = (p2[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + p3[X] = (p3[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + //p0[Y] = (p0[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + p1[Y] = (p1[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + p2[Y] = (p2[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + p3[Y] = (p3[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); //LONG const x0 = (LONG) round(p0[X]); //LONG const y0 = (LONG) round(rc.bottom-p0[Y]); @@ -828,7 +828,7 @@ unsigned int PrintEmfWin32::text(Inkscape::Extension::Print * /*mod*/, char cons LOGFONTW *lf = (LOGFONTW*)g_malloc(sizeof(LOGFONTW)); g_assert(lf != NULL); - lf->lfHeight = -style->font_size.computed * IN_PER_PX * dwDPI; + lf->lfHeight = -style->font_size.computed * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI; lf->lfWidth = 0; lf->lfEscapement = rot; lf->lfOrientation = rot; @@ -877,8 +877,8 @@ unsigned int PrintEmfWin32::text(Inkscape::Extension::Print * /*mod*/, char cons SetBkMode(hdc, TRANSPARENT); Geom::Point p2 = p * tf; - p2[Geom::X] = (p2[Geom::X] * IN_PER_PX * dwDPI); - p2[Geom::Y] = (p2[Geom::Y] * IN_PER_PX * dwDPI); + p2[Geom::X] = (p2[Geom::X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + p2[Geom::Y] = (p2[Geom::Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); LONG const xpos = (LONG) round(p2[Geom::X]); LONG const ypos = (LONG) round(rc.bottom - p2[Geom::Y]); -- cgit v1.2.3 From 5a15ea1a002fa4638198d50182e6fd5847ee9cf9 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Thu, 1 Aug 2013 16:28:56 -0400 Subject: Fixed Windows compile bug. (bzr r12380.1.58) --- src/extension/internal/emf-win32-inout.cpp | 10 ++--- src/extension/internal/emf-win32-print.cpp | 71 +++++++++++++++--------------- 2 files changed, 41 insertions(+), 40 deletions(-) diff --git a/src/extension/internal/emf-win32-inout.cpp b/src/extension/internal/emf-win32-inout.cpp index 627d78b16..2530af0cc 100644 --- a/src/extension/internal/emf-win32-inout.cpp +++ b/src/extension/internal/emf-win32-inout.cpp @@ -777,18 +777,18 @@ myEnhMetaFileProc(HDC /*hDC*/, HANDLETABLE * /*lpHTable*/, ENHMETARECORD const * d->dc[d->level].PixelsInX = pEmr->rclFrame.right - pEmr->rclFrame.left; d->dc[d->level].PixelsInY = pEmr->rclFrame.bottom - pEmr->rclFrame.top; - device_x = pEmr->rclFrame.left/100.0*Inkscape::Util::Quantity::Convert(1, "mm", "px"); - device_y = pEmr->rclFrame.top/100.0*Inkscape::Util::Quantity::Convert(1, "mm", "px"); + device_x = pEmr->rclFrame.left/100.0*Inkscape::Util::Quantity::convert(1, "mm", "px"); + device_y = pEmr->rclFrame.top/100.0*Inkscape::Util::Quantity::convert(1, "mm", "px"); d->MMX = d->dc[d->level].PixelsInX / 100.0; d->MMY = d->dc[d->level].PixelsInY / 100.0; - d->dc[d->level].PixelsOutX = d->MMX * Inkscape::Util::Quantity::Convert(1, "mm", "px"); - d->dc[d->level].PixelsOutY = d->MMY * Inkscape::Util::Quantity::Convert(1, "mm", "px"); + d->dc[d->level].PixelsOutX = d->MMX * Inkscape::Util::Quantity::convert(1, "mm", "px"); + d->dc[d->level].PixelsOutY = d->MMY * Inkscape::Util::Quantity::convert(1, "mm", "px"); // calculate ratio of Inkscape dpi/device dpi if (pEmr->szlMillimeters.cx && pEmr->szlDevice.cx) - device_scale = Inkscape::Util::Quantity::Convert(1, "mm", "px")*pEmr->szlMillimeters.cx/pEmr->szlDevice.cx; + device_scale = Inkscape::Util::Quantity::convert(1, "mm", "px")*pEmr->szlMillimeters.cx/pEmr->szlDevice.cx; tmp_outdef << " width=\"" << d->MMX << "mm\"\n" << diff --git a/src/extension/internal/emf-win32-print.cpp b/src/extension/internal/emf-win32-print.cpp index 8784f4ace..dae97fecf 100644 --- a/src/extension/internal/emf-win32-print.cpp +++ b/src/extension/internal/emf-win32-print.cpp @@ -36,6 +36,7 @@ #include "helper/geom.h" #include "helper/geom-curves.h" #include "sp-item.h" +#include "util/units.h" #include "style.h" #include "inkscape-version.h" @@ -127,7 +128,7 @@ unsigned int PrintEmfWin32::begin (Inkscape::Extension::Print *mod, SPDocument * if (bbox) d = *bbox; } - d *= Geom::Scale(Inkscape::Util::Quantity::Convert(1, "px", "in")); + d *= Geom::Scale(Inkscape::Util::Quantity::convert(1, "px", "in")); float dwInchesX = d.width(); float dwInchesY = d.height(); @@ -194,7 +195,7 @@ unsigned int PrintEmfWin32::begin (Inkscape::Extension::Print *mod, SPDocument * snprintf(buff, sizeof(buff)-1, "Screen=%dx%dpx, %dx%dmm", PixelsX, PixelsY, MMX, MMY); GdiComment(hdc, strlen(buff), (BYTE*) buff); - snprintf(buff, sizeof(buff)-1, "Drawing=%.1lfx%.1lfpx, %.1lfx%.1lfmm", _width, _height, dwInchesX * Inkscape::Util::Quantity::Convert(1, "in", "mm"), dwInchesY * Inkscape::Util::Quantity::Convert(1, "in", "mm")); + snprintf(buff, sizeof(buff)-1, "Drawing=%.1lfx%.1lfpx, %.1lfx%.1lfmm", _width, _height, dwInchesX * Inkscape::Util::Quantity::convert(1, "in", "mm"), dwInchesY * Inkscape::Util::Quantity::convert(1, "in", "mm")); GdiComment(hdc, strlen(buff), (BYTE*) buff); } @@ -303,7 +304,7 @@ void PrintEmfWin32::create_pen(SPStyle const *style, const Geom::Affine &transfo double scale = sqrt( (p[X]*p[X]) + (p[Y]*p[Y]) ) / sqrt(2); - DWORD linewidth = MAX( 1, (DWORD) (scale * style->stroke_width.computed * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI) ); + DWORD linewidth = MAX( 1, (DWORD) (scale * style->stroke_width.computed * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI) ); if (style->stroke_linecap.computed == 0) { linecap = PS_ENDCAP_FLAT; @@ -340,7 +341,7 @@ void PrintEmfWin32::create_pen(SPStyle const *style, const Geom::Affine &transfo n_dash = style->stroke_dash.n_dash; dash = new DWORD[n_dash]; for (i = 0; i < style->stroke_dash.n_dash; i++) { - dash[i] = (DWORD) (style->stroke_dash.dash[i] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + dash[i] = (DWORD) (style->stroke_dash.dash[i] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); } } } @@ -543,8 +544,8 @@ bool PrintEmfWin32::print_simple_shape(Geom::PathVector const &pathv, const Geom Geom::Point p0 = pit->initialPoint(); - p0[X] = (p0[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); - p0[Y] = (p0[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + p0[X] = (p0[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + p0[Y] = (p0[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); LONG const x0 = (LONG) round(p0[X]); LONG const y0 = (LONG) round(rc.bottom-p0[Y]); @@ -563,10 +564,10 @@ bool PrintEmfWin32::print_simple_shape(Geom::PathVector const &pathv, const Geom //Geom::Point p0 = cit->initialPoint(); Geom::Point p1 = cit->finalPoint(); - //p0[X] = (p0[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); - p1[X] = (p1[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); - //p0[Y] = (p0[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); - p1[Y] = (p1[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + //p0[X] = (p0[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + p1[X] = (p1[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + //p0[Y] = (p0[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + p1[Y] = (p1[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); //LONG const x0 = (LONG) round(p0[X]); //LONG const y0 = (LONG) round(rc.bottom-p0[Y]); @@ -585,14 +586,14 @@ bool PrintEmfWin32::print_simple_shape(Geom::PathVector const &pathv, const Geom Geom::Point p2 = points[2]; Geom::Point p3 = points[3]; - //p0[X] = (p0[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); - p1[X] = (p1[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); - p2[X] = (p2[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); - p3[X] = (p3[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); - //p0[Y] = (p0[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); - p1[Y] = (p1[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); - p2[Y] = (p2[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); - p3[Y] = (p3[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + //p0[X] = (p0[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + p1[X] = (p1[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + p2[X] = (p2[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + p3[X] = (p3[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + //p0[Y] = (p0[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + p1[Y] = (p1[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + p2[Y] = (p2[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + p3[Y] = (p3[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); //LONG const x0 = (LONG) round(p0[X]); //LONG const y0 = (LONG) round(rc.bottom-p0[Y]); @@ -715,8 +716,8 @@ unsigned int PrintEmfWin32::print_pathv(Geom::PathVector const &pathv, const Geo Geom::Point p0 = pit->initialPoint(); - p0[X] = (p0[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); - p0[Y] = (p0[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + p0[X] = (p0[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + p0[Y] = (p0[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); LONG const x0 = (LONG) round(p0[X]); LONG const y0 = (LONG) round(rc.bottom-p0[Y]); @@ -733,10 +734,10 @@ unsigned int PrintEmfWin32::print_pathv(Geom::PathVector const &pathv, const Geo //Geom::Point p0 = cit->initialPoint(); Geom::Point p1 = cit->finalPoint(); - //p0[X] = (p0[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); - p1[X] = (p1[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); - //p0[Y] = (p0[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); - p1[Y] = (p1[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + //p0[X] = (p0[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + p1[X] = (p1[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + //p0[Y] = (p0[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + p1[Y] = (p1[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); //LONG const x0 = (LONG) round(p0[X]); //LONG const y0 = (LONG) round(rc.bottom-p0[Y]); @@ -753,14 +754,14 @@ unsigned int PrintEmfWin32::print_pathv(Geom::PathVector const &pathv, const Geo Geom::Point p2 = points[2]; Geom::Point p3 = points[3]; - //p0[X] = (p0[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); - p1[X] = (p1[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); - p2[X] = (p2[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); - p3[X] = (p3[X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); - //p0[Y] = (p0[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); - p1[Y] = (p1[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); - p2[Y] = (p2[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); - p3[Y] = (p3[Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + //p0[X] = (p0[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + p1[X] = (p1[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + p2[X] = (p2[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + p3[X] = (p3[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + //p0[Y] = (p0[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + p1[Y] = (p1[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + p2[Y] = (p2[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + p3[Y] = (p3[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); //LONG const x0 = (LONG) round(p0[X]); //LONG const y0 = (LONG) round(rc.bottom-p0[Y]); @@ -828,7 +829,7 @@ unsigned int PrintEmfWin32::text(Inkscape::Extension::Print * /*mod*/, char cons LOGFONTW *lf = (LOGFONTW*)g_malloc(sizeof(LOGFONTW)); g_assert(lf != NULL); - lf->lfHeight = -style->font_size.computed * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI; + lf->lfHeight = -style->font_size.computed * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI; lf->lfWidth = 0; lf->lfEscapement = rot; lf->lfOrientation = rot; @@ -877,8 +878,8 @@ unsigned int PrintEmfWin32::text(Inkscape::Extension::Print * /*mod*/, char cons SetBkMode(hdc, TRANSPARENT); Geom::Point p2 = p * tf; - p2[Geom::X] = (p2[Geom::X] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); - p2[Geom::Y] = (p2[Geom::Y] * Inkscape::Util::Quantity::Convert(1, "px", "in") * dwDPI); + p2[Geom::X] = (p2[Geom::X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + p2[Geom::Y] = (p2[Geom::Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); LONG const xpos = (LONG) round(p2[Geom::X]); LONG const ypos = (LONG) round(rc.bottom - p2[Geom::Y]); -- cgit v1.2.3 From f69ba9fbb46f827a2cb76f2d1f87acbf53edc416 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Thu, 1 Aug 2013 19:42:12 -0400 Subject: Fix UnitTracker percentage bug. (bzr r12380.1.59) --- src/ui/widget/unit-tracker.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ui/widget/unit-tracker.cpp b/src/ui/widget/unit-tracker.cpp index c0d3eec9b..99074be40 100644 --- a/src/ui/widget/unit-tracker.cpp +++ b/src/ui/widget/unit-tracker.cpp @@ -245,7 +245,7 @@ void UnitTracker::_fixupAdjustments(Inkscape::Util::Unit const oldUnit, Inkscape && (newUnit.type != Inkscape::Util::UNIT_TYPE_DIMENSIONLESS) ) { if (_priorValues.find(adj) != _priorValues.end()) { - val = Inkscape::Util::Quantity::convert(_priorValues[adj], newUnit, "px"); + val = Inkscape::Util::Quantity::convert(_priorValues[adj], "px", newUnit); } } else { val = Inkscape::Util::Quantity::convert(oldVal, oldUnit, newUnit); -- cgit v1.2.3 From 15dc2f172154aaf4a3df4e68426d975b7a09e5c8 Mon Sep 17 00:00:00 2001 From: Alex Valavanis Date: Fri, 2 Aug 2013 18:11:53 +0100 Subject: Fix POTFILES.in missing files (bzr r12443) --- po/POTFILES.in | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/po/POTFILES.in b/po/POTFILES.in index 44a57134a..deee92d79 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -199,6 +199,7 @@ src/select-context.cpp src/selection-chemistry.cpp src/selection-describer.cpp src/seltrans.cpp +src/seltrans-handles.cpp src/shortcuts.cpp src/shape-editor.cpp src/sp-anchor.cpp @@ -264,7 +265,6 @@ src/ui/dialog/object-properties.cpp src/ui/dialog/ocaldialogs.cpp src/ui/dialog/print.cpp src/ui/dialog/print-colors-preview-dialog.cpp -src/ui/dialog/scriptdialog.cpp src/ui/dialog/svg-fonts-dialog.cpp src/ui/dialog/symbols.cpp src/ui/dialog/swatches.cpp @@ -303,7 +303,7 @@ src/widgets/dash-selector.cpp src/widgets/desktop-widget.cpp src/widgets/dropper-toolbar.cpp src/widgets/ege-paint-def.cpp -src/widgets/erasor-toolbar.cpp +src/widgets/eraser-toolbar.cpp src/widgets/fill-style.cpp src/widgets/font-selector.cpp src/widgets/gradient-selector.cpp @@ -317,6 +317,7 @@ src/widgets/paintbucket-toolbar.cpp src/widgets/paint-selector.cpp src/widgets/pencil-toolbar.cpp src/widgets/rect-toolbar.cpp +src/widgets/ruler.cpp src/widgets/select-toolbar.cpp src/widgets/spiral-toolbar.cpp src/widgets/spray-toolbar.cpp @@ -330,6 +331,7 @@ src/widgets/sp-xmlview-attr-list.cpp src/widgets/sp-xmlview-content.cpp src/widgets/star-toolbar.cpp src/widgets/stroke-style.cpp +src/widgets/stroke-marker-selector.cpp src/widgets/swatch-selector.cpp src/widgets/text-toolbar.cpp src/widgets/toolbox.cpp @@ -338,6 +340,7 @@ src/widgets/zoom-toolbar.cpp share/extensions/convert2dashes.py share/extensions/dimension.py share/extensions/draw_from_triangle.py +share/extensions/dxf_input.py share/extensions/dxf_outlines.py share/extensions/embedimage.py share/extensions/export_gimp_palette.py @@ -349,6 +352,8 @@ share/extensions/generate_voronoi.py share/extensions/gimp_xcf.py share/extensions/guides_creator.py share/extensions/guillotine.py +share/extensions/hpgl_input.py +share/extensions/dxf_outlines.py share/extensions/inkex.py share/extensions/interp_att_g.py share/extensions/jessyInk_autoTexts.py -- cgit v1.2.3 From 5488905e7f4659c0fed7c1841b768cbaf26e3cb1 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Fri, 2 Aug 2013 22:25:14 +0200 Subject: reordered SPDesktop::set_event_context2; fixed last mismatched-tags (bzr r11608.1.116) --- src/desktop.cpp | 22 ++++++++++++++-------- src/extension/internal/cairo-render-context.h | 2 +- src/extension/internal/cairo-renderer.h | 2 +- src/sp-object.cpp | 4 +--- 4 files changed, 17 insertions(+), 13 deletions(-) diff --git a/src/desktop.cpp b/src/desktop.cpp index a8de8ee50..f602f30d1 100644 --- a/src/desktop.cpp +++ b/src/desktop.cpp @@ -673,20 +673,26 @@ SPDesktop::change_document (SPDocument *theDocument) #include "tool-factory.h" void SPDesktop::set_event_context2(const std::string& toolName) { - if (event_context) { - event_context->deactivate(); - event_context->finish(); - delete event_context; + SPEventContext* ec_old = event_context; + + if (ec_old) { + ec_old->deactivate(); } - event_context = ToolFactory::instance().createObject(toolName); + SPEventContext* ec_new = ToolFactory::instance().createObject(toolName); + ec_new->desktop = this; + ec_new->message_context = new Inkscape::MessageContext(this->messageStack()); + ec_new->setup(); - event_context->desktop = this; - event_context->message_context = new Inkscape::MessageContext(this->messageStack()); + event_context = ec_new; - event_context->setup(); + if (ec_old) { + ec_old->finish(); + delete ec_old; + } sp_event_context_activate(event_context); + _event_context_changed_signal.emit(this, event_context); } diff --git a/src/extension/internal/cairo-render-context.h b/src/extension/internal/cairo-render-context.h index 8829940c6..9ea4559a0 100644 --- a/src/extension/internal/cairo-render-context.h +++ b/src/extension/internal/cairo-render-context.h @@ -29,7 +29,7 @@ #include class SPClipPath; -struct SPMask; +class SPMask; namespace Inkscape { namespace Extension { diff --git a/src/extension/internal/cairo-renderer.h b/src/extension/internal/cairo-renderer.h index c1482d82e..db3068fed 100644 --- a/src/extension/internal/cairo-renderer.h +++ b/src/extension/internal/cairo-renderer.h @@ -28,7 +28,7 @@ #include class SPClipPath; -struct SPMask; +class SPMask; namespace Inkscape { namespace Extension { diff --git a/src/sp-object.cpp b/src/sp-object.cpp index 95a28dd7b..3dacc8b70 100644 --- a/src/sp-object.cpp +++ b/src/sp-object.cpp @@ -588,7 +588,6 @@ void SPObject::child_added(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) ochild->invoke_build(object->document, child, object->cloned); } catch (const FactoryExceptions::TypeNotRegistered& e) { - //log_exception(std::current_exception()); g_warning("TypeNotRegistered exception: %s", e.what()); } } @@ -654,8 +653,7 @@ void SPObject::build(SPDocument *document, Inkscape::XML::Node *repr) { sp_object_unref(child, NULL); child->invoke_build(document, rchild, object->cloned); } catch (const FactoryExceptions::TypeNotRegistered& e) { - //log_exception(std::current_exception()); - g_warning("TypeNotRegistered exception: %s", e.what()); + //g_warning("TypeNotRegistered exception: %s", e.what()); } } } -- cgit v1.2.3 From bf4a1d2d49850170b936c30cfe2b30e798716406 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sat, 3 Aug 2013 03:03:43 +0200 Subject: Cleaned up. (bzr r11608.1.117) --- src/display/nr-style.cpp | 12 +- src/extension/internal/odf.cpp | 2 +- src/gradient-chemistry.cpp | 12 +- src/gradient-context.cpp | 6 +- src/select-context.cpp | 88 ++++---- src/select-context.h | 4 + src/sp-clippath.cpp | 104 +++++---- src/sp-clippath.h | 1 + src/sp-gradient.h | 8 +- src/sp-item.cpp | 14 +- src/sp-linear-gradient.cpp | 22 -- src/sp-linear-gradient.h | 5 +- src/sp-mask.cpp | 125 +++++------ src/sp-mask.h | 11 +- src/sp-mesh-gradient.cpp | 15 -- src/sp-mesh-gradient.h | 4 +- src/sp-mesh-patch.cpp | 10 +- src/sp-mesh-patch.h | 1 + src/sp-mesh-row.h | 3 +- src/sp-metadata.cpp | 24 +-- src/sp-metadata.h | 1 + src/sp-missing-glyph.cpp | 65 +++--- src/sp-missing-glyph.h | 13 +- src/sp-namedview.cpp | 453 +++++++++++++++++++-------------------- src/sp-namedview.h | 2 +- src/sp-object-group.cpp | 21 +- src/sp-object-group.h | 1 + src/sp-paint-server.cpp | 36 +--- src/sp-paint-server.h | 13 +- src/sp-pattern.cpp | 4 - src/sp-pattern.h | 4 +- src/sp-radial-gradient.cpp | 21 -- src/sp-radial-gradient.h | 4 +- src/sp-script.cpp | 25 +-- src/sp-script.h | 1 + src/sp-stop.cpp | 103 +++++---- src/sp-stop.h | 6 +- src/spray-context.cpp | 45 ++-- src/spray-context.h | 3 + src/tweak-context.cpp | 87 ++++---- src/tweak-context.h | 2 + src/widgets/gradient-toolbar.cpp | 2 +- src/widgets/gradient-vector.cpp | 10 +- src/widgets/stroke-style.cpp | 2 +- src/widgets/swatch-selector.cpp | 2 +- 45 files changed, 626 insertions(+), 771 deletions(-) diff --git a/src/display/nr-style.cpp b/src/display/nr-style.cpp index 26d70ad15..1929bfed6 100644 --- a/src/display/nr-style.cpp +++ b/src/display/nr-style.cpp @@ -153,8 +153,10 @@ bool NRStyle::prepareFill(Inkscape::DrawingContext &ct, Geom::OptRect const &pai if (!fill_pattern) { switch (fill.type) { case PAINT_SERVER: { - fill_pattern = sp_paint_server_create_pattern(fill.server, ct.raw(), paintbox, fill.opacity); - } break; + //fill_pattern = sp_paint_server_create_pattern(fill.server, ct.raw(), paintbox, fill.opacity); + fill_pattern = fill.server->pattern_new(ct.raw(), paintbox, fill.opacity); + + } break; case PAINT_COLOR: { SPColor const &c = fill.color; fill_pattern = cairo_pattern_create_rgba( @@ -178,8 +180,10 @@ bool NRStyle::prepareStroke(Inkscape::DrawingContext &ct, Geom::OptRect const &p if (!stroke_pattern) { switch (stroke.type) { case PAINT_SERVER: { - stroke_pattern = sp_paint_server_create_pattern(stroke.server, ct.raw(), paintbox, stroke.opacity); - } break; + //stroke_pattern = sp_paint_server_create_pattern(stroke.server, ct.raw(), paintbox, stroke.opacity); + stroke_pattern = stroke.server->pattern_new(ct.raw(), paintbox, stroke.opacity); + + } break; case PAINT_COLOR: { SPColor const &c = stroke.color; stroke_pattern = cairo_pattern_create_rgba( diff --git a/src/extension/internal/odf.cpp b/src/extension/internal/odf.cpp index 9f745cdea..a7c14387f 100644 --- a/src/extension/internal/odf.cpp +++ b/src/extension/internal/odf.cpp @@ -1484,7 +1484,7 @@ bool OdfOutput::processGradient(SPItem *item, for (SPStop *stop = grvec->getFirstStop(); stop ; stop = stop->getNextStop()) { - unsigned long rgba = sp_stop_get_rgba32(stop); + unsigned long rgba = stop->get_rgba32(); unsigned long rgb = (rgba >> 8) & 0xffffff; double opacity = (static_cast(rgba & 0xff)) / 256.0; GradientStop gs(rgb, opacity); diff --git a/src/gradient-chemistry.cpp b/src/gradient-chemistry.cpp index 7dcbdf98c..40260ea66 100644 --- a/src/gradient-chemistry.cpp +++ b/src/gradient-chemistry.cpp @@ -648,8 +648,8 @@ SPStop *sp_vector_add_stop(SPGradient *vector, SPStop* prev_stop, SPStop* next_s SPStop *newstop = reinterpret_cast(vector->document->getObjectByRepr(new_stop_repr)); newstop->offset = offset; sp_repr_set_css_double( newstop->getRepr(), "offset", (double)offset); - guint32 const c1 = sp_stop_get_rgba32(prev_stop); - guint32 const c2 = sp_stop_get_rgba32(next_stop); + guint32 const c1 = prev_stop->get_rgba32(); + guint32 const c2 = next_stop->get_rgba32(); guint32 cnew = average_color (c1, c2, (offset - prev_stop->offset) / (next_stop->offset - prev_stop->offset)); Inkscape::CSSOStringStream os; gchar c[64]; @@ -726,7 +726,7 @@ guint32 sp_item_gradient_stop_query_style(SPItem *item, GrPointType point_type, { SPStop *first = vector->getFirstStop(); if (first) { - return sp_stop_get_rgba32(first); + return first->get_rgba32(); } } break; @@ -737,7 +737,7 @@ guint32 sp_item_gradient_stop_query_style(SPItem *item, GrPointType point_type, { SPStop *last = sp_last_stop (vector); if (last) { - return sp_stop_get_rgba32(last); + return last->get_rgba32(); } } break; @@ -748,7 +748,7 @@ guint32 sp_item_gradient_stop_query_style(SPItem *item, GrPointType point_type, { SPStop *stopi = sp_get_stop_i (vector, point_i); if (stopi) { - return sp_stop_get_rgba32(stopi); + return stopi->get_rgba32(); } } break; @@ -982,7 +982,7 @@ void sp_item_gradient_invert_vector_color(SPItem *item, Inkscape::PaintTarget fi for ( SPObject *child = vector->firstChild(); child; child = child->getNext()) { if (SP_IS_STOP(child)) { - guint32 color = sp_stop_get_rgba32(SP_STOP(child)); + guint32 color = SP_STOP(child)->get_rgba32(); //g_message("Stop color %d", color); gchar c[64]; sp_svg_write_color (c, sizeof(c), diff --git a/src/gradient-context.cpp b/src/gradient-context.cpp index 5921426cf..3456f33c3 100644 --- a/src/gradient-context.cpp +++ b/src/gradient-context.cpp @@ -410,9 +410,9 @@ sp_gradient_simplify(SPGradientContext *rc, double tolerance) if (g_slist_find(todel, stop0) || g_slist_find(todel, stop2)) continue; - guint32 const c0 = sp_stop_get_rgba32(stop0); - guint32 const c2 = sp_stop_get_rgba32(stop2); - guint32 const c1r = sp_stop_get_rgba32(stop1); + guint32 const c0 = stop0->get_rgba32(); + guint32 const c2 = stop2->get_rgba32(); + guint32 const c1r = stop1->get_rgba32(); guint32 c1 = average_color (c0, c2, (stop1->offset - stop0->offset) / (stop2->offset - stop0->offset)); diff --git a/src/select-context.cpp b/src/select-context.cpp index efedb23e2..2949c1181 100644 --- a/src/select-context.cpp +++ b/src/select-context.cpp @@ -115,9 +115,9 @@ SPSelectContext::SPSelectContext() : SPEventContext() { sp_load_handles(12, 1, handle_center_xpm); } -static gint xp = 0, yp = 0; // where drag started -static gint tolerance = 0; -static bool within_tolerance = false; +//static gint xp = 0, yp = 0; // where drag started +//static gint tolerance = 0; +//static bool within_tolerance = false; static bool is_cycling = false; static bool moved_while_cycling = false; SPEventContext *prev_event_context = NULL; @@ -190,45 +190,41 @@ void SPSelectContext::set(const Inkscape::Preferences::Entry& val) { } } -static bool -sp_select_context_abort(SPEventContext *event_context) -{ - SPDesktop *desktop = event_context->desktop; - SPSelectContext *sc = SP_SELECT_CONTEXT(event_context); - Inkscape::SelTrans *seltrans = sc->_seltrans; +bool SPSelectContext::sp_select_context_abort() { + Inkscape::SelTrans *seltrans = this->_seltrans; - if (sc->dragging) { - if (sc->moved) { // cancel dragging an object + if (this->dragging) { + if (this->moved) { // cancel dragging an object seltrans->ungrab(); - sc->moved = FALSE; - sc->dragging = FALSE; - sp_event_context_discard_delayed_snap_event(event_context); + this->moved = FALSE; + this->dragging = FALSE; + sp_event_context_discard_delayed_snap_event(this); drag_escaped = 1; - if (sc->item) { + if (this->item) { // only undo if the item is still valid - if (sc->item->document) { + if (this->item->document) { DocumentUndo::undo(sp_desktop_document(desktop)); } - sp_object_unref( sc->item, NULL); - } else if (sc->button_press_ctrl) { + sp_object_unref( this->item, NULL); + } else if (this->button_press_ctrl) { // NOTE: This is a workaround to a bug. // When the ctrl key is held, sc->item is not defined // so in this case (only), we skip the object doc check DocumentUndo::undo(sp_desktop_document(desktop)); } - sc->item = NULL; + this->item = NULL; - SP_EVENT_CONTEXT(sc)->desktop->messageStack()->flash(Inkscape::NORMAL_MESSAGE, _("Move canceled.")); + SP_EVENT_CONTEXT(this)->desktop->messageStack()->flash(Inkscape::NORMAL_MESSAGE, _("Move canceled.")); return true; } } else { if (Inkscape::Rubberband::get(desktop)->is_started()) { Inkscape::Rubberband::get(desktop)->stop(); rb_escaped = 1; - SP_EVENT_CONTEXT(sc)->defaultMessageContext()->clear(); - SP_EVENT_CONTEXT(sc)->desktop->messageStack()->flash(Inkscape::NORMAL_MESSAGE, _("Selection canceled.")); + SP_EVENT_CONTEXT(this)->defaultMessageContext()->clear(); + SP_EVENT_CONTEXT(this)->desktop->messageStack()->flash(Inkscape::NORMAL_MESSAGE, _("Selection canceled.")); return true; } } @@ -285,7 +281,7 @@ bool SPSelectContext::item_handler(SPItem* item, GdkEvent* event) { // make sure we still have valid objects to move around if (this->item && this->item->document == NULL) { - sp_select_context_abort(this); + this->sp_select_context_abort(); } switch (event->type) { @@ -345,7 +341,7 @@ bool SPSelectContext::item_handler(SPItem* item, GdkEvent* event) { } } else if (event->button.button == 3) { // right click; do not eat it so that right-click menu can appear, but cancel dragging & rubberband - sp_select_context_abort(this); + this->sp_select_context_abort(); } break; @@ -396,43 +392,47 @@ bool SPSelectContext::item_handler(SPItem* item, GdkEvent* event) { return ret; } -static void -sp_select_context_cycle_through_items(SPSelectContext *sc, Inkscape::Selection *selection, GdkEventScroll *scroll_event, bool shift_pressed) { - if (!sc->cycling_cur_item) +void SPSelectContext::sp_select_context_cycle_through_items(Inkscape::Selection *selection, GdkEventScroll *scroll_event, bool shift_pressed) { + if (!this->cycling_cur_item) { return; + } Inkscape::DrawingItem *arenaitem; - SPDesktop *desktop = SP_EVENT_CONTEXT(sc)->desktop; - SPItem *item = SP_ITEM(sc->cycling_cur_item->data); + SPItem *item = SP_ITEM(this->cycling_cur_item->data); // Deactivate current item - if (!g_list_find(sc->cycling_items_selected_before, item) && selection->includes(item)) + if (!g_list_find(this->cycling_items_selected_before, item) && selection->includes(item)) { selection->remove(item); + } + arenaitem = item->get_arenaitem(desktop->dkey); arenaitem->setOpacity(0.3); // Find next item and activate it GList *next; if (scroll_event->direction == GDK_SCROLL_UP) { - next = sc->cycling_cur_item->next; - if (next == NULL && sc->cycling_wrap) - next = sc->cycling_items; + next = this->cycling_cur_item->next; + if (next == NULL && this->cycling_wrap) + next = this->cycling_items; } else { - next = sc->cycling_cur_item->prev; - if (next == NULL && sc->cycling_wrap) - next = g_list_last(sc->cycling_items); + next = this->cycling_cur_item->prev; + if (next == NULL && this->cycling_wrap) + next = g_list_last(this->cycling_items); } + if (next) { - sc->cycling_cur_item = next; - item = SP_ITEM(sc->cycling_cur_item->data); + this->cycling_cur_item = next; + item = SP_ITEM(this->cycling_cur_item->data); } + arenaitem = item->get_arenaitem(desktop->dkey); arenaitem->setOpacity(1.0); - if (shift_pressed) + if (shift_pressed) { selection->add(item); - else + } else { selection->set(item); + } } @@ -465,7 +465,7 @@ bool SPSelectContext::root_handler(GdkEvent* event) { // make sure we still have valid objects to move around if (this->item && this->item->document == NULL) { - sp_select_context_abort(this); + this->sp_select_context_abort(); } switch (event->type) { @@ -533,7 +533,7 @@ bool SPSelectContext::root_handler(GdkEvent* event) { ret = TRUE; } else if (event->button.button == 3) { // right click; do not eat it so that right-click menu can appear, but cancel dragging & rubberband - sp_select_context_abort(this); + this->sp_select_context_abort(); } break; @@ -890,7 +890,7 @@ bool SPSelectContext::root_handler(GdkEvent* event) { this->cycling_wrap = prefs->getBool("/options/selection/cycleWrap", true); // Cycle through the items underneath the mouse pointer, one-by-one - sp_select_context_cycle_through_items(this, selection, scroll_event, shift_pressed); + this->sp_select_context_cycle_through_items(selection, scroll_event, shift_pressed); ret = TRUE; @@ -1043,7 +1043,7 @@ bool SPSelectContext::root_handler(GdkEvent* event) { break; case GDK_KEY_Escape: - if (!sp_select_context_abort(this)) { + if (!this->sp_select_context_abort()) { selection->clear(); } diff --git a/src/select-context.h b/src/select-context.h index ab60083b1..25b9997e6 100644 --- a/src/select-context.h +++ b/src/select-context.h @@ -56,6 +56,10 @@ public: virtual bool item_handler(SPItem* item, GdkEvent* event); virtual const std::string& getPrefsPath(); + +private: + bool sp_select_context_abort(); + void sp_select_context_cycle_through_items(Inkscape::Selection *selection, GdkEventScroll *scroll_event, bool shift_pressed); }; #endif diff --git a/src/sp-clippath.cpp b/src/sp-clippath.cpp index 6a2fbfbb3..8e2e7d7a6 100644 --- a/src/sp-clippath.cpp +++ b/src/sp-clippath.cpp @@ -61,57 +61,50 @@ SPClipPath::~SPClipPath() { } void SPClipPath::build(SPDocument* doc, Inkscape::XML::Node* repr) { - SPClipPath* object = this; - SPObjectGroup::build(doc, repr); - object->readAttr( "style" ); - object->readAttr( "clipPathUnits" ); + this->readAttr( "style" ); + this->readAttr( "clipPathUnits" ); /* Register ourselves */ - doc->addResource("clipPath", object); + doc->addResource("clipPath", this); } void SPClipPath::release() { - SPClipPath* object = this; - - if (object->document) { + if (this->document) { // Unregister ourselves - object->document->removeResource("clipPath", object); + this->document->removeResource("clipPath", this); } - SPClipPath *cp = SP_CLIPPATH(object); - while (cp->display) { + while (this->display) { /* We simply unref and let item manage this in handler */ - cp->display = sp_clippath_view_list_remove(cp->display, cp->display); + this->display = sp_clippath_view_list_remove(this->display, this->display); } SPObjectGroup::release(); } void SPClipPath::set(unsigned int key, const gchar* value) { - SPClipPath* object = this; - - SPClipPath *cp = SP_CLIPPATH(object); - switch (key) { case SP_ATTR_CLIPPATHUNITS: - cp->clipPathUnits = SP_CONTENT_UNITS_USERSPACEONUSE; - cp->clipPathUnits_set = FALSE; + this->clipPathUnits = SP_CONTENT_UNITS_USERSPACEONUSE; + this->clipPathUnits_set = FALSE; + if (value) { if (!strcmp(value, "userSpaceOnUse")) { - cp->clipPathUnits_set = TRUE; + this->clipPathUnits_set = TRUE; } else if (!strcmp(value, "objectBoundingBox")) { - cp->clipPathUnits = SP_CONTENT_UNITS_OBJECTBOUNDINGBOX; - cp->clipPathUnits_set = TRUE; + this->clipPathUnits = SP_CONTENT_UNITS_OBJECTBOUNDINGBOX; + this->clipPathUnits_set = TRUE; } } - object->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG); + + this->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG); break; default: if (SP_ATTRIBUTE_IS_CSS(key)) { - sp_style_read_from_object(object->style, object); - object->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG); + sp_style_read_from_object(this->style, this); + this->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG); } else { SPObjectGroup::set(key, value); } @@ -120,19 +113,16 @@ void SPClipPath::set(unsigned int key, const gchar* value) { } void SPClipPath::child_added(Inkscape::XML::Node* child, Inkscape::XML::Node* ref) { - SPClipPath* object = this; - /* Invoke SPObjectGroup implementation */ SPObjectGroup::child_added(child, ref); /* Show new object */ - SPObject *ochild = object->document->getObjectByRepr(child); + SPObject *ochild = this->document->getObjectByRepr(child); + if (SP_IS_ITEM(ochild)) { - SPClipPath *cp = SP_CLIPPATH(object); - for (SPClipPathView *v = cp->display; v != NULL; v = v->next) { - Inkscape::DrawingItem *ac = SP_ITEM(ochild)->invoke_show( v->arenaitem->drawing(), - v->key, - SP_ITEM_REFERENCE_FLAGS); + for (SPClipPathView *v = this->display; v != NULL; v = v->next) { + Inkscape::DrawingItem *ac = SP_ITEM(ochild)->invoke_show(v->arenaitem->drawing(), v->key, SP_ITEM_REFERENCE_FLAGS); + if (ac) { v->arenaitem->prependChild(ac); } @@ -141,34 +131,35 @@ void SPClipPath::child_added(Inkscape::XML::Node* child, Inkscape::XML::Node* re } void SPClipPath::update(SPCtx* ctx, unsigned int flags) { - SPClipPath* object = this; - if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; } flags &= SP_OBJECT_MODIFIED_CASCADE; - SPObjectGroup *og = SP_OBJECTGROUP(object); GSList *l = NULL; - for ( SPObject *child = og->firstChild(); child; child = child->getNext()) { + for ( SPObject *child = this->firstChild(); child; child = child->getNext()) { sp_object_ref(child); l = g_slist_prepend(l, child); } + l = g_slist_reverse(l); + while (l) { SPObject *child = SP_OBJECT(l->data); l = g_slist_remove(l, child); + if (flags || (child->uflags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_CHILD_MODIFIED_FLAG))) { child->updateDisplay(ctx, flags); } + sp_object_unref(child); } - SPClipPath *cp = SP_CLIPPATH(object); - for (SPClipPathView *v = cp->display; v != NULL; v = v->next) { + for (SPClipPathView *v = this->display; v != NULL; v = v->next) { Inkscape::DrawingGroup *g = dynamic_cast(v->arenaitem); - if (cp->clipPathUnits == SP_CONTENT_UNITS_OBJECTBOUNDINGBOX && v->bbox) { + + if (this->clipPathUnits == SP_CONTENT_UNITS_OBJECTBOUNDINGBOX && v->bbox) { Geom::Affine t = Geom::Scale(v->bbox->dimensions()); t.setTranslation(v->bbox->min()); g->setChildTransform(t); @@ -179,27 +170,28 @@ void SPClipPath::update(SPCtx* ctx, unsigned int flags) { } void SPClipPath::modified(unsigned int flags) { - SPClipPath* object = this; - if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; } flags &= SP_OBJECT_MODIFIED_CASCADE; - SPObjectGroup *og = SP_OBJECTGROUP(object); GSList *l = NULL; - for (SPObject *child = og->firstChild(); child; child = child->getNext()) { + for (SPObject *child = this->firstChild(); child; child = child->getNext()) { sp_object_ref(child); l = g_slist_prepend(l, child); } + l = g_slist_reverse(l); + while (l) { SPObject *child = SP_OBJECT(l->data); l = g_slist_remove(l, child); + if (flags || (child->mflags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_CHILD_MODIFIED_FLAG))) { child->emitModified(flags); } + sp_object_unref(child); } } @@ -214,14 +206,14 @@ Inkscape::XML::Node* SPClipPath::write(Inkscape::XML::Document* xml_doc, Inkscap return repr; } -Inkscape::DrawingItem *SPClipPath::show(Inkscape::Drawing &drawing, unsigned int key) -{ +Inkscape::DrawingItem *SPClipPath::show(Inkscape::Drawing &drawing, unsigned int key) { Inkscape::DrawingGroup *ai = new Inkscape::DrawingGroup(drawing); display = sp_clippath_view_new_prepend(display, key, ai); for ( SPObject *child = firstChild() ; child ; child = child->getNext() ) { if (SP_IS_ITEM(child)) { Inkscape::DrawingItem *ac = SP_ITEM(child)->invoke_show(drawing, key, SP_ITEM_REFERENCE_FLAGS); + if (ac) { /* The order is not important in clippath */ ai->appendChild(ac); @@ -234,13 +226,13 @@ Inkscape::DrawingItem *SPClipPath::show(Inkscape::Drawing &drawing, unsigned int t.setTranslation(display->bbox->min()); ai->setChildTransform(t); } + ai->setStyle(this->style); return ai; } -void SPClipPath::hide(unsigned int key) -{ +void SPClipPath::hide(unsigned int key) { for ( SPObject *child = firstChild() ; child; child = child->getNext() ) { if (SP_IS_ITEM(child)) { SP_ITEM(child)->invoke_hide(key); @@ -258,8 +250,7 @@ void SPClipPath::hide(unsigned int key) g_assert_not_reached(); } -void SPClipPath::setBBox(unsigned int key, Geom::OptRect const &bbox) -{ +void SPClipPath::setBBox(unsigned int key, Geom::OptRect const &bbox) { for (SPClipPathView *v = display; v != NULL; v = v->next) { if (v->key == key) { v->bbox = bbox; @@ -268,15 +259,16 @@ void SPClipPath::setBBox(unsigned int key, Geom::OptRect const &bbox) } } -Geom::OptRect SPClipPath::geometricBounds(Geom::Affine const &transform) -{ - SPObject *i = 0; +Geom::OptRect SPClipPath::geometricBounds(Geom::Affine const &transform) { Geom::OptRect bbox; - for (i = firstChild(); i; i = i->getNext()) { - if (!SP_IS_ITEM(i)) continue; - Geom::OptRect tmp = SP_ITEM(i)->geometricBounds(Geom::Affine(SP_ITEM(i)->transform) * transform); - bbox.unionWith(tmp); + + for (SPObject *i = firstChild(); i; i = i->getNext()) { + if (SP_IS_ITEM(i)) { + Geom::OptRect tmp = SP_ITEM(i)->geometricBounds(Geom::Affine(SP_ITEM(i)->transform) * transform); + bbox.unionWith(tmp); + } } + return bbox; } diff --git a/src/sp-clippath.h b/src/sp-clippath.h index 331c4f4cd..707213611 100644 --- a/src/sp-clippath.h +++ b/src/sp-clippath.h @@ -51,6 +51,7 @@ public: void setBBox(unsigned int key, Geom::OptRect const &bbox); Geom::OptRect geometricBounds(Geom::Affine const &transform); +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/sp-gradient.h b/src/sp-gradient.h index 27a652377..2d402092a 100644 --- a/src/sp-gradient.h +++ b/src/sp-gradient.h @@ -195,21 +195,21 @@ public: void setSwatch(bool swatch = true); + static void gradientRefModified(SPObject *href, guint flags, SPGradient *gradient); + static void gradientRefChanged(SPObject *old_ref, SPObject *ref, SPGradient *gr); + private: bool invalidateVector(); bool invalidateArray(); void rebuildVector(); void rebuildArray(); -public: +protected: virtual void build(SPDocument *document, Inkscape::XML::Node *repr); virtual void release(); virtual void modified(guint flags); virtual Inkscape::XML::Node* write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); - static void gradientRefModified(SPObject *href, guint flags, SPGradient *gradient); - static void gradientRefChanged(SPObject *old_ref, SPObject *ref, SPGradient *gr); - virtual void child_added(Inkscape::XML::Node *child, Inkscape::XML::Node *ref); virtual void remove_child(Inkscape::XML::Node *child); diff --git a/src/sp-item.cpp b/src/sp-item.cpp index 9e44bda38..abff398e6 100644 --- a/src/sp-item.cpp +++ b/src/sp-item.cpp @@ -541,7 +541,7 @@ void SPItem::mask_ref_changed(SPObject *old_mask, SPObject *mask, SPItem *item) if (old_mask) { /* Hide mask */ for (SPItemView *v = item->display; v != NULL; v = v->next) { - sp_mask_hide(SP_MASK(old_mask), v->arenaitem->key()); + SP_MASK(old_mask)->sp_mask_hide(v->arenaitem->key()); } } if (SP_IS_MASK(mask)) { @@ -550,11 +550,11 @@ void SPItem::mask_ref_changed(SPObject *old_mask, SPObject *mask, SPItem *item) if (!v->arenaitem->key()) { v->arenaitem->setKey(SPItem::display_key_new(3)); } - Inkscape::DrawingItem *ai = sp_mask_show(SP_MASK(mask), + Inkscape::DrawingItem *ai = SP_MASK(mask)->sp_mask_show( v->arenaitem->drawing(), v->arenaitem->key()); v->arenaitem->setMask(ai); - sp_mask_set_bbox(SP_MASK(mask), v->arenaitem->key(), bbox); + SP_MASK(mask)->sp_mask_set_bbox(v->arenaitem->key(), bbox); mask->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG); } } @@ -589,7 +589,7 @@ void SPItem::update(SPCtx *ctx, guint flags) { } if (mask) { for (SPItemView *v = item->display; v != NULL; v = v->next) { - sp_mask_set_bbox(mask, v->arenaitem->key(), bbox); + mask->sp_mask_set_bbox(v->arenaitem->key(), bbox); } } } @@ -1050,11 +1050,11 @@ Inkscape::DrawingItem *SPItem::invoke_show(Inkscape::Drawing &drawing, unsigned int mask_key = display->arenaitem->key(); // Show and set mask - Inkscape::DrawingItem *ac = sp_mask_show(mask, drawing, mask_key); + Inkscape::DrawingItem *ac = mask->sp_mask_show(drawing, mask_key); ai->setMask(ac); // Update bbox, in case the mask uses bbox units - sp_mask_set_bbox(SP_MASK(mask), mask_key, item_bbox); + SP_MASK(mask)->sp_mask_set_bbox(mask_key, item_bbox); mask->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG); } if (style->filter.set && display) { @@ -1086,7 +1086,7 @@ void SPItem::invoke_hide(unsigned key) v->arenaitem->setClip(NULL); } if (mask_ref->getObject()) { - sp_mask_hide(mask_ref->getObject(), v->arenaitem->key()); + mask_ref->getObject()->sp_mask_hide(v->arenaitem->key()); v->arenaitem->setMask(NULL); } if (!ref) { diff --git a/src/sp-linear-gradient.cpp b/src/sp-linear-gradient.cpp index 4305d1acf..4e7a08f4b 100644 --- a/src/sp-linear-gradient.cpp +++ b/src/sp-linear-gradient.cpp @@ -96,28 +96,6 @@ Inkscape::XML::Node* SPLinearGradient::write(Inkscape::XML::Document *xml_doc, I return repr; } - -/** - * Directly set properties of linear gradient and request modified. - */ -void -sp_lineargradient_set_position(SPLinearGradient *lg, - gdouble x1, gdouble y1, - gdouble x2, gdouble y2) -{ - g_return_if_fail(lg != NULL); - g_return_if_fail(SP_IS_LINEARGRADIENT(lg)); - - /* fixme: units? (Lauris) */ - lg->x1.set(SVGLength::NONE, x1, x1); - lg->y1.set(SVGLength::NONE, y1, y1); - lg->x2.set(SVGLength::NONE, x2, x2); - lg->y2.set(SVGLength::NONE, y2, y2); - - lg->requestModified(SP_OBJECT_MODIFIED_FLAG); -} - - cairo_pattern_t* SPLinearGradient::pattern_new(cairo_t *ct, Geom::OptRect const &bbox, double opacity) { this->ensureVector(); diff --git a/src/sp-linear-gradient.h b/src/sp-linear-gradient.h index 89065245d..69052fe81 100644 --- a/src/sp-linear-gradient.h +++ b/src/sp-linear-gradient.h @@ -22,11 +22,12 @@ public: SVGLength x2; SVGLength y2; -public: + virtual cairo_pattern_t* pattern_new(cairo_t *ct, Geom::OptRect const &bbox, double opacity); + +protected: virtual void build(SPDocument *document, Inkscape::XML::Node *repr); virtual void set(unsigned key, gchar const *value); virtual Inkscape::XML::Node* write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); - virtual cairo_pattern_t* pattern_new(cairo_t *ct, Geom::OptRect const &bbox, double opacity); }; #endif /* !SP_LINEAR_GRADIENT_H */ diff --git a/src/sp-mask.cpp b/src/sp-mask.cpp index 186e927f7..9707c9d8e 100644 --- a/src/sp-mask.cpp +++ b/src/sp-mask.cpp @@ -61,65 +61,60 @@ SPMask::~SPMask() { } void SPMask::build(SPDocument* doc, Inkscape::XML::Node* repr) { - SPMask* object = this; - SPObjectGroup::build(doc, repr); - object->readAttr( "maskUnits" ); - object->readAttr( "maskContentUnits" ); + this->readAttr( "maskUnits" ); + this->readAttr( "maskContentUnits" ); /* Register ourselves */ - doc->addResource("mask", object); + doc->addResource("mask", this); } void SPMask::release() { - SPMask* object = this; - - if (object->document) { + if (this->document) { // Unregister ourselves - object->document->removeResource("mask", object); + this->document->removeResource("mask", this); } - SPMask *cp = SP_MASK (object); - while (cp->display) { + while (this->display) { // We simply unref and let item manage this in handler - cp->display = sp_mask_view_list_remove (cp->display, cp->display); + this->display = sp_mask_view_list_remove(this->display, this->display); } SPObjectGroup::release(); } void SPMask::set(unsigned int key, const gchar* value) { - SPMask* object = this; - - SPMask *mask = SP_MASK (object); - switch (key) { case SP_ATTR_MASKUNITS: - mask->maskUnits = SP_CONTENT_UNITS_OBJECTBOUNDINGBOX; - mask->maskUnits_set = FALSE; + this->maskUnits = SP_CONTENT_UNITS_OBJECTBOUNDINGBOX; + this->maskUnits_set = FALSE; + if (value) { if (!strcmp (value, "userSpaceOnUse")) { - mask->maskUnits = SP_CONTENT_UNITS_USERSPACEONUSE; - mask->maskUnits_set = TRUE; + this->maskUnits = SP_CONTENT_UNITS_USERSPACEONUSE; + this->maskUnits_set = TRUE; } else if (!strcmp (value, "objectBoundingBox")) { - mask->maskUnits_set = TRUE; + this->maskUnits_set = TRUE; } } - object->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG); + + this->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_MASKCONTENTUNITS: - mask->maskContentUnits = SP_CONTENT_UNITS_USERSPACEONUSE; - mask->maskContentUnits_set = FALSE; + this->maskContentUnits = SP_CONTENT_UNITS_USERSPACEONUSE; + this->maskContentUnits_set = FALSE; + if (value) { if (!strcmp (value, "userSpaceOnUse")) { - mask->maskContentUnits_set = TRUE; + this->maskContentUnits_set = TRUE; } else if (!strcmp (value, "objectBoundingBox")) { - mask->maskContentUnits = SP_CONTENT_UNITS_OBJECTBOUNDINGBOX; - mask->maskContentUnits_set = TRUE; + this->maskContentUnits = SP_CONTENT_UNITS_OBJECTBOUNDINGBOX; + this->maskContentUnits_set = TRUE; } } - object->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG); + + this->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG); break; default: SPObjectGroup::set(key, value); @@ -128,19 +123,16 @@ void SPMask::set(unsigned int key, const gchar* value) { } void SPMask::child_added(Inkscape::XML::Node* child, Inkscape::XML::Node* ref) { - SPMask* object = this; - /* Invoke SPObjectGroup implementation */ SPObjectGroup::child_added(child, ref); /* Show new object */ - SPObject *ochild = object->document->getObjectByRepr(child); + SPObject *ochild = this->document->getObjectByRepr(child); + if (SP_IS_ITEM (ochild)) { - SPMask *cp = SP_MASK (object); - for (SPMaskView *v = cp->display; v != NULL; v = v->next) { - Inkscape::DrawingItem *ac = SP_ITEM (ochild)->invoke_show ( v->arenaitem->drawing(), - v->key, - SP_ITEM_REFERENCE_FLAGS); + for (SPMaskView *v = this->display; v != NULL; v = v->next) { + Inkscape::DrawingItem *ac = SP_ITEM (ochild)->invoke_show(v->arenaitem->drawing(), v->key, SP_ITEM_REFERENCE_FLAGS); + if (ac) { v->arenaitem->prependChild(ac); } @@ -150,34 +142,35 @@ void SPMask::child_added(Inkscape::XML::Node* child, Inkscape::XML::Node* ref) { void SPMask::update(SPCtx* ctx, unsigned int flags) { - SPMask* object = this; - if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; } flags &= SP_OBJECT_MODIFIED_CASCADE; - SPObjectGroup *og = SP_OBJECTGROUP(object); GSList *l = NULL; - for (SPObject *child = og->firstChild(); child; child = child->getNext()) { + for (SPObject *child = this->firstChild(); child; child = child->getNext()) { sp_object_ref(child); l = g_slist_prepend (l, child); } + l = g_slist_reverse (l); + while (l) { SPObject *child = SP_OBJECT(l->data); l = g_slist_remove(l, child); + if (flags || (child->uflags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_CHILD_MODIFIED_FLAG))) { child->updateDisplay(ctx, flags); } + sp_object_unref(child); } - SPMask *mask = SP_MASK(object); - for (SPMaskView *v = mask->display; v != NULL; v = v->next) { + for (SPMaskView *v = this->display; v != NULL; v = v->next) { Inkscape::DrawingGroup *g = dynamic_cast(v->arenaitem); - if (mask->maskContentUnits == SP_CONTENT_UNITS_OBJECTBOUNDINGBOX && v->bbox) { + + if (this->maskContentUnits == SP_CONTENT_UNITS_OBJECTBOUNDINGBOX && v->bbox) { Geom::Affine t = Geom::Scale(v->bbox->dimensions()); t.setTranslation(v->bbox->min()); g->setChildTransform(t); @@ -188,27 +181,28 @@ void SPMask::update(SPCtx* ctx, unsigned int flags) { } void SPMask::modified(unsigned int flags) { - SPMask* object = this; - if (flags & SP_OBJECT_MODIFIED_FLAG) { flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; } flags &= SP_OBJECT_MODIFIED_CASCADE; - SPObjectGroup *og = SP_OBJECTGROUP(object); GSList *l = NULL; - for (SPObject *child = og->firstChild(); child; child = child->getNext()) { + for (SPObject *child = this->firstChild(); child; child = child->getNext()) { sp_object_ref(child); l = g_slist_prepend(l, child); } + l = g_slist_reverse(l); + while (l) { SPObject *child = SP_OBJECT(l->data); l = g_slist_remove(l, child); + if (flags || (child->mflags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_CHILD_MODIFIED_FLAG))) { child->emitModified(flags); } + sp_object_unref(child); } } @@ -255,47 +249,46 @@ sp_mask_create (GSList *reprs, SPDocument *document, Geom::Affine const* applyTr return mask_id; } -Inkscape::DrawingItem *sp_mask_show(SPMask *mask, Inkscape::Drawing &drawing, unsigned int key) -{ - g_return_val_if_fail (mask != NULL, NULL); - g_return_val_if_fail (SP_IS_MASK (mask), NULL); +Inkscape::DrawingItem *SPMask::sp_mask_show(Inkscape::Drawing &drawing, unsigned int key) { + g_return_val_if_fail (this != NULL, NULL); + g_return_val_if_fail (SP_IS_MASK (this), NULL); Inkscape::DrawingGroup *ai = new Inkscape::DrawingGroup(drawing); - mask->display = sp_mask_view_new_prepend (mask->display, key, ai); + this->display = sp_mask_view_new_prepend (this->display, key, ai); - for ( SPObject *child = mask->firstChild() ; child; child = child->getNext() ) { + for ( SPObject *child = this->firstChild() ; child; child = child->getNext() ) { if (SP_IS_ITEM (child)) { Inkscape::DrawingItem *ac = SP_ITEM (child)->invoke_show (drawing, key, SP_ITEM_REFERENCE_FLAGS); + if (ac) { ai->prependChild(ac); } } } - if (mask->maskContentUnits == SP_CONTENT_UNITS_OBJECTBOUNDINGBOX && mask->display->bbox) { - Geom::Affine t = Geom::Scale(mask->display->bbox->dimensions()); - t.setTranslation(mask->display->bbox->min()); + if (this->maskContentUnits == SP_CONTENT_UNITS_OBJECTBOUNDINGBOX && this->display->bbox) { + Geom::Affine t = Geom::Scale(this->display->bbox->dimensions()); + t.setTranslation(this->display->bbox->min()); ai->setChildTransform(t); } return ai; } -void sp_mask_hide(SPMask *cp, unsigned int key) -{ - g_return_if_fail (cp != NULL); - g_return_if_fail (SP_IS_MASK (cp)); +void SPMask::sp_mask_hide(unsigned int key) { + g_return_if_fail (this != NULL); + g_return_if_fail (SP_IS_MASK (this)); - for ( SPObject *child = cp->firstChild(); child; child = child->getNext()) { + for ( SPObject *child = this->firstChild(); child; child = child->getNext()) { if (SP_IS_ITEM (child)) { SP_ITEM(child)->invoke_hide (key); } } - for (SPMaskView *v = cp->display; v != NULL; v = v->next) { + for (SPMaskView *v = this->display; v != NULL; v = v->next) { if (v->key == key) { /* We simply unref and let item to manage this in handler */ - cp->display = sp_mask_view_list_remove (cp->display, v); + this->display = sp_mask_view_list_remove (this->display, v); return; } } @@ -303,10 +296,8 @@ void sp_mask_hide(SPMask *cp, unsigned int key) g_assert_not_reached (); } -void -sp_mask_set_bbox (SPMask *mask, unsigned int key, Geom::OptRect const &bbox) -{ - for (SPMaskView *v = mask->display; v != NULL; v = v->next) { +void SPMask::sp_mask_set_bbox(unsigned int key, Geom::OptRect const &bbox) { + for (SPMaskView *v = this->display; v != NULL; v = v->next) { if (v->key == key) { v->bbox = bbox; break; diff --git a/src/sp-mask.h b/src/sp-mask.h index fe029ab56..a2e97d671 100644 --- a/src/sp-mask.h +++ b/src/sp-mask.h @@ -44,6 +44,12 @@ public: SPMaskView *display; + Inkscape::DrawingItem *sp_mask_show(Inkscape::Drawing &drawing, unsigned int key); + void sp_mask_hide(unsigned int key); + + void sp_mask_set_bbox(unsigned int key, Geom::OptRect const &bbox); + +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); @@ -102,11 +108,6 @@ protected: } }; -Inkscape::DrawingItem *sp_mask_show (SPMask *mask, Inkscape::Drawing &drawing, unsigned int key); -void sp_mask_hide (SPMask *mask, unsigned int key); - -void sp_mask_set_bbox (SPMask *mask, unsigned int key, Geom::OptRect const &bbox); - const gchar *sp_mask_create (GSList *reprs, SPDocument *document, Geom::Affine const* applyTransform); #endif // SEEN_SP_MASK_H diff --git a/src/sp-mesh-gradient.cpp b/src/sp-mesh-gradient.cpp index 2e12a2d32..3fd277f52 100644 --- a/src/sp-mesh-gradient.cpp +++ b/src/sp-mesh-gradient.cpp @@ -86,21 +86,6 @@ Inkscape::XML::Node* SPMeshGradient::write(Inkscape::XML::Document *xml_doc, Ink return repr; } -/** - * Directly set properties of mesh gradient and request modified. - */ -void -sp_meshgradient_set_position(SPMeshGradient *mg, gdouble x, gdouble y) -{ - g_return_if_fail(mg != NULL); - g_return_if_fail(SP_IS_MESHGRADIENT(mg)); - - mg->x.set(SVGLength::NONE, x, x); - mg->y.set(SVGLength::NONE, y, y); - - mg->requestModified(SP_OBJECT_MODIFIED_FLAG); -} - void sp_meshgradient_repr_write(SPMeshGradient *mg) { diff --git a/src/sp-mesh-gradient.h b/src/sp-mesh-gradient.h index bfd1c9c06..a6ab29c09 100644 --- a/src/sp-mesh-gradient.h +++ b/src/sp-mesh-gradient.h @@ -20,10 +20,12 @@ public: SVGLength x; // Upper left corner of mesh SVGLength y; // Upper right corner of mesh + virtual cairo_pattern_t* pattern_new(cairo_t *ct, Geom::OptRect const &bbox, double opacity); + +protected: virtual void build(SPDocument *document, Inkscape::XML::Node *repr); virtual void set(unsigned key, gchar const *value); virtual Inkscape::XML::Node* write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); - virtual cairo_pattern_t* pattern_new(cairo_t *ct, Geom::OptRect const &bbox, double opacity); }; #endif /* !SP_MESH_GRADIENT_H */ diff --git a/src/sp-mesh-patch.cpp b/src/sp-mesh-patch.cpp index b4d0e951b..216de8270 100644 --- a/src/sp-mesh-patch.cpp +++ b/src/sp-mesh-patch.cpp @@ -77,11 +77,9 @@ SPMeshPatch::~SPMeshPatch() { } void SPMeshPatch::build(SPDocument* doc, Inkscape::XML::Node* repr) { - SPMeshPatch* object = this; - SPObject::build(doc, repr); - object->readAttr( "tensor" ); + this->readAttr( "tensor" ); } /** @@ -89,14 +87,10 @@ void SPMeshPatch::build(SPDocument* doc, Inkscape::XML::Node* repr) { */ void SPMeshPatch::set(unsigned int key, const gchar* value) { - SPMeshPatch* object = this; - - SPMeshPatch *patch = SP_MESHPATCH(object); - switch (key) { case SP_ATTR_TENSOR: { if (value) { - patch->tensor_string = new Glib::ustring( value ); + this->tensor_string = new Glib::ustring( value ); // std::cout << "sp_meshpatch_set: Tensor string: " << patch->tensor_string->c_str() << std::endl; } break; diff --git a/src/sp-mesh-patch.h b/src/sp-mesh-patch.h index 1b8d58df1..34bbb00d8 100644 --- a/src/sp-mesh-patch.h +++ b/src/sp-mesh-patch.h @@ -32,6 +32,7 @@ public: //SVGLength tx[4]; // Tensor points //SVGLength ty[4]; // Tensor points +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void set(unsigned int key, const gchar* value); virtual Inkscape::XML::Node* write(Inkscape::XML::Document* doc, Inkscape::XML::Node* repr, guint flags); diff --git a/src/sp-mesh-row.h b/src/sp-mesh-row.h index 3d9dd6b99..4f2e8842f 100644 --- a/src/sp-mesh-row.h +++ b/src/sp-mesh-row.h @@ -14,8 +14,6 @@ #include #include "sp-object.h" -class SPObjectClass; - #define SP_MESHROW(obj) ((SPMeshRow*)obj) #define SP_IS_MESHROW(obj) (dynamic_cast((SPObject*)obj)) @@ -28,6 +26,7 @@ public: SPMeshRow* getNextMeshRow(); SPMeshRow* getPrevMeshRow(); +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void set(unsigned int key, const gchar* value); virtual Inkscape::XML::Node* write(Inkscape::XML::Document* doc, Inkscape::XML::Node* repr, guint flags); diff --git a/src/sp-metadata.cpp b/src/sp-metadata.cpp index edb73c9b1..a093107ac 100644 --- a/src/sp-metadata.cpp +++ b/src/sp-metadata.cpp @@ -44,8 +44,6 @@ namespace { } SPMetadata::SPMetadata() : SPObject() { - (void)this; - debug("0x%08x",(unsigned int)this); } SPMetadata::~SPMetadata() { @@ -69,11 +67,12 @@ void strip_ids_recursively(Inkscape::XML::Node *node) { void SPMetadata::build(SPDocument* doc, Inkscape::XML::Node* repr) { using Inkscape::XML::NodeSiblingIterator; - debug("0x%08x",(unsigned int)object); + debug("0x%08x",(unsigned int)this); /* clean up our mess from earlier versions; elements under rdf:RDF should not * have id= attributes... */ - static GQuark const rdf_root_name=g_quark_from_static_string("rdf:RDF"); + static GQuark const rdf_root_name = g_quark_from_static_string("rdf:RDF"); + for ( NodeSiblingIterator iter=repr->firstChild() ; iter ; ++iter ) { if ( (GQuark)iter->code() == rdf_root_name ) { strip_ids_recursively(iter); @@ -84,7 +83,7 @@ void SPMetadata::build(SPDocument* doc, Inkscape::XML::Node* repr) { } void SPMetadata::release() { - debug("0x%08x",(unsigned int)object); + debug("0x%08x",(unsigned int)this); // handle ourself @@ -92,7 +91,7 @@ void SPMetadata::release() { } void SPMetadata::set(unsigned int key, const gchar* value) { - debug("0x%08x %s(%u): '%s'",(unsigned int)object, + debug("0x%08x %s(%u): '%s'",(unsigned int)this, sp_attribute_name(key),key,value); // see if any parents need this value @@ -100,7 +99,7 @@ void SPMetadata::set(unsigned int key, const gchar* value) { } void SPMetadata::update(SPCtx* ctx, unsigned int flags) { - debug("0x%08x",(unsigned int)object); + debug("0x%08x",(unsigned int)this); //SPMetadata *metadata = SP_METADATA(object); if (flags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG | @@ -114,16 +113,13 @@ void SPMetadata::update(SPCtx* ctx, unsigned int flags) { } Inkscape::XML::Node* SPMetadata::write(Inkscape::XML::Document* doc, Inkscape::XML::Node* repr, guint flags) { - SPMetadata* object = this; - - debug("0x%08x",(unsigned int)object); - //SPMetadata *metadata = SP_METADATA(object); + debug("0x%08x",(unsigned int)this); - if ( repr != object->getRepr() ) { + if ( repr != this->getRepr() ) { if (repr) { - repr->mergeFrom(object->getRepr(), "id"); + repr->mergeFrom(this->getRepr(), "id"); } else { - repr = object->getRepr()->duplicate(doc); + repr = this->getRepr()->duplicate(doc); } } diff --git a/src/sp-metadata.h b/src/sp-metadata.h index 02193f1ed..752ced9e3 100644 --- a/src/sp-metadata.h +++ b/src/sp-metadata.h @@ -25,6 +25,7 @@ public: SPMetadata(); virtual ~SPMetadata(); +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); diff --git a/src/sp-missing-glyph.cpp b/src/sp-missing-glyph.cpp index a3b440ab0..06b741165 100644 --- a/src/sp-missing-glyph.cpp +++ b/src/sp-missing-glyph.cpp @@ -42,15 +42,13 @@ SPMissingGlyph::~SPMissingGlyph() { } void SPMissingGlyph::build(SPDocument* doc, Inkscape::XML::Node* repr) { - SPMissingGlyph* object = this; - SPObject::build(doc, repr); - object->readAttr( "d" ); - object->readAttr( "horiz-adv-x" ); - object->readAttr( "vert-origin-x" ); - object->readAttr( "vert-origin-y" ); - object->readAttr( "vert-adv-y" ); + this->readAttr( "d" ); + this->readAttr( "horiz-adv-x" ); + this->readAttr( "vert-origin-x" ); + this->readAttr( "vert-origin-y" ); + this->readAttr( "vert-adv-y" ); } void SPMissingGlyph::release() { @@ -59,53 +57,49 @@ void SPMissingGlyph::release() { void SPMissingGlyph::set(unsigned int key, const gchar* value) { - SPMissingGlyph* object = this; - - SPMissingGlyph *glyph = SP_MISSING_GLYPH(object); - switch (key) { case SP_ATTR_D: { - if (glyph->d) { - g_free(glyph->d); + if (this->d) { + g_free(this->d); } - glyph->d = g_strdup(value); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->d = g_strdup(value); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; } case SP_ATTR_HORIZ_ADV_X: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != glyph->horiz_adv_x){ - glyph->horiz_adv_x = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + if (number != this->horiz_adv_x){ + this->horiz_adv_x = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_VERT_ORIGIN_X: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != glyph->vert_origin_x){ - glyph->vert_origin_x = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + if (number != this->vert_origin_x){ + this->vert_origin_x = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_VERT_ORIGIN_Y: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != glyph->vert_origin_y){ - glyph->vert_origin_y = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + if (number != this->vert_origin_y){ + this->vert_origin_y = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } case SP_ATTR_VERT_ADV_Y: { double number = value ? g_ascii_strtod(value, 0) : 0; - if (number != glyph->vert_adv_y){ - glyph->vert_adv_y = number; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + if (number != this->vert_adv_y){ + this->vert_adv_y = number; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } break; } @@ -120,10 +114,6 @@ void SPMissingGlyph::set(unsigned int key, const gchar* value) { #define COPY_ATTR(rd,rs,key) (rd)->setAttribute((key), rs->attribute(key)); Inkscape::XML::Node* SPMissingGlyph::write(Inkscape::XML::Document* xml_doc, Inkscape::XML::Node* repr, guint flags) { - SPMissingGlyph* object = this; - - // SPMissingGlyph *glyph = SP_MISSING_GLYPH(object); - if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { repr = xml_doc->createElement("svg:glyph"); } @@ -135,15 +125,16 @@ Inkscape::XML::Node* SPMissingGlyph::write(Inkscape::XML::Document* xml_doc, Ink sp_repr_set_svg_double(repr, "vert-origin-y", glyph->vert_origin_y); sp_repr_set_svg_double(repr, "vert-adv-y", glyph->vert_adv_y); */ - if (repr != object->getRepr()) { + if (repr != this->getRepr()) { + // TODO // All the COPY_ATTR functions below use // XML Tree directly while they shouldn't. - COPY_ATTR(repr, object->getRepr(), "d"); - COPY_ATTR(repr, object->getRepr(), "horiz-adv-x"); - COPY_ATTR(repr, object->getRepr(), "vert-origin-x"); - COPY_ATTR(repr, object->getRepr(), "vert-origin-y"); - COPY_ATTR(repr, object->getRepr(), "vert-adv-y"); + COPY_ATTR(repr, this->getRepr(), "d"); + COPY_ATTR(repr, this->getRepr(), "horiz-adv-x"); + COPY_ATTR(repr, this->getRepr(), "vert-origin-x"); + COPY_ATTR(repr, this->getRepr(), "vert-origin-y"); + COPY_ATTR(repr, this->getRepr(), "vert-adv-y"); } SPObject::write(xml_doc, repr, flags); diff --git a/src/sp-missing-glyph.h b/src/sp-missing-glyph.h index a9d94b311..368f25943 100644 --- a/src/sp-missing-glyph.h +++ b/src/sp-missing-glyph.h @@ -26,16 +26,19 @@ public: SPMissingGlyph(); virtual ~SPMissingGlyph(); - char* d; - double horiz_adv_x; - double vert_origin_x; - double vert_origin_y; - double vert_adv_y; + char* d; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); virtual void set(unsigned int key, const gchar* value); virtual Inkscape::XML::Node* write(Inkscape::XML::Document* doc, Inkscape::XML::Node* repr, guint flags); + +private: + double horiz_adv_x; + double vert_origin_x; + double vert_origin_y; + double vert_adv_y; }; #endif //#ifndef __SP_MISSING_GLYPH_H__ diff --git a/src/sp-namedview.cpp b/src/sp-namedview.cpp index 576de312f..14cc7669d 100644 --- a/src/sp-namedview.cpp +++ b/src/sp-namedview.cpp @@ -97,8 +97,6 @@ SPNamedView::SPNamedView() : SPObjectGroup(), snap_manager(this) { this->default_layer_id = 0; this->connector_spacing = defaultConnSpacing; - - //new (&this->snap_manager) SnapManager(this); } SPNamedView::~SPNamedView() { @@ -193,366 +191,352 @@ static void sp_namedview_generate_old_grid(SPNamedView * /*nv*/, SPDocument *doc } void SPNamedView::build(SPDocument *document, Inkscape::XML::Node *repr) { - SPNamedView* object = this; - - SPNamedView *nv = (SPNamedView *) object; - SPObjectGroup *og = (SPObjectGroup *) object; - SPObjectGroup::build(document, repr); - object->readAttr( "inkscape:document-units" ); - object->readAttr( "units" ); - object->readAttr( "viewonly" ); - object->readAttr( "showguides" ); - object->readAttr( "showgrid" ); - object->readAttr( "gridtolerance" ); - object->readAttr( "guidetolerance" ); - object->readAttr( "objecttolerance" ); - object->readAttr( "guidecolor" ); - object->readAttr( "guideopacity" ); - object->readAttr( "guidehicolor" ); - object->readAttr( "guidehiopacity" ); - object->readAttr( "showborder" ); - object->readAttr( "inkscape:showpageshadow" ); - object->readAttr( "borderlayer" ); - object->readAttr( "bordercolor" ); - object->readAttr( "borderopacity" ); - object->readAttr( "pagecolor" ); - object->readAttr( "inkscape:pageopacity" ); - object->readAttr( "inkscape:pageshadow" ); - object->readAttr( "inkscape:zoom" ); - object->readAttr( "inkscape:cx" ); - object->readAttr( "inkscape:cy" ); - object->readAttr( "inkscape:window-width" ); - object->readAttr( "inkscape:window-height" ); - object->readAttr( "inkscape:window-x" ); - object->readAttr( "inkscape:window-y" ); - object->readAttr( "inkscape:window-maximized" ); - object->readAttr( "inkscape:snap-global" ); - object->readAttr( "inkscape:snap-bbox" ); - object->readAttr( "inkscape:snap-nodes" ); - object->readAttr( "inkscape:snap-others" ); - object->readAttr( "inkscape:snap-from-guide" ); - object->readAttr( "inkscape:snap-center" ); - object->readAttr( "inkscape:snap-smooth-nodes" ); - object->readAttr( "inkscape:snap-midpoints" ); - object->readAttr( "inkscape:snap-object-midpoints" ); - object->readAttr( "inkscape:snap-text-baseline" ); - object->readAttr( "inkscape:snap-bbox-edge-midpoints" ); - object->readAttr( "inkscape:snap-bbox-midpoints" ); - object->readAttr( "inkscape:snap-to-guides" ); - object->readAttr( "inkscape:snap-grids" ); - object->readAttr( "inkscape:snap-intersection-paths" ); - object->readAttr( "inkscape:object-paths" ); - object->readAttr( "inkscape:snap-perpendicular" ); - object->readAttr( "inkscape:snap-tangential" ); - object->readAttr( "inkscape:snap-path-clip" ); - object->readAttr( "inkscape:snap-path-mask" ); - object->readAttr( "inkscape:object-nodes" ); - object->readAttr( "inkscape:bbox-paths" ); - object->readAttr( "inkscape:bbox-nodes" ); - object->readAttr( "inkscape:snap-page" ); - object->readAttr( "inkscape:current-layer" ); - object->readAttr( "inkscape:connector-spacing" ); + this->readAttr( "inkscape:document-units" ); + this->readAttr( "units" ); + this->readAttr( "viewonly" ); + this->readAttr( "showguides" ); + this->readAttr( "showgrid" ); + this->readAttr( "gridtolerance" ); + this->readAttr( "guidetolerance" ); + this->readAttr( "objecttolerance" ); + this->readAttr( "guidecolor" ); + this->readAttr( "guideopacity" ); + this->readAttr( "guidehicolor" ); + this->readAttr( "guidehiopacity" ); + this->readAttr( "showborder" ); + this->readAttr( "inkscape:showpageshadow" ); + this->readAttr( "borderlayer" ); + this->readAttr( "bordercolor" ); + this->readAttr( "borderopacity" ); + this->readAttr( "pagecolor" ); + this->readAttr( "inkscape:pageopacity" ); + this->readAttr( "inkscape:pageshadow" ); + this->readAttr( "inkscape:zoom" ); + this->readAttr( "inkscape:cx" ); + this->readAttr( "inkscape:cy" ); + this->readAttr( "inkscape:window-width" ); + this->readAttr( "inkscape:window-height" ); + this->readAttr( "inkscape:window-x" ); + this->readAttr( "inkscape:window-y" ); + this->readAttr( "inkscape:window-maximized" ); + this->readAttr( "inkscape:snap-global" ); + this->readAttr( "inkscape:snap-bbox" ); + this->readAttr( "inkscape:snap-nodes" ); + this->readAttr( "inkscape:snap-others" ); + this->readAttr( "inkscape:snap-from-guide" ); + this->readAttr( "inkscape:snap-center" ); + this->readAttr( "inkscape:snap-smooth-nodes" ); + this->readAttr( "inkscape:snap-midpoints" ); + this->readAttr( "inkscape:snap-object-midpoints" ); + this->readAttr( "inkscape:snap-text-baseline" ); + this->readAttr( "inkscape:snap-bbox-edge-midpoints" ); + this->readAttr( "inkscape:snap-bbox-midpoints" ); + this->readAttr( "inkscape:snap-to-guides" ); + this->readAttr( "inkscape:snap-grids" ); + this->readAttr( "inkscape:snap-intersection-paths" ); + this->readAttr( "inkscape:object-paths" ); + this->readAttr( "inkscape:snap-perpendicular" ); + this->readAttr( "inkscape:snap-tangential" ); + this->readAttr( "inkscape:snap-path-clip" ); + this->readAttr( "inkscape:snap-path-mask" ); + this->readAttr( "inkscape:object-nodes" ); + this->readAttr( "inkscape:bbox-paths" ); + this->readAttr( "inkscape:bbox-nodes" ); + this->readAttr( "inkscape:snap-page" ); + this->readAttr( "inkscape:current-layer" ); + this->readAttr( "inkscape:connector-spacing" ); /* Construct guideline list */ - for (SPObject *o = og->firstChild() ; o; o = o->getNext() ) { + for (SPObject *o = this->firstChild() ; o; o = o->getNext() ) { if (SP_IS_GUIDE(o)) { SPGuide * g = SP_GUIDE(o); - nv->guides = g_slist_prepend(nv->guides, g); + this->guides = g_slist_prepend(this->guides, g); //g_object_set(G_OBJECT(g), "color", nv->guidecolor, "hicolor", nv->guidehicolor, NULL); - g->setColor(nv->guidecolor); - g->setHiColor(nv->guidehicolor); + g->setColor(this->guidecolor); + g->setHiColor(this->guidehicolor); } } // backwards compatibility with grid settings (pre 0.46) - sp_namedview_generate_old_grid(nv, document, repr); + sp_namedview_generate_old_grid(this, document, repr); } void SPNamedView::release() { - SPNamedView* object = this; - SPNamedView *namedview = (SPNamedView *) object; - - if (namedview->guides) { - g_slist_free(namedview->guides); - namedview->guides = NULL; + if (this->guides) { + g_slist_free(this->guides); + this->guides = NULL; } // delete grids: - while ( namedview->grids ) { - Inkscape::CanvasGrid *gr = (Inkscape::CanvasGrid *)namedview->grids->data; // get first entry + while ( this->grids ) { + Inkscape::CanvasGrid *gr = (Inkscape::CanvasGrid *)this->grids->data; // get first entry delete gr; - namedview->grids = g_slist_remove_link(namedview->grids, namedview->grids); // deletes first entry + this->grids = g_slist_remove_link(this->grids, this->grids); // deletes first entry } SPObjectGroup::release(); - - //namedview->snap_manager.~SnapManager(); } void SPNamedView::set(unsigned int key, const gchar* value) { - SPNamedView* object = this; - - SPNamedView *nv = SP_NAMEDVIEW(object); - switch (key) { case SP_ATTR_VIEWONLY: - nv->editable = (!value); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->editable = (!value); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_SHOWGUIDES: if (!value) { // show guides if not specified, for backwards compatibility - nv->showguides = TRUE; + this->showguides = TRUE; } else { - nv->showguides = sp_str_to_bool(value); + this->showguides = sp_str_to_bool(value); } - sp_namedview_setup_guides(nv); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + sp_namedview_setup_guides(this); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_SHOWGRIDS: if (!value) { // don't show grids if not specified, for backwards compatibility - nv->grids_visible = false; + this->grids_visible = false; } else { - nv->grids_visible = sp_str_to_bool(value); + this->grids_visible = sp_str_to_bool(value); } - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_GRIDTOLERANCE: - nv->snap_manager.snapprefs.setGridTolerance(value ? g_ascii_strtod(value, NULL) : 10000); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->snap_manager.snapprefs.setGridTolerance(value ? g_ascii_strtod(value, NULL) : 10000); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_GUIDETOLERANCE: - nv->snap_manager.snapprefs.setGuideTolerance(value ? g_ascii_strtod(value, NULL) : 20); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->snap_manager.snapprefs.setGuideTolerance(value ? g_ascii_strtod(value, NULL) : 20); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_OBJECTTOLERANCE: - nv->snap_manager.snapprefs.setObjectTolerance(value ? g_ascii_strtod(value, NULL) : 20); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->snap_manager.snapprefs.setObjectTolerance(value ? g_ascii_strtod(value, NULL) : 20); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_GUIDECOLOR: - nv->guidecolor = (nv->guidecolor & 0xff) | (DEFAULTGUIDECOLOR & 0xffffff00); + this->guidecolor = (this->guidecolor & 0xff) | (DEFAULTGUIDECOLOR & 0xffffff00); if (value) { - nv->guidecolor = (nv->guidecolor & 0xff) | sp_svg_read_color(value, nv->guidecolor); + this->guidecolor = (this->guidecolor & 0xff) | sp_svg_read_color(value, this->guidecolor); } - for (GSList *l = nv->guides; l != NULL; l = l->next) { + for (GSList *l = this->guides; l != NULL; l = l->next) { //g_object_set(G_OBJECT(l->data), "color", nv->guidecolor, NULL); - SP_GUIDE(l->data)->setColor(nv->guidecolor); + SP_GUIDE(l->data)->setColor(this->guidecolor); } - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_GUIDEOPACITY: - nv->guidecolor = (nv->guidecolor & 0xffffff00) | (DEFAULTGUIDECOLOR & 0xff); - sp_nv_read_opacity(value, &nv->guidecolor); + this->guidecolor = (this->guidecolor & 0xffffff00) | (DEFAULTGUIDECOLOR & 0xff); + sp_nv_read_opacity(value, &this->guidecolor); - for (GSList *l = nv->guides; l != NULL; l = l->next) { + for (GSList *l = this->guides; l != NULL; l = l->next) { //g_object_set(G_OBJECT(l->data), "color", nv->guidecolor, NULL); - SP_GUIDE(l->data)->setColor(nv->guidecolor); + SP_GUIDE(l->data)->setColor(this->guidecolor); } - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_GUIDEHICOLOR: - nv->guidehicolor = (nv->guidehicolor & 0xff) | (DEFAULTGUIDEHICOLOR & 0xffffff00); + this->guidehicolor = (this->guidehicolor & 0xff) | (DEFAULTGUIDEHICOLOR & 0xffffff00); if (value) { - nv->guidehicolor = (nv->guidehicolor & 0xff) | sp_svg_read_color(value, nv->guidehicolor); + this->guidehicolor = (this->guidehicolor & 0xff) | sp_svg_read_color(value, this->guidehicolor); } - for (GSList *l = nv->guides; l != NULL; l = l->next) { + for (GSList *l = this->guides; l != NULL; l = l->next) { //g_object_set(G_OBJECT(l->data), "hicolor", nv->guidehicolor, NULL); - SP_GUIDE(l->data)->setHiColor(nv->guidehicolor); + SP_GUIDE(l->data)->setHiColor(this->guidehicolor); } - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_GUIDEHIOPACITY: - nv->guidehicolor = (nv->guidehicolor & 0xffffff00) | (DEFAULTGUIDEHICOLOR & 0xff); - sp_nv_read_opacity(value, &nv->guidehicolor); + this->guidehicolor = (this->guidehicolor & 0xffffff00) | (DEFAULTGUIDEHICOLOR & 0xff); + sp_nv_read_opacity(value, &this->guidehicolor); - for (GSList *l = nv->guides; l != NULL; l = l->next) { + for (GSList *l = this->guides; l != NULL; l = l->next) { //g_object_set(G_OBJECT(l->data), "hicolor", nv->guidehicolor, NULL); - SP_GUIDE(l->data)->setHiColor(nv->guidehicolor); + SP_GUIDE(l->data)->setHiColor(this->guidehicolor); } - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_SHOWBORDER: - nv->showborder = (value) ? sp_str_to_bool (value) : TRUE; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->showborder = (value) ? sp_str_to_bool (value) : TRUE; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_BORDERLAYER: - nv->borderlayer = SP_BORDER_LAYER_BOTTOM; - if (value && !strcasecmp(value, "true")) nv->borderlayer = SP_BORDER_LAYER_TOP; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->borderlayer = SP_BORDER_LAYER_BOTTOM; + if (value && !strcasecmp(value, "true")) this->borderlayer = SP_BORDER_LAYER_TOP; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_BORDERCOLOR: - nv->bordercolor = (nv->bordercolor & 0xff) | (DEFAULTBORDERCOLOR & 0xffffff00); + this->bordercolor = (this->bordercolor & 0xff) | (DEFAULTBORDERCOLOR & 0xffffff00); if (value) { - nv->bordercolor = (nv->bordercolor & 0xff) | sp_svg_read_color (value, nv->bordercolor); + this->bordercolor = (this->bordercolor & 0xff) | sp_svg_read_color (value, this->bordercolor); } - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_BORDEROPACITY: - nv->bordercolor = (nv->bordercolor & 0xffffff00) | (DEFAULTBORDERCOLOR & 0xff); - sp_nv_read_opacity(value, &nv->bordercolor); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->bordercolor = (this->bordercolor & 0xffffff00) | (DEFAULTBORDERCOLOR & 0xff); + sp_nv_read_opacity(value, &this->bordercolor); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_PAGECOLOR: - nv->pagecolor = (nv->pagecolor & 0xff) | (DEFAULTPAGECOLOR & 0xffffff00); + this->pagecolor = (this->pagecolor & 0xff) | (DEFAULTPAGECOLOR & 0xffffff00); if (value) { - nv->pagecolor = (nv->pagecolor & 0xff) | sp_svg_read_color(value, nv->pagecolor); + this->pagecolor = (this->pagecolor & 0xff) | sp_svg_read_color(value, this->pagecolor); } - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_PAGEOPACITY: - nv->pagecolor = (nv->pagecolor & 0xffffff00) | (DEFAULTPAGECOLOR & 0xff); - sp_nv_read_opacity(value, &nv->pagecolor); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->pagecolor = (this->pagecolor & 0xffffff00) | (DEFAULTPAGECOLOR & 0xff); + sp_nv_read_opacity(value, &this->pagecolor); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_PAGESHADOW: - nv->pageshadow = value? atoi(value) : 2; // 2 is the default - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->pageshadow = value? atoi(value) : 2; // 2 is the default + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_SHOWPAGESHADOW: - nv->showpageshadow = (value) ? sp_str_to_bool(value) : TRUE; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->showpageshadow = (value) ? sp_str_to_bool(value) : TRUE; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_ZOOM: - nv->zoom = value ? g_ascii_strtod(value, NULL) : 0; // zero means not set - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->zoom = value ? g_ascii_strtod(value, NULL) : 0; // zero means not set + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_CX: - nv->cx = value ? g_ascii_strtod(value, NULL) : HUGE_VAL; // HUGE_VAL means not set - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->cx = value ? g_ascii_strtod(value, NULL) : HUGE_VAL; // HUGE_VAL means not set + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_CY: - nv->cy = value ? g_ascii_strtod(value, NULL) : HUGE_VAL; // HUGE_VAL means not set - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->cy = value ? g_ascii_strtod(value, NULL) : HUGE_VAL; // HUGE_VAL means not set + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_WINDOW_WIDTH: - nv->window_width = value? atoi(value) : -1; // -1 means not set - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->window_width = value? atoi(value) : -1; // -1 means not set + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_WINDOW_HEIGHT: - nv->window_height = value ? atoi(value) : -1; // -1 means not set - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->window_height = value ? atoi(value) : -1; // -1 means not set + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_WINDOW_X: - nv->window_x = value ? atoi(value) : 0; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->window_x = value ? atoi(value) : 0; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_WINDOW_Y: - nv->window_y = value ? atoi(value) : 0; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->window_y = value ? atoi(value) : 0; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_WINDOW_MAXIMIZED: - nv->window_maximized = value ? atoi(value) : 0; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->window_maximized = value ? atoi(value) : 0; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_SNAP_GLOBAL: - nv->snap_manager.snapprefs.setSnapEnabledGlobally(value ? sp_str_to_bool(value) : TRUE); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->snap_manager.snapprefs.setSnapEnabledGlobally(value ? sp_str_to_bool(value) : TRUE); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_SNAP_BBOX: - nv->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_BBOX_CATEGORY, value ? sp_str_to_bool(value) : FALSE); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_BBOX_CATEGORY, value ? sp_str_to_bool(value) : FALSE); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_SNAP_NODE: - nv->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_NODE_CATEGORY, value ? sp_str_to_bool(value) : TRUE); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_NODE_CATEGORY, value ? sp_str_to_bool(value) : TRUE); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_SNAP_OTHERS: - nv->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_OTHERS_CATEGORY, value ? sp_str_to_bool(value) : TRUE); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_OTHERS_CATEGORY, value ? sp_str_to_bool(value) : TRUE); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_SNAP_ROTATION_CENTER: - nv->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_ROTATION_CENTER, value ? sp_str_to_bool(value) : FALSE); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_ROTATION_CENTER, value ? sp_str_to_bool(value) : FALSE); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_SNAP_GRID: - nv->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_GRID, value ? sp_str_to_bool(value) : TRUE); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_GRID, value ? sp_str_to_bool(value) : TRUE); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_SNAP_GUIDE: - nv->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_GUIDE, value ? sp_str_to_bool(value) : TRUE); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_GUIDE, value ? sp_str_to_bool(value) : TRUE); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_SNAP_NODE_SMOOTH: - nv->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_NODE_SMOOTH, value ? sp_str_to_bool(value) : FALSE); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_NODE_SMOOTH, value ? sp_str_to_bool(value) : FALSE); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_SNAP_LINE_MIDPOINT: - nv->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_LINE_MIDPOINT, value ? sp_str_to_bool(value) : FALSE); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_LINE_MIDPOINT, value ? sp_str_to_bool(value) : FALSE); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_SNAP_OBJECT_MIDPOINT: - nv->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_OBJECT_MIDPOINT, value ? sp_str_to_bool(value) : FALSE); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_OBJECT_MIDPOINT, value ? sp_str_to_bool(value) : FALSE); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_SNAP_TEXT_BASELINE: - nv->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_TEXT_BASELINE, value ? sp_str_to_bool(value) : FALSE); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_TEXT_BASELINE, value ? sp_str_to_bool(value) : FALSE); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_SNAP_BBOX_EDGE_MIDPOINT: - nv->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_BBOX_EDGE_MIDPOINT, value ? sp_str_to_bool(value) : FALSE); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_BBOX_EDGE_MIDPOINT, value ? sp_str_to_bool(value) : FALSE); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_SNAP_BBOX_MIDPOINT: - nv->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_BBOX_MIDPOINT, value ? sp_str_to_bool(value) : FALSE); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_BBOX_MIDPOINT, value ? sp_str_to_bool(value) : FALSE); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_SNAP_PATH_INTERSECTION: - nv->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_PATH_INTERSECTION, value ? sp_str_to_bool(value) : FALSE); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_PATH_INTERSECTION, value ? sp_str_to_bool(value) : FALSE); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_SNAP_PATH: - nv->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_PATH, value ? sp_str_to_bool(value) : FALSE); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_PATH, value ? sp_str_to_bool(value) : FALSE); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_SNAP_PERP: - nv->snap_manager.snapprefs.setSnapPerp(value ? sp_str_to_bool(value) : FALSE); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->snap_manager.snapprefs.setSnapPerp(value ? sp_str_to_bool(value) : FALSE); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_SNAP_TANG: - nv->snap_manager.snapprefs.setSnapTang(value ? sp_str_to_bool(value) : FALSE); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->snap_manager.snapprefs.setSnapTang(value ? sp_str_to_bool(value) : FALSE); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_SNAP_PATH_CLIP: - nv->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_PATH_CLIP, value ? sp_str_to_bool(value) : FALSE); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_PATH_CLIP, value ? sp_str_to_bool(value) : FALSE); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_SNAP_PATH_MASK: - nv->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_PATH_MASK, value ? sp_str_to_bool(value) : FALSE); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_PATH_MASK, value ? sp_str_to_bool(value) : FALSE); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_SNAP_NODE_CUSP: - nv->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_NODE_CUSP, value ? sp_str_to_bool(value) : FALSE); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_NODE_CUSP, value ? sp_str_to_bool(value) : FALSE); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_SNAP_BBOX_EDGE: - nv->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_BBOX_EDGE, value ? sp_str_to_bool(value) : FALSE); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_BBOX_EDGE, value ? sp_str_to_bool(value) : FALSE); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_SNAP_BBOX_CORNER: - nv->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_BBOX_CORNER, value ? sp_str_to_bool(value) : FALSE); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_BBOX_CORNER, value ? sp_str_to_bool(value) : FALSE); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_SNAP_PAGE_BORDER: - nv->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_PAGE_BORDER, value ? sp_str_to_bool(value) : FALSE); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->snap_manager.snapprefs.setTargetSnappable(Inkscape::SNAPTARGET_PAGE_BORDER, value ? sp_str_to_bool(value) : FALSE); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_CURRENT_LAYER: - nv->default_layer_id = value ? g_quark_from_string(value) : 0; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->default_layer_id = value ? g_quark_from_string(value) : 0; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_CONNECTOR_SPACING: - nv->connector_spacing = value ? g_ascii_strtod(value, NULL) : + this->connector_spacing = value ? g_ascii_strtod(value, NULL) : defaultConnSpacing; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; case SP_ATTR_INKSCAPE_DOCUMENT_UNITS: { /* The default unit if the document doesn't override this: e.g. for files saved as @@ -591,8 +575,8 @@ void SPNamedView::set(unsigned int key, const gchar* value) { /* fixme: Don't use g_log (see above). */ } } - nv->doc_units = new_unit; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->doc_units = new_unit; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; } case SP_ATTR_UNITS: { @@ -615,8 +599,8 @@ void SPNamedView::set(unsigned int key, const gchar* value) { /* fixme: Don't use g_log (see above). */ } } - nv->units = new_unit; - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->units = new_unit; + this->requestModified(SP_OBJECT_MODIFIED_FLAG); break; } default: @@ -667,34 +651,33 @@ sp_namedview_add_grid(SPNamedView *nv, Inkscape::XML::Node *repr, SPDesktop *des } void SPNamedView::child_added(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { - SPNamedView* object = this; - - SPNamedView *nv = (SPNamedView *) object; - SPObjectGroup::child_added(child, ref); if (!strcmp(child->name(), "inkscape:grid")) { - sp_namedview_add_grid(nv, child, NULL); + sp_namedview_add_grid(this, child, NULL); } else { - SPObject *no = object->document->getObjectByRepr(child); - if ( !SP_IS_OBJECT(no) ) + SPObject *no = this->document->getObjectByRepr(child); + if ( !SP_IS_OBJECT(no) ) { return; + } if (SP_IS_GUIDE(no)) { SPGuide *g = (SPGuide *) no; - nv->guides = g_slist_prepend(nv->guides, g); + this->guides = g_slist_prepend(this->guides, g); - //g_object_set(G_OBJECT(g), "color", nv->guidecolor, "hicolor", nv->guidehicolor, NULL); - g->setColor(nv->guidecolor); - g->setHiColor(nv->guidehicolor); + //g_object_set(G_OBJECT(g), "color", this->guidecolor, "hicolor", this->guidehicolor, NULL); + g->setColor(this->guidecolor); + g->setHiColor(this->guidehicolor); - if (nv->editable) { - for (GSList *l = nv->views; l != NULL; l = l->next) { + if (this->editable) { + for (GSList *l = this->views; l != NULL; l = l->next) { g->SPGuide::showSPGuide(static_cast(l->data)->guides, (GCallback) sp_dt_guide_event); - if (static_cast(l->data)->guides_active) - g->sensitize(sp_desktop_canvas(static_cast (l->data)), - TRUE); - sp_namedview_show_single_guide(SP_GUIDE(g), nv->showguides); + + if (static_cast(l->data)->guides_active) { + g->sensitize(sp_desktop_canvas(static_cast (l->data)), TRUE); + } + + sp_namedview_show_single_guide(SP_GUIDE(g), this->showguides); } } } @@ -702,27 +685,27 @@ void SPNamedView::child_added(Inkscape::XML::Node *child, Inkscape::XML::Node *r } void SPNamedView::remove_child(Inkscape::XML::Node *child) { - SPNamedView* object = this; - SPNamedView *nv = (SPNamedView *) object; - if (!strcmp(child->name(), "inkscape:grid")) { - for ( GSList *iter = nv->grids ; iter ; iter = iter->next ) { + for ( GSList *iter = this->grids ; iter ; iter = iter->next ) { Inkscape::CanvasGrid *gr = (Inkscape::CanvasGrid *)iter->data; + if ( gr->repr == child ) { delete gr; - nv->grids = g_slist_remove_link(nv->grids, iter); + this->grids = g_slist_remove_link(this->grids, iter); break; } } } else { - GSList **ref = &nv->guides; - for ( GSList *iter = nv->guides ; iter ; iter = iter->next ) { + GSList **ref = &this->guides; + for ( GSList *iter = this->guides ; iter ; iter = iter->next ) { + if ( reinterpret_cast(iter->data)->getRepr() == child ) { *ref = iter->next; iter->next = NULL; g_slist_free_1(iter); break; } + ref = &iter->next; } } @@ -731,15 +714,13 @@ void SPNamedView::remove_child(Inkscape::XML::Node *child) { } Inkscape::XML::Node* SPNamedView::write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { - SPNamedView* object = this; - if ( ( flags & SP_OBJECT_WRITE_EXT ) && - repr != object->getRepr() ) + repr != this->getRepr() ) { if (repr) { - repr->mergeFrom(object->getRepr(), "id"); + repr->mergeFrom(this->getRepr(), "id"); } else { - repr = object->getRepr()->duplicate(xml_doc); + repr = this->getRepr()->duplicate(xml_doc); } } diff --git a/src/sp-namedview.h b/src/sp-namedview.h index 50ff57278..bf3aa33d3 100644 --- a/src/sp-namedview.h +++ b/src/sp-namedview.h @@ -96,7 +96,7 @@ private: double getMarginLength(gchar const * const key,SPUnit const * const margin_units,SPUnit const * const return_units,double const width,double const height,bool const use_width); friend class SPDocument; -public: +protected: virtual void build(SPDocument *document, Inkscape::XML::Node *repr); virtual void release(); virtual void set(unsigned int key, gchar const* value); diff --git a/src/sp-object-group.cpp b/src/sp-object-group.cpp index 19b813236..c3967461e 100644 --- a/src/sp-object-group.cpp +++ b/src/sp-object-group.cpp @@ -23,53 +23,48 @@ SPObjectGroup::~SPObjectGroup() { } void SPObjectGroup::child_added(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { - SPObjectGroup* object = this; - SPObject::child_added(child, ref); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } void SPObjectGroup::remove_child(Inkscape::XML::Node *child) { - SPObjectGroup* object = this; - SPObject::remove_child(child); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } void SPObjectGroup::order_changed(Inkscape::XML::Node *child, Inkscape::XML::Node *old_ref, Inkscape::XML::Node *new_ref) { - SPObjectGroup* object = this; - SPObject::order_changed(child, old_ref, new_ref); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); + this->requestModified(SP_OBJECT_MODIFIED_FLAG); } Inkscape::XML::Node *SPObjectGroup::write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { - SPObjectGroup* object = this; - if (flags & SP_OBJECT_WRITE_BUILD) { if (!repr) { repr = xml_doc->createElement("svg:g"); } + GSList *l = 0; - for ( SPObject *child = object->firstChild() ; child ; child = child->getNext() ) { + for ( SPObject *child = this->firstChild() ; child ; child = child->getNext() ) { Inkscape::XML::Node *crepr = child->updateRepr(xml_doc, NULL, flags); + if (crepr) { l = g_slist_prepend(l, crepr); } } + while (l) { repr->addChild(static_cast(l->data), NULL); Inkscape::GC::release(static_cast(l->data)); l = g_slist_remove(l, l->data); } } else { - for ( SPObject *child = object->firstChild() ; child ; child = child->getNext() ) { + for ( SPObject *child = this->firstChild() ; child ; child = child->getNext() ) { child->updateRepr(flags); } } diff --git a/src/sp-object-group.h b/src/sp-object-group.h index 06249e4ae..a34ef0721 100644 --- a/src/sp-object-group.h +++ b/src/sp-object-group.h @@ -24,6 +24,7 @@ public: SPObjectGroup(); virtual ~SPObjectGroup(); +protected: virtual void child_added(Inkscape::XML::Node* child, Inkscape::XML::Node* ref); virtual void remove_child(Inkscape::XML::Node* child); diff --git a/src/sp-paint-server.cpp b/src/sp-paint-server.cpp index 54b39a981..1f32086f7 100644 --- a/src/sp-paint-server.cpp +++ b/src/sp-paint-server.cpp @@ -38,43 +38,15 @@ SPPaintServer::SPPaintServer() : SPObject() { SPPaintServer::~SPPaintServer() { } -cairo_pattern_t *sp_paint_server_invoke_create_pattern(SPPaintServer *ps, - cairo_t *ct, - Geom::OptRect const &bbox, - double opacity) -{ - g_return_val_if_fail(ps != NULL, NULL); - g_return_val_if_fail(SP_IS_PAINT_SERVER(ps), NULL); - - cairo_pattern_t *cp = NULL; - - cp = ps->pattern_new(ct, bbox, opacity); - - return cp; -} - -// CPPIFY: make pure virtual -cairo_pattern_t* SPPaintServer::pattern_new(cairo_t *ct, Geom::OptRect const &bbox, double opacity) { - //throw; - - // dummy_pattern - cairo_pattern_t *cp = cairo_pattern_create_rgb(1.0, 0.0, 1.0); - return cp; -} - -cairo_pattern_t *sp_paint_server_create_pattern(SPPaintServer *ps, - cairo_t *ct, - Geom::OptRect const &bbox, - double opacity) -{ - return sp_paint_server_invoke_create_pattern(ps, ct, bbox, opacity); -} - bool SPPaintServer::isSwatch() const { return swatch; } + +// TODO: So a solid brush is a gradient with a swatch and zero stops? +// Should we derive a new class for that? Or at least make this method +// virtual and move it out of the way? bool SPPaintServer::isSolid() const { bool solid = false; diff --git a/src/sp-paint-server.h b/src/sp-paint-server.h index 79d8929c2..9bde0883f 100644 --- a/src/sp-paint-server.h +++ b/src/sp-paint-server.h @@ -28,19 +28,14 @@ public: SPPaintServer(); virtual ~SPPaintServer(); -protected: - bool swatch; -public: - bool isSwatch() const; bool isSolid() const; - virtual cairo_pattern_t* pattern_new(cairo_t *ct, Geom::OptRect const &bbox, double opacity); -}; - - -cairo_pattern_t *sp_paint_server_create_pattern(SPPaintServer *ps, cairo_t *ct, Geom::OptRect const &bbox, double opacity); + virtual cairo_pattern_t* pattern_new(cairo_t *ct, Geom::OptRect const &bbox, double opacity) = 0; +protected: + bool swatch; +}; #endif // SEEN_SP_PAINT_SERVER_H /* diff --git a/src/sp-pattern.cpp b/src/sp-pattern.cpp index 1aec904ae..408a57195 100644 --- a/src/sp-pattern.cpp +++ b/src/sp-pattern.cpp @@ -74,8 +74,6 @@ SPPattern::SPPattern() : SPPaintServer() { this->height.unset(); this->viewBox_set = FALSE; - - //new (&this->modified_connection) sigc::connection(); } SPPattern::~SPPattern() { @@ -111,8 +109,6 @@ void SPPattern::release() { this->ref = NULL; } - //this->modified_connection.~connection(); - SPPaintServer::release(); } diff --git a/src/sp-pattern.h b/src/sp-pattern.h index 78bd1549a..3e33528f8 100644 --- a/src/sp-pattern.h +++ b/src/sp-pattern.h @@ -58,12 +58,14 @@ public: sigc::connection modified_connection; + virtual cairo_pattern_t* pattern_new(cairo_t *ct, Geom::OptRect const &bbox, double opacity); + +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); virtual void set(unsigned int key, const gchar* value); virtual void update(SPCtx* ctx, unsigned int flags); virtual void modified(unsigned int flags); - virtual cairo_pattern_t* pattern_new(cairo_t *ct, Geom::OptRect const &bbox, double opacity); }; diff --git a/src/sp-radial-gradient.cpp b/src/sp-radial-gradient.cpp index 14f95b060..c8bf5db81 100644 --- a/src/sp-radial-gradient.cpp +++ b/src/sp-radial-gradient.cpp @@ -136,27 +136,6 @@ Inkscape::XML::Node* SPRadialGradient::write(Inkscape::XML::Document *xml_doc, I return repr; } -/** - * Directly set properties of radial gradient and request modified. - */ -void -sp_radialgradient_set_position(SPRadialGradient *rg, - gdouble cx, gdouble cy, gdouble fx, gdouble fy, gdouble r) -{ - g_return_if_fail(rg != NULL); - g_return_if_fail(SP_IS_RADIALGRADIENT(rg)); - - /* fixme: units? (Lauris) */ - rg->cx.set(SVGLength::NONE, cx, cx); - rg->cy.set(SVGLength::NONE, cy, cy); - rg->fx.set(SVGLength::NONE, fx, fx); - rg->fy.set(SVGLength::NONE, fy, fy); - rg->r.set(SVGLength::NONE, r, r); - - rg->requestModified(SP_OBJECT_MODIFIED_FLAG); -} - - cairo_pattern_t* SPRadialGradient::pattern_new(cairo_t *ct, Geom::OptRect const &bbox, double opacity) { this->ensureVector(); diff --git a/src/sp-radial-gradient.h b/src/sp-radial-gradient.h index f3daac0a1..7514af2dc 100644 --- a/src/sp-radial-gradient.h +++ b/src/sp-radial-gradient.h @@ -24,10 +24,12 @@ public: SVGLength fx; SVGLength fy; + virtual cairo_pattern_t* pattern_new(cairo_t *ct, Geom::OptRect const &bbox, double opacity); + +protected: virtual void build(SPDocument *document, Inkscape::XML::Node *repr); virtual void set(unsigned key, gchar const *value); virtual Inkscape::XML::Node* write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); - virtual cairo_pattern_t* pattern_new(cairo_t *ct, Geom::OptRect const &bbox, double opacity); }; #endif /* !SP_RADIAL_GRADIENT_H */ diff --git a/src/sp-script.cpp b/src/sp-script.cpp index 99b57d8e9..158796e51 100644 --- a/src/sp-script.cpp +++ b/src/sp-script.cpp @@ -34,14 +34,12 @@ SPScript::~SPScript() { } void SPScript::build(SPDocument* doc, Inkscape::XML::Node* repr) { - SPScript* object = this; - SPObject::build(doc, repr); //Read values of key attributes from XML nodes into object. - object->readAttr( "xlink:href" ); + this->readAttr( "xlink:href" ); - doc->addResource("script", object); + doc->addResource("script", this); } /** @@ -51,11 +49,9 @@ void SPScript::build(SPDocument* doc, Inkscape::XML::Node* repr) { */ void SPScript::release() { - SPScript* object = this; - - if (object->document) { + if (this->document) { // Unregister ourselves - object->document->removeResource("script", object); + this->document->removeResource("script", this); } SPObject::release(); @@ -70,15 +66,14 @@ void SPScript::modified(unsigned int flags) { void SPScript::set(unsigned int key, const gchar* value) { - SPScript* object = this; - - SPScript *scr = SP_SCRIPT(object); - switch (key) { case SP_ATTR_XLINK_HREF: - if (scr->xlinkhref) g_free(scr->xlinkhref); - scr->xlinkhref = g_strdup(value); - object->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG); + if (this->xlinkhref) { + g_free(this->xlinkhref); + } + + this->xlinkhref = g_strdup(value); + this->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG); break; default: SPObject::set(key, value); diff --git a/src/sp-script.h b/src/sp-script.h index 7355cd124..62d6eba7a 100644 --- a/src/sp-script.h +++ b/src/sp-script.h @@ -25,6 +25,7 @@ public: gchar *xlinkhref; +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); virtual void set(unsigned int key, const gchar* value); diff --git a/src/sp-stop.cpp b/src/sp-stop.cpp index a8d81818b..d644a9b4b 100644 --- a/src/sp-stop.cpp +++ b/src/sp-stop.cpp @@ -47,15 +47,13 @@ SPStop::~SPStop() { } void SPStop::build(SPDocument* doc, Inkscape::XML::Node* repr) { - SPStop* object = this; - SPObject::build(doc, repr); - object->readAttr( "offset" ); - object->readAttr( "stop-color" ); - object->readAttr( "stop-opacity" ); - object->readAttr( "style" ); - object->readAttr( "path" ); // For mesh + this->readAttr( "offset" ); + this->readAttr( "stop-color" ); + this->readAttr( "stop-opacity" ); + this->readAttr( "style" ); + this->readAttr( "path" ); // For mesh } /** @@ -63,10 +61,6 @@ void SPStop::build(SPDocument* doc, Inkscape::XML::Node* repr) { */ void SPStop::set(unsigned int key, const gchar* value) { - SPStop* object = this; - - SPStop *stop = SP_STOP(object); - switch (key) { case SP_ATTR_STYLE: { /** \todo @@ -80,51 +74,51 @@ void SPStop::set(unsigned int key, const gchar* value) { * stop-color and stop-opacity properties. */ { - gchar const *p = object->getStyleProperty( "stop-color", "black"); + gchar const *p = this->getStyleProperty( "stop-color", "black"); if (streq(p, "currentColor")) { - stop->currentColor = true; + this->currentColor = true; } else { - stop->specified_color = SPStop::readStopColor( p ); + this->specified_color = SPStop::readStopColor( p ); } } { - gchar const *p = object->getStyleProperty( "stop-opacity", "1"); - gdouble opacity = sp_svg_read_percentage(p, stop->opacity); - stop->opacity = opacity; + gchar const *p = this->getStyleProperty( "stop-opacity", "1"); + gdouble opacity = sp_svg_read_percentage(p, this->opacity); + this->opacity = opacity; } - object->requestModified(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG); + this->requestModified(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG); break; } case SP_PROP_STOP_COLOR: { { - gchar const *p = object->getStyleProperty( "stop-color", "black"); + gchar const *p = this->getStyleProperty( "stop-color", "black"); if (streq(p, "currentColor")) { - stop->currentColor = true; + this->currentColor = true; } else { - stop->currentColor = false; - stop->specified_color = SPStop::readStopColor( p ); + this->currentColor = false; + this->specified_color = SPStop::readStopColor( p ); } } - object->requestModified(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG); + this->requestModified(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG); break; } case SP_PROP_STOP_OPACITY: { { - gchar const *p = object->getStyleProperty( "stop-opacity", "1"); - gdouble opacity = sp_svg_read_percentage(p, stop->opacity); - stop->opacity = opacity; + gchar const *p = this->getStyleProperty( "stop-opacity", "1"); + gdouble opacity = sp_svg_read_percentage(p, this->opacity); + this->opacity = opacity; } - object->requestModified(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG); + this->requestModified(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG); break; } case SP_ATTR_OFFSET: { - stop->offset = sp_svg_read_percentage(value, 0.0); - object->requestModified(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG); + this->offset = sp_svg_read_percentage(value, 0.0); + this->requestModified(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG); break; } case SP_PROP_STOP_PATH: { if (value) { - stop->path_string = new Glib::ustring( value ); + this->path_string = new Glib::ustring( value ); //Geom::PathVector pv = sp_svg_read_pathv(value); //SPCurve *curve = new SPCurve(pv); //if( curve ) { @@ -146,16 +140,12 @@ void SPStop::set(unsigned int key, const gchar* value) { */ Inkscape::XML::Node* SPStop::write(Inkscape::XML::Document* xml_doc, Inkscape::XML::Node* repr, guint flags) { - SPStop* object = this; - - SPStop *stop = SP_STOP(object); - if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { repr = xml_doc->createElement("svg:stop"); } - Glib::ustring colorStr = stop->specified_color.toString(); - gfloat opacity = stop->opacity; + Glib::ustring colorStr = this->specified_color.toString(); + gfloat opacity = this->opacity; SPObject::write(xml_doc, repr, flags); @@ -165,7 +155,7 @@ Inkscape::XML::Node* SPStop::write(Inkscape::XML::Document* xml_doc, Inkscape::X Inkscape::CSSOStringStream os; os << "stop-color:"; - if (stop->currentColor) { + if (this->currentColor) { os << "currentColor"; } else { os << colorStr; @@ -174,7 +164,7 @@ Inkscape::XML::Node* SPStop::write(Inkscape::XML::Document* xml_doc, Inkscape::X repr->setAttribute("style", os.str().c_str()); repr->setAttribute("stop-color", NULL); repr->setAttribute("stop-opacity", NULL); - sp_repr_set_css_double(repr, "offset", stop->offset); + sp_repr_set_css_double(repr, "offset", this->offset); /* strictly speaking, offset an SVG rather than a CSS one, but exponents make no sense * for offset proportions. */ @@ -186,8 +176,7 @@ Inkscape::XML::Node* SPStop::write(Inkscape::XML::Document* xml_doc, Inkscape::X */ // A stop might have some non-stop siblings -SPStop* SPStop::getNextStop() -{ +SPStop* SPStop::getNextStop() { SPStop *result = 0; for (SPObject* obj = getNext(); obj && !result; obj = obj->getNext()) { @@ -199,8 +188,7 @@ SPStop* SPStop::getNextStop() return result; } -SPStop* SPStop::getPrevStop() -{ +SPStop* SPStop::getPrevStop() { SPStop *result = 0; for (SPObject* obj = getPrev(); obj; obj = obj->getPrev()) { @@ -220,22 +208,24 @@ SPStop* SPStop::getPrevStop() return result; } -SPColor SPStop::readStopColor( Glib::ustring const &styleStr, guint32 dfl ) -{ +SPColor SPStop::readStopColor(Glib::ustring const &styleStr, guint32 dfl) { SPColor color(dfl); SPStyle* style = sp_style_new(0); SPIPaint paint; paint.read( styleStr.c_str(), *style ); + if ( paint.isColor() ) { color = paint.value.color; } + sp_style_unref(style); + return color; } -SPColor SPStop::getEffectiveColor() const -{ +SPColor SPStop::getEffectiveColor() const { SPColor ret; + if (currentColor) { char const *str = getStyleProperty("color", NULL); /* Default value: arbitrarily black. (SVG1.1 and CSS2 both say that the initial @@ -245,30 +235,33 @@ SPColor SPStop::getEffectiveColor() const } else { ret = specified_color; } + return ret; } /** * Return stop's color as 32bit value. */ -guint32 -sp_stop_get_rgba32(SPStop const *const stop) -{ +guint32 SPStop::get_rgba32() const { guint32 rgb0 = 0; + /* Default value: arbitrarily black. (SVG1.1 and CSS2 both say that the initial * value depends on user agent, and don't give any further restrictions that I can * see.) */ - if (stop->currentColor) { - char const *str = stop->getStyleProperty( "color", NULL); + if (this->currentColor) { + char const *str = this->getStyleProperty("color", NULL); + if (str) { rgb0 = sp_svg_read_color(str, rgb0); } - unsigned const alpha = static_cast(stop->opacity * 0xff + 0.5); - g_return_val_if_fail((alpha & ~0xff) == 0, - rgb0 | 0xff); + + unsigned const alpha = static_cast(this->opacity * 0xff + 0.5); + + g_return_val_if_fail((alpha & ~0xff) == 0, rgb0 | 0xff); + return rgb0 | alpha; } else { - return stop->specified_color.toRGBA32( stop->opacity ); + return this->specified_color.toRGBA32(this->opacity); } } diff --git a/src/sp-stop.h b/src/sp-stop.h index 3b09b4c7d..17b156e31 100644 --- a/src/sp-stop.h +++ b/src/sp-stop.h @@ -49,15 +49,15 @@ public: SPColor getEffectiveColor() const; + guint32 get_rgba32() const; + +protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void set(unsigned int key, const gchar* value); virtual Inkscape::XML::Node* write(Inkscape::XML::Document* doc, Inkscape::XML::Node* repr, guint flags); }; -guint32 sp_stop_get_rgba32(SPStop const *); - - #endif /* !SEEN_SP_STOP_H */ /* diff --git a/src/spray-context.cpp b/src/spray-context.cpp index 8256d6861..51fdab6ff 100644 --- a/src/spray-context.cpp +++ b/src/spray-context.cpp @@ -178,13 +178,10 @@ static bool is_transform_modes(gint mode) mode == SPRAY_OPTION); } -static void sp_spray_update_cursor(SPSprayContext *tc, bool /*with_shift*/) -{ - SPEventContext *event_context = SP_EVENT_CONTEXT(tc); - SPDesktop *desktop = event_context->desktop; - +void SPSprayContext::update_cursor(bool /*with_shift*/) { guint num = 0; gchar *sel_message = NULL; + if (!desktop->selection->isEmpty()) { num = g_slist_length(const_cast(desktop->selection->itemList())); sel_message = g_strdup_printf(ngettext("%i object selected","%i objects selected",num), num); @@ -192,22 +189,22 @@ static void sp_spray_update_cursor(SPSprayContext *tc, bool /*with_shift*/) sel_message = g_strdup_printf(_("Nothing selected")); } + switch (this->mode) { + case SPRAY_MODE_COPY: + this->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag, click or click and scroll to spray copies of the initial selection."), sel_message); + break; + case SPRAY_MODE_CLONE: + this->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag, click or click and scroll to spray clones of the initial selection."), sel_message); + break; + case SPRAY_MODE_SINGLE_PATH: + this->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag, click or click and scroll to spray in a single path of the initial selection."), sel_message); + break; + default: + break; + } - switch (tc->mode) { - case SPRAY_MODE_COPY: - tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag, click or click and scroll to spray copies of the initial selection."), sel_message); - break; - case SPRAY_MODE_CLONE: - tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag, click or click and scroll to spray clones of the initial selection."), sel_message); - break; - case SPRAY_MODE_SINGLE_PATH: - tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag, click or click and scroll to spray in a single path of the initial selection."), sel_message); - break; - default: - break; - } - event_context->sp_event_context_update_cursor(); - g_free(sel_message); + this->sp_event_context_update_cursor(); + g_free(sel_message); } void SPSprayContext::setup() { @@ -260,7 +257,7 @@ void SPSprayContext::set(const Inkscape::Preferences::Entry& val) { if (path == "mode") { this->mode = val.getInt(); - sp_spray_update_cursor(this, false); + this->update_cursor(false); } else if (path == "width") { this->width = 0.01 * CLAMP(val.getInt(10), 1, 100); } else if (path == "usepressure") { @@ -585,7 +582,7 @@ static void sp_spray_switch_mode(SPSprayContext *tc, gint mode, bool with_shift) SP_EVENT_CONTEXT(tc)->desktop->setToolboxSelectOneValue("spray_tool_mode", mode); // need to set explicitly, because the prefs may not have changed by the previous tc->mode = mode; - sp_spray_update_cursor(tc, with_shift); + tc->update_cursor(with_shift); } bool SPSprayContext::root_handler(GdkEvent* event) { @@ -824,7 +821,7 @@ bool SPSprayContext::root_handler(GdkEvent* event) { break; case GDK_KEY_Shift_L: case GDK_KEY_Shift_R: - sp_spray_update_cursor(this, true); + this->update_cursor(true); break; case GDK_KEY_Control_L: case GDK_KEY_Control_R: @@ -845,7 +842,7 @@ bool SPSprayContext::root_handler(GdkEvent* event) { switch (get_group0_keyval(&event->key)) { case GDK_KEY_Shift_L: case GDK_KEY_Shift_R: - sp_spray_update_cursor(this, false); + this->update_cursor(false); break; case GDK_KEY_Control_L: case GDK_KEY_Control_R: diff --git a/src/spray-context.h b/src/spray-context.h index a3bcb93de..796f094cd 100644 --- a/src/spray-context.h +++ b/src/spray-context.h @@ -93,6 +93,9 @@ public: virtual bool root_handler(GdkEvent* event); virtual const std::string& getPrefsPath(); + + + void update_cursor(bool /*with_shift*/); }; #endif diff --git a/src/tweak-context.cpp b/src/tweak-context.cpp index 3afdc177c..2171ecbe4 100644 --- a/src/tweak-context.cpp +++ b/src/tweak-context.cpp @@ -160,14 +160,10 @@ static bool is_color_mode (gint mode) return (mode == TWEAK_MODE_COLORPAINT || mode == TWEAK_MODE_COLORJITTER || mode == TWEAK_MODE_BLUR); } -static void -sp_tweak_update_cursor (SPTweakContext *tc, bool with_shift) -{ - SPEventContext *event_context = SP_EVENT_CONTEXT(tc); - SPDesktop *desktop = event_context->desktop; - +void SPTweakContext::update_cursor (bool with_shift) { guint num = 0; gchar *sel_message = NULL; + if (!desktop->selection->isEmpty()) { num = g_slist_length(const_cast(desktop->selection->itemList())); sel_message = g_strdup_printf(ngettext("%i object selected","%i objects selected",num), num); @@ -175,85 +171,86 @@ sp_tweak_update_cursor (SPTweakContext *tc, bool with_shift) sel_message = g_strdup_printf(_("Nothing selected")); } - switch (tc->mode) { + switch (this->mode) { case TWEAK_MODE_MOVE: - tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag to move."), sel_message); - event_context->cursor_shape = cursor_tweak_move_xpm; + this->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag to move."), sel_message); + this->cursor_shape = cursor_tweak_move_xpm; break; case TWEAK_MODE_MOVE_IN_OUT: - tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to move in; with Shift to move out."), sel_message); + this->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to move in; with Shift to move out."), sel_message); if (with_shift) { - event_context->cursor_shape = cursor_tweak_move_out_xpm; + this->cursor_shape = cursor_tweak_move_out_xpm; } else { - event_context->cursor_shape = cursor_tweak_move_in_xpm; + this->cursor_shape = cursor_tweak_move_in_xpm; } break; case TWEAK_MODE_MOVE_JITTER: - tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to move randomly."), sel_message); - event_context->cursor_shape = cursor_tweak_move_jitter_xpm; + this->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to move randomly."), sel_message); + this->cursor_shape = cursor_tweak_move_jitter_xpm; break; case TWEAK_MODE_SCALE: - tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to scale down; with Shift to scale up."), sel_message); + this->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to scale down; with Shift to scale up."), sel_message); if (with_shift) { - event_context->cursor_shape = cursor_tweak_scale_up_xpm; + this->cursor_shape = cursor_tweak_scale_up_xpm; } else { - event_context->cursor_shape = cursor_tweak_scale_down_xpm; + this->cursor_shape = cursor_tweak_scale_down_xpm; } break; case TWEAK_MODE_ROTATE: - tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to rotate clockwise; with Shift, counterclockwise."), sel_message); + this->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to rotate clockwise; with Shift, counterclockwise."), sel_message); if (with_shift) { - event_context->cursor_shape = cursor_tweak_rotate_counterclockwise_xpm; + this->cursor_shape = cursor_tweak_rotate_counterclockwise_xpm; } else { - event_context->cursor_shape = cursor_tweak_rotate_clockwise_xpm; + this->cursor_shape = cursor_tweak_rotate_clockwise_xpm; } break; case TWEAK_MODE_MORELESS: - tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to duplicate; with Shift, delete."), sel_message); + this->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to duplicate; with Shift, delete."), sel_message); if (with_shift) { - event_context->cursor_shape = cursor_tweak_less_xpm; + this->cursor_shape = cursor_tweak_less_xpm; } else { - event_context->cursor_shape = cursor_tweak_more_xpm; + this->cursor_shape = cursor_tweak_more_xpm; } break; case TWEAK_MODE_PUSH: - tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag to push paths."), sel_message); - event_context->cursor_shape = cursor_push_xpm; + this->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag to push paths."), sel_message); + this->cursor_shape = cursor_push_xpm; break; case TWEAK_MODE_SHRINK_GROW: - tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to inset paths; with Shift to outset."), sel_message); + this->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to inset paths; with Shift to outset."), sel_message); if (with_shift) { - event_context->cursor_shape = cursor_thicken_xpm; + this->cursor_shape = cursor_thicken_xpm; } else { - event_context->cursor_shape = cursor_thin_xpm; + this->cursor_shape = cursor_thin_xpm; } break; case TWEAK_MODE_ATTRACT_REPEL: - tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to attract paths; with Shift to repel."), sel_message); + this->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to attract paths; with Shift to repel."), sel_message); if (with_shift) { - event_context->cursor_shape = cursor_repel_xpm; + this->cursor_shape = cursor_repel_xpm; } else { - event_context->cursor_shape = cursor_attract_xpm; + this->cursor_shape = cursor_attract_xpm; } break; case TWEAK_MODE_ROUGHEN: - tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to roughen paths."), sel_message); - event_context->cursor_shape = cursor_roughen_xpm; + this->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to roughen paths."), sel_message); + this->cursor_shape = cursor_roughen_xpm; break; case TWEAK_MODE_COLORPAINT: - tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to paint objects with color."), sel_message); - event_context->cursor_shape = cursor_color_xpm; + this->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to paint objects with color."), sel_message); + this->cursor_shape = cursor_color_xpm; break; case TWEAK_MODE_COLORJITTER: - tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to randomize colors."), sel_message); - event_context->cursor_shape = cursor_color_xpm; + this->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to randomize colors."), sel_message); + this->cursor_shape = cursor_color_xpm; break; case TWEAK_MODE_BLUR: - tc->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to increase blur; with Shift to decrease."), sel_message); - event_context->cursor_shape = cursor_color_xpm; + this->message_context->setF(Inkscape::NORMAL_MESSAGE, _("%s. Drag or click to increase blur; with Shift to decrease."), sel_message); + this->cursor_shape = cursor_color_xpm; break; } - event_context->sp_event_context_update_cursor(); + + this->sp_event_context_update_cursor(); g_free(sel_message); } @@ -322,7 +319,7 @@ void SPTweakContext::set(const Inkscape::Preferences::Entry& val) { this->width = CLAMP(val.getDouble(0.1), -1000.0, 1000.0); } else if (path == "mode") { this->mode = val.getInt(); - sp_tweak_update_cursor(this, false); + this->update_cursor(false); } else if (path == "fidelity") { this->fidelity = CLAMP(val.getDouble(), 0.0, 1.0); } else if (path == "force") { @@ -1130,7 +1127,7 @@ sp_tweak_switch_mode (SPTweakContext *tc, gint mode, bool with_shift) SP_EVENT_CONTEXT(tc)->desktop->setToolboxSelectOneValue ("tweak_tool_mode", mode); // need to set explicitly, because the prefs may not have changed by the previous tc->mode = mode; - sp_tweak_update_cursor (tc, with_shift); + tc->update_cursor(with_shift); } static void @@ -1144,7 +1141,7 @@ sp_tweak_switch_mode_temporarily (SPTweakContext *tc, gint mode, bool with_shift prefs->setInt("/tools/tweak/mode", now_mode); // changing prefs changed tc->mode, restore back :) tc->mode = mode; - sp_tweak_update_cursor (tc, with_shift); + tc->update_cursor(with_shift); } bool SPTweakContext::root_handler(GdkEvent* event) { @@ -1463,7 +1460,7 @@ bool SPTweakContext::root_handler(GdkEvent* event) { case GDK_KEY_Shift_L: case GDK_KEY_Shift_R: - sp_tweak_update_cursor(this, true); + this->update_cursor(true); break; case GDK_KEY_Control_L: @@ -1486,7 +1483,7 @@ bool SPTweakContext::root_handler(GdkEvent* event) { switch (get_group0_keyval(&event->key)) { case GDK_KEY_Shift_L: case GDK_KEY_Shift_R: - sp_tweak_update_cursor(this, false); + this->update_cursor(false); break; case GDK_KEY_Control_L: case GDK_KEY_Control_R: diff --git a/src/tweak-context.h b/src/tweak-context.h index ac046a875..da1a50a79 100644 --- a/src/tweak-context.h +++ b/src/tweak-context.h @@ -78,6 +78,8 @@ public: virtual const std::string& getPrefsPath(); + void update_cursor(bool with_shift); + private: bool set_style(const SPCSSAttr* css); }; diff --git a/src/widgets/gradient-toolbar.cpp b/src/widgets/gradient-toolbar.cpp index ecb9df4c4..4249591f0 100644 --- a/src/widgets/gradient-toolbar.cpp +++ b/src/widgets/gradient-toolbar.cpp @@ -800,7 +800,7 @@ static gboolean update_stop_list( GtkWidget *stop_combo, SPGradient *gradient, S if (SP_IS_STOP(sl->data)){ SPStop *stop = SP_STOP(sl->data); Inkscape::XML::Node *repr = reinterpret_cast(sl->data)->getRepr(); - Inkscape::UI::Widget::ColorPreview *cpv = Gtk::manage(new Inkscape::UI::Widget::ColorPreview(sp_stop_get_rgba32(stop))); + Inkscape::UI::Widget::ColorPreview *cpv = Gtk::manage(new Inkscape::UI::Widget::ColorPreview(stop->get_rgba32())); GdkPixbuf *pb = cpv->toPixbuf(32, 16); Glib::ustring label = gr_ellipsize_text(repr->attribute("id"), 25); diff --git a/src/widgets/gradient-vector.cpp b/src/widgets/gradient-vector.cpp index 118d8a68a..e9fc426f6 100644 --- a/src/widgets/gradient-vector.cpp +++ b/src/widgets/gradient-vector.cpp @@ -369,7 +369,7 @@ static void sp_gvs_rebuild_gui_full(SPGradientVectorSelector *gvs) unsigned long sp_gradient_to_hhssll(SPGradient *gr) { SPStop *stop = gr->getFirstStop(); - unsigned long rgba = sp_stop_get_rgba32(stop); + unsigned long rgba = stop->get_rgba32(); float hsl[3]; sp_color_rgb_to_hsl_floatv (hsl, SP_RGBA32_R_F(rgba), SP_RGBA32_G_F(rgba), SP_RGBA32_B_F(rgba)); @@ -635,7 +635,7 @@ static void update_stop_list( GtkWidget *vb, SPGradient *gradient, SPStop *new_s if (SP_IS_STOP(sl->data)){ SPStop *stop = SP_STOP(sl->data); Inkscape::XML::Node *repr = reinterpret_cast(sl->data)->getRepr(); - Inkscape::UI::Widget::ColorPreview *cpv = Gtk::manage(new Inkscape::UI::Widget::ColorPreview(sp_stop_get_rgba32(stop))); + Inkscape::UI::Widget::ColorPreview *cpv = Gtk::manage(new Inkscape::UI::Widget::ColorPreview(stop->get_rgba32())); GdkPixbuf *pb = cpv->toPixbuf(64, 16); gtk_list_store_append (store, &iter); @@ -791,8 +791,8 @@ static void sp_grd_ed_add_stop(GtkWidget */*widget*/, GtkWidget *vb) newstop->offset = (stop->offset + next->offset) * 0.5 ; - guint32 const c1 = sp_stop_get_rgba32(stop); - guint32 const c2 = sp_stop_get_rgba32(next); + guint32 const c1 = stop->get_rgba32(); + guint32 const c2 = next->get_rgba32(); guint32 cnew = sp_average_color(c1, c2); Inkscape::CSSOStringStream os; @@ -1315,7 +1315,7 @@ static void sp_gradient_vector_color_changed(SPColorSelector *csel, GObject *obj if (gtk_combo_box_get_active_iter (GTK_COMBO_BOX(combo_box), &iter)) { GtkListStore *store = GTK_LIST_STORE(gtk_combo_box_get_model(GTK_COMBO_BOX(combo_box))); - Inkscape::UI::Widget::ColorPreview *cp = Gtk::manage(new Inkscape::UI::Widget::ColorPreview(sp_stop_get_rgba32(stop))); + Inkscape::UI::Widget::ColorPreview *cp = Gtk::manage(new Inkscape::UI::Widget::ColorPreview(stop->get_rgba32())); GdkPixbuf *pb = cp->toPixbuf(64, 16); gtk_list_store_set (store, &iter, 0, pb, /*1, repr->attribute("id"),*/ 2, stop, -1); diff --git a/src/widgets/stroke-style.cpp b/src/widgets/stroke-style.cpp index 0a5b3781b..fc3477471 100644 --- a/src/widgets/stroke-style.cpp +++ b/src/widgets/stroke-style.cpp @@ -762,7 +762,7 @@ StrokeStyle::getItemColorForMarker(SPItem *item, Inkscape::PaintTarget fill_or_s stop = sp_last_stop(vector); } if (stop) { - guint32 const c1 = sp_stop_get_rgba32(stop); + guint32 const c1 = stop->get_rgba32(); gchar c[64]; sp_svg_write_color(c, sizeof(c), c1); color = g_strdup(c); diff --git a/src/widgets/swatch-selector.cpp b/src/widgets/swatch-selector.cpp index ad59e0dc3..7178ad072 100644 --- a/src/widgets/swatch-selector.cpp +++ b/src/widgets/swatch-selector.cpp @@ -172,7 +172,7 @@ void SwatchSelector::setVector(SPDocument */*doc*/, SPGradient *vector) if ( vector && vector->isSolid() ) { SPStop* stop = vector->getFirstStop(); - guint32 const colorVal = sp_stop_get_rgba32(stop); + guint32 const colorVal = stop->get_rgba32(); _csel->base->setAlpha(SP_RGBA32_A_F(colorVal)); SPColor color( SP_RGBA32_R_F(colorVal), SP_RGBA32_G_F(colorVal), SP_RGBA32_B_F(colorVal) ); // set its color, from the stored array -- cgit v1.2.3 From 4cecaa65b941c6adbd70f2d6e2d6d293b8b916e7 Mon Sep 17 00:00:00 2001 From: Alex Valavanis Date: Sat, 3 Aug 2013 13:32:53 +0100 Subject: Fix attributes test list Fixed bugs: - https://launchpad.net/bugs/1202237 (bzr r12444) --- src/attributes-test.h | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/attributes-test.h b/src/attributes-test.h index 78e0ea48f..295ad618c 100644 --- a/src/attributes-test.h +++ b/src/attributes-test.h @@ -214,7 +214,7 @@ struct {char const *attr; bool supported;} const all_attrs[] = { {"overline-position", true}, {"overline-thickness", true}, {"panose-1", true}, - {"path", false}, + {"path", true}, {"pathLength", false}, {"patternContentUnits", true}, {"patternTransform", true}, @@ -354,7 +354,6 @@ struct {char const *attr; bool supported;} const all_attrs[] = { {"inkscape:snap-bbox", true}, {"inkscape:snap-nodes", true}, {"inkscape:snap-others", true}, - {"inkscape:snap-from-guide", true}, {"inkscape:snap-center", true}, {"inkscape:snap-smooth-nodes", true}, {"inkscape:snap-midpoints", true}, @@ -383,6 +382,9 @@ struct {char const *attr; bool supported;} const all_attrs[] = { {"inkscape:connector-type", true}, {"inkscape:connection-start", true}, {"inkscape:connection-end", true}, + {"inkscape:connection-points", true}, + {"inkscape:connection-start-point", true}, + {"inkscape:connection-end-point", true}, {"inkscape:connector-curvature", true}, {"inkscape:connector-avoid", true}, {"inkscape:connector-spacing", true}, @@ -429,8 +431,17 @@ struct {char const *attr; bool supported;} const all_attrs[] = { {"inkscape:dstColumn", true}, {"inkscape:excludeShape", true}, {"inkscape:layoutOptions", true}, + {"osb:paint", true}, + + /* SPMeshPatch */ + {"tensor", true}, /* SPNamedView */ + {"fit-margin-top", true}, + {"fit-margin-left", true}, + {"fit-margin-right", true}, + {"fit-margin-bottom", true}, + {"units", true}, {"viewonly", true}, {"showgrid", true}, // {"gridtype", true}, -- cgit v1.2.3 From 39bc94117efe53a3545b2d8c3eb3628781828093 Mon Sep 17 00:00:00 2001 From: Alex Valavanis Date: Sat, 3 Aug 2013 15:06:13 +0100 Subject: Fix extensions that fail unit tests (bzr r12445) --- share/extensions/eqtexsvg.py | 4 + share/extensions/guides_creator.py | 11 +-- share/extensions/polyhedron_3d.py | 12 +-- share/extensions/spirograph.py | 2 +- share/extensions/test/simplestyle.test.py | 122 +++++++++++++++--------------- 5 files changed, 79 insertions(+), 72 deletions(-) diff --git a/share/extensions/eqtexsvg.py b/share/extensions/eqtexsvg.py index bf2874ef9..a6000dc6d 100755 --- a/share/extensions/eqtexsvg.py +++ b/share/extensions/eqtexsvg.py @@ -118,6 +118,10 @@ class EQTEXSVG(inkex.Effect): os.remove(err_file) os.rmdir(base_dir) + if self.options.formula == "": + print >>sys.stderr, "empty LaTeX input. Nothing to be done" + return + add_header = parse_pkgs(self.options.packages) create_equation_tex(latex_file, self.options.formula, add_header) os.system('latex "-output-directory=%s" -halt-on-error "%s" > "%s"' \ diff --git a/share/extensions/guides_creator.py b/share/extensions/guides_creator.py index da59a074d..178dc3c95 100755 --- a/share/extensions/guides_creator.py +++ b/share/extensions/guides_creator.py @@ -305,7 +305,7 @@ class Guides_Creator(inkex.Effect): v_orientation = str(round(height,4)) + ',0' # getting parent tag of the guides - nv = self.document.xpath('/svg:svg/sodipodi:namedview',namespaces=inkex.NSS)[0] + nv = self.document.find(inkex.addNS('namedview', 'sodipodi')) if (tab == "\"regular_guides\""): @@ -487,9 +487,10 @@ class Guides_Creator(inkex.Effect): # creating vertical guides drawVerticalGuides(v_subdiv,rectangle_width,rectangle_height,0,nv,begin_from) - -# Create effect instance and apply it. -effect = Guides_Creator() -effect.affect() + +if __name__ == '__main__': + # Create effect instance and apply it. + effect = Guides_Creator() + effect.affect() ## end of file guide_creator.py ## diff --git a/share/extensions/polyhedron_3d.py b/share/extensions/polyhedron_3d.py index 063912cc2..1aea7fc51 100755 --- a/share/extensions/polyhedron_3d.py +++ b/share/extensions/polyhedron_3d.py @@ -367,22 +367,22 @@ class Poly_3D(inkex.Effect): #VEIW SETTINGS self.OptionParser.add_option("--r1_ax", action="store", type="string", - dest="r1_ax", default=0) + dest="r1_ax", default="X-Axis") self.OptionParser.add_option("--r2_ax", action="store", type="string", - dest="r2_ax", default=0) + dest="r2_ax", default="X-Axis") self.OptionParser.add_option("--r3_ax", action="store", type="string", - dest="r3_ax", default=0) + dest="r3_ax", default="X-Axis") self.OptionParser.add_option("--r4_ax", action="store", type="string", - dest="r4_ax", default=0) + dest="r4_ax", default="X-Axis") self.OptionParser.add_option("--r5_ax", action="store", type="string", - dest="r5_ax", default=0) + dest="r5_ax", default="X-Axis") self.OptionParser.add_option("--r6_ax", action="store", type="string", - dest="r6_ax", default=0) + dest="r6_ax", default="X-Axis") self.OptionParser.add_option("--r1_ang", action="store", type="float", dest="r1_ang", default=0) diff --git a/share/extensions/spirograph.py b/share/extensions/spirograph.py index 21249831f..cb9d1ac24 100755 --- a/share/extensions/spirograph.py +++ b/share/extensions/spirograph.py @@ -35,7 +35,7 @@ class Spirograph(inkex.Effect): help="The distance of the pen from the inner gear") self.OptionParser.add_option("-p", "--gearplacement", action="store", type="string", - dest="gearplacement", default=50.0, + dest="gearplacement", default="inside", help="Selects whether the gear is inside or outside the ring") self.OptionParser.add_option("-a", "--rotation", action="store", type="float", diff --git a/share/extensions/test/simplestyle.test.py b/share/extensions/test/simplestyle.test.py index 3c75ac43a..a4746ec09 100755 --- a/share/extensions/test/simplestyle.test.py +++ b/share/extensions/test/simplestyle.test.py @@ -1,63 +1,65 @@ #!/usr/bin/env python -import unittest, sys -sys.path.append('..') # this line allows to import the extension code - -from simplestyle import parseColor, parseStyle - - -class ParseColorTest(unittest.TestCase): - """Test for single transformations""" - def test_namedcolor(self): - "Parse 'red'" - col = parseColor('red') - self.failUnlessEqual((255,0,0),col) - - def test_hexcolor4digit(self): - "Parse '#ff0102'" - col = parseColor('#ff0102') - self.failUnlessEqual((255,1,2),col) - - def test_hexcolor3digit(self): - "Parse '#fff'" - col = parseColor('#fff') - self.failUnlessEqual((255,255,255),col) - - def test_rgbcolorint(self): - "Parse 'rgb(255,255,255)'" - col = parseColor('rgb(255,255,255)') - self.failUnlessEqual((255,255,255),col) - - def test_rgbcolorpercent(self): - "Parse 'rgb(100%,100%,100%)'" - col = parseColor('rgb(100%,100%,100%)') - self.failUnlessEqual((255,255,255),col) - - def test_rgbcolorpercent2(self): - "Parse 'rgb(100%,100%,100%)'" - col = parseColor('rgb(50%,0%,1%)') - self.failUnlessEqual((127,0,2),col) - - def test_rgbcolorpercentdecimal(self): - "Parse 'rgb(66.667%,0%,6.667%)'" - col = parseColor('rgb(66.667%,0%,6.667%)') - self.failUnlessEqual((170, 0, 17),col) - - def test_currentColor(self): - "Parse 'currentColor'" - col = parseColor('currentColor') - self.failUnlessEqual(('currentColor'),col) - - def test_spaceinstyle(self): - "Parse 'stop-color: rgb(0,0,0)'" - col = parseStyle('stop-color: rgb(0,0,0)') - self.failUnlessEqual({'stop-color': 'rgb(0,0,0)'},col) - - #def test_unknowncolor(self): - # "Parse 'unknown'" - # col = parseColor('unknown') - # self.failUnlessEqual((0,0,0),col) - # - -if __name__ == '__main__': +import unittest, sys +sys.path.append('..') # this line allows to import the extension code + +from simplestyle import parseColor, parseStyle + + +class ParseColorTest(unittest.TestCase): + """Test for single transformations""" + def test_namedcolor(self): + "Parse 'red'" + col = parseColor('red') + self.failUnlessEqual((255,0,0),col) + + def test_hexcolor4digit(self): + "Parse '#ff0102'" + col = parseColor('#ff0102') + self.failUnlessEqual((255,1,2),col) + + def test_hexcolor3digit(self): + "Parse '#fff'" + col = parseColor('#fff') + self.failUnlessEqual((255,255,255),col) + + def test_rgbcolorint(self): + "Parse 'rgb(255,255,255)'" + col = parseColor('rgb(255,255,255)') + self.failUnlessEqual((255,255,255),col) + + def test_rgbcolorpercent(self): + "Parse 'rgb(100%,100%,100%)'" + col = parseColor('rgb(100%,100%,100%)') + self.failUnlessEqual((255,255,255),col) + + def test_rgbcolorpercent2(self): + "Parse 'rgb(100%,100%,100%)'" + col = parseColor('rgb(50%,0%,1%)') + self.failUnlessEqual((127,0,2),col) + + def test_rgbcolorpercentdecimal(self): + "Parse 'rgb(66.667%,0%,6.667%)'" + col = parseColor('rgb(66.667%,0%,6.667%)') + self.failUnlessEqual((170, 0, 17),col) + + # TODO: This test appears to be broken. parseColor can + # only return an RGB colour code + #def test_currentColor(self): + # "Parse 'currentColor'" + # col = parseColor('currentColor') + # self.failUnlessEqual(('currentColor'),col) + + def test_spaceinstyle(self): + "Parse 'stop-color: rgb(0,0,0)'" + col = parseStyle('stop-color: rgb(0,0,0)') + self.failUnlessEqual({'stop-color': 'rgb(0,0,0)'},col) + + #def test_unknowncolor(self): + # "Parse 'unknown'" + # col = parseColor('unknown') + # self.failUnlessEqual((0,0,0),col) + # + +if __name__ == '__main__': unittest.main() -- cgit v1.2.3 From 1a58d13b2b974a9da674311899df9c2e16f3e053 Mon Sep 17 00:00:00 2001 From: Alex Valavanis Date: Sat, 3 Aug 2013 16:35:41 +0100 Subject: Fix return code for extension tests] (bzr r12446) --- share/extensions/test/run-all-extension-tests | 6 +++++- src/Makefile.am | 13 ++++++++++++- src/Makefile_insert | 2 +- 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/share/extensions/test/run-all-extension-tests b/share/extensions/test/run-all-extension-tests index 1776e25b0..e7cba78f4 100755 --- a/share/extensions/test/run-all-extension-tests +++ b/share/extensions/test/run-all-extension-tests @@ -60,4 +60,8 @@ echo "" rm $py_cover_files $failed_tests -$fail && exit 1 \ No newline at end of file +if [ x$fail == xtrue ]; then + exit 1 +else + exit 0 +fi diff --git a/src/Makefile.am b/src/Makefile.am index 3a937d58b..3ca99869f 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -248,7 +248,18 @@ check_PROGRAMS = cxxtests # List of all tests to be run. TESTS = $(check_PROGRAMS) ../share/extensions/test/run-all-extension-tests -XFAIL_TESTS = $(check_PROGRAMS) ../share/extensions/test/run-all-extension-tests + +# FIXME: Currently, a number of cxxtest tests fail. These should be fixed and +# the XFAIL_TESTS build target should be removed. +# See the following Launchpad bugs: +# +# LP #1202271 +# LP #1208013 +# LP #1208002 +# LP #1208005 +# LP #1207502 + +XFAIL_TESTS = $(check_PROGRAMS) # including the the testsuites here ensures that they get distributed cxxtests_SOURCES = cxxtests.cpp $(CXXTEST_TESTSUITES) diff --git a/src/Makefile_insert b/src/Makefile_insert index 885b89d78..8fc00b2f6 100644 --- a/src/Makefile_insert +++ b/src/Makefile_insert @@ -284,8 +284,8 @@ CXXTEST_TESTSUITES += \ $(srcdir)/extract-uri-test.h \ $(srcdir)/marker-test.h \ $(srcdir)/mod360-test.h \ + $(srcdir)/preferences-test.h \ $(srcdir)/round-test.h \ - $(srcdir)/preferences-test.h \ $(srcdir)/sp-gradient-test.h \ $(srcdir)/sp-style-elem-test.h \ $(srcdir)/style-test.h \ -- cgit v1.2.3 From 6c7ac8dd7e8403645de3090777ed6b50c95420e3 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Sat, 3 Aug 2013 12:21:14 -0400 Subject: Fixed building of tests. (bzr r12380.1.60) --- src/helper/Makefile_insert | 6 ------ 1 file changed, 6 deletions(-) diff --git a/src/helper/Makefile_insert b/src/helper/Makefile_insert index 5d1703b5c..4c6437f13 100644 --- a/src/helper/Makefile_insert +++ b/src/helper/Makefile_insert @@ -40,9 +40,3 @@ helper/sp-marshal.cpp: helper/sp-marshal.list helper/sp-marshal.h else mv helper/tmp.sp-marshal.cpp helper/sp-marshal.cpp; fi helper/sp-marshal.cpp helper/sp-marshal.h: helper/sp-marshal.list - -# ###################### -# ### CxxTest stuff #### -# ###################### -CXXTEST_TESTSUITES += \ - $(srcdir)/helper/units-test.h -- cgit v1.2.3 From c935444b90a29e270371f1afee773104dc314e88 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Sat, 3 Aug 2013 12:55:11 -0400 Subject: Fix handling of SVG lengths with spaces [Bug #1208002]. (bzr r12380.1.61) --- src/svg/svg-length.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/svg/svg-length.cpp b/src/svg/svg-length.cpp index 7f93f9f0f..ea438e91a 100644 --- a/src/svg/svg-length.cpp +++ b/src/svg/svg-length.cpp @@ -330,6 +330,8 @@ static unsigned sp_svg_length_read_lff(gchar const *str, SVGLength::Unit *unit, *next = (char *) e + 1; } return 1; + } else if (g_ascii_isspace(e[0])) { + return 0; // spaces are not allowed } else { /* Unitless */ if (unit) { -- cgit v1.2.3 From 0f4a6db2555ee0403cbd731fa4b40b6dbeb6a273 Mon Sep 17 00:00:00 2001 From: Alex Valavanis Date: Sat, 3 Aug 2013 18:09:34 +0100 Subject: Fix gears test (bzr r12447) --- share/extensions/test/gears.test.py | 26 -------------------------- share/extensions/test/render_gears.test.py | 26 ++++++++++++++++++++++++++ 2 files changed, 26 insertions(+), 26 deletions(-) delete mode 100755 share/extensions/test/gears.test.py create mode 100755 share/extensions/test/render_gears.test.py diff --git a/share/extensions/test/gears.test.py b/share/extensions/test/gears.test.py deleted file mode 100755 index 964f675ad..000000000 --- a/share/extensions/test/gears.test.py +++ /dev/null @@ -1,26 +0,0 @@ -#!/usr/bin/env python - -# This is only the automatic generated test file for ../gears.py -# This must be filled with real tests and this commentary -# must be cleared. -# If you want to help, read the python unittest documentation: -# http://docs.python.org/library/unittest.html - -import sys -sys.path.append('..') # this line allows to import the extension code - -import unittest -from gears import * - -class GearsBasicTest(unittest.TestCase): - - #def setUp(self): - - def test_run_without_parameters(self): - args = [ 'minimal-blank.svg' ] - e = Gears() - e.affect( args, False ) - #self.assertEqual( e.something, 'some value', 'A commentary about that.' ) - -if __name__ == '__main__': - unittest.main() diff --git a/share/extensions/test/render_gears.test.py b/share/extensions/test/render_gears.test.py new file mode 100755 index 000000000..ad1668126 --- /dev/null +++ b/share/extensions/test/render_gears.test.py @@ -0,0 +1,26 @@ +#!/usr/bin/env python + +# This is only the automatic generated test file for ../gears.py +# This must be filled with real tests and this commentary +# must be cleared. +# If you want to help, read the python unittest documentation: +# http://docs.python.org/library/unittest.html + +import sys +sys.path.append('..') # this line allows to import the extension code + +import unittest +from render_gears import * + +class GearsBasicTest(unittest.TestCase): + + #def setUp(self): + + def test_run_without_parameters(self): + args = [ 'minimal-blank.svg' ] + e = Gears() + e.affect( args, False ) + #self.assertEqual( e.something, 'some value', 'A commentary about that.' ) + +if __name__ == '__main__': + unittest.main() -- cgit v1.2.3 From 25de599c368f7859ec2a8e3e8c128fced3d52a9e Mon Sep 17 00:00:00 2001 From: "Johan B. C. Engelen" Date: Sat, 3 Aug 2013 21:15:44 +0200 Subject: cppcheck Common realloc mistake: 'qrsData' nulled but not freed upon failure (bzr r12448) --- src/livarot/Shape.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/livarot/Shape.cpp b/src/livarot/Shape.cpp index c29444a33..ab93486e5 100644 --- a/src/livarot/Shape.cpp +++ b/src/livarot/Shape.cpp @@ -130,7 +130,12 @@ Shape::MakeQuickRasterData (bool nVal) if (_has_quick_raster_data == false) { _has_quick_raster_data = true; - qrsData = (quick_raster_data*)realloc(qrsData, maxAr * sizeof(quick_raster_data)); + quick_raster_data* new_qrsData = static_cast(realloc(qrsData, maxAr * sizeof(quick_raster_data))); + if (!new_qrsData) { + g_error("Not enough memory available for reallocating Shape::qrsData"); + } else { + qrsData = new_qrsData; + } } } else -- cgit v1.2.3 From 4870480be25edac321a066a18d5e66f077c355db Mon Sep 17 00:00:00 2001 From: "Johan B. C. Engelen" Date: Sat, 3 Aug 2013 21:19:41 +0200 Subject: cppcheck fix: Memory leak: rows (bzr r12449) --- src/libgdl/gdl-switcher.c | 97 ++++++++++++++++++++++++----------------------- 1 file changed, 50 insertions(+), 47 deletions(-) diff --git a/src/libgdl/gdl-switcher.c b/src/libgdl/gdl-switcher.c index 60d53dd5f..daacebf20 100644 --- a/src/libgdl/gdl-switcher.c +++ b/src/libgdl/gdl-switcher.c @@ -370,62 +370,65 @@ layout_buttons (GdlSwitcher *switcher) if (last_buttons_height > switcher->priv->buttons_height_request) { gtk_widget_queue_resize (GTK_WIDGET (switcher)); - return -1; + y = -1; // set return value } - - /* Layout the buttons. */ - for (i = row_last; i >= 0; i --) { - int len, extra_width; - - y -= max_btn_height; - - /* Check for possible size over flow (taking into account client - * requisition - */ - if (y < (allocation.y + client_requisition.height)) { - /* We have an overflow: Insufficient allocation */ - if (last_buttons_height < switcher->priv->buttons_height_request) { - /* Request for a new resize */ - gtk_widget_queue_resize (GTK_WIDGET (switcher)); - return -1; - } - } - x = H_PADDING + allocation.x; - len = g_slist_length (rows[i]); - if (switcher_style == GDL_SWITCHER_STYLE_TEXT || - switcher_style == GDL_SWITCHER_STYLE_BOTH) - extra_width = (allocation.width - (len * max_btn_width ) - - (len * H_PADDING)) / len; - else - extra_width = 0; - for (p = rows [i]; p != NULL; p = p->next) { - GtkAllocation child_allocation; + else + { + /* Layout the buttons. */ + for (i = row_last; i >= 0; i --) { + int len, extra_width; - child_allocation.x = x; - child_allocation.y = y; - if (rows_count == 1 && row_number == 0) - { - GtkRequisition child_requisition; - gtk_widget_size_request (GTK_WIDGET (p->data), - &child_requisition); - child_allocation.width = child_requisition.width; + y -= max_btn_height; + + /* Check for possible size over flow (taking into account client + * requisition + */ + if (y < (allocation.y + client_requisition.height)) { + /* We have an overflow: Insufficient allocation */ + if (last_buttons_height < switcher->priv->buttons_height_request) { + /* Request for a new resize */ + gtk_widget_queue_resize (GTK_WIDGET (switcher)); + return -1; + } } + x = H_PADDING + allocation.x; + len = g_slist_length (rows[i]); + if (switcher_style == GDL_SWITCHER_STYLE_TEXT || + switcher_style == GDL_SWITCHER_STYLE_BOTH) + extra_width = (allocation.width - (len * max_btn_width ) + - (len * H_PADDING)) / len; else - { - child_allocation.width = max_btn_width + extra_width; + extra_width = 0; + for (p = rows [i]; p != NULL; p = p->next) { + GtkAllocation child_allocation; + + child_allocation.x = x; + child_allocation.y = y; + if (rows_count == 1 && row_number == 0) + { + GtkRequisition child_requisition; + gtk_widget_size_request (GTK_WIDGET (p->data), + &child_requisition); + child_allocation.width = child_requisition.width; + } + else + { + child_allocation.width = max_btn_width + extra_width; + } + child_allocation.height = max_btn_height; + + gtk_widget_size_allocate (GTK_WIDGET (p->data), &child_allocation); + + x += child_allocation.width + H_PADDING; } - child_allocation.height = max_btn_height; - - gtk_widget_size_allocate (GTK_WIDGET (p->data), &child_allocation); - x += child_allocation.width + H_PADDING; + y -= V_PADDING; } - - y -= V_PADDING; } - - for (i = 0; i <= row_last; i ++) + + for (i = 0; i <= row_last; i ++) { g_slist_free (rows [i]); + } g_free (rows); return y; -- cgit v1.2.3 From 1a96b84e5e99905288a9531914926d4318a198ca Mon Sep 17 00:00:00 2001 From: Alvin Penner Date: Sat, 3 Aug 2013 15:24:06 -0400 Subject: pdf import. re-define tiling pattern scaling matrix (Bug 1168908) Fixed bugs: - https://launchpad.net/bugs/1168908 (bzr r12450) --- src/extension/internal/pdfinput/svg-builder.cpp | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/src/extension/internal/pdfinput/svg-builder.cpp b/src/extension/internal/pdfinput/svg-builder.cpp index 75849f6cc..165dd38fe 100644 --- a/src/extension/internal/pdfinput/svg-builder.cpp +++ b/src/extension/internal/pdfinput/svg-builder.cpp @@ -676,7 +676,25 @@ gchar *SvgBuilder::_createTilingPattern(GfxTilingPattern *tiling_pattern, Inkscape::XML::Node *pattern_node = _xml_doc->createElement("svg:pattern"); // Set pattern transform matrix double *p2u = tiling_pattern->getMatrix(); - Geom::Affine pat_matrix(p2u[0], p2u[1], p2u[2], p2u[3], p2u[4], p2u[5]); + double m[6] = {1, 0, 0, 1, 0, 0}; + double det; + det = ttm[0] * ttm[3] - ttm[1] * ttm[2]; // see LP Bug 1168908 + if (det) { + double ittm[6]; // invert ttm + ittm[0] = ttm[3] / det; + ittm[1] = -ttm[1] / det; + ittm[2] = -ttm[2] / det; + ittm[3] = ttm[0] / det; + ittm[4] = (ttm[2] * ttm[5] - ttm[3] * ttm[4]) / det; + ittm[5] = (ttm[1] * ttm[4] - ttm[0] * ttm[5]) / det; + m[0] = p2u[0] * ittm[0] + p2u[1] * ittm[2]; + m[1] = p2u[0] * ittm[1] + p2u[1] * ittm[3]; + m[2] = p2u[2] * ittm[0] + p2u[3] * ittm[2]; + m[3] = p2u[2] * ittm[1] + p2u[3] * ittm[3]; + m[4] = p2u[4] * ittm[0] + p2u[5] * ittm[2] + ittm[4]; + m[5] = p2u[4] * ittm[1] + p2u[5] * ittm[3] + ittm[5]; + } + Geom::Affine pat_matrix(m[0], m[1], m[2], m[3], m[4], m[5]); gchar *transform_text = sp_svg_transform_write(pat_matrix); pattern_node->setAttribute("patternTransform", transform_text); g_free(transform_text); -- cgit v1.2.3 From efc2e9140b02c4042254d7a829dcff904f3631bf Mon Sep 17 00:00:00 2001 From: "Johan B. C. Engelen" Date: Sat, 3 Aug 2013 21:25:18 +0200 Subject: add comment. cppcheck false positive (bzr r12451) --- src/syseq.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/syseq.h b/src/syseq.h index 029f27a91..4e7ccd943 100644 --- a/src/syseq.h +++ b/src/syseq.h @@ -289,7 +289,7 @@ template SolutionKind gaussjord_solve (double A[S][T], double x[T * afterwards copy the result back to x */ double w[S]; - SysEq::multiply(B,x,w); + SysEq::multiply(B,x,w); // initializes w for (int j = 0; j < S; ++j) { x[cols[j]] = w[j]; } -- cgit v1.2.3 From 6e0c3f93c7ea02b0c072ee9c8b56a3a4e5fcfe31 Mon Sep 17 00:00:00 2001 From: "Johan B. C. Engelen" Date: Sat, 3 Aug 2013 21:40:28 +0200 Subject: disable really bad memset on a huge struct that contains member objects besides just integers and enums (bzr r12452) --- src/style.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/style.cpp b/src/style.cpp index 479f30597..a9861f918 100644 --- a/src/style.cpp +++ b/src/style.cpp @@ -2945,14 +2945,19 @@ sp_style_clear(SPStyle *style) style->stroke.clear(); sp_style_filter_clear(style); + style->release_connection.disconnect(); + + style->fill_ps_modified_connection.disconnect(); if (style->fill.value.href) { delete style->fill.value.href; style->fill.value.href = NULL; } + style->stroke_ps_modified_connection.disconnect(); if (style->stroke.value.href) { delete style->stroke.value.href; style->stroke.value.href = NULL; } + style->filter_modified_connection.disconnect(); if (style->filter.href) { delete style->filter.href; style->filter.href = NULL; @@ -2972,8 +2977,9 @@ sp_style_clear(SPStyle *style) SPTextStyle *text = style->text; unsigned const text_private = style->text_private; - memset(style, 0, sizeof(SPStyle)); - + // this looks really bad! you can't just 0 *all* data in the whole struct! + // memset(style, 0, sizeof(SPStyle)); + style->refcount = refcount; style->object = object; style->document = document; -- cgit v1.2.3 From 47c02c0f9922bea72c73dacc1e0bb1790c259837 Mon Sep 17 00:00:00 2001 From: "Johan B. C. Engelen" Date: Sat, 3 Aug 2013 21:59:58 +0200 Subject: init members (bzr r12453) --- src/livarot/Shape.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/livarot/Shape.cpp b/src/livarot/Shape.cpp index ab93486e5..628e0fe9f 100644 --- a/src/livarot/Shape.cpp +++ b/src/livarot/Shape.cpp @@ -20,7 +20,12 @@ */ Shape::Shape() - : qrsData(NULL), + : nbQRas(0), + firstQRas(-1), + lastQRas(-1), + qrsData(NULL), + nbInc(0), + maxInc(0), iData(NULL), sTree(NULL), sEvts(NULL), -- cgit v1.2.3 From 75df8b344627054c25384316c850c8c7b3202e4d Mon Sep 17 00:00:00 2001 From: "Johan B. C. Engelen" Date: Sat, 3 Aug 2013 22:08:57 +0200 Subject: remove unused variable (bzr r12454) --- src/widgets/desktop-widget.h | 1 - 1 file changed, 1 deletion(-) diff --git a/src/widgets/desktop-widget.h b/src/widgets/desktop-widget.h index 9031ac854..58739cf3b 100644 --- a/src/widgets/desktop-widget.h +++ b/src/widgets/desktop-widget.h @@ -129,7 +129,6 @@ struct SPDesktopWidget { struct WidgetStub : public Inkscape::UI::View::EditWidgetInterface { SPDesktopWidget *_dtw; - SPDesktop *_dt; WidgetStub (SPDesktopWidget* dtw) : _dtw(dtw) {} virtual void setTitle (gchar const *uri) -- cgit v1.2.3 From de2fd07b4247cd8ee7d9d4f29bdbe73b8b959d9c Mon Sep 17 00:00:00 2001 From: "Johan B. C. Engelen" Date: Sat, 3 Aug 2013 22:14:26 +0200 Subject: function cleanup (bzr r12455) --- src/libcroco/cr-attr-sel.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/libcroco/cr-attr-sel.c b/src/libcroco/cr-attr-sel.c index 3c4800e66..0726f0f3e 100644 --- a/src/libcroco/cr-attr-sel.c +++ b/src/libcroco/cr-attr-sel.c @@ -208,8 +208,5 @@ cr_attr_sel_destroy (CRAttrSel * a_this) a_this->next = NULL; } - if (a_this) { - g_free (a_this); - a_this = NULL; - } + g_free (a_this); } -- cgit v1.2.3 From 56c3e481fc471764c4445ca7be1c24099b1885d3 Mon Sep 17 00:00:00 2001 From: "Johan B. C. Engelen" Date: Sat, 3 Aug 2013 22:24:34 +0200 Subject: cleanup (bzr r12456) --- src/libcroco/cr-om-parser.c | 43 +++++++++++++++++++++++-------------------- 1 file changed, 23 insertions(+), 20 deletions(-) diff --git a/src/libcroco/cr-om-parser.c b/src/libcroco/cr-om-parser.c index b8d70e35a..c9ce032af 100644 --- a/src/libcroco/cr-om-parser.c +++ b/src/libcroco/cr-om-parser.c @@ -217,9 +217,9 @@ start_font_face (CRDocHandler * a_this, ParsingContext **ctxtptr = NULL; UNUSED(a_location); - g_return_if_fail (a_this); - ctxtptr = &ctxt; + + ctxtptr = &ctxt; status = cr_doc_handler_get_ctxt (a_this, (gpointer *) ctxtptr); g_return_if_fail (status == CR_OK && ctxt); g_return_if_fail (ctxt->cur_stmt == NULL); @@ -316,9 +316,9 @@ charset (CRDocHandler * a_this, CRString * a_charset, ParsingContext **ctxtptr = NULL; UNUSED(a_location); - g_return_if_fail (a_this); - ctxtptr = &ctxt; + + ctxtptr = &ctxt; status = cr_doc_handler_get_ctxt (a_this, (gpointer *) ctxtptr); g_return_if_fail (status == CR_OK && ctxt); g_return_if_fail (ctxt->stylesheet); @@ -352,9 +352,9 @@ start_page (CRDocHandler * a_this, ParsingContext **ctxtptr = NULL; UNUSED(a_location); - g_return_if_fail (a_this); - ctxtptr = &ctxt; + + ctxtptr = &ctxt; status = cr_doc_handler_get_ctxt (a_this, (gpointer *) ctxtptr); g_return_if_fail (status == CR_OK && ctxt); g_return_if_fail (ctxt->cur_stmt == NULL); @@ -395,8 +395,11 @@ end_page (CRDocHandler * a_this, ParsingContext **ctxtptr = NULL; CRStatement *stmt = NULL; + UNUSED(a_page); + UNUSED(a_pseudo_page); g_return_if_fail (a_this); - ctxtptr = &ctxt; + + ctxtptr = &ctxt; status = cr_doc_handler_get_ctxt (a_this, (gpointer *) ctxtptr); g_return_if_fail (status == CR_OK && ctxt); g_return_if_fail (ctxt->cur_stmt @@ -416,8 +419,6 @@ end_page (CRDocHandler * a_this, cr_statement_destroy (ctxt->cur_stmt); ctxt->cur_stmt = NULL; } - a_page = NULL; /*keep compiler happy */ - a_pseudo_page = NULL; /*keep compiler happy */ } static void @@ -431,9 +432,9 @@ start_media (CRDocHandler * a_this, GList *media_list = NULL; UNUSED(a_location); - g_return_if_fail (a_this); - ctxtptr = &ctxt; + + ctxtptr = &ctxt; status = cr_doc_handler_get_ctxt (a_this, (gpointer *) ctxtptr); g_return_if_fail (status == CR_OK && ctxt); @@ -443,12 +444,10 @@ start_media (CRDocHandler * a_this, && ctxt->stylesheet); if (a_media_list) { /*duplicate the media_list */ - media_list = cr_utils_dup_glist_of_cr_string - (a_media_list); + media_list = cr_utils_dup_glist_of_cr_string(a_media_list); } ctxt->cur_media_stmt = - cr_statement_new_at_media_rule - (ctxt->stylesheet, NULL, media_list); + cr_statement_new_at_media_rule(ctxt->stylesheet, NULL, media_list); } @@ -460,8 +459,10 @@ end_media (CRDocHandler * a_this, GList * a_media_list) ParsingContext **ctxtptr = NULL; CRStatement *stmts = NULL; + UNUSED(a_media_list); g_return_if_fail (a_this); - ctxtptr = &ctxt; + + ctxtptr = &ctxt; status = cr_doc_handler_get_ctxt (a_this, (gpointer *) ctxtptr); g_return_if_fail (status == CR_OK && ctxt); g_return_if_fail (ctxt @@ -481,7 +482,6 @@ end_media (CRDocHandler * a_this, GList * a_media_list) ctxt->cur_stmt = NULL ; ctxt->cur_media_stmt = NULL ; - a_media_list = NULL; } static void @@ -499,10 +499,11 @@ import_style (CRDocHandler * a_this, ParsingContext **ctxtptr = NULL; GList *media_list = NULL ; + UNUSED(a_uri_default_ns); UNUSED(a_location); - g_return_if_fail (a_this); - ctxtptr = &ctxt; + + ctxtptr = &ctxt; status = cr_doc_handler_get_ctxt (a_this, (gpointer *) ctxtptr); g_return_if_fail (status == CR_OK && ctxt); g_return_if_fail (ctxt->stylesheet); @@ -574,8 +575,10 @@ end_selector (CRDocHandler * a_this, CRSelector * a_selector_list) ParsingContext *ctxt = NULL; ParsingContext **ctxtptr = NULL; + UNUSED(a_selector_list); g_return_if_fail (a_this); - ctxtptr = &ctxt; + + ctxtptr = &ctxt; status = cr_doc_handler_get_ctxt (a_this, (gpointer *) ctxtptr); g_return_if_fail (status == CR_OK && ctxt); g_return_if_fail (ctxt->cur_stmt && ctxt->stylesheet); -- cgit v1.2.3 From 00bcfb34fab1de3317781d0d639ef1bb54fb4f7e Mon Sep 17 00:00:00 2001 From: "Johan B. C. Engelen" Date: Sat, 3 Aug 2013 22:27:27 +0200 Subject: fix bug (bzr r12457) --- src/libcroco/cr-prop-list.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libcroco/cr-prop-list.c b/src/libcroco/cr-prop-list.c index 076837905..551f0b8ee 100644 --- a/src/libcroco/cr-prop-list.c +++ b/src/libcroco/cr-prop-list.c @@ -48,7 +48,7 @@ cr_prop_list_allocate (void) } memset (result, 0, sizeof (CRPropList)); PRIVATE (result) = (CRPropListPriv *)g_try_malloc (sizeof (CRPropListPriv)); - if (!result) { + if (!PRIVATE (result)) { cr_utils_trace_info ("could not allocate CRPropListPriv"); g_free (result); return NULL; -- cgit v1.2.3 From 4a914e1f02d9ccb70858031f89e11ad480286413 Mon Sep 17 00:00:00 2001 From: "Johan B. C. Engelen" Date: Sat, 3 Aug 2013 22:35:52 +0200 Subject: some code cleanup, trying to get it through cppcheck (bzr r12458) --- src/libcroco/cr-parser.c | 5 +---- src/libcroco/cr-simple-sel.c | 9 ++++----- src/libcroco/cr-statement.c | 13 +++++++------ src/libcroco/cr-term.c | 7 ++----- 4 files changed, 14 insertions(+), 20 deletions(-) diff --git a/src/libcroco/cr-parser.c b/src/libcroco/cr-parser.c index a8e2de5a3..917c5cb60 100644 --- a/src/libcroco/cr-parser.c +++ b/src/libcroco/cr-parser.c @@ -4402,8 +4402,5 @@ cr_parser_destroy (CRParser * a_this) PRIVATE (a_this) = NULL; } - if (a_this) { - g_free (a_this); - a_this = NULL; /*useless. Just for the sake of coherence */ - } + g_free (a_this); } diff --git a/src/libcroco/cr-simple-sel.c b/src/libcroco/cr-simple-sel.c index 18dd340d8..6a51a9526 100644 --- a/src/libcroco/cr-simple-sel.c +++ b/src/libcroco/cr-simple-sel.c @@ -275,12 +275,12 @@ cr_simple_sel_compute_specificity (CRSimpleSel * a_this) /** *The destructor of the current instance of - *#CRSimpleSel. + *#CRSimpleSel. Recursively calls the destructor of #CRSimpleSel->next *@param a_this the this pointer of the current instance of #CRSimpleSel. * */ void -cr_simple_sel_destroy (CRSimpleSel * a_this) +cr_simple_sel_destroy (CRSimpleSel * const a_this) { g_return_if_fail (a_this); @@ -296,9 +296,8 @@ cr_simple_sel_destroy (CRSimpleSel * a_this) if (a_this->next) { cr_simple_sel_destroy (a_this->next); + a_this->next = NULL; } - if (a_this) { - g_free (a_this); - } + g_free (a_this); } diff --git a/src/libcroco/cr-statement.c b/src/libcroco/cr-statement.c index 40df49878..2b2c1836c 100644 --- a/src/libcroco/cr-statement.c +++ b/src/libcroco/cr-statement.c @@ -604,7 +604,10 @@ cr_statement_ruleset_to_string (CRStatement * a_this, glong a_indent) g_return_val_if_fail (a_this && a_this->type == RULESET_STMT, NULL); - GString *stringue = (GString *)g_string_new (NULL); + GString * stringue = (GString *)g_string_new (NULL); + if (!stringue) { + return result; + } if (a_this->kind.ruleset->sel_list) { if (a_indent) @@ -635,10 +638,9 @@ cr_statement_ruleset_to_string (CRStatement * a_this, glong a_indent) g_string_append (stringue, "}"); result = stringue->str; - if (stringue) { - g_string_free (stringue, FALSE); - stringue = NULL; - } + g_string_free (stringue, FALSE); + stringue = NULL; + if (tmp_str) { g_free (tmp_str); tmp_str = NULL; @@ -1377,7 +1379,6 @@ cr_statement_at_import_rule_parse_from_buf (const guchar * a_buf, } if (media_list) { GList *cur = NULL; - for (cur = media_list; media_list; media_list = g_list_next (media_list)) { if (media_list->data) { diff --git a/src/libcroco/cr-term.c b/src/libcroco/cr-term.c index d95c4979f..635577334 100644 --- a/src/libcroco/cr-term.c +++ b/src/libcroco/cr-term.c @@ -771,7 +771,7 @@ cr_term_unref (CRTerm * a_this) *of #CRTerm. */ void -cr_term_destroy (CRTerm * a_this) +cr_term_destroy (CRTerm * const a_this) { g_return_if_fail (a_this); @@ -782,8 +782,5 @@ cr_term_destroy (CRTerm * a_this) a_this->next = NULL; } - if (a_this) { - g_free (a_this); - } - + g_free (a_this); } -- cgit v1.2.3 From c102402e576d82a87d46026f108d636f70c6a6f8 Mon Sep 17 00:00:00 2001 From: "Johan B. C. Engelen" Date: Sat, 3 Aug 2013 22:44:24 +0200 Subject: fix initialization (bzr r12459) --- src/trace/pool.h | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/src/trace/pool.h b/src/trace/pool.h index d072a460b..88fd82bcd 100644 --- a/src/trace/pool.h +++ b/src/trace/pool.h @@ -59,17 +59,21 @@ class pool { public: pool() - { + { cblock = 0; size = sizeof(T) > sizeof(void *) ? sizeof(T) : sizeof(void *); next = NULL; - } + for (int k = 0; k < 64; k++) { + block[k] = NULL; + } + } ~pool() - { - for (int k = 0; k < cblock; k++) - free(block[k]); - } + { + for (int k = 0; k < cblock; k++) { + free(block[k]); + } + } T *draw() { @@ -89,7 +93,7 @@ class pool { int size; int cblock; - void *block[64]; //enough to store unlimited number of objects + void *block[64]; //enough to store unlimited number of objects, if 64 is changed: see constructor too void *next; void addblock() -- cgit v1.2.3 From 84ef605959069b0d7bebc61b5c08e2b34ef55945 Mon Sep 17 00:00:00 2001 From: "Johan B. C. Engelen" Date: Sat, 3 Aug 2013 22:45:01 +0200 Subject: fix initialization (bzr r12460) --- src/ui/widget/registered-widget.h | 1 + 1 file changed, 1 insertion(+) diff --git a/src/ui/widget/registered-widget.h b/src/ui/widget/registered-widget.h index fa35b815e..18a84ea05 100644 --- a/src/ui/widget/registered-widget.h +++ b/src/ui/widget/registered-widget.h @@ -128,6 +128,7 @@ private: repr = NULL; doc = NULL; write_undo = false; + event_type = -1; } }; -- cgit v1.2.3 From 2580137d7c69ba5752ca7ce698d6cf104ff7f00c Mon Sep 17 00:00:00 2001 From: "Johan B. C. Engelen" Date: Sat, 3 Aug 2013 22:57:37 +0200 Subject: fix small "performance" issues (cppcheck) (bzr r12461) --- src/livarot/Path.cpp | 16 ++++++++-------- src/livarot/PathConversion.cpp | 21 ++++++--------------- src/livarot/PathCutting.cpp | 6 +++--- src/livarot/PathOutline.cpp | 3 +-- src/livarot/ShapeRaster.cpp | 6 ++---- src/livarot/ShapeSweep.cpp | 6 ++---- 6 files changed, 22 insertions(+), 36 deletions(-) diff --git a/src/livarot/Path.cpp b/src/livarot/Path.cpp index 88d397864..68891e4aa 100644 --- a/src/livarot/Path.cpp +++ b/src/livarot/Path.cpp @@ -28,7 +28,7 @@ Path::Path() Path::~Path() { - for (std::vector::iterator i = descr_cmd.begin(); i != descr_cmd.end(); i++) { + for (std::vector::iterator i = descr_cmd.begin(); i != descr_cmd.end(); ++i) { delete *i; } } @@ -37,7 +37,7 @@ Path::~Path() void Path::Affiche() { std::cout << "path: " << descr_cmd.size() << " commands." << std::endl; - for (std::vector::const_iterator i = descr_cmd.begin(); i != descr_cmd.end(); i++) { + for (std::vector::const_iterator i = descr_cmd.begin(); i != descr_cmd.end(); ++i) { (*i)->dump(std::cout); std::cout << std::endl; } @@ -47,7 +47,7 @@ void Path::Affiche() void Path::Reset() { - for (std::vector::iterator i = descr_cmd.begin(); i != descr_cmd.end(); i++) { + for (std::vector::iterator i = descr_cmd.begin(); i != descr_cmd.end(); ++i) { delete *i; } @@ -61,7 +61,7 @@ void Path::Copy(Path * who) { ResetPoints(); - for (std::vector::iterator i = descr_cmd.begin(); i != descr_cmd.end(); i++) { + for (std::vector::iterator i = descr_cmd.begin(); i != descr_cmd.end(); ++i) { delete *i; } @@ -69,7 +69,7 @@ void Path::Copy(Path * who) for (std::vector::const_iterator i = who->descr_cmd.begin(); i != who->descr_cmd.end(); - i++) + ++i) { descr_cmd.push_back((*i)->clone()); } @@ -496,9 +496,9 @@ void Path::PolylineBoundingBox(double &l, double &t, double &r, double &b) std::vector::const_iterator i = pts.begin(); l = r = i->p[Geom::X]; t = b = i->p[Geom::Y]; - i++; + ++i; - for (; i != pts.end(); i++) { + for (; i != pts.end(); ++i) { r = std::max(r, i->p[Geom::X]); l = std::min(l, i->p[Geom::X]); b = std::max(b, i->p[Geom::Y]); @@ -701,7 +701,7 @@ void Path::PointAndTangentAt(int piece, double at, Geom::Point &pos, Geom::Point void Path::Transform(const Geom::Affine &trans) { - for (std::vector::iterator i = descr_cmd.begin(); i != descr_cmd.end(); i++) { + for (std::vector::iterator i = descr_cmd.begin(); i != descr_cmd.end(); ++i) { (*i)->transform(trans); } } diff --git a/src/livarot/PathConversion.cpp b/src/livarot/PathConversion.cpp index ed5f03f80..8d36dca4c 100644 --- a/src/livarot/PathConversion.cpp +++ b/src/livarot/PathConversion.cpp @@ -119,15 +119,12 @@ void Path::ConvertWithBackData(double treshhold) if ( nbInterm >= 1 ) { Geom::Point bx = curX; - Geom::Point cx = curX; - Geom::Point dx = curX; + Geom::Point dx = nData->p; + Geom::Point cx = 2 * bx - dx; - dx = nData->p; ip++; nData = dynamic_cast(descr_cmd[ip]); - cx = 2 * bx - dx; - for (int k = 0; k < nbInterm - 1; k++) { bx = cx; cx = dx; @@ -323,15 +320,12 @@ void Path::Convert(double treshhold) RecBezierTo(midX, curX, nextX, treshhold, 8); } else if ( nbInterm > 1 ) { Geom::Point bx = curX; - Geom::Point cx = curX; - Geom::Point dx = curX; + Geom::Point dx = nData->p; + Geom::Point cx = 2 * bx - dx; - dx = nData->p; ip++; nData = dynamic_cast(descr_cmd[ip]); - cx = 2 * bx - dx; - for (int k = 0; k < nbInterm - 1; k++) { bx = cx; cx = dx; @@ -565,15 +559,12 @@ void Path::ConvertEvenLines(double treshhold) RecBezierTo(midX, curX, nextX, treshhold, 8, 4 * treshhold); } else if ( nbInterm > 1 ) { Geom::Point bx = curX; - Geom::Point cx = curX; - Geom::Point dx = curX; + Geom::Point dx = nData->p; + Geom::Point cx = 2 * bx - dx; - dx = nData->p; ip++; nData = dynamic_cast(descr_cmd[ip]); - cx = 2 * bx - dx; - for (int k = 0; k < nbInterm - 1; k++) { bx = cx; cx = dx; diff --git a/src/livarot/PathCutting.cpp b/src/livarot/PathCutting.cpp index 848d8daa8..3ce907bf3 100644 --- a/src/livarot/PathCutting.cpp +++ b/src/livarot/PathCutting.cpp @@ -482,7 +482,7 @@ double Path::Length() Geom::Point lastP = pts[0].p; double len = 0; - for (std::vector::const_iterator i = pts.begin(); i != pts.end(); i++) { + for (std::vector::const_iterator i = pts.begin(); i != pts.end(); ++i) { if ( i->isMoveTo != polyline_moveto ) { len += Geom::L2(i->p - lastP); @@ -505,7 +505,7 @@ double Path::Surface() Geom::Point lastP = lastM; double surf = 0; - for (std::vector::const_iterator i = pts.begin(); i != pts.end(); i++) { + for (std::vector::const_iterator i = pts.begin(); i != pts.end(); ++i) { if ( i->isMoveTo == polyline_moveto ) { surf += Geom::cross(lastM - lastP, lastM); @@ -900,7 +900,7 @@ Path::cut_position* Path::CurvilignToPosition(int nbCv, double *cvAbs, int &nbCu Geom::Point lastM = pts[0].p; Geom::Point lastP = lastM; - for (std::vector::const_iterator i = pts.begin(); i != pts.end(); i++) { + for (std::vector::const_iterator i = pts.begin(); i != pts.end(); ++i) { if ( i->isMoveTo == polyline_moveto ) { diff --git a/src/livarot/PathOutline.cpp b/src/livarot/PathOutline.cpp index 7f8853e31..3b5ce79f9 100644 --- a/src/livarot/PathOutline.cpp +++ b/src/livarot/PathOutline.cpp @@ -709,9 +709,8 @@ void Path::SubContractOutline(int off, int num_pd, } else if (nbInterm > 1) { Geom::Point bx=curX; Geom::Point cx=curX; - Geom::Point dx=curX; + Geom::Point dx=nData->p; - dx = nData->p; TangentOnBezAt (0.0, curX, *nData, *nBData, false, stPos, stTgt, stTle, stRad); stNor=stTgt.cw(); diff --git a/src/livarot/ShapeRaster.cpp b/src/livarot/ShapeRaster.cpp index b7b087fba..4c5bdc1ac 100644 --- a/src/livarot/ShapeRaster.cpp +++ b/src/livarot/ShapeRaster.cpp @@ -1131,8 +1131,7 @@ void Shape::Scan(float &pos, int &curP, float to, AlphaLigne *line, bool exact, int curPt = curP; while ( curPt < numberOfPoints() && getPoint(curPt).x[1] <= to ) { - int nPt = -1; - nPt = curPt++; + int nPt = curPt++; int nbUp; int nbDn; @@ -1435,8 +1434,7 @@ void Shape::QuickScan(float &pos, int &curP, float to, FillRule directed, BitLig int curPt = curP; while ( curPt < numberOfPoints() && getPoint(curPt).x[1] <= to ) { - int nPt = -1; - nPt = curPt++; + int nPt = curPt++; int nbUp; int nbDn; diff --git a/src/livarot/ShapeSweep.cpp b/src/livarot/ShapeSweep.cpp index c2fd83e31..ff58b4a71 100644 --- a/src/livarot/ShapeSweep.cpp +++ b/src/livarot/ShapeSweep.cpp @@ -252,8 +252,7 @@ Shape::ConvertToShape (Shape * a, FillRule directed, bool invert) Geom::Point rPtX; rPtX[0]= Round (ptX[0]); rPtX[1]= Round (ptX[1]); - int lastPointNo = -1; - lastPointNo = AddPoint (rPtX); + int lastPointNo = AddPoint (rPtX); pData[lastPointNo].rx = rPtX; if (rPtX[1] > lastChange) @@ -1053,8 +1052,7 @@ Shape::Booleen (Shape * a, Shape * b, BooleanOp mod,int cutPathID) Geom::Point rPtX; rPtX[0]= Round (ptX[0]); rPtX[1]= Round (ptX[1]); - int lastPointNo = -1; - lastPointNo = AddPoint (rPtX); + int lastPointNo = AddPoint (rPtX); pData[lastPointNo].rx = rPtX; if (rPtX[1] > lastChange) -- cgit v1.2.3 From 04eec6c234200e1978bd779613cc463929e50d19 Mon Sep 17 00:00:00 2001 From: "Johan B. C. Engelen" Date: Sat, 3 Aug 2013 23:09:02 +0200 Subject: rename variable for clarity (bzr r12462) --- src/ui/dialog/livepatheffect-editor.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/ui/dialog/livepatheffect-editor.cpp b/src/ui/dialog/livepatheffect-editor.cpp index e6bb9b43d..6c6f3a582 100644 --- a/src/ui/dialog/livepatheffect-editor.cpp +++ b/src/ui/dialog/livepatheffect-editor.cpp @@ -448,9 +448,9 @@ LivePathEffectEditor::onAdd() // run sp_selection_clone_original_path_lpe sp_selection_clone_original_path_lpe(current_desktop); - item = sel->singleItem(); - item->getRepr()->setAttribute("id", id); - item->getRepr()->setAttribute("transform", transform); + SPItem *new_item = sel->singleItem(); + new_item->getRepr()->setAttribute("id", id); + new_item->getRepr()->setAttribute("transform", transform); g_free(id); g_free(transform); -- cgit v1.2.3 From 013e92537296f6ba2434e29a96d18eeb353d9560 Mon Sep 17 00:00:00 2001 From: "Johan B. C. Engelen" Date: Sat, 3 Aug 2013 23:30:12 +0200 Subject: reduce scope of variables (bzr r12463) --- src/ege-select-one-action.cpp | 3 +-- src/lpe-tool-context.cpp | 18 ++++++++---------- src/marker.cpp | 6 ++---- src/measure-context.cpp | 1 - src/object-snapper.cpp | 3 +-- src/rdf.cpp | 3 +-- 6 files changed, 13 insertions(+), 21 deletions(-) diff --git a/src/ege-select-one-action.cpp b/src/ege-select-one-action.cpp index 871b961bd..184d1afb4 100644 --- a/src/ege-select-one-action.cpp +++ b/src/ege-select-one-action.cpp @@ -640,7 +640,6 @@ GtkWidget* create_tool_item( GtkAction* action ) #endif GtkRadioAction* ract = 0; - GtkWidget* sub = 0; GSList* group = 0; GtkTreeIter iter; gboolean valid = FALSE; @@ -727,7 +726,7 @@ GtkWidget* create_tool_item( GtkAction* action ) } g_signal_connect( G_OBJECT(ract), "changed", G_CALLBACK( proxy_action_chagned_cb ), act ); - sub = gtk_action_create_tool_item( GTK_ACTION(ract) ); + GtkWidget* sub = gtk_action_create_tool_item( GTK_ACTION(ract) ); gtk_activatable_set_related_action( GTK_ACTIVATABLE (sub), GTK_ACTION(ract) ); gtk_tool_item_set_tooltip_text( GTK_TOOL_ITEM(sub), tip ); diff --git a/src/lpe-tool-context.cpp b/src/lpe-tool-context.cpp index feabfa02d..e7393b97b 100644 --- a/src/lpe-tool-context.cpp +++ b/src/lpe-tool-context.cpp @@ -482,21 +482,19 @@ void lpetool_update_measuring_items(SPLPEToolContext *lc) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - SPPath *path; - SPCurve *curve; - double lengthval; - gchar *arc_length; - std::map::iterator i; - for (i = lc->measuring_items->begin(); i != lc->measuring_items->end(); ++i) { - path = i->first; - curve = SP_SHAPE(path)->getCurve(); + for ( std::map::iterator i = lc->measuring_items->begin(); + i != lc->measuring_items->end(); + ++i ) + { + SPPath *path = i->first; + SPCurve *curve = SP_SHAPE(path)->getCurve(); Geom::Piecewise > pwd2 = Geom::paths_to_pw(curve->get_pathvector()); SPUnitId unitid = static_cast(prefs->getInt("/tools/lpetool/unitid", SP_UNIT_PX)); SPUnit unit = sp_unit_get_by_id(unitid); - lengthval = Geom::length(pwd2); + double lengthval = Geom::length(pwd2); gboolean success; success = sp_convert_distance(&lengthval, &sp_unit_get_by_id(SP_UNIT_PX), &unit); - arc_length = g_strdup_printf("%.2f %s", lengthval, success ? sp_unit_get_abbreviation(&unit) : "px"); + gchar *arc_length = g_strdup_printf("%.2f %s", lengthval, success ? sp_unit_get_abbreviation(&unit) : "px"); sp_canvastext_set_text (SP_CANVASTEXT(i->second), arc_length); set_pos_and_anchor(SP_CANVASTEXT(i->second), pwd2, 0.5, 10); // TODO: must we free arc_length? diff --git a/src/marker.cpp b/src/marker.cpp index b3b493b00..057fcbfbd 100644 --- a/src/marker.cpp +++ b/src/marker.cpp @@ -536,7 +536,6 @@ void sp_marker_show_dimension (SPMarker *marker, unsigned int key, unsigned int size) { SPMarkerView *view; - unsigned int i; for (view = marker->views; view != NULL; view = view->next) { if (view->key == key) break; @@ -551,7 +550,7 @@ sp_marker_show_dimension (SPMarker *marker, unsigned int key, unsigned int size) if (!view) { view = new SPMarkerView(); view->items.clear(); - for (i = 0; i < size; i++) { + for (unsigned int i = 0; i < size; i++) { view->items.push_back(NULL); } view->next = marker->views; @@ -645,7 +644,6 @@ sp_marker_hide (SPMarker *marker, unsigned int key) static void sp_marker_view_remove (SPMarker *marker, SPMarkerView *view, unsigned int destroyitems) { - unsigned int i; if (view == marker->views) { marker->views = view->next; } else { @@ -654,7 +652,7 @@ sp_marker_view_remove (SPMarker *marker, SPMarkerView *view, unsigned int destro v->next = view->next; } if (destroyitems) { - for (i = 0; i < view->items.size(); i++) { + for (unsigned int i = 0; i < view->items.size(); i++) { /* We have to walk through the whole array because there may be hidden items */ delete view->items[i]; } diff --git a/src/measure-context.cpp b/src/measure-context.cpp index dc23cf5c6..771125b7f 100644 --- a/src/measure-context.cpp +++ b/src/measure-context.cpp @@ -494,7 +494,6 @@ static gint sp_measure_context_root_handler(SPEventContext *event_context, GdkEv } curve->transform(item->i2doc_affine()); - Geom::PathVector pathv = curve->get_pathvector(); calculate_intersections(desktop, item, lineseg, curve, intersections); diff --git a/src/object-snapper.cpp b/src/object-snapper.cpp index e6f6d87db..77ba3040f 100644 --- a/src/object-snapper.cpp +++ b/src/object-snapper.cpp @@ -106,12 +106,11 @@ void Inkscape::ObjectSnapper::_findCandidates(SPObject* parent, if (it == NULL || i == it->end()) { SPItem *item = SP_ITEM(o); if (item) { - SPObject *obj = NULL; if (!clip_or_mask) { // cannot clip or mask more than once // The current item is not a clipping path or a mask, but might // still be the subject of clipping or masking itself ; if so, then // we should also consider that path or mask for snapping to - obj = SP_OBJECT(item->clip_ref ? item->clip_ref->getObject() : NULL); + SPObject *obj = SP_OBJECT(item->clip_ref ? item->clip_ref->getObject() : NULL); if (obj && _snapmanager->snapprefs.isTargetSnappable(SNAPTARGET_PATH_CLIP)) { _findCandidates(obj, it, false, bbox_to_snap, true, item->i2doc_affine()); } diff --git a/src/rdf.cpp b/src/rdf.cpp index a6842c31d..16344e520 100644 --- a/src/rdf.cpp +++ b/src/rdf.cpp @@ -563,7 +563,6 @@ unsigned int RDFImpl::setReprText( Inkscape::XML::Node * repr, int i; Inkscape::XML::Node * temp=NULL; - Inkscape::XML::Node * child=NULL; Inkscape::XML::Node * parent=repr; Inkscape::XML::Document * xmldoc = parent->document(); @@ -669,7 +668,7 @@ unsigned int RDFImpl::setReprText( Inkscape::XML::Node * repr, parent->appendChild(temp); Inkscape::GC::release(temp); - child = xmldoc->createTextNode( g_strstrip(str) ); + Inkscape::XML::Node * child = xmldoc->createTextNode( g_strstrip(str) ); g_return_val_if_fail (child != NULL, 0); temp->appendChild(child); -- cgit v1.2.3 From 6777466eda0b6952746a7bfb443d5e773857185a Mon Sep 17 00:00:00 2001 From: "Johan B. C. Engelen" Date: Sat, 3 Aug 2013 23:39:12 +0200 Subject: reduce variable scope (bzr r12464) --- src/select-context.cpp | 14 ++++++-------- src/selection-describer.cpp | 3 +-- src/selection.cpp | 6 +++--- src/shape-editor.cpp | 4 +--- 4 files changed, 11 insertions(+), 16 deletions(-) diff --git a/src/select-context.cpp b/src/select-context.cpp index b4b01bf15..35a9bd172 100644 --- a/src/select-context.cpp +++ b/src/select-context.cpp @@ -464,8 +464,6 @@ sp_select_context_cycle_through_items(SPSelectContext *sc, Inkscape::Selection * static gint sp_select_context_root_handler(SPEventContext *event_context, GdkEvent *event) { - SPItem *item = NULL; - SPItem *item_at_point = NULL, *group_at_point = NULL, *item_in_group = NULL; gint ret = FALSE; SPDesktop *desktop = event_context->desktop; @@ -578,14 +576,14 @@ sp_select_context_root_handler(SPEventContext *event_context, GdkEvent *event) // and also when we started within tolerance, but trespassed tolerance outside of item Inkscape::Rubberband::get(desktop)->stop(); SP_EVENT_CONTEXT(sc)->defaultMessageContext()->clear(); - item_at_point = desktop->getItemAtPoint(Geom::Point(event->button.x, event->button.y), FALSE); + SPItem *item_at_point = desktop->getItemAtPoint(Geom::Point(event->button.x, event->button.y), FALSE); if (!item_at_point) // if no item at this point, try at the click point (bug 1012200) item_at_point = desktop->getItemAtPoint(Geom::Point(xp, yp), FALSE); if (item_at_point || sc->moved || sc->button_press_alt) { // drag only if starting from an item, or if something is already grabbed, or if alt-dragging if (!sc->moved) { - item_in_group = desktop->getItemAtPoint(Geom::Point(event->button.x, event->button.y), TRUE); - group_at_point = desktop->getGroupAtPoint(Geom::Point(event->button.x, event->button.y)); + SPItem *item_in_group = desktop->getItemAtPoint(Geom::Point(event->button.x, event->button.y), TRUE); + SPItem *group_at_point = desktop->getGroupAtPoint(Geom::Point(event->button.x, event->button.y)); if (SP_IS_LAYER(selection->single())) group_at_point = SP_GROUP(selection->single()); @@ -712,6 +710,7 @@ sp_select_context_root_handler(SPEventContext *event_context, GdkEvent *event) sc->button_press_shift = false; + SPItem *item = NULL; if (sc->button_press_ctrl) { // go into groups, honoring Alt item = sp_event_context_find_item (desktop, @@ -730,7 +729,7 @@ sp_select_context_root_handler(SPEventContext *event_context, GdkEvent *event) } else if ((sc->button_press_ctrl || sc->button_press_alt) && !rb_escaped && !drag_escaped) { // ctrl+click, alt+click - item = sp_event_context_find_item (desktop, + SPItem *item = sp_event_context_find_item (desktop, Geom::Point(event->button.x, event->button.y), sc->button_press_alt, sc->button_press_ctrl); sc->button_press_ctrl = FALSE; @@ -841,9 +840,8 @@ sp_select_context_root_handler(SPEventContext *event_context, GdkEvent *event) // ... and rebuild them with the new items. sc->cycling_items_cmp = g_list_copy(sc->cycling_items); - SPItem *item; for(GList *l = sc->cycling_items; l != NULL; l = l->next) { - item = SP_ITEM(l->data); + SPItem *item = SP_ITEM(l->data); arenaitem = item->get_arenaitem(desktop->dkey); arenaitem->setOpacity(0.3); if (selection->includes(item)) { diff --git a/src/selection-describer.cpp b/src/selection-describer.cpp index 6ed8ca584..b5704bb76 100644 --- a/src/selection-describer.cpp +++ b/src/selection-describer.cpp @@ -100,9 +100,8 @@ static GSList *collect_terms (GSList *items) static int count_filtered (GSList *items) { int count=0; - SPItem *item=NULL; for (GSList *i = items; i != NULL; i = i->next) { - item = SP_ITEM(i->data); + SPItem *item = SP_ITEM(i->data); count += item->ifilt(); } return count; diff --git a/src/selection.cpp b/src/selection.cpp index 784219c88..1335c5fca 100644 --- a/src/selection.cpp +++ b/src/selection.cpp @@ -329,11 +329,11 @@ std::list const Selection::perspList() { std::list const Selection::box3DList(Persp3D *persp) { std::list boxes; if (persp) { - SPBox3D *box; for (std::list::iterator i = _3dboxes.begin(); i != _3dboxes.end(); ++i) { - box = *i; - if (persp == box3d_get_perspective(box)) + SPBox3D *box = *i; + if (persp == box3d_get_perspective(box)) { boxes.push_back(box); + } } } else { boxes = _3dboxes; diff --git a/src/shape-editor.cpp b/src/shape-editor.cpp index f2339770c..71018d89b 100644 --- a/src/shape-editor.cpp +++ b/src/shape-editor.cpp @@ -46,15 +46,13 @@ ShapeEditor::~ShapeEditor() { } void ShapeEditor::unset_item(SubType type, bool keep_knotholder) { - Inkscape::XML::Node *old_repr = NULL; - switch (type) { case SH_NODEPATH: // defunct break; case SH_KNOTHOLDER: if (this->knotholder) { - old_repr = this->knotholder->repr; + Inkscape::XML::Node *old_repr = this->knotholder->repr; if (old_repr && old_repr == knotholder_listener_attached_for) { sp_repr_remove_listener_by_data(old_repr, this); Inkscape::GC::release(old_repr); -- cgit v1.2.3 From bd17bfe0fa865957751d954a91125ce40f8add03 Mon Sep 17 00:00:00 2001 From: "Johan B. C. Engelen" Date: Sat, 3 Aug 2013 23:39:35 +0200 Subject: catch exception by reference (bzr r12465) --- src/sp-lpe-item.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/sp-lpe-item.cpp b/src/sp-lpe-item.cpp index e8629ff70..d4619e794 100644 --- a/src/sp-lpe-item.cpp +++ b/src/sp-lpe-item.cpp @@ -185,7 +185,7 @@ static void sp_lpe_item_set(SPObject *object, unsigned int key, gchar const *val Inkscape::LivePathEffect::LPEObjectReference *path_effect_ref = new Inkscape::LivePathEffect::LPEObjectReference(object); try { path_effect_ref->link(href.c_str()); - } catch (Inkscape::BadURIException e) { + } catch (Inkscape::BadURIException &e) { g_warning("BadURIException when trying to find LPE: %s", e.what()); path_effect_ref->unlink(); delete path_effect_ref; -- cgit v1.2.3 From 3d59db609dcae34444b45348c57ac203886576b6 Mon Sep 17 00:00:00 2001 From: Slagvi Public Date: Sun, 4 Aug 2013 14:37:48 +0200 Subject: Removing template data from XML tree added (bzr r12379.2.18) --- src/extension/dbus/document-interface.cpp | 2 +- src/file.cpp | 18 ++++++++++++++---- src/file.h | 10 ++++++++-- src/help.cpp | 2 +- src/ui/dialog/template-widget.cpp | 2 +- 5 files changed, 25 insertions(+), 9 deletions(-) diff --git a/src/extension/dbus/document-interface.cpp b/src/extension/dbus/document-interface.cpp index 56d1dfdbd..85c92b098 100644 --- a/src/extension/dbus/document-interface.cpp +++ b/src/extension/dbus/document-interface.cpp @@ -918,7 +918,7 @@ gboolean document_interface_load(DocumentInterface *object, { desktop_ensure_active(object->desk); const Glib::ustring file(filename); - sp_file_open(file, NULL, TRUE, TRUE); + sp_file_open(file, NULL); if (object->updates) { Inkscape::DocumentUndo::done(sp_desktop_document(object->desk), SP_VERB_FILE_OPEN, "Opened File"); } diff --git a/src/file.cpp b/src/file.cpp index 9d3c513ab..ee205b035 100644 --- a/src/file.cpp +++ b/src/file.cpp @@ -227,7 +227,7 @@ sp_file_exit() */ bool sp_file_open(const Glib::ustring &uri, Inkscape::Extension::Extension *key, - bool add_to_recent, bool replace_empty) + int flags) { SPDesktop *desktop = SP_ACTIVE_DESKTOP; if (desktop) { @@ -252,9 +252,19 @@ bool sp_file_open(const Glib::ustring &uri, } if (doc) { + if (flags & IS_FROM_TEMPLATE){ + Inkscape::XML::Node *myRoot = doc->getReprRoot(); + Inkscape::XML::Node *nodeToRemove = sp_repr_lookup_name(myRoot, "inkscape:_templateinfo"); + if (nodeToRemove != NULL){ + sp_repr_unparent(nodeToRemove); + delete nodeToRemove; + DocumentUndo::clearUndo(doc); + } + } + SPDocument *existing = desktop ? sp_desktop_document(desktop) : NULL; - if (existing && existing->virgin && replace_empty) { + if (existing && existing->virgin && (flags & REPLACE_EMPTY)) { // If the current desktop is empty, open the document there doc->ensureUpToDate(); // TODO this will trigger broken link warnings, etc. desktop->change_document(doc); @@ -268,14 +278,14 @@ bool sp_file_open(const Glib::ustring &uri, doc->virgin = FALSE; - // everyone who cares now has a reference, get rid of ours + // everyone who cares now has a reference, get rid of our`s doc->doUnref(); // resize the window to match the document properties sp_namedview_window_from_document(desktop); sp_namedview_update_layers_from_document(desktop); - if (add_to_recent) { + if (flags & ADD_TO_RECENT) { sp_file_add_recent( doc->getURI() ); } diff --git a/src/file.h b/src/file.h index fe8ad9af3..e94a3c598 100644 --- a/src/file.h +++ b/src/file.h @@ -62,11 +62,17 @@ void sp_file_exit (void); /** * Opens a new file and window from the given URI */ +enum SPFileOpenFlags +{ + ADD_TO_RECENT = 1, + REPLACE_EMPTY = 2, + IS_FROM_TEMPLATE = 4 +}; + bool sp_file_open( const Glib::ustring &uri, Inkscape::Extension::Extension *key, - bool add_to_recent = true, - bool replace_empty = true + int flags = ADD_TO_RECENT | REPLACE_EMPTY ); /** diff --git a/src/help.cpp b/src/help.cpp index 02a1930f4..f14fdf487 100644 --- a/src/help.cpp +++ b/src/help.cpp @@ -34,7 +34,7 @@ sp_help_open_tutorial(GtkMenuItem *, gpointer data) { gchar const *name = static_cast(data); gchar *c = g_build_filename(INKSCAPE_TUTORIALSDIR, name, NULL); - sp_file_open(c, NULL, false, false); + sp_file_open(c, NULL, 0); g_free(c); } diff --git a/src/ui/dialog/template-widget.cpp b/src/ui/dialog/template-widget.cpp index 4b64c1c73..66121a73a 100644 --- a/src/ui/dialog/template-widget.cpp +++ b/src/ui/dialog/template-widget.cpp @@ -62,7 +62,7 @@ void TemplateWidget::create() if (_current_template.is_procedural) {} else { - sp_file_open(_current_template.path, NULL); + sp_file_open(_current_template.path, NULL, REPLACE_EMPTY | ADD_TO_RECENT | IS_FROM_TEMPLATE); } } -- cgit v1.2.3 From ef3c72e61987caa06a105c70cec83089892581ed Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sun, 4 Aug 2013 15:09:03 +0200 Subject: Cleaned up once more. (bzr r11608.1.118) --- src/draw-context.cpp | 131 +++----- src/draw-context.h | 1 + src/dropper-context.h | 9 +- src/lpe-tool-context.cpp | 112 +++---- src/lpe-tool-context.h | 5 +- src/pen-context.cpp | 155 ++++------ src/pen-context.h | 5 +- src/pencil-context.cpp | 54 +--- src/pencil-context.h | 5 +- src/text-context.cpp | 791 ++++++++++++++++++++++------------------------- 10 files changed, 552 insertions(+), 716 deletions(-) diff --git a/src/draw-context.cpp b/src/draw-context.cpp index fed757c0e..c33bb780c 100644 --- a/src/draw-context.cpp +++ b/src/draw-context.cpp @@ -67,134 +67,108 @@ static void spdc_reset_white(SPDrawContext *dc); static void spdc_free_colors(SPDrawContext *dc); SPDrawContext::SPDrawContext() : SPEventContext() { - SPDrawContext* dc = this; + this->selection = 0; + this->grab = 0; + this->anchor_statusbar = false; - dc->selection = 0; - dc->grab = 0; - dc->anchor_statusbar = false; + this->attach = FALSE; - dc->attach = FALSE; + this->red_color = 0xff00007f; + this->blue_color = 0x0000ff7f; + this->green_color = 0x00ff007f; + this->red_curve_is_valid = false; - dc->red_color = 0xff00007f; - dc->blue_color = 0x0000ff7f; - dc->green_color = 0x00ff007f; - dc->red_curve_is_valid = false; + this->red_bpath = NULL; + this->red_curve = NULL; - dc->red_bpath = NULL; - dc->red_curve = NULL; + this->blue_bpath = NULL; + this->blue_curve = NULL; - dc->blue_bpath = NULL; - dc->blue_curve = NULL; + this->green_bpaths = NULL; + this->green_curve = NULL; + this->green_anchor = NULL; + this->green_closed = false; - dc->green_bpaths = NULL; - dc->green_curve = NULL; - dc->green_anchor = NULL; - dc->green_closed = false; + this->white_item = NULL; + this->white_curves = NULL; + this->white_anchors = NULL; - dc->white_item = NULL; - dc->white_curves = NULL; - dc->white_anchors = NULL; + this->sa = NULL; + this->ea = NULL; - dc->sa = NULL; - dc->ea = NULL; - - dc->waiting_LPE_type = Inkscape::LivePathEffect::INVALID_LPE; - - //new (&dc->sel_changed_connection) sigc::connection(); - //new (&dc->sel_modified_connection) sigc::connection(); + this->waiting_LPE_type = Inkscape::LivePathEffect::INVALID_LPE; } SPDrawContext::~SPDrawContext() { - SPDrawContext *dc = SP_DRAW_CONTEXT(this); - - //dc->sel_changed_connection.~connection(); - //dc->sel_modified_connection.~connection(); - - if (dc->grab) { - sp_canvas_item_ungrab(dc->grab, GDK_CURRENT_TIME); - dc->grab = NULL; + if (this->grab) { + sp_canvas_item_ungrab(this->grab, GDK_CURRENT_TIME); + this->grab = NULL; } - if (dc->selection) { - dc->selection = NULL; + if (this->selection) { + this->selection = NULL; } - spdc_free_colors(dc); - - //G_OBJECT_CLASS(sp_draw_context_parent_class)->dispose(object); + spdc_free_colors(this); } void SPDrawContext::setup() { - SPEventContext* ec = this; - - SPDrawContext *dc = SP_DRAW_CONTEXT(ec); - SPDesktop *dt = ec->desktop; - -// if ((SP_EVENT_CONTEXT_CLASS(sp_draw_context_parent_class))->setup) { -// (SP_EVENT_CONTEXT_CLASS(sp_draw_context_parent_class))->setup(ec); -// } SPEventContext::setup(); - dc->selection = sp_desktop_selection(dt); + this->selection = sp_desktop_selection(desktop); // Connect signals to track selection changes - dc->sel_changed_connection = dc->selection->connectChanged( - sigc::bind(sigc::ptr_fun(&spdc_selection_changed), dc) + this->sel_changed_connection = this->selection->connectChanged( + sigc::bind(sigc::ptr_fun(&spdc_selection_changed), this) ); - dc->sel_modified_connection = dc->selection->connectModified( - sigc::bind(sigc::ptr_fun(&spdc_selection_modified), dc) + this->sel_modified_connection = this->selection->connectModified( + sigc::bind(sigc::ptr_fun(&spdc_selection_modified), this) ); // Create red bpath - dc->red_bpath = sp_canvas_bpath_new(sp_desktop_sketch(ec->desktop), NULL); - sp_canvas_bpath_set_stroke(SP_CANVAS_BPATH(dc->red_bpath), dc->red_color, 1.0, SP_STROKE_LINEJOIN_MITER, SP_STROKE_LINECAP_BUTT); + this->red_bpath = sp_canvas_bpath_new(sp_desktop_sketch(this->desktop), NULL); + sp_canvas_bpath_set_stroke(SP_CANVAS_BPATH(this->red_bpath), this->red_color, 1.0, SP_STROKE_LINEJOIN_MITER, SP_STROKE_LINECAP_BUTT); // Create red curve - dc->red_curve = new SPCurve(); + this->red_curve = new SPCurve(); // Create blue bpath - dc->blue_bpath = sp_canvas_bpath_new(sp_desktop_sketch(ec->desktop), NULL); - sp_canvas_bpath_set_stroke(SP_CANVAS_BPATH(dc->blue_bpath), dc->blue_color, 1.0, SP_STROKE_LINEJOIN_MITER, SP_STROKE_LINECAP_BUTT); + this->blue_bpath = sp_canvas_bpath_new(sp_desktop_sketch(this->desktop), NULL); + sp_canvas_bpath_set_stroke(SP_CANVAS_BPATH(this->blue_bpath), this->blue_color, 1.0, SP_STROKE_LINEJOIN_MITER, SP_STROKE_LINECAP_BUTT); // Create blue curve - dc->blue_curve = new SPCurve(); + this->blue_curve = new SPCurve(); // Create green curve - dc->green_curve = new SPCurve(); + this->green_curve = new SPCurve(); // No green anchor by default - dc->green_anchor = NULL; - dc->green_closed = FALSE; + this->green_anchor = NULL; + this->green_closed = FALSE; - dc->attach = TRUE; - spdc_attach_selection(dc, dc->selection); + this->attach = TRUE; + spdc_attach_selection(this, this->selection); } void SPDrawContext::finish() { - SPEventContext* ec = this; + this->sel_changed_connection.disconnect(); + this->sel_modified_connection.disconnect(); - SPDrawContext *dc = SP_DRAW_CONTEXT(ec); - - dc->sel_changed_connection.disconnect(); - dc->sel_modified_connection.disconnect(); - - if (dc->grab) { - sp_canvas_item_ungrab(dc->grab, GDK_CURRENT_TIME); + if (this->grab) { + sp_canvas_item_ungrab(this->grab, GDK_CURRENT_TIME); } - if (dc->selection) { - dc->selection = NULL; + if (this->selection) { + this->selection = NULL; } - spdc_free_colors(dc); + spdc_free_colors(this); } void SPDrawContext::set(const Inkscape::Preferences::Entry& value) { } bool SPDrawContext::root_handler(GdkEvent* event) { - SPEventContext* ec = this; - gint ret = FALSE; switch (event->type) { @@ -218,9 +192,6 @@ bool SPDrawContext::root_handler(GdkEvent* event) { } if (!ret) { -// if ((SP_EVENT_CONTEXT_CLASS(sp_draw_context_parent_class))->root_handler) { -// ret = (SP_EVENT_CONTEXT_CLASS(sp_draw_context_parent_class))->root_handler(ec, event); -// } ret = SPEventContext::root_handler(event); } diff --git a/src/draw-context.h b/src/draw-context.h index 96f38ea27..be3d08637 100644 --- a/src/draw-context.h +++ b/src/draw-context.h @@ -80,6 +80,7 @@ public: bool anchor_statusbar; +protected: virtual void setup(); virtual void finish(); virtual void set(const Inkscape::Preferences::Entry& val); diff --git a/src/dropper-context.h b/src/dropper-context.h index a6ddf7305..4007c391f 100644 --- a/src/dropper-context.h +++ b/src/dropper-context.h @@ -29,14 +29,15 @@ public: static const std::string prefsPath; - virtual void setup(); - virtual void finish(); - virtual bool root_handler(GdkEvent* event); - virtual const std::string& getPrefsPath(); guint32 get_color(); +protected: + virtual void setup(); + virtual void finish(); + virtual bool root_handler(GdkEvent* event); + private: double R; double G; diff --git a/src/lpe-tool-context.cpp b/src/lpe-tool-context.cpp index a1c812049..0ae5058d7 100644 --- a/src/lpe-tool-context.cpp +++ b/src/lpe-tool-context.cpp @@ -75,75 +75,61 @@ const std::string& SPLPEToolContext::getPrefsPath() { const std::string SPLPEToolContext::prefsPath = "/tools/lpetool"; SPLPEToolContext::SPLPEToolContext() : SPPenContext() { - SPLPEToolContext* lc = this; + this->mode = Inkscape::LivePathEffect::BEND_PATH; + this->shape_editor = 0; - lc->mode = Inkscape::LivePathEffect::BEND_PATH; - lc->shape_editor = 0; + this->cursor_shape = cursor_crosshairs_xpm; + this->hot_x = 7; + this->hot_y = 7; - lc->cursor_shape = cursor_crosshairs_xpm; - lc->hot_x = 7; - lc->hot_y = 7; - - lc->canvas_bbox = NULL; - lc->measuring_items = new std::map; - - //new (&lc->sel_changed_connection) sigc::connection(); + this->canvas_bbox = NULL; + this->measuring_items = new std::map; } SPLPEToolContext::~SPLPEToolContext() { - SPLPEToolContext *lc = SP_LPETOOL_CONTEXT(this); - delete lc->shape_editor; + delete this->shape_editor; + this->shape_editor = NULL; - if (lc->canvas_bbox) { - sp_canvas_item_destroy(SP_CANVAS_ITEM(lc->canvas_bbox)); - lc->canvas_bbox = NULL; + if (this->canvas_bbox) { + sp_canvas_item_destroy(SP_CANVAS_ITEM(this->canvas_bbox)); + this->canvas_bbox = NULL; } - lpetool_delete_measuring_items(lc); - delete lc->measuring_items; - lc->measuring_items = NULL; + lpetool_delete_measuring_items(this); + delete this->measuring_items; + this->measuring_items = NULL; - lc->sel_changed_connection.disconnect(); - //lc->sel_changed_connection.~connection(); - - - //G_OBJECT_CLASS(sp_lpetool_context_parent_class)->dispose(object); + this->sel_changed_connection.disconnect(); } void SPLPEToolContext::setup() { - SPEventContext* ec = this; - - SPLPEToolContext *lc = SP_LPETOOL_CONTEXT(ec); - -// if (((SPEventContextClass *) sp_lpetool_context_parent_class)->setup) -// ((SPEventContextClass *) sp_lpetool_context_parent_class)->setup(ec); SPPenContext::setup(); - Inkscape::Selection *selection = sp_desktop_selection (ec->desktop); + Inkscape::Selection *selection = sp_desktop_selection (this->desktop); SPItem *item = selection->singleItem(); - lc->sel_changed_connection.disconnect(); - lc->sel_changed_connection = - selection->connectChanged(sigc::bind(sigc::ptr_fun(&sp_lpetool_context_selection_changed), (gpointer)lc)); + this->sel_changed_connection.disconnect(); + this->sel_changed_connection = + selection->connectChanged(sigc::bind(sigc::ptr_fun(&sp_lpetool_context_selection_changed), (gpointer)this)); - lc->shape_editor = new ShapeEditor(ec->desktop); + this->shape_editor = new ShapeEditor(this->desktop); - lpetool_context_switch_mode(lc, Inkscape::LivePathEffect::INVALID_LPE); - lpetool_context_reset_limiting_bbox(lc); - lpetool_create_measuring_items(lc); + lpetool_context_switch_mode(this, Inkscape::LivePathEffect::INVALID_LPE); + lpetool_context_reset_limiting_bbox(this); + lpetool_create_measuring_items(this); // TODO temp force: - ec->enableSelectionCue(); + this->enableSelectionCue(); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); if (item) { - lc->shape_editor->set_item(item, SH_NODEPATH); - lc->shape_editor->set_item(item, SH_KNOTHOLDER); + this->shape_editor->set_item(item, SH_NODEPATH); + this->shape_editor->set_item(item, SH_KNOTHOLDER); } if (prefs->getBool("/tools/lpetool/selcue")) { - ec->enableSelectionCue(); + this->enableSelectionCue(); } } @@ -161,31 +147,20 @@ void sp_lpetool_context_selection_changed(Inkscape::Selection *selection, gpoint } void SPLPEToolContext::set(const Inkscape::Preferences::Entry& val) { - SPEventContext* ec = this; - if (val.getEntryName() == "mode") { Inkscape::Preferences::get()->setString("/tools/geometric/mode", "drag"); - SP_PEN_CONTEXT(ec)->mode = SPPenContext::MODE_DRAG; - } - - /* - //pass on up to parent class to handle common attributes. - if ( sp_lpetool_context_parent_class->set ) { - sp_lpetool_context_parent_class->set(ec, key, val); + SP_PEN_CONTEXT(this)->mode = SPPenContext::MODE_DRAG; } - */ } bool SPLPEToolContext::item_handler(SPItem* item, GdkEvent* event) { - SPEventContext* ec = this; - gint ret = FALSE; switch (event->type) { case GDK_BUTTON_PRESS: { // select the clicked item but do nothing else - Inkscape::Selection * const selection = sp_desktop_selection(ec->desktop); + Inkscape::Selection * const selection = sp_desktop_selection(this->desktop); selection->clear(); selection->add(item); ret = TRUE; @@ -200,8 +175,6 @@ bool SPLPEToolContext::item_handler(SPItem* item, GdkEvent* event) { } if (!ret) { -// if (((SPEventContextClass *) sp_lpetool_context_parent_class)->item_handler) -// ret = ((SPEventContextClass *) sp_lpetool_context_parent_class)->item_handler(ec, item, event); ret = SPPenContext::item_handler(item, event); } @@ -209,25 +182,21 @@ bool SPLPEToolContext::item_handler(SPItem* item, GdkEvent* event) { } bool SPLPEToolContext::root_handler(GdkEvent* event) { - SPEventContext* event_context = this; - - SPLPEToolContext *lc = SP_LPETOOL_CONTEXT(event_context); - SPDesktop *desktop = event_context->desktop; Inkscape::Selection *selection = sp_desktop_selection (desktop); bool ret = false; - if (sp_pen_context_has_waiting_LPE(lc)) { + if (sp_pen_context_has_waiting_LPE(this)) { // quit when we are waiting for a LPE to be applied //ret = ((SPEventContextClass *) sp_lpetool_context_parent_class)->root_handler(event_context, event); - ret = event_context->root_handler(event); + ret = this->root_handler(event); return ret; } switch (event->type) { case GDK_BUTTON_PRESS: - if (event->button.button == 1 && !event_context->space_panning) { - if (lc->mode == Inkscape::LivePathEffect::INVALID_LPE) { + if (event->button.button == 1 && !this->space_panning) { + if (this->mode == Inkscape::LivePathEffect::INVALID_LPE) { // don't do anything for now if we are inactive (except clearing the selection // since this was a click into empty space) selection->clear(); @@ -237,9 +206,9 @@ bool SPLPEToolContext::root_handler(GdkEvent* event) { } // save drag origin - event_context->xp = (gint) event->button.x; - event_context->yp = (gint) event->button.y; - event_context->within_tolerance = true; + this->xp = (gint) event->button.x; + this->yp = (gint) event->button.y; + this->within_tolerance = true; using namespace Inkscape::LivePathEffect; @@ -249,11 +218,11 @@ bool SPLPEToolContext::root_handler(GdkEvent* event) { //bool over_stroke = lc->shape_editor->is_over_stroke(Geom::Point(event->button.x, event->button.y), true); - sp_pen_context_wait_for_LPE_mouse_clicks(lc, type, Inkscape::LivePathEffect::Effect::acceptsNumClicks(type)); + sp_pen_context_wait_for_LPE_mouse_clicks(this, type, Inkscape::LivePathEffect::Effect::acceptsNumClicks(type)); // we pass the mouse click on to pen tool as the first click which it should collect //ret = ((SPEventContextClass *) sp_lpetool_context_parent_class)->root_handler(event_context, event); - ret = event_context->root_handler(event); + ret = this->root_handler(event); } break; @@ -289,9 +258,6 @@ bool SPLPEToolContext::root_handler(GdkEvent* event) { } if (!ret) { -// if (((SPEventContextClass *) sp_lpetool_context_parent_class)->root_handler) { -// ret = ((SPEventContextClass *) sp_lpetool_context_parent_class)->root_handler(event_context, event); -// } ret = SPPenContext::root_handler(event); } diff --git a/src/lpe-tool-context.h b/src/lpe-tool-context.h index 6d36594fe..11758ad0c 100644 --- a/src/lpe-tool-context.h +++ b/src/lpe-tool-context.h @@ -58,12 +58,13 @@ public: static const std::string prefsPath; + virtual const std::string& getPrefsPath(); + +protected: virtual void setup(); virtual void set(const Inkscape::Preferences::Entry& val); virtual bool root_handler(GdkEvent* event); virtual bool item_handler(SPItem* item, GdkEvent* event); - - virtual const std::string& getPrefsPath(); }; int lpetool_mode_to_index(Inkscape::LivePathEffect::EffectType const type); diff --git a/src/pen-context.cpp b/src/pen-context.cpp index fbcb6dae5..1221c7ec7 100644 --- a/src/pen-context.cpp +++ b/src/pen-context.cpp @@ -90,59 +90,51 @@ const std::string& SPPenContext::getPrefsPath() { const std::string SPPenContext::prefsPath = "/tools/freehand/pen"; SPPenContext::SPPenContext() : SPDrawContext() { - SPPenContext* pc = this; + this->polylines_only = false; + this->polylines_paraxial = false; + this->expecting_clicks_for_LPE = 0; - pc->polylines_only = false; - pc->polylines_paraxial = false; - pc->expecting_clicks_for_LPE = 0; + this->cursor_shape = cursor_pen_xpm; + this->hot_x = 4; + this->hot_y = 4; - SPEventContext *event_context = SP_EVENT_CONTEXT(pc); - - event_context->cursor_shape = cursor_pen_xpm; - event_context->hot_x = 4; - event_context->hot_y = 4; - - pc->npoints = 0; - pc->mode = MODE_CLICK; - pc->state = POINT; + this->npoints = 0; + this->mode = MODE_CLICK; + this->state = POINT; - pc->c0 = NULL; - pc->c1 = NULL; - pc->cl0 = NULL; - pc->cl1 = NULL; + this->c0 = NULL; + this->c1 = NULL; + this->cl0 = NULL; + this->cl1 = NULL; - pc->events_disabled = 0; + this->events_disabled = 0; - pc->num_clicks = 0; - pc->waiting_LPE = NULL; - pc->waiting_item = NULL; + this->num_clicks = 0; + this->waiting_LPE = NULL; + this->waiting_item = NULL; } SPPenContext::~SPPenContext() { - SPPenContext *pc = SP_PEN_CONTEXT(this); - - if (pc->c0) { - sp_canvas_item_destroy(pc->c0); - pc->c0 = NULL; + if (this->c0) { + sp_canvas_item_destroy(this->c0); + this->c0 = NULL; } - if (pc->c1) { - sp_canvas_item_destroy(pc->c1); - pc->c1 = NULL; + if (this->c1) { + sp_canvas_item_destroy(this->c1); + this->c1 = NULL; } - if (pc->cl0) { - sp_canvas_item_destroy(pc->cl0); - pc->cl0 = NULL; + if (this->cl0) { + sp_canvas_item_destroy(this->cl0); + this->cl0 = NULL; } - if (pc->cl1) { - sp_canvas_item_destroy(pc->cl1); - pc->cl1 = NULL; + if (this->cl1) { + sp_canvas_item_destroy(this->cl1); + this->cl1 = NULL; } - //G_OBJECT_CLASS(sp_pen_context_parent_class)->dispose(object); - - if (pc->expecting_clicks_for_LPE > 0) { + if (this->expecting_clicks_for_LPE > 0) { // we received too few clicks to sanely set the parameter path so we remove the LPE from the item - sp_lpe_item_remove_current_path_effect(pc->waiting_item, false); + sp_lpe_item_remove_current_path_effect(this->waiting_item, false); } } @@ -157,42 +149,34 @@ void sp_pen_context_set_polyline_mode(SPPenContext *const pc) { * Callback to initialize SPPenContext object. */ void SPPenContext::setup() { - SPEventContext* ec = this; - - SPPenContext *pc = SP_PEN_CONTEXT(ec); - -// if (((SPEventContextClass *) sp_pen_context_parent_class)->setup) { -// ((SPEventContextClass *) sp_pen_context_parent_class)->setup(ec); -// } SPDrawContext::setup(); ControlManager &mgr = ControlManager::getManager(); // Pen indicators - pc->c0 = mgr.createControl(sp_desktop_controls(SP_EVENT_CONTEXT_DESKTOP(ec)), Inkscape::CTRL_TYPE_ADJ_HANDLE); - mgr.track(pc->c0); + this->c0 = mgr.createControl(sp_desktop_controls(SP_EVENT_CONTEXT_DESKTOP(this)), Inkscape::CTRL_TYPE_ADJ_HANDLE); + mgr.track(this->c0); - pc->c1 = mgr.createControl(sp_desktop_controls(SP_EVENT_CONTEXT_DESKTOP(ec)), Inkscape::CTRL_TYPE_ADJ_HANDLE); - mgr.track(pc->c1); + this->c1 = mgr.createControl(sp_desktop_controls(SP_EVENT_CONTEXT_DESKTOP(this)), Inkscape::CTRL_TYPE_ADJ_HANDLE); + mgr.track(this->c1); - pc->cl0 = mgr.createControlLine(sp_desktop_controls(SP_EVENT_CONTEXT_DESKTOP(ec))); - pc->cl1 = mgr.createControlLine(sp_desktop_controls(SP_EVENT_CONTEXT_DESKTOP(ec))); + this->cl0 = mgr.createControlLine(sp_desktop_controls(SP_EVENT_CONTEXT_DESKTOP(this))); + this->cl1 = mgr.createControlLine(sp_desktop_controls(SP_EVENT_CONTEXT_DESKTOP(this))); + sp_canvas_item_hide(this->c0); + sp_canvas_item_hide(this->c1); + sp_canvas_item_hide(this->cl0); + sp_canvas_item_hide(this->cl1); - sp_canvas_item_hide(pc->c0); - sp_canvas_item_hide(pc->c1); - sp_canvas_item_hide(pc->cl0); - sp_canvas_item_hide(pc->cl1); - - sp_event_context_read(ec, "mode"); + sp_event_context_read(this, "mode"); - pc->anchor_statusbar = false; + this->anchor_statusbar = false; - sp_pen_context_set_polyline_mode(pc); + sp_pen_context_set_polyline_mode(this); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); if (prefs->getBool("/tools/freehand/pen/selcue")) { - ec->enableSelectionCue(); + this->enableSelectionCue(); } } @@ -215,19 +199,12 @@ static void pen_cancel (SPPenContext *const pc) * Finalization callback. */ void SPPenContext::finish() { - SPEventContext* ec = this; - - SPPenContext *pc = SP_PEN_CONTEXT(ec); - - sp_event_context_discard_delayed_snap_event(ec); + sp_event_context_discard_delayed_snap_event(this); - if (pc->npoints != 0) { - pen_cancel (pc); + if (this->npoints != 0) { + pen_cancel(this); } -// if (((SPEventContextClass *) sp_pen_context_parent_class)->finish) { -// ((SPEventContextClass *) sp_pen_context_parent_class)->finish(ec); -// } SPDrawContext::finish(); } @@ -235,16 +212,13 @@ void SPPenContext::finish() { * Callback that sets key to value in pen context. */ void SPPenContext::set(const Inkscape::Preferences::Entry& val) { - SPEventContext* ec = this; - - SPPenContext *pc = SP_PEN_CONTEXT(ec); Glib::ustring name = val.getEntryName(); if (name == "mode") { if ( val.getString() == "drag" ) { - pc->mode = MODE_DRAG; + this->mode = MODE_DRAG; } else { - pc->mode = MODE_CLICK; + this->mode = MODE_CLICK; } } } @@ -292,26 +266,20 @@ static void spdc_endpoint_snap_handle(SPPenContext const *const pc, Geom::Point } bool SPPenContext::item_handler(SPItem* item, GdkEvent* event) { - SPEventContext* ec = this; - - SPPenContext *const pc = SP_PEN_CONTEXT(ec); - gint ret = FALSE; switch (event->type) { case GDK_BUTTON_PRESS: - ret = pen_handle_button_press(pc, event->button); + ret = pen_handle_button_press(this, event->button); break; case GDK_BUTTON_RELEASE: - ret = pen_handle_button_release(pc, event->button); + ret = pen_handle_button_release(this, event->button); break; default: break; } if (!ret) { -// if (((SPEventContextClass *) sp_pen_context_parent_class)->item_handler) -// ret = ((SPEventContextClass *) sp_pen_context_parent_class)->item_handler(ec, item, event); ret = SPDrawContext::item_handler(item, event); } @@ -322,31 +290,27 @@ bool SPPenContext::item_handler(SPItem* item, GdkEvent* event) { * Callback to handle all pen events. */ bool SPPenContext::root_handler(GdkEvent* event) { - SPEventContext* ec = this; - - SPPenContext *const pc = SP_PEN_CONTEXT(ec); - gint ret = FALSE; switch (event->type) { case GDK_BUTTON_PRESS: - ret = pen_handle_button_press(pc, event->button); + ret = pen_handle_button_press(this, event->button); break; case GDK_MOTION_NOTIFY: - ret = pen_handle_motion_notify(pc, event->motion); + ret = pen_handle_motion_notify(this, event->motion); break; case GDK_BUTTON_RELEASE: - ret = pen_handle_button_release(pc, event->button); + ret = pen_handle_button_release(this, event->button); break; case GDK_2BUTTON_PRESS: - ret = pen_handle_2button_press(pc, event->button); + ret = pen_handle_2button_press(this, event->button); break; case GDK_KEY_PRESS: - ret = pen_handle_key_press(pc, event); + ret = pen_handle_key_press(this, event); break; default: @@ -354,11 +318,6 @@ bool SPPenContext::root_handler(GdkEvent* event) { } if (!ret) { -// gint (*const parent_root_handler)(SPEventContext *, GdkEvent *) -// = ((SPEventContextClass *) sp_pen_context_parent_class)->root_handler; -// if (parent_root_handler) { -// ret = parent_root_handler(ec, event); -// } ret = SPDrawContext::root_handler(event); } diff --git a/src/pen-context.h b/src/pen-context.h index 070d33a26..3c83f3b7f 100644 --- a/src/pen-context.h +++ b/src/pen-context.h @@ -60,13 +60,14 @@ public: static const std::string prefsPath; + virtual const std::string& getPrefsPath(); + +protected: virtual void setup(); virtual void finish(); virtual void set(const Inkscape::Preferences::Entry& val); virtual bool root_handler(GdkEvent* event); virtual bool item_handler(SPItem* item, GdkEvent* event); - - virtual const std::string& getPrefsPath(); }; inline bool sp_pen_context_has_waiting_LPE(SPPenContext *pc) { diff --git a/src/pencil-context.cpp b/src/pencil-context.cpp index c7257ff10..94310ea31 100644 --- a/src/pencil-context.cpp +++ b/src/pencil-context.cpp @@ -81,42 +81,31 @@ const std::string& SPPencilContext::getPrefsPath() { const std::string SPPencilContext::prefsPath = "/tools/freehand/pencil"; SPPencilContext::SPPencilContext() : SPDrawContext() { - SPPencilContext* pc = this; + this->is_drawing = false; - pc->is_drawing = false; + this->cursor_shape = cursor_pencil_xpm; + this->hot_x = 4; + this->hot_y = 4; - SPEventContext *event_context = SP_EVENT_CONTEXT(pc); - - event_context->cursor_shape = cursor_pencil_xpm; - event_context->hot_x = 4; - event_context->hot_y = 4; - - pc->npoints = 0; - pc->state = SP_PENCIL_CONTEXT_IDLE; - pc->req_tangent = Geom::Point(0, 0); + this->npoints = 0; + this->state = SP_PENCIL_CONTEXT_IDLE; + this->req_tangent = Geom::Point(0, 0); // since SPPencilContext is not properly constructed... - pc->sketch_interpolation = Geom::Piecewise >(); - pc->sketch_n = 0; + this->sketch_interpolation = Geom::Piecewise >(); + this->sketch_n = 0; } void SPPencilContext::setup() { - SPEventContext* ec = this; - Inkscape::Preferences *prefs = Inkscape::Preferences::get(); if (prefs->getBool("/tools/freehand/pencil/selcue")) { - ec->enableSelectionCue(); + this->enableSelectionCue(); } -// if (((SPEventContextClass *) sp_pencil_context_parent_class)->setup) { -// ((SPEventContextClass *) sp_pencil_context_parent_class)->setup(ec); -// } SPDrawContext::setup(); - SPPencilContext *const pc = SP_PENCIL_CONTEXT(ec); - pc->is_drawing = false; - - pc->anchor_statusbar = false; + this->is_drawing = false; + this->anchor_statusbar = false; } SPPencilContext::~SPPencilContext() { @@ -144,31 +133,27 @@ spdc_endpoint_snap(SPPencilContext const *pc, Geom::Point &p, guint const state) * Callback for handling all pencil context events. */ bool SPPencilContext::root_handler(GdkEvent* event) { - SPEventContext* ec = this; - - SPPencilContext *const pc = SP_PENCIL_CONTEXT(ec); - gint ret = FALSE; switch (event->type) { case GDK_BUTTON_PRESS: - ret = pencil_handle_button_press(pc, event->button); + ret = pencil_handle_button_press(this, event->button); break; case GDK_MOTION_NOTIFY: - ret = pencil_handle_motion_notify(pc, event->motion); + ret = pencil_handle_motion_notify(this, event->motion); break; case GDK_BUTTON_RELEASE: - ret = pencil_handle_button_release(pc, event->button); + ret = pencil_handle_button_release(this, event->button); break; case GDK_KEY_PRESS: - ret = pencil_handle_key_press(pc, get_group0_keyval (&event->key), event->key.state); + ret = pencil_handle_key_press(this, get_group0_keyval (&event->key), event->key.state); break; case GDK_KEY_RELEASE: - ret = pencil_handle_key_release(pc, get_group0_keyval (&event->key), event->key.state); + ret = pencil_handle_key_release(this, get_group0_keyval (&event->key), event->key.state); break; default: @@ -176,11 +161,6 @@ bool SPPencilContext::root_handler(GdkEvent* event) { } if (!ret) { -// gint (*const parent_root_handler)(SPEventContext *, GdkEvent *) -// = ((SPEventContextClass *) sp_pencil_context_parent_class)->root_handler; -// if (parent_root_handler) { -// ret = parent_root_handler(ec, event); -// } ret = SPDrawContext::root_handler(event); } diff --git a/src/pencil-context.h b/src/pencil-context.h index a0d2effe6..a3e7a2ef0 100644 --- a/src/pencil-context.h +++ b/src/pencil-context.h @@ -39,10 +39,11 @@ public: static const std::string prefsPath; + virtual const std::string& getPrefsPath(); + +protected: virtual void setup(); virtual bool root_handler(GdkEvent* event); - - virtual const std::string& getPrefsPath(); }; #endif /* !SEEN_PENCIL_CONTEXT_H */ diff --git a/src/text-context.cpp b/src/text-context.cpp index 1d1511470..c83321c93 100644 --- a/src/text-context.cpp +++ b/src/text-context.cpp @@ -91,107 +91,79 @@ const std::string SPTextContext::prefsPath = "/tools/text"; SPTextContext::SPTextContext() : SPEventContext() { - SPTextContext* tc = this; - - tc->preedit_string = 0; - tc->unipos = 0; - - SPEventContext *event_context = SP_EVENT_CONTEXT(tc); - - event_context->cursor_shape = cursor_text_xpm; - event_context->hot_x = 7; - event_context->hot_y = 7; - - event_context->xp = 0; - event_context->yp = 0; - event_context->tolerance = 0; - event_context->within_tolerance = false; - - tc->imc = NULL; - - tc->text = NULL; - tc->pdoc = Geom::Point(0, 0); - //new (&tc->text_sel_start) Inkscape::Text::Layout::iterator(); - //new (&tc->text_sel_end) Inkscape::Text::Layout::iterator(); - //new (&tc->text_selection_quads) std::vector(); - - tc->unimode = false; - - tc->cursor = NULL; - tc->indicator = NULL; - tc->frame = NULL; - tc->grabbed = NULL; - tc->timeout = 0; - tc->show = FALSE; - tc->phase = 0; - tc->nascent_object = 0; - tc->over_text = 0; - tc->dragging = 0; - tc->creating = 0; - - //new (&tc->sel_changed_connection) sigc::connection(); - //new (&tc->sel_modified_connection) sigc::connection(); - //new (&tc->style_set_connection) sigc::connection(); - //new (&tc->style_query_connection) sigc::connection(); + this->preedit_string = 0; + this->unipos = 0; + + this->cursor_shape = cursor_text_xpm; + this->hot_x = 7; + this->hot_y = 7; + + this->xp = 0; + this->yp = 0; + this->tolerance = 0; + this->within_tolerance = false; + + this->imc = NULL; + + this->text = NULL; + this->pdoc = Geom::Point(0, 0); + + this->unimode = false; + + this->cursor = NULL; + this->indicator = NULL; + this->frame = NULL; + this->grabbed = NULL; + this->timeout = 0; + this->show = FALSE; + this->phase = 0; + this->nascent_object = 0; + this->over_text = 0; + this->dragging = 0; + this->creating = 0; } SPTextContext::~SPTextContext() { - SPTextContext *tc = SP_TEXT_CONTEXT(this); - SPEventContext *ec = SP_EVENT_CONTEXT(tc); -// tc->style_query_connection.~connection(); -// tc->style_set_connection.~connection(); -// tc->sel_changed_connection.~connection(); -// tc->sel_modified_connection.~connection(); - - delete ec->shape_editor; - ec->shape_editor = NULL; - -// tc->text_sel_end.~iterator(); -// tc->text_sel_start.~iterator(); -// tc->text_selection_quads.~vector(); -// //if (G_OBJECT_CLASS(sp_text_context_parent_class)->dispose) { - // G_OBJECT_CLASS(sp_text_context_parent_class)->dispose(obj); - //} - if (tc->grabbed) { - sp_canvas_item_ungrab(tc->grabbed, GDK_CURRENT_TIME); - tc->grabbed = NULL; + delete this->shape_editor; + this->shape_editor = NULL; + + if (this->grabbed) { + sp_canvas_item_ungrab(this->grabbed, GDK_CURRENT_TIME); + this->grabbed = NULL; } - Inkscape::Rubberband::get(ec->desktop)->stop(); + Inkscape::Rubberband::get(this->desktop)->stop(); } void SPTextContext::setup() { - SPEventContext* ec = this; - - SPTextContext *tc = SP_TEXT_CONTEXT(ec); - SPDesktop *desktop = ec->desktop; GtkSettings* settings = gtk_settings_get_default(); gint timeout = 0; g_object_get( settings, "gtk-cursor-blink-time", &timeout, NULL ); + if (timeout < 0) { timeout = 200; } else { timeout /= 2; } - tc->cursor = ControlManager::getManager().createControlLine(sp_desktop_controls(desktop), Geom::Point(100, 0), Geom::Point(100, 100)); - tc->cursor->setRgba32(0x000000ff); - sp_canvas_item_hide(tc->cursor); + this->cursor = ControlManager::getManager().createControlLine(sp_desktop_controls(desktop), Geom::Point(100, 0), Geom::Point(100, 100)); + this->cursor->setRgba32(0x000000ff); + sp_canvas_item_hide(this->cursor); - tc->indicator = sp_canvas_item_new(sp_desktop_controls(desktop), SP_TYPE_CTRLRECT, NULL); - SP_CTRLRECT(tc->indicator)->setRectangle(Geom::Rect(Geom::Point(0, 0), Geom::Point(100, 100))); - SP_CTRLRECT(tc->indicator)->setColor(0x0000ff7f, false, 0); - sp_canvas_item_hide(tc->indicator); + this->indicator = sp_canvas_item_new(sp_desktop_controls(desktop), SP_TYPE_CTRLRECT, NULL); + SP_CTRLRECT(this->indicator)->setRectangle(Geom::Rect(Geom::Point(0, 0), Geom::Point(100, 100))); + SP_CTRLRECT(this->indicator)->setColor(0x0000ff7f, false, 0); + sp_canvas_item_hide(this->indicator); - tc->frame = sp_canvas_item_new(sp_desktop_controls(desktop), SP_TYPE_CTRLRECT, NULL); - SP_CTRLRECT(tc->frame)->setRectangle(Geom::Rect(Geom::Point(0, 0), Geom::Point(100, 100))); - SP_CTRLRECT(tc->frame)->setColor(0x0000ff7f, false, 0); - sp_canvas_item_hide(tc->frame); + this->frame = sp_canvas_item_new(sp_desktop_controls(desktop), SP_TYPE_CTRLRECT, NULL); + SP_CTRLRECT(this->frame)->setRectangle(Geom::Rect(Geom::Point(0, 0), Geom::Point(100, 100))); + SP_CTRLRECT(this->frame)->setColor(0x0000ff7f, false, 0); + sp_canvas_item_hide(this->frame); - tc->timeout = g_timeout_add(timeout, (GSourceFunc) sp_text_context_timeout, ec); + this->timeout = g_timeout_add(timeout, (GSourceFunc) sp_text_context_timeout, this); - tc->imc = gtk_im_multicontext_new(); - if (tc->imc) { + this->imc = gtk_im_multicontext_new(); + if (this->imc) { GtkWidget *canvas = GTK_WIDGET(sp_desktop_canvas(desktop)); /* im preedit handling is very broken in inkscape for @@ -200,203 +172,194 @@ void SPTextContext::setup() { * just take in the characters when they're finished being * entered. */ - gtk_im_context_set_use_preedit(tc->imc, FALSE); - gtk_im_context_set_client_window(tc->imc, + gtk_im_context_set_use_preedit(this->imc, FALSE); + gtk_im_context_set_client_window(this->imc, gtk_widget_get_window (canvas)); - g_signal_connect(G_OBJECT(canvas), "focus_in_event", G_CALLBACK(sptc_focus_in), tc); - g_signal_connect(G_OBJECT(canvas), "focus_out_event", G_CALLBACK(sptc_focus_out), tc); - g_signal_connect(G_OBJECT(tc->imc), "commit", G_CALLBACK(sptc_commit), tc); + g_signal_connect(G_OBJECT(canvas), "focus_in_event", G_CALLBACK(sptc_focus_in), this); + g_signal_connect(G_OBJECT(canvas), "focus_out_event", G_CALLBACK(sptc_focus_out), this); + g_signal_connect(G_OBJECT(this->imc), "commit", G_CALLBACK(sptc_commit), this); if (gtk_widget_has_focus(canvas)) { - sptc_focus_in(canvas, NULL, tc); + sptc_focus_in(canvas, NULL, this); } } -// if ((SP_EVENT_CONTEXT_CLASS(sp_text_context_parent_class))->setup) -// (SP_EVENT_CONTEXT_CLASS(sp_text_context_parent_class))->setup(ec); SPEventContext::setup(); - ec->shape_editor = new ShapeEditor(ec->desktop); + this->shape_editor = new ShapeEditor(this->desktop); - SPItem *item = sp_desktop_selection(ec->desktop)->singleItem(); + SPItem *item = sp_desktop_selection(this->desktop)->singleItem(); if (item && SP_IS_FLOWTEXT(item) && SP_FLOWTEXT(item)->has_internal_frame()) { - ec->shape_editor->set_item(item, SH_KNOTHOLDER); + this->shape_editor->set_item(item, SH_KNOTHOLDER); } - tc->sel_changed_connection = sp_desktop_selection(desktop)->connectChanged( - sigc::bind(sigc::ptr_fun(&sp_text_context_selection_changed), tc) - ); - tc->sel_modified_connection = sp_desktop_selection(desktop)->connectModified( - sigc::bind(sigc::ptr_fun(&sp_text_context_selection_modified), tc) - ); - tc->style_set_connection = desktop->connectSetStyle( - sigc::bind(sigc::ptr_fun(&sp_text_context_style_set), tc) - ); - tc->style_query_connection = desktop->connectQueryStyle( - sigc::bind(sigc::ptr_fun(&sp_text_context_style_query), tc) - ); - - sp_text_context_selection_changed(sp_desktop_selection(desktop), tc); + this->sel_changed_connection = sp_desktop_selection(desktop)->connectChanged( + sigc::bind(sigc::ptr_fun(&sp_text_context_selection_changed), this) + ); + this->sel_modified_connection = sp_desktop_selection(desktop)->connectModified( + sigc::bind(sigc::ptr_fun(&sp_text_context_selection_modified), this) + ); + this->style_set_connection = desktop->connectSetStyle( + sigc::bind(sigc::ptr_fun(&sp_text_context_style_set), this) + ); + this->style_query_connection = desktop->connectQueryStyle( + sigc::bind(sigc::ptr_fun(&sp_text_context_style_query), this) + ); + + sp_text_context_selection_changed(sp_desktop_selection(desktop), this); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); if (prefs->getBool("/tools/text/selcue")) { - ec->enableSelectionCue(); + this->enableSelectionCue(); } if (prefs->getBool("/tools/text/gradientdrag")) { - ec->enableGrDrag(); + this->enableGrDrag(); } } void SPTextContext::finish() { - SPEventContext* ec = this; - - SPTextContext *tc = SP_TEXT_CONTEXT(ec); - - if (ec->desktop) { - sp_signal_disconnect_by_data(sp_desktop_canvas(ec->desktop), tc); + if (this->desktop) { + sp_signal_disconnect_by_data(sp_desktop_canvas(this->desktop), this); } - ec->enableGrDrag(false); + this->enableGrDrag(false); - tc->style_set_connection.disconnect(); - tc->style_query_connection.disconnect(); - tc->sel_changed_connection.disconnect(); - tc->sel_modified_connection.disconnect(); + this->style_set_connection.disconnect(); + this->style_query_connection.disconnect(); + this->sel_changed_connection.disconnect(); + this->sel_modified_connection.disconnect(); - sp_text_context_forget_text(SP_TEXT_CONTEXT(ec)); + sp_text_context_forget_text(SP_TEXT_CONTEXT(this)); - if (tc->imc) { - g_object_unref(G_OBJECT(tc->imc)); - tc->imc = NULL; + if (this->imc) { + g_object_unref(G_OBJECT(this->imc)); + this->imc = NULL; } - if (tc->timeout) { - g_source_remove(tc->timeout); - tc->timeout = 0; + if (this->timeout) { + g_source_remove(this->timeout); + this->timeout = 0; } - if (tc->cursor) { - sp_canvas_item_destroy(tc->cursor); - tc->cursor = NULL; + if (this->cursor) { + sp_canvas_item_destroy(this->cursor); + this->cursor = NULL; } - if (tc->indicator) { - sp_canvas_item_destroy(tc->indicator); - tc->indicator = NULL; + if (this->indicator) { + sp_canvas_item_destroy(this->indicator); + this->indicator = NULL; } - if (tc->frame) { - sp_canvas_item_destroy(tc->frame); - tc->frame = NULL; + if (this->frame) { + sp_canvas_item_destroy(this->frame); + this->frame = NULL; } - for (std::vector::iterator it = tc->text_selection_quads.begin() ; - it != tc->text_selection_quads.end() ; ++it) { + for (std::vector::iterator it = this->text_selection_quads.begin() ; + it != this->text_selection_quads.end() ; ++it) { sp_canvas_item_hide(*it); sp_canvas_item_destroy(*it); } - tc->text_selection_quads.clear(); + + this->text_selection_quads.clear(); } bool SPTextContext::item_handler(SPItem* item, GdkEvent* event) { - SPEventContext* event_context = this; - - SPTextContext *tc = SP_TEXT_CONTEXT(event_context); - SPDesktop *desktop = event_context->desktop; SPItem *item_ungrouped; gint ret = FALSE; - sp_text_context_validate_cursor_iterators(tc); - Inkscape::Text::Layout::iterator old_start = tc->text_sel_start; + sp_text_context_validate_cursor_iterators(this); + Inkscape::Text::Layout::iterator old_start = this->text_sel_start; switch (event->type) { case GDK_BUTTON_PRESS: - if (event->button.button == 1 && !event_context->space_panning) { + if (event->button.button == 1 && !this->space_panning) { // find out clicked item, disregarding groups item_ungrouped = desktop->getItemAtPoint(Geom::Point(event->button.x, event->button.y), TRUE); if (SP_IS_TEXT(item_ungrouped) || SP_IS_FLOWTEXT(item_ungrouped)) { sp_desktop_selection(desktop)->set(item_ungrouped); - if (tc->text) { + if (this->text) { // find out click point in document coordinates Geom::Point p = desktop->w2d(Geom::Point(event->button.x, event->button.y)); // set the cursor closest to that point if (event->button.state & GDK_SHIFT_MASK) { - tc->text_sel_start = old_start; - tc->text_sel_end = sp_te_get_position_by_coords(tc->text, p); + this->text_sel_start = old_start; + this->text_sel_end = sp_te_get_position_by_coords(this->text, p); } else { - tc->text_sel_start = tc->text_sel_end = sp_te_get_position_by_coords(tc->text, p); + this->text_sel_start = this->text_sel_end = sp_te_get_position_by_coords(this->text, p); } // update display - sp_text_context_update_cursor(tc); - sp_text_context_update_text_selection(tc); - tc->dragging = 1; + sp_text_context_update_cursor(this); + sp_text_context_update_text_selection(this); + this->dragging = 1; } ret = TRUE; } } break; case GDK_2BUTTON_PRESS: - if (event->button.button == 1 && tc->text) { - Inkscape::Text::Layout const *layout = te_get_layout(tc->text); + if (event->button.button == 1 && this->text) { + Inkscape::Text::Layout const *layout = te_get_layout(this->text); if (layout) { - if (!layout->isStartOfWord(tc->text_sel_start)) - tc->text_sel_start.prevStartOfWord(); - if (!layout->isEndOfWord(tc->text_sel_end)) - tc->text_sel_end.nextEndOfWord(); - sp_text_context_update_cursor(tc); - sp_text_context_update_text_selection(tc); - tc->dragging = 2; + if (!layout->isStartOfWord(this->text_sel_start)) + this->text_sel_start.prevStartOfWord(); + if (!layout->isEndOfWord(this->text_sel_end)) + this->text_sel_end.nextEndOfWord(); + sp_text_context_update_cursor(this); + sp_text_context_update_text_selection(this); + this->dragging = 2; ret = TRUE; } } break; case GDK_3BUTTON_PRESS: - if (event->button.button == 1 && tc->text) { - tc->text_sel_start.thisStartOfLine(); - tc->text_sel_end.thisEndOfLine(); - sp_text_context_update_cursor(tc); - sp_text_context_update_text_selection(tc); - tc->dragging = 3; + if (event->button.button == 1 && this->text) { + this->text_sel_start.thisStartOfLine(); + this->text_sel_end.thisEndOfLine(); + sp_text_context_update_cursor(this); + sp_text_context_update_text_selection(this); + this->dragging = 3; ret = TRUE; } break; case GDK_BUTTON_RELEASE: - if (event->button.button == 1 && tc->dragging && !event_context->space_panning) { - tc->dragging = 0; - sp_event_context_discard_delayed_snap_event(event_context); + if (event->button.button == 1 && this->dragging && !this->space_panning) { + this->dragging = 0; + sp_event_context_discard_delayed_snap_event(this); ret = TRUE; } break; case GDK_MOTION_NOTIFY: - if ((event->motion.state & GDK_BUTTON1_MASK) && tc->dragging && !event_context->space_panning) { - Inkscape::Text::Layout const *layout = te_get_layout(tc->text); + if ((event->motion.state & GDK_BUTTON1_MASK) && this->dragging && !this->space_panning) { + Inkscape::Text::Layout const *layout = te_get_layout(this->text); if (!layout) break; // find out click point in document coordinates Geom::Point p = desktop->w2d(Geom::Point(event->button.x, event->button.y)); // set the cursor closest to that point - Inkscape::Text::Layout::iterator new_end = sp_te_get_position_by_coords(tc->text, p); - if (tc->dragging == 2) { + Inkscape::Text::Layout::iterator new_end = sp_te_get_position_by_coords(this->text, p); + if (this->dragging == 2) { // double-click dragging: go by word - if (new_end < tc->text_sel_start) { + if (new_end < this->text_sel_start) { if (!layout->isStartOfWord(new_end)) new_end.prevStartOfWord(); } else if (!layout->isEndOfWord(new_end)) new_end.nextEndOfWord(); - } else if (tc->dragging == 3) { + } else if (this->dragging == 3) { // triple-click dragging: go by line - if (new_end < tc->text_sel_start) + if (new_end < this->text_sel_start) new_end.thisStartOfLine(); else new_end.thisEndOfLine(); } // update display - if (tc->text_sel_end != new_end) { - tc->text_sel_end = new_end; - sp_text_context_update_cursor(tc); - sp_text_context_update_text_selection(tc); + if (this->text_sel_end != new_end) { + this->text_sel_end = new_end; + sp_text_context_update_cursor(this); + sp_text_context_update_text_selection(this); } gobble_motion_events(GDK_BUTTON1_MASK); ret = TRUE; @@ -408,21 +371,21 @@ bool SPTextContext::item_handler(SPItem* item, GdkEvent* event) { Inkscape::Text::Layout const *layout = te_get_layout(item_ungrouped); if (layout->inputTruncated()) { - SP_CTRLRECT(tc->indicator)->setColor(0xff0000ff, false, 0); + SP_CTRLRECT(this->indicator)->setColor(0xff0000ff, false, 0); } else { - SP_CTRLRECT(tc->indicator)->setColor(0x0000ff7f, false, 0); + SP_CTRLRECT(this->indicator)->setColor(0x0000ff7f, false, 0); } Geom::OptRect ibbox = item_ungrouped->desktopVisualBounds(); if (ibbox) { - SP_CTRLRECT(tc->indicator)->setRectangle(*ibbox); + SP_CTRLRECT(this->indicator)->setRectangle(*ibbox); } - sp_canvas_item_show(tc->indicator); + sp_canvas_item_show(this->indicator); - event_context->cursor_shape = cursor_text_insert_xpm; - event_context->hot_x = 7; - event_context->hot_y = 10; - event_context->sp_event_context_update_cursor(); - sp_text_context_update_text_selection(tc); + this->cursor_shape = cursor_text_insert_xpm; + this->hot_x = 7; + this->hot_y = 10; + this->sp_event_context_update_cursor(); + sp_text_context_update_text_selection(this); if (SP_IS_TEXT (item_ungrouped)) { desktop->event_context->defaultMessageContext()->set(Inkscape::NORMAL_MESSAGE, _("Click to edit the text, drag to select part of the text.")); @@ -430,7 +393,7 @@ bool SPTextContext::item_handler(SPItem* item, GdkEvent* event) { desktop->event_context->defaultMessageContext()->set(Inkscape::NORMAL_MESSAGE, _("Click to edit the flowed text, drag to select part of the text.")); } - tc->over_text = true; + this->over_text = true; ret = TRUE; } @@ -440,8 +403,6 @@ bool SPTextContext::item_handler(SPItem* item, GdkEvent* event) { } if (!ret) { -// if ((SP_EVENT_CONTEXT_CLASS(sp_text_context_parent_class))->item_handler) -// ret = (SP_EVENT_CONTEXT_CLASS(sp_text_context_parent_class))->item_handler(event_context, item, event); ret = SPEventContext::item_handler(item, event); } @@ -564,31 +525,25 @@ static void show_curr_uni_char(SPTextContext *const tc) } bool SPTextContext::root_handler(GdkEvent* event) { - SPEventContext* event_context = this; - - SPTextContext *const tc = SP_TEXT_CONTEXT(event_context); - - SPDesktop *desktop = event_context->desktop; + sp_canvas_item_hide(this->indicator); - sp_canvas_item_hide(tc->indicator); - - sp_text_context_validate_cursor_iterators(tc); + sp_text_context_validate_cursor_iterators(this); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - event_context->tolerance = prefs->getIntLimited("/options/dragtolerance/value", 0, 0, 100); + this->tolerance = prefs->getIntLimited("/options/dragtolerance/value", 0, 0, 100); switch (event->type) { case GDK_BUTTON_PRESS: - if (event->button.button == 1 && !event_context->space_panning) { + if (event->button.button == 1 && !this->space_panning) { if (Inkscape::have_viable_layer(desktop, desktop->messageStack()) == false) { return TRUE; } // save drag origin - event_context->xp = (gint) event->button.x; - event_context->yp = (gint) event->button.y; - event_context->within_tolerance = true; + this->xp = (gint) event->button.x; + this->yp = (gint) event->button.y; + this->within_tolerance = true; Geom::Point const button_pt(event->button.x, event->button.y); Geom::Point button_dt(desktop->w2d(button_pt)); @@ -598,39 +553,39 @@ bool SPTextContext::root_handler(GdkEvent* event) { m.freeSnapReturnByRef(button_dt, Inkscape::SNAPSOURCE_NODE_HANDLE); m.unSetup(); - tc->p0 = button_dt; - Inkscape::Rubberband::get(desktop)->start(desktop, tc->p0); + this->p0 = button_dt; + Inkscape::Rubberband::get(desktop)->start(desktop, this->p0); sp_canvas_item_grab(SP_CANVAS_ITEM(desktop->acetate), GDK_KEY_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_BUTTON_PRESS_MASK | GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK, NULL, event->button.time); - tc->grabbed = SP_CANVAS_ITEM(desktop->acetate); - tc->creating = 1; + this->grabbed = SP_CANVAS_ITEM(desktop->acetate); + this->creating = 1; /* Processed */ return TRUE; } break; case GDK_MOTION_NOTIFY: - if (tc->over_text) { - tc->over_text = 0; + if (this->over_text) { + this->over_text = 0; // update cursor and statusbar: we are not over a text object now - event_context->cursor_shape = cursor_text_xpm; - event_context->hot_x = 7; - event_context->hot_y = 7; - event_context->sp_event_context_update_cursor(); + this->cursor_shape = cursor_text_xpm; + this->hot_x = 7; + this->hot_y = 7; + this->sp_event_context_update_cursor(); desktop->event_context->defaultMessageContext()->clear(); } - if (tc->creating && (event->motion.state & GDK_BUTTON1_MASK) && !event_context->space_panning) { - if ( event_context->within_tolerance - && ( abs( (gint) event->motion.x - event_context->xp ) < event_context->tolerance ) - && ( abs( (gint) event->motion.y - event_context->yp ) < event_context->tolerance ) ) { + if (this->creating && (event->motion.state & GDK_BUTTON1_MASK) && !this->space_panning) { + if ( this->within_tolerance + && ( abs( (gint) event->motion.x - this->xp ) < this->tolerance ) + && ( abs( (gint) event->motion.y - this->yp ) < this->tolerance ) ) { break; // do not drag if we're within tolerance from origin } // Once the user has moved farther than tolerance from the original location // (indicating they intend to draw, not click), then always process the // motion notify coordinates as given (no snapping back to origin) - event_context->within_tolerance = false; + this->within_tolerance = false; Geom::Point const motion_pt(event->motion.x, event->motion.y); Geom::Point p = desktop->w2d(motion_pt); @@ -644,13 +599,13 @@ bool SPTextContext::root_handler(GdkEvent* event) { gobble_motion_events(GDK_BUTTON1_MASK); // status text - GString *xs = SP_PX_TO_METRIC_STRING(fabs((p - tc->p0)[Geom::X]), desktop->namedview->getDefaultMetric()); - GString *ys = SP_PX_TO_METRIC_STRING(fabs((p - tc->p0)[Geom::Y]), desktop->namedview->getDefaultMetric()); - event_context->message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Flowed text frame: %s × %s"), xs->str, ys->str); + GString *xs = SP_PX_TO_METRIC_STRING(fabs((p - this->p0)[Geom::X]), desktop->namedview->getDefaultMetric()); + GString *ys = SP_PX_TO_METRIC_STRING(fabs((p - this->p0)[Geom::Y]), desktop->namedview->getDefaultMetric()); + this->message_context->setF(Inkscape::IMMEDIATE_MESSAGE, _("Flowed text frame: %s × %s"), xs->str, ys->str); g_string_free(xs, FALSE); g_string_free(ys, FALSE); - } else if (!sp_event_context_knot_mouseover(event_context)) { + } else if (!sp_event_context_knot_mouseover(this)) { SnapManager &m = desktop->namedview->snap_manager; m.setup(desktop); @@ -661,8 +616,8 @@ bool SPTextContext::root_handler(GdkEvent* event) { } break; case GDK_BUTTON_RELEASE: - if (event->button.button == 1 && !event_context->space_panning) { - sp_event_context_discard_delayed_snap_event(event_context); + if (event->button.button == 1 && !this->space_panning) { + sp_event_context_discard_delayed_snap_event(this); Geom::Point p1 = desktop->w2d(Geom::Point(event->button.x, event->button.y)); @@ -671,46 +626,46 @@ bool SPTextContext::root_handler(GdkEvent* event) { m.freeSnapReturnByRef(p1, Inkscape::SNAPSOURCE_NODE_HANDLE); m.unSetup(); - if (tc->grabbed) { - sp_canvas_item_ungrab(tc->grabbed, GDK_CURRENT_TIME); - tc->grabbed = NULL; + if (this->grabbed) { + sp_canvas_item_ungrab(this->grabbed, GDK_CURRENT_TIME); + this->grabbed = NULL; } Inkscape::Rubberband::get(desktop)->stop(); - if (tc->creating && event_context->within_tolerance) { + if (this->creating && this->within_tolerance) { /* Button 1, set X & Y & new item */ sp_desktop_selection(desktop)->clear(); - tc->pdoc = desktop->dt2doc(p1); - tc->show = TRUE; - tc->phase = 1; - tc->nascent_object = 1; // new object was just created + this->pdoc = desktop->dt2doc(p1); + this->show = TRUE; + this->phase = 1; + this->nascent_object = 1; // new object was just created /* Cursor */ - sp_canvas_item_show(tc->cursor); + sp_canvas_item_show(this->cursor); // Cursor height is defined by the new text object's font size; it needs to be set // artificially here, for the text object does not exist yet: double cursor_height = sp_desktop_get_font_size_tool(desktop); - tc->cursor->setCoords(p1, p1 + Geom::Point(0, cursor_height)); - if (tc->imc) { + this->cursor->setCoords(p1, p1 + Geom::Point(0, cursor_height)); + if (this->imc) { GdkRectangle im_cursor; - Geom::Point const top_left = SP_EVENT_CONTEXT(tc)->desktop->get_display_area().corner(3); + Geom::Point const top_left = SP_EVENT_CONTEXT(this)->desktop->get_display_area().corner(3); Geom::Point const cursor_size(0, cursor_height); - Geom::Point const im_position = SP_EVENT_CONTEXT(tc)->desktop->d2w(p1 + cursor_size - top_left); + Geom::Point const im_position = SP_EVENT_CONTEXT(this)->desktop->d2w(p1 + cursor_size - top_left); im_cursor.x = (int) floor(im_position[Geom::X]); im_cursor.y = (int) floor(im_position[Geom::Y]); im_cursor.width = 0; - im_cursor.height = (int) -floor(SP_EVENT_CONTEXT(tc)->desktop->d2w(cursor_size)[Geom::Y]); - gtk_im_context_set_cursor_location(tc->imc, &im_cursor); + im_cursor.height = (int) -floor(SP_EVENT_CONTEXT(this)->desktop->d2w(cursor_size)[Geom::Y]); + gtk_im_context_set_cursor_location(this->imc, &im_cursor); } - event_context->message_context->set(Inkscape::NORMAL_MESSAGE, _("Type text; Enter to start new line.")); // FIXME:: this is a copy of a string from _update_cursor below, do not desync + this->message_context->set(Inkscape::NORMAL_MESSAGE, _("Type text; Enter to start new line.")); // FIXME:: this is a copy of a string from _update_cursor below, do not desync - event_context->within_tolerance = false; - } else if (tc->creating) { + this->within_tolerance = false; + } else if (this->creating) { double cursor_height = sp_desktop_get_font_size_tool(desktop); - if (fabs(p1[Geom::Y] - tc->p0[Geom::Y]) > cursor_height) { + if (fabs(p1[Geom::Y] - this->p0[Geom::Y]) > cursor_height) { // otherwise even one line won't fit; most probably a slip of hand (even if bigger than tolerance) - SPItem *ft = create_flowtext_with_internal_frame (desktop, tc->p0, p1); + SPItem *ft = create_flowtext_with_internal_frame (desktop, this->p0, p1); /* Set style */ sp_desktop_apply_style_tool(desktop, ft->getRepr(), "/tools/text", true); sp_desktop_selection(desktop)->set(ft); @@ -721,7 +676,7 @@ bool SPTextContext::root_handler(GdkEvent* event) { desktop->messageStack()->flash(Inkscape::ERROR_MESSAGE, _("The frame is too small for the current font size. Flowed text not created.")); } } - tc->creating = false; + this->creating = false; return TRUE; } break; @@ -734,16 +689,16 @@ bool SPTextContext::root_handler(GdkEvent* event) { break; // otherwise pass on keypad +/- so they can zoom } - if ((tc->text) || (tc->nascent_object)) { + if ((this->text) || (this->nascent_object)) { // there is an active text object in this context, or a new object was just created - if (tc->unimode || !tc->imc + if (this->unimode || !this->imc || (MOD__CTRL(event) && MOD__SHIFT(event)) // input methods tend to steal this for unimode, // but we have our own so make sure they don't swallow it - || !gtk_im_context_filter_keypress(tc->imc, (GdkEventKey*) event)) { + || !gtk_im_context_filter_keypress(this->imc, (GdkEventKey*) event)) { //IM did not consume the key, or we're in unimode - if (!MOD__CTRL_ONLY(event) && tc->unimode) { + if (!MOD__CTRL_ONLY(event) && this->unimode) { /* TODO: ISO 14755 (section 3 Definitions) says that we should also accept the first 6 characters of alphabets other than the latin alphabet "if the Latin alphabet is not used". The below is also @@ -754,39 +709,39 @@ bool SPTextContext::root_handler(GdkEvent* event) { switch (group0_keyval) { case GDK_KEY_space: case GDK_KEY_KP_Space: { - if (tc->unipos) { - insert_uni_char(tc); + if (this->unipos) { + insert_uni_char(this); } /* Stay in unimode. */ - show_curr_uni_char(tc); + show_curr_uni_char(this); return TRUE; } case GDK_KEY_BackSpace: { - g_return_val_if_fail(tc->unipos < sizeof(tc->uni), TRUE); - if (tc->unipos) { - tc->uni[--tc->unipos] = '\0'; + g_return_val_if_fail(this->unipos < sizeof(this->uni), TRUE); + if (this->unipos) { + this->uni[--this->unipos] = '\0'; } - show_curr_uni_char(tc); + show_curr_uni_char(this); return TRUE; } case GDK_KEY_Return: case GDK_KEY_KP_Enter: { - if (tc->unipos) { - insert_uni_char(tc); + if (this->unipos) { + insert_uni_char(this); } /* Exit unimode. */ - tc->unimode = false; - event_context->defaultMessageContext()->clear(); + this->unimode = false; + this->defaultMessageContext()->clear(); return TRUE; } case GDK_KEY_Escape: { // Cancel unimode. - tc->unimode = false; - gtk_im_context_reset(tc->imc); - event_context->defaultMessageContext()->clear(); + this->unimode = false; + gtk_im_context_reset(this->imc); + this->defaultMessageContext()->clear(); return TRUE; } @@ -796,10 +751,10 @@ bool SPTextContext::root_handler(GdkEvent* event) { default: { if (g_ascii_isxdigit(group0_keyval)) { - g_return_val_if_fail(tc->unipos < sizeof(tc->uni) - 1, TRUE); - tc->uni[tc->unipos++] = group0_keyval; - tc->uni[tc->unipos] = '\0'; - if (tc->unipos == 8) { + g_return_val_if_fail(this->unipos < sizeof(this->uni) - 1, TRUE); + this->uni[this->unipos++] = group0_keyval; + this->uni[this->unipos] = '\0'; + if (this->unipos == 8) { /* This behaviour is partly to allow us to continue to use a fixed-length buffer for tc->uni. Reason for choosing the number 8 is that it's the length of @@ -807,9 +762,9 @@ bool SPTextContext::root_handler(GdkEvent* event) { An advantage over choosing 6 is that it allows using backspace for typos & misremembering when entering a 6-digit number. */ - insert_uni_char(tc); + insert_uni_char(this); } - show_curr_uni_char(tc); + show_curr_uni_char(this); return TRUE; } else { /* The intent is to ignore but consume characters that could be @@ -823,12 +778,12 @@ bool SPTextContext::root_handler(GdkEvent* event) { } } - Inkscape::Text::Layout::iterator old_start = tc->text_sel_start; - Inkscape::Text::Layout::iterator old_end = tc->text_sel_end; + Inkscape::Text::Layout::iterator old_start = this->text_sel_start; + Inkscape::Text::Layout::iterator old_end = this->text_sel_end; bool cursor_moved = false; int screenlines = 1; - if (tc->text) { - double spacing = sp_te_get_average_linespacing(tc->text); + if (this->text) { + double spacing = sp_te_get_average_linespacing(this->text); Geom::Rect const d = desktop->get_display_area(); screenlines = (int) floor(fabs(d.min()[Geom::Y] - d.max()[Geom::Y])/spacing) - 1; if (screenlines <= 0) @@ -847,13 +802,13 @@ bool SPTextContext::root_handler(GdkEvent* event) { case GDK_KEY_space: if (MOD__CTRL_ONLY(event)) { /* No-break space */ - if (!tc->text) { // printable key; create text if none (i.e. if nascent_object) - sp_text_context_setup_text(tc); - tc->nascent_object = 0; // we don't need it anymore, having created a real + if (!this->text) { // printable key; create text if none (i.e. if nascent_object) + sp_text_context_setup_text(this); + this->nascent_object = 0; // we don't need it anymore, having created a real } - tc->text_sel_start = tc->text_sel_end = sp_te_replace(tc->text, tc->text_sel_start, tc->text_sel_end, "\302\240"); - sp_text_context_update_cursor(tc); - sp_text_context_update_text_selection(tc); + this->text_sel_start = this->text_sel_end = sp_te_replace(this->text, this->text_sel_start, this->text_sel_end, "\302\240"); + sp_text_context_update_cursor(this); + sp_text_context_update_text_selection(this); desktop->messageStack()->flash(Inkscape::NORMAL_MESSAGE, _("No-break space")); DocumentUndo::done(sp_desktop_document(desktop), SP_VERB_CONTEXT_TEXT, _("Insert no-break space")); @@ -863,24 +818,24 @@ bool SPTextContext::root_handler(GdkEvent* event) { case GDK_KEY_U: case GDK_KEY_u: if (MOD__CTRL_ONLY(event) || (MOD__CTRL(event) && MOD__SHIFT(event))) { - if (tc->unimode) { - tc->unimode = false; - event_context->defaultMessageContext()->clear(); + if (this->unimode) { + this->unimode = false; + this->defaultMessageContext()->clear(); } else { - tc->unimode = true; - tc->unipos = 0; - event_context->defaultMessageContext()->set(Inkscape::NORMAL_MESSAGE, _("Unicode (Enter to finish): ")); + this->unimode = true; + this->unipos = 0; + this->defaultMessageContext()->set(Inkscape::NORMAL_MESSAGE, _("Unicode (Enter to finish): ")); } - if (tc->imc) { - gtk_im_context_reset(tc->imc); + if (this->imc) { + gtk_im_context_reset(this->imc); } return TRUE; } break; case GDK_KEY_B: case GDK_KEY_b: - if (MOD__CTRL_ONLY(event) && tc->text) { - SPStyle const *style = sp_te_style_at_position(tc->text, std::min(tc->text_sel_start, tc->text_sel_end)); + if (MOD__CTRL_ONLY(event) && this->text) { + SPStyle const *style = sp_te_style_at_position(this->text, std::min(this->text_sel_start, this->text_sel_end)); SPCSSAttr *css = sp_repr_css_attr_new(); if (style->font_weight.computed == SP_CSS_FONT_WEIGHT_NORMAL || style->font_weight.computed == SP_CSS_FONT_WEIGHT_100 @@ -890,43 +845,43 @@ bool SPTextContext::root_handler(GdkEvent* event) { sp_repr_css_set_property(css, "font-weight", "bold"); else sp_repr_css_set_property(css, "font-weight", "normal"); - sp_te_apply_style(tc->text, tc->text_sel_start, tc->text_sel_end, css); + sp_te_apply_style(this->text, this->text_sel_start, this->text_sel_end, css); sp_repr_css_attr_unref(css); DocumentUndo::done(sp_desktop_document(desktop), SP_VERB_CONTEXT_TEXT, _("Make bold")); - sp_text_context_update_cursor(tc); - sp_text_context_update_text_selection(tc); + sp_text_context_update_cursor(this); + sp_text_context_update_text_selection(this); return TRUE; } break; case GDK_KEY_I: case GDK_KEY_i: - if (MOD__CTRL_ONLY(event) && tc->text) { - SPStyle const *style = sp_te_style_at_position(tc->text, std::min(tc->text_sel_start, tc->text_sel_end)); + if (MOD__CTRL_ONLY(event) && this->text) { + SPStyle const *style = sp_te_style_at_position(this->text, std::min(this->text_sel_start, this->text_sel_end)); SPCSSAttr *css = sp_repr_css_attr_new(); if (style->font_style.computed != SP_CSS_FONT_STYLE_NORMAL) sp_repr_css_set_property(css, "font-style", "normal"); else sp_repr_css_set_property(css, "font-style", "italic"); - sp_te_apply_style(tc->text, tc->text_sel_start, tc->text_sel_end, css); + sp_te_apply_style(this->text, this->text_sel_start, this->text_sel_end, css); sp_repr_css_attr_unref(css); DocumentUndo::done(sp_desktop_document(desktop), SP_VERB_CONTEXT_TEXT, _("Make italic")); - sp_text_context_update_cursor(tc); - sp_text_context_update_text_selection(tc); + sp_text_context_update_cursor(this); + sp_text_context_update_text_selection(this); return TRUE; } break; case GDK_KEY_A: case GDK_KEY_a: - if (MOD__CTRL_ONLY(event) && tc->text) { - Inkscape::Text::Layout const *layout = te_get_layout(tc->text); + if (MOD__CTRL_ONLY(event) && this->text) { + Inkscape::Text::Layout const *layout = te_get_layout(this->text); if (layout) { - tc->text_sel_start = layout->begin(); - tc->text_sel_end = layout->end(); - sp_text_context_update_cursor(tc); - sp_text_context_update_text_selection(tc); + this->text_sel_start = layout->begin(); + this->text_sel_end = layout->end(); + sp_text_context_update_cursor(this); + sp_text_context_update_text_selection(this); return TRUE; } } @@ -935,101 +890,101 @@ bool SPTextContext::root_handler(GdkEvent* event) { case GDK_KEY_Return: case GDK_KEY_KP_Enter: { - if (!tc->text) { // printable key; create text if none (i.e. if nascent_object) - sp_text_context_setup_text(tc); - tc->nascent_object = 0; // we don't need it anymore, having created a real + if (!this->text) { // printable key; create text if none (i.e. if nascent_object) + sp_text_context_setup_text(this); + this->nascent_object = 0; // we don't need it anymore, having created a real } iterator_pair enter_pair; - bool success = sp_te_delete(tc->text, tc->text_sel_start, tc->text_sel_end, enter_pair); + bool success = sp_te_delete(this->text, this->text_sel_start, this->text_sel_end, enter_pair); (void)success; // TODO cleanup - tc->text_sel_start = tc->text_sel_end = enter_pair.first; + this->text_sel_start = this->text_sel_end = enter_pair.first; - tc->text_sel_start = tc->text_sel_end = sp_te_insert_line(tc->text, tc->text_sel_start); + this->text_sel_start = this->text_sel_end = sp_te_insert_line(this->text, this->text_sel_start); - sp_text_context_update_cursor(tc); - sp_text_context_update_text_selection(tc); + sp_text_context_update_cursor(this); + sp_text_context_update_text_selection(this); DocumentUndo::done(sp_desktop_document(desktop), SP_VERB_CONTEXT_TEXT, _("New line")); return TRUE; } case GDK_KEY_BackSpace: - if (tc->text) { // if nascent_object, do nothing, but return TRUE; same for all other delete and move keys + if (this->text) { // if nascent_object, do nothing, but return TRUE; same for all other delete and move keys bool noSelection = false; if (MOD__CTRL(event)) { - tc->text_sel_start = tc->text_sel_end; + this->text_sel_start = this->text_sel_end; } - if (tc->text_sel_start == tc->text_sel_end) { + if (this->text_sel_start == this->text_sel_end) { if (MOD__CTRL(event)) { - tc->text_sel_start.prevStartOfWord(); + this->text_sel_start.prevStartOfWord(); } else { - tc->text_sel_start.prevCursorPosition(); + this->text_sel_start.prevCursorPosition(); } noSelection = true; } iterator_pair bspace_pair; - bool success = sp_te_delete(tc->text, tc->text_sel_start, tc->text_sel_end, bspace_pair); + bool success = sp_te_delete(this->text, this->text_sel_start, this->text_sel_end, bspace_pair); if (noSelection) { if (success) { - tc->text_sel_start = tc->text_sel_end = bspace_pair.first; + this->text_sel_start = this->text_sel_end = bspace_pair.first; } else { // nothing deleted - tc->text_sel_start = tc->text_sel_end = bspace_pair.second; + this->text_sel_start = this->text_sel_end = bspace_pair.second; } } else { if (success) { - tc->text_sel_start = tc->text_sel_end = bspace_pair.first; + this->text_sel_start = this->text_sel_end = bspace_pair.first; } else { // nothing deleted - tc->text_sel_start = bspace_pair.first; - tc->text_sel_end = bspace_pair.second; + this->text_sel_start = bspace_pair.first; + this->text_sel_end = bspace_pair.second; } } - sp_text_context_update_cursor(tc); - sp_text_context_update_text_selection(tc); + sp_text_context_update_cursor(this); + sp_text_context_update_text_selection(this); DocumentUndo::done(sp_desktop_document(desktop), SP_VERB_CONTEXT_TEXT, _("Backspace")); } return TRUE; case GDK_KEY_Delete: case GDK_KEY_KP_Delete: - if (tc->text) { + if (this->text) { bool noSelection = false; if (MOD__CTRL(event)) { - tc->text_sel_start = tc->text_sel_end; + this->text_sel_start = this->text_sel_end; } - if (tc->text_sel_start == tc->text_sel_end) { + if (this->text_sel_start == this->text_sel_end) { if (MOD__CTRL(event)) { - tc->text_sel_end.nextEndOfWord(); + this->text_sel_end.nextEndOfWord(); } else { - tc->text_sel_end.nextCursorPosition(); + this->text_sel_end.nextCursorPosition(); } noSelection = true; } iterator_pair del_pair; - bool success = sp_te_delete(tc->text, tc->text_sel_start, tc->text_sel_end, del_pair); + bool success = sp_te_delete(this->text, this->text_sel_start, this->text_sel_end, del_pair); if (noSelection) { - tc->text_sel_start = tc->text_sel_end = del_pair.first; + this->text_sel_start = this->text_sel_end = del_pair.first; } else { if (success) { - tc->text_sel_start = tc->text_sel_end = del_pair.first; + this->text_sel_start = this->text_sel_end = del_pair.first; } else { // nothing deleted - tc->text_sel_start = del_pair.first; - tc->text_sel_end = del_pair.second; + this->text_sel_start = del_pair.first; + this->text_sel_end = del_pair.second; } } - sp_text_context_update_cursor(tc); - sp_text_context_update_text_selection(tc); + sp_text_context_update_cursor(this); + sp_text_context_update_text_selection(this); DocumentUndo::done(sp_desktop_document(desktop), SP_VERB_CONTEXT_TEXT, _("Delete")); } @@ -1037,23 +992,23 @@ bool SPTextContext::root_handler(GdkEvent* event) { case GDK_KEY_Left: case GDK_KEY_KP_Left: case GDK_KEY_KP_4: - if (tc->text) { + if (this->text) { if (MOD__ALT(event)) { gint mul = 1 + gobble_key_events( get_group0_keyval(&event->key), 0); // with any mask if (MOD__SHIFT(event)) - sp_te_adjust_kerning_screen(tc->text, tc->text_sel_start, tc->text_sel_end, desktop, Geom::Point(mul*-10, 0)); + sp_te_adjust_kerning_screen(this->text, this->text_sel_start, this->text_sel_end, desktop, Geom::Point(mul*-10, 0)); else - sp_te_adjust_kerning_screen(tc->text, tc->text_sel_start, tc->text_sel_end, desktop, Geom::Point(mul*-1, 0)); - sp_text_context_update_cursor(tc); - sp_text_context_update_text_selection(tc); + sp_te_adjust_kerning_screen(this->text, this->text_sel_start, this->text_sel_end, desktop, Geom::Point(mul*-1, 0)); + sp_text_context_update_cursor(this); + sp_text_context_update_text_selection(this); DocumentUndo::maybeDone(sp_desktop_document(desktop), "kern:left", SP_VERB_CONTEXT_TEXT, _("Kern to the left")); } else { if (MOD__CTRL(event)) - tc->text_sel_end.cursorLeftWithControl(); + this->text_sel_end.cursorLeftWithControl(); else - tc->text_sel_end.cursorLeft(); + this->text_sel_end.cursorLeft(); cursor_moved = true; break; } @@ -1062,23 +1017,23 @@ bool SPTextContext::root_handler(GdkEvent* event) { case GDK_KEY_Right: case GDK_KEY_KP_Right: case GDK_KEY_KP_6: - if (tc->text) { + if (this->text) { if (MOD__ALT(event)) { gint mul = 1 + gobble_key_events( get_group0_keyval(&event->key), 0); // with any mask if (MOD__SHIFT(event)) - sp_te_adjust_kerning_screen(tc->text, tc->text_sel_start, tc->text_sel_end, desktop, Geom::Point(mul*10, 0)); + sp_te_adjust_kerning_screen(this->text, this->text_sel_start, this->text_sel_end, desktop, Geom::Point(mul*10, 0)); else - sp_te_adjust_kerning_screen(tc->text, tc->text_sel_start, tc->text_sel_end, desktop, Geom::Point(mul*1, 0)); - sp_text_context_update_cursor(tc); - sp_text_context_update_text_selection(tc); + sp_te_adjust_kerning_screen(this->text, this->text_sel_start, this->text_sel_end, desktop, Geom::Point(mul*1, 0)); + sp_text_context_update_cursor(this); + sp_text_context_update_text_selection(this); DocumentUndo::maybeDone(sp_desktop_document(desktop), "kern:right", SP_VERB_CONTEXT_TEXT, _("Kern to the right")); } else { if (MOD__CTRL(event)) - tc->text_sel_end.cursorRightWithControl(); + this->text_sel_end.cursorRightWithControl(); else - tc->text_sel_end.cursorRight(); + this->text_sel_end.cursorRight(); cursor_moved = true; break; } @@ -1087,23 +1042,23 @@ bool SPTextContext::root_handler(GdkEvent* event) { case GDK_KEY_Up: case GDK_KEY_KP_Up: case GDK_KEY_KP_8: - if (tc->text) { + if (this->text) { if (MOD__ALT(event)) { gint mul = 1 + gobble_key_events( get_group0_keyval(&event->key), 0); // with any mask if (MOD__SHIFT(event)) - sp_te_adjust_kerning_screen(tc->text, tc->text_sel_start, tc->text_sel_end, desktop, Geom::Point(0, mul*-10)); + sp_te_adjust_kerning_screen(this->text, this->text_sel_start, this->text_sel_end, desktop, Geom::Point(0, mul*-10)); else - sp_te_adjust_kerning_screen(tc->text, tc->text_sel_start, tc->text_sel_end, desktop, Geom::Point(0, mul*-1)); - sp_text_context_update_cursor(tc); - sp_text_context_update_text_selection(tc); + sp_te_adjust_kerning_screen(this->text, this->text_sel_start, this->text_sel_end, desktop, Geom::Point(0, mul*-1)); + sp_text_context_update_cursor(this); + sp_text_context_update_text_selection(this); DocumentUndo::maybeDone(sp_desktop_document(desktop), "kern:up", SP_VERB_CONTEXT_TEXT, _("Kern up")); } else { if (MOD__CTRL(event)) - tc->text_sel_end.cursorUpWithControl(); + this->text_sel_end.cursorUpWithControl(); else - tc->text_sel_end.cursorUp(); + this->text_sel_end.cursorUp(); cursor_moved = true; break; } @@ -1112,23 +1067,23 @@ bool SPTextContext::root_handler(GdkEvent* event) { case GDK_KEY_Down: case GDK_KEY_KP_Down: case GDK_KEY_KP_2: - if (tc->text) { + if (this->text) { if (MOD__ALT(event)) { gint mul = 1 + gobble_key_events( get_group0_keyval(&event->key), 0); // with any mask if (MOD__SHIFT(event)) - sp_te_adjust_kerning_screen(tc->text, tc->text_sel_start, tc->text_sel_end, desktop, Geom::Point(0, mul*10)); + sp_te_adjust_kerning_screen(this->text, this->text_sel_start, this->text_sel_end, desktop, Geom::Point(0, mul*10)); else - sp_te_adjust_kerning_screen(tc->text, tc->text_sel_start, tc->text_sel_end, desktop, Geom::Point(0, mul*1)); - sp_text_context_update_cursor(tc); - sp_text_context_update_text_selection(tc); + sp_te_adjust_kerning_screen(this->text, this->text_sel_start, this->text_sel_end, desktop, Geom::Point(0, mul*1)); + sp_text_context_update_cursor(this); + sp_text_context_update_text_selection(this); DocumentUndo::maybeDone(sp_desktop_document(desktop), "kern:down", SP_VERB_CONTEXT_TEXT, _("Kern down")); } else { if (MOD__CTRL(event)) - tc->text_sel_end.cursorDownWithControl(); + this->text_sel_end.cursorDownWithControl(); else - tc->text_sel_end.cursorDown(); + this->text_sel_end.cursorDown(); cursor_moved = true; break; } @@ -1136,143 +1091,143 @@ bool SPTextContext::root_handler(GdkEvent* event) { return TRUE; case GDK_KEY_Home: case GDK_KEY_KP_Home: - if (tc->text) { + if (this->text) { if (MOD__CTRL(event)) - tc->text_sel_end.thisStartOfShape(); + this->text_sel_end.thisStartOfShape(); else - tc->text_sel_end.thisStartOfLine(); + this->text_sel_end.thisStartOfLine(); cursor_moved = true; break; } return TRUE; case GDK_KEY_End: case GDK_KEY_KP_End: - if (tc->text) { + if (this->text) { if (MOD__CTRL(event)) - tc->text_sel_end.nextStartOfShape(); + this->text_sel_end.nextStartOfShape(); else - tc->text_sel_end.thisEndOfLine(); + this->text_sel_end.thisEndOfLine(); cursor_moved = true; break; } return TRUE; case GDK_KEY_Page_Down: case GDK_KEY_KP_Page_Down: - if (tc->text) { - tc->text_sel_end.cursorDown(screenlines); + if (this->text) { + this->text_sel_end.cursorDown(screenlines); cursor_moved = true; break; } return TRUE; case GDK_KEY_Page_Up: case GDK_KEY_KP_Page_Up: - if (tc->text) { - tc->text_sel_end.cursorUp(screenlines); + if (this->text) { + this->text_sel_end.cursorUp(screenlines); cursor_moved = true; break; } return TRUE; case GDK_KEY_Escape: - if (tc->creating) { - tc->creating = 0; - if (tc->grabbed) { - sp_canvas_item_ungrab(tc->grabbed, GDK_CURRENT_TIME); - tc->grabbed = NULL; + if (this->creating) { + this->creating = 0; + if (this->grabbed) { + sp_canvas_item_ungrab(this->grabbed, GDK_CURRENT_TIME); + this->grabbed = NULL; } Inkscape::Rubberband::get(desktop)->stop(); } else { sp_desktop_selection(desktop)->clear(); } - tc->nascent_object = FALSE; + this->nascent_object = FALSE; return TRUE; case GDK_KEY_bracketleft: - if (tc->text) { + if (this->text) { if (MOD__ALT(event) || MOD__CTRL(event)) { if (MOD__ALT(event)) { if (MOD__SHIFT(event)) { // FIXME: alt+shift+[] does not work, don't know why - sp_te_adjust_rotation_screen(tc->text, tc->text_sel_start, tc->text_sel_end, desktop, -10); + sp_te_adjust_rotation_screen(this->text, this->text_sel_start, this->text_sel_end, desktop, -10); } else { - sp_te_adjust_rotation_screen(tc->text, tc->text_sel_start, tc->text_sel_end, desktop, -1); + sp_te_adjust_rotation_screen(this->text, this->text_sel_start, this->text_sel_end, desktop, -1); } } else { - sp_te_adjust_rotation(tc->text, tc->text_sel_start, tc->text_sel_end, desktop, -90); + sp_te_adjust_rotation(this->text, this->text_sel_start, this->text_sel_end, desktop, -90); } DocumentUndo::maybeDone(sp_desktop_document(desktop), "textrot:ccw", SP_VERB_CONTEXT_TEXT, _("Rotate counterclockwise")); - sp_text_context_update_cursor(tc); - sp_text_context_update_text_selection(tc); + sp_text_context_update_cursor(this); + sp_text_context_update_text_selection(this); return TRUE; } } break; case GDK_KEY_bracketright: - if (tc->text) { + if (this->text) { if (MOD__ALT(event) || MOD__CTRL(event)) { if (MOD__ALT(event)) { if (MOD__SHIFT(event)) { // FIXME: alt+shift+[] does not work, don't know why - sp_te_adjust_rotation_screen(tc->text, tc->text_sel_start, tc->text_sel_end, desktop, 10); + sp_te_adjust_rotation_screen(this->text, this->text_sel_start, this->text_sel_end, desktop, 10); } else { - sp_te_adjust_rotation_screen(tc->text, tc->text_sel_start, tc->text_sel_end, desktop, 1); + sp_te_adjust_rotation_screen(this->text, this->text_sel_start, this->text_sel_end, desktop, 1); } } else { - sp_te_adjust_rotation(tc->text, tc->text_sel_start, tc->text_sel_end, desktop, 90); + sp_te_adjust_rotation(this->text, this->text_sel_start, this->text_sel_end, desktop, 90); } DocumentUndo::maybeDone(sp_desktop_document(desktop), "textrot:cw", SP_VERB_CONTEXT_TEXT, _("Rotate clockwise")); - sp_text_context_update_cursor(tc); - sp_text_context_update_text_selection(tc); + sp_text_context_update_cursor(this); + sp_text_context_update_text_selection(this); return TRUE; } } break; case GDK_KEY_less: case GDK_KEY_comma: - if (tc->text) { + if (this->text) { if (MOD__ALT(event)) { if (MOD__CTRL(event)) { if (MOD__SHIFT(event)) - sp_te_adjust_linespacing_screen(tc->text, tc->text_sel_start, tc->text_sel_end, desktop, -10); + sp_te_adjust_linespacing_screen(this->text, this->text_sel_start, this->text_sel_end, desktop, -10); else - sp_te_adjust_linespacing_screen(tc->text, tc->text_sel_start, tc->text_sel_end, desktop, -1); + sp_te_adjust_linespacing_screen(this->text, this->text_sel_start, this->text_sel_end, desktop, -1); DocumentUndo::maybeDone(sp_desktop_document(desktop), "linespacing:dec", SP_VERB_CONTEXT_TEXT, _("Contract line spacing")); } else { if (MOD__SHIFT(event)) - sp_te_adjust_tspan_letterspacing_screen(tc->text, tc->text_sel_start, tc->text_sel_end, desktop, -10); + sp_te_adjust_tspan_letterspacing_screen(this->text, this->text_sel_start, this->text_sel_end, desktop, -10); else - sp_te_adjust_tspan_letterspacing_screen(tc->text, tc->text_sel_start, tc->text_sel_end, desktop, -1); + sp_te_adjust_tspan_letterspacing_screen(this->text, this->text_sel_start, this->text_sel_end, desktop, -1); DocumentUndo::maybeDone(sp_desktop_document(desktop), "letterspacing:dec", SP_VERB_CONTEXT_TEXT, _("Contract letter spacing")); } - sp_text_context_update_cursor(tc); - sp_text_context_update_text_selection(tc); + sp_text_context_update_cursor(this); + sp_text_context_update_text_selection(this); return TRUE; } } break; case GDK_KEY_greater: case GDK_KEY_period: - if (tc->text) { + if (this->text) { if (MOD__ALT(event)) { if (MOD__CTRL(event)) { if (MOD__SHIFT(event)) - sp_te_adjust_linespacing_screen(tc->text, tc->text_sel_start, tc->text_sel_end, desktop, 10); + sp_te_adjust_linespacing_screen(this->text, this->text_sel_start, this->text_sel_end, desktop, 10); else - sp_te_adjust_linespacing_screen(tc->text, tc->text_sel_start, tc->text_sel_end, desktop, 1); + sp_te_adjust_linespacing_screen(this->text, this->text_sel_start, this->text_sel_end, desktop, 1); DocumentUndo::maybeDone(sp_desktop_document(desktop), "linespacing:inc", SP_VERB_CONTEXT_TEXT, _("Expand line spacing")); } else { if (MOD__SHIFT(event)) - sp_te_adjust_tspan_letterspacing_screen(tc->text, tc->text_sel_start, tc->text_sel_end, desktop, 10); + sp_te_adjust_tspan_letterspacing_screen(this->text, this->text_sel_start, this->text_sel_end, desktop, 10); else - sp_te_adjust_tspan_letterspacing_screen(tc->text, tc->text_sel_start, tc->text_sel_end, desktop, 1); + sp_te_adjust_tspan_letterspacing_screen(this->text, this->text_sel_start, this->text_sel_end, desktop, 1); DocumentUndo::maybeDone(sp_desktop_document(desktop), "letterspacing:inc", SP_VERB_CONTEXT_TEXT, _("Expand letter spacing"));\ } - sp_text_context_update_cursor(tc); - sp_text_context_update_text_selection(tc); + sp_text_context_update_cursor(this); + sp_text_context_update_text_selection(this); return TRUE; } } @@ -1283,10 +1238,10 @@ bool SPTextContext::root_handler(GdkEvent* event) { if (cursor_moved) { if (!MOD__SHIFT(event)) - tc->text_sel_start = tc->text_sel_end; - if (old_start != tc->text_sel_start || old_end != tc->text_sel_end) { - sp_text_context_update_cursor(tc); - sp_text_context_update_text_selection(tc); + this->text_sel_start = this->text_sel_end; + if (old_start != this->text_sel_start || old_end != this->text_sel_end) { + sp_text_context_update_cursor(this); + sp_text_context_update_text_selection(this); } return TRUE; } @@ -1301,11 +1256,11 @@ bool SPTextContext::root_handler(GdkEvent* event) { && !MOD__CTRL_ONLY(event)) { return TRUE; } else if (group0_keyval == GDK_KEY_Escape) { // cancel rubberband - if (tc->creating) { - tc->creating = 0; - if (tc->grabbed) { - sp_canvas_item_ungrab(tc->grabbed, GDK_CURRENT_TIME); - tc->grabbed = NULL; + if (this->creating) { + this->creating = 0; + if (this->grabbed) { + sp_canvas_item_ungrab(this->grabbed, GDK_CURRENT_TIME); + this->grabbed = NULL; } Inkscape::Rubberband::get(desktop)->stop(); } @@ -1318,7 +1273,7 @@ bool SPTextContext::root_handler(GdkEvent* event) { } case GDK_KEY_RELEASE: - if (!tc->unimode && tc->imc && gtk_im_context_filter_keypress(tc->imc, (GdkEventKey*) event)) { + if (!this->unimode && this->imc && gtk_im_context_filter_keypress(this->imc, (GdkEventKey*) event)) { return TRUE; } break; -- cgit v1.2.3 From 82f86789e746672e91bdd287c534546f6af0b456 Mon Sep 17 00:00:00 2001 From: Kris De Gussem Date: Sun, 4 Aug 2013 16:24:43 +0200 Subject: cppcheck: c-style casts > c++ style casts (bzr r12466) --- src/sp-desc.cpp | 2 +- src/sp-font-face.cpp | 2 +- src/sp-paint-server.cpp | 2 +- src/sp-tspan.cpp | 34 ++++----- src/unicoderange.cpp | 193 ++++++++++++++++++++++++------------------------ 5 files changed, 113 insertions(+), 120 deletions(-) diff --git a/src/sp-desc.cpp b/src/sp-desc.cpp index 9b27c4d17..aec90714d 100644 --- a/src/sp-desc.cpp +++ b/src/sp-desc.cpp @@ -22,7 +22,7 @@ G_DEFINE_TYPE(SPDesc, sp_desc, SP_TYPE_OBJECT); static void sp_desc_class_init(SPDescClass *klass) { - SPObjectClass *sp_object_class = (SPObjectClass *)(klass); + SPObjectClass *sp_object_class = reinterpret_cast(klass); sp_object_class->write = sp_desc_write; } diff --git a/src/sp-font-face.cpp b/src/sp-font-face.cpp index 0a649b17f..6b6d07c6d 100644 --- a/src/sp-font-face.cpp +++ b/src/sp-font-face.cpp @@ -272,7 +272,7 @@ G_DEFINE_TYPE(SPFontFace, sp_fontface, SP_TYPE_OBJECT); static void sp_fontface_class_init(SPFontFaceClass *fc) { - SPObjectClass *sp_object_class = (SPObjectClass *) fc; + SPObjectClass *sp_object_class = reinterpret_cast(fc); sp_object_class->build = sp_fontface_build; sp_object_class->release = sp_fontface_release; diff --git a/src/sp-paint-server.cpp b/src/sp-paint-server.cpp index 298b39117..bae0e2242 100644 --- a/src/sp-paint-server.cpp +++ b/src/sp-paint-server.cpp @@ -53,7 +53,7 @@ cairo_pattern_t *sp_paint_server_create_pattern(SPPaintServer *ps, g_return_val_if_fail(SP_IS_PAINT_SERVER(ps), NULL); cairo_pattern_t *cp = NULL; - SPPaintServerClass *psc = (SPPaintServerClass *) G_OBJECT_GET_CLASS(ps); + SPPaintServerClass *psc = reinterpret_cast(G_OBJECT_GET_CLASS(ps)); if ( psc->pattern_new ) { cp = (*psc->pattern_new)(ps, ct, bbox, opacity); } diff --git a/src/sp-tspan.cpp b/src/sp-tspan.cpp index 09429df6f..6f0b6ac39 100644 --- a/src/sp-tspan.cpp +++ b/src/sp-tspan.cpp @@ -145,7 +145,7 @@ static void sp_tspan_update(SPObject *object, SPCtx *ctx, guint flags) for ( SPObject *ochild = object->firstChild() ; ochild ; ochild = ochild->getNext() ) { if ( flags || ( ochild->uflags & SP_OBJECT_MODIFIED_FLAG )) { - ochild->updateDisplay(ctx, flags); + ochild->updateDisplay(ctx, flags); } } } @@ -270,8 +270,7 @@ void refresh_textpath_source(SPTextPath* offset); G_DEFINE_TYPE(SPTextPath, sp_textpath, SP_TYPE_ITEM); -static void -sp_textpath_class_init(SPTextPathClass *classname) +static void sp_textpath_class_init(SPTextPathClass *classname) { GObjectClass *gobject_class = G_OBJECT_CLASS(classname); SPObjectClass *sp_object_class = SP_OBJECT_CLASS(classname); @@ -299,16 +298,14 @@ sp_textpath_init(SPTextPath *textpath) textpath->sourcePath->user_unlink = sp_textpath_to_text; } -static void -sp_textpath_finalize(GObject *obj) +static void sp_textpath_finalize(GObject *obj) { - SPTextPath *textpath = (SPTextPath *) obj; + SPTextPath *textpath = static_cast(obj); delete textpath->sourcePath; } -static void -sp_textpath_release(SPObject *object) +static void sp_textpath_release(SPObject *object) { SPTextPath *textpath = SP_TEXTPATH(object); @@ -321,8 +318,7 @@ sp_textpath_release(SPObject *object) (SP_OBJECT_CLASS(sp_textpath_parent_class))->release(object); } -static void -sp_textpath_build(SPObject *object, SPDocument *doc, Inkscape::XML::Node *repr) +static void sp_textpath_build(SPObject *object, SPDocument *doc, Inkscape::XML::Node *repr) { object->readAttr( "x" ); object->readAttr( "y" ); @@ -352,8 +348,7 @@ sp_textpath_build(SPObject *object, SPDocument *doc, Inkscape::XML::Node *repr) } } -static void -sp_textpath_set(SPObject *object, unsigned key, gchar const *value) +static void sp_textpath_set(SPObject *object, unsigned key, gchar const *value) { SPTextPath *textpath = SP_TEXTPATH(object); @@ -403,7 +398,7 @@ static void sp_textpath_update(SPObject *object, SPCtx *ctx, guint flags) } -void refresh_textpath_source(SPTextPath* tp) +void refresh_textpath_source(SPTextPath* tp) { if ( tp == NULL ) return; tp->sourcePath->refresh_source(); @@ -423,8 +418,7 @@ void refresh_textpath_source(SPTextPath* tp) } } -static void -sp_textpath_modified(SPObject *object, unsigned flags) +static void sp_textpath_modified(SPObject *object, unsigned flags) { if ((SP_OBJECT_CLASS(sp_textpath_parent_class))->modified) { (SP_OBJECT_CLASS(sp_textpath_parent_class))->modified(object, flags); @@ -454,7 +448,7 @@ sp_textpath_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape:: textpath->attributes.writeTo(repr); if (textpath->startOffset._set) { if (textpath->startOffset.unit == SVGLength::PERCENT) { - Inkscape::SVGOStringStream os; + Inkscape::SVGOStringStream os; os << (textpath->startOffset.computed * 100.0) << "%"; textpath->getRepr()->setAttribute("startOffset", os.str().c_str()); } else { @@ -506,19 +500,17 @@ sp_textpath_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape:: } -SPItem * -sp_textpath_get_path_item(SPTextPath *tp) +SPItem *sp_textpath_get_path_item(SPTextPath *tp) { if (tp && tp->sourcePath) { SPItem *refobj = tp->sourcePath->getObject(); if (SP_IS_ITEM(refobj)) - return (SPItem *) refobj; + return refobj; } return NULL; } -void -sp_textpath_to_text(SPObject *tp) +void sp_textpath_to_text(SPObject *tp) { SPObject *text = tp->parent; diff --git a/src/unicoderange.cpp b/src/unicoderange.cpp index 67239d0d2..36435024d 100644 --- a/src/unicoderange.cpp +++ b/src/unicoderange.cpp @@ -4,124 +4,125 @@ #include static unsigned int hex2int(char* s){ - int res=0; - int i=0, mul=1; - while(s[i+1]!='\0') i++; + int res=0; + int i=0, mul=1; + while(s[i+1]!='\0') i++; - while(i>=0){ - if (s[i] >= 'A' && s[i] <= 'F') res += mul * (s[i]-'A'+10); - if (s[i] >= 'a' && s[i] <= 'f') res += mul * (s[i]-'a'+10); - if (s[i] >= '0' && s[i] <= '9') res += mul * (s[i]-'0'); - i--; - mul*=16; - } - return res; + while(i>=0){ + if (s[i] >= 'A' && s[i] <= 'F') res += mul * (s[i]-'A'+10); + if (s[i] >= 'a' && s[i] <= 'f') res += mul * (s[i]-'a'+10); + if (s[i] >= '0' && s[i] <= '9') res += mul * (s[i]-'0'); + i--; + mul*=16; + } + return res; } UnicodeRange::UnicodeRange(const gchar* value){ - if (!value) return; - gchar* val = (gchar*) value; - while(val[0] != '\0'){ - if (val[0]=='U' && val[1]=='+'){ - val += add_range(val+2); - } else { - this->unichars.push_back(g_utf8_get_char(&val[0])); - val++; - } - //skip spaces or commas - while(val[0]==' ' || val[0]==',') val++; - } + if (!value) return; + gchar* val = (gchar*) value; + while(val[0] != '\0'){ + if (val[0]=='U' && val[1]=='+'){ + val += add_range(val+2); + } else { + this->unichars.push_back(g_utf8_get_char(&val[0])); + val++; + } + //skip spaces or commas + while(val[0]==' ' || val[0]==',') val++; + } } -int -UnicodeRange::add_range(gchar* val){ - Urange r; - int i=0, count=0; - while(val[i]!='\0' && val[i]!='-' && val[i]!=' ' && val[i]!=','){ +int UnicodeRange::add_range(gchar* val){ + Urange r; + int i=0, count=0; + while(val[i]!='\0' && val[i]!='-' && val[i]!=' ' && val[i]!=','){ i++; - } + } r.start = (gchar*) malloc((i+1)*sizeof(gchar*)); - strncpy(r.start, val, i); - r.start[i] = '\0'; - val+=i; - count+=i; - i=0; - if (val[0]=='-'){ - val++; - while(val[i]!='\0' && val[i]!='-' && val[i]!=' ' && val[i]!=',') i++; - r.end = (gchar*) malloc((i+1)*sizeof(gchar*)); - strncpy(r.end, val, i); - r.end[i] = '\0'; - // val+=i; - count+=i; - } else { - r.end=NULL; - } - this->range.push_back(r); - return count+1; + strncpy(r.start, val, i); + r.start[i] = '\0'; + val+=i; + count+=i; + i=0; + if (val[0]=='-'){ + val++; + while(val[i]!='\0' && val[i]!='-' && val[i]!=' ' && val[i]!=',') i++; + r.end = (gchar*) malloc((i+1)*sizeof(gchar*)); + strncpy(r.end, val, i); + r.end[i] = '\0'; + // val+=i; + count+=i; + } else { + r.end=NULL; + } + this->range.push_back(r); + return count+1; } bool UnicodeRange::contains(gchar unicode){ - for(unsigned int i=0;iunichars.size();i++){ - if ((gunichar) unicode == this->unichars[i]) return true; - } + for(unsigned int i=0;iunichars.size();i++){ + if (static_cast(unicode) == this->unichars[i]){ + return true; + } + } - unsigned int unival; - unival = g_utf8_get_char (&unicode); - char uni[9] = "00000000"; - uni[8]= '\0'; - unsigned char val; - for (unsigned int i=7; unival>0; i--){ - val = unival & 0xf; - unival = unival >> 4; - if (val < 10) uni[i] = '0' + val; - else uni[i] = 'A'+ val - 10; - } + unsigned int unival; + unival = g_utf8_get_char (&unicode); + char uni[9] = "00000000"; + uni[8]= '\0'; + unsigned char val; + for (unsigned int i=7; unival>0; i--){ + val = unival & 0xf; + unival = unival >> 4; + if (val < 10) uni[i] = '0' + val; + else uni[i] = 'A'+ val - 10; + } - bool found; - for(unsigned int i=0;irange.size();i++){ - Urange r = this->range[i]; - if (r.end){ - if (unival >= hex2int(r.start) && unival <= hex2int(r.end)) return true; - } else { - found = true; + bool found; + for(unsigned int i=0;irange.size();i++){ + Urange r = this->range[i]; + if (r.end){ + if (unival >= hex2int(r.start) && unival <= hex2int(r.end)) return true; + } else { + found = true; - int p=0; - while (r.start[p]!='\0') p++; - p--; + int p=0; + while (r.start[p]!='\0') p++; + p--; - for (int pos=8;p>=0;pos--,p--){ - if (uni[pos]!='?' && uni[pos]!=r.start[p]) found = false; - } - if (found) return true; - } - } - return false; + for (int pos=8;p>=0;pos--,p--){ + if (uni[pos]!='?' && uni[pos]!=r.start[p]) found = false; + } + if (found) return true; + } + } + return false; } Glib::ustring UnicodeRange::attribute_string(){ - Glib::ustring result; - unsigned int i; - for(i=0; iunichars.size(); i++){ - result += this->unichars[i]; - if (i!=this->unichars.size()-1) result += ","; - } + Glib::ustring result; + unsigned int i; + for(i=0; iunichars.size(); i++){ + result += this->unichars[i]; + if (i!=this->unichars.size()-1) result += ","; + } - for(i=0; irange.size(); i++){ - result += "U+" + Glib::ustring(this->range[i].start); - if (this->range[i].end) result += "-" + Glib::ustring(this->range[i].end); - if (i!=this->range.size()-1) result += ", "; - } + for(i=0; irange.size(); i++){ + result += "U+" + Glib::ustring(this->range[i].start); + if (this->range[i].end) result += "-" + Glib::ustring(this->range[i].end); + if (i!=this->range.size()-1) result += ", "; + } - return result; + return result; } gunichar UnicodeRange::sample_glyph(){ - //This could be better - if (!unichars.empty()) - return unichars[0]; - if (!range.empty()) - return hex2int(range[0].start); - return (gunichar) ' '; + //This could be better + if (!unichars.empty()) + return unichars[0]; + if (!range.empty()) + return hex2int(range[0].start); + return (gunichar) ' '; } -- cgit v1.2.3 From dd957026bd798ebe34eff033b4a839d63b790b04 Mon Sep 17 00:00:00 2001 From: Kris De Gussem Date: Sun, 4 Aug 2013 16:27:59 +0200 Subject: cppcheck (bzr r12467) --- src/attribute-rel-util.cpp | 55 +++-- src/select-context.cpp | 107 +++++----- src/sp-ellipse.cpp | 35 ++-- src/sp-pattern.cpp | 503 ++++++++++++++++++++++----------------------- src/sp-text.cpp | 2 +- src/sp-use.cpp | 12 +- src/syseq.h | 3 +- 7 files changed, 355 insertions(+), 362 deletions(-) diff --git a/src/attribute-rel-util.cpp b/src/attribute-rel-util.cpp index 0527dad4e..933339632 100644 --- a/src/attribute-rel-util.cpp +++ b/src/attribute-rel-util.cpp @@ -198,23 +198,22 @@ void sp_attribute_clean_style(Node* repr, SPCSSAttr *css, unsigned int flags) { // Check if a property is applicable to an element (i.e. is font-family useful for a ?). if( !SPAttributeRelCSS::findIfValid( property, element ) ) { - if( flags & SP_ATTR_CLEAN_STYLE_WARN ) { - g_warning( "<%s id=\"%s\">: CSS Style property: \"%s\" is inappropriate.", - element.c_str(), id.c_str(), property ); - } - if( flags & SP_ATTR_CLEAN_STYLE_REMOVE ) { - toDelete.insert(property); - } - continue; + if( flags & SP_ATTR_CLEAN_STYLE_WARN ) { + g_warning( "<%s id=\"%s\">: CSS Style property: \"%s\" is inappropriate.", + element.c_str(), id.c_str(), property ); + } + if( flags & SP_ATTR_CLEAN_STYLE_REMOVE ) { + toDelete.insert(property); + } + continue; } // Find parent value for same property (property) gchar const * value_p = NULL; if( css_parent != NULL ) { - gchar const * property_p = NULL; for ( List iter_p = css_parent->attributeList() ; iter_p ; ++iter_p ) { - property_p = g_quark_to_string(iter_p->key); + gchar const * property_p = g_quark_to_string(iter_p->key); if( !g_strcmp0( property, property_p ) ) { value_p = iter_p->value; @@ -226,29 +225,29 @@ void sp_attribute_clean_style(Node* repr, SPCSSAttr *css, unsigned int flags) { // If parent has same property value and property is inherited, mark for deletion. if ( !g_strcmp0( value, value_p ) && SPAttributeRelCSS::findIfInherit( property ) ) { - if ( flags & SP_ATTR_CLEAN_DEFAULT_WARN ) { - g_warning( "<%s id=\"%s\">: CSS Style property: \"%s\" has same value as parent (%s).", - element.c_str(), id.c_str(), property, value ); - } - if ( flags & SP_ATTR_CLEAN_DEFAULT_REMOVE ) { - toDelete.insert( property ); - } - continue; + if ( flags & SP_ATTR_CLEAN_DEFAULT_WARN ) { + g_warning( "<%s id=\"%s\">: CSS Style property: \"%s\" has same value as parent (%s).", + element.c_str(), id.c_str(), property, value ); + } + if ( flags & SP_ATTR_CLEAN_DEFAULT_REMOVE ) { + toDelete.insert( property ); + } + continue; } // If property value is same as default and the parent value not set or property is not inherited, // mark for deletion. if ( SPAttributeRelCSS::findIfDefault( property, value ) && - ( (css_parent != NULL && value_p == NULL) || !SPAttributeRelCSS::findIfInherit( property ) ) ) { - - if ( flags & SP_ATTR_CLEAN_DEFAULT_WARN ) { - g_warning( "<%s id=\"%s\">: CSS Style property: \"%s\" with default value (%s) not needed.", - element.c_str(), id.c_str(), property, value ); - } - if ( flags & SP_ATTR_CLEAN_DEFAULT_REMOVE ) { - toDelete.insert( property ); - } - continue; + ( (css_parent != NULL && value_p == NULL) || !SPAttributeRelCSS::findIfInherit( property ) ) ) { + + if ( flags & SP_ATTR_CLEAN_DEFAULT_WARN ) { + g_warning( "<%s id=\"%s\">: CSS Style property: \"%s\" with default value (%s) not needed.", + element.c_str(), id.c_str(), property, value ); + } + if ( flags & SP_ATTR_CLEAN_DEFAULT_REMOVE ) { + toDelete.insert( property ); + } + continue; } } // End loop over style properties diff --git a/src/select-context.cpp b/src/select-context.cpp index 35a9bd172..df90d62cb 100644 --- a/src/select-context.cpp +++ b/src/select-context.cpp @@ -333,9 +333,9 @@ sp_select_context_item_handler(SPEventContext *event_context, SPItem *item, GdkE // if shift or ctrl was pressed, do not move objects; // pass the event to root handler which will perform rubberband, shift-click, ctrl-click, ctrl-drag } else { - GdkWindow* window = gtk_widget_get_window (GTK_WIDGET (sp_desktop_canvas(desktop))); + GdkWindow* window = gtk_widget_get_window (GTK_WIDGET (sp_desktop_canvas(desktop))); - sc->dragging = TRUE; + sc->dragging = TRUE; sc->moved = FALSE; gdk_window_set_cursor(window, CursorSelectDragging); @@ -387,7 +387,7 @@ sp_select_context_item_handler(SPEventContext *event_context, SPItem *item, GdkE GdkWindow* window = gtk_widget_get_window (GTK_WIDGET (sp_desktop_canvas(desktop))); gdk_window_set_cursor(window, event_context->cursor); - } + } break; case GDK_KEY_PRESS: @@ -540,11 +540,11 @@ sp_select_context_root_handler(SPEventContext *event_context, GdkEvent *event) case GDK_MOTION_NOTIFY: { - if (is_cycling) - { - moved_while_cycling = true; - prev_event_context = event_context; - } + if (is_cycling) + { + moved_while_cycling = true; + prev_event_context = event_context; + } tolerance = prefs->getIntLimited("/options/dragtolerance/value", 0, 0, 100); if ((event->motion.state & GDK_BUTTON1_MASK) && !event_context->space_panning) { Geom::Point const motion_pt(event->motion.x, event->motion.y); @@ -564,7 +564,7 @@ sp_select_context_root_handler(SPEventContext *event_context, GdkEvent *event) // if it's not click and ctrl or alt was pressed (the latter with some selection // but not with shift) we want to drag rather than rubberband sc->dragging = TRUE; - GdkWindow* window = gtk_widget_get_window (GTK_WIDGET (sp_desktop_canvas(desktop))); + GdkWindow* window = gtk_widget_get_window (GTK_WIDGET (sp_desktop_canvas(desktop))); gdk_window_set_cursor(window, CursorSelectDragging); desktop->canvas->forceFullRedrawAfterInterruptions(5); @@ -638,7 +638,7 @@ sp_select_context_root_handler(SPEventContext *event_context, GdkEvent *event) if ((event->button.button == 1) && (sc->grabbed) && !event_context->space_panning) { if (sc->dragging) { GdkWindow* window; - if (sc->moved) { + if (sc->moved) { // item has been moved seltrans->ungrab(); sc->moved = FALSE; @@ -670,7 +670,7 @@ sp_select_context_root_handler(SPEventContext *event_context, GdkEvent *event) } } sc->dragging = FALSE; - window = gtk_widget_get_window (GTK_WIDGET (sp_desktop_canvas(desktop))); + window = gtk_widget_get_window (GTK_WIDGET (sp_desktop_canvas(desktop))); gdk_window_set_cursor(window, CursorSelectMouseover); sp_event_context_discard_delayed_snap_event(event_context); desktop->canvas->endForcedFullRedraws(); @@ -777,15 +777,15 @@ sp_select_context_root_handler(SPEventContext *event_context, GdkEvent *event) GdkEventScroll *scroll_event = (GdkEventScroll*) event; if (scroll_event->state & GDK_MOD1_MASK) { // alt modified pressed - if (moved_while_cycling) - { - moved_while_cycling = false; - sp_select_context_reset_opacities(prev_event_context); - prev_event_context = NULL; - } - - is_cycling = true; - + if (moved_while_cycling) + { + moved_while_cycling = false; + sp_select_context_reset_opacities(prev_event_context); + prev_event_context = NULL; + } + + is_cycling = true; + bool shift_pressed = scroll_event->state & GDK_SHIFT_MASK; /* Rebuild list of items underneath the mouse pointer */ @@ -861,21 +861,21 @@ sp_select_context_root_handler(SPEventContext *event_context, GdkEvent *event) ret = TRUE; - GtkWindow *w =GTK_WINDOW(gtk_widget_get_toplevel( GTK_WIDGET(desktop->canvas) )); - if (w) - { - gtk_window_present(w); - gtk_widget_grab_focus (GTK_WIDGET(desktop->canvas)); - } + GtkWindow *w =GTK_WINDOW(gtk_widget_get_toplevel( GTK_WIDGET(desktop->canvas) )); + if (w) + { + gtk_window_present(w); + gtk_widget_grab_focus (GTK_WIDGET(desktop->canvas)); + } } break; } case GDK_KEY_PRESS: // keybindings for select context - { - { - guint keyval = get_group0_keyval(&event->key); + { + { + guint keyval = get_group0_keyval(&event->key); bool alt = ( MOD__ALT(event) || (keyval == GDK_KEY_Alt_L) || (keyval == GDK_KEY_Alt_R) @@ -902,19 +902,19 @@ sp_select_context_root_handler(SPEventContext *event_context, GdkEvent *event) _("Alt: click to select under; scroll mouse-wheel to cycle-select; drag to move selected or select by touch")); // if Alt and nonempty selection, show moving cursor ("move selected"): if (alt && !selection->isEmpty() && !desktop->isWaitingCursor()) { - GdkWindow* window = gtk_widget_get_window (GTK_WIDGET (sp_desktop_canvas(desktop))); + GdkWindow* window = gtk_widget_get_window (GTK_WIDGET (sp_desktop_canvas(desktop))); gdk_window_set_cursor(window, CursorSelectDragging); } //*/ break; } - } + } gdouble const nudge = prefs->getDoubleLimited("/options/nudgedistance/value", 2, 0, 1000, "px"); // in px - gdouble const offset = prefs->getDoubleLimited("/options/defaultscale/value", 2, 0, 1000, "px"); - int const snaps = prefs->getInt("/options/rotationsnapsperpi/value", 12); + gdouble const offset = prefs->getDoubleLimited("/options/defaultscale/value", 2, 0, 1000, "px"); + int const snaps = prefs->getInt("/options/rotationsnapsperpi/value", 12); - switch (get_group0_keyval (&event->key)) { + switch (get_group0_keyval (&event->key)) { case GDK_KEY_Left: // move selection left case GDK_KEY_KP_Left: if (!MOD__CTRL(event)) { // not ctrl @@ -1102,7 +1102,7 @@ sp_select_context_root_handler(SPEventContext *event_context, GdkEvent *event) break; } break; - } + } case GDK_KEY_RELEASE: { guint keyval = get_group0_keyval(&event->key); @@ -1123,11 +1123,10 @@ sp_select_context_root_handler(SPEventContext *event_context, GdkEvent *event) } else { if (alt) { // TODO: Should we have a variable like is_cycling or is it harmless to run this piece of code each time? // quit cycle-selection and reset opacities - if (is_cycling) - { - sp_select_context_reset_opacities(event_context); - is_cycling = false; - } + if (is_cycling){ + sp_select_context_reset_opacities(event_context); + is_cycling = false; + } } } @@ -1151,23 +1150,21 @@ sp_select_context_root_handler(SPEventContext *event_context, GdkEvent *event) return ret; } -static void -sp_select_context_reset_opacities(SPEventContext *event_context) +static void sp_select_context_reset_opacities(SPEventContext *event_context) { // SPDesktop *desktop = event_context->desktop; - SPSelectContext *sc = SP_SELECT_CONTEXT(event_context); - Inkscape::DrawingItem *arenaitem; - for (GList *l = sc->cycling_items; l != NULL; l = g_list_next(l)) { - arenaitem = SP_ITEM(l->data)->get_arenaitem(event_context->desktop->dkey); - arenaitem->setOpacity(SP_SCALE24_TO_FLOAT(SP_ITEM(l->data)->style->opacity.value)); - } - g_list_free(sc->cycling_items); - g_list_free(sc->cycling_items_selected_before); - g_list_free(sc->cycling_items_cmp); - sc->cycling_items = NULL; - sc->cycling_items_selected_before = NULL; - sc->cycling_cur_item = NULL; - sc->cycling_items_cmp = NULL; + SPSelectContext *sc = SP_SELECT_CONTEXT(event_context); + for (GList *l = sc->cycling_items; l != NULL; l = g_list_next(l)) { + Inkscape::DrawingItem *arenaitem = SP_ITEM(l->data)->get_arenaitem(event_context->desktop->dkey); + arenaitem->setOpacity(SP_SCALE24_TO_FLOAT(SP_ITEM(l->data)->style->opacity.value)); + } + g_list_free(sc->cycling_items); + g_list_free(sc->cycling_items_selected_before); + g_list_free(sc->cycling_items_cmp); + sc->cycling_items = NULL; + sc->cycling_items_selected_before = NULL; + sc->cycling_cur_item = NULL; + sc->cycling_items_cmp = NULL; } diff --git a/src/sp-ellipse.cpp b/src/sp-ellipse.cpp index 8a9793852..bf019fb13 100644 --- a/src/sp-ellipse.cpp +++ b/src/sp-ellipse.cpp @@ -167,16 +167,20 @@ static void sp_genericellipse_set_shape(SPShape *shape) return; } - double rx, ry, s, e; - double x0, y0, x1, y1, x2, y2, x3, y3; + double rx; + double ry; + double s; double len; gint slice = FALSE; - // gint i; SPGenericEllipse *ellipse = (SPGenericEllipse *) shape; - if ((ellipse->rx.computed < 1e-18) || (ellipse->ry.computed < 1e-18)) return; - if (fabs(ellipse->end - ellipse->start) < 1e-9) return; + if ((ellipse->rx.computed < 1e-18) || (ellipse->ry.computed < 1e-18)) { + return; + } + if (fabs(ellipse->end - ellipse->start) < 1e-9){ + return; + } sp_genericellipse_normalize(ellipse); @@ -197,18 +201,19 @@ static void sp_genericellipse_set_shape(SPShape *shape) curve->moveto(cos(ellipse->start), sin(ellipse->start)); for (s = ellipse->start; s < ellipse->end; s += M_PI_2) { - e = s + M_PI_2; - if (e > ellipse->end) + double e = s + M_PI_2; + if (e > ellipse->end){ e = ellipse->end; + } len = 4*tan((e - s)/4)/3; - x0 = cos(s); - y0 = sin(s); - x1 = x0 + len * cos(s + M_PI_2); - y1 = y0 + len * sin(s + M_PI_2); - x3 = cos(e); - y3 = sin(e); - x2 = x3 + len * cos(e - M_PI_2); - y2 = y3 + len * sin(e - M_PI_2); + double x0 = cos(s); + double y0 = sin(s); + double x1 = x0 + len * cos(s + M_PI_2); + double y1 = y0 + len * sin(s + M_PI_2); + double x3 = cos(e); + double y3 = sin(e); + double x2 = x3 + len * cos(e - M_PI_2); + double y2 = y3 + len * sin(e - M_PI_2); #ifdef ELLIPSE_VERBOSE g_print("step %d s %f e %f coords %f %f %f %f %f %f\n", i, s, e, x1, y1, x2, y2, x3, y3); diff --git a/src/sp-pattern.cpp b/src/sp-pattern.cpp index c4308a1a9..62811d51a 100644 --- a/src/sp-pattern.cpp +++ b/src/sp-pattern.cpp @@ -56,19 +56,19 @@ G_DEFINE_TYPE(SPPattern, sp_pattern, SP_TYPE_PAINT_SERVER); static void sp_pattern_class_init (SPPatternClass *klass) { - SPObjectClass *sp_object_class; - SPPaintServerClass *ps_class; + SPObjectClass *sp_object_class; + SPPaintServerClass *ps_class; - sp_object_class = (SPObjectClass *) klass; - ps_class = (SPPaintServerClass *) klass; + sp_object_class = (SPObjectClass *) klass; + ps_class = (SPPaintServerClass *) klass; - sp_object_class->build = sp_pattern_build; - sp_object_class->release = sp_pattern_release; - sp_object_class->set = sp_pattern_set; - sp_object_class->update = sp_pattern_update; - sp_object_class->modified = sp_pattern_modified; + sp_object_class->build = sp_pattern_build; + sp_object_class->release = sp_pattern_release; + sp_object_class->set = sp_pattern_set; + sp_object_class->update = sp_pattern_update; + sp_object_class->modified = sp_pattern_modified; - // do we need _write? seems to work without it + // do we need _write? seems to work without it ps_class->pattern_new = sp_pattern_create_pattern; } @@ -76,46 +76,46 @@ sp_pattern_class_init (SPPatternClass *klass) static void sp_pattern_init (SPPattern *pat) { - pat->ref = new SPPatternReference(pat); - pat->ref->changedSignal().connect(sigc::bind(sigc::ptr_fun(pattern_ref_changed), pat)); + pat->ref = new SPPatternReference(pat); + pat->ref->changedSignal().connect(sigc::bind(sigc::ptr_fun(pattern_ref_changed), pat)); - pat->patternUnits = SP_PATTERN_UNITS_OBJECTBOUNDINGBOX; - pat->patternUnits_set = FALSE; + pat->patternUnits = SP_PATTERN_UNITS_OBJECTBOUNDINGBOX; + pat->patternUnits_set = FALSE; - pat->patternContentUnits = SP_PATTERN_UNITS_USERSPACEONUSE; - pat->patternContentUnits_set = FALSE; + pat->patternContentUnits = SP_PATTERN_UNITS_USERSPACEONUSE; + pat->patternContentUnits_set = FALSE; - pat->patternTransform = Geom::identity(); - pat->patternTransform_set = FALSE; + pat->patternTransform = Geom::identity(); + pat->patternTransform_set = FALSE; - pat->x.unset(); - pat->y.unset(); - pat->width.unset(); - pat->height.unset(); + pat->x.unset(); + pat->y.unset(); + pat->width.unset(); + pat->height.unset(); - pat->viewBox_set = FALSE; + pat->viewBox_set = FALSE; - new (&pat->modified_connection) sigc::connection(); + new (&pat->modified_connection) sigc::connection(); } static void sp_pattern_build (SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) { - if (((SPObjectClass *) sp_pattern_parent_class)->build) - (* ((SPObjectClass *) sp_pattern_parent_class)->build) (object, document, repr); - - object->readAttr( "patternUnits" ); - object->readAttr( "patternContentUnits" ); - object->readAttr( "patternTransform" ); - object->readAttr( "x" ); - object->readAttr( "y" ); - object->readAttr( "width" ); - object->readAttr( "height" ); - object->readAttr( "viewBox" ); - object->readAttr( "xlink:href" ); - - /* Register ourselves */ - document->addResource("pattern", object); + if (((SPObjectClass *) sp_pattern_parent_class)->build) + (* ((SPObjectClass *) sp_pattern_parent_class)->build) (object, document, repr); + + object->readAttr( "patternUnits" ); + object->readAttr( "patternContentUnits" ); + object->readAttr( "patternTransform" ); + object->readAttr( "x" ); + object->readAttr( "y" ); + object->readAttr( "width" ); + object->readAttr( "height" ); + object->readAttr( "viewBox" ); + object->readAttr( "xlink:href" ); + + /* Register ourselves */ + document->addResource("pattern", object); } static void sp_pattern_release(SPObject *object) @@ -144,118 +144,115 @@ static void sp_pattern_release(SPObject *object) static void sp_pattern_set (SPObject *object, unsigned int key, const gchar *value) { - SPPattern *pat = SP_PATTERN (object); - - switch (key) { - case SP_ATTR_PATTERNUNITS: - if (value) { - if (!strcmp (value, "userSpaceOnUse")) { - pat->patternUnits = SP_PATTERN_UNITS_USERSPACEONUSE; - } else { - pat->patternUnits = SP_PATTERN_UNITS_OBJECTBOUNDINGBOX; - } - pat->patternUnits_set = TRUE; - } else { - pat->patternUnits_set = FALSE; - } - object->requestModified(SP_OBJECT_MODIFIED_FLAG); - break; - case SP_ATTR_PATTERNCONTENTUNITS: - if (value) { - if (!strcmp (value, "userSpaceOnUse")) { - pat->patternContentUnits = SP_PATTERN_UNITS_USERSPACEONUSE; - } else { - pat->patternContentUnits = SP_PATTERN_UNITS_OBJECTBOUNDINGBOX; - } - pat->patternContentUnits_set = TRUE; - } else { - pat->patternContentUnits_set = FALSE; - } - object->requestModified(SP_OBJECT_MODIFIED_FLAG); - break; - case SP_ATTR_PATTERNTRANSFORM: { - Geom::Affine t; - if (value && sp_svg_transform_read (value, &t)) { - pat->patternTransform = t; - pat->patternTransform_set = TRUE; - } else { - pat->patternTransform = Geom::identity(); - pat->patternTransform_set = FALSE; - } - object->requestModified(SP_OBJECT_MODIFIED_FLAG); - break; - } - case SP_ATTR_X: - pat->x.readOrUnset(value); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); - break; - case SP_ATTR_Y: - pat->y.readOrUnset(value); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); - break; - case SP_ATTR_WIDTH: - pat->width.readOrUnset(value); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); - break; - case SP_ATTR_HEIGHT: - pat->height.readOrUnset(value); - object->requestModified(SP_OBJECT_MODIFIED_FLAG); - break; - case SP_ATTR_VIEWBOX: { - /* fixme: Think (Lauris) */ - double x, y, width, height; - char *eptr; - - if (value) { - eptr = (gchar *) value; - x = g_ascii_strtod (eptr, &eptr); - while (*eptr && ((*eptr == ',') || (*eptr == ' '))) eptr++; - y = g_ascii_strtod (eptr, &eptr); - while (*eptr && ((*eptr == ',') || (*eptr == ' '))) eptr++; - width = g_ascii_strtod (eptr, &eptr); - while (*eptr && ((*eptr == ',') || (*eptr == ' '))) eptr++; - height = g_ascii_strtod (eptr, &eptr); - while (*eptr && ((*eptr == ',') || (*eptr == ' '))) eptr++; - if ((width > 0) && (height > 0)) { - pat->viewBox = Geom::Rect::from_xywh(x, y, width, height); - pat->viewBox_set = TRUE; - } else { - pat->viewBox_set = FALSE; - } - } else { - pat->viewBox_set = FALSE; - } - object->requestModified(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG); - break; - } - case SP_ATTR_XLINK_HREF: - if ( value && pat->href && ( strcmp(value, pat->href) == 0 ) ) { - /* Href unchanged, do nothing. */ - } else { - g_free(pat->href); - pat->href = NULL; - if (value) { - // First, set the href field; it's only used in the "unchanged" check above. - pat->href = g_strdup(value); - // Now do the attaching, which emits the changed signal. - if (value) { - try { - pat->ref->attach(Inkscape::URI(value)); - } catch (Inkscape::BadURIException &e) { - g_warning("%s", e.what()); - pat->ref->detach(); - } - } else { - pat->ref->detach(); - } - } - } - break; - default: - if (((SPObjectClass *) sp_pattern_parent_class)->set) - ((SPObjectClass *) sp_pattern_parent_class)->set (object, key, value); - break; - } + SPPattern *pat = SP_PATTERN (object); + + switch (key) { + case SP_ATTR_PATTERNUNITS: + if (value) { + if (!strcmp (value, "userSpaceOnUse")) { + pat->patternUnits = SP_PATTERN_UNITS_USERSPACEONUSE; + } else { + pat->patternUnits = SP_PATTERN_UNITS_OBJECTBOUNDINGBOX; + } + pat->patternUnits_set = TRUE; + } else { + pat->patternUnits_set = FALSE; + } + object->requestModified(SP_OBJECT_MODIFIED_FLAG); + break; + case SP_ATTR_PATTERNCONTENTUNITS: + if (value) { + if (!strcmp (value, "userSpaceOnUse")) { + pat->patternContentUnits = SP_PATTERN_UNITS_USERSPACEONUSE; + } else { + pat->patternContentUnits = SP_PATTERN_UNITS_OBJECTBOUNDINGBOX; + } + pat->patternContentUnits_set = TRUE; + } else { + pat->patternContentUnits_set = FALSE; + } + object->requestModified(SP_OBJECT_MODIFIED_FLAG); + break; + case SP_ATTR_PATTERNTRANSFORM: { + Geom::Affine t; + if (value && sp_svg_transform_read (value, &t)) { + pat->patternTransform = t; + pat->patternTransform_set = TRUE; + } else { + pat->patternTransform = Geom::identity(); + pat->patternTransform_set = FALSE; + } + object->requestModified(SP_OBJECT_MODIFIED_FLAG); + break; + } + case SP_ATTR_X: + pat->x.readOrUnset(value); + object->requestModified(SP_OBJECT_MODIFIED_FLAG); + break; + case SP_ATTR_Y: + pat->y.readOrUnset(value); + object->requestModified(SP_OBJECT_MODIFIED_FLAG); + break; + case SP_ATTR_WIDTH: + pat->width.readOrUnset(value); + object->requestModified(SP_OBJECT_MODIFIED_FLAG); + break; + case SP_ATTR_HEIGHT: + pat->height.readOrUnset(value); + object->requestModified(SP_OBJECT_MODIFIED_FLAG); + break; + case SP_ATTR_VIEWBOX: { + /* fixme: Think (Lauris) */ + if (value) { + char *eptr = const_cast(value); + double x = g_ascii_strtod (eptr, &eptr); + while (*eptr && ((*eptr == ',') || (*eptr == ' '))) eptr++; + double y = g_ascii_strtod (eptr, &eptr); + while (*eptr && ((*eptr == ',') || (*eptr == ' '))) eptr++; + double width = g_ascii_strtod (eptr, &eptr); + while (*eptr && ((*eptr == ',') || (*eptr == ' '))) eptr++; + double height = g_ascii_strtod (eptr, &eptr); + while (*eptr && ((*eptr == ',') || (*eptr == ' '))) eptr++; + if ((width > 0) && (height > 0)) { + pat->viewBox = Geom::Rect::from_xywh(x, y, width, height); + pat->viewBox_set = TRUE; + } else { + pat->viewBox_set = FALSE; + } + } else { + pat->viewBox_set = FALSE; + } + object->requestModified(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG); + break; + } + case SP_ATTR_XLINK_HREF: + if ( value && pat->href && ( strcmp(value, pat->href) == 0 ) ) { + /* Href unchanged, do nothing. */ + } else { + g_free(pat->href); + pat->href = NULL; + if (value) { + // First, set the href field; it's only used in the "unchanged" check above. + pat->href = g_strdup(value); + // Now do the attaching, which emits the changed signal. + if (value) { + try { + pat->ref->attach(Inkscape::URI(value)); + } catch (Inkscape::BadURIException &e) { + g_warning("%s", e.what()); + pat->ref->detach(); + } + } else { + pat->ref->detach(); + } + } + } + break; + default: + if (((SPObjectClass *) sp_pattern_parent_class)->set) + ((SPObjectClass *) sp_pattern_parent_class)->set (object, key, value); + break; + } } /* TODO: do we need a ::remove_child handler? */ @@ -268,11 +265,11 @@ static GSList *pattern_getchildren(SPPattern *pat) for (SPPattern *pat_i = pat; pat_i != NULL; pat_i = pat_i->ref ? pat_i->ref->getObject() : NULL) { if (pat_i->firstChild()) { // find the first one with children - for (SPObject *child = pat->firstChild() ; child ; child = child->getNext() ) { - l = g_slist_prepend (l, child); - } - break; // do not go further up the chain if children are found - } + for (SPObject *child = pat->firstChild() ; child ; child = child->getNext() ) { + l = g_slist_prepend (l, child); + } + break; // do not go further up the chain if children are found + } } return l; @@ -281,45 +278,45 @@ static GSList *pattern_getchildren(SPPattern *pat) static void sp_pattern_update (SPObject *object, SPCtx *ctx, unsigned int flags) { - SPPattern *pat = SP_PATTERN (object); - - if (flags & SP_OBJECT_MODIFIED_FLAG) flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; - flags &= SP_OBJECT_MODIFIED_CASCADE; - - GSList *l = pattern_getchildren (pat); - l = g_slist_reverse (l); - - while (l) { - SPObject *child = SP_OBJECT (l->data); - sp_object_ref (child, NULL); - l = g_slist_remove (l, child); - if (flags || (child->mflags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_CHILD_MODIFIED_FLAG))) { - child->updateDisplay(ctx, flags); - } - sp_object_unref (child, NULL); - } + SPPattern *pat = SP_PATTERN (object); + + if (flags & SP_OBJECT_MODIFIED_FLAG) flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; + flags &= SP_OBJECT_MODIFIED_CASCADE; + + GSList *l = pattern_getchildren (pat); + l = g_slist_reverse (l); + + while (l) { + SPObject *child = SP_OBJECT (l->data); + sp_object_ref (child, NULL); + l = g_slist_remove (l, child); + if (flags || (child->mflags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_CHILD_MODIFIED_FLAG))) { + child->updateDisplay(ctx, flags); + } + sp_object_unref (child, NULL); + } } static void sp_pattern_modified (SPObject *object, guint flags) { - SPPattern *pat = SP_PATTERN (object); - - if (flags & SP_OBJECT_MODIFIED_FLAG) flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; - flags &= SP_OBJECT_MODIFIED_CASCADE; - - GSList *l = pattern_getchildren (pat); - l = g_slist_reverse (l); - - while (l) { - SPObject *child = SP_OBJECT (l->data); - sp_object_ref (child, NULL); - l = g_slist_remove (l, child); - if (flags || (child->mflags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_CHILD_MODIFIED_FLAG))) { - child->emitModified(flags); - } - sp_object_unref (child, NULL); - } + SPPattern *pat = SP_PATTERN (object); + + if (flags & SP_OBJECT_MODIFIED_FLAG) flags |= SP_OBJECT_PARENT_MODIFIED_FLAG; + flags &= SP_OBJECT_MODIFIED_CASCADE; + + GSList *l = pattern_getchildren (pat); + l = g_slist_reverse (l); + + while (l) { + SPObject *child = SP_OBJECT (l->data); + sp_object_ref (child, NULL); + l = g_slist_remove (l, child); + if (flags || (child->mflags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_CHILD_MODIFIED_FLAG))) { + child->emitModified(flags); + } + sp_object_unref (child, NULL); + } } /** @@ -328,14 +325,14 @@ Gets called when the pattern is reattached to another static void pattern_ref_changed(SPObject *old_ref, SPObject *ref, SPPattern *pat) { - if (old_ref) { - pat->modified_connection.disconnect(); - } - if (SP_IS_PATTERN (ref)) { - pat->modified_connection = ref->connectModified(sigc::bind<2>(sigc::ptr_fun(&pattern_ref_modified), pat)); - } - - pattern_ref_modified (ref, 0, pat); + if (old_ref) { + pat->modified_connection.disconnect(); + } + if (SP_IS_PATTERN (ref)) { + pat->modified_connection = ref->connectModified(sigc::bind<2>(sigc::ptr_fun(&pattern_ref_modified), pat)); + } + + pattern_ref_modified (ref, 0, pat); } /** @@ -386,56 +383,56 @@ count_pattern_hrefs(SPObject *o, SPPattern *pat) SPPattern *pattern_chain(SPPattern *pattern) { - SPDocument *document = pattern->document; + SPDocument *document = pattern->document; Inkscape::XML::Document *xml_doc = document->getReprDoc(); - Inkscape::XML::Node *defsrepr = document->getDefs()->getRepr(); + Inkscape::XML::Node *defsrepr = document->getDefs()->getRepr(); - Inkscape::XML::Node *repr = xml_doc->createElement("svg:pattern"); - repr->setAttribute("inkscape:collect", "always"); - gchar *parent_ref = g_strconcat("#", pattern->getRepr()->attribute("id"), NULL); - repr->setAttribute("xlink:href", parent_ref); - g_free (parent_ref); + Inkscape::XML::Node *repr = xml_doc->createElement("svg:pattern"); + repr->setAttribute("inkscape:collect", "always"); + gchar *parent_ref = g_strconcat("#", pattern->getRepr()->attribute("id"), NULL); + repr->setAttribute("xlink:href", parent_ref); + g_free (parent_ref); - defsrepr->addChild(repr, NULL); - const gchar *child_id = repr->attribute("id"); - SPObject *child = document->getObjectById(child_id); - g_assert (SP_IS_PATTERN (child)); + defsrepr->addChild(repr, NULL); + const gchar *child_id = repr->attribute("id"); + SPObject *child = document->getObjectById(child_id); + g_assert (SP_IS_PATTERN (child)); - return SP_PATTERN (child); + return SP_PATTERN (child); } SPPattern * sp_pattern_clone_if_necessary (SPItem *item, SPPattern *pattern, const gchar *property) { - if (!pattern->href || pattern->hrefcount > count_pattern_hrefs(item, pattern)) { - pattern = pattern_chain (pattern); - gchar *href = g_strconcat("url(#", pattern->getRepr()->attribute("id"), ")", NULL); - - SPCSSAttr *css = sp_repr_css_attr_new (); - sp_repr_css_set_property (css, property, href); - sp_repr_css_change_recursive(item->getRepr(), css, "style"); - } - return pattern; + if (!pattern->href || pattern->hrefcount > count_pattern_hrefs(item, pattern)) { + pattern = pattern_chain (pattern); + gchar *href = g_strconcat("url(#", pattern->getRepr()->attribute("id"), ")", NULL); + + SPCSSAttr *css = sp_repr_css_attr_new (); + sp_repr_css_set_property (css, property, href); + sp_repr_css_change_recursive(item->getRepr(), css, "style"); + } + return pattern; } void sp_pattern_transform_multiply (SPPattern *pattern, Geom::Affine postmul, bool set) { - // this formula is for a different interpretation of pattern transforms as described in (*) in sp-pattern.cpp - // for it to work, we also need sp_object_read_attr( item, "transform"); - //pattern->patternTransform = premul * item->transform * pattern->patternTransform * item->transform.inverse() * postmul; - - // otherwise the formula is much simpler - if (set) { - pattern->patternTransform = postmul; - } else { - pattern->patternTransform = pattern_patternTransform(pattern) * postmul; - } - pattern->patternTransform_set = TRUE; - - gchar *c=sp_svg_transform_write(pattern->patternTransform); - pattern->getRepr()->setAttribute("patternTransform", c); - g_free(c); + // this formula is for a different interpretation of pattern transforms as described in (*) in sp-pattern.cpp + // for it to work, we also need sp_object_read_attr( item, "transform"); + //pattern->patternTransform = premul * item->transform * pattern->patternTransform * item->transform.inverse() * postmul; + + // otherwise the formula is much simpler + if (set) { + pattern->patternTransform = postmul; + } else { + pattern->patternTransform = pattern_patternTransform(pattern) * postmul; + } + pattern->patternTransform_set = TRUE; + + gchar *c=sp_svg_transform_write(pattern->patternTransform); + pattern->getRepr()->setAttribute("patternTransform", c); + g_free(c); } const gchar *pattern_tile(GSList *reprs, Geom::Rect bounds, SPDocument *document, Geom::Affine transform, Geom::Affine move) @@ -443,33 +440,33 @@ const gchar *pattern_tile(GSList *reprs, Geom::Rect bounds, SPDocument *document Inkscape::XML::Document *xml_doc = document->getReprDoc(); Inkscape::XML::Node *defsrepr = document->getDefs()->getRepr(); - Inkscape::XML::Node *repr = xml_doc->createElement("svg:pattern"); - repr->setAttribute("patternUnits", "userSpaceOnUse"); - sp_repr_set_svg_double(repr, "width", bounds.dimensions()[Geom::X]); - sp_repr_set_svg_double(repr, "height", bounds.dimensions()[Geom::Y]); + Inkscape::XML::Node *repr = xml_doc->createElement("svg:pattern"); + repr->setAttribute("patternUnits", "userSpaceOnUse"); + sp_repr_set_svg_double(repr, "width", bounds.dimensions()[Geom::X]); + sp_repr_set_svg_double(repr, "height", bounds.dimensions()[Geom::Y]); - gchar *t=sp_svg_transform_write(transform); - repr->setAttribute("patternTransform", t); - g_free(t); + gchar *t=sp_svg_transform_write(transform); + repr->setAttribute("patternTransform", t); + g_free(t); - defsrepr->appendChild(repr); - const gchar *pat_id = repr->attribute("id"); - SPObject *pat_object = document->getObjectById(pat_id); + defsrepr->appendChild(repr); + const gchar *pat_id = repr->attribute("id"); + SPObject *pat_object = document->getObjectById(pat_id); - for (GSList *i = reprs; i != NULL; i = i->next) { - Inkscape::XML::Node *node = (Inkscape::XML::Node *)(i->data); - SPItem *copy = SP_ITEM(pat_object->appendChildRepr(node)); + for (GSList *i = reprs; i != NULL; i = i->next) { + Inkscape::XML::Node *node = (Inkscape::XML::Node *)(i->data); + SPItem *copy = SP_ITEM(pat_object->appendChildRepr(node)); - Geom::Affine dup_transform; - if (!sp_svg_transform_read (node->attribute("transform"), &dup_transform)) - dup_transform = Geom::identity(); - dup_transform *= move; + Geom::Affine dup_transform; + if (!sp_svg_transform_read (node->attribute("transform"), &dup_transform)) + dup_transform = Geom::identity(); + dup_transform *= move; copy->doWriteTransform(copy->getRepr(), dup_transform, NULL, false); } - Inkscape::GC::release(repr); - return pat_id; + Inkscape::GC::release(repr); + return pat_id; } SPPattern *pattern_getroot(SPPattern *pat) diff --git a/src/sp-text.cpp b/src/sp-text.cpp index 8d42b7d59..e43a34762 100644 --- a/src/sp-text.cpp +++ b/src/sp-text.cpp @@ -381,9 +381,9 @@ static char * sp_text_description(SPItem *item) font_instance *tf = font_factory::Default()->FaceFromStyle(style); - char name_buf[256]; char *n; if (tf) { + char name_buf[256]; tf->Family(name_buf, sizeof(name_buf)); n = xml_quote_strdup(name_buf); tf->Unref(); diff --git a/src/sp-use.cpp b/src/sp-use.cpp index 2220b4b47..5ec1f2523 100644 --- a/src/sp-use.cpp +++ b/src/sp-use.cpp @@ -252,8 +252,7 @@ sp_use_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML:: return repr; } -static Geom::OptRect -sp_use_bbox(SPItem const *item, Geom::Affine const &transform, SPItem::BBoxType type) +static Geom::OptRect sp_use_bbox(SPItem const *item, Geom::Affine const &transform, SPItem::BBoxType type) { SPUse const *use = SP_USE(item); Geom::OptRect bbox; @@ -269,8 +268,7 @@ sp_use_bbox(SPItem const *item, Geom::Affine const &transform, SPItem::BBoxType return bbox; } -static void -sp_use_print(SPItem *item, SPPrintContext *ctx) +static void sp_use_print(SPItem *item, SPPrintContext *ctx) { bool translated = false; SPUse *use = SP_USE(item); @@ -290,12 +288,10 @@ sp_use_print(SPItem *item, SPPrintContext *ctx) } } -static gchar * -sp_use_description(SPItem *item) +static gchar *sp_use_description(SPItem *item) { SPUse *use = SP_USE(item); - char *ret; if (use->child) { if( SP_IS_SYMBOL( use->child ) ) { @@ -316,7 +312,7 @@ sp_use_description(SPItem *item) char *child_desc = SP_ITEM(use->child)->description(); --recursion_depth; - ret = g_strdup_printf(_("Clone of: %s"), child_desc); + char *ret = g_strdup_printf(_("Clone of: %s"), child_desc); g_free(child_desc); return ret; } else { diff --git a/src/syseq.h b/src/syseq.h index 4e7ccd943..582f2949f 100644 --- a/src/syseq.h +++ b/src/syseq.h @@ -181,10 +181,9 @@ static std::vector gauss_jordan (double A[S][T], int avoid_col = -1) { if (avoid_col != -1) { cols_used.push_back (avoid_col); } - int col; for (int i = 0; i < S; ++i) { /* for each row find a pivot element of maximal absolute value, skipping the columns that were used before */ - col = find_pivot(A, i, cols_used); + int col = find_pivot(A, i, cols_used); cols_used.push_back(col); if (col == -1) { // no non-zero elements in the row -- cgit v1.2.3 From 6ae6c0bea96eef09907091279e0678aa5f83102d Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Sun, 4 Aug 2013 18:01:18 -0400 Subject: Switched to global UnitTable. (bzr r12380.1.62) --- src/display/canvas-axonomgrid.cpp | 4 +--- src/display/canvas-grid.cpp | 7 +------ src/document.cpp | 3 +-- src/live_effects/parameter/unit.cpp | 4 ++-- src/lpe-tool-context.cpp | 5 ++--- src/main.cpp | 1 - src/measure-context.cpp | 2 +- src/preferences.cpp | 4 ++-- src/sp-namedview.cpp | 5 +---- src/ui/dialog/clonetiler.cpp | 6 +----- src/ui/dialog/export.cpp | 4 ++-- src/ui/widget/page-sizer.cpp | 3 +-- src/ui/widget/page-sizer.h | 1 - src/ui/widget/scalar-unit.cpp | 7 ++++--- src/ui/widget/selected-style.cpp | 3 ++- src/ui/widget/unit-menu.cpp | 16 +++++++++------- src/ui/widget/unit-menu.h | 3 --- src/ui/widget/unit-tracker.cpp | 12 +++++++----- src/ui/widget/unit-tracker.h | 2 -- src/util/expression-evaluator.cpp | 4 ++-- src/util/units.cpp | 9 ++------- src/util/units.h | 2 ++ src/widgets/desktop-widget.cpp | 2 +- src/widgets/node-toolbar.cpp | 4 +--- src/widgets/paintbucket-toolbar.cpp | 2 +- src/widgets/rect-toolbar.cpp | 3 +-- src/widgets/ruler.cpp | 6 +----- src/widgets/select-toolbar.cpp | 5 +---- src/widgets/stroke-style.cpp | 2 +- 29 files changed, 50 insertions(+), 81 deletions(-) diff --git a/src/display/canvas-axonomgrid.cpp b/src/display/canvas-axonomgrid.cpp index d3db94975..f7a7cb39a 100644 --- a/src/display/canvas-axonomgrid.cpp +++ b/src/display/canvas-axonomgrid.cpp @@ -53,6 +53,7 @@ #include "round.h" #include "util/units.h" +using Inkscape::Util::unit_table; enum Dim3 { X=0, Y, Z }; @@ -160,7 +161,6 @@ CanvasAxonomGrid::CanvasAxonomGrid (SPNamedView * nv, Inkscape::XML::Node * in_r : CanvasGrid(nv, in_repr, in_doc, GRID_AXONOMETRIC) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - Inkscape::Util::UnitTable unit_table; gridunit = new Inkscape::Util::Unit(unit_table.getUnit(prefs->getString("/options/grids/axonom/units"))); if (!gridunit) gridunit = new Inkscape::Util::Unit(unit_table.getUnit("px")); @@ -213,7 +213,6 @@ void CanvasAxonomGrid::readRepr() { gchar const *value; - Inkscape::Util::UnitTable unit_table; if ( (value = repr->attribute("originx")) ) { Inkscape::Util::Quantity q = unit_table.getQuantity(value); gridunit = q.unit; @@ -370,7 +369,6 @@ _wr.setUpdating (false); _rumg->setUnit (gridunit->abbr); gdouble val; - Inkscape::Util::UnitTable unit_table; val = origin[Geom::X]; val = Inkscape::Util::Quantity::convert(val, "px", *gridunit); _rsu_ox->setValue (val); diff --git a/src/display/canvas-grid.cpp b/src/display/canvas-grid.cpp index 1a5e0e52d..ef32c113b 100644 --- a/src/display/canvas-grid.cpp +++ b/src/display/canvas-grid.cpp @@ -55,6 +55,7 @@ #include "display/sp-canvas.h" using Inkscape::DocumentUndo; +using Inkscape::Util::unit_table; namespace Inkscape { @@ -397,8 +398,6 @@ void CanvasGrid::setOrigin(Geom::Point const &origin_px) Inkscape::SVGOStringStream os_x, os_y; gdouble val; - Inkscape::Util::UnitTable unit_table; - val = origin_px[Geom::X]; val = Inkscape::Util::Quantity::convert(val, "px", *gridunit); os_x << val << gridunit->abbr; @@ -490,7 +489,6 @@ CanvasXYGrid::CanvasXYGrid (SPNamedView * nv, Inkscape::XML::Node * in_repr, SPD : CanvasGrid(nv, in_repr, in_doc, GRID_RECTANGULAR) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - Inkscape::Util::UnitTable unit_table; gridunit = new Inkscape::Util::Unit(unit_table.getUnit(prefs->getString("/options/grids/xy/units"))); if (!gridunit) { gridunit = new Inkscape::Util::Unit(unit_table.getUnit("px")); @@ -588,8 +586,6 @@ static void validateInt(gint oldVal, void CanvasXYGrid::readRepr() { - Inkscape::Util::UnitTable unit_table; - gchar const *value; if ( (value = repr->attribute("originx")) ) { Inkscape::Util::Quantity q = unit_table.getQuantity(value); @@ -756,7 +752,6 @@ CanvasXYGrid::newSpecificWidget() _rumg->setUnit (gridunit->abbr); gdouble val; - Inkscape::Util::UnitTable unit_table; val = origin[Geom::X]; val = Inkscape::Util::Quantity::convert(val, "px", *gridunit); _rsu_ox->setValue (val); diff --git a/src/document.cpp b/src/document.cpp index afd0a6ddc..0b742e491 100644 --- a/src/document.cpp +++ b/src/document.cpp @@ -68,6 +68,7 @@ #include "libcroco/cr-cascade.h" using Inkscape::DocumentUndo; +using Inkscape::Util::unit_table; // Higher number means lower priority. #define SP_DOCUMENT_UPDATE_PRIORITY (G_PRIORITY_HIGH_IDLE - 2) @@ -86,8 +87,6 @@ static gint doc_count = 0; static unsigned long next_serial = 0; -static Inkscape::Util::UnitTable unit_table; - SPDocument::SPDocument() : keepalive(FALSE), virgin(TRUE), diff --git a/src/live_effects/parameter/unit.cpp b/src/live_effects/parameter/unit.cpp index 264b4b9ee..561766920 100644 --- a/src/live_effects/parameter/unit.cpp +++ b/src/live_effects/parameter/unit.cpp @@ -12,6 +12,8 @@ #include "verbs.h" #include "util/units.h" +using Inkscape::Util::unit_table; + namespace Inkscape { namespace LivePathEffect { @@ -22,7 +24,6 @@ UnitParam::UnitParam( const Glib::ustring& label, const Glib::ustring& tip, Effect* effect, Glib::ustring default_unit) : Parameter(label, tip, key, wr, effect) { - Inkscape::Util::UnitTable unit_table; defunit = new Inkscape::Util::Unit(unit_table.getUnit(default_unit)); unit = defunit; } @@ -34,7 +35,6 @@ UnitParam::~UnitParam() bool UnitParam::param_readSVGValue(const gchar * strvalue) { - Inkscape::Util::UnitTable unit_table; if (strvalue) { param_set_value(unit_table.getUnit(strvalue)); return true; diff --git a/src/lpe-tool-context.cpp b/src/lpe-tool-context.cpp index 32096970f..4e50a12e1 100644 --- a/src/lpe-tool-context.cpp +++ b/src/lpe-tool-context.cpp @@ -41,6 +41,8 @@ #include "lpe-tool-context.h" +using Inkscape::Util::unit_table; + static void sp_lpetool_context_dispose(GObject *object); static void sp_lpetool_context_setup(SPEventContext *ec); @@ -444,8 +446,6 @@ lpetool_create_measuring_items(SPLPEToolContext *lc, Inkscape::Selection *select gchar *arc_length; double lengthval; - Inkscape::Util::UnitTable unit_table; - for (GSList const *i = selection->itemList(); i != NULL; i = i->next) { if (SP_IS_PATH(i->data)) { path = SP_PATH(i->data); @@ -488,7 +488,6 @@ void lpetool_update_measuring_items(SPLPEToolContext *lc) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - Inkscape::Util::UnitTable unit_table; SPPath *path; SPCurve *curve; double lengthval; diff --git a/src/main.cpp b/src/main.cpp index 577cc3d79..29f431aa8 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -68,7 +68,6 @@ #include "color.h" #include "sp-item.h" #include "sp-root.h" -#include "util/units.h" #include "svg/svg.h" #include "svg/svg-color.h" diff --git a/src/measure-context.cpp b/src/measure-context.cpp index 465b1da80..3c02c6f15 100644 --- a/src/measure-context.cpp +++ b/src/measure-context.cpp @@ -46,6 +46,7 @@ using Inkscape::ControlManager; using Inkscape::CTLINE_SECONDARY; +using Inkscape::Util::unit_table; static void sp_measure_context_setup(SPEventContext *ec); static void sp_measure_context_finish(SPEventContext *ec); @@ -515,7 +516,6 @@ static gint sp_measure_context_root_handler(SPEventContext *event_context, GdkEv std::sort(intersections.begin(), intersections.end(), GeomPointSortPredicate); } - Inkscape::Util::UnitTable unit_table; Glib::ustring unit_name = prefs->getString("/tools/measure/unit"); if (!unit_name.compare("")) { unit_name = "px"; diff --git a/src/preferences.cpp b/src/preferences.cpp index 1d7009a99..0dc6f1ec4 100644 --- a/src/preferences.cpp +++ b/src/preferences.cpp @@ -28,6 +28,8 @@ #define PREFERENCES_FILE_NAME "preferences.xml" +using Inkscape::Util::unit_table; + namespace Inkscape { static Inkscape::XML::Document *loadImpl( std::string const& prefsFilename, Glib::ustring & errMsg ); @@ -777,8 +779,6 @@ double Preferences::_extractDouble(Entry const &v) double Preferences::_extractDouble(Entry const &v, Glib::ustring const &requested_unit) { - static Inkscape::Util::UnitTable unit_table; // load the unit_table once by making it static - double val = _extractDouble(v); Glib::ustring unit = _extractUnit(v); diff --git a/src/sp-namedview.cpp b/src/sp-namedview.cpp index dde205eed..48f8eba2a 100644 --- a/src/sp-namedview.cpp +++ b/src/sp-namedview.cpp @@ -40,6 +40,7 @@ #include using Inkscape::DocumentUndo; +using Inkscape::Util::unit_table; #define DEFAULTGRIDCOLOR 0x3f3fff25 #define DEFAULTGRIDEMPCOLOR 0x3f3fff60 @@ -287,8 +288,6 @@ static void sp_namedview_set(SPObject *object, unsigned int key, const gchar *va { SPNamedView *nv = SP_NAMEDVIEW(object); - static Inkscape::Util::UnitTable unit_table; - switch (key) { case SP_ATTR_VIEWONLY: nv->editable = (!value); @@ -1111,7 +1110,6 @@ double SPNamedView::getMarginLength(gchar const * const key, bool const use_width) { double value; - static Inkscape::Util::UnitTable unit_table; Inkscape::Util::Unit percent = unit_table.getUnit("%"); if(!this->storeAsDouble(key,&value)) { return 0.0; @@ -1133,7 +1131,6 @@ Inkscape::Util::Unit const SPNamedView::getDefaultUnit() const if (doc_units) { return *doc_units; } else { - Inkscape::Util::UnitTable unit_table; return *(new Inkscape::Util::Unit(unit_table.getUnit("pt"))); } } diff --git a/src/ui/dialog/clonetiler.cpp b/src/ui/dialog/clonetiler.cpp index abb2512f7..b3675440b 100644 --- a/src/ui/dialog/clonetiler.cpp +++ b/src/ui/dialog/clonetiler.cpp @@ -58,6 +58,7 @@ #include "sp-root.h" using Inkscape::DocumentUndo; +using Inkscape::Util::unit_table; namespace Inkscape { namespace UI { @@ -1107,7 +1108,6 @@ CloneTiler::CloneTiler (void) : double value = prefs->getDouble(prefs_path + "fillwidth", 50.0); Inkscape::Util::Unit const unit = unit_menu->getUnit(); - Inkscape::Util::UnitTable unit_table; gdouble const units = Inkscape::Util::Quantity::convert(value, "px", unit); fill_width->set_value (units); @@ -1141,7 +1141,6 @@ CloneTiler::CloneTiler (void) : double value = prefs->getDouble(prefs_path + "fillheight", 50.0); Inkscape::Util::Unit const unit = unit_menu->getUnit(); - Inkscape::Util::UnitTable unit_table; gdouble const units = Inkscape::Util::Quantity::convert(value, "px", unit); fill_height->set_value (units); @@ -2950,7 +2949,6 @@ void CloneTiler::clonetiler_fill_width_changed(GtkAdjustment *adj, Inkscape::UI: { gdouble const raw_dist = gtk_adjustment_get_value (adj); Inkscape::Util::Unit const unit = u->getUnit(); - Inkscape::Util::UnitTable unit_table; gdouble const pixels = Inkscape::Util::Quantity::convert(raw_dist, unit, "px"); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); @@ -2961,7 +2959,6 @@ void CloneTiler::clonetiler_fill_height_changed(GtkAdjustment *adj, Inkscape::UI { gdouble const raw_dist = gtk_adjustment_get_value (adj); Inkscape::Util::Unit const unit = u->getUnit(); - Inkscape::Util::UnitTable unit_table; gdouble const pixels = Inkscape::Util::Quantity::convert(raw_dist, unit, "px"); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); @@ -2975,7 +2972,6 @@ void CloneTiler::clonetiler_unit_changed() gdouble height_pixels = prefs->getDouble(prefs_path + "fillheight"); Inkscape::Util::Unit unit = unit_menu->getUnit(); - Inkscape::Util::UnitTable unit_table; gdouble width_value = Inkscape::Util::Quantity::convert(width_pixels, "px", unit); gdouble height_value = Inkscape::Util::Quantity::convert(height_pixels, "px", unit); diff --git a/src/ui/dialog/export.cpp b/src/ui/dialog/export.cpp index 063902aa7..2c92608d7 100644 --- a/src/ui/dialog/export.cpp +++ b/src/ui/dialog/export.cpp @@ -107,6 +107,8 @@ #include "verbs.h" #include "export.h" +using Inkscape::Util::unit_table; + namespace { class MessageCleaner @@ -1883,7 +1885,6 @@ void Export::setValuePx( Gtk::Adjustment *adj, double val) #endif { const Unit unit = unit_selector->getUnit(); - Inkscape::Util::UnitTable unit_table; setValue(adj, Inkscape::Util::Quantity::convert(val, "px", unit)); @@ -1934,7 +1935,6 @@ float Export::getValuePx( Gtk::Adjustment *adj ) { float value = getValue( adj); const Unit unit = unit_selector->getUnit(); - Inkscape::Util::UnitTable unit_table; return Inkscape::Util::Quantity::convert(value, unit, "px"); } // end of sp_export_value_get_px() diff --git a/src/ui/widget/page-sizer.cpp b/src/ui/widget/page-sizer.cpp index b15ab2823..d912fd9d3 100644 --- a/src/ui/widget/page-sizer.cpp +++ b/src/ui/widget/page-sizer.cpp @@ -47,9 +47,8 @@ #include "xml/node.h" #include "xml/repr.h" -static Inkscape::Util::UnitTable unit_table; - using std::pair; +using Inkscape::Util::unit_table; namespace Inkscape { namespace UI { diff --git a/src/ui/widget/page-sizer.h b/src/ui/widget/page-sizer.h index fc8edeeac..34ed7592d 100644 --- a/src/ui/widget/page-sizer.h +++ b/src/ui/widget/page-sizer.h @@ -117,7 +117,6 @@ private: name = ""; smaller = 0.0; larger = 0.0; - static Inkscape::Util::UnitTable unit_table; unit = unit_table.getUnit("px"); } diff --git a/src/ui/widget/scalar-unit.cpp b/src/ui/widget/scalar-unit.cpp index 99ff70846..2f4c1f341 100644 --- a/src/ui/widget/scalar-unit.cpp +++ b/src/ui/widget/scalar-unit.cpp @@ -16,6 +16,8 @@ #include "scalar-unit.h" #include "spinbutton.h" +using Inkscape::Util::unit_table; + namespace Inkscape { namespace UI { namespace Widget { @@ -226,9 +228,8 @@ void ScalarUnit::on_unit_changed() Glib::ustring abbr = _unit_menu->getUnitAbbr(); _suffix->set_label(abbr); - Inkscape::Util::UnitTable &table = _unit_menu->getUnitTable(); - Inkscape::Util::Unit new_unit = (table.getUnit(abbr)); - Inkscape::Util::Unit old_unit = (table.getUnit(lastUnits)); + Inkscape::Util::Unit new_unit = (unit_table.getUnit(abbr)); + Inkscape::Util::Unit old_unit = (unit_table.getUnit(lastUnits)); double convertedVal = 0; if (old_unit.type == UNIT_TYPE_DIMENSIONLESS && new_unit.type == UNIT_TYPE_LINEAR) { diff --git a/src/ui/widget/selected-style.cpp b/src/ui/widget/selected-style.cpp index edf53d25c..388a0bcea 100644 --- a/src/ui/widget/selected-style.cpp +++ b/src/ui/widget/selected-style.cpp @@ -52,6 +52,8 @@ #include "gradient-chemistry.h" #include "util/units.h" +using Inkscape::Util::unit_table; + static gdouble const _sw_presets[] = { 32 , 16 , 10 , 8 , 6 , 4 , 3 , 2 , 1.5 , 1 , 0.75 , 0.5 , 0.25 , 0.1 }; static gchar const *const _sw_presets_str[] = {"32", "16", "10", "8", "6", "4", "3", "2", "1.5", "1", "0.75", "0.5", "0.25", "0.1"}; @@ -307,7 +309,6 @@ SelectedStyle::SelectedStyle(bool /*layout*/) { int row = 0; - Inkscape::Util::UnitTable unit_table; Inkscape::Util::UnitTable::UnitMap m = unit_table.units(Inkscape::Util::UNIT_TYPE_LINEAR); Inkscape::Util::UnitTable::UnitMap::iterator iter = m.begin(); while(iter != m.end()) { diff --git a/src/ui/widget/unit-menu.cpp b/src/ui/widget/unit-menu.cpp index 18b7bcab9..111226774 100644 --- a/src/ui/widget/unit-menu.cpp +++ b/src/ui/widget/unit-menu.cpp @@ -15,6 +15,8 @@ #include "unit-menu.h" +using Inkscape::Util::unit_table; + namespace Inkscape { namespace UI { namespace Widget { @@ -30,7 +32,7 @@ UnitMenu::~UnitMenu() { bool UnitMenu::setUnitType(UnitType unit_type) { // Expand the unit widget with unit entries from the unit table - UnitTable::UnitMap m = _unit_table.units(unit_type); + UnitTable::UnitMap m = unit_table.units(unit_type); UnitTable::UnitMap::iterator iter = m.begin(); while(iter != m.end()) { Glib::ustring text = (*iter).first; @@ -38,7 +40,7 @@ bool UnitMenu::setUnitType(UnitType unit_type) ++iter; } _type = unit_type; - set_active_text(_unit_table.primary(unit_type)); + set_active_text(unit_table.primary(unit_type)); return true; } @@ -52,7 +54,7 @@ bool UnitMenu::resetUnitType(UnitType unit_type) void UnitMenu::addUnit(Unit const& u) { - _unit_table.addUnit(u, false); + unit_table.addUnit(u, false); append(u.abbr); } @@ -60,9 +62,9 @@ Unit UnitMenu::getUnit() const { if (get_active_text() == "") { g_assert(_type != UNIT_TYPE_NONE); - return _unit_table.getUnit(_unit_table.primary(_type)); + return unit_table.getUnit(unit_table.primary(_type)); } - return _unit_table.getUnit(get_active_text()); + return unit_table.getUnit(get_active_text()); } bool UnitMenu::setUnit(Glib::ustring const & unit) @@ -112,8 +114,8 @@ double UnitMenu::getConversion(Glib::ustring const &new_unit_abbr, Glib::ustring { double old_factor = getUnit().factor; if (old_unit_abbr != "no_unit") - old_factor = _unit_table.getUnit(old_unit_abbr).factor; - Unit new_unit = _unit_table.getUnit(new_unit_abbr); + old_factor = unit_table.getUnit(old_unit_abbr).factor; + Unit new_unit = unit_table.getUnit(new_unit_abbr); // Catch the case of zero or negative unit factors (error!) if (old_factor < 0.0000001 || diff --git a/src/ui/widget/unit-menu.h b/src/ui/widget/unit-menu.h index 3104d5aef..3f4df6bf9 100644 --- a/src/ui/widget/unit-menu.h +++ b/src/ui/widget/unit-menu.h @@ -127,10 +127,7 @@ public: */ bool isRadial() const; - UnitTable &getUnitTable() {return _unit_table;} - protected: - UnitTable _unit_table; UnitType _type; }; diff --git a/src/ui/widget/unit-tracker.cpp b/src/ui/widget/unit-tracker.cpp index 99074be40..5b2dc031b 100644 --- a/src/ui/widget/unit-tracker.cpp +++ b/src/ui/widget/unit-tracker.cpp @@ -17,6 +17,9 @@ #define COLUMN_STRING 0 +using Inkscape::Util::UnitTable; +using Inkscape::Util::unit_table; + namespace Inkscape { namespace UI { namespace Widget { @@ -32,10 +35,9 @@ UnitTracker::UnitTracker(UnitType unit_type) : _priorValues() { _store = gtk_list_store_new(1, G_TYPE_STRING); - static Inkscape::Util::UnitTable unit_table; GtkTreeIter iter; - UnitTable::UnitMap m = _unit_table.units(unit_type); + UnitTable::UnitMap m = unit_table.units(unit_type); UnitTable::UnitMap::iterator m_iter = m.begin(); while(m_iter != m.end()) { Glib::ustring text = (*m_iter).first; @@ -99,7 +101,7 @@ void UnitTracker::setActiveUnit(Inkscape::Util::Unit const *unit) void UnitTracker::setActiveUnitByAbbr(gchar const *abbr) { - Inkscape::Util::Unit u = _unit_table.getUnit(abbr); + Inkscape::Util::Unit u = unit_table.getUnit(abbr); setActiveUnit(&u); } @@ -195,13 +197,13 @@ void UnitTracker::_setActive(gint active) if (found) { gchar *abbr; gtk_tree_model_get(GTK_TREE_MODEL(_store), &iter, COLUMN_STRING, &abbr, -1); - Inkscape::Util::Unit unit = _unit_table.getUnit(abbr); + Inkscape::Util::Unit unit = unit_table.getUnit(abbr); found = gtk_tree_model_iter_nth_child(GTK_TREE_MODEL(_store), &iter, NULL, active); if (found) { gchar *newAbbr; gtk_tree_model_get(GTK_TREE_MODEL(_store), &iter, COLUMN_STRING, &newAbbr, -1); - Inkscape::Util::Unit newUnit = _unit_table.getUnit(newAbbr); + Inkscape::Util::Unit newUnit = unit_table.getUnit(newAbbr); _activeUnit = newUnit; if (_adjList) { diff --git a/src/ui/widget/unit-tracker.h b/src/ui/widget/unit-tracker.h index cdcb07c57..19559ae1c 100644 --- a/src/ui/widget/unit-tracker.h +++ b/src/ui/widget/unit-tracker.h @@ -21,7 +21,6 @@ #include "util/units.h" using Inkscape::Util::Unit; -using Inkscape::Util::UnitTable; using Inkscape::Util::UnitType; namespace Inkscape { @@ -46,7 +45,6 @@ public: GtkAction *createAction(gchar const *name, gchar const *label, gchar const *tooltip); protected: - UnitTable _unit_table; UnitType _type; private: diff --git a/src/util/expression-evaluator.cpp b/src/util/expression-evaluator.cpp index 3e1bab6bc..dc59c67f4 100644 --- a/src/util/expression-evaluator.cpp +++ b/src/util/expression-evaluator.cpp @@ -29,6 +29,8 @@ #include +using Inkscape::Util::unit_table; + namespace Inkscape { namespace Util { @@ -77,8 +79,6 @@ typedef struct */ static bool unitresolverproc (const gchar* identifier, GimpEevlQuantity *result, Unit* unit) { - static UnitTable unit_table; - if (!unit) { result->value = 1; result->dimension = 1; diff --git a/src/util/units.cpp b/src/util/units.cpp index 7f60eb391..7bc910fcc 100644 --- a/src/util/units.cpp +++ b/src/util/units.cpp @@ -303,6 +303,8 @@ bool UnitTable::save(std::string const &filename) { return true; } +Inkscape::Util::UnitTable unit_table; + void UnitParser::on_start_element(Ctx &ctx, Glib::ustring const &name, AttrMap const &attrs) { if (name == "unit") { @@ -358,7 +360,6 @@ Quantity::Quantity(double q, const Unit &u) } Quantity::Quantity(double q, const Glib::ustring u) { - UnitTable unit_table; unit = new Unit(unit_table.getUnit(u)); quantity = q; } @@ -369,7 +370,6 @@ bool Quantity::compatibleWith(const Unit &u) const } bool Quantity::compatibleWith(const Glib::ustring u) const { - static UnitTable unit_table; return compatibleWith(unit_table.getUnit(u)); } @@ -379,7 +379,6 @@ double Quantity::value(const Unit &u) const } double Quantity::value(const Glib::ustring u) const { - static UnitTable unit_table; return value(unit_table.getUnit(u)); } @@ -387,7 +386,6 @@ Glib::ustring Quantity::string(const Unit &u) const { return Glib::ustring::format(std::fixed, std::setprecision(2), value(u)) + " " + unit->abbr; } Glib::ustring Quantity::string(const Glib::ustring u) const { - static UnitTable unit_table; return string(unit_table.getUnit(u)); } Glib::ustring Quantity::string() const { @@ -411,17 +409,14 @@ double Quantity::convert(const double from_dist, const Unit &from, const Unit &t } double Quantity::convert(const double from_dist, const Glib::ustring from, const Unit &to) { - static UnitTable unit_table; return convert(from_dist, unit_table.getUnit(from), to); } double Quantity::convert(const double from_dist, const Unit &from, const Glib::ustring to) { - static UnitTable unit_table; return convert(from_dist, from, unit_table.getUnit(to)); } double Quantity::convert(const double from_dist, const Glib::ustring from, const Glib::ustring to) { - static UnitTable unit_table; return convert(from_dist, unit_table.getUnit(from), unit_table.getUnit(to)); } diff --git a/src/util/units.h b/src/util/units.h index c30fa24b3..bb202b96a 100644 --- a/src/util/units.h +++ b/src/util/units.h @@ -175,6 +175,8 @@ class UnitTable { }; +extern UnitTable unit_table; + } // namespace Util } // namespace Inkscape diff --git a/src/widgets/desktop-widget.cpp b/src/widgets/desktop-widget.cpp index 863912d03..6493da84d 100644 --- a/src/widgets/desktop-widget.cpp +++ b/src/widgets/desktop-widget.cpp @@ -83,6 +83,7 @@ using Inkscape::UI::Widget::UnitTracker; using Inkscape::UI::UXManager; using Inkscape::UI::ToolboxFactory; using ege::AppearTimeTracker; +using Inkscape::Util::unit_table; enum { ACTIVATE, @@ -393,7 +394,6 @@ void SPDesktopWidget::init( SPDesktopWidget *dtw ) GtkWidget *eventbox = gtk_event_box_new (); dtw->hruler = sp_ruler_new(GTK_ORIENTATION_HORIZONTAL); dtw->hruler_box = eventbox; - Inkscape::Util::UnitTable unit_table; Inkscape::Util::Unit pt = unit_table.getUnit("pt"); sp_ruler_set_unit(SP_RULER(dtw->hruler), pt); gtk_widget_set_tooltip_text (dtw->hruler_box, gettext(pt.name_plural.c_str())); diff --git a/src/widgets/node-toolbar.cpp b/src/widgets/node-toolbar.cpp index 65e42a60b..a9e298f1d 100644 --- a/src/widgets/node-toolbar.cpp +++ b/src/widgets/node-toolbar.cpp @@ -70,6 +70,7 @@ using Inkscape::UI::UXManager; using Inkscape::DocumentUndo; using Inkscape::UI::ToolboxFactory; using Inkscape::UI::PrefPusher; +using Inkscape::Util::unit_table; //#################################### //# node editing callbacks @@ -249,7 +250,6 @@ static void sp_node_toolbox_coord_changed(gpointer /*shape_editor*/, GObject *tb } else { gtk_action_set_sensitive(xact, TRUE); gtk_action_set_sensitive(yact, TRUE); - Inkscape::Util::UnitTable unit_table; Geom::Coord oldx = Quantity::convert(gtk_adjustment_get_value(xadj), unit, "px"); Geom::Coord oldy = Quantity::convert(gtk_adjustment_get_value(yadj), unit, "px"); Geom::Point mid = nt->_selected_nodes->pointwiseBounds()->midpoint(); @@ -276,8 +276,6 @@ static void sp_node_path_value_changed(GtkAdjustment *adj, GObject *tbl, Geom::D } Unit const unit = tracker->getActiveUnit(); - Inkscape::Util::UnitTable unit_table; - if (DocumentUndo::getUndoSensitive(sp_desktop_document(desktop))) { prefs->setDouble(Glib::ustring("/tools/nodes/") + (d == Geom::X ? "x" : "y"), Quantity::convert(gtk_adjustment_get_value(adj), unit, "px")); diff --git a/src/widgets/paintbucket-toolbar.cpp b/src/widgets/paintbucket-toolbar.cpp index 3bb1fa24a..7c23379cd 100644 --- a/src/widgets/paintbucket-toolbar.cpp +++ b/src/widgets/paintbucket-toolbar.cpp @@ -68,6 +68,7 @@ using Inkscape::UI::UXManager; using Inkscape::DocumentUndo; using Inkscape::UI::ToolboxFactory; using Inkscape::UI::PrefPusher; +using Inkscape::Util::unit_table; @@ -175,7 +176,6 @@ void sp_paintbucket_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions // Create the units menu. UnitTracker* tracker = new UnitTracker(Inkscape::Util::UNIT_TYPE_LINEAR); - Inkscape::Util::UnitTable unit_table; Glib::ustring stored_unit = prefs->getString("/tools/paintbucket/offsetunits"); if (!stored_unit.empty()) { Unit u = unit_table.getUnit(stored_unit); diff --git a/src/widgets/rect-toolbar.cpp b/src/widgets/rect-toolbar.cpp index 29488031f..6dfd9cfcb 100644 --- a/src/widgets/rect-toolbar.cpp +++ b/src/widgets/rect-toolbar.cpp @@ -66,6 +66,7 @@ using Inkscape::UI::ToolboxFactory; using Inkscape::UI::PrefPusher; using Inkscape::Util::Unit; using Inkscape::Util::Quantity; +using Inkscape::Util::unit_table; //######################## @@ -93,7 +94,6 @@ static void sp_rtb_value_changed(GtkAdjustment *adj, GObject *tbl, gchar const * UnitTracker* tracker = reinterpret_cast(g_object_get_data( tbl, "tracker" )); Unit const unit = tracker->getActiveUnit(); - Inkscape::Util::UnitTable unit_table; if (DocumentUndo::getUndoSensitive(sp_desktop_document(desktop))) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); @@ -187,7 +187,6 @@ static void rect_tb_event_attr_changed(Inkscape::XML::Node * /*repr*/, gchar con UnitTracker* tracker = reinterpret_cast( g_object_get_data( tbl, "tracker" ) ); Unit const unit = tracker->getActiveUnit(); - Inkscape::Util::UnitTable unit_table; gpointer item = g_object_get_data( tbl, "item" ); if (item && SP_IS_RECT(item)) { diff --git a/src/widgets/ruler.cpp b/src/widgets/ruler.cpp index 274e1df54..e4e72d86e 100644 --- a/src/widgets/ruler.cpp +++ b/src/widgets/ruler.cpp @@ -44,6 +44,7 @@ #define DEFAULT_RULER_FONT_SCALE PANGO_SCALE_X_SMALL #define MINIMUM_INCR 5 +using Inkscape::Util::unit_table; enum { PROP_0, @@ -258,8 +259,6 @@ sp_ruler_init (SPRuler *ruler) gtk_widget_set_has_window (GTK_WIDGET (ruler), FALSE); - Inkscape::Util::UnitTable unit_table; - priv->orientation = GTK_ORIENTATION_HORIZONTAL; priv->unit = new Inkscape::Util::Unit(unit_table.getUnit("px")); priv->lower = 0; @@ -380,8 +379,6 @@ sp_ruler_set_property (GObject *object, SPRuler *ruler = SP_RULER (object); SPRulerPrivate *priv = SP_RULER_GET_PRIVATE (ruler); - Inkscape::Util::UnitTable unit_table; - switch (prop_id) { case PROP_ORIENTATION: @@ -1189,7 +1186,6 @@ sp_ruler_draw_ticks (SPRuler *ruler) SPRulerMetric ruler_metric = ruler_metric_general; /* The metric to use for this unit system */ PangoLayout *layout; PangoRectangle logical_rect, ink_rect; - Inkscape::Util::UnitTable unit_table; if (! gtk_widget_is_drawable (widget)) return; diff --git a/src/widgets/select-toolbar.cpp b/src/widgets/select-toolbar.cpp index b39423635..e4a5a2905 100644 --- a/src/widgets/select-toolbar.cpp +++ b/src/widgets/select-toolbar.cpp @@ -59,6 +59,7 @@ using Inkscape::UI::Widget::UnitTracker; using Inkscape::Util::Unit; using Inkscape::Util::Quantity; using Inkscape::DocumentUndo; +using Inkscape::Util::unit_table; static void sp_selection_layout_widget_update(SPWidget *spw, Inkscape::Selection *sel) @@ -96,7 +97,6 @@ sp_selection_layout_widget_update(SPWidget *spw, Inkscape::Selection *sel) tracker->setFullVal( a, keyval[i].val ); } } else { - Inkscape::Util::UnitTable unit_table; for (unsigned i = 0; i < G_N_ELEMENTS(keyval); ++i) { GtkAdjustment *a = GTK_ADJUSTMENT(g_object_get_data(G_OBJECT(spw), keyval[i].key)); gtk_adjustment_set_value(a, Quantity::convert(keyval[i].val, "px", unit)); @@ -192,8 +192,6 @@ sp_object_layout_any_value_changed(GtkAdjustment *adj, SPWidget *spw) GtkAdjustment* a_w = GTK_ADJUSTMENT( g_object_get_data( G_OBJECT(spw), "width" ) ); GtkAdjustment* a_h = GTK_ADJUSTMENT( g_object_get_data( G_OBJECT(spw), "height" ) ); - Inkscape::Util::UnitTable unit_table; - if (unit.type == Inkscape::Util::UNIT_TYPE_LINEAR) { x0 = Quantity::convert(gtk_adjustment_get_value(a_x), unit, "px"); y0 = Quantity::convert(gtk_adjustment_get_value(a_y), unit, "px"); @@ -493,7 +491,6 @@ void sp_select_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GOb // Create the units menu. UnitTracker* tracker = new UnitTracker(Inkscape::Util::UNIT_TYPE_LINEAR); - Inkscape::Util::UnitTable unit_table; tracker->addUnit(unit_table.getUnit("%")); tracker->setActiveUnit( sp_desktop_namedview(desktop)->doc_units ); diff --git a/src/widgets/stroke-style.cpp b/src/widgets/stroke-style.cpp index e35a8b36b..12d4002b8 100644 --- a/src/widgets/stroke-style.cpp +++ b/src/widgets/stroke-style.cpp @@ -26,6 +26,7 @@ #include "ui/widget/unit-menu.h" using Inkscape::DocumentUndo; +using Inkscape::Util::unit_table; /** * Creates a new widget for the line stroke paint. @@ -196,7 +197,6 @@ StrokeStyle::StrokeStyle() : Gtk::Widget *us = manage(unitSelector); SPDesktop *desktop = SP_ACTIVE_DESKTOP; - Inkscape::Util::UnitTable unit_table; unitSelector->addUnit(unit_table.getUnit("%")); if (desktop) { unitSelector->setUnit(sp_desktop_namedview(desktop)->doc_units->abbr); -- cgit v1.2.3 From 4fa681033f513c4146deb66e3a3a12b20304978c Mon Sep 17 00:00:00 2001 From: "Johan B. C. Engelen" Date: Mon, 5 Aug 2013 22:10:50 +0200 Subject: fix memleak (rows) (bzr r12468) --- src/libgdl/gdl-switcher.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/libgdl/gdl-switcher.c b/src/libgdl/gdl-switcher.c index daacebf20..780438886 100644 --- a/src/libgdl/gdl-switcher.c +++ b/src/libgdl/gdl-switcher.c @@ -388,7 +388,8 @@ layout_buttons (GdlSwitcher *switcher) if (last_buttons_height < switcher->priv->buttons_height_request) { /* Request for a new resize */ gtk_widget_queue_resize (GTK_WIDGET (switcher)); - return -1; + y = -1; // set return value + goto exit; } } x = H_PADDING + allocation.x; @@ -426,6 +427,7 @@ layout_buttons (GdlSwitcher *switcher) } } + exit: for (i = 0; i <= row_last; i ++) { g_slist_free (rows [i]); } -- cgit v1.2.3 From c0f2f5606f0884e00f426653168b84b23d26ffb3 Mon Sep 17 00:00:00 2001 From: "Johan B. C. Engelen" Date: Mon, 5 Aug 2013 23:07:35 +0200 Subject: code cleanup (cppcheck) (bzr r12469) --- src/dom/cssreader.cpp | 7 +- src/extension/internal/cairo-ps-out.cpp | 12 +- src/extension/internal/cairo-render-context.cpp | 2 +- src/extension/internal/cairo-renderer-pdf-out.cpp | 6 +- src/extension/internal/emf-win32-inout.cpp | 4 + src/extension/internal/emf-win32-print.cpp | 3 +- src/extension/internal/filter/paint.h | 3 +- src/extension/internal/pdfinput/pdf-parser.cpp | 11 +- src/extension/internal/pdfinput/svg-builder.cpp | 8 +- src/helper/gnome-utils.cpp | 8 +- src/live_effects/spiro.cpp | 242 +++++++++++----------- src/unicoderange.cpp | 3 +- src/widgets/paint-selector.cpp | 4 +- src/xml/repr-io.cpp | 5 +- 14 files changed, 156 insertions(+), 162 deletions(-) diff --git a/src/dom/cssreader.cpp b/src/dom/cssreader.cpp index db114ed8d..93473b229 100644 --- a/src/dom/cssreader.cpp +++ b/src/dom/cssreader.cpp @@ -393,7 +393,6 @@ int CssReader::getStyleSheet(int p0) { int p = p0; int p2 = p; - XMLCh ch; //# CHARSET 0 or 1 if (match(p, "@charset")) @@ -408,7 +407,7 @@ int CssReader::getStyleSheet(int p0) return -1; } p = skipwhite(p2); - ch = get(p); + XMLCh ch = get(p); if (ch !=';') { error("';' required after @charset declaration"); @@ -665,7 +664,7 @@ int CssReader::getPage(int p0) while (true) { p = skipwhite(p2); - ch = get(p); + XMLCh ch = get(p); if (ch != ';') break; p++; @@ -1249,7 +1248,7 @@ int CssReader::getTerm(int p0) { int p = p0; p = skipwhite(p); - int unitType = CSSPrimitiveValue::CSS_UNKNOWN; + int unitType = CSSPrimitiveValue::CSS_UNKNOWN; /// \fixme Why is this variable never used? //# Unary operator XMLCh ch = get(p); bool hasUnary = false; diff --git a/src/extension/internal/cairo-ps-out.cpp b/src/extension/internal/cairo-ps-out.cpp index 5ce9a21f3..bfbdd8149 100644 --- a/src/extension/internal/cairo-ps-out.cpp +++ b/src/extension/internal/cairo-ps-out.cpp @@ -136,12 +136,12 @@ CairoPsOutput::save(Inkscape::Extension::Output *mod, SPDocument *doc, gchar con if (ext == NULL) return; - const gchar *new_level = NULL; int level = CAIRO_PS_LEVEL_2; try { - new_level = mod->get_param_enum("PSlevel"); - if((new_level != NULL) && (g_ascii_strcasecmp("PS3", new_level) == 0)) + const gchar *new_level = mod->get_param_enum("PSlevel"); + if((new_level != NULL) && (g_ascii_strcasecmp("PS3", new_level) == 0)) { level = CAIRO_PS_LEVEL_3; + } } catch(...) {} bool new_textToPath = FALSE; @@ -225,12 +225,12 @@ CairoEpsOutput::save(Inkscape::Extension::Output *mod, SPDocument *doc, gchar co if (ext == NULL) return; - const gchar *new_level = NULL; int level = CAIRO_PS_LEVEL_2; try { - new_level = mod->get_param_enum("PSlevel"); - if((new_level != NULL) && (g_ascii_strcasecmp("PS3", new_level) == 0)) + const gchar *new_level = mod->get_param_enum("PSlevel"); + if((new_level != NULL) && (g_ascii_strcasecmp("PS3", new_level) == 0)) { level = CAIRO_PS_LEVEL_3; + } } catch(...) {} bool new_textToPath = FALSE; diff --git a/src/extension/internal/cairo-render-context.cpp b/src/extension/internal/cairo-render-context.cpp index d7a560f04..f0461c609 100644 --- a/src/extension/internal/cairo-render-context.cpp +++ b/src/extension/internal/cairo-render-context.cpp @@ -1492,7 +1492,7 @@ CairoRenderContext::renderGlyphtext(PangoFont *font, Geom::Affine const &font_ma std::vector const &glyphtext, SPStyle const *style) { // create a cairo_font_face from PangoFont - double size = style->font_size.computed; + double size = style->font_size.computed; /// \fixme why is this variable never used? gpointer fonthash = (gpointer)font; cairo_font_face_t *font_face = (cairo_font_face_t *)g_hash_table_lookup(font_table, fonthash); diff --git a/src/extension/internal/cairo-renderer-pdf-out.cpp b/src/extension/internal/cairo-renderer-pdf-out.cpp index 6f641fd36..8b2e8bf84 100644 --- a/src/extension/internal/cairo-renderer-pdf-out.cpp +++ b/src/extension/internal/cairo-renderer-pdf-out.cpp @@ -136,12 +136,12 @@ CairoRendererPdfOutput::save(Inkscape::Extension::Output *mod, SPDocument *doc, if (ext == NULL) return; - const gchar *new_level = NULL; int level = 0; try { - new_level = mod->get_param_enum("PDFversion"); - if((new_level != NULL) && (g_ascii_strcasecmp("PDF-1.5", new_level) == 0)) + const gchar *new_level = mod->get_param_enum("PDFversion"); + if((new_level != NULL) && (g_ascii_strcasecmp("PDF-1.5", new_level) == 0)) { level = 1; + } } catch(...) { g_warning("Parameter might not exist"); diff --git a/src/extension/internal/emf-win32-inout.cpp b/src/extension/internal/emf-win32-inout.cpp index e9360a0ea..063b1ca88 100644 --- a/src/extension/internal/emf-win32-inout.cpp +++ b/src/extension/internal/emf-win32-inout.cpp @@ -120,6 +120,10 @@ emf_print_document_to_file(SPDocument *doc, gchar const *filename) } mod->base->invoke_print(&context); ret = mod->finish(); + if (ret) { + g_free(oldoutput); + throw Inkscape::Extension::Output::save_failed(); + } /* Release arena */ mod->base->invoke_hide(mod->dkey); mod->base = NULL; diff --git a/src/extension/internal/emf-win32-print.cpp b/src/extension/internal/emf-win32-print.cpp index 2b79fd5a4..e30ab390d 100644 --- a/src/extension/internal/emf-win32-print.cpp +++ b/src/extension/internal/emf-win32-print.cpp @@ -242,13 +242,12 @@ unsigned int PrintEmfWin32::comment (Inkscape::Extension::Print * /*module*/, int PrintEmfWin32::create_brush(SPStyle const *style) { - float rgb[3]; - if (style) { float opacity = SP_SCALE24_TO_FLOAT(style->fill_opacity.value); if (opacity <= 0.0) return 1; + float rgb[3]; sp_color_get_rgb_floatv( &style->fill.value.color, rgb ); hbrush = CreateSolidBrush( RGB(255*rgb[0], 255*rgb[1], 255*rgb[2]) ); hbrushOld = (HBRUSH) SelectObject( hdc, hbrush ); diff --git a/src/extension/internal/filter/paint.h b/src/extension/internal/filter/paint.h index d99d1e0e2..941177f39 100644 --- a/src/extension/internal/filter/paint.h +++ b/src/extension/internal/filter/paint.h @@ -999,9 +999,8 @@ PosterizeBasic::get_filter_text (Inkscape::Extension::Extension * ext) transf << "0"; int levels = ext->get_param_int("levels") + 1; - float val = 0.0; for ( int step = 1 ; step <= levels ; step++ ) { - val = (float) step / levels; + const float val = (float) step / levels; transf << " " << val; } transf << " 1"; diff --git a/src/extension/internal/pdfinput/pdf-parser.cpp b/src/extension/internal/pdfinput/pdf-parser.cpp index 3be7af34f..4e50f02f6 100644 --- a/src/extension/internal/pdfinput/pdf-parser.cpp +++ b/src/extension/internal/pdfinput/pdf-parser.cpp @@ -579,14 +579,13 @@ void PdfParser::execOp(Object *cmd, Object args[], int numArgs) { (this->*op->func)(argPtr, numArgs); } -PdfOperator *PdfParser::findOp(char *name) { - int a, b, m, cmp; - - a = -1; - b = numOps; +PdfOperator* PdfParser::findOp(char *name) { + int a = -1; + int b = numOps; + int cmp = -1; // invariant: opTab[a] < name < opTab[b] while (b - a > 1) { - m = (a + b) / 2; + const int m = (a + b) / 2; cmp = strcmp(opTab[m].name, name); if (cmp < 0) a = m; diff --git a/src/extension/internal/pdfinput/svg-builder.cpp b/src/extension/internal/pdfinput/svg-builder.cpp index 165dd38fe..dee7d8afb 100644 --- a/src/extension/internal/pdfinput/svg-builder.cpp +++ b/src/extension/internal/pdfinput/svg-builder.cpp @@ -266,14 +266,12 @@ static void svgSetTransform(Inkscape::XML::Node *node, double c0, double c1, * \brief Generates a SVG path string from poppler's data structure */ static gchar *svgInterpretPath(GfxPath *path) { - GfxSubpath *subpath; Inkscape::SVG::PathString pathString; - int i, j; - for ( i = 0 ; i < path->getNumSubpaths() ; ++i ) { - subpath = path->getSubpath(i); + for (int i = 0 ; i < path->getNumSubpaths() ; ++i ) { + GfxSubpath *subpath = path->getSubpath(i); if (subpath->getNumPoints() > 0) { pathString.moveTo(subpath->getX(0), subpath->getY(0)); - j = 1; + int j = 1; while (j < subpath->getNumPoints()) { if (subpath->getCurve(j)) { pathString.curveTo(subpath->getX(j), subpath->getY(j), diff --git a/src/helper/gnome-utils.cpp b/src/helper/gnome-utils.cpp index d0bcaf8cd..957b7ea5e 100644 --- a/src/helper/gnome-utils.cpp +++ b/src/helper/gnome-utils.cpp @@ -83,17 +83,15 @@ gnome_uri_list_extract_uris (const gchar* uri_list) GList* gnome_uri_list_extract_filenames (const gchar* uri_list) { - GList *tmp_list, *node, *result; - g_return_val_if_fail (uri_list != NULL, NULL); - result = gnome_uri_list_extract_uris (uri_list); + GList *result = gnome_uri_list_extract_uris (uri_list); - tmp_list = result; + GList *tmp_list = result; while (tmp_list) { gchar *s = (gchar*)tmp_list->data; - node = tmp_list; + GList *node = tmp_list; tmp_list = tmp_list->next; if (!strncmp (s, "file:", 5)) { diff --git a/src/live_effects/spiro.cpp b/src/live_effects/spiro.cpp index f50399a77..46e53a0da 100644 --- a/src/live_effects/spiro.cpp +++ b/src/live_effects/spiro.cpp @@ -677,163 +677,165 @@ add_mat_line(bandmat *m, double *v, } static double -spiro_iter(spiro_seg *s, bandmat *m, int *perm, double *v, int n) +spiro_iter(spiro_seg *s, bandmat *m, int *perm, double *v, const int n) { int cyclic = s[0].ty != '{' && s[0].ty != 'v'; - int i, j, jj; int nmat = count_vec(s, n); - double norm; int n_invert; - for (i = 0; i < nmat; i++) { - v[i] = 0.; - for (j = 0; j < 11; j++) - m[i].a[j] = 0.; - for (j = 0; j < 5; j++) - m[i].al[j] = 0.; + for (int i = 0; i < nmat; i++) { + v[i] = 0.; + for (int j = 0; j < 11; j++) { + m[i].a[j] = 0.; + } + for (int j = 0; j < 5; j++) { + m[i].al[j] = 0.; + } } - j = 0; - if (s[0].ty == 'o') - jj = nmat - 2; - else if (s[0].ty == 'c') - jj = nmat - 1; - else - jj = 0; - for (i = 0; i < n; i++) { - char ty0 = s[i].ty; - char ty1 = s[i + 1].ty; - int jinc = compute_jinc(ty0, ty1); - double th = s[i].bend_th; - double ends[2][4]; - double derivs[4][2][4]; - int jthl = -1, jk0l = -1, jk1l = -1, jk2l = -1; - int jthr = -1, jk0r = -1, jk1r = -1, jk2r = -1; - - compute_pderivs(&s[i], ends, derivs, jinc); - - /* constraints crossing left */ - if (ty0 == 'o' || ty0 == 'c' || ty0 == '[' || ty0 == ']') { - jthl = jj++; - jj %= nmat; - jk0l = jj++; - } - if (ty0 == 'o') { - jj %= nmat; - jk1l = jj++; - jk2l = jj++; - } + int j = 0; + int jj; + if (s[0].ty == 'o') { + jj = nmat - 2; + } else if (s[0].ty == 'c') { + jj = nmat - 1; + } else { + jj = 0; + } + for (int i = 0; i < n; i++) { + char ty0 = s[i].ty; + char ty1 = s[i + 1].ty; + int jinc = compute_jinc(ty0, ty1); + double th = s[i].bend_th; + double ends[2][4]; + double derivs[4][2][4]; + int jthl = -1, jk0l = -1, jk1l = -1, jk2l = -1; + int jthr = -1, jk0r = -1, jk1r = -1, jk2r = -1; + + compute_pderivs(&s[i], ends, derivs, jinc); + + /* constraints crossing left */ + if (ty0 == 'o' || ty0 == 'c' || ty0 == '[' || ty0 == ']') { + jthl = jj++; + jj %= nmat; + jk0l = jj++; + } + if (ty0 == 'o') { + jj %= nmat; + jk1l = jj++; + jk2l = jj++; + } - /* constraints on left */ - if ((ty0 == '[' || ty0 == 'v' || ty0 == '{' || ty0 == 'c') && - jinc == 4) { - if (ty0 != 'c') - jk1l = jj++; - jk2l = jj++; - } + /* constraints on left */ + if ((ty0 == '[' || ty0 == 'v' || ty0 == '{' || ty0 == 'c') && + jinc == 4) { + if (ty0 != 'c') + jk1l = jj++; + jk2l = jj++; + } - /* constraints on right */ - if ((ty1 == ']' || ty1 == 'v' || ty1 == '}' || ty1 == 'c') && - jinc == 4) { - if (ty1 != 'c') - jk1r = jj++; - jk2r = jj++; - } + /* constraints on right */ + if ((ty1 == ']' || ty1 == 'v' || ty1 == '}' || ty1 == 'c') && + jinc == 4) { + if (ty1 != 'c') + jk1r = jj++; + jk2r = jj++; + } - /* constraints crossing right */ - if (ty1 == 'o' || ty1 == 'c' || ty1 == '[' || ty1 == ']') { - jthr = jj; - jk0r = (jj + 1) % nmat; - } - if (ty1 == 'o') { - jk1r = (jj + 2) % nmat; - jk2r = (jj + 3) % nmat; - } + /* constraints crossing right */ + if (ty1 == 'o' || ty1 == 'c' || ty1 == '[' || ty1 == ']') { + jthr = jj; + jk0r = (jj + 1) % nmat; + } + if (ty1 == 'o') { + jk1r = (jj + 2) % nmat; + jk2r = (jj + 3) % nmat; + } - add_mat_line(m, v, derivs[0][0], th - ends[0][0], 1, j, jthl, jinc, nmat); - add_mat_line(m, v, derivs[1][0], ends[0][1], -1, j, jk0l, jinc, nmat); - add_mat_line(m, v, derivs[2][0], ends[0][2], -1, j, jk1l, jinc, nmat); - add_mat_line(m, v, derivs[3][0], ends[0][3], -1, j, jk2l, jinc, nmat); - add_mat_line(m, v, derivs[0][1], -ends[1][0], 1, j, jthr, jinc, nmat); - add_mat_line(m, v, derivs[1][1], -ends[1][1], 1, j, jk0r, jinc, nmat); - add_mat_line(m, v, derivs[2][1], -ends[1][2], 1, j, jk1r, jinc, nmat); - add_mat_line(m, v, derivs[3][1], -ends[1][3], 1, j, jk2r, jinc, nmat); - if (jthl >= 0) - v[jthl] = mod_2pi(v[jthl]); - if (jthr >= 0) - v[jthr] = mod_2pi(v[jthr]); - j += jinc; + add_mat_line(m, v, derivs[0][0], th - ends[0][0], 1, j, jthl, jinc, nmat); + add_mat_line(m, v, derivs[1][0], ends[0][1], -1, j, jk0l, jinc, nmat); + add_mat_line(m, v, derivs[2][0], ends[0][2], -1, j, jk1l, jinc, nmat); + add_mat_line(m, v, derivs[3][0], ends[0][3], -1, j, jk2l, jinc, nmat); + add_mat_line(m, v, derivs[0][1], -ends[1][0], 1, j, jthr, jinc, nmat); + add_mat_line(m, v, derivs[1][1], -ends[1][1], 1, j, jk0r, jinc, nmat); + add_mat_line(m, v, derivs[2][1], -ends[1][2], 1, j, jk1r, jinc, nmat); + add_mat_line(m, v, derivs[3][1], -ends[1][3], 1, j, jk2r, jinc, nmat); + if (jthl >= 0) + v[jthl] = mod_2pi(v[jthl]); + if (jthr >= 0) + v[jthr] = mod_2pi(v[jthr]); + j += jinc; } if (cyclic) { - memcpy(m + nmat, m, sizeof(bandmat) * nmat); - memcpy(m + 2 * nmat, m, sizeof(bandmat) * nmat); - memcpy(v + nmat, v, sizeof(double) * nmat); - memcpy(v + 2 * nmat, v, sizeof(double) * nmat); - n_invert = 3 * nmat; - j = nmat; + memcpy(m + nmat, m, sizeof(bandmat) * nmat); + memcpy(m + 2 * nmat, m, sizeof(bandmat) * nmat); + memcpy(v + nmat, v, sizeof(double) * nmat); + memcpy(v + 2 * nmat, v, sizeof(double) * nmat); + n_invert = 3 * nmat; + j = nmat; } else { - n_invert = nmat; - j = 0; + n_invert = nmat; + j = 0; } #ifdef VERBOSE - for (i = 0; i < n; i++) { - int k; - for (k = 0; k < 11; k++) - printf(" %2.4f", m[i].a[k]); - printf(": %2.4f\n", v[i]); + for (int i = 0; i < n; i++) { + for (int k = 0; k < 11; k++) { + printf(" %2.4f", m[i].a[k]); + } + printf(": %2.4f\n", v[i]); } printf("---\n"); #endif bandec11(m, perm, n_invert); banbks11(m, perm, v, n_invert); - norm = 0.; - for (i = 0; i < n; i++) { - char ty0 = s[i].ty; - char ty1 = s[i + 1].ty; - int jinc = compute_jinc(ty0, ty1); - int k; + + double norm = 0.; + for (int i = 0; i < n; i++) { + char ty0 = s[i].ty; + char ty1 = s[i + 1].ty; + int jinc = compute_jinc(ty0, ty1); + int k; - for (k = 0; k < jinc; k++) { - double dk = v[j++]; + for (k = 0; k < jinc; k++) { + double dk = v[j++]; #ifdef VERBOSE - printf("s[%d].ks[%d] += %f\n", i, k, dk); + printf("s[%d].ks[%d] += %f\n", i, k, dk); #endif - s[i].ks[k] += dk; - norm += dk * dk; - } + s[i].ks[k] += dk; + norm += dk * dk; + } s[i].ks[0] = 2.0*mod_2pi(s[i].ks[0]/2.0); } return norm; } static int -solve_spiro(spiro_seg *s, int nseg) +solve_spiro(spiro_seg *s, const int nseg) { - bandmat *m; - double *v; - int *perm; int nmat = count_vec(s, nseg); int n_alloc = nmat; - double norm; - int i; - if (nmat == 0) - return 0; - if (s[0].ty != '{' && s[0].ty != 'v') - n_alloc *= 3; - if (n_alloc < 5) - n_alloc = 5; - m = (bandmat *)malloc(sizeof(bandmat) * n_alloc); - v = (double *)malloc(sizeof(double) * n_alloc); - perm = (int *)malloc(sizeof(int) * n_alloc); - - for (i = 0; i < 10; i++) { - norm = spiro_iter(s, m, perm, v, nseg); + if (nmat == 0) { + return 0; + } + if (s[0].ty != '{' && s[0].ty != 'v') { + n_alloc *= 3; + } + if (n_alloc < 5) { + n_alloc = 5; + } + + bandmat *m = (bandmat *)malloc(sizeof(bandmat) * n_alloc); + double *v = (double *)malloc(sizeof(double) * n_alloc); + int *perm = (int *)malloc(sizeof(int) * n_alloc); + + for (unsigned i = 0; i < 10; i++) { + double norm = spiro_iter(s, m, perm, v, nseg); #ifdef VERBOSE - printf("%% norm = %g\n", norm); + printf("%% norm = %g\n", norm); #endif - if (norm < 1e-12) break; + if (norm < 1e-12) break; } free(m); diff --git a/src/unicoderange.cpp b/src/unicoderange.cpp index 36435024d..803e1a884 100644 --- a/src/unicoderange.cpp +++ b/src/unicoderange.cpp @@ -71,9 +71,8 @@ bool UnicodeRange::contains(gchar unicode){ unival = g_utf8_get_char (&unicode); char uni[9] = "00000000"; uni[8]= '\0'; - unsigned char val; for (unsigned int i=7; unival>0; i--){ - val = unival & 0xf; + unsigned char val = unival & 0xf; unival = unival >> 4; if (val < 10) uni[i] = '0' + val; else uni[i] = 'A'+ val - 10; diff --git a/src/widgets/paint-selector.cpp b/src/widgets/paint-selector.cpp index 40d2fb9f3..cd987cc87 100644 --- a/src/widgets/paint-selector.cpp +++ b/src/widgets/paint-selector.cpp @@ -1141,14 +1141,12 @@ static void sp_paint_selector_set_mode_swatch(SPPaintSelector *psel, SPPaintSele gtk_widget_set_sensitive(psel->style, TRUE); - SwatchSelector *swatchsel = NULL; - if (psel->mode == SPPaintSelector::MODE_SWATCH){ // swatchsel = static_cast(g_object_get_data(G_OBJECT(psel->selector), "swatch-selector")); } else { sp_paint_selector_clear_frame(psel); // Create new gradient selector - swatchsel = new SwatchSelector(); + SwatchSelector *swatchsel = new SwatchSelector(); swatchsel->show(); swatchsel->connectGrabbedHandler( G_CALLBACK(sp_paint_selector_gradient_grabbed), psel ); diff --git a/src/xml/repr-io.cpp b/src/xml/repr-io.cpp index 1b6116936..af47779fe 100644 --- a/src/xml/repr-io.cpp +++ b/src/xml/repr-io.cpp @@ -504,7 +504,6 @@ gint sp_repr_qualified_name (gchar *p, gint len, xmlNsPtr ns, const xmlChar *nam static Node *sp_repr_svg_read_node (Document *xml_doc, xmlNodePtr node, const gchar *default_ns, GHashTable *prefix_map) { - Node *repr, *crepr; xmlAttrPtr prop; xmlNodePtr child; gchar c[256]; @@ -544,7 +543,7 @@ static Node *sp_repr_svg_read_node (Document *xml_doc, xmlNodePtr node, const gc } sp_repr_qualified_name (c, 256, node->ns, node->name, default_ns, prefix_map); - repr = xml_doc->createElement(c); + Node *repr = xml_doc->createElement(c); /* TODO remember node->ns->prefix if node->ns != NULL */ for (prop = node->properties; prop != NULL; prop = prop->next) { @@ -561,7 +560,7 @@ static Node *sp_repr_svg_read_node (Document *xml_doc, xmlNodePtr node, const gc child = node->xmlChildrenNode; for (child = node->xmlChildrenNode; child != NULL; child = child->next) { - crepr = sp_repr_svg_read_node (xml_doc, child, default_ns, prefix_map); + Node *crepr = sp_repr_svg_read_node (xml_doc, child, default_ns, prefix_map); if (crepr) { repr->appendChild(crepr); Inkscape::GC::release(crepr); -- cgit v1.2.3 From 41713d1e0fa740247dd81ad63c8ffbc1590a007c Mon Sep 17 00:00:00 2001 From: "Johan B. C. Engelen" Date: Tue, 6 Aug 2013 19:29:13 +0200 Subject: init SPStyle better: fixes a bunch of bugs resulting from improper re-init of SPStyle struct. (after r12452) (bzr r12470) --- src/style.cpp | 76 +++++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 71 insertions(+), 5 deletions(-) diff --git a/src/style.cpp b/src/style.cpp index a9861f918..ce5460164 100644 --- a/src/style.cpp +++ b/src/style.cpp @@ -2977,9 +2977,7 @@ sp_style_clear(SPStyle *style) SPTextStyle *text = style->text; unsigned const text_private = style->text_private; - // this looks really bad! you can't just 0 *all* data in the whole struct! - // memset(style, 0, sizeof(SPStyle)); - + style->refcount = refcount; style->object = object; style->document = document; @@ -3003,49 +3001,63 @@ sp_style_clear(SPStyle *style) style->text->font_family.set = FALSE; style->font_size.set = FALSE; + style->font_size.inherit = FALSE; style->font_size.type = SP_FONT_SIZE_LITERAL; + style->font_size.unit = 0; style->font_size.literal = SP_CSS_FONT_SIZE_MEDIUM; + style->font_size.value = 12.0; style->font_size.computed = 12.0; style->font_style.set = FALSE; + style->font_style.inherit = FALSE; style->font_style.value = style->font_style.computed = SP_CSS_FONT_STYLE_NORMAL; style->font_variant.set = FALSE; + style->font_variant.inherit = FALSE; style->font_variant.value = style->font_variant.computed = SP_CSS_FONT_VARIANT_NORMAL; style->font_weight.set = FALSE; + style->font_weight.inherit = FALSE; style->font_weight.value = SP_CSS_FONT_WEIGHT_NORMAL; style->font_weight.computed = SP_CSS_FONT_WEIGHT_400; style->font_stretch.set = FALSE; + style->font_stretch.inherit = FALSE; style->font_stretch.value = style->font_stretch.computed = SP_CSS_FONT_STRETCH_NORMAL; /* text */ style->text_indent.set = FALSE; + style->text_indent.inherit = FALSE; style->text_indent.unit = SP_CSS_UNIT_NONE; style->text_indent.computed = 0.0; style->text_align.set = FALSE; + style->text_align.inherit = FALSE; style->text_align.value = style->text_align.computed = SP_CSS_TEXT_ALIGN_START; style->text_decoration.set = FALSE; + style->text_decoration.inherit = FALSE; style->text_decoration.underline = FALSE; style->text_decoration.overline = FALSE; style->text_decoration.line_through = FALSE; style->text_decoration.blink = FALSE; style->line_height.set = FALSE; + style->line_height.inherit = FALSE; style->line_height.unit = SP_CSS_UNIT_PERCENT; style->line_height.normal = TRUE; style->line_height.value = style->line_height.computed = 1.0; style->letter_spacing.set = FALSE; + style->letter_spacing.inherit = FALSE; style->letter_spacing.unit = SP_CSS_UNIT_NONE; style->letter_spacing.normal = TRUE; style->letter_spacing.value = style->letter_spacing.computed = 0.0; style->word_spacing.set = FALSE; + style->word_spacing.inherit = FALSE; style->word_spacing.unit = SP_CSS_UNIT_NONE; style->word_spacing.normal = TRUE; style->word_spacing.value = style->word_spacing.computed = 0.0; style->baseline_shift.set = FALSE; + style->baseline_shift.inherit = FALSE; style->baseline_shift.type = SP_BASELINE_SHIFT_LITERAL; style->baseline_shift.unit = SP_CSS_UNIT_NONE; style->baseline_shift.literal = SP_CSS_BASELINE_SHIFT_BASELINE; @@ -3053,74 +3065,128 @@ sp_style_clear(SPStyle *style) style->baseline_shift.computed = 0.0; style->text_transform.set = FALSE; + style->text_transform.inherit = FALSE; style->text_transform.value = style->text_transform.computed = SP_CSS_TEXT_TRANSFORM_NONE; style->direction.set = FALSE; + style->direction.inherit = FALSE; style->direction.value = style->direction.computed = SP_CSS_DIRECTION_LTR; style->block_progression.set = FALSE; + style->block_progression.inherit = FALSE; style->block_progression.value = style->block_progression.computed = SP_CSS_BLOCK_PROGRESSION_TB; style->writing_mode.set = FALSE; + style->writing_mode.inherit = FALSE; style->writing_mode.value = style->writing_mode.computed = SP_CSS_WRITING_MODE_LR_TB; style->text_anchor.set = FALSE; + style->text_anchor.inherit = FALSE; style->text_anchor.value = style->text_anchor.computed = SP_CSS_TEXT_ANCHOR_START; + style->clip_set = FALSE; + style->color_set = FALSE; + style->cursor_set = FALSE; + style->overflow_set = FALSE; + style->clip_path_set = FALSE; + style->mask_set = FALSE; + + style->clip_rule.set = FALSE; + style->clip_rule.inherit = FALSE; + style->clip_rule.value = style->clip_rule.computed = SP_WIND_RULE_NONZERO; + style->opacity.set = FALSE; + style->opacity.inherit = FALSE; style->opacity.value = SP_SCALE24_MAX; style->visibility.set = FALSE; + style->visibility.inherit = FALSE; style->visibility.value = style->visibility.computed = SP_CSS_VISIBILITY_VISIBLE; style->display.set = FALSE; + style->display.inherit = FALSE; style->display.value = style->display.computed = SP_CSS_DISPLAY_INLINE; style->overflow.set = FALSE; + style->overflow.inherit = FALSE; style->overflow.value = style->overflow.computed = SP_CSS_OVERFLOW_VISIBLE; style->color.clear(); style->color.setColor(0.0, 0.0, 0.0); + style->color_interpolation.set = FALSE; + style->color_interpolation.inherit = FALSE; style->color_interpolation.value = style->color_interpolation.computed = SP_CSS_COLOR_INTERPOLATION_SRGB; + style->color_interpolation_filters.set = FALSE; + style->color_interpolation_filters.inherit = FALSE; style->color_interpolation_filters.value = style->color_interpolation_filters.computed = SP_CSS_COLOR_INTERPOLATION_LINEARRGB; style->fill.clear(); style->fill.setColor(0.0, 0.0, 0.0); + style->fill_opacity.set = FALSE; + style->fill_opacity.inherit = FALSE; style->fill_opacity.value = SP_SCALE24_MAX; + style->fill_rule.set = FALSE; + style->fill_rule.inherit = FALSE; style->fill_rule.value = style->fill_rule.computed = SP_WIND_RULE_NONZERO; style->stroke.clear(); + style->stroke_opacity.set = FALSE; + style->stroke_opacity.inherit = FALSE; style->stroke_opacity.value = SP_SCALE24_MAX; style->stroke_width.set = FALSE; + style->stroke_width.inherit = FALSE; style->stroke_width.unit = SP_CSS_UNIT_NONE; - style->stroke_width.computed = 1.0; + style->stroke_width.value = style->stroke_width.computed = 1.0; style->stroke_linecap.set = FALSE; + style->stroke_linecap.inherit = FALSE; style->stroke_linecap.value = style->stroke_linecap.computed = SP_STROKE_LINECAP_BUTT; style->stroke_linejoin.set = FALSE; + style->stroke_linejoin.inherit = FALSE; style->stroke_linejoin.value = style->stroke_linejoin.computed = SP_STROKE_LINEJOIN_MITER; style->stroke_miterlimit.set = FALSE; + style->stroke_miterlimit.inherit = FALSE; style->stroke_miterlimit.value = 4.0; style->stroke_dash.n_dash = 0; style->stroke_dash.dash = NULL; style->stroke_dash.offset = 0.0; + style->stroke_dasharray_set = FALSE; + style->stroke_dasharray_inherit = FALSE; + style->stroke_dashoffset_set = FALSE; + style->stroke_dashoffset_inherit = FALSE; + for (unsigned i = SP_MARKER_LOC; i < SP_MARKER_LOC_QTY; i++) { g_free(style->marker[i].value); style->marker[i].set = FALSE; + style->marker[i].inherit = FALSE; + style->marker[i].data = 0; + style->marker[i].value = NULL; } + style->filter.set = FALSE; + style->filter.inherit = FALSE; + style->filter.href = NULL; + style->enable_background.value = SP_CSS_BACKGROUND_ACCUMULATE; style->enable_background.set = false; style->enable_background.inherit = false; - style->clip_rule.value = style->clip_rule.computed = SP_WIND_RULE_NONZERO; + style->filter_blend_mode.set = style->filter_blend_mode.inherit = false; + style->filter_blend_mode.value = style->filter_blend_mode.computed = 0; + style->filter_gaussianBlur_deviation.set = style->filter_gaussianBlur_deviation.inherit = false; + style->filter_gaussianBlur_deviation.value = style->filter_gaussianBlur_deviation.computed = 0; + style->color_rendering.set = style->color_rendering.inherit = false; style->color_rendering.value = style->color_rendering.computed = SP_CSS_COLOR_RENDERING_AUTO; + style->image_rendering.set = style->image_rendering.inherit = false; style->image_rendering.value = style->image_rendering.computed = SP_CSS_IMAGE_RENDERING_AUTO; + style->shape_rendering.set = style->shape_rendering.inherit = false; style->shape_rendering.value = style->shape_rendering.computed = SP_CSS_SHAPE_RENDERING_AUTO; + style->text_rendering.set = style->text_rendering.inherit = false; style->text_rendering.value = style->text_rendering.computed = SP_CSS_TEXT_RENDERING_AUTO; + style->cloned = false; } -- cgit v1.2.3 From 0ec2d349388ad6a4e0c35039b2f5c09cccadc6b0 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Tue, 6 Aug 2013 14:44:23 -0400 Subject: Fixed bug in page sizer. (bzr r12380.1.63) --- src/ui/widget/page-sizer.cpp | 138 +++++++++++++++++++++---------------------- 1 file changed, 69 insertions(+), 69 deletions(-) diff --git a/src/ui/widget/page-sizer.cpp b/src/ui/widget/page-sizer.cpp index d912fd9d3..8287452d7 100644 --- a/src/ui/widget/page-sizer.cpp +++ b/src/ui/widget/page-sizer.cpp @@ -97,7 +97,7 @@ struct PaperSizeRec { char const * const name; //name double const smaller; //lesser dimension double const larger; //greater dimension - Inkscape::Util::Unit const unit; //units + Glib::ustring const unit; //units }; // list of page formats that should be in landscape automatically @@ -115,31 +115,31 @@ fill_landscape_papers() { } static PaperSizeRec const inkscape_papers[] = { - { "A4", 210, 297, unit_table.getUnit("mm") }, - { "US Letter", 8.5, 11, unit_table.getUnit("in") }, - { "US Legal", 8.5, 14, unit_table.getUnit("in") }, - { "US Executive", 7.25, 10.5, unit_table.getUnit("in") }, - { "A0", 841, 1189, unit_table.getUnit("mm") }, - { "A1", 594, 841, unit_table.getUnit("mm") }, - { "A2", 420, 594, unit_table.getUnit("mm") }, - { "A3", 297, 420, unit_table.getUnit("mm") }, - { "A5", 148, 210, unit_table.getUnit("mm") }, - { "A6", 105, 148, unit_table.getUnit("mm") }, - { "A7", 74, 105, unit_table.getUnit("mm") }, - { "A8", 52, 74, unit_table.getUnit("mm") }, - { "A9", 37, 52, unit_table.getUnit("mm") }, - { "A10", 26, 37, unit_table.getUnit("mm") }, - { "B0", 1000, 1414, unit_table.getUnit("mm") }, - { "B1", 707, 1000, unit_table.getUnit("mm") }, - { "B2", 500, 707, unit_table.getUnit("mm") }, - { "B3", 353, 500, unit_table.getUnit("mm") }, - { "B4", 250, 353, unit_table.getUnit("mm") }, - { "B5", 176, 250, unit_table.getUnit("mm") }, - { "B6", 125, 176, unit_table.getUnit("mm") }, - { "B7", 88, 125, unit_table.getUnit("mm") }, - { "B8", 62, 88, unit_table.getUnit("mm") }, - { "B9", 44, 62, unit_table.getUnit("mm") }, - { "B10", 31, 44, unit_table.getUnit("mm") }, + { "A4", 210, 297, "mm" }, + { "US Letter", 8.5, 11, "in" }, + { "US Legal", 8.5, 14, "in" }, + { "US Executive", 7.25, 10.5, "in" }, + { "A0", 841, 1189, "mm" }, + { "A1", 594, 841, "mm" }, + { "A2", 420, 594, "mm" }, + { "A3", 297, 420, "mm" }, + { "A5", 148, 210, "mm" }, + { "A6", 105, 148, "mm" }, + { "A7", 74, 105, "mm" }, + { "A8", 52, 74, "mm" }, + { "A9", 37, 52, "mm" }, + { "A10", 26, 37, "mm" }, + { "B0", 1000, 1414, "mm" }, + { "B1", 707, 1000, "mm" }, + { "B2", 500, 707, "mm" }, + { "B3", 353, 500, "mm" }, + { "B4", 250, 353, "mm" }, + { "B5", 176, 250, "mm" }, + { "B6", 125, 176, "mm" }, + { "B7", 88, 125, "mm" }, + { "B8", 62, 88, "mm" }, + { "B9", 44, 62, "mm" }, + { "B10", 31, 44, "mm" }, @@ -151,63 +151,63 @@ static PaperSizeRec const inkscape_papers[] = { don't know what D and E series are used for. */ - { "C0", 917, 1297, unit_table.getUnit("mm") }, - { "C1", 648, 917, unit_table.getUnit("mm") }, - { "C2", 458, 648, unit_table.getUnit("mm") }, - { "C3", 324, 458, unit_table.getUnit("mm") }, - { "C4", 229, 324, unit_table.getUnit("mm") }, - { "C5", 162, 229, unit_table.getUnit("mm") }, - { "C6", 114, 162, unit_table.getUnit("mm") }, - { "C7", 81, 114, unit_table.getUnit("mm") }, - { "C8", 57, 81, unit_table.getUnit("mm") }, - { "C9", 40, 57, unit_table.getUnit("mm") }, - { "C10", 28, 40, unit_table.getUnit("mm") }, - { "D1", 545, 771, unit_table.getUnit("mm") }, - { "D2", 385, 545, unit_table.getUnit("mm") }, - { "D3", 272, 385, unit_table.getUnit("mm") }, - { "D4", 192, 272, unit_table.getUnit("mm") }, - { "D5", 136, 192, unit_table.getUnit("mm") }, - { "D6", 96, 136, unit_table.getUnit("mm") }, - { "D7", 68, 96, unit_table.getUnit("mm") }, - { "E3", 400, 560, unit_table.getUnit("mm") }, - { "E4", 280, 400, unit_table.getUnit("mm") }, - { "E5", 200, 280, unit_table.getUnit("mm") }, - { "E6", 140, 200, unit_table.getUnit("mm") }, + { "C0", 917, 1297, "mm" }, + { "C1", 648, 917, "mm" }, + { "C2", 458, 648, "mm" }, + { "C3", 324, 458, "mm" }, + { "C4", 229, 324, "mm" }, + { "C5", 162, 229, "mm" }, + { "C6", 114, 162, "mm" }, + { "C7", 81, 114, "mm" }, + { "C8", 57, 81, "mm" }, + { "C9", 40, 57, "mm" }, + { "C10", 28, 40, "mm" }, + { "D1", 545, 771, "mm" }, + { "D2", 385, 545, "mm" }, + { "D3", 272, 385, "mm" }, + { "D4", 192, 272, "mm" }, + { "D5", 136, 192, "mm" }, + { "D6", 96, 136, "mm" }, + { "D7", 68, 96, "mm" }, + { "E3", 400, 560, "mm" }, + { "E4", 280, 400, "mm" }, + { "E5", 200, 280, "mm" }, + { "E6", 140, 200, "mm" }, //#endif - { "CSE", 462, 649, unit_table.getUnit("pt") }, - { "US #10 Envelope", 4.125, 9.5, unit_table.getUnit("in") }, + { "CSE", 462, 649, "pt" }, + { "US #10 Envelope", 4.125, 9.5, "in" }, /* See http://www.hbp.com/content/PCR_envelopes.cfm for a much larger list of US envelope sizes. */ - { "DL Envelope", 110, 220, unit_table.getUnit("mm") }, - { "Ledger/Tabloid", 11, 17, unit_table.getUnit("in") }, + { "DL Envelope", 110, 220, "mm" }, + { "Ledger/Tabloid", 11, 17, "in" }, /* Note that `Folio' (used in QPrinter/KPrinter) is deliberately absent from this list, as it means different sizes to different people: different people may expect the width to be either 8, 8.25 or 8.5 inches, and the height to be either 13 or 13.5 inches, even restricting our interpretation to foolscap folio. If you wish to introduce a folio-like page size to the list, then please consider using a name more specific than just `Folio' or `Foolscap Folio'. */ - { "Banner 468x60", 60, 468, unit_table.getUnit("px") }, - { "Icon 16x16", 16, 16, unit_table.getUnit("px") }, - { "Icon 32x32", 32, 32, unit_table.getUnit("px") }, - { "Icon 48x48", 48, 48, unit_table.getUnit("px") }, + { "Banner 468x60", 60, 468, "px" }, + { "Icon 16x16", 16, 16, "px" }, + { "Icon 32x32", 32, 32, "px" }, + { "Icon 48x48", 48, 48, "px" }, /* business cards */ - { "Business Card (ISO 7810)", 53.98, 85.60, unit_table.getUnit("mm") }, - { "Business Card (US)", 2, 3.5, unit_table.getUnit("in") }, - { "Business Card (Europe)", 55, 85, unit_table.getUnit("mm") }, - { "Business Card (Aus/NZ)", 55, 90, unit_table.getUnit("mm") }, + { "Business Card (ISO 7810)", 53.98, 85.60, "mm" }, + { "Business Card (US)", 2, 3.5, "in" }, + { "Business Card (Europe)", 55, 85, "mm" }, + { "Business Card (Aus/NZ)", 55, 90, "mm" }, // Start Arch Series List - { "Arch A", 9, 12, unit_table.getUnit("in") }, // 229 x 305 mm - { "Arch B", 12, 18, unit_table.getUnit("in") }, // 305 x 457 mm - { "Arch C", 18, 24, unit_table.getUnit("in") }, // 457 x 610 mm - { "Arch D", 24, 36, unit_table.getUnit("in") }, // 610 x 914 mm - { "Arch E", 36, 48, unit_table.getUnit("in") }, // 914 x 1219 mm - { "Arch E1", 30, 42, unit_table.getUnit("in") }, // 762 x 1067 mm + { "Arch A", 9, 12, "in" }, // 229 x 305 mm + { "Arch B", 12, 18, "in" }, // 305 x 457 mm + { "Arch C", 18, 24, "in" }, // 457 x 610 mm + { "Arch D", 24, 36, "in" }, // 610 x 914 mm + { "Arch E", 36, 48, "in" }, // 914 x 1219 mm + { "Arch E1", 30, 42, "in" }, // 762 x 1067 mm /* * The above list of Arch sizes were taken from the following site: @@ -218,7 +218,7 @@ static PaperSizeRec const inkscape_papers[] = { * September 2009 - DAK */ - { NULL, 0, 0, unit_table.getUnit("px") }, + { NULL, 0, 0, "px" }, }; @@ -277,8 +277,8 @@ PageSizer::PageSizer(Registry & _wr) char formatBuf[80]; snprintf(formatBuf, 79, "%0.1f x %0.1f", p->smaller, p->larger); Glib::ustring desc = formatBuf; - desc.append(" " + p->unit.abbr); - PaperSize paper(name, p->smaller, p->larger, p->unit); + desc.append(" " + p->unit); + PaperSize paper(name, p->smaller, p->larger, unit_table.getUnit(p->unit)); _paperSizeTable[name] = paper; Gtk::TreeModel::Row row = *(_paperSizeListStore->append()); row[_paperSizeListColumns.nameColumn] = name; -- cgit v1.2.3 From 625d70be1e222b3cfbbf6527b2829b645f369cd2 Mon Sep 17 00:00:00 2001 From: Slagvi Public Date: Tue, 6 Aug 2013 22:48:28 +0200 Subject: Adapted sp_file_new for use with templates (bzr r12379.2.19) --- src/file.cpp | 50 ++++++++++++++++++++++++++------------- src/file.h | 3 +-- src/ui/dialog/template-widget.cpp | 2 +- 3 files changed, 35 insertions(+), 20 deletions(-) diff --git a/src/file.cpp b/src/file.cpp index ee205b035..258628d32 100644 --- a/src/file.cpp +++ b/src/file.cpp @@ -127,21 +127,46 @@ SPDesktop *sp_file_new(const Glib::ustring &templ) { SPDocument *doc = SPDocument::createNewDoc( !templ.empty() ? templ.c_str() : 0 , TRUE, true ); g_return_val_if_fail(doc != NULL, NULL); + + // Remove all the template info from xml tree + Inkscape::XML::Node *myRoot = doc->getReprRoot(); + Inkscape::XML::Node *nodeToRemove = sp_repr_lookup_name(myRoot, "inkscape:_templateinfo"); + if (nodeToRemove != NULL){ + sp_repr_unparent(nodeToRemove); + delete nodeToRemove; + DocumentUndo::clearUndo(doc); + } + + SPDesktop *desktop = SP_ACTIVE_DESKTOP; + if (desktop) { + desktop->setWaitingCursor(); + } + + SPDocument *existing = desktop ? sp_desktop_document(desktop) : NULL; + + if (existing && existing->virgin) { + // If the current desktop is empty, open the document there + doc->ensureUpToDate(); // TODO this will trigger broken link warnings, etc. + desktop->change_document(doc); + doc->emitResizedSignal(doc->getWidth(), doc->getHeight()); + } else { + // create a whole new desktop and window + SPViewWidget *dtw = sp_desktop_widget_new(sp_document_namedview(doc, NULL)); // TODO this will trigger broken link warnings, etc. + g_return_val_if_fail(dtw != NULL, NULL); + sp_create_window(dtw, TRUE); + desktop = static_cast(dtw->view); + } - SPViewWidget *dtw = sp_desktop_widget_new(sp_document_namedview(doc, NULL)); - g_return_val_if_fail(dtw != NULL, NULL); doc->doUnref(); - sp_create_window(dtw, TRUE); - SPDesktop *dt = static_cast(dtw->view); - sp_namedview_window_from_document(dt); - sp_namedview_update_layers_from_document(dt); + sp_namedview_window_from_document(desktop); + sp_namedview_update_layers_from_document(desktop); #ifdef WITH_DBUS Inkscape::Extension::Dbus::dbus_init_desktop_interface(dt); #endif - return dt; + return desktop; } Glib::ustring sp_file_default_template_uri() @@ -252,16 +277,7 @@ bool sp_file_open(const Glib::ustring &uri, } if (doc) { - if (flags & IS_FROM_TEMPLATE){ - Inkscape::XML::Node *myRoot = doc->getReprRoot(); - Inkscape::XML::Node *nodeToRemove = sp_repr_lookup_name(myRoot, "inkscape:_templateinfo"); - if (nodeToRemove != NULL){ - sp_repr_unparent(nodeToRemove); - delete nodeToRemove; - DocumentUndo::clearUndo(doc); - } - } - + SPDocument *existing = desktop ? sp_desktop_document(desktop) : NULL; if (existing && existing->virgin && (flags & REPLACE_EMPTY)) { diff --git a/src/file.h b/src/file.h index e94a3c598..4d55825c4 100644 --- a/src/file.h +++ b/src/file.h @@ -65,8 +65,7 @@ void sp_file_exit (void); enum SPFileOpenFlags { ADD_TO_RECENT = 1, - REPLACE_EMPTY = 2, - IS_FROM_TEMPLATE = 4 + REPLACE_EMPTY = 2 }; bool sp_file_open( diff --git a/src/ui/dialog/template-widget.cpp b/src/ui/dialog/template-widget.cpp index 66121a73a..7e0599049 100644 --- a/src/ui/dialog/template-widget.cpp +++ b/src/ui/dialog/template-widget.cpp @@ -62,7 +62,7 @@ void TemplateWidget::create() if (_current_template.is_procedural) {} else { - sp_file_open(_current_template.path, NULL, REPLACE_EMPTY | ADD_TO_RECENT | IS_FROM_TEMPLATE); + sp_file_new(_current_template.path); } } -- cgit v1.2.3 From 6909bc44193098ad265e28102e32057fabb217a3 Mon Sep 17 00:00:00 2001 From: Alex Valavanis Date: Wed, 7 Aug 2013 00:19:52 +0100 Subject: Remove missing files from POTFILES.in (bzr r12472) --- po/POTFILES.in | 2 -- 1 file changed, 2 deletions(-) diff --git a/po/POTFILES.in b/po/POTFILES.in index deee92d79..794a52c80 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -134,8 +134,6 @@ src/flood-context.cpp src/gradient-chemistry.cpp src/gradient-context.cpp src/gradient-drag.cpp -src/helper/units-test.h -src/helper/units.cpp src/inkscape.cpp src/interface.cpp src/io/sys.cpp -- cgit v1.2.3 From 2f7ea8f8ae067cbb3406169d22a84426cabd43f6 Mon Sep 17 00:00:00 2001 From: Eric Greveson Date: Thu, 8 Aug 2013 17:01:03 +0100 Subject: Fix to do the "right thing" for difference/intersection boolean ops when one or more input paths are truncated to zero-size by the quantization step (coordinate rounding). Previously this had only been fixed for union ops (which happened to work for exclusion (XOR) ops as well). (bzr r12472.1.1) --- src/splivarot.cpp | 36 +++++++++++++++++++++++++++++++----- 1 file changed, 31 insertions(+), 5 deletions(-) diff --git a/src/splivarot.cpp b/src/splivarot.cpp index 356cf0161..6423129b9 100644 --- a/src/splivarot.cpp +++ b/src/splivarot.cpp @@ -277,11 +277,37 @@ sp_selected_path_boolop(Inkscape::Selection *selection, SPDesktop *desktop, bool theShapeB->ConvertToShape(theShape, origWind[curOrig]); - if (theShapeA->numberOfEdges() == 0) { - Shape *swap = theShapeB; - theShapeB = theShapeA; - theShapeA = swap; - } else if (theShapeB->numberOfEdges() > 0) { + // Due to quantization of the input shape coordinates, we may end up with A or B being empty. + // If this is a union or symdiff operation, we just use the non-empty shape as the result: + // A=0 => (0 or B) == B + // B=0 => (A or 0) == A + // A=0 => (0 xor B) == B + // B=0 => (A xor 0) == A + // If this is an intersection operation, we just use the empty shape as the result: + // A=0 => (0 and B) == 0 == A + // B=0 => (A and 0) == 0 == B + // If this a difference operation, and the upper shape (A) is empty, we keep B. + // If the lower shape (B) is empty, we still keep B, as it's empty: + // A=0 => (B - 0) == B + // B=0 => (0 - A) == 0 == B + // + // In any case, the output from this operation is stored in shape A, so we may apply + // the above rules simply by judicious use of swapping A and B where necessary. + bool zeroA = theShapeA->numberOfEdges() == 0; + bool zeroB = theShapeB->numberOfEdges() == 0; + if (zeroA || zeroB) { + // We might need to do a swap. Apply the above rules depending on operation type. + bool resultIsB = ((bop == bool_op_union || bop == bool_op_symdiff) && zeroA) + || ((bop == bool_op_inters) && zeroB) + || (bop == bool_op_diff); + if (resultIsB) { + // Swap A and B to use B as the result + Shape *swap = theShapeB; + theShapeB = theShapeA; + theShapeA = swap; + } + } else { + // Just do the Boolean operation as usual // les elements arrivent en ordre inverse dans la liste theShape->Booleen(theShapeB, theShapeA, bop); Shape *swap = theShape; -- cgit v1.2.3 From a6aa5f6f172a8432c5f4e5a75f98b52077382231 Mon Sep 17 00:00:00 2001 From: Nicolas Dufour Date: Sat, 10 Aug 2013 14:45:27 +0200 Subject: Packaging. Hebrew translation by Yaron Shahrabani. Fixed bugs: - https://launchpad.net/bugs/1204809 (bzr r12473) --- Makefile.am | 1 + packaging/win32/languages/Hebrew.nsh | 113 +++++++++++++++++++++++++++++++++++ 2 files changed, 114 insertions(+) create mode 100644 packaging/win32/languages/Hebrew.nsh diff --git a/Makefile.am b/Makefile.am index 66035791a..b477c84d2 100644 --- a/Makefile.am +++ b/Makefile.am @@ -178,6 +178,7 @@ EXTRA_DIST = \ packaging/win32/languages/French.nsh \ packaging/win32/languages/Galician.nsh \ packaging/win32/languages/German.nsh \ + packaging/win32/languages/Hebrew.nsh \ packaging/win32/languages/Indonesian.nsh \ packaging/win32/languages/Italian.nsh \ packaging/win32/languages/Japanese.nsh \ diff --git a/packaging/win32/languages/Hebrew.nsh b/packaging/win32/languages/Hebrew.nsh new file mode 100644 index 000000000..b21263c75 --- /dev/null +++ b/packaging/win32/languages/Hebrew.nsh @@ -0,0 +1,113 @@ +;Language: Hebrew (1037, CP1255) +;By Yaron Shahrabani +${LangFileString} CaptionDescription " " +${LangFileString} LICENSE_BOTTOM_TEXT "$(^Name) GNU (GPL). . $_CLICK" +${LangFileString} DIFFERENT_USER " $0.$\r$\n !$\r$\n $0 ." +${LangFileString} WANT_UNINSTALL_BEFORE " $R1 . $\n $(^Name)?" +${LangFileString} OK_CANCEL_DESC "$\n$\n ." +${LangFileString} NO_ADMIN " .$\r$\n .$\r$\n ' '." +${LangFileString} NOT_SUPPORTED " Windows 95/98/ME!$\r$\n ." +${LangFileString} Full "" +${LangFileString} Optimal "" +${LangFileString} Minimal "" +${LangFileString} Core " SVN ()" +${LangFileString} CoreDesc " dlls " +${LangFileString} GTKFiles " GTK+ ()" +${LangFileString} GTKFilesDesc " , " +${LangFileString} Shortcuts " " +${LangFileString} ShortcutsDesc " " +${LangFileString} Alluser " " +${LangFileString} AlluserDesc " ( )" +${LangFileString} Desktop " " +${LangFileString} DesktopDesc " " +${LangFileString} Startmenu " " +${LangFileString} StartmenuDesc " " +${LangFileString} Quicklaunch " " +${LangFileString} QuicklaunchDesc " " +${LangFileString} SVGWriter " SVG " +${LangFileString} SVGWriterDesc " SVG" +${LangFileString} ContextMenu " " +${LangFileString} ContextMenuDesc " SVG" +${LangFileString} DeletePrefs " " +${LangFileString} DeletePrefsDesc " " +${LangFileString} Addfiles " " +${LangFileString} AddfilesDesc " " +${LangFileString} Examples "" +${LangFileString} ExamplesDesc " " +${LangFileString} Tutorials "" +${LangFileString} TutorialsDesc " " +${LangFileString} Languages "" +${LangFileString} LanguagesDesc " " +${LangFileString} lng_am "" +${LangFileString} lng_ar "" +${LangFileString} lng_az "" +${LangFileString} lng_be "" +${LangFileString} lng_bg "" +${LangFileString} lng_bn "" +${LangFileString} lng_br "" +${LangFileString} lng_ca "" +${LangFileString} lng_ca@valencia " " +${LangFileString} lng_cs "" +${LangFileString} lng_da "" +${LangFileString} lng_de "" +${LangFileString} lng_dz "" +${LangFileString} lng_el "" +${LangFileString} lng_en "" +${LangFileString} lng_en_AU " " +${LangFileString} lng_en_CA " " +${LangFileString} lng_en_GB " " +${LangFileString} lng_en_US@piglatin " " +${LangFileString} lng_eo "" +${LangFileString} lng_es "" +${LangFileString} lng_es_MX " " +${LangFileString} lng_et "" +${LangFileString} lng_eu "" +${LangFileString} lng_fa "" +${LangFileString} lng_fi "" +${LangFileString} lng_fr "" +${LangFileString} lng_ga "" +${LangFileString} lng_gl "" +${LangFileString} lng_he "" +${LangFileString} lng_hr "" +${LangFileString} lng_hu "" +${LangFileString} lng_id "" +${LangFileString} lng_it "" +${LangFileString} lng_ja "" +${LangFileString} lng_km "" +${LangFileString} lng_ko "" +${LangFileString} lng_lt "" +${LangFileString} lng_mk "" +${LangFileString} lng_mn "" +${LangFileString} lng_ne "" +${LangFileString} lng_nb " " +${LangFileString} lng_nl "Dutch" +${LangFileString} lng_nn " " +${LangFileString} lng_pa "" +${LangFileString} lng_pl "" +${LangFileString} lng_pt "" +${LangFileString} lng_pt_BR " " +${LangFileString} lng_ro "" +${LangFileString} lng_ru "" +${LangFileString} lng_rw "" +${LangFileString} lng_sk "" +${LangFileString} lng_sl "" +${LangFileString} lng_sq "" +${LangFileString} lng_sr "" +${LangFileString} lng_sr@latin " " +${LangFileString} lng_sv "" +${LangFileString} lng_te_IN "" +${LangFileString} lng_th "" +${LangFileString} lng_tr "" +${LangFileString} lng_uk "" +${LangFileString} lng_vi "" +${LangFileString} lng_zh_CN " " +${LangFileString} lng_zh_TW " " +${LangFileString} UInstOpt " " +${LangFileString} UInstOpt1 " " +${LangFileString} PurgePrefs " " +${LangFileString} UninstallLogNotFound " $INSTDIR\uninstall.log !$\r$\n $INSTDIR !" +${LangFileString} FileChanged " $filename .$\r$\n ?" +${LangFileString} Yes "" +${LangFileString} AlwaysYes " " +${LangFileString} No "" +${LangFileString} AlwaysNo " " -- cgit v1.2.3 From c9946d39f8b2d37991be9a02e3b0f133f48bdb22 Mon Sep 17 00:00:00 2001 From: Slagvi Public Date: Sat, 10 Aug 2013 15:23:01 +0200 Subject: Existing templates metadata added. Small keywords processing fix. (bzr r12379.2.20) --- share/templates/A4.svg | 5 +++++ share/templates/A4_landscape.svg | 5 +++++ share/templates/CD_cover_300dpi.svg | 5 +++++ share/templates/CD_label_120x120.svg | 7 +++++++ share/templates/DVD_cover_regular_300dpi.svg | 7 +++++++ share/templates/DVD_cover_slim_300dpi.svg | 7 +++++++ share/templates/DVD_cover_superslim_300dpi.svg | 7 +++++++ share/templates/DVD_cover_ultraslim_300dpi.svg | 7 +++++++ share/templates/LaTeX_Beamer.svg | 7 +++++++ share/templates/Letter.svg | 5 +++++ share/templates/Letter_landscape.svg | 5 +++++ share/templates/Typography_Canvas.svg | 7 +++++++ share/templates/black_opaque.svg | 5 +++++ share/templates/business_card_85x54mm.svg | 5 +++++ share/templates/business_card_90x50mm.svg | 5 +++++ share/templates/desktop_1024x768.svg | 5 +++++ share/templates/desktop_1600x1200.svg | 5 +++++ share/templates/desktop_640x480.svg | 5 +++++ share/templates/desktop_800x600.svg | 5 +++++ share/templates/fontforge_glyph.svg | 6 ++++++ share/templates/icon_16x16.svg | 5 +++++ share/templates/icon_32x32.svg | 5 +++++ share/templates/icon_48x48.svg | 5 +++++ share/templates/icon_64x64.svg | 5 +++++ share/templates/no_borders.svg | 5 +++++ share/templates/no_layers.svg | 5 +++++ share/templates/video_HDTV_1920x1080.svg | 7 +++++++ share/templates/video_NTSC_720x486.svg | 7 +++++++ share/templates/video_PAL_720x576.svg | 7 +++++++ share/templates/web_banner_468x60.svg | 5 +++++ share/templates/web_banner_728x90.svg | 5 +++++ share/templates/web_banners.svg | 7 +++++++ share/templates/white_opaque.svg | 5 +++++ src/ui/dialog/template-load-tab.cpp | 5 +++++ 34 files changed, 193 insertions(+) diff --git a/share/templates/A4.svg b/share/templates/A4.svg index 63991a8f9..34df9310a 100644 --- a/share/templates/A4.svg +++ b/share/templates/A4.svg @@ -35,5 +35,10 @@ + + A4 Page + Empty A4 sheet + A4 paper sheet empty + diff --git a/share/templates/A4_landscape.svg b/share/templates/A4_landscape.svg index 934c99f6d..c95cf1642 100644 --- a/share/templates/A4_landscape.svg +++ b/share/templates/A4_landscape.svg @@ -32,5 +32,10 @@ + + A4 Landscape Page + Empty A4 landscape sheet + A4 paper sheet empty landscape + diff --git a/share/templates/CD_cover_300dpi.svg b/share/templates/CD_cover_300dpi.svg index 330ccf2dc..9030aae8b 100644 --- a/share/templates/CD_cover_300dpi.svg +++ b/share/templates/CD_cover_300dpi.svg @@ -32,5 +32,10 @@ + + CD Cover 300dpi + Empty CD box cover. + CD cover disc disk 300dpi box + diff --git a/share/templates/CD_label_120x120.svg b/share/templates/CD_label_120x120.svg index c5c74a656..cc0029e15 100644 --- a/share/templates/CD_label_120x120.svg +++ b/share/templates/CD_label_120x120.svg @@ -78,6 +78,13 @@ + + CD Label 120x120 + JazzyNico + Simple CD Label template with disc's pattern. + 2010-11-15 + CD label 120x120 disc disk + + + DVD Cover Regular 300dpi + cmarqu + Template for both-sides DVD covers. + 2006-06-21 + DVD cover regular 300dpi + + + DVD Cover Slim 300dpi + cmarqu + Template for both-sides DVD slim covers. + 2006-06-21 + DVD cover slim 300dpi + + + DVD Cover Superslim 300dpi + cmarqu + Template for both-sides DVD superslim covers. + 2006-06-21 + DVD cover superslim 300dpi + + + DVD Cover Ultraslim 300dpi + cmarqu + Template for both-sides DVD ultraslim covers. + 2006-06-21 + DVD cover ultraslim 300dpi + + + LaTeX Beamer + jiho-sf + LaTeX beamer template with helping grid. + 2007-05-20 + LaTex LaTeX latex grid beamer + + + Letter + Standard letter sheet - 612x792 + letter 612x792 empty + diff --git a/share/templates/Letter_landscape.svg b/share/templates/Letter_landscape.svg index 564f4bcf6..76f434d20 100644 --- a/share/templates/Letter_landscape.svg +++ b/share/templates/Letter_landscape.svg @@ -32,5 +32,10 @@ + + Letter Landscape + Standard letter landscape sheet - 792x612 + letter landscape 792x612 empty + diff --git a/share/templates/Typography_Canvas.svg b/share/templates/Typography_Canvas.svg index 76dd48e6f..2b9773807 100644 --- a/share/templates/Typography_Canvas.svg +++ b/share/templates/Typography_Canvas.svg @@ -75,6 +75,13 @@ + + Typography Canvas + Felipe C. da S. Sanc... + Empty typography canvas with helping guidelines. + 2011-05-26 + guidelines typography canvas + + + Black Opaque + Empty black page + black opaque empty + diff --git a/share/templates/business_card_85x54mm.svg b/share/templates/business_card_85x54mm.svg index 5febfd884..8afd13a10 100644 --- a/share/templates/business_card_85x54mm.svg +++ b/share/templates/business_card_85x54mm.svg @@ -34,5 +34,10 @@ + + Business Card 85x54mm + Empty business card template. + business card empty 85x54 + diff --git a/share/templates/business_card_90x50mm.svg b/share/templates/business_card_90x50mm.svg index 14e3d20d0..7b9de3640 100644 --- a/share/templates/business_card_90x50mm.svg +++ b/share/templates/business_card_90x50mm.svg @@ -34,5 +34,10 @@ + + Business Card 90x50mm + Empty business card template. + business card empty 90x50 + diff --git a/share/templates/desktop_1024x768.svg b/share/templates/desktop_1024x768.svg index bda4f7ae7..84d0bd097 100644 --- a/share/templates/desktop_1024x768.svg +++ b/share/templates/desktop_1024x768.svg @@ -33,5 +33,10 @@ + + Desktop 1024x768 + Empty desktop size sheet + desktop 1024x768 wallpaper + diff --git a/share/templates/desktop_1600x1200.svg b/share/templates/desktop_1600x1200.svg index 6e98ce580..77fa49379 100644 --- a/share/templates/desktop_1600x1200.svg +++ b/share/templates/desktop_1600x1200.svg @@ -33,5 +33,10 @@ + + Desktop 1600x1200 + Empty desktop size sheet + desktop 1600x1200 wallpaper + diff --git a/share/templates/desktop_640x480.svg b/share/templates/desktop_640x480.svg index f6f338015..9fee0812c 100644 --- a/share/templates/desktop_640x480.svg +++ b/share/templates/desktop_640x480.svg @@ -33,5 +33,10 @@ + + Desktop 640x480 + Empty desktop size sheet + desktop 640x480 wallpaper + diff --git a/share/templates/desktop_800x600.svg b/share/templates/desktop_800x600.svg index b06632cf5..61b250b4b 100644 --- a/share/templates/desktop_800x600.svg +++ b/share/templates/desktop_800x600.svg @@ -34,5 +34,10 @@ + + Desktop 800x600 + Empty desktop size sheet + desktop 800x600 wallpaper + diff --git a/share/templates/fontforge_glyph.svg b/share/templates/fontforge_glyph.svg index 6d007f0d0..84ea05753 100644 --- a/share/templates/fontforge_glyph.svg +++ b/share/templates/fontforge_glyph.svg @@ -46,6 +46,12 @@ + + Fontforge Glyph + prokoudine + 2007-11-11 + font fontforge glyph 1000x1000 + + + Icon 16x16 + Small 16x16 icon template. + icon 16x16 empty + + + Icon 32x32 + 32x32 icon template. + icon 32x32 empty + + + Icon 48x48 + 48x48 icon template. + icon 48x48 empty + + + Icon 64x64 + 64x64 icon template. + icon 64x64 empty + + + No Borders + Empty sheet with no borders + no borders empty + diff --git a/share/templates/no_layers.svg b/share/templates/no_layers.svg index adb50f8e8..e887ad508 100644 --- a/share/templates/no_layers.svg +++ b/share/templates/no_layers.svg @@ -32,4 +32,9 @@ + + No Layers + Empty sheet with no layers + no layers empty + diff --git a/share/templates/video_HDTV_1920x1080.svg b/share/templates/video_HDTV_1920x1080.svg index 050679aa7..c28082139 100644 --- a/share/templates/video_HDTV_1920x1080.svg +++ b/share/templates/video_HDTV_1920x1080.svg @@ -33,5 +33,12 @@ + + Video HDTV 1920x1080 + popolon2 + HDTV video template for 1920x1080 resolution. + 2006-10-14 + HDTV video empty 1920x1080 + diff --git a/share/templates/video_NTSC_720x486.svg b/share/templates/video_NTSC_720x486.svg index f3ebe670b..22ee28205 100644 --- a/share/templates/video_NTSC_720x486.svg +++ b/share/templates/video_NTSC_720x486.svg @@ -33,5 +33,12 @@ + + Video NTSC 720x486 + popolon2 + NTSC video template for 720x486 resolution. + 2006-10-14 + NTSC video empty 720x486 + diff --git a/share/templates/video_PAL_720x576.svg b/share/templates/video_PAL_720x576.svg index ee861b2fb..548176adf 100644 --- a/share/templates/video_PAL_720x576.svg +++ b/share/templates/video_PAL_720x576.svg @@ -33,5 +33,12 @@ + + Video PAL 728x576 + popolon2 + PAL video template for 728x576 resolution. + 2006-10-14 + PAL video empty 728x576 + diff --git a/share/templates/web_banner_468x60.svg b/share/templates/web_banner_468x60.svg index 90fceb7de..9ca37f075 100644 --- a/share/templates/web_banner_468x60.svg +++ b/share/templates/web_banner_468x60.svg @@ -33,5 +33,10 @@ + + Web Banner 468x60 + Empty 468x60 web banner template. + web banner 468x60 empty + diff --git a/share/templates/web_banner_728x90.svg b/share/templates/web_banner_728x90.svg index dc35b21bf..48f7237a4 100644 --- a/share/templates/web_banner_728x90.svg +++ b/share/templates/web_banner_728x90.svg @@ -33,5 +33,10 @@ + + Web Banner 728x90 + Empty 728x90 web banner template. + web banner 728x90 empty + diff --git a/share/templates/web_banners.svg b/share/templates/web_banners.svg index 20fd9c41d..b074ac597 100644 --- a/share/templates/web_banners.svg +++ b/share/templates/web_banners.svg @@ -57,6 +57,13 @@ + + Web Banners Collection + Aurélio A. Heckert + A collection of standard web banners + 2010-05-27 + web banners collection + + + White Opaque + Empty white page + white opaque empty + diff --git a/src/ui/dialog/template-load-tab.cpp b/src/ui/dialog/template-load-tab.cpp index ade595eaa..b37b68ae3 100644 --- a/src/ui/dialog/template-load-tab.cpp +++ b/src/ui/dialog/template-load-tab.cpp @@ -207,6 +207,7 @@ TemplateLoadTab::TemplateData TemplateLoadTab::_processTemplateFile(const Glib:: rdoc = sp_repr_read_file(path.data(), SP_SVG_NS_URI); Inkscape::XML::Node *myRoot; Inkscape::XML::Node *dataNode; + std::cerr << path.c_str(); if (rdoc){ myRoot = rdoc->root(); if (strcmp(myRoot->name(), "svg:svg") != 0){ // Wrong file format @@ -236,9 +237,13 @@ TemplateLoadTab::TemplateData TemplateLoadTab::_processTemplateFile(const Glib:: Glib::ustring data = dataNode->firstChild()->content(); while (!data.empty()){ int pos = data.find_first_of(" "); + if (pos == Glib::ustring::npos) + pos = data.size(); + Glib::ustring keyword = dgettext("Document template keyword", data.substr(0, pos).data()); result.keywords.insert(keyword); _keywords.insert(keyword); + if (pos == data.size()) break; data.erase(0, pos+1); -- cgit v1.2.3 From 05f008356889de30ff55df1f73030003ed7cc312 Mon Sep 17 00:00:00 2001 From: Eric Greveson Date: Mon, 12 Aug 2013 16:39:48 +0100 Subject: Allow Object to Path verb from non-GUI (DBus) interface (bzr r12473.1.1) --- src/extension/internal/bluredge.cpp | 2 +- src/path-chemistry.cpp | 10 ++++------ src/path-chemistry.h | 4 +++- src/ui/dialog/livepatheffect-editor.cpp | 2 +- src/verbs.cpp | 23 +++++++++++++++++------ 5 files changed, 26 insertions(+), 15 deletions(-) diff --git a/src/extension/internal/bluredge.cpp b/src/extension/internal/bluredge.cpp index a3d2fd6e5..3ce537d9f 100644 --- a/src/extension/internal/bluredge.cpp +++ b/src/extension/internal/bluredge.cpp @@ -94,7 +94,7 @@ BlurEdge::effect (Inkscape::Extension::Effect *module, Inkscape::UI::View::View new_group->appendChild(new_items[i]); selection->add(new_items[i]); - sp_selected_path_to_curves(static_cast(desktop)); + sp_selected_path_to_curves(selection, static_cast(desktop)); if (offset < 0.0) { /* Doing an inset here folks */ diff --git a/src/path-chemistry.cpp b/src/path-chemistry.cpp index b192904ce..e1924664b 100644 --- a/src/path-chemistry.cpp +++ b/src/path-chemistry.cpp @@ -294,18 +294,16 @@ sp_selected_path_break_apart(SPDesktop *desktop) /* This function is an entry point from GUI */ void -sp_selected_path_to_curves(SPDesktop *desktop, bool interactive) +sp_selected_path_to_curves(Inkscape::Selection *selection, SPDesktop *desktop, bool interactive) { - Inkscape::Selection *selection = sp_desktop_selection(desktop); - if (selection->isEmpty()) { - if (interactive) + if (interactive && desktop) sp_desktop_message_stack(desktop)->flash(Inkscape::WARNING_MESSAGE, _("Select object(s) to convert to path.")); return; } bool did = false; - if (interactive) { + if (interactive && desktop) { desktop->messageStack()->flash(Inkscape::IMMEDIATE_MESSAGE, _("Converting objects to paths...")); // set "busy" cursor desktop->setWaitingCursor(); @@ -324,7 +322,7 @@ sp_selected_path_to_curves(SPDesktop *desktop, bool interactive) g_slist_free (to_select); g_slist_free (selected); - if (interactive) { + if (interactive && desktop) { desktop->clearWaitingCursor(); if (did) { DocumentUndo::done(sp_desktop_document(desktop), SP_VERB_OBJECT_TO_CURVE, diff --git a/src/path-chemistry.h b/src/path-chemistry.h index b88b84087..efc687b44 100644 --- a/src/path-chemistry.h +++ b/src/path-chemistry.h @@ -19,6 +19,7 @@ class SPDesktop; class SPItem; namespace Inkscape { +class Selection; namespace XML { class Node; } // namespace XML @@ -26,7 +27,8 @@ class Node; void sp_selected_path_combine (SPDesktop *desktop); void sp_selected_path_break_apart (SPDesktop *desktop); -void sp_selected_path_to_curves (SPDesktop *desktop, bool interactive = true); +// interactive=true only has an effect if desktop != NULL, i.e. if a GUI is available +void sp_selected_path_to_curves (Inkscape::Selection *selection, SPDesktop *desktop, bool interactive = true); void sp_selected_to_lpeitems(SPDesktop *desktop); Inkscape::XML::Node *sp_selected_item_to_curved_repr(SPItem *item, guint32 text_grouping_policy); void sp_selected_path_reverse (SPDesktop *desktop); diff --git a/src/ui/dialog/livepatheffect-editor.cpp b/src/ui/dialog/livepatheffect-editor.cpp index 6c6f3a582..6dc9c1ee3 100644 --- a/src/ui/dialog/livepatheffect-editor.cpp +++ b/src/ui/dialog/livepatheffect-editor.cpp @@ -416,7 +416,7 @@ LivePathEffectEditor::onAdd() // If item is a SPRect, convert it to path first: if ( SP_IS_RECT(item) ) { - sp_selected_path_to_curves(current_desktop, false); + sp_selected_path_to_curves(sel, current_desktop, false); item = sel->singleItem(); // get new item } diff --git a/src/verbs.cpp b/src/verbs.cpp index 06e59be38..baac07d60 100644 --- a/src/verbs.cpp +++ b/src/verbs.cpp @@ -1446,12 +1446,26 @@ void LayerVerb::perform(SPAction *action, void *data) */ void ObjectVerb::perform( SPAction *action, void *data) { - g_return_if_fail(ensure_desktop_valid(action)); SPDesktop *dt = sp_action_get_desktop(action); + Inkscape::Selection *sel = sp_action_get_selection(action); - SPEventContext *ec = dt->event_context; + // We can perform some actions without a desktop + bool handled = true; + switch (reinterpret_cast(data)) { + case SP_VERB_OBJECT_TO_CURVE: + sp_selected_path_to_curves(sel, dt); + break; + default: + handled = false; + break; + } + if (handled) { + return; + } - Inkscape::Selection *sel = sp_desktop_selection(dt); + g_return_if_fail(ensure_desktop_valid(action)); + + SPEventContext *ec = dt->event_context; if (sel->isEmpty()) return; @@ -1478,9 +1492,6 @@ void ObjectVerb::perform( SPAction *action, void *data) case SP_VERB_OBJECT_FLATTEN: sp_selection_remove_transform(dt); break; - case SP_VERB_OBJECT_TO_CURVE: - sp_selected_path_to_curves(dt); - break; case SP_VERB_OBJECT_FLOW_TEXT: text_flow_into_shape(); break; -- cgit v1.2.3 From ca6b42152e492dc4e1a4554aae7ae1712eeecab7 Mon Sep 17 00:00:00 2001 From: Slagvi Public Date: Tue, 13 Aug 2013 12:10:07 +0200 Subject: Cleanups before merge (bzr r12379.2.21) --- src/ui/dialog/template-load-tab.cpp | 3 +-- src/ui/dialog/template-load-tab.h | 1 - src/ui/dialog/template-widget.cpp | 4 ++-- src/ui/dialog/template-widget.h | 6 +++--- 4 files changed, 6 insertions(+), 8 deletions(-) diff --git a/src/ui/dialog/template-load-tab.cpp b/src/ui/dialog/template-load-tab.cpp index b37b68ae3..4fee4c5e7 100644 --- a/src/ui/dialog/template-load-tab.cpp +++ b/src/ui/dialog/template-load-tab.cpp @@ -14,7 +14,6 @@ #include #include #include -#include #include "interface.h" #include "file.h" @@ -207,7 +206,7 @@ TemplateLoadTab::TemplateData TemplateLoadTab::_processTemplateFile(const Glib:: rdoc = sp_repr_read_file(path.data(), SP_SVG_NS_URI); Inkscape::XML::Node *myRoot; Inkscape::XML::Node *dataNode; - std::cerr << path.c_str(); + if (rdoc){ myRoot = rdoc->root(); if (strcmp(myRoot->name(), "svg:svg") != 0){ // Wrong file format diff --git a/src/ui/dialog/template-load-tab.h b/src/ui/dialog/template-load-tab.h index c3c512374..50f3e0be2 100644 --- a/src/ui/dialog/template-load-tab.h +++ b/src/ui/dialog/template-load-tab.h @@ -71,7 +71,6 @@ protected: void _loadTemplates(); void _initLists(); - // Gtk::HBox _main_box; Gtk::VBox _tlist_box; Gtk::HBox _search_box; TemplateWidget *_info_widget; diff --git a/src/ui/dialog/template-widget.cpp b/src/ui/dialog/template-widget.cpp index 7e0599049..0e05f292c 100644 --- a/src/ui/dialog/template-widget.cpp +++ b/src/ui/dialog/template-widget.cpp @@ -30,7 +30,7 @@ TemplateWidget::TemplateWidget() , _short_description_label(_(" ")) , _template_author_label(_(" ")) , _template_name_label(_("no template selected")) - , _preview_image(" ") + , _preview_image() , _preview_render() { pack_start(_template_name_label, Gtk::PACK_SHRINK, 10); @@ -41,7 +41,7 @@ TemplateWidget::TemplateWidget() _preview_box.pack_start(_preview_render, Gtk::PACK_EXPAND_PADDING, 10); _short_description_label.set_line_wrap(true); - _short_description_label.set_size_request(200); + //_short_description_label.set_size_request(200); Gtk::Alignment *align; align = manage(new Gtk::Alignment(Gtk::ALIGN_END, Gtk::ALIGN_CENTER, 0.0, 0.0)); diff --git a/src/ui/dialog/template-widget.h b/src/ui/dialog/template-widget.h index 3c95208de..c7847460f 100644 --- a/src/ui/dialog/template-widget.h +++ b/src/ui/dialog/template-widget.h @@ -31,12 +31,12 @@ private: TemplateLoadTab::TemplateData _current_template; Gtk::Button _more_info_button; - Gtk::Label _short_description_label; - Gtk::Label _template_author_label; - Gtk::Label _template_name_label; Gtk::HBox _preview_box; Gtk::Image _preview_image; Dialog::SVGPreview _preview_render; + Gtk::Label _short_description_label; + Gtk::Label _template_author_label; + Gtk::Label _template_name_label; void _displayTemplateDetails(); }; -- cgit v1.2.3 From 7f43184f78f3ab203d6c597639805bf65cd22387 Mon Sep 17 00:00:00 2001 From: su_v Date: Wed, 14 Aug 2013 20:52:42 +0200 Subject: fix build with dbusapi enabled Fixed bugs: - https://launchpad.net/bugs/1212355 (bzr r12477) --- src/file.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/file.cpp b/src/file.cpp index eb917f169..68e229e62 100644 --- a/src/file.cpp +++ b/src/file.cpp @@ -164,7 +164,7 @@ SPDesktop *sp_file_new(const Glib::ustring &templ) sp_namedview_update_layers_from_document(desktop); #ifdef WITH_DBUS - Inkscape::Extension::Dbus::dbus_init_desktop_interface(dt); + Inkscape::Extension::Dbus::dbus_init_desktop_interface(desktop); #endif return desktop; -- cgit v1.2.3 From 0167937d063bb0e313aba987cbc69b59e18d2ed4 Mon Sep 17 00:00:00 2001 From: Krzysztof Kosi??ski Date: Thu, 15 Aug 2013 01:15:59 +0200 Subject: Fix warning and hopefully fix build failures on Launchpad (bzr r12478) --- src/ui/dialog/template-load-tab.cpp | 5 ++++- src/ui/dialog/template-widget.cpp | 2 -- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/ui/dialog/template-load-tab.cpp b/src/ui/dialog/template-load-tab.cpp index 4fee4c5e7..0123f663f 100644 --- a/src/ui/dialog/template-load-tab.cpp +++ b/src/ui/dialog/template-load-tab.cpp @@ -14,6 +14,9 @@ #include #include #include +#include +#include +#include #include "interface.h" #include "file.h" @@ -235,7 +238,7 @@ TemplateLoadTab::TemplateData TemplateLoadTab::_processTemplateFile(const Glib:: if ((dataNode = sp_repr_lookup_name(myRoot, "inkscape:_keywords")) != NULL){ Glib::ustring data = dataNode->firstChild()->content(); while (!data.empty()){ - int pos = data.find_first_of(" "); + std::size_t pos = data.find_first_of(" "); if (pos == Glib::ustring::npos) pos = data.size(); diff --git a/src/ui/dialog/template-widget.cpp b/src/ui/dialog/template-widget.cpp index 0e05f292c..dfc26913f 100644 --- a/src/ui/dialog/template-widget.cpp +++ b/src/ui/dialog/template-widget.cpp @@ -30,8 +30,6 @@ TemplateWidget::TemplateWidget() , _short_description_label(_(" ")) , _template_author_label(_(" ")) , _template_name_label(_("no template selected")) - , _preview_image() - , _preview_render() { pack_start(_template_name_label, Gtk::PACK_SHRINK, 10); pack_start(_template_author_label, Gtk::PACK_SHRINK, 0); -- cgit v1.2.3 From 0be39e335f73b5b7770f1580871f48ca1791ced4 Mon Sep 17 00:00:00 2001 From: Alex Valavanis Date: Thu, 15 Aug 2013 10:07:55 +0100 Subject: Fix Gtk+ 3 build failure and make check (bzr r12479) --- po/POTFILES.in | 3 +++ src/ui/dialog/template-load-tab.cpp | 3 ++- src/ui/dialog/template-widget.cpp | 8 ++++---- src/ui/dialog/template-widget.h | 3 ++- 4 files changed, 11 insertions(+), 6 deletions(-) diff --git a/po/POTFILES.in b/po/POTFILES.in index 794a52c80..6399ca239 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -258,6 +258,9 @@ src/ui/dialog/livepatheffect-editor.cpp src/ui/dialog/livepatheffect-add.cpp src/ui/dialog/memory.cpp src/ui/dialog/messages.cpp +src/ui/dialog/new-from-template.cpp +src/ui/dialog/template-load-tab.cpp +src/ui/dialog/template-widget.cpp src/ui/dialog/object-attributes.cpp src/ui/dialog/object-properties.cpp src/ui/dialog/ocaldialogs.cpp diff --git a/src/ui/dialog/template-load-tab.cpp b/src/ui/dialog/template-load-tab.cpp index 0123f663f..265ee8026 100644 --- a/src/ui/dialog/template-load-tab.cpp +++ b/src/ui/dialog/template-load-tab.cpp @@ -8,9 +8,10 @@ * Released under GNU GPL, read the file 'COPYING' for more information */ -#include "template-load-tab.h" #include "template-widget.h" +#include "template-load-tab.h" + #include #include #include diff --git a/src/ui/dialog/template-widget.cpp b/src/ui/dialog/template-widget.cpp index dfc26913f..be7e2b515 100644 --- a/src/ui/dialog/template-widget.cpp +++ b/src/ui/dialog/template-widget.cpp @@ -1,5 +1,3 @@ - - /** @file * @brief New From Template - templates widget - implementation */ @@ -11,15 +9,17 @@ */ #include "template-widget.h" -#include "template-load-tab.h" -#include "file.h" #include #include #include #include + #include +#include +#include "template-load-tab.h" +#include "file.h" namespace Inkscape { namespace UI { diff --git a/src/ui/dialog/template-widget.h b/src/ui/dialog/template-widget.h index c7847460f..f7e1267ce 100644 --- a/src/ui/dialog/template-widget.h +++ b/src/ui/dialog/template-widget.h @@ -11,10 +11,11 @@ #ifndef INKSCAPE_SEEN_UI_DIALOG_TEMPLATE_WIDGET_H #define INKSCAPE_SEEN_UI_DIALOG_TEMPLATE_WIDGET_H -#include "template-load-tab.h" #include "filedialogimpl-gtkmm.h" + #include +#include "template-load-tab.h" namespace Inkscape { namespace UI { -- cgit v1.2.3 From 69ac4cffff595c46b3f8dd2bcceab6bccf6e4581 Mon Sep 17 00:00:00 2001 From: Tavmjong Bah Date: Thu, 15 Aug 2013 21:10:29 +0200 Subject: Add option to write out path data using only relative coordinates (in addition to using only absolute coordinates or using a mixture of absolute and relative coordinates optimized for length). (bzr r12480) --- src/preferences-skeleton.h | 2 +- src/svg/path-string.cpp | 72 ++++++++++++++++++++++------------ src/svg/path-string.h | 24 +++++++++--- src/ui/dialog/inkscape-preferences.cpp | 8 +++- src/ui/dialog/inkscape-preferences.h | 2 +- 5 files changed, 73 insertions(+), 35 deletions(-) diff --git a/src/preferences-skeleton.h b/src/preferences-skeleton.h index c5d972966..17b912d33 100644 --- a/src/preferences-skeleton.h +++ b/src/preferences-skeleton.h @@ -326,7 +326,7 @@ static char const preferences_skeleton[] = " minimumexponent=\"-8\" " " inlineattrs=\"0\" " " indent=\"2\" " -" allowrelativecoordinates=\"1\" " +" pathstring_format=\"2\" " " forcerepeatcommands=\"0\" " " incorrect_attributes_warn=\"1\" " " incorrect_attributes_remove=\"0\" " diff --git a/src/svg/path-string.cpp b/src/svg/path-string.cpp index 61e9c90a2..6dddeadff 100644 --- a/src/svg/path-string.cpp +++ b/src/svg/path-string.cpp @@ -2,6 +2,7 @@ * Inkscape::SVG::PathString - builder for SVG path strings * * Copyright 2008 Jasper van de Gronde + * Copyright 2013 Tavmjong Bah * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -25,44 +26,65 @@ static int const maxprec = 16; int Inkscape::SVG::PathString::numericprecision; int Inkscape::SVG::PathString::minimumexponent; +Inkscape::SVG::PATHSTRING_FORMAT Inkscape::SVG::PathString::format; Inkscape::SVG::PathString::PathString() : - allow_relative_coordinates(Inkscape::Preferences::get()->getBool("/options/svgoutput/allowrelativecoordinates", true)), force_repeat_commands(Inkscape::Preferences::get()->getBool("/options/svgoutput/forcerepeatcommands")) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); + format = (PATHSTRING_FORMAT)prefs->getIntLimited("/options/svgoutput/pathstring_format", 1, 0, PATHSTRING_FORMAT_SIZE - 1 ); numericprecision = std::max(minprec,std::min(maxprec, prefs->getInt("/options/svgoutput/numericprecision", 8))); minimumexponent = prefs->getInt("/options/svgoutput/minimumexponent", -8); } +// For absolute and relative paths... the entire path is kept in the "tail". +// For optimized path, at a switch between absolute and relative, add tail to commonbase. void Inkscape::SVG::PathString::_appendOp(char abs_op, char rel_op) { bool abs_op_repeated = _abs_state.prevop == abs_op && !force_repeat_commands; bool rel_op_repeated = _rel_state.prevop == rel_op && !force_repeat_commands; - unsigned int const abs_added_size = abs_op_repeated ? 0 : 2; - unsigned int const rel_added_size = rel_op_repeated ? 0 : 2; - if ( _rel_state.str.size()+2 < _abs_state.str.size()+abs_added_size && allow_relative_coordinates ) { - // Store common prefix - commonbase += _rel_state.str; - _rel_state.str.clear(); - // Copy rel to abs - _abs_state = _rel_state; - _abs_state.switches++; - abs_op_repeated = false; - // We do not have to copy abs to rel: - // _rel_state.str.size()+2 < _abs_state.str.size()+abs_added_size - // _rel_state.str.size()+rel_added_size < _abs_state.str.size()+2 - // _abs_state.str.size()+2 > _rel_state.str.size()+rel_added_size - } else if ( _abs_state.str.size()+2 < _rel_state.str.size()+rel_added_size ) { - // Store common prefix - commonbase += _abs_state.str; - _abs_state.str.clear(); - // Copy abs to rel - _rel_state = _abs_state; - _abs_state.switches++; - rel_op_repeated = false; + + // For absolute and relative paths... do nothing. + switch (format) { + case PATHSTRING_ABSOLUTE: + if ( !abs_op_repeated ) _abs_state.appendOp(abs_op); + break; + case PATHSTRING_RELATIVE: + if ( !rel_op_repeated ) _rel_state.appendOp(rel_op); + break; + case PATHSTRING_OPTIMIZE: + { + unsigned int const abs_added_size = abs_op_repeated ? 0 : 2; + unsigned int const rel_added_size = rel_op_repeated ? 0 : 2; + if ( _rel_state.str.size()+2 < _abs_state.str.size()+abs_added_size ) { + + // Store common prefix + commonbase += _rel_state.str; + _rel_state.str.clear(); + // Copy rel to abs + _abs_state = _rel_state; + _abs_state.switches++; + abs_op_repeated = false; + // We do not have to copy abs to rel: + // _rel_state.str.size()+2 < _abs_state.str.size()+abs_added_size + // _rel_state.str.size()+rel_added_size < _abs_state.str.size()+2 + // _abs_state.str.size()+2 > _rel_state.str.size()+rel_added_size + } else if ( _abs_state.str.size()+2 < _rel_state.str.size()+rel_added_size ) { + + // Store common prefix + commonbase += _abs_state.str; + _abs_state.str.clear(); + // Copy abs to rel + _rel_state = _abs_state; + _abs_state.switches++; + rel_op_repeated = false; + } + if ( !abs_op_repeated ) _abs_state.appendOp(abs_op); + if ( !rel_op_repeated ) _rel_state.appendOp(rel_op); + } + break; + default: + std::cout << "Better not be here!" << std::endl; } - if ( !abs_op_repeated ) _abs_state.appendOp(abs_op); - if ( !rel_op_repeated ) _rel_state.appendOp(rel_op); } void Inkscape::SVG::PathString::State::append(Geom::Coord v) { diff --git a/src/svg/path-string.h b/src/svg/path-string.h index 11018e65c..3a891873d 100644 --- a/src/svg/path-string.h +++ b/src/svg/path-string.h @@ -1,6 +1,7 @@ /* * Copyright 2007 MenTaLguY * Copyright 2008 Jasper van de Gronde + * Copyright 2013 Tavmjong Bah * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -23,6 +24,14 @@ namespace Inkscape { namespace SVG { +// Relative vs. absolute coordinates +enum PATHSTRING_FORMAT { + PATHSTRING_ABSOLUTE, // Use only absolute coordinates + PATHSTRING_RELATIVE, // Use only relative coordinates + PATHSTRING_OPTIMIZE, // Optimize for path string length + PATHSTRING_FORMAT_SIZE +}; + /** * Builder for SVG path strings. */ @@ -38,6 +47,7 @@ public: final.reserve(commonbase.size()+t.size()); final = commonbase; final += tail(); + // std::cout << " final: " << final << std::endl; return final; } @@ -130,12 +140,10 @@ public: } PathString &closePath() { - commonbase += _abs_state.str; - _abs_state.str.clear(); - _rel_state = _abs_state; + _abs_state.appendOp('Z'); _rel_state.appendOp('z'); - _rel_state.switches++; + _current_point = _initial_point; return *this; } @@ -229,9 +237,13 @@ private: // to cause a quadratic time complexity (in the number of characters/operators) std::string commonbase; std::string final; - std::string const &tail() const { return ((_abs_state <= _rel_state || !allow_relative_coordinates) ? _abs_state.str : _rel_state.str); } + std::string const &tail() const { + return ( (format == PATHSTRING_ABSOLUTE) || + (format == PATHSTRING_OPTIMIZE && _abs_state <= _rel_state ) ? + _abs_state.str : _rel_state.str ); + } - bool const allow_relative_coordinates; + static PATHSTRING_FORMAT format; bool const force_repeat_commands; static int numericprecision; static int minimumexponent; diff --git a/src/ui/dialog/inkscape-preferences.cpp b/src/ui/dialog/inkscape-preferences.cpp index 7890b0b4c..b06c1fd1f 100644 --- a/src/ui/dialog/inkscape-preferences.cpp +++ b/src/ui/dialog/inkscape-preferences.cpp @@ -879,8 +879,12 @@ void InkscapePreferences::initPageIO() _page_svgoutput.add_group_header( _("Path data")); - _svgoutput_allowrelativecoordinates.init( _("Allow relative coordinates"), "/options/svgoutput/allowrelativecoordinates", true); - _page_svgoutput.add_line( true, "", _svgoutput_allowrelativecoordinates, "", _("If set, relative coordinates may be used in path data"), false); + int const numPathstringFormat = 3; + Glib::ustring pathstringFormatLabels[numPathstringFormat] = {_("Absolute"), _("Relative"), _("Optimized")}; + int pathstringFormatValues[numPathstringFormat] = {0, 1, 2}; + + _svgoutput_pathformat.init("/options/svgoutput/pathstring_format", pathstringFormatLabels, pathstringFormatValues, numPathstringFormat, 2); + _page_svgoutput.add_line( true, _("Path string format"), _svgoutput_pathformat, "", _("Path data should be written: only with absolute coordinates, only with relative coordinates, or optimized for string length (mixed absolute and relative coordinates)"), false); _svgoutput_forcerepeatcommands.init( _("Force repeat commands"), "/options/svgoutput/forcerepeatcommands", false); _page_svgoutput.add_line( true, "", _svgoutput_forcerepeatcommands, "", _("Force repeating of the same path command (for example, 'L 1,2 L 3,4' instead of 'L 1,2 3,4')"), false); diff --git a/src/ui/dialog/inkscape-preferences.h b/src/ui/dialog/inkscape-preferences.h index 37c05df05..56222fb22 100644 --- a/src/ui/dialog/inkscape-preferences.h +++ b/src/ui/dialog/inkscape-preferences.h @@ -426,7 +426,7 @@ protected: UI::Widget::PrefSpinButton _svgoutput_minimumexponent; UI::Widget::PrefCheckButton _svgoutput_inlineattrs; UI::Widget::PrefSpinButton _svgoutput_indent; - UI::Widget::PrefCheckButton _svgoutput_allowrelativecoordinates; + UI::Widget::PrefCombo _svgoutput_pathformat; UI::Widget::PrefCheckButton _svgoutput_forcerepeatcommands; // Attribute Checking controls for SVG Output page: -- cgit v1.2.3 From 451210ce988fb6e6964bd4869f74ffa7fb2c462d Mon Sep 17 00:00:00 2001 From: Tavmjong Bah Date: Thu, 15 Aug 2013 21:13:44 +0200 Subject: Prevent writing out empty style strings. (bzr r12481) --- src/attribute-rel-util.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/attribute-rel-util.cpp b/src/attribute-rel-util.cpp index 933339632..15c71daa7 100644 --- a/src/attribute-rel-util.cpp +++ b/src/attribute-rel-util.cpp @@ -141,7 +141,11 @@ void sp_attribute_clean_style(Node *repr, unsigned int flags) { // sp_repr_css_set( repr, css, "style"); // Don't use as it will cause loop. Glib::ustring value; sp_repr_css_write_string(css, value); - repr->setAttribute("style", value.c_str()); + if( value.empty() ) { + repr->setAttribute("style", NULL ); + } else { + repr->setAttribute("style", value.c_str()); + } sp_repr_css_attr_unref( css ); } -- cgit v1.2.3 From 1f8f2ee3fe058a03b06f24dda950795f2639be6c Mon Sep 17 00:00:00 2001 From: Kris De Gussem Date: Thu, 15 Aug 2013 22:38:20 +0200 Subject: patch of David Mathog in bugtread 988601 comment 186 (bzr r11668.1.73) --- src/extension/internal/emf-inout.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/extension/internal/emf-inout.cpp b/src/extension/internal/emf-inout.cpp index c14393cc2..7dc0ee314 100644 --- a/src/extension/internal/emf-inout.cpp +++ b/src/extension/internal/emf-inout.cpp @@ -2705,9 +2705,8 @@ std::cout << "BEFORE DRAW" int f1; int f2 = (d->arcdir == U_AD_COUNTERCLOCKWISE ? 0 : 1); if(!emr_arc_points( lpEMFR, &f1, f2, ¢er, &start, &end, &size)){ - // draw a line from current position to start + // draw a line from current position to start, arc from there tmp_path << "\n\tL " << pix_to_xy(d, start.x, start.y); - tmp_path << "\n\tM " << pix_to_xy(d, start.x, start.y); tmp_path << " A " << pix_to_abs_size(d, size.x)/2.0 << "," << pix_to_abs_size(d, size.y)/2.0 ; tmp_path << " "; tmp_path << 180.0 * current_rotation(d)/M_PI; -- cgit v1.2.3 From d1ffa8dc98f836a601d83afeb7625f7ecf954c1d Mon Sep 17 00:00:00 2001 From: David Mathog <> Date: Fri, 16 Aug 2013 12:46:33 +0200 Subject: Fix compiler warnings (bzr r11668.1.74) --- src/libnrtype/Layout-TNG-Output.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/libnrtype/Layout-TNG-Output.cpp b/src/libnrtype/Layout-TNG-Output.cpp index 153ef1ef0..162400aab 100644 --- a/src/libnrtype/Layout-TNG-Output.cpp +++ b/src/libnrtype/Layout-TNG-Output.cpp @@ -538,11 +538,11 @@ Glib::ustring Layout::dumpAsText() const Glib::ustring::const_iterator icc; - snprintf(line, sizeof(line), "spans %d\n", _spans.size()); + snprintf(line, sizeof(line), "spans %zu\n", _spans.size()); result += line; - snprintf(line, sizeof(line), "chars %d\n", _characters.size()); + snprintf(line, sizeof(line), "chars %zu\n", _characters.size()); result += line; - snprintf(line, sizeof(line), "glyphs %d\n", _glyphs.size()); + snprintf(line, sizeof(line), "glyphs %zu\n", _glyphs.size()); result += line; unsigned lastspan=5000; if(_characters.size() > 1){ -- cgit v1.2.3 From 350476a133a3965b1d7047d2f0f05bf809b177ba Mon Sep 17 00:00:00 2001 From: Kris De Gussem Date: Wed, 21 Aug 2013 13:01:40 +0200 Subject: better memory leak fix (fixes bug 986271: memory leaks associated with images) Patch by David Mathog, including revert of former fix in rev 11268 (bzr r12482) --- src/extension/internal/emf-win32-print.cpp | 12 ------------ src/extension/internal/emf-win32-print.h | 7 ------- src/sp-image.cpp | 1 + 3 files changed, 1 insertion(+), 19 deletions(-) diff --git a/src/extension/internal/emf-win32-print.cpp b/src/extension/internal/emf-win32-print.cpp index 621954f68..92f564078 100644 --- a/src/extension/internal/emf-win32-print.cpp +++ b/src/extension/internal/emf-win32-print.cpp @@ -910,18 +910,6 @@ void PrintEmfWin32::init (void) return; } -unsigned int PrintEmfWin32::image(Inkscape::Extension::Print * /* module */, /** not used */ - unsigned char *px, /** array of pixel values, Gdk::Pixbuf bitmap format */ - unsigned int /*w*/, /** width of bitmap */ - unsigned int /*h*/, /** height of bitmap */ - unsigned int /*rs*/, /** row stride (normally w*4) */ - Geom::Affine const & /*tf_ignore*/, /** WRONG affine transform, use the one from m_tr_stack */ - SPStyle const * /*style*/) /** provides indirect link to image object */ -{ - free(px); - return 0; -} - } /* namespace Internal */ } /* namespace Extension */ } /* namespace Inkscape */ diff --git a/src/extension/internal/emf-win32-print.h b/src/extension/internal/emf-win32-print.h index e7bd08477..bbeeeb051 100644 --- a/src/extension/internal/emf-win32-print.h +++ b/src/extension/internal/emf-win32-print.h @@ -50,13 +50,6 @@ class PrintEmfWin32 : public Inkscape::Extension::Implementation::Implementation unsigned int print_pathv (Geom::PathVector const &pathv, const Geom::Affine &transform); bool print_simple_shape (Geom::PathVector const &pathv, const Geom::Affine &transform); - unsigned int image(Inkscape::Extension::Print * /* module */, /** not used */ - unsigned char *px, /** array of pixel values, Gdk::Pixbuf bitmap format */ - unsigned int w, /** width of bitmap */ - unsigned int h, /** height of bitmap */ - unsigned int rs, /** row stride (normally w*4) */ - Geom::Affine const &tf_ignore, /** WRONG affine transform, use the one from m_tr_stack */ - SPStyle const *style); /** provides indirect link to image object */ public: PrintEmfWin32 (void); diff --git a/src/sp-image.cpp b/src/sp-image.cpp index d60fbc181..10d294d5c 100644 --- a/src/sp-image.cpp +++ b/src/sp-image.cpp @@ -1056,6 +1056,7 @@ static void sp_image_print( SPItem *item, SPPrintContext *ctx ) t = ti * t; sp_print_image_R8G8B8A8_N(ctx, px + trimx*pixskip + trimy*rs, trimwidth, trimheight, rs, t, item->style); } + free(px); // else big memory leak on each image print! } } -- cgit v1.2.3 From 1f27fbc3a17d29d457d5fb3993a4203d977da3d8 Mon Sep 17 00:00:00 2001 From: Alex Valavanis Date: Wed, 21 Aug 2013 14:41:48 +0100 Subject: Fix make check on OS X Fixed bugs: - https://launchpad.net/bugs/120445 (bzr r12483) --- share/extensions/test/run-all-extension-tests | 48 +++++++++++++++++++++++++-- 1 file changed, 45 insertions(+), 3 deletions(-) diff --git a/share/extensions/test/run-all-extension-tests b/share/extensions/test/run-all-extension-tests index e7cba78f4..aa20c8c7b 100755 --- a/share/extensions/test/run-all-extension-tests +++ b/share/extensions/test/run-all-extension-tests @@ -1,12 +1,39 @@ #!/bin/bash +# TODO: check for GNU mktemp and sed (from coreutils), else exit +# --------------------------------------------------------------------- +# solution below is based on +# + +# Wrapper function for GNU mktemp +gnu_mktemp() { + mktemp "$@" +} + +# Wrapper function for BSD mktemp +bsd_mktemp() { + mktemp -t tmpfile.XXXXXX "$@" +} + +# Try to figure out which wrapper to use +if mktemp -V | grep version >/dev/null 2>&1; then + MKTEMP=gnu_mktemp +else + MKTEMP=bsd_mktemp +fi + +#mytmpfile=`$MKTEMP` +echo "MKTEMP to be used: $MKTEMP" + +# --------------------------------------------------------------------- + echo -e "\n##### Extension Tests #####" cd "$(dirname "$0")" has_py_coverage=false -py_cover_files=$( mktemp ) -failed_tests=$( mktemp ) +py_cover_files=$( $MKTEMP ) +failed_tests=$( $MKTEMP ) if coverage.py -e >/dev/null 2>/dev/null; then has_py_coverage=true @@ -39,8 +66,23 @@ function run_py_test() { tot_FAILED=0 +# TODO: check for GNU mktemp and sed (from coreutils), else exit +# --------------------------------------------------------------------- +# solution below is based on +# + +if [ `sed --version >/dev/null 2>/dev/null && echo 1` ]; then + SED_EXTENDED='sed -r' # GNU sed (e.g. on Linux) +else + SED_EXTENDED='sed -E' # BSD sed (e.g. on Mac OS X) +fi + +echo "sed regex command: $SED_EXTENDED" + +# --------------------------------------------------------------------- + for testFile in *.test.py; do - if ! run_py_test $( echo $testFile | sed -r 's/^([^.]+)..*$/\1/' ); then + if ! run_py_test $( echo $testFile | $SED_EXTENDED 's/^([^.]+)..*$/\1/' ); then let tot_FAILED++ fi done -- cgit v1.2.3 From bc74e6961282b6b6f089ad1faa1a2390a0987c1f Mon Sep 17 00:00:00 2001 From: Nicolas Dufour Date: Thu, 22 Aug 2013 14:41:57 +0200 Subject: New merge text extension (see Bug #960046). Fixed bugs: - https://launchpad.net/bugs/960046 (bzr r12484) --- po/POTFILES.in | 1 + po/inkscape.pot | 6228 ++++++++++++++++++++------------------- share/extensions/Makefile.am | 2 + share/extensions/text_merge.inx | 34 + share/extensions/text_merge.py | 199 ++ 5 files changed, 3381 insertions(+), 3083 deletions(-) create mode 100644 share/extensions/text_merge.inx create mode 100644 share/extensions/text_merge.py diff --git a/po/POTFILES.in b/po/POTFILES.in index 6399ca239..75e9de185 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -537,6 +537,7 @@ share/extensions/wireframe_sphere.py [type: gettext/xml] share/extensions/text_extract.inx [type: gettext/xml] share/extensions/text_flipcase.inx [type: gettext/xml] share/extensions/text_lowercase.inx +[type: gettext/xml] share/extensions/text_merge.inx [type: gettext/xml] share/extensions/text_randomcase.inx [type: gettext/xml] share/extensions/text_sentencecase.inx [type: gettext/xml] share/extensions/text_titlecase.inx diff --git a/po/inkscape.pot b/po/inkscape.pot index bc6a53be2..c78d49d51 100644 --- a/po/inkscape.pot +++ b/po/inkscape.pot @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: inkscape-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2013-06-27 21:15+0200\n" +"POT-Creation-Date: 2013-08-22 14:40+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -945,8 +945,8 @@ msgstr "" msgid "Black Light" msgstr "" -#: ../share/filters/filters.svg.h:1 ../src/ui/dialog/clonetiler.cpp:831 -#: ../src/ui/dialog/clonetiler.cpp:982 +#: ../share/filters/filters.svg.h:1 ../src/ui/dialog/clonetiler.cpp:832 +#: ../src/ui/dialog/clonetiler.cpp:983 #: ../src/extension/internal/bitmap/colorize.cpp:52 #: ../src/extension/internal/filter/bumps.h:101 #: ../src/extension/internal/filter/bumps.h:321 @@ -978,7 +978,7 @@ msgstr "" #: ../src/extension/internal/filter/paint.h:717 #: ../src/extension/internal/filter/shadows.h:73 #: ../src/extension/internal/filter/transparency.h:345 -#: ../src/ui/dialog/document-properties.cpp:150 +#: ../src/ui/dialog/document-properties.cpp:149 #: ../share/extensions/color_blackandwhite.inx.h:2 #: ../share/extensions/color_brighter.inx.h:2 #: ../share/extensions/color_custom.inx.h:15 @@ -3230,8 +3230,8 @@ msgstr "" msgid "Defines the direction and magnitude of the extrusion" msgstr "" -#: ../src/sp-flowtext.cpp:339 ../src/sp-text.cpp:400 -#: ../src/text-context.cpp:1630 +#: ../src/sp-flowtext.cpp:339 ../src/sp-text.cpp:399 +#: ../src/text-context.cpp:1631 msgid " [truncated]" msgstr "" @@ -3249,45 +3249,45 @@ msgid_plural "Linked flowed text (%d characters%s)" msgstr[0] "" msgstr[1] "" -#: ../src/arc-context.cpp:307 +#: ../src/arc-context.cpp:306 msgid "" "Ctrl: make circle or integer-ratio ellipse, snap arc/segment angle" msgstr "" -#: ../src/arc-context.cpp:308 ../src/rect-context.cpp:353 +#: ../src/arc-context.cpp:307 ../src/rect-context.cpp:352 msgid "Shift: draw around the starting point" msgstr "" -#: ../src/arc-context.cpp:464 +#: ../src/arc-context.cpp:465 #, c-format msgid "" "Ellipse: %s × %s (constrained to ratio %d:%d); with Shift " "to draw around the starting point" msgstr "" -#: ../src/arc-context.cpp:466 +#: ../src/arc-context.cpp:467 #, c-format msgid "" "Ellipse: %s × %s; with Ctrl to make square or integer-" "ratio ellipse; with Shift to draw around the starting point" msgstr "" -#: ../src/arc-context.cpp:492 +#: ../src/arc-context.cpp:493 msgid "Create ellipse" msgstr "" -#: ../src/box3d-context.cpp:421 ../src/box3d-context.cpp:428 -#: ../src/box3d-context.cpp:435 ../src/box3d-context.cpp:442 -#: ../src/box3d-context.cpp:449 ../src/box3d-context.cpp:456 +#: ../src/box3d-context.cpp:420 ../src/box3d-context.cpp:427 +#: ../src/box3d-context.cpp:434 ../src/box3d-context.cpp:441 +#: ../src/box3d-context.cpp:448 ../src/box3d-context.cpp:455 msgid "Change perspective (angle of PLs)" msgstr "" #. status text -#: ../src/box3d-context.cpp:640 +#: ../src/box3d-context.cpp:639 msgid "3D Box; with Shift to extrude along the Z axis" msgstr "" -#: ../src/box3d-context.cpp:668 +#: ../src/box3d-context.cpp:667 msgid "Create 3D box" msgstr "" @@ -3309,22 +3309,21 @@ msgstr "" #: ../src/ui/dialog/filter-effects-dialog.cpp:518 #: ../src/ui/dialog/inkscape-preferences.cpp:332 #: ../src/ui/dialog/inkscape-preferences.cpp:641 -#: ../src/ui/dialog/inkscape-preferences.cpp:1255 -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 -#: ../src/ui/dialog/inkscape-preferences.cpp:1817 +#: ../src/ui/dialog/inkscape-preferences.cpp:1259 +#: ../src/ui/dialog/inkscape-preferences.cpp:1423 +#: ../src/ui/dialog/inkscape-preferences.cpp:1821 #: ../src/ui/dialog/input.cpp:742 ../src/ui/dialog/input.cpp:743 #: ../src/ui/dialog/input.cpp:1571 ../src/ui/dialog/input.cpp:1625 -#: ../src/verbs.cpp:2293 ../src/widgets/gradient-toolbar.cpp:1128 -#: ../src/widgets/pencil-toolbar.cpp:189 +#: ../src/verbs.cpp:2345 ../src/widgets/gradient-toolbar.cpp:1128 +#: ../src/widgets/pencil-toolbar.cpp:184 +#: ../src/widgets/stroke-marker-selector.cpp:388 #: ../share/extensions/gcodetools_area.inx.h:48 #: ../share/extensions/gcodetools_dxf_points.inx.h:20 #: ../share/extensions/gcodetools_engraving.inx.h:26 #: ../share/extensions/gcodetools_graffiti.inx.h:37 #: ../share/extensions/gcodetools_lathe.inx.h:41 #: ../share/extensions/gcodetools_path_to_gcode.inx.h:30 -#: ../share/extensions/grid_polar.inx.h:4 -#: ../share/extensions/guides_creator.inx.h:7 -#: ../share/extensions/scour.inx.h:18 +#: ../share/extensions/grid_polar.inx.h:4 ../share/extensions/scour.inx.h:18 msgid "None" msgstr "" @@ -3356,11 +3355,11 @@ msgstr "" msgid "Select at least one non-connector object." msgstr "" -#: ../src/connector-context.cpp:1456 ../src/widgets/connector-toolbar.cpp:330 +#: ../src/connector-context.cpp:1456 ../src/widgets/connector-toolbar.cpp:326 msgid "Make connectors avoid selected objects" msgstr "" -#: ../src/connector-context.cpp:1457 ../src/widgets/connector-toolbar.cpp:340 +#: ../src/connector-context.cpp:1457 ../src/widgets/connector-toolbar.cpp:336 msgid "Make connectors ignore selected objects" msgstr "" @@ -3372,639 +3371,639 @@ msgstr "" msgid "Current layer is locked. Unlock it to be able to draw on it." msgstr "" -#: ../src/desktop-events.cpp:228 +#: ../src/desktop-events.cpp:225 msgid "Create guide" msgstr "" -#: ../src/desktop-events.cpp:473 +#: ../src/desktop-events.cpp:470 msgid "Move guide" msgstr "" -#: ../src/desktop-events.cpp:480 ../src/desktop-events.cpp:538 +#: ../src/desktop-events.cpp:477 ../src/desktop-events.cpp:535 #: ../src/ui/dialog/guides.cpp:144 msgid "Delete guide" msgstr "" -#: ../src/desktop-events.cpp:518 +#: ../src/desktop-events.cpp:515 #, c-format msgid "Guideline: %s" msgstr "" -#: ../src/desktop.cpp:911 +#: ../src/desktop.cpp:826 msgid "No previous zoom." msgstr "" -#: ../src/desktop.cpp:932 +#: ../src/desktop.cpp:847 msgid "No next zoom." msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:111 +#: ../src/ui/dialog/clonetiler.cpp:112 msgid "_Symmetry" msgstr "" #. TRANSLATORS: "translation" means "shift" / "displacement" here. -#: ../src/ui/dialog/clonetiler.cpp:123 +#: ../src/ui/dialog/clonetiler.cpp:124 msgid "P1: simple translation" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:124 +#: ../src/ui/dialog/clonetiler.cpp:125 msgid "P2: 180° rotation" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:125 +#: ../src/ui/dialog/clonetiler.cpp:126 msgid "PM: reflection" msgstr "" #. TRANSLATORS: "glide reflection" is a reflection and a translation combined. #. For more info, see http://mathforum.org/sum95/suzanne/symsusan.html -#: ../src/ui/dialog/clonetiler.cpp:128 +#: ../src/ui/dialog/clonetiler.cpp:129 msgid "PG: glide reflection" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:129 +#: ../src/ui/dialog/clonetiler.cpp:130 msgid "CM: reflection + glide reflection" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:130 +#: ../src/ui/dialog/clonetiler.cpp:131 msgid "PMM: reflection + reflection" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:131 +#: ../src/ui/dialog/clonetiler.cpp:132 msgid "PMG: reflection + 180° rotation" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:132 +#: ../src/ui/dialog/clonetiler.cpp:133 msgid "PGG: glide reflection + 180° rotation" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:133 +#: ../src/ui/dialog/clonetiler.cpp:134 msgid "CMM: reflection + reflection + 180° rotation" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:134 +#: ../src/ui/dialog/clonetiler.cpp:135 msgid "P4: 90° rotation" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:135 +#: ../src/ui/dialog/clonetiler.cpp:136 msgid "P4M: 90° rotation + 45° reflection" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:136 +#: ../src/ui/dialog/clonetiler.cpp:137 msgid "P4G: 90° rotation + 90° reflection" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:137 +#: ../src/ui/dialog/clonetiler.cpp:138 msgid "P3: 120° rotation" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:138 +#: ../src/ui/dialog/clonetiler.cpp:139 msgid "P31M: reflection + 120° rotation, dense" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:139 +#: ../src/ui/dialog/clonetiler.cpp:140 msgid "P3M1: reflection + 120° rotation, sparse" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:140 +#: ../src/ui/dialog/clonetiler.cpp:141 msgid "P6: 60° rotation" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:141 +#: ../src/ui/dialog/clonetiler.cpp:142 msgid "P6M: reflection + 60° rotation" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:161 +#: ../src/ui/dialog/clonetiler.cpp:162 msgid "Select one of the 17 symmetry groups for the tiling" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:179 +#: ../src/ui/dialog/clonetiler.cpp:180 msgid "S_hift" msgstr "" #. TRANSLATORS: "shift" means: the tiles will be shifted (offset) horizontally by this amount -#: ../src/ui/dialog/clonetiler.cpp:189 +#: ../src/ui/dialog/clonetiler.cpp:190 #, no-c-format msgid "Shift X:" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:197 +#: ../src/ui/dialog/clonetiler.cpp:198 #, no-c-format msgid "Horizontal shift per row (in % of tile width)" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:205 +#: ../src/ui/dialog/clonetiler.cpp:206 #, no-c-format msgid "Horizontal shift per column (in % of tile width)" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:211 +#: ../src/ui/dialog/clonetiler.cpp:212 msgid "Randomize the horizontal shift by this percentage" msgstr "" #. TRANSLATORS: "shift" means: the tiles will be shifted (offset) vertically by this amount -#: ../src/ui/dialog/clonetiler.cpp:221 +#: ../src/ui/dialog/clonetiler.cpp:222 #, no-c-format msgid "Shift Y:" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:229 +#: ../src/ui/dialog/clonetiler.cpp:230 #, no-c-format msgid "Vertical shift per row (in % of tile height)" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:237 +#: ../src/ui/dialog/clonetiler.cpp:238 #, no-c-format msgid "Vertical shift per column (in % of tile height)" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:244 +#: ../src/ui/dialog/clonetiler.cpp:245 msgid "Randomize the vertical shift by this percentage" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:252 ../src/ui/dialog/clonetiler.cpp:398 +#: ../src/ui/dialog/clonetiler.cpp:253 ../src/ui/dialog/clonetiler.cpp:399 msgid "Exponent:" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:259 +#: ../src/ui/dialog/clonetiler.cpp:260 msgid "Whether rows are spaced evenly (1), converge (<1) or diverge (>1)" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:266 +#: ../src/ui/dialog/clonetiler.cpp:267 msgid "Whether columns are spaced evenly (1), converge (<1) or diverge (>1)" msgstr "" #. TRANSLATORS: "Alternate" is a verb here -#: ../src/ui/dialog/clonetiler.cpp:274 ../src/ui/dialog/clonetiler.cpp:438 -#: ../src/ui/dialog/clonetiler.cpp:514 ../src/ui/dialog/clonetiler.cpp:587 -#: ../src/ui/dialog/clonetiler.cpp:633 ../src/ui/dialog/clonetiler.cpp:760 +#: ../src/ui/dialog/clonetiler.cpp:275 ../src/ui/dialog/clonetiler.cpp:439 +#: ../src/ui/dialog/clonetiler.cpp:515 ../src/ui/dialog/clonetiler.cpp:588 +#: ../src/ui/dialog/clonetiler.cpp:634 ../src/ui/dialog/clonetiler.cpp:761 msgid "Alternate:" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:280 +#: ../src/ui/dialog/clonetiler.cpp:281 msgid "Alternate the sign of shifts for each row" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:285 +#: ../src/ui/dialog/clonetiler.cpp:286 msgid "Alternate the sign of shifts for each column" msgstr "" #. TRANSLATORS: "Cumulate" is a verb here -#: ../src/ui/dialog/clonetiler.cpp:292 ../src/ui/dialog/clonetiler.cpp:456 -#: ../src/ui/dialog/clonetiler.cpp:532 +#: ../src/ui/dialog/clonetiler.cpp:293 ../src/ui/dialog/clonetiler.cpp:457 +#: ../src/ui/dialog/clonetiler.cpp:533 msgid "Cumulate:" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:298 +#: ../src/ui/dialog/clonetiler.cpp:299 msgid "Cumulate the shifts for each row" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:303 +#: ../src/ui/dialog/clonetiler.cpp:304 msgid "Cumulate the shifts for each column" msgstr "" #. TRANSLATORS: "Cumulate" is a verb here -#: ../src/ui/dialog/clonetiler.cpp:310 +#: ../src/ui/dialog/clonetiler.cpp:311 msgid "Exclude tile:" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:316 +#: ../src/ui/dialog/clonetiler.cpp:317 msgid "Exclude tile height in shift" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:321 +#: ../src/ui/dialog/clonetiler.cpp:322 msgid "Exclude tile width in shift" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:330 +#: ../src/ui/dialog/clonetiler.cpp:331 msgid "Sc_ale" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:338 +#: ../src/ui/dialog/clonetiler.cpp:339 msgid "Scale X:" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:346 +#: ../src/ui/dialog/clonetiler.cpp:347 #, no-c-format msgid "Horizontal scale per row (in % of tile width)" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:354 +#: ../src/ui/dialog/clonetiler.cpp:355 #, no-c-format msgid "Horizontal scale per column (in % of tile width)" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:360 +#: ../src/ui/dialog/clonetiler.cpp:361 msgid "Randomize the horizontal scale by this percentage" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:368 +#: ../src/ui/dialog/clonetiler.cpp:369 msgid "Scale Y:" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:376 +#: ../src/ui/dialog/clonetiler.cpp:377 #, no-c-format msgid "Vertical scale per row (in % of tile height)" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:384 +#: ../src/ui/dialog/clonetiler.cpp:385 #, no-c-format msgid "Vertical scale per column (in % of tile height)" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:390 +#: ../src/ui/dialog/clonetiler.cpp:391 msgid "Randomize the vertical scale by this percentage" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:404 +#: ../src/ui/dialog/clonetiler.cpp:405 msgid "Whether row scaling is uniform (1), converge (<1) or diverge (>1)" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:410 +#: ../src/ui/dialog/clonetiler.cpp:411 msgid "Whether column scaling is uniform (1), converge (<1) or diverge (>1)" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:418 +#: ../src/ui/dialog/clonetiler.cpp:419 msgid "Base:" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:424 ../src/ui/dialog/clonetiler.cpp:430 +#: ../src/ui/dialog/clonetiler.cpp:425 ../src/ui/dialog/clonetiler.cpp:431 msgid "" "Base for a logarithmic spiral: not used (0), converge (<1), or diverge (>1)" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:444 +#: ../src/ui/dialog/clonetiler.cpp:445 msgid "Alternate the sign of scales for each row" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:449 +#: ../src/ui/dialog/clonetiler.cpp:450 msgid "Alternate the sign of scales for each column" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:462 +#: ../src/ui/dialog/clonetiler.cpp:463 msgid "Cumulate the scales for each row" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:467 +#: ../src/ui/dialog/clonetiler.cpp:468 msgid "Cumulate the scales for each column" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:476 +#: ../src/ui/dialog/clonetiler.cpp:477 msgid "_Rotation" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:484 +#: ../src/ui/dialog/clonetiler.cpp:485 msgid "Angle:" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:492 +#: ../src/ui/dialog/clonetiler.cpp:493 #, no-c-format msgid "Rotate tiles by this angle for each row" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:500 +#: ../src/ui/dialog/clonetiler.cpp:501 #, no-c-format msgid "Rotate tiles by this angle for each column" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:506 +#: ../src/ui/dialog/clonetiler.cpp:507 msgid "Randomize the rotation angle by this percentage" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:520 +#: ../src/ui/dialog/clonetiler.cpp:521 msgid "Alternate the rotation direction for each row" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:525 +#: ../src/ui/dialog/clonetiler.cpp:526 msgid "Alternate the rotation direction for each column" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:538 +#: ../src/ui/dialog/clonetiler.cpp:539 msgid "Cumulate the rotation for each row" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:543 +#: ../src/ui/dialog/clonetiler.cpp:544 msgid "Cumulate the rotation for each column" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:552 +#: ../src/ui/dialog/clonetiler.cpp:553 msgid "_Blur & opacity" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:561 +#: ../src/ui/dialog/clonetiler.cpp:562 msgid "Blur:" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:567 +#: ../src/ui/dialog/clonetiler.cpp:568 msgid "Blur tiles by this percentage for each row" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:573 +#: ../src/ui/dialog/clonetiler.cpp:574 msgid "Blur tiles by this percentage for each column" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:579 +#: ../src/ui/dialog/clonetiler.cpp:580 msgid "Randomize the tile blur by this percentage" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:593 +#: ../src/ui/dialog/clonetiler.cpp:594 msgid "Alternate the sign of blur change for each row" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:598 +#: ../src/ui/dialog/clonetiler.cpp:599 msgid "Alternate the sign of blur change for each column" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:607 +#: ../src/ui/dialog/clonetiler.cpp:608 msgid "Opacity:" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:613 +#: ../src/ui/dialog/clonetiler.cpp:614 msgid "Decrease tile opacity by this percentage for each row" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:619 +#: ../src/ui/dialog/clonetiler.cpp:620 msgid "Decrease tile opacity by this percentage for each column" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:625 +#: ../src/ui/dialog/clonetiler.cpp:626 msgid "Randomize the tile opacity by this percentage" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:639 +#: ../src/ui/dialog/clonetiler.cpp:640 msgid "Alternate the sign of opacity change for each row" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:644 +#: ../src/ui/dialog/clonetiler.cpp:645 msgid "Alternate the sign of opacity change for each column" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:652 +#: ../src/ui/dialog/clonetiler.cpp:653 msgid "Co_lor" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:662 +#: ../src/ui/dialog/clonetiler.cpp:663 msgid "Initial color: " msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:666 +#: ../src/ui/dialog/clonetiler.cpp:667 msgid "Initial color of tiled clones" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:666 +#: ../src/ui/dialog/clonetiler.cpp:667 msgid "" "Initial color for clones (works only if the original has unset fill or " "stroke)" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:681 +#: ../src/ui/dialog/clonetiler.cpp:682 msgid "H:" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:687 +#: ../src/ui/dialog/clonetiler.cpp:688 msgid "Change the tile hue by this percentage for each row" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:693 +#: ../src/ui/dialog/clonetiler.cpp:694 msgid "Change the tile hue by this percentage for each column" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:699 +#: ../src/ui/dialog/clonetiler.cpp:700 msgid "Randomize the tile hue by this percentage" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:708 +#: ../src/ui/dialog/clonetiler.cpp:709 msgid "S:" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:714 +#: ../src/ui/dialog/clonetiler.cpp:715 msgid "Change the color saturation by this percentage for each row" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:720 +#: ../src/ui/dialog/clonetiler.cpp:721 msgid "Change the color saturation by this percentage for each column" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:726 +#: ../src/ui/dialog/clonetiler.cpp:727 msgid "Randomize the color saturation by this percentage" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:734 +#: ../src/ui/dialog/clonetiler.cpp:735 msgid "L:" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:740 +#: ../src/ui/dialog/clonetiler.cpp:741 msgid "Change the color lightness by this percentage for each row" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:746 +#: ../src/ui/dialog/clonetiler.cpp:747 msgid "Change the color lightness by this percentage for each column" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:752 +#: ../src/ui/dialog/clonetiler.cpp:753 msgid "Randomize the color lightness by this percentage" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:766 +#: ../src/ui/dialog/clonetiler.cpp:767 msgid "Alternate the sign of color changes for each row" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:771 +#: ../src/ui/dialog/clonetiler.cpp:772 msgid "Alternate the sign of color changes for each column" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:779 +#: ../src/ui/dialog/clonetiler.cpp:780 msgid "_Trace" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:791 +#: ../src/ui/dialog/clonetiler.cpp:792 msgid "Trace the drawing under the tiles" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:795 +#: ../src/ui/dialog/clonetiler.cpp:796 msgid "" "For each clone, pick a value from the drawing in that clone's location and " "apply it to the clone" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:814 +#: ../src/ui/dialog/clonetiler.cpp:815 msgid "1. Pick from the drawing:" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:832 +#: ../src/ui/dialog/clonetiler.cpp:833 msgid "Pick the visible color and opacity" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:839 ../src/ui/dialog/clonetiler.cpp:992 +#: ../src/ui/dialog/clonetiler.cpp:840 ../src/ui/dialog/clonetiler.cpp:993 #: ../src/extension/internal/bitmap/opacity.cpp:38 #: ../src/extension/internal/filter/blurs.h:333 #: ../src/extension/internal/filter/transparency.h:279 -#: ../src/widgets/tweak-toolbar.cpp:352 +#: ../src/widgets/tweak-toolbar.cpp:348 #: ../share/extensions/interp_att_g.inx.h:16 msgid "Opacity" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:840 +#: ../src/ui/dialog/clonetiler.cpp:841 msgid "Pick the total accumulated opacity" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:847 +#: ../src/ui/dialog/clonetiler.cpp:848 msgid "R" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:848 +#: ../src/ui/dialog/clonetiler.cpp:849 msgid "Pick the Red component of the color" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:855 +#: ../src/ui/dialog/clonetiler.cpp:856 msgid "G" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:856 +#: ../src/ui/dialog/clonetiler.cpp:857 msgid "Pick the Green component of the color" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:863 +#: ../src/ui/dialog/clonetiler.cpp:864 msgid "B" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:864 +#: ../src/ui/dialog/clonetiler.cpp:865 msgid "Pick the Blue component of the color" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:871 +#: ../src/ui/dialog/clonetiler.cpp:872 msgctxt "Clonetiler color hue" msgid "H" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:872 +#: ../src/ui/dialog/clonetiler.cpp:873 msgid "Pick the hue of the color" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:879 +#: ../src/ui/dialog/clonetiler.cpp:880 msgctxt "Clonetiler color saturation" msgid "S" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:880 +#: ../src/ui/dialog/clonetiler.cpp:881 msgid "Pick the saturation of the color" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:887 +#: ../src/ui/dialog/clonetiler.cpp:888 msgctxt "Clonetiler color lightness" msgid "L" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:888 +#: ../src/ui/dialog/clonetiler.cpp:889 msgid "Pick the lightness of the color" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:898 +#: ../src/ui/dialog/clonetiler.cpp:899 msgid "2. Tweak the picked value:" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:915 +#: ../src/ui/dialog/clonetiler.cpp:916 msgid "Gamma-correct:" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:919 +#: ../src/ui/dialog/clonetiler.cpp:920 msgid "Shift the mid-range of the picked value upwards (>0) or downwards (<0)" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:926 +#: ../src/ui/dialog/clonetiler.cpp:927 msgid "Randomize:" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:930 +#: ../src/ui/dialog/clonetiler.cpp:931 msgid "Randomize the picked value by this percentage" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:937 +#: ../src/ui/dialog/clonetiler.cpp:938 msgid "Invert:" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:941 +#: ../src/ui/dialog/clonetiler.cpp:942 msgid "Invert the picked value" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:947 +#: ../src/ui/dialog/clonetiler.cpp:948 msgid "3. Apply the value to the clones':" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:962 +#: ../src/ui/dialog/clonetiler.cpp:963 msgid "Presence" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:965 +#: ../src/ui/dialog/clonetiler.cpp:966 msgid "" "Each clone is created with the probability determined by the picked value in " "that point" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:972 +#: ../src/ui/dialog/clonetiler.cpp:973 msgid "Size" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:975 +#: ../src/ui/dialog/clonetiler.cpp:976 msgid "Each clone's size is determined by the picked value in that point" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:985 +#: ../src/ui/dialog/clonetiler.cpp:986 msgid "" "Each clone is painted by the picked color (the original must have unset fill " "or stroke)" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:995 +#: ../src/ui/dialog/clonetiler.cpp:996 msgid "Each clone's opacity is determined by the picked value in that point" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:1043 +#: ../src/ui/dialog/clonetiler.cpp:1044 msgid "How many rows in the tiling" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:1073 +#: ../src/ui/dialog/clonetiler.cpp:1074 msgid "How many columns in the tiling" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:1117 +#: ../src/ui/dialog/clonetiler.cpp:1119 msgid "Width of the rectangle to be filled" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:1151 +#: ../src/ui/dialog/clonetiler.cpp:1152 msgid "Height of the rectangle to be filled" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:1168 +#: ../src/ui/dialog/clonetiler.cpp:1169 msgid "Rows, columns: " msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:1169 +#: ../src/ui/dialog/clonetiler.cpp:1170 msgid "Create the specified number of rows and columns" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:1178 +#: ../src/ui/dialog/clonetiler.cpp:1179 msgid "Width, height: " msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:1179 +#: ../src/ui/dialog/clonetiler.cpp:1180 msgid "Fill the specified width and height with the tiling" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:1200 +#: ../src/ui/dialog/clonetiler.cpp:1201 msgid "Use saved size and position of the tile" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:1203 +#: ../src/ui/dialog/clonetiler.cpp:1204 msgid "" "Pretend that the size and position of the tile are the same as the last time " "you tiled it (if any), instead of using the current size" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:1237 +#: ../src/ui/dialog/clonetiler.cpp:1238 msgid " _Create " msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:1239 +#: ../src/ui/dialog/clonetiler.cpp:1240 msgid "Create and tile the clones of the selection" msgstr "" @@ -4013,294 +4012,294 @@ msgstr "" #. diagrams on the left in the following screenshot: #. http://www.inkscape.org/screenshots/gallery/inkscape-0.42-CVS-tiles-unclump.png #. So unclumping is the process of spreading a number of objects out more evenly. -#: ../src/ui/dialog/clonetiler.cpp:1259 +#: ../src/ui/dialog/clonetiler.cpp:1260 msgid " _Unclump " msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:1260 +#: ../src/ui/dialog/clonetiler.cpp:1261 msgid "Spread out clones to reduce clumping; can be applied repeatedly" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:1266 +#: ../src/ui/dialog/clonetiler.cpp:1267 msgid " Re_move " msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:1267 +#: ../src/ui/dialog/clonetiler.cpp:1268 msgid "Remove existing tiled clones of the selected object (siblings only)" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:1283 +#: ../src/ui/dialog/clonetiler.cpp:1284 msgid " R_eset " msgstr "" #. TRANSLATORS: "change" is a noun here -#: ../src/ui/dialog/clonetiler.cpp:1285 +#: ../src/ui/dialog/clonetiler.cpp:1286 msgid "" "Reset all shifts, scales, rotates, opacity and color changes in the dialog " "to zero" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:1358 +#: ../src/ui/dialog/clonetiler.cpp:1359 msgid "Nothing selected." msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:1364 +#: ../src/ui/dialog/clonetiler.cpp:1365 msgid "More than one object selected." msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:1371 +#: ../src/ui/dialog/clonetiler.cpp:1372 #, c-format msgid "Object has %d tiled clones." msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:1376 +#: ../src/ui/dialog/clonetiler.cpp:1377 msgid "Object has no tiled clones." msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:2096 +#: ../src/ui/dialog/clonetiler.cpp:2097 msgid "Select one object whose tiled clones to unclump." msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:2118 +#: ../src/ui/dialog/clonetiler.cpp:2119 msgid "Unclump tiled clones" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:2147 +#: ../src/ui/dialog/clonetiler.cpp:2148 msgid "Select one object whose tiled clones to remove." msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:2170 +#: ../src/ui/dialog/clonetiler.cpp:2171 msgid "Delete tiled clones" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:2217 ../src/selection-chemistry.cpp:2501 +#: ../src/ui/dialog/clonetiler.cpp:2218 ../src/selection-chemistry.cpp:2487 msgid "Select an object to clone." msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:2223 +#: ../src/ui/dialog/clonetiler.cpp:2224 msgid "" "If you want to clone several objects, group them and clone the " "group." msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:2232 +#: ../src/ui/dialog/clonetiler.cpp:2233 msgid "Creating tiled clones..." msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:2637 +#: ../src/ui/dialog/clonetiler.cpp:2638 msgid "Create tiled clones" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:2870 +#: ../src/ui/dialog/clonetiler.cpp:2871 msgid "Per row:" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:2888 +#: ../src/ui/dialog/clonetiler.cpp:2889 msgid "Per column:" msgstr "" -#: ../src/ui/dialog/clonetiler.cpp:2896 +#: ../src/ui/dialog/clonetiler.cpp:2897 msgid "Randomize:" msgstr "" -#: ../src/ui/dialog/export.cpp:150 ../src/verbs.cpp:2737 +#: ../src/ui/dialog/export.cpp:151 ../src/verbs.cpp:2791 msgid "_Page" msgstr "" -#: ../src/ui/dialog/export.cpp:150 ../src/verbs.cpp:2741 +#: ../src/ui/dialog/export.cpp:151 ../src/verbs.cpp:2795 msgid "_Drawing" msgstr "" -#: ../src/ui/dialog/export.cpp:150 ../src/verbs.cpp:2743 +#: ../src/ui/dialog/export.cpp:151 ../src/verbs.cpp:2797 msgid "_Selection" msgstr "" -#: ../src/ui/dialog/export.cpp:150 +#: ../src/ui/dialog/export.cpp:151 msgid "_Custom" msgstr "" -#: ../src/ui/dialog/export.cpp:166 ../src/widgets/measure-toolbar.cpp:115 -#: ../src/widgets/measure-toolbar.cpp:123 +#: ../src/ui/dialog/export.cpp:167 ../src/widgets/measure-toolbar.cpp:116 +#: ../src/widgets/measure-toolbar.cpp:124 #: ../share/extensions/render_gears.inx.h:6 msgid "Units:" msgstr "" -#: ../src/ui/dialog/export.cpp:168 +#: ../src/ui/dialog/export.cpp:169 msgid "_Export As..." msgstr "" -#: ../src/ui/dialog/export.cpp:171 +#: ../src/ui/dialog/export.cpp:172 msgid "B_atch export all selected objects" msgstr "" -#: ../src/ui/dialog/export.cpp:171 +#: ../src/ui/dialog/export.cpp:172 msgid "" "Export each selected object into its own PNG file, using export hints if any " "(caution, overwrites without asking!)" msgstr "" -#: ../src/ui/dialog/export.cpp:173 +#: ../src/ui/dialog/export.cpp:174 msgid "Hide a_ll except selected" msgstr "" -#: ../src/ui/dialog/export.cpp:173 +#: ../src/ui/dialog/export.cpp:174 msgid "In the exported image, hide all objects except those that are selected" msgstr "" -#: ../src/ui/dialog/export.cpp:174 +#: ../src/ui/dialog/export.cpp:175 msgid "Close when complete" msgstr "" -#: ../src/ui/dialog/export.cpp:174 +#: ../src/ui/dialog/export.cpp:175 msgid "Once the export completes, close this dialog" msgstr "" -#: ../src/ui/dialog/export.cpp:176 +#: ../src/ui/dialog/export.cpp:177 msgid "_Export" msgstr "" -#: ../src/ui/dialog/export.cpp:194 +#: ../src/ui/dialog/export.cpp:195 msgid "Export area" msgstr "" -#: ../src/ui/dialog/export.cpp:230 +#: ../src/ui/dialog/export.cpp:234 msgid "_x0:" msgstr "" -#: ../src/ui/dialog/export.cpp:234 +#: ../src/ui/dialog/export.cpp:238 msgid "x_1:" msgstr "" -#: ../src/ui/dialog/export.cpp:238 +#: ../src/ui/dialog/export.cpp:242 msgid "Wid_th:" msgstr "" -#: ../src/ui/dialog/export.cpp:242 +#: ../src/ui/dialog/export.cpp:246 msgid "_y0:" msgstr "" -#: ../src/ui/dialog/export.cpp:246 +#: ../src/ui/dialog/export.cpp:250 msgid "y_1:" msgstr "" -#: ../src/ui/dialog/export.cpp:250 +#: ../src/ui/dialog/export.cpp:254 msgid "Hei_ght:" msgstr "" -#: ../src/ui/dialog/export.cpp:265 +#: ../src/ui/dialog/export.cpp:269 msgid "Image size" msgstr "" -#: ../src/ui/dialog/export.cpp:283 ../src/live_effects/lpe-bendpath.cpp:54 +#: ../src/ui/dialog/export.cpp:287 ../src/live_effects/lpe-bendpath.cpp:54 #: ../src/live_effects/lpe-patternalongpath.cpp:62 -#: ../src/ui/dialog/transformation.cpp:79 ../src/ui/widget/page-sizer.cpp:238 +#: ../src/ui/dialog/transformation.cpp:80 ../src/ui/widget/page-sizer.cpp:236 msgid "_Width:" msgstr "" -#: ../src/ui/dialog/export.cpp:283 ../src/ui/dialog/export.cpp:294 +#: ../src/ui/dialog/export.cpp:287 ../src/ui/dialog/export.cpp:298 msgid "pixels at" msgstr "" -#: ../src/ui/dialog/export.cpp:289 +#: ../src/ui/dialog/export.cpp:293 msgid "dp_i" msgstr "" -#: ../src/ui/dialog/export.cpp:294 ../src/ui/dialog/transformation.cpp:81 -#: ../src/ui/widget/page-sizer.cpp:239 +#: ../src/ui/dialog/export.cpp:298 ../src/ui/dialog/transformation.cpp:82 +#: ../src/ui/widget/page-sizer.cpp:237 msgid "_Height:" msgstr "" -#: ../src/ui/dialog/export.cpp:302 -#: ../src/ui/dialog/inkscape-preferences.cpp:1432 -#: ../src/ui/dialog/inkscape-preferences.cpp:1435 -#: ../src/ui/dialog/inkscape-preferences.cpp:1447 +#: ../src/ui/dialog/export.cpp:306 +#: ../src/ui/dialog/inkscape-preferences.cpp:1436 +#: ../src/ui/dialog/inkscape-preferences.cpp:1439 +#: ../src/ui/dialog/inkscape-preferences.cpp:1451 msgid "dpi" msgstr "" -#: ../src/ui/dialog/export.cpp:310 +#: ../src/ui/dialog/export.cpp:314 msgid "_Filename" msgstr "" -#: ../src/ui/dialog/export.cpp:352 +#: ../src/ui/dialog/export.cpp:356 msgid "Export the bitmap file with these settings" msgstr "" -#: ../src/ui/dialog/export.cpp:606 +#: ../src/ui/dialog/export.cpp:607 #, c-format msgid "B_atch export %d selected object" msgid_plural "B_atch export %d selected objects" msgstr[0] "" msgstr[1] "" -#: ../src/ui/dialog/export.cpp:922 +#: ../src/ui/dialog/export.cpp:923 msgid "Export in progress" msgstr "" -#: ../src/ui/dialog/export.cpp:1006 +#: ../src/ui/dialog/export.cpp:1013 msgid "No items selected." msgstr "" -#: ../src/ui/dialog/export.cpp:1010 ../src/ui/dialog/export.cpp:1012 +#: ../src/ui/dialog/export.cpp:1017 ../src/ui/dialog/export.cpp:1019 msgid "Exporting %1 files" msgstr "" -#: ../src/ui/dialog/export.cpp:1052 ../src/ui/dialog/export.cpp:1054 +#: ../src/ui/dialog/export.cpp:1059 ../src/ui/dialog/export.cpp:1061 #, c-format msgid "Exporting file %s..." msgstr "" -#: ../src/ui/dialog/export.cpp:1063 ../src/ui/dialog/export.cpp:1154 +#: ../src/ui/dialog/export.cpp:1070 ../src/ui/dialog/export.cpp:1161 #, c-format msgid "Could not export to filename %s.\n" msgstr "" -#: ../src/ui/dialog/export.cpp:1066 +#: ../src/ui/dialog/export.cpp:1073 #, c-format msgid "Could not export to filename %s." msgstr "" -#: ../src/ui/dialog/export.cpp:1081 +#: ../src/ui/dialog/export.cpp:1088 #, c-format msgid "Successfully exported %d files from %d selected items." msgstr "" -#: ../src/ui/dialog/export.cpp:1092 +#: ../src/ui/dialog/export.cpp:1099 msgid "You have to enter a filename." msgstr "" -#: ../src/ui/dialog/export.cpp:1093 +#: ../src/ui/dialog/export.cpp:1100 msgid "You have to enter a filename" msgstr "" -#: ../src/ui/dialog/export.cpp:1107 +#: ../src/ui/dialog/export.cpp:1114 msgid "The chosen area to be exported is invalid." msgstr "" -#: ../src/ui/dialog/export.cpp:1108 +#: ../src/ui/dialog/export.cpp:1115 msgid "The chosen area to be exported is invalid" msgstr "" -#: ../src/ui/dialog/export.cpp:1123 +#: ../src/ui/dialog/export.cpp:1130 #, c-format msgid "Directory %s does not exist or is not a directory.\n" msgstr "" #. TRANSLATORS: %1 will be the filename, %2 the width, and %3 the height of the image -#: ../src/ui/dialog/export.cpp:1137 ../src/ui/dialog/export.cpp:1139 +#: ../src/ui/dialog/export.cpp:1144 ../src/ui/dialog/export.cpp:1146 msgid "Exporting %1 (%2 x %3)" msgstr "" -#: ../src/ui/dialog/export.cpp:1165 +#: ../src/ui/dialog/export.cpp:1172 #, c-format msgid "Drawing exported to %s." msgstr "" -#: ../src/ui/dialog/export.cpp:1169 +#: ../src/ui/dialog/export.cpp:1176 msgid "Export aborted." msgstr "" -#: ../src/ui/dialog/export.cpp:1287 ../src/ui/dialog/export.cpp:1321 -#: ../src/shortcuts.cpp:336 +#: ../src/ui/dialog/export.cpp:1294 ../src/ui/dialog/export.cpp:1328 +#: ../src/shortcuts.cpp:337 msgid "Select a filename for exporting" msgstr "" @@ -4383,7 +4382,7 @@ msgstr "" msgid "_Font" msgstr "" -#: ../src/ui/dialog/text-edit.cpp:72 ../src/menus-skeleton.h:249 +#: ../src/ui/dialog/text-edit.cpp:72 ../src/menus-skeleton.h:248 #: ../src/ui/dialog/find.cpp:77 msgid "_Text" msgstr "" @@ -4397,31 +4396,31 @@ msgid "AaBbCcIiPpQq12369$€¢?.;/()" msgstr "" #. Align buttons -#: ../src/ui/dialog/text-edit.cpp:97 ../src/widgets/text-toolbar.cpp:1358 -#: ../src/widgets/text-toolbar.cpp:1359 +#: ../src/ui/dialog/text-edit.cpp:97 ../src/widgets/text-toolbar.cpp:1349 +#: ../src/widgets/text-toolbar.cpp:1350 msgid "Align left" msgstr "" -#: ../src/ui/dialog/text-edit.cpp:98 ../src/widgets/text-toolbar.cpp:1366 -#: ../src/widgets/text-toolbar.cpp:1367 +#: ../src/ui/dialog/text-edit.cpp:98 ../src/widgets/text-toolbar.cpp:1357 +#: ../src/widgets/text-toolbar.cpp:1358 msgid "Align center" msgstr "" -#: ../src/ui/dialog/text-edit.cpp:99 ../src/widgets/text-toolbar.cpp:1374 -#: ../src/widgets/text-toolbar.cpp:1375 +#: ../src/ui/dialog/text-edit.cpp:99 ../src/widgets/text-toolbar.cpp:1365 +#: ../src/widgets/text-toolbar.cpp:1366 msgid "Align right" msgstr "" -#: ../src/ui/dialog/text-edit.cpp:100 ../src/widgets/text-toolbar.cpp:1383 +#: ../src/ui/dialog/text-edit.cpp:100 ../src/widgets/text-toolbar.cpp:1374 msgid "Justify (only flowed text)" msgstr "" #. Direction buttons -#: ../src/ui/dialog/text-edit.cpp:109 ../src/widgets/text-toolbar.cpp:1418 +#: ../src/ui/dialog/text-edit.cpp:109 ../src/widgets/text-toolbar.cpp:1409 msgid "Horizontal text" msgstr "" -#: ../src/ui/dialog/text-edit.cpp:110 ../src/widgets/text-toolbar.cpp:1425 +#: ../src/ui/dialog/text-edit.cpp:110 ../src/widgets/text-toolbar.cpp:1416 msgid "Vertical text" msgstr "" @@ -4434,7 +4433,7 @@ msgid "Text path offset" msgstr "" #: ../src/ui/dialog/text-edit.cpp:588 ../src/ui/dialog/text-edit.cpp:662 -#: ../src/text-context.cpp:1518 +#: ../src/text-context.cpp:1519 msgid "Set text style" msgstr "" @@ -4543,156 +4542,156 @@ msgstr "" msgid "Change attribute" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:369 ../src/display/canvas-grid.cpp:746 +#: ../src/display/canvas-axonomgrid.cpp:316 ../src/display/canvas-grid.cpp:693 msgid "Grid _units:" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:371 ../src/display/canvas-grid.cpp:748 +#: ../src/display/canvas-axonomgrid.cpp:318 ../src/display/canvas-grid.cpp:695 msgid "_Origin X:" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:371 ../src/display/canvas-grid.cpp:748 +#: ../src/display/canvas-axonomgrid.cpp:318 ../src/display/canvas-grid.cpp:695 #: ../src/ui/dialog/inkscape-preferences.cpp:735 #: ../src/ui/dialog/inkscape-preferences.cpp:760 msgid "X coordinate of grid origin" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:373 ../src/display/canvas-grid.cpp:750 +#: ../src/display/canvas-axonomgrid.cpp:320 ../src/display/canvas-grid.cpp:697 msgid "O_rigin Y:" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:373 ../src/display/canvas-grid.cpp:750 +#: ../src/display/canvas-axonomgrid.cpp:320 ../src/display/canvas-grid.cpp:697 #: ../src/ui/dialog/inkscape-preferences.cpp:736 #: ../src/ui/dialog/inkscape-preferences.cpp:761 msgid "Y coordinate of grid origin" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:375 ../src/display/canvas-grid.cpp:754 +#: ../src/display/canvas-axonomgrid.cpp:322 ../src/display/canvas-grid.cpp:701 msgid "Spacing _Y:" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:375 +#: ../src/display/canvas-axonomgrid.cpp:322 #: ../src/ui/dialog/inkscape-preferences.cpp:764 msgid "Base length of z-axis" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:377 +#: ../src/display/canvas-axonomgrid.cpp:324 #: ../src/ui/dialog/inkscape-preferences.cpp:767 -#: ../src/widgets/box3d-toolbar.cpp:320 +#: ../src/widgets/box3d-toolbar.cpp:315 msgid "Angle X:" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:377 +#: ../src/display/canvas-axonomgrid.cpp:324 #: ../src/ui/dialog/inkscape-preferences.cpp:767 msgid "Angle of x-axis" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:379 +#: ../src/display/canvas-axonomgrid.cpp:326 #: ../src/ui/dialog/inkscape-preferences.cpp:768 -#: ../src/widgets/box3d-toolbar.cpp:399 +#: ../src/widgets/box3d-toolbar.cpp:394 msgid "Angle Z:" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:379 +#: ../src/display/canvas-axonomgrid.cpp:326 #: ../src/ui/dialog/inkscape-preferences.cpp:768 msgid "Angle of z-axis" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:383 ../src/display/canvas-grid.cpp:758 +#: ../src/display/canvas-axonomgrid.cpp:330 ../src/display/canvas-grid.cpp:705 msgid "Minor grid line _color:" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:383 ../src/display/canvas-grid.cpp:758 +#: ../src/display/canvas-axonomgrid.cpp:330 ../src/display/canvas-grid.cpp:705 #: ../src/ui/dialog/inkscape-preferences.cpp:719 msgid "Minor grid line color" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:383 ../src/display/canvas-grid.cpp:758 +#: ../src/display/canvas-axonomgrid.cpp:330 ../src/display/canvas-grid.cpp:705 msgid "Color of the minor grid lines" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:388 ../src/display/canvas-grid.cpp:763 +#: ../src/display/canvas-axonomgrid.cpp:335 ../src/display/canvas-grid.cpp:710 msgid "Ma_jor grid line color:" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:388 ../src/display/canvas-grid.cpp:763 +#: ../src/display/canvas-axonomgrid.cpp:335 ../src/display/canvas-grid.cpp:710 #: ../src/ui/dialog/inkscape-preferences.cpp:721 msgid "Major grid line color" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:389 ../src/display/canvas-grid.cpp:764 +#: ../src/display/canvas-axonomgrid.cpp:336 ../src/display/canvas-grid.cpp:711 msgid "Color of the major (highlighted) grid lines" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:393 ../src/display/canvas-grid.cpp:768 +#: ../src/display/canvas-axonomgrid.cpp:340 ../src/display/canvas-grid.cpp:715 msgid "_Major grid line every:" msgstr "" -#: ../src/display/canvas-axonomgrid.cpp:393 ../src/display/canvas-grid.cpp:768 +#: ../src/display/canvas-axonomgrid.cpp:340 ../src/display/canvas-grid.cpp:715 msgid "lines" msgstr "" -#: ../src/display/canvas-grid.cpp:62 +#: ../src/display/canvas-grid.cpp:63 msgid "Rectangular grid" msgstr "" -#: ../src/display/canvas-grid.cpp:63 +#: ../src/display/canvas-grid.cpp:64 msgid "Axonometric grid" msgstr "" -#: ../src/display/canvas-grid.cpp:274 +#: ../src/display/canvas-grid.cpp:275 msgid "Create new grid" msgstr "" -#: ../src/display/canvas-grid.cpp:340 +#: ../src/display/canvas-grid.cpp:341 msgid "_Enabled" msgstr "" -#: ../src/display/canvas-grid.cpp:341 +#: ../src/display/canvas-grid.cpp:342 msgid "" "Determines whether to snap to this grid or not. Can be 'on' for invisible " "grids." msgstr "" -#: ../src/display/canvas-grid.cpp:345 +#: ../src/display/canvas-grid.cpp:346 msgid "Snap to visible _grid lines only" msgstr "" -#: ../src/display/canvas-grid.cpp:346 +#: ../src/display/canvas-grid.cpp:347 msgid "" "When zoomed out, not all grid lines will be displayed. Only the visible ones " "will be snapped to" msgstr "" -#: ../src/display/canvas-grid.cpp:350 +#: ../src/display/canvas-grid.cpp:351 msgid "_Visible" msgstr "" -#: ../src/display/canvas-grid.cpp:351 +#: ../src/display/canvas-grid.cpp:352 msgid "" "Determines whether the grid is displayed or not. Objects are still snapped " "to invisible grids." msgstr "" -#: ../src/display/canvas-grid.cpp:752 +#: ../src/display/canvas-grid.cpp:699 msgid "Spacing _X:" msgstr "" -#: ../src/display/canvas-grid.cpp:752 +#: ../src/display/canvas-grid.cpp:699 #: ../src/ui/dialog/inkscape-preferences.cpp:741 msgid "Distance between vertical grid lines" msgstr "" -#: ../src/display/canvas-grid.cpp:754 +#: ../src/display/canvas-grid.cpp:701 #: ../src/ui/dialog/inkscape-preferences.cpp:742 msgid "Distance between horizontal grid lines" msgstr "" -#: ../src/display/canvas-grid.cpp:785 +#: ../src/display/canvas-grid.cpp:732 msgid "_Show dots instead of lines" msgstr "" -#: ../src/display/canvas-grid.cpp:786 +#: ../src/display/canvas-grid.cpp:733 msgid "If set, displays dots at gridpoints instead of gridlines" msgstr "" @@ -4842,11 +4841,11 @@ msgstr "" msgid "Bounding box side midpoint" msgstr "" -#: ../src/display/snap-indicator.cpp:194 ../src/ui/tool/node.cpp:1310 +#: ../src/display/snap-indicator.cpp:194 ../src/ui/tool/node.cpp:1316 msgid "Smooth node" msgstr "" -#: ../src/display/snap-indicator.cpp:197 ../src/ui/tool/node.cpp:1309 +#: ../src/display/snap-indicator.cpp:197 ../src/ui/tool/node.cpp:1315 msgid "Cusp node" msgstr "" @@ -4911,7 +4910,7 @@ msgstr "" msgid "Memory document %1" msgstr "" -#: ../src/document.cpp:707 +#: ../src/document.cpp:713 #, c-format msgid "Unnamed document %d" msgstr "" @@ -5014,11 +5013,11 @@ msgid "[Unchanged]" msgstr "" #. Edit -#: ../src/event-log.cpp:275 ../src/event-log.cpp:278 ../src/verbs.cpp:2329 +#: ../src/event-log.cpp:275 ../src/event-log.cpp:278 ../src/verbs.cpp:2383 msgid "_Undo" msgstr "" -#: ../src/event-log.cpp:285 ../src/event-log.cpp:289 ../src/verbs.cpp:2331 +#: ../src/event-log.cpp:285 ../src/event-log.cpp:289 ../src/verbs.cpp:2385 msgid "_Redo" msgstr "" @@ -5046,7 +5045,7 @@ msgstr "" msgid " (No preferences)" msgstr "" -#: ../src/extension/effect.h:70 ../src/verbs.cpp:2102 +#: ../src/extension/effect.h:70 ../src/verbs.cpp:2156 msgid "Extensions" msgstr "" @@ -5170,12 +5169,12 @@ msgstr "" #: ../src/extension/internal/bitmap/adaptiveThreshold.cpp:41 #: ../src/extension/internal/bitmap/raise.cpp:42 #: ../src/extension/internal/bitmap/sample.cpp:41 -#: ../src/extension/internal/bluredge.cpp:137 +#: ../src/extension/internal/bluredge.cpp:138 #: ../src/ui/dialog/object-attributes.cpp:68 #: ../src/ui/dialog/object-attributes.cpp:76 -#: ../src/widgets/calligraphy-toolbar.cpp:451 -#: ../src/widgets/erasor-toolbar.cpp:149 ../src/widgets/spray-toolbar.cpp:132 -#: ../src/widgets/tweak-toolbar.cpp:146 +#: ../src/widgets/calligraphy-toolbar.cpp:447 +#: ../src/widgets/eraser-toolbar.cpp:145 ../src/widgets/spray-toolbar.cpp:128 +#: ../src/widgets/tweak-toolbar.cpp:142 #: ../share/extensions/foldablebox.inx.h:2 msgid "Width:" msgstr "" @@ -5249,9 +5248,9 @@ msgstr "" #: ../src/extension/internal/filter/color.h:1497 #: ../src/extension/internal/filter/color.h:1585 #: ../src/extension/internal/filter/distort.h:69 -#: ../src/extension/internal/filter/morphology.h:60 ../src/rdf.cpp:241 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2613 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2692 +#: ../src/extension/internal/filter/morphology.h:60 ../src/rdf.cpp:244 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2626 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2705 #: ../src/ui/dialog/object-attributes.cpp:49 #: ../share/extensions/jessyInk_effects.inx.h:5 #: ../share/extensions/jessyInk_export.inx.h:3 @@ -5303,7 +5302,7 @@ msgstr "" #: ../src/extension/internal/bitmap/oilPaint.cpp:39 #: ../src/extension/internal/bitmap/sharpen.cpp:40 #: ../src/extension/internal/bitmap/unsharpmask.cpp:43 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2670 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2683 msgid "Radius:" msgstr "" @@ -5440,7 +5439,7 @@ msgstr "" #: ../src/extension/internal/bitmap/cycleColormap.cpp:39 #: ../src/extension/internal/bitmap/spread.cpp:39 #: ../src/extension/internal/bitmap/unsharpmask.cpp:45 -#: ../src/widgets/spray-toolbar.cpp:224 +#: ../src/widgets/spray-toolbar.cpp:220 msgid "Amount:" msgstr "" @@ -5612,8 +5611,8 @@ msgid "Stylize selected bitmap(s) so that they appear to be painted with oils" msgstr "" #: ../src/extension/internal/bitmap/opacity.cpp:40 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2660 -#: ../src/widgets/dropper-toolbar.cpp:111 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2673 +#: ../src/widgets/dropper-toolbar.cpp:107 msgid "Opacity:" msgstr "" @@ -5750,23 +5749,23 @@ msgstr "" msgid "Alter selected bitmap(s) along sine wave" msgstr "" -#: ../src/extension/internal/bluredge.cpp:135 +#: ../src/extension/internal/bluredge.cpp:136 msgid "Inset/Outset Halo" msgstr "" -#: ../src/extension/internal/bluredge.cpp:137 +#: ../src/extension/internal/bluredge.cpp:138 msgid "Width in px of the halo" msgstr "" -#: ../src/extension/internal/bluredge.cpp:138 +#: ../src/extension/internal/bluredge.cpp:139 msgid "Number of steps:" msgstr "" -#: ../src/extension/internal/bluredge.cpp:138 +#: ../src/extension/internal/bluredge.cpp:139 msgid "Number of inset/outset copies of the object to make" msgstr "" -#: ../src/extension/internal/bluredge.cpp:142 +#: ../src/extension/internal/bluredge.cpp:143 #: ../share/extensions/extrude.inx.h:5 #: ../share/extensions/generate_voronoi.inx.h:9 #: ../share/extensions/interp.inx.h:7 ../share/extensions/motion.inx.h:4 @@ -5799,7 +5798,7 @@ msgstr "" #: ../src/extension/internal/cairo-ps-out.cpp:335 #: ../src/extension/internal/cairo-ps-out.cpp:376 #: ../src/extension/internal/cairo-renderer-pdf-out.cpp:250 -#: ../src/extension/internal/emf-win32-inout.cpp:2553 +#: ../src/extension/internal/emf-win32-inout.cpp:2557 msgid "Convert texts to paths" msgstr "" @@ -5967,39 +5966,39 @@ msgstr "" msgid "Open presentation exchange files saved in Corel DRAW" msgstr "" -#: ../src/extension/internal/emf-win32-inout.cpp:2523 +#: ../src/extension/internal/emf-win32-inout.cpp:2527 msgid "EMF Input" msgstr "" -#: ../src/extension/internal/emf-win32-inout.cpp:2528 +#: ../src/extension/internal/emf-win32-inout.cpp:2532 msgid "Enhanced Metafiles (*.emf)" msgstr "" -#: ../src/extension/internal/emf-win32-inout.cpp:2529 +#: ../src/extension/internal/emf-win32-inout.cpp:2533 msgid "Enhanced Metafiles" msgstr "" -#: ../src/extension/internal/emf-win32-inout.cpp:2537 +#: ../src/extension/internal/emf-win32-inout.cpp:2541 msgid "WMF Input" msgstr "" -#: ../src/extension/internal/emf-win32-inout.cpp:2542 +#: ../src/extension/internal/emf-win32-inout.cpp:2546 msgid "Windows Metafiles (*.wmf)" msgstr "" -#: ../src/extension/internal/emf-win32-inout.cpp:2543 +#: ../src/extension/internal/emf-win32-inout.cpp:2547 msgid "Windows Metafiles" msgstr "" -#: ../src/extension/internal/emf-win32-inout.cpp:2551 +#: ../src/extension/internal/emf-win32-inout.cpp:2555 msgid "EMF Output" msgstr "" -#: ../src/extension/internal/emf-win32-inout.cpp:2557 +#: ../src/extension/internal/emf-win32-inout.cpp:2561 msgid "Enhanced Metafile (*.emf)" msgstr "" -#: ../src/extension/internal/emf-win32-inout.cpp:2558 +#: ../src/extension/internal/emf-win32-inout.cpp:2562 msgid "Enhanced Metafile" msgstr "" @@ -6269,7 +6268,7 @@ msgstr "" #: ../src/extension/internal/filter/blurs.h:336 #: ../src/extension/internal/filter/color.h:1205 #: ../src/extension/internal/filter/color.h:1317 -#: ../src/ui/dialog/document-properties.cpp:108 +#: ../src/ui/dialog/document-properties.cpp:107 msgid "Background color" msgstr "" @@ -6330,7 +6329,7 @@ msgstr "" #: ../src/extension/internal/filter/color.h:637 #: ../src/extension/internal/filter/color.h:821 #: ../src/extension/internal/filter/transparency.h:132 -#: ../src/filter-enums.cpp:100 ../src/flood-context.cpp:228 +#: ../src/filter-enums.cpp:100 ../src/flood-context.cpp:227 #: ../src/widgets/sp-color-icc-selector.cpp:355 #: ../src/widgets/sp-color-scales.cpp:429 #: ../src/widgets/sp-color-scales.cpp:430 @@ -6343,7 +6342,7 @@ msgstr "" #: ../src/extension/internal/filter/color.h:638 #: ../src/extension/internal/filter/color.h:822 #: ../src/extension/internal/filter/transparency.h:133 -#: ../src/filter-enums.cpp:101 ../src/flood-context.cpp:229 +#: ../src/filter-enums.cpp:101 ../src/flood-context.cpp:228 #: ../src/widgets/sp-color-icc-selector.cpp:356 #: ../src/widgets/sp-color-scales.cpp:432 #: ../src/widgets/sp-color-scales.cpp:433 @@ -6356,7 +6355,7 @@ msgstr "" #: ../src/extension/internal/filter/color.h:639 #: ../src/extension/internal/filter/color.h:823 #: ../src/extension/internal/filter/transparency.h:134 -#: ../src/filter-enums.cpp:102 ../src/flood-context.cpp:230 +#: ../src/filter-enums.cpp:102 ../src/flood-context.cpp:229 #: ../src/widgets/sp-color-icc-selector.cpp:357 #: ../src/widgets/sp-color-scales.cpp:435 #: ../src/widgets/sp-color-scales.cpp:436 @@ -6382,7 +6381,7 @@ msgstr "" #: ../src/extension/internal/filter/bumps.h:98 #: ../src/extension/internal/filter/bumps.h:329 #: ../src/libgdl/gdl-dock-placeholder.c:175 ../src/libgdl/gdl-dock.c:199 -#: ../src/widgets/rect-toolbar.cpp:332 +#: ../src/widgets/rect-toolbar.cpp:334 #: ../share/extensions/interp_att_g.inx.h:11 msgid "Height" msgstr "" @@ -6394,10 +6393,10 @@ msgstr "" #: ../src/extension/internal/filter/color.h:1113 #: ../src/extension/internal/filter/paint.h:86 #: ../src/extension/internal/filter/paint.h:592 -#: ../src/extension/internal/filter/paint.h:707 ../src/flood-context.cpp:233 +#: ../src/extension/internal/filter/paint.h:707 ../src/flood-context.cpp:232 #: ../src/widgets/sp-color-icc-selector.cpp:366 #: ../src/widgets/sp-color-scales.cpp:461 -#: ../src/widgets/sp-color-scales.cpp:462 ../src/widgets/tweak-toolbar.cpp:336 +#: ../src/widgets/sp-color-scales.cpp:462 ../src/widgets/tweak-toolbar.cpp:332 #: ../share/extensions/color_randomize.inx.h:5 msgid "Lightness" msgstr "" @@ -6419,7 +6418,7 @@ msgstr "" msgid "Distant" msgstr "" -#: ../src/extension/internal/filter/bumps.h:106 ../src/helper/units.cpp:38 +#: ../src/extension/internal/filter/bumps.h:106 #: ../src/ui/dialog/inkscape-preferences.cpp:451 msgid "Point" msgstr "" @@ -6509,7 +6508,7 @@ msgstr "" #: ../src/extension/internal/filter/bumps.h:322 #: ../src/extension/internal/filter/transparency.h:57 -#: ../src/filter-enums.cpp:29 ../src/selection-describer.cpp:56 +#: ../src/filter-enums.cpp:29 ../src/selection-describer.cpp:57 msgid "Image" msgstr "" @@ -6592,19 +6591,19 @@ msgstr "" #: ../src/extension/internal/filter/color.h:156 #: ../src/extension/internal/filter/color.h:257 -#: ../src/extension/internal/filter/paint.h:87 ../src/flood-context.cpp:232 -#: ../src/ui/dialog/inkscape-preferences.cpp:937 +#: ../src/extension/internal/filter/paint.h:87 ../src/flood-context.cpp:231 +#: ../src/ui/dialog/inkscape-preferences.cpp:941 #: ../src/widgets/sp-color-icc-selector.cpp:362 #: ../src/widgets/sp-color-icc-selector.cpp:367 #: ../src/widgets/sp-color-scales.cpp:458 -#: ../src/widgets/sp-color-scales.cpp:459 ../src/widgets/tweak-toolbar.cpp:320 +#: ../src/widgets/sp-color-scales.cpp:459 ../src/widgets/tweak-toolbar.cpp:316 #: ../share/extensions/color_randomize.inx.h:4 msgid "Saturation" msgstr "" #: ../src/extension/internal/filter/color.h:160 #: ../src/extension/internal/filter/transparency.h:135 -#: ../src/filter-enums.cpp:103 ../src/flood-context.cpp:234 +#: ../src/filter-enums.cpp:103 ../src/flood-context.cpp:233 msgid "Alpha" msgstr "" @@ -6770,7 +6769,7 @@ msgid "Fade to:" msgstr "" #: ../src/extension/internal/filter/color.h:744 -#: ../src/ui/widget/selected-style.cpp:254 +#: ../src/ui/widget/selected-style.cpp:257 #: ../src/widgets/sp-color-icc-selector.cpp:372 #: ../src/widgets/sp-color-scales.cpp:492 #: ../src/widgets/sp-color-scales.cpp:493 @@ -6778,7 +6777,7 @@ msgid "Black" msgstr "" #: ../src/extension/internal/filter/color.h:745 -#: ../src/ui/widget/selected-style.cpp:250 +#: ../src/ui/widget/selected-style.cpp:253 msgid "White" msgstr "" @@ -6801,7 +6800,7 @@ msgid "Customize greyscale components" msgstr "" #: ../src/extension/internal/filter/color.h:905 -#: ../src/ui/widget/selected-style.cpp:246 +#: ../src/ui/widget/selected-style.cpp:249 msgid "Invert" msgstr "" @@ -6886,7 +6885,7 @@ msgstr "" #: ../src/extension/internal/filter/color.h:1307 #: ../src/extension/internal/filter/color.h:1310 #: ../src/extension/internal/filter/color.h:1313 -#: ../src/ui/dialog/input.cpp:1616 ../src/ui/dialog/layers.cpp:915 +#: ../src/ui/dialog/input.cpp:1616 ../src/ui/dialog/layers.cpp:916 msgid "X" msgstr "" @@ -7027,8 +7026,8 @@ msgstr "" #: ../src/extension/internal/filter/distort.h:77 #: ../src/extension/internal/filter/textures.h:75 -#: ../src/ui/widget/selected-style.cpp:128 -#: ../src/ui/widget/style-swatch.cpp:127 +#: ../src/ui/widget/selected-style.cpp:131 +#: ../src/ui/widget/style-swatch.cpp:128 msgid "Stroke:" msgstr "" @@ -7138,6 +7137,8 @@ msgid "Detect:" msgstr "" #: ../src/extension/internal/filter/image.h:52 +#: ../src/ui/dialog/template-load-tab.cpp:96 +#: ../src/ui/dialog/template-load-tab.cpp:131 msgid "All" msgstr "" @@ -7177,8 +7178,8 @@ msgstr "" #: ../src/extension/internal/filter/morphology.h:65 #: ../src/libgdl/gdl-dock-placeholder.c:167 ../src/libgdl/gdl-dock.c:191 -#: ../src/widgets/rect-toolbar.cpp:315 ../src/widgets/spray-toolbar.cpp:132 -#: ../src/widgets/tweak-toolbar.cpp:146 +#: ../src/widgets/rect-toolbar.cpp:317 ../src/widgets/spray-toolbar.cpp:128 +#: ../src/widgets/tweak-toolbar.cpp:142 #: ../share/extensions/interp_att_g.inx.h:10 msgid "Width" msgstr "" @@ -7410,15 +7411,15 @@ msgid "Convert image to an engraving made of vertical and horizontal lines" msgstr "" #: ../src/extension/internal/filter/paint.h:331 -#: ../src/ui/dialog/align-and-distribute.cpp:1048 -#: ../src/widgets/desktop-widget.cpp:2000 +#: ../src/ui/dialog/align-and-distribute.cpp:997 +#: ../src/widgets/desktop-widget.cpp:2004 msgid "Drawing" msgstr "" #: ../src/extension/internal/filter/paint.h:335 #: ../src/extension/internal/filter/paint.h:496 #: ../src/extension/internal/filter/paint.h:590 -#: ../src/extension/internal/filter/paint.h:976 ../src/splivarot.cpp:1988 +#: ../src/extension/internal/filter/paint.h:976 ../src/splivarot.cpp:2024 msgid "Simplify" msgstr "" @@ -7688,7 +7689,7 @@ msgstr "" msgid "Blend" msgstr "" -#: ../src/extension/internal/filter/transparency.h:55 ../src/rdf.cpp:258 +#: ../src/extension/internal/filter/transparency.h:55 ../src/rdf.cpp:261 msgid "Source:" msgstr "" @@ -7698,10 +7699,10 @@ msgid "Background" msgstr "" #: ../src/extension/internal/filter/transparency.h:59 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2610 -#: ../src/ui/dialog/input.cpp:1088 ../src/widgets/erasor-toolbar.cpp:127 -#: ../src/widgets/pencil-toolbar.cpp:161 ../src/widgets/spray-toolbar.cpp:202 -#: ../src/widgets/tweak-toolbar.cpp:272 ../share/extensions/extrude.inx.h:2 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2623 +#: ../src/ui/dialog/input.cpp:1088 ../src/widgets/eraser-toolbar.cpp:123 +#: ../src/widgets/pencil-toolbar.cpp:156 ../src/widgets/spray-toolbar.cpp:198 +#: ../src/widgets/tweak-toolbar.cpp:268 ../share/extensions/extrude.inx.h:2 #: ../share/extensions/triangle.inx.h:8 msgid "Mode:" msgstr "" @@ -7822,7 +7823,7 @@ msgstr "" #: ../share/extensions/grid_cartesian.inx.h:23 #: ../share/extensions/grid_isometric.inx.h:11 #: ../share/extensions/grid_polar.inx.h:22 -#: ../share/extensions/guides_creator.inx.h:20 +#: ../share/extensions/guides_creator.inx.h:19 #: ../share/extensions/layout_nup.inx.h:35 #: ../share/extensions/lindenmayer.inx.h:34 #: ../share/extensions/param_curves.inx.h:30 @@ -7843,9 +7844,9 @@ msgid "Render" msgstr "" #: ../src/extension/internal/grid.cpp:220 -#: ../src/ui/dialog/document-properties.cpp:148 +#: ../src/ui/dialog/document-properties.cpp:147 #: ../src/ui/dialog/inkscape-preferences.cpp:776 -#: ../src/widgets/toolbox.cpp:1826 +#: ../src/widgets/toolbox.cpp:1820 msgid "Grids" msgstr "" @@ -8183,127 +8184,127 @@ msgstr "" msgid "Format autodetect failed. The file is being opened as SVG." msgstr "" -#: ../src/file.cpp:153 +#: ../src/file.cpp:179 msgid "default.svg" msgstr "" -#: ../src/file.cpp:284 +#: ../src/file.cpp:318 msgid "Broken links have been changed to point to existing files." msgstr "" -#: ../src/file.cpp:295 ../src/file.cpp:1218 +#: ../src/file.cpp:329 ../src/file.cpp:1253 #, c-format msgid "Failed to load the requested file %s" msgstr "" -#: ../src/file.cpp:321 +#: ../src/file.cpp:355 msgid "Document not saved yet. Cannot revert." msgstr "" -#: ../src/file.cpp:327 +#: ../src/file.cpp:361 #, c-format msgid "Changes will be lost! Are you sure you want to reload document %s?" msgstr "" -#: ../src/file.cpp:356 +#: ../src/file.cpp:390 msgid "Document reverted." msgstr "" -#: ../src/file.cpp:358 +#: ../src/file.cpp:392 msgid "Document not reverted." msgstr "" -#: ../src/file.cpp:508 +#: ../src/file.cpp:542 msgid "Select file to open" msgstr "" -#: ../src/file.cpp:592 +#: ../src/file.cpp:624 msgid "Clean up document" msgstr "" -#: ../src/file.cpp:597 +#: ../src/file.cpp:631 #, c-format msgid "Removed %i unused definition in <defs>." msgid_plural "Removed %i unused definitions in <defs>." msgstr[0] "" msgstr[1] "" -#: ../src/file.cpp:602 +#: ../src/file.cpp:636 msgid "No unused definitions in <defs>." msgstr "" -#: ../src/file.cpp:633 +#: ../src/file.cpp:668 #, c-format msgid "" "No Inkscape extension found to save document (%s). This may have been " "caused by an unknown filename extension." msgstr "" -#: ../src/file.cpp:634 ../src/file.cpp:642 ../src/file.cpp:650 -#: ../src/file.cpp:656 ../src/file.cpp:661 +#: ../src/file.cpp:669 ../src/file.cpp:677 ../src/file.cpp:685 +#: ../src/file.cpp:691 ../src/file.cpp:696 msgid "Document not saved." msgstr "" -#: ../src/file.cpp:641 +#: ../src/file.cpp:676 #, c-format msgid "" "File %s is write protected. Please remove write protection and try again." msgstr "" -#: ../src/file.cpp:649 +#: ../src/file.cpp:684 #, c-format msgid "File %s could not be saved." msgstr "" -#: ../src/file.cpp:679 ../src/file.cpp:681 +#: ../src/file.cpp:714 ../src/file.cpp:716 msgid "Document saved." msgstr "" #. We are saving for the first time; create a unique default filename -#: ../src/file.cpp:829 ../src/file.cpp:1381 +#: ../src/file.cpp:864 ../src/file.cpp:1416 #, c-format msgid "drawing%s" msgstr "" -#: ../src/file.cpp:835 +#: ../src/file.cpp:870 #, c-format msgid "drawing-%d%s" msgstr "" -#: ../src/file.cpp:839 +#: ../src/file.cpp:874 #, c-format msgid "%s" msgstr "" -#: ../src/file.cpp:854 +#: ../src/file.cpp:889 msgid "Select file to save a copy to" msgstr "" -#: ../src/file.cpp:856 +#: ../src/file.cpp:891 msgid "Select file to save to" msgstr "" -#: ../src/file.cpp:962 ../src/file.cpp:964 +#: ../src/file.cpp:997 ../src/file.cpp:999 msgid "No changes need to be saved." msgstr "" -#: ../src/file.cpp:983 +#: ../src/file.cpp:1018 msgid "Saving document..." msgstr "" -#: ../src/file.cpp:1215 ../src/ui/dialog/ocaldialogs.cpp:1244 +#: ../src/file.cpp:1250 ../src/ui/dialog/ocaldialogs.cpp:1244 msgid "Import" msgstr "" -#: ../src/file.cpp:1265 +#: ../src/file.cpp:1300 msgid "Select file to import" msgstr "" -#: ../src/file.cpp:1403 +#: ../src/file.cpp:1438 msgid "Select file to export to" msgstr "" -#: ../src/file.cpp:1656 +#: ../src/file.cpp:1691 msgid "Import Clip Art" msgstr "" @@ -8331,7 +8332,7 @@ msgstr "" msgid "Flood" msgstr "" -#: ../src/filter-enums.cpp:30 +#: ../src/filter-enums.cpp:30 ../share/extensions/text_merge.inx.h:1 msgid "Merge" msgstr "" @@ -8384,7 +8385,7 @@ msgid "Luminance to Alpha" msgstr "" #. File -#: ../src/filter-enums.cpp:70 ../src/verbs.cpp:2296 +#: ../src/filter-enums.cpp:70 ../src/verbs.cpp:2348 #: ../share/extensions/jessyInk_mouseHandler.inx.h:3 #: ../share/extensions/jessyInk_transitions.inx.h:7 msgid "Default" @@ -8394,7 +8395,7 @@ msgstr "" msgid "Arithmetic" msgstr "" -#: ../src/filter-enums.cpp:92 ../src/selection-chemistry.cpp:516 +#: ../src/filter-enums.cpp:92 ../src/selection-chemistry.cpp:531 msgid "Duplicate" msgstr "" @@ -8426,43 +8427,43 @@ msgstr "" msgid "Spot Light" msgstr "" -#: ../src/flood-context.cpp:227 +#: ../src/flood-context.cpp:226 msgid "Visible Colors" msgstr "" -#: ../src/flood-context.cpp:231 ../src/widgets/sp-color-icc-selector.cpp:361 +#: ../src/flood-context.cpp:230 ../src/widgets/sp-color-icc-selector.cpp:361 #: ../src/widgets/sp-color-icc-selector.cpp:365 #: ../src/widgets/sp-color-scales.cpp:455 -#: ../src/widgets/sp-color-scales.cpp:456 ../src/widgets/tweak-toolbar.cpp:304 +#: ../src/widgets/sp-color-scales.cpp:456 ../src/widgets/tweak-toolbar.cpp:300 #: ../share/extensions/color_randomize.inx.h:3 msgid "Hue" msgstr "" -#: ../src/flood-context.cpp:245 +#: ../src/flood-context.cpp:244 msgctxt "Flood autogap" msgid "None" msgstr "" -#: ../src/flood-context.cpp:246 +#: ../src/flood-context.cpp:245 msgctxt "Flood autogap" msgid "Small" msgstr "" -#: ../src/flood-context.cpp:247 +#: ../src/flood-context.cpp:246 msgctxt "Flood autogap" msgid "Medium" msgstr "" -#: ../src/flood-context.cpp:248 +#: ../src/flood-context.cpp:247 msgctxt "Flood autogap" msgid "Large" msgstr "" -#: ../src/flood-context.cpp:470 +#: ../src/flood-context.cpp:469 msgid "Too much inset, the result is empty." msgstr "" -#: ../src/flood-context.cpp:511 +#: ../src/flood-context.cpp:510 #, c-format msgid "" "Area filled, path with %d node created and unioned with selection." @@ -8471,32 +8472,32 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: ../src/flood-context.cpp:517 +#: ../src/flood-context.cpp:516 #, c-format msgid "Area filled, path with %d node created." msgid_plural "Area filled, path with %d nodes created." msgstr[0] "" msgstr[1] "" -#: ../src/flood-context.cpp:785 ../src/flood-context.cpp:1095 +#: ../src/flood-context.cpp:784 ../src/flood-context.cpp:1094 msgid "Area is not bounded, cannot fill." msgstr "" -#: ../src/flood-context.cpp:1100 +#: ../src/flood-context.cpp:1099 msgid "" "Only the visible part of the bounded area was filled. If you want to " "fill all of the area, undo, zoom out, and fill again." msgstr "" -#: ../src/flood-context.cpp:1118 ../src/flood-context.cpp:1277 +#: ../src/flood-context.cpp:1117 ../src/flood-context.cpp:1276 msgid "Fill bounded area" msgstr "" -#: ../src/flood-context.cpp:1137 +#: ../src/flood-context.cpp:1136 msgid "Set style on object" msgstr "" -#: ../src/flood-context.cpp:1196 +#: ../src/flood-context.cpp:1195 msgid "Draw over areas to add to fill, hold Alt for touch fill" msgstr "" @@ -8508,7 +8509,7 @@ msgstr "" msgid "Reverse gradient" msgstr "" -#: ../src/gradient-chemistry.cpp:1608 ../src/widgets/gradient-selector.cpp:227 +#: ../src/gradient-chemistry.cpp:1608 ../src/widgets/gradient-selector.cpp:228 msgid "Delete swatch" msgstr "" @@ -8596,7 +8597,7 @@ msgstr[0] "" msgstr[1] "" #: ../src/gradient-context.cpp:381 ../src/gradient-context.cpp:479 -#: ../src/ui/dialog/swatches.cpp:203 ../src/widgets/gradient-vector.cpp:814 +#: ../src/ui/dialog/swatches.cpp:204 ../src/widgets/gradient-vector.cpp:814 msgid "Add gradient stop" msgstr "" @@ -8707,286 +8708,112 @@ msgstr "" msgid "Delete gradient stop(s)" msgstr "" -#: ../src/helper/units.cpp:37 ../src/live_effects/lpe-ruler.cpp:42 -msgid "Unit" -msgstr "" - -#. Add the units menu. -#: ../src/helper/units.cpp:37 ../src/widgets/lpe-toolbar.cpp:400 -#: ../src/widgets/node-toolbar.cpp:622 -#: ../src/widgets/paintbucket-toolbar.cpp:185 -#: ../src/widgets/rect-toolbar.cpp:376 ../src/widgets/select-toolbar.cpp:538 -msgid "Units" -msgstr "" - -#: ../src/helper/units.cpp:38 ../share/extensions/dxf_outlines.inx.h:9 -msgid "pt" -msgstr "" - -#: ../src/helper/units.cpp:38 ../share/extensions/perfectboundcover.inx.h:11 -msgid "Points" -msgstr "" - -#: ../src/helper/units.cpp:38 -msgid "Pt" -msgstr "" - -#: ../src/helper/units.cpp:39 ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Pica" -msgstr "" - -#: ../src/helper/units.cpp:39 ../share/extensions/dxf_outlines.inx.h:10 -msgid "pc" -msgstr "" - -#: ../src/helper/units.cpp:39 -msgid "Picas" -msgstr "" - -#: ../src/helper/units.cpp:39 -msgid "Pc" -msgstr "" - -#: ../src/helper/units.cpp:40 ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Pixel" -msgstr "" - -#: ../src/helper/units.cpp:40 ../share/extensions/dxf_outlines.inx.h:11 -#: ../share/extensions/render_gears.inx.h:7 -msgid "px" -msgstr "" - -#: ../src/helper/units.cpp:40 -msgid "Pixels" -msgstr "" - -#: ../src/helper/units.cpp:40 -msgid "Px" -msgstr "" - -#. You can add new elements from this point forward -#: ../src/helper/units.cpp:42 -msgid "Percent" -msgstr "" - -#: ../src/helper/units.cpp:42 ../src/ui/dialog/inkscape-preferences.cpp:1265 -msgid "%" -msgstr "" - -#: ../src/helper/units.cpp:42 -msgid "Percents" -msgstr "" - -#: ../src/helper/units.cpp:43 ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Millimeter" -msgstr "" - -#: ../src/helper/units.cpp:43 ../share/extensions/dxf_outlines.inx.h:12 -#: ../share/extensions/gcodetools_area.inx.h:46 -#: ../share/extensions/gcodetools_dxf_points.inx.h:18 -#: ../share/extensions/gcodetools_engraving.inx.h:24 -#: ../share/extensions/gcodetools_graffiti.inx.h:18 -#: ../share/extensions/gcodetools_lathe.inx.h:39 -#: ../share/extensions/gcodetools_orientation_points.inx.h:11 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:28 -#: ../share/extensions/render_gears.inx.h:9 -msgid "mm" -msgstr "" - -#: ../src/helper/units.cpp:43 -msgid "Millimeters" -msgstr "" - -#: ../src/helper/units.cpp:44 ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Centimeter" -msgstr "" - -#: ../src/helper/units.cpp:44 ../share/extensions/dxf_outlines.inx.h:13 -msgid "cm" -msgstr "" - -#: ../src/helper/units.cpp:44 -msgid "Centimeters" -msgstr "" - -#: ../src/helper/units.cpp:45 -msgid "Meter" -msgstr "" - -#: ../src/helper/units.cpp:45 ../share/extensions/dxf_outlines.inx.h:14 -msgid "m" -msgstr "" - -#: ../src/helper/units.cpp:45 -msgid "Meters" -msgstr "" - -#. no svg_unit -#: ../src/helper/units.cpp:46 ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Inch" -msgstr "" - -#: ../src/helper/units.cpp:46 ../share/extensions/dxf_outlines.inx.h:15 -#: ../share/extensions/gcodetools_area.inx.h:47 -#: ../share/extensions/gcodetools_dxf_points.inx.h:19 -#: ../share/extensions/gcodetools_engraving.inx.h:25 -#: ../share/extensions/gcodetools_graffiti.inx.h:19 -#: ../share/extensions/gcodetools_lathe.inx.h:40 -#: ../share/extensions/gcodetools_orientation_points.inx.h:12 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:29 -#: ../share/extensions/render_gears.inx.h:8 -msgid "in" -msgstr "" - -#: ../src/helper/units.cpp:46 -msgid "Inches" -msgstr "" - -#: ../src/helper/units.cpp:47 -msgid "Foot" -msgstr "" - -#: ../src/helper/units.cpp:47 ../share/extensions/dxf_outlines.inx.h:16 -msgid "ft" -msgstr "" - -#: ../src/helper/units.cpp:47 -msgid "Feet" -msgstr "" - -#. Volatiles do not have default, so there are none here -#. TRANSLATORS: for info, see http://www.w3.org/TR/REC-CSS2/syndata.html#length-units -#: ../src/helper/units.cpp:50 ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Em square" -msgstr "" - -#: ../src/helper/units.cpp:50 -msgid "em" -msgstr "" - -#: ../src/helper/units.cpp:50 -msgid "Em squares" -msgstr "" - -#. TRANSLATORS: for info, see http://www.w3.org/TR/REC-CSS2/syndata.html#length-units -#: ../src/helper/units.cpp:52 -msgid "Ex square" -msgstr "" - -#: ../src/helper/units.cpp:52 -msgid "ex" -msgstr "" - -#: ../src/helper/units.cpp:52 -msgid "Ex squares" -msgstr "" - -#: ../src/inkscape.cpp:322 +#: ../src/inkscape.cpp:341 msgid "Autosave failed! Cannot create directory %1." msgstr "" -#: ../src/inkscape.cpp:331 +#: ../src/inkscape.cpp:350 msgid "Autosave failed! Cannot open directory %1." msgstr "" -#: ../src/inkscape.cpp:347 +#: ../src/inkscape.cpp:366 msgid "Autosaving documents..." msgstr "" -#: ../src/inkscape.cpp:420 +#: ../src/inkscape.cpp:439 msgid "Autosave failed! Could not find inkscape extension to save document." msgstr "" -#: ../src/inkscape.cpp:423 ../src/inkscape.cpp:430 +#: ../src/inkscape.cpp:442 ../src/inkscape.cpp:449 #, c-format msgid "Autosave failed! File %s could not be saved." msgstr "" -#: ../src/inkscape.cpp:445 +#: ../src/inkscape.cpp:464 msgid "Autosave complete." msgstr "" -#: ../src/inkscape.cpp:691 +#: ../src/inkscape.cpp:712 msgid "Untitled document" msgstr "" #. Show nice dialog box -#: ../src/inkscape.cpp:723 +#: ../src/inkscape.cpp:744 msgid "Inkscape encountered an internal error and will close now.\n" msgstr "" -#: ../src/inkscape.cpp:724 +#: ../src/inkscape.cpp:745 msgid "" "Automatic backups of unsaved documents were done to the following " "locations:\n" msgstr "" -#: ../src/inkscape.cpp:725 +#: ../src/inkscape.cpp:746 msgid "Automatic backup of the following documents failed:\n" msgstr "" -#: ../src/interface.cpp:865 +#: ../src/interface.cpp:774 msgctxt "Interface setup" msgid "Default" msgstr "" -#: ../src/interface.cpp:865 +#: ../src/interface.cpp:774 msgid "Default interface setup" msgstr "" -#: ../src/interface.cpp:866 +#: ../src/interface.cpp:775 msgctxt "Interface setup" msgid "Custom" msgstr "" -#: ../src/interface.cpp:866 +#: ../src/interface.cpp:775 msgid "Setup for custom task" msgstr "" -#: ../src/interface.cpp:867 +#: ../src/interface.cpp:776 msgctxt "Interface setup" msgid "Wide" msgstr "" -#: ../src/interface.cpp:867 +#: ../src/interface.cpp:776 msgid "Setup for widescreen work" msgstr "" -#: ../src/interface.cpp:979 +#: ../src/interface.cpp:888 #, c-format msgid "Verb \"%s\" Unknown" msgstr "" -#: ../src/interface.cpp:1021 +#: ../src/interface.cpp:927 msgid "Open _Recent" msgstr "" -#: ../src/interface.cpp:1129 ../src/interface.cpp:1215 -#: ../src/interface.cpp:1318 ../src/ui/widget/selected-style.cpp:523 +#: ../src/interface.cpp:1035 ../src/interface.cpp:1121 +#: ../src/interface.cpp:1224 ../src/ui/widget/selected-style.cpp:528 msgid "Drop color" msgstr "" -#: ../src/interface.cpp:1168 ../src/interface.cpp:1278 +#: ../src/interface.cpp:1074 ../src/interface.cpp:1184 msgid "Drop color on gradient" msgstr "" -#: ../src/interface.cpp:1331 +#: ../src/interface.cpp:1237 msgid "Could not parse SVG data" msgstr "" -#: ../src/interface.cpp:1370 +#: ../src/interface.cpp:1276 msgid "Drop SVG" msgstr "" -#: ../src/interface.cpp:1383 +#: ../src/interface.cpp:1289 msgid "Drop Symbol" msgstr "" -#: ../src/interface.cpp:1414 +#: ../src/interface.cpp:1320 msgid "Drop bitmap image" msgstr "" -#: ../src/interface.cpp:1506 +#: ../src/interface.cpp:1412 #, c-format msgid "" "A file named \"%s\" already exists. Do " @@ -8995,160 +8822,160 @@ msgid "" "The file already exists in \"%s\". Replacing it will overwrite its contents." msgstr "" -#: ../src/interface.cpp:1513 ../share/extensions/web-set-att.inx.h:21 +#: ../src/interface.cpp:1419 ../share/extensions/web-set-att.inx.h:21 #: ../share/extensions/web-transmit-att.inx.h:19 msgid "Replace" msgstr "" -#: ../src/interface.cpp:1584 +#: ../src/interface.cpp:1490 msgid "Go to parent" msgstr "" #. TRANSLATORS: #%1 is the id of the group e.g. , not a number. -#: ../src/interface.cpp:1625 +#: ../src/interface.cpp:1531 msgid "Enter group #%1" msgstr "" #. Item dialog -#: ../src/interface.cpp:1737 ../src/verbs.cpp:2790 +#: ../src/interface.cpp:1643 ../src/verbs.cpp:2842 msgid "_Object Properties..." msgstr "" -#: ../src/interface.cpp:1746 +#: ../src/interface.cpp:1652 msgid "_Select This" msgstr "" -#: ../src/interface.cpp:1757 +#: ../src/interface.cpp:1663 msgid "Select Same" msgstr "" #. Select same fill and stroke -#: ../src/interface.cpp:1767 +#: ../src/interface.cpp:1673 msgid "Fill and Stroke" msgstr "" #. Select same fill color -#: ../src/interface.cpp:1774 +#: ../src/interface.cpp:1680 msgid "Fill Color" msgstr "" #. Select same stroke color -#: ../src/interface.cpp:1781 +#: ../src/interface.cpp:1687 msgid "Stroke Color" msgstr "" #. Select same stroke style -#: ../src/interface.cpp:1788 +#: ../src/interface.cpp:1694 msgid "Stroke Style" msgstr "" #. Select same stroke style -#: ../src/interface.cpp:1795 +#: ../src/interface.cpp:1701 msgid "Object type" msgstr "" #. Move to layer -#: ../src/interface.cpp:1802 +#: ../src/interface.cpp:1708 msgid "_Move to layer ..." msgstr "" #. Create link -#: ../src/interface.cpp:1812 +#: ../src/interface.cpp:1718 msgid "Create _Link" msgstr "" #. Set mask -#: ../src/interface.cpp:1835 +#: ../src/interface.cpp:1741 msgid "Set Mask" msgstr "" #. Release mask -#: ../src/interface.cpp:1846 +#: ../src/interface.cpp:1752 msgid "Release Mask" msgstr "" #. Set Clip -#: ../src/interface.cpp:1857 +#: ../src/interface.cpp:1763 msgid "Set Cl_ip" msgstr "" #. Release Clip -#: ../src/interface.cpp:1868 +#: ../src/interface.cpp:1774 msgid "Release C_lip" msgstr "" #. Group -#: ../src/interface.cpp:1879 ../src/verbs.cpp:2429 +#: ../src/interface.cpp:1785 ../src/verbs.cpp:2483 msgid "_Group" msgstr "" -#: ../src/interface.cpp:1950 +#: ../src/interface.cpp:1856 msgid "Create link" msgstr "" #. Ungroup -#: ../src/interface.cpp:1981 ../src/verbs.cpp:2431 +#: ../src/interface.cpp:1887 ../src/verbs.cpp:2485 msgid "_Ungroup" msgstr "" #. Link dialog -#: ../src/interface.cpp:2006 +#: ../src/interface.cpp:1912 msgid "Link _Properties..." msgstr "" #. Select item -#: ../src/interface.cpp:2012 +#: ../src/interface.cpp:1918 msgid "_Follow Link" msgstr "" #. Reset transformations -#: ../src/interface.cpp:2018 +#: ../src/interface.cpp:1924 msgid "_Remove Link" msgstr "" -#: ../src/interface.cpp:2049 +#: ../src/interface.cpp:1955 msgid "Remove link" msgstr "" #. Image properties -#: ../src/interface.cpp:2060 +#: ../src/interface.cpp:1966 msgid "Image _Properties..." msgstr "" #. Edit externally -#: ../src/interface.cpp:2066 +#: ../src/interface.cpp:1972 msgid "Edit Externally..." msgstr "" #. Trace Bitmap #. TRANSLATORS: "to trace" means "to convert a bitmap to vector graphics" (to vectorize) -#: ../src/interface.cpp:2075 ../src/verbs.cpp:2492 +#: ../src/interface.cpp:1981 ../src/verbs.cpp:2546 msgid "_Trace Bitmap..." msgstr "" -#: ../src/interface.cpp:2085 +#: ../src/interface.cpp:1991 msgctxt "Context menu" msgid "Embed Image" msgstr "" -#: ../src/interface.cpp:2096 +#: ../src/interface.cpp:2002 msgctxt "Context menu" msgid "Extract Image..." msgstr "" #. Item dialog #. Fill and Stroke dialog -#: ../src/interface.cpp:2235 ../src/interface.cpp:2255 ../src/verbs.cpp:2753 +#: ../src/interface.cpp:2141 ../src/interface.cpp:2161 ../src/verbs.cpp:2807 msgid "_Fill and Stroke..." msgstr "" #. Edit Text dialog -#: ../src/interface.cpp:2261 ../src/verbs.cpp:2770 +#: ../src/interface.cpp:2167 ../src/verbs.cpp:2824 msgid "_Text and Font..." msgstr "" #. Spellcheck dialog -#: ../src/interface.cpp:2267 ../src/verbs.cpp:2778 +#: ../src/interface.cpp:2173 ../src/verbs.cpp:2832 msgid "Check Spellin_g..." msgstr "" @@ -9211,7 +9038,8 @@ msgid "Dockitem which 'owns' this grip" msgstr "" #. Name -#: ../src/libgdl/gdl-dock-item.c:298 ../src/widgets/text-toolbar.cpp:1430 +#: ../src/libgdl/gdl-dock-item.c:298 ../src/widgets/ruler.cpp:191 +#: ../src/widgets/text-toolbar.cpp:1421 #: ../share/extensions/gcodetools_graffiti.inx.h:9 #: ../share/extensions/gcodetools_orientation_points.inx.h:2 msgid "Orientation" @@ -9317,11 +9145,11 @@ msgid "" "0, all are unlocked; -1 indicates inconsistency among the items" msgstr "" -#: ../src/libgdl/gdl-dock-master.c:157 ../src/libgdl/gdl-switcher.c:732 +#: ../src/libgdl/gdl-dock-master.c:157 ../src/libgdl/gdl-switcher.c:737 msgid "Switcher Style" msgstr "" -#: ../src/libgdl/gdl-dock-master.c:158 ../src/libgdl/gdl-switcher.c:733 +#: ../src/libgdl/gdl-dock-master.c:158 ../src/libgdl/gdl-switcher.c:738 msgid "Switcher buttons style" msgstr "" @@ -9340,10 +9168,10 @@ msgid "" msgstr "" #: ../src/libgdl/gdl-dock-notebook.c:132 -#: ../src/ui/dialog/align-and-distribute.cpp:1047 -#: ../src/ui/dialog/document-properties.cpp:146 +#: ../src/ui/dialog/align-and-distribute.cpp:996 +#: ../src/ui/dialog/document-properties.cpp:145 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1551 -#: ../src/widgets/desktop-widget.cpp:1996 +#: ../src/widgets/desktop-widget.cpp:2000 #: ../share/extensions/voronoi2svg.inx.h:9 msgid "Page" msgstr "" @@ -9353,9 +9181,9 @@ msgid "The index of the current page" msgstr "" #: ../src/libgdl/gdl-dock-object.c:125 -#: ../src/ui/dialog/inkscape-preferences.cpp:1482 -#: ../src/ui/widget/page-sizer.cpp:260 -#: ../src/widgets/gradient-selector.cpp:156 +#: ../src/ui/dialog/inkscape-preferences.cpp:1486 +#: ../src/ui/widget/page-sizer.cpp:258 +#: ../src/widgets/gradient-selector.cpp:157 #: ../src/widgets/sp-xmlview-attr-list.cpp:54 msgid "Name" msgstr "" @@ -9421,7 +9249,7 @@ msgid "" "Attempt to bind to %p an already bound dock object %p (current master: %p)" msgstr "" -#: ../src/libgdl/gdl-dock-paned.c:130 +#: ../src/libgdl/gdl-dock-paned.c:130 ../src/widgets/ruler.cpp:229 msgid "Position" msgstr "" @@ -9688,7 +9516,7 @@ msgstr "" msgid "Power stroke" msgstr "" -#: ../src/live_effects/effect.cpp:124 ../src/selection-chemistry.cpp:2792 +#: ../src/live_effects/effect.cpp:124 ../src/selection-chemistry.cpp:2778 msgid "Clone original path" msgstr "" @@ -10130,7 +9958,7 @@ msgid "Beveled" msgstr "" #: ../src/live_effects/lpe-powerstroke.cpp:221 -#: ../src/widgets/star-toolbar.cpp:546 +#: ../src/widgets/star-toolbar.cpp:542 msgid "Rounded" msgstr "" @@ -10143,7 +9971,7 @@ msgid "Miter" msgstr "" #: ../src/live_effects/lpe-powerstroke.cpp:224 -#: ../src/widgets/pencil-toolbar.cpp:137 +#: ../src/widgets/pencil-toolbar.cpp:132 msgid "Spiro" msgstr "" @@ -10196,7 +10024,7 @@ msgstr "" #. TRANSLATORS: The line join style specifies the shape to be used at the #. corners of paths. It can be "miter", "round" or "bevel". #: ../src/live_effects/lpe-powerstroke.cpp:238 -#: ../src/widgets/stroke-style.cpp:220 +#: ../src/widgets/stroke-style.cpp:223 msgid "Join:" msgstr "" @@ -10209,7 +10037,7 @@ msgid "Miter limit:" msgstr "" #: ../src/live_effects/lpe-powerstroke.cpp:239 -#: ../src/widgets/stroke-style.cpp:271 +#: ../src/widgets/stroke-style.cpp:274 msgid "Maximum length of the miter (in units of stroke width)" msgstr "" @@ -10395,11 +10223,13 @@ msgstr "" #: ../src/live_effects/lpe-ruler.cpp:25 ../share/extensions/restack.inx.h:12 #: ../share/extensions/text_extract.inx.h:8 +#: ../share/extensions/text_merge.inx.h:8 msgid "Left" msgstr "" #: ../src/live_effects/lpe-ruler.cpp:26 ../share/extensions/restack.inx.h:14 #: ../share/extensions/text_extract.inx.h:10 +#: ../share/extensions/text_merge.inx.h:10 msgid "Right" msgstr "" @@ -10407,11 +10237,11 @@ msgstr "" msgid "Both" msgstr "" -#: ../src/live_effects/lpe-ruler.cpp:33 ../src/widgets/arc-toolbar.cpp:341 +#: ../src/live_effects/lpe-ruler.cpp:33 ../src/widgets/arc-toolbar.cpp:337 msgid "Start" msgstr "" -#: ../src/live_effects/lpe-ruler.cpp:34 ../src/widgets/arc-toolbar.cpp:354 +#: ../src/live_effects/lpe-ruler.cpp:34 ../src/widgets/arc-toolbar.cpp:350 msgid "End" msgstr "" @@ -10431,6 +10261,10 @@ msgstr "" msgid "Unit:" msgstr "" +#: ../src/live_effects/lpe-ruler.cpp:42 ../src/widgets/ruler.cpp:201 +msgid "Unit" +msgstr "" + #: ../src/live_effects/lpe-ruler.cpp:43 msgid "Ma_jor length:" msgstr "" @@ -10572,7 +10406,7 @@ msgid "How many construction lines (tangents) to draw" msgstr "" #: ../src/live_effects/lpe-sketch.cpp:58 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2667 #: ../share/extensions/render_alphabetsoup.inx.h:3 msgid "Scale:" msgstr "" @@ -10737,7 +10571,7 @@ msgstr "" msgid "Change text parameter" msgstr "" -#: ../src/live_effects/parameter/unit.cpp:78 +#: ../src/live_effects/parameter/unit.cpp:80 msgid "Change unit parameter" msgstr "" @@ -10745,7 +10579,7 @@ msgstr "" msgid "Change vector parameter" msgstr "" -#: ../src/main-cmdlineact.cpp:49 +#: ../src/main-cmdlineact.cpp:50 #, c-format msgid "Unable to find verb ID '%s' specified on the command line.\n" msgstr "" @@ -10755,254 +10589,268 @@ msgstr "" msgid "Unable to find node ID: '%s'\n" msgstr "" -#: ../src/main.cpp:280 +#: ../src/main.cpp:298 msgid "Print the Inkscape version number" msgstr "" -#: ../src/main.cpp:285 +#: ../src/main.cpp:303 msgid "Do not use X server (only process files from console)" msgstr "" -#: ../src/main.cpp:290 +#: ../src/main.cpp:308 msgid "Try to use X server (even if $DISPLAY is not set)" msgstr "" -#: ../src/main.cpp:295 +#: ../src/main.cpp:313 msgid "Open specified document(s) (option string may be excluded)" msgstr "" -#: ../src/main.cpp:296 ../src/main.cpp:301 ../src/main.cpp:306 -#: ../src/main.cpp:378 ../src/main.cpp:383 ../src/main.cpp:388 -#: ../src/main.cpp:399 ../src/main.cpp:416 +#: ../src/main.cpp:314 ../src/main.cpp:319 ../src/main.cpp:324 +#: ../src/main.cpp:396 ../src/main.cpp:401 ../src/main.cpp:406 +#: ../src/main.cpp:417 ../src/main.cpp:434 msgid "FILENAME" msgstr "" -#: ../src/main.cpp:300 +#: ../src/main.cpp:318 msgid "Print document(s) to specified output file (use '| program' for pipe)" msgstr "" -#: ../src/main.cpp:305 +#: ../src/main.cpp:323 msgid "Export document to a PNG file" msgstr "" -#: ../src/main.cpp:310 +#: ../src/main.cpp:328 msgid "" "Resolution for exporting to bitmap and for rasterization of filters in PS/" "EPS/PDF (default 90)" msgstr "" -#: ../src/main.cpp:311 ../src/ui/widget/rendering-options.cpp:34 +#: ../src/main.cpp:329 ../src/ui/widget/rendering-options.cpp:34 msgid "DPI" msgstr "" -#: ../src/main.cpp:315 +#: ../src/main.cpp:333 msgid "" "Exported area in SVG user units (default is the page; 0,0 is lower-left " "corner)" msgstr "" -#: ../src/main.cpp:316 +#: ../src/main.cpp:334 msgid "x0:y0:x1:y1" msgstr "" -#: ../src/main.cpp:320 +#: ../src/main.cpp:338 msgid "Exported area is the entire drawing (not page)" msgstr "" -#: ../src/main.cpp:325 +#: ../src/main.cpp:343 msgid "Exported area is the entire page" msgstr "" -#: ../src/main.cpp:330 +#: ../src/main.cpp:348 msgid "Only for PS/EPS/PDF, sets margin in mm around exported area (default 0)" msgstr "" -#: ../src/main.cpp:331 ../src/main.cpp:373 +#: ../src/main.cpp:349 ../src/main.cpp:391 msgid "VALUE" msgstr "" -#: ../src/main.cpp:335 +#: ../src/main.cpp:353 msgid "" "Snap the bitmap export area outwards to the nearest integer values (in SVG " "user units)" msgstr "" -#: ../src/main.cpp:340 +#: ../src/main.cpp:358 msgid "The width of exported bitmap in pixels (overrides export-dpi)" msgstr "" -#: ../src/main.cpp:341 +#: ../src/main.cpp:359 msgid "WIDTH" msgstr "" -#: ../src/main.cpp:345 +#: ../src/main.cpp:363 msgid "The height of exported bitmap in pixels (overrides export-dpi)" msgstr "" -#: ../src/main.cpp:346 +#: ../src/main.cpp:364 msgid "HEIGHT" msgstr "" -#: ../src/main.cpp:350 +#: ../src/main.cpp:368 msgid "The ID of the object to export" msgstr "" -#: ../src/main.cpp:351 ../src/main.cpp:461 -#: ../src/ui/dialog/inkscape-preferences.cpp:1485 +#: ../src/main.cpp:369 ../src/main.cpp:479 +#: ../src/ui/dialog/inkscape-preferences.cpp:1489 msgid "ID" msgstr "" #. TRANSLATORS: this means: "Only export the object whose id is given in --export-id". #. See "man inkscape" for details. -#: ../src/main.cpp:357 +#: ../src/main.cpp:375 msgid "" "Export just the object with export-id, hide all others (only with export-id)" msgstr "" -#: ../src/main.cpp:362 +#: ../src/main.cpp:380 msgid "Use stored filename and DPI hints when exporting (only with export-id)" msgstr "" -#: ../src/main.cpp:367 +#: ../src/main.cpp:385 msgid "Background color of exported bitmap (any SVG-supported color string)" msgstr "" -#: ../src/main.cpp:368 +#: ../src/main.cpp:386 msgid "COLOR" msgstr "" -#: ../src/main.cpp:372 +#: ../src/main.cpp:390 msgid "Background opacity of exported bitmap (either 0.0 to 1.0, or 1 to 255)" msgstr "" -#: ../src/main.cpp:377 +#: ../src/main.cpp:395 msgid "Export document to plain SVG file (no sodipodi or inkscape namespaces)" msgstr "" -#: ../src/main.cpp:382 +#: ../src/main.cpp:400 msgid "Export document to a PS file" msgstr "" -#: ../src/main.cpp:387 +#: ../src/main.cpp:405 msgid "Export document to an EPS file" msgstr "" -#: ../src/main.cpp:392 +#: ../src/main.cpp:410 msgid "" "Choose the PostScript Level used to export. Possible choices are 2 (the " "default) and 3" msgstr "" -#: ../src/main.cpp:394 +#: ../src/main.cpp:412 msgid "PS Level" msgstr "" -#: ../src/main.cpp:398 +#: ../src/main.cpp:416 msgid "Export document to a PDF file" msgstr "" #. TRANSLATORS: "--export-pdf-version" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:404 +#: ../src/main.cpp:422 msgid "" "Export PDF to given version. (hint: make sure to input the exact string " "found in the PDF export dialog, e.g. \"PDF 1.4\" which is PDF-a conformant)" msgstr "" -#: ../src/main.cpp:405 +#: ../src/main.cpp:423 msgid "PDF_VERSION" msgstr "" -#: ../src/main.cpp:409 +#: ../src/main.cpp:427 msgid "" "Export PDF/PS/EPS without text. Besides the PDF/PS/EPS, a LaTeX file is " "exported, putting the text on top of the PDF/PS/EPS file. Include the result " "in LaTeX like: \\input{latexfile.tex}" msgstr "" -#: ../src/main.cpp:415 +#: ../src/main.cpp:433 msgid "Export document to an Enhanced Metafile (EMF) File" msgstr "" -#: ../src/main.cpp:421 +#: ../src/main.cpp:439 msgid "Convert text object to paths on export (PS, EPS, PDF, SVG)" msgstr "" -#: ../src/main.cpp:426 +#: ../src/main.cpp:444 msgid "" "Render filtered objects without filters, instead of rasterizing (PS, EPS, " "PDF)" msgstr "" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:432 +#: ../src/main.cpp:450 msgid "" "Query the X coordinate of the drawing or, if specified, of the object with --" "query-id" msgstr "" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:438 +#: ../src/main.cpp:456 msgid "" "Query the Y coordinate of the drawing or, if specified, of the object with --" "query-id" msgstr "" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:444 +#: ../src/main.cpp:462 msgid "" "Query the width of the drawing or, if specified, of the object with --query-" "id" msgstr "" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:450 +#: ../src/main.cpp:468 msgid "" "Query the height of the drawing or, if specified, of the object with --query-" "id" msgstr "" -#: ../src/main.cpp:455 +#: ../src/main.cpp:473 msgid "List id,x,y,w,h for all objects" msgstr "" -#: ../src/main.cpp:460 +#: ../src/main.cpp:478 msgid "The ID of the object whose dimensions are queried" msgstr "" #. TRANSLATORS: this option makes Inkscape print the name (path) of the extension directory -#: ../src/main.cpp:466 +#: ../src/main.cpp:484 msgid "Print out the extension directory and exit" msgstr "" -#: ../src/main.cpp:471 +#: ../src/main.cpp:489 msgid "Remove unused definitions from the defs section(s) of the document" msgstr "" -#: ../src/main.cpp:476 +#: ../src/main.cpp:495 +msgid "Enter a listening loop for D-Bus messages in console mode" +msgstr "" + +#: ../src/main.cpp:500 +msgid "" +"Specify the D-Bus bus name to listen for messages on (default is org." +"inkscape)" +msgstr "" + +#: ../src/main.cpp:501 +msgid "BUS-NAME" +msgstr "" + +#: ../src/main.cpp:506 msgid "List the IDs of all the verbs in Inkscape" msgstr "" -#: ../src/main.cpp:481 +#: ../src/main.cpp:511 msgid "Verb to call when Inkscape opens." msgstr "" -#: ../src/main.cpp:482 +#: ../src/main.cpp:512 msgid "VERB-ID" msgstr "" -#: ../src/main.cpp:486 +#: ../src/main.cpp:516 msgid "Object ID to select when Inkscape opens." msgstr "" -#: ../src/main.cpp:487 +#: ../src/main.cpp:517 msgid "OBJECT-ID" msgstr "" -#: ../src/main.cpp:491 +#: ../src/main.cpp:521 msgid "Start Inkscape in interactive shell mode." msgstr "" -#: ../src/main.cpp:835 ../src/main.cpp:1192 +#: ../src/main.cpp:868 ../src/main.cpp:1256 msgid "" "[OPTIONS...] [FILE...]\n" "\n" @@ -11020,11 +10868,11 @@ msgstr "" #. " \n" #. " \n" -#: ../src/menus-skeleton.h:43 ../src/verbs.cpp:2575 ../src/verbs.cpp:2581 +#: ../src/menus-skeleton.h:43 ../src/verbs.cpp:2629 ../src/verbs.cpp:2635 msgid "_Edit" msgstr "" -#: ../src/menus-skeleton.h:53 ../src/verbs.cpp:2341 +#: ../src/menus-skeleton.h:53 ../src/verbs.cpp:2395 msgid "Paste Si_ze" msgstr "" @@ -11062,46 +10910,45 @@ msgstr "" msgid "Sh_ow/Hide" msgstr "" -#. " \n" #. Not quite ready to be in the menus. #. " \n" -#: ../src/menus-skeleton.h:158 +#: ../src/menus-skeleton.h:157 msgid "_Layer" msgstr "" -#: ../src/menus-skeleton.h:182 +#: ../src/menus-skeleton.h:181 msgid "_Object" msgstr "" -#: ../src/menus-skeleton.h:190 +#: ../src/menus-skeleton.h:189 msgid "Cli_p" msgstr "" -#: ../src/menus-skeleton.h:194 +#: ../src/menus-skeleton.h:193 msgid "Mas_k" msgstr "" -#: ../src/menus-skeleton.h:198 +#: ../src/menus-skeleton.h:197 msgid "Patter_n" msgstr "" -#: ../src/menus-skeleton.h:222 +#: ../src/menus-skeleton.h:221 msgid "_Path" msgstr "" -#: ../src/menus-skeleton.h:267 +#: ../src/menus-skeleton.h:266 msgid "Filter_s" msgstr "" -#: ../src/menus-skeleton.h:273 +#: ../src/menus-skeleton.h:272 msgid "Exte_nsions" msgstr "" -#: ../src/menus-skeleton.h:279 +#: ../src/menus-skeleton.h:278 msgid "_Help" msgstr "" -#: ../src/menus-skeleton.h:283 +#: ../src/menus-skeleton.h:282 msgid "Tutorials" msgstr "" @@ -11287,99 +11134,99 @@ msgstr "" msgid "No path(s) to break apart in the selection." msgstr "" -#: ../src/path-chemistry.cpp:303 +#: ../src/path-chemistry.cpp:301 msgid "Select object(s) to convert to path." msgstr "" -#: ../src/path-chemistry.cpp:309 +#: ../src/path-chemistry.cpp:307 msgid "Converting objects to paths..." msgstr "" -#: ../src/path-chemistry.cpp:331 +#: ../src/path-chemistry.cpp:329 msgid "Object to path" msgstr "" -#: ../src/path-chemistry.cpp:333 +#: ../src/path-chemistry.cpp:331 msgid "No objects to convert to path in the selection." msgstr "" -#: ../src/path-chemistry.cpp:610 +#: ../src/path-chemistry.cpp:608 msgid "Select path(s) to reverse." msgstr "" -#: ../src/path-chemistry.cpp:619 +#: ../src/path-chemistry.cpp:617 msgid "Reversing paths..." msgstr "" -#: ../src/path-chemistry.cpp:654 +#: ../src/path-chemistry.cpp:652 msgid "Reverse path" msgstr "" -#: ../src/path-chemistry.cpp:656 +#: ../src/path-chemistry.cpp:654 msgid "No paths to reverse in the selection." msgstr "" -#: ../src/pen-context.cpp:222 ../src/pencil-context.cpp:534 +#: ../src/pen-context.cpp:220 ../src/pencil-context.cpp:534 msgid "Drawing cancelled" msgstr "" -#: ../src/pen-context.cpp:460 ../src/pencil-context.cpp:259 +#: ../src/pen-context.cpp:458 ../src/pencil-context.cpp:259 msgid "Continuing selected path" msgstr "" -#: ../src/pen-context.cpp:470 ../src/pencil-context.cpp:267 +#: ../src/pen-context.cpp:468 ../src/pencil-context.cpp:267 msgid "Creating new path" msgstr "" -#: ../src/pen-context.cpp:472 ../src/pencil-context.cpp:270 +#: ../src/pen-context.cpp:470 ../src/pencil-context.cpp:270 msgid "Appending to selected path" msgstr "" -#: ../src/pen-context.cpp:632 +#: ../src/pen-context.cpp:630 msgid "Click or click and drag to close and finish the path." msgstr "" -#: ../src/pen-context.cpp:642 +#: ../src/pen-context.cpp:640 msgid "" "Click or click and drag to continue the path from this point." msgstr "" -#: ../src/pen-context.cpp:1237 +#: ../src/pen-context.cpp:1240 #, c-format msgid "" "Curve segment: angle %3.2f°, distance %s; with Ctrl to " "snap angle, Enter to finish the path" msgstr "" -#: ../src/pen-context.cpp:1238 +#: ../src/pen-context.cpp:1241 #, c-format msgid "" "Line segment: angle %3.2f°, distance %s; with Ctrl to " "snap angle, Enter to finish the path" msgstr "" -#: ../src/pen-context.cpp:1255 +#: ../src/pen-context.cpp:1258 #, c-format msgid "" "Curve handle: angle %3.2f°, length %s; with Ctrl to snap " "angle" msgstr "" -#: ../src/pen-context.cpp:1277 +#: ../src/pen-context.cpp:1280 #, c-format msgid "" "Curve handle, symmetric: angle %3.2f°, length %s; with Ctrl to snap angle, with Shift to move this handle only" msgstr "" -#: ../src/pen-context.cpp:1278 +#: ../src/pen-context.cpp:1281 #, c-format msgid "" "Curve handle: angle %3.2f°, length %s; with Ctrl to snap " "angle, with Shift to move this handle only" msgstr "" -#: ../src/pen-context.cpp:1324 +#: ../src/pen-context.cpp:1327 msgid "Drawing finished" msgstr "" @@ -11442,7 +11289,7 @@ msgstr "" msgid "Tracing" msgstr "" -#: ../src/preferences.cpp:132 +#: ../src/preferences.cpp:134 msgid "" "Inkscape will run with default settings, and new settings will not be saved. " msgstr "" @@ -11450,7 +11297,7 @@ msgstr "" #. the creation failed #. _reportError(Glib::ustring::compose(_("Cannot create profile directory %1."), #. Glib::filename_to_utf8(_prefs_dir)), not_saved); -#: ../src/preferences.cpp:147 +#: ../src/preferences.cpp:149 #, c-format msgid "Cannot create profile directory %s." msgstr "" @@ -11458,7 +11305,7 @@ msgstr "" #. The profile dir is not actually a directory #. _reportError(Glib::ustring::compose(_("%1 is not a valid directory."), #. Glib::filename_to_utf8(_prefs_dir)), not_saved); -#: ../src/preferences.cpp:165 +#: ../src/preferences.cpp:167 #, c-format msgid "%s is not a valid directory." msgstr "" @@ -11466,27 +11313,27 @@ msgstr "" #. The write failed. #. _reportError(Glib::ustring::compose(_("Failed to create the preferences file %1."), #. Glib::filename_to_utf8(_prefs_filename)), not_saved); -#: ../src/preferences.cpp:176 +#: ../src/preferences.cpp:178 #, c-format msgid "Failed to create the preferences file %s." msgstr "" -#: ../src/preferences.cpp:212 +#: ../src/preferences.cpp:214 #, c-format msgid "The preferences file %s is not a regular file." msgstr "" -#: ../src/preferences.cpp:222 +#: ../src/preferences.cpp:224 #, c-format msgid "The preferences file %s could not be read." msgstr "" -#: ../src/preferences.cpp:233 +#: ../src/preferences.cpp:235 #, c-format msgid "The preferences file %s is not a valid XML document." msgstr "" -#: ../src/preferences.cpp:242 +#: ../src/preferences.cpp:244 #, c-format msgid "The file %s is not a valid Inkscape preferences file." msgstr "" @@ -11528,183 +11375,179 @@ msgid "Open Font License" msgstr "" #. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/linking.html#AElementXLinkTitleAttribute -#: ../src/rdf.cpp:232 ../src/ui/dialog/object-attributes.cpp:57 +#: ../src/rdf.cpp:235 ../src/ui/dialog/object-attributes.cpp:57 msgid "Title:" msgstr "" -#: ../src/rdf.cpp:233 -msgid "Name by which this document is formally known" +#: ../src/rdf.cpp:236 +msgid "A name given to the resource" msgstr "" -#: ../src/rdf.cpp:235 +#: ../src/rdf.cpp:238 msgid "Date:" msgstr "" -#: ../src/rdf.cpp:236 -msgid "Date associated with the creation of this document (YYYY-MM-DD)" +#: ../src/rdf.cpp:239 +msgid "" +"A point or period of time associated with an event in the lifecycle of the " +"resource" msgstr "" -#: ../src/rdf.cpp:238 ../share/extensions/webslicer_create_rect.inx.h:3 +#: ../src/rdf.cpp:241 ../share/extensions/webslicer_create_rect.inx.h:3 msgid "Format:" msgstr "" -#: ../src/rdf.cpp:239 -msgid "The physical or digital manifestation of this document (MIME type)" -msgstr "" - #: ../src/rdf.cpp:242 -msgid "Type of document (DCMI Type)" +msgid "The file format, physical medium, or dimensions of the resource" msgstr "" #: ../src/rdf.cpp:245 -msgid "Creator:" -msgstr "" - -#: ../src/rdf.cpp:246 -msgid "" -"Name of entity primarily responsible for making the content of this document" +msgid "The nature or genre of the resource" msgstr "" #: ../src/rdf.cpp:248 -msgid "Rights:" +msgid "Creator:" msgstr "" #: ../src/rdf.cpp:249 -msgid "" -"Name of entity with rights to the Intellectual Property of this document" +msgid "An entity primarily responsible for making the resource" msgstr "" #: ../src/rdf.cpp:251 -msgid "Publisher:" +msgid "Rights:" msgstr "" #: ../src/rdf.cpp:252 -msgid "Name of entity responsible for making this document available" +msgid "Information about rights held in and over the resource" +msgstr "" + +#: ../src/rdf.cpp:254 +msgid "Publisher:" msgstr "" #: ../src/rdf.cpp:255 -msgid "Identifier:" +msgid "An entity responsible for making the resource available" msgstr "" -#: ../src/rdf.cpp:256 -msgid "Unique URI to reference this document" +#: ../src/rdf.cpp:258 +msgid "Identifier:" msgstr "" #: ../src/rdf.cpp:259 -msgid "Unique URI to reference the source of this document" +msgid "An unambiguous reference to the resource within a given context" msgstr "" -#: ../src/rdf.cpp:261 +#: ../src/rdf.cpp:262 +msgid "A related resource from which the described resource is derived" +msgstr "" + +#: ../src/rdf.cpp:264 msgid "Relation:" msgstr "" -#: ../src/rdf.cpp:262 -msgid "Unique URI to a related document" +#: ../src/rdf.cpp:265 +msgid "A related resource" msgstr "" -#: ../src/rdf.cpp:264 ../src/ui/dialog/inkscape-preferences.cpp:1837 +#: ../src/rdf.cpp:267 ../src/ui/dialog/inkscape-preferences.cpp:1841 msgid "Language:" msgstr "" -#: ../src/rdf.cpp:265 -msgid "" -"Two-letter language tag with optional subtags for the language of this " -"document (e.g. 'en-GB')" +#: ../src/rdf.cpp:268 +msgid "A language of the resource" msgstr "" -#: ../src/rdf.cpp:267 +#: ../src/rdf.cpp:270 msgid "Keywords:" msgstr "" -#: ../src/rdf.cpp:268 -msgid "" -"The topic of this document as comma-separated key words, phrases, or " -"classifications" +#: ../src/rdf.cpp:271 +msgid "The topic of the resource" msgstr "" #. TRANSLATORS: "Coverage": the spatial or temporal characteristics of the content. #. For info, see Appendix D of http://www.w3.org/TR/1998/WD-rdf-schema-19980409/ -#: ../src/rdf.cpp:272 +#: ../src/rdf.cpp:275 msgid "Coverage:" msgstr "" -#: ../src/rdf.cpp:273 -msgid "Extent or scope of this document" +#: ../src/rdf.cpp:276 +msgid "" +"The spatial or temporal topic of the resource, the spatial applicability of " +"the resource, or the jurisdiction under which the resource is relevant" msgstr "" -#: ../src/rdf.cpp:276 +#: ../src/rdf.cpp:279 msgid "Description:" msgstr "" -#: ../src/rdf.cpp:277 -msgid "A short account of the content of this document" +#: ../src/rdf.cpp:280 +msgid "An account of the resource" msgstr "" #. FIXME: need to handle 1 agent per line of input -#: ../src/rdf.cpp:281 +#: ../src/rdf.cpp:284 msgid "Contributors:" msgstr "" -#: ../src/rdf.cpp:282 -msgid "" -"Names of entities responsible for making contributions to the content of " -"this document" +#: ../src/rdf.cpp:285 +msgid "An entity responsible for making contributions to the resource" msgstr "" #. TRANSLATORS: URL to a page that defines the license for the document -#: ../src/rdf.cpp:286 +#: ../src/rdf.cpp:289 msgid "URI:" msgstr "" #. TRANSLATORS: this is where you put a URL to a page that defines the license -#: ../src/rdf.cpp:288 +#: ../src/rdf.cpp:291 msgid "URI to this document's license's namespace definition" msgstr "" #. TRANSLATORS: fragment of XML representing the license of the document -#: ../src/rdf.cpp:292 +#: ../src/rdf.cpp:295 msgid "Fragment:" msgstr "" -#: ../src/rdf.cpp:293 +#: ../src/rdf.cpp:296 msgid "XML fragment for the RDF 'License' section" msgstr "" -#: ../src/rect-context.cpp:352 +#: ../src/rect-context.cpp:351 msgid "" "Ctrl: make square or integer-ratio rect, lock a rounded corner " "circular" msgstr "" -#: ../src/rect-context.cpp:505 +#: ../src/rect-context.cpp:506 #, c-format msgid "" "Rectangle: %s × %s (constrained to ratio %d:%d); with Shift to draw around the starting point" msgstr "" -#: ../src/rect-context.cpp:508 +#: ../src/rect-context.cpp:509 #, c-format msgid "" "Rectangle: %s × %s (constrained to golden ratio 1.618 : 1); with " "Shift to draw around the starting point" msgstr "" -#: ../src/rect-context.cpp:510 +#: ../src/rect-context.cpp:511 #, c-format msgid "" "Rectangle: %s × %s (constrained to golden ratio 1 : 1.618); with " "Shift to draw around the starting point" msgstr "" -#: ../src/rect-context.cpp:514 +#: ../src/rect-context.cpp:515 #, c-format msgid "" "Rectangle: %s × %s; with Ctrl to make square or integer-" "ratio rectangle; with Shift to draw around the starting point" msgstr "" -#: ../src/rect-context.cpp:539 +#: ../src/rect-context.cpp:540 msgid "Create rectangle" msgstr "" @@ -11712,21 +11555,21 @@ msgstr "" msgid "Fixup broken links" msgstr "" -#: ../src/select-context.cpp:181 +#: ../src/select-context.cpp:183 msgid "Click selection to toggle scale/rotation handles" msgstr "" -#: ../src/select-context.cpp:182 +#: ../src/select-context.cpp:184 msgid "" "No objects selected. Click, Shift+click, Alt+scroll mouse on top of objects, " "or drag around objects to select." msgstr "" -#: ../src/select-context.cpp:241 +#: ../src/select-context.cpp:243 msgid "Move canceled." msgstr "" -#: ../src/select-context.cpp:249 +#: ../src/select-context.cpp:251 msgid "Selection canceled." msgstr "" @@ -11760,484 +11603,484 @@ msgstr "" msgid "Selected object is not a group. Cannot enter." msgstr "" -#: ../src/selection-chemistry.cpp:377 +#: ../src/selection-chemistry.cpp:392 msgid "Delete text" msgstr "" -#: ../src/selection-chemistry.cpp:385 +#: ../src/selection-chemistry.cpp:400 msgid "Nothing was deleted." msgstr "" -#: ../src/selection-chemistry.cpp:404 ../src/text-context.cpp:1030 +#: ../src/selection-chemistry.cpp:419 ../src/text-context.cpp:1031 #: ../src/ui/dialog/calligraphic-profile-rename.cpp:75 -#: ../src/ui/dialog/swatches.cpp:278 ../src/widgets/erasor-toolbar.cpp:114 +#: ../src/ui/dialog/swatches.cpp:279 ../src/widgets/eraser-toolbar.cpp:110 #: ../src/widgets/gradient-toolbar.cpp:1193 #: ../src/widgets/gradient-toolbar.cpp:1207 #: ../src/widgets/gradient-toolbar.cpp:1221 -#: ../src/widgets/node-toolbar.cpp:410 +#: ../src/widgets/node-toolbar.cpp:413 msgid "Delete" msgstr "" -#: ../src/selection-chemistry.cpp:432 +#: ../src/selection-chemistry.cpp:447 msgid "Select object(s) to duplicate." msgstr "" -#: ../src/selection-chemistry.cpp:541 +#: ../src/selection-chemistry.cpp:556 msgid "Delete all" msgstr "" -#: ../src/selection-chemistry.cpp:737 +#: ../src/selection-chemistry.cpp:746 msgid "Select some objects to group." msgstr "" -#: ../src/selection-chemistry.cpp:752 ../src/selection-describer.cpp:54 +#: ../src/selection-chemistry.cpp:761 ../src/selection-describer.cpp:55 msgid "Group" msgstr "" -#: ../src/selection-chemistry.cpp:766 +#: ../src/selection-chemistry.cpp:770 msgid "Select a group to ungroup." msgstr "" -#: ../src/selection-chemistry.cpp:809 +#: ../src/selection-chemistry.cpp:813 msgid "No groups to ungroup in the selection." msgstr "" -#: ../src/selection-chemistry.cpp:815 ../src/sp-item-group.cpp:479 +#: ../src/selection-chemistry.cpp:819 ../src/sp-item-group.cpp:479 msgid "Ungroup" msgstr "" -#: ../src/selection-chemistry.cpp:901 +#: ../src/selection-chemistry.cpp:900 msgid "Select object(s) to raise." msgstr "" -#: ../src/selection-chemistry.cpp:907 ../src/selection-chemistry.cpp:967 -#: ../src/selection-chemistry.cpp:1000 ../src/selection-chemistry.cpp:1064 +#: ../src/selection-chemistry.cpp:906 ../src/selection-chemistry.cpp:962 +#: ../src/selection-chemistry.cpp:990 ../src/selection-chemistry.cpp:1050 msgid "" "You cannot raise/lower objects from different groups or layers." msgstr "" #. TRANSLATORS: "Raise" means "to raise an object" in the undo history -#: ../src/selection-chemistry.cpp:947 +#: ../src/selection-chemistry.cpp:946 msgctxt "Undo action" msgid "Raise" msgstr "" -#: ../src/selection-chemistry.cpp:959 +#: ../src/selection-chemistry.cpp:954 msgid "Select object(s) to raise to top." msgstr "" -#: ../src/selection-chemistry.cpp:982 +#: ../src/selection-chemistry.cpp:977 msgid "Raise to top" msgstr "" -#: ../src/selection-chemistry.cpp:994 +#: ../src/selection-chemistry.cpp:984 msgid "Select object(s) to lower." msgstr "" -#: ../src/selection-chemistry.cpp:1044 +#: ../src/selection-chemistry.cpp:1034 ../src/widgets/ruler.cpp:209 msgid "Lower" msgstr "" -#: ../src/selection-chemistry.cpp:1056 +#: ../src/selection-chemistry.cpp:1042 msgid "Select object(s) to lower to bottom." msgstr "" -#: ../src/selection-chemistry.cpp:1091 +#: ../src/selection-chemistry.cpp:1077 msgid "Lower to bottom" msgstr "" -#: ../src/selection-chemistry.cpp:1098 +#: ../src/selection-chemistry.cpp:1084 msgid "Nothing to undo." msgstr "" -#: ../src/selection-chemistry.cpp:1106 +#: ../src/selection-chemistry.cpp:1092 msgid "Nothing to redo." msgstr "" -#: ../src/selection-chemistry.cpp:1167 +#: ../src/selection-chemistry.cpp:1153 msgid "Paste" msgstr "" -#: ../src/selection-chemistry.cpp:1175 +#: ../src/selection-chemistry.cpp:1161 msgid "Paste style" msgstr "" -#: ../src/selection-chemistry.cpp:1185 +#: ../src/selection-chemistry.cpp:1171 msgid "Paste live path effect" msgstr "" -#: ../src/selection-chemistry.cpp:1206 +#: ../src/selection-chemistry.cpp:1192 msgid "Select object(s) to remove live path effects from." msgstr "" -#: ../src/selection-chemistry.cpp:1218 +#: ../src/selection-chemistry.cpp:1204 msgid "Remove live path effect" msgstr "" -#: ../src/selection-chemistry.cpp:1229 +#: ../src/selection-chemistry.cpp:1215 msgid "Select object(s) to remove filters from." msgstr "" -#: ../src/selection-chemistry.cpp:1239 -#: ../src/ui/dialog/filter-effects-dialog.cpp:1448 +#: ../src/selection-chemistry.cpp:1225 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1461 msgid "Remove filter" msgstr "" -#: ../src/selection-chemistry.cpp:1248 +#: ../src/selection-chemistry.cpp:1234 msgid "Paste size" msgstr "" -#: ../src/selection-chemistry.cpp:1257 +#: ../src/selection-chemistry.cpp:1243 msgid "Paste size separately" msgstr "" -#: ../src/selection-chemistry.cpp:1267 +#: ../src/selection-chemistry.cpp:1253 msgid "Select object(s) to move to the layer above." msgstr "" -#: ../src/selection-chemistry.cpp:1293 +#: ../src/selection-chemistry.cpp:1279 msgid "Raise to next layer" msgstr "" -#: ../src/selection-chemistry.cpp:1300 +#: ../src/selection-chemistry.cpp:1286 msgid "No more layers above." msgstr "" -#: ../src/selection-chemistry.cpp:1312 +#: ../src/selection-chemistry.cpp:1298 msgid "Select object(s) to move to the layer below." msgstr "" -#: ../src/selection-chemistry.cpp:1338 +#: ../src/selection-chemistry.cpp:1324 msgid "Lower to previous layer" msgstr "" -#: ../src/selection-chemistry.cpp:1345 +#: ../src/selection-chemistry.cpp:1331 msgid "No more layers below." msgstr "" -#: ../src/selection-chemistry.cpp:1357 +#: ../src/selection-chemistry.cpp:1343 msgid "Select object(s) to move." msgstr "" -#: ../src/selection-chemistry.cpp:1374 ../src/verbs.cpp:2518 +#: ../src/selection-chemistry.cpp:1360 ../src/verbs.cpp:2572 msgid "Move selection to layer" msgstr "" -#: ../src/selection-chemistry.cpp:1598 +#: ../src/selection-chemistry.cpp:1584 msgid "Remove transform" msgstr "" -#: ../src/selection-chemistry.cpp:1701 +#: ../src/selection-chemistry.cpp:1687 msgid "Rotate 90° CCW" msgstr "" -#: ../src/selection-chemistry.cpp:1701 +#: ../src/selection-chemistry.cpp:1687 msgid "Rotate 90° CW" msgstr "" -#: ../src/selection-chemistry.cpp:1722 ../src/seltrans.cpp:485 -#: ../src/ui/dialog/transformation.cpp:892 +#: ../src/selection-chemistry.cpp:1708 ../src/seltrans.cpp:468 +#: ../src/ui/dialog/transformation.cpp:893 msgid "Rotate" msgstr "" -#: ../src/selection-chemistry.cpp:2101 +#: ../src/selection-chemistry.cpp:2087 msgid "Rotate by pixels" msgstr "" -#: ../src/selection-chemistry.cpp:2131 ../src/seltrans.cpp:482 -#: ../src/ui/dialog/transformation.cpp:867 +#: ../src/selection-chemistry.cpp:2117 ../src/seltrans.cpp:465 +#: ../src/ui/dialog/transformation.cpp:868 #: ../share/extensions/interp_att_g.inx.h:12 msgid "Scale" msgstr "" -#: ../src/selection-chemistry.cpp:2156 +#: ../src/selection-chemistry.cpp:2142 msgid "Scale by whole factor" msgstr "" -#: ../src/selection-chemistry.cpp:2171 +#: ../src/selection-chemistry.cpp:2157 msgid "Move vertically" msgstr "" -#: ../src/selection-chemistry.cpp:2174 +#: ../src/selection-chemistry.cpp:2160 msgid "Move horizontally" msgstr "" -#: ../src/selection-chemistry.cpp:2177 ../src/selection-chemistry.cpp:2203 -#: ../src/seltrans.cpp:479 ../src/ui/dialog/transformation.cpp:806 +#: ../src/selection-chemistry.cpp:2163 ../src/selection-chemistry.cpp:2189 +#: ../src/seltrans.cpp:462 ../src/ui/dialog/transformation.cpp:807 msgid "Move" msgstr "" -#: ../src/selection-chemistry.cpp:2197 +#: ../src/selection-chemistry.cpp:2183 msgid "Move vertically by pixels" msgstr "" -#: ../src/selection-chemistry.cpp:2200 +#: ../src/selection-chemistry.cpp:2186 msgid "Move horizontally by pixels" msgstr "" -#: ../src/selection-chemistry.cpp:2332 +#: ../src/selection-chemistry.cpp:2318 msgid "The selection has no applied path effect." msgstr "" -#: ../src/selection-chemistry.cpp:2535 +#: ../src/selection-chemistry.cpp:2521 msgctxt "Action" msgid "Clone" msgstr "" -#: ../src/selection-chemistry.cpp:2551 +#: ../src/selection-chemistry.cpp:2537 msgid "Select clones to relink." msgstr "" -#: ../src/selection-chemistry.cpp:2558 +#: ../src/selection-chemistry.cpp:2544 msgid "Copy an object to clipboard to relink clones to." msgstr "" -#: ../src/selection-chemistry.cpp:2582 +#: ../src/selection-chemistry.cpp:2568 msgid "No clones to relink in the selection." msgstr "" -#: ../src/selection-chemistry.cpp:2585 +#: ../src/selection-chemistry.cpp:2571 msgid "Relink clone" msgstr "" -#: ../src/selection-chemistry.cpp:2599 +#: ../src/selection-chemistry.cpp:2585 msgid "Select clones to unlink." msgstr "" -#: ../src/selection-chemistry.cpp:2653 +#: ../src/selection-chemistry.cpp:2639 msgid "No clones to unlink in the selection." msgstr "" -#: ../src/selection-chemistry.cpp:2657 +#: ../src/selection-chemistry.cpp:2643 msgid "Unlink clone" msgstr "" -#: ../src/selection-chemistry.cpp:2670 +#: ../src/selection-chemistry.cpp:2656 msgid "" "Select a clone to go to its original. Select a linked offset " "to go to its source. Select a text on path to go to the path. Select " "a flowed text to go to its frame." msgstr "" -#: ../src/selection-chemistry.cpp:2703 +#: ../src/selection-chemistry.cpp:2689 msgid "" "Cannot find the object to select (orphaned clone, offset, textpath, " "flowed text?)" msgstr "" -#: ../src/selection-chemistry.cpp:2709 +#: ../src/selection-chemistry.cpp:2695 msgid "" "The object you're trying to select is not visible (it is in <" "defs>)" msgstr "" -#: ../src/selection-chemistry.cpp:2754 +#: ../src/selection-chemistry.cpp:2740 msgid "Select one path to clone." msgstr "" -#: ../src/selection-chemistry.cpp:2758 +#: ../src/selection-chemistry.cpp:2744 msgid "Select one path to clone." msgstr "" -#: ../src/selection-chemistry.cpp:2813 +#: ../src/selection-chemistry.cpp:2799 msgid "Select object(s) to convert to marker." msgstr "" -#: ../src/selection-chemistry.cpp:2881 +#: ../src/selection-chemistry.cpp:2867 msgid "Objects to marker" msgstr "" -#: ../src/selection-chemistry.cpp:2909 +#: ../src/selection-chemistry.cpp:2895 msgid "Select object(s) to convert to guides." msgstr "" -#: ../src/selection-chemistry.cpp:2921 +#: ../src/selection-chemistry.cpp:2907 msgid "Objects to guides" msgstr "" -#: ../src/selection-chemistry.cpp:2940 +#: ../src/selection-chemistry.cpp:2926 msgid "Select groups to convert to symbols." msgstr "" -#: ../src/selection-chemistry.cpp:2960 +#: ../src/selection-chemistry.cpp:2946 msgid "No groups converted to symbols." msgstr "" #. Group just disappears, nothing to select. -#: ../src/selection-chemistry.cpp:2967 +#: ../src/selection-chemistry.cpp:2953 msgid "Group to symbol" msgstr "" -#: ../src/selection-chemistry.cpp:3031 +#: ../src/selection-chemistry.cpp:3017 msgid "Select a symbol to extract objects from." msgstr "" -#: ../src/selection-chemistry.cpp:3040 +#: ../src/selection-chemistry.cpp:3026 msgid "Select only one symbol to convert to group." msgstr "" -#: ../src/selection-chemistry.cpp:3081 +#: ../src/selection-chemistry.cpp:3067 msgid "Group from symbol" msgstr "" -#: ../src/selection-chemistry.cpp:3098 +#: ../src/selection-chemistry.cpp:3084 msgid "Select object(s) to convert to pattern." msgstr "" -#: ../src/selection-chemistry.cpp:3186 +#: ../src/selection-chemistry.cpp:3172 msgid "Objects to pattern" msgstr "" -#: ../src/selection-chemistry.cpp:3202 +#: ../src/selection-chemistry.cpp:3188 msgid "Select an object with pattern fill to extract objects from." msgstr "" -#: ../src/selection-chemistry.cpp:3255 +#: ../src/selection-chemistry.cpp:3241 msgid "No pattern fills in the selection." msgstr "" -#: ../src/selection-chemistry.cpp:3258 +#: ../src/selection-chemistry.cpp:3244 msgid "Pattern to objects" msgstr "" -#: ../src/selection-chemistry.cpp:3349 +#: ../src/selection-chemistry.cpp:3335 msgid "Select object(s) to make a bitmap copy." msgstr "" -#: ../src/selection-chemistry.cpp:3353 +#: ../src/selection-chemistry.cpp:3339 msgid "Rendering bitmap..." msgstr "" -#: ../src/selection-chemistry.cpp:3530 +#: ../src/selection-chemistry.cpp:3516 msgid "Create bitmap" msgstr "" -#: ../src/selection-chemistry.cpp:3562 +#: ../src/selection-chemistry.cpp:3548 msgid "Select object(s) to create clippath or mask from." msgstr "" -#: ../src/selection-chemistry.cpp:3565 +#: ../src/selection-chemistry.cpp:3551 msgid "Select mask object and object(s) to apply clippath or mask to." msgstr "" -#: ../src/selection-chemistry.cpp:3746 +#: ../src/selection-chemistry.cpp:3732 msgid "Set clipping path" msgstr "" -#: ../src/selection-chemistry.cpp:3748 +#: ../src/selection-chemistry.cpp:3734 msgid "Set mask" msgstr "" -#: ../src/selection-chemistry.cpp:3763 +#: ../src/selection-chemistry.cpp:3749 msgid "Select object(s) to remove clippath or mask from." msgstr "" -#: ../src/selection-chemistry.cpp:3874 +#: ../src/selection-chemistry.cpp:3860 msgid "Release clipping path" msgstr "" -#: ../src/selection-chemistry.cpp:3876 +#: ../src/selection-chemistry.cpp:3862 msgid "Release mask" msgstr "" -#: ../src/selection-chemistry.cpp:3895 +#: ../src/selection-chemistry.cpp:3881 msgid "Select object(s) to fit canvas to." msgstr "" #. Fit Page -#: ../src/selection-chemistry.cpp:3915 ../src/verbs.cpp:2844 +#: ../src/selection-chemistry.cpp:3901 ../src/verbs.cpp:2896 msgid "Fit Page to Selection" msgstr "" -#: ../src/selection-chemistry.cpp:3944 ../src/verbs.cpp:2846 +#: ../src/selection-chemistry.cpp:3930 ../src/verbs.cpp:2898 msgid "Fit Page to Drawing" msgstr "" -#: ../src/selection-chemistry.cpp:3965 ../src/verbs.cpp:2848 +#: ../src/selection-chemistry.cpp:3951 ../src/verbs.cpp:2900 msgid "Fit Page to Selection or Drawing" msgstr "" #. TRANSLATORS: "Link" means internet link (anchor) -#: ../src/selection-describer.cpp:46 +#: ../src/selection-describer.cpp:47 msgctxt "Web" msgid "Link" msgstr "" -#: ../src/selection-describer.cpp:48 +#: ../src/selection-describer.cpp:49 msgid "Circle" msgstr "" #. Ellipse -#: ../src/selection-describer.cpp:50 ../src/selection-describer.cpp:77 +#: ../src/selection-describer.cpp:51 ../src/selection-describer.cpp:78 #: ../src/ui/dialog/inkscape-preferences.cpp:403 -#: ../src/widgets/pencil-toolbar.cpp:192 +#: ../src/widgets/pencil-toolbar.cpp:187 msgid "Ellipse" msgstr "" -#: ../src/selection-describer.cpp:52 +#: ../src/selection-describer.cpp:53 msgid "Flowed text" msgstr "" -#: ../src/selection-describer.cpp:58 +#: ../src/selection-describer.cpp:59 msgid "Line" msgstr "" -#: ../src/selection-describer.cpp:60 +#: ../src/selection-describer.cpp:61 msgid "Path" msgstr "" -#: ../src/selection-describer.cpp:62 ../src/widgets/star-toolbar.cpp:474 +#: ../src/selection-describer.cpp:63 ../src/widgets/star-toolbar.cpp:470 msgid "Polygon" msgstr "" -#: ../src/selection-describer.cpp:64 +#: ../src/selection-describer.cpp:65 msgid "Polyline" msgstr "" #. Rectangle -#: ../src/selection-describer.cpp:66 +#: ../src/selection-describer.cpp:67 #: ../src/ui/dialog/inkscape-preferences.cpp:393 msgid "Rectangle" msgstr "" #. 3D box -#: ../src/selection-describer.cpp:68 +#: ../src/selection-describer.cpp:69 #: ../src/ui/dialog/inkscape-preferences.cpp:398 msgid "3D Box" msgstr "" -#: ../src/selection-describer.cpp:70 +#: ../src/selection-describer.cpp:71 msgctxt "Object" msgid "Text" msgstr "" -#: ../src/selection-describer.cpp:73 +#: ../src/selection-describer.cpp:74 msgctxt "Object" msgid "Symbol" msgstr "" #. TRANSLATORS: "Clone" is a noun, type of object -#: ../src/selection-describer.cpp:75 +#: ../src/selection-describer.cpp:76 msgctxt "Object" msgid "Clone" msgstr "" -#: ../src/selection-describer.cpp:79 +#: ../src/selection-describer.cpp:80 #: ../share/extensions/gcodetools_lathe.inx.h:9 msgid "Offset path" msgstr "" #. Spiral -#: ../src/selection-describer.cpp:81 +#: ../src/selection-describer.cpp:82 #: ../src/ui/dialog/inkscape-preferences.cpp:411 #: ../share/extensions/gcodetools_area.inx.h:11 msgid "Spiral" msgstr "" #. Star -#: ../src/selection-describer.cpp:83 +#: ../src/selection-describer.cpp:84 #: ../src/ui/dialog/inkscape-preferences.cpp:407 -#: ../src/widgets/star-toolbar.cpp:481 +#: ../src/widgets/star-toolbar.cpp:477 msgid "Star" msgstr "" @@ -12362,89 +12205,89 @@ msgid_plural "; %d filtered objects " msgstr[0] "" msgstr[1] "" -#: ../src/seltrans.cpp:488 ../src/ui/dialog/transformation.cpp:950 +#: ../src/seltrans.cpp:471 ../src/ui/dialog/transformation.cpp:981 msgid "Skew" msgstr "" -#: ../src/seltrans.cpp:500 +#: ../src/seltrans.cpp:483 msgid "Set center" msgstr "" -#: ../src/seltrans.cpp:575 +#: ../src/seltrans.cpp:558 msgid "Stamp" msgstr "" -#: ../src/seltrans.cpp:604 -msgid "" -"Squeeze or stretch selection; with Ctrl to scale uniformly; " -"with Shift to scale around rotation center" -msgstr "" - -#: ../src/seltrans.cpp:605 -msgid "" -"Scale selection; with Ctrl to scale uniformly; with Shift to scale around rotation center" -msgstr "" - -#: ../src/seltrans.cpp:609 -msgid "" -"Skew selection; with Ctrl to snap angle; with Shift to " -"skew around the opposite side" -msgstr "" - -#: ../src/seltrans.cpp:610 -msgid "" -"Rotate selection; with Ctrl to snap angle; with Shift " -"to rotate around the opposite corner" -msgstr "" - -#: ../src/seltrans.cpp:623 -msgid "" -"Center of rotation and skewing: drag to reposition; scaling with " -"Shift also uses this center" -msgstr "" - -#: ../src/seltrans.cpp:773 +#: ../src/seltrans.cpp:711 msgid "Reset center" msgstr "" -#: ../src/seltrans.cpp:1017 ../src/seltrans.cpp:1114 +#: ../src/seltrans.cpp:938 ../src/seltrans.cpp:1035 #, c-format msgid "Scale: %0.2f%% x %0.2f%%; with Ctrl to lock ratio" msgstr "" #. TRANSLATORS: don't modify the first ";" #. (it will NOT be displayed as ";" - only the second one will be) -#: ../src/seltrans.cpp:1228 +#: ../src/seltrans.cpp:1167 #, c-format msgid "Skew: %0.2f°; with Ctrl to snap angle" msgstr "" #. TRANSLATORS: don't modify the first ";" #. (it will NOT be displayed as ";" - only the second one will be) -#: ../src/seltrans.cpp:1303 +#: ../src/seltrans.cpp:1242 #, c-format msgid "Rotate: %0.2f°; with Ctrl to snap angle" msgstr "" -#: ../src/seltrans.cpp:1338 +#: ../src/seltrans.cpp:1279 #, c-format msgid "Move center to %s, %s" msgstr "" -#: ../src/seltrans.cpp:1514 +#: ../src/seltrans.cpp:1433 #, c-format msgid "" "Move by %s, %s; with Ctrl to restrict to horizontal/vertical; " "with Shift to disable snapping" msgstr "" -#: ../src/shortcuts.cpp:225 +#: ../src/seltrans-handles.cpp:9 +msgid "" +"Squeeze or stretch selection; with Ctrl to scale uniformly; " +"with Shift to scale around rotation center" +msgstr "" + +#: ../src/seltrans-handles.cpp:10 +msgid "" +"Scale selection; with Ctrl to scale uniformly; with Shift to scale around rotation center" +msgstr "" + +#: ../src/seltrans-handles.cpp:11 +msgid "" +"Skew selection; with Ctrl to snap angle; with Shift to " +"skew around the opposite side" +msgstr "" + +#: ../src/seltrans-handles.cpp:12 +msgid "" +"Rotate selection; with Ctrl to snap angle; with Shift " +"to rotate around the opposite corner" +msgstr "" + +#: ../src/seltrans-handles.cpp:13 +msgid "" +"Center of rotation and skewing: drag to reposition; scaling with " +"Shift also uses this center" +msgstr "" + +#: ../src/shortcuts.cpp:226 #, c-format msgid "Keyboard directory (%s) is unavailable." msgstr "" -#: ../src/shortcuts.cpp:369 +#: ../src/shortcuts.cpp:370 msgid "Select a file to import" msgstr "" @@ -12457,19 +12300,19 @@ msgstr "" msgid "Link without URI" msgstr "" -#: ../src/sp-ellipse.cpp:452 ../src/sp-ellipse.cpp:775 +#: ../src/sp-ellipse.cpp:457 ../src/sp-ellipse.cpp:780 msgid "Ellipse" msgstr "" -#: ../src/sp-ellipse.cpp:566 +#: ../src/sp-ellipse.cpp:571 msgid "Circle" msgstr "" -#: ../src/sp-ellipse.cpp:770 +#: ../src/sp-ellipse.cpp:775 msgid "Segment" msgstr "" -#: ../src/sp-ellipse.cpp:772 +#: ../src/sp-ellipse.cpp:777 msgid "Arc" msgstr "" @@ -12488,51 +12331,51 @@ msgstr "" msgid "Flow excluded region" msgstr "" -#: ../src/sp-guide.cpp:290 +#: ../src/sp-guide.cpp:289 msgid "Create Guides Around the Page" msgstr "" -#: ../src/sp-guide.cpp:302 ../src/verbs.cpp:2415 +#: ../src/sp-guide.cpp:301 ../src/verbs.cpp:2467 msgid "Delete All Guides" msgstr "" #. Guide has probably been deleted and no longer has an attached namedview. -#: ../src/sp-guide.cpp:462 +#: ../src/sp-guide.cpp:461 #, c-format msgid "Deleted" msgstr "" -#: ../src/sp-guide.cpp:471 +#: ../src/sp-guide.cpp:470 msgid "" "Shift+drag to rotate, Ctrl+drag to move origin, Del to " "delete" msgstr "" -#: ../src/sp-guide.cpp:475 +#: ../src/sp-guide.cpp:474 #, c-format msgid "vertical, at %s" msgstr "" -#: ../src/sp-guide.cpp:478 +#: ../src/sp-guide.cpp:477 #, c-format msgid "horizontal, at %s" msgstr "" -#: ../src/sp-guide.cpp:483 +#: ../src/sp-guide.cpp:482 #, c-format msgid "at %d degrees, through (%s,%s)" msgstr "" -#: ../src/sp-image.cpp:1068 +#: ../src/sp-image.cpp:1069 msgid "embedded" msgstr "" -#: ../src/sp-image.cpp:1076 +#: ../src/sp-image.cpp:1077 #, c-format msgid "Image with bad reference: %s" msgstr "" -#: ../src/sp-image.cpp:1077 +#: ../src/sp-image.cpp:1078 #, c-format msgid "Image %d × %d: %s" msgstr "" @@ -12544,7 +12387,7 @@ msgid_plural "Group of %d objects" msgstr[0] "" msgstr[1] "" -#: ../src/sp-item.cpp:977 ../src/verbs.cpp:212 +#: ../src/sp-item.cpp:977 ../src/verbs.cpp:213 msgid "Object" msgstr "" @@ -12644,16 +12487,16 @@ msgstr[0] "" msgstr[1] "" #. TRANSLATORS: For description of font with no name. -#: ../src/sp-text.cpp:392 +#: ../src/sp-text.cpp:390 msgid "<no name found>" msgstr "" -#: ../src/sp-text.cpp:404 +#: ../src/sp-text.cpp:403 #, c-format msgid "Text on path%s (%s, %s)" msgstr "" -#: ../src/sp-text.cpp:405 +#: ../src/sp-text.cpp:404 #, c-format msgid "Text%s (%s, %s)" msgstr "" @@ -12675,31 +12518,31 @@ msgstr "" msgid "Text span" msgstr "" -#: ../src/sp-use.cpp:303 +#: ../src/sp-use.cpp:299 #, c-format msgid "'%s' Symbol" msgstr "" #. TRANSLATORS: Used for statusbar description for long chains: #. * "Clone of: Clone of: ... in Layer 1". -#: ../src/sp-use.cpp:311 +#: ../src/sp-use.cpp:307 msgid "..." msgstr "" -#: ../src/sp-use.cpp:319 +#: ../src/sp-use.cpp:315 #, c-format msgid "Clone of: %s" msgstr "" -#: ../src/sp-use.cpp:323 +#: ../src/sp-use.cpp:319 msgid "Orphaned clone" msgstr "" -#: ../src/spiral-context.cpp:304 +#: ../src/spiral-context.cpp:303 msgid "Ctrl: snap angle" msgstr "" -#: ../src/spiral-context.cpp:306 +#: ../src/spiral-context.cpp:305 msgid "Alt: lock spiral radius" msgstr "" @@ -12713,118 +12556,118 @@ msgstr "" msgid "Create spiral" msgstr "" -#: ../src/splivarot.cpp:68 ../src/splivarot.cpp:74 +#: ../src/splivarot.cpp:69 ../src/splivarot.cpp:75 msgid "Union" msgstr "" -#: ../src/splivarot.cpp:80 +#: ../src/splivarot.cpp:81 msgid "Intersection" msgstr "" -#: ../src/splivarot.cpp:86 ../src/splivarot.cpp:92 +#: ../src/splivarot.cpp:87 ../src/splivarot.cpp:93 msgid "Difference" msgstr "" -#: ../src/splivarot.cpp:98 +#: ../src/splivarot.cpp:99 msgid "Exclusion" msgstr "" -#: ../src/splivarot.cpp:103 +#: ../src/splivarot.cpp:104 msgid "Division" msgstr "" -#: ../src/splivarot.cpp:108 +#: ../src/splivarot.cpp:109 msgid "Cut path" msgstr "" -#: ../src/splivarot.cpp:123 +#: ../src/splivarot.cpp:134 msgid "Select at least 2 paths to perform a boolean operation." msgstr "" -#: ../src/splivarot.cpp:127 +#: ../src/splivarot.cpp:138 msgid "Select at least 1 path to perform a boolean union." msgstr "" -#: ../src/splivarot.cpp:133 +#: ../src/splivarot.cpp:144 msgid "" "Select exactly 2 paths to perform difference, division, or path cut." msgstr "" -#: ../src/splivarot.cpp:149 ../src/splivarot.cpp:164 +#: ../src/splivarot.cpp:160 ../src/splivarot.cpp:175 msgid "" "Unable to determine the z-order of the objects selected for " "difference, XOR, division, or path cut." msgstr "" -#: ../src/splivarot.cpp:194 +#: ../src/splivarot.cpp:205 msgid "" "One of the objects is not a path, cannot perform boolean operation." msgstr "" -#: ../src/splivarot.cpp:918 +#: ../src/splivarot.cpp:954 msgid "Select stroked path(s) to convert stroke to path." msgstr "" -#: ../src/splivarot.cpp:1271 +#: ../src/splivarot.cpp:1307 msgid "Convert stroke to path" msgstr "" #. TRANSLATORS: "to outline" means "to convert stroke to path" -#: ../src/splivarot.cpp:1274 +#: ../src/splivarot.cpp:1310 msgid "No stroked paths in the selection." msgstr "" -#: ../src/splivarot.cpp:1345 +#: ../src/splivarot.cpp:1381 msgid "Selected object is not a path, cannot inset/outset." msgstr "" -#: ../src/splivarot.cpp:1441 ../src/splivarot.cpp:1506 +#: ../src/splivarot.cpp:1477 ../src/splivarot.cpp:1542 msgid "Create linked offset" msgstr "" -#: ../src/splivarot.cpp:1442 ../src/splivarot.cpp:1507 +#: ../src/splivarot.cpp:1478 ../src/splivarot.cpp:1543 msgid "Create dynamic offset" msgstr "" -#: ../src/splivarot.cpp:1532 +#: ../src/splivarot.cpp:1568 msgid "Select path(s) to inset/outset." msgstr "" -#: ../src/splivarot.cpp:1745 +#: ../src/splivarot.cpp:1781 msgid "Outset path" msgstr "" -#: ../src/splivarot.cpp:1745 +#: ../src/splivarot.cpp:1781 msgid "Inset path" msgstr "" -#: ../src/splivarot.cpp:1747 +#: ../src/splivarot.cpp:1783 msgid "No paths to inset/outset in the selection." msgstr "" -#: ../src/splivarot.cpp:1909 +#: ../src/splivarot.cpp:1945 msgid "Simplifying paths (separately):" msgstr "" -#: ../src/splivarot.cpp:1911 +#: ../src/splivarot.cpp:1947 msgid "Simplifying paths:" msgstr "" -#: ../src/splivarot.cpp:1948 +#: ../src/splivarot.cpp:1984 #, c-format msgid "%s %d of %d paths simplified..." msgstr "" -#: ../src/splivarot.cpp:1960 +#: ../src/splivarot.cpp:1996 #, c-format msgid "%d paths simplified." msgstr "" -#: ../src/splivarot.cpp:1974 +#: ../src/splivarot.cpp:2010 msgid "Select path(s) to simplify." msgstr "" -#: ../src/splivarot.cpp:1990 +#: ../src/splivarot.cpp:2026 msgid "No paths to simplify in the selection." msgstr "" @@ -12858,11 +12701,11 @@ msgstr "" msgid "Nothing selected! Select objects to spray." msgstr "" -#: ../src/spray-context.cpp:745 ../src/widgets/spray-toolbar.cpp:182 +#: ../src/spray-context.cpp:745 ../src/widgets/spray-toolbar.cpp:178 msgid "Spray with copies" msgstr "" -#: ../src/spray-context.cpp:749 ../src/widgets/spray-toolbar.cpp:189 +#: ../src/spray-context.cpp:749 ../src/widgets/spray-toolbar.cpp:185 msgid "Spray with clones" msgstr "" @@ -12870,7 +12713,7 @@ msgstr "" msgid "Spray in single path" msgstr "" -#: ../src/star-context.cpp:320 +#: ../src/star-context.cpp:319 msgid "Ctrl: snap angle; keep rays radial" msgstr "" @@ -12910,7 +12753,7 @@ msgstr "" msgid "The flowed text(s) must be visible in order to be put on a path." msgstr "" -#: ../src/text-chemistry.cpp:183 ../src/verbs.cpp:2435 +#: ../src/text-chemistry.cpp:183 ../src/verbs.cpp:2489 msgid "Put text on path" msgstr "" @@ -12922,7 +12765,7 @@ msgstr "" msgid "No texts-on-paths in the selection." msgstr "" -#: ../src/text-chemistry.cpp:219 ../src/verbs.cpp:2437 +#: ../src/text-chemistry.cpp:219 ../src/verbs.cpp:2491 msgid "Remove text from path" msgstr "" @@ -12968,146 +12811,146 @@ msgstr "" msgid "No flowed text(s) to convert in the selection." msgstr "" -#: ../src/text-context.cpp:426 +#: ../src/text-context.cpp:425 msgid "Click to edit the text, drag to select part of the text." msgstr "" -#: ../src/text-context.cpp:428 +#: ../src/text-context.cpp:427 msgid "" "Click to edit the flowed text, drag to select part of the text." msgstr "" -#: ../src/text-context.cpp:482 +#: ../src/text-context.cpp:481 msgid "Create text" msgstr "" -#: ../src/text-context.cpp:507 +#: ../src/text-context.cpp:506 msgid "Non-printable character" msgstr "" -#: ../src/text-context.cpp:522 +#: ../src/text-context.cpp:521 msgid "Insert Unicode character" msgstr "" -#: ../src/text-context.cpp:557 +#: ../src/text-context.cpp:556 #, c-format msgid "Unicode (Enter to finish): %s: %s" msgstr "" -#: ../src/text-context.cpp:559 ../src/text-context.cpp:868 +#: ../src/text-context.cpp:558 ../src/text-context.cpp:869 msgid "Unicode (Enter to finish): " msgstr "" -#: ../src/text-context.cpp:645 +#: ../src/text-context.cpp:646 #, c-format msgid "Flowed text frame: %s × %s" msgstr "" -#: ../src/text-context.cpp:702 +#: ../src/text-context.cpp:703 msgid "Type text; Enter to start new line." msgstr "" -#: ../src/text-context.cpp:713 +#: ../src/text-context.cpp:714 msgid "Flowed text is created." msgstr "" -#: ../src/text-context.cpp:715 +#: ../src/text-context.cpp:716 msgid "Create flowed text" msgstr "" -#: ../src/text-context.cpp:717 +#: ../src/text-context.cpp:718 msgid "" "The frame is too small for the current font size. Flowed text not " "created." msgstr "" -#: ../src/text-context.cpp:853 +#: ../src/text-context.cpp:854 msgid "No-break space" msgstr "" -#: ../src/text-context.cpp:855 +#: ../src/text-context.cpp:856 msgid "Insert no-break space" msgstr "" -#: ../src/text-context.cpp:892 +#: ../src/text-context.cpp:893 msgid "Make bold" msgstr "" -#: ../src/text-context.cpp:910 +#: ../src/text-context.cpp:911 msgid "Make italic" msgstr "" -#: ../src/text-context.cpp:949 +#: ../src/text-context.cpp:950 msgid "New line" msgstr "" -#: ../src/text-context.cpp:991 +#: ../src/text-context.cpp:992 msgid "Backspace" msgstr "" -#: ../src/text-context.cpp:1047 +#: ../src/text-context.cpp:1048 msgid "Kern to the left" msgstr "" -#: ../src/text-context.cpp:1072 +#: ../src/text-context.cpp:1073 msgid "Kern to the right" msgstr "" -#: ../src/text-context.cpp:1097 +#: ../src/text-context.cpp:1098 msgid "Kern up" msgstr "" -#: ../src/text-context.cpp:1122 +#: ../src/text-context.cpp:1123 msgid "Kern down" msgstr "" -#: ../src/text-context.cpp:1198 +#: ../src/text-context.cpp:1199 msgid "Rotate counterclockwise" msgstr "" -#: ../src/text-context.cpp:1219 +#: ../src/text-context.cpp:1220 msgid "Rotate clockwise" msgstr "" -#: ../src/text-context.cpp:1236 +#: ../src/text-context.cpp:1237 msgid "Contract line spacing" msgstr "" -#: ../src/text-context.cpp:1243 +#: ../src/text-context.cpp:1244 msgid "Contract letter spacing" msgstr "" -#: ../src/text-context.cpp:1261 +#: ../src/text-context.cpp:1262 msgid "Expand line spacing" msgstr "" -#: ../src/text-context.cpp:1268 +#: ../src/text-context.cpp:1269 msgid "Expand letter spacing" msgstr "" -#: ../src/text-context.cpp:1396 +#: ../src/text-context.cpp:1397 msgid "Paste text" msgstr "" -#: ../src/text-context.cpp:1647 +#: ../src/text-context.cpp:1648 #, c-format msgid "" "Type or edit flowed text (%d characters%s); Enter to start new " "paragraph." msgstr "" -#: ../src/text-context.cpp:1649 +#: ../src/text-context.cpp:1650 #, c-format msgid "Type or edit text (%d characters%s); Enter to start new line." msgstr "" -#: ../src/text-context.cpp:1657 ../src/tools-switch.cpp:201 +#: ../src/text-context.cpp:1658 ../src/tools-switch.cpp:201 msgid "" "Click to select or create text, drag to create flowed text; " "then type." msgstr "" -#: ../src/text-context.cpp:1759 +#: ../src/text-context.cpp:1760 msgid "Type text" msgstr "" @@ -13470,250 +13313,250 @@ msgstr "" msgid "translator-credits" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:219 -#: ../src/ui/dialog/align-and-distribute.cpp:896 +#: ../src/ui/dialog/align-and-distribute.cpp:170 +#: ../src/ui/dialog/align-and-distribute.cpp:845 msgid "Align" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:391 -#: ../src/ui/dialog/align-and-distribute.cpp:897 +#: ../src/ui/dialog/align-and-distribute.cpp:340 +#: ../src/ui/dialog/align-and-distribute.cpp:846 msgid "Distribute" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:464 +#: ../src/ui/dialog/align-and-distribute.cpp:413 msgid "Minimum horizontal gap (in px units) between bounding boxes" msgstr "" #. TRANSLATORS: "H:" stands for horizontal gap -#: ../src/ui/dialog/align-and-distribute.cpp:466 +#: ../src/ui/dialog/align-and-distribute.cpp:415 msgctxt "Gap" msgid "_H:" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:474 +#: ../src/ui/dialog/align-and-distribute.cpp:423 msgid "Minimum vertical gap (in px units) between bounding boxes" msgstr "" #. TRANSLATORS: Vertical gap -#: ../src/ui/dialog/align-and-distribute.cpp:476 +#: ../src/ui/dialog/align-and-distribute.cpp:425 msgctxt "Gap" msgid "_V:" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:512 -#: ../src/ui/dialog/align-and-distribute.cpp:899 -#: ../src/widgets/connector-toolbar.cpp:427 +#: ../src/ui/dialog/align-and-distribute.cpp:461 +#: ../src/ui/dialog/align-and-distribute.cpp:848 +#: ../src/widgets/connector-toolbar.cpp:423 msgid "Remove overlaps" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:543 -#: ../src/widgets/connector-toolbar.cpp:256 +#: ../src/ui/dialog/align-and-distribute.cpp:492 +#: ../src/widgets/connector-toolbar.cpp:252 msgid "Arrange connector network" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:636 +#: ../src/ui/dialog/align-and-distribute.cpp:585 msgid "Exchange Positions" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:670 +#: ../src/ui/dialog/align-and-distribute.cpp:619 msgid "Unclump" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:742 +#: ../src/ui/dialog/align-and-distribute.cpp:691 msgid "Randomize positions" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:845 +#: ../src/ui/dialog/align-and-distribute.cpp:794 msgid "Distribute text baselines" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:868 +#: ../src/ui/dialog/align-and-distribute.cpp:817 msgid "Align text baselines" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:898 +#: ../src/ui/dialog/align-and-distribute.cpp:847 msgid "Rearrange" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:900 -#: ../src/widgets/toolbox.cpp:1728 +#: ../src/ui/dialog/align-and-distribute.cpp:849 +#: ../src/widgets/toolbox.cpp:1722 msgid "Nodes" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:914 +#: ../src/ui/dialog/align-and-distribute.cpp:863 msgid "Relative to: " msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:915 +#: ../src/ui/dialog/align-and-distribute.cpp:864 msgid "_Treat selection as group: " msgstr "" #. Align -#: ../src/ui/dialog/align-and-distribute.cpp:921 ../src/verbs.cpp:2866 -#: ../src/verbs.cpp:2867 +#: ../src/ui/dialog/align-and-distribute.cpp:870 ../src/verbs.cpp:2928 +#: ../src/verbs.cpp:2929 msgid "Align right edges of objects to the left edge of the anchor" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:924 ../src/verbs.cpp:2868 -#: ../src/verbs.cpp:2869 +#: ../src/ui/dialog/align-and-distribute.cpp:873 ../src/verbs.cpp:2930 +#: ../src/verbs.cpp:2931 msgid "Align left edges" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:927 ../src/verbs.cpp:2870 -#: ../src/verbs.cpp:2871 +#: ../src/ui/dialog/align-and-distribute.cpp:876 ../src/verbs.cpp:2932 +#: ../src/verbs.cpp:2933 msgid "Center on vertical axis" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:930 ../src/verbs.cpp:2872 -#: ../src/verbs.cpp:2873 +#: ../src/ui/dialog/align-and-distribute.cpp:879 ../src/verbs.cpp:2934 +#: ../src/verbs.cpp:2935 msgid "Align right sides" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:933 ../src/verbs.cpp:2874 -#: ../src/verbs.cpp:2875 +#: ../src/ui/dialog/align-and-distribute.cpp:882 ../src/verbs.cpp:2936 +#: ../src/verbs.cpp:2937 msgid "Align left edges of objects to the right edge of the anchor" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:936 ../src/verbs.cpp:2876 -#: ../src/verbs.cpp:2877 +#: ../src/ui/dialog/align-and-distribute.cpp:885 ../src/verbs.cpp:2938 +#: ../src/verbs.cpp:2939 msgid "Align bottom edges of objects to the top edge of the anchor" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:939 ../src/verbs.cpp:2878 -#: ../src/verbs.cpp:2879 +#: ../src/ui/dialog/align-and-distribute.cpp:888 ../src/verbs.cpp:2940 +#: ../src/verbs.cpp:2941 msgid "Align top edges" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:942 ../src/verbs.cpp:2880 -#: ../src/verbs.cpp:2881 +#: ../src/ui/dialog/align-and-distribute.cpp:891 ../src/verbs.cpp:2942 +#: ../src/verbs.cpp:2943 msgid "Center on horizontal axis" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:945 ../src/verbs.cpp:2882 -#: ../src/verbs.cpp:2883 +#: ../src/ui/dialog/align-and-distribute.cpp:894 ../src/verbs.cpp:2944 +#: ../src/verbs.cpp:2945 msgid "Align bottom edges" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:948 ../src/verbs.cpp:2884 -#: ../src/verbs.cpp:2885 +#: ../src/ui/dialog/align-and-distribute.cpp:897 ../src/verbs.cpp:2946 +#: ../src/verbs.cpp:2947 msgid "Align top edges of objects to the bottom edge of the anchor" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:953 +#: ../src/ui/dialog/align-and-distribute.cpp:902 msgid "Align baseline anchors of texts horizontally" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:956 +#: ../src/ui/dialog/align-and-distribute.cpp:905 msgid "Align baselines of texts" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:961 +#: ../src/ui/dialog/align-and-distribute.cpp:910 msgid "Make horizontal gaps between objects equal" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:965 +#: ../src/ui/dialog/align-and-distribute.cpp:914 msgid "Distribute left edges equidistantly" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:968 +#: ../src/ui/dialog/align-and-distribute.cpp:917 msgid "Distribute centers equidistantly horizontally" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:971 +#: ../src/ui/dialog/align-and-distribute.cpp:920 msgid "Distribute right edges equidistantly" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:975 +#: ../src/ui/dialog/align-and-distribute.cpp:924 msgid "Make vertical gaps between objects equal" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:979 +#: ../src/ui/dialog/align-and-distribute.cpp:928 msgid "Distribute top edges equidistantly" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:982 +#: ../src/ui/dialog/align-and-distribute.cpp:931 msgid "Distribute centers equidistantly vertically" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:985 +#: ../src/ui/dialog/align-and-distribute.cpp:934 msgid "Distribute bottom edges equidistantly" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:990 +#: ../src/ui/dialog/align-and-distribute.cpp:939 msgid "Distribute baseline anchors of texts horizontally" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:993 +#: ../src/ui/dialog/align-and-distribute.cpp:942 msgid "Distribute baselines of texts vertically" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:999 -#: ../src/widgets/connector-toolbar.cpp:389 +#: ../src/ui/dialog/align-and-distribute.cpp:948 +#: ../src/widgets/connector-toolbar.cpp:385 msgid "Nicely arrange selected connector network" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:1002 +#: ../src/ui/dialog/align-and-distribute.cpp:951 msgid "Exchange positions of selected objects - selection order" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:1005 +#: ../src/ui/dialog/align-and-distribute.cpp:954 msgid "Exchange positions of selected objects - stacking order" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:1008 +#: ../src/ui/dialog/align-and-distribute.cpp:957 msgid "Exchange positions of selected objects - clockwise rotate" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:1013 +#: ../src/ui/dialog/align-and-distribute.cpp:962 msgid "Randomize centers in both dimensions" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:1016 +#: ../src/ui/dialog/align-and-distribute.cpp:965 msgid "Unclump objects: try to equalize edge-to-edge distances" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:1021 +#: ../src/ui/dialog/align-and-distribute.cpp:970 msgid "" "Move objects as little as possible so that their bounding boxes do not " "overlap" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:1029 +#: ../src/ui/dialog/align-and-distribute.cpp:978 msgid "Align selected nodes to a common horizontal line" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:1032 +#: ../src/ui/dialog/align-and-distribute.cpp:981 msgid "Align selected nodes to a common vertical line" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:1035 +#: ../src/ui/dialog/align-and-distribute.cpp:984 msgid "Distribute selected nodes horizontally" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:1038 +#: ../src/ui/dialog/align-and-distribute.cpp:987 msgid "Distribute selected nodes vertically" msgstr "" #. Rest of the widgetry -#: ../src/ui/dialog/align-and-distribute.cpp:1043 +#: ../src/ui/dialog/align-and-distribute.cpp:992 msgid "Last selected" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:1044 +#: ../src/ui/dialog/align-and-distribute.cpp:993 msgid "First selected" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:1045 +#: ../src/ui/dialog/align-and-distribute.cpp:994 msgid "Biggest object" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:1046 +#: ../src/ui/dialog/align-and-distribute.cpp:995 msgid "Smallest object" msgstr "" -#: ../src/ui/dialog/align-and-distribute.cpp:1049 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1555 ../src/verbs.cpp:174 -#: ../src/widgets/desktop-widget.cpp:2004 +#: ../src/ui/dialog/align-and-distribute.cpp:998 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1555 ../src/verbs.cpp:175 +#: ../src/widgets/desktop-widget.cpp:2008 #: ../share/extensions/printing_marks.inx.h:18 msgid "Selection" msgstr "" @@ -13774,7 +13617,6 @@ msgid "Messages" msgstr "" #: ../src/ui/dialog/debug.cpp:87 ../src/ui/dialog/messages.cpp:47 -#: ../src/ui/dialog/scriptdialog.cpp:182 msgid "_Clear" msgstr "" @@ -13787,283 +13629,283 @@ msgid "Release log messages" msgstr "" #: ../src/ui/dialog/document-metadata.cpp:88 -#: ../src/ui/dialog/document-properties.cpp:152 +#: ../src/ui/dialog/document-properties.cpp:151 msgid "Metadata" msgstr "" #: ../src/ui/dialog/document-metadata.cpp:89 -#: ../src/ui/dialog/document-properties.cpp:153 +#: ../src/ui/dialog/document-properties.cpp:152 msgid "License" msgstr "" #: ../src/ui/dialog/document-metadata.cpp:126 -#: ../src/ui/dialog/document-properties.cpp:960 +#: ../src/ui/dialog/document-properties.cpp:959 msgid "Dublin Core Entities" msgstr "" #: ../src/ui/dialog/document-metadata.cpp:168 -#: ../src/ui/dialog/document-properties.cpp:1022 +#: ../src/ui/dialog/document-properties.cpp:1021 msgid "License" msgstr "" #. --------------------------------------------------------------- -#: ../src/ui/dialog/document-properties.cpp:105 +#: ../src/ui/dialog/document-properties.cpp:104 msgid "Show page _border" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:105 +#: ../src/ui/dialog/document-properties.cpp:104 msgid "If set, rectangular page border is shown" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:106 +#: ../src/ui/dialog/document-properties.cpp:105 msgid "Border on _top of drawing" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:106 +#: ../src/ui/dialog/document-properties.cpp:105 msgid "If set, border is always on top of the drawing" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:107 +#: ../src/ui/dialog/document-properties.cpp:106 msgid "_Show border shadow" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:107 +#: ../src/ui/dialog/document-properties.cpp:106 msgid "If set, page border shows a shadow on its right and lower side" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:108 +#: ../src/ui/dialog/document-properties.cpp:107 msgid "Back_ground color:" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:108 +#: ../src/ui/dialog/document-properties.cpp:107 msgid "" "Color of the page background. Note: transparency setting ignored while " "editing but used when exporting to bitmap." msgstr "" -#: ../src/ui/dialog/document-properties.cpp:109 +#: ../src/ui/dialog/document-properties.cpp:108 msgid "Border _color:" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:109 +#: ../src/ui/dialog/document-properties.cpp:108 msgid "Page border color" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:109 +#: ../src/ui/dialog/document-properties.cpp:108 msgid "Color of the page border" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:110 +#: ../src/ui/dialog/document-properties.cpp:109 msgid "Default _units:" msgstr "" #. --------------------------------------------------------------- #. General snap options -#: ../src/ui/dialog/document-properties.cpp:114 +#: ../src/ui/dialog/document-properties.cpp:113 msgid "Show _guides" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:114 +#: ../src/ui/dialog/document-properties.cpp:113 msgid "Show or hide guides" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:115 +#: ../src/ui/dialog/document-properties.cpp:114 msgid "Guide co_lor:" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:115 +#: ../src/ui/dialog/document-properties.cpp:114 msgid "Guideline color" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:115 +#: ../src/ui/dialog/document-properties.cpp:114 msgid "Color of guidelines" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:116 +#: ../src/ui/dialog/document-properties.cpp:115 msgid "_Highlight color:" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:116 +#: ../src/ui/dialog/document-properties.cpp:115 msgid "Highlighted guideline color" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:116 +#: ../src/ui/dialog/document-properties.cpp:115 msgid "Color of a guideline when it is under mouse" msgstr "" #. --------------------------------------------------------------- -#: ../src/ui/dialog/document-properties.cpp:118 +#: ../src/ui/dialog/document-properties.cpp:117 msgid "Snap _distance" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:118 +#: ../src/ui/dialog/document-properties.cpp:117 msgid "Snap only when _closer than:" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:118 -#: ../src/ui/dialog/document-properties.cpp:123 -#: ../src/ui/dialog/document-properties.cpp:128 +#: ../src/ui/dialog/document-properties.cpp:117 +#: ../src/ui/dialog/document-properties.cpp:122 +#: ../src/ui/dialog/document-properties.cpp:127 msgid "Always snap" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:119 +#: ../src/ui/dialog/document-properties.cpp:118 msgid "Snapping distance, in screen pixels, for snapping to objects" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:119 +#: ../src/ui/dialog/document-properties.cpp:118 msgid "Always snap to objects, regardless of their distance" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:120 +#: ../src/ui/dialog/document-properties.cpp:119 msgid "" "If set, objects only snap to another object when it's within the range " "specified below" msgstr "" #. Options for snapping to grids -#: ../src/ui/dialog/document-properties.cpp:123 +#: ../src/ui/dialog/document-properties.cpp:122 msgid "Snap d_istance" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:123 +#: ../src/ui/dialog/document-properties.cpp:122 msgid "Snap only when c_loser than:" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:124 +#: ../src/ui/dialog/document-properties.cpp:123 msgid "Snapping distance, in screen pixels, for snapping to grid" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:124 +#: ../src/ui/dialog/document-properties.cpp:123 msgid "Always snap to grids, regardless of the distance" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:125 +#: ../src/ui/dialog/document-properties.cpp:124 msgid "" "If set, objects only snap to a grid line when it's within the range " "specified below" msgstr "" #. Options for snapping to guides -#: ../src/ui/dialog/document-properties.cpp:128 +#: ../src/ui/dialog/document-properties.cpp:127 msgid "Snap dist_ance" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:128 +#: ../src/ui/dialog/document-properties.cpp:127 msgid "Snap only when close_r than:" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:129 +#: ../src/ui/dialog/document-properties.cpp:128 msgid "Snapping distance, in screen pixels, for snapping to guides" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:129 +#: ../src/ui/dialog/document-properties.cpp:128 msgid "Always snap to guides, regardless of the distance" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:130 +#: ../src/ui/dialog/document-properties.cpp:129 msgid "" "If set, objects only snap to a guide when it's within the range specified " "below" msgstr "" #. --------------------------------------------------------------- -#: ../src/ui/dialog/document-properties.cpp:133 +#: ../src/ui/dialog/document-properties.cpp:132 msgid "Snap to clip paths" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:133 +#: ../src/ui/dialog/document-properties.cpp:132 msgid "When snapping to paths, then also try snapping to clip paths" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:134 +#: ../src/ui/dialog/document-properties.cpp:133 msgid "Snap to mask paths" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:134 +#: ../src/ui/dialog/document-properties.cpp:133 msgid "When snapping to paths, then also try snapping to mask paths" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:135 +#: ../src/ui/dialog/document-properties.cpp:134 msgid "Snap perpendicularly" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:135 +#: ../src/ui/dialog/document-properties.cpp:134 msgid "" "When snapping to paths or guides, then also try snapping perpendicularly" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:136 +#: ../src/ui/dialog/document-properties.cpp:135 msgid "Snap tangentially" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:136 +#: ../src/ui/dialog/document-properties.cpp:135 msgid "When snapping to paths or guides, then also try snapping tangentially" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:139 +#: ../src/ui/dialog/document-properties.cpp:138 msgctxt "Grid" msgid "_New" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:139 +#: ../src/ui/dialog/document-properties.cpp:138 msgid "Create new grid." msgstr "" -#: ../src/ui/dialog/document-properties.cpp:140 +#: ../src/ui/dialog/document-properties.cpp:139 msgctxt "Grid" msgid "_Remove" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:140 +#: ../src/ui/dialog/document-properties.cpp:139 msgid "Remove selected grid." msgstr "" -#: ../src/ui/dialog/document-properties.cpp:147 -#: ../src/widgets/toolbox.cpp:1835 +#: ../src/ui/dialog/document-properties.cpp:146 +#: ../src/widgets/toolbox.cpp:1829 msgid "Guides" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:149 ../src/verbs.cpp:2685 +#: ../src/ui/dialog/document-properties.cpp:148 ../src/verbs.cpp:2739 msgid "Snap" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:151 +#: ../src/ui/dialog/document-properties.cpp:150 msgid "Scripting" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:311 +#: ../src/ui/dialog/document-properties.cpp:310 msgid "General" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:313 +#: ../src/ui/dialog/document-properties.cpp:312 msgid "Color" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:315 +#: ../src/ui/dialog/document-properties.cpp:314 msgid "Border" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:317 +#: ../src/ui/dialog/document-properties.cpp:316 msgid "Page Size" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:350 +#: ../src/ui/dialog/document-properties.cpp:349 msgid "Guides" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:368 +#: ../src/ui/dialog/document-properties.cpp:367 msgid "Snap to objects" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:370 +#: ../src/ui/dialog/document-properties.cpp:369 msgid "Snap to grids" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:372 +#: ../src/ui/dialog/document-properties.cpp:371 msgid "Snap to guides" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:374 +#: ../src/ui/dialog/document-properties.cpp:373 msgid "Miscellaneous" msgstr "" @@ -14071,131 +13913,131 @@ msgstr "" #. Inkscape::GC::release(defsRepr); #. inform the document, so we can undo #. Color Management -#: ../src/ui/dialog/document-properties.cpp:487 ../src/verbs.cpp:2860 +#: ../src/ui/dialog/document-properties.cpp:486 ../src/verbs.cpp:2912 msgid "Link Color Profile" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:588 +#: ../src/ui/dialog/document-properties.cpp:587 msgid "Remove linked color profile" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:601 +#: ../src/ui/dialog/document-properties.cpp:600 msgid "Linked Color Profiles:" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:603 +#: ../src/ui/dialog/document-properties.cpp:602 msgid "Available Color Profiles:" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:605 +#: ../src/ui/dialog/document-properties.cpp:604 msgid "Link Profile" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:608 +#: ../src/ui/dialog/document-properties.cpp:607 msgid "Unlink Profile" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:686 +#: ../src/ui/dialog/document-properties.cpp:685 msgid "Profile Name" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:722 +#: ../src/ui/dialog/document-properties.cpp:721 msgid "External scripts" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:723 +#: ../src/ui/dialog/document-properties.cpp:722 msgid "Embedded scripts" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:728 +#: ../src/ui/dialog/document-properties.cpp:727 msgid "External script files:" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:730 +#: ../src/ui/dialog/document-properties.cpp:729 msgid "Add the current file name or browse for a file" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:733 -#: ../src/ui/dialog/document-properties.cpp:811 -#: ../src/ui/widget/selected-style.cpp:334 +#: ../src/ui/dialog/document-properties.cpp:732 +#: ../src/ui/dialog/document-properties.cpp:810 +#: ../src/ui/widget/selected-style.cpp:339 msgid "Remove" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:798 +#: ../src/ui/dialog/document-properties.cpp:797 msgid "Filename" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:806 +#: ../src/ui/dialog/document-properties.cpp:805 msgid "Embedded script files:" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:808 +#: ../src/ui/dialog/document-properties.cpp:807 msgid "New" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:875 +#: ../src/ui/dialog/document-properties.cpp:874 msgid "Script id" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:881 +#: ../src/ui/dialog/document-properties.cpp:880 msgid "Content:" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:998 +#: ../src/ui/dialog/document-properties.cpp:997 msgid "_Save as default" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:999 +#: ../src/ui/dialog/document-properties.cpp:998 msgid "Save this metadata as the default metadata" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:1000 +#: ../src/ui/dialog/document-properties.cpp:999 msgid "Use _default" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:1001 +#: ../src/ui/dialog/document-properties.cpp:1000 msgid "Use the previously saved default metadata here" msgstr "" #. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1074 +#: ../src/ui/dialog/document-properties.cpp:1073 msgid "Add external script..." msgstr "" -#: ../src/ui/dialog/document-properties.cpp:1113 +#: ../src/ui/dialog/document-properties.cpp:1112 msgid "Select a script to load" msgstr "" #. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1141 +#: ../src/ui/dialog/document-properties.cpp:1140 msgid "Add embedded script..." msgstr "" #. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1172 +#: ../src/ui/dialog/document-properties.cpp:1171 msgid "Remove external script" msgstr "" #. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1206 +#: ../src/ui/dialog/document-properties.cpp:1205 msgid "Remove embedded script" msgstr "" #. TODO repr->set_content(_EmbeddedContent.get_buffer()->get_text()); #. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1306 +#: ../src/ui/dialog/document-properties.cpp:1305 msgid "Edit embedded script" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:1389 +#: ../src/ui/dialog/document-properties.cpp:1388 msgid "Creation" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:1390 +#: ../src/ui/dialog/document-properties.cpp:1389 msgid "Defined grids" msgstr "" -#: ../src/ui/dialog/document-properties.cpp:1618 +#: ../src/ui/dialog/document-properties.cpp:1617 msgid "Remove grid" msgstr "" @@ -14203,8 +14045,8 @@ msgstr "" msgid "Information" msgstr "" -#: ../src/ui/dialog/extension-editor.cpp:82 ../src/verbs.cpp:289 -#: ../src/verbs.cpp:308 ../share/extensions/color_custom.inx.h:7 +#: ../src/ui/dialog/extension-editor.cpp:82 ../src/verbs.cpp:290 +#: ../src/verbs.cpp:309 ../share/extensions/color_custom.inx.h:7 #: ../share/extensions/color_HSL_adjust.inx.h:11 #: ../share/extensions/color_randomize.inx.h:6 #: ../share/extensions/dots.inx.h:7 @@ -14513,99 +14355,99 @@ msgstr "" msgid "_Filter" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1168 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1174 msgid "R_ename" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1298 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1304 msgid "Rename filter" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1335 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1348 msgid "Apply filter" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1405 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1418 msgid "filter" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1412 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1425 msgid "Add filter" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1464 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1477 msgid "Duplicate filter" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1563 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1576 msgid "_Effect" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1573 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1586 msgid "Connections" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1711 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1724 msgid "Remove filter primitive" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2299 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2312 msgid "Remove merge node" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2419 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2432 msgid "Reorder filter primitive" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2499 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2512 msgid "Add Effect:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2500 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2513 msgid "No effect selected" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2501 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2514 msgid "No filter selected" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2547 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2560 msgid "Effect parameters" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2548 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2561 msgid "Filter General Settings" msgstr "" #. default x: #. default y: -#: ../src/ui/dialog/filter-effects-dialog.cpp:2606 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2619 msgid "Coordinates:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2606 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2619 msgid "X coordinate of the left corners of filter effects region" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2606 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2619 msgid "Y coordinate of the upper corners of filter effects region" msgstr "" #. default width: #. default height: -#: ../src/ui/dialog/filter-effects-dialog.cpp:2607 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2620 msgid "Dimensions:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2607 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2620 msgid "Width of filter effects region" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2607 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2620 msgid "Height of filter effects region" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2613 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2626 msgid "" "Indicates the type of matrix operation. The keyword 'matrix' indicates that " "a full 5x4 matrix of values will be provided. The other keywords represent " @@ -14613,78 +14455,78 @@ msgid "" "performed without specifying a complete matrix." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2614 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2627 msgid "Value(s):" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2629 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2669 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2642 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2682 msgid "Operator:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2630 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 msgid "K1:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2630 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2631 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2632 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2633 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2645 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2646 msgid "" "If the arithmetic operation is chosen, each result pixel is computed using " "the formula k1*i1*i2 + k2*i1 + k3*i2 + k4 where i1 and i2 are the pixel " "values of the first and second inputs respectively." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2631 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 msgid "K2:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2632 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2645 msgid "K3:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2633 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2646 msgid "K4:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 msgid "Size:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 msgid "width of the convolve matrix" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 msgid "height of the convolve matrix" msgstr "" #. default x: #. default y: -#: ../src/ui/dialog/filter-effects-dialog.cpp:2637 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2650 #: ../src/ui/dialog/object-attributes.cpp:48 msgid "Target:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2637 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2650 msgid "" "X coordinate of the target point in the convolve matrix. The convolution is " "applied to pixels around this point." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2637 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2650 msgid "" "Y coordinate of the target point in the convolve matrix. The convolution is " "applied to pixels around this point." msgstr "" #. TRANSLATORS: for info on "Kernel", see http://en.wikipedia.org/wiki/Kernel_(matrix) -#: ../src/ui/dialog/filter-effects-dialog.cpp:2639 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2652 msgid "Kernel:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2639 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2652 msgid "" "This matrix describes the convolve operation that is applied to the input " "image in order to calculate the pixel colors at the output. Different " @@ -14694,11 +14536,11 @@ msgid "" "would lead to a common blur effect." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2641 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 msgid "Divisor:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2641 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 msgid "" "After applying the kernelMatrix to the input image to yield a number, that " "number is divided by divisor to yield the final destination color value. A " @@ -14706,189 +14548,189 @@ msgid "" "effect on the overall color intensity of the result." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2642 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 msgid "Bias:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2642 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 msgid "" "This value is added to each component. This is useful to define a constant " "value as the zero response of the filter." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2656 msgid "Edge Mode:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2656 msgid "" "Determines how to extend the input image as necessary with color values so " "that the matrix operations can be applied when the kernel is positioned at " "or near the edge of the input image." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2657 msgid "Preserve Alpha" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2657 msgid "If set, the alpha channel won't be altered by this filter primitive." msgstr "" #. default: white -#: ../src/ui/dialog/filter-effects-dialog.cpp:2647 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2660 msgid "Diffuse Color:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2647 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2680 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2660 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2693 msgid "Defines the color of the light source" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2648 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2681 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2661 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2694 msgid "Surface Scale:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2648 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2681 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2661 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2694 msgid "" "This value amplifies the heights of the bump map defined by the input alpha " "channel" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2682 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2662 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2695 msgid "Constant:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2682 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2662 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2695 msgid "This constant affects the Phong lighting model." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2650 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2684 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2663 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2697 msgid "Kernel Unit Length:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2667 msgid "This defines the intensity of the displacement effect." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2668 msgid "X displacement:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2668 msgid "Color component that controls the displacement in the X direction" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2656 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2669 msgid "Y displacement:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2656 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2669 msgid "Color component that controls the displacement in the Y direction" msgstr "" #. default: black -#: ../src/ui/dialog/filter-effects-dialog.cpp:2659 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2672 msgid "Flood Color:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2659 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2672 msgid "The whole filter region will be filled with this color." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2663 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 msgid "Standard Deviation:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2663 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 msgid "The standard deviation for the blur operation." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2669 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2682 msgid "" "Erode: performs \"thinning\" of input image.\n" "Dilate: performs \"fattenning\" of input image." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2673 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2686 msgid "Source of Image:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2689 msgid "Delta X:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2689 msgid "This is how far the input image gets shifted to the right" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2677 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2690 msgid "Delta Y:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2677 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2690 msgid "This is how far the input image gets shifted downwards" msgstr "" #. default: white -#: ../src/ui/dialog/filter-effects-dialog.cpp:2680 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2693 msgid "Specular Color:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2683 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2696 #: ../share/extensions/interp.inx.h:2 msgid "Exponent:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2683 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2696 msgid "Exponent for specular term, larger is more \"shiny\"." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2692 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2705 msgid "" "Indicates whether the filter primitive should perform a noise or turbulence " "function." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2693 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2706 msgid "Base Frequency:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2694 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2707 msgid "Octaves:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2695 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2708 msgid "Seed:" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2695 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2708 msgid "The starting number for the pseudo random number generator." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2707 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2720 msgid "Add filter primitive" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2724 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2737 msgid "" "The feBlend filter primitive provides 4 image blending modes: screen, " "multiply, darken and lighten." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2728 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2741 msgid "" "The feColorMatrix filter primitive applies a matrix transformation to " "color of each rendered pixel. This allows for effects like turning object to " "grayscale, modifying color saturation and changing color hue." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2732 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2745 msgid "" "The feComponentTransfer filter primitive manipulates the input's " "color components (red, green, blue, and alpha) according to particular " @@ -14896,7 +14738,7 @@ msgid "" "adjustment, color balance, and thresholding." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2736 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2749 msgid "" "The feComposite filter primitive composites two images using one of " "the Porter-Duff blending modes or the arithmetic mode described in SVG " @@ -14904,7 +14746,7 @@ msgid "" "between the corresponding pixel values of the images." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2740 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2753 msgid "" "The feConvolveMatrix lets you specify a Convolution to be applied on " "the image. Common effects created using convolution matrices are blur, " @@ -14913,7 +14755,7 @@ msgid "" "is faster and resolution-independent." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2744 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2757 msgid "" "The feDiffuseLighting and feSpecularLighting filter primitives create " "\"embossed\" shadings. The input's alpha channel is used to provide depth " @@ -14921,7 +14763,7 @@ msgid "" "opacity areas recede away from the viewer." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2748 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2761 msgid "" "The feDisplacementMap filter primitive displaces the pixels in the " "first input using the second input as a displacement map, that shows from " @@ -14929,26 +14771,26 @@ msgid "" "effects." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2752 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2765 msgid "" "The feFlood filter primitive fills the region with a given color and " "opacity. It is usually used as an input to other filters to apply color to " "a graphic." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2756 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2769 msgid "" "The feGaussianBlur filter primitive uniformly blurs its input. It is " "commonly used together with feOffset to create a drop shadow effect." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2760 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2773 msgid "" "The feImage filter primitive fills the region with an external image " "or another part of the document." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2764 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2777 msgid "" "The feMerge filter primitive composites several temporary images " "inside the filter primitive to a single image. It uses normal alpha " @@ -14956,21 +14798,21 @@ msgid "" "in 'normal' mode or several feComposite primitives in 'over' mode." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2768 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2781 msgid "" "The feMorphology filter primitive provides erode and dilate effects. " "For single-color objects erode makes the object thinner and dilate makes it " "thicker." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2772 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2785 msgid "" "The feOffset filter primitive offsets the image by an user-defined " "amount. For example, this is useful for drop shadows, where the shadow is in " "a slightly different position than the actual object." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2776 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2789 msgid "" "The feDiffuseLighting and feSpecularLighting filter primitives " "create \"embossed\" shadings. The input's alpha channel is used to provide " @@ -14978,23 +14820,23 @@ msgid "" "lower opacity areas recede away from the viewer." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2780 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2793 msgid "" "The feTile filter primitive tiles a region with its input graphic" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2784 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2797 msgid "" "The feTurbulence filter primitive renders Perlin noise. This kind of " "noise is useful in simulating several nature phenomena like clouds, fire and " "smoke and in generating complex textures like marble or granite." msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2803 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2816 msgid "Duplicate filter primitive" msgstr "" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2856 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2869 msgid "Set filter primitive attribute" msgstr "" @@ -15178,7 +15020,7 @@ msgstr "" msgid "Search spirals" msgstr "" -#: ../src/ui/dialog/find.cpp:102 ../src/widgets/toolbox.cpp:1736 +#: ../src/ui/dialog/find.cpp:102 ../src/widgets/toolbox.cpp:1730 msgid "Paths" msgstr "" @@ -16431,12 +16273,12 @@ msgstr "" #. Zoom #: ../src/ui/dialog/inkscape-preferences.cpp:376 -#: ../src/widgets/desktop-widget.cpp:631 +#: ../src/widgets/desktop-widget.cpp:635 msgid "Zoom" msgstr "" #. Measure -#: ../src/ui/dialog/inkscape-preferences.cpp:381 ../src/verbs.cpp:2619 +#: ../src/ui/dialog/inkscape-preferences.cpp:381 ../src/verbs.cpp:2673 msgctxt "ContextVerb" msgid "Measure" msgstr "" @@ -16491,7 +16333,7 @@ msgid "" msgstr "" #. Text -#: ../src/ui/dialog/inkscape-preferences.cpp:439 ../src/verbs.cpp:2611 +#: ../src/ui/dialog/inkscape-preferences.cpp:439 ../src/verbs.cpp:2665 msgctxt "ContextVerb" msgid "Text" msgstr "" @@ -16515,13 +16357,37 @@ msgid "" "on the system" msgstr "" -#. , _("Ex square"), _("Percent") -#. , SP_CSS_UNIT_EX, SP_CSS_UNIT_PERCENT -#: ../src/ui/dialog/inkscape-preferences.cpp:454 -msgid "Text units" +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Pixel" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:456 +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Pica" +msgstr "" + +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Millimeter" +msgstr "" + +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Centimeter" +msgstr "" + +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Inch" +msgstr "" + +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Em square" +msgstr "" + +#. , _("Ex square"), _("Percent") +#. , SP_CSS_UNIT_EX, SP_CSS_UNIT_PERCENT +#: ../src/ui/dialog/inkscape-preferences.cpp:454 +msgid "Text units" +msgstr "" + +#: ../src/ui/dialog/inkscape-preferences.cpp:456 msgid "Text size unit type:" msgstr "" @@ -16556,8 +16422,8 @@ msgstr "" #. Gradient #: ../src/ui/dialog/inkscape-preferences.cpp:478 -#: ../src/widgets/gradient-selector.cpp:150 -#: ../src/widgets/gradient-selector.cpp:302 +#: ../src/widgets/gradient-selector.cpp:151 +#: ../src/widgets/gradient-selector.cpp:303 msgid "Gradient" msgstr "" @@ -17325,9 +17191,9 @@ msgid "_Click/drag threshold:" msgstr "" #: ../src/ui/dialog/inkscape-preferences.cpp:852 -#: ../src/ui/dialog/inkscape-preferences.cpp:1190 #: ../src/ui/dialog/inkscape-preferences.cpp:1194 -#: ../src/ui/dialog/inkscape-preferences.cpp:1204 +#: ../src/ui/dialog/inkscape-preferences.cpp:1198 +#: ../src/ui/dialog/inkscape-preferences.cpp:1208 msgid "pixels" msgstr "" @@ -17405,41 +17271,57 @@ msgstr "" msgid "Path data" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:882 -msgid "Allow relative coordinates" +#: ../src/ui/dialog/inkscape-preferences.cpp:883 +msgid "Absolute" +msgstr "" + +#: ../src/ui/dialog/inkscape-preferences.cpp:883 +msgid "Relative" msgstr "" #: ../src/ui/dialog/inkscape-preferences.cpp:883 -msgid "If set, relative coordinates may be used in path data" +#: ../src/ui/dialog/inkscape-preferences.cpp:1173 +msgid "Optimized" +msgstr "" + +#: ../src/ui/dialog/inkscape-preferences.cpp:887 +msgid "Path string format" +msgstr "" + +#: ../src/ui/dialog/inkscape-preferences.cpp:887 +msgid "" +"Path data should be written: only with absolute coordinates, only with " +"relative coordinates, or optimized for string length (mixed absolute and " +"relative coordinates)" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:885 +#: ../src/ui/dialog/inkscape-preferences.cpp:889 msgid "Force repeat commands" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:886 +#: ../src/ui/dialog/inkscape-preferences.cpp:890 msgid "" "Force repeating of the same path command (for example, 'L 1,2 L 3,4' instead " "of 'L 1,2 3,4')" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:888 +#: ../src/ui/dialog/inkscape-preferences.cpp:892 msgid "Numbers" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:891 +#: ../src/ui/dialog/inkscape-preferences.cpp:895 msgid "_Numeric precision:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:891 +#: ../src/ui/dialog/inkscape-preferences.cpp:895 msgid "Significant figures of the values written to the SVG file" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:894 +#: ../src/ui/dialog/inkscape-preferences.cpp:898 msgid "Minimum _exponent:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:894 +#: ../src/ui/dialog/inkscape-preferences.cpp:898 msgid "" "The smallest number written to SVG is 10 to the power of this exponent; " "anything smaller is written as zero" @@ -17447,56 +17329,56 @@ msgstr "" #. Code to add controls for attribute checking options #. Add incorrect style properties options -#: ../src/ui/dialog/inkscape-preferences.cpp:899 +#: ../src/ui/dialog/inkscape-preferences.cpp:903 msgid "Improper Attributes Actions" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:901 -#: ../src/ui/dialog/inkscape-preferences.cpp:909 -#: ../src/ui/dialog/inkscape-preferences.cpp:917 +#: ../src/ui/dialog/inkscape-preferences.cpp:905 +#: ../src/ui/dialog/inkscape-preferences.cpp:913 +#: ../src/ui/dialog/inkscape-preferences.cpp:921 msgid "Print warnings" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:902 +#: ../src/ui/dialog/inkscape-preferences.cpp:906 msgid "" "Print warning if invalid or non-useful attributes found. Database files " "located in inkscape_data_dir/attributes." msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:903 +#: ../src/ui/dialog/inkscape-preferences.cpp:907 msgid "Remove attributes" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:904 +#: ../src/ui/dialog/inkscape-preferences.cpp:908 msgid "Delete invalid or non-useful attributes from element tag" msgstr "" #. Add incorrect style properties options -#: ../src/ui/dialog/inkscape-preferences.cpp:907 +#: ../src/ui/dialog/inkscape-preferences.cpp:911 msgid "Inappropriate Style Properties Actions" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:910 +#: ../src/ui/dialog/inkscape-preferences.cpp:914 msgid "" "Print warning if inappropriate style properties found (i.e. 'font-family' " "set on a ). Database files located in inkscape_data_dir/attributes." msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:911 -#: ../src/ui/dialog/inkscape-preferences.cpp:919 +#: ../src/ui/dialog/inkscape-preferences.cpp:915 +#: ../src/ui/dialog/inkscape-preferences.cpp:923 msgid "Remove style properties" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:912 +#: ../src/ui/dialog/inkscape-preferences.cpp:916 msgid "Delete inappropriate style properties" msgstr "" #. Add default or inherited style properties options -#: ../src/ui/dialog/inkscape-preferences.cpp:915 +#: ../src/ui/dialog/inkscape-preferences.cpp:919 msgid "Non-useful Style Properties Actions" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:918 +#: ../src/ui/dialog/inkscape-preferences.cpp:922 msgid "" "Print warning if redundant style properties found (i.e. if a property has " "the default value and a different value is not inherited or if value is the " @@ -17504,207 +17386,207 @@ msgid "" "attributes." msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:920 +#: ../src/ui/dialog/inkscape-preferences.cpp:924 msgid "Delete redundant style properties" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:922 +#: ../src/ui/dialog/inkscape-preferences.cpp:926 msgid "Check Attributes and Style Properties on" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:924 +#: ../src/ui/dialog/inkscape-preferences.cpp:928 msgid "Reading" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:925 +#: ../src/ui/dialog/inkscape-preferences.cpp:929 msgid "" "Check attributes and style properties on reading in SVG files (including " "those internal to Inkscape which will slow down startup)" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:926 +#: ../src/ui/dialog/inkscape-preferences.cpp:930 msgid "Editing" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:927 +#: ../src/ui/dialog/inkscape-preferences.cpp:931 msgid "" "Check attributes and style properties while editing SVG files (may slow down " "Inkscape, mostly useful for debugging)" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:928 +#: ../src/ui/dialog/inkscape-preferences.cpp:932 msgid "Writing" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:929 +#: ../src/ui/dialog/inkscape-preferences.cpp:933 msgid "Check attributes and style properties on writing out SVG files" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:931 +#: ../src/ui/dialog/inkscape-preferences.cpp:935 msgid "SVG output" msgstr "" #. TRANSLATORS: see http://www.newsandtech.com/issues/2004/03-04/pt/03-04_rendering.htm -#: ../src/ui/dialog/inkscape-preferences.cpp:937 +#: ../src/ui/dialog/inkscape-preferences.cpp:941 msgid "Perceptual" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:937 +#: ../src/ui/dialog/inkscape-preferences.cpp:941 msgid "Relative Colorimetric" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:937 +#: ../src/ui/dialog/inkscape-preferences.cpp:941 msgid "Absolute Colorimetric" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:941 +#: ../src/ui/dialog/inkscape-preferences.cpp:945 msgid "(Note: Color management has been disabled in this build)" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:945 +#: ../src/ui/dialog/inkscape-preferences.cpp:949 msgid "Display adjustment" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:955 +#: ../src/ui/dialog/inkscape-preferences.cpp:959 #, c-format msgid "" "The ICC profile to use to calibrate display output.\n" "Searched directories:%s" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:956 +#: ../src/ui/dialog/inkscape-preferences.cpp:960 msgid "Display profile:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:961 +#: ../src/ui/dialog/inkscape-preferences.cpp:965 msgid "Retrieve profile from display" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:964 +#: ../src/ui/dialog/inkscape-preferences.cpp:968 msgid "Retrieve profiles from those attached to displays via XICC" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:966 +#: ../src/ui/dialog/inkscape-preferences.cpp:970 msgid "Retrieve profiles from those attached to displays" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:971 +#: ../src/ui/dialog/inkscape-preferences.cpp:975 msgid "Display rendering intent:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:972 +#: ../src/ui/dialog/inkscape-preferences.cpp:976 msgid "The rendering intent to use to calibrate display output" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:974 +#: ../src/ui/dialog/inkscape-preferences.cpp:978 msgid "Proofing" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:976 +#: ../src/ui/dialog/inkscape-preferences.cpp:980 msgid "Simulate output on screen" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:978 +#: ../src/ui/dialog/inkscape-preferences.cpp:982 msgid "Simulates output of target device" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:980 +#: ../src/ui/dialog/inkscape-preferences.cpp:984 msgid "Mark out of gamut colors" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:982 +#: ../src/ui/dialog/inkscape-preferences.cpp:986 msgid "Highlights colors that are out of gamut for the target device" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:994 +#: ../src/ui/dialog/inkscape-preferences.cpp:998 msgid "Out of gamut warning color:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:995 +#: ../src/ui/dialog/inkscape-preferences.cpp:999 msgid "Selects the color used for out of gamut warning" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:997 +#: ../src/ui/dialog/inkscape-preferences.cpp:1001 msgid "Device profile:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:998 +#: ../src/ui/dialog/inkscape-preferences.cpp:1002 msgid "The ICC profile to use to simulate device output" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1001 +#: ../src/ui/dialog/inkscape-preferences.cpp:1005 msgid "Device rendering intent:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1002 +#: ../src/ui/dialog/inkscape-preferences.cpp:1006 msgid "The rendering intent to use to calibrate device output" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1004 +#: ../src/ui/dialog/inkscape-preferences.cpp:1008 msgid "Black point compensation" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1006 +#: ../src/ui/dialog/inkscape-preferences.cpp:1010 msgid "Enables black point compensation" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1008 +#: ../src/ui/dialog/inkscape-preferences.cpp:1012 msgid "Preserve black" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1015 +#: ../src/ui/dialog/inkscape-preferences.cpp:1019 msgid "(LittleCMS 1.15 or later required)" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1017 +#: ../src/ui/dialog/inkscape-preferences.cpp:1021 msgid "Preserve K channel in CMYK -> CMYK transforms" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1031 +#: ../src/ui/dialog/inkscape-preferences.cpp:1035 #: ../src/widgets/sp-color-icc-selector.cpp:474 #: ../src/widgets/sp-color-icc-selector.cpp:766 msgid "" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1076 +#: ../src/ui/dialog/inkscape-preferences.cpp:1080 msgid "Color management" msgstr "" #. Autosave options -#: ../src/ui/dialog/inkscape-preferences.cpp:1079 +#: ../src/ui/dialog/inkscape-preferences.cpp:1083 msgid "Enable autosave (requires restart)" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1080 +#: ../src/ui/dialog/inkscape-preferences.cpp:1084 msgid "" "Automatically save the current document(s) at a given interval, thus " "minimizing loss in case of a crash" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1086 +#: ../src/ui/dialog/inkscape-preferences.cpp:1090 msgctxt "Filesystem" msgid "Autosave _directory:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1086 +#: ../src/ui/dialog/inkscape-preferences.cpp:1090 msgid "" "The directory where autosaves will be written. This should be an absolute " "path (starts with / on UNIX or a drive letter such as C: on Windows). " msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1088 +#: ../src/ui/dialog/inkscape-preferences.cpp:1092 msgid "_Interval (in minutes):" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1088 +#: ../src/ui/dialog/inkscape-preferences.cpp:1092 msgid "Interval (in minutes) at which document will be autosaved" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1090 +#: ../src/ui/dialog/inkscape-preferences.cpp:1094 msgid "_Maximum number of autosaves:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1090 +#: ../src/ui/dialog/inkscape-preferences.cpp:1094 msgid "" "Maximum number of autosaved files; use this to limit the storage space used" msgstr "" @@ -17721,261 +17603,257 @@ msgstr "" #. _autosave_autosave_interval.signal_changed().connect( sigc::ptr_fun(inkscape_autosave_init), TRUE ); #. #. ----------- -#: ../src/ui/dialog/inkscape-preferences.cpp:1105 +#: ../src/ui/dialog/inkscape-preferences.cpp:1109 msgid "Autosave" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1109 +#: ../src/ui/dialog/inkscape-preferences.cpp:1113 msgid "Open Clip Art Library _Server Name:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1110 +#: ../src/ui/dialog/inkscape-preferences.cpp:1114 msgid "" "The server name of the Open Clip Art Library webdav server; it's used by the " "Import and Export to OCAL function" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1112 +#: ../src/ui/dialog/inkscape-preferences.cpp:1116 msgid "Open Clip Art Library _Username:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1113 +#: ../src/ui/dialog/inkscape-preferences.cpp:1117 msgid "The username used to log into Open Clip Art Library" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1115 +#: ../src/ui/dialog/inkscape-preferences.cpp:1119 msgid "Open Clip Art Library _Password:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1116 +#: ../src/ui/dialog/inkscape-preferences.cpp:1120 msgid "The password used to log into Open Clip Art Library" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1117 +#: ../src/ui/dialog/inkscape-preferences.cpp:1121 msgid "Open Clip Art" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1122 +#: ../src/ui/dialog/inkscape-preferences.cpp:1126 msgid "Behavior" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1126 +#: ../src/ui/dialog/inkscape-preferences.cpp:1130 msgid "_Simplification threshold:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1127 +#: ../src/ui/dialog/inkscape-preferences.cpp:1131 msgid "" "How strong is the Node tool's Simplify command by default. If you invoke " "this command several times in quick succession, it will act more and more " "aggressively; invoking it again after a pause restores the default threshold." msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1129 +#: ../src/ui/dialog/inkscape-preferences.cpp:1133 msgid "Color stock markers the same color as object" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1130 +#: ../src/ui/dialog/inkscape-preferences.cpp:1134 msgid "Color custom markers the same color as object" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1131 -#: ../src/ui/dialog/inkscape-preferences.cpp:1341 +#: ../src/ui/dialog/inkscape-preferences.cpp:1135 +#: ../src/ui/dialog/inkscape-preferences.cpp:1345 msgid "Update marker color when object color changes" msgstr "" #. Selecting options -#: ../src/ui/dialog/inkscape-preferences.cpp:1134 +#: ../src/ui/dialog/inkscape-preferences.cpp:1138 msgid "Select in all layers" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1135 +#: ../src/ui/dialog/inkscape-preferences.cpp:1139 msgid "Select only within current layer" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1136 +#: ../src/ui/dialog/inkscape-preferences.cpp:1140 msgid "Select in current layer and sublayers" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1137 +#: ../src/ui/dialog/inkscape-preferences.cpp:1141 msgid "Ignore hidden objects and layers" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1138 +#: ../src/ui/dialog/inkscape-preferences.cpp:1142 msgid "Ignore locked objects and layers" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1139 +#: ../src/ui/dialog/inkscape-preferences.cpp:1143 msgid "Deselect upon layer change" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1142 +#: ../src/ui/dialog/inkscape-preferences.cpp:1146 msgid "" "Uncheck this to be able to keep the current objects selected when the " "current layer changes" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1144 +#: ../src/ui/dialog/inkscape-preferences.cpp:1148 msgid "Ctrl+A, Tab, Shift+Tab" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1146 +#: ../src/ui/dialog/inkscape-preferences.cpp:1150 msgid "Make keyboard selection commands work on objects in all layers" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1148 +#: ../src/ui/dialog/inkscape-preferences.cpp:1152 msgid "Make keyboard selection commands work on objects in current layer only" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1150 +#: ../src/ui/dialog/inkscape-preferences.cpp:1154 msgid "" "Make keyboard selection commands work on objects in current layer and all " "its sublayers" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1152 +#: ../src/ui/dialog/inkscape-preferences.cpp:1156 msgid "" "Uncheck this to be able to select objects that are hidden (either by " "themselves or by being in a hidden layer)" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1154 +#: ../src/ui/dialog/inkscape-preferences.cpp:1158 msgid "" "Uncheck this to be able to select objects that are locked (either by " "themselves or by being in a locked layer)" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1156 +#: ../src/ui/dialog/inkscape-preferences.cpp:1160 msgid "Wrap when cycling objects in z-order" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1158 +#: ../src/ui/dialog/inkscape-preferences.cpp:1162 msgid "Alt+Scroll Wheel" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1160 +#: ../src/ui/dialog/inkscape-preferences.cpp:1164 msgid "Wrap around at start and end when cycling objects in z-order" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1162 +#: ../src/ui/dialog/inkscape-preferences.cpp:1166 msgid "Selecting" msgstr "" #. Transforms options -#: ../src/ui/dialog/inkscape-preferences.cpp:1165 -#: ../src/widgets/select-toolbar.cpp:572 +#: ../src/ui/dialog/inkscape-preferences.cpp:1169 +#: ../src/widgets/select-toolbar.cpp:576 msgid "Scale stroke width" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1166 +#: ../src/ui/dialog/inkscape-preferences.cpp:1170 msgid "Scale rounded corners in rectangles" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1167 +#: ../src/ui/dialog/inkscape-preferences.cpp:1171 msgid "Transform gradients" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1168 +#: ../src/ui/dialog/inkscape-preferences.cpp:1172 msgid "Transform patterns" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1169 -msgid "Optimized" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1170 +#: ../src/ui/dialog/inkscape-preferences.cpp:1174 msgid "Preserved" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1173 -#: ../src/widgets/select-toolbar.cpp:573 +#: ../src/ui/dialog/inkscape-preferences.cpp:1177 +#: ../src/widgets/select-toolbar.cpp:577 msgid "When scaling objects, scale the stroke width by the same proportion" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1175 -#: ../src/widgets/select-toolbar.cpp:584 +#: ../src/ui/dialog/inkscape-preferences.cpp:1179 +#: ../src/widgets/select-toolbar.cpp:588 msgid "When scaling rectangles, scale the radii of rounded corners" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1177 -#: ../src/widgets/select-toolbar.cpp:595 +#: ../src/ui/dialog/inkscape-preferences.cpp:1181 +#: ../src/widgets/select-toolbar.cpp:599 msgid "Move gradients (in fill or stroke) along with the objects" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1179 -#: ../src/widgets/select-toolbar.cpp:606 +#: ../src/ui/dialog/inkscape-preferences.cpp:1183 +#: ../src/widgets/select-toolbar.cpp:610 msgid "Move patterns (in fill or stroke) along with the objects" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1180 +#: ../src/ui/dialog/inkscape-preferences.cpp:1184 msgid "Store transformation" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1182 +#: ../src/ui/dialog/inkscape-preferences.cpp:1186 msgid "" "If possible, apply transformation to objects without adding a transform= " "attribute" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1184 +#: ../src/ui/dialog/inkscape-preferences.cpp:1188 msgid "Always store transformation as a transform= attribute on objects" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1186 +#: ../src/ui/dialog/inkscape-preferences.cpp:1190 msgid "Transforms" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1190 +#: ../src/ui/dialog/inkscape-preferences.cpp:1194 msgid "Mouse _wheel scrolls by:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1191 +#: ../src/ui/dialog/inkscape-preferences.cpp:1195 msgid "" "One mouse wheel notch scrolls by this distance in screen pixels " "(horizontally with Shift)" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1192 +#: ../src/ui/dialog/inkscape-preferences.cpp:1196 msgid "Ctrl+arrows" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1194 +#: ../src/ui/dialog/inkscape-preferences.cpp:1198 msgid "Sc_roll by:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1195 +#: ../src/ui/dialog/inkscape-preferences.cpp:1199 msgid "Pressing Ctrl+arrow key scrolls by this distance (in screen pixels)" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1197 +#: ../src/ui/dialog/inkscape-preferences.cpp:1201 msgid "_Acceleration:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1198 +#: ../src/ui/dialog/inkscape-preferences.cpp:1202 msgid "" "Pressing and holding Ctrl+arrow will gradually speed up scrolling (0 for no " "acceleration)" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1199 +#: ../src/ui/dialog/inkscape-preferences.cpp:1203 msgid "Autoscrolling" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1201 +#: ../src/ui/dialog/inkscape-preferences.cpp:1205 msgid "_Speed:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1202 +#: ../src/ui/dialog/inkscape-preferences.cpp:1206 msgid "" "How fast the canvas autoscrolls when you drag beyond canvas edge (0 to turn " "autoscroll off)" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1204 +#: ../src/ui/dialog/inkscape-preferences.cpp:1208 #: ../src/ui/dialog/tracedialog.cpp:522 ../src/ui/dialog/tracedialog.cpp:721 msgid "_Threshold:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1205 +#: ../src/ui/dialog/inkscape-preferences.cpp:1209 msgid "" "How far (in screen pixels) you need to be from the canvas edge to trigger " "autoscroll; positive is outside the canvas, negative is within the canvas" @@ -17986,211 +17864,215 @@ msgstr "" #. _page_scrolling.add_line( false, "", _scroll_space, "", #. _("When on, pressing and holding Space and dragging with left mouse button pans canvas (as in Adobe Illustrator); when off, Space temporarily switches to Selector tool (default)")); #. -#: ../src/ui/dialog/inkscape-preferences.cpp:1211 +#: ../src/ui/dialog/inkscape-preferences.cpp:1215 msgid "Mouse wheel zooms by default" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1213 +#: ../src/ui/dialog/inkscape-preferences.cpp:1217 msgid "" "When on, mouse wheel zooms without Ctrl and scrolls canvas with Ctrl; when " "off, it zooms with Ctrl and scrolls without Ctrl" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1214 +#: ../src/ui/dialog/inkscape-preferences.cpp:1218 msgid "Scrolling" msgstr "" #. Snapping options -#: ../src/ui/dialog/inkscape-preferences.cpp:1217 +#: ../src/ui/dialog/inkscape-preferences.cpp:1221 msgid "Enable snap indicator" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1219 +#: ../src/ui/dialog/inkscape-preferences.cpp:1223 msgid "After snapping, a symbol is drawn at the point that has snapped" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1222 +#: ../src/ui/dialog/inkscape-preferences.cpp:1226 msgid "_Delay (in ms):" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1223 +#: ../src/ui/dialog/inkscape-preferences.cpp:1227 msgid "" "Postpone snapping as long as the mouse is moving, and then wait an " "additional fraction of a second. This additional delay is specified here. " "When set to zero or to a very small number, snapping will be immediate." msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1225 +#: ../src/ui/dialog/inkscape-preferences.cpp:1229 msgid "Only snap the node closest to the pointer" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1227 +#: ../src/ui/dialog/inkscape-preferences.cpp:1231 msgid "" "Only try to snap the node that is initially closest to the mouse pointer" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1230 +#: ../src/ui/dialog/inkscape-preferences.cpp:1234 msgid "_Weight factor:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1231 +#: ../src/ui/dialog/inkscape-preferences.cpp:1235 msgid "" "When multiple snap solutions are found, then Inkscape can either prefer the " "closest transformation (when set to 0), or prefer the node that was " "initially the closest to the pointer (when set to 1)" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1233 +#: ../src/ui/dialog/inkscape-preferences.cpp:1237 msgid "Snap the mouse pointer when dragging a constrained knot" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1235 +#: ../src/ui/dialog/inkscape-preferences.cpp:1239 msgid "" "When dragging a knot along a constraint line, then snap the position of the " "mouse pointer instead of snapping the projection of the knot onto the " "constraint line" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1237 +#: ../src/ui/dialog/inkscape-preferences.cpp:1241 msgid "Snapping" msgstr "" #. nudgedistance is limited to 1000 in select-context.cpp: use the same limit here -#: ../src/ui/dialog/inkscape-preferences.cpp:1242 +#: ../src/ui/dialog/inkscape-preferences.cpp:1246 msgid "_Arrow keys move by:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1243 +#: ../src/ui/dialog/inkscape-preferences.cpp:1247 msgid "" "Pressing an arrow key moves selected object(s) or node(s) by this distance" msgstr "" #. defaultscale is limited to 1000 in select-context.cpp: use the same limit here -#: ../src/ui/dialog/inkscape-preferences.cpp:1246 +#: ../src/ui/dialog/inkscape-preferences.cpp:1250 msgid "> and < _scale by:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1247 +#: ../src/ui/dialog/inkscape-preferences.cpp:1251 msgid "Pressing > or < scales selection up or down by this increment" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1249 +#: ../src/ui/dialog/inkscape-preferences.cpp:1253 msgid "_Inset/Outset by:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1250 +#: ../src/ui/dialog/inkscape-preferences.cpp:1254 msgid "Inset and Outset commands displace the path by this distance" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1251 +#: ../src/ui/dialog/inkscape-preferences.cpp:1255 msgid "Compass-like display of angles" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1253 +#: ../src/ui/dialog/inkscape-preferences.cpp:1257 msgid "" "When on, angles are displayed with 0 at north, 0 to 360 range, positive " "clockwise; otherwise with 0 at east, -180 to 180 range, positive " "counterclockwise" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1259 +#: ../src/ui/dialog/inkscape-preferences.cpp:1263 msgid "_Rotation snaps every:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1259 +#: ../src/ui/dialog/inkscape-preferences.cpp:1263 msgid "degrees" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1260 +#: ../src/ui/dialog/inkscape-preferences.cpp:1264 msgid "" "Rotating with Ctrl pressed snaps every that much degrees; also, pressing " "[ or ] rotates by this amount" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1261 +#: ../src/ui/dialog/inkscape-preferences.cpp:1265 msgid "Relative snapping of guideline angles" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1263 +#: ../src/ui/dialog/inkscape-preferences.cpp:1267 msgid "" "When on, the snap angles when rotating a guideline will be relative to the " "original angle" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1265 +#: ../src/ui/dialog/inkscape-preferences.cpp:1269 msgid "_Zoom in/out by:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1266 +#: ../src/ui/dialog/inkscape-preferences.cpp:1269 +msgid "%" +msgstr "" + +#: ../src/ui/dialog/inkscape-preferences.cpp:1270 msgid "" "Zoom tool click, +/- keys, and middle click zoom in and out by this " "multiplier" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1267 +#: ../src/ui/dialog/inkscape-preferences.cpp:1271 msgid "Steps" msgstr "" #. Clones options -#: ../src/ui/dialog/inkscape-preferences.cpp:1270 +#: ../src/ui/dialog/inkscape-preferences.cpp:1274 msgid "Move in parallel" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1272 +#: ../src/ui/dialog/inkscape-preferences.cpp:1276 msgid "Stay unmoved" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1274 +#: ../src/ui/dialog/inkscape-preferences.cpp:1278 msgid "Move according to transform" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1276 +#: ../src/ui/dialog/inkscape-preferences.cpp:1280 msgid "Are unlinked" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1278 +#: ../src/ui/dialog/inkscape-preferences.cpp:1282 msgid "Are deleted" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1281 +#: ../src/ui/dialog/inkscape-preferences.cpp:1285 msgid "Moving original: clones and linked offsets" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1283 +#: ../src/ui/dialog/inkscape-preferences.cpp:1287 msgid "Clones are translated by the same vector as their original" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1285 +#: ../src/ui/dialog/inkscape-preferences.cpp:1289 msgid "Clones preserve their positions when their original is moved" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1287 +#: ../src/ui/dialog/inkscape-preferences.cpp:1291 msgid "" "Each clone moves according to the value of its transform= attribute; for " "example, a rotated clone will move in a different direction than its original" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1288 +#: ../src/ui/dialog/inkscape-preferences.cpp:1292 msgid "Deleting original: clones" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1290 +#: ../src/ui/dialog/inkscape-preferences.cpp:1294 msgid "Orphaned clones are converted to regular objects" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1292 +#: ../src/ui/dialog/inkscape-preferences.cpp:1296 msgid "Orphaned clones are deleted along with their original" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1294 +#: ../src/ui/dialog/inkscape-preferences.cpp:1298 msgid "Duplicating original+clones/linked offset" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1296 +#: ../src/ui/dialog/inkscape-preferences.cpp:1300 msgid "Relink duplicated clones" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1298 +#: ../src/ui/dialog/inkscape-preferences.cpp:1302 msgid "" "When duplicating a selection containing both a clone and its original " "(possibly in groups), relink the duplicated clone to the duplicated original " @@ -18198,126 +18080,126 @@ msgid "" msgstr "" #. TRANSLATORS: Heading for the Inkscape Preferences "Clones" Page -#: ../src/ui/dialog/inkscape-preferences.cpp:1301 +#: ../src/ui/dialog/inkscape-preferences.cpp:1305 msgid "Clones" msgstr "" #. Clip paths and masks options -#: ../src/ui/dialog/inkscape-preferences.cpp:1304 +#: ../src/ui/dialog/inkscape-preferences.cpp:1308 msgid "When applying, use the topmost selected object as clippath/mask" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1306 +#: ../src/ui/dialog/inkscape-preferences.cpp:1310 msgid "" "Uncheck this to use the bottom selected object as the clipping path or mask" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1307 +#: ../src/ui/dialog/inkscape-preferences.cpp:1311 msgid "Remove clippath/mask object after applying" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1309 +#: ../src/ui/dialog/inkscape-preferences.cpp:1313 msgid "" "After applying, remove the object used as the clipping path or mask from the " "drawing" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1311 +#: ../src/ui/dialog/inkscape-preferences.cpp:1315 msgid "Before applying" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1313 +#: ../src/ui/dialog/inkscape-preferences.cpp:1317 msgid "Do not group clipped/masked objects" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1314 +#: ../src/ui/dialog/inkscape-preferences.cpp:1318 msgid "Put every clipped/masked object in its own group" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1315 +#: ../src/ui/dialog/inkscape-preferences.cpp:1319 msgid "Put all clipped/masked objects into one group" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1318 +#: ../src/ui/dialog/inkscape-preferences.cpp:1322 msgid "Apply clippath/mask to every object" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1321 +#: ../src/ui/dialog/inkscape-preferences.cpp:1325 msgid "Apply clippath/mask to groups containing single object" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1324 +#: ../src/ui/dialog/inkscape-preferences.cpp:1328 msgid "Apply clippath/mask to group containing all objects" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1326 +#: ../src/ui/dialog/inkscape-preferences.cpp:1330 msgid "After releasing" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1328 +#: ../src/ui/dialog/inkscape-preferences.cpp:1332 msgid "Ungroup automatically created groups" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1330 +#: ../src/ui/dialog/inkscape-preferences.cpp:1334 msgid "Ungroup groups created when setting clip/mask" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1332 +#: ../src/ui/dialog/inkscape-preferences.cpp:1336 msgid "Clippaths and masks" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1335 +#: ../src/ui/dialog/inkscape-preferences.cpp:1339 msgid "Stroke Style Markers" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1337 -#: ../src/ui/dialog/inkscape-preferences.cpp:1339 +#: ../src/ui/dialog/inkscape-preferences.cpp:1341 +#: ../src/ui/dialog/inkscape-preferences.cpp:1343 msgid "" "Stroke color same as object, fill color either object fill color or marker " "fill color" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1343 +#: ../src/ui/dialog/inkscape-preferences.cpp:1347 msgid "Markers" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1346 +#: ../src/ui/dialog/inkscape-preferences.cpp:1350 msgid "Document cleanup" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1347 -#: ../src/ui/dialog/inkscape-preferences.cpp:1349 +#: ../src/ui/dialog/inkscape-preferences.cpp:1351 +#: ../src/ui/dialog/inkscape-preferences.cpp:1353 msgid "Remove unused swatches when doing a document cleanup" msgstr "" #. tooltip -#: ../src/ui/dialog/inkscape-preferences.cpp:1350 +#: ../src/ui/dialog/inkscape-preferences.cpp:1354 msgid "Cleanup" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1358 +#: ../src/ui/dialog/inkscape-preferences.cpp:1362 msgid "Number of _Threads:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1358 -#: ../src/ui/dialog/inkscape-preferences.cpp:1876 +#: ../src/ui/dialog/inkscape-preferences.cpp:1362 +#: ../src/ui/dialog/inkscape-preferences.cpp:1880 msgid "(requires restart)" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1359 +#: ../src/ui/dialog/inkscape-preferences.cpp:1363 msgid "Configure number of processors/threads to use when rendering filters" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1363 +#: ../src/ui/dialog/inkscape-preferences.cpp:1367 msgid "Rendering _cache size:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1363 +#: ../src/ui/dialog/inkscape-preferences.cpp:1367 msgctxt "mebibyte (2^20 bytes) abbreviation" msgid "MiB" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1363 +#: ../src/ui/dialog/inkscape-preferences.cpp:1367 msgid "" "Set the amount of memory per document which can be used to store rendered " "parts of the drawing for later reuse; set to zero to disable caching" @@ -18325,362 +18207,363 @@ msgstr "" #. blur quality #. filter quality -#: ../src/ui/dialog/inkscape-preferences.cpp:1366 -#: ../src/ui/dialog/inkscape-preferences.cpp:1390 +#: ../src/ui/dialog/inkscape-preferences.cpp:1370 +#: ../src/ui/dialog/inkscape-preferences.cpp:1394 msgid "Best quality (slowest)" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1368 -#: ../src/ui/dialog/inkscape-preferences.cpp:1392 +#: ../src/ui/dialog/inkscape-preferences.cpp:1372 +#: ../src/ui/dialog/inkscape-preferences.cpp:1396 msgid "Better quality (slower)" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1370 -#: ../src/ui/dialog/inkscape-preferences.cpp:1394 +#: ../src/ui/dialog/inkscape-preferences.cpp:1374 +#: ../src/ui/dialog/inkscape-preferences.cpp:1398 msgid "Average quality" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1372 -#: ../src/ui/dialog/inkscape-preferences.cpp:1396 +#: ../src/ui/dialog/inkscape-preferences.cpp:1376 +#: ../src/ui/dialog/inkscape-preferences.cpp:1400 msgid "Lower quality (faster)" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1374 -#: ../src/ui/dialog/inkscape-preferences.cpp:1398 +#: ../src/ui/dialog/inkscape-preferences.cpp:1378 +#: ../src/ui/dialog/inkscape-preferences.cpp:1402 msgid "Lowest quality (fastest)" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1377 +#: ../src/ui/dialog/inkscape-preferences.cpp:1381 msgid "Gaussian blur quality for display" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1379 -#: ../src/ui/dialog/inkscape-preferences.cpp:1403 +#: ../src/ui/dialog/inkscape-preferences.cpp:1383 +#: ../src/ui/dialog/inkscape-preferences.cpp:1407 msgid "" "Best quality, but display may be very slow at high zooms (bitmap export " "always uses best quality)" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1381 -#: ../src/ui/dialog/inkscape-preferences.cpp:1405 +#: ../src/ui/dialog/inkscape-preferences.cpp:1385 +#: ../src/ui/dialog/inkscape-preferences.cpp:1409 msgid "Better quality, but slower display" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1383 -#: ../src/ui/dialog/inkscape-preferences.cpp:1407 +#: ../src/ui/dialog/inkscape-preferences.cpp:1387 +#: ../src/ui/dialog/inkscape-preferences.cpp:1411 msgid "Average quality, acceptable display speed" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1385 -#: ../src/ui/dialog/inkscape-preferences.cpp:1409 +#: ../src/ui/dialog/inkscape-preferences.cpp:1389 +#: ../src/ui/dialog/inkscape-preferences.cpp:1413 msgid "Lower quality (some artifacts), but display is faster" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1387 -#: ../src/ui/dialog/inkscape-preferences.cpp:1411 +#: ../src/ui/dialog/inkscape-preferences.cpp:1391 +#: ../src/ui/dialog/inkscape-preferences.cpp:1415 msgid "Lowest quality (considerable artifacts), but display is fastest" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1401 +#: ../src/ui/dialog/inkscape-preferences.cpp:1405 msgid "Filter effects quality for display" msgstr "" #. build custom preferences tab -#: ../src/ui/dialog/inkscape-preferences.cpp:1413 +#: ../src/ui/dialog/inkscape-preferences.cpp:1417 #: ../src/ui/dialog/print.cpp:224 msgid "Rendering" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 +#: ../src/ui/dialog/inkscape-preferences.cpp:1423 msgid "2x2" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 +#: ../src/ui/dialog/inkscape-preferences.cpp:1423 msgid "4x4" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 +#: ../src/ui/dialog/inkscape-preferences.cpp:1423 msgid "8x8" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 +#: ../src/ui/dialog/inkscape-preferences.cpp:1423 msgid "16x16" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1423 +#: ../src/ui/dialog/inkscape-preferences.cpp:1427 msgid "Oversample bitmaps:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1426 +#: ../src/ui/dialog/inkscape-preferences.cpp:1430 msgid "Automatically reload bitmaps" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1428 +#: ../src/ui/dialog/inkscape-preferences.cpp:1432 msgid "Automatically reload linked images when file is changed on disk" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1430 +#: ../src/ui/dialog/inkscape-preferences.cpp:1434 msgid "_Bitmap editor:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1432 +#: ../src/ui/dialog/inkscape-preferences.cpp:1436 msgid "Default export _resolution:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1433 +#: ../src/ui/dialog/inkscape-preferences.cpp:1437 msgid "Default bitmap resolution (in dots per inch) in the Export dialog" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1435 +#: ../src/ui/dialog/inkscape-preferences.cpp:1439 msgid "Resolution for Create Bitmap _Copy:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1436 +#: ../src/ui/dialog/inkscape-preferences.cpp:1440 msgid "Resolution used by the Create Bitmap Copy command" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1438 +#: ../src/ui/dialog/inkscape-preferences.cpp:1442 msgid "Always embed" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1438 +#: ../src/ui/dialog/inkscape-preferences.cpp:1442 msgid "Always link" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1438 +#: ../src/ui/dialog/inkscape-preferences.cpp:1442 msgid "Ask" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1441 +#: ../src/ui/dialog/inkscape-preferences.cpp:1445 msgid "Bitmap import:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1444 +#: ../src/ui/dialog/inkscape-preferences.cpp:1448 msgid "Bitmap import quality:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1447 +#: ../src/ui/dialog/inkscape-preferences.cpp:1451 msgid "Default _import resolution:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1448 +#: ../src/ui/dialog/inkscape-preferences.cpp:1452 msgid "Default bitmap resolution (in dots per inch) for bitmap import" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1449 +#: ../src/ui/dialog/inkscape-preferences.cpp:1453 msgid "Override file resolution" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1451 +#: ../src/ui/dialog/inkscape-preferences.cpp:1455 msgid "Use default bitmap resolution in favor of information from file" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1453 +#: ../src/ui/dialog/inkscape-preferences.cpp:1457 msgid "Bitmaps" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1465 +#: ../src/ui/dialog/inkscape-preferences.cpp:1469 msgid "" "Select a file of predefined shortcuts to use. Any customized shortcuts you " "create will be added seperately to " msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1468 +#: ../src/ui/dialog/inkscape-preferences.cpp:1472 msgid "Shortcut file:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1471 +#: ../src/ui/dialog/inkscape-preferences.cpp:1475 +#: ../src/ui/dialog/template-load-tab.cpp:46 msgid "Search:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1483 +#: ../src/ui/dialog/inkscape-preferences.cpp:1487 msgid "Shortcut" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1484 -#: ../src/ui/widget/page-sizer.cpp:262 +#: ../src/ui/dialog/inkscape-preferences.cpp:1488 +#: ../src/ui/widget/page-sizer.cpp:260 msgid "Description" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1539 +#: ../src/ui/dialog/inkscape-preferences.cpp:1543 #: ../src/ui/dialog/svg-fonts-dialog.cpp:694 #: ../src/ui/dialog/tracedialog.cpp:813 #: ../src/ui/widget/preferences-widget.cpp:749 msgid "Reset" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1539 +#: ../src/ui/dialog/inkscape-preferences.cpp:1543 msgid "" "Remove all your customized keyboard shortcuts, and revert to the shortcuts " "in the shortcut file listed above" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1543 +#: ../src/ui/dialog/inkscape-preferences.cpp:1547 msgid "Import ..." msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1543 +#: ../src/ui/dialog/inkscape-preferences.cpp:1547 msgid "Import custom keyboard shortcuts from a file" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1546 +#: ../src/ui/dialog/inkscape-preferences.cpp:1550 msgid "Export ..." msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1546 +#: ../src/ui/dialog/inkscape-preferences.cpp:1550 msgid "Export custom keyboard shortcuts to a file" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1556 +#: ../src/ui/dialog/inkscape-preferences.cpp:1560 msgid "Keyboard Shortcuts" msgstr "" #. Find this group in the tree -#: ../src/ui/dialog/inkscape-preferences.cpp:1719 +#: ../src/ui/dialog/inkscape-preferences.cpp:1723 msgid "Misc" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1838 +#: ../src/ui/dialog/inkscape-preferences.cpp:1842 msgid "Set the main spell check language" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1841 +#: ../src/ui/dialog/inkscape-preferences.cpp:1845 msgid "Second language:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1842 +#: ../src/ui/dialog/inkscape-preferences.cpp:1846 msgid "" "Set the second spell check language; checking will only stop on words " "unknown in ALL chosen languages" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1845 +#: ../src/ui/dialog/inkscape-preferences.cpp:1849 msgid "Third language:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1846 +#: ../src/ui/dialog/inkscape-preferences.cpp:1850 msgid "" "Set the third spell check language; checking will only stop on words unknown " "in ALL chosen languages" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1848 +#: ../src/ui/dialog/inkscape-preferences.cpp:1852 msgid "Ignore words with digits" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1850 +#: ../src/ui/dialog/inkscape-preferences.cpp:1854 msgid "Ignore words containing digits, such as \"R2D2\"" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1852 +#: ../src/ui/dialog/inkscape-preferences.cpp:1856 msgid "Ignore words in ALL CAPITALS" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1854 +#: ../src/ui/dialog/inkscape-preferences.cpp:1858 msgid "Ignore words in all capitals, such as \"IUPAC\"" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1856 +#: ../src/ui/dialog/inkscape-preferences.cpp:1860 msgid "Spellcheck" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1876 +#: ../src/ui/dialog/inkscape-preferences.cpp:1880 msgid "Latency _skew:" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1877 +#: ../src/ui/dialog/inkscape-preferences.cpp:1881 msgid "" "Factor by which the event clock is skewed from the actual time (0.9766 on " "some systems)" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1879 +#: ../src/ui/dialog/inkscape-preferences.cpp:1883 msgid "Pre-render named icons" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1881 +#: ../src/ui/dialog/inkscape-preferences.cpp:1885 msgid "" "When on, named icons will be rendered before displaying the ui. This is for " "working around bugs in GTK+ named icon notification" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1889 +#: ../src/ui/dialog/inkscape-preferences.cpp:1893 msgid "System info" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1893 +#: ../src/ui/dialog/inkscape-preferences.cpp:1897 msgid "User config: " msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1893 +#: ../src/ui/dialog/inkscape-preferences.cpp:1897 msgid "Location of users configuration" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1897 +#: ../src/ui/dialog/inkscape-preferences.cpp:1901 msgid "User preferences: " msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1897 +#: ../src/ui/dialog/inkscape-preferences.cpp:1901 msgid "Location of the users preferences file" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1901 +#: ../src/ui/dialog/inkscape-preferences.cpp:1905 msgid "User extensions: " msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1901 +#: ../src/ui/dialog/inkscape-preferences.cpp:1905 msgid "Location of the users extensions" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1905 +#: ../src/ui/dialog/inkscape-preferences.cpp:1909 msgid "User cache: " msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1905 +#: ../src/ui/dialog/inkscape-preferences.cpp:1909 msgid "Location of users cache" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1913 +#: ../src/ui/dialog/inkscape-preferences.cpp:1917 msgid "Temporary files: " msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1913 +#: ../src/ui/dialog/inkscape-preferences.cpp:1917 msgid "Location of the temporary files used for autosave" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1917 +#: ../src/ui/dialog/inkscape-preferences.cpp:1921 msgid "Inkscape data: " msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1917 +#: ../src/ui/dialog/inkscape-preferences.cpp:1921 msgid "Location of Inkscape data" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1921 +#: ../src/ui/dialog/inkscape-preferences.cpp:1925 msgid "Inkscape extensions: " msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1921 +#: ../src/ui/dialog/inkscape-preferences.cpp:1925 msgid "Location of the Inkscape extensions" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1930 +#: ../src/ui/dialog/inkscape-preferences.cpp:1934 msgid "System data: " msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1930 +#: ../src/ui/dialog/inkscape-preferences.cpp:1934 msgid "Locations of system data" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1954 +#: ../src/ui/dialog/inkscape-preferences.cpp:1958 msgid "Icon theme: " msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1954 +#: ../src/ui/dialog/inkscape-preferences.cpp:1958 msgid "Locations of icon themes" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1956 +#: ../src/ui/dialog/inkscape-preferences.cpp:1960 msgid "System" msgstr "" @@ -18742,7 +18625,7 @@ msgstr "" msgid "_Use pressure-sensitive tablet (requires restart)" msgstr "" -#: ../src/ui/dialog/input.cpp:1082 ../src/verbs.cpp:2302 +#: ../src/ui/dialog/input.cpp:1082 ../src/verbs.cpp:2354 msgid "_Save" msgstr "" @@ -18760,8 +18643,8 @@ msgid "" "or to a single (usually focused) 'Window'" msgstr "" -#: ../src/ui/dialog/input.cpp:1616 ../src/widgets/calligraphy-toolbar.cpp:599 -#: ../src/widgets/spray-toolbar.cpp:240 ../src/widgets/tweak-toolbar.cpp:390 +#: ../src/ui/dialog/input.cpp:1616 ../src/widgets/calligraphy-toolbar.cpp:595 +#: ../src/widgets/spray-toolbar.cpp:236 ../src/widgets/tweak-toolbar.cpp:386 msgid "Pressure" msgstr "" @@ -18804,8 +18687,8 @@ msgstr "" #. TODO: find an unused layer number, forming name from _("Layer ") + "%d" #: ../src/ui/dialog/layer-properties.cpp:354 -#: ../src/ui/dialog/layer-properties.cpp:410 ../src/verbs.cpp:193 -#: ../src/verbs.cpp:2233 +#: ../src/ui/dialog/layer-properties.cpp:410 ../src/verbs.cpp:194 +#: ../src/verbs.cpp:2285 msgid "Layer" msgstr "" @@ -18813,7 +18696,7 @@ msgstr "" msgid "_Rename" msgstr "" -#: ../src/ui/dialog/layer-properties.cpp:368 ../src/ui/dialog/layers.cpp:749 +#: ../src/ui/dialog/layer-properties.cpp:368 ../src/ui/dialog/layers.cpp:750 msgid "Rename layer" msgstr "" @@ -18839,59 +18722,59 @@ msgid "Move to Layer" msgstr "" #: ../src/ui/dialog/layer-properties.cpp:411 -#: ../src/ui/dialog/transformation.cpp:113 +#: ../src/ui/dialog/transformation.cpp:114 msgid "_Move" msgstr "" -#: ../src/ui/dialog/layers.cpp:524 ../src/ui/widget/layer-selector.cpp:613 +#: ../src/ui/dialog/layers.cpp:525 ../src/ui/widget/layer-selector.cpp:613 msgid "Unhide layer" msgstr "" -#: ../src/ui/dialog/layers.cpp:524 ../src/ui/widget/layer-selector.cpp:613 +#: ../src/ui/dialog/layers.cpp:525 ../src/ui/widget/layer-selector.cpp:613 msgid "Hide layer" msgstr "" -#: ../src/ui/dialog/layers.cpp:535 ../src/ui/widget/layer-selector.cpp:605 +#: ../src/ui/dialog/layers.cpp:536 ../src/ui/widget/layer-selector.cpp:605 msgid "Lock layer" msgstr "" -#: ../src/ui/dialog/layers.cpp:535 ../src/ui/widget/layer-selector.cpp:605 +#: ../src/ui/dialog/layers.cpp:536 ../src/ui/widget/layer-selector.cpp:605 msgid "Unlock layer" msgstr "" -#: ../src/ui/dialog/layers.cpp:623 ../src/verbs.cpp:1348 +#: ../src/ui/dialog/layers.cpp:624 ../src/verbs.cpp:1397 msgid "Toggle layer solo" msgstr "" -#: ../src/ui/dialog/layers.cpp:626 ../src/verbs.cpp:1372 +#: ../src/ui/dialog/layers.cpp:627 ../src/verbs.cpp:1421 msgid "Lock other layers" msgstr "" -#: ../src/ui/dialog/layers.cpp:720 +#: ../src/ui/dialog/layers.cpp:721 msgid "Moved layer" msgstr "" -#: ../src/ui/dialog/layers.cpp:882 +#: ../src/ui/dialog/layers.cpp:883 msgctxt "Layers" msgid "New" msgstr "" -#: ../src/ui/dialog/layers.cpp:887 +#: ../src/ui/dialog/layers.cpp:888 msgctxt "Layers" msgid "Bot" msgstr "" -#: ../src/ui/dialog/layers.cpp:893 +#: ../src/ui/dialog/layers.cpp:894 msgctxt "Layers" msgid "Dn" msgstr "" -#: ../src/ui/dialog/layers.cpp:899 +#: ../src/ui/dialog/layers.cpp:900 msgctxt "Layers" msgid "Up" msgstr "" -#: ../src/ui/dialog/layers.cpp:905 +#: ../src/ui/dialog/layers.cpp:906 msgctxt "Layers" msgid "Top" msgstr "" @@ -19017,6 +18900,43 @@ msgstr "" msgid "Log capture stopped." msgstr "" +#: ../src/ui/dialog/new-from-template.cpp:24 +msgid "Create from template" +msgstr "" + +#: ../src/ui/dialog/new-from-template.cpp:26 +msgid "New From Template" +msgstr "" + +#: ../src/ui/dialog/template-widget.cpp:29 +msgid "More info" +msgstr "" + +#: ../src/ui/dialog/template-widget.cpp:30 +#: ../src/ui/dialog/template-widget.cpp:31 +msgid " " +msgstr "" + +#: ../src/ui/dialog/template-widget.cpp:32 +msgid "no template selected" +msgstr "" + +#: ../src/ui/dialog/template-widget.cpp:98 +msgid "Path: " +msgstr "" + +#: ../src/ui/dialog/template-widget.cpp:101 +msgid "Description: " +msgstr "" + +#: ../src/ui/dialog/template-widget.cpp:103 +msgid "Keywords: " +msgstr "" + +#: ../src/ui/dialog/template-widget.cpp:110 +msgid "By: " +msgstr "" + #: ../src/ui/dialog/object-attributes.cpp:47 msgid "Href:" msgstr "" @@ -19049,13 +18969,13 @@ msgstr "" #: ../src/ui/dialog/object-attributes.cpp:66 #: ../src/ui/dialog/object-attributes.cpp:74 ../src/ui/dialog/tile.cpp:618 -#: ../src/widgets/desktop-widget.cpp:666 ../src/widgets/node-toolbar.cpp:590 +#: ../src/widgets/desktop-widget.cpp:670 ../src/widgets/node-toolbar.cpp:593 msgid "X:" msgstr "" #: ../src/ui/dialog/object-attributes.cpp:67 #: ../src/ui/dialog/object-attributes.cpp:75 ../src/ui/dialog/tile.cpp:619 -#: ../src/widgets/desktop-widget.cpp:676 ../src/widgets/node-toolbar.cpp:608 +#: ../src/widgets/desktop-widget.cpp:680 ../src/widgets/node-toolbar.cpp:611 msgid "Y:" msgstr "" @@ -19082,8 +19002,8 @@ msgstr "" msgid "L_ock" msgstr "" -#: ../src/ui/dialog/object-properties.cpp:74 ../src/verbs.cpp:2573 -#: ../src/verbs.cpp:2579 +#: ../src/ui/dialog/object-properties.cpp:74 ../src/verbs.cpp:2627 +#: ../src/verbs.cpp:2633 msgid "_Set" msgstr "" @@ -19233,35 +19153,6 @@ msgstr "" msgid "Print" msgstr "" -#. ## Add a menu for clear() -#: ../src/ui/dialog/scriptdialog.cpp:178 ../src/verbs.cpp:136 -msgid "File" -msgstr "" - -#: ../src/ui/dialog/scriptdialog.cpp:186 -msgid "_Execute Javascript" -msgstr "" - -#: ../src/ui/dialog/scriptdialog.cpp:190 -msgid "_Execute Python" -msgstr "" - -#: ../src/ui/dialog/scriptdialog.cpp:194 -msgid "_Execute Ruby" -msgstr "" - -#: ../src/ui/dialog/scriptdialog.cpp:205 -msgid "Script" -msgstr "" - -#: ../src/ui/dialog/scriptdialog.cpp:215 -msgid "Output" -msgstr "" - -#: ../src/ui/dialog/scriptdialog.cpp:225 -msgid "Errors" -msgstr "" - #: ../src/ui/dialog/svg-fonts-dialog.cpp:138 msgid "Set SVG Font attribute" msgstr "" @@ -19422,58 +19313,58 @@ msgid "Preview Text:" msgstr "" #. ******************* Symbol Sets ************************ -#: ../src/ui/dialog/symbols.cpp:127 +#: ../src/ui/dialog/symbols.cpp:128 msgid "Symbol set: " msgstr "" #. Fill in later -#: ../src/ui/dialog/symbols.cpp:136 ../src/ui/dialog/symbols.cpp:137 +#: ../src/ui/dialog/symbols.cpp:137 ../src/ui/dialog/symbols.cpp:138 msgid "Current Document" msgstr "" -#: ../src/ui/dialog/symbols.cpp:204 +#: ../src/ui/dialog/symbols.cpp:205 msgid "Add Symbol from the current document." msgstr "" -#: ../src/ui/dialog/symbols.cpp:213 +#: ../src/ui/dialog/symbols.cpp:214 msgid "Remove Symbol from the current document." msgstr "" -#: ../src/ui/dialog/symbols.cpp:226 +#: ../src/ui/dialog/symbols.cpp:227 msgid "Make Icons bigger by zooming in." msgstr "" -#: ../src/ui/dialog/symbols.cpp:235 +#: ../src/ui/dialog/symbols.cpp:236 msgid "Make Icons smaller by zooming out." msgstr "" -#: ../src/ui/dialog/symbols.cpp:244 +#: ../src/ui/dialog/symbols.cpp:245 msgid "Toggle 'fit' symbols in icon space." msgstr "" -#: ../src/ui/dialog/symbols.cpp:557 +#: ../src/ui/dialog/symbols.cpp:558 msgid "Unnamed Symbols" msgstr "" #. TRANSLATORS: An item in context menu on a colour in the swatches -#: ../src/ui/dialog/swatches.cpp:258 +#: ../src/ui/dialog/swatches.cpp:259 msgid "Set fill" msgstr "" #. TRANSLATORS: An item in context menu on a colour in the swatches -#: ../src/ui/dialog/swatches.cpp:266 +#: ../src/ui/dialog/swatches.cpp:267 msgid "Set stroke" msgstr "" -#: ../src/ui/dialog/swatches.cpp:287 +#: ../src/ui/dialog/swatches.cpp:288 msgid "Edit..." msgstr "" -#: ../src/ui/dialog/swatches.cpp:299 +#: ../src/ui/dialog/swatches.cpp:300 msgid "Convert" msgstr "" -#: ../src/ui/dialog/swatches.cpp:543 +#: ../src/ui/dialog/swatches.cpp:544 #, c-format msgid "Palettes directory (%s) is unavailable." msgstr "" @@ -19797,152 +19688,162 @@ msgstr "" msgid "Execute the trace" msgstr "" -#: ../src/ui/dialog/transformation.cpp:75 -#: ../src/ui/dialog/transformation.cpp:85 +#: ../src/ui/dialog/transformation.cpp:76 +#: ../src/ui/dialog/transformation.cpp:86 msgid "_Horizontal:" msgstr "" -#: ../src/ui/dialog/transformation.cpp:75 +#: ../src/ui/dialog/transformation.cpp:76 msgid "Horizontal displacement (relative) or position (absolute)" msgstr "" -#: ../src/ui/dialog/transformation.cpp:77 -#: ../src/ui/dialog/transformation.cpp:87 +#: ../src/ui/dialog/transformation.cpp:78 +#: ../src/ui/dialog/transformation.cpp:88 msgid "_Vertical:" msgstr "" -#: ../src/ui/dialog/transformation.cpp:77 +#: ../src/ui/dialog/transformation.cpp:78 msgid "Vertical displacement (relative) or position (absolute)" msgstr "" -#: ../src/ui/dialog/transformation.cpp:79 +#: ../src/ui/dialog/transformation.cpp:80 msgid "Horizontal size (absolute or percentage of current)" msgstr "" -#: ../src/ui/dialog/transformation.cpp:81 +#: ../src/ui/dialog/transformation.cpp:82 msgid "Vertical size (absolute or percentage of current)" msgstr "" -#: ../src/ui/dialog/transformation.cpp:83 +#: ../src/ui/dialog/transformation.cpp:84 msgid "A_ngle:" msgstr "" -#: ../src/ui/dialog/transformation.cpp:83 -#: ../src/ui/dialog/transformation.cpp:1068 +#: ../src/ui/dialog/transformation.cpp:84 +#: ../src/ui/dialog/transformation.cpp:1103 msgid "Rotation angle (positive = counterclockwise)" msgstr "" -#: ../src/ui/dialog/transformation.cpp:85 +#: ../src/ui/dialog/transformation.cpp:86 msgid "" "Horizontal skew angle (positive = counterclockwise), or absolute " "displacement, or percentage displacement" msgstr "" -#: ../src/ui/dialog/transformation.cpp:87 +#: ../src/ui/dialog/transformation.cpp:88 msgid "" "Vertical skew angle (positive = counterclockwise), or absolute displacement, " "or percentage displacement" msgstr "" -#: ../src/ui/dialog/transformation.cpp:90 +#: ../src/ui/dialog/transformation.cpp:91 msgid "Transformation matrix element A" msgstr "" -#: ../src/ui/dialog/transformation.cpp:91 +#: ../src/ui/dialog/transformation.cpp:92 msgid "Transformation matrix element B" msgstr "" -#: ../src/ui/dialog/transformation.cpp:92 +#: ../src/ui/dialog/transformation.cpp:93 msgid "Transformation matrix element C" msgstr "" -#: ../src/ui/dialog/transformation.cpp:93 +#: ../src/ui/dialog/transformation.cpp:94 msgid "Transformation matrix element D" msgstr "" -#: ../src/ui/dialog/transformation.cpp:94 +#: ../src/ui/dialog/transformation.cpp:95 msgid "Transformation matrix element E" msgstr "" -#: ../src/ui/dialog/transformation.cpp:95 +#: ../src/ui/dialog/transformation.cpp:96 msgid "Transformation matrix element F" msgstr "" -#: ../src/ui/dialog/transformation.cpp:100 +#: ../src/ui/dialog/transformation.cpp:101 msgid "Rela_tive move" msgstr "" -#: ../src/ui/dialog/transformation.cpp:100 +#: ../src/ui/dialog/transformation.cpp:101 msgid "" "Add the specified relative displacement to the current position; otherwise, " "edit the current absolute position directly" msgstr "" -#: ../src/ui/dialog/transformation.cpp:101 +#: ../src/ui/dialog/transformation.cpp:102 msgid "_Scale proportionally" msgstr "" -#: ../src/ui/dialog/transformation.cpp:101 +#: ../src/ui/dialog/transformation.cpp:102 msgid "Preserve the width/height ratio of the scaled objects" msgstr "" -#: ../src/ui/dialog/transformation.cpp:102 +#: ../src/ui/dialog/transformation.cpp:103 msgid "Apply to each _object separately" msgstr "" -#: ../src/ui/dialog/transformation.cpp:102 +#: ../src/ui/dialog/transformation.cpp:103 msgid "" "Apply the scale/rotate/skew to each selected object separately; otherwise, " "transform the selection as a whole" msgstr "" -#: ../src/ui/dialog/transformation.cpp:103 +#: ../src/ui/dialog/transformation.cpp:104 msgid "Edit c_urrent matrix" msgstr "" -#: ../src/ui/dialog/transformation.cpp:103 +#: ../src/ui/dialog/transformation.cpp:104 msgid "" "Edit the current transform= matrix; otherwise, post-multiply transform= by " "this matrix" msgstr "" -#: ../src/ui/dialog/transformation.cpp:116 +#: ../src/ui/dialog/transformation.cpp:117 msgid "_Scale" msgstr "" -#: ../src/ui/dialog/transformation.cpp:119 +#: ../src/ui/dialog/transformation.cpp:120 msgid "_Rotate" msgstr "" -#: ../src/ui/dialog/transformation.cpp:122 +#: ../src/ui/dialog/transformation.cpp:123 msgid "Ske_w" msgstr "" -#: ../src/ui/dialog/transformation.cpp:125 +#: ../src/ui/dialog/transformation.cpp:126 msgid "Matri_x" msgstr "" -#: ../src/ui/dialog/transformation.cpp:149 +#: ../src/ui/dialog/transformation.cpp:150 msgid "Reset the values on the current tab to defaults" msgstr "" -#: ../src/ui/dialog/transformation.cpp:156 +#: ../src/ui/dialog/transformation.cpp:157 msgid "Apply transformation to selection" msgstr "" -#: ../src/ui/dialog/transformation.cpp:331 +#: ../src/ui/dialog/transformation.cpp:332 msgid "Rotate in a counterclockwise direction" msgstr "" -#: ../src/ui/dialog/transformation.cpp:337 +#: ../src/ui/dialog/transformation.cpp:338 msgid "Rotate in a clockwise direction" msgstr "" -#: ../src/ui/dialog/transformation.cpp:976 +#: ../src/ui/dialog/transformation.cpp:907 +#: ../src/ui/dialog/transformation.cpp:918 +#: ../src/ui/dialog/transformation.cpp:932 +#: ../src/ui/dialog/transformation.cpp:951 +#: ../src/ui/dialog/transformation.cpp:962 +#: ../src/ui/dialog/transformation.cpp:972 +#: ../src/ui/dialog/transformation.cpp:996 +msgid "Transform matrix is singular, not used." +msgstr "" + +#: ../src/ui/dialog/transformation.cpp:1011 msgid "Edit transformation matrix" msgstr "" -#: ../src/ui/dialog/transformation.cpp:1075 +#: ../src/ui/dialog/transformation.cpp:1110 msgid "Rotation angle (positive = clockwise)" msgstr "" @@ -19978,95 +19879,95 @@ msgid "" "node, click to select (more: Shift, Ctrl+Alt)" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:322 +#: ../src/ui/tool/multi-path-manipulator.cpp:326 msgid "Retract handles" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:322 ../src/ui/tool/node.cpp:271 +#: ../src/ui/tool/multi-path-manipulator.cpp:326 ../src/ui/tool/node.cpp:270 msgid "Change node type" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:330 +#: ../src/ui/tool/multi-path-manipulator.cpp:334 msgid "Straighten segments" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:332 +#: ../src/ui/tool/multi-path-manipulator.cpp:336 msgid "Make segments curves" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:339 +#: ../src/ui/tool/multi-path-manipulator.cpp:343 msgid "Add nodes" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:344 +#: ../src/ui/tool/multi-path-manipulator.cpp:348 msgid "Add extremum nodes" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:350 +#: ../src/ui/tool/multi-path-manipulator.cpp:354 msgid "Duplicate nodes" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:412 -#: ../src/widgets/node-toolbar.cpp:417 +#: ../src/ui/tool/multi-path-manipulator.cpp:416 +#: ../src/widgets/node-toolbar.cpp:420 msgid "Join nodes" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:419 -#: ../src/widgets/node-toolbar.cpp:428 +#: ../src/ui/tool/multi-path-manipulator.cpp:423 +#: ../src/widgets/node-toolbar.cpp:431 msgid "Break nodes" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:426 +#: ../src/ui/tool/multi-path-manipulator.cpp:430 msgid "Delete nodes" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:756 +#: ../src/ui/tool/multi-path-manipulator.cpp:760 msgid "Move nodes" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:759 +#: ../src/ui/tool/multi-path-manipulator.cpp:763 msgid "Move nodes horizontally" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:763 +#: ../src/ui/tool/multi-path-manipulator.cpp:767 msgid "Move nodes vertically" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:767 -#: ../src/ui/tool/multi-path-manipulator.cpp:770 +#: ../src/ui/tool/multi-path-manipulator.cpp:771 +#: ../src/ui/tool/multi-path-manipulator.cpp:774 msgid "Rotate nodes" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:774 -#: ../src/ui/tool/multi-path-manipulator.cpp:780 +#: ../src/ui/tool/multi-path-manipulator.cpp:778 +#: ../src/ui/tool/multi-path-manipulator.cpp:784 msgid "Scale nodes uniformly" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:777 +#: ../src/ui/tool/multi-path-manipulator.cpp:781 msgid "Scale nodes" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:784 +#: ../src/ui/tool/multi-path-manipulator.cpp:788 msgid "Scale nodes horizontally" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:788 +#: ../src/ui/tool/multi-path-manipulator.cpp:792 msgid "Scale nodes vertically" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:792 +#: ../src/ui/tool/multi-path-manipulator.cpp:796 msgid "Skew nodes horizontally" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:796 +#: ../src/ui/tool/multi-path-manipulator.cpp:800 msgid "Skew nodes vertically" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:800 +#: ../src/ui/tool/multi-path-manipulator.cpp:804 msgid "Flip nodes horizontally" msgstr "" -#: ../src/ui/tool/multi-path-manipulator.cpp:803 +#: ../src/ui/tool/multi-path-manipulator.cpp:807 msgid "Flip nodes vertically" msgstr "" @@ -20121,33 +20022,33 @@ msgctxt "Node tool tip" msgid "Drag to select objects to edit" msgstr "" -#: ../src/ui/tool/node.cpp:246 +#: ../src/ui/tool/node.cpp:245 msgid "Cusp node handle" msgstr "" -#: ../src/ui/tool/node.cpp:247 +#: ../src/ui/tool/node.cpp:246 msgid "Smooth node handle" msgstr "" -#: ../src/ui/tool/node.cpp:248 +#: ../src/ui/tool/node.cpp:247 msgid "Symmetric node handle" msgstr "" -#: ../src/ui/tool/node.cpp:249 +#: ../src/ui/tool/node.cpp:248 msgid "Auto-smooth node handle" msgstr "" -#: ../src/ui/tool/node.cpp:433 +#: ../src/ui/tool/node.cpp:432 msgctxt "Path handle tip" msgid "more: Shift, Ctrl, Alt" msgstr "" -#: ../src/ui/tool/node.cpp:435 +#: ../src/ui/tool/node.cpp:434 msgctxt "Path handle tip" msgid "more: Ctrl, Alt" msgstr "" -#: ../src/ui/tool/node.cpp:441 +#: ../src/ui/tool/node.cpp:440 #, c-format msgctxt "Path handle tip" msgid "" @@ -20155,24 +20056,24 @@ msgid "" "increments while rotating both handles" msgstr "" -#: ../src/ui/tool/node.cpp:446 +#: ../src/ui/tool/node.cpp:445 #, c-format msgctxt "Path handle tip" msgid "" "Ctrl+Alt: preserve length and snap rotation angle to %g° increments" msgstr "" -#: ../src/ui/tool/node.cpp:452 +#: ../src/ui/tool/node.cpp:451 msgctxt "Path handle tip" msgid "Shift+Alt: preserve handle length and rotate both handles" msgstr "" -#: ../src/ui/tool/node.cpp:455 +#: ../src/ui/tool/node.cpp:454 msgctxt "Path handle tip" msgid "Alt: preserve handle length while dragging" msgstr "" -#: ../src/ui/tool/node.cpp:462 +#: ../src/ui/tool/node.cpp:461 #, c-format msgctxt "Path handle tip" msgid "" @@ -20180,67 +20081,67 @@ msgid "" "handles" msgstr "" -#: ../src/ui/tool/node.cpp:466 +#: ../src/ui/tool/node.cpp:465 #, c-format msgctxt "Path handle tip" msgid "Ctrl: snap rotation angle to %g° increments, click to retract" msgstr "" -#: ../src/ui/tool/node.cpp:471 +#: ../src/ui/tool/node.cpp:470 msgctxt "Path hande tip" msgid "Shift: rotate both handles by the same angle" msgstr "" -#: ../src/ui/tool/node.cpp:478 +#: ../src/ui/tool/node.cpp:477 #, c-format msgctxt "Path handle tip" msgid "Auto node handle: drag to convert to smooth node (%s)" msgstr "" -#: ../src/ui/tool/node.cpp:481 +#: ../src/ui/tool/node.cpp:480 #, c-format msgctxt "Path handle tip" msgid "%s: drag to shape the segment (%s)" msgstr "" -#: ../src/ui/tool/node.cpp:497 +#: ../src/ui/tool/node.cpp:500 #, c-format msgctxt "Path handle tip" msgid "Move handle by %s, %s; angle %.2f°, length %s" msgstr "" -#: ../src/ui/tool/node.cpp:1263 +#: ../src/ui/tool/node.cpp:1266 msgctxt "Path node tip" msgid "Shift: drag out a handle, click to toggle selection" msgstr "" -#: ../src/ui/tool/node.cpp:1265 +#: ../src/ui/tool/node.cpp:1268 msgctxt "Path node tip" msgid "Shift: click to toggle selection" msgstr "" -#: ../src/ui/tool/node.cpp:1270 +#: ../src/ui/tool/node.cpp:1273 msgctxt "Path node tip" msgid "Ctrl+Alt: move along handle lines, click to delete node" msgstr "" -#: ../src/ui/tool/node.cpp:1273 +#: ../src/ui/tool/node.cpp:1276 msgctxt "Path node tip" msgid "Ctrl: move along axes, click to change node type" msgstr "" -#: ../src/ui/tool/node.cpp:1277 +#: ../src/ui/tool/node.cpp:1280 msgctxt "Path node tip" msgid "Alt: sculpt nodes" msgstr "" -#: ../src/ui/tool/node.cpp:1285 +#: ../src/ui/tool/node.cpp:1288 #, c-format msgctxt "Path node tip" msgid "%s: drag to shape the path (more: Shift, Ctrl, Alt)" msgstr "" -#: ../src/ui/tool/node.cpp:1288 +#: ../src/ui/tool/node.cpp:1291 #, c-format msgctxt "Path node tip" msgid "" @@ -20248,7 +20149,7 @@ msgid "" "(more: Shift, Ctrl, Alt)" msgstr "" -#: ../src/ui/tool/node.cpp:1291 +#: ../src/ui/tool/node.cpp:1294 #, c-format msgctxt "Path node tip" msgid "" @@ -20256,17 +20157,17 @@ msgid "" "Shift, Ctrl, Alt)" msgstr "" -#: ../src/ui/tool/node.cpp:1299 +#: ../src/ui/tool/node.cpp:1305 #, c-format msgctxt "Path node tip" msgid "Move node by %s, %s" msgstr "" -#: ../src/ui/tool/node.cpp:1311 +#: ../src/ui/tool/node.cpp:1317 msgid "Symmetric node" msgstr "" -#: ../src/ui/tool/node.cpp:1312 +#: ../src/ui/tool/node.cpp:1318 msgid "Auto-smooth node" msgstr "" @@ -20280,7 +20181,7 @@ msgstr "" #. We need to call MPM's method because it could have been our last node #: ../src/ui/tool/path-manipulator.cpp:1374 -#: ../src/widgets/node-toolbar.cpp:406 +#: ../src/widgets/node-toolbar.cpp:409 msgid "Delete node" msgstr "" @@ -20437,8 +20338,8 @@ msgid "MetadataLicence|Other" msgstr "" #: ../src/ui/widget/object-composite-settings.cpp:67 -#: ../src/ui/widget/selected-style.cpp:1090 -#: ../src/ui/widget/selected-style.cpp:1091 +#: ../src/ui/widget/selected-style.cpp:1095 +#: ../src/ui/widget/selected-style.cpp:1096 msgid "Opacity (%)" msgstr "" @@ -20447,87 +20348,89 @@ msgid "Change blur" msgstr "" #: ../src/ui/widget/object-composite-settings.cpp:220 -#: ../src/ui/widget/selected-style.cpp:922 -#: ../src/ui/widget/selected-style.cpp:1216 +#: ../src/ui/widget/selected-style.cpp:927 +#: ../src/ui/widget/selected-style.cpp:1221 msgid "Change opacity" msgstr "" -#: ../src/ui/widget/page-sizer.cpp:237 +#: ../src/ui/widget/page-sizer.cpp:235 msgid "U_nits:" msgstr "" -#: ../src/ui/widget/page-sizer.cpp:238 +#: ../src/ui/widget/page-sizer.cpp:236 msgid "Width of paper" msgstr "" -#: ../src/ui/widget/page-sizer.cpp:239 +#: ../src/ui/widget/page-sizer.cpp:237 msgid "Height of paper" msgstr "" -#: ../src/ui/widget/page-sizer.cpp:240 +#: ../src/ui/widget/page-sizer.cpp:238 msgid "T_op margin:" msgstr "" -#: ../src/ui/widget/page-sizer.cpp:240 +#: ../src/ui/widget/page-sizer.cpp:238 msgid "Top margin" msgstr "" -#: ../src/ui/widget/page-sizer.cpp:241 +#: ../src/ui/widget/page-sizer.cpp:239 msgid "L_eft:" msgstr "" -#: ../src/ui/widget/page-sizer.cpp:241 +#: ../src/ui/widget/page-sizer.cpp:239 +#: ../share/extensions/guides_creator.inx.h:17 msgid "Left margin" msgstr "" -#: ../src/ui/widget/page-sizer.cpp:242 +#: ../src/ui/widget/page-sizer.cpp:240 msgid "Ri_ght:" msgstr "" -#: ../src/ui/widget/page-sizer.cpp:242 +#: ../src/ui/widget/page-sizer.cpp:240 +#: ../share/extensions/guides_creator.inx.h:18 msgid "Right margin" msgstr "" -#: ../src/ui/widget/page-sizer.cpp:243 +#: ../src/ui/widget/page-sizer.cpp:241 msgid "Botto_m:" msgstr "" -#: ../src/ui/widget/page-sizer.cpp:243 +#: ../src/ui/widget/page-sizer.cpp:241 msgid "Bottom margin" msgstr "" -#: ../src/ui/widget/page-sizer.cpp:303 ../share/extensions/hpgl_output.inx.h:7 +#: ../src/ui/widget/page-sizer.cpp:296 ../share/extensions/hpgl_output.inx.h:7 msgid "Orientation:" msgstr "" -#: ../src/ui/widget/page-sizer.cpp:306 +#: ../src/ui/widget/page-sizer.cpp:299 msgid "_Landscape" msgstr "" -#: ../src/ui/widget/page-sizer.cpp:311 +#: ../src/ui/widget/page-sizer.cpp:304 msgid "_Portrait" msgstr "" #. ## Set up custom size frame -#: ../src/ui/widget/page-sizer.cpp:329 +#: ../src/ui/widget/page-sizer.cpp:322 msgid "Custom size" msgstr "" -#: ../src/ui/widget/page-sizer.cpp:374 +#: ../src/ui/widget/page-sizer.cpp:367 msgid "Resi_ze page to content..." msgstr "" -#: ../src/ui/widget/page-sizer.cpp:426 +#: ../src/ui/widget/page-sizer.cpp:419 msgid "_Resize page to drawing or selection" msgstr "" -#: ../src/ui/widget/page-sizer.cpp:427 +#: ../src/ui/widget/page-sizer.cpp:420 msgid "" "Resize the page to fit the current selection, or the entire drawing if there " "is no selection" msgstr "" -#: ../src/ui/widget/page-sizer.cpp:492 +#: ../src/ui/widget/page-sizer.cpp:485 msgid "Set page size" msgstr "" @@ -20669,280 +20572,280 @@ msgid "" "will be rendered exactly as displayed." msgstr "" -#: ../src/ui/widget/selected-style.cpp:127 -#: ../src/ui/widget/style-swatch.cpp:126 +#: ../src/ui/widget/selected-style.cpp:130 +#: ../src/ui/widget/style-swatch.cpp:127 msgid "Fill:" msgstr "" -#: ../src/ui/widget/selected-style.cpp:129 +#: ../src/ui/widget/selected-style.cpp:132 msgid "O:" msgstr "" -#: ../src/ui/widget/selected-style.cpp:174 +#: ../src/ui/widget/selected-style.cpp:177 msgid "N/A" msgstr "" -#: ../src/ui/widget/selected-style.cpp:177 -#: ../src/ui/widget/selected-style.cpp:1083 -#: ../src/ui/widget/selected-style.cpp:1084 +#: ../src/ui/widget/selected-style.cpp:180 +#: ../src/ui/widget/selected-style.cpp:1088 +#: ../src/ui/widget/selected-style.cpp:1089 #: ../src/widgets/gradient-toolbar.cpp:176 msgid "Nothing selected" msgstr "" -#: ../src/ui/widget/selected-style.cpp:179 -#: ../src/ui/widget/style-swatch.cpp:319 +#: ../src/ui/widget/selected-style.cpp:182 +#: ../src/ui/widget/style-swatch.cpp:320 msgctxt "Fill and stroke" msgid "None" msgstr "" -#: ../src/ui/widget/selected-style.cpp:182 -#: ../src/ui/widget/style-swatch.cpp:321 +#: ../src/ui/widget/selected-style.cpp:185 +#: ../src/ui/widget/style-swatch.cpp:322 msgctxt "Fill and stroke" msgid "No fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:182 -#: ../src/ui/widget/style-swatch.cpp:321 +#: ../src/ui/widget/selected-style.cpp:185 +#: ../src/ui/widget/style-swatch.cpp:322 msgctxt "Fill and stroke" msgid "No stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:184 -#: ../src/ui/widget/style-swatch.cpp:300 ../src/widgets/paint-selector.cpp:242 +#: ../src/ui/widget/selected-style.cpp:187 +#: ../src/ui/widget/style-swatch.cpp:301 ../src/widgets/paint-selector.cpp:242 msgid "Pattern" msgstr "" -#: ../src/ui/widget/selected-style.cpp:187 -#: ../src/ui/widget/style-swatch.cpp:302 +#: ../src/ui/widget/selected-style.cpp:190 +#: ../src/ui/widget/style-swatch.cpp:303 msgid "Pattern fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:187 -#: ../src/ui/widget/style-swatch.cpp:302 +#: ../src/ui/widget/selected-style.cpp:190 +#: ../src/ui/widget/style-swatch.cpp:303 msgid "Pattern stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:189 +#: ../src/ui/widget/selected-style.cpp:192 msgid "L" msgstr "" -#: ../src/ui/widget/selected-style.cpp:192 -#: ../src/ui/widget/style-swatch.cpp:294 +#: ../src/ui/widget/selected-style.cpp:195 +#: ../src/ui/widget/style-swatch.cpp:295 msgid "Linear gradient fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:192 -#: ../src/ui/widget/style-swatch.cpp:294 +#: ../src/ui/widget/selected-style.cpp:195 +#: ../src/ui/widget/style-swatch.cpp:295 msgid "Linear gradient stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:199 +#: ../src/ui/widget/selected-style.cpp:202 msgid "R" msgstr "" -#: ../src/ui/widget/selected-style.cpp:202 -#: ../src/ui/widget/style-swatch.cpp:298 +#: ../src/ui/widget/selected-style.cpp:205 +#: ../src/ui/widget/style-swatch.cpp:299 msgid "Radial gradient fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:202 -#: ../src/ui/widget/style-swatch.cpp:298 +#: ../src/ui/widget/selected-style.cpp:205 +#: ../src/ui/widget/style-swatch.cpp:299 msgid "Radial gradient stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:209 +#: ../src/ui/widget/selected-style.cpp:212 msgid "Different" msgstr "" -#: ../src/ui/widget/selected-style.cpp:212 +#: ../src/ui/widget/selected-style.cpp:215 msgid "Different fills" msgstr "" -#: ../src/ui/widget/selected-style.cpp:212 +#: ../src/ui/widget/selected-style.cpp:215 msgid "Different strokes" msgstr "" -#: ../src/ui/widget/selected-style.cpp:214 -#: ../src/ui/widget/style-swatch.cpp:324 +#: ../src/ui/widget/selected-style.cpp:217 +#: ../src/ui/widget/style-swatch.cpp:325 msgid "Unset" msgstr "" #. TRANSLATORS COMMENT: unset is a verb here -#: ../src/ui/widget/selected-style.cpp:217 -#: ../src/ui/widget/selected-style.cpp:275 -#: ../src/ui/widget/selected-style.cpp:554 -#: ../src/ui/widget/style-swatch.cpp:326 ../src/widgets/fill-style.cpp:712 +#: ../src/ui/widget/selected-style.cpp:220 +#: ../src/ui/widget/selected-style.cpp:278 +#: ../src/ui/widget/selected-style.cpp:559 +#: ../src/ui/widget/style-swatch.cpp:327 ../src/widgets/fill-style.cpp:712 msgid "Unset fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:217 -#: ../src/ui/widget/selected-style.cpp:275 -#: ../src/ui/widget/selected-style.cpp:570 -#: ../src/ui/widget/style-swatch.cpp:326 ../src/widgets/fill-style.cpp:712 +#: ../src/ui/widget/selected-style.cpp:220 +#: ../src/ui/widget/selected-style.cpp:278 +#: ../src/ui/widget/selected-style.cpp:575 +#: ../src/ui/widget/style-swatch.cpp:327 ../src/widgets/fill-style.cpp:712 msgid "Unset stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:220 +#: ../src/ui/widget/selected-style.cpp:223 msgid "Flat color fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:220 +#: ../src/ui/widget/selected-style.cpp:223 msgid "Flat color stroke" msgstr "" #. TRANSLATOR COMMENT: A means "Averaged" -#: ../src/ui/widget/selected-style.cpp:223 +#: ../src/ui/widget/selected-style.cpp:226 msgid "a" msgstr "" -#: ../src/ui/widget/selected-style.cpp:226 +#: ../src/ui/widget/selected-style.cpp:229 msgid "Fill is averaged over selected objects" msgstr "" -#: ../src/ui/widget/selected-style.cpp:226 +#: ../src/ui/widget/selected-style.cpp:229 msgid "Stroke is averaged over selected objects" msgstr "" #. TRANSLATOR COMMENT: M means "Multiple" -#: ../src/ui/widget/selected-style.cpp:229 +#: ../src/ui/widget/selected-style.cpp:232 msgid "m" msgstr "" -#: ../src/ui/widget/selected-style.cpp:232 +#: ../src/ui/widget/selected-style.cpp:235 msgid "Multiple selected objects have the same fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:232 +#: ../src/ui/widget/selected-style.cpp:235 msgid "Multiple selected objects have the same stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:234 +#: ../src/ui/widget/selected-style.cpp:237 msgid "Edit fill..." msgstr "" -#: ../src/ui/widget/selected-style.cpp:234 +#: ../src/ui/widget/selected-style.cpp:237 msgid "Edit stroke..." msgstr "" -#: ../src/ui/widget/selected-style.cpp:238 +#: ../src/ui/widget/selected-style.cpp:241 msgid "Last set color" msgstr "" -#: ../src/ui/widget/selected-style.cpp:242 +#: ../src/ui/widget/selected-style.cpp:245 msgid "Last selected color" msgstr "" -#: ../src/ui/widget/selected-style.cpp:258 +#: ../src/ui/widget/selected-style.cpp:261 msgid "Copy color" msgstr "" -#: ../src/ui/widget/selected-style.cpp:262 +#: ../src/ui/widget/selected-style.cpp:265 msgid "Paste color" msgstr "" -#: ../src/ui/widget/selected-style.cpp:266 -#: ../src/ui/widget/selected-style.cpp:847 +#: ../src/ui/widget/selected-style.cpp:269 +#: ../src/ui/widget/selected-style.cpp:852 msgid "Swap fill and stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:270 -#: ../src/ui/widget/selected-style.cpp:579 -#: ../src/ui/widget/selected-style.cpp:588 +#: ../src/ui/widget/selected-style.cpp:273 +#: ../src/ui/widget/selected-style.cpp:584 +#: ../src/ui/widget/selected-style.cpp:593 msgid "Make fill opaque" msgstr "" -#: ../src/ui/widget/selected-style.cpp:270 +#: ../src/ui/widget/selected-style.cpp:273 msgid "Make stroke opaque" msgstr "" -#: ../src/ui/widget/selected-style.cpp:279 -#: ../src/ui/widget/selected-style.cpp:536 ../src/widgets/fill-style.cpp:510 +#: ../src/ui/widget/selected-style.cpp:282 +#: ../src/ui/widget/selected-style.cpp:541 ../src/widgets/fill-style.cpp:510 msgid "Remove fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:279 -#: ../src/ui/widget/selected-style.cpp:545 ../src/widgets/fill-style.cpp:510 +#: ../src/ui/widget/selected-style.cpp:282 +#: ../src/ui/widget/selected-style.cpp:550 ../src/widgets/fill-style.cpp:510 msgid "Remove stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:600 +#: ../src/ui/widget/selected-style.cpp:605 msgid "Apply last set color to fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:612 +#: ../src/ui/widget/selected-style.cpp:617 msgid "Apply last set color to stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:623 +#: ../src/ui/widget/selected-style.cpp:628 msgid "Apply last selected color to fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:634 +#: ../src/ui/widget/selected-style.cpp:639 msgid "Apply last selected color to stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:660 +#: ../src/ui/widget/selected-style.cpp:665 msgid "Invert fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:684 +#: ../src/ui/widget/selected-style.cpp:689 msgid "Invert stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:696 +#: ../src/ui/widget/selected-style.cpp:701 msgid "White fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:708 +#: ../src/ui/widget/selected-style.cpp:713 msgid "White stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:720 +#: ../src/ui/widget/selected-style.cpp:725 msgid "Black fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:732 +#: ../src/ui/widget/selected-style.cpp:737 msgid "Black stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:775 +#: ../src/ui/widget/selected-style.cpp:780 msgid "Paste fill" msgstr "" -#: ../src/ui/widget/selected-style.cpp:793 +#: ../src/ui/widget/selected-style.cpp:798 msgid "Paste stroke" msgstr "" -#: ../src/ui/widget/selected-style.cpp:949 +#: ../src/ui/widget/selected-style.cpp:954 msgid "Change stroke width" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1044 +#: ../src/ui/widget/selected-style.cpp:1049 msgid ", drag to adjust" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1129 +#: ../src/ui/widget/selected-style.cpp:1134 #, c-format msgid "Stroke width: %.5g%s%s" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1133 +#: ../src/ui/widget/selected-style.cpp:1138 msgid " (averaged)" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1161 +#: ../src/ui/widget/selected-style.cpp:1166 msgid "0 (transparent)" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1185 +#: ../src/ui/widget/selected-style.cpp:1190 msgid "100% (opaque)" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1352 +#: ../src/ui/widget/selected-style.cpp:1357 msgid "Adjust alpha" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1354 +#: ../src/ui/widget/selected-style.cpp:1359 #, c-format msgid "" "Adjusting alpha: was %.3g, now %.3g (diff %.3g); with Ctrlsaturation: was %.3g, now %.3g (diff %.3g); with " @@ -20962,11 +20865,11 @@ msgid "" "modifiers to adjust hue" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1364 +#: ../src/ui/widget/selected-style.cpp:1369 msgid "Adjust lightness" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1366 +#: ../src/ui/widget/selected-style.cpp:1371 #, c-format msgid "" "Adjusting lightness: was %.3g, now %.3g (diff %.3g); with " @@ -20974,11 +20877,11 @@ msgid "" "modifiers to adjust hue" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1370 +#: ../src/ui/widget/selected-style.cpp:1375 msgid "Adjust hue" msgstr "" -#: ../src/ui/widget/selected-style.cpp:1372 +#: ../src/ui/widget/selected-style.cpp:1377 #, c-format msgid "" "Adjusting hue: was %.3g, now %.3g (diff %.3g); with Shiftstroke width: was %.3g, now %.3g (diff %.3g)" msgstr "" @@ -21002,35 +20905,35 @@ msgctxt "Sliders" msgid "Link" msgstr "" -#: ../src/ui/widget/style-swatch.cpp:292 +#: ../src/ui/widget/style-swatch.cpp:293 msgid "L Gradient" msgstr "" -#: ../src/ui/widget/style-swatch.cpp:296 +#: ../src/ui/widget/style-swatch.cpp:297 msgid "R Gradient" msgstr "" -#: ../src/ui/widget/style-swatch.cpp:312 +#: ../src/ui/widget/style-swatch.cpp:313 #, c-format msgid "Fill: %06x/%.3g" msgstr "" -#: ../src/ui/widget/style-swatch.cpp:314 +#: ../src/ui/widget/style-swatch.cpp:315 #, c-format msgid "Stroke: %06x/%.3g" msgstr "" -#: ../src/ui/widget/style-swatch.cpp:346 +#: ../src/ui/widget/style-swatch.cpp:347 #, c-format msgid "Stroke width: %.5g%s" msgstr "" -#: ../src/ui/widget/style-swatch.cpp:362 +#: ../src/ui/widget/style-swatch.cpp:363 #, c-format msgid "O: %2.0f" msgstr "" -#: ../src/ui/widget/style-swatch.cpp:367 +#: ../src/ui/widget/style-swatch.cpp:368 #, c-format msgid "Opacity: %2.1f %%" msgstr "" @@ -21077,30 +20980,35 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" -#: ../src/verbs.cpp:155 ../src/widgets/calligraphy-toolbar.cpp:647 +#: ../src/verbs.cpp:137 +msgid "File" +msgstr "" + +#: ../src/verbs.cpp:156 ../src/widgets/calligraphy-toolbar.cpp:643 msgid "Edit" msgstr "" -#: ../src/verbs.cpp:231 +#: ../src/verbs.cpp:232 msgid "Context" msgstr "" -#: ../src/verbs.cpp:250 ../src/verbs.cpp:2167 +#: ../src/verbs.cpp:251 ../src/verbs.cpp:2219 #: ../share/extensions/jessyInk_view.inx.h:1 #: ../share/extensions/polyhedron_3d.inx.h:26 msgid "View" msgstr "" -#: ../src/verbs.cpp:270 +#: ../src/verbs.cpp:271 msgid "Dialog" msgstr "" -#: ../src/verbs.cpp:327 ../share/extensions/lorem_ipsum.inx.h:8 +#: ../src/verbs.cpp:328 ../share/extensions/lorem_ipsum.inx.h:8 #: ../share/extensions/replace_font.inx.h:11 #: ../share/extensions/split.inx.h:10 ../share/extensions/text_braille.inx.h:2 #: ../share/extensions/text_extract.inx.h:14 #: ../share/extensions/text_flipcase.inx.h:2 #: ../share/extensions/text_lowercase.inx.h:2 +#: ../share/extensions/text_merge.inx.h:16 #: ../share/extensions/text_randomcase.inx.h:2 #: ../share/extensions/text_sentencecase.inx.h:2 #: ../share/extensions/text_titlecase.inx.h:2 @@ -21108,2680 +21016,2720 @@ msgstr "" msgid "Text" msgstr "" -#: ../src/verbs.cpp:1174 +#: ../src/verbs.cpp:1223 msgid "Switch to next layer" msgstr "" -#: ../src/verbs.cpp:1175 +#: ../src/verbs.cpp:1224 msgid "Switched to next layer." msgstr "" -#: ../src/verbs.cpp:1177 +#: ../src/verbs.cpp:1226 msgid "Cannot go past last layer." msgstr "" -#: ../src/verbs.cpp:1186 +#: ../src/verbs.cpp:1235 msgid "Switch to previous layer" msgstr "" -#: ../src/verbs.cpp:1187 +#: ../src/verbs.cpp:1236 msgid "Switched to previous layer." msgstr "" -#: ../src/verbs.cpp:1189 +#: ../src/verbs.cpp:1238 msgid "Cannot go before first layer." msgstr "" -#: ../src/verbs.cpp:1210 ../src/verbs.cpp:1307 ../src/verbs.cpp:1339 -#: ../src/verbs.cpp:1345 ../src/verbs.cpp:1369 ../src/verbs.cpp:1384 +#: ../src/verbs.cpp:1259 ../src/verbs.cpp:1356 ../src/verbs.cpp:1388 +#: ../src/verbs.cpp:1394 ../src/verbs.cpp:1418 ../src/verbs.cpp:1433 msgid "No current layer." msgstr "" -#: ../src/verbs.cpp:1239 ../src/verbs.cpp:1243 +#: ../src/verbs.cpp:1288 ../src/verbs.cpp:1292 #, c-format msgid "Raised layer %s." msgstr "" -#: ../src/verbs.cpp:1240 +#: ../src/verbs.cpp:1289 msgid "Layer to top" msgstr "" -#: ../src/verbs.cpp:1244 +#: ../src/verbs.cpp:1293 msgid "Raise layer" msgstr "" -#: ../src/verbs.cpp:1247 ../src/verbs.cpp:1251 +#: ../src/verbs.cpp:1296 ../src/verbs.cpp:1300 #, c-format msgid "Lowered layer %s." msgstr "" -#: ../src/verbs.cpp:1248 +#: ../src/verbs.cpp:1297 msgid "Layer to bottom" msgstr "" -#: ../src/verbs.cpp:1252 +#: ../src/verbs.cpp:1301 msgid "Lower layer" msgstr "" -#: ../src/verbs.cpp:1261 +#: ../src/verbs.cpp:1310 msgid "Cannot move layer any further." msgstr "" -#: ../src/verbs.cpp:1275 ../src/verbs.cpp:1294 +#: ../src/verbs.cpp:1324 ../src/verbs.cpp:1343 #, c-format msgid "%s copy" msgstr "" -#: ../src/verbs.cpp:1302 +#: ../src/verbs.cpp:1351 msgid "Duplicate layer" msgstr "" #. TRANSLATORS: this means "The layer has been duplicated." -#: ../src/verbs.cpp:1305 +#: ../src/verbs.cpp:1354 msgid "Duplicated layer." msgstr "" -#: ../src/verbs.cpp:1334 +#: ../src/verbs.cpp:1383 msgid "Delete layer" msgstr "" #. TRANSLATORS: this means "The layer has been deleted." -#: ../src/verbs.cpp:1337 +#: ../src/verbs.cpp:1386 msgid "Deleted layer." msgstr "" -#: ../src/verbs.cpp:1354 +#: ../src/verbs.cpp:1403 msgid "Show all layers" msgstr "" -#: ../src/verbs.cpp:1359 +#: ../src/verbs.cpp:1408 msgid "Hide all layers" msgstr "" -#: ../src/verbs.cpp:1364 +#: ../src/verbs.cpp:1413 msgid "Lock all layers" msgstr "" -#: ../src/verbs.cpp:1378 +#: ../src/verbs.cpp:1427 msgid "Unlock all layers" msgstr "" -#: ../src/verbs.cpp:1452 +#: ../src/verbs.cpp:1511 msgid "Flip horizontally" msgstr "" -#: ../src/verbs.cpp:1457 +#: ../src/verbs.cpp:1516 msgid "Flip vertically" msgstr "" #. TRANSLATORS: If you have translated the tutorial-basic.en.svgz file to your language, #. then translate this string as "tutorial-basic.LANG.svgz" (where LANG is your language #. code); otherwise leave as "tutorial-basic.svg". -#: ../src/verbs.cpp:2050 +#: ../src/verbs.cpp:2104 msgid "tutorial-basic.svg" msgstr "" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2054 +#: ../src/verbs.cpp:2108 msgid "tutorial-shapes.svg" msgstr "" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2058 +#: ../src/verbs.cpp:2112 msgid "tutorial-advanced.svg" msgstr "" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2062 +#: ../src/verbs.cpp:2116 msgid "tutorial-tracing.svg" msgstr "" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2066 +#: ../src/verbs.cpp:2120 msgid "tutorial-calligraphy.svg" msgstr "" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2070 +#: ../src/verbs.cpp:2124 msgid "tutorial-interpolate.svg" msgstr "" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2074 +#: ../src/verbs.cpp:2128 msgid "tutorial-elements.svg" msgstr "" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2078 +#: ../src/verbs.cpp:2132 msgid "tutorial-tips.svg" msgstr "" -#: ../src/verbs.cpp:2266 ../src/verbs.cpp:2852 +#: ../src/verbs.cpp:2318 ../src/verbs.cpp:2904 msgid "Unlock all objects in the current layer" msgstr "" -#: ../src/verbs.cpp:2270 ../src/verbs.cpp:2854 +#: ../src/verbs.cpp:2322 ../src/verbs.cpp:2906 msgid "Unlock all objects in all layers" msgstr "" -#: ../src/verbs.cpp:2274 ../src/verbs.cpp:2856 +#: ../src/verbs.cpp:2326 ../src/verbs.cpp:2908 msgid "Unhide all objects in the current layer" msgstr "" -#: ../src/verbs.cpp:2278 ../src/verbs.cpp:2858 +#: ../src/verbs.cpp:2330 ../src/verbs.cpp:2910 msgid "Unhide all objects in all layers" msgstr "" -#: ../src/verbs.cpp:2293 +#: ../src/verbs.cpp:2345 msgid "Does nothing" msgstr "" -#: ../src/verbs.cpp:2296 +#: ../src/verbs.cpp:2348 msgid "Create new document from the default template" msgstr "" -#: ../src/verbs.cpp:2298 +#: ../src/verbs.cpp:2350 msgid "_Open..." msgstr "" -#: ../src/verbs.cpp:2299 +#: ../src/verbs.cpp:2351 msgid "Open an existing document" msgstr "" -#: ../src/verbs.cpp:2300 +#: ../src/verbs.cpp:2352 msgid "Re_vert" msgstr "" -#: ../src/verbs.cpp:2301 +#: ../src/verbs.cpp:2353 msgid "Revert to the last saved version of document (changes will be lost)" msgstr "" -#: ../src/verbs.cpp:2302 +#: ../src/verbs.cpp:2354 msgid "Save document" msgstr "" -#: ../src/verbs.cpp:2304 +#: ../src/verbs.cpp:2356 msgid "Save _As..." msgstr "" -#: ../src/verbs.cpp:2305 +#: ../src/verbs.cpp:2357 msgid "Save document under a new name" msgstr "" -#: ../src/verbs.cpp:2306 +#: ../src/verbs.cpp:2358 msgid "Save a Cop_y..." msgstr "" -#: ../src/verbs.cpp:2307 +#: ../src/verbs.cpp:2359 msgid "Save a copy of the document under a new name" msgstr "" -#: ../src/verbs.cpp:2308 +#: ../src/verbs.cpp:2360 msgid "_Print..." msgstr "" -#: ../src/verbs.cpp:2308 +#: ../src/verbs.cpp:2360 msgid "Print document" msgstr "" #. TRANSLATORS: "Vacuum Defs" means "Clean up defs" (so as to remove unused definitions) -#: ../src/verbs.cpp:2311 +#: ../src/verbs.cpp:2363 msgid "Clean _up document" msgstr "" -#: ../src/verbs.cpp:2311 +#: ../src/verbs.cpp:2363 msgid "" "Remove unused definitions (such as gradients or clipping paths) from the <" "defs> of the document" msgstr "" -#: ../src/verbs.cpp:2313 +#: ../src/verbs.cpp:2365 msgid "_Import..." msgstr "" -#: ../src/verbs.cpp:2314 +#: ../src/verbs.cpp:2366 msgid "Import a bitmap or SVG image into this document" msgstr "" -#: ../src/verbs.cpp:2315 +#: ../src/verbs.cpp:2367 msgid "_Export Bitmap..." msgstr "" -#: ../src/verbs.cpp:2316 +#: ../src/verbs.cpp:2368 msgid "Export this document or a selection as a bitmap image" msgstr "" -#: ../src/verbs.cpp:2317 +#: ../src/verbs.cpp:2369 msgid "Import Clip Art..." msgstr "" -#: ../src/verbs.cpp:2318 +#: ../src/verbs.cpp:2370 msgid "Import clipart from Open Clip Art Library" msgstr "" #. new FileVerb(SP_VERB_FILE_EXPORT_TO_OCAL, "FileExportToOCAL", N_("Export To Open Clip Art Library"), N_("Export this document to Open Clip Art Library"), INKSCAPE_ICON_DOCUMENT_EXPORT_OCAL), -#: ../src/verbs.cpp:2320 +#: ../src/verbs.cpp:2372 msgid "N_ext Window" msgstr "" -#: ../src/verbs.cpp:2321 +#: ../src/verbs.cpp:2373 msgid "Switch to the next document window" msgstr "" -#: ../src/verbs.cpp:2322 +#: ../src/verbs.cpp:2374 msgid "P_revious Window" msgstr "" -#: ../src/verbs.cpp:2323 +#: ../src/verbs.cpp:2375 msgid "Switch to the previous document window" msgstr "" -#: ../src/verbs.cpp:2324 +#: ../src/verbs.cpp:2376 msgid "_Close" msgstr "" -#: ../src/verbs.cpp:2325 +#: ../src/verbs.cpp:2377 msgid "Close this document window" msgstr "" -#: ../src/verbs.cpp:2326 +#: ../src/verbs.cpp:2378 msgid "_Quit" msgstr "" -#: ../src/verbs.cpp:2326 +#: ../src/verbs.cpp:2378 msgid "Quit Inkscape" msgstr "" -#: ../src/verbs.cpp:2329 +#: ../src/verbs.cpp:2379 +msgid "_Templates..." +msgstr "" + +#: ../src/verbs.cpp:2380 +msgid "Create new project from template" +msgstr "" + +#: ../src/verbs.cpp:2383 msgid "Undo last action" msgstr "" -#: ../src/verbs.cpp:2332 +#: ../src/verbs.cpp:2386 msgid "Do again the last undone action" msgstr "" -#: ../src/verbs.cpp:2333 +#: ../src/verbs.cpp:2387 msgid "Cu_t" msgstr "" -#: ../src/verbs.cpp:2334 +#: ../src/verbs.cpp:2388 msgid "Cut selection to clipboard" msgstr "" -#: ../src/verbs.cpp:2335 +#: ../src/verbs.cpp:2389 msgid "_Copy" msgstr "" -#: ../src/verbs.cpp:2336 +#: ../src/verbs.cpp:2390 msgid "Copy selection to clipboard" msgstr "" -#: ../src/verbs.cpp:2337 +#: ../src/verbs.cpp:2391 msgid "_Paste" msgstr "" -#: ../src/verbs.cpp:2338 +#: ../src/verbs.cpp:2392 msgid "Paste objects from clipboard to mouse point, or paste text" msgstr "" -#: ../src/verbs.cpp:2339 +#: ../src/verbs.cpp:2393 msgid "Paste _Style" msgstr "" -#: ../src/verbs.cpp:2340 +#: ../src/verbs.cpp:2394 msgid "Apply the style of the copied object to selection" msgstr "" -#: ../src/verbs.cpp:2342 +#: ../src/verbs.cpp:2396 msgid "Scale selection to match the size of the copied object" msgstr "" -#: ../src/verbs.cpp:2343 +#: ../src/verbs.cpp:2397 msgid "Paste _Width" msgstr "" -#: ../src/verbs.cpp:2344 +#: ../src/verbs.cpp:2398 msgid "Scale selection horizontally to match the width of the copied object" msgstr "" -#: ../src/verbs.cpp:2345 +#: ../src/verbs.cpp:2399 msgid "Paste _Height" msgstr "" -#: ../src/verbs.cpp:2346 +#: ../src/verbs.cpp:2400 msgid "Scale selection vertically to match the height of the copied object" msgstr "" -#: ../src/verbs.cpp:2347 +#: ../src/verbs.cpp:2401 msgid "Paste Size Separately" msgstr "" -#: ../src/verbs.cpp:2348 +#: ../src/verbs.cpp:2402 msgid "Scale each selected object to match the size of the copied object" msgstr "" -#: ../src/verbs.cpp:2349 +#: ../src/verbs.cpp:2403 msgid "Paste Width Separately" msgstr "" -#: ../src/verbs.cpp:2350 +#: ../src/verbs.cpp:2404 msgid "" "Scale each selected object horizontally to match the width of the copied " "object" msgstr "" -#: ../src/verbs.cpp:2351 +#: ../src/verbs.cpp:2405 msgid "Paste Height Separately" msgstr "" -#: ../src/verbs.cpp:2352 +#: ../src/verbs.cpp:2406 msgid "" "Scale each selected object vertically to match the height of the copied " "object" msgstr "" -#: ../src/verbs.cpp:2353 +#: ../src/verbs.cpp:2407 msgid "Paste _In Place" msgstr "" -#: ../src/verbs.cpp:2354 +#: ../src/verbs.cpp:2408 msgid "Paste objects from clipboard to the original location" msgstr "" -#: ../src/verbs.cpp:2355 +#: ../src/verbs.cpp:2409 msgid "Paste Path _Effect" msgstr "" -#: ../src/verbs.cpp:2356 +#: ../src/verbs.cpp:2410 msgid "Apply the path effect of the copied object to selection" msgstr "" -#: ../src/verbs.cpp:2357 +#: ../src/verbs.cpp:2411 msgid "Remove Path _Effect" msgstr "" -#: ../src/verbs.cpp:2358 +#: ../src/verbs.cpp:2412 msgid "Remove any path effects from selected objects" msgstr "" -#: ../src/verbs.cpp:2359 +#: ../src/verbs.cpp:2413 msgid "_Remove Filters" msgstr "" -#: ../src/verbs.cpp:2360 +#: ../src/verbs.cpp:2414 msgid "Remove any filters from selected objects" msgstr "" -#: ../src/verbs.cpp:2361 +#: ../src/verbs.cpp:2415 msgid "_Delete" msgstr "" -#: ../src/verbs.cpp:2362 +#: ../src/verbs.cpp:2416 msgid "Delete selection" msgstr "" -#: ../src/verbs.cpp:2363 +#: ../src/verbs.cpp:2417 msgid "Duplic_ate" msgstr "" -#: ../src/verbs.cpp:2364 +#: ../src/verbs.cpp:2418 msgid "Duplicate selected objects" msgstr "" -#: ../src/verbs.cpp:2365 +#: ../src/verbs.cpp:2419 msgid "Create Clo_ne" msgstr "" -#: ../src/verbs.cpp:2366 +#: ../src/verbs.cpp:2420 msgid "Create a clone (a copy linked to the original) of selected object" msgstr "" -#: ../src/verbs.cpp:2367 +#: ../src/verbs.cpp:2421 msgid "Unlin_k Clone" msgstr "" -#: ../src/verbs.cpp:2368 +#: ../src/verbs.cpp:2422 msgid "" "Cut the selected clones' links to the originals, turning them into " "standalone objects" msgstr "" -#: ../src/verbs.cpp:2369 +#: ../src/verbs.cpp:2423 msgid "Relink to Copied" msgstr "" -#: ../src/verbs.cpp:2370 +#: ../src/verbs.cpp:2424 msgid "Relink the selected clones to the object currently on the clipboard" msgstr "" -#: ../src/verbs.cpp:2371 +#: ../src/verbs.cpp:2425 msgid "Select _Original" msgstr "" -#: ../src/verbs.cpp:2372 +#: ../src/verbs.cpp:2426 msgid "Select the object to which the selected clone is linked" msgstr "" -#: ../src/verbs.cpp:2373 +#: ../src/verbs.cpp:2427 msgid "Clone original path (LPE)" msgstr "" -#: ../src/verbs.cpp:2374 +#: ../src/verbs.cpp:2428 msgid "" "Creates a new path, applies the Clone original LPE, and refers it to the " "selected path" msgstr "" -#: ../src/verbs.cpp:2375 +#: ../src/verbs.cpp:2429 msgid "Objects to _Marker" msgstr "" -#: ../src/verbs.cpp:2376 +#: ../src/verbs.cpp:2430 msgid "Convert selection to a line marker" msgstr "" -#: ../src/verbs.cpp:2377 +#: ../src/verbs.cpp:2431 msgid "Objects to Gu_ides" msgstr "" -#: ../src/verbs.cpp:2378 +#: ../src/verbs.cpp:2432 msgid "" "Convert selected objects to a collection of guidelines aligned with their " "edges" msgstr "" -#: ../src/verbs.cpp:2379 +#: ../src/verbs.cpp:2433 msgid "Objects to Patter_n" msgstr "" -#: ../src/verbs.cpp:2380 +#: ../src/verbs.cpp:2434 msgid "Convert selection to a rectangle with tiled pattern fill" msgstr "" -#: ../src/verbs.cpp:2381 +#: ../src/verbs.cpp:2435 msgid "Pattern to _Objects" msgstr "" -#: ../src/verbs.cpp:2382 +#: ../src/verbs.cpp:2436 msgid "Extract objects from a tiled pattern fill" msgstr "" -#: ../src/verbs.cpp:2383 +#: ../src/verbs.cpp:2437 msgid "Group to Symbol" msgstr "" -#: ../src/verbs.cpp:2384 +#: ../src/verbs.cpp:2438 msgid "Convert group to a symbol" msgstr "" -#: ../src/verbs.cpp:2385 +#: ../src/verbs.cpp:2439 msgid "Symbol to Group" msgstr "" -#: ../src/verbs.cpp:2386 +#: ../src/verbs.cpp:2440 msgid "Extract group from a symbol" msgstr "" -#: ../src/verbs.cpp:2387 +#: ../src/verbs.cpp:2441 msgid "Clea_r All" msgstr "" -#: ../src/verbs.cpp:2388 +#: ../src/verbs.cpp:2442 msgid "Delete all objects from document" msgstr "" -#: ../src/verbs.cpp:2389 +#: ../src/verbs.cpp:2443 msgid "Select Al_l" msgstr "" -#: ../src/verbs.cpp:2390 +#: ../src/verbs.cpp:2444 msgid "Select all objects or all nodes" msgstr "" -#: ../src/verbs.cpp:2391 +#: ../src/verbs.cpp:2445 msgid "Select All in All La_yers" msgstr "" -#: ../src/verbs.cpp:2392 +#: ../src/verbs.cpp:2446 msgid "Select all objects in all visible and unlocked layers" msgstr "" -#: ../src/verbs.cpp:2393 +#: ../src/verbs.cpp:2447 msgid "Fill _and Stroke" msgstr "" -#: ../src/verbs.cpp:2394 +#: ../src/verbs.cpp:2448 msgid "" "Select all objects with the same fill and stroke as the selected objects" msgstr "" -#: ../src/verbs.cpp:2395 +#: ../src/verbs.cpp:2449 msgid "_Fill Color" msgstr "" -#: ../src/verbs.cpp:2396 +#: ../src/verbs.cpp:2450 msgid "Select all objects with the same fill as the selected objects" msgstr "" -#: ../src/verbs.cpp:2397 +#: ../src/verbs.cpp:2451 msgid "_Stroke Color" msgstr "" -#: ../src/verbs.cpp:2398 +#: ../src/verbs.cpp:2452 msgid "Select all objects with the same stroke as the selected objects" msgstr "" -#: ../src/verbs.cpp:2399 +#: ../src/verbs.cpp:2453 msgid "Stroke St_yle" msgstr "" -#: ../src/verbs.cpp:2400 +#: ../src/verbs.cpp:2454 msgid "" "Select all objects with the same stroke style (width, dash, markers) as the " "selected objects" msgstr "" -#: ../src/verbs.cpp:2401 +#: ../src/verbs.cpp:2455 msgid "_Object Type" msgstr "" -#: ../src/verbs.cpp:2402 +#: ../src/verbs.cpp:2456 msgid "" "Select all objects with the same object type (rect, arc, text, path, bitmap " "etc) as the selected objects" msgstr "" -#: ../src/verbs.cpp:2403 +#: ../src/verbs.cpp:2457 msgid "In_vert Selection" msgstr "" -#: ../src/verbs.cpp:2404 +#: ../src/verbs.cpp:2458 msgid "Invert selection (unselect what is selected and select everything else)" msgstr "" -#: ../src/verbs.cpp:2405 +#: ../src/verbs.cpp:2459 msgid "Invert in All Layers" msgstr "" -#: ../src/verbs.cpp:2406 +#: ../src/verbs.cpp:2460 msgid "Invert selection in all visible and unlocked layers" msgstr "" -#: ../src/verbs.cpp:2407 +#: ../src/verbs.cpp:2461 msgid "Select Next" msgstr "" -#: ../src/verbs.cpp:2408 +#: ../src/verbs.cpp:2462 msgid "Select next object or node" msgstr "" -#: ../src/verbs.cpp:2409 +#: ../src/verbs.cpp:2463 msgid "Select Previous" msgstr "" -#: ../src/verbs.cpp:2410 +#: ../src/verbs.cpp:2464 msgid "Select previous object or node" msgstr "" -#: ../src/verbs.cpp:2411 +#: ../src/verbs.cpp:2465 msgid "D_eselect" msgstr "" -#: ../src/verbs.cpp:2412 +#: ../src/verbs.cpp:2466 msgid "Deselect any selected objects or nodes" msgstr "" -#: ../src/verbs.cpp:2413 -msgid "Create _Guides Around the Page" +#: ../src/verbs.cpp:2468 ../src/verbs.cpp:2470 +msgid "Create four guides aligned with the page borders" msgstr "" -#: ../src/verbs.cpp:2414 ../src/verbs.cpp:2416 -msgid "Create four guides aligned with the page borders" +#: ../src/verbs.cpp:2469 +msgid "Create _Guides Around the Page" msgstr "" -#: ../src/verbs.cpp:2417 +#: ../src/verbs.cpp:2471 msgid "Next path effect parameter" msgstr "" -#: ../src/verbs.cpp:2418 +#: ../src/verbs.cpp:2472 msgid "Show next editable path effect parameter" msgstr "" #. Selection -#: ../src/verbs.cpp:2421 +#: ../src/verbs.cpp:2475 msgid "Raise to _Top" msgstr "" -#: ../src/verbs.cpp:2422 +#: ../src/verbs.cpp:2476 msgid "Raise selection to top" msgstr "" -#: ../src/verbs.cpp:2423 +#: ../src/verbs.cpp:2477 msgid "Lower to _Bottom" msgstr "" -#: ../src/verbs.cpp:2424 +#: ../src/verbs.cpp:2478 msgid "Lower selection to bottom" msgstr "" -#: ../src/verbs.cpp:2425 +#: ../src/verbs.cpp:2479 msgid "_Raise" msgstr "" -#: ../src/verbs.cpp:2426 +#: ../src/verbs.cpp:2480 msgid "Raise selection one step" msgstr "" -#: ../src/verbs.cpp:2427 +#: ../src/verbs.cpp:2481 msgid "_Lower" msgstr "" -#: ../src/verbs.cpp:2428 +#: ../src/verbs.cpp:2482 msgid "Lower selection one step" msgstr "" -#: ../src/verbs.cpp:2430 +#: ../src/verbs.cpp:2484 msgid "Group selected objects" msgstr "" -#: ../src/verbs.cpp:2432 +#: ../src/verbs.cpp:2486 msgid "Ungroup selected groups" msgstr "" -#: ../src/verbs.cpp:2434 +#: ../src/verbs.cpp:2488 msgid "_Put on Path" msgstr "" -#: ../src/verbs.cpp:2436 +#: ../src/verbs.cpp:2490 msgid "_Remove from Path" msgstr "" -#: ../src/verbs.cpp:2438 +#: ../src/verbs.cpp:2492 msgid "Remove Manual _Kerns" msgstr "" #. TRANSLATORS: "glyph": An image used in the visual representation of characters; #. roughly speaking, how a character looks. A font is a set of glyphs. -#: ../src/verbs.cpp:2441 +#: ../src/verbs.cpp:2495 msgid "Remove all manual kerns and glyph rotations from a text object" msgstr "" -#: ../src/verbs.cpp:2443 +#: ../src/verbs.cpp:2497 msgid "_Union" msgstr "" -#: ../src/verbs.cpp:2444 +#: ../src/verbs.cpp:2498 msgid "Create union of selected paths" msgstr "" -#: ../src/verbs.cpp:2445 +#: ../src/verbs.cpp:2499 msgid "_Intersection" msgstr "" -#: ../src/verbs.cpp:2446 +#: ../src/verbs.cpp:2500 msgid "Create intersection of selected paths" msgstr "" -#: ../src/verbs.cpp:2447 +#: ../src/verbs.cpp:2501 msgid "_Difference" msgstr "" -#: ../src/verbs.cpp:2448 +#: ../src/verbs.cpp:2502 msgid "Create difference of selected paths (bottom minus top)" msgstr "" -#: ../src/verbs.cpp:2449 +#: ../src/verbs.cpp:2503 msgid "E_xclusion" msgstr "" -#: ../src/verbs.cpp:2450 +#: ../src/verbs.cpp:2504 msgid "" "Create exclusive OR of selected paths (those parts that belong to only one " "path)" msgstr "" -#: ../src/verbs.cpp:2451 +#: ../src/verbs.cpp:2505 msgid "Di_vision" msgstr "" -#: ../src/verbs.cpp:2452 +#: ../src/verbs.cpp:2506 msgid "Cut the bottom path into pieces" msgstr "" #. TRANSLATORS: "to cut a path" is not the same as "to break a path apart" - see the #. Advanced tutorial for more info -#: ../src/verbs.cpp:2455 +#: ../src/verbs.cpp:2509 msgid "Cut _Path" msgstr "" -#: ../src/verbs.cpp:2456 +#: ../src/verbs.cpp:2510 msgid "Cut the bottom path's stroke into pieces, removing fill" msgstr "" #. TRANSLATORS: "outset": expand a shape by offsetting the object's path, #. i.e. by displacing it perpendicular to the path in each point. #. See also the Advanced Tutorial for explanation. -#: ../src/verbs.cpp:2460 +#: ../src/verbs.cpp:2514 msgid "Outs_et" msgstr "" -#: ../src/verbs.cpp:2461 +#: ../src/verbs.cpp:2515 msgid "Outset selected paths" msgstr "" -#: ../src/verbs.cpp:2463 +#: ../src/verbs.cpp:2517 msgid "O_utset Path by 1 px" msgstr "" -#: ../src/verbs.cpp:2464 +#: ../src/verbs.cpp:2518 msgid "Outset selected paths by 1 px" msgstr "" -#: ../src/verbs.cpp:2466 +#: ../src/verbs.cpp:2520 msgid "O_utset Path by 10 px" msgstr "" -#: ../src/verbs.cpp:2467 +#: ../src/verbs.cpp:2521 msgid "Outset selected paths by 10 px" msgstr "" #. TRANSLATORS: "inset": contract a shape by offsetting the object's path, #. i.e. by displacing it perpendicular to the path in each point. #. See also the Advanced Tutorial for explanation. -#: ../src/verbs.cpp:2471 +#: ../src/verbs.cpp:2525 msgid "I_nset" msgstr "" -#: ../src/verbs.cpp:2472 +#: ../src/verbs.cpp:2526 msgid "Inset selected paths" msgstr "" -#: ../src/verbs.cpp:2474 +#: ../src/verbs.cpp:2528 msgid "I_nset Path by 1 px" msgstr "" -#: ../src/verbs.cpp:2475 +#: ../src/verbs.cpp:2529 msgid "Inset selected paths by 1 px" msgstr "" -#: ../src/verbs.cpp:2477 +#: ../src/verbs.cpp:2531 msgid "I_nset Path by 10 px" msgstr "" -#: ../src/verbs.cpp:2478 +#: ../src/verbs.cpp:2532 msgid "Inset selected paths by 10 px" msgstr "" -#: ../src/verbs.cpp:2480 +#: ../src/verbs.cpp:2534 msgid "D_ynamic Offset" msgstr "" -#: ../src/verbs.cpp:2480 +#: ../src/verbs.cpp:2534 msgid "Create a dynamic offset object" msgstr "" -#: ../src/verbs.cpp:2482 +#: ../src/verbs.cpp:2536 msgid "_Linked Offset" msgstr "" -#: ../src/verbs.cpp:2483 +#: ../src/verbs.cpp:2537 msgid "Create a dynamic offset object linked to the original path" msgstr "" -#: ../src/verbs.cpp:2485 +#: ../src/verbs.cpp:2539 msgid "_Stroke to Path" msgstr "" -#: ../src/verbs.cpp:2486 +#: ../src/verbs.cpp:2540 msgid "Convert selected object's stroke to paths" msgstr "" -#: ../src/verbs.cpp:2487 +#: ../src/verbs.cpp:2541 msgid "Si_mplify" msgstr "" -#: ../src/verbs.cpp:2488 +#: ../src/verbs.cpp:2542 msgid "Simplify selected paths (remove extra nodes)" msgstr "" -#: ../src/verbs.cpp:2489 +#: ../src/verbs.cpp:2543 msgid "_Reverse" msgstr "" -#: ../src/verbs.cpp:2490 +#: ../src/verbs.cpp:2544 msgid "Reverse the direction of selected paths (useful for flipping markers)" msgstr "" -#: ../src/verbs.cpp:2493 +#: ../src/verbs.cpp:2547 msgid "Create one or more paths from a bitmap by tracing it" msgstr "" -#: ../src/verbs.cpp:2494 +#: ../src/verbs.cpp:2548 msgid "Make a _Bitmap Copy" msgstr "" -#: ../src/verbs.cpp:2495 +#: ../src/verbs.cpp:2549 msgid "Export selection to a bitmap and insert it into document" msgstr "" -#: ../src/verbs.cpp:2496 +#: ../src/verbs.cpp:2550 msgid "_Combine" msgstr "" -#: ../src/verbs.cpp:2497 +#: ../src/verbs.cpp:2551 msgid "Combine several paths into one" msgstr "" #. TRANSLATORS: "to cut a path" is not the same as "to break a path apart" - see the #. Advanced tutorial for more info -#: ../src/verbs.cpp:2500 +#: ../src/verbs.cpp:2554 msgid "Break _Apart" msgstr "" -#: ../src/verbs.cpp:2501 +#: ../src/verbs.cpp:2555 msgid "Break selected paths into subpaths" msgstr "" -#: ../src/verbs.cpp:2502 +#: ../src/verbs.cpp:2556 msgid "Ro_ws and Columns..." msgstr "" -#: ../src/verbs.cpp:2503 +#: ../src/verbs.cpp:2557 msgid "Arrange selected objects in a table" msgstr "" #. Layer -#: ../src/verbs.cpp:2505 +#: ../src/verbs.cpp:2559 msgid "_Add Layer..." msgstr "" -#: ../src/verbs.cpp:2506 +#: ../src/verbs.cpp:2560 msgid "Create a new layer" msgstr "" -#: ../src/verbs.cpp:2507 +#: ../src/verbs.cpp:2561 msgid "Re_name Layer..." msgstr "" -#: ../src/verbs.cpp:2508 +#: ../src/verbs.cpp:2562 msgid "Rename the current layer" msgstr "" -#: ../src/verbs.cpp:2509 +#: ../src/verbs.cpp:2563 msgid "Switch to Layer Abov_e" msgstr "" -#: ../src/verbs.cpp:2510 +#: ../src/verbs.cpp:2564 msgid "Switch to the layer above the current" msgstr "" -#: ../src/verbs.cpp:2511 +#: ../src/verbs.cpp:2565 msgid "Switch to Layer Belo_w" msgstr "" -#: ../src/verbs.cpp:2512 +#: ../src/verbs.cpp:2566 msgid "Switch to the layer below the current" msgstr "" -#: ../src/verbs.cpp:2513 +#: ../src/verbs.cpp:2567 msgid "Move Selection to Layer Abo_ve" msgstr "" -#: ../src/verbs.cpp:2514 +#: ../src/verbs.cpp:2568 msgid "Move selection to the layer above the current" msgstr "" -#: ../src/verbs.cpp:2515 +#: ../src/verbs.cpp:2569 msgid "Move Selection to Layer Bel_ow" msgstr "" -#: ../src/verbs.cpp:2516 +#: ../src/verbs.cpp:2570 msgid "Move selection to the layer below the current" msgstr "" -#: ../src/verbs.cpp:2517 +#: ../src/verbs.cpp:2571 msgid "Move Selection to Layer..." msgstr "" -#: ../src/verbs.cpp:2519 +#: ../src/verbs.cpp:2573 msgid "Layer to _Top" msgstr "" -#: ../src/verbs.cpp:2520 +#: ../src/verbs.cpp:2574 msgid "Raise the current layer to the top" msgstr "" -#: ../src/verbs.cpp:2521 +#: ../src/verbs.cpp:2575 msgid "Layer to _Bottom" msgstr "" -#: ../src/verbs.cpp:2522 +#: ../src/verbs.cpp:2576 msgid "Lower the current layer to the bottom" msgstr "" -#: ../src/verbs.cpp:2523 +#: ../src/verbs.cpp:2577 msgid "_Raise Layer" msgstr "" -#: ../src/verbs.cpp:2524 +#: ../src/verbs.cpp:2578 msgid "Raise the current layer" msgstr "" -#: ../src/verbs.cpp:2525 +#: ../src/verbs.cpp:2579 msgid "_Lower Layer" msgstr "" -#: ../src/verbs.cpp:2526 +#: ../src/verbs.cpp:2580 msgid "Lower the current layer" msgstr "" -#: ../src/verbs.cpp:2527 +#: ../src/verbs.cpp:2581 msgid "D_uplicate Current Layer" msgstr "" -#: ../src/verbs.cpp:2528 +#: ../src/verbs.cpp:2582 msgid "Duplicate an existing layer" msgstr "" -#: ../src/verbs.cpp:2529 +#: ../src/verbs.cpp:2583 msgid "_Delete Current Layer" msgstr "" -#: ../src/verbs.cpp:2530 +#: ../src/verbs.cpp:2584 msgid "Delete the current layer" msgstr "" -#: ../src/verbs.cpp:2531 +#: ../src/verbs.cpp:2585 msgid "_Show/hide other layers" msgstr "" -#: ../src/verbs.cpp:2532 +#: ../src/verbs.cpp:2586 msgid "Solo the current layer" msgstr "" -#: ../src/verbs.cpp:2533 +#: ../src/verbs.cpp:2587 msgid "_Show all layers" msgstr "" -#: ../src/verbs.cpp:2534 +#: ../src/verbs.cpp:2588 msgid "Show all the layers" msgstr "" -#: ../src/verbs.cpp:2535 +#: ../src/verbs.cpp:2589 msgid "_Hide all layers" msgstr "" -#: ../src/verbs.cpp:2536 +#: ../src/verbs.cpp:2590 msgid "Hide all the layers" msgstr "" -#: ../src/verbs.cpp:2537 +#: ../src/verbs.cpp:2591 msgid "_Lock all layers" msgstr "" -#: ../src/verbs.cpp:2538 +#: ../src/verbs.cpp:2592 msgid "Lock all the layers" msgstr "" -#: ../src/verbs.cpp:2539 +#: ../src/verbs.cpp:2593 msgid "Lock/Unlock _other layers" msgstr "" -#: ../src/verbs.cpp:2540 +#: ../src/verbs.cpp:2594 msgid "Lock all the other layers" msgstr "" -#: ../src/verbs.cpp:2541 +#: ../src/verbs.cpp:2595 msgid "_Unlock all layers" msgstr "" -#: ../src/verbs.cpp:2542 +#: ../src/verbs.cpp:2596 msgid "Unlock all the layers" msgstr "" -#: ../src/verbs.cpp:2543 +#: ../src/verbs.cpp:2597 msgid "_Lock/Unlock Current Layer" msgstr "" -#: ../src/verbs.cpp:2544 +#: ../src/verbs.cpp:2598 msgid "Toggle lock on current layer" msgstr "" -#: ../src/verbs.cpp:2545 +#: ../src/verbs.cpp:2599 msgid "_Show/hide Current Layer" msgstr "" -#: ../src/verbs.cpp:2546 +#: ../src/verbs.cpp:2600 msgid "Toggle visibility of current layer" msgstr "" #. Object -#: ../src/verbs.cpp:2549 +#: ../src/verbs.cpp:2603 msgid "Rotate _90° CW" msgstr "" #. This is shared between tooltips and statusbar, so they #. must use UTF-8, not HTML entities for special characters. -#: ../src/verbs.cpp:2552 +#: ../src/verbs.cpp:2606 msgid "Rotate selection 90° clockwise" msgstr "" -#: ../src/verbs.cpp:2553 +#: ../src/verbs.cpp:2607 msgid "Rotate 9_0° CCW" msgstr "" #. This is shared between tooltips and statusbar, so they #. must use UTF-8, not HTML entities for special characters. -#: ../src/verbs.cpp:2556 +#: ../src/verbs.cpp:2610 msgid "Rotate selection 90° counter-clockwise" msgstr "" -#: ../src/verbs.cpp:2557 +#: ../src/verbs.cpp:2611 msgid "Remove _Transformations" msgstr "" -#: ../src/verbs.cpp:2558 +#: ../src/verbs.cpp:2612 msgid "Remove transformations from object" msgstr "" -#: ../src/verbs.cpp:2559 +#: ../src/verbs.cpp:2613 msgid "_Object to Path" msgstr "" -#: ../src/verbs.cpp:2560 +#: ../src/verbs.cpp:2614 msgid "Convert selected object to path" msgstr "" -#: ../src/verbs.cpp:2561 +#: ../src/verbs.cpp:2615 msgid "_Flow into Frame" msgstr "" -#: ../src/verbs.cpp:2562 +#: ../src/verbs.cpp:2616 msgid "" "Put text into a frame (path or shape), creating a flowed text linked to the " "frame object" msgstr "" -#: ../src/verbs.cpp:2563 +#: ../src/verbs.cpp:2617 msgid "_Unflow" msgstr "" -#: ../src/verbs.cpp:2564 +#: ../src/verbs.cpp:2618 msgid "Remove text from frame (creates a single-line text object)" msgstr "" -#: ../src/verbs.cpp:2565 +#: ../src/verbs.cpp:2619 msgid "_Convert to Text" msgstr "" -#: ../src/verbs.cpp:2566 +#: ../src/verbs.cpp:2620 msgid "Convert flowed text to regular text object (preserves appearance)" msgstr "" -#: ../src/verbs.cpp:2568 +#: ../src/verbs.cpp:2622 msgid "Flip _Horizontal" msgstr "" -#: ../src/verbs.cpp:2568 +#: ../src/verbs.cpp:2622 msgid "Flip selected objects horizontally" msgstr "" -#: ../src/verbs.cpp:2571 +#: ../src/verbs.cpp:2625 msgid "Flip _Vertical" msgstr "" -#: ../src/verbs.cpp:2571 +#: ../src/verbs.cpp:2625 msgid "Flip selected objects vertically" msgstr "" -#: ../src/verbs.cpp:2574 +#: ../src/verbs.cpp:2628 msgid "Apply mask to selection (using the topmost object as mask)" msgstr "" -#: ../src/verbs.cpp:2576 +#: ../src/verbs.cpp:2630 msgid "Edit mask" msgstr "" -#: ../src/verbs.cpp:2577 ../src/verbs.cpp:2583 +#: ../src/verbs.cpp:2631 ../src/verbs.cpp:2637 msgid "_Release" msgstr "" -#: ../src/verbs.cpp:2578 +#: ../src/verbs.cpp:2632 msgid "Remove mask from selection" msgstr "" -#: ../src/verbs.cpp:2580 +#: ../src/verbs.cpp:2634 msgid "" "Apply clipping path to selection (using the topmost object as clipping path)" msgstr "" -#: ../src/verbs.cpp:2582 +#: ../src/verbs.cpp:2636 msgid "Edit clipping path" msgstr "" -#: ../src/verbs.cpp:2584 +#: ../src/verbs.cpp:2638 msgid "Remove clipping path from selection" msgstr "" #. Tools -#: ../src/verbs.cpp:2587 +#: ../src/verbs.cpp:2641 msgctxt "ContextVerb" msgid "Select" msgstr "" -#: ../src/verbs.cpp:2588 +#: ../src/verbs.cpp:2642 msgid "Select and transform objects" msgstr "" -#: ../src/verbs.cpp:2589 +#: ../src/verbs.cpp:2643 msgctxt "ContextVerb" msgid "Node Edit" msgstr "" -#: ../src/verbs.cpp:2590 +#: ../src/verbs.cpp:2644 msgid "Edit paths by nodes" msgstr "" -#: ../src/verbs.cpp:2591 +#: ../src/verbs.cpp:2645 msgctxt "ContextVerb" msgid "Tweak" msgstr "" -#: ../src/verbs.cpp:2592 +#: ../src/verbs.cpp:2646 msgid "Tweak objects by sculpting or painting" msgstr "" -#: ../src/verbs.cpp:2593 +#: ../src/verbs.cpp:2647 msgctxt "ContextVerb" msgid "Spray" msgstr "" -#: ../src/verbs.cpp:2594 +#: ../src/verbs.cpp:2648 msgid "Spray objects by sculpting or painting" msgstr "" -#: ../src/verbs.cpp:2595 +#: ../src/verbs.cpp:2649 msgctxt "ContextVerb" msgid "Rectangle" msgstr "" -#: ../src/verbs.cpp:2596 +#: ../src/verbs.cpp:2650 msgid "Create rectangles and squares" msgstr "" -#: ../src/verbs.cpp:2597 +#: ../src/verbs.cpp:2651 msgctxt "ContextVerb" msgid "3D Box" msgstr "" -#: ../src/verbs.cpp:2598 +#: ../src/verbs.cpp:2652 msgid "Create 3D boxes" msgstr "" -#: ../src/verbs.cpp:2599 +#: ../src/verbs.cpp:2653 msgctxt "ContextVerb" msgid "Ellipse" msgstr "" -#: ../src/verbs.cpp:2600 +#: ../src/verbs.cpp:2654 msgid "Create circles, ellipses, and arcs" msgstr "" -#: ../src/verbs.cpp:2601 +#: ../src/verbs.cpp:2655 msgctxt "ContextVerb" msgid "Star" msgstr "" -#: ../src/verbs.cpp:2602 +#: ../src/verbs.cpp:2656 msgid "Create stars and polygons" msgstr "" -#: ../src/verbs.cpp:2603 +#: ../src/verbs.cpp:2657 msgctxt "ContextVerb" msgid "Spiral" msgstr "" -#: ../src/verbs.cpp:2604 +#: ../src/verbs.cpp:2658 msgid "Create spirals" msgstr "" -#: ../src/verbs.cpp:2605 +#: ../src/verbs.cpp:2659 msgctxt "ContextVerb" msgid "Pencil" msgstr "" -#: ../src/verbs.cpp:2606 +#: ../src/verbs.cpp:2660 msgid "Draw freehand lines" msgstr "" -#: ../src/verbs.cpp:2607 +#: ../src/verbs.cpp:2661 msgctxt "ContextVerb" msgid "Pen" msgstr "" -#: ../src/verbs.cpp:2608 +#: ../src/verbs.cpp:2662 msgid "Draw Bezier curves and straight lines" msgstr "" -#: ../src/verbs.cpp:2609 +#: ../src/verbs.cpp:2663 msgctxt "ContextVerb" msgid "Calligraphy" msgstr "" -#: ../src/verbs.cpp:2610 +#: ../src/verbs.cpp:2664 msgid "Draw calligraphic or brush strokes" msgstr "" -#: ../src/verbs.cpp:2612 +#: ../src/verbs.cpp:2666 msgid "Create and edit text objects" msgstr "" -#: ../src/verbs.cpp:2613 +#: ../src/verbs.cpp:2667 msgctxt "ContextVerb" msgid "Gradient" msgstr "" -#: ../src/verbs.cpp:2614 +#: ../src/verbs.cpp:2668 msgid "Create and edit gradients" msgstr "" -#: ../src/verbs.cpp:2615 +#: ../src/verbs.cpp:2669 msgctxt "ContextVerb" msgid "Mesh" msgstr "" -#: ../src/verbs.cpp:2616 +#: ../src/verbs.cpp:2670 msgid "Create and edit meshes" msgstr "" -#: ../src/verbs.cpp:2617 +#: ../src/verbs.cpp:2671 msgctxt "ContextVerb" msgid "Zoom" msgstr "" -#: ../src/verbs.cpp:2618 +#: ../src/verbs.cpp:2672 msgid "Zoom in or out" msgstr "" -#: ../src/verbs.cpp:2620 +#: ../src/verbs.cpp:2674 msgid "Measurement tool" msgstr "" -#: ../src/verbs.cpp:2621 +#: ../src/verbs.cpp:2675 msgctxt "ContextVerb" msgid "Dropper" msgstr "" -#: ../src/verbs.cpp:2622 ../src/widgets/sp-color-notebook.cpp:411 +#: ../src/verbs.cpp:2676 ../src/widgets/sp-color-notebook.cpp:411 msgid "Pick colors from image" msgstr "" -#: ../src/verbs.cpp:2623 +#: ../src/verbs.cpp:2677 msgctxt "ContextVerb" msgid "Connector" msgstr "" -#: ../src/verbs.cpp:2624 +#: ../src/verbs.cpp:2678 msgid "Create diagram connectors" msgstr "" -#: ../src/verbs.cpp:2625 +#: ../src/verbs.cpp:2679 msgctxt "ContextVerb" msgid "Paint Bucket" msgstr "" -#: ../src/verbs.cpp:2626 +#: ../src/verbs.cpp:2680 msgid "Fill bounded areas" msgstr "" -#: ../src/verbs.cpp:2627 +#: ../src/verbs.cpp:2681 msgctxt "ContextVerb" msgid "LPE Edit" msgstr "" -#: ../src/verbs.cpp:2628 +#: ../src/verbs.cpp:2682 msgid "Edit Path Effect parameters" msgstr "" -#: ../src/verbs.cpp:2629 +#: ../src/verbs.cpp:2683 msgctxt "ContextVerb" msgid "Eraser" msgstr "" -#: ../src/verbs.cpp:2630 +#: ../src/verbs.cpp:2684 msgid "Erase existing paths" msgstr "" -#: ../src/verbs.cpp:2631 +#: ../src/verbs.cpp:2685 msgctxt "ContextVerb" msgid "LPE Tool" msgstr "" -#: ../src/verbs.cpp:2632 +#: ../src/verbs.cpp:2686 msgid "Do geometric constructions" msgstr "" #. Tool prefs -#: ../src/verbs.cpp:2634 +#: ../src/verbs.cpp:2688 msgid "Selector Preferences" msgstr "" -#: ../src/verbs.cpp:2635 +#: ../src/verbs.cpp:2689 msgid "Open Preferences for the Selector tool" msgstr "" -#: ../src/verbs.cpp:2636 +#: ../src/verbs.cpp:2690 msgid "Node Tool Preferences" msgstr "" -#: ../src/verbs.cpp:2637 +#: ../src/verbs.cpp:2691 msgid "Open Preferences for the Node tool" msgstr "" -#: ../src/verbs.cpp:2638 +#: ../src/verbs.cpp:2692 msgid "Tweak Tool Preferences" msgstr "" -#: ../src/verbs.cpp:2639 +#: ../src/verbs.cpp:2693 msgid "Open Preferences for the Tweak tool" msgstr "" -#: ../src/verbs.cpp:2640 +#: ../src/verbs.cpp:2694 msgid "Spray Tool Preferences" msgstr "" -#: ../src/verbs.cpp:2641 +#: ../src/verbs.cpp:2695 msgid "Open Preferences for the Spray tool" msgstr "" -#: ../src/verbs.cpp:2642 +#: ../src/verbs.cpp:2696 msgid "Rectangle Preferences" msgstr "" -#: ../src/verbs.cpp:2643 +#: ../src/verbs.cpp:2697 msgid "Open Preferences for the Rectangle tool" msgstr "" -#: ../src/verbs.cpp:2644 +#: ../src/verbs.cpp:2698 msgid "3D Box Preferences" msgstr "" -#: ../src/verbs.cpp:2645 +#: ../src/verbs.cpp:2699 msgid "Open Preferences for the 3D Box tool" msgstr "" -#: ../src/verbs.cpp:2646 +#: ../src/verbs.cpp:2700 msgid "Ellipse Preferences" msgstr "" -#: ../src/verbs.cpp:2647 +#: ../src/verbs.cpp:2701 msgid "Open Preferences for the Ellipse tool" msgstr "" -#: ../src/verbs.cpp:2648 +#: ../src/verbs.cpp:2702 msgid "Star Preferences" msgstr "" -#: ../src/verbs.cpp:2649 +#: ../src/verbs.cpp:2703 msgid "Open Preferences for the Star tool" msgstr "" -#: ../src/verbs.cpp:2650 +#: ../src/verbs.cpp:2704 msgid "Spiral Preferences" msgstr "" -#: ../src/verbs.cpp:2651 +#: ../src/verbs.cpp:2705 msgid "Open Preferences for the Spiral tool" msgstr "" -#: ../src/verbs.cpp:2652 +#: ../src/verbs.cpp:2706 msgid "Pencil Preferences" msgstr "" -#: ../src/verbs.cpp:2653 +#: ../src/verbs.cpp:2707 msgid "Open Preferences for the Pencil tool" msgstr "" -#: ../src/verbs.cpp:2654 +#: ../src/verbs.cpp:2708 msgid "Pen Preferences" msgstr "" -#: ../src/verbs.cpp:2655 +#: ../src/verbs.cpp:2709 msgid "Open Preferences for the Pen tool" msgstr "" -#: ../src/verbs.cpp:2656 +#: ../src/verbs.cpp:2710 msgid "Calligraphic Preferences" msgstr "" -#: ../src/verbs.cpp:2657 +#: ../src/verbs.cpp:2711 msgid "Open Preferences for the Calligraphy tool" msgstr "" -#: ../src/verbs.cpp:2658 +#: ../src/verbs.cpp:2712 msgid "Text Preferences" msgstr "" -#: ../src/verbs.cpp:2659 +#: ../src/verbs.cpp:2713 msgid "Open Preferences for the Text tool" msgstr "" -#: ../src/verbs.cpp:2660 +#: ../src/verbs.cpp:2714 msgid "Gradient Preferences" msgstr "" -#: ../src/verbs.cpp:2661 +#: ../src/verbs.cpp:2715 msgid "Open Preferences for the Gradient tool" msgstr "" -#: ../src/verbs.cpp:2662 +#: ../src/verbs.cpp:2716 msgid "Mesh Preferences" msgstr "" -#: ../src/verbs.cpp:2663 +#: ../src/verbs.cpp:2717 msgid "Open Preferences for the Mesh tool" msgstr "" -#: ../src/verbs.cpp:2664 +#: ../src/verbs.cpp:2718 msgid "Zoom Preferences" msgstr "" -#: ../src/verbs.cpp:2665 +#: ../src/verbs.cpp:2719 msgid "Open Preferences for the Zoom tool" msgstr "" -#: ../src/verbs.cpp:2666 +#: ../src/verbs.cpp:2720 msgid "Measure Preferences" msgstr "" -#: ../src/verbs.cpp:2667 +#: ../src/verbs.cpp:2721 msgid "Open Preferences for the Measure tool" msgstr "" -#: ../src/verbs.cpp:2668 +#: ../src/verbs.cpp:2722 msgid "Dropper Preferences" msgstr "" -#: ../src/verbs.cpp:2669 +#: ../src/verbs.cpp:2723 msgid "Open Preferences for the Dropper tool" msgstr "" -#: ../src/verbs.cpp:2670 +#: ../src/verbs.cpp:2724 msgid "Connector Preferences" msgstr "" -#: ../src/verbs.cpp:2671 +#: ../src/verbs.cpp:2725 msgid "Open Preferences for the Connector tool" msgstr "" -#: ../src/verbs.cpp:2672 +#: ../src/verbs.cpp:2726 msgid "Paint Bucket Preferences" msgstr "" -#: ../src/verbs.cpp:2673 +#: ../src/verbs.cpp:2727 msgid "Open Preferences for the Paint Bucket tool" msgstr "" -#: ../src/verbs.cpp:2674 +#: ../src/verbs.cpp:2728 msgid "Eraser Preferences" msgstr "" -#: ../src/verbs.cpp:2675 +#: ../src/verbs.cpp:2729 msgid "Open Preferences for the Eraser tool" msgstr "" -#: ../src/verbs.cpp:2676 +#: ../src/verbs.cpp:2730 msgid "LPE Tool Preferences" msgstr "" -#: ../src/verbs.cpp:2677 +#: ../src/verbs.cpp:2731 msgid "Open Preferences for the LPETool tool" msgstr "" #. Zoom/View -#: ../src/verbs.cpp:2679 +#: ../src/verbs.cpp:2733 msgid "Zoom In" msgstr "" -#: ../src/verbs.cpp:2679 +#: ../src/verbs.cpp:2733 msgid "Zoom in" msgstr "" -#: ../src/verbs.cpp:2680 +#: ../src/verbs.cpp:2734 msgid "Zoom Out" msgstr "" -#: ../src/verbs.cpp:2680 +#: ../src/verbs.cpp:2734 msgid "Zoom out" msgstr "" -#: ../src/verbs.cpp:2681 +#: ../src/verbs.cpp:2735 msgid "_Rulers" msgstr "" -#: ../src/verbs.cpp:2681 +#: ../src/verbs.cpp:2735 msgid "Show or hide the canvas rulers" msgstr "" -#: ../src/verbs.cpp:2682 +#: ../src/verbs.cpp:2736 msgid "Scroll_bars" msgstr "" -#: ../src/verbs.cpp:2682 +#: ../src/verbs.cpp:2736 msgid "Show or hide the canvas scrollbars" msgstr "" -#: ../src/verbs.cpp:2683 +#: ../src/verbs.cpp:2737 msgid "_Grid" msgstr "" -#: ../src/verbs.cpp:2683 +#: ../src/verbs.cpp:2737 msgid "Show or hide the grid" msgstr "" -#: ../src/verbs.cpp:2684 +#: ../src/verbs.cpp:2738 msgid "G_uides" msgstr "" -#: ../src/verbs.cpp:2684 +#: ../src/verbs.cpp:2738 msgid "Show or hide guides (drag from a ruler to create a guide)" msgstr "" -#: ../src/verbs.cpp:2685 +#: ../src/verbs.cpp:2739 msgid "Enable snapping" msgstr "" -#: ../src/verbs.cpp:2686 +#: ../src/verbs.cpp:2740 msgid "_Commands Bar" msgstr "" -#: ../src/verbs.cpp:2686 +#: ../src/verbs.cpp:2740 msgid "Show or hide the Commands bar (under the menu)" msgstr "" -#: ../src/verbs.cpp:2687 +#: ../src/verbs.cpp:2741 msgid "Sn_ap Controls Bar" msgstr "" -#: ../src/verbs.cpp:2687 +#: ../src/verbs.cpp:2741 msgid "Show or hide the snapping controls" msgstr "" -#: ../src/verbs.cpp:2688 +#: ../src/verbs.cpp:2742 msgid "T_ool Controls Bar" msgstr "" -#: ../src/verbs.cpp:2688 +#: ../src/verbs.cpp:2742 msgid "Show or hide the Tool Controls bar" msgstr "" -#: ../src/verbs.cpp:2689 +#: ../src/verbs.cpp:2743 msgid "_Toolbox" msgstr "" -#: ../src/verbs.cpp:2689 +#: ../src/verbs.cpp:2743 msgid "Show or hide the main toolbox (on the left)" msgstr "" -#: ../src/verbs.cpp:2690 +#: ../src/verbs.cpp:2744 msgid "_Palette" msgstr "" -#: ../src/verbs.cpp:2690 +#: ../src/verbs.cpp:2744 msgid "Show or hide the color palette" msgstr "" -#: ../src/verbs.cpp:2691 +#: ../src/verbs.cpp:2745 msgid "_Statusbar" msgstr "" -#: ../src/verbs.cpp:2691 +#: ../src/verbs.cpp:2745 msgid "Show or hide the statusbar (at the bottom of the window)" msgstr "" -#: ../src/verbs.cpp:2692 +#: ../src/verbs.cpp:2746 msgid "Nex_t Zoom" msgstr "" -#: ../src/verbs.cpp:2692 +#: ../src/verbs.cpp:2746 msgid "Next zoom (from the history of zooms)" msgstr "" -#: ../src/verbs.cpp:2694 +#: ../src/verbs.cpp:2748 msgid "Pre_vious Zoom" msgstr "" -#: ../src/verbs.cpp:2694 +#: ../src/verbs.cpp:2748 msgid "Previous zoom (from the history of zooms)" msgstr "" -#: ../src/verbs.cpp:2696 +#: ../src/verbs.cpp:2750 msgid "Zoom 1:_1" msgstr "" -#: ../src/verbs.cpp:2696 +#: ../src/verbs.cpp:2750 msgid "Zoom to 1:1" msgstr "" -#: ../src/verbs.cpp:2698 +#: ../src/verbs.cpp:2752 msgid "Zoom 1:_2" msgstr "" -#: ../src/verbs.cpp:2698 +#: ../src/verbs.cpp:2752 msgid "Zoom to 1:2" msgstr "" -#: ../src/verbs.cpp:2700 +#: ../src/verbs.cpp:2754 msgid "_Zoom 2:1" msgstr "" -#: ../src/verbs.cpp:2700 +#: ../src/verbs.cpp:2754 msgid "Zoom to 2:1" msgstr "" -#: ../src/verbs.cpp:2703 +#: ../src/verbs.cpp:2757 msgid "_Fullscreen" msgstr "" -#: ../src/verbs.cpp:2703 ../src/verbs.cpp:2705 +#: ../src/verbs.cpp:2757 ../src/verbs.cpp:2759 msgid "Stretch this document window to full screen" msgstr "" -#: ../src/verbs.cpp:2705 +#: ../src/verbs.cpp:2759 msgid "Fullscreen & Focus Mode" msgstr "" -#: ../src/verbs.cpp:2708 +#: ../src/verbs.cpp:2762 msgid "Toggle _Focus Mode" msgstr "" -#: ../src/verbs.cpp:2708 +#: ../src/verbs.cpp:2762 msgid "Remove excess toolbars to focus on drawing" msgstr "" -#: ../src/verbs.cpp:2710 +#: ../src/verbs.cpp:2764 msgid "Duplic_ate Window" msgstr "" -#: ../src/verbs.cpp:2710 +#: ../src/verbs.cpp:2764 msgid "Open a new window with the same document" msgstr "" -#: ../src/verbs.cpp:2712 +#: ../src/verbs.cpp:2766 msgid "_New View Preview" msgstr "" -#: ../src/verbs.cpp:2713 +#: ../src/verbs.cpp:2767 msgid "New View Preview" msgstr "" #. "view_new_preview" -#: ../src/verbs.cpp:2715 ../src/verbs.cpp:2723 +#: ../src/verbs.cpp:2769 ../src/verbs.cpp:2777 msgid "_Normal" msgstr "" -#: ../src/verbs.cpp:2716 +#: ../src/verbs.cpp:2770 msgid "Switch to normal display mode" msgstr "" -#: ../src/verbs.cpp:2717 +#: ../src/verbs.cpp:2771 msgid "No _Filters" msgstr "" -#: ../src/verbs.cpp:2718 +#: ../src/verbs.cpp:2772 msgid "Switch to normal display without filters" msgstr "" -#: ../src/verbs.cpp:2719 +#: ../src/verbs.cpp:2773 msgid "_Outline" msgstr "" -#: ../src/verbs.cpp:2720 +#: ../src/verbs.cpp:2774 msgid "Switch to outline (wireframe) display mode" msgstr "" #. new ZoomVerb(SP_VERB_VIEW_COLOR_MODE_PRINT_COLORS_PREVIEW, "ViewColorModePrintColorsPreview", N_("_Print Colors Preview"), #. N_("Switch to print colors preview mode"), NULL), -#: ../src/verbs.cpp:2721 ../src/verbs.cpp:2729 +#: ../src/verbs.cpp:2775 ../src/verbs.cpp:2783 msgid "_Toggle" msgstr "" -#: ../src/verbs.cpp:2722 +#: ../src/verbs.cpp:2776 msgid "Toggle between normal and outline display modes" msgstr "" -#: ../src/verbs.cpp:2724 +#: ../src/verbs.cpp:2778 msgid "Switch to normal color display mode" msgstr "" -#: ../src/verbs.cpp:2725 +#: ../src/verbs.cpp:2779 msgid "_Grayscale" msgstr "" -#: ../src/verbs.cpp:2726 +#: ../src/verbs.cpp:2780 msgid "Switch to grayscale display mode" msgstr "" -#: ../src/verbs.cpp:2730 +#: ../src/verbs.cpp:2784 msgid "Toggle between normal and grayscale color display modes" msgstr "" -#: ../src/verbs.cpp:2732 +#: ../src/verbs.cpp:2786 msgid "Color-managed view" msgstr "" -#: ../src/verbs.cpp:2733 +#: ../src/verbs.cpp:2787 msgid "Toggle color-managed display for this document window" msgstr "" -#: ../src/verbs.cpp:2735 +#: ../src/verbs.cpp:2789 msgid "Ico_n Preview..." msgstr "" -#: ../src/verbs.cpp:2736 +#: ../src/verbs.cpp:2790 msgid "Open a window to preview objects at different icon resolutions" msgstr "" -#: ../src/verbs.cpp:2738 +#: ../src/verbs.cpp:2792 msgid "Zoom to fit page in window" msgstr "" -#: ../src/verbs.cpp:2739 +#: ../src/verbs.cpp:2793 msgid "Page _Width" msgstr "" -#: ../src/verbs.cpp:2740 +#: ../src/verbs.cpp:2794 msgid "Zoom to fit page width in window" msgstr "" -#: ../src/verbs.cpp:2742 +#: ../src/verbs.cpp:2796 msgid "Zoom to fit drawing in window" msgstr "" -#: ../src/verbs.cpp:2744 +#: ../src/verbs.cpp:2798 msgid "Zoom to fit selection in window" msgstr "" #. Dialogs -#: ../src/verbs.cpp:2747 +#: ../src/verbs.cpp:2801 msgid "P_references..." msgstr "" -#: ../src/verbs.cpp:2748 +#: ../src/verbs.cpp:2802 msgid "Edit global Inkscape preferences" msgstr "" -#: ../src/verbs.cpp:2749 +#: ../src/verbs.cpp:2803 msgid "_Document Properties..." msgstr "" -#: ../src/verbs.cpp:2750 +#: ../src/verbs.cpp:2804 msgid "Edit properties of this document (to be saved with the document)" msgstr "" -#: ../src/verbs.cpp:2751 +#: ../src/verbs.cpp:2805 msgid "Document _Metadata..." msgstr "" -#: ../src/verbs.cpp:2752 +#: ../src/verbs.cpp:2806 msgid "Edit document metadata (to be saved with the document)" msgstr "" -#: ../src/verbs.cpp:2754 +#: ../src/verbs.cpp:2808 msgid "" "Edit objects' colors, gradients, arrowheads, and other fill and stroke " "properties..." msgstr "" -#: ../src/verbs.cpp:2755 +#: ../src/verbs.cpp:2809 msgid "Gl_yphs..." msgstr "" -#: ../src/verbs.cpp:2756 +#: ../src/verbs.cpp:2810 msgid "Select characters from a glyphs palette" msgstr "" #. TRANSLATORS: "Swatches" means: color samples -#: ../src/verbs.cpp:2758 +#: ../src/verbs.cpp:2812 msgid "S_watches..." msgstr "" -#: ../src/verbs.cpp:2759 +#: ../src/verbs.cpp:2813 msgid "Select colors from a swatches palette" msgstr "" -#: ../src/verbs.cpp:2760 +#: ../src/verbs.cpp:2814 msgid "S_ymbols..." msgstr "" -#: ../src/verbs.cpp:2761 +#: ../src/verbs.cpp:2815 msgid "Select symbol from a symbols palette" msgstr "" -#: ../src/verbs.cpp:2762 +#: ../src/verbs.cpp:2816 msgid "Transfor_m..." msgstr "" -#: ../src/verbs.cpp:2763 +#: ../src/verbs.cpp:2817 msgid "Precisely control objects' transformations" msgstr "" -#: ../src/verbs.cpp:2764 +#: ../src/verbs.cpp:2818 msgid "_Align and Distribute..." msgstr "" -#: ../src/verbs.cpp:2765 +#: ../src/verbs.cpp:2819 msgid "Align and distribute objects" msgstr "" -#: ../src/verbs.cpp:2766 +#: ../src/verbs.cpp:2820 msgid "_Spray options..." msgstr "" -#: ../src/verbs.cpp:2767 +#: ../src/verbs.cpp:2821 msgid "Some options for the spray" msgstr "" -#: ../src/verbs.cpp:2768 +#: ../src/verbs.cpp:2822 msgid "Undo _History..." msgstr "" -#: ../src/verbs.cpp:2769 +#: ../src/verbs.cpp:2823 msgid "Undo History" msgstr "" -#: ../src/verbs.cpp:2771 +#: ../src/verbs.cpp:2825 msgid "View and select font family, font size and other text properties" msgstr "" -#: ../src/verbs.cpp:2772 +#: ../src/verbs.cpp:2826 msgid "_XML Editor..." msgstr "" -#: ../src/verbs.cpp:2773 +#: ../src/verbs.cpp:2827 msgid "View and edit the XML tree of the document" msgstr "" -#: ../src/verbs.cpp:2774 +#: ../src/verbs.cpp:2828 msgid "_Find/Replace..." msgstr "" -#: ../src/verbs.cpp:2775 +#: ../src/verbs.cpp:2829 msgid "Find objects in document" msgstr "" -#: ../src/verbs.cpp:2776 +#: ../src/verbs.cpp:2830 msgid "Find and _Replace Text..." msgstr "" -#: ../src/verbs.cpp:2777 +#: ../src/verbs.cpp:2831 msgid "Find and replace text in document" msgstr "" -#: ../src/verbs.cpp:2779 +#: ../src/verbs.cpp:2833 msgid "Check spelling of text in document" msgstr "" -#: ../src/verbs.cpp:2780 +#: ../src/verbs.cpp:2834 msgid "_Messages..." msgstr "" -#: ../src/verbs.cpp:2781 +#: ../src/verbs.cpp:2835 msgid "View debug messages" msgstr "" -#: ../src/verbs.cpp:2782 -msgid "S_cripts..." -msgstr "" - -#: ../src/verbs.cpp:2783 -msgid "Run scripts" -msgstr "" - -#: ../src/verbs.cpp:2784 +#: ../src/verbs.cpp:2836 msgid "Show/Hide D_ialogs" msgstr "" -#: ../src/verbs.cpp:2785 +#: ../src/verbs.cpp:2837 msgid "Show or hide all open dialogs" msgstr "" -#: ../src/verbs.cpp:2786 +#: ../src/verbs.cpp:2838 msgid "Create Tiled Clones..." msgstr "" -#: ../src/verbs.cpp:2787 +#: ../src/verbs.cpp:2839 msgid "" "Create multiple clones of selected object, arranging them into a pattern or " "scattering" msgstr "" -#: ../src/verbs.cpp:2788 +#: ../src/verbs.cpp:2840 msgid "_Object attributes..." msgstr "" -#: ../src/verbs.cpp:2789 +#: ../src/verbs.cpp:2841 msgid "Edit the object attributes..." msgstr "" -#: ../src/verbs.cpp:2791 +#: ../src/verbs.cpp:2843 msgid "Edit the ID, locked and visible status, and other object properties" msgstr "" -#: ../src/verbs.cpp:2792 +#: ../src/verbs.cpp:2844 msgid "_Input Devices..." msgstr "" -#: ../src/verbs.cpp:2793 +#: ../src/verbs.cpp:2845 msgid "Configure extended input devices, such as a graphics tablet" msgstr "" -#: ../src/verbs.cpp:2794 +#: ../src/verbs.cpp:2846 msgid "_Extensions..." msgstr "" -#: ../src/verbs.cpp:2795 +#: ../src/verbs.cpp:2847 msgid "Query information about extensions" msgstr "" -#: ../src/verbs.cpp:2796 +#: ../src/verbs.cpp:2848 msgid "Layer_s..." msgstr "" -#: ../src/verbs.cpp:2797 +#: ../src/verbs.cpp:2849 msgid "View Layers" msgstr "" -#: ../src/verbs.cpp:2798 +#: ../src/verbs.cpp:2850 msgid "Path E_ffects ..." msgstr "" -#: ../src/verbs.cpp:2799 +#: ../src/verbs.cpp:2851 msgid "Manage, edit, and apply path effects" msgstr "" -#: ../src/verbs.cpp:2800 +#: ../src/verbs.cpp:2852 msgid "Filter _Editor..." msgstr "" -#: ../src/verbs.cpp:2801 +#: ../src/verbs.cpp:2853 msgid "Manage, edit, and apply SVG filters" msgstr "" -#: ../src/verbs.cpp:2802 +#: ../src/verbs.cpp:2854 msgid "SVG Font Editor..." msgstr "" -#: ../src/verbs.cpp:2803 +#: ../src/verbs.cpp:2855 msgid "Edit SVG fonts" msgstr "" -#: ../src/verbs.cpp:2804 +#: ../src/verbs.cpp:2856 msgid "Print Colors..." msgstr "" -#: ../src/verbs.cpp:2805 +#: ../src/verbs.cpp:2857 msgid "" "Select which color separations to render in Print Colors Preview rendermode" msgstr "" -#: ../src/verbs.cpp:2806 +#: ../src/verbs.cpp:2858 msgid "_Export PNG Image..." msgstr "" -#: ../src/verbs.cpp:2807 +#: ../src/verbs.cpp:2859 msgid "Export this document or a selection as a PNG image" msgstr "" #. Help -#: ../src/verbs.cpp:2809 +#: ../src/verbs.cpp:2861 msgid "About E_xtensions" msgstr "" -#: ../src/verbs.cpp:2810 +#: ../src/verbs.cpp:2862 msgid "Information on Inkscape extensions" msgstr "" -#: ../src/verbs.cpp:2811 +#: ../src/verbs.cpp:2863 msgid "About _Memory" msgstr "" -#: ../src/verbs.cpp:2812 +#: ../src/verbs.cpp:2864 msgid "Memory usage information" msgstr "" -#: ../src/verbs.cpp:2813 +#: ../src/verbs.cpp:2865 msgid "_About Inkscape" msgstr "" -#: ../src/verbs.cpp:2814 +#: ../src/verbs.cpp:2866 msgid "Inkscape version, authors, license" msgstr "" #. new HelpVerb(SP_VERB_SHOW_LICENSE, "ShowLicense", N_("_License"), #. N_("Distribution terms"), /*"show_license"*/"inkscape_options"), #. Tutorials -#: ../src/verbs.cpp:2819 +#: ../src/verbs.cpp:2871 msgid "Inkscape: _Basic" msgstr "" -#: ../src/verbs.cpp:2820 +#: ../src/verbs.cpp:2872 msgid "Getting started with Inkscape" msgstr "" #. "tutorial_basic" -#: ../src/verbs.cpp:2821 +#: ../src/verbs.cpp:2873 msgid "Inkscape: _Shapes" msgstr "" -#: ../src/verbs.cpp:2822 +#: ../src/verbs.cpp:2874 msgid "Using shape tools to create and edit shapes" msgstr "" -#: ../src/verbs.cpp:2823 +#: ../src/verbs.cpp:2875 msgid "Inkscape: _Advanced" msgstr "" -#: ../src/verbs.cpp:2824 +#: ../src/verbs.cpp:2876 msgid "Advanced Inkscape topics" msgstr "" #. "tutorial_advanced" #. TRANSLATORS: "to trace" means "to convert a bitmap to vector graphics" (to vectorize) -#: ../src/verbs.cpp:2826 +#: ../src/verbs.cpp:2878 msgid "Inkscape: T_racing" msgstr "" -#: ../src/verbs.cpp:2827 +#: ../src/verbs.cpp:2879 msgid "Using bitmap tracing" msgstr "" #. "tutorial_tracing" -#: ../src/verbs.cpp:2828 +#: ../src/verbs.cpp:2880 msgid "Inkscape: _Calligraphy" msgstr "" -#: ../src/verbs.cpp:2829 +#: ../src/verbs.cpp:2881 msgid "Using the Calligraphy pen tool" msgstr "" -#: ../src/verbs.cpp:2830 +#: ../src/verbs.cpp:2882 msgid "Inkscape: _Interpolate" msgstr "" -#: ../src/verbs.cpp:2831 +#: ../src/verbs.cpp:2883 msgid "Using the interpolate extension" msgstr "" #. "tutorial_interpolate" -#: ../src/verbs.cpp:2832 +#: ../src/verbs.cpp:2884 msgid "_Elements of Design" msgstr "" -#: ../src/verbs.cpp:2833 +#: ../src/verbs.cpp:2885 msgid "Principles of design in the tutorial form" msgstr "" #. "tutorial_design" -#: ../src/verbs.cpp:2834 +#: ../src/verbs.cpp:2886 msgid "_Tips and Tricks" msgstr "" -#: ../src/verbs.cpp:2835 +#: ../src/verbs.cpp:2887 msgid "Miscellaneous tips and tricks" msgstr "" #. "tutorial_tips" #. Effect -- renamed Extension -#: ../src/verbs.cpp:2838 +#: ../src/verbs.cpp:2890 msgid "Previous Exte_nsion" msgstr "" -#: ../src/verbs.cpp:2839 +#: ../src/verbs.cpp:2891 msgid "Repeat the last extension with the same settings" msgstr "" -#: ../src/verbs.cpp:2840 +#: ../src/verbs.cpp:2892 msgid "_Previous Extension Settings..." msgstr "" -#: ../src/verbs.cpp:2841 +#: ../src/verbs.cpp:2893 msgid "Repeat the last extension with new settings" msgstr "" -#: ../src/verbs.cpp:2845 +#: ../src/verbs.cpp:2897 msgid "Fit the page to the current selection" msgstr "" -#: ../src/verbs.cpp:2847 +#: ../src/verbs.cpp:2899 msgid "Fit the page to the drawing" msgstr "" -#: ../src/verbs.cpp:2849 +#: ../src/verbs.cpp:2901 msgid "" "Fit the page to the current selection or the drawing if there is no selection" msgstr "" #. LockAndHide -#: ../src/verbs.cpp:2851 +#: ../src/verbs.cpp:2903 msgid "Unlock All" msgstr "" -#: ../src/verbs.cpp:2853 +#: ../src/verbs.cpp:2905 msgid "Unlock All in All Layers" msgstr "" -#: ../src/verbs.cpp:2855 +#: ../src/verbs.cpp:2907 msgid "Unhide All" msgstr "" -#: ../src/verbs.cpp:2857 +#: ../src/verbs.cpp:2909 msgid "Unhide All in All Layers" msgstr "" -#: ../src/verbs.cpp:2861 +#: ../src/verbs.cpp:2913 msgid "Link an ICC color profile" msgstr "" -#: ../src/verbs.cpp:2862 +#: ../src/verbs.cpp:2914 msgid "Remove Color Profile" msgstr "" -#: ../src/verbs.cpp:2863 +#: ../src/verbs.cpp:2915 msgid "Remove a linked ICC color profile" msgstr "" -#: ../src/verbs.cpp:2886 ../src/verbs.cpp:2887 +#: ../src/verbs.cpp:2918 +msgid "Add External Script" +msgstr "" + +#: ../src/verbs.cpp:2918 +msgid "Add an external script" +msgstr "" + +#: ../src/verbs.cpp:2920 +msgid "Add Embedded Script" +msgstr "" + +#: ../src/verbs.cpp:2920 +msgid "Add an embedded script" +msgstr "" + +#: ../src/verbs.cpp:2922 +msgid "Edit Embedded Script" +msgstr "" + +#: ../src/verbs.cpp:2922 +msgid "Edit an embedded script" +msgstr "" + +#: ../src/verbs.cpp:2924 +msgid "Remove External Script" +msgstr "" + +#: ../src/verbs.cpp:2924 +msgid "Remove an external script" +msgstr "" + +#: ../src/verbs.cpp:2926 +msgid "Remove Embedded Script" +msgstr "" + +#: ../src/verbs.cpp:2926 +msgid "Remove an embedded script" +msgstr "" + +#: ../src/verbs.cpp:2948 ../src/verbs.cpp:2949 msgid "Center on horizontal and vertical axis" msgstr "" -#: ../src/widgets/arc-toolbar.cpp:146 +#: ../src/widgets/arc-toolbar.cpp:142 msgid "Arc: Change start/end" msgstr "" -#: ../src/widgets/arc-toolbar.cpp:212 +#: ../src/widgets/arc-toolbar.cpp:208 msgid "Arc: Change open/closed" msgstr "" -#: ../src/widgets/arc-toolbar.cpp:303 ../src/widgets/arc-toolbar.cpp:332 -#: ../src/widgets/rect-toolbar.cpp:259 ../src/widgets/rect-toolbar.cpp:297 -#: ../src/widgets/spiral-toolbar.cpp:229 ../src/widgets/spiral-toolbar.cpp:253 -#: ../src/widgets/star-toolbar.cpp:395 ../src/widgets/star-toolbar.cpp:456 +#: ../src/widgets/arc-toolbar.cpp:299 ../src/widgets/arc-toolbar.cpp:328 +#: ../src/widgets/rect-toolbar.cpp:261 ../src/widgets/rect-toolbar.cpp:299 +#: ../src/widgets/spiral-toolbar.cpp:225 ../src/widgets/spiral-toolbar.cpp:249 +#: ../src/widgets/star-toolbar.cpp:391 ../src/widgets/star-toolbar.cpp:452 msgid "New:" msgstr "" #. FIXME: implement averaging of all parameters for multiple selected #. gtk_label_set_markup(GTK_LABEL(l), _("Average:")); -#: ../src/widgets/arc-toolbar.cpp:306 ../src/widgets/arc-toolbar.cpp:317 -#: ../src/widgets/rect-toolbar.cpp:267 ../src/widgets/rect-toolbar.cpp:285 -#: ../src/widgets/spiral-toolbar.cpp:231 ../src/widgets/spiral-toolbar.cpp:242 -#: ../src/widgets/star-toolbar.cpp:397 +#: ../src/widgets/arc-toolbar.cpp:302 ../src/widgets/arc-toolbar.cpp:313 +#: ../src/widgets/rect-toolbar.cpp:269 ../src/widgets/rect-toolbar.cpp:287 +#: ../src/widgets/spiral-toolbar.cpp:227 ../src/widgets/spiral-toolbar.cpp:238 +#: ../src/widgets/star-toolbar.cpp:393 msgid "Change:" msgstr "" -#: ../src/widgets/arc-toolbar.cpp:341 +#: ../src/widgets/arc-toolbar.cpp:337 msgid "Start:" msgstr "" -#: ../src/widgets/arc-toolbar.cpp:342 +#: ../src/widgets/arc-toolbar.cpp:338 msgid "The angle (in degrees) from the horizontal to the arc's start point" msgstr "" -#: ../src/widgets/arc-toolbar.cpp:354 +#: ../src/widgets/arc-toolbar.cpp:350 msgid "End:" msgstr "" -#: ../src/widgets/arc-toolbar.cpp:355 +#: ../src/widgets/arc-toolbar.cpp:351 msgid "The angle (in degrees) from the horizontal to the arc's end point" msgstr "" -#: ../src/widgets/arc-toolbar.cpp:371 +#: ../src/widgets/arc-toolbar.cpp:367 msgid "Closed arc" msgstr "" -#: ../src/widgets/arc-toolbar.cpp:372 +#: ../src/widgets/arc-toolbar.cpp:368 msgid "Switch to segment (closed shape with two radii)" msgstr "" -#: ../src/widgets/arc-toolbar.cpp:378 +#: ../src/widgets/arc-toolbar.cpp:374 msgid "Open Arc" msgstr "" -#: ../src/widgets/arc-toolbar.cpp:379 +#: ../src/widgets/arc-toolbar.cpp:375 msgid "Switch to arc (unclosed shape)" msgstr "" -#: ../src/widgets/arc-toolbar.cpp:402 +#: ../src/widgets/arc-toolbar.cpp:398 msgid "Make whole" msgstr "" -#: ../src/widgets/arc-toolbar.cpp:403 +#: ../src/widgets/arc-toolbar.cpp:399 msgid "Make the shape a whole ellipse, not arc or segment" msgstr "" #. TODO: use the correct axis here, too -#: ../src/widgets/box3d-toolbar.cpp:253 +#: ../src/widgets/box3d-toolbar.cpp:248 msgid "3D Box: Change perspective (angle of infinite axis)" msgstr "" -#: ../src/widgets/box3d-toolbar.cpp:320 +#: ../src/widgets/box3d-toolbar.cpp:315 msgid "Angle in X direction" msgstr "" #. Translators: PL is short for 'perspective line' -#: ../src/widgets/box3d-toolbar.cpp:322 +#: ../src/widgets/box3d-toolbar.cpp:317 msgid "Angle of PLs in X direction" msgstr "" #. Translators: VP is short for 'vanishing point' -#: ../src/widgets/box3d-toolbar.cpp:344 +#: ../src/widgets/box3d-toolbar.cpp:339 msgid "State of VP in X direction" msgstr "" -#: ../src/widgets/box3d-toolbar.cpp:345 +#: ../src/widgets/box3d-toolbar.cpp:340 msgid "Toggle VP in X direction between 'finite' and 'infinite' (=parallel)" msgstr "" -#: ../src/widgets/box3d-toolbar.cpp:360 +#: ../src/widgets/box3d-toolbar.cpp:355 msgid "Angle in Y direction" msgstr "" -#: ../src/widgets/box3d-toolbar.cpp:360 +#: ../src/widgets/box3d-toolbar.cpp:355 msgid "Angle Y:" msgstr "" #. Translators: PL is short for 'perspective line' -#: ../src/widgets/box3d-toolbar.cpp:362 +#: ../src/widgets/box3d-toolbar.cpp:357 msgid "Angle of PLs in Y direction" msgstr "" #. Translators: VP is short for 'vanishing point' -#: ../src/widgets/box3d-toolbar.cpp:383 +#: ../src/widgets/box3d-toolbar.cpp:378 msgid "State of VP in Y direction" msgstr "" -#: ../src/widgets/box3d-toolbar.cpp:384 +#: ../src/widgets/box3d-toolbar.cpp:379 msgid "Toggle VP in Y direction between 'finite' and 'infinite' (=parallel)" msgstr "" -#: ../src/widgets/box3d-toolbar.cpp:399 +#: ../src/widgets/box3d-toolbar.cpp:394 msgid "Angle in Z direction" msgstr "" #. Translators: PL is short for 'perspective line' -#: ../src/widgets/box3d-toolbar.cpp:401 +#: ../src/widgets/box3d-toolbar.cpp:396 msgid "Angle of PLs in Z direction" msgstr "" #. Translators: VP is short for 'vanishing point' -#: ../src/widgets/box3d-toolbar.cpp:422 +#: ../src/widgets/box3d-toolbar.cpp:417 msgid "State of VP in Z direction" msgstr "" -#: ../src/widgets/box3d-toolbar.cpp:423 +#: ../src/widgets/box3d-toolbar.cpp:418 msgid "Toggle VP in Z direction between 'finite' and 'infinite' (=parallel)" msgstr "" #. gint preset_index = ege_select_one_action_get_active( sel ); -#: ../src/widgets/calligraphy-toolbar.cpp:239 -#: ../src/widgets/calligraphy-toolbar.cpp:283 -#: ../src/widgets/calligraphy-toolbar.cpp:288 +#: ../src/widgets/calligraphy-toolbar.cpp:235 +#: ../src/widgets/calligraphy-toolbar.cpp:279 +#: ../src/widgets/calligraphy-toolbar.cpp:284 msgid "No preset" msgstr "" #. Width -#: ../src/widgets/calligraphy-toolbar.cpp:448 -#: ../src/widgets/erasor-toolbar.cpp:146 +#: ../src/widgets/calligraphy-toolbar.cpp:444 +#: ../src/widgets/eraser-toolbar.cpp:142 msgid "(hairline)" msgstr "" #. Mean #. Rotation #. Scale -#: ../src/widgets/calligraphy-toolbar.cpp:448 -#: ../src/widgets/calligraphy-toolbar.cpp:481 -#: ../src/widgets/erasor-toolbar.cpp:146 ../src/widgets/pencil-toolbar.cpp:303 -#: ../src/widgets/spray-toolbar.cpp:129 ../src/widgets/spray-toolbar.cpp:145 -#: ../src/widgets/spray-toolbar.cpp:161 ../src/widgets/spray-toolbar.cpp:221 -#: ../src/widgets/spray-toolbar.cpp:251 ../src/widgets/spray-toolbar.cpp:269 -#: ../src/widgets/tweak-toolbar.cpp:143 ../src/widgets/tweak-toolbar.cpp:160 -#: ../src/widgets/tweak-toolbar.cpp:368 +#: ../src/widgets/calligraphy-toolbar.cpp:444 +#: ../src/widgets/calligraphy-toolbar.cpp:477 +#: ../src/widgets/eraser-toolbar.cpp:142 ../src/widgets/pencil-toolbar.cpp:298 +#: ../src/widgets/spray-toolbar.cpp:125 ../src/widgets/spray-toolbar.cpp:141 +#: ../src/widgets/spray-toolbar.cpp:157 ../src/widgets/spray-toolbar.cpp:217 +#: ../src/widgets/spray-toolbar.cpp:247 ../src/widgets/spray-toolbar.cpp:265 +#: ../src/widgets/tweak-toolbar.cpp:139 ../src/widgets/tweak-toolbar.cpp:156 +#: ../src/widgets/tweak-toolbar.cpp:364 msgid "(default)" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:448 -#: ../src/widgets/erasor-toolbar.cpp:146 +#: ../src/widgets/calligraphy-toolbar.cpp:444 +#: ../src/widgets/eraser-toolbar.cpp:142 msgid "(broad stroke)" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:451 -#: ../src/widgets/erasor-toolbar.cpp:149 +#: ../src/widgets/calligraphy-toolbar.cpp:447 +#: ../src/widgets/eraser-toolbar.cpp:145 msgid "Pen Width" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:452 +#: ../src/widgets/calligraphy-toolbar.cpp:448 msgid "The width of the calligraphic pen (relative to the visible canvas area)" msgstr "" #. Thinning -#: ../src/widgets/calligraphy-toolbar.cpp:465 +#: ../src/widgets/calligraphy-toolbar.cpp:461 msgid "(speed blows up stroke)" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:465 +#: ../src/widgets/calligraphy-toolbar.cpp:461 msgid "(slight widening)" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:465 +#: ../src/widgets/calligraphy-toolbar.cpp:461 msgid "(constant width)" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:465 +#: ../src/widgets/calligraphy-toolbar.cpp:461 msgid "(slight thinning, default)" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:465 +#: ../src/widgets/calligraphy-toolbar.cpp:461 msgid "(speed deflates stroke)" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:468 +#: ../src/widgets/calligraphy-toolbar.cpp:464 msgid "Stroke Thinning" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:468 +#: ../src/widgets/calligraphy-toolbar.cpp:464 msgid "Thinning:" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:469 +#: ../src/widgets/calligraphy-toolbar.cpp:465 msgid "" "How much velocity thins the stroke (> 0 makes fast strokes thinner, < 0 " "makes them broader, 0 makes width independent of velocity)" msgstr "" #. Angle -#: ../src/widgets/calligraphy-toolbar.cpp:481 +#: ../src/widgets/calligraphy-toolbar.cpp:477 msgid "(left edge up)" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:481 +#: ../src/widgets/calligraphy-toolbar.cpp:477 msgid "(horizontal)" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:481 +#: ../src/widgets/calligraphy-toolbar.cpp:477 msgid "(right edge up)" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:484 +#: ../src/widgets/calligraphy-toolbar.cpp:480 msgid "Pen Angle" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:484 +#: ../src/widgets/calligraphy-toolbar.cpp:480 #: ../share/extensions/motion.inx.h:3 ../share/extensions/restack.inx.h:10 msgid "Angle:" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:485 +#: ../src/widgets/calligraphy-toolbar.cpp:481 msgid "" "The angle of the pen's nib (in degrees; 0 = horizontal; has no effect if " "fixation = 0)" msgstr "" #. Fixation -#: ../src/widgets/calligraphy-toolbar.cpp:499 +#: ../src/widgets/calligraphy-toolbar.cpp:495 msgid "(perpendicular to stroke, \"brush\")" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:499 +#: ../src/widgets/calligraphy-toolbar.cpp:495 msgid "(almost fixed, default)" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:499 +#: ../src/widgets/calligraphy-toolbar.cpp:495 msgid "(fixed by Angle, \"pen\")" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:502 +#: ../src/widgets/calligraphy-toolbar.cpp:498 msgid "Fixation" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:502 +#: ../src/widgets/calligraphy-toolbar.cpp:498 msgid "Fixation:" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:503 +#: ../src/widgets/calligraphy-toolbar.cpp:499 msgid "" "Angle behavior (0 = nib always perpendicular to stroke direction, 100 = " "fixed angle)" msgstr "" #. Cap Rounding -#: ../src/widgets/calligraphy-toolbar.cpp:515 +#: ../src/widgets/calligraphy-toolbar.cpp:511 msgid "(blunt caps, default)" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:515 +#: ../src/widgets/calligraphy-toolbar.cpp:511 msgid "(slightly bulging)" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:515 +#: ../src/widgets/calligraphy-toolbar.cpp:511 msgid "(approximately round)" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:515 +#: ../src/widgets/calligraphy-toolbar.cpp:511 msgid "(long protruding caps)" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:519 +#: ../src/widgets/calligraphy-toolbar.cpp:515 msgid "Cap rounding" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:519 +#: ../src/widgets/calligraphy-toolbar.cpp:515 msgid "Caps:" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:520 +#: ../src/widgets/calligraphy-toolbar.cpp:516 msgid "" "Increase to make caps at the ends of strokes protrude more (0 = no caps, 1 = " "round caps)" msgstr "" #. Tremor -#: ../src/widgets/calligraphy-toolbar.cpp:532 +#: ../src/widgets/calligraphy-toolbar.cpp:528 msgid "(smooth line)" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:532 +#: ../src/widgets/calligraphy-toolbar.cpp:528 msgid "(slight tremor)" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:532 +#: ../src/widgets/calligraphy-toolbar.cpp:528 msgid "(noticeable tremor)" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:532 +#: ../src/widgets/calligraphy-toolbar.cpp:528 msgid "(maximum tremor)" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:535 +#: ../src/widgets/calligraphy-toolbar.cpp:531 msgid "Stroke Tremor" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:535 +#: ../src/widgets/calligraphy-toolbar.cpp:531 msgid "Tremor:" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:536 +#: ../src/widgets/calligraphy-toolbar.cpp:532 msgid "Increase to make strokes rugged and trembling" msgstr "" #. Wiggle -#: ../src/widgets/calligraphy-toolbar.cpp:550 +#: ../src/widgets/calligraphy-toolbar.cpp:546 msgid "(no wiggle)" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:550 +#: ../src/widgets/calligraphy-toolbar.cpp:546 msgid "(slight deviation)" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:550 +#: ../src/widgets/calligraphy-toolbar.cpp:546 msgid "(wild waves and curls)" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:553 +#: ../src/widgets/calligraphy-toolbar.cpp:549 msgid "Pen Wiggle" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:553 +#: ../src/widgets/calligraphy-toolbar.cpp:549 msgid "Wiggle:" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:554 +#: ../src/widgets/calligraphy-toolbar.cpp:550 msgid "Increase to make the pen waver and wiggle" msgstr "" #. Mass -#: ../src/widgets/calligraphy-toolbar.cpp:567 +#: ../src/widgets/calligraphy-toolbar.cpp:563 msgid "(no inertia)" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:567 +#: ../src/widgets/calligraphy-toolbar.cpp:563 msgid "(slight smoothing, default)" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:567 +#: ../src/widgets/calligraphy-toolbar.cpp:563 msgid "(noticeable lagging)" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:567 +#: ../src/widgets/calligraphy-toolbar.cpp:563 msgid "(maximum inertia)" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:570 +#: ../src/widgets/calligraphy-toolbar.cpp:566 msgid "Pen Mass" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:570 +#: ../src/widgets/calligraphy-toolbar.cpp:566 msgid "Mass:" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:571 +#: ../src/widgets/calligraphy-toolbar.cpp:567 msgid "Increase to make the pen drag behind, as if slowed by inertia" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:586 +#: ../src/widgets/calligraphy-toolbar.cpp:582 msgid "Trace Background" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:587 +#: ../src/widgets/calligraphy-toolbar.cpp:583 msgid "" "Trace the lightness of the background by the width of the pen (white - " "minimum width, black - maximum width)" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:600 +#: ../src/widgets/calligraphy-toolbar.cpp:596 msgid "Use the pressure of the input device to alter the width of the pen" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:612 +#: ../src/widgets/calligraphy-toolbar.cpp:608 msgid "Tilt" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:613 +#: ../src/widgets/calligraphy-toolbar.cpp:609 msgid "Use the tilt of the input device to alter the angle of the pen's nib" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:628 +#: ../src/widgets/calligraphy-toolbar.cpp:624 msgid "Choose a preset" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:643 +#: ../src/widgets/calligraphy-toolbar.cpp:639 msgid "Add/Edit Profile" msgstr "" -#: ../src/widgets/calligraphy-toolbar.cpp:644 +#: ../src/widgets/calligraphy-toolbar.cpp:640 msgid "Add or edit calligraphic profile" msgstr "" -#: ../src/widgets/connector-toolbar.cpp:136 +#: ../src/widgets/connector-toolbar.cpp:132 msgid "Set connector type: orthogonal" msgstr "" -#: ../src/widgets/connector-toolbar.cpp:136 +#: ../src/widgets/connector-toolbar.cpp:132 msgid "Set connector type: polyline" msgstr "" -#: ../src/widgets/connector-toolbar.cpp:185 +#: ../src/widgets/connector-toolbar.cpp:181 msgid "Change connector curvature" msgstr "" -#: ../src/widgets/connector-toolbar.cpp:236 +#: ../src/widgets/connector-toolbar.cpp:232 msgid "Change connector spacing" msgstr "" -#: ../src/widgets/connector-toolbar.cpp:329 +#: ../src/widgets/connector-toolbar.cpp:325 msgid "Avoid" msgstr "" -#: ../src/widgets/connector-toolbar.cpp:339 +#: ../src/widgets/connector-toolbar.cpp:335 msgid "Ignore" msgstr "" -#: ../src/widgets/connector-toolbar.cpp:350 +#: ../src/widgets/connector-toolbar.cpp:346 msgid "Orthogonal" msgstr "" -#: ../src/widgets/connector-toolbar.cpp:351 +#: ../src/widgets/connector-toolbar.cpp:347 msgid "Make connector orthogonal or polyline" msgstr "" -#: ../src/widgets/connector-toolbar.cpp:365 +#: ../src/widgets/connector-toolbar.cpp:361 msgid "Connector Curvature" msgstr "" -#: ../src/widgets/connector-toolbar.cpp:365 +#: ../src/widgets/connector-toolbar.cpp:361 msgid "Curvature:" msgstr "" -#: ../src/widgets/connector-toolbar.cpp:366 +#: ../src/widgets/connector-toolbar.cpp:362 msgid "The amount of connectors curvature" msgstr "" -#: ../src/widgets/connector-toolbar.cpp:376 +#: ../src/widgets/connector-toolbar.cpp:372 msgid "Connector Spacing" msgstr "" -#: ../src/widgets/connector-toolbar.cpp:376 +#: ../src/widgets/connector-toolbar.cpp:372 msgid "Spacing:" msgstr "" -#: ../src/widgets/connector-toolbar.cpp:377 +#: ../src/widgets/connector-toolbar.cpp:373 msgid "The amount of space left around objects by auto-routing connectors" msgstr "" -#: ../src/widgets/connector-toolbar.cpp:388 +#: ../src/widgets/connector-toolbar.cpp:384 msgid "Graph" msgstr "" -#: ../src/widgets/connector-toolbar.cpp:398 +#: ../src/widgets/connector-toolbar.cpp:394 msgid "Connector Length" msgstr "" -#: ../src/widgets/connector-toolbar.cpp:398 +#: ../src/widgets/connector-toolbar.cpp:394 msgid "Length:" msgstr "" -#: ../src/widgets/connector-toolbar.cpp:399 +#: ../src/widgets/connector-toolbar.cpp:395 msgid "Ideal length for connectors when layout is applied" msgstr "" -#: ../src/widgets/connector-toolbar.cpp:411 +#: ../src/widgets/connector-toolbar.cpp:407 msgid "Downwards" msgstr "" -#: ../src/widgets/connector-toolbar.cpp:412 +#: ../src/widgets/connector-toolbar.cpp:408 msgid "Make connectors with end-markers (arrows) point downwards" msgstr "" -#: ../src/widgets/connector-toolbar.cpp:428 +#: ../src/widgets/connector-toolbar.cpp:424 msgid "Do not allow overlapping shapes" msgstr "" @@ -23793,88 +23741,88 @@ msgstr "" msgid "Pattern offset" msgstr "" -#: ../src/widgets/desktop-widget.cpp:461 +#: ../src/widgets/desktop-widget.cpp:465 msgid "Zoom drawing if window size changes" msgstr "" -#: ../src/widgets/desktop-widget.cpp:665 +#: ../src/widgets/desktop-widget.cpp:669 msgid "Cursor coordinates" msgstr "" -#: ../src/widgets/desktop-widget.cpp:691 +#: ../src/widgets/desktop-widget.cpp:695 msgid "Z:" msgstr "" #. display the initial welcome message in the statusbar -#: ../src/widgets/desktop-widget.cpp:734 +#: ../src/widgets/desktop-widget.cpp:738 msgid "" "Welcome to Inkscape! Use shape or freehand tools to create objects; " "use selector (arrow) to move or transform them." msgstr "" -#: ../src/widgets/desktop-widget.cpp:828 +#: ../src/widgets/desktop-widget.cpp:832 msgid "grayscale" msgstr "" -#: ../src/widgets/desktop-widget.cpp:829 +#: ../src/widgets/desktop-widget.cpp:833 msgid ", grayscale" msgstr "" -#: ../src/widgets/desktop-widget.cpp:830 +#: ../src/widgets/desktop-widget.cpp:834 msgid "print colors preview" msgstr "" -#: ../src/widgets/desktop-widget.cpp:831 +#: ../src/widgets/desktop-widget.cpp:835 msgid ", print colors preview" msgstr "" -#: ../src/widgets/desktop-widget.cpp:832 +#: ../src/widgets/desktop-widget.cpp:836 msgid "outline" msgstr "" -#: ../src/widgets/desktop-widget.cpp:833 +#: ../src/widgets/desktop-widget.cpp:837 msgid "no filters" msgstr "" -#: ../src/widgets/desktop-widget.cpp:860 +#: ../src/widgets/desktop-widget.cpp:864 #, c-format msgid "%s%s: %d (%s%s) - Inkscape" msgstr "" -#: ../src/widgets/desktop-widget.cpp:862 ../src/widgets/desktop-widget.cpp:866 +#: ../src/widgets/desktop-widget.cpp:866 ../src/widgets/desktop-widget.cpp:870 #, c-format msgid "%s%s: %d (%s) - Inkscape" msgstr "" -#: ../src/widgets/desktop-widget.cpp:868 +#: ../src/widgets/desktop-widget.cpp:872 #, c-format msgid "%s%s: %d - Inkscape" msgstr "" -#: ../src/widgets/desktop-widget.cpp:874 +#: ../src/widgets/desktop-widget.cpp:878 #, c-format msgid "%s%s (%s%s) - Inkscape" msgstr "" -#: ../src/widgets/desktop-widget.cpp:876 ../src/widgets/desktop-widget.cpp:880 +#: ../src/widgets/desktop-widget.cpp:880 ../src/widgets/desktop-widget.cpp:884 #, c-format msgid "%s%s (%s) - Inkscape" msgstr "" -#: ../src/widgets/desktop-widget.cpp:882 +#: ../src/widgets/desktop-widget.cpp:886 #, c-format msgid "%s%s - Inkscape" msgstr "" -#: ../src/widgets/desktop-widget.cpp:1051 +#: ../src/widgets/desktop-widget.cpp:1055 msgid "Color-managed display is enabled in this window" msgstr "" -#: ../src/widgets/desktop-widget.cpp:1053 +#: ../src/widgets/desktop-widget.cpp:1057 msgid "Color-managed display is disabled in this window" msgstr "" -#: ../src/widgets/desktop-widget.cpp:1108 +#: ../src/widgets/desktop-widget.cpp:1112 #, c-format msgid "" "Save changes to document \"%s\" before " @@ -23883,12 +23831,12 @@ msgid "" "If you close without saving, your changes will be discarded." msgstr "" -#: ../src/widgets/desktop-widget.cpp:1118 -#: ../src/widgets/desktop-widget.cpp:1177 +#: ../src/widgets/desktop-widget.cpp:1122 +#: ../src/widgets/desktop-widget.cpp:1181 msgid "Close _without saving" msgstr "" -#: ../src/widgets/desktop-widget.cpp:1167 +#: ../src/widgets/desktop-widget.cpp:1171 #, c-format msgid "" "The file \"%s\" was saved with a " @@ -23897,38 +23845,38 @@ msgid "" "Do you want to save this file as Inkscape SVG?" msgstr "" -#: ../src/widgets/desktop-widget.cpp:1179 +#: ../src/widgets/desktop-widget.cpp:1183 msgid "_Save as Inkscape SVG" msgstr "" -#: ../src/widgets/desktop-widget.cpp:1389 +#: ../src/widgets/desktop-widget.cpp:1393 msgid "Note:" msgstr "" -#: ../src/widgets/dropper-toolbar.cpp:118 +#: ../src/widgets/dropper-toolbar.cpp:114 msgid "Pick opacity" msgstr "" -#: ../src/widgets/dropper-toolbar.cpp:119 +#: ../src/widgets/dropper-toolbar.cpp:115 msgid "" "Pick both the color and the alpha (transparency) under cursor; otherwise, " "pick only the visible color premultiplied by alpha" msgstr "" -#: ../src/widgets/dropper-toolbar.cpp:122 +#: ../src/widgets/dropper-toolbar.cpp:118 msgid "Pick" msgstr "" -#: ../src/widgets/dropper-toolbar.cpp:131 +#: ../src/widgets/dropper-toolbar.cpp:127 msgid "Assign opacity" msgstr "" -#: ../src/widgets/dropper-toolbar.cpp:132 +#: ../src/widgets/dropper-toolbar.cpp:128 msgid "" "If alpha was picked, assign it to selection as fill or stroke transparency" msgstr "" -#: ../src/widgets/dropper-toolbar.cpp:135 +#: ../src/widgets/dropper-toolbar.cpp:131 msgid "Assign" msgstr "" @@ -23936,19 +23884,19 @@ msgstr "" msgid "remove" msgstr "" -#: ../src/widgets/erasor-toolbar.cpp:115 +#: ../src/widgets/eraser-toolbar.cpp:111 msgid "Delete objects touched by the eraser" msgstr "" -#: ../src/widgets/erasor-toolbar.cpp:121 +#: ../src/widgets/eraser-toolbar.cpp:117 msgid "Cut" msgstr "" -#: ../src/widgets/erasor-toolbar.cpp:122 +#: ../src/widgets/eraser-toolbar.cpp:118 msgid "Cut out from objects" msgstr "" -#: ../src/widgets/erasor-toolbar.cpp:150 +#: ../src/widgets/eraser-toolbar.cpp:146 msgid "The width of the eraser pen (relative to the visible canvas area)" msgstr "" @@ -23980,40 +23928,40 @@ msgstr "" msgid "Set pattern on stroke" msgstr "" -#: ../src/widgets/font-selector.cpp:135 ../src/widgets/text-toolbar.cpp:966 -#: ../src/widgets/text-toolbar.cpp:1284 +#: ../src/widgets/font-selector.cpp:134 ../src/widgets/text-toolbar.cpp:962 +#: ../src/widgets/text-toolbar.cpp:1275 msgid "Font size" msgstr "" #. Family frame -#: ../src/widgets/font-selector.cpp:149 +#: ../src/widgets/font-selector.cpp:148 msgid "Font family" msgstr "" #. Style frame -#: ../src/widgets/font-selector.cpp:192 +#: ../src/widgets/font-selector.cpp:191 msgctxt "Font selector" msgid "Style" msgstr "" -#: ../src/widgets/font-selector.cpp:243 ../share/extensions/dots.inx.h:3 +#: ../src/widgets/font-selector.cpp:242 ../share/extensions/dots.inx.h:3 msgid "Font size:" msgstr "" -#: ../src/widgets/gradient-selector.cpp:207 +#: ../src/widgets/gradient-selector.cpp:208 msgid "Create a duplicate gradient" msgstr "" -#: ../src/widgets/gradient-selector.cpp:217 +#: ../src/widgets/gradient-selector.cpp:218 msgid "Edit gradient" msgstr "" -#: ../src/widgets/gradient-selector.cpp:288 +#: ../src/widgets/gradient-selector.cpp:289 #: ../src/widgets/paint-selector.cpp:244 msgid "Swatch" msgstr "" -#: ../src/widgets/gradient-selector.cpp:338 +#: ../src/widgets/gradient-selector.cpp:339 msgid "Rename gradient" msgstr "" @@ -24179,6 +24127,7 @@ msgstr "" #: ../src/widgets/gradient-vector.cpp:332 #: ../src/widgets/paint-selector.cpp:922 +#: ../src/widgets/stroke-marker-selector.cpp:154 msgid "No document selected" msgstr "" @@ -24216,82 +24165,89 @@ msgstr "" msgid "Change gradient stop color" msgstr "" -#: ../src/widgets/lpe-toolbar.cpp:249 +#: ../src/widgets/lpe-toolbar.cpp:252 msgid "Closed" msgstr "" -#: ../src/widgets/lpe-toolbar.cpp:251 +#: ../src/widgets/lpe-toolbar.cpp:254 msgid "Open start" msgstr "" -#: ../src/widgets/lpe-toolbar.cpp:253 +#: ../src/widgets/lpe-toolbar.cpp:256 msgid "Open end" msgstr "" -#: ../src/widgets/lpe-toolbar.cpp:255 +#: ../src/widgets/lpe-toolbar.cpp:258 msgid "Open both" msgstr "" -#: ../src/widgets/lpe-toolbar.cpp:314 +#: ../src/widgets/lpe-toolbar.cpp:317 msgid "All inactive" msgstr "" -#: ../src/widgets/lpe-toolbar.cpp:315 +#: ../src/widgets/lpe-toolbar.cpp:318 msgid "No geometric tool is active" msgstr "" -#: ../src/widgets/lpe-toolbar.cpp:348 +#: ../src/widgets/lpe-toolbar.cpp:351 msgid "Show limiting bounding box" msgstr "" -#: ../src/widgets/lpe-toolbar.cpp:349 +#: ../src/widgets/lpe-toolbar.cpp:352 msgid "Show bounding box (used to cut infinite lines)" msgstr "" -#: ../src/widgets/lpe-toolbar.cpp:360 +#: ../src/widgets/lpe-toolbar.cpp:363 msgid "Get limiting bounding box from selection" msgstr "" -#: ../src/widgets/lpe-toolbar.cpp:361 +#: ../src/widgets/lpe-toolbar.cpp:364 msgid "" "Set limiting bounding box (used to cut infinite lines) to the bounding box " "of current selection" msgstr "" -#: ../src/widgets/lpe-toolbar.cpp:373 +#: ../src/widgets/lpe-toolbar.cpp:376 msgid "Choose a line segment type" msgstr "" -#: ../src/widgets/lpe-toolbar.cpp:389 +#: ../src/widgets/lpe-toolbar.cpp:392 msgid "Display measuring info" msgstr "" -#: ../src/widgets/lpe-toolbar.cpp:390 +#: ../src/widgets/lpe-toolbar.cpp:393 msgid "Display measuring info for selected items" msgstr "" -#: ../src/widgets/lpe-toolbar.cpp:410 +#. Add the units menu. +#: ../src/widgets/lpe-toolbar.cpp:403 ../src/widgets/node-toolbar.cpp:625 +#: ../src/widgets/paintbucket-toolbar.cpp:186 +#: ../src/widgets/rect-toolbar.cpp:378 ../src/widgets/select-toolbar.cpp:542 +msgid "Units" +msgstr "" + +#: ../src/widgets/lpe-toolbar.cpp:413 msgid "Open LPE dialog" msgstr "" -#: ../src/widgets/lpe-toolbar.cpp:411 +#: ../src/widgets/lpe-toolbar.cpp:414 msgid "Open LPE dialog (to adapt parameters numerically)" msgstr "" -#: ../src/widgets/measure-toolbar.cpp:102 ../src/widgets/text-toolbar.cpp:1287 +#: ../src/widgets/measure-toolbar.cpp:103 ../src/widgets/text-toolbar.cpp:1278 msgid "Font Size" msgstr "" -#: ../src/widgets/measure-toolbar.cpp:102 +#: ../src/widgets/measure-toolbar.cpp:103 msgid "Font Size:" msgstr "" -#: ../src/widgets/measure-toolbar.cpp:103 +#: ../src/widgets/measure-toolbar.cpp:104 msgid "The font size to be used in the measurement labels" msgstr "" -#: ../src/widgets/measure-toolbar.cpp:115 -#: ../src/widgets/measure-toolbar.cpp:123 +#: ../src/widgets/measure-toolbar.cpp:116 +#: ../src/widgets/measure-toolbar.cpp:124 msgid "The units to be used for the measurements" msgstr "" @@ -24312,6 +24268,7 @@ msgid "Create conical gradient" msgstr "" #: ../src/widgets/mesh-toolbar.cpp:263 +#: ../share/extensions/guides_creator.inx.h:5 msgid "Rows" msgstr "" @@ -24324,6 +24281,7 @@ msgid "Number of rows in new mesh" msgstr "" #: ../src/widgets/mesh-toolbar.cpp:279 +#: ../share/extensions/guides_creator.inx.h:4 msgid "Columns" msgstr "" @@ -24351,7 +24309,7 @@ msgstr "" msgid "Edit stroke mesh" msgstr "" -#: ../src/widgets/mesh-toolbar.cpp:317 ../src/widgets/node-toolbar.cpp:530 +#: ../src/widgets/mesh-toolbar.cpp:317 ../src/widgets/node-toolbar.cpp:533 msgid "Show Handles" msgstr "" @@ -24359,195 +24317,195 @@ msgstr "" msgid "Show side and tensor handles" msgstr "" -#: ../src/widgets/node-toolbar.cpp:350 +#: ../src/widgets/node-toolbar.cpp:353 msgid "Insert node" msgstr "" -#: ../src/widgets/node-toolbar.cpp:351 +#: ../src/widgets/node-toolbar.cpp:354 msgid "Insert new nodes into selected segments" msgstr "" -#: ../src/widgets/node-toolbar.cpp:354 +#: ../src/widgets/node-toolbar.cpp:357 msgid "Insert" msgstr "" -#: ../src/widgets/node-toolbar.cpp:365 +#: ../src/widgets/node-toolbar.cpp:368 msgid "Insert node at min X" msgstr "" -#: ../src/widgets/node-toolbar.cpp:366 +#: ../src/widgets/node-toolbar.cpp:369 msgid "Insert new nodes at min X into selected segments" msgstr "" -#: ../src/widgets/node-toolbar.cpp:369 +#: ../src/widgets/node-toolbar.cpp:372 msgid "Insert min X" msgstr "" -#: ../src/widgets/node-toolbar.cpp:375 +#: ../src/widgets/node-toolbar.cpp:378 msgid "Insert node at max X" msgstr "" -#: ../src/widgets/node-toolbar.cpp:376 +#: ../src/widgets/node-toolbar.cpp:379 msgid "Insert new nodes at max X into selected segments" msgstr "" -#: ../src/widgets/node-toolbar.cpp:379 +#: ../src/widgets/node-toolbar.cpp:382 msgid "Insert max X" msgstr "" -#: ../src/widgets/node-toolbar.cpp:385 +#: ../src/widgets/node-toolbar.cpp:388 msgid "Insert node at min Y" msgstr "" -#: ../src/widgets/node-toolbar.cpp:386 +#: ../src/widgets/node-toolbar.cpp:389 msgid "Insert new nodes at min Y into selected segments" msgstr "" -#: ../src/widgets/node-toolbar.cpp:389 +#: ../src/widgets/node-toolbar.cpp:392 msgid "Insert min Y" msgstr "" -#: ../src/widgets/node-toolbar.cpp:395 +#: ../src/widgets/node-toolbar.cpp:398 msgid "Insert node at max Y" msgstr "" -#: ../src/widgets/node-toolbar.cpp:396 +#: ../src/widgets/node-toolbar.cpp:399 msgid "Insert new nodes at max Y into selected segments" msgstr "" -#: ../src/widgets/node-toolbar.cpp:399 +#: ../src/widgets/node-toolbar.cpp:402 msgid "Insert max Y" msgstr "" -#: ../src/widgets/node-toolbar.cpp:407 +#: ../src/widgets/node-toolbar.cpp:410 msgid "Delete selected nodes" msgstr "" -#: ../src/widgets/node-toolbar.cpp:418 +#: ../src/widgets/node-toolbar.cpp:421 msgid "Join selected nodes" msgstr "" -#: ../src/widgets/node-toolbar.cpp:421 +#: ../src/widgets/node-toolbar.cpp:424 msgid "Join" msgstr "" -#: ../src/widgets/node-toolbar.cpp:429 +#: ../src/widgets/node-toolbar.cpp:432 msgid "Break path at selected nodes" msgstr "" -#: ../src/widgets/node-toolbar.cpp:439 +#: ../src/widgets/node-toolbar.cpp:442 msgid "Join with segment" msgstr "" -#: ../src/widgets/node-toolbar.cpp:440 +#: ../src/widgets/node-toolbar.cpp:443 msgid "Join selected endnodes with a new segment" msgstr "" -#: ../src/widgets/node-toolbar.cpp:449 +#: ../src/widgets/node-toolbar.cpp:452 msgid "Delete segment" msgstr "" -#: ../src/widgets/node-toolbar.cpp:450 +#: ../src/widgets/node-toolbar.cpp:453 msgid "Delete segment between two non-endpoint nodes" msgstr "" -#: ../src/widgets/node-toolbar.cpp:459 +#: ../src/widgets/node-toolbar.cpp:462 msgid "Node Cusp" msgstr "" -#: ../src/widgets/node-toolbar.cpp:460 +#: ../src/widgets/node-toolbar.cpp:463 msgid "Make selected nodes corner" msgstr "" -#: ../src/widgets/node-toolbar.cpp:469 +#: ../src/widgets/node-toolbar.cpp:472 msgid "Node Smooth" msgstr "" -#: ../src/widgets/node-toolbar.cpp:470 +#: ../src/widgets/node-toolbar.cpp:473 msgid "Make selected nodes smooth" msgstr "" -#: ../src/widgets/node-toolbar.cpp:479 +#: ../src/widgets/node-toolbar.cpp:482 msgid "Node Symmetric" msgstr "" -#: ../src/widgets/node-toolbar.cpp:480 +#: ../src/widgets/node-toolbar.cpp:483 msgid "Make selected nodes symmetric" msgstr "" -#: ../src/widgets/node-toolbar.cpp:489 +#: ../src/widgets/node-toolbar.cpp:492 msgid "Node Auto" msgstr "" -#: ../src/widgets/node-toolbar.cpp:490 +#: ../src/widgets/node-toolbar.cpp:493 msgid "Make selected nodes auto-smooth" msgstr "" -#: ../src/widgets/node-toolbar.cpp:499 +#: ../src/widgets/node-toolbar.cpp:502 msgid "Node Line" msgstr "" -#: ../src/widgets/node-toolbar.cpp:500 +#: ../src/widgets/node-toolbar.cpp:503 msgid "Make selected segments lines" msgstr "" -#: ../src/widgets/node-toolbar.cpp:509 +#: ../src/widgets/node-toolbar.cpp:512 msgid "Node Curve" msgstr "" -#: ../src/widgets/node-toolbar.cpp:510 +#: ../src/widgets/node-toolbar.cpp:513 msgid "Make selected segments curves" msgstr "" -#: ../src/widgets/node-toolbar.cpp:519 +#: ../src/widgets/node-toolbar.cpp:522 msgid "Show Transform Handles" msgstr "" -#: ../src/widgets/node-toolbar.cpp:520 +#: ../src/widgets/node-toolbar.cpp:523 msgid "Show transformation handles for selected nodes" msgstr "" -#: ../src/widgets/node-toolbar.cpp:531 +#: ../src/widgets/node-toolbar.cpp:534 msgid "Show Bezier handles of selected nodes" msgstr "" -#: ../src/widgets/node-toolbar.cpp:541 +#: ../src/widgets/node-toolbar.cpp:544 msgid "Show Outline" msgstr "" -#: ../src/widgets/node-toolbar.cpp:542 +#: ../src/widgets/node-toolbar.cpp:545 msgid "Show path outline (without path effects)" msgstr "" -#: ../src/widgets/node-toolbar.cpp:564 +#: ../src/widgets/node-toolbar.cpp:567 msgid "Edit clipping paths" msgstr "" -#: ../src/widgets/node-toolbar.cpp:565 +#: ../src/widgets/node-toolbar.cpp:568 msgid "Show clipping path(s) of selected object(s)" msgstr "" -#: ../src/widgets/node-toolbar.cpp:575 +#: ../src/widgets/node-toolbar.cpp:578 msgid "Edit masks" msgstr "" -#: ../src/widgets/node-toolbar.cpp:576 +#: ../src/widgets/node-toolbar.cpp:579 msgid "Show mask(s) of selected object(s)" msgstr "" -#: ../src/widgets/node-toolbar.cpp:590 +#: ../src/widgets/node-toolbar.cpp:593 msgid "X coordinate:" msgstr "" -#: ../src/widgets/node-toolbar.cpp:590 +#: ../src/widgets/node-toolbar.cpp:593 msgid "X coordinate of selected node(s)" msgstr "" -#: ../src/widgets/node-toolbar.cpp:608 +#: ../src/widgets/node-toolbar.cpp:611 msgid "Y coordinate:" msgstr "" -#: ../src/widgets/node-toolbar.cpp:608 +#: ../src/widgets/node-toolbar.cpp:611 msgid "Y coordinate of selected node(s)" msgstr "" @@ -24569,34 +24527,34 @@ msgid "" "pixels to be counted in the fill" msgstr "" -#: ../src/widgets/paintbucket-toolbar.cpp:193 +#: ../src/widgets/paintbucket-toolbar.cpp:194 msgid "Grow/shrink by" msgstr "" -#: ../src/widgets/paintbucket-toolbar.cpp:193 +#: ../src/widgets/paintbucket-toolbar.cpp:194 msgid "Grow/shrink by:" msgstr "" -#: ../src/widgets/paintbucket-toolbar.cpp:194 +#: ../src/widgets/paintbucket-toolbar.cpp:195 msgid "" "The amount to grow (positive) or shrink (negative) the created fill path" msgstr "" -#: ../src/widgets/paintbucket-toolbar.cpp:219 +#: ../src/widgets/paintbucket-toolbar.cpp:220 msgid "Close gaps" msgstr "" -#: ../src/widgets/paintbucket-toolbar.cpp:220 +#: ../src/widgets/paintbucket-toolbar.cpp:221 msgid "Close gaps:" msgstr "" -#: ../src/widgets/paintbucket-toolbar.cpp:231 -#: ../src/widgets/pencil-toolbar.cpp:326 ../src/widgets/spiral-toolbar.cpp:304 -#: ../src/widgets/star-toolbar.cpp:576 +#: ../src/widgets/paintbucket-toolbar.cpp:232 +#: ../src/widgets/pencil-toolbar.cpp:321 ../src/widgets/spiral-toolbar.cpp:300 +#: ../src/widgets/star-toolbar.cpp:572 msgid "Defaults" msgstr "" -#: ../src/widgets/paintbucket-toolbar.cpp:232 +#: ../src/widgets/paintbucket-toolbar.cpp:233 msgid "" "Reset paint bucket parameters to defaults (use Inkscape Preferences > Tools " "to change defaults)" @@ -24675,487 +24633,519 @@ msgstr "" msgid "Pattern fill" msgstr "" -#: ../src/widgets/paint-selector.cpp:1164 +#: ../src/widgets/paint-selector.cpp:1162 msgid "Swatch fill" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:130 +#: ../src/widgets/pencil-toolbar.cpp:125 msgid "Bezier" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:131 +#: ../src/widgets/pencil-toolbar.cpp:126 msgid "Create regular Bezier path" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:138 +#: ../src/widgets/pencil-toolbar.cpp:133 msgid "Create Spiro path" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:145 +#: ../src/widgets/pencil-toolbar.cpp:140 msgid "Zigzag" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:146 +#: ../src/widgets/pencil-toolbar.cpp:141 msgid "Create a sequence of straight line segments" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:152 +#: ../src/widgets/pencil-toolbar.cpp:147 msgid "Paraxial" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:153 +#: ../src/widgets/pencil-toolbar.cpp:148 msgid "Create a sequence of paraxial line segments" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:161 +#: ../src/widgets/pencil-toolbar.cpp:156 msgid "Mode of new lines drawn by this tool" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:190 +#: ../src/widgets/pencil-toolbar.cpp:185 msgid "Triangle in" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:191 +#: ../src/widgets/pencil-toolbar.cpp:186 msgid "Triangle out" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:193 +#: ../src/widgets/pencil-toolbar.cpp:188 msgid "From clipboard" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:218 ../src/widgets/pencil-toolbar.cpp:219 +#: ../src/widgets/pencil-toolbar.cpp:213 ../src/widgets/pencil-toolbar.cpp:214 msgid "Shape:" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:218 +#: ../src/widgets/pencil-toolbar.cpp:213 msgid "Shape of new paths drawn by this tool" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:303 +#: ../src/widgets/pencil-toolbar.cpp:298 msgid "(many nodes, rough)" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:303 +#: ../src/widgets/pencil-toolbar.cpp:298 msgid "(few nodes, smooth)" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:306 +#: ../src/widgets/pencil-toolbar.cpp:301 msgid "Smoothing:" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:306 +#: ../src/widgets/pencil-toolbar.cpp:301 msgid "Smoothing: " msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:307 +#: ../src/widgets/pencil-toolbar.cpp:302 msgid "How much smoothing (simplifying) is applied to the line" msgstr "" -#: ../src/widgets/pencil-toolbar.cpp:327 +#: ../src/widgets/pencil-toolbar.cpp:322 msgid "" "Reset pencil parameters to defaults (use Inkscape Preferences > Tools to " "change defaults)" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:128 +#: ../src/widgets/rect-toolbar.cpp:130 msgid "Change rectangle" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:315 +#: ../src/widgets/rect-toolbar.cpp:317 msgid "W:" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:315 +#: ../src/widgets/rect-toolbar.cpp:317 msgid "Width of rectangle" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:332 +#: ../src/widgets/rect-toolbar.cpp:334 msgid "H:" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:332 +#: ../src/widgets/rect-toolbar.cpp:334 msgid "Height of rectangle" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:346 ../src/widgets/rect-toolbar.cpp:361 +#: ../src/widgets/rect-toolbar.cpp:348 ../src/widgets/rect-toolbar.cpp:363 msgid "not rounded" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:349 +#: ../src/widgets/rect-toolbar.cpp:351 msgid "Horizontal radius" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:349 +#: ../src/widgets/rect-toolbar.cpp:351 msgid "Rx:" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:349 +#: ../src/widgets/rect-toolbar.cpp:351 msgid "Horizontal radius of rounded corners" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:364 +#: ../src/widgets/rect-toolbar.cpp:366 msgid "Vertical radius" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:364 +#: ../src/widgets/rect-toolbar.cpp:366 msgid "Ry:" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:364 +#: ../src/widgets/rect-toolbar.cpp:366 msgid "Vertical radius of rounded corners" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:383 +#: ../src/widgets/rect-toolbar.cpp:385 msgid "Not rounded" msgstr "" -#: ../src/widgets/rect-toolbar.cpp:384 +#: ../src/widgets/rect-toolbar.cpp:386 msgid "Make corners sharp" msgstr "" -#: ../src/widgets/select-toolbar.cpp:263 +#: ../src/widgets/ruler.cpp:192 +msgid "The orientation of the ruler" +msgstr "" + +#: ../src/widgets/ruler.cpp:202 +msgid "Unit of the ruler" +msgstr "" + +#: ../src/widgets/ruler.cpp:210 +msgid "Lower limit of ruler" +msgstr "" + +#: ../src/widgets/ruler.cpp:219 +msgid "Upper" +msgstr "" + +#: ../src/widgets/ruler.cpp:220 +msgid "Upper limit of ruler" +msgstr "" + +#: ../src/widgets/ruler.cpp:230 +msgid "Position of mark on the ruler" +msgstr "" + +#: ../src/widgets/ruler.cpp:239 +msgid "Max Size" +msgstr "" + +#: ../src/widgets/ruler.cpp:240 +msgid "Maximum size of the ruler" +msgstr "" + +#: ../src/widgets/select-toolbar.cpp:267 msgid "Transform by toolbar" msgstr "" -#: ../src/widgets/select-toolbar.cpp:341 +#: ../src/widgets/select-toolbar.cpp:345 msgid "Now stroke width is scaled when objects are scaled." msgstr "" -#: ../src/widgets/select-toolbar.cpp:343 +#: ../src/widgets/select-toolbar.cpp:347 msgid "Now stroke width is not scaled when objects are scaled." msgstr "" -#: ../src/widgets/select-toolbar.cpp:354 +#: ../src/widgets/select-toolbar.cpp:358 msgid "" "Now rounded rectangle corners are scaled when rectangles are " "scaled." msgstr "" -#: ../src/widgets/select-toolbar.cpp:356 +#: ../src/widgets/select-toolbar.cpp:360 msgid "" "Now rounded rectangle corners are not scaled when rectangles " "are scaled." msgstr "" -#: ../src/widgets/select-toolbar.cpp:367 +#: ../src/widgets/select-toolbar.cpp:371 msgid "" "Now gradients are transformed along with their objects when " "those are transformed (moved, scaled, rotated, or skewed)." msgstr "" -#: ../src/widgets/select-toolbar.cpp:369 +#: ../src/widgets/select-toolbar.cpp:373 msgid "" "Now gradients remain fixed when objects are transformed " "(moved, scaled, rotated, or skewed)." msgstr "" -#: ../src/widgets/select-toolbar.cpp:380 +#: ../src/widgets/select-toolbar.cpp:384 msgid "" "Now patterns are transformed along with their objects when " "those are transformed (moved, scaled, rotated, or skewed)." msgstr "" -#: ../src/widgets/select-toolbar.cpp:382 +#: ../src/widgets/select-toolbar.cpp:386 msgid "" "Now patterns remain fixed when objects are transformed (moved, " "scaled, rotated, or skewed)." msgstr "" #. four spinbuttons -#: ../src/widgets/select-toolbar.cpp:500 +#: ../src/widgets/select-toolbar.cpp:504 msgctxt "Select toolbar" msgid "X position" msgstr "" -#: ../src/widgets/select-toolbar.cpp:500 +#: ../src/widgets/select-toolbar.cpp:504 msgctxt "Select toolbar" msgid "X:" msgstr "" -#: ../src/widgets/select-toolbar.cpp:502 +#: ../src/widgets/select-toolbar.cpp:506 msgid "Horizontal coordinate of selection" msgstr "" -#: ../src/widgets/select-toolbar.cpp:506 +#: ../src/widgets/select-toolbar.cpp:510 msgctxt "Select toolbar" msgid "Y position" msgstr "" -#: ../src/widgets/select-toolbar.cpp:506 +#: ../src/widgets/select-toolbar.cpp:510 msgctxt "Select toolbar" msgid "Y:" msgstr "" -#: ../src/widgets/select-toolbar.cpp:508 +#: ../src/widgets/select-toolbar.cpp:512 msgid "Vertical coordinate of selection" msgstr "" -#: ../src/widgets/select-toolbar.cpp:512 +#: ../src/widgets/select-toolbar.cpp:516 msgctxt "Select toolbar" msgid "Width" msgstr "" -#: ../src/widgets/select-toolbar.cpp:512 +#: ../src/widgets/select-toolbar.cpp:516 msgctxt "Select toolbar" msgid "W:" msgstr "" -#: ../src/widgets/select-toolbar.cpp:514 +#: ../src/widgets/select-toolbar.cpp:518 msgid "Width of selection" msgstr "" -#: ../src/widgets/select-toolbar.cpp:521 +#: ../src/widgets/select-toolbar.cpp:525 msgid "Lock width and height" msgstr "" -#: ../src/widgets/select-toolbar.cpp:522 +#: ../src/widgets/select-toolbar.cpp:526 msgid "When locked, change both width and height by the same proportion" msgstr "" -#: ../src/widgets/select-toolbar.cpp:531 +#: ../src/widgets/select-toolbar.cpp:535 msgctxt "Select toolbar" msgid "Height" msgstr "" -#: ../src/widgets/select-toolbar.cpp:531 +#: ../src/widgets/select-toolbar.cpp:535 msgctxt "Select toolbar" msgid "H:" msgstr "" -#: ../src/widgets/select-toolbar.cpp:533 +#: ../src/widgets/select-toolbar.cpp:537 msgid "Height of selection" msgstr "" -#: ../src/widgets/select-toolbar.cpp:583 +#: ../src/widgets/select-toolbar.cpp:587 msgid "Scale rounded corners" msgstr "" -#: ../src/widgets/select-toolbar.cpp:594 +#: ../src/widgets/select-toolbar.cpp:598 msgid "Move gradients" msgstr "" -#: ../src/widgets/select-toolbar.cpp:605 +#: ../src/widgets/select-toolbar.cpp:609 msgid "Move patterns" msgstr "" -#: ../src/widgets/spiral-toolbar.cpp:115 +#: ../src/widgets/spiral-toolbar.cpp:111 msgid "Change spiral" msgstr "" -#: ../src/widgets/spiral-toolbar.cpp:261 +#: ../src/widgets/spiral-toolbar.cpp:257 msgid "just a curve" msgstr "" -#: ../src/widgets/spiral-toolbar.cpp:261 +#: ../src/widgets/spiral-toolbar.cpp:257 msgid "one full revolution" msgstr "" -#: ../src/widgets/spiral-toolbar.cpp:264 +#: ../src/widgets/spiral-toolbar.cpp:260 msgid "Number of turns" msgstr "" -#: ../src/widgets/spiral-toolbar.cpp:264 +#: ../src/widgets/spiral-toolbar.cpp:260 msgid "Turns:" msgstr "" -#: ../src/widgets/spiral-toolbar.cpp:264 +#: ../src/widgets/spiral-toolbar.cpp:260 msgid "Number of revolutions" msgstr "" -#: ../src/widgets/spiral-toolbar.cpp:275 +#: ../src/widgets/spiral-toolbar.cpp:271 msgid "circle" msgstr "" -#: ../src/widgets/spiral-toolbar.cpp:275 +#: ../src/widgets/spiral-toolbar.cpp:271 msgid "edge is much denser" msgstr "" -#: ../src/widgets/spiral-toolbar.cpp:275 +#: ../src/widgets/spiral-toolbar.cpp:271 msgid "edge is denser" msgstr "" -#: ../src/widgets/spiral-toolbar.cpp:275 +#: ../src/widgets/spiral-toolbar.cpp:271 msgid "even" msgstr "" -#: ../src/widgets/spiral-toolbar.cpp:275 +#: ../src/widgets/spiral-toolbar.cpp:271 msgid "center is denser" msgstr "" -#: ../src/widgets/spiral-toolbar.cpp:275 +#: ../src/widgets/spiral-toolbar.cpp:271 msgid "center is much denser" msgstr "" -#: ../src/widgets/spiral-toolbar.cpp:278 +#: ../src/widgets/spiral-toolbar.cpp:274 msgid "Divergence" msgstr "" -#: ../src/widgets/spiral-toolbar.cpp:278 +#: ../src/widgets/spiral-toolbar.cpp:274 msgid "Divergence:" msgstr "" -#: ../src/widgets/spiral-toolbar.cpp:278 +#: ../src/widgets/spiral-toolbar.cpp:274 msgid "How much denser/sparser are outer revolutions; 1 = uniform" msgstr "" -#: ../src/widgets/spiral-toolbar.cpp:289 +#: ../src/widgets/spiral-toolbar.cpp:285 msgid "starts from center" msgstr "" -#: ../src/widgets/spiral-toolbar.cpp:289 +#: ../src/widgets/spiral-toolbar.cpp:285 msgid "starts mid-way" msgstr "" -#: ../src/widgets/spiral-toolbar.cpp:289 +#: ../src/widgets/spiral-toolbar.cpp:285 msgid "starts near edge" msgstr "" -#: ../src/widgets/spiral-toolbar.cpp:292 +#: ../src/widgets/spiral-toolbar.cpp:288 msgid "Inner radius" msgstr "" -#: ../src/widgets/spiral-toolbar.cpp:292 +#: ../src/widgets/spiral-toolbar.cpp:288 msgid "Inner radius:" msgstr "" -#: ../src/widgets/spiral-toolbar.cpp:292 +#: ../src/widgets/spiral-toolbar.cpp:288 msgid "Radius of the innermost revolution (relative to the spiral size)" msgstr "" -#: ../src/widgets/spiral-toolbar.cpp:305 ../src/widgets/star-toolbar.cpp:577 +#: ../src/widgets/spiral-toolbar.cpp:301 ../src/widgets/star-toolbar.cpp:573 msgid "" "Reset shape parameters to defaults (use Inkscape Preferences > Tools to " "change defaults)" msgstr "" #. Width -#: ../src/widgets/spray-toolbar.cpp:129 +#: ../src/widgets/spray-toolbar.cpp:125 msgid "(narrow spray)" msgstr "" -#: ../src/widgets/spray-toolbar.cpp:129 +#: ../src/widgets/spray-toolbar.cpp:125 msgid "(broad spray)" msgstr "" -#: ../src/widgets/spray-toolbar.cpp:132 +#: ../src/widgets/spray-toolbar.cpp:128 msgid "The width of the spray area (relative to the visible canvas area)" msgstr "" -#: ../src/widgets/spray-toolbar.cpp:145 +#: ../src/widgets/spray-toolbar.cpp:141 msgid "(maximum mean)" msgstr "" -#: ../src/widgets/spray-toolbar.cpp:148 +#: ../src/widgets/spray-toolbar.cpp:144 msgid "Focus" msgstr "" -#: ../src/widgets/spray-toolbar.cpp:148 +#: ../src/widgets/spray-toolbar.cpp:144 msgid "Focus:" msgstr "" -#: ../src/widgets/spray-toolbar.cpp:148 +#: ../src/widgets/spray-toolbar.cpp:144 msgid "0 to spray a spot; increase to enlarge the ring radius" msgstr "" #. Standard_deviation -#: ../src/widgets/spray-toolbar.cpp:161 +#: ../src/widgets/spray-toolbar.cpp:157 msgid "(minimum scatter)" msgstr "" -#: ../src/widgets/spray-toolbar.cpp:161 +#: ../src/widgets/spray-toolbar.cpp:157 msgid "(maximum scatter)" msgstr "" -#: ../src/widgets/spray-toolbar.cpp:164 +#: ../src/widgets/spray-toolbar.cpp:160 msgctxt "Spray tool" msgid "Scatter" msgstr "" -#: ../src/widgets/spray-toolbar.cpp:164 +#: ../src/widgets/spray-toolbar.cpp:160 msgctxt "Spray tool" msgid "Scatter:" msgstr "" -#: ../src/widgets/spray-toolbar.cpp:164 +#: ../src/widgets/spray-toolbar.cpp:160 msgid "Increase to scatter sprayed objects" msgstr "" -#: ../src/widgets/spray-toolbar.cpp:183 +#: ../src/widgets/spray-toolbar.cpp:179 msgid "Spray copies of the initial selection" msgstr "" -#: ../src/widgets/spray-toolbar.cpp:190 +#: ../src/widgets/spray-toolbar.cpp:186 msgid "Spray clones of the initial selection" msgstr "" -#: ../src/widgets/spray-toolbar.cpp:196 +#: ../src/widgets/spray-toolbar.cpp:192 msgid "Spray single path" msgstr "" -#: ../src/widgets/spray-toolbar.cpp:197 +#: ../src/widgets/spray-toolbar.cpp:193 msgid "Spray objects in a single path" msgstr "" -#: ../src/widgets/spray-toolbar.cpp:201 ../src/widgets/tweak-toolbar.cpp:271 +#: ../src/widgets/spray-toolbar.cpp:197 ../src/widgets/tweak-toolbar.cpp:267 msgid "Mode" msgstr "" #. Population -#: ../src/widgets/spray-toolbar.cpp:221 +#: ../src/widgets/spray-toolbar.cpp:217 msgid "(low population)" msgstr "" -#: ../src/widgets/spray-toolbar.cpp:221 +#: ../src/widgets/spray-toolbar.cpp:217 msgid "(high population)" msgstr "" -#: ../src/widgets/spray-toolbar.cpp:224 +#: ../src/widgets/spray-toolbar.cpp:220 msgid "Amount" msgstr "" -#: ../src/widgets/spray-toolbar.cpp:225 +#: ../src/widgets/spray-toolbar.cpp:221 msgid "Adjusts the number of items sprayed per click" msgstr "" -#: ../src/widgets/spray-toolbar.cpp:241 +#: ../src/widgets/spray-toolbar.cpp:237 msgid "" "Use the pressure of the input device to alter the amount of sprayed objects" msgstr "" -#: ../src/widgets/spray-toolbar.cpp:251 +#: ../src/widgets/spray-toolbar.cpp:247 msgid "(high rotation variation)" msgstr "" -#: ../src/widgets/spray-toolbar.cpp:254 +#: ../src/widgets/spray-toolbar.cpp:250 msgid "Rotation" msgstr "" -#: ../src/widgets/spray-toolbar.cpp:254 +#: ../src/widgets/spray-toolbar.cpp:250 msgid "Rotation:" msgstr "" -#: ../src/widgets/spray-toolbar.cpp:256 +#: ../src/widgets/spray-toolbar.cpp:252 #, no-c-format msgid "" "Variation of the rotation of the sprayed objects; 0% for the same rotation " "than the original object" msgstr "" -#: ../src/widgets/spray-toolbar.cpp:269 +#: ../src/widgets/spray-toolbar.cpp:265 msgid "(high scale variation)" msgstr "" -#: ../src/widgets/spray-toolbar.cpp:272 +#: ../src/widgets/spray-toolbar.cpp:268 msgctxt "Spray tool" msgid "Scale" msgstr "" -#: ../src/widgets/spray-toolbar.cpp:272 +#: ../src/widgets/spray-toolbar.cpp:268 msgctxt "Spray tool" msgid "Scale:" msgstr "" -#: ../src/widgets/spray-toolbar.cpp:274 +#: ../src/widgets/spray-toolbar.cpp:270 #, no-c-format msgid "" "Variation in the scale of the sprayed objects; 0% for the same scale than " @@ -25314,181 +25304,181 @@ msgstr "" msgid "Type text in a text node" msgstr "" -#: ../src/widgets/star-toolbar.cpp:114 +#: ../src/widgets/star-toolbar.cpp:110 msgid "Star: Change number of corners" msgstr "" -#: ../src/widgets/star-toolbar.cpp:167 +#: ../src/widgets/star-toolbar.cpp:163 msgid "Star: Change spoke ratio" msgstr "" -#: ../src/widgets/star-toolbar.cpp:212 +#: ../src/widgets/star-toolbar.cpp:208 msgid "Make polygon" msgstr "" -#: ../src/widgets/star-toolbar.cpp:212 +#: ../src/widgets/star-toolbar.cpp:208 msgid "Make star" msgstr "" -#: ../src/widgets/star-toolbar.cpp:251 +#: ../src/widgets/star-toolbar.cpp:247 msgid "Star: Change rounding" msgstr "" -#: ../src/widgets/star-toolbar.cpp:291 +#: ../src/widgets/star-toolbar.cpp:287 msgid "Star: Change randomization" msgstr "" -#: ../src/widgets/star-toolbar.cpp:475 +#: ../src/widgets/star-toolbar.cpp:471 msgid "Regular polygon (with one handle) instead of a star" msgstr "" -#: ../src/widgets/star-toolbar.cpp:482 +#: ../src/widgets/star-toolbar.cpp:478 msgid "Star instead of a regular polygon (with one handle)" msgstr "" -#: ../src/widgets/star-toolbar.cpp:503 +#: ../src/widgets/star-toolbar.cpp:499 msgid "triangle/tri-star" msgstr "" -#: ../src/widgets/star-toolbar.cpp:503 +#: ../src/widgets/star-toolbar.cpp:499 msgid "square/quad-star" msgstr "" -#: ../src/widgets/star-toolbar.cpp:503 +#: ../src/widgets/star-toolbar.cpp:499 msgid "pentagon/five-pointed star" msgstr "" -#: ../src/widgets/star-toolbar.cpp:503 +#: ../src/widgets/star-toolbar.cpp:499 msgid "hexagon/six-pointed star" msgstr "" -#: ../src/widgets/star-toolbar.cpp:506 +#: ../src/widgets/star-toolbar.cpp:502 msgid "Corners" msgstr "" -#: ../src/widgets/star-toolbar.cpp:506 +#: ../src/widgets/star-toolbar.cpp:502 msgid "Corners:" msgstr "" -#: ../src/widgets/star-toolbar.cpp:506 +#: ../src/widgets/star-toolbar.cpp:502 msgid "Number of corners of a polygon or star" msgstr "" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "thin-ray star" msgstr "" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "pentagram" msgstr "" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "hexagram" msgstr "" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "heptagram" msgstr "" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "octagram" msgstr "" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "regular polygon" msgstr "" -#: ../src/widgets/star-toolbar.cpp:522 +#: ../src/widgets/star-toolbar.cpp:518 msgid "Spoke ratio" msgstr "" -#: ../src/widgets/star-toolbar.cpp:522 +#: ../src/widgets/star-toolbar.cpp:518 msgid "Spoke ratio:" msgstr "" #. TRANSLATORS: Tip radius of a star is the distance from the center to the farthest handle. #. Base radius is the same for the closest handle. -#: ../src/widgets/star-toolbar.cpp:525 +#: ../src/widgets/star-toolbar.cpp:521 msgid "Base radius to tip radius ratio" msgstr "" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "stretched" msgstr "" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "twisted" msgstr "" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "slightly pinched" msgstr "" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "NOT rounded" msgstr "" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "slightly rounded" msgstr "" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "visibly rounded" msgstr "" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "well rounded" msgstr "" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "amply rounded" msgstr "" -#: ../src/widgets/star-toolbar.cpp:543 ../src/widgets/star-toolbar.cpp:558 +#: ../src/widgets/star-toolbar.cpp:539 ../src/widgets/star-toolbar.cpp:554 msgid "blown up" msgstr "" -#: ../src/widgets/star-toolbar.cpp:546 +#: ../src/widgets/star-toolbar.cpp:542 msgid "Rounded:" msgstr "" -#: ../src/widgets/star-toolbar.cpp:546 +#: ../src/widgets/star-toolbar.cpp:542 msgid "How much rounded are the corners (0 for sharp)" msgstr "" -#: ../src/widgets/star-toolbar.cpp:558 +#: ../src/widgets/star-toolbar.cpp:554 msgid "NOT randomized" msgstr "" -#: ../src/widgets/star-toolbar.cpp:558 +#: ../src/widgets/star-toolbar.cpp:554 msgid "slightly irregular" msgstr "" -#: ../src/widgets/star-toolbar.cpp:558 +#: ../src/widgets/star-toolbar.cpp:554 msgid "visibly randomized" msgstr "" -#: ../src/widgets/star-toolbar.cpp:558 +#: ../src/widgets/star-toolbar.cpp:554 msgid "strongly randomized" msgstr "" -#: ../src/widgets/star-toolbar.cpp:561 +#: ../src/widgets/star-toolbar.cpp:557 msgid "Randomized" msgstr "" -#: ../src/widgets/star-toolbar.cpp:561 +#: ../src/widgets/star-toolbar.cpp:557 msgid "Randomized:" msgstr "" -#: ../src/widgets/star-toolbar.cpp:561 +#: ../src/widgets/star-toolbar.cpp:557 msgid "Scatter randomly the corners and angles" msgstr "" -#: ../src/widgets/stroke-style.cpp:185 +#: ../src/widgets/stroke-style.cpp:188 msgid "Stroke width" msgstr "" -#: ../src/widgets/stroke-style.cpp:187 +#: ../src/widgets/stroke-style.cpp:190 msgctxt "Stroke width" msgid "_Width:" msgstr "" @@ -25496,88 +25486,88 @@ msgstr "" #. TRANSLATORS: Miter join: joining lines with a sharp (pointed) corner. #. For an example, draw a triangle with a large stroke width and modify the #. "Join" option (in the Fill and Stroke dialog). -#: ../src/widgets/stroke-style.cpp:232 +#: ../src/widgets/stroke-style.cpp:235 msgid "Miter join" msgstr "" #. TRANSLATORS: Round join: joining lines with a rounded corner. #. For an example, draw a triangle with a large stroke width and modify the #. "Join" option (in the Fill and Stroke dialog). -#: ../src/widgets/stroke-style.cpp:240 +#: ../src/widgets/stroke-style.cpp:243 msgid "Round join" msgstr "" #. TRANSLATORS: Bevel join: joining lines with a blunted (flattened) corner. #. For an example, draw a triangle with a large stroke width and modify the #. "Join" option (in the Fill and Stroke dialog). -#: ../src/widgets/stroke-style.cpp:248 +#: ../src/widgets/stroke-style.cpp:251 msgid "Bevel join" msgstr "" -#: ../src/widgets/stroke-style.cpp:273 +#: ../src/widgets/stroke-style.cpp:276 msgid "Miter _limit:" msgstr "" #. Cap type #. TRANSLATORS: cap type specifies the shape for the ends of lines #. spw_label(t, _("_Cap:"), 0, i); -#: ../src/widgets/stroke-style.cpp:289 +#: ../src/widgets/stroke-style.cpp:292 msgid "Cap:" msgstr "" #. TRANSLATORS: Butt cap: the line shape does not extend beyond the end point #. of the line; the ends of the line are square -#: ../src/widgets/stroke-style.cpp:300 +#: ../src/widgets/stroke-style.cpp:303 msgid "Butt cap" msgstr "" #. TRANSLATORS: Round cap: the line shape extends beyond the end point of the #. line; the ends of the line are rounded -#: ../src/widgets/stroke-style.cpp:307 +#: ../src/widgets/stroke-style.cpp:310 msgid "Round cap" msgstr "" #. TRANSLATORS: Square cap: the line shape extends beyond the end point of the #. line; the ends of the line are square -#: ../src/widgets/stroke-style.cpp:314 +#: ../src/widgets/stroke-style.cpp:317 msgid "Square cap" msgstr "" #. Dash -#: ../src/widgets/stroke-style.cpp:319 +#: ../src/widgets/stroke-style.cpp:322 msgid "Dashes:" msgstr "" #. Drop down marker selectors #. TRANSLATORS: Path markers are an SVG feature that allows you to attach arbitrary shapes #. (arrowheads, bullets, faces, whatever) to the start, end, or middle nodes of a path. -#: ../src/widgets/stroke-style.cpp:345 +#: ../src/widgets/stroke-style.cpp:348 msgid "Markers:" msgstr "" -#: ../src/widgets/stroke-style.cpp:351 +#: ../src/widgets/stroke-style.cpp:354 msgid "Start Markers are drawn on the first node of a path or shape" msgstr "" -#: ../src/widgets/stroke-style.cpp:360 +#: ../src/widgets/stroke-style.cpp:363 msgid "" "Mid Markers are drawn on every node of a path or shape except the first and " "last nodes" msgstr "" -#: ../src/widgets/stroke-style.cpp:369 +#: ../src/widgets/stroke-style.cpp:372 msgid "End Markers are drawn on the last node of a path or shape" msgstr "" -#: ../src/widgets/stroke-style.cpp:487 +#: ../src/widgets/stroke-style.cpp:490 msgid "Set markers" msgstr "" -#: ../src/widgets/stroke-style.cpp:1075 ../src/widgets/stroke-style.cpp:1160 +#: ../src/widgets/stroke-style.cpp:1020 ../src/widgets/stroke-style.cpp:1105 msgid "Set stroke style" msgstr "" -#: ../src/widgets/stroke-style.cpp:1248 +#: ../src/widgets/stroke-style.cpp:1193 msgid "Set marker color" msgstr "" @@ -25585,615 +25575,615 @@ msgstr "" msgid "Change swatch color" msgstr "" -#: ../src/widgets/text-toolbar.cpp:178 +#: ../src/widgets/text-toolbar.cpp:174 msgid "Text: Change font family" msgstr "" -#: ../src/widgets/text-toolbar.cpp:242 +#: ../src/widgets/text-toolbar.cpp:238 msgid "Text: Change font size" msgstr "" -#: ../src/widgets/text-toolbar.cpp:280 +#: ../src/widgets/text-toolbar.cpp:276 msgid "Text: Change font style" msgstr "" -#: ../src/widgets/text-toolbar.cpp:358 +#: ../src/widgets/text-toolbar.cpp:354 msgid "Text: Change superscript or subscript" msgstr "" -#: ../src/widgets/text-toolbar.cpp:503 +#: ../src/widgets/text-toolbar.cpp:499 msgid "Text: Change alignment" msgstr "" -#: ../src/widgets/text-toolbar.cpp:546 +#: ../src/widgets/text-toolbar.cpp:542 msgid "Text: Change line-height" msgstr "" -#: ../src/widgets/text-toolbar.cpp:595 +#: ../src/widgets/text-toolbar.cpp:591 msgid "Text: Change word-spacing" msgstr "" -#: ../src/widgets/text-toolbar.cpp:636 +#: ../src/widgets/text-toolbar.cpp:632 msgid "Text: Change letter-spacing" msgstr "" -#: ../src/widgets/text-toolbar.cpp:676 +#: ../src/widgets/text-toolbar.cpp:672 msgid "Text: Change dx (kern)" msgstr "" -#: ../src/widgets/text-toolbar.cpp:710 +#: ../src/widgets/text-toolbar.cpp:706 msgid "Text: Change dy" msgstr "" -#: ../src/widgets/text-toolbar.cpp:745 +#: ../src/widgets/text-toolbar.cpp:741 msgid "Text: Change rotate" msgstr "" -#: ../src/widgets/text-toolbar.cpp:793 +#: ../src/widgets/text-toolbar.cpp:789 msgid "Text: Change orientation" msgstr "" -#: ../src/widgets/text-toolbar.cpp:1235 +#: ../src/widgets/text-toolbar.cpp:1226 msgid "Font Family" msgstr "" -#: ../src/widgets/text-toolbar.cpp:1236 +#: ../src/widgets/text-toolbar.cpp:1227 msgid "Select Font Family (Alt-X to access)" msgstr "" #. Focus widget #. Enable entry completion -#: ../src/widgets/text-toolbar.cpp:1246 +#: ../src/widgets/text-toolbar.cpp:1237 msgid "Select all text with this font-family" msgstr "" -#: ../src/widgets/text-toolbar.cpp:1250 +#: ../src/widgets/text-toolbar.cpp:1241 msgid "Font not found on system" msgstr "" -#: ../src/widgets/text-toolbar.cpp:1309 +#: ../src/widgets/text-toolbar.cpp:1300 msgid "Font Style" msgstr "" -#: ../src/widgets/text-toolbar.cpp:1310 +#: ../src/widgets/text-toolbar.cpp:1301 msgid "Font style" msgstr "" #. Name -#: ../src/widgets/text-toolbar.cpp:1327 +#: ../src/widgets/text-toolbar.cpp:1318 msgid "Toggle Superscript" msgstr "" #. Label -#: ../src/widgets/text-toolbar.cpp:1328 +#: ../src/widgets/text-toolbar.cpp:1319 msgid "Toggle superscript" msgstr "" #. Name -#: ../src/widgets/text-toolbar.cpp:1340 +#: ../src/widgets/text-toolbar.cpp:1331 msgid "Toggle Subscript" msgstr "" #. Label -#: ../src/widgets/text-toolbar.cpp:1341 +#: ../src/widgets/text-toolbar.cpp:1332 msgid "Toggle subscript" msgstr "" -#: ../src/widgets/text-toolbar.cpp:1382 +#: ../src/widgets/text-toolbar.cpp:1373 msgid "Justify" msgstr "" #. Name -#: ../src/widgets/text-toolbar.cpp:1389 +#: ../src/widgets/text-toolbar.cpp:1380 msgid "Alignment" msgstr "" #. Label -#: ../src/widgets/text-toolbar.cpp:1390 +#: ../src/widgets/text-toolbar.cpp:1381 msgid "Text alignment" msgstr "" -#: ../src/widgets/text-toolbar.cpp:1417 +#: ../src/widgets/text-toolbar.cpp:1408 msgid "Horizontal" msgstr "" -#: ../src/widgets/text-toolbar.cpp:1424 +#: ../src/widgets/text-toolbar.cpp:1415 msgid "Vertical" msgstr "" #. Label -#: ../src/widgets/text-toolbar.cpp:1431 +#: ../src/widgets/text-toolbar.cpp:1422 msgid "Text orientation" msgstr "" #. Drop down menu -#: ../src/widgets/text-toolbar.cpp:1454 +#: ../src/widgets/text-toolbar.cpp:1445 msgid "Smaller spacing" msgstr "" -#: ../src/widgets/text-toolbar.cpp:1454 ../src/widgets/text-toolbar.cpp:1485 -#: ../src/widgets/text-toolbar.cpp:1516 +#: ../src/widgets/text-toolbar.cpp:1445 ../src/widgets/text-toolbar.cpp:1475 +#: ../src/widgets/text-toolbar.cpp:1505 msgctxt "Text tool" msgid "Normal" msgstr "" -#: ../src/widgets/text-toolbar.cpp:1454 +#: ../src/widgets/text-toolbar.cpp:1445 msgid "Larger spacing" msgstr "" #. name -#: ../src/widgets/text-toolbar.cpp:1459 +#: ../src/widgets/text-toolbar.cpp:1450 msgid "Line Height" msgstr "" #. label -#: ../src/widgets/text-toolbar.cpp:1460 +#: ../src/widgets/text-toolbar.cpp:1451 msgid "Line:" msgstr "" #. short label -#: ../src/widgets/text-toolbar.cpp:1461 +#: ../src/widgets/text-toolbar.cpp:1452 msgid "Spacing between lines (times font size)" msgstr "" #. Drop down menu -#: ../src/widgets/text-toolbar.cpp:1485 ../src/widgets/text-toolbar.cpp:1516 +#: ../src/widgets/text-toolbar.cpp:1475 ../src/widgets/text-toolbar.cpp:1505 msgid "Negative spacing" msgstr "" -#: ../src/widgets/text-toolbar.cpp:1485 ../src/widgets/text-toolbar.cpp:1516 +#: ../src/widgets/text-toolbar.cpp:1475 ../src/widgets/text-toolbar.cpp:1505 msgid "Positive spacing" msgstr "" #. name -#: ../src/widgets/text-toolbar.cpp:1490 +#: ../src/widgets/text-toolbar.cpp:1480 msgid "Word spacing" msgstr "" #. label -#: ../src/widgets/text-toolbar.cpp:1491 +#: ../src/widgets/text-toolbar.cpp:1481 msgid "Word:" msgstr "" #. short label -#: ../src/widgets/text-toolbar.cpp:1492 +#: ../src/widgets/text-toolbar.cpp:1482 msgid "Spacing between words (px)" msgstr "" #. name -#: ../src/widgets/text-toolbar.cpp:1521 +#: ../src/widgets/text-toolbar.cpp:1510 msgid "Letter spacing" msgstr "" #. label -#: ../src/widgets/text-toolbar.cpp:1522 +#: ../src/widgets/text-toolbar.cpp:1511 msgid "Letter:" msgstr "" #. short label -#: ../src/widgets/text-toolbar.cpp:1523 +#: ../src/widgets/text-toolbar.cpp:1512 msgid "Spacing between letters (px)" msgstr "" #. name -#: ../src/widgets/text-toolbar.cpp:1552 +#: ../src/widgets/text-toolbar.cpp:1540 msgid "Kerning" msgstr "" #. label -#: ../src/widgets/text-toolbar.cpp:1553 +#: ../src/widgets/text-toolbar.cpp:1541 msgid "Kern:" msgstr "" #. short label -#: ../src/widgets/text-toolbar.cpp:1554 +#: ../src/widgets/text-toolbar.cpp:1542 msgid "Horizontal kerning (px)" msgstr "" #. name -#: ../src/widgets/text-toolbar.cpp:1583 +#: ../src/widgets/text-toolbar.cpp:1570 msgid "Vertical Shift" msgstr "" #. label -#: ../src/widgets/text-toolbar.cpp:1584 +#: ../src/widgets/text-toolbar.cpp:1571 msgid "Vert:" msgstr "" #. short label -#: ../src/widgets/text-toolbar.cpp:1585 +#: ../src/widgets/text-toolbar.cpp:1572 msgid "Vertical shift (px)" msgstr "" #. name -#: ../src/widgets/text-toolbar.cpp:1614 +#: ../src/widgets/text-toolbar.cpp:1600 msgid "Letter rotation" msgstr "" #. label -#: ../src/widgets/text-toolbar.cpp:1615 +#: ../src/widgets/text-toolbar.cpp:1601 msgid "Rot:" msgstr "" #. short label -#: ../src/widgets/text-toolbar.cpp:1616 +#: ../src/widgets/text-toolbar.cpp:1602 msgid "Character rotation (degrees)" msgstr "" -#: ../src/widgets/toolbox.cpp:181 +#: ../src/widgets/toolbox.cpp:179 msgid "Color/opacity used for color tweaking" msgstr "" -#: ../src/widgets/toolbox.cpp:189 +#: ../src/widgets/toolbox.cpp:187 msgid "Style of new stars" msgstr "" -#: ../src/widgets/toolbox.cpp:191 +#: ../src/widgets/toolbox.cpp:189 msgid "Style of new rectangles" msgstr "" -#: ../src/widgets/toolbox.cpp:193 +#: ../src/widgets/toolbox.cpp:191 msgid "Style of new 3D boxes" msgstr "" -#: ../src/widgets/toolbox.cpp:195 +#: ../src/widgets/toolbox.cpp:193 msgid "Style of new ellipses" msgstr "" -#: ../src/widgets/toolbox.cpp:197 +#: ../src/widgets/toolbox.cpp:195 msgid "Style of new spirals" msgstr "" -#: ../src/widgets/toolbox.cpp:199 +#: ../src/widgets/toolbox.cpp:197 msgid "Style of new paths created by Pencil" msgstr "" -#: ../src/widgets/toolbox.cpp:201 +#: ../src/widgets/toolbox.cpp:199 msgid "Style of new paths created by Pen" msgstr "" -#: ../src/widgets/toolbox.cpp:203 +#: ../src/widgets/toolbox.cpp:201 msgid "Style of new calligraphic strokes" msgstr "" -#: ../src/widgets/toolbox.cpp:205 ../src/widgets/toolbox.cpp:207 +#: ../src/widgets/toolbox.cpp:203 ../src/widgets/toolbox.cpp:205 msgid "TBD" msgstr "" -#: ../src/widgets/toolbox.cpp:219 +#: ../src/widgets/toolbox.cpp:217 msgid "Style of Paint Bucket fill objects" msgstr "" -#: ../src/widgets/toolbox.cpp:1682 +#: ../src/widgets/toolbox.cpp:1676 msgid "Bounding box" msgstr "" -#: ../src/widgets/toolbox.cpp:1682 +#: ../src/widgets/toolbox.cpp:1676 msgid "Snap bounding boxes" msgstr "" -#: ../src/widgets/toolbox.cpp:1691 +#: ../src/widgets/toolbox.cpp:1685 msgid "Bounding box edges" msgstr "" -#: ../src/widgets/toolbox.cpp:1691 +#: ../src/widgets/toolbox.cpp:1685 msgid "Snap to edges of a bounding box" msgstr "" -#: ../src/widgets/toolbox.cpp:1700 +#: ../src/widgets/toolbox.cpp:1694 msgid "Bounding box corners" msgstr "" -#: ../src/widgets/toolbox.cpp:1700 +#: ../src/widgets/toolbox.cpp:1694 msgid "Snap bounding box corners" msgstr "" -#: ../src/widgets/toolbox.cpp:1709 +#: ../src/widgets/toolbox.cpp:1703 msgid "BBox Edge Midpoints" msgstr "" -#: ../src/widgets/toolbox.cpp:1709 +#: ../src/widgets/toolbox.cpp:1703 msgid "Snap midpoints of bounding box edges" msgstr "" -#: ../src/widgets/toolbox.cpp:1719 +#: ../src/widgets/toolbox.cpp:1713 msgid "BBox Centers" msgstr "" -#: ../src/widgets/toolbox.cpp:1719 +#: ../src/widgets/toolbox.cpp:1713 msgid "Snapping centers of bounding boxes" msgstr "" -#: ../src/widgets/toolbox.cpp:1728 +#: ../src/widgets/toolbox.cpp:1722 msgid "Snap nodes, paths, and handles" msgstr "" -#: ../src/widgets/toolbox.cpp:1736 +#: ../src/widgets/toolbox.cpp:1730 msgid "Snap to paths" msgstr "" -#: ../src/widgets/toolbox.cpp:1745 +#: ../src/widgets/toolbox.cpp:1739 msgid "Path intersections" msgstr "" -#: ../src/widgets/toolbox.cpp:1745 +#: ../src/widgets/toolbox.cpp:1739 msgid "Snap to path intersections" msgstr "" -#: ../src/widgets/toolbox.cpp:1754 +#: ../src/widgets/toolbox.cpp:1748 msgid "To nodes" msgstr "" -#: ../src/widgets/toolbox.cpp:1754 +#: ../src/widgets/toolbox.cpp:1748 msgid "Snap cusp nodes, incl. rectangle corners" msgstr "" -#: ../src/widgets/toolbox.cpp:1763 +#: ../src/widgets/toolbox.cpp:1757 msgid "Smooth nodes" msgstr "" -#: ../src/widgets/toolbox.cpp:1763 +#: ../src/widgets/toolbox.cpp:1757 msgid "Snap smooth nodes, incl. quadrant points of ellipses" msgstr "" -#: ../src/widgets/toolbox.cpp:1772 +#: ../src/widgets/toolbox.cpp:1766 msgid "Line Midpoints" msgstr "" -#: ../src/widgets/toolbox.cpp:1772 +#: ../src/widgets/toolbox.cpp:1766 msgid "Snap midpoints of line segments" msgstr "" -#: ../src/widgets/toolbox.cpp:1781 +#: ../src/widgets/toolbox.cpp:1775 msgid "Others" msgstr "" -#: ../src/widgets/toolbox.cpp:1781 +#: ../src/widgets/toolbox.cpp:1775 msgid "Snap other points (centers, guide origins, gradient handles, etc.)" msgstr "" -#: ../src/widgets/toolbox.cpp:1789 +#: ../src/widgets/toolbox.cpp:1783 msgid "Object Centers" msgstr "" -#: ../src/widgets/toolbox.cpp:1789 +#: ../src/widgets/toolbox.cpp:1783 msgid "Snap centers of objects" msgstr "" -#: ../src/widgets/toolbox.cpp:1798 +#: ../src/widgets/toolbox.cpp:1792 msgid "Rotation Centers" msgstr "" -#: ../src/widgets/toolbox.cpp:1798 +#: ../src/widgets/toolbox.cpp:1792 msgid "Snap an item's rotation center" msgstr "" -#: ../src/widgets/toolbox.cpp:1807 +#: ../src/widgets/toolbox.cpp:1801 msgid "Text baseline" msgstr "" -#: ../src/widgets/toolbox.cpp:1807 +#: ../src/widgets/toolbox.cpp:1801 msgid "Snap text anchors and baselines" msgstr "" -#: ../src/widgets/toolbox.cpp:1817 +#: ../src/widgets/toolbox.cpp:1811 msgid "Page border" msgstr "" -#: ../src/widgets/toolbox.cpp:1817 +#: ../src/widgets/toolbox.cpp:1811 msgid "Snap to the page border" msgstr "" -#: ../src/widgets/toolbox.cpp:1826 +#: ../src/widgets/toolbox.cpp:1820 msgid "Snap to grids" msgstr "" -#: ../src/widgets/toolbox.cpp:1835 +#: ../src/widgets/toolbox.cpp:1829 msgid "Snap guides" msgstr "" #. Width -#: ../src/widgets/tweak-toolbar.cpp:143 +#: ../src/widgets/tweak-toolbar.cpp:139 msgid "(pinch tweak)" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:143 +#: ../src/widgets/tweak-toolbar.cpp:139 msgid "(broad tweak)" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:146 +#: ../src/widgets/tweak-toolbar.cpp:142 msgid "The width of the tweak area (relative to the visible canvas area)" msgstr "" #. Force -#: ../src/widgets/tweak-toolbar.cpp:160 +#: ../src/widgets/tweak-toolbar.cpp:156 msgid "(minimum force)" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:160 +#: ../src/widgets/tweak-toolbar.cpp:156 msgid "(maximum force)" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:163 +#: ../src/widgets/tweak-toolbar.cpp:159 msgid "Force" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:163 +#: ../src/widgets/tweak-toolbar.cpp:159 msgid "Force:" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:163 +#: ../src/widgets/tweak-toolbar.cpp:159 msgid "The force of the tweak action" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:181 +#: ../src/widgets/tweak-toolbar.cpp:177 msgid "Move mode" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:182 +#: ../src/widgets/tweak-toolbar.cpp:178 msgid "Move objects in any direction" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:188 +#: ../src/widgets/tweak-toolbar.cpp:184 msgid "Move in/out mode" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:189 +#: ../src/widgets/tweak-toolbar.cpp:185 msgid "Move objects towards cursor; with Shift from cursor" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:195 +#: ../src/widgets/tweak-toolbar.cpp:191 msgid "Move jitter mode" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:196 +#: ../src/widgets/tweak-toolbar.cpp:192 msgid "Move objects in random directions" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:202 +#: ../src/widgets/tweak-toolbar.cpp:198 msgid "Scale mode" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:203 +#: ../src/widgets/tweak-toolbar.cpp:199 msgid "Shrink objects, with Shift enlarge" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:209 +#: ../src/widgets/tweak-toolbar.cpp:205 msgid "Rotate mode" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:210 +#: ../src/widgets/tweak-toolbar.cpp:206 msgid "Rotate objects, with Shift counterclockwise" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:216 +#: ../src/widgets/tweak-toolbar.cpp:212 msgid "Duplicate/delete mode" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:217 +#: ../src/widgets/tweak-toolbar.cpp:213 msgid "Duplicate objects, with Shift delete" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:223 +#: ../src/widgets/tweak-toolbar.cpp:219 msgid "Push mode" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:224 +#: ../src/widgets/tweak-toolbar.cpp:220 msgid "Push parts of paths in any direction" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:230 +#: ../src/widgets/tweak-toolbar.cpp:226 msgid "Shrink/grow mode" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:231 +#: ../src/widgets/tweak-toolbar.cpp:227 msgid "Shrink (inset) parts of paths; with Shift grow (outset)" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:237 +#: ../src/widgets/tweak-toolbar.cpp:233 msgid "Attract/repel mode" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:238 +#: ../src/widgets/tweak-toolbar.cpp:234 msgid "Attract parts of paths towards cursor; with Shift from cursor" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:244 +#: ../src/widgets/tweak-toolbar.cpp:240 msgid "Roughen mode" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:245 +#: ../src/widgets/tweak-toolbar.cpp:241 msgid "Roughen parts of paths" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:251 +#: ../src/widgets/tweak-toolbar.cpp:247 msgid "Color paint mode" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:252 +#: ../src/widgets/tweak-toolbar.cpp:248 msgid "Paint the tool's color upon selected objects" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:258 +#: ../src/widgets/tweak-toolbar.cpp:254 msgid "Color jitter mode" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:259 +#: ../src/widgets/tweak-toolbar.cpp:255 msgid "Jitter the colors of selected objects" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:265 +#: ../src/widgets/tweak-toolbar.cpp:261 msgid "Blur mode" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:266 +#: ../src/widgets/tweak-toolbar.cpp:262 msgid "Blur selected objects more; with Shift, blur less" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:293 +#: ../src/widgets/tweak-toolbar.cpp:289 msgid "Channels:" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:305 +#: ../src/widgets/tweak-toolbar.cpp:301 msgid "In color mode, act on objects' hue" msgstr "" #. TRANSLATORS: "H" here stands for hue -#: ../src/widgets/tweak-toolbar.cpp:309 +#: ../src/widgets/tweak-toolbar.cpp:305 msgid "H" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:321 +#: ../src/widgets/tweak-toolbar.cpp:317 msgid "In color mode, act on objects' saturation" msgstr "" #. TRANSLATORS: "S" here stands for Saturation -#: ../src/widgets/tweak-toolbar.cpp:325 +#: ../src/widgets/tweak-toolbar.cpp:321 msgid "S" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:337 +#: ../src/widgets/tweak-toolbar.cpp:333 msgid "In color mode, act on objects' lightness" msgstr "" #. TRANSLATORS: "L" here stands for Lightness -#: ../src/widgets/tweak-toolbar.cpp:341 +#: ../src/widgets/tweak-toolbar.cpp:337 msgid "L" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:353 +#: ../src/widgets/tweak-toolbar.cpp:349 msgid "In color mode, act on objects' opacity" msgstr "" #. TRANSLATORS: "O" here stands for Opacity -#: ../src/widgets/tweak-toolbar.cpp:357 +#: ../src/widgets/tweak-toolbar.cpp:353 msgid "O" msgstr "" #. Fidelity -#: ../src/widgets/tweak-toolbar.cpp:368 +#: ../src/widgets/tweak-toolbar.cpp:364 msgid "(rough, simplified)" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:368 +#: ../src/widgets/tweak-toolbar.cpp:364 msgid "(fine, but many nodes)" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:371 +#: ../src/widgets/tweak-toolbar.cpp:367 msgid "Fidelity" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:371 +#: ../src/widgets/tweak-toolbar.cpp:367 msgid "Fidelity:" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:372 +#: ../src/widgets/tweak-toolbar.cpp:368 msgid "" "Low fidelity simplifies paths; high fidelity preserves path features but may " "generate a lot of new nodes" msgstr "" -#: ../src/widgets/tweak-toolbar.cpp:391 +#: ../src/widgets/tweak-toolbar.cpp:387 msgid "Use the pressure of the input device to alter the force of tweak action" msgstr "" @@ -26244,6 +26234,13 @@ msgstr "" msgid "Area (px^2): " msgstr "" +#: ../share/extensions/dxf_input.py:504 +#, python-format +msgid "" +"%d ENTITIES of type POLYLINE encountered and ignored. Please try to convert " +"to Release 13 format using QCad." +msgstr "" + #: ../share/extensions/dxf_outlines.py:49 msgid "" "Failed to import the numpy or numpy.linalg modules. These modules are " @@ -26548,6 +26545,16 @@ msgstr "" msgid "The sliced bitmaps have been saved as:" msgstr "" +#: ../share/extensions/hpgl_input.py:59 +msgid "No HPGL data found." +msgstr "" + +#: ../share/extensions/hpgl_input.py:111 +msgid "" +"The HPGL data contained unknown (unsupported) commands, there is a " +"possibility that the drawing is missing some content." +msgstr "" + #: ../share/extensions/inkex.py:133 #, python-format msgid "" @@ -27621,6 +27628,55 @@ msgstr "" msgid "Layer match name" msgstr "" +#: ../share/extensions/dxf_outlines.inx.h:9 +msgid "pt" +msgstr "" + +#: ../share/extensions/dxf_outlines.inx.h:10 +msgid "pc" +msgstr "" + +#: ../share/extensions/dxf_outlines.inx.h:11 +#: ../share/extensions/render_gears.inx.h:7 +msgid "px" +msgstr "" + +#: ../share/extensions/dxf_outlines.inx.h:12 +#: ../share/extensions/gcodetools_area.inx.h:46 +#: ../share/extensions/gcodetools_dxf_points.inx.h:18 +#: ../share/extensions/gcodetools_engraving.inx.h:24 +#: ../share/extensions/gcodetools_graffiti.inx.h:18 +#: ../share/extensions/gcodetools_lathe.inx.h:39 +#: ../share/extensions/gcodetools_orientation_points.inx.h:11 +#: ../share/extensions/gcodetools_path_to_gcode.inx.h:28 +#: ../share/extensions/render_gears.inx.h:9 +msgid "mm" +msgstr "" + +#: ../share/extensions/dxf_outlines.inx.h:13 +msgid "cm" +msgstr "" + +#: ../share/extensions/dxf_outlines.inx.h:14 +msgid "m" +msgstr "" + +#: ../share/extensions/dxf_outlines.inx.h:15 +#: ../share/extensions/gcodetools_area.inx.h:47 +#: ../share/extensions/gcodetools_dxf_points.inx.h:19 +#: ../share/extensions/gcodetools_engraving.inx.h:25 +#: ../share/extensions/gcodetools_graffiti.inx.h:19 +#: ../share/extensions/gcodetools_lathe.inx.h:40 +#: ../share/extensions/gcodetools_orientation_points.inx.h:12 +#: ../share/extensions/gcodetools_path_to_gcode.inx.h:29 +#: ../share/extensions/render_gears.inx.h:8 +msgid "in" +msgstr "" + +#: ../share/extensions/dxf_outlines.inx.h:16 +msgid "ft" +msgstr "" + #: ../share/extensions/dxf_outlines.inx.h:17 msgid "Latin 1" msgstr "" @@ -28881,71 +28937,55 @@ msgid "Guides creator" msgstr "" #: ../share/extensions/guides_creator.inx.h:2 -msgid "Preset:" +msgid "Regular guides" msgstr "" #: ../share/extensions/guides_creator.inx.h:3 -msgid "Custom..." -msgstr "" - -#: ../share/extensions/guides_creator.inx.h:4 -msgid "Golden ratio" +msgid "Guides preset" msgstr "" -#: ../share/extensions/guides_creator.inx.h:5 -msgid "Rule-of-third" +#: ../share/extensions/guides_creator.inx.h:6 +msgid "Start from edges" msgstr "" -#: ../share/extensions/guides_creator.inx.h:6 -msgid "Vertical guide each:" +#: ../share/extensions/guides_creator.inx.h:7 +msgid "Delete existing guides" msgstr "" #: ../share/extensions/guides_creator.inx.h:8 -msgid "1/2" +msgid "Diagonal guides" msgstr "" #: ../share/extensions/guides_creator.inx.h:9 -msgid "1/3" +msgid "Upper left corner" msgstr "" #: ../share/extensions/guides_creator.inx.h:10 -msgid "1/4" +msgid "Upper right corner" msgstr "" #: ../share/extensions/guides_creator.inx.h:11 -msgid "1/5" +msgid "Lower left corner" msgstr "" #: ../share/extensions/guides_creator.inx.h:12 -msgid "1/6" +msgid "Lower right corner" msgstr "" #: ../share/extensions/guides_creator.inx.h:13 -msgid "1/7" +msgid "Margins" msgstr "" #: ../share/extensions/guides_creator.inx.h:14 -msgid "1/8" +msgid "Margins preset" msgstr "" #: ../share/extensions/guides_creator.inx.h:15 -msgid "1/9" +msgid "Header margin" msgstr "" #: ../share/extensions/guides_creator.inx.h:16 -msgid "1/10" -msgstr "" - -#: ../share/extensions/guides_creator.inx.h:17 -msgid "Horizontal guide each:" -msgstr "" - -#: ../share/extensions/guides_creator.inx.h:18 -msgid "Start from edges" -msgstr "" - -#: ../share/extensions/guides_creator.inx.h:19 -msgid "Delete existing guides" +msgid "Footer margin" msgstr "" #: ../share/extensions/guillotine.inx.h:1 @@ -30329,6 +30369,10 @@ msgstr "" msgid "Caliper (inches)" msgstr "" +#: ../share/extensions/perfectboundcover.inx.h:11 +msgid "Points" +msgstr "" + #: ../share/extensions/perfectboundcover.inx.h:12 msgid "Bond Weight #" msgstr "" @@ -30897,6 +30941,7 @@ msgstr "" #: ../share/extensions/restack.inx.h:13 #: ../share/extensions/text_extract.inx.h:9 +#: ../share/extensions/text_merge.inx.h:9 msgid "Middle" msgstr "" @@ -30906,11 +30951,13 @@ msgstr "" #: ../share/extensions/restack.inx.h:16 #: ../share/extensions/text_extract.inx.h:12 +#: ../share/extensions/text_merge.inx.h:12 msgid "Top" msgstr "" #: ../share/extensions/restack.inx.h:17 #: ../share/extensions/text_extract.inx.h:13 +#: ../share/extensions/text_merge.inx.h:13 msgid "Bottom" msgstr "" @@ -31450,30 +31497,37 @@ msgid "Extract" msgstr "" #: ../share/extensions/text_extract.inx.h:2 +#: ../share/extensions/text_merge.inx.h:2 msgid "Text direction:" msgstr "" #: ../share/extensions/text_extract.inx.h:3 +#: ../share/extensions/text_merge.inx.h:3 msgid "Left to right" msgstr "" #: ../share/extensions/text_extract.inx.h:4 +#: ../share/extensions/text_merge.inx.h:4 msgid "Bottom to top" msgstr "" #: ../share/extensions/text_extract.inx.h:5 +#: ../share/extensions/text_merge.inx.h:5 msgid "Right to left" msgstr "" #: ../share/extensions/text_extract.inx.h:6 +#: ../share/extensions/text_merge.inx.h:6 msgid "Top to bottom" msgstr "" #: ../share/extensions/text_extract.inx.h:7 +#: ../share/extensions/text_merge.inx.h:7 msgid "Horizontal point:" msgstr "" #: ../share/extensions/text_extract.inx.h:11 +#: ../share/extensions/text_merge.inx.h:11 msgid "Vertical point:" msgstr "" @@ -31494,6 +31548,14 @@ msgstr "" msgid "lowercase" msgstr "" +#: ../share/extensions/text_merge.inx.h:14 +msgid "Flow text" +msgstr "" + +#: ../share/extensions/text_merge.inx.h:15 +msgid "Keep style" +msgstr "" + #: ../share/extensions/text_randomcase.inx.h:1 msgid "rANdOm CasE" msgstr "" diff --git a/share/extensions/Makefile.am b/share/extensions/Makefile.am index d9597b33f..b63356a8f 100644 --- a/share/extensions/Makefile.am +++ b/share/extensions/Makefile.am @@ -166,6 +166,7 @@ extensions = \ text_flipcase.py \ text_randomcase.py \ text_braille.py \ + text_merge.py \ triangle.py \ txt2svg.pl \ uniconv-ext.py \ @@ -348,6 +349,7 @@ modules = \ text_flipcase.inx \ text_randomcase.inx \ text_braille.inx \ + text_merge.inx \ triangle.inx \ txt2svg.inx \ voronoi2svg.inx \ diff --git a/share/extensions/text_merge.inx b/share/extensions/text_merge.inx new file mode 100644 index 000000000..c871f52c0 --- /dev/null +++ b/share/extensions/text_merge.inx @@ -0,0 +1,34 @@ + + + <_name>Merge + org.inkscape.text.merge + text_merge.py + inkex.py + + <_item value="lr">Left to right + <_item value="bt">Bottom to top + <_item value="rl">Right to left + <_item value="tb">Top to bottom + + + <_item value="l">Left + <_item value="m">Middle + <_item value="r">Right + + + <_item value="t">Top + <_item value="m">Middle + <_item value="b">Bottom + + false + true + + all + + + + + + diff --git a/share/extensions/text_merge.py b/share/extensions/text_merge.py new file mode 100644 index 000000000..8cd8b751d --- /dev/null +++ b/share/extensions/text_merge.py @@ -0,0 +1,199 @@ +#!/usr/bin/env python +""" +Copyright (C) 2013 Nicolas Dufour (jazzynico) +Direction code from the Restack extension, by Rob Antonishen + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +""" +# standard library +import chardataeffect +import copy +import csv +import math +import os +import string +try: + from subprocess import Popen, PIPE + bsubprocess = True +except: + bsubprocess = False +# local library +import inkex + + +class Merge(inkex.Effect): + def __init__(self): + inkex.Effect.__init__(self) + self.OptionParser.add_option("-d", "--direction", + action="store", type="string", + dest="direction", default="tb", + help="direction to merge text") + self.OptionParser.add_option("-x", "--xanchor", + action="store", type="string", + dest="xanchor", default="m", + help="horizontal point to compare") + self.OptionParser.add_option("-y", "--yanchor", + action="store", type="string", + dest="yanchor", default="m", + help="vertical point to compare") + self.OptionParser.add_option("-t", "--flowtext", + action="store", type="inkbool", + dest="flowtext", default=False, + help="use a flow text structure instead of a normal text element") + self.OptionParser.add_option("-k", "--keepstyle", + action="store", type="inkbool", + dest="keepstyle", default=False, + help="keep format") + + def effect(self): + if len(self.selected)==0: + for node in self.document.xpath('//svg:text | //svg:flowRoot', namespaces=inkex.NSS): + self.selected[node.get('id')] = node + + if len( self.selected ) > 0: + objlist = [] + svg = self.document.getroot() + parentnode = self.current_layer + file = self.args[ -1 ] + + #get all bounding boxes in file by calling inkscape again with the --query-all command line option + #it returns a comma seperated list structured id,x,y,w,h + if bsubprocess: + p = Popen('inkscape --query-all "%s"' % (file), shell=True, stdout=PIPE, stderr=PIPE) + err = p.stderr + f = p.communicate()[0] + try: + reader=csv.CSVParser().parse_string(f) #there was a module cvs.py in earlier inkscape that behaved differently + except: + reader=csv.reader(f.split( os.linesep )) + err.close() + else: + _,f,err = os.popen3('inkscape --query-all "%s"' % ( file ) ) + reader=csv.reader( f ) + err.close() + + #build a dictionary with id as the key + dimen = dict() + for line in reader: + if len(line) > 0: + dimen[line[0]] = map( float, line[1:]) + + if not bsubprocess: #close file if opened using os.popen3 + f.close + + #find the center of all selected objects **Not the average! + x,y,w,h = dimen[self.selected.keys()[0]] + minx = x + miny = y + maxx = x + w + maxy = y + h + + for id, node in self.selected.iteritems(): + # get the bounding box + x,y,w,h = dimen[id] + if x < minx: + minx = x + if (x + w) > maxx: + maxx = x + w + if y < miny: + miny = y + if (y + h) > maxy: + maxy = y + h + + midx = (minx + maxx) / 2 + midy = (miny + maxy) / 2 + + #calculate distances for each selected object + for id, node in self.selected.iteritems(): + # get the bounding box + x,y,w,h = dimen[id] + + # calc the comparison coords + if self.options.xanchor == "l": + cx = x + elif self.options.xanchor == "r": + cx = x + w + else: # middle + cx = x + w / 2 + + if self.options.yanchor == "t": + cy = y + elif self.options.yanchor == "b": + cy = y + h + else: # middle + cy = y + h / 2 + + #direction chosen + if self.options.direction == "tb": + objlist.append([cy,id]) + elif self.options.direction == "bt": + objlist.append([-cy,id]) + elif self.options.direction == "lr": + objlist.append([cx,id]) + elif self.options.direction == "rl": + objlist.append([-cx,id]) + + objlist.sort() + #move them to the top of the object stack in this order. + + if self.options.flowtext: + self.text_element = "flowRoot" + self.text_span = "flowPara" + else: + self.text_element = "text" + self.text_span = "tspan" + + self.textRoot=inkex.etree.SubElement(parentnode,inkex.addNS(self.text_element,'svg'),{inkex.addNS('space','xml'):'preserve'}) + self.textRoot.set(inkex.addNS('style', ''), 'font-size:20px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;') + + for item in objlist: + self.recurse(self.selected[item[1]], self.textRoot) + + if self.options.flowtext: + self.region=inkex.etree.SubElement(self.textRoot,inkex.addNS('flowRegion','svg'),{inkex.addNS('space','xml'):'preserve'}) + self.rect=inkex.etree.SubElement(self.region,inkex.addNS('rect','svg'),{inkex.addNS('space','xml'):'preserve'}) + self.rect.set(inkex.addNS('height', ''), '200') + self.rect.set(inkex.addNS('width', ''), '200') + + def recurse(self, node, span): + #istext = (node.tag == '{http://www.w3.org/2000/svg}flowPara' or node.tag == '{http://www.w3.org/2000/svg}flowDiv' or node.tag == '{http://www.w3.org/2000/svg}tspan') + if node.tag != '{http://www.w3.org/2000/svg}flowRegion': + + newspan=inkex.etree.SubElement(span,inkex.addNS(self.text_span,'svg'),{inkex.addNS('space','xml'):'preserve'}) + + if node.get('{http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd}role'): + newspan.set(inkex.addNS('role', 'sodipodi'), node.get('{http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd}role')) + if (node.tag == '{http://www.w3.org/2000/svg}text' or node.tag == '{http://www.w3.org/2000/svg}flowPara'): + newspan.set(inkex.addNS('role', 'sodipodi'), 'line') + + if self.options.keepstyle: + if node.get('style'): + newspan.set(inkex.addNS('style', ''), node.get('style')) + + if node.text != None: + newspan.text = node.text + for child in node: + self.recurse(child, newspan) + +if __name__ == '__main__': + e = Merge() + e.affect() + +# vim: expandtab shiftwidth=4 tabstop=8 softtabstop=4 encoding=utf-8 textwidth=99 -- cgit v1.2.3 From 3f79ee3f23c3e2af61e8c8df80d95ab93c4bf92a Mon Sep 17 00:00:00 2001 From: Nicolas Dufour Date: Sat, 24 Aug 2013 17:41:09 +0200 Subject: =?UTF-8?q?Latvian=20translation=20update=20by=20J=C4=81nis=20Eisa?= =?UTF-8?q?ks.=20Ukrainian=20translation=20update=20by=20Yuri=20Chornoivan?= =?UTF-8?q?.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit (bzr r12485) --- po/lv.po | 5344 +++++++++++++++++++++++++------------------------ po/uk.po | 6771 +++++++++++++++++++++++++++++++++----------------------------- 2 files changed, 6366 insertions(+), 5749 deletions(-) diff --git a/po/lv.po b/po/lv.po index 4fc464599..aa5c450c3 100644 --- a/po/lv.po +++ b/po/lv.po @@ -5,8 +5,8 @@ msgid "" msgstr "" "Project-Id-Version: Inkscape\n" "Report-Msgid-Bugs-To: inkscape-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2013-03-30 18:29+0100\n" -"PO-Revision-Date: 2013-04-02 22:27+0300\n" +"POT-Creation-Date: 2013-06-21 15:29+0200\n" +"PO-Revision-Date: 2013-06-26 09:22+0300\n" "Last-Translator: Jānis Eisaks \n" "Language-Team: Latvian\n" "Language: lv\n" @@ -77,7 +77,7 @@ msgstr "Izpludinājumi" #: ../share/filters/filters.svg.h:1 msgid "Edges are partly feathered out" -msgstr "" +msgstr "Malas ir daļēji izsmērētas" #: ../share/filters/filters.svg.h:1 msgid "Jigsaw Piece" @@ -238,7 +238,7 @@ msgstr "Eļļas glezna" #: ../src/extension/internal/filter/paint.h:877 #: ../src/extension/internal/filter/paint.h:981 msgid "Image Paint and Draw" -msgstr "" +msgstr "Attēla krāsošana un zīmēšana" #: ../share/filters/filters.svg.h:1 msgid "Simulate oil painting style" @@ -573,7 +573,7 @@ msgstr "Trekna eļļa" #: ../share/filters/filters.svg.h:1 msgid "Fat oil with some adjustable turbulence" -msgstr "Trekna eļļa ar nedaudz pieskaņojamu turbulenci" +msgstr "Trekna eļļa ar nedaudz pieskaņojamu nekārtību" #: ../share/filters/filters.svg.h:1 msgid "Black Hole" @@ -1147,7 +1147,7 @@ msgstr "Apmetums" #: ../share/filters/filters.svg.h:1 msgid "Combine a HSL edges detection bump with a matte and crumpled surface effect" -msgstr "" +msgstr "Kombinē HLS malas noteikšanas pacēlumu ar matējuma un grumbuļainas virsmas efektu" #: ../share/filters/filters.svg.h:1 msgid "Rough Transparency" @@ -1175,11 +1175,11 @@ msgstr "Rada caurspīdīgas gravīras efektu ar rupjām līnijām un aizpildīju #: ../share/filters/filters.svg.h:1 msgid "Alpha Draw Liquid" -msgstr "" +msgstr "Alfa plūstošs zīmējums" #: ../share/filters/filters.svg.h:1 msgid "Gives a transparent fluid drawing effect with rough line and filling" -msgstr "" +msgstr "Rada caurspīdīgu plūstoša attēla efektu ar raupjām līnijām un aizpildījumu" #: ../share/filters/filters.svg.h:1 msgid "Liquid Drawing" @@ -1522,7 +1522,7 @@ msgstr "Pārklāj divas kopijas ar atšķirīgu izpludinājuma pakāpi un mainā #: ../share/filters/filters.svg.h:1 msgid "Image Drawing Basic" -msgstr "" +msgstr "Pamata attēla zīmēšana" #: ../share/filters/filters.svg.h:1 msgid "Enhance and redraw color edges in 1 bit black and white" @@ -1566,19 +1566,19 @@ msgstr "Piešķir raupjumu vienam no diviem plakāta krāsas filtra kanāliem" #: ../share/filters/filters.svg.h:1 msgid "Alpha Monochrome Cracked" -msgstr "" +msgstr "Alfa vienkrāsains saplaisājis" #: ../share/filters/filters.svg.h:1 msgid "Basic noise fill texture; adjust color in Flood" -msgstr "" +msgstr "Vienkārša trokšņa aizpildījuma faktūra, pieskaņojiet krāsu izvēlnē Pludinājums" #: ../share/filters/filters.svg.h:1 msgid "Alpha Turbulent" -msgstr "" +msgstr "Alfa nekārtība" #: ../share/filters/filters.svg.h:1 msgid "Colorize Turbulent" -msgstr "" +msgstr "Krāsot nekārtīgi" #: ../share/filters/filters.svg.h:1 msgid "Cross Noise B" @@ -1586,7 +1586,7 @@ msgstr "Šķērstroksnis B" #: ../share/filters/filters.svg.h:1 msgid "Adds a small scale crossy graininess" -msgstr "" +msgstr "Pievieno nelielu krustainu graudainumu" #: ../share/filters/filters.svg.h:1 msgid "Cross Noise" @@ -1638,7 +1638,7 @@ msgstr "Alumīnijs" #: ../share/filters/filters.svg.h:1 msgid "Aluminium effect with sharp brushed reflections" -msgstr "" +msgstr "Alumīnija efekts ar asiem slīpējuma atspīdumiem" #: ../share/filters/filters.svg.h:1 msgid "Comics" @@ -1734,7 +1734,7 @@ msgstr "Atlasa un ciļņotas kontūras efekts" #: ../share/filters/filters.svg.h:1 msgid "Sharp Deco" -msgstr "" +msgstr "Ass deko" #: ../share/filters/filters.svg.h:1 msgid "Unrealistic reflections with sharp edges" @@ -2044,10 +2044,9 @@ msgstr "melns (#000000)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:29 -#, fuzzy msgctxt "Palette" msgid "dimgray (#696969)" -msgstr "dimgray (#696969)" +msgstr "blāvi pelēka (#696969)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:30 @@ -2075,10 +2074,9 @@ msgstr "gaiši pelēks (#D3D3D3)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:34 -#, fuzzy msgctxt "Palette" msgid "gainsboro (#DCDCDC)" -msgstr "gainsboro (#DCDCDC)" +msgstr "gaišs pelēcīgi violets (#DCDCDC)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:35 @@ -2094,10 +2092,9 @@ msgstr "balts (#FFFFFF)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:37 -#, fuzzy msgctxt "Palette" msgid "rosybrown (#BC8F8F)" -msgstr "rosybrown (#BC8F8F)" +msgstr "rožaini brūns (#BC8F8F)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:38 @@ -2149,10 +2146,9 @@ msgstr "sniegbalts (#FFFAFA)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:46 -#, fuzzy msgctxt "Palette" msgid "mistyrose (#FFE4E1)" -msgstr "mistyrose (#FFE4E1)" +msgstr "tumši rozā (#FFE4E1)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:47 @@ -2216,17 +2212,15 @@ msgstr "seglu brūnais (#8B4513)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:57 -#, fuzzy msgctxt "Palette" msgid "sandybrown (#F4A460)" -msgstr "sandybrown (#F4A460)" +msgstr "smilšu brūns (#F4A460)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:58 -#, fuzzy msgctxt "Palette" msgid "peachpuff (#FFDAB9)" -msgstr "peachpuff (#FFDAB9)" +msgstr "persiku (#FFDAB9)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:59 @@ -2242,10 +2236,9 @@ msgstr "linu audekls (#FAF0E6)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:61 -#, fuzzy msgctxt "Palette" msgid "bisque (#FFE4C4)" -msgstr "bisque (#FFE4C4)" +msgstr "biskvītu (#FFE4C4)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:62 @@ -2255,24 +2248,21 @@ msgstr "tumši oranžs (#FF8C00)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:63 -#, fuzzy msgctxt "Palette" msgid "burlywood (#DEB887)" -msgstr "burlywood (#DEB887)" +msgstr "blīvs koks (#DEB887)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:64 -#, fuzzy msgctxt "Palette" msgid "tan (#D2B48C)" -msgstr "tan (#D2B48C)" +msgstr "dzeltenbrūns (#D2B48C)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:65 -#, fuzzy msgctxt "Palette" msgid "antiquewhite (#FAEBD7)" -msgstr "antiquewhite (#FAEBD7)" +msgstr "marmorbalts (#FAEBD7)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:66 @@ -2288,10 +2278,9 @@ msgstr "blanšētas mandeles (#FFEBCD)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:68 -#, fuzzy msgctxt "Palette" msgid "papayawhip (#FFEFD5)" -msgstr "papayawhip (#FFEFD5)" +msgstr "papaijas (#FFEFD5)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:69 @@ -2313,36 +2302,33 @@ msgstr "kviešu (#F5DEB3)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:72 -#, fuzzy msgctxt "Palette" msgid "oldlace (#FDF5E6)" -msgstr "oldlace (#FDF5E6)" +msgstr "sens audums (#FDF5E6)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:73 -#, fuzzy msgctxt "Palette" msgid "floralwhite (#FFFAF0)" -msgstr "floralwhite (#FFFAF0)" +msgstr "ziedu balts (#FFFAF0)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:74 msgctxt "Palette" msgid "darkgoldenrod (#B8860B)" -msgstr "tumšs zelta stienis (#B8860B)" +msgstr "tumši zeltains (#B8860B)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:75 msgctxt "Palette" msgid "goldenrod (#DAA520)" -msgstr "zelta stienis (#DAA520)" +msgstr "zeltains (#DAA520)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:76 -#, fuzzy msgctxt "Palette" msgid "cornsilk (#FFF8DC)" -msgstr "cornsilk (#FFF8DC)" +msgstr "kukurūzas zīds (#FFF8DC)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:77 @@ -2358,17 +2344,15 @@ msgstr "haki (#F0E68C)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:79 -#, fuzzy msgctxt "Palette" msgid "lemonchiffon (#FFFACD)" -msgstr "lemonchiffon (#FFFACD)" +msgstr "citronu (#FFFACD)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:80 -#, fuzzy msgctxt "Palette" msgid "palegoldenrod (#EEE8AA)" -msgstr "palegoldenrod (#EEE8AA)" +msgstr "blāvi zeltains(#EEE8AA)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:81 @@ -2384,10 +2368,9 @@ msgstr "smilškrāsas (#F5F5DC)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:83 -#, fuzzy msgctxt "Palette" msgid "lightgoldenrodyellow (#FAFAD2)" -msgstr "lightgoldenrodyellow (#FAFAD2)" +msgstr "gaišs zeltaini dzeltens (#FAFAD2)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:84 @@ -2415,10 +2398,9 @@ msgstr "ziloņkauls (#FFFFF0)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:88 -#, fuzzy msgctxt "Palette" msgid "olivedrab (#6B8E23)" -msgstr "olivedrab (#6B8E23)" +msgstr "olīvu dzeltenpelēks(#6B8E23)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:89 @@ -2440,10 +2422,9 @@ msgstr "zaļi dzeltens (#ADFF2F)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:92 -#, fuzzy msgctxt "Palette" msgid "chartreuse (#7FFF00)" -msgstr "chartreuse (#7FFF00)" +msgstr "zaļgandzeltens (#7FFF00)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:93 @@ -2525,17 +2506,15 @@ msgstr "pavasara zaļais (#00FF7F)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:106 -#, fuzzy msgctxt "Palette" msgid "mintcream (#F5FFFA)" -msgstr "mintcream (#F5FFFA)" +msgstr "piparmētru krēms (#F5FFFA)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:107 -#, fuzzy msgctxt "Palette" msgid "mediumspringgreen (#00FA9A)" -msgstr "mediumspringgreen (#00FA9A)" +msgstr "piesātināts spilgti zaļš (#00FA9A)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:108 @@ -2569,10 +2548,9 @@ msgstr "vidējs tirkīzs (#48D1CC)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:113 -#, fuzzy msgctxt "Palette" msgid "darkslategray (#2F4F4F)" -msgstr "darkslategray (#2F4F4F)" +msgstr "tumši zilganpelēks (#2F4F4F)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:114 @@ -2624,10 +2602,9 @@ msgstr "kadetzils (#5F9EA0)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:122 -#, fuzzy msgctxt "Palette" msgid "powderblue (#B0E0E6)" -msgstr "powderblue (#B0E0E6)" +msgstr "pulvera zilais (#B0E0E6)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:123 @@ -2661,31 +2638,27 @@ msgstr "tēraudzilais (#4682B4)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:128 -#, fuzzy msgctxt "Palette" msgid "aliceblue (#F0F8FF)" -msgstr "aliceblue (#F0F8FF)" +msgstr "bāli zils (#F0F8FF)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:129 -#, fuzzy msgctxt "Palette" msgid "dodgerblue (#1E90FF)" -msgstr "dodgerblue (#1E90FF)" +msgstr "'dodžeru' zilais (#1E90FF)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:130 -#, fuzzy msgctxt "Palette" msgid "slategray (#708090)" -msgstr "slategray (#708090)" +msgstr "zilganpelēks (#708090)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:131 -#, fuzzy msgctxt "Palette" msgid "lightslategray (#778899)" -msgstr "lightslategray (#778899)" +msgstr "gaiši zilganpelēks (#778899)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:132 @@ -2719,10 +2692,9 @@ msgstr "lavanda (#E6E6FA)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:137 -#, fuzzy msgctxt "Palette" msgid "navy (#000080)" -msgstr "navy (#000080)" +msgstr "granātu (#000080)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:138 @@ -2750,24 +2722,21 @@ msgstr "spocīgi balts (#F8F8FF)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:142 -#, fuzzy msgctxt "Palette" msgid "slateblue (#6A5ACD)" -msgstr "slateblue (#6A5ACD)" +msgstr "pelēkzils (#6A5ACD)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:143 -#, fuzzy msgctxt "Palette" msgid "darkslateblue (#483D8B)" -msgstr "darkslateblue (#483D8B)" +msgstr "tumši pelēkzils (#483D8B)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:144 -#, fuzzy msgctxt "Palette" msgid "mediumslateblue (#7B68EE)" -msgstr "mediumslateblue (#7B68EE)" +msgstr "vidēji pelēkzils (#7B68EE)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:145 @@ -2789,10 +2758,9 @@ msgstr "indigo (#4B0082)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:148 -#, fuzzy msgctxt "Palette" msgid "darkorchid (#9932CC)" -msgstr "darkorchid (#9932CC)" +msgstr "tumšs zili-rozā (#9932CC)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:149 @@ -2802,24 +2770,21 @@ msgstr "tumši violets (#9400D3)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:150 -#, fuzzy msgctxt "Palette" msgid "mediumorchid (#BA55D3)" -msgstr "mediumorchid (#BA55D3)" +msgstr "piesātināts zili-rozā (#BA55D3)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:151 -#, fuzzy msgctxt "Palette" msgid "thistle (#D8BFD8)" -msgstr "thistle (#D8BFD8)" +msgstr "dadžu (#D8BFD8)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:152 -#, fuzzy msgctxt "Palette" msgid "plum (#DDA0DD)" -msgstr "plum (#DDA0DD)" +msgstr "plūmju (#DDA0DD)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:153 @@ -2871,10 +2836,9 @@ msgstr "karsti rozā(#FF69B4)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:161 -#, fuzzy msgctxt "Palette" msgid "lavenderblush (#FFF0F5)" -msgstr "lavenderblush (#FFF0F5)" +msgstr "violeti sarkans (#FFF0F5)" #. Palette: ./svg.gpl #: ../share/palettes/palettes.h:162 @@ -3029,39 +2993,51 @@ msgstr "Koši sarkans 3" #. Palette: ./Tango-Palette.gpl #: ../share/palettes/palettes.h:187 msgctxt "Palette" +msgid "Snowy White" +msgstr "Sniegbalts" + +#. Palette: ./Tango-Palette.gpl +#: ../share/palettes/palettes.h:188 +msgctxt "Palette" msgid "Aluminium 1" msgstr "Alumīnijs 1" #. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:188 +#: ../share/palettes/palettes.h:189 msgctxt "Palette" msgid "Aluminium 2" msgstr "Alumīnijs 2" #. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:189 +#: ../share/palettes/palettes.h:190 msgctxt "Palette" msgid "Aluminium 3" msgstr "Alumīnijs 3" #. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:190 +#: ../share/palettes/palettes.h:191 msgctxt "Palette" msgid "Aluminium 4" msgstr "Alumīnijs 4" #. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:191 +#: ../share/palettes/palettes.h:192 msgctxt "Palette" msgid "Aluminium 5" msgstr "Alumīnijs 5" #. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:192 +#: ../share/palettes/palettes.h:193 msgctxt "Palette" msgid "Aluminium 6" msgstr "Alumīnijs 6" +#. Palette: ./Tango-Palette.gpl +#: ../share/palettes/palettes.h:194 +msgctxt "Palette" +msgid "Jet Black" +msgstr "Piķa melns" + #: ../share/patterns/patterns.svg.h:1 msgid "Stripes 1:1" msgstr "Svītras 1:1" @@ -3236,7 +3212,7 @@ msgstr "Nosaka izspiešanas virzienu un lielumu" #: ../src/sp-flowtext.cpp:339 #: ../src/sp-text.cpp:400 -#: ../src/text-context.cpp:1608 +#: ../src/text-context.cpp:1630 msgid " [truncated]" msgstr " [nogriezts]" @@ -3301,30 +3277,30 @@ msgstr "Izveidojiet 3D paralēlskaldni" msgid "3D Box" msgstr "3D paralēlskaldnis" -#: ../src/color-profile.cpp:899 +#: ../src/color-profile.cpp:895 #, c-format msgid "Color profiles directory (%s) is unavailable." msgstr "Krāsu profilu mape (%s) nav pieejama." -#: ../src/color-profile.cpp:958 -#: ../src/color-profile.cpp:975 +#: ../src/color-profile.cpp:954 +#: ../src/color-profile.cpp:971 msgid "(invalid UTF-8 string)" msgstr "(nederīga UTF-8 rinda)" -#: ../src/color-profile.cpp:960 +#: ../src/color-profile.cpp:956 #: ../src/filter-enums.cpp:94 #: ../src/live_effects/lpe-ruler.cpp:32 #: ../src/ui/dialog/filter-effects-dialog.cpp:518 #: ../src/ui/dialog/inkscape-preferences.cpp:332 #: ../src/ui/dialog/inkscape-preferences.cpp:641 -#: ../src/ui/dialog/inkscape-preferences.cpp:1246 -#: ../src/ui/dialog/inkscape-preferences.cpp:1403 -#: ../src/ui/dialog/inkscape-preferences.cpp:1798 +#: ../src/ui/dialog/inkscape-preferences.cpp:1255 +#: ../src/ui/dialog/inkscape-preferences.cpp:1419 +#: ../src/ui/dialog/inkscape-preferences.cpp:1817 #: ../src/ui/dialog/input.cpp:742 #: ../src/ui/dialog/input.cpp:743 #: ../src/ui/dialog/input.cpp:1571 #: ../src/ui/dialog/input.cpp:1625 -#: ../src/verbs.cpp:2288 +#: ../src/verbs.cpp:2292 #: ../src/widgets/gradient-toolbar.cpp:1128 #: ../src/widgets/pencil-toolbar.cpp:189 #: ../share/extensions/gcodetools_area.inx.h:48 @@ -3406,11 +3382,11 @@ msgstr "Dzēst palīglīniju" msgid "Guideline: %s" msgstr "Palīglīnija: %s" -#: ../src/desktop.cpp:907 +#: ../src/desktop.cpp:911 msgid "No previous zoom." msgstr "Nav iepriekšējās tālummaiņas." -#: ../src/desktop.cpp:928 +#: ../src/desktop.cpp:932 msgid "No next zoom." msgstr "Nav nākošās tālummaiņas." @@ -3854,6 +3830,7 @@ msgstr "Izvēlēties redzamo krāsu un necaurspīdību" #: ../src/ui/dialog/clonetiler.cpp:839 #: ../src/ui/dialog/clonetiler.cpp:992 #: ../src/extension/internal/bitmap/opacity.cpp:38 +#: ../src/extension/internal/filter/blurs.h:333 #: ../src/extension/internal/filter/transparency.h:279 #: ../src/widgets/tweak-toolbar.cpp:352 #: ../share/extensions/interp_att_g.inx.h:16 @@ -4083,7 +4060,7 @@ msgid "Delete tiled clones" msgstr "Dzēst klonētos raksta elementus" #: ../src/ui/dialog/clonetiler.cpp:2217 -#: ../src/selection-chemistry.cpp:2468 +#: ../src/selection-chemistry.cpp:2501 msgid "Select an object to clone." msgstr "Izvēlieties klonējamo objektu." @@ -4111,135 +4088,135 @@ msgstr "Vienā slejā:" msgid "Randomize:" msgstr "Dažādot:" -#: ../src/ui/dialog/export.cpp:145 -#: ../src/verbs.cpp:2732 +#: ../src/ui/dialog/export.cpp:150 +#: ../src/verbs.cpp:2736 msgid "_Page" msgstr "La_pa" -#: ../src/ui/dialog/export.cpp:145 -#: ../src/verbs.cpp:2736 +#: ../src/ui/dialog/export.cpp:150 +#: ../src/verbs.cpp:2740 msgid "_Drawing" msgstr "_Zīmējums" -#: ../src/ui/dialog/export.cpp:145 -#: ../src/verbs.cpp:2738 +#: ../src/ui/dialog/export.cpp:150 +#: ../src/verbs.cpp:2742 msgid "_Selection" msgstr "Atla_sītais" -#: ../src/ui/dialog/export.cpp:145 +#: ../src/ui/dialog/export.cpp:150 msgid "_Custom" msgstr "Izvēles" -#: ../src/ui/dialog/export.cpp:161 +#: ../src/ui/dialog/export.cpp:166 #: ../src/widgets/measure-toolbar.cpp:115 #: ../src/widgets/measure-toolbar.cpp:123 #: ../share/extensions/gears.inx.h:6 msgid "Units:" msgstr "Vienības:" -#: ../src/ui/dialog/export.cpp:163 +#: ../src/ui/dialog/export.cpp:168 msgid "_Export As..." msgstr "_Eksportēt kā..." -#: ../src/ui/dialog/export.cpp:166 +#: ../src/ui/dialog/export.cpp:171 msgid "B_atch export all selected objects" msgstr "Visu _atlasīto objektu secīgs eksports" -#: ../src/ui/dialog/export.cpp:166 +#: ../src/ui/dialog/export.cpp:171 msgid "Export each selected object into its own PNG file, using export hints if any (caution, overwrites without asking!)" msgstr "Eksportēt katru atlasīto objektu atsevišķā PNG failā, izmantojot eksport padomus, ja tādi ir (Uzmanību: faili tiek pārrakstīti bez jautāšanas!)" -#: ../src/ui/dialog/export.cpp:168 +#: ../src/ui/dialog/export.cpp:173 msgid "Hide a_ll except selected" msgstr "Slēpt _visus, izņemot atlasītos" -#: ../src/ui/dialog/export.cpp:168 +#: ../src/ui/dialog/export.cpp:173 msgid "In the exported image, hide all objects except those that are selected" msgstr "Eksportētajā attēla slēpt visus neatlasītos objektus" -#: ../src/ui/dialog/export.cpp:169 +#: ../src/ui/dialog/export.cpp:174 msgid "Close when complete" msgstr "Aizvērt pēc pabeigšanas" -#: ../src/ui/dialog/export.cpp:169 +#: ../src/ui/dialog/export.cpp:174 msgid "Once the export completes, close this dialog" msgstr "Pēc eksportēšanas pabeigšanas aizvērt šo dialoglodziņu." -#: ../src/ui/dialog/export.cpp:171 +#: ../src/ui/dialog/export.cpp:176 msgid "_Export" msgstr "_Eksportēt" -#: ../src/ui/dialog/export.cpp:189 +#: ../src/ui/dialog/export.cpp:194 msgid "Export area" msgstr "Eksportējamais apgabals" -#: ../src/ui/dialog/export.cpp:225 +#: ../src/ui/dialog/export.cpp:230 msgid "_x0:" msgstr "_x0:" -#: ../src/ui/dialog/export.cpp:229 +#: ../src/ui/dialog/export.cpp:234 msgid "x_1:" msgstr "x_1:" -#: ../src/ui/dialog/export.cpp:233 +#: ../src/ui/dialog/export.cpp:238 msgid "Wid_th:" msgstr "Pla_tums:" -#: ../src/ui/dialog/export.cpp:237 +#: ../src/ui/dialog/export.cpp:242 msgid "_y0:" msgstr "_y0:" -#: ../src/ui/dialog/export.cpp:241 +#: ../src/ui/dialog/export.cpp:246 msgid "y_1:" msgstr "y_1:" -#: ../src/ui/dialog/export.cpp:245 +#: ../src/ui/dialog/export.cpp:250 msgid "Hei_ght:" msgstr "Au_gstums:" -#: ../src/ui/dialog/export.cpp:260 +#: ../src/ui/dialog/export.cpp:265 msgid "Image size" msgstr "Attēla izmērs" -#: ../src/ui/dialog/export.cpp:278 +#: ../src/ui/dialog/export.cpp:283 #: ../src/live_effects/lpe-bendpath.cpp:54 #: ../src/live_effects/lpe-patternalongpath.cpp:62 -#: ../src/ui/dialog/transformation.cpp:75 +#: ../src/ui/dialog/transformation.cpp:79 #: ../src/ui/widget/page-sizer.cpp:238 msgid "_Width:" msgstr "_Platums:" -#: ../src/ui/dialog/export.cpp:278 -#: ../src/ui/dialog/export.cpp:289 +#: ../src/ui/dialog/export.cpp:283 +#: ../src/ui/dialog/export.cpp:294 msgid "pixels at" msgstr "pikseļi ar" -#: ../src/ui/dialog/export.cpp:284 +#: ../src/ui/dialog/export.cpp:289 msgid "dp_i" msgstr "dp_i" -#: ../src/ui/dialog/export.cpp:289 -#: ../src/ui/dialog/transformation.cpp:77 +#: ../src/ui/dialog/export.cpp:294 +#: ../src/ui/dialog/transformation.cpp:81 #: ../src/ui/widget/page-sizer.cpp:239 msgid "_Height:" msgstr "_Augstums:" -#: ../src/ui/dialog/export.cpp:297 -#: ../src/ui/dialog/inkscape-preferences.cpp:1416 -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 -#: ../src/ui/dialog/inkscape-preferences.cpp:1428 +#: ../src/ui/dialog/export.cpp:302 +#: ../src/ui/dialog/inkscape-preferences.cpp:1432 +#: ../src/ui/dialog/inkscape-preferences.cpp:1435 +#: ../src/ui/dialog/inkscape-preferences.cpp:1447 msgid "dpi" msgstr "dpi" -#: ../src/ui/dialog/export.cpp:305 +#: ../src/ui/dialog/export.cpp:310 msgid "_Filename" msgstr "_Faila nosaukums" -#: ../src/ui/dialog/export.cpp:347 +#: ../src/ui/dialog/export.cpp:352 msgid "Export the bitmap file with these settings" msgstr "Eksportēt bitkartes attēlu ar šiem iestatījumiem" -#: ../src/ui/dialog/export.cpp:601 +#: ../src/ui/dialog/export.cpp:606 #, c-format msgid "B_atch export %d selected object" msgid_plural "B_atch export %d selected objects" @@ -4247,79 +4224,79 @@ msgstr[0] "Secīgs %d atlasītā objekta eksports" msgstr[1] "Secīgs %d atlasīto objektu eksports" msgstr[2] "Secīgs %d atlasīto objektu eksports" -#: ../src/ui/dialog/export.cpp:917 +#: ../src/ui/dialog/export.cpp:922 msgid "Export in progress" msgstr "Notiek eksports" -#: ../src/ui/dialog/export.cpp:1001 +#: ../src/ui/dialog/export.cpp:1006 msgid "No items selected." msgstr "Nav atlasītu objektu." -#: ../src/ui/dialog/export.cpp:1005 -#: ../src/ui/dialog/export.cpp:1007 +#: ../src/ui/dialog/export.cpp:1010 +#: ../src/ui/dialog/export.cpp:1012 msgid "Exporting %1 files" msgstr "Eksportē %1 failus" -#: ../src/ui/dialog/export.cpp:1047 -#: ../src/ui/dialog/export.cpp:1049 +#: ../src/ui/dialog/export.cpp:1052 +#: ../src/ui/dialog/export.cpp:1054 #, c-format msgid "Exporting file %s..." msgstr "Eksportē failu %s..." -#: ../src/ui/dialog/export.cpp:1058 -#: ../src/ui/dialog/export.cpp:1149 +#: ../src/ui/dialog/export.cpp:1063 +#: ../src/ui/dialog/export.cpp:1154 #, c-format msgid "Could not export to filename %s.\n" msgstr "Nav iespējams eksportēt uz failu ar nosaukumu %s.\n" -#: ../src/ui/dialog/export.cpp:1061 +#: ../src/ui/dialog/export.cpp:1066 #, c-format msgid "Could not export to filename %s." msgstr "Nav iespējams eksportēt uz failu ar nosaukumu %s." -#: ../src/ui/dialog/export.cpp:1076 +#: ../src/ui/dialog/export.cpp:1081 #, c-format msgid "Successfully exported %d files from %d selected items." msgstr "Veiksmīgi eksportēti %d faili no %d atlasītajiem objektiem." -#: ../src/ui/dialog/export.cpp:1087 +#: ../src/ui/dialog/export.cpp:1092 msgid "You have to enter a filename." msgstr "Jums jāievada faila nosaukums." -#: ../src/ui/dialog/export.cpp:1088 +#: ../src/ui/dialog/export.cpp:1093 msgid "You have to enter a filename" msgstr "Jums jāievada faila nosaukums" -#: ../src/ui/dialog/export.cpp:1102 +#: ../src/ui/dialog/export.cpp:1107 msgid "The chosen area to be exported is invalid." msgstr "Eksportēšanai izvēlētais apgabals nav derīgs." -#: ../src/ui/dialog/export.cpp:1103 +#: ../src/ui/dialog/export.cpp:1108 msgid "The chosen area to be exported is invalid" msgstr "Eksportēšanai izvēlētais apgabals nav derīgs" -#: ../src/ui/dialog/export.cpp:1118 +#: ../src/ui/dialog/export.cpp:1123 #, c-format msgid "Directory %s does not exist or is not a directory.\n" msgstr "Mape%s nepastāv vai arī nemaz nav mape.\n" #. TRANSLATORS: %1 will be the filename, %2 the width, and %3 the height of the image -#: ../src/ui/dialog/export.cpp:1132 -#: ../src/ui/dialog/export.cpp:1134 +#: ../src/ui/dialog/export.cpp:1137 +#: ../src/ui/dialog/export.cpp:1139 msgid "Exporting %1 (%2 x %3)" msgstr "Eksportē %1 (%2 x %3)" -#: ../src/ui/dialog/export.cpp:1160 +#: ../src/ui/dialog/export.cpp:1165 #, c-format msgid "Drawing exported to %s." msgstr "Attēls eksportēts uz %s." -#: ../src/ui/dialog/export.cpp:1164 +#: ../src/ui/dialog/export.cpp:1169 msgid "Export aborted." msgstr "Eksportēšana pārtraukta." -#: ../src/ui/dialog/export.cpp:1282 -#: ../src/ui/dialog/export.cpp:1316 +#: ../src/ui/dialog/export.cpp:1287 +#: ../src/ui/dialog/export.cpp:1321 #: ../src/shortcuts.cpp:336 msgid "Select a filename for exporting" msgstr "Izvēlieties jeksportējamā faila nosaukumu" @@ -4405,7 +4382,7 @@ msgid "_Font" msgstr "_Fonts" #: ../src/ui/dialog/text-edit.cpp:72 -#: ../src/menus-skeleton.h:253 +#: ../src/menus-skeleton.h:249 #: ../src/ui/dialog/find.cpp:77 msgid "_Text" msgstr "_Teksts" @@ -4458,8 +4435,13 @@ msgstr "Vertikāls teksts" msgid "Spacing between lines (percent of font size)" msgstr "Atstarpe starp rindām (procentos no fonta izmēra)" -#: ../src/ui/dialog/text-edit.cpp:554 -#: ../src/text-context.cpp:1496 +#: ../src/ui/dialog/text-edit.cpp:147 +msgid "Text path offset" +msgstr "Teksta ceļa nobīde" + +#: ../src/ui/dialog/text-edit.cpp:588 +#: ../src/ui/dialog/text-edit.cpp:662 +#: ../src/text-context.cpp:1518 msgid "Set text style" msgstr "Iestatīt teksta stilu" @@ -4486,7 +4468,7 @@ msgstr "Dublēt mezglu" #: ../src/ui/dialog/xml-tree.cpp:79 #: ../src/ui/dialog/xml-tree.cpp:188 -#: ../src/ui/dialog/xml-tree.cpp:1009 +#: ../src/ui/dialog/xml-tree.cpp:1010 msgid "Delete attribute" msgstr "Dzēst atribūtu" @@ -4500,25 +4482,25 @@ msgstr "Pielietot visām virsotnēmPārvilkt vai pārkārtot mezglus" #: ../src/ui/dialog/xml-tree.cpp:149 #: ../src/ui/dialog/xml-tree.cpp:150 -#: ../src/ui/dialog/xml-tree.cpp:1130 +#: ../src/ui/dialog/xml-tree.cpp:1131 msgid "Unindent node" msgstr "Samazināt mezgla atkāpi" #: ../src/ui/dialog/xml-tree.cpp:154 #: ../src/ui/dialog/xml-tree.cpp:155 -#: ../src/ui/dialog/xml-tree.cpp:1108 +#: ../src/ui/dialog/xml-tree.cpp:1109 msgid "Indent node" msgstr "Palielināt mezgla atkāpi" #: ../src/ui/dialog/xml-tree.cpp:159 #: ../src/ui/dialog/xml-tree.cpp:160 -#: ../src/ui/dialog/xml-tree.cpp:1059 +#: ../src/ui/dialog/xml-tree.cpp:1060 msgid "Raise node" msgstr "Paaugstināt mezglu" #: ../src/ui/dialog/xml-tree.cpp:164 #: ../src/ui/dialog/xml-tree.cpp:165 -#: ../src/ui/dialog/xml-tree.cpp:1077 +#: ../src/ui/dialog/xml-tree.cpp:1078 msgid "Lower node" msgstr "Pazemināt mezglu" @@ -4567,172 +4549,172 @@ msgstr "Izveido jaunu elementa mezglu" msgid "Create new text node" msgstr "Izveido jaunu texta mezglu" -#: ../src/ui/dialog/xml-tree.cpp:990 +#: ../src/ui/dialog/xml-tree.cpp:991 msgid "nodeAsInXMLinHistoryDialog|Delete node" msgstr "nodeAsInXMLinHistoryDialog|Dzēst mezglu" -#: ../src/ui/dialog/xml-tree.cpp:1033 +#: ../src/ui/dialog/xml-tree.cpp:1034 msgid "Change attribute" msgstr "Mainīt atribūtu" -#: ../src/display/canvas-axonomgrid.cpp:365 -#: ../src/display/canvas-grid.cpp:742 +#: ../src/display/canvas-axonomgrid.cpp:369 +#: ../src/display/canvas-grid.cpp:746 msgid "Grid _units:" msgstr "Tīkla _vienības" -#: ../src/display/canvas-axonomgrid.cpp:367 -#: ../src/display/canvas-grid.cpp:744 +#: ../src/display/canvas-axonomgrid.cpp:371 +#: ../src/display/canvas-grid.cpp:748 msgid "_Origin X:" msgstr "Sā_kums X:" -#: ../src/display/canvas-axonomgrid.cpp:367 -#: ../src/display/canvas-grid.cpp:744 -#: ../src/ui/dialog/inkscape-preferences.cpp:726 -#: ../src/ui/dialog/inkscape-preferences.cpp:751 +#: ../src/display/canvas-axonomgrid.cpp:371 +#: ../src/display/canvas-grid.cpp:748 +#: ../src/ui/dialog/inkscape-preferences.cpp:735 +#: ../src/ui/dialog/inkscape-preferences.cpp:760 msgid "X coordinate of grid origin" msgstr "Tīkla sākuma X koordināte" -#: ../src/display/canvas-axonomgrid.cpp:369 -#: ../src/display/canvas-grid.cpp:746 +#: ../src/display/canvas-axonomgrid.cpp:373 +#: ../src/display/canvas-grid.cpp:750 msgid "O_rigin Y:" msgstr "Sāku_ms Y:" -#: ../src/display/canvas-axonomgrid.cpp:369 -#: ../src/display/canvas-grid.cpp:746 -#: ../src/ui/dialog/inkscape-preferences.cpp:727 -#: ../src/ui/dialog/inkscape-preferences.cpp:752 +#: ../src/display/canvas-axonomgrid.cpp:373 +#: ../src/display/canvas-grid.cpp:750 +#: ../src/ui/dialog/inkscape-preferences.cpp:736 +#: ../src/ui/dialog/inkscape-preferences.cpp:761 msgid "Y coordinate of grid origin" msgstr "Tīkla sākuma Y koordināte" -#: ../src/display/canvas-axonomgrid.cpp:371 -#: ../src/display/canvas-grid.cpp:750 +#: ../src/display/canvas-axonomgrid.cpp:375 +#: ../src/display/canvas-grid.cpp:754 msgid "Spacing _Y:" msgstr "Atstarpe _Y:" -#: ../src/display/canvas-axonomgrid.cpp:371 -#: ../src/ui/dialog/inkscape-preferences.cpp:755 +#: ../src/display/canvas-axonomgrid.cpp:375 +#: ../src/ui/dialog/inkscape-preferences.cpp:764 msgid "Base length of z-axis" msgstr "Z ass bāzes garums" -#: ../src/display/canvas-axonomgrid.cpp:373 -#: ../src/ui/dialog/inkscape-preferences.cpp:758 +#: ../src/display/canvas-axonomgrid.cpp:377 +#: ../src/ui/dialog/inkscape-preferences.cpp:767 #: ../src/widgets/box3d-toolbar.cpp:320 msgid "Angle X:" msgstr "Leņķis X:" -#: ../src/display/canvas-axonomgrid.cpp:373 -#: ../src/ui/dialog/inkscape-preferences.cpp:758 +#: ../src/display/canvas-axonomgrid.cpp:377 +#: ../src/ui/dialog/inkscape-preferences.cpp:767 msgid "Angle of x-axis" msgstr "X ass leņķis" -#: ../src/display/canvas-axonomgrid.cpp:375 -#: ../src/ui/dialog/inkscape-preferences.cpp:759 +#: ../src/display/canvas-axonomgrid.cpp:379 +#: ../src/ui/dialog/inkscape-preferences.cpp:768 #: ../src/widgets/box3d-toolbar.cpp:399 msgid "Angle Z:" msgstr "Leņķis Z:" -#: ../src/display/canvas-axonomgrid.cpp:375 -#: ../src/ui/dialog/inkscape-preferences.cpp:759 +#: ../src/display/canvas-axonomgrid.cpp:379 +#: ../src/ui/dialog/inkscape-preferences.cpp:768 msgid "Angle of z-axis" msgstr "Z ass leņķis" -#: ../src/display/canvas-axonomgrid.cpp:379 -#: ../src/display/canvas-grid.cpp:754 +#: ../src/display/canvas-axonomgrid.cpp:383 +#: ../src/display/canvas-grid.cpp:758 msgid "Minor grid line _color:" msgstr "Režģa palīglīniju _krāsa:" -#: ../src/display/canvas-axonomgrid.cpp:379 -#: ../src/display/canvas-grid.cpp:754 -#: ../src/ui/dialog/inkscape-preferences.cpp:710 +#: ../src/display/canvas-axonomgrid.cpp:383 +#: ../src/display/canvas-grid.cpp:758 +#: ../src/ui/dialog/inkscape-preferences.cpp:719 msgid "Minor grid line color" msgstr "Režģa palīglīniju krāsa" -#: ../src/display/canvas-axonomgrid.cpp:379 -#: ../src/display/canvas-grid.cpp:754 +#: ../src/display/canvas-axonomgrid.cpp:383 +#: ../src/display/canvas-grid.cpp:758 msgid "Color of the minor grid lines" msgstr "Režģa palīglīniju krāsa" -#: ../src/display/canvas-axonomgrid.cpp:384 -#: ../src/display/canvas-grid.cpp:759 +#: ../src/display/canvas-axonomgrid.cpp:388 +#: ../src/display/canvas-grid.cpp:763 msgid "Ma_jor grid line color:" msgstr "_Galveno režģa līniju krāsa:" -#: ../src/display/canvas-axonomgrid.cpp:384 -#: ../src/display/canvas-grid.cpp:759 -#: ../src/ui/dialog/inkscape-preferences.cpp:712 +#: ../src/display/canvas-axonomgrid.cpp:388 +#: ../src/display/canvas-grid.cpp:763 +#: ../src/ui/dialog/inkscape-preferences.cpp:721 msgid "Major grid line color" msgstr "Režģa pamatlīniju krāsa" -#: ../src/display/canvas-axonomgrid.cpp:385 -#: ../src/display/canvas-grid.cpp:760 +#: ../src/display/canvas-axonomgrid.cpp:389 +#: ../src/display/canvas-grid.cpp:764 msgid "Color of the major (highlighted) grid lines" msgstr "Režģa pamatlīniju (izcelto) krāsa" -#: ../src/display/canvas-axonomgrid.cpp:389 -#: ../src/display/canvas-grid.cpp:764 +#: ../src/display/canvas-axonomgrid.cpp:393 +#: ../src/display/canvas-grid.cpp:768 msgid "_Major grid line every:" msgstr "Tīkla pa_matlīnija ik pēc:" -#: ../src/display/canvas-axonomgrid.cpp:389 -#: ../src/display/canvas-grid.cpp:764 +#: ../src/display/canvas-axonomgrid.cpp:393 +#: ../src/display/canvas-grid.cpp:768 msgid "lines" msgstr "rindas" -#: ../src/display/canvas-grid.cpp:58 +#: ../src/display/canvas-grid.cpp:62 msgid "Rectangular grid" msgstr "Taisnstūrveida tīkls" -#: ../src/display/canvas-grid.cpp:59 +#: ../src/display/canvas-grid.cpp:63 msgid "Axonometric grid" msgstr "Aksonometriskais tīkls" -#: ../src/display/canvas-grid.cpp:270 +#: ../src/display/canvas-grid.cpp:274 msgid "Create new grid" msgstr "Izveidot Jaunu tīklu" -#: ../src/display/canvas-grid.cpp:336 +#: ../src/display/canvas-grid.cpp:340 msgid "_Enabled" msgstr "_Aktivēts" -#: ../src/display/canvas-grid.cpp:337 +#: ../src/display/canvas-grid.cpp:341 msgid "Determines whether to snap to this grid or not. Can be 'on' for invisible grids." msgstr "Nosaka, vai piesaistīt šim režģim vai nē. Var būt ieslēgts arī neredzamiem režģiem." -#: ../src/display/canvas-grid.cpp:341 +#: ../src/display/canvas-grid.cpp:345 msgid "Snap to visible _grid lines only" msgstr "Piesaistīt tikai red_zamām režģa līnijām" -#: ../src/display/canvas-grid.cpp:342 +#: ../src/display/canvas-grid.cpp:346 msgid "When zoomed out, not all grid lines will be displayed. Only the visible ones will be snapped to" msgstr "Tālinātā skatā visas režģa līnijas nebūs redzamas. Piesaiste tiks veikta tikai redzamām līnijām" -#: ../src/display/canvas-grid.cpp:346 +#: ../src/display/canvas-grid.cpp:350 msgid "_Visible" msgstr "_Redzams" -#: ../src/display/canvas-grid.cpp:347 +#: ../src/display/canvas-grid.cpp:351 msgid "Determines whether the grid is displayed or not. Objects are still snapped to invisible grids." msgstr "Nosaka, vai režģis tiek rādīts vai nē. Objekti joprojām tiks piesaistīti neredzamajam režģim." -#: ../src/display/canvas-grid.cpp:748 +#: ../src/display/canvas-grid.cpp:752 msgid "Spacing _X:" msgstr "Atstarpe _X:" -#: ../src/display/canvas-grid.cpp:748 -#: ../src/ui/dialog/inkscape-preferences.cpp:732 +#: ../src/display/canvas-grid.cpp:752 +#: ../src/ui/dialog/inkscape-preferences.cpp:741 msgid "Distance between vertical grid lines" msgstr "Attālums starp vertikālām režģa līnijām." -#: ../src/display/canvas-grid.cpp:750 -#: ../src/ui/dialog/inkscape-preferences.cpp:733 +#: ../src/display/canvas-grid.cpp:754 +#: ../src/ui/dialog/inkscape-preferences.cpp:742 msgid "Distance between horizontal grid lines" msgstr "Attālums starp horizontālām režģa līnijām." -#: ../src/display/canvas-grid.cpp:781 +#: ../src/display/canvas-grid.cpp:785 msgid "_Show dots instead of lines" msgstr "_Līniju vietā rādīt punktus " -#: ../src/display/canvas-grid.cpp:782 +#: ../src/display/canvas-grid.cpp:786 msgid "If set, displays dots at gridpoints instead of gridlines" msgstr "Ja iestatīts, režģa krustpunktos līniju vietā tiks rādīti punkti" @@ -4924,7 +4906,7 @@ msgstr "Palīglīnijas sākums" #: ../src/display/snap-indicator.cpp:222 msgid "Convex hull corner" -msgstr "" +msgstr "Izliekta korpusa stūris" #: ../src/display/snap-indicator.cpp:225 msgid "Quadrant point" @@ -5020,7 +5002,7 @@ msgstr "Atlasīts palīglīnijas ceļš; sāciet zīmēt gar palīglīnij #: ../src/dyna-draw-context.cpp:593 msgid "Select a guide path to track with Ctrl" -msgstr "" +msgstr "Atlasiet vadošo ceļu turot nospiestu Ctrl" #: ../src/dyna-draw-context.cpp:728 msgid "Tracking: connection to guide path lost!" @@ -5046,9 +5028,9 @@ msgstr "Zīmē dzēšgumijas līniju" msgid "Draw eraser stroke" msgstr "Zīmēt dzēšgumijas līniju" -#: ../src/event-context.cpp:671 +#: ../src/event-context.cpp:675 msgid "Space+mouse move to pan canvas" -msgstr "" +msgstr "Atstarpēšanas taustiņš+peles kustība, lai pārvietotos pa audeklu" #: ../src/event-log.cpp:37 msgid "[Unchanged]" @@ -5057,13 +5039,13 @@ msgstr "[Nemainīts]" #. Edit #: ../src/event-log.cpp:275 #: ../src/event-log.cpp:278 -#: ../src/verbs.cpp:2324 +#: ../src/verbs.cpp:2328 msgid "_Undo" msgstr "_Atcelt" #: ../src/event-log.cpp:285 #: ../src/event-log.cpp:289 -#: ../src/verbs.cpp:2326 +#: ../src/verbs.cpp:2330 msgid "_Redo" msgstr "At_kārtot" @@ -5092,7 +5074,7 @@ msgid " (No preferences)" msgstr " (Nav iestatījumu)" #: ../src/extension/effect.h:70 -#: ../src/verbs.cpp:2097 +#: ../src/verbs.cpp:2101 msgid "Extensions" msgstr "Paplašinājumi" @@ -5111,81 +5093,81 @@ msgstr "" msgid "Show dialog on startup" msgstr "Rādīt dialogu starta laikā" -#: ../src/extension/execution-env.cpp:136 +#: ../src/extension/execution-env.cpp:144 #, c-format msgid "'%s' working, please wait..." msgstr "'%s' darbojas, lūdzu, uzgaidiet..." #. static int i = 0; #. std::cout << "Checking module[" << i++ << "]: " << name << std::endl; -#: ../src/extension/extension.cpp:259 +#: ../src/extension/extension.cpp:263 msgid " This is caused by an improper .inx file for this extension. An improper .inx file could have been caused by a faulty installation of Inkscape." msgstr " Tā cēlonis ir nederīgs paplašinājuma .inx fails. Nederīgs .inx fails varētu būt kļūdainais Inkscape uzstādīšanas rezultāts." -#: ../src/extension/extension.cpp:262 +#: ../src/extension/extension.cpp:266 msgid "an ID was not defined for it." msgstr "tam nav definēts ID." -#: ../src/extension/extension.cpp:266 +#: ../src/extension/extension.cpp:270 msgid "there was no name defined for it." msgstr "tam nav definēts nosaukums." -#: ../src/extension/extension.cpp:270 +#: ../src/extension/extension.cpp:274 msgid "the XML description of it got lost." msgstr "tā XML apraksts ir zudis." -#: ../src/extension/extension.cpp:274 +#: ../src/extension/extension.cpp:278 msgid "no implementation was defined for the extension." msgstr "paplašinājumam nav noteikts pielietojums." #. std::cout << "Failed: " << *(_deps[i]) << std::endl; -#: ../src/extension/extension.cpp:281 +#: ../src/extension/extension.cpp:285 msgid "a dependency was not met." msgstr "nav izpildīta atkarības prasība." -#: ../src/extension/extension.cpp:301 +#: ../src/extension/extension.cpp:305 msgid "Extension \"" msgstr "Paplašinājums \"" -#: ../src/extension/extension.cpp:301 +#: ../src/extension/extension.cpp:305 msgid "\" failed to load because " msgstr "\" neizdevās ielādēt, jo " -#: ../src/extension/extension.cpp:628 +#: ../src/extension/extension.cpp:654 #, c-format msgid "Could not create extension error log file '%s'" msgstr "Nav iespējams izveidot paplašinājuma kļūdu žurnāla failu '%s'" -#: ../src/extension/extension.cpp:736 +#: ../src/extension/extension.cpp:762 #: ../share/extensions/webslicer_create_rect.inx.h:2 msgid "Name:" msgstr "Nosaukums:" -#: ../src/extension/extension.cpp:737 +#: ../src/extension/extension.cpp:763 msgid "ID:" msgstr "ID:" -#: ../src/extension/extension.cpp:738 +#: ../src/extension/extension.cpp:764 msgid "State:" msgstr "Stāvoklis:" -#: ../src/extension/extension.cpp:738 +#: ../src/extension/extension.cpp:764 msgid "Loaded" msgstr "Ielādēts" -#: ../src/extension/extension.cpp:738 +#: ../src/extension/extension.cpp:764 msgid "Unloaded" msgstr "Aizvākts no atmiņas" -#: ../src/extension/extension.cpp:738 +#: ../src/extension/extension.cpp:764 msgid "Deactivated" msgstr "Deaktivēts" -#: ../src/extension/extension.cpp:778 +#: ../src/extension/extension.cpp:804 msgid "Currently there is no help available for this Extension. Please look on the Inkscape website or ask on the mailing lists if you have questions regarding this extension." msgstr "Šobrīd palīdzība par šo paplašinājumu nav pieejama. Apmeklējiet Inkscape mājas lapu vai jautājiet vēstuļu kopās, ja Jums ir jautājumi par šo paplašinājumu." -#: ../src/extension/implementation/script.cpp:1018 +#: ../src/extension/implementation/script.cpp:1037 msgid "Inkscape has received additional data from the script executed. The script did not return an error, but this may indicate the results will not be as expected." msgstr "Inkscape ir saņēmusi papildu datus no izpildītā skripta. Skripts nav nodevis kļūdas paziņojumu, taču tas var nozīmēt, ka rezultāti var nebūt gaidītie." @@ -5207,7 +5189,6 @@ msgstr "Pielāgojamais slieksnis" #: ../src/extension/internal/bitmap/raise.cpp:42 #: ../src/extension/internal/bitmap/sample.cpp:41 #: ../src/extension/internal/bluredge.cpp:137 -#: ../src/extension/internal/filter/morphology.h:65 #: ../src/ui/dialog/object-attributes.cpp:68 #: ../src/ui/dialog/object-attributes.cpp:76 #: ../src/widgets/calligraphy-toolbar.cpp:451 @@ -5221,8 +5202,6 @@ msgstr "Platums:" #: ../src/extension/internal/bitmap/adaptiveThreshold.cpp:42 #: ../src/extension/internal/bitmap/raise.cpp:43 #: ../src/extension/internal/bitmap/sample.cpp:42 -#: ../src/extension/internal/filter/bumps.h:98 -#: ../src/extension/internal/filter/bumps.h:329 #: ../src/ui/dialog/object-attributes.cpp:69 #: ../src/ui/dialog/object-attributes.cpp:77 #: ../share/extensions/foldablebox.inx.h:3 @@ -5231,8 +5210,6 @@ msgstr "Augstums:" #. Label #: ../src/extension/internal/bitmap/adaptiveThreshold.cpp:43 -#: ../src/extension/internal/filter/color.h:1044 -#: ../src/extension/internal/filter/paint.h:356 #: ../src/widgets/gradient-toolbar.cpp:1172 #: ../src/widgets/gradient-vector.cpp:926 #: ../share/extensions/printing_marks.inx.h:12 @@ -5293,8 +5270,8 @@ msgstr "Pievienot troksni" #: ../src/extension/internal/filter/distort.h:69 #: ../src/extension/internal/filter/morphology.h:60 #: ../src/rdf.cpp:241 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2612 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2691 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2613 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2692 #: ../src/ui/dialog/object-attributes.cpp:49 #: ../share/extensions/jessyInk_effects.inx.h:5 #: ../share/extensions/jessyInk_export.inx.h:3 @@ -5333,6 +5310,8 @@ msgstr "Pievienot nejaušu troksni izvēlētajai (-ām) bitkartei (-ēm)" #: ../src/extension/internal/bitmap/blur.cpp:38 #: ../src/extension/internal/filter/blurs.h:54 +#: ../src/extension/internal/filter/paint.h:710 +#: ../src/extension/internal/filter/transparency.h:343 msgid "Blur" msgstr "Izpludināšana" @@ -5344,7 +5323,7 @@ msgstr "Izpludināšana" #: ../src/extension/internal/bitmap/oilPaint.cpp:39 #: ../src/extension/internal/bitmap/sharpen.cpp:40 #: ../src/extension/internal/bitmap/unsharpmask.cpp:43 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2669 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2670 msgid "Radius:" msgstr "Rādiuss:" @@ -5436,6 +5415,7 @@ msgid "Colorize selected bitmap(s) with specified color, using given opacity" msgstr "Krāsot atlasīto(-ās) bitkarti(-es) ar norādīto krāsu, izmantojot doto necauspīdīgumu" #: ../src/extension/internal/bitmap/contrast.cpp:40 +#: ../src/extension/internal/filter/color.h:1114 msgid "Contrast" msgstr "Kontrasts" @@ -5448,6 +5428,8 @@ msgid "Increase or decrease contrast in bitmap(s)" msgstr "Palielināt vai samazināt kontrastu bitkartē(s)" #: ../src/extension/internal/bitmap/crop.cpp:66 +#: ../src/extension/internal/filter/bumps.h:86 +#: ../src/extension/internal/filter/bumps.h:315 msgid "Crop" msgstr "Apgriezt" @@ -5550,6 +5532,10 @@ msgid "Implode selected bitmap(s)" msgstr "Implodēt atlasīto(-ās) bitkarti(-es)" #: ../src/extension/internal/bitmap/level.cpp:41 +#: ../src/extension/internal/filter/color.h:742 +#: ../src/extension/internal/filter/image.h:56 +#: ../src/extension/internal/filter/morphology.h:66 +#: ../src/extension/internal/filter/paint.h:345 msgid "Level" msgstr "Līmenis" @@ -5602,17 +5588,10 @@ msgid "Hue:" msgstr "Tonis:" #: ../src/extension/internal/bitmap/modulate.cpp:43 -#: ../src/extension/internal/filter/color.h:156 -#: ../src/extension/internal/filter/color.h:257 -#: ../src/extension/internal/filter/paint.h:87 msgid "Saturation:" msgstr "Piesātinājums:" #: ../src/extension/internal/bitmap/modulate.cpp:44 -#: ../src/extension/internal/filter/bevels.h:136 -#: ../src/extension/internal/filter/bevels.h:220 -#: ../src/extension/internal/filter/blurs.h:187 -#: ../src/extension/internal/filter/color.h:74 msgid "Brightness:" msgstr "Spilgtums:" @@ -5645,8 +5624,7 @@ msgid "Stylize selected bitmap(s) so that they appear to be painted with oils" msgstr "Stilizēt atlasīto(-ās) bitkarti(-es), lai tās izskatītos kā gleznotas ar eļļas krāsām" #: ../src/extension/internal/bitmap/opacity.cpp:40 -#: ../src/extension/internal/filter/blurs.h:333 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2659 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2660 #: ../src/widgets/dropper-toolbar.cpp:111 msgid "Opacity:" msgstr "Necaurspīdība:" @@ -5684,7 +5662,7 @@ msgstr "Samaziniet troksni atlasītajā(s) bitkartē(s) izmantojot trokšņa ma #: ../src/extension/internal/bitmap/sample.cpp:39 msgid "Resample" -msgstr "" +msgstr "Mainīt atlasi" #: ../src/extension/internal/bitmap/sample.cpp:48 msgid "Alter the resolution of selected image by resizing it to the given pixel size" @@ -5695,14 +5673,10 @@ msgid "Shade" msgstr "Ēnojums" #: ../src/extension/internal/bitmap/shade.cpp:42 -#: ../src/extension/internal/filter/bumps.h:110 -#: ../src/extension/internal/filter/bumps.h:332 msgid "Azimuth:" msgstr "Azimuts:" #: ../src/extension/internal/bitmap/shade.cpp:43 -#: ../src/extension/internal/filter/bumps.h:111 -#: ../src/extension/internal/filter/bumps.h:333 msgid "Elevation:" msgstr "Pacēklums" @@ -5810,97 +5784,101 @@ msgstr "Izveidojamais objekta saīsināto/pagarināto kopiju skaits" msgid "Generate from Path" msgstr "Veidot no ceļa" -#: ../src/extension/internal/cairo-ps-out.cpp:309 +#: ../src/extension/internal/cairo-ps-out.cpp:327 #: ../share/extensions/ps_input.inx.h:3 msgid "PostScript" msgstr "PostScript" -#: ../src/extension/internal/cairo-ps-out.cpp:311 -#: ../src/extension/internal/cairo-ps-out.cpp:351 +#: ../src/extension/internal/cairo-ps-out.cpp:329 +#: ../src/extension/internal/cairo-ps-out.cpp:370 msgid "Restrict to PS level:" msgstr "Ierobežot ar PS level:" -#: ../src/extension/internal/cairo-ps-out.cpp:312 -#: ../src/extension/internal/cairo-ps-out.cpp:352 +#: ../src/extension/internal/cairo-ps-out.cpp:330 +#: ../src/extension/internal/cairo-ps-out.cpp:371 msgid "PostScript level 3" msgstr "PostScript level 3" -#: ../src/extension/internal/cairo-ps-out.cpp:314 -#: ../src/extension/internal/cairo-ps-out.cpp:354 +#: ../src/extension/internal/cairo-ps-out.cpp:332 +#: ../src/extension/internal/cairo-ps-out.cpp:373 msgid "PostScript level 2" msgstr "PostScript level 2" -#: ../src/extension/internal/cairo-ps-out.cpp:317 -#: ../src/extension/internal/cairo-ps-out.cpp:357 +#: ../src/extension/internal/cairo-ps-out.cpp:335 +#: ../src/extension/internal/cairo-ps-out.cpp:376 #: ../src/extension/internal/cairo-renderer-pdf-out.cpp:250 #: ../src/extension/internal/emf-win32-inout.cpp:2553 msgid "Convert texts to paths" msgstr "Pārvērst tekstus par ceļiem" -#: ../src/extension/internal/cairo-ps-out.cpp:318 +#: ../src/extension/internal/cairo-ps-out.cpp:336 msgid "PS+LaTeX: Omit text in PS, and create LaTeX file" msgstr "PS+LaTeX: izlaist tekstu PS un izveidot LaTeX failu" -#: ../src/extension/internal/cairo-ps-out.cpp:319 -#: ../src/extension/internal/cairo-ps-out.cpp:359 +#: ../src/extension/internal/cairo-ps-out.cpp:337 +#: ../src/extension/internal/cairo-ps-out.cpp:378 #: ../src/extension/internal/cairo-renderer-pdf-out.cpp:252 msgid "Rasterize filter effects" msgstr "Rastrēšanas filtra efekts" -#: ../src/extension/internal/cairo-ps-out.cpp:320 -#: ../src/extension/internal/cairo-ps-out.cpp:360 +#: ../src/extension/internal/cairo-ps-out.cpp:338 +#: ../src/extension/internal/cairo-ps-out.cpp:379 #: ../src/extension/internal/cairo-renderer-pdf-out.cpp:253 msgid "Resolution for rasterization (dpi):" msgstr "Izšķirtspēja rastrēšanai (dpi):" -#: ../src/extension/internal/cairo-ps-out.cpp:321 -#: ../src/extension/internal/cairo-ps-out.cpp:361 -#: ../src/extension/internal/cairo-renderer-pdf-out.cpp:254 +#: ../src/extension/internal/cairo-ps-out.cpp:339 +#: ../src/extension/internal/cairo-ps-out.cpp:380 msgid "Output page size" msgstr "Izvades lapas izmēri" -#: ../src/extension/internal/cairo-ps-out.cpp:322 -#: ../src/extension/internal/cairo-ps-out.cpp:362 +#: ../src/extension/internal/cairo-ps-out.cpp:340 +#: ../src/extension/internal/cairo-ps-out.cpp:381 #: ../src/extension/internal/cairo-renderer-pdf-out.cpp:255 msgid "Use document's page size" msgstr "Izmantot dokumenta lapu izmēru" -#: ../src/extension/internal/cairo-ps-out.cpp:323 -#: ../src/extension/internal/cairo-ps-out.cpp:363 +#: ../src/extension/internal/cairo-ps-out.cpp:341 +#: ../src/extension/internal/cairo-ps-out.cpp:382 #: ../src/extension/internal/cairo-renderer-pdf-out.cpp:256 msgid "Use exported object's size" msgstr "Izmantot eksportētā objekta izmēru" -#: ../src/extension/internal/cairo-ps-out.cpp:325 -#: ../src/extension/internal/cairo-ps-out.cpp:365 +#: ../src/extension/internal/cairo-ps-out.cpp:343 +#: ../src/extension/internal/cairo-ps-out.cpp:384 +msgid "Bleed/margin (mm)" +msgstr "Pārlaide/mala (mm)" + +#: ../src/extension/internal/cairo-ps-out.cpp:344 +#: ../src/extension/internal/cairo-ps-out.cpp:385 #: ../src/extension/internal/cairo-renderer-pdf-out.cpp:259 msgid "Limit export to the object with ID:" msgstr "Ierobežojiet eksportu līdz objektam ar ID:" -#: ../src/extension/internal/cairo-ps-out.cpp:329 +#: ../src/extension/internal/cairo-ps-out.cpp:348 #: ../share/extensions/ps_input.inx.h:2 msgid "PostScript (*.ps)" msgstr "PostScript (*.ps)" -#: ../src/extension/internal/cairo-ps-out.cpp:330 +#: ../src/extension/internal/cairo-ps-out.cpp:349 msgid "PostScript File" msgstr "PostScript fails" -#: ../src/extension/internal/cairo-ps-out.cpp:349 +#: ../src/extension/internal/cairo-ps-out.cpp:368 #: ../share/extensions/eps_input.inx.h:3 msgid "Encapsulated PostScript" msgstr "Encapsulated PostScript" -#: ../src/extension/internal/cairo-ps-out.cpp:358 +#: ../src/extension/internal/cairo-ps-out.cpp:377 msgid "EPS+LaTeX: Omit text in EPS, and create LaTeX file" msgstr "EPS+LaTeX: izlaist tekstu EPS un izveidot LaTeX failu" -#: ../src/extension/internal/cairo-ps-out.cpp:369 +#: ../src/extension/internal/cairo-ps-out.cpp:389 #: ../share/extensions/eps_input.inx.h:2 msgid "Encapsulated PostScript (*.eps)" msgstr "Encapsulated PostScript (*.eps)" -#: ../src/extension/internal/cairo-ps-out.cpp:370 +#: ../src/extension/internal/cairo-ps-out.cpp:390 msgid "Encapsulated PostScript File" msgstr "Encapsulated PostScript fails" @@ -5920,9 +5898,13 @@ msgstr "PDF 1.4" msgid "PDF+LaTeX: Omit text in PDF, and create LaTeX file" msgstr "PDF+LaTeX: izlaist tekstu PDF un izveidot LaTeX failu" +#: ../src/extension/internal/cairo-renderer-pdf-out.cpp:254 +msgid "Output page size:" +msgstr "Izvades lapas izmēri:" + #: ../src/extension/internal/cairo-renderer-pdf-out.cpp:258 -msgid "Bleed/margin (mm)" -msgstr "Pārlaides mala (mm)" +msgid "Bleed/margin (mm):" +msgstr "Pārlaides mala (mm):" #: ../src/extension/internal/cdr-input.cpp:100 #: ../src/extension/internal/pdf-input-cairo.cpp:70 @@ -5942,9 +5924,8 @@ msgstr "no %i" #: ../src/extension/internal/cdr-input.cpp:143 #: ../src/extension/internal/vsd-input.cpp:143 -#, fuzzy msgid "Page Selector" -msgstr "Atlasītājs" +msgstr "Lapas atlasītājs" #: ../src/extension/internal/cdr-input.cpp:267 msgid "Corel DRAW Input" @@ -6038,22 +6019,21 @@ msgstr "Izkliedēta gaisma" #: ../src/extension/internal/filter/bevels.h:135 #: ../src/extension/internal/filter/bevels.h:219 #: ../src/extension/internal/filter/paint.h:89 -#: ../src/live_effects/lpe-powerstroke.cpp:236 -#: ../share/extensions/fractalize.inx.h:3 -msgid "Smoothness:" -msgstr "Gludums:" +#: ../src/extension/internal/filter/paint.h:340 +msgid "Smoothness" +msgstr "Gludums" #: ../src/extension/internal/filter/bevels.h:56 #: ../src/extension/internal/filter/bevels.h:137 #: ../src/extension/internal/filter/bevels.h:221 -msgid "Elevation (°):" -msgstr "Pacēlums (°):" +msgid "Elevation (°)" +msgstr "Pacēlums (°)" #: ../src/extension/internal/filter/bevels.h:57 #: ../src/extension/internal/filter/bevels.h:138 #: ../src/extension/internal/filter/bevels.h:222 -msgid "Azimuth (°):" -msgstr "Azimuts (°):" +msgid "Azimuth (°)" +msgstr "Azimuts (°)" #: ../src/extension/internal/filter/bevels.h:58 #: ../src/extension/internal/filter/bevels.h:139 @@ -6117,12 +6097,19 @@ msgstr "Filtri" #: ../src/extension/internal/filter/bevels.h:66 msgid "Basic diffuse bevel to use for building textures" -msgstr "" +msgstr "Vienkāršs izkliedēts slīpums faktūru veidošanai" #: ../src/extension/internal/filter/bevels.h:133 msgid "Matte Jelly" msgstr "Matēta želeja" +#: ../src/extension/internal/filter/bevels.h:136 +#: ../src/extension/internal/filter/bevels.h:220 +#: ../src/extension/internal/filter/blurs.h:187 +#: ../src/extension/internal/filter/color.h:74 +msgid "Brightness" +msgstr "Spilgtums" + #: ../src/extension/internal/filter/bevels.h:147 msgid "Bulging, matte jelly covering" msgstr "Izspiedies matētas želejas pārklājums" @@ -6135,15 +6122,15 @@ msgstr "Atstarota gaisma" #: ../src/extension/internal/filter/blurs.h:189 #: ../src/extension/internal/filter/blurs.h:329 #: ../src/extension/internal/filter/distort.h:73 -msgid "Horizontal blur:" -msgstr "Horizontālā izpludināšana:" +msgid "Horizontal blur" +msgstr "Horizontālā izpludināšana" #: ../src/extension/internal/filter/blurs.h:57 #: ../src/extension/internal/filter/blurs.h:190 #: ../src/extension/internal/filter/blurs.h:330 #: ../src/extension/internal/filter/distort.h:74 -msgid "Vertical blur:" -msgstr "Vertikālā izpludināšana:" +msgid "Vertical blur" +msgstr "Vertikālā izpludināšana" #: ../src/extension/internal/filter/blurs.h:58 msgid "Blur content only" @@ -6162,8 +6149,8 @@ msgstr "Tīras malas" #: ../src/extension/internal/filter/paint.h:237 #: ../src/extension/internal/filter/paint.h:336 #: ../src/extension/internal/filter/paint.h:341 -msgid "Strength:" -msgstr "Stiprums:" +msgid "Strength" +msgstr "Stiprums" #: ../src/extension/internal/filter/blurs.h:135 msgid "Removes or decreases glows and jaggeries around objects edges after applying some filters" @@ -6174,8 +6161,8 @@ msgid "Cross Blur" msgstr "Šķērsizpludināšana" #: ../src/extension/internal/filter/blurs.h:188 -msgid "Fading:" -msgstr "Izgaišana:" +msgid "Fading" +msgstr "Izgaišana" #: ../src/extension/internal/filter/blurs.h:191 #: ../src/extension/internal/filter/textures.h:74 @@ -6268,25 +6255,23 @@ msgstr "Nav fokusa" #: ../src/extension/internal/filter/blurs.h:331 #: ../src/extension/internal/filter/distort.h:75 #: ../src/extension/internal/filter/morphology.h:67 -#: ../src/extension/internal/filter/overlays.h:68 #: ../src/extension/internal/filter/paint.h:235 #: ../src/extension/internal/filter/paint.h:342 #: ../src/extension/internal/filter/paint.h:346 -msgid "Dilatation:" -msgstr "Paplašināšana:" +msgid "Dilatation" +msgstr "Paplašināšana" #: ../src/extension/internal/filter/blurs.h:332 #: ../src/extension/internal/filter/distort.h:76 #: ../src/extension/internal/filter/morphology.h:68 -#: ../src/extension/internal/filter/overlays.h:69 #: ../src/extension/internal/filter/paint.h:98 #: ../src/extension/internal/filter/paint.h:236 #: ../src/extension/internal/filter/paint.h:343 #: ../src/extension/internal/filter/paint.h:347 #: ../src/extension/internal/filter/transparency.h:208 #: ../src/extension/internal/filter/transparency.h:282 -msgid "Erosion:" -msgstr "Erozija:" +msgid "Erosion" +msgstr "Erozija" #: ../src/extension/internal/filter/blurs.h:336 #: ../src/extension/internal/filter/color.h:1205 @@ -6334,18 +6319,13 @@ msgstr "Reljefs" #: ../src/extension/internal/filter/bumps.h:84 #: ../src/extension/internal/filter/bumps.h:313 -msgid "Image simplification:" -msgstr "Attēla vienkāršošana:" +msgid "Image simplification" +msgstr "Attēla vienkāršošana" #: ../src/extension/internal/filter/bumps.h:85 #: ../src/extension/internal/filter/bumps.h:314 -msgid "Bump simplification:" -msgstr "Reljefa vienkāršošana:" - -#: ../src/extension/internal/filter/bumps.h:86 -#: ../src/extension/internal/filter/bumps.h:315 -msgid "Crop:" -msgstr "Graizīt:" +msgid "Bump simplification" +msgstr "Reljefa vienkāršošana" #: ../src/extension/internal/filter/bumps.h:87 #: ../src/extension/internal/filter/bumps.h:316 @@ -6355,26 +6335,44 @@ msgstr "Reljefa avots" #: ../src/extension/internal/filter/bumps.h:88 #: ../src/extension/internal/filter/bumps.h:317 #: ../src/extension/internal/filter/color.h:157 +#: ../src/extension/internal/filter/color.h:637 #: ../src/extension/internal/filter/color.h:821 #: ../src/extension/internal/filter/transparency.h:132 -msgid "Red:" -msgstr "Sarkans:" +#: ../src/filter-enums.cpp:100 +#: ../src/flood-context.cpp:228 +#: ../src/widgets/sp-color-icc-selector.cpp:354 +#: ../src/widgets/sp-color-scales.cpp:429 +#: ../src/widgets/sp-color-scales.cpp:430 +msgid "Red" +msgstr "Sarkans" #: ../src/extension/internal/filter/bumps.h:89 #: ../src/extension/internal/filter/bumps.h:318 #: ../src/extension/internal/filter/color.h:158 +#: ../src/extension/internal/filter/color.h:638 #: ../src/extension/internal/filter/color.h:822 #: ../src/extension/internal/filter/transparency.h:133 -msgid "Green:" -msgstr "Zaļš:" +#: ../src/filter-enums.cpp:101 +#: ../src/flood-context.cpp:229 +#: ../src/widgets/sp-color-icc-selector.cpp:355 +#: ../src/widgets/sp-color-scales.cpp:432 +#: ../src/widgets/sp-color-scales.cpp:433 +msgid "Green" +msgstr "Zaļš" #: ../src/extension/internal/filter/bumps.h:90 #: ../src/extension/internal/filter/bumps.h:319 #: ../src/extension/internal/filter/color.h:159 +#: ../src/extension/internal/filter/color.h:639 #: ../src/extension/internal/filter/color.h:823 #: ../src/extension/internal/filter/transparency.h:134 -msgid "Blue:" -msgstr "Zils:" +#: ../src/filter-enums.cpp:102 +#: ../src/flood-context.cpp:230 +#: ../src/widgets/sp-color-icc-selector.cpp:356 +#: ../src/widgets/sp-color-scales.cpp:435 +#: ../src/widgets/sp-color-scales.cpp:436 +msgid "Blue" +msgstr "Zils" #: ../src/extension/internal/filter/bumps.h:91 msgid "Bump from background" @@ -6392,22 +6390,36 @@ msgstr "Atspīdums" msgid "Diffuse" msgstr "Izkliedēt" -#: ../src/extension/internal/filter/bumps.h:99 -#: ../src/extension/internal/filter/bumps.h:330 -#: ../src/extension/internal/filter/color.h:76 +#: ../src/extension/internal/filter/bumps.h:98 +#: ../src/extension/internal/filter/bumps.h:329 +#: ../src/libgdl/gdl-dock-placeholder.c:175 +#: ../src/libgdl/gdl-dock.c:199 +#: ../src/widgets/rect-toolbar.cpp:332 +#: ../share/extensions/interp_att_g.inx.h:11 +msgid "Height" +msgstr "Augstums" + +#: ../src/extension/internal/filter/bumps.h:99 +#: ../src/extension/internal/filter/bumps.h:330 +#: ../src/extension/internal/filter/color.h:76 #: ../src/extension/internal/filter/color.h:824 #: ../src/extension/internal/filter/color.h:1113 #: ../src/extension/internal/filter/paint.h:86 #: ../src/extension/internal/filter/paint.h:592 #: ../src/extension/internal/filter/paint.h:707 -msgid "Lightness:" -msgstr "Gaišums:" +#: ../src/flood-context.cpp:233 +#: ../src/widgets/sp-color-icc-selector.cpp:365 +#: ../src/widgets/sp-color-scales.cpp:461 +#: ../src/widgets/sp-color-scales.cpp:462 +#: ../src/widgets/tweak-toolbar.cpp:336 +#: ../share/extensions/color_randomize.inx.h:5 +msgid "Lightness" +msgstr "Gaišums" #: ../src/extension/internal/filter/bumps.h:100 #: ../src/extension/internal/filter/bumps.h:331 -#: ../share/extensions/measure.inx.h:8 -msgid "Precision:" -msgstr "Precizitāte:" +msgid "Precision" +msgstr "Precizitāte" #: ../src/extension/internal/filter/bumps.h:103 msgid "Light source" @@ -6429,54 +6441,66 @@ msgstr "Punkts" #: ../src/extension/internal/filter/bumps.h:107 msgid "Spot" -msgstr "" +msgstr "Vieta" #: ../src/extension/internal/filter/bumps.h:109 msgid "Distant light options" msgstr "Attāla gaismas avota iestatījumi" +#: ../src/extension/internal/filter/bumps.h:110 +#: ../src/extension/internal/filter/bumps.h:332 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1001 +msgid "Azimuth" +msgstr "Azimuts" + +#: ../src/extension/internal/filter/bumps.h:111 +#: ../src/extension/internal/filter/bumps.h:333 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1002 +msgid "Elevation" +msgstr "Pacēlums" + #: ../src/extension/internal/filter/bumps.h:112 msgid "Point light options" msgstr "Punktveida gaismas avota iestatījumi" #: ../src/extension/internal/filter/bumps.h:113 #: ../src/extension/internal/filter/bumps.h:117 -msgid "X location:" -msgstr "X novietojums:" +msgid "X location" +msgstr "X novietojums" #: ../src/extension/internal/filter/bumps.h:114 #: ../src/extension/internal/filter/bumps.h:118 -msgid "Y location:" -msgstr "Y novietojums:" +msgid "Y location" +msgstr "Y novietojums" #: ../src/extension/internal/filter/bumps.h:115 #: ../src/extension/internal/filter/bumps.h:119 -msgid "Z location:" -msgstr "Z novietojums:" +msgid "Z location" +msgstr "Z novietojums" #: ../src/extension/internal/filter/bumps.h:116 msgid "Spot light options" msgstr "Starmeša iestatījumi" #: ../src/extension/internal/filter/bumps.h:120 -msgid "X target:" -msgstr "X mērķis:" +msgid "X target" +msgstr "X mērķis" #: ../src/extension/internal/filter/bumps.h:121 -msgid "Y target:" -msgstr "Y mērķis:" +msgid "Y target" +msgstr "Y mērķis" #: ../src/extension/internal/filter/bumps.h:122 -msgid "Z target:" -msgstr "Z mērķis:" +msgid "Z target" +msgstr "Z mērķis" #: ../src/extension/internal/filter/bumps.h:123 -msgid "Specular exponent:" -msgstr "Atspīduma eksponente:" +msgid "Specular exponent" +msgstr "Atspīduma eksponente" #: ../src/extension/internal/filter/bumps.h:124 -msgid "Cone angle:" -msgstr "Konusa leņķis:" +msgid "Cone angle" +msgstr "Konusa leņķis" #: ../src/extension/internal/filter/bumps.h:127 msgid "Image color" @@ -6501,7 +6525,7 @@ msgstr "Fons:" #: ../src/extension/internal/filter/bumps.h:322 #: ../src/extension/internal/filter/transparency.h:57 #: ../src/filter-enums.cpp:29 -#: ../src/selection-describer.cpp:55 +#: ../src/selection-describer.cpp:56 msgid "Image" msgstr "Attēls" @@ -6510,8 +6534,8 @@ msgid "Blurred image" msgstr "Izpludināts attēls" #: ../src/extension/internal/filter/bumps.h:325 -msgid "Background opacity:" -msgstr "Fona necaurspīdība:" +msgid "Background opacity" +msgstr "Fona necaurspīdība" #: ../src/extension/internal/filter/bumps.h:327 #: ../src/extension/internal/filter/color.h:1040 @@ -6532,7 +6556,7 @@ msgstr "Reljefa krāsa" #: ../src/extension/internal/filter/bumps.h:351 msgid "Revert bump" -msgstr "" +msgstr "Atjaunot pumpu" #: ../src/extension/internal/filter/bumps.h:352 msgid "Transparency type:" @@ -6542,7 +6566,7 @@ msgstr "Caurspīdīguma tips:" #: ../src/extension/internal/filter/morphology.h:176 #: ../src/filter-enums.cpp:74 msgid "Atop" -msgstr "" +msgstr "Virs" #: ../src/extension/internal/filter/bumps.h:354 #: ../src/extension/internal/filter/distort.h:70 @@ -6561,8 +6585,8 @@ msgstr "Mirdzums" #: ../src/extension/internal/filter/color.h:75 #: ../src/extension/internal/filter/color.h:1417 -msgid "Over-saturation:" -msgstr "Pārsātināšana:" +msgid "Over-saturation" +msgstr "Pārsātināšana" #: ../src/extension/internal/filter/color.h:77 #: ../src/extension/internal/filter/color.h:161 @@ -6582,10 +6606,26 @@ msgstr "Spilgtuma filtrs" msgid "Channel Painting" msgstr "Kanālu krāsosana" +#: ../src/extension/internal/filter/color.h:156 +#: ../src/extension/internal/filter/color.h:257 +#: ../src/extension/internal/filter/paint.h:87 +#: ../src/flood-context.cpp:232 +#: ../src/ui/dialog/inkscape-preferences.cpp:937 +#: ../src/widgets/sp-color-icc-selector.cpp:361 +#: ../src/widgets/sp-color-icc-selector.cpp:366 +#: ../src/widgets/sp-color-scales.cpp:458 +#: ../src/widgets/sp-color-scales.cpp:459 +#: ../src/widgets/tweak-toolbar.cpp:320 +#: ../share/extensions/color_randomize.inx.h:4 +msgid "Saturation" +msgstr "Piesātinājums" + #: ../src/extension/internal/filter/color.h:160 #: ../src/extension/internal/filter/transparency.h:135 -msgid "Alpha:" -msgstr "Alfa:" +#: ../src/filter-enums.cpp:103 +#: ../src/flood-context.cpp:234 +msgid "Alpha" +msgstr "Alfa" #: ../src/extension/internal/filter/color.h:174 msgid "Replace RGB by any color" @@ -6596,20 +6636,20 @@ msgid "Color Shift" msgstr "Krāsu pārbīde" #: ../src/extension/internal/filter/color.h:256 -msgid "Shift (°):" -msgstr "Pārbīde (°):" +msgid "Shift (°)" +msgstr "Pārbīde (°)" #: ../src/extension/internal/filter/color.h:265 msgid "Rotate and desaturate hue" msgstr "Pagriezt un atsātināt nokrāsu" #: ../src/extension/internal/filter/color.h:321 -msgid "Harsh light:" -msgstr "Asa gaisma:" +msgid "Harsh light" +msgstr "Asa gaisma" #: ../src/extension/internal/filter/color.h:322 -msgid "Normal light:" -msgstr "Parasta gaisma:" +msgid "Normal light" +msgstr "Parasta gaisma" #: ../src/extension/internal/filter/color.h:323 msgid "Duotone" @@ -6664,15 +6704,15 @@ msgstr "Gamma" #: ../src/extension/internal/filter/color.h:440 msgid "Basic component transfer structure" -msgstr "" +msgstr "Pamata komponentu pārneses struktūra" #: ../src/extension/internal/filter/color.h:509 msgid "Duochrome" msgstr "Divkrāsu" #: ../src/extension/internal/filter/color.h:513 -msgid "Fluorescence level:" -msgstr "Fluorescences līmenis:" +msgid "Fluorescence level" +msgstr "Fluorescences līmenis" #: ../src/extension/internal/filter/color.h:514 msgid "Swap:" @@ -6710,52 +6750,25 @@ msgstr "Pārvērst spilgtuma vērtības par divkrāsu paleti" msgid "Extract Channel" msgstr "Ekstraģēt kanālu" -#: ../src/extension/internal/filter/color.h:637 -#: ../src/filter-enums.cpp:100 -#: ../src/flood-context.cpp:228 -#: ../src/widgets/sp-color-icc-selector.cpp:228 -#: ../src/widgets/sp-color-scales.cpp:429 -#: ../src/widgets/sp-color-scales.cpp:430 -msgid "Red" -msgstr "Sarkans" - -#: ../src/extension/internal/filter/color.h:638 -#: ../src/filter-enums.cpp:101 -#: ../src/flood-context.cpp:229 -#: ../src/widgets/sp-color-icc-selector.cpp:228 -#: ../src/widgets/sp-color-scales.cpp:432 -#: ../src/widgets/sp-color-scales.cpp:433 -msgid "Green" -msgstr "Zaļš" - -#: ../src/extension/internal/filter/color.h:639 -#: ../src/filter-enums.cpp:102 -#: ../src/flood-context.cpp:230 -#: ../src/widgets/sp-color-icc-selector.cpp:228 -#: ../src/widgets/sp-color-scales.cpp:435 -#: ../src/widgets/sp-color-scales.cpp:436 -msgid "Blue" -msgstr "Zils" - #: ../src/extension/internal/filter/color.h:640 -#: ../src/widgets/sp-color-icc-selector.cpp:232 -#: ../src/widgets/sp-color-icc-selector.cpp:233 +#: ../src/widgets/sp-color-icc-selector.cpp:368 +#: ../src/widgets/sp-color-icc-selector.cpp:373 #: ../src/widgets/sp-color-scales.cpp:483 #: ../src/widgets/sp-color-scales.cpp:484 msgid "Cyan" msgstr "Ciāns" #: ../src/extension/internal/filter/color.h:641 -#: ../src/widgets/sp-color-icc-selector.cpp:232 -#: ../src/widgets/sp-color-icc-selector.cpp:233 +#: ../src/widgets/sp-color-icc-selector.cpp:369 +#: ../src/widgets/sp-color-icc-selector.cpp:374 #: ../src/widgets/sp-color-scales.cpp:486 #: ../src/widgets/sp-color-scales.cpp:487 msgid "Magenta" msgstr "Fuksīns (Magenta)" #: ../src/extension/internal/filter/color.h:642 -#: ../src/widgets/sp-color-icc-selector.cpp:232 -#: ../src/widgets/sp-color-icc-selector.cpp:233 +#: ../src/widgets/sp-color-icc-selector.cpp:370 +#: ../src/widgets/sp-color-icc-selector.cpp:375 #: ../src/widgets/sp-color-scales.cpp:489 #: ../src/widgets/sp-color-scales.cpp:490 msgid "Yellow" @@ -6777,20 +6790,13 @@ msgstr "Ekstraģēt krāsa kanālu kā caurspīdīgu attēlu" msgid "Fade to Black or White" msgstr "Izgaisināt melnā vai baltā" -#: ../src/extension/internal/filter/color.h:742 -#: ../src/extension/internal/filter/image.h:56 -#: ../src/extension/internal/filter/morphology.h:66 -#: ../src/extension/internal/filter/paint.h:345 -msgid "Level:" -msgstr "Līmenis:" - #: ../src/extension/internal/filter/color.h:743 msgid "Fade to:" msgstr "Izgaisināt:" #: ../src/extension/internal/filter/color.h:744 #: ../src/ui/widget/selected-style.cpp:254 -#: ../src/widgets/sp-color-icc-selector.cpp:232 +#: ../src/widgets/sp-color-icc-selector.cpp:371 #: ../src/widgets/sp-color-scales.cpp:492 #: ../src/widgets/sp-color-scales.cpp:493 msgid "Black" @@ -6845,8 +6851,8 @@ msgid "Green and blue" msgstr "Zaļš un zils" #: ../src/extension/internal/filter/color.h:913 -msgid "Light transparency:" -msgstr "Gaismas caurspīdīgums:" +msgid "Light transparency" +msgstr "Viegls caurspīdīgums" #: ../src/extension/internal/filter/color.h:914 msgid "Invert hue" @@ -6865,12 +6871,21 @@ msgid "Manage hue, lightness and transparency inversions" msgstr "Vadiet nokrāsas, gaišuma un caurspīdīguma inversijas" #: ../src/extension/internal/filter/color.h:1042 -msgid "Lights:" -msgstr "Gaismas:" +msgid "Lights" +msgstr "Gaismas" #: ../src/extension/internal/filter/color.h:1043 -msgid "Shadows:" -msgstr "Ēnas:" +msgid "Shadows" +msgstr "Ēnas" + +#: ../src/extension/internal/filter/color.h:1044 +#: ../src/extension/internal/filter/paint.h:356 +#: ../src/filter-enums.cpp:32 +#: ../src/live_effects/effect.cpp:97 +#: ../src/live_effects/lpe-offset.cpp:31 +#: ../src/widgets/gradient-toolbar.cpp:1172 +msgid "Offset" +msgstr "Nobīde" #: ../src/extension/internal/filter/color.h:1052 msgid "Modify lights and shadows separately" @@ -6880,10 +6895,6 @@ msgstr "Mainīt gaismas un ēnas atsevišķi" msgid "Lightness-Contrast" msgstr "Spilgtums-kontrasts" -#: ../src/extension/internal/filter/color.h:1114 -msgid "Contrast:" -msgstr "Kontrasts:" - #: ../src/extension/internal/filter/color.h:1122 msgid "Modify lightness and contrast separately" msgstr "Mainīt gaišumu un kontrastu atsevišķi" @@ -6902,13 +6913,10 @@ msgstr "Sarkanā nobīde" #: ../src/extension/internal/filter/color.h:1307 #: ../src/extension/internal/filter/color.h:1310 #: ../src/extension/internal/filter/color.h:1313 -#: ../src/ui/dialog/object-attributes.cpp:66 -#: ../src/ui/dialog/object-attributes.cpp:74 -#: ../src/ui/dialog/tile.cpp:618 -#: ../src/widgets/desktop-widget.cpp:667 -#: ../src/widgets/node-toolbar.cpp:590 -msgid "X:" -msgstr "X:" +#: ../src/ui/dialog/input.cpp:1616 +#: ../src/ui/dialog/layers.cpp:915 +msgid "X" +msgstr "X" #: ../src/extension/internal/filter/color.h:1196 #: ../src/extension/internal/filter/color.h:1199 @@ -6916,13 +6924,9 @@ msgstr "X:" #: ../src/extension/internal/filter/color.h:1308 #: ../src/extension/internal/filter/color.h:1311 #: ../src/extension/internal/filter/color.h:1314 -#: ../src/ui/dialog/object-attributes.cpp:67 -#: ../src/ui/dialog/object-attributes.cpp:75 -#: ../src/ui/dialog/tile.cpp:619 -#: ../src/widgets/desktop-widget.cpp:677 -#: ../src/widgets/node-toolbar.cpp:608 -msgid "Y:" -msgstr "Y:" +#: ../src/ui/dialog/input.cpp:1616 +msgid "Y" +msgstr "Y" #: ../src/extension/internal/filter/color.h:1197 msgid "Green offset" @@ -6961,21 +6965,21 @@ msgid "Quadritone fantasy" msgstr "Četrtoņu fantāzija" #: ../src/extension/internal/filter/color.h:1410 -#: ../src/extension/internal/filter/color.h:1608 -msgid "Hue distribution (°):" -msgstr "Nokrāsas sadale (°):" +msgid "Hue distribution (°)" +msgstr "Nokrāsas sadale (°)" #: ../src/extension/internal/filter/color.h:1411 -msgid "Colors:" -msgstr "Krāsas:" +#: ../share/extensions/svgcalendar.inx.h:19 +msgid "Colors" +msgstr "Krāsas" #: ../src/extension/internal/filter/color.h:1432 msgid "Replace hue by two colors" msgstr "Aizvietot nokrāsu ar divām krāsām" #: ../src/extension/internal/filter/color.h:1496 -msgid "Hue rotation (°):" -msgstr "Nokrāsas griešana (°):" +msgid "Hue rotation (°)" +msgstr "Nokrāsas griešana (°)" #: ../src/extension/internal/filter/color.h:1499 msgid "Moonarize" @@ -7010,20 +7014,24 @@ msgid "Global blend:" msgstr "Vispārējā sapludināšana" #: ../src/extension/internal/filter/color.h:1598 -msgid "Glow:" -msgstr "Spīdums:" +msgid "Glow" +msgstr "Spīdums" #: ../src/extension/internal/filter/color.h:1599 msgid "Glow blend:" msgstr "Kvēlojošā sapludināšana:" #: ../src/extension/internal/filter/color.h:1604 -msgid "Local light:" -msgstr "Vietējā gaisma:" +msgid "Local light" +msgstr "Vietējā gaisma" #: ../src/extension/internal/filter/color.h:1605 -msgid "Global light:" -msgstr "Vispārējā gaisma:" +msgid "Global light" +msgstr "Vispārējā gaisma" + +#: ../src/extension/internal/filter/color.h:1608 +msgid "Hue distribution (°):" +msgstr "Nokrāsas sadale (°):" #: ../src/extension/internal/filter/color.h:1619 msgid "Create a custom tritone palette with additional glow, blend modes and hue moving" @@ -7037,7 +7045,7 @@ msgstr "Filca spalvas" #: ../src/extension/internal/filter/morphology.h:175 #: ../src/filter-enums.cpp:73 msgid "Out" -msgstr "" +msgstr "Ārā" # K.Kalvišķis (karlo@lanet.lv): Ja nepatīk vārds „līnija”, tad varētu lietot vārdu „apmale”, jo Inkscape jebkuru līniju uztver kā nenoslēgtu daudzstūri, kuram var piešķirt gan aizpildījuma krāsu un veidu, gan apmales (līnijas) krāsu un veidu. #: ../src/extension/internal/filter/distort.h:77 @@ -7083,42 +7091,36 @@ msgstr "Turbulence" #: ../src/extension/internal/filter/distort.h:87 #: ../src/extension/internal/filter/distort.h:196 -#: ../src/extension/internal/filter/overlays.h:64 #: ../src/extension/internal/filter/paint.h:93 #: ../src/extension/internal/filter/paint.h:695 -msgid "Horizontal frequency:" -msgstr "Horizontālais biežums:" +msgid "Horizontal frequency" +msgstr "Horizontālais biežums" #: ../src/extension/internal/filter/distort.h:88 #: ../src/extension/internal/filter/distort.h:197 -#: ../src/extension/internal/filter/overlays.h:65 #: ../src/extension/internal/filter/paint.h:94 #: ../src/extension/internal/filter/paint.h:696 -msgid "Vertical frequency:" -msgstr "Vertikālais biežums:" +msgid "Vertical frequency" +msgstr "Vertikālais biežums" #: ../src/extension/internal/filter/distort.h:89 #: ../src/extension/internal/filter/distort.h:198 -#: ../src/extension/internal/filter/overlays.h:66 #: ../src/extension/internal/filter/paint.h:95 #: ../src/extension/internal/filter/paint.h:697 -#: ../src/extension/internal/filter/textures.h:69 -msgid "Complexity:" -msgstr "Sarežģītība:" +msgid "Complexity" +msgstr "Sarežģītība" #: ../src/extension/internal/filter/distort.h:90 #: ../src/extension/internal/filter/distort.h:199 -#: ../src/extension/internal/filter/overlays.h:67 #: ../src/extension/internal/filter/paint.h:96 #: ../src/extension/internal/filter/paint.h:698 -#: ../src/extension/internal/filter/textures.h:70 -msgid "Variation:" -msgstr "Variācija:" +msgid "Variation" +msgstr "Variācija" #: ../src/extension/internal/filter/distort.h:91 #: ../src/extension/internal/filter/distort.h:200 -msgid "Intensity:" -msgstr "Intensitāte:" +msgid "Intensity" +msgstr "Intensitāte" #: ../src/extension/internal/filter/distort.h:99 msgid "Blur and displace edges of shapes and pictures" @@ -7197,10 +7199,20 @@ msgstr "Ārējs" msgid "Open" msgstr "Atvērt" +#: ../src/extension/internal/filter/morphology.h:65 +#: ../src/libgdl/gdl-dock-placeholder.c:167 +#: ../src/libgdl/gdl-dock.c:191 +#: ../src/widgets/rect-toolbar.cpp:315 +#: ../src/widgets/spray-toolbar.cpp:132 +#: ../src/widgets/tweak-toolbar.cpp:146 +#: ../share/extensions/interp_att_g.inx.h:10 +msgid "Width" +msgstr "Platums" + #: ../src/extension/internal/filter/morphology.h:69 #: ../src/extension/internal/filter/morphology.h:190 -msgid "Antialiasing:" -msgstr "Kropļojumnovērse:" +msgid "Antialiasing" +msgstr "Kropļojumnovērse" #: ../src/extension/internal/filter/morphology.h:70 msgid "Blur content" @@ -7254,28 +7266,28 @@ msgid "Overlayed" msgstr "Pārklāts" #: ../src/extension/internal/filter/morphology.h:184 -msgid "Width 1:" -msgstr "Platums 1:" +msgid "Width 1" +msgstr "Platums 1" #: ../src/extension/internal/filter/morphology.h:185 -msgid "Dilatation 1:" -msgstr "Paplašināšana 1:" +msgid "Dilatation 1" +msgstr "Paplašināšana 1" #: ../src/extension/internal/filter/morphology.h:186 -msgid "Erosion 1:" -msgstr "Erozija 1:" +msgid "Erosion 1" +msgstr "Erozija 1" #: ../src/extension/internal/filter/morphology.h:187 -msgid "Width 2:" -msgstr "Platums 2:" +msgid "Width 2" +msgstr "Platums 2" #: ../src/extension/internal/filter/morphology.h:188 -msgid "Dilatation 2:" -msgstr "Paplašināšana 2:" +msgid "Dilatation 2" +msgstr "Paplašināšana 2" #: ../src/extension/internal/filter/morphology.h:189 -msgid "Erosion 2:" -msgstr "Erozija 2:" +msgid "Erosion 2" +msgstr "Erozija 2" #: ../src/extension/internal/filter/morphology.h:191 msgid "Smooth" @@ -7331,6 +7343,32 @@ msgstr "Aizpildīt ar troksni" msgid "Options" msgstr "Opcijas" +#: ../src/extension/internal/filter/overlays.h:64 +msgid "Horizontal frequency:" +msgstr "Horizontālais biežums:" + +#: ../src/extension/internal/filter/overlays.h:65 +msgid "Vertical frequency:" +msgstr "Vertikālais biežums:" + +#: ../src/extension/internal/filter/overlays.h:66 +#: ../src/extension/internal/filter/textures.h:69 +msgid "Complexity:" +msgstr "Sarežģītība:" + +#: ../src/extension/internal/filter/overlays.h:67 +#: ../src/extension/internal/filter/textures.h:70 +msgid "Variation:" +msgstr "Variācija:" + +#: ../src/extension/internal/filter/overlays.h:68 +msgid "Dilatation:" +msgstr "Paplašināšana:" + +#: ../src/extension/internal/filter/overlays.h:69 +msgid "Erosion:" +msgstr "Erozija:" + #: ../src/extension/internal/filter/overlays.h:72 msgid "Noise color" msgstr "Trokšņa krāsa" @@ -7358,8 +7396,8 @@ msgstr "Sadauzīts" #: ../src/extension/internal/filter/paint.h:88 #: ../src/extension/internal/filter/paint.h:699 -msgid "Noise reduction:" -msgstr "Trokšņu samazināšana:" +msgid "Noise reduction" +msgstr "Trokšņu samazināšana" #: ../src/extension/internal/filter/paint.h:91 msgid "Grain" @@ -7372,8 +7410,8 @@ msgstr "Graudainuma veids" #: ../src/extension/internal/filter/paint.h:97 #: ../src/extension/internal/filter/transparency.h:207 #: ../src/extension/internal/filter/transparency.h:281 -msgid "Expansion:" -msgstr "Izplešanās:" +msgid "Expansion" +msgstr "Izplešanās" #: ../src/extension/internal/filter/paint.h:100 msgid "Grain blend:" @@ -7381,7 +7419,7 @@ msgstr "Graudu sapludināšana:" #: ../src/extension/internal/filter/paint.h:116 msgid "Chromo effect with customizable edge drawing and graininess" -msgstr "" +msgstr "Hromo efekts ar pielāgojamu malu izskatu un graudainumu" #: ../src/extension/internal/filter/paint.h:232 msgid "Cross Engraving" @@ -7389,13 +7427,13 @@ msgstr "Šķērsgravēšana" #: ../src/extension/internal/filter/paint.h:234 #: ../src/extension/internal/filter/paint.h:337 -msgid "Clean-up:" -msgstr "Uzkopt:" +msgid "Clean-up" +msgstr "Uzkopt" #: ../src/extension/internal/filter/paint.h:238 -#: ../src/widgets/connector-toolbar.cpp:398 -msgid "Length:" -msgstr "Garums:" +#: ../share/extensions/measure.inx.h:11 +msgid "Length" +msgstr "Garums" #: ../src/extension/internal/filter/paint.h:247 msgid "Convert image to an engraving made of vertical and horizontal lines" @@ -7403,23 +7441,22 @@ msgstr "Pārvērst attēlu par gravīru, kas sastāv no vertikālām un horizont #: ../src/extension/internal/filter/paint.h:331 #: ../src/ui/dialog/align-and-distribute.cpp:1048 -#: ../src/widgets/desktop-widget.cpp:1923 +#: ../src/widgets/desktop-widget.cpp:2000 msgid "Drawing" msgstr "Zīmējums" #: ../src/extension/internal/filter/paint.h:335 -#: ../src/splivarot.cpp:1983 +#: ../src/extension/internal/filter/paint.h:496 +#: ../src/extension/internal/filter/paint.h:590 +#: ../src/extension/internal/filter/paint.h:976 +#: ../src/splivarot.cpp:1988 msgid "Simplify" msgstr "Vienkāršot" #: ../src/extension/internal/filter/paint.h:338 #: ../src/extension/internal/filter/paint.h:709 -msgid "Erase:" -msgstr "Dzēst:" - -#: ../src/extension/internal/filter/paint.h:340 -msgid "Smoothness" -msgstr "Gludums" +msgid "Erase" +msgstr "Dzēst" #: ../src/extension/internal/filter/paint.h:344 msgid "Melt" @@ -7433,7 +7470,7 @@ msgstr "Aizpildījuma krāsa" #: ../src/extension/internal/filter/paint.h:351 #: ../src/extension/internal/filter/paint.h:714 msgid "Image on fill" -msgstr "" +msgstr "Aizpildošais attēls" #: ../src/extension/internal/filter/paint.h:354 msgid "Stroke color" @@ -7451,12 +7488,6 @@ msgstr "Pārvērst attēlus par divkrāsu zīmējumiem" msgid "Electrize" msgstr "Elektrizēt" -#: ../src/extension/internal/filter/paint.h:496 -#: ../src/extension/internal/filter/paint.h:590 -#: ../src/extension/internal/filter/paint.h:976 -msgid "Simplify:" -msgstr "Vienkāršot:" - #: ../src/extension/internal/filter/paint.h:497 #: ../src/extension/internal/filter/paint.h:852 msgid "Effect type:" @@ -7465,8 +7496,8 @@ msgstr "Efekta tips:" #: ../src/extension/internal/filter/paint.h:501 #: ../src/extension/internal/filter/paint.h:860 #: ../src/extension/internal/filter/paint.h:975 -msgid "Levels:" -msgstr "Līmeņi:" +msgid "Levels" +msgstr "Līmeņi" #: ../src/extension/internal/filter/paint.h:510 msgid "Electro solarization effects" @@ -7489,8 +7520,8 @@ msgid "Contrasted" msgstr "Kontrastēts" #: ../src/extension/internal/filter/paint.h:591 -msgid "Line width:" -msgstr "Līnijas platums:" +msgid "Line width" +msgstr "Līnijas platums" #: ../src/extension/internal/filter/paint.h:593 #: ../src/extension/internal/filter/paint.h:861 @@ -7511,13 +7542,8 @@ msgid "Noise blend:" msgstr "Trokšņa sapludināšana:" #: ../src/extension/internal/filter/paint.h:708 -msgid "Grain lightness:" -msgstr "Grauda gaišums:" - -#: ../src/extension/internal/filter/paint.h:710 -#: ../src/extension/internal/filter/transparency.h:343 -msgid "Blur:" -msgstr "Izpludinājums:" +msgid "Grain lightness" +msgstr "Grauda gaišums" #: ../src/extension/internal/filter/paint.h:716 msgid "Points color" @@ -7548,20 +7574,20 @@ msgid "Painting" msgstr "Glezna" #: ../src/extension/internal/filter/paint.h:868 -msgid "Simplify (primary):" -msgstr "Vienkāršot (pirmkārt):" +msgid "Simplify (primary)" +msgstr "Vienkāršot (pirmkārt)" #: ../src/extension/internal/filter/paint.h:869 -msgid "Simplify (secondary):" -msgstr "Vienkāršot (otrkārt):" +msgid "Simplify (secondary)" +msgstr "Vienkāršot (otrkārt)" #: ../src/extension/internal/filter/paint.h:870 -msgid "Pre-saturation:" -msgstr "Priekšpiesātinājums:" +msgid "Pre-saturation" +msgstr "Priekšpiesātinājums" #: ../src/extension/internal/filter/paint.h:871 -msgid "Post-saturation:" -msgstr "Pēcpiesātinājums:" +msgid "Post-saturation" +msgstr "Pēcpiesātinājums" #: ../src/extension/internal/filter/paint.h:872 msgid "Simulate antialiasing" @@ -7584,8 +7610,8 @@ msgid "Snow crest" msgstr "Sniega kupena" #: ../src/extension/internal/filter/protrusions.h:50 -msgid "Drift Size:" -msgstr "" +msgid "Drift Size" +msgstr "Kupenas lielums" #: ../src/extension/internal/filter/protrusions.h:58 msgid "Snow has fallen on object" @@ -7596,16 +7622,16 @@ msgid "Drop Shadow" msgstr "Krītošā ēna" #: ../src/extension/internal/filter/shadows.h:61 -msgid "Blur radius (px):" -msgstr "Izpludināšanas rādiuss (px):" +msgid "Blur radius (px)" +msgstr "Izpludināšanas rādiuss (px)" #: ../src/extension/internal/filter/shadows.h:62 -msgid "Horizontal offset (px):" -msgstr "Horizontālā nobīde (px):" +msgid "Horizontal offset (px)" +msgstr "Horizontālā nobīde (px)" #: ../src/extension/internal/filter/shadows.h:63 -msgid "Vertical offset (px):" -msgstr "Vertikālā nobīde (px):" +msgid "Vertical offset (px)" +msgstr "Vertikālā nobīde (px)" #: ../src/extension/internal/filter/shadows.h:64 msgid "Shadow type:" @@ -7704,7 +7730,7 @@ msgid "Background" msgstr "Fons" #: ../src/extension/internal/filter/transparency.h:59 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2609 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2610 #: ../src/ui/dialog/input.cpp:1088 #: ../src/widgets/erasor-toolbar.cpp:127 #: ../src/widgets/pencil-toolbar.cpp:161 @@ -7733,8 +7759,8 @@ msgstr "Gaismas dzēšgumija" #: ../src/extension/internal/filter/transparency.h:209 #: ../src/extension/internal/filter/transparency.h:283 -msgid "Global opacity:" -msgstr "Globālā necaurspīdība" +msgid "Global opacity" +msgstr "Vispārējā necaurspīdība" #: ../src/extension/internal/filter/transparency.h:218 msgid "Make the lightest parts of the object progressively transparent" @@ -7797,32 +7823,32 @@ msgstr "GIMP krāsu pāreja (*.ggr)" msgid "Gradients used in GIMP" msgstr "GIMP izmantotās krāsu pārejas" -#: ../src/extension/internal/grid.cpp:201 -#: ../src/ui/widget/panel.cpp:113 +#: ../src/extension/internal/grid.cpp:209 +#: ../src/ui/widget/panel.cpp:117 msgid "Grid" msgstr "Režģis" -#: ../src/extension/internal/grid.cpp:203 +#: ../src/extension/internal/grid.cpp:211 msgid "Line Width:" msgstr "Līnijas platums:" -#: ../src/extension/internal/grid.cpp:204 +#: ../src/extension/internal/grid.cpp:212 msgid "Horizontal Spacing:" msgstr "Horizontālais attālums:" -#: ../src/extension/internal/grid.cpp:205 +#: ../src/extension/internal/grid.cpp:213 msgid "Vertical Spacing:" msgstr "Vertikālais attālums:" -#: ../src/extension/internal/grid.cpp:206 +#: ../src/extension/internal/grid.cpp:214 msgid "Horizontal Offset:" msgstr "Horizontālā nobīde" -#: ../src/extension/internal/grid.cpp:207 +#: ../src/extension/internal/grid.cpp:215 msgid "Vertical Offset:" msgstr "Vertikālā nobīde:" -#: ../src/extension/internal/grid.cpp:211 +#: ../src/extension/internal/grid.cpp:219 #: ../share/extensions/draw_from_triangle.inx.h:58 #: ../share/extensions/eqtexsvg.inx.h:4 #: ../share/extensions/foldablebox.inx.h:9 @@ -7850,14 +7876,14 @@ msgstr "Vertikālā nobīde:" msgid "Render" msgstr "Renderēt" -#: ../src/extension/internal/grid.cpp:212 +#: ../src/extension/internal/grid.cpp:220 #: ../src/ui/dialog/document-properties.cpp:148 -#: ../src/ui/dialog/inkscape-preferences.cpp:767 -#: ../src/widgets/toolbox.cpp:1822 +#: ../src/ui/dialog/inkscape-preferences.cpp:776 +#: ../src/widgets/toolbox.cpp:1826 msgid "Grids" msgstr "Režģi" -#: ../src/extension/internal/grid.cpp:215 +#: ../src/extension/internal/grid.cpp:223 msgid "Draw a path which is a grid" msgstr "Zīmēt ceļu, kas ir režģis" @@ -7889,15 +7915,15 @@ msgstr "LaTeX PSTricks fails" msgid "LaTeX Print" msgstr "LaTeX druka" -#: ../src/extension/internal/odf.cpp:2445 +#: ../src/extension/internal/odf.cpp:2138 msgid "OpenDocument Drawing Output" msgstr "OpenDocument Drawing Izvade" -#: ../src/extension/internal/odf.cpp:2450 +#: ../src/extension/internal/odf.cpp:2143 msgid "OpenDocument drawing (*.odg)" msgstr "OpenDocument zīmejums (*.odg)" -#: ../src/extension/internal/odf.cpp:2451 +#: ../src/extension/internal/odf.cpp:2144 msgid "OpenDocument drawing file" msgstr "OpenDocument zīmējuma fails" @@ -7926,7 +7952,7 @@ msgstr "pārlaides rāmis" #: ../src/extension/internal/pdf-input-cairo.cpp:56 #: ../src/extension/internal/pdfinput/pdf-input.cpp:74 msgid "art box" -msgstr "" +msgstr "art box" #. Crop settings #: ../src/extension/internal/pdf-input-cairo.cpp:94 @@ -8017,9 +8043,8 @@ msgid "PDF Input" msgstr "PDF Ievade" #: ../src/extension/internal/pdf-input-cairo.cpp:651 -#, fuzzy msgid "Adobe PDF via poppler-cairo (*.pdf)" -msgstr "Adobe PDF (*.pdf)" +msgstr "Adobe PDF caur poppler-cairo (*.pdf)" #: ../src/extension/internal/pdf-input-cairo.cpp:652 msgid "PDF Document" @@ -8351,13 +8376,6 @@ msgstr "Pludināt" msgid "Merge" msgstr "Apvienot" -#: ../src/filter-enums.cpp:32 -#: ../src/live_effects/effect.cpp:97 -#: ../src/live_effects/lpe-offset.cpp:31 -#: ../src/widgets/gradient-toolbar.cpp:1172 -msgid "Offset" -msgstr "Nobīde" - #: ../src/filter-enums.cpp:33 msgid "Specular Lighting" msgstr "Atstarots apgaismojums" @@ -8408,7 +8426,7 @@ msgstr "Spilgtumu par alfa" #. File #: ../src/filter-enums.cpp:70 -#: ../src/verbs.cpp:2291 +#: ../src/verbs.cpp:2295 #: ../share/extensions/jessyInk_mouseHandler.inx.h:3 #: ../share/extensions/jessyInk_transitions.inx.h:7 msgid "Default" @@ -8419,7 +8437,7 @@ msgid "Arithmetic" msgstr "Aritmētisks" #: ../src/filter-enums.cpp:92 -#: ../src/selection-chemistry.cpp:485 +#: ../src/selection-chemistry.cpp:516 msgid "Duplicate" msgstr "Dublēt" @@ -8427,11 +8445,6 @@ msgstr "Dublēt" msgid "Wrap" msgstr "Aplauzt" -#: ../src/filter-enums.cpp:103 -#: ../src/flood-context.cpp:234 -msgid "Alpha" -msgstr "Alfa" - #: ../src/filter-enums.cpp:109 msgid "Erode" msgstr "Erodēt" @@ -8461,8 +8474,8 @@ msgid "Visible Colors" msgstr "Redzamās krāsas" #: ../src/flood-context.cpp:231 -#: ../src/widgets/sp-color-icc-selector.cpp:230 -#: ../src/widgets/sp-color-icc-selector.cpp:231 +#: ../src/widgets/sp-color-icc-selector.cpp:360 +#: ../src/widgets/sp-color-icc-selector.cpp:364 #: ../src/widgets/sp-color-scales.cpp:455 #: ../src/widgets/sp-color-scales.cpp:456 #: ../src/widgets/tweak-toolbar.cpp:304 @@ -8470,26 +8483,6 @@ msgstr "Redzamās krāsas" msgid "Hue" msgstr "Tonis" -#: ../src/flood-context.cpp:232 -#: ../src/ui/dialog/inkscape-preferences.cpp:928 -#: ../src/widgets/sp-color-icc-selector.cpp:230 -#: ../src/widgets/sp-color-icc-selector.cpp:231 -#: ../src/widgets/sp-color-scales.cpp:458 -#: ../src/widgets/sp-color-scales.cpp:459 -#: ../src/widgets/tweak-toolbar.cpp:320 -#: ../share/extensions/color_randomize.inx.h:4 -msgid "Saturation" -msgstr "Piesātinājums" - -#: ../src/flood-context.cpp:233 -#: ../src/widgets/sp-color-icc-selector.cpp:231 -#: ../src/widgets/sp-color-scales.cpp:461 -#: ../src/widgets/sp-color-scales.cpp:462 -#: ../src/widgets/tweak-toolbar.cpp:336 -#: ../share/extensions/color_randomize.inx.h:5 -msgid "Lightness" -msgstr "Gaišums" - #: ../src/flood-context.cpp:245 msgctxt "Flood autogap" msgid "None" @@ -8643,8 +8636,9 @@ msgstr[2] " %d atlasītajiem objektiem" #, c-format msgid "One handle merging %d stop (drag with Shift to separate) selected" msgid_plural "One handle merging %d stops (drag with Shift to separate) selected" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "Atlasīts viens, %d pārtraukumu apvienojošs turis (velciet ar Shift lai atdalītu)" +msgstr[1] "Atlasīts viens, %d pārtraukumus apvienojošs turis (velciet ar Shift lai atdalītu)" +msgstr[2] "Atlasīts viens, %d pārtraukumus apvienojošs turis (velciet ar Shift lai atdalītu)" #. TRANSLATORS: The plural refers to number of selected gradient handles. This is part of a compound message (part two indicates selected object count) #: ../src/gradient-context.cpp:160 @@ -8722,8 +8716,9 @@ msgid "Mesh gradient tensor" msgstr "Tīkla krāsu pārejas tenzors" #: ../src/gradient-drag.cpp:566 +#, fuzzy msgid "Added patch row or column" -msgstr "" +msgstr "Pievienota XXX rinda vai sleja" #: ../src/gradient-drag.cpp:792 msgid "Merge gradient handles" @@ -8794,7 +8789,7 @@ msgid "Units" msgstr "Mērvienības" #: ../src/helper/units.cpp:38 -#: ../share/extensions/dxf_outlines.inx.h:8 +#: ../share/extensions/dxf_outlines.inx.h:9 msgid "pt" msgstr "pt" @@ -8813,7 +8808,7 @@ msgid "Pica" msgstr "Pica" #: ../src/helper/units.cpp:39 -#: ../share/extensions/dxf_outlines.inx.h:9 +#: ../share/extensions/dxf_outlines.inx.h:10 msgid "pc" msgstr "pc" @@ -8831,7 +8826,7 @@ msgid "Pixel" msgstr "Pikselis" #: ../src/helper/units.cpp:40 -#: ../share/extensions/dxf_outlines.inx.h:10 +#: ../share/extensions/dxf_outlines.inx.h:11 #: ../share/extensions/gears.inx.h:7 msgid "px" msgstr " px" @@ -8850,7 +8845,7 @@ msgid "Percent" msgstr "Procenti" #: ../src/helper/units.cpp:42 -#: ../src/ui/dialog/inkscape-preferences.cpp:1256 +#: ../src/ui/dialog/inkscape-preferences.cpp:1265 msgid "%" msgstr "%" @@ -8864,7 +8859,7 @@ msgid "Millimeter" msgstr "Milimetrs" #: ../src/helper/units.cpp:43 -#: ../share/extensions/dxf_outlines.inx.h:11 +#: ../share/extensions/dxf_outlines.inx.h:12 #: ../share/extensions/gears.inx.h:9 #: ../share/extensions/gcodetools_area.inx.h:46 #: ../share/extensions/gcodetools_dxf_points.inx.h:18 @@ -8886,7 +8881,7 @@ msgid "Centimeter" msgstr "Centimetrs" #: ../src/helper/units.cpp:44 -#: ../share/extensions/dxf_outlines.inx.h:12 +#: ../share/extensions/dxf_outlines.inx.h:13 msgid "cm" msgstr "cm" @@ -8899,7 +8894,7 @@ msgid "Meter" msgstr "Metrs" #: ../src/helper/units.cpp:45 -#: ../share/extensions/dxf_outlines.inx.h:13 +#: ../share/extensions/dxf_outlines.inx.h:14 msgid "m" msgstr "m" @@ -8914,7 +8909,7 @@ msgid "Inch" msgstr "colla" #: ../src/helper/units.cpp:46 -#: ../share/extensions/dxf_outlines.inx.h:14 +#: ../share/extensions/dxf_outlines.inx.h:15 #: ../share/extensions/gears.inx.h:8 #: ../share/extensions/gcodetools_area.inx.h:47 #: ../share/extensions/gcodetools_dxf_points.inx.h:19 @@ -8935,7 +8930,7 @@ msgid "Foot" msgstr "Pēda" #: ../src/helper/units.cpp:47 -#: ../share/extensions/dxf_outlines.inx.h:15 +#: ../share/extensions/dxf_outlines.inx.h:16 msgid "ft" msgstr "pēdas" @@ -8971,46 +8966,46 @@ msgstr "ex" msgid "Ex squares" msgstr "Ex kvadrāti" -#: ../src/inkscape.cpp:317 +#: ../src/inkscape.cpp:322 msgid "Autosave failed! Cannot create directory %1." msgstr "Automātiskās saglabāšanas kļūda! Nevar izveidot mapi %1." -#: ../src/inkscape.cpp:326 +#: ../src/inkscape.cpp:331 msgid "Autosave failed! Cannot open directory %1." msgstr "Automātiskās saglabāšanas kļūda! Nevar atvērt mapi %1." -#: ../src/inkscape.cpp:342 +#: ../src/inkscape.cpp:347 msgid "Autosaving documents..." msgstr "Automātiski saglabāju dokumentus" -#: ../src/inkscape.cpp:413 +#: ../src/inkscape.cpp:420 msgid "Autosave failed! Could not find inkscape extension to save document." msgstr "Neizdevās automātiski saglabāt! Nav iespējams atrast dokumenta saglabāšanai nepieciešamo Inkscape paplašinājumu." -#: ../src/inkscape.cpp:416 #: ../src/inkscape.cpp:423 +#: ../src/inkscape.cpp:430 #, c-format msgid "Autosave failed! File %s could not be saved." msgstr "Automātiskā saglabāšana neizdevās! Failu %s neizdevās saglabāt." -#: ../src/inkscape.cpp:438 +#: ../src/inkscape.cpp:445 msgid "Autosave complete." msgstr "Automātiskā saglabāšana pabeigta." -#: ../src/inkscape.cpp:684 +#: ../src/inkscape.cpp:691 msgid "Untitled document" msgstr "Nenosaukts dokuments" #. Show nice dialog box -#: ../src/inkscape.cpp:716 +#: ../src/inkscape.cpp:723 msgid "Inkscape encountered an internal error and will close now.\n" msgstr "Inkscape radās iekšēja kļūda un tagad tiks aizvērta.\n" -#: ../src/inkscape.cpp:717 +#: ../src/inkscape.cpp:724 msgid "Automatic backups of unsaved documents were done to the following locations:\n" msgstr "Nesaglabāto dokumentu automātiskās rezerves kopijas tika saglabātas sekojošās mapēs:\n" -#: ../src/inkscape.cpp:718 +#: ../src/inkscape.cpp:725 msgid "Automatic backup of the following documents failed:\n" msgstr "Sekojošu dokumentu automātiskā rezerves kopēšana neizdevās:\n" @@ -9106,7 +9101,7 @@ msgstr "Ievadiet (ieejiet) grupu(ā) #%1" #. Item dialog #: ../src/interface.cpp:1737 -#: ../src/verbs.cpp:2785 +#: ../src/verbs.cpp:2789 msgid "_Object Properties..." msgstr "_Objekta īpašības..." @@ -9175,7 +9170,7 @@ msgstr "Atbrīvot apgriešanas kontūru" #. Group #: ../src/interface.cpp:1879 -#: ../src/verbs.cpp:2424 +#: ../src/verbs.cpp:2428 msgid "_Group" msgstr "_Grupēt" @@ -9185,7 +9180,7 @@ msgstr "Izveidot saiti" #. Ungroup #: ../src/interface.cpp:1981 -#: ../src/verbs.cpp:2426 +#: ../src/verbs.cpp:2430 msgid "_Ungroup" msgstr "_Atgrupēt" @@ -9221,7 +9216,7 @@ msgstr "Labot ārējā redaktorā..." #. Trace Bitmap #. TRANSLATORS: "to trace" means "to convert a bitmap to vector graphics" (to vectorize) #: ../src/interface.cpp:2075 -#: ../src/verbs.cpp:2487 +#: ../src/verbs.cpp:2491 msgid "_Trace Bitmap..." msgstr "Vek_torizēt bitkarti..." @@ -9239,19 +9234,19 @@ msgstr "Ekstraģēt attēlu..." #. Fill and Stroke dialog #: ../src/interface.cpp:2235 #: ../src/interface.cpp:2255 -#: ../src/verbs.cpp:2748 +#: ../src/verbs.cpp:2752 msgid "_Fill and Stroke..." msgstr "_Aizpildījums un apmale..." #. Edit Text dialog #: ../src/interface.cpp:2261 -#: ../src/verbs.cpp:2765 +#: ../src/verbs.cpp:2769 msgid "_Text and Font..." msgstr "_Teksts un fonts" #. Spellcheck dialog #: ../src/interface.cpp:2267 -#: ../src/verbs.cpp:2773 +#: ../src/verbs.cpp:2777 msgid "Check Spellin_g..." msgstr "Pārbaudīt pareizrakstību" @@ -9318,7 +9313,6 @@ msgstr "Dokojamais elements, kam 'pieder' šis turis" #: ../src/widgets/text-toolbar.cpp:1430 #: ../share/extensions/gcodetools_graffiti.inx.h:9 #: ../share/extensions/gcodetools_orientation_points.inx.h:2 -#: ../share/extensions/hpgl_output.inx.h:7 msgid "Orientation" msgstr "Orientācija" @@ -9440,7 +9434,7 @@ msgstr "Jaunā doka vadīkla %p ir automātiska. Tikai ar roku dokojami objekti #: ../src/ui/dialog/align-and-distribute.cpp:1047 #: ../src/ui/dialog/document-properties.cpp:146 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1551 -#: ../src/widgets/desktop-widget.cpp:1919 +#: ../src/widgets/desktop-widget.cpp:1996 #: ../share/extensions/voronoi2svg.inx.h:9 msgid "Page" msgstr "Lapa" @@ -9450,7 +9444,7 @@ msgid "The index of the current page" msgstr "Pašreizējās lapas indekss" #: ../src/libgdl/gdl-dock-object.c:125 -#: ../src/ui/dialog/inkscape-preferences.cpp:1463 +#: ../src/ui/dialog/inkscape-preferences.cpp:1482 #: ../src/ui/widget/page-sizer.cpp:260 #: ../src/widgets/gradient-selector.cpp:156 #: ../src/widgets/sp-xmlview-attr-list.cpp:54 @@ -9527,7 +9521,7 @@ msgstr "Lipīgs" #: ../src/libgdl/gdl-dock-placeholder.c:142 msgid "Whether the placeholder will stick to its host or move up the hierarchy when the host is redocked" -msgstr "" +msgstr "Vai vietturis turēsies pie tā mītnes vai arī pārvietosies hierarhiski augšup, ja mītne tiks pārdokota" #: ../src/libgdl/gdl-dock-placeholder.c:149 msgid "Host" @@ -9543,28 +9537,12 @@ msgstr "Nākošais novietojums" #: ../src/libgdl/gdl-dock-placeholder.c:158 msgid "The position an item will be docked to our host if a request is made to dock to us" -msgstr "" - -#: ../src/libgdl/gdl-dock-placeholder.c:167 -#: ../src/libgdl/gdl-dock.c:191 -#: ../src/widgets/rect-toolbar.cpp:315 -#: ../src/widgets/spray-toolbar.cpp:132 -#: ../src/widgets/tweak-toolbar.cpp:146 -#: ../share/extensions/interp_att_g.inx.h:10 -msgid "Width" -msgstr "Platums" +msgstr "Pozīcija, kurā mūsu mītnē tiks dokots objekts, ja būs saņemts pieprasījums dokoties pie mums" #: ../src/libgdl/gdl-dock-placeholder.c:168 msgid "Width for the widget when it's attached to the placeholder" msgstr "Logrīka platums laikā, kad tas ir piesaistīts vietturim" -#: ../src/libgdl/gdl-dock-placeholder.c:175 -#: ../src/libgdl/gdl-dock.c:199 -#: ../src/widgets/rect-toolbar.cpp:332 -#: ../share/extensions/interp_att_g.inx.h:11 -msgid "Height" -msgstr "Augstums" - #: ../src/libgdl/gdl-dock-placeholder.c:176 msgid "Height for the widget when it's attached to the placeholder" msgstr "Logrīka augstums laikā, kad tas ir piesaistīts vietturim" @@ -9575,7 +9553,7 @@ msgstr "Peldošs augšējais līmenis" #: ../src/libgdl/gdl-dock-placeholder.c:183 msgid "Whether the placeholder is standing in for a floating toplevel dock" -msgstr "" +msgstr "Vai vietturis norāda uz peldošo augstākā līmeņa doku" #: ../src/libgdl/gdl-dock-placeholder.c:189 msgid "X Coordinate" @@ -9600,7 +9578,7 @@ msgstr "Mēģinājums dokot dokojamo objektu nesaistītā vietturī" #: ../src/libgdl/gdl-dock-placeholder.c:611 #, c-format msgid "Got a detach signal from an object (%p) who is not our host %p" -msgstr "" +msgstr "Saņemts atvienošanas signāls no objekta (%p), kas nav mūsu mītne %p" #: ../src/libgdl/gdl-dock-placeholder.c:636 #, c-format @@ -9613,7 +9591,7 @@ msgstr "Dokojamais elements, kam 'pieder' šī cilnes iezīme" #: ../src/libgdl/gdl-dock.c:176 #: ../src/ui/dialog/inkscape-preferences.cpp:631 -#: ../src/ui/dialog/inkscape-preferences.cpp:665 +#: ../src/ui/dialog/inkscape-preferences.cpp:674 msgid "Floating" msgstr "Peldošs" @@ -9793,7 +9771,7 @@ msgid "Power stroke" msgstr "Tekstūras apmale" #: ../src/live_effects/effect.cpp:124 -#: ../src/selection-chemistry.cpp:2759 +#: ../src/selection-chemistry.cpp:2792 msgid "Clone original path" msgstr "Klonēt sākotnējo ceļu" @@ -9941,35 +9919,35 @@ msgstr "Mērogot šuves ceļa platumu attiecībā pret tā garumu" #: ../src/live_effects/lpe-envelope.cpp:31 msgid "Top bend path:" -msgstr "" +msgstr "Augšējais liekšanas ceļš:" #: ../src/live_effects/lpe-envelope.cpp:31 msgid "Top path along which to bend the original path" -msgstr "Virsējais ceļš, gar kuru liekt sākotnējo ceļu" +msgstr "Virsējais ceļš, gar kuru liekt sākotnējo apmali" #: ../src/live_effects/lpe-envelope.cpp:32 msgid "Right bend path:" -msgstr "" +msgstr "Labais liekšanas ceļš:" #: ../src/live_effects/lpe-envelope.cpp:32 msgid "Right path along which to bend the original path" -msgstr "Labais ceļš, gar kuru liekt sākotnējo ceļu" +msgstr "Labais ceļš, gar kuru liekt sākotnējo apmali" #: ../src/live_effects/lpe-envelope.cpp:33 msgid "Bottom bend path:" -msgstr "" +msgstr "Apakšējais liekšanas ceļš:" #: ../src/live_effects/lpe-envelope.cpp:33 msgid "Bottom path along which to bend the original path" -msgstr "Apakšējais ceļš, gar kuru liekt sākotnējo ceļu" +msgstr "Apakšējais ceļš, gar kuru liekt sākotnējo apmali" #: ../src/live_effects/lpe-envelope.cpp:34 msgid "Left bend path:" -msgstr "" +msgstr "Kreisais liekšanas ceļš:" #: ../src/live_effects/lpe-envelope.cpp:34 msgid "Left path along which to bend the original path" -msgstr "Kreisais ceļš, gar kuru liekt sākotnējo ceļu" +msgstr "Kreisais ceļš, gar kuru liekt sākotnējo apmali" #: ../src/live_effects/lpe-envelope.cpp:35 msgid "E_nable left & right paths" @@ -10226,7 +10204,7 @@ msgstr "Ekstrapolēts" #: ../src/live_effects/lpe-powerstroke.cpp:223 msgid "Miter" -msgstr "" +msgstr "Salaidums" #: ../src/live_effects/lpe-powerstroke.cpp:224 #: ../src/widgets/pencil-toolbar.cpp:137 @@ -10257,6 +10235,11 @@ msgstr "Interpolēšanas tips:" msgid "Determines which kind of interpolator will be used to interpolate between stroke width along the path" msgstr "Nosaka interpolatora veidu, kas tiks izmantots apmales platuma interpolācijai gar ceļu" +#: ../src/live_effects/lpe-powerstroke.cpp:236 +#: ../share/extensions/fractalize.inx.h:3 +msgid "Smoothness:" +msgstr "Gludums:" + #: ../src/live_effects/lpe-powerstroke.cpp:236 msgid "Sets the smoothness for the CubicBezierJohan interpolator; 0 = linear interpolation, 1 = smooth" msgstr "Nosaka CubicBezierJohan interpolētāja gludumu; 0 = lineāra interpolācija, 1 = gluda" @@ -10283,12 +10266,12 @@ msgstr "Nosaka ceļa stūru formu" #: ../src/live_effects/lpe-powerstroke.cpp:239 msgid "Miter limit:" -msgstr "" +msgstr "Salaiduma ierobežojums" #: ../src/live_effects/lpe-powerstroke.cpp:239 #: ../src/widgets/stroke-style.cpp:271 msgid "Maximum length of the miter (in units of stroke width)" -msgstr "" +msgstr "Slaiduma maksimālais garums (apmales vienībās)" #: ../src/live_effects/lpe-powerstroke.cpp:240 msgid "End cap:" @@ -10638,7 +10621,7 @@ msgid "How many construction lines (tangents) to draw" msgstr "Cik daudz palīglīniju (tangenšu) zīmēt" #: ../src/live_effects/lpe-sketch.cpp:58 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2653 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 #: ../share/extensions/render_alphabetsoup.inx.h:3 msgid "Scale:" msgstr "Izmērs:" @@ -10689,7 +10672,7 @@ msgstr "maks. izliekums" #: ../src/live_effects/lpe-vonkoch.cpp:47 msgid "N_r of generations:" -msgstr "" +msgstr "Ģene_rāciju skaits:" #: ../src/live_effects/lpe-vonkoch.cpp:47 msgid "Depth of the recursion --- keep low!!" @@ -10697,7 +10680,7 @@ msgstr "Rekursijas dziļums --- saglabājiet zemu!" #: ../src/live_effects/lpe-vonkoch.cpp:48 msgid "Generating path:" -msgstr "" +msgstr "Ģenerē ceļus:" #: ../src/live_effects/lpe-vonkoch.cpp:48 msgid "Path whose segments define the iterated transforms" @@ -10713,11 +10696,11 @@ msgstr "2 secīgi posmi tiek izmantoti tikai orientācijas apgriešanai/saglabā #: ../src/live_effects/lpe-vonkoch.cpp:50 msgid "Dra_w all generations" -msgstr "" +msgstr "_Zīmēt visas ģenerācijas" #: ../src/live_effects/lpe-vonkoch.cpp:50 msgid "If unchecked, draw only the last generation" -msgstr "" +msgstr "Ja atspējots, zīmēt tikai pēdējo ģenerāciju" #. ,draw_boxes(_("Display boxes"), _("Display boxes instead of paths only"), "draw_boxes", &wr, this, true) #: ../src/live_effects/lpe-vonkoch.cpp:52 @@ -10748,12 +10731,12 @@ msgstr "Mainīt Bula parametru" msgid "Change enumeration parameter" msgstr "Mainīt numurēšanas parametru" -#: ../src/live_effects/parameter/originalpath.cpp:62 +#: ../src/live_effects/parameter/originalpath.cpp:70 #: ../src/live_effects/parameter/path.cpp:194 msgid "Link to path" msgstr "Piesaistīt ceļam" -#: ../src/live_effects/parameter/originalpath.cpp:74 +#: ../src/live_effects/parameter/originalpath.cpp:82 msgid "Select original" msgstr "Atlasīt oriģinālu" @@ -10816,217 +10799,239 @@ msgstr "Nav iespējams atrast komandrindā norādīto darbības vārdu ar ID '%s msgid "Unable to find node ID: '%s'\n" msgstr "Nevar atrast mezgla ID: '%s'\n" -#: ../src/main.cpp:271 +#: ../src/main.cpp:280 msgid "Print the Inkscape version number" msgstr "Izdrukāt Inkscape versijas numuru" -#: ../src/main.cpp:276 +#: ../src/main.cpp:285 msgid "Do not use X server (only process files from console)" msgstr "Neizmantot X serveri (apstrādāt failus tikai no komandrindas)" -#: ../src/main.cpp:281 +#: ../src/main.cpp:290 msgid "Try to use X server (even if $DISPLAY is not set)" msgstr "Mēģiniet izmantot X serveri (pat ja $DISPLAY nav iestatīts)" -#: ../src/main.cpp:286 +#: ../src/main.cpp:295 msgid "Open specified document(s) (option string may be excluded)" msgstr "Atvērt norādīto(s) dokumentu(s) (atslēgu virkne var tikt ignorēta)" -#: ../src/main.cpp:287 -#: ../src/main.cpp:292 -#: ../src/main.cpp:297 -#: ../src/main.cpp:364 -#: ../src/main.cpp:369 -#: ../src/main.cpp:374 -#: ../src/main.cpp:379 -#: ../src/main.cpp:390 +#: ../src/main.cpp:296 +#: ../src/main.cpp:301 +#: ../src/main.cpp:306 +#: ../src/main.cpp:378 +#: ../src/main.cpp:383 +#: ../src/main.cpp:388 +#: ../src/main.cpp:399 +#: ../src/main.cpp:416 msgid "FILENAME" msgstr "FAILA NOSAUKUMS" -#: ../src/main.cpp:291 +#: ../src/main.cpp:300 msgid "Print document(s) to specified output file (use '| program' for pipe)" msgstr "Drukāt dokumentu(s) uz norādīto izvades failu (izmantojiet ' | programma' konveijerapstrādei) " -#: ../src/main.cpp:296 +#: ../src/main.cpp:305 msgid "Export document to a PNG file" msgstr "Eksportēt dokumentu PNG failā" -#: ../src/main.cpp:301 +#: ../src/main.cpp:310 msgid "Resolution for exporting to bitmap and for rasterization of filters in PS/EPS/PDF (default 90)" msgstr "Izšķirtspēja bitkaršu eksportam un filtru rastrēšanai PS/EPS/PDF (noklusētais - 90)" -#: ../src/main.cpp:302 +#: ../src/main.cpp:311 #: ../src/ui/widget/rendering-options.cpp:34 msgid "DPI" msgstr "DPI" -#: ../src/main.cpp:306 +#: ../src/main.cpp:315 msgid "Exported area in SVG user units (default is the page; 0,0 is lower-left corner)" msgstr "Eksportējamais laukums SVG izmantotajās vienībās (noklusētais - lapa, 0,0 apzīmē apakšējo kreiso stūri)" -#: ../src/main.cpp:307 +#: ../src/main.cpp:316 msgid "x0:y0:x1:y1" msgstr "x0:y0:x1:y1" -#: ../src/main.cpp:311 +#: ../src/main.cpp:320 msgid "Exported area is the entire drawing (not page)" msgstr "Eksportētais apgabals ir viss zīmējums (nevis lapa)" -#: ../src/main.cpp:316 +#: ../src/main.cpp:325 msgid "Exported area is the entire page" msgstr "Eksportētais apgabals ir visa lapa" -#: ../src/main.cpp:321 +#: ../src/main.cpp:330 +msgid "Only for PS/EPS/PDF, sets margin in mm around exported area (default 0)" +msgstr "Tikai PS/EPS/PDF, iestata apmali ap eksportēto laukumu, mm (noklusētais - 0)" + +#: ../src/main.cpp:331 +#: ../src/main.cpp:373 +msgid "VALUE" +msgstr "VĒRTĪBA" + +#: ../src/main.cpp:335 msgid "Snap the bitmap export area outwards to the nearest integer values (in SVG user units)" msgstr "Piesaistīt bitkartes eksportējamo apgabalu tuvākajai veselajai vērtībai (SVG lietotāja vienībās)" -#: ../src/main.cpp:326 +#: ../src/main.cpp:340 msgid "The width of exported bitmap in pixels (overrides export-dpi)" msgstr "Eksportētās bitkartes platums pikseļos (neievēro export-dpi)" -#: ../src/main.cpp:327 +#: ../src/main.cpp:341 msgid "WIDTH" msgstr "PLATUMS" -#: ../src/main.cpp:331 +#: ../src/main.cpp:345 msgid "The height of exported bitmap in pixels (overrides export-dpi)" msgstr "Eksportētās bitkartes augstums pikseļos (neievēro export-dpi)" -#: ../src/main.cpp:332 +#: ../src/main.cpp:346 msgid "HEIGHT" msgstr "AUGSTUMS" -#: ../src/main.cpp:336 +#: ../src/main.cpp:350 msgid "The ID of the object to export" msgstr "Eksportējamā objekta ID" -#: ../src/main.cpp:337 -#: ../src/main.cpp:435 -#: ../src/ui/dialog/inkscape-preferences.cpp:1466 +#: ../src/main.cpp:351 +#: ../src/main.cpp:461 +#: ../src/ui/dialog/inkscape-preferences.cpp:1485 msgid "ID" msgstr "ID" #. TRANSLATORS: this means: "Only export the object whose id is given in --export-id". #. See "man inkscape" for details. -#: ../src/main.cpp:343 +#: ../src/main.cpp:357 msgid "Export just the object with export-id, hide all others (only with export-id)" msgstr "Eksportēt tikai objektus ar uzstādītu export-id, slēpt visus pārējos" -#: ../src/main.cpp:348 +#: ../src/main.cpp:362 msgid "Use stored filename and DPI hints when exporting (only with export-id)" msgstr "Eksportējot izmantot saglabāto faila nosaukumu un DPI norādes (tikai ar export-id)" -#: ../src/main.cpp:353 +#: ../src/main.cpp:367 msgid "Background color of exported bitmap (any SVG-supported color string)" msgstr "Eksportētās bitkartes fona krāsa (jebkura SVG atbalstīta krāsu virkne)" -#: ../src/main.cpp:354 +#: ../src/main.cpp:368 msgid "COLOR" msgstr "Krāsa" -#: ../src/main.cpp:358 +#: ../src/main.cpp:372 msgid "Background opacity of exported bitmap (either 0.0 to 1.0, or 1 to 255)" msgstr "Eksportētās bitkartes fona necaurspīdība (vai nu no 0.0 līdz 1.0 vai 1 līdz 255)" -#: ../src/main.cpp:359 -msgid "VALUE" -msgstr "VĒRTĪBA" - -#: ../src/main.cpp:363 +#: ../src/main.cpp:377 msgid "Export document to plain SVG file (no sodipodi or inkscape namespaces)" msgstr "Eksportēt dokumentu kā vienkāršu SVG failu (bez sodipodi vai inkscape vārdu laukiem)" -#: ../src/main.cpp:368 +#: ../src/main.cpp:382 msgid "Export document to a PS file" msgstr "Eksportēt dokumentu PS failā" -#: ../src/main.cpp:373 +#: ../src/main.cpp:387 msgid "Export document to an EPS file" msgstr "Eksportēt dokumentu EPS failā" -#: ../src/main.cpp:378 +#: ../src/main.cpp:392 +msgid "Choose the PostScript Level used to export. Possible choices are 2 (the default) and 3" +msgstr "Izvēlieties Postscript līmeni, ko izmantot eksportam. Iespējas ir divas - 2 (noklusētais) un 3." + +#: ../src/main.cpp:394 +msgid "PS Level" +msgstr "PS Līmenis" + +#: ../src/main.cpp:398 msgid "Export document to a PDF file" msgstr "Eksportēt dokumentu PDF failā" -#: ../src/main.cpp:383 +#. TRANSLATORS: "--export-pdf-version" is an Inkscape command line option; see "inkscape --help" +#: ../src/main.cpp:404 +msgid "Export PDF to given version. (hint: make sure to input the exact string found in the PDF export dialog, e.g. \"PDF 1.4\" which is PDF-a conformant)" +msgstr "Eksportēt norādītās versijas PDF. (padoms: pārliecinieties, ka esat ievadījuši precīzu virkni, kāda ir redzama PDF eksporta dialoglodziņā. piemēram: \"PDF 1.4\", kas ir atbilstošs PDF-a)" + +#: ../src/main.cpp:405 +msgid "PDF_VERSION" +msgstr "PDF_VERSION" + +#: ../src/main.cpp:409 msgid "Export PDF/PS/EPS without text. Besides the PDF/PS/EPS, a LaTeX file is exported, putting the text on top of the PDF/PS/EPS file. Include the result in LaTeX like: \\input{latexfile.tex}" msgstr "Eksportēt PDF/PS/EPS bez teksta. Papildu PDF/PS/EPS failam, tiek eksportēts LaTeX fails, kas novieto tekstu virs PDF/PS/EPS faila. Iekļaut rezultātu LaTeX failā sekojošā formā: \\input{latexfile.tex}" -#: ../src/main.cpp:389 +#: ../src/main.cpp:415 msgid "Export document to an Enhanced Metafile (EMF) File" msgstr "Eksportēt dokumentu Paplašinātā metafaila formātā (Enhanced Metafile, EMF)" -#: ../src/main.cpp:395 +#: ../src/main.cpp:421 msgid "Convert text object to paths on export (PS, EPS, PDF, SVG)" msgstr "Eksportējot pārvērst teksta objektus par ceļiem (PS, EPS, PDF, SVG)" -#: ../src/main.cpp:400 +#: ../src/main.cpp:426 msgid "Render filtered objects without filters, instead of rasterizing (PS, EPS, PDF)" msgstr "Rastrēšanas vietā renderēt filtrētos objektus bez filtriem (PS, EPS, PDF)" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:406 +#: ../src/main.cpp:432 msgid "Query the X coordinate of the drawing or, if specified, of the object with --query-id" msgstr "Pārbaudīt attēla, vai , ja norādīts, objekta, X koordināti ar --query-id" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:412 +#: ../src/main.cpp:438 msgid "Query the Y coordinate of the drawing or, if specified, of the object with --query-id" msgstr "Pārbaudīt attēla, vai , ja norādīts, objekta, Y koordināti ar --query-id" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:418 +#: ../src/main.cpp:444 msgid "Query the width of the drawing or, if specified, of the object with --query-id" msgstr "Pārbaudīt attēla, vai , ja norādīts, objekta, platumu ar --query-id" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:424 +#: ../src/main.cpp:450 msgid "Query the height of the drawing or, if specified, of the object with --query-id" msgstr "Pārbaudīt attēla, vai , ja norādīts, objekta, augstumu ar --query-id" -#: ../src/main.cpp:429 +#: ../src/main.cpp:455 msgid "List id,x,y,w,h for all objects" msgstr "Rādīt id,x,y,w,h visiem objektiem" -#: ../src/main.cpp:434 +#: ../src/main.cpp:460 msgid "The ID of the object whose dimensions are queried" msgstr "ID objektam, kura izmēri tiek noskaidroti" #. TRANSLATORS: this option makes Inkscape print the name (path) of the extension directory -#: ../src/main.cpp:440 +#: ../src/main.cpp:466 msgid "Print out the extension directory and exit" msgstr "Izdrukāt paplašinājumu mapes saturu un iziet" -#: ../src/main.cpp:445 +#: ../src/main.cpp:471 msgid "Remove unused definitions from the defs section(s) of the document" msgstr "Aizvākt neizmantotās definīcijas no dokumenta definīciju sadaļas (-ām)" -#: ../src/main.cpp:450 +#: ../src/main.cpp:476 msgid "List the IDs of all the verbs in Inkscape" msgstr "Parādīt visu Inkscape darbības vārdu ID sarakstu" -#: ../src/main.cpp:455 +#: ../src/main.cpp:481 msgid "Verb to call when Inkscape opens." msgstr "Inkscape atveroties izsaucamais darbības vārds." -#: ../src/main.cpp:456 +#: ../src/main.cpp:482 msgid "VERB-ID" msgstr "DARBV-ID" -#: ../src/main.cpp:460 +#: ../src/main.cpp:486 msgid "Object ID to select when Inkscape opens." msgstr "Inkscape atveroties atlasāmā objekta ID." -#: ../src/main.cpp:461 +#: ../src/main.cpp:487 msgid "OBJECT-ID" msgstr "OBJEKTA ID" -#: ../src/main.cpp:465 +#: ../src/main.cpp:491 msgid "Start Inkscape in interactive shell mode." msgstr "Palaist Inkscape interaktīvās čaulas režīmā" -#: ../src/main.cpp:809 -#: ../src/main.cpp:1166 +#: ../src/main.cpp:835 +#: ../src/main.cpp:1192 msgid "" "[OPTIONS...] [FILE...]\n" "\n" @@ -11038,7 +11043,7 @@ msgstr "" #. ## Add a menu for clear() #: ../src/menus-skeleton.h:16 -#: ../src/ui/dialog/debug.cpp:79 +#: ../src/ui/dialog/debug.cpp:83 msgid "_File" msgstr "_Fails" @@ -11049,13 +11054,13 @@ msgstr "Jau_ns" #. " \n" #. " \n" #: ../src/menus-skeleton.h:43 -#: ../src/verbs.cpp:2570 -#: ../src/verbs.cpp:2576 +#: ../src/verbs.cpp:2574 +#: ../src/verbs.cpp:2580 msgid "_Edit" msgstr "Labot" #: ../src/menus-skeleton.h:53 -#: ../src/verbs.cpp:2336 +#: ../src/verbs.cpp:2340 msgid "Paste Si_ze" msgstr "Ielīmēt i_wzmēru" @@ -11116,27 +11121,23 @@ msgstr "Mas_ka" msgid "Patter_n" msgstr "Faktū_ra" -#: ../src/menus-skeleton.h:202 -msgid "Symbo_l" -msgstr "Simbol_s" - -#: ../src/menus-skeleton.h:226 +#: ../src/menus-skeleton.h:222 msgid "_Path" msgstr "_Ceļš" -#: ../src/menus-skeleton.h:271 +#: ../src/menus-skeleton.h:267 msgid "Filter_s" msgstr " Filtri" -#: ../src/menus-skeleton.h:277 +#: ../src/menus-skeleton.h:273 msgid "Exte_nsions" msgstr "Paplaši_nājumi" -#: ../src/menus-skeleton.h:283 +#: ../src/menus-skeleton.h:279 msgid "_Help" msgstr "_Palīgs" -#: ../src/menus-skeleton.h:287 +#: ../src/menus-skeleton.h:283 msgid "Tutorials" msgstr "Pamācības" @@ -11177,7 +11178,7 @@ msgstr "Pārslēgts režģtīkla ceļa tips." #: ../src/mesh-context.cpp:426 msgid "Approximated arc for mesh side." -msgstr "" +msgstr "Tīkla malai tuvinātais loks." #: ../src/mesh-context.cpp:430 msgid "Toggled mesh tensors." @@ -11322,19 +11323,19 @@ msgstr "Objekts par ceļu" msgid "No objects to convert to path in the selection." msgstr "Atlasītajā nav par ceļu pārvēršamu objektu." -#: ../src/path-chemistry.cpp:602 +#: ../src/path-chemistry.cpp:610 msgid "Select path(s) to reverse." msgstr "Atlasiet otrādi apgriežamo(s) ceļu(s)." -#: ../src/path-chemistry.cpp:611 +#: ../src/path-chemistry.cpp:619 msgid "Reversing paths..." msgstr "Apgriež ceļu otrādi..." -#: ../src/path-chemistry.cpp:646 +#: ../src/path-chemistry.cpp:654 msgid "Reverse path" msgstr "Apgriezt ceļu otrādi" -#: ../src/path-chemistry.cpp:648 +#: ../src/path-chemistry.cpp:656 msgid "No paths to reverse in the selection." msgstr "Atlasītajā nav otrādi apgriežamu ceļu." @@ -11612,7 +11613,7 @@ msgid "Unique URI to a related document" msgstr "Unikāls URI uz šo dokumentu" #: ../src/rdf.cpp:264 -#: ../src/ui/dialog/inkscape-preferences.cpp:1818 +#: ../src/ui/dialog/inkscape-preferences.cpp:1837 msgid "Language:" msgstr "Valoda:" @@ -11632,7 +11633,7 @@ msgstr "Šī dokumenta temats ar komatu atdalītu atslēgas vārdu, frāžu vai #. For info, see Appendix D of http://www.w3.org/TR/1998/WD-rdf-schema-19980409/ #: ../src/rdf.cpp:272 msgid "Coverage:" -msgstr "" +msgstr "Segums:" #: ../src/rdf.cpp:273 msgid "Extent or scope of this document" @@ -11676,7 +11677,7 @@ msgstr "XML fragments RDF 'License' sadaļai" #: ../src/rect-context.cpp:352 msgid "Ctrl: make square or integer-ratio rect, lock a rounded corner circular" -msgstr "" +msgstr "Ctrl: izveidot kvadrātu vai taisnstūri ar veselu skaitļu malu attiecībām, saglabāt noapaļotos stūrus apaļus" #: ../src/rect-context.cpp:505 #, c-format @@ -11706,56 +11707,56 @@ msgstr "Izveidot taisnstūri" msgid "Fixup broken links" msgstr "Labot nederīgās saites" -#: ../src/select-context.cpp:175 +#: ../src/select-context.cpp:181 msgid "Click selection to toggle scale/rotation handles" msgstr "Uzklikšķiniet atlasītajam, lai pārslēgtu turu mērogošanu/griešanu" -#: ../src/select-context.cpp:176 +#: ../src/select-context.cpp:182 msgid "No objects selected. Click, Shift+click, Alt+scroll mouse on top of objects, or drag around objects to select." msgstr "Nav atlasīts neviens objekts. Atlasīšanai izmantojiet klikšķi, Shift+klikšķi, Alt+ritināšanu ar peli virs objektiem, vai apvelciet apkārt objektiem." -#: ../src/select-context.cpp:235 +#: ../src/select-context.cpp:241 msgid "Move canceled." msgstr "Pārvietošana atcelta." -#: ../src/select-context.cpp:243 +#: ../src/select-context.cpp:249 msgid "Selection canceled." msgstr "Atlasīšana atcelta." -#: ../src/select-context.cpp:615 +#: ../src/select-context.cpp:626 msgid "Draw over objects to select them; release Alt to switch to rubberband selection" -msgstr "" +msgstr "Velciet pāri objektiem lai tos atlasītu; atlaidiet Alt, lai pārslēgtos uz laso atlasi" -#: ../src/select-context.cpp:617 +#: ../src/select-context.cpp:628 msgid "Drag around objects to select them; press Alt to switch to touch selection" msgstr "Valciet apkāart objektiem, lai tos atlasītu; nospiediet Alt, lai pārslēgtos uz atlasi ar pieskārienu" -#: ../src/select-context.cpp:873 +#: ../src/select-context.cpp:900 msgid "Ctrl: click to select in groups; drag to move hor/vert" msgstr "Ctrl: klikšķiniet, lai atlasītu grupās; velciet, lai pārvietotu horizontāli/vertikāli" -#: ../src/select-context.cpp:874 +#: ../src/select-context.cpp:901 msgid "Shift: click to toggle select; drag for rubberband selection" msgstr "Shift: uzklikšķiniet, lai manītu atlasi, velciet laso atlasei" -#: ../src/select-context.cpp:875 +#: ../src/select-context.cpp:902 msgid "Alt: click to select under; scroll mouse-wheel to cycle-select; drag to move selected or select by touch" -msgstr "" +msgstr "Alt: klikšķis, lai atlasītu zem kursora esošo; ritiniet ar peles ritenīti, lai cikliski mainītu atlasīto; velciet, lai pārvietotu atlasīto vai atlasītu ar pieskārienu" -#: ../src/select-context.cpp:1046 +#: ../src/select-context.cpp:1073 msgid "Selected object is not a group. Cannot enter." msgstr "Izvēlētais objekts nav grupa. Nav iespējams ieiet." -#: ../src/selection-chemistry.cpp:347 +#: ../src/selection-chemistry.cpp:377 msgid "Delete text" msgstr "Dzēst tekstu" -#: ../src/selection-chemistry.cpp:355 +#: ../src/selection-chemistry.cpp:385 msgid "Nothing was deleted." msgstr "Nekas nav izdzēst." -#: ../src/selection-chemistry.cpp:373 -#: ../src/text-context.cpp:1008 +#: ../src/selection-chemistry.cpp:404 +#: ../src/text-context.cpp:1030 #: ../src/ui/dialog/calligraphic-profile-rename.cpp:75 #: ../src/ui/dialog/swatches.cpp:278 #: ../src/widgets/erasor-toolbar.cpp:114 @@ -11766,508 +11767,516 @@ msgstr "Nekas nav izdzēst." msgid "Delete" msgstr "Dzēst" -#: ../src/selection-chemistry.cpp:401 +#: ../src/selection-chemistry.cpp:432 msgid "Select object(s) to duplicate." msgstr "Atlasiet dublējamo(s) objektu(s)." -#: ../src/selection-chemistry.cpp:510 +#: ../src/selection-chemistry.cpp:541 msgid "Delete all" msgstr "Dzēst visu" -#: ../src/selection-chemistry.cpp:706 +#: ../src/selection-chemistry.cpp:737 msgid "Select some objects to group." msgstr "Grupēšanai atlasiet dažus objektus." -#: ../src/selection-chemistry.cpp:721 -#: ../src/selection-describer.cpp:53 +#: ../src/selection-chemistry.cpp:752 +#: ../src/selection-describer.cpp:54 msgid "Group" msgstr "Grupa" -#: ../src/selection-chemistry.cpp:735 +#: ../src/selection-chemistry.cpp:766 msgid "Select a group to ungroup." msgstr "Atlasiet atgrupējamo grupu." -#: ../src/selection-chemistry.cpp:776 +#: ../src/selection-chemistry.cpp:809 msgid "No groups to ungroup in the selection." msgstr "Atlasē nav atgrupējamu grupu." -#: ../src/selection-chemistry.cpp:782 -#: ../src/sp-item-group.cpp:475 +#: ../src/selection-chemistry.cpp:815 +#: ../src/sp-item-group.cpp:479 msgid "Ungroup" msgstr "Atgrupēt" -#: ../src/selection-chemistry.cpp:868 +#: ../src/selection-chemistry.cpp:901 msgid "Select object(s) to raise." msgstr "Izvēlieties objektu(s), kurus pacelt augstāk." -#: ../src/selection-chemistry.cpp:874 -#: ../src/selection-chemistry.cpp:934 +#: ../src/selection-chemistry.cpp:907 #: ../src/selection-chemistry.cpp:967 -#: ../src/selection-chemistry.cpp:1031 +#: ../src/selection-chemistry.cpp:1000 +#: ../src/selection-chemistry.cpp:1064 msgid "You cannot raise/lower objects from different groups or layers." msgstr "Jūs nevarat pacelt/nolaist objektus no dažādām grupām vai slāņiem." #. TRANSLATORS: "Raise" means "to raise an object" in the undo history -#: ../src/selection-chemistry.cpp:914 +#: ../src/selection-chemistry.cpp:947 msgctxt "Undo action" msgid "Raise" msgstr "Pacelt" -#: ../src/selection-chemistry.cpp:926 +#: ../src/selection-chemistry.cpp:959 msgid "Select object(s) to raise to top." msgstr "Izvēlieties objektu(s), kurus pacelt pašā augšā." -#: ../src/selection-chemistry.cpp:949 +#: ../src/selection-chemistry.cpp:982 msgid "Raise to top" msgstr "Pacelt pašā augšā" -#: ../src/selection-chemistry.cpp:961 +#: ../src/selection-chemistry.cpp:994 msgid "Select object(s) to lower." msgstr "Izvēlieties objektu(s), kurus nolaist zemāk." -#: ../src/selection-chemistry.cpp:1011 +#: ../src/selection-chemistry.cpp:1044 msgid "Lower" msgstr "Nolaist zemāk" -#: ../src/selection-chemistry.cpp:1023 +#: ../src/selection-chemistry.cpp:1056 msgid "Select object(s) to lower to bottom." msgstr "Izvēlieties objektu(s), kurus nolaist pašā apakšā." -#: ../src/selection-chemistry.cpp:1058 +#: ../src/selection-chemistry.cpp:1091 msgid "Lower to bottom" msgstr "Nolaist pašā augšā" -#: ../src/selection-chemistry.cpp:1065 +#: ../src/selection-chemistry.cpp:1098 msgid "Nothing to undo." msgstr "Nav ko atcelt." -#: ../src/selection-chemistry.cpp:1073 +#: ../src/selection-chemistry.cpp:1106 msgid "Nothing to redo." msgstr "Nav ko atkārtot." -#: ../src/selection-chemistry.cpp:1134 +#: ../src/selection-chemistry.cpp:1167 msgid "Paste" msgstr "Ielīmēt" -#: ../src/selection-chemistry.cpp:1142 +#: ../src/selection-chemistry.cpp:1175 msgid "Paste style" msgstr "Ielīmēt stilu" -#: ../src/selection-chemistry.cpp:1152 +#: ../src/selection-chemistry.cpp:1185 msgid "Paste live path effect" msgstr "Ielīmēt ceļa (LPE) efektu" -#: ../src/selection-chemistry.cpp:1173 +#: ../src/selection-chemistry.cpp:1206 msgid "Select object(s) to remove live path effects from." msgstr "Atlasiet objektu(s), no kuriem jāaizvāc ceļa (LPE) efekti." -#: ../src/selection-chemistry.cpp:1185 +#: ../src/selection-chemistry.cpp:1218 msgid "Remove live path effect" msgstr "Aizvākt ceļa (LPE) efektu" -#: ../src/selection-chemistry.cpp:1196 +#: ../src/selection-chemistry.cpp:1229 msgid "Select object(s) to remove filters from." msgstr "Atlasiet objektu(s), no kuriem jāaizvāc filtri." -#: ../src/selection-chemistry.cpp:1206 -#: ../src/ui/dialog/filter-effects-dialog.cpp:1447 +#: ../src/selection-chemistry.cpp:1239 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1448 msgid "Remove filter" msgstr "Aizvākt filtru" -#: ../src/selection-chemistry.cpp:1215 +#: ../src/selection-chemistry.cpp:1248 msgid "Paste size" msgstr "Ielīmēt izmērus" -#: ../src/selection-chemistry.cpp:1224 +#: ../src/selection-chemistry.cpp:1257 msgid "Paste size separately" msgstr "Ielīmēt izmērus atsevišķi" -#: ../src/selection-chemistry.cpp:1234 +#: ../src/selection-chemistry.cpp:1267 msgid "Select object(s) to move to the layer above." msgstr "Atlasiet objektu(s), ko pārvietot uz slāni virs pašreizējā." -#: ../src/selection-chemistry.cpp:1260 +#: ../src/selection-chemistry.cpp:1293 msgid "Raise to next layer" msgstr "Pacelt uz nākošo slāni" -#: ../src/selection-chemistry.cpp:1267 +#: ../src/selection-chemistry.cpp:1300 msgid "No more layers above." msgstr "Nav augstāka slāņa par šo." -#: ../src/selection-chemistry.cpp:1279 +#: ../src/selection-chemistry.cpp:1312 msgid "Select object(s) to move to the layer below." msgstr "Atlasiet objektu(s), ko pārvietot uz slāni zem pašreizējā." -#: ../src/selection-chemistry.cpp:1305 +#: ../src/selection-chemistry.cpp:1338 msgid "Lower to previous layer" msgstr "Nolaist uz iepriekšējo slāni" -#: ../src/selection-chemistry.cpp:1312 +#: ../src/selection-chemistry.cpp:1345 msgid "No more layers below." msgstr "Nav zemāka slāņa par šo." -#: ../src/selection-chemistry.cpp:1324 +#: ../src/selection-chemistry.cpp:1357 msgid "Select object(s) to move." msgstr "Atlasiet pārvietojamo(s) objektu(s)." -#: ../src/selection-chemistry.cpp:1341 -#: ../src/verbs.cpp:2513 +#: ../src/selection-chemistry.cpp:1374 +#: ../src/verbs.cpp:2517 msgid "Move selection to layer" msgstr "Pārvietot atlasīto uz slāni" -#: ../src/selection-chemistry.cpp:1565 +#: ../src/selection-chemistry.cpp:1598 msgid "Remove transform" msgstr "Aizvākt pārveidojumu" -#: ../src/selection-chemistry.cpp:1668 +#: ../src/selection-chemistry.cpp:1701 msgid "Rotate 90° CCW" msgstr "Pagriezt par 90° CCW" -#: ../src/selection-chemistry.cpp:1668 +#: ../src/selection-chemistry.cpp:1701 msgid "Rotate 90° CW" msgstr "Pagriezt par 90° CW" -#: ../src/selection-chemistry.cpp:1689 -#: ../src/seltrans.cpp:471 -#: ../src/ui/dialog/transformation.cpp:888 +#: ../src/selection-chemistry.cpp:1722 +#: ../src/seltrans.cpp:485 +#: ../src/ui/dialog/transformation.cpp:892 msgid "Rotate" msgstr "Pagriezt" -#: ../src/selection-chemistry.cpp:2068 +#: ../src/selection-chemistry.cpp:2101 msgid "Rotate by pixels" msgstr "Pagriezt pa pikseļiem" -#: ../src/selection-chemistry.cpp:2098 -#: ../src/seltrans.cpp:468 -#: ../src/ui/dialog/transformation.cpp:863 +#: ../src/selection-chemistry.cpp:2131 +#: ../src/seltrans.cpp:482 +#: ../src/ui/dialog/transformation.cpp:867 #: ../share/extensions/interp_att_g.inx.h:12 msgid "Scale" msgstr "Mērogot" -#: ../src/selection-chemistry.cpp:2123 +#: ../src/selection-chemistry.cpp:2156 msgid "Scale by whole factor" msgstr "Mērogot veselu skaitu reižu" -#: ../src/selection-chemistry.cpp:2138 +#: ../src/selection-chemistry.cpp:2171 msgid "Move vertically" msgstr "Pārvietot vertikāli" -#: ../src/selection-chemistry.cpp:2141 +#: ../src/selection-chemistry.cpp:2174 msgid "Move horizontally" msgstr "Pārvietot horizontāli" -#: ../src/selection-chemistry.cpp:2144 -#: ../src/selection-chemistry.cpp:2170 -#: ../src/seltrans.cpp:465 -#: ../src/ui/dialog/transformation.cpp:802 +#: ../src/selection-chemistry.cpp:2177 +#: ../src/selection-chemistry.cpp:2203 +#: ../src/seltrans.cpp:479 +#: ../src/ui/dialog/transformation.cpp:806 msgid "Move" msgstr "Pārvietot" -#: ../src/selection-chemistry.cpp:2164 +#: ../src/selection-chemistry.cpp:2197 msgid "Move vertically by pixels" msgstr "Pārvietot vertikāli pa pikseļiem" -#: ../src/selection-chemistry.cpp:2167 +#: ../src/selection-chemistry.cpp:2200 msgid "Move horizontally by pixels" msgstr "Pārvietot horizontāli pa pikseļiem" -#: ../src/selection-chemistry.cpp:2299 +#: ../src/selection-chemistry.cpp:2332 msgid "The selection has no applied path effect." msgstr "Atlasītajam nav pielietots neviens ceļa efekts." -#: ../src/selection-chemistry.cpp:2502 +#: ../src/selection-chemistry.cpp:2535 msgctxt "Action" msgid "Clone" msgstr "Klonēt" -#: ../src/selection-chemistry.cpp:2518 +#: ../src/selection-chemistry.cpp:2551 msgid "Select clones to relink." msgstr "Atlasiet klonus, kuriem jāatjauno piesaiste." -#: ../src/selection-chemistry.cpp:2525 +#: ../src/selection-chemistry.cpp:2558 msgid "Copy an object to clipboard to relink clones to." msgstr "Nokopējiet uz starpliktuvi objektu, kuram jāatjauno klonu saites." -#: ../src/selection-chemistry.cpp:2549 +#: ../src/selection-chemistry.cpp:2582 msgid "No clones to relink in the selection." msgstr "Atlasītajā nav klonu ar atjaunojamu piesaisti." -#: ../src/selection-chemistry.cpp:2552 +#: ../src/selection-chemistry.cpp:2585 msgid "Relink clone" msgstr "Atjaunot klona piesaisti" -#: ../src/selection-chemistry.cpp:2566 +#: ../src/selection-chemistry.cpp:2599 msgid "Select clones to unlink." msgstr "Atlasiet atsaistāmos klonus." -#: ../src/selection-chemistry.cpp:2620 +#: ../src/selection-chemistry.cpp:2653 msgid "No clones to unlink in the selection." msgstr "Atlasītajā nav atsaistāmu klonu." -#: ../src/selection-chemistry.cpp:2624 +#: ../src/selection-chemistry.cpp:2657 msgid "Unlink clone" msgstr "Atsaistīt klonu" -#: ../src/selection-chemistry.cpp:2637 +#: ../src/selection-chemistry.cpp:2670 msgid "Select a clone to go to its original. Select a linked offset to go to its source. Select a text on path to go to the path. Select a flowed text to go to its frame." msgstr "Atlasiet klonu, lai pārietu pie tā oriģināla. Atlasiet saistīto nobīdi, lai pārietu pie tās sākumpunkta. Atlasiet tekstu gar ceļu, lai pārietu pie ceļa. Atlasiet aizpildošo tekstu, lai pārietu pie tā rāmja." -#: ../src/selection-chemistry.cpp:2670 +#: ../src/selection-chemistry.cpp:2703 msgid "Cannot find the object to select (orphaned clone, offset, textpath, flowed text?)" msgstr "Nevar atrast atlasāma objektu (pamests klons, nobīde, teksta ceļš, teksta aizpildījums?)" -#: ../src/selection-chemistry.cpp:2676 +#: ../src/selection-chemistry.cpp:2709 msgid "The object you're trying to select is not visible (it is in <defs>)" msgstr "Objekts, ko mēģināt atlasīt, nav redzams (tas atrodas <defs>)" -#: ../src/selection-chemistry.cpp:2721 +#: ../src/selection-chemistry.cpp:2754 msgid "Select one path to clone." msgstr "Atlasiet vienu ceļu, kuru vēlaties klonēt." -#: ../src/selection-chemistry.cpp:2725 +#: ../src/selection-chemistry.cpp:2758 msgid "Select one path to clone." msgstr "Atlasiet vienu ceļu, kuru vēlaties klonēt." -#: ../src/selection-chemistry.cpp:2780 +#: ../src/selection-chemistry.cpp:2813 msgid "Select object(s) to convert to marker." msgstr "Atlasiet objektu(s), kurus vēlaties pārvērst par marķieriem." -#: ../src/selection-chemistry.cpp:2848 +#: ../src/selection-chemistry.cpp:2881 msgid "Objects to marker" msgstr "Objektus par marķieriem" -#: ../src/selection-chemistry.cpp:2876 +#: ../src/selection-chemistry.cpp:2909 msgid "Select object(s) to convert to guides." msgstr "Atlasiet objektu(s), kurus vēlaties pārvērst par palīglīnijām." -#: ../src/selection-chemistry.cpp:2888 +#: ../src/selection-chemistry.cpp:2921 msgid "Objects to guides" msgstr "Objektus par palīglīnijam" -#: ../src/selection-chemistry.cpp:2908 -msgid "Select one group to convert to symbol." -msgstr "Atlasiet vienu grupu, kuru vēlaties pārvērst par simbolu." - -#: ../src/selection-chemistry.cpp:2916 -msgid "Select only one group to convert to symbol." -msgstr "Atlasiet tikai vienu grupu, kuru vēlaties pārvērst par simbolu." +#: ../src/selection-chemistry.cpp:2940 +msgid "Select groups to convert to symbols." +msgstr "Atlasiet grupas, kuras vēlaties pārvērst par simboliem." -#: ../src/selection-chemistry.cpp:2922 -msgid "Select original (Shift+D) to convert to symbol." -msgstr "Atlasiet oriģinālu (Shift+D), kuru vēlaties pārvērst par simbolu." - -#: ../src/selection-chemistry.cpp:2928 -msgid "Group selection first to convert to symbol." -msgstr "Atlasiet objektu grupu pirms pārvēršanas par simbolu." +#: ../src/selection-chemistry.cpp:2960 +msgid "No groups converted to symbols." +msgstr "Nevienagrupa nav pārvērsta par simboliem." +#. Group just disappears, nothing to select. #: ../src/selection-chemistry.cpp:2967 msgid "Group to symbol" msgstr "Grupēt simbola virzienā" -#: ../src/selection-chemistry.cpp:2987 +#: ../src/selection-chemistry.cpp:3031 msgid "Select a symbol to extract objects from." msgstr "Atlasiet simbolu, no kura ekstraģēt objektus." -#: ../src/selection-chemistry.cpp:2995 -#: ../src/selection-chemistry.cpp:3001 +#: ../src/selection-chemistry.cpp:3040 msgid "Select only one symbol to convert to group." msgstr "Atlasiet tikai vienusimbolu, kurus vēlaties pārvērst par grupu." -#: ../src/selection-chemistry.cpp:3044 +#: ../src/selection-chemistry.cpp:3081 msgid "Group from symbol" msgstr "Grupēt virzienā no simbola" -#: ../src/selection-chemistry.cpp:3061 +#: ../src/selection-chemistry.cpp:3098 msgid "Select object(s) to convert to pattern." msgstr "Atlasiet objektu(s), kurus vēlaties pārvērst par faktūru." -#: ../src/selection-chemistry.cpp:3149 +#: ../src/selection-chemistry.cpp:3186 msgid "Objects to pattern" msgstr "Objektus par faktūru" -#: ../src/selection-chemistry.cpp:3165 +#: ../src/selection-chemistry.cpp:3202 msgid "Select an object with pattern fill to extract objects from." msgstr "Izvēlieties objektu ar faktūras aizpildījumu, no kura ekstraģēt objektus." -#: ../src/selection-chemistry.cpp:3218 +#: ../src/selection-chemistry.cpp:3255 msgid "No pattern fills in the selection." msgstr "Atlasītajā nav objektu ar faktūras aizpildījumu." -#: ../src/selection-chemistry.cpp:3221 +#: ../src/selection-chemistry.cpp:3258 msgid "Pattern to objects" msgstr "Faktūru par objektiem" -#: ../src/selection-chemistry.cpp:3312 +#: ../src/selection-chemistry.cpp:3349 msgid "Select object(s) to make a bitmap copy." msgstr "Atlasiet objektu(s) bitkartes kopijas izveidošanai." -#: ../src/selection-chemistry.cpp:3316 +#: ../src/selection-chemistry.cpp:3353 msgid "Rendering bitmap..." msgstr "Renderē bitkarti..." -#: ../src/selection-chemistry.cpp:3493 +#: ../src/selection-chemistry.cpp:3530 msgid "Create bitmap" msgstr "Izveidot bitkarti" -#: ../src/selection-chemistry.cpp:3525 +#: ../src/selection-chemistry.cpp:3562 msgid "Select object(s) to create clippath or mask from." msgstr "Atlasiet objektu(s) izgriešanas ceļa vai maskas izveidošanai." -#: ../src/selection-chemistry.cpp:3528 +#: ../src/selection-chemistry.cpp:3565 msgid "Select mask object and object(s) to apply clippath or mask to." msgstr "Atlasiet maskas objektu un objektu(s)izgriešanas ceļa vai maskas pielietošanai." -#: ../src/selection-chemistry.cpp:3709 +#: ../src/selection-chemistry.cpp:3746 msgid "Set clipping path" msgstr "Iestatiet izgriešanas ceļu" -#: ../src/selection-chemistry.cpp:3711 +#: ../src/selection-chemistry.cpp:3748 msgid "Set mask" msgstr "Iestatīt masku" -#: ../src/selection-chemistry.cpp:3726 +#: ../src/selection-chemistry.cpp:3763 msgid "Select object(s) to remove clippath or mask from." msgstr "Atlasiet objektu(s), kuram(-iem) noņemt izgriešanas ceļu vai masku." -#: ../src/selection-chemistry.cpp:3837 +#: ../src/selection-chemistry.cpp:3874 msgid "Release clipping path" msgstr "Atbrīvot izgriešanas ceļu" -#: ../src/selection-chemistry.cpp:3839 +#: ../src/selection-chemistry.cpp:3876 msgid "Release mask" msgstr "Atbrīvot masku" -#: ../src/selection-chemistry.cpp:3858 +#: ../src/selection-chemistry.cpp:3895 msgid "Select object(s) to fit canvas to." msgstr "Atlasiet objektu(s), kuriem pielāgot audekla izmēru." #. Fit Page -#: ../src/selection-chemistry.cpp:3878 -#: ../src/verbs.cpp:2839 +#: ../src/selection-chemistry.cpp:3915 +#: ../src/verbs.cpp:2843 msgid "Fit Page to Selection" msgstr "Pielāgot lapu atlasītajam" -#: ../src/selection-chemistry.cpp:3907 -#: ../src/verbs.cpp:2841 +#: ../src/selection-chemistry.cpp:3944 +#: ../src/verbs.cpp:2845 msgid "Fit Page to Drawing" msgstr "Pielāgot lapu zīmējumam" -#: ../src/selection-chemistry.cpp:3928 -#: ../src/verbs.cpp:2843 +#: ../src/selection-chemistry.cpp:3965 +#: ../src/verbs.cpp:2847 msgid "Fit Page to Selection or Drawing" msgstr "Pielāgojiet lapu atlasītajam vai zīmējumam" #. TRANSLATORS: "Link" means internet link (anchor) -#: ../src/selection-describer.cpp:45 +#: ../src/selection-describer.cpp:46 msgctxt "Web" msgid "Link" msgstr "Saite" -#: ../src/selection-describer.cpp:47 +#: ../src/selection-describer.cpp:48 msgid "Circle" msgstr "Aplis" #. Ellipse -#: ../src/selection-describer.cpp:49 -#: ../src/selection-describer.cpp:74 +#: ../src/selection-describer.cpp:50 +#: ../src/selection-describer.cpp:77 #: ../src/ui/dialog/inkscape-preferences.cpp:403 #: ../src/widgets/pencil-toolbar.cpp:192 msgid "Ellipse" msgstr "Elipse" -#: ../src/selection-describer.cpp:51 +#: ../src/selection-describer.cpp:52 msgid "Flowed text" msgstr "Teksta aizpildījums" -#: ../src/selection-describer.cpp:57 +#: ../src/selection-describer.cpp:58 msgid "Line" msgstr "Līnija" -#: ../src/selection-describer.cpp:59 +#: ../src/selection-describer.cpp:60 msgid "Path" msgstr "Kontūra" -#: ../src/selection-describer.cpp:61 +#: ../src/selection-describer.cpp:62 #: ../src/widgets/star-toolbar.cpp:474 msgid "Polygon" msgstr "Daudzstūris" -#: ../src/selection-describer.cpp:63 +#: ../src/selection-describer.cpp:64 msgid "Polyline" msgstr "Lauzta līnija" #. Rectangle -#: ../src/selection-describer.cpp:65 +#: ../src/selection-describer.cpp:66 #: ../src/ui/dialog/inkscape-preferences.cpp:393 msgid "Rectangle" msgstr "Taisnstūris" #. 3D box -#: ../src/selection-describer.cpp:67 +#: ../src/selection-describer.cpp:68 #: ../src/ui/dialog/inkscape-preferences.cpp:398 msgid "3D Box" msgstr "3D paralēlskaldnis" -#: ../src/selection-describer.cpp:69 +#: ../src/selection-describer.cpp:70 msgctxt "Object" msgid "Text" msgstr "Teksts" +#: ../src/selection-describer.cpp:73 +msgctxt "Object" +msgid "Symbol" +msgstr "Simbols" + #. TRANSLATORS: "Clone" is a noun, type of object -#: ../src/selection-describer.cpp:72 +#: ../src/selection-describer.cpp:75 msgctxt "Object" msgid "Clone" msgstr "Klonēšana" -#: ../src/selection-describer.cpp:76 +#: ../src/selection-describer.cpp:79 #: ../share/extensions/gcodetools_lathe.inx.h:9 msgid "Offset path" msgstr "Nobīdes ceļš" #. Spiral -#: ../src/selection-describer.cpp:78 +#: ../src/selection-describer.cpp:81 #: ../src/ui/dialog/inkscape-preferences.cpp:411 #: ../share/extensions/gcodetools_area.inx.h:11 msgid "Spiral" msgstr "Spirāle" #. Star -#: ../src/selection-describer.cpp:80 +#: ../src/selection-describer.cpp:83 #: ../src/ui/dialog/inkscape-preferences.cpp:407 #: ../src/widgets/star-toolbar.cpp:481 msgid "Star" msgstr "Zvaigzne" -#: ../src/selection-describer.cpp:150 +#: ../src/selection-describer.cpp:153 msgid "root" msgstr "sakne" -#: ../src/selection-describer.cpp:162 +#: ../src/selection-describer.cpp:155 +#: ../src/widgets/ege-paint-def.cpp:67 +#: ../src/widgets/ege-paint-def.cpp:91 +msgid "none" +msgstr "nekas" + +#: ../src/selection-describer.cpp:167 #, c-format msgid "layer %s" msgstr "slānis %s" -#: ../src/selection-describer.cpp:164 +#: ../src/selection-describer.cpp:169 #, c-format msgid "layer %s" msgstr "slānis %s" -#: ../src/selection-describer.cpp:173 +#: ../src/selection-describer.cpp:178 #, c-format msgid "%s" msgstr "%s" -#: ../src/selection-describer.cpp:182 +#: ../src/selection-describer.cpp:187 #, c-format msgid " in %s" msgstr " iekš %s" -#: ../src/selection-describer.cpp:184 +#: ../src/selection-describer.cpp:189 +#, c-format +msgid " hidden in definitions" +msgstr " paslēpts definīcijās" + +#: ../src/selection-describer.cpp:191 #, c-format msgid " in group %s (%s)" msgstr "grupā %s (%s)" -#: ../src/selection-describer.cpp:186 +#: ../src/selection-describer.cpp:193 #, c-format msgid " in %i parents (%s)" msgid_plural " in %i parents (%s)" @@ -12275,7 +12284,7 @@ msgstr[0] " %i vecākos (%s)" msgstr[1] " %i vecākos (%s)" msgstr[2] " %i vecākos (%s)" -#: ../src/selection-describer.cpp:189 +#: ../src/selection-describer.cpp:196 #, c-format msgid " in %i layers" msgid_plural " in %i layers" @@ -12283,26 +12292,31 @@ msgstr[0] "%i slānī" msgstr[1] "%i slāņos" msgstr[2] "%i slāņos" -#: ../src/selection-describer.cpp:199 +#: ../src/selection-describer.cpp:206 msgid "Convert symbol to group to edit" msgstr "Ērtākai labošanai pārvērst simbolu par grupu" -#: ../src/selection-describer.cpp:203 +#: ../src/selection-describer.cpp:210 +#, fuzzy +msgid "Remove from symbols tray to edit symbol" +msgstr "Simbola labošanai izņemiet to no simbolu ...." + +#: ../src/selection-describer.cpp:214 msgid "Use Shift+D to look up original" msgstr "Izmantojiet Shift+D, lai sameklētu oriģinālu" -#: ../src/selection-describer.cpp:207 +#: ../src/selection-describer.cpp:218 msgid "Use Shift+D to look up path" msgstr "Izmantojiet Shift+D, lai sameklētu ceļu" -#: ../src/selection-describer.cpp:211 +#: ../src/selection-describer.cpp:222 msgid "Use Shift+D to look up frame" msgstr "Izmantojiet Shift+D, lai sameklētu rāmi" #. this is only used with 2 or more objects -#: ../src/selection-describer.cpp:226 +#: ../src/selection-describer.cpp:237 #: ../src/spray-context.cpp:203 -#: ../src/tweak-context.cpp:180 +#: ../src/tweak-context.cpp:189 #, c-format msgid "%i object selected" msgid_plural "%i objects selected" @@ -12311,7 +12325,7 @@ msgstr[1] "izvēlēti %i objekti" msgstr[2] "izvēlēti %i objekti" #. this is only used with 2 or more objects -#: ../src/selection-describer.cpp:231 +#: ../src/selection-describer.cpp:242 #, c-format msgid "%i object of type %s" msgid_plural "%i objects of type %s" @@ -12320,7 +12334,7 @@ msgstr[1] "%i objekti ar tipu %s" msgstr[2] "%i objekti ar tipu %s" #. this is only used with 2 or more objects -#: ../src/selection-describer.cpp:236 +#: ../src/selection-describer.cpp:247 #, c-format msgid "%i object of types %s, %s" msgid_plural "%i objects of types %s, %s" @@ -12329,7 +12343,7 @@ msgstr[1] "%i objekti ar tipiem %s, %s" msgstr[2] "%i objekti ar tipiem %s, %s" #. this is only used with 2 or more objects -#: ../src/selection-describer.cpp:241 +#: ../src/selection-describer.cpp:252 #, c-format msgid "%i object of types %s, %s, %s" msgid_plural "%i objects of types %s, %s, %s" @@ -12338,7 +12352,7 @@ msgstr[1] "%i objekti ar tipiem %s, %s, %s" msgstr[2] "%i objekti ar tipiem %s, %s, %s" #. this is only used with 2 or more objects -#: ../src/selection-describer.cpp:246 +#: ../src/selection-describer.cpp:257 #, c-format msgid "%i object of %i types" msgid_plural "%i objects of %i types" @@ -12346,7 +12360,7 @@ msgstr[0] "%i objekts ar tipiem %i" msgstr[1] "%i objekti ar tipiem %i" msgstr[2] "%i objekti ar tipiem %i" -#: ../src/selection-describer.cpp:256 +#: ../src/selection-describer.cpp:267 #, c-format msgid "; %d filtered object " msgid_plural "; %d filtered objects " @@ -12354,69 +12368,69 @@ msgstr[0] "; %d filtrēts objekts " msgstr[1] "; %d filtrēti objekti " msgstr[2] "; %d filtrēti objekti " -#: ../src/seltrans.cpp:474 -#: ../src/ui/dialog/transformation.cpp:946 +#: ../src/seltrans.cpp:488 +#: ../src/ui/dialog/transformation.cpp:950 msgid "Skew" msgstr "Sašķiebt" -#: ../src/seltrans.cpp:486 +#: ../src/seltrans.cpp:500 msgid "Set center" msgstr "Iestatīt centru" -#: ../src/seltrans.cpp:561 +#: ../src/seltrans.cpp:575 msgid "Stamp" msgstr "Zīmogs" -#: ../src/seltrans.cpp:590 +#: ../src/seltrans.cpp:604 msgid "Squeeze or stretch selection; with Ctrl to scale uniformly; with Shift to scale around rotation center" msgstr "Saspiest vai izstiept atlasīto; ar Ctrl - mērogot vienmērīgi; ar Shift - mērogot attiecībā pret griešanās centru" -#: ../src/seltrans.cpp:591 +#: ../src/seltrans.cpp:605 msgid "Scale selection; with Ctrl to scale uniformly; with Shift to scale around rotation center" msgstr "Mērogot atlasīto; ar Ctrl - mērogot vienmērīgi; ar Shift - mērogot attiecībā pret griešanās centru" -#: ../src/seltrans.cpp:595 +#: ../src/seltrans.cpp:609 msgid "Skew selection; with Ctrl to snap angle; with Shift to skew around the opposite side" msgstr "Šķiebt atlasīto; ar Ctrl - piesaistīt leņķim; ar Shift - šķiebt gar pretējo malu" -#: ../src/seltrans.cpp:596 +#: ../src/seltrans.cpp:610 msgid "Rotate selection; with Ctrl to snap angle; with Shift to rotate around the opposite corner" msgstr "Griezt atlasīto; ar Ctrl - piesaistīt leņķim; ar Shift - griezt ap pretējo stūri" -#: ../src/seltrans.cpp:609 +#: ../src/seltrans.cpp:623 msgid "Center of rotation and skewing: drag to reposition; scaling with Shift also uses this center" msgstr "Griešanas un šķiebšanas centrs: velciet, lai manītu novietojumu; mērogošana ar Shift arī lieto šo centru" -#: ../src/seltrans.cpp:759 +#: ../src/seltrans.cpp:773 msgid "Reset center" msgstr "Atiestatīt centru" -#: ../src/seltrans.cpp:994 -#: ../src/seltrans.cpp:1091 +#: ../src/seltrans.cpp:1017 +#: ../src/seltrans.cpp:1114 #, c-format msgid "Scale: %0.2f%% x %0.2f%%; with Ctrl to lock ratio" msgstr "Mērogot: %0.2f%% x %0.2f%%; ar Ctrl - slēgt attiecību" #. TRANSLATORS: don't modify the first ";" #. (it will NOT be displayed as ";" - only the second one will be) -#: ../src/seltrans.cpp:1205 +#: ../src/seltrans.cpp:1228 #, c-format msgid "Skew: %0.2f°; with Ctrl to snap angle" msgstr "Šķiebt: %0.2f°; ar Ctrl - piesaistīt leņķim" #. TRANSLATORS: don't modify the first ";" #. (it will NOT be displayed as ";" - only the second one will be) -#: ../src/seltrans.cpp:1280 +#: ../src/seltrans.cpp:1303 #, c-format msgid "Rotate: %0.2f°; with Ctrl to snap angle" msgstr "Griezt: %0.2f°; ar Ctrl - piesaistīt leņķim" -#: ../src/seltrans.cpp:1315 +#: ../src/seltrans.cpp:1338 #, c-format msgid "Move center to %s, %s" msgstr "Pārvietot centru uz %s, %s" -#: ../src/seltrans.cpp:1491 +#: ../src/seltrans.cpp:1514 #, c-format msgid "Move by %s, %s; with Ctrl to restrict to horizontal/vertical; with Shift to disable snapping" msgstr "Pārvietot par %s, %s; ar Ctrl - lai ierobežotu horizontāli/vertikāli; ar Shift - atslēgt piesaisti" @@ -12476,7 +12490,7 @@ msgid "Create Guides Around the Page" msgstr "Izveidot palīglīnijas apkārt lapai" #: ../src/sp-guide.cpp:302 -#: ../src/verbs.cpp:2410 +#: ../src/verbs.cpp:2414 msgid "Delete All Guides" msgstr "Dzēst visas palīglīnijas" @@ -12505,21 +12519,21 @@ msgstr "horizontāli, pie %s" msgid "at %d degrees, through (%s,%s)" msgstr "%d grādos, caur (%s,%s)" -#: ../src/sp-image.cpp:1063 +#: ../src/sp-image.cpp:1068 msgid "embedded" msgstr "iegults" -#: ../src/sp-image.cpp:1071 +#: ../src/sp-image.cpp:1076 #, c-format msgid "Image with bad reference: %s" msgstr "Attēls ar nederīgu atsauci: %s" -#: ../src/sp-image.cpp:1072 +#: ../src/sp-image.cpp:1077 #, c-format msgid "Image %d × %d: %s" msgstr "Attēls %d × %d: %s" -#: ../src/sp-item-group.cpp:717 +#: ../src/sp-item-group.cpp:721 #, c-format msgid "Group of %d object" msgid_plural "Group of %d objects" @@ -12528,7 +12542,7 @@ msgstr[1] "Grupa no %d objektiem" msgstr[2] "Grupa no %d objektiem" #: ../src/sp-item.cpp:977 -#: ../src/verbs.cpp:207 +#: ../src/verbs.cpp:211 msgid "Object" msgstr "Objekts" @@ -12663,26 +12677,25 @@ msgstr "Pamestas klonētās rakstzīmes dati" #: ../src/sp-tspan.cpp:252 msgid "Text span" -msgstr "" +msgstr "Teksta platums" -#. char *symbol_desc = SP_ITEM(use->child)->description(); -#. g_free(symbol_desc); -#: ../src/sp-use.cpp:302 -msgid "Clone of Symbol" -msgstr "Simbola klons" +#: ../src/sp-use.cpp:303 +#, c-format +msgid "'%s' Symbol" +msgstr "'%s' simbols" #. TRANSLATORS: Used for statusbar description for long chains: #. * "Clone of: Clone of: ... in Layer 1". -#: ../src/sp-use.cpp:310 +#: ../src/sp-use.cpp:311 msgid "..." msgstr "..." -#: ../src/sp-use.cpp:318 +#: ../src/sp-use.cpp:319 #, c-format msgid "Clone of: %s" msgstr "Klons objektam: %s" -#: ../src/sp-use.cpp:322 +#: ../src/sp-use.cpp:323 msgid "Orphaned clone" msgstr "Pamests klons" @@ -12750,77 +12763,77 @@ msgstr "Nav iespējams noteikt kārtību uz z-ass objektiem, kas atlasīt msgid "One of the objects is not a path, cannot perform boolean operation." msgstr "Viens no objektiem nav ceļš, nav iespējams izpildīt Bula darbību." -#: ../src/splivarot.cpp:913 +#: ../src/splivarot.cpp:918 msgid "Select stroked path(s) to convert stroke to path." msgstr "Atlasiet apmales ceļu(s), lai pārveidotu apmali par ceļu." -#: ../src/splivarot.cpp:1266 +#: ../src/splivarot.cpp:1271 msgid "Convert stroke to path" msgstr "Pārvērst apmali par ceļu" #. TRANSLATORS: "to outline" means "to convert stroke to path" -#: ../src/splivarot.cpp:1269 +#: ../src/splivarot.cpp:1274 msgid "No stroked paths in the selection." msgstr "Atlasītajā nav vilktu ceļu." -#: ../src/splivarot.cpp:1340 +#: ../src/splivarot.cpp:1345 msgid "Selected object is not a path, cannot inset/outset." msgstr "Atlasītais objekts nav ceļs, nav iespējams saīsināt/pagarināt." -#: ../src/splivarot.cpp:1436 -#: ../src/splivarot.cpp:1501 +#: ../src/splivarot.cpp:1441 +#: ../src/splivarot.cpp:1506 msgid "Create linked offset" msgstr "Izveidot saistīto nobīdi" -#: ../src/splivarot.cpp:1437 -#: ../src/splivarot.cpp:1502 +#: ../src/splivarot.cpp:1442 +#: ../src/splivarot.cpp:1507 msgid "Create dynamic offset" msgstr "Izveidot dinamisko nobīdi" -#: ../src/splivarot.cpp:1527 +#: ../src/splivarot.cpp:1532 msgid "Select path(s) to inset/outset." msgstr "Atlasiet saīsināmo(s)/pagarināmo(s) ceļus." -#: ../src/splivarot.cpp:1740 +#: ../src/splivarot.cpp:1745 msgid "Outset path" msgstr "Pagarināt ceļu" -#: ../src/splivarot.cpp:1740 +#: ../src/splivarot.cpp:1745 msgid "Inset path" msgstr "Saīsināt ceļu" -#: ../src/splivarot.cpp:1742 +#: ../src/splivarot.cpp:1747 msgid "No paths to inset/outset in the selection." msgstr "Atlasītajā nav saīsināmu/pagarināmu ceļu." -#: ../src/splivarot.cpp:1904 +#: ../src/splivarot.cpp:1909 msgid "Simplifying paths (separately):" msgstr "Vienkāršo ceļus (atsevišķi):" -#: ../src/splivarot.cpp:1906 +#: ../src/splivarot.cpp:1911 msgid "Simplifying paths:" msgstr "Vienkāršo ceļus:" -#: ../src/splivarot.cpp:1943 +#: ../src/splivarot.cpp:1948 #, c-format msgid "%s %d of %d paths simplified..." msgstr "%s %d no %d ceļiem vienkāršoti..." -#: ../src/splivarot.cpp:1955 +#: ../src/splivarot.cpp:1960 #, c-format msgid "%d paths simplified." msgstr "%d ceļi vienkāršoti." -#: ../src/splivarot.cpp:1969 +#: ../src/splivarot.cpp:1974 msgid "Select path(s) to simplify." msgstr "Atlasiet vienkāršojamo(s) ceļu(s)." -#: ../src/splivarot.cpp:1985 +#: ../src/splivarot.cpp:1990 msgid "No paths to simplify in the selection." msgstr "Atlasītajā nav vienkāršojamu ceļu." #: ../src/spray-context.cpp:205 -#: ../src/tweak-context.cpp:182 +#: ../src/tweak-context.cpp:191 #, c-format msgid "Nothing selected" msgstr "Nekas nav atlasīts" @@ -12838,7 +12851,7 @@ msgstr "%s. Velciet, uzklikšķiniet vai uzklikšķiniet un ritiniet, lai izsmid #: ../src/spray-context.cpp:217 #, c-format msgid "%s. Drag, click or click and scroll to spray in a single path of the initial selection." -msgstr "" +msgstr "%s. Velciet, uzklikšķiniet vai uzklikšķiniet un ritiniet, lai izsmidzinātu sākotnēji atlasīto vienā ceļā." #: ../src/spray-context.cpp:670 msgid "Nothing selected! Select objects to spray." @@ -12894,7 +12907,7 @@ msgid "The flowed text(s) must be visible in order to be put on a path." msgstr "Lai novietotu uz ceļa, teksta aizpildījumam(-iem) jābūt redzamam (-iem)." #: ../src/text-chemistry.cpp:183 -#: ../src/verbs.cpp:2430 +#: ../src/verbs.cpp:2434 msgid "Put text on path" msgstr "Izkārtot tekstu gar ceļu" @@ -12907,7 +12920,7 @@ msgid "No texts-on-paths in the selection." msgstr "Atlasītajā nav teksta gar ceļu." #: ../src/text-chemistry.cpp:219 -#: ../src/verbs.cpp:2432 +#: ../src/verbs.cpp:2436 msgid "Remove text from path" msgstr "Aizvākt tekstu no ceļa" @@ -12952,141 +12965,141 @@ msgstr "Pārvērst teksta aizpildījumu par tekstu" msgid "No flowed text(s) to convert in the selection." msgstr "Atlasītajā nav pārvēršama(-u) aizpildošā(-o) teksta(-u)." -#: ../src/text-context.cpp:420 +#: ../src/text-context.cpp:426 msgid "Click to edit the text, drag to select part of the text." msgstr "Uzklikšķiniet, lai labotu tekstu, velciet - lai atlasītu teksta daļu." -#: ../src/text-context.cpp:422 +#: ../src/text-context.cpp:428 msgid "Click to edit the flowed text, drag to select part of the text." msgstr "Uzklikšķieniet, lai labotu teksta aizpildījumu, velciet, lai atlasītu daļu teksta." -#: ../src/text-context.cpp:476 +#: ../src/text-context.cpp:482 msgid "Create text" msgstr "Izveidot tekstu" -#: ../src/text-context.cpp:501 +#: ../src/text-context.cpp:507 msgid "Non-printable character" msgstr "Nedrukājama rakstzīme" -#: ../src/text-context.cpp:516 +#: ../src/text-context.cpp:522 msgid "Insert Unicode character" msgstr "Ievietot Unikoda rakstzīmi" -#: ../src/text-context.cpp:551 +#: ../src/text-context.cpp:557 #, c-format msgid "Unicode (Enter to finish): %s: %s" msgstr "Unikods (Enter, lai pabeigtu): %s: %s" -#: ../src/text-context.cpp:553 -#: ../src/text-context.cpp:862 +#: ../src/text-context.cpp:559 +#: ../src/text-context.cpp:868 msgid "Unicode (Enter to finish): " msgstr "Unikods (Enter, lai pabeigtu): " -#: ../src/text-context.cpp:639 +#: ../src/text-context.cpp:645 #, c-format msgid "Flowed text frame: %s × %s" msgstr "Rāmis ar aizpildošo tekstu: %s × %s" -#: ../src/text-context.cpp:696 +#: ../src/text-context.cpp:702 msgid "Type text; Enter to start new line." msgstr "Ievadiet tekstu; nospiediet Enter jaunas rindas sākšanai." -#: ../src/text-context.cpp:707 +#: ../src/text-context.cpp:713 msgid "Flowed text is created." msgstr "Izveidots aizpildījums ar tekstu." -#: ../src/text-context.cpp:709 +#: ../src/text-context.cpp:715 msgid "Create flowed text" msgstr "Izveidot aizpildījumu ar tekstu" -#: ../src/text-context.cpp:711 +#: ../src/text-context.cpp:717 msgid "The frame is too small for the current font size. Flowed text not created." msgstr "Rāmis ir pārāk mazs izvēlētajam fonta izmēram. Teksta aizpildījums nav izveidots." -#: ../src/text-context.cpp:847 +#: ../src/text-context.cpp:853 msgid "No-break space" msgstr "Neatdalošā atstarpe" -#: ../src/text-context.cpp:849 +#: ../src/text-context.cpp:855 msgid "Insert no-break space" msgstr "Ievietot neatdalošo atstarpi" -#: ../src/text-context.cpp:886 +#: ../src/text-context.cpp:892 msgid "Make bold" msgstr "Treknināt" -#: ../src/text-context.cpp:904 +#: ../src/text-context.cpp:910 msgid "Make italic" msgstr "Pārveidot kursīvā" -#: ../src/text-context.cpp:943 +#: ../src/text-context.cpp:949 msgid "New line" msgstr "Jauna rinda" -#: ../src/text-context.cpp:977 +#: ../src/text-context.cpp:991 msgid "Backspace" msgstr "Dzēst" -#: ../src/text-context.cpp:1025 +#: ../src/text-context.cpp:1047 msgid "Kern to the left" msgstr "Rakstsavirze pa kreisi" -#: ../src/text-context.cpp:1050 +#: ../src/text-context.cpp:1072 msgid "Kern to the right" msgstr "Rakstsavirze pa labi" -#: ../src/text-context.cpp:1075 +#: ../src/text-context.cpp:1097 msgid "Kern up" msgstr "Rakstsavirze augšup" -#: ../src/text-context.cpp:1100 +#: ../src/text-context.cpp:1122 msgid "Kern down" msgstr "Rakstsavirze lejup" -#: ../src/text-context.cpp:1176 +#: ../src/text-context.cpp:1198 msgid "Rotate counterclockwise" msgstr "Griezt pretēji pulksteņrādītājam" -#: ../src/text-context.cpp:1197 +#: ../src/text-context.cpp:1219 msgid "Rotate clockwise" msgstr "Griezt pulksteņrādītāja virzienā" -#: ../src/text-context.cpp:1214 +#: ../src/text-context.cpp:1236 msgid "Contract line spacing" msgstr "Samazināt rindu atstatumus" -#: ../src/text-context.cpp:1221 +#: ../src/text-context.cpp:1243 msgid "Contract letter spacing" msgstr "Samazināt burtu atstatumus" -#: ../src/text-context.cpp:1239 +#: ../src/text-context.cpp:1261 msgid "Expand line spacing" msgstr "Paplašināt rindu atstatumus" -#: ../src/text-context.cpp:1246 +#: ../src/text-context.cpp:1268 msgid "Expand letter spacing" msgstr "Paplašināt burtu atstatumus" -#: ../src/text-context.cpp:1374 +#: ../src/text-context.cpp:1396 msgid "Paste text" msgstr "Ielīmet tekstu" -#: ../src/text-context.cpp:1625 +#: ../src/text-context.cpp:1647 #, c-format msgid "Type or edit flowed text (%d characters%s); Enter to start new paragraph." msgstr "Ievadiet vai labojiet teksta aizpildījumu (%d zīmes%s); Enter - lai sāktu jaunu rindkopu." -#: ../src/text-context.cpp:1627 +#: ../src/text-context.cpp:1649 #, c-format msgid "Type or edit text (%d characters%s); Enter to start new line." msgstr "Ievadiet vai labojiet tekstu (%d rakstzīmes%s); nospiediet Enter jaunas rindas sākšanai." -#: ../src/text-context.cpp:1635 +#: ../src/text-context.cpp:1657 #: ../src/tools-switch.cpp:201 msgid "Click to select or create text, drag to create flowed text; then type." msgstr "Uzklikšķiniet, lai atlasītu vai izveidotu tekstu, velciet, lai izveidotu teksta aizpildījumu un tad rakstiet." -#: ../src/text-context.cpp:1737 +#: ../src/text-context.cpp:1759 msgid "Type text" msgstr "Ievadiet tekstu" @@ -13096,7 +13109,7 @@ msgstr " Klonētu rakstzīmju datus labot nav iespējams." #: ../src/tools-switch.cpp:141 msgid "To tweak a path by pushing, select it and drag over it." -msgstr "" +msgstr "Lai pieskaņotu ceļu stumjot, atlasiet to un velciet tam pāri." #: ../src/tools-switch.cpp:147 msgid "Drag, click or click and scroll to spray the selected objects." @@ -13156,7 +13169,7 @@ msgstr "Uzklikšķiniet un velciet starp figūrām, lai izveidotu savieno #: ../src/tools-switch.cpp:243 msgid "Click to paint a bounded area, Shift+click to union the new fill with the current selection, Ctrl+click to change the clicked object's fill and stroke to the current setting." -msgstr "" +msgstr "uzklikšķiniet, lai krāsotu norobežotu laukumu, Shift+klikšķis - lai apvienotu jauno aizpildījumu ar pašreizējo atlasi, Ctrl+klikšķis - lai mainītu uzklikšķināto objektu aizpildījumu un apmali uz pašreizējiem." #: ../src/tools-switch.cpp:249 msgid "Drag to erase." @@ -13216,124 +13229,124 @@ msgstr "Vektorizēt bitkarti" msgid "Trace: Done. %ld nodes created" msgstr "Vektorizēšana: pabeigta. Izveidoti %ld mezgli" -#: ../src/tweak-context.cpp:187 +#: ../src/tweak-context.cpp:196 #, c-format msgid "%s. Drag to move." msgstr "%s. Velciet, lai pārvietou." -#: ../src/tweak-context.cpp:191 +#: ../src/tweak-context.cpp:200 #, c-format msgid "%s. Drag or click to move in; with Shift to move out." -msgstr "" +msgstr "%s. Velciet vai uzklikšķiniet, lai pievilktu; ar Shift - lai atgrūstu objektus." -#: ../src/tweak-context.cpp:195 +#: ../src/tweak-context.cpp:208 #, c-format msgid "%s. Drag or click to move randomly." msgstr "%s. Velciet vai uzklikšķiniet, lai move randomly." -#: ../src/tweak-context.cpp:199 +#: ../src/tweak-context.cpp:212 #, c-format msgid "%s. Drag or click to scale down; with Shift to scale up." msgstr "%s. Velciet vai uzklikšķiniet, lai samazinātu; ar Shift - lai palielinātu." -#: ../src/tweak-context.cpp:203 +#: ../src/tweak-context.cpp:220 #, c-format msgid "%s. Drag or click to rotate clockwise; with Shift, counterclockwise." msgstr "%s. Velciet vai uzklikšķiniet, lai pagrieztu pa pulksteņrādītājam; ar Shift - pretēji pulksteņrādītājam." -#: ../src/tweak-context.cpp:207 +#: ../src/tweak-context.cpp:228 #, c-format msgid "%s. Drag or click to duplicate; with Shift, delete." msgstr "%s. Velciet vai uzklikšķiniet, lai dublētu; ar Shift - dzēstu." -#: ../src/tweak-context.cpp:211 +#: ../src/tweak-context.cpp:236 #, c-format msgid "%s. Drag to push paths." msgstr "%s. Velciet lai stumtu ceļus." -#: ../src/tweak-context.cpp:215 +#: ../src/tweak-context.cpp:240 #, c-format msgid "%s. Drag or click to inset paths; with Shift to outset." msgstr "%s.Velciet vai uzklikšķiniet, lai saīsinātu ceļus; ar shift - pagarinātu." -#: ../src/tweak-context.cpp:223 +#: ../src/tweak-context.cpp:248 #, c-format msgid "%s. Drag or click to attract paths; with Shift to repel." msgstr "%s. Velciet vai uzklikšķiniet lai pievilktu ceļus; ar Shift - lai atgrūstu." -#: ../src/tweak-context.cpp:231 +#: ../src/tweak-context.cpp:256 #, c-format msgid "%s. Drag or click to roughen paths." msgstr "%s. Velciet vai uzklikšķiniet, lai raupjotu ceļus." -#: ../src/tweak-context.cpp:235 +#: ../src/tweak-context.cpp:260 #, c-format msgid "%s. Drag or click to paint objects with color." msgstr "%s. Velciet vai uzklikšķiniet, lai izkrāsotu objektus ar krāsu." -#: ../src/tweak-context.cpp:239 +#: ../src/tweak-context.cpp:264 #, c-format msgid "%s. Drag or click to randomize colors." msgstr "%s. Velciet vai uzklikšķiniet, lai dažādotu krāsas." -#: ../src/tweak-context.cpp:243 +#: ../src/tweak-context.cpp:268 #, c-format msgid "%s. Drag or click to increase blur; with Shift to decrease." msgstr "%s. Velciet vai uzklikšķiniet, laipalielinātu izpludinājumu; ar Shift t - lai samazinātu." -#: ../src/tweak-context.cpp:1209 +#: ../src/tweak-context.cpp:1234 msgid "Nothing selected! Select objects to tweak." msgstr "Nekas nav atlasīts! Atlasiet pieskaņojamos objektus." -#: ../src/tweak-context.cpp:1243 +#: ../src/tweak-context.cpp:1268 msgid "Move tweak" msgstr "Pārvietošanas pieskņošana" -#: ../src/tweak-context.cpp:1247 +#: ../src/tweak-context.cpp:1272 msgid "Move in/out tweak" msgstr "Pārvietot iekšā/ārā pieskaņošana" -#: ../src/tweak-context.cpp:1251 +#: ../src/tweak-context.cpp:1276 msgid "Move jitter tweak" msgstr "Pārvietošanas trīces pieskaņošana" -#: ../src/tweak-context.cpp:1255 +#: ../src/tweak-context.cpp:1280 msgid "Scale tweak" msgstr "Mērogošanas pieskaņošana" -#: ../src/tweak-context.cpp:1259 +#: ../src/tweak-context.cpp:1284 msgid "Rotate tweak" msgstr "Griešanas pieskaņošana" -#: ../src/tweak-context.cpp:1263 +#: ../src/tweak-context.cpp:1288 msgid "Duplicate/delete tweak" msgstr "Dublēt/dzēst pieskaņošana" -#: ../src/tweak-context.cpp:1267 +#: ../src/tweak-context.cpp:1292 msgid "Push path tweak" msgstr "Ceļa pagrūšanas pieskaņošana" -#: ../src/tweak-context.cpp:1271 +#: ../src/tweak-context.cpp:1296 msgid "Shrink/grow path tweak" msgstr "Ceļa samazinājuma/palielinājuma pieskaņosana" -#: ../src/tweak-context.cpp:1275 +#: ../src/tweak-context.cpp:1300 msgid "Attract/repel path tweak" -msgstr "" +msgstr "Ceļa pieskaņošana pievelkot/atgrūžot" -#: ../src/tweak-context.cpp:1279 +#: ../src/tweak-context.cpp:1304 msgid "Roughen path tweak" msgstr "Ceļa raupjošanas pieskaņošana" -#: ../src/tweak-context.cpp:1283 +#: ../src/tweak-context.cpp:1308 msgid "Color paint tweak" msgstr "Krāsokuma pieskaņošana" -#: ../src/tweak-context.cpp:1287 +#: ../src/tweak-context.cpp:1312 msgid "Color jitter tweak" msgstr "Krāsu trīces pieskaņošana" -#: ../src/tweak-context.cpp:1291 +#: ../src/tweak-context.cpp:1316 msgid "Blur tweak" msgstr "Pieskaņot izpludinājumu" @@ -13342,40 +13355,40 @@ msgstr "Pieskaņot izpludinājumu" msgid "Nothing was copied." msgstr "Nekas nav nokopēts." -#: ../src/ui/clipboard.cpp:371 -#: ../src/ui/clipboard.cpp:580 -#: ../src/ui/clipboard.cpp:603 +#: ../src/ui/clipboard.cpp:375 +#: ../src/ui/clipboard.cpp:584 +#: ../src/ui/clipboard.cpp:607 msgid "Nothing on the clipboard." msgstr "Starpliktuvē nav nekā." -#: ../src/ui/clipboard.cpp:429 +#: ../src/ui/clipboard.cpp:433 msgid "Select object(s) to paste style to." msgstr "Atlasiet objektu(s), kuriem pielietot stilu no starpliktuves." -#: ../src/ui/clipboard.cpp:440 -#: ../src/ui/clipboard.cpp:457 +#: ../src/ui/clipboard.cpp:444 +#: ../src/ui/clipboard.cpp:461 msgid "No style on the clipboard." msgstr "Starpliktuvē nav neviena stila." -#: ../src/ui/clipboard.cpp:482 +#: ../src/ui/clipboard.cpp:486 msgid "Select object(s) to paste size to." msgstr "Atlasiet objektu(s), kuriem pielietot izmēru no starpliktuves." -#: ../src/ui/clipboard.cpp:489 +#: ../src/ui/clipboard.cpp:493 msgid "No size on the clipboard." msgstr "Izmērs nav atrodams starpliktuvē." -#: ../src/ui/clipboard.cpp:542 +#: ../src/ui/clipboard.cpp:546 msgid "Select object(s) to paste live path effect to." msgstr "Atlasiet objektu(s), kuriem jāielīmē ceļa (LPE) efekts." #. no_effect: -#: ../src/ui/clipboard.cpp:567 +#: ../src/ui/clipboard.cpp:571 msgid "No effect on the clipboard." msgstr "Starpliktuvē nav neviena efekta." -#: ../src/ui/clipboard.cpp:586 -#: ../src/ui/clipboard.cpp:614 +#: ../src/ui/clipboard.cpp:590 +#: ../src/ui/clipboard.cpp:618 msgid "Clipboard does not contain a path." msgstr "Ceļš nav atrodams starpliktuvē." @@ -13489,7 +13502,7 @@ msgid "Rearrange" msgstr "Pārkārtot" #: ../src/ui/dialog/align-and-distribute.cpp:900 -#: ../src/widgets/toolbox.cpp:1724 +#: ../src/widgets/toolbox.cpp:1728 msgid "Nodes" msgstr "Mezgli" @@ -13503,62 +13516,62 @@ msgstr "Iz_turēties pret atlasīto kā pret grupu" #. Align #: ../src/ui/dialog/align-and-distribute.cpp:921 -#: ../src/verbs.cpp:2861 -#: ../src/verbs.cpp:2862 +#: ../src/verbs.cpp:2865 +#: ../src/verbs.cpp:2866 msgid "Align right edges of objects to the left edge of the anchor" msgstr "Sakārtot objektu labās malas gar enkura kreiso malu" #: ../src/ui/dialog/align-and-distribute.cpp:924 -#: ../src/verbs.cpp:2863 -#: ../src/verbs.cpp:2864 +#: ../src/verbs.cpp:2867 +#: ../src/verbs.cpp:2868 msgid "Align left edges" msgstr "Līdzināt kreisās malas" #: ../src/ui/dialog/align-and-distribute.cpp:927 -#: ../src/verbs.cpp:2865 -#: ../src/verbs.cpp:2866 +#: ../src/verbs.cpp:2869 +#: ../src/verbs.cpp:2870 msgid "Center on vertical axis" msgstr "Centrēt uz vertikālās ass" #: ../src/ui/dialog/align-and-distribute.cpp:930 -#: ../src/verbs.cpp:2867 -#: ../src/verbs.cpp:2868 +#: ../src/verbs.cpp:2871 +#: ../src/verbs.cpp:2872 msgid "Align right sides" msgstr "Līdzināt labās malas" #: ../src/ui/dialog/align-and-distribute.cpp:933 -#: ../src/verbs.cpp:2869 -#: ../src/verbs.cpp:2870 +#: ../src/verbs.cpp:2873 +#: ../src/verbs.cpp:2874 msgid "Align left edges of objects to the right edge of the anchor" msgstr "Sakārtot objektu kreisās malas gar enkura labo malu" #: ../src/ui/dialog/align-and-distribute.cpp:936 -#: ../src/verbs.cpp:2871 -#: ../src/verbs.cpp:2872 +#: ../src/verbs.cpp:2875 +#: ../src/verbs.cpp:2876 msgid "Align bottom edges of objects to the top edge of the anchor" msgstr "Sakārtot objektu apakšējās malas gar enkura augšējo malu" #: ../src/ui/dialog/align-and-distribute.cpp:939 -#: ../src/verbs.cpp:2873 -#: ../src/verbs.cpp:2874 +#: ../src/verbs.cpp:2877 +#: ../src/verbs.cpp:2878 msgid "Align top edges" msgstr "Līdzināt augšējās malas" #: ../src/ui/dialog/align-and-distribute.cpp:942 -#: ../src/verbs.cpp:2875 -#: ../src/verbs.cpp:2876 +#: ../src/verbs.cpp:2879 +#: ../src/verbs.cpp:2880 msgid "Center on horizontal axis" msgstr "Centrēt uz horizontālās ass" #: ../src/ui/dialog/align-and-distribute.cpp:945 -#: ../src/verbs.cpp:2877 -#: ../src/verbs.cpp:2878 +#: ../src/verbs.cpp:2881 +#: ../src/verbs.cpp:2882 msgid "Align bottom edges" msgstr "Līdzināt apakšējās malas" #: ../src/ui/dialog/align-and-distribute.cpp:948 -#: ../src/verbs.cpp:2879 -#: ../src/verbs.cpp:2880 +#: ../src/verbs.cpp:2883 +#: ../src/verbs.cpp:2884 msgid "Align top edges of objects to the bottom edge of the anchor" msgstr "Sakārtot objektu augšējās malas gar enkura apakšējo malu" @@ -13674,8 +13687,8 @@ msgstr "Mazākais objekts" #: ../src/ui/dialog/align-and-distribute.cpp:1049 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1555 -#: ../src/verbs.cpp:169 -#: ../src/widgets/desktop-widget.cpp:1927 +#: ../src/verbs.cpp:173 +#: ../src/widgets/desktop-widget.cpp:2004 #: ../share/extensions/printing_marks.inx.h:18 msgid "Selection" msgstr "Atlasītais" @@ -13697,55 +13710,55 @@ msgstr "Saglabāt" msgid "Add profile" msgstr "Pievienot profilu" -#: ../src/ui/dialog/color-item.cpp:122 +#: ../src/ui/dialog/color-item.cpp:131 #, c-format msgid "Color: %s; Click to set fill, Shift+click to set stroke" msgstr "Krāsa: %s; Uzklikšķiniet, lai iestatītu aizpildījumu, Shift+klikšķis - lai iestatītu apmali" -#: ../src/ui/dialog/color-item.cpp:504 +#: ../src/ui/dialog/color-item.cpp:513 msgid "Change color definition" msgstr "Mainiet krāsas definīciju" -#: ../src/ui/dialog/color-item.cpp:678 +#: ../src/ui/dialog/color-item.cpp:687 msgid "Remove stroke color" msgstr "Aizvākt apmales krāsu" -#: ../src/ui/dialog/color-item.cpp:678 +#: ../src/ui/dialog/color-item.cpp:687 msgid "Remove fill color" msgstr "Aizvākt aizpildījuma krāsu" -#: ../src/ui/dialog/color-item.cpp:683 +#: ../src/ui/dialog/color-item.cpp:692 msgid "Set stroke color to none" msgstr "Iestatīt apmales krāsu par nekādu" -#: ../src/ui/dialog/color-item.cpp:683 +#: ../src/ui/dialog/color-item.cpp:692 msgid "Set fill color to none" msgstr "Iestatīt aizpildījuma krāsu par nekādu" -#: ../src/ui/dialog/color-item.cpp:699 +#: ../src/ui/dialog/color-item.cpp:708 msgid "Set stroke color from swatch" msgstr "Iestatiet apmales krāsu no paletes" -#: ../src/ui/dialog/color-item.cpp:699 +#: ../src/ui/dialog/color-item.cpp:708 msgid "Set fill color from swatch" msgstr "Iestatiet aizpildījuma krāsu no paletes" -#: ../src/ui/dialog/debug.cpp:69 +#: ../src/ui/dialog/debug.cpp:73 msgid "Messages" msgstr "Vēstules" -#: ../src/ui/dialog/debug.cpp:83 +#: ../src/ui/dialog/debug.cpp:87 #: ../src/ui/dialog/messages.cpp:47 #: ../src/ui/dialog/scriptdialog.cpp:182 msgid "_Clear" msgstr "_Attīrīt" -#: ../src/ui/dialog/debug.cpp:87 +#: ../src/ui/dialog/debug.cpp:91 #: ../src/ui/dialog/messages.cpp:48 msgid "Capture log messages" msgstr "Pārtvert žurnāla ierakstus" -#: ../src/ui/dialog/debug.cpp:91 +#: ../src/ui/dialog/debug.cpp:95 msgid "Release log messages" msgstr "Atbrīvot žurnāla ierakstus" @@ -13973,12 +13986,12 @@ msgid "Remove selected grid." msgstr "Aizvākt izvēlēto režģi." #: ../src/ui/dialog/document-properties.cpp:147 -#: ../src/widgets/toolbox.cpp:1831 +#: ../src/widgets/toolbox.cpp:1835 msgid "Guides" msgstr "Palīglīnijas" #: ../src/ui/dialog/document-properties.cpp:149 -#: ../src/verbs.cpp:2680 +#: ../src/verbs.cpp:2684 msgid "Snap" msgstr "Piesaistīt" @@ -14027,7 +14040,7 @@ msgstr "Dažādi" #. inform the document, so we can undo #. Color Management #: ../src/ui/dialog/document-properties.cpp:487 -#: ../src/verbs.cpp:2855 +#: ../src/verbs.cpp:2859 msgid "Link Color Profile" msgstr "Piesaistīt krāsu profilu" @@ -14160,15 +14173,15 @@ msgid "Information" msgstr "Informācija" #: ../src/ui/dialog/extension-editor.cpp:82 -#: ../src/verbs.cpp:284 -#: ../src/verbs.cpp:303 +#: ../src/verbs.cpp:288 +#: ../src/verbs.cpp:307 #: ../share/extensions/color_custom.inx.h:7 #: ../share/extensions/color_HSL_adjust.inx.h:11 #: ../share/extensions/color_randomize.inx.h:6 #: ../share/extensions/dots.inx.h:7 #: ../share/extensions/draw_from_triangle.inx.h:35 #: ../share/extensions/dxf_input.inx.h:10 -#: ../share/extensions/dxf_outlines.inx.h:20 +#: ../share/extensions/dxf_outlines.inx.h:24 #: ../share/extensions/gcodetools_about.inx.h:3 #: ../share/extensions/gcodetools_area.inx.h:53 #: ../share/extensions/gcodetools_check_for_updates.inx.h:3 @@ -14234,36 +14247,36 @@ msgstr "Atļaut priekšskatījumu" #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:779 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:795 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:810 -#: ../src/ui/dialog/filedialogimpl-win32.cpp:291 -#: ../src/ui/dialog/filedialogimpl-win32.cpp:422 +#: ../src/ui/dialog/filedialogimpl-win32.cpp:289 +#: ../src/ui/dialog/filedialogimpl-win32.cpp:420 msgid "All Files" msgstr "Visi faili" #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:776 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:792 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:807 -#: ../src/ui/dialog/filedialogimpl-win32.cpp:292 +#: ../src/ui/dialog/filedialogimpl-win32.cpp:290 msgid "All Inkscape Files" msgstr "Visi Inkscape faili" #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:783 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:799 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:813 -#: ../src/ui/dialog/filedialogimpl-win32.cpp:293 +#: ../src/ui/dialog/filedialogimpl-win32.cpp:291 msgid "All Images" msgstr "Visi attēli" #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:786 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:802 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:816 -#: ../src/ui/dialog/filedialogimpl-win32.cpp:294 +#: ../src/ui/dialog/filedialogimpl-win32.cpp:292 msgid "All Vectors" msgstr "Visi vektori" #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:789 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:805 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:819 -#: ../src/ui/dialog/filedialogimpl-win32.cpp:295 +#: ../src/ui/dialog/filedialogimpl-win32.cpp:293 msgid "All Bitmaps" msgstr "Visas bitkartes" @@ -14344,15 +14357,15 @@ msgstr "Kropļojumnovērse" msgid "Destination" msgstr "Mērķis" -#: ../src/ui/dialog/filedialogimpl-win32.cpp:423 +#: ../src/ui/dialog/filedialogimpl-win32.cpp:421 msgid "All Executable Files" msgstr "Visi izpildāmie faili" -#: ../src/ui/dialog/filedialogimpl-win32.cpp:615 +#: ../src/ui/dialog/filedialogimpl-win32.cpp:613 msgid "Show Preview" msgstr "Rādīt priekšskatījumu" -#: ../src/ui/dialog/filedialogimpl-win32.cpp:753 +#: ../src/ui/dialog/filedialogimpl-win32.cpp:751 msgid "No file selected" msgstr "Nav izvēlēts neviens fails" @@ -14398,18 +14411,10 @@ msgstr "Šis SVG efekts vēl nav ieviests Inkscape." msgid "Light Source:" msgstr "Gaismas avots:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1001 -msgid "Azimuth" -msgstr "Azimuts" - #: ../src/ui/dialog/filter-effects-dialog.cpp:1001 msgid "Direction angle for the light source on the XY plane, in degrees" msgstr "Krītošās gaismas leņķis XY plaknē, grādos" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1002 -msgid "Elevation" -msgstr "Pacēlums" - #: ../src/ui/dialog/filter-effects-dialog.cpp:1002 msgid "Direction angle for the light source on the YZ plane, in degrees" msgstr "Krītošās gaismas leņķis YZ plaknē, grādos" @@ -14477,271 +14482,272 @@ msgstr "_Filtrs" msgid "R_ename" msgstr "Pār_dēvēt" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1297 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1298 msgid "Rename filter" msgstr "Pārdēvēt filtru" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1334 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1335 msgid "Apply filter" msgstr "Pielietot filtru" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1404 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1405 msgid "filter" msgstr "filtrs" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1411 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1412 msgid "Add filter" msgstr "Pievienot filtru" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1463 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1464 msgid "Duplicate filter" msgstr "Dublēt filtru" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1562 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1563 msgid "_Effect" msgstr "_Efekts" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1572 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1573 msgid "Connections" msgstr "Savienojumi" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1710 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1711 msgid "Remove filter primitive" msgstr "Aizvākt filtra primitīvu" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2298 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2299 msgid "Remove merge node" msgstr "Aizvākt apvienošanas mezglu" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2418 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2419 msgid "Reorder filter primitive" msgstr "Pārkārtot filtra primitīvu" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2498 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2499 msgid "Add Effect:" msgstr "Pievienot efektu:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2499 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2500 msgid "No effect selected" msgstr "Nav izvēlēts neviens efekts" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2500 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2501 msgid "No filter selected" msgstr "Nav izvēlēts neviens filtrs" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2546 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2547 msgid "Effect parameters" msgstr "Efekta parametri" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2547 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2548 msgid "Filter General Settings" msgstr "Filtra vispārējie iestatījumi" #. default x: #. default y: -#: ../src/ui/dialog/filter-effects-dialog.cpp:2605 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2606 msgid "Coordinates:" msgstr "Koordinātes:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2605 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2606 msgid "X coordinate of the left corners of filter effects region" msgstr "Filtra efekta apgabala kreiso stūru X koordināte" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2605 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2606 msgid "Y coordinate of the upper corners of filter effects region" msgstr "Filtra efekta apgabala augšējo stūru Y koordināte" #. default width: #. default height: -#: ../src/ui/dialog/filter-effects-dialog.cpp:2606 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2607 msgid "Dimensions:" msgstr "Izmēri:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2606 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2607 msgid "Width of filter effects region" msgstr "Filtra efektu apgabala platums" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2606 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2607 msgid "Height of filter effects region" msgstr "Filtra efektu apgabala augstums" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2612 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2613 msgid "Indicates the type of matrix operation. The keyword 'matrix' indicates that a full 5x4 matrix of values will be provided. The other keywords represent convenience shortcuts to allow commonly used color operations to be performed without specifying a complete matrix." msgstr "Norāda uz matricu darbības tipu. Atslēgvārds 'matrica' nozīmē, ka tiek izmantota pilna, 5x4 vērtību matrica. Citi atslēgvārdi kalpo par saīsnēm, kas ļauj veikt biežāk lietotās darbības ar krāsām nenorādot pilnu matricu." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2613 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2614 msgid "Value(s):" msgstr "Vērtība(s):" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2628 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2668 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2629 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2669 msgid "Operator:" msgstr "Operators:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2629 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2630 msgid "K1:" msgstr "K1:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2629 #: ../src/ui/dialog/filter-effects-dialog.cpp:2630 #: ../src/ui/dialog/filter-effects-dialog.cpp:2631 #: ../src/ui/dialog/filter-effects-dialog.cpp:2632 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2633 msgid "If the arithmetic operation is chosen, each result pixel is computed using the formula k1*i1*i2 + k2*i1 + k3*i2 + k4 where i1 and i2 are the pixel values of the first and second inputs respectively." msgstr "Ja ir izvēlēta matemātiskā darbība, katrs pikselis tiek aprēķināts saskaņā ar formulu k1*i1*i2 + k2*i1 + k3*i2 + k4, kur i1 un i2 ir pikseļu vērtības, attiecīgi, pirmajos un otrajos izejas datos." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2630 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2631 msgid "K2:" msgstr "K2:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2631 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2632 msgid "K3:" msgstr "K3:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2632 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2633 msgid "K4:" msgstr "K4:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2635 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 msgid "Size:" msgstr "Izmērs:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2635 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 msgid "width of the convolve matrix" msgstr "konvolūcijas matricas platums" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2635 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 msgid "height of the convolve matrix" msgstr "konvolūcijas matricas augstums" #. default x: #. default y: -#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2637 #: ../src/ui/dialog/object-attributes.cpp:48 msgid "Target:" msgstr "Mērķis:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2637 msgid "X coordinate of the target point in the convolve matrix. The convolution is applied to pixels around this point." msgstr "Mērķa punkta X koordināte konvolūcijas matricā. Konvolūcija tiks izpildīta pikseļiem ap šo punktu." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2637 msgid "Y coordinate of the target point in the convolve matrix. The convolution is applied to pixels around this point." msgstr "Mērķa punkta Y koordināte konvolūcijas matricā. Konvolūcija tiks izpildīta pikseļiem ap šo punktu." #. TRANSLATORS: for info on "Kernel", see http://en.wikipedia.org/wiki/Kernel_(matrix) -#: ../src/ui/dialog/filter-effects-dialog.cpp:2638 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2639 msgid "Kernel:" msgstr "Kodols:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2638 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2639 msgid "This matrix describes the convolve operation that is applied to the input image in order to calculate the pixel colors at the output. Different arrangements of values in this matrix result in various possible visual effects. An identity matrix would lead to a motion blur effect (parallel to the matrix diagonal) while a matrix filled with a constant non-zero value would lead to a common blur effect." msgstr "Šī matrica apraksta konvolūcijas darbību, kas tiek pielietota attēlam ar nolūku noskaidrot rezultātā iegūtā pikseļa krāsa. Dažādi vērtību izkārtojumi šajā matricā rada atšķirīgus vizuālos efektus. Vienības matrica rezultātā radīs kustības izplūduma efektu (paralēli matricas diagonālei), turpretī ar konstantām, par nulli lielākām vērtībām aizpildīta matrica rezultātā radīs vienkārša izplūduma efektu." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2640 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2641 msgid "Divisor:" msgstr "Dalītājs:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2640 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2641 +#, fuzzy msgid "After applying the kernelMatrix to the input image to yield a number, that number is divided by divisor to yield the final destination color value. A divisor that is the sum of all the matrix values tends to have an evening effect on the overall color intensity of the result." -msgstr "" +msgstr "Lai iegūtu skaitli pēc kernelMatrix pielietošanas sākotnējam attēlam, šis skaitlis tiek dalīts ar dalītāju gala krāsas vērtības iegūšanai. Dalītājam, kas ir visu matricas vērtību summa, piemīt vispārējās krāsu intensitātes izlīdzinātāja efekts gala attēlā. " -#: ../src/ui/dialog/filter-effects-dialog.cpp:2641 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2642 msgid "Bias:" msgstr "Nobīde:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2641 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2642 msgid "This value is added to each component. This is useful to define a constant value as the zero response of the filter." msgstr "Šī vērtība tiek pievienota katram komponentam. Ir lietderīgi noteikt nemainīgu vērtību kā filtra 'nulles' atbildi." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2642 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 msgid "Edge Mode:" msgstr "Malu režīms:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2642 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 msgid "Determines how to extend the input image as necessary with color values so that the matrix operations can be applied when the kernel is positioned at or near the edge of the input image." -msgstr "" +msgstr "Nosaka veidu, kādā pēc nepieciešamības paplašināt sākotnējo attēlu ar krāsu vērtībām, lai matricu darbības varētu izmantot gadījumos, kuros kodols ir novietots uz vai blakus sākotnējā attēla malai." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 msgid "Preserve Alpha" msgstr "Saglabāt alfa" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 msgid "If set, the alpha channel won't be altered by this filter primitive." msgstr "Ja iestatīts, šī filtra primitīvs nemainīs alfa kanālu." #. default: white -#: ../src/ui/dialog/filter-effects-dialog.cpp:2646 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2647 msgid "Diffuse Color:" msgstr "Difūzijas krāsa:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2646 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2679 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2647 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2680 msgid "Defines the color of the light source" msgstr "Nosaka gaismas avota krāsu" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2647 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2680 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2648 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2681 msgid "Surface Scale:" msgstr "Virsmas mērogs:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2647 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2680 -msgid "This value amplifies the heights of the bump map defined by the input alpha channel" -msgstr "" - #: ../src/ui/dialog/filter-effects-dialog.cpp:2648 #: ../src/ui/dialog/filter-effects-dialog.cpp:2681 +msgid "This value amplifies the heights of the bump map defined by the input alpha channel" +msgstr "Šī vērtība pastiprina pumpu kartes augstumu, ko nosaka sākotnējais alfa kanāls" + +#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2682 msgid "Constant:" msgstr "Konstantes:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2648 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2681 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2682 msgid "This constant affects the Phong lighting model." msgstr "Šī konstante ietekmē Fonga apgaismojuma modeli" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2683 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2650 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2684 msgid "Kernel Unit Length:" msgstr "Kodola vienības garums:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2653 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 msgid "This defines the intensity of the displacement effect." msgstr "Tas nosaka pārvietojuma efekta intensitāti." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 msgid "X displacement:" msgstr "X nobīde:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 msgid "Color component that controls the displacement in the X direction" msgstr "Krāsas komponents, kas nosaka pārvietojumu X virzienā" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2656 msgid "Y displacement:" msgstr "Y nobīde:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2656 msgid "Color component that controls the displacement in the Y direction" msgstr "Krāsas komponents, kas nosaka pārvietojumu Y virzienā" #. default: black -#: ../src/ui/dialog/filter-effects-dialog.cpp:2658 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2659 msgid "Flood Color:" msgstr "Pludināšanas krāsa:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2658 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2659 msgid "The whole filter region will be filled with this color." msgstr "Viss filtra apgabals tiks aizpildīts ar šo krāsu." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2662 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2663 msgid "Standard Deviation:" msgstr "Standarta novirze:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2662 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2663 msgid "The standard deviation for the blur operation." msgstr "Standarta novirze izpludināšanas darbībai." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2668 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2669 msgid "" "Erode: performs \"thinning\" of input image.\n" "Dilate: performs \"fattenning\" of input image." @@ -14749,137 +14755,137 @@ msgstr "" "Erozija: padara sākotnējo attēlu \"plānāku\".\n" "Izplešana: padara sākotnējo attēlu \"biezāku\"." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2672 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2673 msgid "Source of Image:" msgstr "Attēla avots:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2675 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 msgid "Delta X:" msgstr "Delta X:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2675 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 msgid "This is how far the input image gets shifted to the right" msgstr "Cik tālu sākotnējais attēls tiks pārbīdīts pa labi" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2677 msgid "Delta Y:" msgstr "Delta Y:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2677 msgid "This is how far the input image gets shifted downwards" msgstr "Cik tālu sākotnējais attēls tiks pārbīdīts lejup" #. default: white -#: ../src/ui/dialog/filter-effects-dialog.cpp:2679 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2680 msgid "Specular Color:" msgstr "Atspīduma krāsa:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2682 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2683 #: ../share/extensions/interp.inx.h:2 msgid "Exponent:" msgstr "Kāpinātājs:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2682 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2683 msgid "Exponent for specular term, larger is more \"shiny\"." msgstr "Atstarošanas pakāpe, lielāks skaitlis nozīmē vairāk \"spīdīgu\"." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2691 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2692 msgid "Indicates whether the filter primitive should perform a noise or turbulence function." msgstr "Atspoguļo, vai filtra primitīvam jāveic trokšņa vai nekārtības funkcija." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2692 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2693 msgid "Base Frequency:" msgstr "Pamata biežums:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2693 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2694 msgid "Octaves:" msgstr "Oktāvas:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2694 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2695 msgid "Seed:" msgstr "Gadījuma vērtība:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2694 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2695 msgid "The starting number for the pseudo random number generator." msgstr "Sākuma skaitlis pseidogadījuma skaitļu ģeneratoram." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2706 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2707 msgid "Add filter primitive" msgstr "Pievienot filtra primitīvu" # http://www.w3.org/TR/SVG/intro.html#TermFilterPrimitiveElement # A filter primitive element is one that can be used as a child of a ‘filter’ element to specify a node in the filter graph. -#: ../src/ui/dialog/filter-effects-dialog.cpp:2723 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2724 msgid "The feBlend filter primitive provides 4 image blending modes: screen, multiply, darken and lighten." msgstr "feBlend filtra primitīvs nodrošina 4 attēlu sajaukšanas veidus: uz ekrāna, pavairot, padarīt tumšāku un padarīt gaišāku." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2727 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2728 msgid "The feColorMatrix filter primitive applies a matrix transformation to color of each rendered pixel. This allows for effects like turning object to grayscale, modifying color saturation and changing color hue." msgstr "feColorMatrix filtra primitīvs pielieto matricas pārveidojumu katra renderētā pikseļa krāsai. Tas padara iespējamus tādus efektus, kā pārvēršanu par pelēktoņu attēlu, krāsu piesātinājuma un nokrāsas maiņu." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2731 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2732 msgid "The feComponentTransfer filter primitive manipulates the input's color components (red, green, blue, and alpha) according to particular transfer functions, allowing operations like brightness and contrast adjustment, color balance, and thresholding." -msgstr "" +msgstr "feComponentTransfer filtra primitīvs darbojas ar sākotnējo krāsu komponentēm (sarkano, zaļo, zilo un alfa) saskaņā ar īpašām pārneses funkcijām, nodrošinot tādas darbības kā spilgtuma un kontrasta maiņu, krāsu balansēšanu un krāsu sliekšņu iestatīšanu." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2735 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2736 msgid "The feComposite filter primitive composites two images using one of the Porter-Duff blending modes or the arithmetic mode described in SVG standard. Porter-Duff blending modes are essentially logical operations between the corresponding pixel values of the images." -msgstr "" +msgstr "feComposite filtra primitīvs kombinē divus attēlus izmantojot vienu no Portera-Dafa sajaukšanas metodēm vai SVG standartā aprakstīto aritmētisko metodi. Portera-Dafa sajaukšanas metodes pēc būtības ir loģiskās darbības ar atbilstošo attēlu pikseļu vērtībām." # http://www.w3.org/TR/SVG/intro.html#TermFilterPrimitiveElement # A filter primitive element is one that can be used as a child of a ‘filter’ element to specify a node in the filter graph. -#: ../src/ui/dialog/filter-effects-dialog.cpp:2739 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2740 msgid "The feConvolveMatrix lets you specify a Convolution to be applied on the image. Common effects created using convolution matrices are blur, sharpening, embossing and edge detection. Note that while gaussian blur can be created using this filter primitive, the special gaussian blur primitive is faster and resolution-independent." msgstr "feConvolveMatrix ļauj norādīt attēlam pielietojamo konvolūciju. Efekti, kurus iegūst ar konvolūcijas matricas palīdzību, ir izpludināšana, saasināšana, ciļņošana un malas noteikšana. Ņemiet vērā, ka lai arī Gausa izpludināšana ar šo filtra primitīvu arī ir iespējama, īpašais Gausa izpludināšanas primitīvs ir ātrāks un nav atkarīgs no izšķirtspējas." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2743 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2744 msgid "The feDiffuseLighting and feSpecularLighting filter primitives create \"embossed\" shadings. The input's alpha channel is used to provide depth information: higher opacity areas are raised toward the viewer and lower opacity areas recede away from the viewer." -msgstr "" +msgstr "feDiffuseLighting un feSpecularLighting filtru primitīvi rada \"ciļņotu \" ēnojumu. Sākotnējā attēla alfa kanāls tiks izmantots dziļuma informācijai: necaurspīdīgāki laukumi tiek tuvināti skatītājam, caurspīdīgāki - attālinānti." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2747 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2748 msgid "The feDisplacementMap filter primitive displaces the pixels in the first input using the second input as a displacement map, that shows from how far the pixel should come from. Classical examples are whirl and pinch effects." -msgstr "" +msgstr "feDisplacementMap filtra primitīvs nobīda pikseļus pirmajā attēlā izmantojot otro attēlu kā nobīžu karti, kas norāda no kāda attālumu pikseļiem jānāk. Klasiski piemēri ir virpuļa un knaibīšanas efekti." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2751 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2752 msgid "The feFlood filter primitive fills the region with a given color and opacity. It is usually used as an input to other filters to apply color to a graphic." msgstr "feFlood filtra primitīvs aizpilda laukumu ar norādīto krāsu un necaurspīdību. To parasti izmanto kā ievadi citiem filtriem, lai grafikai piešķirtu krāsas." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2755 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2756 msgid "The feGaussianBlur filter primitive uniformly blurs its input. It is commonly used together with feOffset to create a drop shadow effect." msgstr "feGaussianBlur filtrs vienādā mērā izpludina sākotnējo objektu. Visbiežāk to lieto kopā ar feOffset, lai izvedotu krītošas ēnas efektu." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2759 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2760 msgid "The feImage filter primitive fills the region with an external image or another part of the document." msgstr "feImage filtra primitīvs aizpilda apgabalu ar ārējā attēla vai citu dokumenta daļu kopijām." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2763 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2764 msgid "The feMerge filter primitive composites several temporary images inside the filter primitive to a single image. It uses normal alpha compositing for this. This is equivalent to using several feBlend primitives in 'normal' mode or several feComposite primitives in 'over' mode." -msgstr "" +msgstr "feMerge filtra primitīvs apvieno vairākus filtra primitīvā esošus pagaidu attēlus vienā. Šai darbībai tiek izmantota vienkārša alfa salikšana. Tas ir līdzīgs dažu feBlend filtru primitīvu izmantošanai 'parastā' (normal) režīmā vai dažu feComposite filtru primitīvu - 'pāri' (over) režīmā." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2767 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2768 msgid "The feMorphology filter primitive provides erode and dilate effects. For single-color objects erode makes the object thinner and dilate makes it thicker." msgstr "feMorphology filtra primitīvs nodrošina erozijas un izplešanas efektus. Vienas krāsas objektu gadījumā erozija padara objektu plānāku, izplešana - biezāku." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2771 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2772 msgid "The feOffset filter primitive offsets the image by an user-defined amount. For example, this is useful for drop shadows, where the shadow is in a slightly different position than the actual object." msgstr "feOffset filtra primitīvs nobīda attēlu par lietotāja noteiktu lielumu. Piemēram, tas ir noderīgs ēnu veidošanai, kurās ēna atrodas nedaudz citā stāvoklī nekā pats objekts." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2775 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2776 msgid "The feDiffuseLighting and feSpecularLighting filter primitives create \"embossed\" shadings. The input's alpha channel is used to provide depth information: higher opacity areas are raised toward the viewer and lower opacity areas recede away from the viewer." -msgstr "" +msgstr "feDiffuseLighting un feSpecularLighting filtru primitīvi rada \"ciļņotu \" ēnojumu. Sākotnējā attēla alfa kanāls tiks izmantots dziļuma informācijai: necaurspīdīgāki laukumi tiek tuvināti skatītājam, caurspīdīgāki - attālinānti." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2779 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2780 msgid "The feTile filter primitive tiles a region with its input graphic" msgstr "feTile filtra primitīvs aizpilda apgabalu ar ievadītās grafikas kopijām." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2783 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2784 msgid "The feTurbulence filter primitive renders Perlin noise. This kind of noise is useful in simulating several nature phenomena like clouds, fire and smoke and in generating complex textures like marble or granite." msgstr "feTurbulence filtra primitīvs renderē Perlina troksni. Šis trokšņa veids ir noderīgs dažādu dabas parādību atainošanai, piemēram - mākoņu, uguns un dūmu un tādu sarežģītu tekstūru veidošanai kā marmors vai granīts." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2802 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2803 msgid "Duplicate filter primitive" msgstr "Kopēt filtra primitīvu" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2855 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2856 msgid "Set filter primitive attribute" msgstr "Iestatīt filtra primitīva atribūtu" @@ -15064,7 +15070,7 @@ msgid "Search spirals" msgstr "Meklēt spirāles" #: ../src/ui/dialog/find.cpp:102 -#: ../src/widgets/toolbox.cpp:1732 +#: ../src/widgets/toolbox.cpp:1736 msgid "Paths" msgstr "Ceļi" @@ -15193,7 +15199,7 @@ msgstr "Izvēlieties objekta tipu" msgid "Select a property" msgstr "Izvēlieties īpašību" -#: ../src/ui/dialog/font-substitution.cpp:82 +#: ../src/ui/dialog/font-substitution.cpp:87 msgid "" "\n" "Some fonts are not available and have been substituted." @@ -15201,19 +15207,19 @@ msgstr "" "\n" "Daži fonti nav pieejami un ir aizvietoti." -#: ../src/ui/dialog/font-substitution.cpp:85 +#: ../src/ui/dialog/font-substitution.cpp:90 msgid "Font substitution" msgstr "Fontu aizvietojums" -#: ../src/ui/dialog/font-substitution.cpp:104 +#: ../src/ui/dialog/font-substitution.cpp:109 msgid "Select all the affected items" msgstr "Atlasīt visus ietekmētos objektus" -#: ../src/ui/dialog/font-substitution.cpp:109 +#: ../src/ui/dialog/font-substitution.cpp:114 msgid "Don't show this warning again" msgstr "Nerādīt atkārtoti šo brīdinājumu" -#: ../src/ui/dialog/font-substitution.cpp:250 +#: ../src/ui/dialog/font-substitution.cpp:255 msgid "Font '%1' substituted with '%2'" msgstr "Fonts '%1' aizvietots ar '%2'" @@ -15875,8 +15881,9 @@ msgid "Bamum" msgstr "Bamuma" #: ../src/ui/dialog/glyphs.cpp:271 +#, fuzzy msgid "Modifier Tone Letters" -msgstr "" +msgstr "Toni mainošie burti" #: ../src/ui/dialog/glyphs.cpp:272 msgid "Latin Extended-D" @@ -16043,25 +16050,25 @@ msgstr "Palīglīnijas ID: %s" msgid "Current: %s" msgstr "Pašreizējais: %s" -#: ../src/ui/dialog/icon-preview.cpp:155 +#: ../src/ui/dialog/icon-preview.cpp:159 #, c-format msgid "%d x %d" msgstr "%d x %d" -#: ../src/ui/dialog/icon-preview.cpp:167 +#: ../src/ui/dialog/icon-preview.cpp:171 msgid "Magnified:" msgstr "Palielināts:" -#: ../src/ui/dialog/icon-preview.cpp:236 +#: ../src/ui/dialog/icon-preview.cpp:240 msgid "Actual Size:" msgstr "Patiesais izmērs:" -#: ../src/ui/dialog/icon-preview.cpp:241 +#: ../src/ui/dialog/icon-preview.cpp:245 msgctxt "Icon preview window" msgid "Sele_ction" msgstr "At_lasītais" -#: ../src/ui/dialog/icon-preview.cpp:243 +#: ../src/ui/dialog/icon-preview.cpp:247 msgid "Selection only or whole document" msgstr "Tikai iezīmēto vai visu dokumentu." @@ -16318,11 +16325,11 @@ msgstr "Rādīt pagaidu aprises pat tad, ja ceļš ir atlasīts labošanai" #: ../src/ui/dialog/inkscape-preferences.cpp:362 msgid "_Flash time:" -msgstr "" +msgstr "Uzplaiksnīšanas laiks:" #: ../src/ui/dialog/inkscape-preferences.cpp:362 msgid "Specifies how long the path outline will be visible after a mouse-over (in milliseconds); specify 0 to have the outline shown until mouse leaves the path" -msgstr "" +msgstr "Nosaka, cik ilgi ceļa aprises būs redzamas pēc peles pārvietošanās virs ceļa (milisekundēs); ievadiet 0, lai aprises tiktu rādītas tikmēr, kamēr pele atrodas virs ceļa" #: ../src/ui/dialog/inkscape-preferences.cpp:363 msgid "Editing preferences" @@ -16355,13 +16362,13 @@ msgstr "Objekta krāsojuma stils" #. Zoom #: ../src/ui/dialog/inkscape-preferences.cpp:376 -#: ../src/widgets/desktop-widget.cpp:632 +#: ../src/widgets/desktop-widget.cpp:631 msgid "Zoom" msgstr "Tālummaiņa" #. Measure #: ../src/ui/dialog/inkscape-preferences.cpp:381 -#: ../src/verbs.cpp:2614 +#: ../src/verbs.cpp:2618 msgctxt "ContextVerb" msgid "Measure" msgstr "Mērīt" @@ -16408,7 +16415,7 @@ msgstr "Ja ieslēgts, tiks atlasīts katrs jaunizveidotais objekts (atceļot iep #. Text #: ../src/ui/dialog/inkscape-preferences.cpp:439 -#: ../src/verbs.cpp:2606 +#: ../src/verbs.cpp:2610 msgctxt "ContextVerb" msgid "Text" msgstr "Teksts" @@ -16500,7 +16507,7 @@ msgstr "Noklusētais jaunu krāsu pāreju leņķis grādos (pulksteņrādītāja #. Dropper #: ../src/ui/dialog/inkscape-preferences.cpp:493 msgid "Dropper" -msgstr "" +msgstr "Pipete" #. Connector #: ../src/ui/dialog/inkscape-preferences.cpp:498 @@ -16796,10 +16803,12 @@ msgid "Set the language for menus and number formats" msgstr "Iestatiet valodu izvēlnēm un skaitļu formātiem" #: ../src/ui/dialog/inkscape-preferences.cpp:561 +#: ../src/ui/dialog/inkscape-preferences.cpp:646 msgid "Large" msgstr "Liels" #: ../src/ui/dialog/inkscape-preferences.cpp:561 +#: ../src/ui/dialog/inkscape-preferences.cpp:646 msgid "Small" msgstr "Mazs" @@ -16861,16 +16870,16 @@ msgstr "Pieskaņojiet slīdni tikmēr, līdz lineāls uz ekrāna atbilst patiesa #: ../src/ui/dialog/inkscape-preferences.cpp:595 msgid "Enable dynamic relayout for incomplete sections" -msgstr "" +msgstr "Atļaut nepabeigtu nodaļu dinamisku pārkārtošanu" #: ../src/ui/dialog/inkscape-preferences.cpp:597 msgid "When on, will allow dynamic layout of components that are not completely finished being refactored" -msgstr "" +msgstr "Ja atļauts, ieslēdz vēl nepabeigtu komponentu dinamisku pārkārtošanu " #. show infobox #: ../src/ui/dialog/inkscape-preferences.cpp:600 msgid "Show filter primitives infobox (requires restart)" -msgstr "Rādīt filtru primitīvu informācijas rāmi (nepieciešams restarts)" +msgstr "Rādīt filtru primitīvu informācijas rāmi (nepieciešama pārstartēšana)" #: ../src/ui/dialog/inkscape-preferences.cpp:602 msgid "Show icons and descriptions for the filter primitives available at the filter effects dialog" @@ -16893,7 +16902,7 @@ msgstr "Ikonas un teksts" #: ../src/ui/dialog/inkscape-preferences.cpp:610 msgid "Dockbar style (requires restart):" -msgstr "Dokjoslas stils (nepieciešams restarts):" +msgstr "Dokjoslas stils (nepieciešama pārstartēšana):" #: ../src/ui/dialog/inkscape-preferences.cpp:611 msgid "Selects whether the vertical bars on the dockbar will show text labels, icons, or both" @@ -16901,7 +16910,7 @@ msgstr "Nosaka, vai dokjoslas vertikālās joslas saturēs teksta iezīmes, ikon #: ../src/ui/dialog/inkscape-preferences.cpp:618 msgid "Switcher style (requires restart):" -msgstr "Pārslēdzēja stils (nepieciešams restarts)" +msgstr "Pārslēdzēja stils (nepieciešama pārstartēšana)" #: ../src/ui/dialog/inkscape-preferences.cpp:619 msgid "Selects whether the dockbar switcher will show text labels, icons, or both" @@ -16925,12 +16934,12 @@ msgid "Save and restore dialogs status" msgstr "Saglabāt un atjaunot dialoglodziņu stāvokli" #: ../src/ui/dialog/inkscape-preferences.cpp:628 -#: ../src/ui/dialog/inkscape-preferences.cpp:655 +#: ../src/ui/dialog/inkscape-preferences.cpp:664 msgid "Don't save dialogs status" msgstr "Nesaglabāt dialoglodziņu stāvokli" #: ../src/ui/dialog/inkscape-preferences.cpp:630 -#: ../src/ui/dialog/inkscape-preferences.cpp:663 +#: ../src/ui/dialog/inkscape-preferences.cpp:672 msgid "Dockable" msgstr "Dokojams" @@ -16962,441 +16971,453 @@ msgstr "Rādīt aizvēršanas pogu dialoglodziņos" msgid "Aggressive" msgstr "Agresīvs" -#: ../src/ui/dialog/inkscape-preferences.cpp:645 +#: ../src/ui/dialog/inkscape-preferences.cpp:646 +msgid "Maximized" +msgstr "Maksimizēts" + +#: ../src/ui/dialog/inkscape-preferences.cpp:650 +msgid "Default window size:" +msgstr "Noklusētie loga izmēri:" + +#: ../src/ui/dialog/inkscape-preferences.cpp:651 +msgid "Set the default window size" +msgstr "Iestatiet noklusētos loga izmērus" + +#: ../src/ui/dialog/inkscape-preferences.cpp:654 msgid "Saving window geometry (size and position)" msgstr "Saglabā loga ģeometriju (izmēru un novietojumu)" -#: ../src/ui/dialog/inkscape-preferences.cpp:647 +#: ../src/ui/dialog/inkscape-preferences.cpp:656 msgid "Let the window manager determine placement of all windows" msgstr "Atļaut logu pārvaldniekam noteikt visu logu izvietojumu" -#: ../src/ui/dialog/inkscape-preferences.cpp:649 +#: ../src/ui/dialog/inkscape-preferences.cpp:658 msgid "Remember and use the last window's geometry (saves geometry to user preferences)" msgstr "Atcerēties un izmantot pēdējā loga ģeometriju (saglabā ģeometriju lietotāja iestatījumos)" -#: ../src/ui/dialog/inkscape-preferences.cpp:651 +#: ../src/ui/dialog/inkscape-preferences.cpp:660 msgid "Save and restore window geometry for each document (saves geometry in the document)" msgstr "Atcerēties un atjaunot loga ģeometriju katram dokumentam (saglabā ģeometriju dokumentos)" -#: ../src/ui/dialog/inkscape-preferences.cpp:653 +#: ../src/ui/dialog/inkscape-preferences.cpp:662 msgid "Saving dialogs status" msgstr "Saglabā dialoglodziņu stāvokli" -#: ../src/ui/dialog/inkscape-preferences.cpp:657 +#: ../src/ui/dialog/inkscape-preferences.cpp:666 msgid "Save and restore dialogs status (the last open windows dialogs are saved when it closes)" msgstr "Saglabāt un atjaunot dialogu stāvokli (pēdējie atvērtie dialogi tiek saglabāti, aizverot aplikāciju)" -#: ../src/ui/dialog/inkscape-preferences.cpp:661 +#: ../src/ui/dialog/inkscape-preferences.cpp:670 msgid "Dialog behavior (requires restart)" msgstr "Dialoglodziņu uzvedība (nepieciešama pārstartēšana)" -#: ../src/ui/dialog/inkscape-preferences.cpp:667 +#: ../src/ui/dialog/inkscape-preferences.cpp:676 msgid "Desktop integration" msgstr "Darbvirsmas integrēšana" -#: ../src/ui/dialog/inkscape-preferences.cpp:669 +#: ../src/ui/dialog/inkscape-preferences.cpp:678 msgid "Use Windows like open and save dialogs" msgstr "Izmantot Windows līdzīgus atvēršanas un saglabāšanas dialogus" -#: ../src/ui/dialog/inkscape-preferences.cpp:671 +#: ../src/ui/dialog/inkscape-preferences.cpp:680 msgid "Use GTK open and save dialogs " msgstr "Izmantot GTK atvēršanas un saglabāšanas dialogus" -#: ../src/ui/dialog/inkscape-preferences.cpp:675 +#: ../src/ui/dialog/inkscape-preferences.cpp:684 msgid "Dialogs on top:" msgstr "Dialoglodziņi virspusē:" -#: ../src/ui/dialog/inkscape-preferences.cpp:678 +#: ../src/ui/dialog/inkscape-preferences.cpp:687 msgid "Dialogs are treated as regular windows" msgstr "Dialogus uzskatīt par parastiem logiem" -#: ../src/ui/dialog/inkscape-preferences.cpp:680 +#: ../src/ui/dialog/inkscape-preferences.cpp:689 msgid "Dialogs stay on top of document windows" msgstr "Dialogi atrodas virs dokumenta loga" -#: ../src/ui/dialog/inkscape-preferences.cpp:682 +#: ../src/ui/dialog/inkscape-preferences.cpp:691 msgid "Same as Normal but may work better with some window managers" msgstr "Tāds pat kā Parasts, taču var darboties labāk ar dažiem logu pārvaldniekiem" -#: ../src/ui/dialog/inkscape-preferences.cpp:685 +#: ../src/ui/dialog/inkscape-preferences.cpp:694 msgid "Dialog Transparency" msgstr "Dialoglodziņu caurspīdīgums" -#: ../src/ui/dialog/inkscape-preferences.cpp:687 +#: ../src/ui/dialog/inkscape-preferences.cpp:696 msgid "_Opacity when focused:" msgstr "Necaurspīdība fokusētam" -#: ../src/ui/dialog/inkscape-preferences.cpp:689 +#: ../src/ui/dialog/inkscape-preferences.cpp:698 msgid "Opacity when _unfocused:" msgstr "Necaurspīdība ārpus fokusa" -#: ../src/ui/dialog/inkscape-preferences.cpp:691 +#: ../src/ui/dialog/inkscape-preferences.cpp:700 msgid "_Time of opacity change animation:" msgstr "Laiks necaurspīdīguma pārmaiņas animācijai:" -#: ../src/ui/dialog/inkscape-preferences.cpp:694 +#: ../src/ui/dialog/inkscape-preferences.cpp:703 msgid "Miscellaneous" msgstr "Dažādi" -#: ../src/ui/dialog/inkscape-preferences.cpp:697 +#: ../src/ui/dialog/inkscape-preferences.cpp:706 msgid "Whether dialog windows are to be hidden in the window manager taskbar" msgstr "Vai dialoglodziņi ir paslēpjami logu pārvaldnieka rīkjoslā" -#: ../src/ui/dialog/inkscape-preferences.cpp:700 +#: ../src/ui/dialog/inkscape-preferences.cpp:709 msgid "Zoom drawing when document window is resized, to keep the same area visible (this is the default which can be changed in any window using the button above the right scrollbar)" msgstr "Mainot loga izmēru tālummainīt zīmējumu, saglabājot nemainīgu redzamo laukumu (noklusētā uzvedība, ko var mainīt jebkurā logā, izmantojot pogu virs labās ritjoslas)" -#: ../src/ui/dialog/inkscape-preferences.cpp:702 +#: ../src/ui/dialog/inkscape-preferences.cpp:711 msgid "Save documents viewport (zoom and panning position). Useful to turn off when sharing version controlled files." msgstr "Saglabāt dokumenta skatu (tālummaiņu un panorāmēšanas pozīciju). Lietderīgi atslēgt, ja koplietojat versiju kontrolei pakļautus failus." -#: ../src/ui/dialog/inkscape-preferences.cpp:704 +#: ../src/ui/dialog/inkscape-preferences.cpp:713 msgid "Whether dialog windows have a close button (requires restart)" msgstr "Vai dialogu logiem ir aizvēršanas poga (nepieciešama pārstartēšana)" -#: ../src/ui/dialog/inkscape-preferences.cpp:705 +#: ../src/ui/dialog/inkscape-preferences.cpp:714 msgid "Windows" msgstr "Windows" #. Grids -#: ../src/ui/dialog/inkscape-preferences.cpp:708 +#: ../src/ui/dialog/inkscape-preferences.cpp:717 msgid "Line color when zooming out" msgstr "Līnijas krāsa tālinot" -#: ../src/ui/dialog/inkscape-preferences.cpp:711 +#: ../src/ui/dialog/inkscape-preferences.cpp:720 msgid "The gridlines will be shown in minor grid line color" msgstr "Režģa līnijas tiks rādītas režģa palīglīniju krāsā" -#: ../src/ui/dialog/inkscape-preferences.cpp:713 +#: ../src/ui/dialog/inkscape-preferences.cpp:722 msgid "The gridlines will be shown in major grid line color" msgstr "Režģa līnijas tiks rādītas režģa pamatlīniju krāsā" -#: ../src/ui/dialog/inkscape-preferences.cpp:715 +#: ../src/ui/dialog/inkscape-preferences.cpp:724 msgid "Default grid settings" msgstr "Noklusētie režģa iestatījumi" -#: ../src/ui/dialog/inkscape-preferences.cpp:721 -#: ../src/ui/dialog/inkscape-preferences.cpp:746 +#: ../src/ui/dialog/inkscape-preferences.cpp:730 +#: ../src/ui/dialog/inkscape-preferences.cpp:755 msgid "Grid units:" msgstr "Režģa vienības:" -#: ../src/ui/dialog/inkscape-preferences.cpp:726 -#: ../src/ui/dialog/inkscape-preferences.cpp:751 +#: ../src/ui/dialog/inkscape-preferences.cpp:735 +#: ../src/ui/dialog/inkscape-preferences.cpp:760 msgid "Origin X:" msgstr "Sākums X:" -#: ../src/ui/dialog/inkscape-preferences.cpp:727 -#: ../src/ui/dialog/inkscape-preferences.cpp:752 +#: ../src/ui/dialog/inkscape-preferences.cpp:736 +#: ../src/ui/dialog/inkscape-preferences.cpp:761 msgid "Origin Y:" msgstr "Sākums Y:" -#: ../src/ui/dialog/inkscape-preferences.cpp:732 +#: ../src/ui/dialog/inkscape-preferences.cpp:741 msgid "Spacing X:" msgstr "Atstarpe X:" -#: ../src/ui/dialog/inkscape-preferences.cpp:733 -#: ../src/ui/dialog/inkscape-preferences.cpp:755 +#: ../src/ui/dialog/inkscape-preferences.cpp:742 +#: ../src/ui/dialog/inkscape-preferences.cpp:764 msgid "Spacing Y:" msgstr "Atstarpe Y:" -#: ../src/ui/dialog/inkscape-preferences.cpp:735 -#: ../src/ui/dialog/inkscape-preferences.cpp:736 -#: ../src/ui/dialog/inkscape-preferences.cpp:760 -#: ../src/ui/dialog/inkscape-preferences.cpp:761 +#: ../src/ui/dialog/inkscape-preferences.cpp:744 +#: ../src/ui/dialog/inkscape-preferences.cpp:745 +#: ../src/ui/dialog/inkscape-preferences.cpp:769 +#: ../src/ui/dialog/inkscape-preferences.cpp:770 msgid "Minor grid line color:" msgstr "Režģa palīglīnijas krāsa:" -#: ../src/ui/dialog/inkscape-preferences.cpp:736 -#: ../src/ui/dialog/inkscape-preferences.cpp:761 +#: ../src/ui/dialog/inkscape-preferences.cpp:745 +#: ../src/ui/dialog/inkscape-preferences.cpp:770 msgid "Color used for normal grid lines" msgstr "Režģa palīglīniju krāsa" -#: ../src/ui/dialog/inkscape-preferences.cpp:737 -#: ../src/ui/dialog/inkscape-preferences.cpp:738 -#: ../src/ui/dialog/inkscape-preferences.cpp:762 -#: ../src/ui/dialog/inkscape-preferences.cpp:763 +#: ../src/ui/dialog/inkscape-preferences.cpp:746 +#: ../src/ui/dialog/inkscape-preferences.cpp:747 +#: ../src/ui/dialog/inkscape-preferences.cpp:771 +#: ../src/ui/dialog/inkscape-preferences.cpp:772 msgid "Major grid line color:" msgstr "Režģa pamatlīnijas krāsa:" -#: ../src/ui/dialog/inkscape-preferences.cpp:738 -#: ../src/ui/dialog/inkscape-preferences.cpp:763 +#: ../src/ui/dialog/inkscape-preferences.cpp:747 +#: ../src/ui/dialog/inkscape-preferences.cpp:772 msgid "Color used for major (highlighted) grid lines" msgstr "Režģa galveno (izcelto) līniju krāsa" -#: ../src/ui/dialog/inkscape-preferences.cpp:740 -#: ../src/ui/dialog/inkscape-preferences.cpp:765 +#: ../src/ui/dialog/inkscape-preferences.cpp:749 +#: ../src/ui/dialog/inkscape-preferences.cpp:774 msgid "Major grid line every:" msgstr "Režģa pamatlīnija ik pēc:" -#: ../src/ui/dialog/inkscape-preferences.cpp:741 +#: ../src/ui/dialog/inkscape-preferences.cpp:750 msgid "Show dots instead of lines" msgstr "Rādīt punktus līniju vietā" -#: ../src/ui/dialog/inkscape-preferences.cpp:742 +#: ../src/ui/dialog/inkscape-preferences.cpp:751 msgid "If set, display dots at gridpoints instead of gridlines" msgstr "Ja iestatīts, režģa krustpunktos līniju vietā tiks rādīti punkti" -#: ../src/ui/dialog/inkscape-preferences.cpp:823 +#: ../src/ui/dialog/inkscape-preferences.cpp:832 msgid "Input/Output" msgstr "ievade/izvade" -#: ../src/ui/dialog/inkscape-preferences.cpp:826 +#: ../src/ui/dialog/inkscape-preferences.cpp:835 msgid "Use current directory for \"Save As ...\"" msgstr "\"Saglabāt kā ...\" izmanto pašreizējo mapi" -#: ../src/ui/dialog/inkscape-preferences.cpp:828 +#: ../src/ui/dialog/inkscape-preferences.cpp:837 msgid "When this option is on, the \"Save as...\" and \"Save a Copy\" dialogs will always open in the directory where the currently open document is; when it's off, each will open in the directory where you last saved a file using it" msgstr "Ja šis iestatījums ir iestatīts, \"Saglabāt kā...\" un \"Saglabāt kopiju\" dialoglodziņi vienmēr tiks atvērti mapē, kurā atrodas pašreiz atvērtais dokuments; ja atiestatīts, katrs tiks atvērts mapē, kurā pēdējo reizi saglabājāt dokumentu ar to palīdzību" -#: ../src/ui/dialog/inkscape-preferences.cpp:830 +#: ../src/ui/dialog/inkscape-preferences.cpp:839 msgid "Add label comments to printing output" -msgstr "" +msgstr "Pievienot izdrukai iezīmju komentārus" -#: ../src/ui/dialog/inkscape-preferences.cpp:832 +#: ../src/ui/dialog/inkscape-preferences.cpp:841 msgid "When on, a comment will be added to the raw print output, marking the rendered output for an object with its label" -msgstr "" +msgstr "Ja ieslēgts, izdrukai tiks pievienots komentārs, iezīmējot renderēto objektu ar tā iezīmi" -#: ../src/ui/dialog/inkscape-preferences.cpp:834 +#: ../src/ui/dialog/inkscape-preferences.cpp:843 msgid "Add default metadata to new documents" msgstr "Jauniem dokumentiem pievienot noklusētos metadatus" -#: ../src/ui/dialog/inkscape-preferences.cpp:836 +#: ../src/ui/dialog/inkscape-preferences.cpp:845 msgid "Add default metadata to new documents. Default metadata can be set from Document Properties->Metadata." msgstr "Pievienot metadatus jaunam dokumentam. Noklusētos metadatus var iestatīt izmantojot Dokumenta īpašības -> Metadati." -#: ../src/ui/dialog/inkscape-preferences.cpp:840 +#: ../src/ui/dialog/inkscape-preferences.cpp:849 msgid "_Grab sensitivity:" -msgstr "" +msgstr "Satveršanas jutīgums:" -#: ../src/ui/dialog/inkscape-preferences.cpp:840 +#: ../src/ui/dialog/inkscape-preferences.cpp:849 msgid "pixels (requires restart)" -msgstr "pikseļi (nepieciešams restarts)" +msgstr "pikseļi (nepieciešama pārstartēšana)" -#: ../src/ui/dialog/inkscape-preferences.cpp:841 +#: ../src/ui/dialog/inkscape-preferences.cpp:850 msgid "How close on the screen you need to be to an object to be able to grab it with mouse (in screen pixels)" msgstr "Cik tuvu objektam uz ekrāna ir jāatrodas, lai to būtu iespējams satvert ar peli (ekrāna pikseļos)" -#: ../src/ui/dialog/inkscape-preferences.cpp:843 +#: ../src/ui/dialog/inkscape-preferences.cpp:852 msgid "_Click/drag threshold:" msgstr "Klikšķa/pārvietojuma slieksnis:" -#: ../src/ui/dialog/inkscape-preferences.cpp:843 -#: ../src/ui/dialog/inkscape-preferences.cpp:1181 -#: ../src/ui/dialog/inkscape-preferences.cpp:1185 -#: ../src/ui/dialog/inkscape-preferences.cpp:1195 +#: ../src/ui/dialog/inkscape-preferences.cpp:852 +#: ../src/ui/dialog/inkscape-preferences.cpp:1190 +#: ../src/ui/dialog/inkscape-preferences.cpp:1194 +#: ../src/ui/dialog/inkscape-preferences.cpp:1204 msgid "pixels" msgstr "pikseļi" -#: ../src/ui/dialog/inkscape-preferences.cpp:844 +#: ../src/ui/dialog/inkscape-preferences.cpp:853 msgid "Maximum mouse drag (in screen pixels) which is considered a click, not a drag" msgstr "Maksimālais peles pārvietojums (ekrāna pikseļos), ko jāuzskata par klikšķi, nevis pārvietojumu " -#: ../src/ui/dialog/inkscape-preferences.cpp:847 +#: ../src/ui/dialog/inkscape-preferences.cpp:856 msgid "_Handle size:" msgstr "Tura Izmērs:" -#: ../src/ui/dialog/inkscape-preferences.cpp:848 +#: ../src/ui/dialog/inkscape-preferences.cpp:857 msgid "Set the relative size of node handles" msgstr "Iestatiet mezgla turu relatīvo izmēru" -#: ../src/ui/dialog/inkscape-preferences.cpp:850 +#: ../src/ui/dialog/inkscape-preferences.cpp:859 msgid "Use pressure-sensitive tablet (requires restart)" msgstr "Izmanto spiedienjūtīgu planšeti (nepieciešama pārstartēšana)" -#: ../src/ui/dialog/inkscape-preferences.cpp:852 +#: ../src/ui/dialog/inkscape-preferences.cpp:861 msgid "Use the capabilities of a tablet or other pressure-sensitive device. Disable this only if you have problems with the tablet (you can still use it as a mouse)" msgstr "Izmantot planšetes vai citas spiedienjūtīgas iekārtas iespējas. Atslēdziet to tikai gadījumā, ja sastopaties ar problēmām ar planšeti (joprojām ir iespējams izmantot peli)" -#: ../src/ui/dialog/inkscape-preferences.cpp:854 +#: ../src/ui/dialog/inkscape-preferences.cpp:863 msgid "Switch tool based on tablet device (requires restart)" -msgstr "Pārslēgt rīku atkarībā no planšetes iekārtas (nepieciešams restarts)" +msgstr "Pārslēgt rīku atkarībā no planšetes iekārtas (nepieciešama pārstartēšana)" -#: ../src/ui/dialog/inkscape-preferences.cpp:856 +#: ../src/ui/dialog/inkscape-preferences.cpp:865 msgid "Change tool as different devices are used on the tablet (pen, eraser, mouse)" msgstr "Mainīt rīku, uz planšetes izmantojot dažādas ierīces (spalva, dzēšgumija, pele)" -#: ../src/ui/dialog/inkscape-preferences.cpp:857 +#: ../src/ui/dialog/inkscape-preferences.cpp:866 msgid "Input devices" msgstr "Ievadierīces" #. SVG output options -#: ../src/ui/dialog/inkscape-preferences.cpp:860 +#: ../src/ui/dialog/inkscape-preferences.cpp:869 msgid "Use named colors" msgstr "Lietot nosauktās krāsas" -#: ../src/ui/dialog/inkscape-preferences.cpp:861 +#: ../src/ui/dialog/inkscape-preferences.cpp:870 msgid "If set, write the CSS name of the color when available (e.g. 'red' or 'magenta') instead of the numeric value" msgstr "Ja iestatīts, raksta krāsas CSS nosaukumu, ja tāds pastāv (piem. 'red' (sarkans) vai 'magenta' (madženta)), nevis tās skaitlisko vērtību" -#: ../src/ui/dialog/inkscape-preferences.cpp:863 +#: ../src/ui/dialog/inkscape-preferences.cpp:872 msgid "XML formatting" msgstr "XML formatēšana" -#: ../src/ui/dialog/inkscape-preferences.cpp:865 +#: ../src/ui/dialog/inkscape-preferences.cpp:874 msgid "Inline attributes" msgstr "Iekļautie atribūti" -#: ../src/ui/dialog/inkscape-preferences.cpp:866 +#: ../src/ui/dialog/inkscape-preferences.cpp:875 msgid "Put attributes on the same line as the element tag" msgstr "Novietot atribūtus vienā rindā ar elementa tagu" -#: ../src/ui/dialog/inkscape-preferences.cpp:869 +#: ../src/ui/dialog/inkscape-preferences.cpp:878 msgid "_Indent, spaces:" msgstr "Atkāpes, tukšum_i:" -#: ../src/ui/dialog/inkscape-preferences.cpp:869 +#: ../src/ui/dialog/inkscape-preferences.cpp:878 msgid "The number of spaces to use for indenting nested elements; set to 0 for no indentation" msgstr "Tukšu vietu skaits atkāpēm, veidojot iegultus elementus; ievadiet 0, lai atkāpes neveidotu" -#: ../src/ui/dialog/inkscape-preferences.cpp:871 +#: ../src/ui/dialog/inkscape-preferences.cpp:880 msgid "Path data" msgstr "Ceļa dati" -#: ../src/ui/dialog/inkscape-preferences.cpp:873 +#: ../src/ui/dialog/inkscape-preferences.cpp:882 msgid "Allow relative coordinates" msgstr "Atļaut relatīvās koordinātes" -#: ../src/ui/dialog/inkscape-preferences.cpp:874 +#: ../src/ui/dialog/inkscape-preferences.cpp:883 msgid "If set, relative coordinates may be used in path data" msgstr "Ja ieslēgts, ceļu datos var tikt izmantotas relatīvās koordinātes" -#: ../src/ui/dialog/inkscape-preferences.cpp:876 +#: ../src/ui/dialog/inkscape-preferences.cpp:885 msgid "Force repeat commands" msgstr "Komandu piespiedu atkārtojums" -#: ../src/ui/dialog/inkscape-preferences.cpp:877 +#: ../src/ui/dialog/inkscape-preferences.cpp:886 msgid "Force repeating of the same path command (for example, 'L 1,2 L 3,4' instead of 'L 1,2 3,4')" msgstr "Piespiedu kārtā atkārtot to pašu ceļa komandu (piemēram,, 'L 1,2 L 3,4' ,nevis 'L 1,2 3,4')" -#: ../src/ui/dialog/inkscape-preferences.cpp:879 +#: ../src/ui/dialog/inkscape-preferences.cpp:888 msgid "Numbers" msgstr "Skaitļi" -#: ../src/ui/dialog/inkscape-preferences.cpp:882 +#: ../src/ui/dialog/inkscape-preferences.cpp:891 msgid "_Numeric precision:" msgstr "_Skaitliskā precizitāte:" -#: ../src/ui/dialog/inkscape-preferences.cpp:882 +#: ../src/ui/dialog/inkscape-preferences.cpp:891 msgid "Significant figures of the values written to the SVG file" msgstr "Vērtību zīmīgie cipari, ko ieraksta SVG failā" -#: ../src/ui/dialog/inkscape-preferences.cpp:885 +#: ../src/ui/dialog/inkscape-preferences.cpp:894 msgid "Minimum _exponent:" msgstr "Mazākā _eksponente:" -#: ../src/ui/dialog/inkscape-preferences.cpp:885 +#: ../src/ui/dialog/inkscape-preferences.cpp:894 msgid "The smallest number written to SVG is 10 to the power of this exponent; anything smaller is written as zero" msgstr "Mazākais SVG ierakstītais skaitlis ir 10 norādītajā pakāpē; jebkas, mazāks par šo tiks ierakstīts kā nulle" #. Code to add controls for attribute checking options #. Add incorrect style properties options -#: ../src/ui/dialog/inkscape-preferences.cpp:890 +#: ../src/ui/dialog/inkscape-preferences.cpp:899 msgid "Improper Attributes Actions" msgstr "Nepareizu atribūtu darbības" -#: ../src/ui/dialog/inkscape-preferences.cpp:892 -#: ../src/ui/dialog/inkscape-preferences.cpp:900 -#: ../src/ui/dialog/inkscape-preferences.cpp:908 +#: ../src/ui/dialog/inkscape-preferences.cpp:901 +#: ../src/ui/dialog/inkscape-preferences.cpp:909 +#: ../src/ui/dialog/inkscape-preferences.cpp:917 msgid "Print warnings" msgstr "Drukas brīdinājumi" -#: ../src/ui/dialog/inkscape-preferences.cpp:893 +#: ../src/ui/dialog/inkscape-preferences.cpp:902 msgid "Print warning if invalid or non-useful attributes found. Database files located in inkscape_data_dir/attributes." msgstr "Izvadīt paziņojumu, ja ir atrasts nederīgs vai neizmantojams atribūts. Datubāzes faili atrodas mapē inkscape_data_dir/attributes." -#: ../src/ui/dialog/inkscape-preferences.cpp:894 +#: ../src/ui/dialog/inkscape-preferences.cpp:903 msgid "Remove attributes" msgstr "Aizvākt atribūtus" -#: ../src/ui/dialog/inkscape-preferences.cpp:895 +#: ../src/ui/dialog/inkscape-preferences.cpp:904 msgid "Delete invalid or non-useful attributes from element tag" msgstr "Dzēst no elementa taga nederīgus vai neizmantojamus atribūtus" #. Add incorrect style properties options -#: ../src/ui/dialog/inkscape-preferences.cpp:898 +#: ../src/ui/dialog/inkscape-preferences.cpp:907 msgid "Inappropriate Style Properties Actions" msgstr "Nepiemērota stila īpašību darbības" -#: ../src/ui/dialog/inkscape-preferences.cpp:901 +#: ../src/ui/dialog/inkscape-preferences.cpp:910 msgid "Print warning if inappropriate style properties found (i.e. 'font-family' set on a ). Database files located in inkscape_data_dir/attributes." msgstr "Rādīt paziņojumu, ja atrastas nederīgas stila īpašības (piem. 'font-family' piemērots ). Datubāžu faili atrodas mapē inkscape_data_dir/attributes." -#: ../src/ui/dialog/inkscape-preferences.cpp:902 -#: ../src/ui/dialog/inkscape-preferences.cpp:910 +#: ../src/ui/dialog/inkscape-preferences.cpp:911 +#: ../src/ui/dialog/inkscape-preferences.cpp:919 msgid "Remove style properties" msgstr "Aizvākt stila īpašības" -#: ../src/ui/dialog/inkscape-preferences.cpp:903 +#: ../src/ui/dialog/inkscape-preferences.cpp:912 msgid "Delete inappropriate style properties" msgstr "Dzēst nepiemērotas stila īpašības" #. Add default or inherited style properties options -#: ../src/ui/dialog/inkscape-preferences.cpp:906 +#: ../src/ui/dialog/inkscape-preferences.cpp:915 msgid "Non-useful Style Properties Actions" msgstr "Darbības ar neizmantojamām stilu īpašībām" -#: ../src/ui/dialog/inkscape-preferences.cpp:909 +#: ../src/ui/dialog/inkscape-preferences.cpp:918 msgid "Print warning if redundant style properties found (i.e. if a property has the default value and a different value is not inherited or if value is the same as would be inherited). Database files located in inkscape_data_dir/attributes." msgstr "Rādīt paziņojumu, ja atrastas liekas stila īpašības (piem., ja īpašībai ir noklusētā vērtība un atšķirīgā vērtība nav mantota vai arī vērtība neatšķiras no mantojamās). Datubāžu faili atrodas mapē inkscape_data_dir/attributes." -#: ../src/ui/dialog/inkscape-preferences.cpp:911 +#: ../src/ui/dialog/inkscape-preferences.cpp:920 msgid "Delete redundant style properties" msgstr "Dzēst liekās stila īpašības" -#: ../src/ui/dialog/inkscape-preferences.cpp:913 +#: ../src/ui/dialog/inkscape-preferences.cpp:922 msgid "Check Attributes and Style Properties on" msgstr "Pārbaudīt atribūtus un stila īpašības" -#: ../src/ui/dialog/inkscape-preferences.cpp:915 +#: ../src/ui/dialog/inkscape-preferences.cpp:924 msgid "Reading" msgstr "Lasa" -#: ../src/ui/dialog/inkscape-preferences.cpp:916 +#: ../src/ui/dialog/inkscape-preferences.cpp:925 msgid "Check attributes and style properties on reading in SVG files (including those internal to Inkscape which will slow down startup)" msgstr "Pārbaudīt atribūtus un stila īpašības atverot SVG failus (ieskaitot Inkscape iekšējos, palielinot darba sākšanai nepieciešamo laiku)" -#: ../src/ui/dialog/inkscape-preferences.cpp:917 +#: ../src/ui/dialog/inkscape-preferences.cpp:926 msgid "Editing" msgstr "Labo" -#: ../src/ui/dialog/inkscape-preferences.cpp:918 +#: ../src/ui/dialog/inkscape-preferences.cpp:927 msgid "Check attributes and style properties while editing SVG files (may slow down Inkscape, mostly useful for debugging)" msgstr "Pārbaudīt atribūtus un stila īpašības SVG failu rediģēšanas laikā (var palēnināt Inkscape darbību, pamatā noderīgs atkļūdošanai)" -#: ../src/ui/dialog/inkscape-preferences.cpp:919 +#: ../src/ui/dialog/inkscape-preferences.cpp:928 msgid "Writing" msgstr "Raksta" -#: ../src/ui/dialog/inkscape-preferences.cpp:920 +#: ../src/ui/dialog/inkscape-preferences.cpp:929 msgid "Check attributes and style properties on writing out SVG files" msgstr "Pārbaudīt atribūtus un stila īpašības saglabājot SVG failus" -#: ../src/ui/dialog/inkscape-preferences.cpp:922 +#: ../src/ui/dialog/inkscape-preferences.cpp:931 msgid "SVG output" msgstr "SVG izvade" #. TRANSLATORS: see http://www.newsandtech.com/issues/2004/03-04/pt/03-04_rendering.htm -#: ../src/ui/dialog/inkscape-preferences.cpp:928 +#: ../src/ui/dialog/inkscape-preferences.cpp:937 msgid "Perceptual" -msgstr "" +msgstr "Uztverams" -#: ../src/ui/dialog/inkscape-preferences.cpp:928 +#: ../src/ui/dialog/inkscape-preferences.cpp:937 msgid "Relative Colorimetric" msgstr "Relatīvi kolorimetrisks" -#: ../src/ui/dialog/inkscape-preferences.cpp:928 +#: ../src/ui/dialog/inkscape-preferences.cpp:937 msgid "Absolute Colorimetric" msgstr "Absolūti kolorimetrisks" -#: ../src/ui/dialog/inkscape-preferences.cpp:932 +#: ../src/ui/dialog/inkscape-preferences.cpp:941 msgid "(Note: Color management has been disabled in this build)" msgstr "(Piezīme: krāsu vadība šajā versijā ir atslēgta)" -#: ../src/ui/dialog/inkscape-preferences.cpp:936 +#: ../src/ui/dialog/inkscape-preferences.cpp:945 msgid "Display adjustment" msgstr "Ekrāna pieskaņošana" -#: ../src/ui/dialog/inkscape-preferences.cpp:946 +#: ../src/ui/dialog/inkscape-preferences.cpp:955 #, c-format msgid "" "The ICC profile to use to calibrate display output.\n" @@ -17405,135 +17426,135 @@ msgstr "" "ICC profils ekrāna krāsu kalibrēšanai.\n" "Pārmeklētās mapes: %s" -#: ../src/ui/dialog/inkscape-preferences.cpp:947 +#: ../src/ui/dialog/inkscape-preferences.cpp:956 msgid "Display profile:" msgstr "Ekrāna profils:" -#: ../src/ui/dialog/inkscape-preferences.cpp:952 +#: ../src/ui/dialog/inkscape-preferences.cpp:961 msgid "Retrieve profile from display" msgstr "Iegūt profilu no ekrāna" -#: ../src/ui/dialog/inkscape-preferences.cpp:955 +#: ../src/ui/dialog/inkscape-preferences.cpp:964 msgid "Retrieve profiles from those attached to displays via XICC" msgstr "Iegūt profilus no ekrāniem pievienotajiem izmantojot XICC" -#: ../src/ui/dialog/inkscape-preferences.cpp:957 +#: ../src/ui/dialog/inkscape-preferences.cpp:966 msgid "Retrieve profiles from those attached to displays" msgstr "Iegūt profilus no ekrāniem pievienotajiem" -#: ../src/ui/dialog/inkscape-preferences.cpp:962 +#: ../src/ui/dialog/inkscape-preferences.cpp:971 msgid "Display rendering intent:" msgstr "Ekrāna renderējuma nolūks:" -#: ../src/ui/dialog/inkscape-preferences.cpp:963 +#: ../src/ui/dialog/inkscape-preferences.cpp:972 msgid "The rendering intent to use to calibrate display output" msgstr "Ekrāna renderējumu domāts ekrāna kalibrēšanai" -#: ../src/ui/dialog/inkscape-preferences.cpp:965 +#: ../src/ui/dialog/inkscape-preferences.cpp:974 msgid "Proofing" msgstr "Pārbaudes" -#: ../src/ui/dialog/inkscape-preferences.cpp:967 +#: ../src/ui/dialog/inkscape-preferences.cpp:976 msgid "Simulate output on screen" msgstr "Emulēt izvadi uz ekrāna" -#: ../src/ui/dialog/inkscape-preferences.cpp:969 +#: ../src/ui/dialog/inkscape-preferences.cpp:978 msgid "Simulates output of target device" msgstr "Emulē izvadi uz mērķa ierīci" -#: ../src/ui/dialog/inkscape-preferences.cpp:971 +#: ../src/ui/dialog/inkscape-preferences.cpp:980 msgid "Mark out of gamut colors" msgstr "Atzīmēt krāsas, kas neietilpst krāsu gammā" -#: ../src/ui/dialog/inkscape-preferences.cpp:973 +#: ../src/ui/dialog/inkscape-preferences.cpp:982 msgid "Highlights colors that are out of gamut for the target device" msgstr "Izceļ krāsas, kas ir ārpus mērķa ierīces krāsu gammas" -#: ../src/ui/dialog/inkscape-preferences.cpp:985 +#: ../src/ui/dialog/inkscape-preferences.cpp:994 msgid "Out of gamut warning color:" -msgstr "Krāsa brīdinājuma paziņojumam par krāsu gammā neietilpstošām krāsām" +msgstr "Krāsa brīdinājumam par krāsu gammā neietilpstošām krāsām" -#: ../src/ui/dialog/inkscape-preferences.cpp:986 +#: ../src/ui/dialog/inkscape-preferences.cpp:995 msgid "Selects the color used for out of gamut warning" msgstr "Izvēlas krāsu, ko izmantot paziņojuma par neietilpšanu krāsu gammā" -#: ../src/ui/dialog/inkscape-preferences.cpp:988 +#: ../src/ui/dialog/inkscape-preferences.cpp:997 msgid "Device profile:" msgstr "Ierīces profils:" -#: ../src/ui/dialog/inkscape-preferences.cpp:989 +#: ../src/ui/dialog/inkscape-preferences.cpp:998 msgid "The ICC profile to use to simulate device output" msgstr "ICC profils, ko izmantot imitējot izvadi uz iekārtas" -#: ../src/ui/dialog/inkscape-preferences.cpp:992 +#: ../src/ui/dialog/inkscape-preferences.cpp:1001 msgid "Device rendering intent:" msgstr "Iekārtas renderējuma nolūks:" -#: ../src/ui/dialog/inkscape-preferences.cpp:993 +#: ../src/ui/dialog/inkscape-preferences.cpp:1002 msgid "The rendering intent to use to calibrate device output" msgstr "Iekārtas renderējums domēts iekārtas kalibrēšanai" -#: ../src/ui/dialog/inkscape-preferences.cpp:995 +#: ../src/ui/dialog/inkscape-preferences.cpp:1004 msgid "Black point compensation" msgstr "Melnā punkta kompensācija" -#: ../src/ui/dialog/inkscape-preferences.cpp:997 +#: ../src/ui/dialog/inkscape-preferences.cpp:1006 msgid "Enables black point compensation" msgstr "Ieslēdz melnā punkta kompensāciju" -#: ../src/ui/dialog/inkscape-preferences.cpp:999 +#: ../src/ui/dialog/inkscape-preferences.cpp:1008 msgid "Preserve black" msgstr "Saglabāt melno" -#: ../src/ui/dialog/inkscape-preferences.cpp:1006 +#: ../src/ui/dialog/inkscape-preferences.cpp:1015 msgid "(LittleCMS 1.15 or later required)" msgstr "(nepieciešama LittleCMS 1.15 vai jaunāka)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1008 +#: ../src/ui/dialog/inkscape-preferences.cpp:1017 msgid "Preserve K channel in CMYK -> CMYK transforms" msgstr "Saglabāt K kanālu CMYK -> CMYK transformācijās" -#: ../src/ui/dialog/inkscape-preferences.cpp:1022 -#: ../src/widgets/sp-color-icc-selector.cpp:325 -#: ../src/widgets/sp-color-icc-selector.cpp:678 +#: ../src/ui/dialog/inkscape-preferences.cpp:1031 +#: ../src/widgets/sp-color-icc-selector.cpp:472 +#: ../src/widgets/sp-color-icc-selector.cpp:764 msgid "" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1067 +#: ../src/ui/dialog/inkscape-preferences.cpp:1076 msgid "Color management" msgstr "Krāsu valdība" #. Autosave options -#: ../src/ui/dialog/inkscape-preferences.cpp:1070 +#: ../src/ui/dialog/inkscape-preferences.cpp:1079 msgid "Enable autosave (requires restart)" msgstr "Ieslēgt automātisko saglabāšanu (nepieciešama pārstartēšana)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1071 +#: ../src/ui/dialog/inkscape-preferences.cpp:1080 msgid "Automatically save the current document(s) at a given interval, thus minimizing loss in case of a crash" msgstr "Automātiski saglabāt dokumentu(s) ik pēc noteiktā laika intervāla, tādējādi mazinot iespējamos zudumus avārijas apstāšanās gadījumā" -#: ../src/ui/dialog/inkscape-preferences.cpp:1077 +#: ../src/ui/dialog/inkscape-preferences.cpp:1086 msgctxt "Filesystem" msgid "Autosave _directory:" msgstr "Mape automātiskai _saglabāšanai:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1077 +#: ../src/ui/dialog/inkscape-preferences.cpp:1086 msgid "The directory where autosaves will be written. This should be an absolute path (starts with / on UNIX or a drive letter such as C: on Windows). " msgstr "Mape, kurā tiks saglabātas automātiskās kopijas. Tam ir jābūt absolūtam ceļam (sākas ar / UNIX vai diska burtu, piemēram, C:, uz Windows)." -#: ../src/ui/dialog/inkscape-preferences.cpp:1079 +#: ../src/ui/dialog/inkscape-preferences.cpp:1088 msgid "_Interval (in minutes):" msgstr "_Intervāls (minūtēs):" -#: ../src/ui/dialog/inkscape-preferences.cpp:1079 +#: ../src/ui/dialog/inkscape-preferences.cpp:1088 msgid "Interval (in minutes) at which document will be autosaved" msgstr "Intervāls (minūtēs), pēc kura dokuments tiks automātiski saglabāts" -#: ../src/ui/dialog/inkscape-preferences.cpp:1081 +#: ../src/ui/dialog/inkscape-preferences.cpp:1090 msgid "_Maximum number of autosaves:" msgstr "_Maksimālais automātisko saglabājumu skaits:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1081 +#: ../src/ui/dialog/inkscape-preferences.cpp:1090 msgid "Maximum number of autosaved files; use this to limit the storage space used" msgstr "Maksimālais automātiski saglabāto failu skaits; izmantojiet šo iestatījumu, lai ierobežotu diska vietas izmantošanu" @@ -17549,241 +17570,241 @@ msgstr "Maksimālais automātiski saglabāto failu skaits; izmantojiet šo iesta #. _autosave_autosave_interval.signal_changed().connect( sigc::ptr_fun(inkscape_autosave_init), TRUE ); #. #. ----------- -#: ../src/ui/dialog/inkscape-preferences.cpp:1096 +#: ../src/ui/dialog/inkscape-preferences.cpp:1105 msgid "Autosave" msgstr "Automātiska saglabāšana" -#: ../src/ui/dialog/inkscape-preferences.cpp:1100 +#: ../src/ui/dialog/inkscape-preferences.cpp:1109 msgid "Open Clip Art Library _Server Name:" msgstr "Open Clip Art bibliotēkas _servera nosaukums:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1101 +#: ../src/ui/dialog/inkscape-preferences.cpp:1110 msgid "The server name of the Open Clip Art Library webdav server; it's used by the Import and Export to OCAL function" msgstr "Open Clip Art bibliotēkas webdav servera nosaukums; tiek izmantots importējot un eksportējot uz OCAL funkcijā" -#: ../src/ui/dialog/inkscape-preferences.cpp:1103 +#: ../src/ui/dialog/inkscape-preferences.cpp:1112 msgid "Open Clip Art Library _Username:" msgstr "Open Clip Art bibliotēkas lietotāja vārds:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1104 +#: ../src/ui/dialog/inkscape-preferences.cpp:1113 msgid "The username used to log into Open Clip Art Library" msgstr "Lietotāja vārds, ar kuru pieslēgties Open Clip Art bibliotēkai" -#: ../src/ui/dialog/inkscape-preferences.cpp:1106 +#: ../src/ui/dialog/inkscape-preferences.cpp:1115 msgid "Open Clip Art Library _Password:" msgstr "Open Clip Art bibliotēkas _parole:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1107 +#: ../src/ui/dialog/inkscape-preferences.cpp:1116 msgid "The password used to log into Open Clip Art Library" msgstr "Parole, ar kuru pieslēgties Open Clip Art bibliotēkai" -#: ../src/ui/dialog/inkscape-preferences.cpp:1108 +#: ../src/ui/dialog/inkscape-preferences.cpp:1117 msgid "Open Clip Art" msgstr "Open Clip Art" -#: ../src/ui/dialog/inkscape-preferences.cpp:1113 +#: ../src/ui/dialog/inkscape-preferences.cpp:1122 msgid "Behavior" msgstr "Uzvedība" -#: ../src/ui/dialog/inkscape-preferences.cpp:1117 +#: ../src/ui/dialog/inkscape-preferences.cpp:1126 msgid "_Simplification threshold:" msgstr "Vienkāršošana_s slieksnis:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1118 +#: ../src/ui/dialog/inkscape-preferences.cpp:1127 msgid "How strong is the Node tool's Simplify command by default. If you invoke this command several times in quick succession, it will act more and more aggressively; invoking it again after a pause restores the default threshold." -msgstr "" +msgstr "Nosaka Mezglu rīka Komanda Vienkāršot noklusēto spēku. Ja izmantosiet šo komandu vairākkārt ar īsā laikā, tā darbosies arvien agresīvāk, izsaucot to pēc garāka pārtraukuma tiks atjaunots sākotnējais slieksnis." -#: ../src/ui/dialog/inkscape-preferences.cpp:1120 +#: ../src/ui/dialog/inkscape-preferences.cpp:1129 msgid "Color stock markers the same color as object" msgstr "Krāsot standarta marķierus objekta krāsā" -#: ../src/ui/dialog/inkscape-preferences.cpp:1121 +#: ../src/ui/dialog/inkscape-preferences.cpp:1130 msgid "Color custom markers the same color as object" msgstr "Krāsot pielāgotos marķierus objekta krāsā" -#: ../src/ui/dialog/inkscape-preferences.cpp:1122 -#: ../src/ui/dialog/inkscape-preferences.cpp:1332 +#: ../src/ui/dialog/inkscape-preferences.cpp:1131 +#: ../src/ui/dialog/inkscape-preferences.cpp:1341 msgid "Update marker color when object color changes" msgstr "Atsvaidzināt marķiera krāsu mainoties objekta krāsai" #. Selecting options -#: ../src/ui/dialog/inkscape-preferences.cpp:1125 +#: ../src/ui/dialog/inkscape-preferences.cpp:1134 msgid "Select in all layers" msgstr "Atlasīt visos slāņos" -#: ../src/ui/dialog/inkscape-preferences.cpp:1126 +#: ../src/ui/dialog/inkscape-preferences.cpp:1135 msgid "Select only within current layer" msgstr "Iezīmēt tikai pašreizējā slānī" -#: ../src/ui/dialog/inkscape-preferences.cpp:1127 +#: ../src/ui/dialog/inkscape-preferences.cpp:1136 msgid "Select in current layer and sublayers" msgstr "Atlasīt pašreizējā slānī un apakšlāņos" -#: ../src/ui/dialog/inkscape-preferences.cpp:1128 +#: ../src/ui/dialog/inkscape-preferences.cpp:1137 msgid "Ignore hidden objects and layers" msgstr "Neņemt vērā slēptus objektus un slāņus" -#: ../src/ui/dialog/inkscape-preferences.cpp:1129 +#: ../src/ui/dialog/inkscape-preferences.cpp:1138 msgid "Ignore locked objects and layers" msgstr "Neņemt vērā slēgtus objektus un slāņus" -#: ../src/ui/dialog/inkscape-preferences.cpp:1130 +#: ../src/ui/dialog/inkscape-preferences.cpp:1139 msgid "Deselect upon layer change" msgstr "Atcelt atlasi mainoties slānim" -#: ../src/ui/dialog/inkscape-preferences.cpp:1133 +#: ../src/ui/dialog/inkscape-preferences.cpp:1142 msgid "Uncheck this to be able to keep the current objects selected when the current layer changes" msgstr "Atiestatiet šo, lai būtu iespējams saglabāt objektu atlasi mainoties aktīvajam slānim" -#: ../src/ui/dialog/inkscape-preferences.cpp:1135 +#: ../src/ui/dialog/inkscape-preferences.cpp:1144 msgid "Ctrl+A, Tab, Shift+Tab" msgstr "Ctrl+A, Tab, Shift+Tab" -#: ../src/ui/dialog/inkscape-preferences.cpp:1137 +#: ../src/ui/dialog/inkscape-preferences.cpp:1146 msgid "Make keyboard selection commands work on objects in all layers" msgstr "Klaviatūras atlasīšanas komandas darbosies ar objektiem visos slāņos" -#: ../src/ui/dialog/inkscape-preferences.cpp:1139 +#: ../src/ui/dialog/inkscape-preferences.cpp:1148 msgid "Make keyboard selection commands work on objects in current layer only" msgstr "Klaviatūras atlasīšanas komandas darbosies ar objektiem tikai pašreizējā slānī" -#: ../src/ui/dialog/inkscape-preferences.cpp:1141 +#: ../src/ui/dialog/inkscape-preferences.cpp:1150 msgid "Make keyboard selection commands work on objects in current layer and all its sublayers" msgstr "Klaviatūras atlasīšanas komandas darbosies ar objektiem tikai pašreizējā slānī un visos tā apakšslāņos" -#: ../src/ui/dialog/inkscape-preferences.cpp:1143 +#: ../src/ui/dialog/inkscape-preferences.cpp:1152 msgid "Uncheck this to be able to select objects that are hidden (either by themselves or by being in a hidden layer)" msgstr "Atiestatiet šo, lai būtu iespējams atlasīt slēptos objektus (slēptus kā tādus vai arī atrodošos slēptos slāņos)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1145 +#: ../src/ui/dialog/inkscape-preferences.cpp:1154 msgid "Uncheck this to be able to select objects that are locked (either by themselves or by being in a locked layer)" msgstr "Atiestatiet šo, lai būtu iespējams atlasīt slēgtos objektus (slēgtus kā tādus vai arī atrodošos slēgtos slāņos)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1147 +#: ../src/ui/dialog/inkscape-preferences.cpp:1156 msgid "Wrap when cycling objects in z-order" msgstr "Atsākt no sākuma ciklojot objektus gar z-asi" -#: ../src/ui/dialog/inkscape-preferences.cpp:1149 +#: ../src/ui/dialog/inkscape-preferences.cpp:1158 msgid "Alt+Scroll Wheel" msgstr "Alt+peles ritentiņš" -#: ../src/ui/dialog/inkscape-preferences.cpp:1151 +#: ../src/ui/dialog/inkscape-preferences.cpp:1160 msgid "Wrap around at start and end when cycling objects in z-order" msgstr "Iet uz riņķi sasniedzot sākumu vai beigas objektu ciklošanas gar z-asi laikā" -#: ../src/ui/dialog/inkscape-preferences.cpp:1153 +#: ../src/ui/dialog/inkscape-preferences.cpp:1162 msgid "Selecting" msgstr "Izvēlas" #. Transforms options -#: ../src/ui/dialog/inkscape-preferences.cpp:1156 +#: ../src/ui/dialog/inkscape-preferences.cpp:1165 #: ../src/widgets/select-toolbar.cpp:572 msgid "Scale stroke width" msgstr "Mainīt apmales platumu" -#: ../src/ui/dialog/inkscape-preferences.cpp:1157 +#: ../src/ui/dialog/inkscape-preferences.cpp:1166 msgid "Scale rounded corners in rectangles" msgstr "Mērogot noapaļotos taisnstūra stūrus" -#: ../src/ui/dialog/inkscape-preferences.cpp:1158 +#: ../src/ui/dialog/inkscape-preferences.cpp:1167 msgid "Transform gradients" msgstr "Pārveidot krāsu pārejas" -#: ../src/ui/dialog/inkscape-preferences.cpp:1159 +#: ../src/ui/dialog/inkscape-preferences.cpp:1168 msgid "Transform patterns" msgstr "Pārveidot faktūras" -#: ../src/ui/dialog/inkscape-preferences.cpp:1160 +#: ../src/ui/dialog/inkscape-preferences.cpp:1169 msgid "Optimized" msgstr "Optimizēts" -#: ../src/ui/dialog/inkscape-preferences.cpp:1161 +#: ../src/ui/dialog/inkscape-preferences.cpp:1170 msgid "Preserved" msgstr "Saglabāts" -#: ../src/ui/dialog/inkscape-preferences.cpp:1164 +#: ../src/ui/dialog/inkscape-preferences.cpp:1173 #: ../src/widgets/select-toolbar.cpp:573 msgid "When scaling objects, scale the stroke width by the same proportion" msgstr "Mērogojot objektus, proporcionāli mērogot arī apmales platumu" -#: ../src/ui/dialog/inkscape-preferences.cpp:1166 +#: ../src/ui/dialog/inkscape-preferences.cpp:1175 #: ../src/widgets/select-toolbar.cpp:584 msgid "When scaling rectangles, scale the radii of rounded corners" msgstr "Mērogojot taisnstūrus, mērogot arī noapaļoto stūru rādiusus" -#: ../src/ui/dialog/inkscape-preferences.cpp:1168 +#: ../src/ui/dialog/inkscape-preferences.cpp:1177 #: ../src/widgets/select-toolbar.cpp:595 msgid "Move gradients (in fill or stroke) along with the objects" msgstr "Pārvietot krāsu pārejas (aizpildījumā vai apmalē) kopā ar objektiem" -#: ../src/ui/dialog/inkscape-preferences.cpp:1170 +#: ../src/ui/dialog/inkscape-preferences.cpp:1179 #: ../src/widgets/select-toolbar.cpp:606 msgid "Move patterns (in fill or stroke) along with the objects" msgstr "Pārvietot faktūras (aizpildījumā vai apmalē) kopā ar objektiem" -#: ../src/ui/dialog/inkscape-preferences.cpp:1171 +#: ../src/ui/dialog/inkscape-preferences.cpp:1180 msgid "Store transformation" msgstr "Saglabāt pārveidojumu" -#: ../src/ui/dialog/inkscape-preferences.cpp:1173 +#: ../src/ui/dialog/inkscape-preferences.cpp:1182 msgid "If possible, apply transformation to objects without adding a transform= attribute" msgstr "Ja iespējams, pielietojot pārveidojumus objektiem nepievienot transform= atribūtu" -#: ../src/ui/dialog/inkscape-preferences.cpp:1175 +#: ../src/ui/dialog/inkscape-preferences.cpp:1184 msgid "Always store transformation as a transform= attribute on objects" msgstr "Vienmēr saglabāt pārveidojumu objektā kā transform= atribūtu " -#: ../src/ui/dialog/inkscape-preferences.cpp:1177 +#: ../src/ui/dialog/inkscape-preferences.cpp:1186 msgid "Transforms" msgstr "Pārveidojumi" -#: ../src/ui/dialog/inkscape-preferences.cpp:1181 +#: ../src/ui/dialog/inkscape-preferences.cpp:1190 msgid "Mouse _wheel scrolls by:" msgstr "Peles _rullītis ritina par:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1182 +#: ../src/ui/dialog/inkscape-preferences.cpp:1191 msgid "One mouse wheel notch scrolls by this distance in screen pixels (horizontally with Shift)" msgstr "Viens peles ritenīša robiņš ritina par norādīto, ekrāna pikseļos izteikto, attālumu (horizontālai ritināšanai - ar Shift)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1183 +#: ../src/ui/dialog/inkscape-preferences.cpp:1192 msgid "Ctrl+arrows" msgstr "Ctrl+bultiņas" -#: ../src/ui/dialog/inkscape-preferences.cpp:1185 +#: ../src/ui/dialog/inkscape-preferences.cpp:1194 msgid "Sc_roll by:" msgstr "_Ritināt par:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1186 +#: ../src/ui/dialog/inkscape-preferences.cpp:1195 msgid "Pressing Ctrl+arrow key scrolls by this distance (in screen pixels)" msgstr "Ctrl+bultiņa nospiešana ritina par norādīto, ekrāna pikseļos izteikto, attālumu" -#: ../src/ui/dialog/inkscape-preferences.cpp:1188 +#: ../src/ui/dialog/inkscape-preferences.cpp:1197 msgid "_Acceleration:" msgstr "_Paātrinājums:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1189 +#: ../src/ui/dialog/inkscape-preferences.cpp:1198 msgid "Pressing and holding Ctrl+arrow will gradually speed up scrolling (0 for no acceleration)" msgstr "Nospiežot un turot nospiestu Ctrl+bultiņa ritināšana pakāpeniski paātrināsies (0 - lai ritinātu bez paātrinājuma)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1190 +#: ../src/ui/dialog/inkscape-preferences.cpp:1199 msgid "Autoscrolling" msgstr "Autoritināšana" -#: ../src/ui/dialog/inkscape-preferences.cpp:1192 +#: ../src/ui/dialog/inkscape-preferences.cpp:1201 msgid "_Speed:" msgstr "Ātrum_s:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1193 +#: ../src/ui/dialog/inkscape-preferences.cpp:1202 msgid "How fast the canvas autoscrolls when you drag beyond canvas edge (0 to turn autoscroll off)" msgstr "Cik ātri audekls ritināsies, ja tiks vilkts pāri audekla malai (0, lai izslēgtu automātisko ritināšanu)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1195 +#: ../src/ui/dialog/inkscape-preferences.cpp:1204 #: ../src/ui/dialog/tracedialog.cpp:522 #: ../src/ui/dialog/tracedialog.cpp:721 msgid "_Threshold:" msgstr "S_lieksnis:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1196 +#: ../src/ui/dialog/inkscape-preferences.cpp:1205 msgid "How far (in screen pixels) you need to be from the canvas edge to trigger autoscroll; positive is outside the canvas, negative is within the canvas" msgstr "Cik tālu (ekrāna pikseļos) ir jāatrodas no audekla malas, lai ieslēgtos automātiskā ritināšanās; pozitīvs skaitlis - ārpus audekla malām, negatīvs - iekšpus" @@ -17792,635 +17813,653 @@ msgstr "Cik tālu (ekrāna pikseļos) ir jāatrodas no audekla malas, lai ieslē #. _page_scrolling.add_line( false, "", _scroll_space, "", #. _("When on, pressing and holding Space and dragging with left mouse button pans canvas (as in Adobe Illustrator); when off, Space temporarily switches to Selector tool (default)")); #. -#: ../src/ui/dialog/inkscape-preferences.cpp:1202 +#: ../src/ui/dialog/inkscape-preferences.cpp:1211 msgid "Mouse wheel zooms by default" msgstr "Peles ritenītis pēc noklusēšanas veic tālummaiņu " -#: ../src/ui/dialog/inkscape-preferences.cpp:1204 +#: ../src/ui/dialog/inkscape-preferences.cpp:1213 msgid "When on, mouse wheel zooms without Ctrl and scrolls canvas with Ctrl; when off, it zooms with Ctrl and scrolls without Ctrl" msgstr "Ja iespējots, peles ritenītis bez Ctrl izpilda tālummaiņu, ar Ctrl - ritina audeklu; ja atslēgts - tālummaina ar Ctrl un ritina - bez Ctrl." -#: ../src/ui/dialog/inkscape-preferences.cpp:1205 +#: ../src/ui/dialog/inkscape-preferences.cpp:1214 msgid "Scrolling" msgstr "Ritināšana" #. Snapping options -#: ../src/ui/dialog/inkscape-preferences.cpp:1208 +#: ../src/ui/dialog/inkscape-preferences.cpp:1217 msgid "Enable snap indicator" msgstr "Ieslēgt piesaistes rādītāju" -#: ../src/ui/dialog/inkscape-preferences.cpp:1210 +#: ../src/ui/dialog/inkscape-preferences.cpp:1219 msgid "After snapping, a symbol is drawn at the point that has snapped" msgstr "Pēc piesaistes, piesaistes punktā tiek attēlots simbols" -#: ../src/ui/dialog/inkscape-preferences.cpp:1213 +#: ../src/ui/dialog/inkscape-preferences.cpp:1222 msgid "_Delay (in ms):" msgstr "Aiz_ture (milisekundēs):" -#: ../src/ui/dialog/inkscape-preferences.cpp:1214 +#: ../src/ui/dialog/inkscape-preferences.cpp:1223 msgid "Postpone snapping as long as the mouse is moving, and then wait an additional fraction of a second. This additional delay is specified here. When set to zero or to a very small number, snapping will be immediate." msgstr "Atlikt piesaisti, kamēr pele pārvietojas un nogaidīt vēl mirkli. Šīs papildu noilgums jānorāda šeit. Ja norādīta nulle vai ļoti mazs skaitlis, piesaiste notiks acumirklīgi." -#: ../src/ui/dialog/inkscape-preferences.cpp:1216 +#: ../src/ui/dialog/inkscape-preferences.cpp:1225 msgid "Only snap the node closest to the pointer" msgstr "Piesaistīt tikai vistuvāk kursoram esošajam mezglam" -#: ../src/ui/dialog/inkscape-preferences.cpp:1218 +#: ../src/ui/dialog/inkscape-preferences.cpp:1227 msgid "Only try to snap the node that is initially closest to the mouse pointer" msgstr "Piesaistīt tikai sākotnēji vistuvāk peles kursoram esošajam mezglam" -#: ../src/ui/dialog/inkscape-preferences.cpp:1221 +#: ../src/ui/dialog/inkscape-preferences.cpp:1230 msgid "_Weight factor:" msgstr "_Svara faktors:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1222 +#: ../src/ui/dialog/inkscape-preferences.cpp:1231 msgid "When multiple snap solutions are found, then Inkscape can either prefer the closest transformation (when set to 0), or prefer the node that was initially the closest to the pointer (when set to 1)" msgstr "Ja ir atrasti vairāki piesaistes risinājumi, Inkscape var dot priekšroku tuvākajam pārveidojumam (ja norādīta 0) vai arī izmantot mezglu, kas sākotnēji atradās vistuvāk peles kursoram (ja norādīts 1)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1224 +#: ../src/ui/dialog/inkscape-preferences.cpp:1233 msgid "Snap the mouse pointer when dragging a constrained knot" msgstr "Piesaistīt peles kursoru velkot ierobežotu mezglu" -#: ../src/ui/dialog/inkscape-preferences.cpp:1226 +#: ../src/ui/dialog/inkscape-preferences.cpp:1235 msgid "When dragging a knot along a constraint line, then snap the position of the mouse pointer instead of snapping the projection of the knot onto the constraint line" msgstr "Velkot mezglu gar ierobežojošo līniju, piesaistīt mezglu peles kursora atrašanās vietai, nevis piesaistīt ierobežojošajai līnijai mezgla projekciju" -#: ../src/ui/dialog/inkscape-preferences.cpp:1228 +#: ../src/ui/dialog/inkscape-preferences.cpp:1237 msgid "Snapping" msgstr "Piesaiste" #. nudgedistance is limited to 1000 in select-context.cpp: use the same limit here -#: ../src/ui/dialog/inkscape-preferences.cpp:1233 +#: ../src/ui/dialog/inkscape-preferences.cpp:1242 msgid "_Arrow keys move by:" msgstr "Bultiņ_as pārvieto par:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1234 +#: ../src/ui/dialog/inkscape-preferences.cpp:1243 msgid "Pressing an arrow key moves selected object(s) or node(s) by this distance" msgstr "Nospiežot bultiņu, atlasītais (-ie) objekts (-i) vai mezgls (-i) tiks pārvietoti par norādīto attālumu" #. defaultscale is limited to 1000 in select-context.cpp: use the same limit here -#: ../src/ui/dialog/inkscape-preferences.cpp:1237 +#: ../src/ui/dialog/inkscape-preferences.cpp:1246 msgid "> and < _scale by:" msgstr "> un < _mērogo par:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1238 +#: ../src/ui/dialog/inkscape-preferences.cpp:1247 msgid "Pressing > or < scales selection up or down by this increment" msgstr "Nospiežot > vai < palielina vai samazina atlasītā mērogu par šeit norādīto soli" -#: ../src/ui/dialog/inkscape-preferences.cpp:1240 +#: ../src/ui/dialog/inkscape-preferences.cpp:1249 msgid "_Inset/Outset by:" msgstr "Saīs_ināt/Pagarināt par:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1241 +#: ../src/ui/dialog/inkscape-preferences.cpp:1250 msgid "Inset and Outset commands displace the path by this distance" msgstr "Komandas Saīsināt un Pagarināt izmaina ceļu par šo garumu" -#: ../src/ui/dialog/inkscape-preferences.cpp:1242 +#: ../src/ui/dialog/inkscape-preferences.cpp:1251 msgid "Compass-like display of angles" msgstr "Leņķu kompasveidīgs attēlojums" -#: ../src/ui/dialog/inkscape-preferences.cpp:1244 +#: ../src/ui/dialog/inkscape-preferences.cpp:1253 msgid "When on, angles are displayed with 0 at north, 0 to 360 range, positive clockwise; otherwise with 0 at east, -180 to 180 range, positive counterclockwise" msgstr "Ja ieslēgts, leņķi tiek rādīti ar 0 ziemeļos, 0 to 360 diapazonā, pozitīvi - pulksteņrādītāja virzienā; pretējā gadījumā - 0 - austrumos, -180 to 180 diapazons, pozitīvi 0 pretēji pulksteņrādītāja virzienam" -#: ../src/ui/dialog/inkscape-preferences.cpp:1250 +#: ../src/ui/dialog/inkscape-preferences.cpp:1259 msgid "_Rotation snaps every:" msgstr "Griešana piesaistās ik pēc:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1250 +#: ../src/ui/dialog/inkscape-preferences.cpp:1259 msgid "degrees" msgstr "grādi" -#: ../src/ui/dialog/inkscape-preferences.cpp:1251 +#: ../src/ui/dialog/inkscape-preferences.cpp:1260 msgid "Rotating with Ctrl pressed snaps every that much degrees; also, pressing [ or ] rotates by this amount" msgstr "Griešana ar nospiestu Ctrl piesaistīta norādītajiem grādiem (solim); [ vai ] nospiešana tāpat pagriež par norādīto lielumu" -#: ../src/ui/dialog/inkscape-preferences.cpp:1252 +#: ../src/ui/dialog/inkscape-preferences.cpp:1261 msgid "Relative snapping of guideline angles" msgstr "Relatīvā palīglīniju leņķu piesaiste" -#: ../src/ui/dialog/inkscape-preferences.cpp:1254 +#: ../src/ui/dialog/inkscape-preferences.cpp:1263 msgid "When on, the snap angles when rotating a guideline will be relative to the original angle" msgstr "Ja ieslēgts, griežot palīglīniju piesaistes leņķi būs relatīvi pret sākotnējo leņķi" -#: ../src/ui/dialog/inkscape-preferences.cpp:1256 +#: ../src/ui/dialog/inkscape-preferences.cpp:1265 msgid "_Zoom in/out by:" msgstr "_Tuvināt/tālināt par:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1257 +#: ../src/ui/dialog/inkscape-preferences.cpp:1266 msgid "Zoom tool click, +/- keys, and middle click zoom in and out by this multiplier" msgstr "Tālummaiņas rīkā klikšķis, +/- pogas un vidējā peles pogas klikšķis tuvina vai tālina par norādīto reižu skaitu" -#: ../src/ui/dialog/inkscape-preferences.cpp:1258 +#: ../src/ui/dialog/inkscape-preferences.cpp:1267 msgid "Steps" msgstr "Soļi" #. Clones options -#: ../src/ui/dialog/inkscape-preferences.cpp:1261 +#: ../src/ui/dialog/inkscape-preferences.cpp:1270 msgid "Move in parallel" msgstr "Pārvietot paralēli" -#: ../src/ui/dialog/inkscape-preferences.cpp:1263 +#: ../src/ui/dialog/inkscape-preferences.cpp:1272 msgid "Stay unmoved" msgstr "Saglabāt nekustīgu" -#: ../src/ui/dialog/inkscape-preferences.cpp:1265 +#: ../src/ui/dialog/inkscape-preferences.cpp:1274 msgid "Move according to transform" msgstr "Pārvietoties atbilstoši pārveidojumam" -#: ../src/ui/dialog/inkscape-preferences.cpp:1267 +#: ../src/ui/dialog/inkscape-preferences.cpp:1276 msgid "Are unlinked" msgstr "Ir atsaistīti" -#: ../src/ui/dialog/inkscape-preferences.cpp:1269 +#: ../src/ui/dialog/inkscape-preferences.cpp:1278 msgid "Are deleted" msgstr "Ir izdzēsti" -#: ../src/ui/dialog/inkscape-preferences.cpp:1272 +#: ../src/ui/dialog/inkscape-preferences.cpp:1281 msgid "Moving original: clones and linked offsets" msgstr "Oriģināla pārvietošana: kloni un saistītās nobīdes" -#: ../src/ui/dialog/inkscape-preferences.cpp:1274 +#: ../src/ui/dialog/inkscape-preferences.cpp:1283 msgid "Clones are translated by the same vector as their original" msgstr "Kloni tiek nobīdīti gar to pašu vektoru, kā to oriģināls" -#: ../src/ui/dialog/inkscape-preferences.cpp:1276 +#: ../src/ui/dialog/inkscape-preferences.cpp:1285 msgid "Clones preserve their positions when their original is moved" msgstr "Kloni saglabā savas atrašanās vietas, ja tiek pārvietots oriģināls" -#: ../src/ui/dialog/inkscape-preferences.cpp:1278 +#: ../src/ui/dialog/inkscape-preferences.cpp:1287 msgid "Each clone moves according to the value of its transform= attribute; for example, a rotated clone will move in a different direction than its original" msgstr "Katrs klons pārvietojas atbilstoši transform= atribūta vērtībai, piemēram - pagriezts klons pārvietosies no tā oriģināla atšķirīgā virzienā" -#: ../src/ui/dialog/inkscape-preferences.cpp:1279 +#: ../src/ui/dialog/inkscape-preferences.cpp:1288 msgid "Deleting original: clones" msgstr "Dzēš oriģinālu: kloni" -#: ../src/ui/dialog/inkscape-preferences.cpp:1281 +#: ../src/ui/dialog/inkscape-preferences.cpp:1290 msgid "Orphaned clones are converted to regular objects" msgstr "Kloni-bāreņi tiek pārvērsti par patstāvīgiem objektiem" -#: ../src/ui/dialog/inkscape-preferences.cpp:1283 +#: ../src/ui/dialog/inkscape-preferences.cpp:1292 msgid "Orphaned clones are deleted along with their original" msgstr "Kloni-bāreņi tiek nodzēsti kopā ar to oriģinālu" -#: ../src/ui/dialog/inkscape-preferences.cpp:1285 +#: ../src/ui/dialog/inkscape-preferences.cpp:1294 msgid "Duplicating original+clones/linked offset" msgstr "Dublējot oriģinālus+klonus/saistītās nobīdes" -#: ../src/ui/dialog/inkscape-preferences.cpp:1287 +#: ../src/ui/dialog/inkscape-preferences.cpp:1296 msgid "Relink duplicated clones" msgstr "Atjaunot dublēto0 klonu sasaisti" -#: ../src/ui/dialog/inkscape-preferences.cpp:1289 +#: ../src/ui/dialog/inkscape-preferences.cpp:1298 msgid "When duplicating a selection containing both a clone and its original (possibly in groups), relink the duplicated clone to the duplicated original instead of the old original" msgstr "Dublējot atlasītos objektus, kas satur gan klonu, gan tā oriģinālu (iespējams - grupās), piesaistīt dublēto klonu dublētajam oriģinālam, nevis vecajam" #. TRANSLATORS: Heading for the Inkscape Preferences "Clones" Page -#: ../src/ui/dialog/inkscape-preferences.cpp:1292 +#: ../src/ui/dialog/inkscape-preferences.cpp:1301 msgid "Clones" msgstr "Kloni" #. Clip paths and masks options -#: ../src/ui/dialog/inkscape-preferences.cpp:1295 +#: ../src/ui/dialog/inkscape-preferences.cpp:1304 msgid "When applying, use the topmost selected object as clippath/mask" msgstr "Pielietojot par griešanas ceļu/masku izmantot augšējo atlasīto objektu" -#: ../src/ui/dialog/inkscape-preferences.cpp:1297 +#: ../src/ui/dialog/inkscape-preferences.cpp:1306 msgid "Uncheck this to use the bottom selected object as the clipping path or mask" msgstr "Atķeksējiet šo, lai par griešanas ceļu vai masku izmantotu apakšējo atlasīto objektu" -#: ../src/ui/dialog/inkscape-preferences.cpp:1298 +#: ../src/ui/dialog/inkscape-preferences.cpp:1307 msgid "Remove clippath/mask object after applying" msgstr "Aizvākt griešanas ceļa/maskas objektu pēc pielietošanas" -#: ../src/ui/dialog/inkscape-preferences.cpp:1300 +#: ../src/ui/dialog/inkscape-preferences.cpp:1309 msgid "After applying, remove the object used as the clipping path or mask from the drawing" msgstr "Pēc pielietošanas aizvākt no attēla objektu, kas kalpoja par griešanas ceļu vai masku" -#: ../src/ui/dialog/inkscape-preferences.cpp:1302 +#: ../src/ui/dialog/inkscape-preferences.cpp:1311 msgid "Before applying" msgstr "Pirms pielietošanas" -#: ../src/ui/dialog/inkscape-preferences.cpp:1304 +#: ../src/ui/dialog/inkscape-preferences.cpp:1313 msgid "Do not group clipped/masked objects" msgstr "Negrupēt izgrieztos/maskētos objektus" -#: ../src/ui/dialog/inkscape-preferences.cpp:1305 +#: ../src/ui/dialog/inkscape-preferences.cpp:1314 msgid "Put every clipped/masked object in its own group" msgstr "Ievietot ikvienu izgriezto/maskēto objektu atsevišķā grupā" -#: ../src/ui/dialog/inkscape-preferences.cpp:1306 +#: ../src/ui/dialog/inkscape-preferences.cpp:1315 msgid "Put all clipped/masked objects into one group" msgstr "Ievietot visus izgrieztos/maskētos objektus vienā grupā" -#: ../src/ui/dialog/inkscape-preferences.cpp:1309 +#: ../src/ui/dialog/inkscape-preferences.cpp:1318 msgid "Apply clippath/mask to every object" msgstr "Pielietot griešanas ceļu/masku katram objektam" -#: ../src/ui/dialog/inkscape-preferences.cpp:1312 +#: ../src/ui/dialog/inkscape-preferences.cpp:1321 msgid "Apply clippath/mask to groups containing single object" msgstr "Pielietot izgriešanas ceļu/masku grupām, kas satur tikai vienu objektu" -#: ../src/ui/dialog/inkscape-preferences.cpp:1315 +#: ../src/ui/dialog/inkscape-preferences.cpp:1324 msgid "Apply clippath/mask to group containing all objects" msgstr "Pielietot izgriešanas ceļu/masku grupai, kas satur visus objektus" -#: ../src/ui/dialog/inkscape-preferences.cpp:1317 +#: ../src/ui/dialog/inkscape-preferences.cpp:1326 msgid "After releasing" msgstr "Pēc atbrīvošanas" -#: ../src/ui/dialog/inkscape-preferences.cpp:1319 +#: ../src/ui/dialog/inkscape-preferences.cpp:1328 msgid "Ungroup automatically created groups" msgstr "Atgrupēt automātiski izveidotas grupas" -#: ../src/ui/dialog/inkscape-preferences.cpp:1321 +#: ../src/ui/dialog/inkscape-preferences.cpp:1330 msgid "Ungroup groups created when setting clip/mask" msgstr "Atgrupēt grupas, kas izveidojušas iestatot apgriešanas ceļu/masku" -#: ../src/ui/dialog/inkscape-preferences.cpp:1323 +#: ../src/ui/dialog/inkscape-preferences.cpp:1332 msgid "Clippaths and masks" msgstr "Izgriešanas ceļi un maskas" -#: ../src/ui/dialog/inkscape-preferences.cpp:1326 +#: ../src/ui/dialog/inkscape-preferences.cpp:1335 msgid "Stroke Style Markers" msgstr "Apmaļu stilu marķieri" -#: ../src/ui/dialog/inkscape-preferences.cpp:1328 -#: ../src/ui/dialog/inkscape-preferences.cpp:1330 +#: ../src/ui/dialog/inkscape-preferences.cpp:1337 +#: ../src/ui/dialog/inkscape-preferences.cpp:1339 msgid "Stroke color same as object, fill color either object fill color or marker fill color" msgstr "Apmales krāsa tāda pati, kā objektam, aizpildījuma krāsa - vai nu objekta aizpildījuma krāsa vai marķiera aizpildījuma krāsa" -#: ../src/ui/dialog/inkscape-preferences.cpp:1334 +#: ../src/ui/dialog/inkscape-preferences.cpp:1343 msgid "Markers" msgstr "Marķieri" -#: ../src/ui/dialog/inkscape-preferences.cpp:1342 +#: ../src/ui/dialog/inkscape-preferences.cpp:1346 +msgid "Document cleanup" +msgstr "Dokumenta uzkopšana" + +#: ../src/ui/dialog/inkscape-preferences.cpp:1347 +#: ../src/ui/dialog/inkscape-preferences.cpp:1349 +msgid "Remove unused swatches when doing a document cleanup" +msgstr "Veicot dokumenta uzkopšanu aizvākt neizmantotās paletes" + +#. tooltip +#: ../src/ui/dialog/inkscape-preferences.cpp:1350 +msgid "Cleanup" +msgstr "Uzkopt" + +#: ../src/ui/dialog/inkscape-preferences.cpp:1358 msgid "Number of _Threads:" msgstr "Pavedienu skai_ts:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1342 -#: ../src/ui/dialog/inkscape-preferences.cpp:1857 +#: ../src/ui/dialog/inkscape-preferences.cpp:1358 +#: ../src/ui/dialog/inkscape-preferences.cpp:1876 msgid "(requires restart)" -msgstr "(nepieciešams restarts)" +msgstr "(nepieciešama pārstartēšana)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1343 +#: ../src/ui/dialog/inkscape-preferences.cpp:1359 msgid "Configure number of processors/threads to use when rendering filters" msgstr "Iestatiet filtru renderēšanai izmantojamo procesoru/pavedienu skaitu" -#: ../src/ui/dialog/inkscape-preferences.cpp:1347 +#: ../src/ui/dialog/inkscape-preferences.cpp:1363 msgid "Rendering _cache size:" msgstr "Renderēšanas bufera izmērs:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1347 +#: ../src/ui/dialog/inkscape-preferences.cpp:1363 msgctxt "mebibyte (2^20 bytes) abbreviation" msgid "MiB" msgstr "MiB" -#: ../src/ui/dialog/inkscape-preferences.cpp:1347 +#: ../src/ui/dialog/inkscape-preferences.cpp:1363 msgid "Set the amount of memory per document which can be used to store rendered parts of the drawing for later reuse; set to zero to disable caching" msgstr "Nosakiet katram dokumentam pieejamās atmiņas apjomu, kurā glabāt attēla renderētās daļas vēlākai izmantošanai; lai atslēgtu kešatmiņu, ievadiet 0" #. blur quality #. filter quality -#: ../src/ui/dialog/inkscape-preferences.cpp:1350 -#: ../src/ui/dialog/inkscape-preferences.cpp:1374 +#: ../src/ui/dialog/inkscape-preferences.cpp:1366 +#: ../src/ui/dialog/inkscape-preferences.cpp:1390 msgid "Best quality (slowest)" msgstr "Vislabākā kvalitāte (vislēnāk)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1352 -#: ../src/ui/dialog/inkscape-preferences.cpp:1376 +#: ../src/ui/dialog/inkscape-preferences.cpp:1368 +#: ../src/ui/dialog/inkscape-preferences.cpp:1392 msgid "Better quality (slower)" msgstr "Labāka kvalitāte (lēnāk)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1354 -#: ../src/ui/dialog/inkscape-preferences.cpp:1378 +#: ../src/ui/dialog/inkscape-preferences.cpp:1370 +#: ../src/ui/dialog/inkscape-preferences.cpp:1394 msgid "Average quality" msgstr "Vidēja kvalitāte" -#: ../src/ui/dialog/inkscape-preferences.cpp:1356 -#: ../src/ui/dialog/inkscape-preferences.cpp:1380 +#: ../src/ui/dialog/inkscape-preferences.cpp:1372 +#: ../src/ui/dialog/inkscape-preferences.cpp:1396 msgid "Lower quality (faster)" msgstr "Zemāka kvalitāte (ātrāk)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1358 -#: ../src/ui/dialog/inkscape-preferences.cpp:1382 +#: ../src/ui/dialog/inkscape-preferences.cpp:1374 +#: ../src/ui/dialog/inkscape-preferences.cpp:1398 msgid "Lowest quality (fastest)" msgstr "Viszemākā kvalitāte (visātrāk)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1361 +#: ../src/ui/dialog/inkscape-preferences.cpp:1377 msgid "Gaussian blur quality for display" msgstr "Gausa izpludināšanas kvalitāte ekrānam" -#: ../src/ui/dialog/inkscape-preferences.cpp:1363 -#: ../src/ui/dialog/inkscape-preferences.cpp:1387 +#: ../src/ui/dialog/inkscape-preferences.cpp:1379 +#: ../src/ui/dialog/inkscape-preferences.cpp:1403 msgid "Best quality, but display may be very slow at high zooms (bitmap export always uses best quality)" msgstr "Visaugstākā kvalitāte, taču attēlošanas ātrums var būt ļoti zems lielos palielinājumos (tuvinājumos); (bitkartes eksports vienmēr izmanto augstāko kvalitāti)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1365 -#: ../src/ui/dialog/inkscape-preferences.cpp:1389 +#: ../src/ui/dialog/inkscape-preferences.cpp:1381 +#: ../src/ui/dialog/inkscape-preferences.cpp:1405 msgid "Better quality, but slower display" msgstr "Labāka kvalitāte, taču lēnāka attēlošana" -#: ../src/ui/dialog/inkscape-preferences.cpp:1367 -#: ../src/ui/dialog/inkscape-preferences.cpp:1391 +#: ../src/ui/dialog/inkscape-preferences.cpp:1383 +#: ../src/ui/dialog/inkscape-preferences.cpp:1407 msgid "Average quality, acceptable display speed" msgstr "Vidēja kvalitāte, pieņemams attēlošanas ātrums" -#: ../src/ui/dialog/inkscape-preferences.cpp:1369 -#: ../src/ui/dialog/inkscape-preferences.cpp:1393 +#: ../src/ui/dialog/inkscape-preferences.cpp:1385 +#: ../src/ui/dialog/inkscape-preferences.cpp:1409 msgid "Lower quality (some artifacts), but display is faster" msgstr "Zemāka kvalitāte (daži traucējumi), taču lielāks attēlošanas ātrums" -#: ../src/ui/dialog/inkscape-preferences.cpp:1371 -#: ../src/ui/dialog/inkscape-preferences.cpp:1395 +#: ../src/ui/dialog/inkscape-preferences.cpp:1387 +#: ../src/ui/dialog/inkscape-preferences.cpp:1411 msgid "Lowest quality (considerable artifacts), but display is fastest" msgstr "Viszemākā kvalitāte (ievērojami traucējumi), taču vislielākaiss attēlošanas ātrums" -#: ../src/ui/dialog/inkscape-preferences.cpp:1385 +#: ../src/ui/dialog/inkscape-preferences.cpp:1401 msgid "Filter effects quality for display" msgstr "Filtru efektu kvalitāte attēlošanai uz ekrāna" #. build custom preferences tab -#: ../src/ui/dialog/inkscape-preferences.cpp:1397 +#: ../src/ui/dialog/inkscape-preferences.cpp:1413 #: ../src/ui/dialog/print.cpp:224 msgid "Rendering" msgstr "Renderēšana" -#: ../src/ui/dialog/inkscape-preferences.cpp:1403 +#: ../src/ui/dialog/inkscape-preferences.cpp:1419 msgid "2x2" msgstr "2x2" -#: ../src/ui/dialog/inkscape-preferences.cpp:1403 +#: ../src/ui/dialog/inkscape-preferences.cpp:1419 msgid "4x4" msgstr "4x4" -#: ../src/ui/dialog/inkscape-preferences.cpp:1403 +#: ../src/ui/dialog/inkscape-preferences.cpp:1419 msgid "8x8" msgstr "8x8" -#: ../src/ui/dialog/inkscape-preferences.cpp:1403 +#: ../src/ui/dialog/inkscape-preferences.cpp:1419 msgid "16x16" msgstr "16x16" -#: ../src/ui/dialog/inkscape-preferences.cpp:1407 +#: ../src/ui/dialog/inkscape-preferences.cpp:1423 msgid "Oversample bitmaps:" -msgstr "" +msgstr "Izlīdzināt rastru pēc punktiem:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1410 +#: ../src/ui/dialog/inkscape-preferences.cpp:1426 msgid "Automatically reload bitmaps" msgstr "Automātiski atsvaidzināt bitkartes attēlus" -#: ../src/ui/dialog/inkscape-preferences.cpp:1412 +#: ../src/ui/dialog/inkscape-preferences.cpp:1428 msgid "Automatically reload linked images when file is changed on disk" msgstr "Automātiski pārlādēt saistītos attēlus, ja fails uz diska ir mainījies" -#: ../src/ui/dialog/inkscape-preferences.cpp:1414 +#: ../src/ui/dialog/inkscape-preferences.cpp:1430 msgid "_Bitmap editor:" msgstr "_Bitkartes redaktors:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1416 +#: ../src/ui/dialog/inkscape-preferences.cpp:1432 msgid "Default export _resolution:" msgstr "Noklusētā eksporta izšķi_rtspēja" -#: ../src/ui/dialog/inkscape-preferences.cpp:1417 +#: ../src/ui/dialog/inkscape-preferences.cpp:1433 msgid "Default bitmap resolution (in dots per inch) in the Export dialog" msgstr "Noklusētā bitkartes izšķirtspēja (punktos uz collu) eksporta dialoglodzinņā" -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 +#: ../src/ui/dialog/inkscape-preferences.cpp:1435 msgid "Resolution for Create Bitmap _Copy:" msgstr "Izšķirtspēja komandai 'Izveidot bitkartes kopiju':" -#: ../src/ui/dialog/inkscape-preferences.cpp:1420 +#: ../src/ui/dialog/inkscape-preferences.cpp:1436 msgid "Resolution used by the Create Bitmap Copy command" msgstr "Izšķirtspēja komandai 'Izveidot bitkartes kopiju'" -#: ../src/ui/dialog/inkscape-preferences.cpp:1422 +#: ../src/ui/dialog/inkscape-preferences.cpp:1438 msgid "Always embed" msgstr "Vienmēr iegult" -#: ../src/ui/dialog/inkscape-preferences.cpp:1422 +#: ../src/ui/dialog/inkscape-preferences.cpp:1438 msgid "Always link" msgstr "Vienmēr piesaistīt" -#: ../src/ui/dialog/inkscape-preferences.cpp:1422 +#: ../src/ui/dialog/inkscape-preferences.cpp:1438 msgid "Ask" msgstr "Jautāt" -#: ../src/ui/dialog/inkscape-preferences.cpp:1425 +#: ../src/ui/dialog/inkscape-preferences.cpp:1441 msgid "Bitmap import:" msgstr "Bitkartes imports:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1428 +#: ../src/ui/dialog/inkscape-preferences.cpp:1444 +msgid "Bitmap import quality:" +msgstr "Bitkartes importa kvalitāte:" + +#: ../src/ui/dialog/inkscape-preferences.cpp:1447 msgid "Default _import resolution:" msgstr "Noklusētā importa izšķirtspēja:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1429 +#: ../src/ui/dialog/inkscape-preferences.cpp:1448 msgid "Default bitmap resolution (in dots per inch) for bitmap import" msgstr "Noklusētā bitkartes izšķirtspēja (punktos uz collu) bitkartes importam" -#: ../src/ui/dialog/inkscape-preferences.cpp:1430 +#: ../src/ui/dialog/inkscape-preferences.cpp:1449 msgid "Override file resolution" msgstr "Neņemt vērā faila izšķirtspēju" -#: ../src/ui/dialog/inkscape-preferences.cpp:1432 +#: ../src/ui/dialog/inkscape-preferences.cpp:1451 msgid "Use default bitmap resolution in favor of information from file" msgstr "Dot priekšroku noklusētajai bitkartes izšķirtspējai attiecībā pret failā esošo informāciju" -#: ../src/ui/dialog/inkscape-preferences.cpp:1434 +#: ../src/ui/dialog/inkscape-preferences.cpp:1453 msgid "Bitmaps" msgstr "Bitkartes" -#: ../src/ui/dialog/inkscape-preferences.cpp:1446 +#: ../src/ui/dialog/inkscape-preferences.cpp:1465 msgid "Select a file of predefined shortcuts to use. Any customized shortcuts you create will be added seperately to " msgstr "Izvēlieties failu ar iepriekš definētām saīsnēm. Visas Jūsu izveidotās pielāgotās saīsnes tiks pievienotas pie" -#: ../src/ui/dialog/inkscape-preferences.cpp:1449 +#: ../src/ui/dialog/inkscape-preferences.cpp:1468 msgid "Shortcut file:" msgstr "Saīsņu fails:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1452 +#: ../src/ui/dialog/inkscape-preferences.cpp:1471 msgid "Search:" msgstr "Meklēt:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1464 +#: ../src/ui/dialog/inkscape-preferences.cpp:1483 msgid "Shortcut" msgstr "Saīsne" -#: ../src/ui/dialog/inkscape-preferences.cpp:1465 +#: ../src/ui/dialog/inkscape-preferences.cpp:1484 #: ../src/ui/widget/page-sizer.cpp:262 msgid "Description" msgstr "Apraksts" -#: ../src/ui/dialog/inkscape-preferences.cpp:1520 +#: ../src/ui/dialog/inkscape-preferences.cpp:1539 #: ../src/ui/dialog/svg-fonts-dialog.cpp:694 #: ../src/ui/dialog/tracedialog.cpp:813 -#: ../src/ui/widget/preferences-widget.cpp:745 +#: ../src/ui/widget/preferences-widget.cpp:749 msgid "Reset" msgstr "Atiestatīt" -#: ../src/ui/dialog/inkscape-preferences.cpp:1520 +#: ../src/ui/dialog/inkscape-preferences.cpp:1539 msgid "Remove all your customized keyboard shortcuts, and revert to the shortcuts in the shortcut file listed above" msgstr "Aizvākt visas Jūsu pielāgotās klaviatūras saīsnes un aizvietot ar saīsnēm ne zemāk norādītā faila" -#: ../src/ui/dialog/inkscape-preferences.cpp:1524 +#: ../src/ui/dialog/inkscape-preferences.cpp:1543 msgid "Import ..." msgstr "Importēt ..." -#: ../src/ui/dialog/inkscape-preferences.cpp:1524 +#: ../src/ui/dialog/inkscape-preferences.cpp:1543 msgid "Import custom keyboard shortcuts from a file" msgstr "Importēt pielāgotās klaviatūras saīsnes no faila" -#: ../src/ui/dialog/inkscape-preferences.cpp:1527 +#: ../src/ui/dialog/inkscape-preferences.cpp:1546 msgid "Export ..." msgstr "Eksportēt ..." -#: ../src/ui/dialog/inkscape-preferences.cpp:1527 +#: ../src/ui/dialog/inkscape-preferences.cpp:1546 msgid "Export custom keyboard shortcuts to a file" msgstr "Eksportēt pielāgotos klaviatūras īsinājumtaustiņus failā" -#: ../src/ui/dialog/inkscape-preferences.cpp:1537 +#: ../src/ui/dialog/inkscape-preferences.cpp:1556 msgid "Keyboard Shortcuts" msgstr "Klaviatūras saīsnes" #. Find this group in the tree -#: ../src/ui/dialog/inkscape-preferences.cpp:1700 +#: ../src/ui/dialog/inkscape-preferences.cpp:1719 msgid "Misc" msgstr "Dažādi" -#: ../src/ui/dialog/inkscape-preferences.cpp:1819 +#: ../src/ui/dialog/inkscape-preferences.cpp:1838 msgid "Set the main spell check language" msgstr "Iestatiet galveno pareizrakstības pārbaudes valodu" -#: ../src/ui/dialog/inkscape-preferences.cpp:1822 +#: ../src/ui/dialog/inkscape-preferences.cpp:1841 msgid "Second language:" msgstr "Otrā valoda:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1823 +#: ../src/ui/dialog/inkscape-preferences.cpp:1842 msgid "Set the second spell check language; checking will only stop on words unknown in ALL chosen languages" msgstr "Iestatiet otro pareizrakstības pārbaudes valodu, pārbaude apstāsies tikai pie vārdiem, kuri nav atrodami NEVIENĀ no izvēlētajām valodām" -#: ../src/ui/dialog/inkscape-preferences.cpp:1826 +#: ../src/ui/dialog/inkscape-preferences.cpp:1845 msgid "Third language:" msgstr "Trešā valoda:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1827 +#: ../src/ui/dialog/inkscape-preferences.cpp:1846 msgid "Set the third spell check language; checking will only stop on words unknown in ALL chosen languages" msgstr "Iestatiet trešo pareizrakstības pārbaudes valodu, pārbaude apstāsies tikai pie vārdiem, kuri nav atrodami NEVIENĀ no izvēlētajām valodām" -#: ../src/ui/dialog/inkscape-preferences.cpp:1829 +#: ../src/ui/dialog/inkscape-preferences.cpp:1848 msgid "Ignore words with digits" msgstr "Neņemt vērā vārdus ar skaitļiem " -#: ../src/ui/dialog/inkscape-preferences.cpp:1831 +#: ../src/ui/dialog/inkscape-preferences.cpp:1850 msgid "Ignore words containing digits, such as \"R2D2\"" msgstr "Neņemt vērā vārdus, kas satur arī ciparus, kā piem. \"R2D2\"" -#: ../src/ui/dialog/inkscape-preferences.cpp:1833 +#: ../src/ui/dialog/inkscape-preferences.cpp:1852 msgid "Ignore words in ALL CAPITALS" msgstr "Neņem vērā vārdus ar LIELAJIEM BURTIEM" -#: ../src/ui/dialog/inkscape-preferences.cpp:1835 +#: ../src/ui/dialog/inkscape-preferences.cpp:1854 msgid "Ignore words in all capitals, such as \"IUPAC\"" msgstr "Neņem vērā vārdus, kas uzrakstīti tikai ar lielajiem burtiem, piem. \"IUPAC\"" -#: ../src/ui/dialog/inkscape-preferences.cpp:1837 +#: ../src/ui/dialog/inkscape-preferences.cpp:1856 msgid "Spellcheck" msgstr "Pareizrakstība" -#: ../src/ui/dialog/inkscape-preferences.cpp:1857 +#: ../src/ui/dialog/inkscape-preferences.cpp:1876 msgid "Latency _skew:" -msgstr "" +msgstr "Aizture_s nobīde:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1858 +#: ../src/ui/dialog/inkscape-preferences.cpp:1877 msgid "Factor by which the event clock is skewed from the actual time (0.9766 on some systems)" msgstr "Lielums, par kuru notikumu pulkstenis ir nobīdīts attiecībā pret patieso laiku (0,9766 dažās sistēmās)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1860 +#: ../src/ui/dialog/inkscape-preferences.cpp:1879 msgid "Pre-render named icons" msgstr "Renderēt nosauktās ikonas" -#: ../src/ui/dialog/inkscape-preferences.cpp:1862 +#: ../src/ui/dialog/inkscape-preferences.cpp:1881 msgid "When on, named icons will be rendered before displaying the ui. This is for working around bugs in GTK+ named icon notification" msgstr "Ja ieslēgts, nosauktās ikonas tiks renderētas pirms saskarnes atvēršanas. Tas nepieciešams, lai apietu kļūdas GTK+ nosaukto ikonu notifikācijā" -#: ../src/ui/dialog/inkscape-preferences.cpp:1870 +#: ../src/ui/dialog/inkscape-preferences.cpp:1889 msgid "System info" msgstr "Sistēmas informācija" -#: ../src/ui/dialog/inkscape-preferences.cpp:1874 +#: ../src/ui/dialog/inkscape-preferences.cpp:1893 msgid "User config: " msgstr "Lietotāja konfigurācija:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1874 +#: ../src/ui/dialog/inkscape-preferences.cpp:1893 msgid "Location of users configuration" msgstr "Lietotāja konfigurācijas atrašanās vieta" -#: ../src/ui/dialog/inkscape-preferences.cpp:1878 +#: ../src/ui/dialog/inkscape-preferences.cpp:1897 msgid "User preferences: " msgstr "Lietotāja iestatījumi:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1878 +#: ../src/ui/dialog/inkscape-preferences.cpp:1897 msgid "Location of the users preferences file" msgstr "Lietotāja iestatījumu faila atrašanās vieta" -#: ../src/ui/dialog/inkscape-preferences.cpp:1882 +#: ../src/ui/dialog/inkscape-preferences.cpp:1901 msgid "User extensions: " msgstr "Lietotāja paplašinājumi:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1882 +#: ../src/ui/dialog/inkscape-preferences.cpp:1901 msgid "Location of the users extensions" msgstr "Lietotāja paplašinājumu atrašanās vieta" -#: ../src/ui/dialog/inkscape-preferences.cpp:1886 +#: ../src/ui/dialog/inkscape-preferences.cpp:1905 msgid "User cache: " msgstr "Lietotāja kešatmiņa:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1886 +#: ../src/ui/dialog/inkscape-preferences.cpp:1905 msgid "Location of users cache" msgstr "Lietotāja kešatmiņas atrašanās vieta" -#: ../src/ui/dialog/inkscape-preferences.cpp:1894 +#: ../src/ui/dialog/inkscape-preferences.cpp:1913 msgid "Temporary files: " msgstr "Pagaidu faili:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1894 +#: ../src/ui/dialog/inkscape-preferences.cpp:1913 msgid "Location of the temporary files used for autosave" msgstr "Automātiskās saglabāšanas pagaidu failu atrašanās vieta" -#: ../src/ui/dialog/inkscape-preferences.cpp:1898 +#: ../src/ui/dialog/inkscape-preferences.cpp:1917 msgid "Inkscape data: " msgstr "Inkscape dati:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1898 +#: ../src/ui/dialog/inkscape-preferences.cpp:1917 msgid "Location of Inkscape data" msgstr "Inkscape datu atrašanās vieta" -#: ../src/ui/dialog/inkscape-preferences.cpp:1902 +#: ../src/ui/dialog/inkscape-preferences.cpp:1921 msgid "Inkscape extensions: " msgstr "Inkscape paplašinājumi:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1902 +#: ../src/ui/dialog/inkscape-preferences.cpp:1921 msgid "Location of the Inkscape extensions" msgstr "Inkscape paplašinājumu atrašanās vieta" -#: ../src/ui/dialog/inkscape-preferences.cpp:1911 +#: ../src/ui/dialog/inkscape-preferences.cpp:1930 msgid "System data: " msgstr "Sistēmas dati:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1911 +#: ../src/ui/dialog/inkscape-preferences.cpp:1930 msgid "Locations of system data" msgstr "Sistēmas datu atrašanās vietas" -#: ../src/ui/dialog/inkscape-preferences.cpp:1935 +#: ../src/ui/dialog/inkscape-preferences.cpp:1954 msgid "Icon theme: " msgstr "Ikonu tēma:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1935 +#: ../src/ui/dialog/inkscape-preferences.cpp:1954 msgid "Locations of icon themes" msgstr "Ikonu tēmu atrašanās vietas" -#: ../src/ui/dialog/inkscape-preferences.cpp:1937 +#: ../src/ui/dialog/inkscape-preferences.cpp:1956 msgid "System" msgstr "Sistēma" @@ -18480,14 +18519,14 @@ msgstr "Planšetdators" #: ../src/ui/dialog/input.cpp:1039 #: ../src/ui/dialog/input.cpp:1931 msgid "pad" -msgstr "" +msgstr "papildinājums" #: ../src/ui/dialog/input.cpp:1081 msgid "_Use pressure-sensitive tablet (requires restart)" msgstr "Izmanto spiedienjūtīg_u planšeti (nepieciešama pārstartēšana)" #: ../src/ui/dialog/input.cpp:1082 -#: ../src/verbs.cpp:2297 +#: ../src/verbs.cpp:2301 msgid "_Save" msgstr "_Saglabāt" @@ -18503,15 +18542,6 @@ msgstr "Atslēgas" msgid "A device can be 'Disabled', its co-ordinates mapped to the whole 'Screen', or to a single (usually focused) 'Window'" msgstr "Iekārta var būt 'Atslēgta', tās koordinātes piešķirtas visam 'Ekrānam', vai arī (parasti fokusētam) 'Logam'" -#: ../src/ui/dialog/input.cpp:1616 -#: ../src/ui/dialog/layers.cpp:913 -msgid "X" -msgstr "X" - -#: ../src/ui/dialog/input.cpp:1616 -msgid "Y" -msgstr "Y" - #: ../src/ui/dialog/input.cpp:1616 #: ../src/widgets/calligraphy-toolbar.cpp:599 #: ../src/widgets/spray-toolbar.cpp:240 @@ -18559,8 +18589,8 @@ msgstr "Pārdēvēt slāni" #. TODO: find an unused layer number, forming name from _("Layer ") + "%d" #: ../src/ui/dialog/layer-properties.cpp:354 #: ../src/ui/dialog/layer-properties.cpp:410 -#: ../src/verbs.cpp:188 -#: ../src/verbs.cpp:2228 +#: ../src/verbs.cpp:192 +#: ../src/verbs.cpp:2232 msgid "Layer" msgstr "Slānis" @@ -18569,7 +18599,7 @@ msgid "_Rename" msgstr "_Pārdēvēt" #: ../src/ui/dialog/layer-properties.cpp:368 -#: ../src/ui/dialog/layers.cpp:747 +#: ../src/ui/dialog/layers.cpp:749 msgid "Rename layer" msgstr "Pārdēvēt slāni" @@ -18595,65 +18625,65 @@ msgid "Move to Layer" msgstr "Pārvietot uz slāni" #: ../src/ui/dialog/layer-properties.cpp:411 -#: ../src/ui/dialog/transformation.cpp:109 +#: ../src/ui/dialog/transformation.cpp:113 msgid "_Move" msgstr "Pār_vietot" -#: ../src/ui/dialog/layers.cpp:523 +#: ../src/ui/dialog/layers.cpp:524 #: ../src/ui/widget/layer-selector.cpp:613 msgid "Unhide layer" msgstr "Rādīt slāni" -#: ../src/ui/dialog/layers.cpp:523 +#: ../src/ui/dialog/layers.cpp:524 #: ../src/ui/widget/layer-selector.cpp:613 msgid "Hide layer" msgstr "Slēpt slāni" -#: ../src/ui/dialog/layers.cpp:534 +#: ../src/ui/dialog/layers.cpp:535 #: ../src/ui/widget/layer-selector.cpp:605 msgid "Lock layer" msgstr "Slēgt slāni" -#: ../src/ui/dialog/layers.cpp:534 +#: ../src/ui/dialog/layers.cpp:535 #: ../src/ui/widget/layer-selector.cpp:605 msgid "Unlock layer" msgstr "Atslēgt slāni" -#: ../src/ui/dialog/layers.cpp:621 -#: ../src/verbs.cpp:1343 +#: ../src/ui/dialog/layers.cpp:623 +#: ../src/verbs.cpp:1347 msgid "Toggle layer solo" msgstr "Pārslēgt tikai šo slāni" -#: ../src/ui/dialog/layers.cpp:624 -#: ../src/verbs.cpp:1367 +#: ../src/ui/dialog/layers.cpp:626 +#: ../src/verbs.cpp:1371 msgid "Lock other layers" msgstr "Slēdz citus slāņus" -#: ../src/ui/dialog/layers.cpp:718 +#: ../src/ui/dialog/layers.cpp:720 msgid "Moved layer" msgstr "Pārvietotais slānis" -#: ../src/ui/dialog/layers.cpp:880 +#: ../src/ui/dialog/layers.cpp:882 msgctxt "Layers" msgid "New" msgstr "Jauns" -#: ../src/ui/dialog/layers.cpp:885 +#: ../src/ui/dialog/layers.cpp:887 msgctxt "Layers" msgid "Bot" msgstr "Apakša" -#: ../src/ui/dialog/layers.cpp:891 +#: ../src/ui/dialog/layers.cpp:893 msgctxt "Layers" msgid "Dn" msgstr "Dn" -#: ../src/ui/dialog/layers.cpp:897 +#: ../src/ui/dialog/layers.cpp:899 msgctxt "Layers" msgid "Up" msgstr "Uz augšu" -#: ../src/ui/dialog/layers.cpp:903 +#: ../src/ui/dialog/layers.cpp:905 msgctxt "Layers" msgid "Top" msgstr "Augša" @@ -18795,7 +18825,7 @@ msgstr "Loma:" #. For situations where the nature/role alone isn't enough, this offers an additional URI defining the purpose of the link. #: ../src/ui/dialog/object-attributes.cpp:55 msgid "Arcrole:" -msgstr "" +msgstr "Arheloma:" #: ../src/ui/dialog/object-attributes.cpp:58 #: ../share/extensions/polyhedron_3d.inx.h:47 @@ -18805,12 +18835,28 @@ msgstr "Rādīt:" #. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/linking.html#AElementXLinkActuateAttribute #: ../src/ui/dialog/object-attributes.cpp:60 msgid "Actuate:" -msgstr "" +msgstr "Iedarbināt:" #: ../src/ui/dialog/object-attributes.cpp:65 msgid "URL:" msgstr "URL:" +#: ../src/ui/dialog/object-attributes.cpp:66 +#: ../src/ui/dialog/object-attributes.cpp:74 +#: ../src/ui/dialog/tile.cpp:618 +#: ../src/widgets/desktop-widget.cpp:666 +#: ../src/widgets/node-toolbar.cpp:590 +msgid "X:" +msgstr "X:" + +#: ../src/ui/dialog/object-attributes.cpp:67 +#: ../src/ui/dialog/object-attributes.cpp:75 +#: ../src/ui/dialog/tile.cpp:619 +#: ../src/widgets/desktop-widget.cpp:676 +#: ../src/widgets/node-toolbar.cpp:608 +msgid "Y:" +msgstr "Y:" + #: ../src/ui/dialog/object-properties.cpp:61 #: ../src/ui/dialog/object-properties.cpp:362 #: ../src/ui/dialog/object-properties.cpp:419 @@ -18835,8 +18881,8 @@ msgid "L_ock" msgstr "&Slēgt" #: ../src/ui/dialog/object-properties.cpp:74 -#: ../src/verbs.cpp:2568 -#: ../src/verbs.cpp:2574 +#: ../src/verbs.cpp:2572 +#: ../src/verbs.cpp:2578 msgid "_Set" msgstr "Ie_statīt" @@ -18986,7 +19032,7 @@ msgstr "Drukāt" #. ## Add a menu for clear() #: ../src/ui/dialog/scriptdialog.cpp:178 -#: ../src/verbs.cpp:131 +#: ../src/verbs.cpp:135 msgid "File" msgstr "Fails" @@ -19174,37 +19220,39 @@ msgid "Preview Text:" msgstr "Teksta priekšskatījums:" #. ******************* Symbol Sets ************************ -#: ../src/ui/dialog/symbols.cpp:119 +#: ../src/ui/dialog/symbols.cpp:126 msgid "Symbol set: " msgstr "Simbolu kopa:" #. Fill in later -#: ../src/ui/dialog/symbols.cpp:128 -#: ../src/ui/dialog/symbols.cpp:129 +#: ../src/ui/dialog/symbols.cpp:135 +#: ../src/ui/dialog/symbols.cpp:136 msgid "Current Document" msgstr "Pašreizējais dokuments" -#. ******************* Preview Scale ********************** -#: ../src/ui/dialog/symbols.cpp:178 -msgid "Preview scale: " -msgstr "Priekšskatījuma mērogs:" +#: ../src/ui/dialog/symbols.cpp:203 +msgid "Add Symbol from the current document." +msgstr "Pievienot simbolu no pašreizējā dokumenta." -#: ../src/ui/dialog/symbols.cpp:188 -msgid "Fit" -msgstr "Pielāgot" +#: ../src/ui/dialog/symbols.cpp:212 +msgid "Remove Symbol from the current document." +msgstr "Aizvāklt simbolu no pašreizējā dokumenta." -#: ../src/ui/dialog/symbols.cpp:188 -msgid "Fit to width" -msgstr "Pielāgot platumam" +#: ../src/ui/dialog/symbols.cpp:225 +msgid "Make Icons bigger by zooming in." +msgstr "Palieliniet ikonas tuvinot." -#: ../src/ui/dialog/symbols.cpp:188 -msgid "Fit to height" -msgstr "Pielāgot augstumam" +#: ../src/ui/dialog/symbols.cpp:234 +msgid "Make Icons smaller by zooming out." +msgstr "Samaziniet ikonu izmēru tālinot." -#. ******************* Preview Size *********************** -#: ../src/ui/dialog/symbols.cpp:208 -msgid "Preview size: " -msgstr "Priekšskatījuma izmērs:" +#: ../src/ui/dialog/symbols.cpp:243 +msgid "Toggle 'fit' symbols in icon space." +msgstr "Ieslēdziet simbolu \"ietilpināšanu\" ikonu laukā. " + +#: ../src/ui/dialog/symbols.cpp:556 +msgid "Unnamed Symbols" +msgstr "Nenosaukti simboli" #. TRANSLATORS: An item in context menu on a colour in the swatches #: ../src/ui/dialog/swatches.cpp:258 @@ -19414,11 +19462,11 @@ msgstr "Pirms vektorizēšanas bitkartei pielietot Gausa izpludināšanu" #. TRANSLATORS: "Stack" is a verb here #: ../src/ui/dialog/tracedialog.cpp:657 msgid "Stac_k scans" -msgstr "" +msgstr "Sakraut skenējumus kaudzē" #: ../src/ui/dialog/tracedialog.cpp:661 msgid "Stack scans on top of one another (no gaps) instead of tiling (usually with gaps)" -msgstr "" +msgstr "Sakraut skenējumus kaudzē vienu virs otra (bez atstarpēm) nevis novietot blakus (parasti ar atstarpēm)" #: ../src/ui/dialog/tracedialog.cpp:665 msgid "Remo_ve background" @@ -19548,142 +19596,142 @@ msgstr "Atcelt notiekošo vektorizēšanu" msgid "Execute the trace" msgstr "Izpildīt vektorizēšanu" -#: ../src/ui/dialog/transformation.cpp:71 -#: ../src/ui/dialog/transformation.cpp:81 +#: ../src/ui/dialog/transformation.cpp:75 +#: ../src/ui/dialog/transformation.cpp:85 msgid "_Horizontal:" msgstr "_Horizontālā:" -#: ../src/ui/dialog/transformation.cpp:71 +#: ../src/ui/dialog/transformation.cpp:75 msgid "Horizontal displacement (relative) or position (absolute)" msgstr "Horizontālais pārvietojums (relatīvais) vai pozīcija (absolūtais)" -#: ../src/ui/dialog/transformation.cpp:73 -#: ../src/ui/dialog/transformation.cpp:83 +#: ../src/ui/dialog/transformation.cpp:77 +#: ../src/ui/dialog/transformation.cpp:87 msgid "_Vertical:" msgstr "_Vertikālā:" -#: ../src/ui/dialog/transformation.cpp:73 +#: ../src/ui/dialog/transformation.cpp:77 msgid "Vertical displacement (relative) or position (absolute)" msgstr "Vertikālais pārvietojums (relatīvais) vai pozīcija (absolūtais)" -#: ../src/ui/dialog/transformation.cpp:75 +#: ../src/ui/dialog/transformation.cpp:79 msgid "Horizontal size (absolute or percentage of current)" msgstr "Horizontālais izmērs (absolūtais vai procentos no pašreizējā)" -#: ../src/ui/dialog/transformation.cpp:77 +#: ../src/ui/dialog/transformation.cpp:81 msgid "Vertical size (absolute or percentage of current)" msgstr "Vertikālais izmērs (absolūtais vai procentos no pašreizējā)" -#: ../src/ui/dialog/transformation.cpp:79 +#: ../src/ui/dialog/transformation.cpp:83 msgid "A_ngle:" msgstr "L_eņķis:" -#: ../src/ui/dialog/transformation.cpp:79 -#: ../src/ui/dialog/transformation.cpp:1064 +#: ../src/ui/dialog/transformation.cpp:83 +#: ../src/ui/dialog/transformation.cpp:1068 msgid "Rotation angle (positive = counterclockwise)" msgstr "Pagrieziena leņķis (pozitīvs = pretēji pulksteņrādītājam)" -#: ../src/ui/dialog/transformation.cpp:81 +#: ../src/ui/dialog/transformation.cpp:85 msgid "Horizontal skew angle (positive = counterclockwise), or absolute displacement, or percentage displacement" msgstr "Horizontālās šķiebšanas leņķis (pozītīvs = pretēji pulksteņrādītājam), vai absolūtais pārvietojums, vai procentuālais pārvietojums" -#: ../src/ui/dialog/transformation.cpp:83 +#: ../src/ui/dialog/transformation.cpp:87 msgid "Vertical skew angle (positive = counterclockwise), or absolute displacement, or percentage displacement" msgstr "Vertikālās šķiebšanas leņķis (pozītīvs = pretēji pulksteņrādītājam), vai absolūtais pārvietojums, vai procentuālais pārvietojums" -#: ../src/ui/dialog/transformation.cpp:86 +#: ../src/ui/dialog/transformation.cpp:90 msgid "Transformation matrix element A" msgstr "Pārveidošanas matricas elements A" -#: ../src/ui/dialog/transformation.cpp:87 +#: ../src/ui/dialog/transformation.cpp:91 msgid "Transformation matrix element B" msgstr "Pārveidošanas matricas elements B" -#: ../src/ui/dialog/transformation.cpp:88 +#: ../src/ui/dialog/transformation.cpp:92 msgid "Transformation matrix element C" msgstr "Pārveidošanas matricas elements C" -#: ../src/ui/dialog/transformation.cpp:89 +#: ../src/ui/dialog/transformation.cpp:93 msgid "Transformation matrix element D" msgstr "Pārveidošanas matricas elements D" -#: ../src/ui/dialog/transformation.cpp:90 +#: ../src/ui/dialog/transformation.cpp:94 msgid "Transformation matrix element E" msgstr "Pārveidošanas matricas elements E" -#: ../src/ui/dialog/transformation.cpp:91 +#: ../src/ui/dialog/transformation.cpp:95 msgid "Transformation matrix element F" msgstr "Pārveidošanas matricas elements F" -#: ../src/ui/dialog/transformation.cpp:96 +#: ../src/ui/dialog/transformation.cpp:100 msgid "Rela_tive move" msgstr "Rela_tīvais pārvietojums" -#: ../src/ui/dialog/transformation.cpp:96 +#: ../src/ui/dialog/transformation.cpp:100 msgid "Add the specified relative displacement to the current position; otherwise, edit the current absolute position directly" msgstr "Pievienot pašreizējam novietojumam norādīto relatīvo nobīdi; pretējā gadījumā labot pašreizējo absolūto novietojumu" -#: ../src/ui/dialog/transformation.cpp:97 +#: ../src/ui/dialog/transformation.cpp:101 msgid "_Scale proportionally" msgstr "Mērogot _proporcionāli" -#: ../src/ui/dialog/transformation.cpp:97 +#: ../src/ui/dialog/transformation.cpp:101 msgid "Preserve the width/height ratio of the scaled objects" msgstr "Saglabāt platuma/augstuma attiecību mērogotajiem objektiem" -#: ../src/ui/dialog/transformation.cpp:98 +#: ../src/ui/dialog/transformation.cpp:102 msgid "Apply to each _object separately" msgstr "Pielietot katram _objektam atsevišķi" -#: ../src/ui/dialog/transformation.cpp:98 +#: ../src/ui/dialog/transformation.cpp:102 msgid "Apply the scale/rotate/skew to each selected object separately; otherwise, transform the selection as a whole" msgstr "Pielietot mērogošanu/griešanu/šķiebšanu katram atlasītajam objektam atsevišķi; pretējā gadījumā - pārveidot atlasīto kā vienu veselu" -#: ../src/ui/dialog/transformation.cpp:99 +#: ../src/ui/dialog/transformation.cpp:103 msgid "Edit c_urrent matrix" msgstr "Labot pašreizējo matric_u" -#: ../src/ui/dialog/transformation.cpp:99 +#: ../src/ui/dialog/transformation.cpp:103 msgid "Edit the current transform= matrix; otherwise, post-multiply transform= by this matrix" msgstr "Labojiet pašreizējo transform= matricu; pretējā gadījumā - vēlāk reiziniet transform= ar šo matricu" -#: ../src/ui/dialog/transformation.cpp:112 +#: ../src/ui/dialog/transformation.cpp:116 msgid "_Scale" msgstr "_Mērogot" -#: ../src/ui/dialog/transformation.cpp:115 +#: ../src/ui/dialog/transformation.cpp:119 msgid "_Rotate" msgstr "Pag_riezt" -#: ../src/ui/dialog/transformation.cpp:118 +#: ../src/ui/dialog/transformation.cpp:122 msgid "Ske_w" msgstr "Šķie_bt" -#: ../src/ui/dialog/transformation.cpp:121 +#: ../src/ui/dialog/transformation.cpp:125 msgid "Matri_x" msgstr "Matri_ca" -#: ../src/ui/dialog/transformation.cpp:145 +#: ../src/ui/dialog/transformation.cpp:149 msgid "Reset the values on the current tab to defaults" msgstr "Atiestatīt vērtības pašreizējā šķirklī uz noklusētajām" -#: ../src/ui/dialog/transformation.cpp:152 +#: ../src/ui/dialog/transformation.cpp:156 msgid "Apply transformation to selection" msgstr "Pielietot pārveidojumu atlasītajam" -#: ../src/ui/dialog/transformation.cpp:327 +#: ../src/ui/dialog/transformation.cpp:331 msgid "Rotate in a counterclockwise direction" msgstr "Pagriezt pretēji pulksteņrādītājam" -#: ../src/ui/dialog/transformation.cpp:333 +#: ../src/ui/dialog/transformation.cpp:337 msgid "Rotate in a clockwise direction" msgstr "Pagriezt pa pulksteņrādītājam" -#: ../src/ui/dialog/transformation.cpp:972 +#: ../src/ui/dialog/transformation.cpp:976 msgid "Edit transformation matrix" msgstr "Labot pārveidošanas matricu" -#: ../src/ui/dialog/transformation.cpp:1071 +#: ../src/ui/dialog/transformation.cpp:1075 msgid "Rotation angle (positive = clockwise)" msgstr "Pagrieziena leņķis (pozitīvs = pulksteņrādītāja virzienā)" @@ -20217,6 +20265,7 @@ msgid "Bottom margin" msgstr "Apakšējā mala" #: ../src/ui/widget/page-sizer.cpp:303 +#: ../share/extensions/hpgl_output.inx.h:7 msgid "Orientation:" msgstr "Orientācija:" @@ -20249,101 +20298,101 @@ msgstr "Pielāgot lapas izmēru pašreiz iezīmētajam vai arī visas zīmējuma msgid "Set page size" msgstr "Iestatiet lapas izmēru" -#: ../src/ui/widget/panel.cpp:112 +#: ../src/ui/widget/panel.cpp:116 msgid "List" msgstr "Saraksts" -#: ../src/ui/widget/panel.cpp:135 +#: ../src/ui/widget/panel.cpp:139 msgctxt "Swatches" msgid "Size" msgstr "Lielums" -#: ../src/ui/widget/panel.cpp:139 +#: ../src/ui/widget/panel.cpp:143 msgctxt "Swatches height" msgid "Tiny" msgstr "Sīks" -#: ../src/ui/widget/panel.cpp:140 +#: ../src/ui/widget/panel.cpp:144 msgctxt "Swatches height" msgid "Small" msgstr "Mazs" -#: ../src/ui/widget/panel.cpp:141 +#: ../src/ui/widget/panel.cpp:145 msgctxt "Swatches height" msgid "Medium" msgstr "Vidējs" -#: ../src/ui/widget/panel.cpp:142 +#: ../src/ui/widget/panel.cpp:146 msgctxt "Swatches height" msgid "Large" msgstr "Liels" -#: ../src/ui/widget/panel.cpp:143 +#: ../src/ui/widget/panel.cpp:147 msgctxt "Swatches height" msgid "Huge" msgstr "Ļoti liels" -#: ../src/ui/widget/panel.cpp:165 +#: ../src/ui/widget/panel.cpp:169 msgctxt "Swatches" msgid "Width" msgstr "Platums" -#: ../src/ui/widget/panel.cpp:169 +#: ../src/ui/widget/panel.cpp:173 msgctxt "Swatches width" msgid "Narrower" msgstr "Šaurāks" -#: ../src/ui/widget/panel.cpp:170 +#: ../src/ui/widget/panel.cpp:174 msgctxt "Swatches width" msgid "Narrow" msgstr "Šaurs" -#: ../src/ui/widget/panel.cpp:171 +#: ../src/ui/widget/panel.cpp:175 msgctxt "Swatches width" msgid "Medium" msgstr "Vidējs" -#: ../src/ui/widget/panel.cpp:172 +#: ../src/ui/widget/panel.cpp:176 msgctxt "Swatches width" msgid "Wide" msgstr "Plats" -#: ../src/ui/widget/panel.cpp:173 +#: ../src/ui/widget/panel.cpp:177 msgctxt "Swatches width" msgid "Wider" msgstr "Platāks" -#: ../src/ui/widget/panel.cpp:203 +#: ../src/ui/widget/panel.cpp:207 msgctxt "Swatches" msgid "Border" msgstr "Robeža" -#: ../src/ui/widget/panel.cpp:207 +#: ../src/ui/widget/panel.cpp:211 msgctxt "Swatches border" msgid "None" msgstr "Nekas" -#: ../src/ui/widget/panel.cpp:208 +#: ../src/ui/widget/panel.cpp:212 msgctxt "Swatches border" msgid "Solid" msgstr "Vienlaidus" -#: ../src/ui/widget/panel.cpp:209 +#: ../src/ui/widget/panel.cpp:213 msgctxt "Swatches border" msgid "Wide" msgstr "Plats" #. TRANSLATORS: "Wrap" indicates how colour swatches are displayed -#: ../src/ui/widget/panel.cpp:240 +#: ../src/ui/widget/panel.cpp:244 msgctxt "Swatches" msgid "Wrap" msgstr "Aplauzt" -#: ../src/ui/widget/preferences-widget.cpp:798 +#: ../src/ui/widget/preferences-widget.cpp:802 msgid "_Browse..." msgstr "_Pārlūkot..." -#: ../src/ui/widget/preferences-widget.cpp:884 +#: ../src/ui/widget/preferences-widget.cpp:888 msgid "Select a bitmap editor" msgstr "Izvēlieties bitkartes redaktoru" @@ -20419,7 +20468,7 @@ msgstr "Nav apmales" #: ../src/ui/widget/selected-style.cpp:184 #: ../src/ui/widget/style-swatch.cpp:300 -#: ../src/widgets/paint-selector.cpp:239 +#: ../src/widgets/paint-selector.cpp:242 msgid "Pattern" msgstr "Faktūra" @@ -20483,7 +20532,7 @@ msgstr "atiestatīts" #: ../src/ui/widget/selected-style.cpp:275 #: ../src/ui/widget/selected-style.cpp:554 #: ../src/ui/widget/style-swatch.cpp:326 -#: ../src/widgets/fill-style.cpp:708 +#: ../src/widgets/fill-style.cpp:712 msgid "Unset fill" msgstr "Atiestatīt aizpildījumu" @@ -20491,7 +20540,7 @@ msgstr "Atiestatīt aizpildījumu" #: ../src/ui/widget/selected-style.cpp:275 #: ../src/ui/widget/selected-style.cpp:570 #: ../src/ui/widget/style-swatch.cpp:326 -#: ../src/widgets/fill-style.cpp:708 +#: ../src/widgets/fill-style.cpp:712 msgid "Unset stroke" msgstr "Atiestatīt apmali" @@ -20570,13 +20619,13 @@ msgstr "Padarīt apmali necaurspīdīgu" #: ../src/ui/widget/selected-style.cpp:279 #: ../src/ui/widget/selected-style.cpp:536 -#: ../src/widgets/fill-style.cpp:506 +#: ../src/widgets/fill-style.cpp:510 msgid "Remove fill" msgstr "Aizvākt aizpildījumu" #: ../src/ui/widget/selected-style.cpp:279 #: ../src/ui/widget/selected-style.cpp:545 -#: ../src/widgets/fill-style.cpp:506 +#: ../src/widgets/fill-style.cpp:510 msgid "Remove stroke" msgstr "Aizvākt apmali" @@ -20700,7 +20749,7 @@ msgid "Adjusting stroke width: was %.3g, now %.3g (diff %.3g)" msgstr "Pieskaņo apmales platumu: bija %.3g, tagad %.3g (starpība %.3g)" #. TRANSLATORS: "Link" means to _link_ two sliders together -#: ../src/ui/widget/spin-scale.cpp:137 +#: ../src/ui/widget/spin-scale.cpp:138 #: ../src/ui/widget/spin-slider.cpp:156 msgctxt "Sliders" msgid "Link" @@ -20777,27 +20826,27 @@ msgstr[0] "kopējs %d paralēlskaldnim; velciet ar Shift, lai atda msgstr[1] "kopējs %d paralēlskaldņiem; velciet ar Shift, lai atdalītu atlasīto(s) paralēlskaldni (-ņus)" msgstr[2] ", kopējs %d paralēlskaldņiem; velciet ar Shift, lai atdalītu atlasīto(s) paralēlskaldni (-ņus)" -#: ../src/verbs.cpp:150 +#: ../src/verbs.cpp:154 #: ../src/widgets/calligraphy-toolbar.cpp:647 msgid "Edit" msgstr "Labot" -#: ../src/verbs.cpp:226 +#: ../src/verbs.cpp:230 msgid "Context" msgstr "Konteksts" -#: ../src/verbs.cpp:245 -#: ../src/verbs.cpp:2162 +#: ../src/verbs.cpp:249 +#: ../src/verbs.cpp:2166 #: ../share/extensions/jessyInk_view.inx.h:1 #: ../share/extensions/polyhedron_3d.inx.h:26 msgid "View" msgstr "Skatīt" -#: ../src/verbs.cpp:265 +#: ../src/verbs.cpp:269 msgid "Dialog" msgstr "Dialoglodziņš" -#: ../src/verbs.cpp:322 +#: ../src/verbs.cpp:326 #: ../share/extensions/lorem_ipsum.inx.h:8 #: ../share/extensions/replace_font.inx.h:11 #: ../share/extensions/split.inx.h:10 @@ -20812,2180 +20861,2180 @@ msgstr "Dialoglodziņš" msgid "Text" msgstr "Teksts" -#: ../src/verbs.cpp:1169 +#: ../src/verbs.cpp:1173 msgid "Switch to next layer" msgstr "Pārslēgties uz nākošo slāni" -#: ../src/verbs.cpp:1170 +#: ../src/verbs.cpp:1174 msgid "Switched to next layer." msgstr "Pārslēgts uz nākošo slāni." -#: ../src/verbs.cpp:1172 +#: ../src/verbs.cpp:1176 msgid "Cannot go past last layer." msgstr "Nevar pārvietoties tālāk par pēdējo slāni." -#: ../src/verbs.cpp:1181 +#: ../src/verbs.cpp:1185 msgid "Switch to previous layer" msgstr "Pārslēgties uz iepriekšējo slāni" -#: ../src/verbs.cpp:1182 +#: ../src/verbs.cpp:1186 msgid "Switched to previous layer." msgstr "Pārslēgts uz iepriekšējo slāni." -#: ../src/verbs.cpp:1184 +#: ../src/verbs.cpp:1188 msgid "Cannot go before first layer." msgstr "Nevar pārvietoties pirms pirmā slāņa." -#: ../src/verbs.cpp:1205 -#: ../src/verbs.cpp:1302 -#: ../src/verbs.cpp:1334 -#: ../src/verbs.cpp:1340 -#: ../src/verbs.cpp:1364 -#: ../src/verbs.cpp:1379 +#: ../src/verbs.cpp:1209 +#: ../src/verbs.cpp:1306 +#: ../src/verbs.cpp:1338 +#: ../src/verbs.cpp:1344 +#: ../src/verbs.cpp:1368 +#: ../src/verbs.cpp:1383 msgid "No current layer." msgstr "Nav pašreizējā slāņa." -#: ../src/verbs.cpp:1234 #: ../src/verbs.cpp:1238 +#: ../src/verbs.cpp:1242 #, c-format msgid "Raised layer %s." msgstr "Līmenis %s pacelts." -#: ../src/verbs.cpp:1235 +#: ../src/verbs.cpp:1239 msgid "Layer to top" msgstr "Slāni uz virspusi" -#: ../src/verbs.cpp:1239 +#: ../src/verbs.cpp:1243 msgid "Raise layer" msgstr "Pacelt slāni" -#: ../src/verbs.cpp:1242 #: ../src/verbs.cpp:1246 +#: ../src/verbs.cpp:1250 #, c-format msgid "Lowered layer %s." msgstr "Pazeminātais slānis %s." -#: ../src/verbs.cpp:1243 +#: ../src/verbs.cpp:1247 msgid "Layer to bottom" msgstr "Slāni uz apakšu" -#: ../src/verbs.cpp:1247 +#: ../src/verbs.cpp:1251 msgid "Lower layer" msgstr "Zemākais slānis" -#: ../src/verbs.cpp:1256 +#: ../src/verbs.cpp:1260 msgid "Cannot move layer any further." msgstr "Slāni tālāk pārvietot nav iespējams." -#: ../src/verbs.cpp:1270 -#: ../src/verbs.cpp:1289 +#: ../src/verbs.cpp:1274 +#: ../src/verbs.cpp:1293 #, c-format msgid "%s copy" msgstr "%s kopēt" -#: ../src/verbs.cpp:1297 +#: ../src/verbs.cpp:1301 msgid "Duplicate layer" msgstr "Dublēt slāni" #. TRANSLATORS: this means "The layer has been duplicated." -#: ../src/verbs.cpp:1300 +#: ../src/verbs.cpp:1304 msgid "Duplicated layer." msgstr "Dublētais slānis." -#: ../src/verbs.cpp:1329 +#: ../src/verbs.cpp:1333 msgid "Delete layer" msgstr "Dzēst slāni" #. TRANSLATORS: this means "The layer has been deleted." -#: ../src/verbs.cpp:1332 +#: ../src/verbs.cpp:1336 msgid "Deleted layer." msgstr "Dzēstais slānis." -#: ../src/verbs.cpp:1349 +#: ../src/verbs.cpp:1353 msgid "Show all layers" msgstr "Rādīt visus slāņus" -#: ../src/verbs.cpp:1354 +#: ../src/verbs.cpp:1358 msgid "Hide all layers" msgstr "Slēpt visus slāņus" -#: ../src/verbs.cpp:1359 +#: ../src/verbs.cpp:1363 msgid "Lock all layers" msgstr "Slēgt visus slāņus" -#: ../src/verbs.cpp:1373 +#: ../src/verbs.cpp:1377 msgid "Unlock all layers" msgstr "Atslēgt visus slāņus" -#: ../src/verbs.cpp:1447 +#: ../src/verbs.cpp:1451 msgid "Flip horizontally" msgstr "Apmest horizontāli" -#: ../src/verbs.cpp:1452 +#: ../src/verbs.cpp:1456 msgid "Flip vertically" msgstr "Apmest vertikāli" #. TRANSLATORS: If you have translated the tutorial-basic.en.svgz file to your language, #. then translate this string as "tutorial-basic.LANG.svgz" (where LANG is your language #. code); otherwise leave as "tutorial-basic.svg". -#: ../src/verbs.cpp:2045 +#: ../src/verbs.cpp:2049 msgid "tutorial-basic.svg" msgstr "tutorial-basic.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2049 +#: ../src/verbs.cpp:2053 msgid "tutorial-shapes.svg" msgstr "tutorial-shapes.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2053 +#: ../src/verbs.cpp:2057 msgid "tutorial-advanced.svg" msgstr "tutorial-advanced.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2057 +#: ../src/verbs.cpp:2061 msgid "tutorial-tracing.svg" msgstr "tutorial-tracing.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2061 +#: ../src/verbs.cpp:2065 msgid "tutorial-calligraphy.svg" msgstr "tutorial-calligraphy.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2065 +#: ../src/verbs.cpp:2069 msgid "tutorial-interpolate.svg" msgstr "tutorial-interpolate.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2069 +#: ../src/verbs.cpp:2073 msgid "tutorial-elements.svg" msgstr "tutorial-elements.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2073 +#: ../src/verbs.cpp:2077 msgid "tutorial-tips.svg" msgstr "tutorial-tips.svg" -#: ../src/verbs.cpp:2261 -#: ../src/verbs.cpp:2847 +#: ../src/verbs.cpp:2265 +#: ../src/verbs.cpp:2851 msgid "Unlock all objects in the current layer" msgstr "Atslēgt visus objektus pašreizējā slānī" -#: ../src/verbs.cpp:2265 -#: ../src/verbs.cpp:2849 +#: ../src/verbs.cpp:2269 +#: ../src/verbs.cpp:2853 msgid "Unlock all objects in all layers" msgstr "Atslēgt visus objektus visos slāņos" -#: ../src/verbs.cpp:2269 -#: ../src/verbs.cpp:2851 +#: ../src/verbs.cpp:2273 +#: ../src/verbs.cpp:2855 msgid "Unhide all objects in the current layer" msgstr "Parādīt visus objektus pašreizējā slānī" -#: ../src/verbs.cpp:2273 -#: ../src/verbs.cpp:2853 +#: ../src/verbs.cpp:2277 +#: ../src/verbs.cpp:2857 msgid "Unhide all objects in all layers" msgstr "Parādīt visus objektus visos slānī" -#: ../src/verbs.cpp:2288 +#: ../src/verbs.cpp:2292 msgid "Does nothing" msgstr "Nedara neko" -#: ../src/verbs.cpp:2291 +#: ../src/verbs.cpp:2295 msgid "Create new document from the default template" msgstr "Izveidot jaunu dokumentu no noklusētās sagataves" -#: ../src/verbs.cpp:2293 +#: ../src/verbs.cpp:2297 msgid "_Open..." msgstr "_Atvērt..." -#: ../src/verbs.cpp:2294 +#: ../src/verbs.cpp:2298 msgid "Open an existing document" msgstr "Atvērt jau esošu dokumentu" -#: ../src/verbs.cpp:2295 +#: ../src/verbs.cpp:2299 msgid "Re_vert" msgstr "Ielādēt iepriekš saglabāto" -#: ../src/verbs.cpp:2296 +#: ../src/verbs.cpp:2300 msgid "Revert to the last saved version of document (changes will be lost)" msgstr "Atgriezties pie pēdējās saglabātās versijas (visas izmaiņas tiks zaudētas)" -#: ../src/verbs.cpp:2297 +#: ../src/verbs.cpp:2301 msgid "Save document" msgstr "Saglabāt dokumentu" -#: ../src/verbs.cpp:2299 +#: ../src/verbs.cpp:2303 msgid "Save _As..." msgstr "S_aglabāt kā..." -#: ../src/verbs.cpp:2300 +#: ../src/verbs.cpp:2304 msgid "Save document under a new name" msgstr "Saglabāt programmu ar citu nosaukumu" -#: ../src/verbs.cpp:2301 +#: ../src/verbs.cpp:2305 msgid "Save a Cop_y..." msgstr "Saglabāt kopi_ju..." -#: ../src/verbs.cpp:2302 +#: ../src/verbs.cpp:2306 msgid "Save a copy of the document under a new name" msgstr "Saglabāt pašreizējā dokumenta kopiju ar jaunu nosaukumu" -#: ../src/verbs.cpp:2303 +#: ../src/verbs.cpp:2307 msgid "_Print..." msgstr "_Drukāt..." -#: ../src/verbs.cpp:2303 +#: ../src/verbs.cpp:2307 msgid "Print document" msgstr "Drukāt dokumentu" #. TRANSLATORS: "Vacuum Defs" means "Clean up defs" (so as to remove unused definitions) -#: ../src/verbs.cpp:2306 +#: ../src/verbs.cpp:2310 msgid "Clean _up document" msgstr "Uzkopt dokumentu" -#: ../src/verbs.cpp:2306 +#: ../src/verbs.cpp:2310 msgid "Remove unused definitions (such as gradients or clipping paths) from the <defs> of the document" msgstr "Aizvākt neizmantotos iestatījumus (piemēram, krāsu pārejas vai izgriešanas ceļus) no dokumenta <defs>" -#: ../src/verbs.cpp:2308 +#: ../src/verbs.cpp:2312 msgid "_Import..." msgstr "_Imports..." -#: ../src/verbs.cpp:2309 +#: ../src/verbs.cpp:2313 msgid "Import a bitmap or SVG image into this document" msgstr "Importēt bitkartes vai SVG attēlu šajā dokumentā" -#: ../src/verbs.cpp:2310 +#: ../src/verbs.cpp:2314 msgid "_Export Bitmap..." msgstr "_Eksportēt bitkarti..." -#: ../src/verbs.cpp:2311 +#: ../src/verbs.cpp:2315 msgid "Export this document or a selection as a bitmap image" msgstr "Eksportēt šo dokumentu vai iezīmēto apgabalu kā bitkartes attēlu" -#: ../src/verbs.cpp:2312 +#: ../src/verbs.cpp:2316 msgid "Import Clip Art..." msgstr "Importēt izgriezumkopu..." -#: ../src/verbs.cpp:2313 +#: ../src/verbs.cpp:2317 msgid "Import clipart from Open Clip Art Library" msgstr "Importēt izgriezumkopu no Open Clip Art bibliotēkas" #. new FileVerb(SP_VERB_FILE_EXPORT_TO_OCAL, "FileExportToOCAL", N_("Export To Open Clip Art Library"), N_("Export this document to Open Clip Art Library"), INKSCAPE_ICON_DOCUMENT_EXPORT_OCAL), -#: ../src/verbs.cpp:2315 +#: ../src/verbs.cpp:2319 msgid "N_ext Window" msgstr "_Nākošais logs" -#: ../src/verbs.cpp:2316 +#: ../src/verbs.cpp:2320 msgid "Switch to the next document window" msgstr "Pārslēgties uz nākošā dokumenta logu" -#: ../src/verbs.cpp:2317 +#: ../src/verbs.cpp:2321 msgid "P_revious Window" msgstr "Ie_priekšējais logs" -#: ../src/verbs.cpp:2318 +#: ../src/verbs.cpp:2322 msgid "Switch to the previous document window" msgstr "Pārslēgties uz iepriekšējā dokumenta logu" -#: ../src/verbs.cpp:2319 +#: ../src/verbs.cpp:2323 msgid "_Close" msgstr "_Aizvērt" -#: ../src/verbs.cpp:2320 +#: ../src/verbs.cpp:2324 msgid "Close this document window" msgstr "Aizvērt patreizējā dokumenta logu" -#: ../src/verbs.cpp:2321 +#: ../src/verbs.cpp:2325 msgid "_Quit" msgstr "_Iziet" -#: ../src/verbs.cpp:2321 +#: ../src/verbs.cpp:2325 msgid "Quit Inkscape" msgstr "Iziet no Inkscape" -#: ../src/verbs.cpp:2324 +#: ../src/verbs.cpp:2328 msgid "Undo last action" msgstr "Atsaukt pēdējo darbību" -#: ../src/verbs.cpp:2327 +#: ../src/verbs.cpp:2331 msgid "Do again the last undone action" msgstr "Atkārtot pēdējo atsaukto darbību" -#: ../src/verbs.cpp:2328 +#: ../src/verbs.cpp:2332 msgid "Cu_t" msgstr "Griez_t" -#: ../src/verbs.cpp:2329 +#: ../src/verbs.cpp:2333 msgid "Cut selection to clipboard" msgstr "Izgriezt atlasīto uz starpliktuvi" -#: ../src/verbs.cpp:2330 +#: ../src/verbs.cpp:2334 msgid "_Copy" msgstr "_Kopēt" -#: ../src/verbs.cpp:2331 +#: ../src/verbs.cpp:2335 msgid "Copy selection to clipboard" msgstr "Kopēt atlasīto uz starpliktuvi" -#: ../src/verbs.cpp:2332 +#: ../src/verbs.cpp:2336 msgid "_Paste" msgstr "_Ielīmēt" -#: ../src/verbs.cpp:2333 +#: ../src/verbs.cpp:2337 msgid "Paste objects from clipboard to mouse point, or paste text" msgstr "Ielīmēt objektus vai tekstu no starpliktuves peles kursora norādītajā vietā" -#: ../src/verbs.cpp:2334 +#: ../src/verbs.cpp:2338 msgid "Paste _Style" msgstr "Ielīmēt stilu" -#: ../src/verbs.cpp:2335 +#: ../src/verbs.cpp:2339 msgid "Apply the style of the copied object to selection" msgstr "Pielietot atlasītajam nokopētā objekta stilu" -#: ../src/verbs.cpp:2337 +#: ../src/verbs.cpp:2341 msgid "Scale selection to match the size of the copied object" msgstr "Mērogot atlasīto, lai atbilstu nokopētā objekta izmēram" -#: ../src/verbs.cpp:2338 +#: ../src/verbs.cpp:2342 msgid "Paste _Width" msgstr "Ielīmēt pla_tumu" -#: ../src/verbs.cpp:2339 +#: ../src/verbs.cpp:2343 msgid "Scale selection horizontally to match the width of the copied object" msgstr "Mērogot atlasīto horizontāli, lai atbilstu nokopētā objekta platumam" -#: ../src/verbs.cpp:2340 +#: ../src/verbs.cpp:2344 msgid "Paste _Height" msgstr "Ielīmēt au_gstumu" -#: ../src/verbs.cpp:2341 +#: ../src/verbs.cpp:2345 msgid "Scale selection vertically to match the height of the copied object" msgstr "Mērogot atlasīto vertikāli, lai atbilstu nokopētā objekta augstumam" -#: ../src/verbs.cpp:2342 +#: ../src/verbs.cpp:2346 msgid "Paste Size Separately" msgstr "Ielīmēt izmērus atsevišķi" -#: ../src/verbs.cpp:2343 +#: ../src/verbs.cpp:2347 msgid "Scale each selected object to match the size of the copied object" msgstr "Mērogot katru atlasīto objektu, lai atbilstu nokopētā objekta izmēram" -#: ../src/verbs.cpp:2344 +#: ../src/verbs.cpp:2348 msgid "Paste Width Separately" msgstr "Ielīmēt platumu atsevišķi" -#: ../src/verbs.cpp:2345 +#: ../src/verbs.cpp:2349 msgid "Scale each selected object horizontally to match the width of the copied object" msgstr "Mērogot katru atlasīto objektu horizontāli, lai atbilstu nokopētā objekta platumam" -#: ../src/verbs.cpp:2346 +#: ../src/verbs.cpp:2350 msgid "Paste Height Separately" msgstr "Ielīmēt augstumu atsevišķi" -#: ../src/verbs.cpp:2347 +#: ../src/verbs.cpp:2351 msgid "Scale each selected object vertically to match the height of the copied object" msgstr "Mērogot katru atlasīto objektu vertikāli, lai atbilstu nokopētā objekta augstumam" -#: ../src/verbs.cpp:2348 +#: ../src/verbs.cpp:2352 msgid "Paste _In Place" msgstr "Ielīmēt vietā" -#: ../src/verbs.cpp:2349 +#: ../src/verbs.cpp:2353 msgid "Paste objects from clipboard to the original location" msgstr "Ielīmēt objektus no starpliktuves to sākotnējā atrašanās vietā" -#: ../src/verbs.cpp:2350 +#: ../src/verbs.cpp:2354 msgid "Paste Path _Effect" msgstr "Ielīmēt ceļa _efektu" -#: ../src/verbs.cpp:2351 +#: ../src/verbs.cpp:2355 msgid "Apply the path effect of the copied object to selection" msgstr "Pielietot nokopētā objekta ceļa efektu atlasītajam" -#: ../src/verbs.cpp:2352 +#: ../src/verbs.cpp:2356 msgid "Remove Path _Effect" msgstr "Aizvākt ceļa _efektu" -#: ../src/verbs.cpp:2353 +#: ../src/verbs.cpp:2357 msgid "Remove any path effects from selected objects" msgstr "Aizvākt visus ceļa efektus no atlasītajiem objektiem" -#: ../src/verbs.cpp:2354 +#: ../src/verbs.cpp:2358 msgid "_Remove Filters" msgstr "Izņemt filt_rus" -#: ../src/verbs.cpp:2355 +#: ../src/verbs.cpp:2359 msgid "Remove any filters from selected objects" msgstr "Aizvākt visus filtrus no atlasītajiem objektiem" -#: ../src/verbs.cpp:2356 +#: ../src/verbs.cpp:2360 msgid "_Delete" msgstr "_Dzēst" -#: ../src/verbs.cpp:2357 +#: ../src/verbs.cpp:2361 msgid "Delete selection" msgstr "Dzēst iezīmēto" -#: ../src/verbs.cpp:2358 +#: ../src/verbs.cpp:2362 msgid "Duplic_ate" msgstr "Du_blēt" -#: ../src/verbs.cpp:2359 +#: ../src/verbs.cpp:2363 msgid "Duplicate selected objects" msgstr "Dublēt iezīmētos objektus" -#: ../src/verbs.cpp:2360 +#: ../src/verbs.cpp:2364 msgid "Create Clo_ne" msgstr "Izveidot klo_nu" -#: ../src/verbs.cpp:2361 +#: ../src/verbs.cpp:2365 msgid "Create a clone (a copy linked to the original) of selected object" msgstr "Izveidot atlasītā objekta klonus (vai kopēt, piesaistot oriģinālam)" -#: ../src/verbs.cpp:2362 +#: ../src/verbs.cpp:2366 msgid "Unlin_k Clone" msgstr "Atsaistīt _klonu" -#: ../src/verbs.cpp:2363 +#: ../src/verbs.cpp:2367 msgid "Cut the selected clones' links to the originals, turning them into standalone objects" msgstr "Saraut atlasīto klonu saites ar oriģināliem, pārveidojot tos par neatkarīgiem objektiem" -#: ../src/verbs.cpp:2364 +#: ../src/verbs.cpp:2368 msgid "Relink to Copied" msgstr "No jauna piesaistīt kopetajam" -#: ../src/verbs.cpp:2365 +#: ../src/verbs.cpp:2369 msgid "Relink the selected clones to the object currently on the clipboard" msgstr "Atjaunot atlasīto klonu saites uz pašreiz starpliktuvē atrodošos objektu" -#: ../src/verbs.cpp:2366 +#: ../src/verbs.cpp:2370 msgid "Select _Original" msgstr "Atlasīt _oriģinālu" -#: ../src/verbs.cpp:2367 +#: ../src/verbs.cpp:2371 msgid "Select the object to which the selected clone is linked" msgstr "Atlasīt objektu, kuram ir piesaistīts atlasītais klons" -#: ../src/verbs.cpp:2368 +#: ../src/verbs.cpp:2372 msgid "Clone original path (LPE)" msgstr "Klonēt sākotnējo ceļu (LPE)" -#: ../src/verbs.cpp:2369 +#: ../src/verbs.cpp:2373 msgid "Creates a new path, applies the Clone original LPE, and refers it to the selected path" msgstr "Izveido jaunu ceļu, pielieto Klonēt sākotnējo LPE un izveido atsauci uz atlasīto ceļu" -#: ../src/verbs.cpp:2370 +#: ../src/verbs.cpp:2374 msgid "Objects to _Marker" msgstr "Objektus par _marķieriem" -#: ../src/verbs.cpp:2371 +#: ../src/verbs.cpp:2375 msgid "Convert selection to a line marker" msgstr "Pārvērst atlasīto par līnijas marķieri" -#: ../src/verbs.cpp:2372 +#: ../src/verbs.cpp:2376 msgid "Objects to Gu_ides" msgstr "Objektus par palīglīn_ijām" -#: ../src/verbs.cpp:2373 +#: ../src/verbs.cpp:2377 msgid "Convert selected objects to a collection of guidelines aligned with their edges" msgstr "Pārveidot atlasītos objektus par gar objektu malām izkārtotu palīglīniju kopu" -#: ../src/verbs.cpp:2374 +#: ../src/verbs.cpp:2378 msgid "Objects to Patter_n" msgstr "Objektus par _faktūru" -#: ../src/verbs.cpp:2375 +#: ../src/verbs.cpp:2379 msgid "Convert selection to a rectangle with tiled pattern fill" msgstr "Pārvērst atlasīto par ar faktūras elementiem aizpildītu taisnstūri" -#: ../src/verbs.cpp:2376 +#: ../src/verbs.cpp:2380 msgid "Pattern to _Objects" msgstr "Faktūru par _objektiem" -#: ../src/verbs.cpp:2377 +#: ../src/verbs.cpp:2381 msgid "Extract objects from a tiled pattern fill" msgstr "Ekstraģēt objektus no faktūras aizpildījuma" -#: ../src/verbs.cpp:2378 +#: ../src/verbs.cpp:2382 msgid "Group to Symbol" msgstr "Grupu par simbolu" -#: ../src/verbs.cpp:2379 +#: ../src/verbs.cpp:2383 msgid "Convert group to a symbol" msgstr "Pārvērst grupu par simbolu" -#: ../src/verbs.cpp:2380 +#: ../src/verbs.cpp:2384 msgid "Symbol to Group" msgstr "Simbolu par grupu" -#: ../src/verbs.cpp:2381 +#: ../src/verbs.cpp:2385 msgid "Extract group from a symbol" msgstr "Ekstraģēt grupu no simbola" -#: ../src/verbs.cpp:2382 +#: ../src/verbs.cpp:2386 msgid "Clea_r All" msgstr "Notī_rīt visu" -#: ../src/verbs.cpp:2383 +#: ../src/verbs.cpp:2387 msgid "Delete all objects from document" msgstr "Dzēst visus objektus dokumentā" -#: ../src/verbs.cpp:2384 +#: ../src/verbs.cpp:2388 msgid "Select Al_l" msgstr "Izvēlēties _visu" -#: ../src/verbs.cpp:2385 +#: ../src/verbs.cpp:2389 msgid "Select all objects or all nodes" msgstr "Iezīmēt visus objektus vai mezglus" -#: ../src/verbs.cpp:2386 +#: ../src/verbs.cpp:2390 msgid "Select All in All La_yers" msgstr "Iezīmēt visu visos s_lāņos" -#: ../src/verbs.cpp:2387 +#: ../src/verbs.cpp:2391 msgid "Select all objects in all visible and unlocked layers" msgstr "Izvēlēties visus objektus visos redzamajos un atvērtajos slāņos" -#: ../src/verbs.cpp:2388 +#: ../src/verbs.cpp:2392 msgid "Fill _and Stroke" msgstr "Aizpildījums un apmale" -#: ../src/verbs.cpp:2389 +#: ../src/verbs.cpp:2393 msgid "Select all objects with the same fill and stroke as the selected objects" msgstr "Atlasīt visus objektus ar līdzīgu aizpildījumu un apmales platumu, kā jau atlasītajiem" -#: ../src/verbs.cpp:2390 +#: ../src/verbs.cpp:2394 msgid "_Fill Color" msgstr "_Pildījuma krāsa" -#: ../src/verbs.cpp:2391 +#: ../src/verbs.cpp:2395 msgid "Select all objects with the same fill as the selected objects" msgstr "Atlasīt visus objektus ar līdzīgu aizpildījumu, kā jau atlasītajiem" -#: ../src/verbs.cpp:2392 +#: ../src/verbs.cpp:2396 msgid "_Stroke Color" msgstr "_Apmales krāsa" -#: ../src/verbs.cpp:2393 +#: ../src/verbs.cpp:2397 msgid "Select all objects with the same stroke as the selected objects" msgstr "Atlasīt visus objektus ar līdzīgu apmales platumu, kā jau atlasītajiem" -#: ../src/verbs.cpp:2394 +#: ../src/verbs.cpp:2398 msgid "Stroke St_yle" msgstr "Apmales sti_ls" -#: ../src/verbs.cpp:2395 +#: ../src/verbs.cpp:2399 msgid "Select all objects with the same stroke style (width, dash, markers) as the selected objects" msgstr "Atlasīt visus objektus ar līdzīgu apmales stilu (platums, dalījumu, marķieri), kā jau atlasītajiem" -#: ../src/verbs.cpp:2396 +#: ../src/verbs.cpp:2400 msgid "_Object Type" msgstr "_Objekta tips" -#: ../src/verbs.cpp:2397 +#: ../src/verbs.cpp:2401 msgid "Select all objects with the same object type (rect, arc, text, path, bitmap etc) as the selected objects" msgstr "Atlasīt visus objektus ar līdzīgu tipu, kā jau atlasītajiem (taisnstūris, loks, teksts, bitkarte, ceļš utml.)" -#: ../src/verbs.cpp:2398 +#: ../src/verbs.cpp:2402 msgid "In_vert Selection" msgstr "In_vertēt izvēlēto" -#: ../src/verbs.cpp:2399 +#: ../src/verbs.cpp:2403 msgid "Invert selection (unselect what is selected and select everything else)" msgstr "Invertēt iezīmēto (atceļ iepriekšējo izvēli un izvēlas visu pārējo)" -#: ../src/verbs.cpp:2400 +#: ../src/verbs.cpp:2404 msgid "Invert in All Layers" msgstr "Invertēt visus slāņus" -#: ../src/verbs.cpp:2401 +#: ../src/verbs.cpp:2405 msgid "Invert selection in all visible and unlocked layers" msgstr "Invertēt iezīmēto visos redzamajos un atvērtajos slāņos" -#: ../src/verbs.cpp:2402 +#: ../src/verbs.cpp:2406 msgid "Select Next" msgstr "Izvēlēties nākošo" -#: ../src/verbs.cpp:2403 +#: ../src/verbs.cpp:2407 msgid "Select next object or node" msgstr "Izvēlēties nākošo objektu vai mezglu" -#: ../src/verbs.cpp:2404 +#: ../src/verbs.cpp:2408 msgid "Select Previous" msgstr "Izvēlēties iepriekšējo" -#: ../src/verbs.cpp:2405 +#: ../src/verbs.cpp:2409 msgid "Select previous object or node" msgstr "Izvēlēties iepriekšējo objektu vai mezglu" -#: ../src/verbs.cpp:2406 +#: ../src/verbs.cpp:2410 msgid "D_eselect" msgstr "Atc_elt atlasi" -#: ../src/verbs.cpp:2407 +#: ../src/verbs.cpp:2411 msgid "Deselect any selected objects or nodes" msgstr "Atcelt visu objektu vai mezglu izvēli" -#: ../src/verbs.cpp:2408 +#: ../src/verbs.cpp:2412 msgid "Create _Guides Around the Page" msgstr "Izveidot palī_glīnija apkārt lapai" -#: ../src/verbs.cpp:2409 -#: ../src/verbs.cpp:2411 +#: ../src/verbs.cpp:2413 +#: ../src/verbs.cpp:2415 msgid "Create four guides aligned with the page borders" msgstr "Izveidojiet četras gar lapas malām novietotas palīglīnijas" -#: ../src/verbs.cpp:2412 +#: ../src/verbs.cpp:2416 msgid "Next path effect parameter" msgstr "Nākošais ceļa efekta parametrs" -#: ../src/verbs.cpp:2413 +#: ../src/verbs.cpp:2417 msgid "Show next editable path effect parameter" msgstr "Rādīt nākošo labojamo ceļa efekta parametru" #. Selection -#: ../src/verbs.cpp:2416 +#: ../src/verbs.cpp:2420 msgid "Raise to _Top" msgstr "Pacelt _virspusē" -#: ../src/verbs.cpp:2417 +#: ../src/verbs.cpp:2421 msgid "Raise selection to top" msgstr "Pacelt izvēlēto pašā augšā" -#: ../src/verbs.cpp:2418 +#: ../src/verbs.cpp:2422 msgid "Lower to _Bottom" msgstr "Nolaist pašā apakšā" -#: ../src/verbs.cpp:2419 +#: ../src/verbs.cpp:2423 msgid "Lower selection to bottom" msgstr "Nolaist izvēlēto pašā apakšā" -#: ../src/verbs.cpp:2420 +#: ../src/verbs.cpp:2424 msgid "_Raise" msgstr "Pacelt" -#: ../src/verbs.cpp:2421 +#: ../src/verbs.cpp:2425 msgid "Raise selection one step" msgstr "Pacelt izvēlēto par vienu soli uz augšu" -#: ../src/verbs.cpp:2422 +#: ../src/verbs.cpp:2426 msgid "_Lower" msgstr "_Nolaist" -#: ../src/verbs.cpp:2423 +#: ../src/verbs.cpp:2427 msgid "Lower selection one step" msgstr "Pacelt izvēlēto par vienu soli uz leju" -#: ../src/verbs.cpp:2425 +#: ../src/verbs.cpp:2429 msgid "Group selected objects" msgstr "Grupēt iezīmētos objektus" -#: ../src/verbs.cpp:2427 +#: ../src/verbs.cpp:2431 msgid "Ungroup selected groups" msgstr "Atgrupēt iezīmētās grupas" -#: ../src/verbs.cpp:2429 +#: ../src/verbs.cpp:2433 msgid "_Put on Path" msgstr "Izvietot gar ceļu" -#: ../src/verbs.cpp:2431 +#: ../src/verbs.cpp:2435 msgid "_Remove from Path" msgstr "Aizvākt no ceļa" -#: ../src/verbs.cpp:2433 +#: ../src/verbs.cpp:2437 msgid "Remove Manual _Kerns" msgstr "aizvākt rokas rakstasavirzi" #. TRANSLATORS: "glyph": An image used in the visual representation of characters; #. roughly speaking, how a character looks. A font is a set of glyphs. -#: ../src/verbs.cpp:2436 +#: ../src/verbs.cpp:2440 msgid "Remove all manual kerns and glyph rotations from a text object" msgstr "Aizvākt no teksta objekta visas ar roku iestatītās rakstavirzes un glifu pagriezienus" -#: ../src/verbs.cpp:2438 +#: ../src/verbs.cpp:2442 msgid "_Union" msgstr "Ap_vienot" -#: ../src/verbs.cpp:2439 +#: ../src/verbs.cpp:2443 msgid "Create union of selected paths" msgstr "Apvienots atlasītos ceļus" -#: ../src/verbs.cpp:2440 +#: ../src/verbs.cpp:2444 msgid "_Intersection" msgstr "_Šķēlums" -#: ../src/verbs.cpp:2441 +#: ../src/verbs.cpp:2445 msgid "Create intersection of selected paths" msgstr "Izveidot atlasīto ceļu krustpunktu" -#: ../src/verbs.cpp:2442 +#: ../src/verbs.cpp:2446 msgid "_Difference" msgstr "_Atšķirība" -#: ../src/verbs.cpp:2443 +#: ../src/verbs.cpp:2447 msgid "Create difference of selected paths (bottom minus top)" msgstr "Izveidot atlasīto ceļu starpību (apakšējais mīnus augšējais)" -#: ../src/verbs.cpp:2444 +#: ../src/verbs.cpp:2448 msgid "E_xclusion" msgstr "I_zņēmums" -#: ../src/verbs.cpp:2445 +#: ../src/verbs.cpp:2449 msgid "Create exclusive OR of selected paths (those parts that belong to only one path)" msgstr "No atlasītajiem ceļiem izveidot izslēdzošo VAI (tās daļas, kas pieder tikai vienam ceļam)" -#: ../src/verbs.cpp:2446 +#: ../src/verbs.cpp:2450 msgid "Di_vision" msgstr "Ie_daļas" -#: ../src/verbs.cpp:2447 +#: ../src/verbs.cpp:2451 msgid "Cut the bottom path into pieces" msgstr "Sagriezt apakšējo ceļu gabalos" #. TRANSLATORS: "to cut a path" is not the same as "to break a path apart" - see the #. Advanced tutorial for more info -#: ../src/verbs.cpp:2450 +#: ../src/verbs.cpp:2454 msgid "Cut _Path" msgstr "Pārgriezt _ceļu" -#: ../src/verbs.cpp:2451 +#: ../src/verbs.cpp:2455 msgid "Cut the bottom path's stroke into pieces, removing fill" msgstr "Sagriezt apakšējā ceļa apmali posmos, aizvācot aizpildījumu" #. TRANSLATORS: "outset": expand a shape by offsetting the object's path, #. i.e. by displacing it perpendicular to the path in each point. #. See also the Advanced Tutorial for explanation. -#: ../src/verbs.cpp:2455 +#: ../src/verbs.cpp:2459 msgid "Outs_et" msgstr "Paga_rināt" -#: ../src/verbs.cpp:2456 +#: ../src/verbs.cpp:2460 msgid "Outset selected paths" msgstr "Pagarināt atlasīto ceļu" -#: ../src/verbs.cpp:2458 +#: ../src/verbs.cpp:2462 msgid "O_utset Path by 1 px" msgstr "Pagarināt atlasīto ceļ_u par 1 px" -#: ../src/verbs.cpp:2459 +#: ../src/verbs.cpp:2463 msgid "Outset selected paths by 1 px" msgstr "Pagarināt atlasīto ceļu par 1 px" -#: ../src/verbs.cpp:2461 +#: ../src/verbs.cpp:2465 msgid "O_utset Path by 10 px" msgstr "Pagarināt atlasīto ceļu par 10 px" -#: ../src/verbs.cpp:2462 +#: ../src/verbs.cpp:2466 msgid "Outset selected paths by 10 px" msgstr "Pagarināt atlasīto ceļu par 10 px" #. TRANSLATORS: "inset": contract a shape by offsetting the object's path, #. i.e. by displacing it perpendicular to the path in each point. #. See also the Advanced Tutorial for explanation. -#: ../src/verbs.cpp:2466 +#: ../src/verbs.cpp:2470 msgid "I_nset" msgstr "Saīsi_nāt" -#: ../src/verbs.cpp:2467 +#: ../src/verbs.cpp:2471 msgid "Inset selected paths" msgstr "Pārvietot atlasītos ceļus uz iekšu" -#: ../src/verbs.cpp:2469 +#: ../src/verbs.cpp:2473 msgid "I_nset Path by 1 px" msgstr "Saīsi_nāt ceļu par 1 px" -#: ../src/verbs.cpp:2470 +#: ../src/verbs.cpp:2474 msgid "Inset selected paths by 1 px" msgstr "Saīsināt atlasīto ceļu par 1 px" -#: ../src/verbs.cpp:2472 +#: ../src/verbs.cpp:2476 msgid "I_nset Path by 10 px" msgstr "Saīsi_nāt ceļu par 10 px" -#: ../src/verbs.cpp:2473 +#: ../src/verbs.cpp:2477 msgid "Inset selected paths by 10 px" msgstr "Saīsināt atlasīto ceļu par 10 px" -#: ../src/verbs.cpp:2475 +#: ../src/verbs.cpp:2479 msgid "D_ynamic Offset" msgstr "Dinamiskā nobīde" -#: ../src/verbs.cpp:2475 +#: ../src/verbs.cpp:2479 msgid "Create a dynamic offset object" msgstr "Izveidot dinamiski nobīdītu objektu" -#: ../src/verbs.cpp:2477 +#: ../src/verbs.cpp:2481 msgid "_Linked Offset" msgstr "Saistītā nobīde" -#: ../src/verbs.cpp:2478 +#: ../src/verbs.cpp:2482 msgid "Create a dynamic offset object linked to the original path" msgstr "Izveidot pie sākotnējā ceļa piesaistītu dinamisko nobīdītu objektu" -#: ../src/verbs.cpp:2480 +#: ../src/verbs.cpp:2484 msgid "_Stroke to Path" msgstr "Vilku_mu par ceļu" -#: ../src/verbs.cpp:2481 +#: ../src/verbs.cpp:2485 msgid "Convert selected object's stroke to paths" msgstr "Pārvērst atlasītā objekta apmali ceļos" -#: ../src/verbs.cpp:2482 +#: ../src/verbs.cpp:2486 msgid "Si_mplify" msgstr "V_ienkāršot" -#: ../src/verbs.cpp:2483 +#: ../src/verbs.cpp:2487 msgid "Simplify selected paths (remove extra nodes)" msgstr "Vienkāršo atlasītos ceļus (aizvāc liekos mezglus)" -#: ../src/verbs.cpp:2484 +#: ../src/verbs.cpp:2488 msgid "_Reverse" msgstr "Apg_rieztā secībā" -#: ../src/verbs.cpp:2485 +#: ../src/verbs.cpp:2489 msgid "Reverse the direction of selected paths (useful for flipping markers)" msgstr "Pagriezt atlasītos ceļus pretējā virzienā (noderīgs marķieru apgriešanai)" -#: ../src/verbs.cpp:2488 +#: ../src/verbs.cpp:2492 msgid "Create one or more paths from a bitmap by tracing it" msgstr "Vektorizējot izveido no bitkartes vienu vai vairākus ceļus" -#: ../src/verbs.cpp:2489 +#: ../src/verbs.cpp:2493 msgid "Make a _Bitmap Copy" msgstr "Izveidot _bitkartes kopiju" -#: ../src/verbs.cpp:2490 +#: ../src/verbs.cpp:2494 msgid "Export selection to a bitmap and insert it into document" msgstr "Eksportēt atlasīto uz bitkarti un ievietot to dokumentā" -#: ../src/verbs.cpp:2491 +#: ../src/verbs.cpp:2495 msgid "_Combine" msgstr "_Kombinēt" -#: ../src/verbs.cpp:2492 +#: ../src/verbs.cpp:2496 msgid "Combine several paths into one" msgstr "Apvieno vairākus ceļus vienā" #. TRANSLATORS: "to cut a path" is not the same as "to break a path apart" - see the #. Advanced tutorial for more info -#: ../src/verbs.cpp:2495 +#: ../src/verbs.cpp:2499 msgid "Break _Apart" msgstr "S_ašķelt" -#: ../src/verbs.cpp:2496 +#: ../src/verbs.cpp:2500 msgid "Break selected paths into subpaths" msgstr "Sašķelt atlasītos ceļus apakšceļos" -#: ../src/verbs.cpp:2497 +#: ../src/verbs.cpp:2501 msgid "Ro_ws and Columns..." msgstr "Rin_das un slejas..." -#: ../src/verbs.cpp:2498 +#: ../src/verbs.cpp:2502 msgid "Arrange selected objects in a table" msgstr "Sakārtot atlasītos objektus tabulā" #. Layer -#: ../src/verbs.cpp:2500 +#: ../src/verbs.cpp:2504 msgid "_Add Layer..." msgstr "Pie_vienot slāni..." -#: ../src/verbs.cpp:2501 +#: ../src/verbs.cpp:2505 msgid "Create a new layer" msgstr "Izveidot jaunu slāni" -#: ../src/verbs.cpp:2502 +#: ../src/verbs.cpp:2506 msgid "Re_name Layer..." msgstr "Pārdēvēt slā_ni..." -#: ../src/verbs.cpp:2503 +#: ../src/verbs.cpp:2507 msgid "Rename the current layer" msgstr "Pārdēvēt pašreizējo slāni" -#: ../src/verbs.cpp:2504 +#: ../src/verbs.cpp:2508 msgid "Switch to Layer Abov_e" msgstr "Pārslēgties uz virsējo slāni" -#: ../src/verbs.cpp:2505 +#: ../src/verbs.cpp:2509 msgid "Switch to the layer above the current" msgstr "Pārslēgties uz slāni virs pašreizējā" -#: ../src/verbs.cpp:2506 +#: ../src/verbs.cpp:2510 msgid "Switch to Layer Belo_w" msgstr "Pārslēgties uz apakšējo slāni" -#: ../src/verbs.cpp:2507 +#: ../src/verbs.cpp:2511 msgid "Switch to the layer below the current" msgstr "Pārslēgties uz slāni zem pašreizējā" -#: ../src/verbs.cpp:2508 +#: ../src/verbs.cpp:2512 msgid "Move Selection to Layer Abo_ve" msgstr "Pārvietot atlasīto uz slāni _virs šī" -#: ../src/verbs.cpp:2509 +#: ../src/verbs.cpp:2513 msgid "Move selection to the layer above the current" msgstr "Pārvietot izvēlēto uz slāni virs pašreizējā" -#: ../src/verbs.cpp:2510 +#: ../src/verbs.cpp:2514 msgid "Move Selection to Layer Bel_ow" msgstr "Pārvietot atlasīto uz slāni _zem šī" -#: ../src/verbs.cpp:2511 +#: ../src/verbs.cpp:2515 msgid "Move selection to the layer below the current" msgstr "Pārvietot izvēlēto uz slāni zem pašreizējā" -#: ../src/verbs.cpp:2512 +#: ../src/verbs.cpp:2516 msgid "Move Selection to Layer..." msgstr "Pārvietot atlasīto uz slāni..." -#: ../src/verbs.cpp:2514 +#: ../src/verbs.cpp:2518 msgid "Layer to _Top" msgstr "Slāni uz _virspusi" -#: ../src/verbs.cpp:2515 +#: ../src/verbs.cpp:2519 msgid "Raise the current layer to the top" msgstr "Pacelt pašreizējo slāni virspusē" -#: ../src/verbs.cpp:2516 +#: ../src/verbs.cpp:2520 msgid "Layer to _Bottom" msgstr "Slāni uz a_pakšu" -#: ../src/verbs.cpp:2517 +#: ../src/verbs.cpp:2521 msgid "Lower the current layer to the bottom" msgstr "Nolaist pašreizējo slāni apakšā" -#: ../src/verbs.cpp:2518 +#: ../src/verbs.cpp:2522 msgid "_Raise Layer" msgstr "_Pacelt slāni" -#: ../src/verbs.cpp:2519 +#: ../src/verbs.cpp:2523 msgid "Raise the current layer" msgstr "Pacelt pašreizējo slāni" -#: ../src/verbs.cpp:2520 +#: ../src/verbs.cpp:2524 msgid "_Lower Layer" msgstr "No_laist slāni" -#: ../src/verbs.cpp:2521 +#: ../src/verbs.cpp:2525 msgid "Lower the current layer" msgstr "Nolaist pašreizējo slāni" -#: ../src/verbs.cpp:2522 +#: ../src/verbs.cpp:2526 msgid "D_uplicate Current Layer" msgstr "Dublēt pašreizējo slāni" -#: ../src/verbs.cpp:2523 +#: ../src/verbs.cpp:2527 msgid "Duplicate an existing layer" msgstr "Dublēt esošu slāni" -#: ../src/verbs.cpp:2524 +#: ../src/verbs.cpp:2528 msgid "_Delete Current Layer" msgstr "_Dzēst pašreizējo slāni" -#: ../src/verbs.cpp:2525 +#: ../src/verbs.cpp:2529 msgid "Delete the current layer" msgstr "Dzēst pašreizējo slāni" -#: ../src/verbs.cpp:2526 +#: ../src/verbs.cpp:2530 msgid "_Show/hide other layers" msgstr "_Rādīt/slēpt citus slāņus" -#: ../src/verbs.cpp:2527 +#: ../src/verbs.cpp:2531 msgid "Solo the current layer" msgstr "Tikai šo slāni" -#: ../src/verbs.cpp:2528 +#: ../src/verbs.cpp:2532 msgid "_Show all layers" msgstr "Rādīt vi_sus slāņus" -#: ../src/verbs.cpp:2529 +#: ../src/verbs.cpp:2533 msgid "Show all the layers" msgstr "Rādīt visus slāņus" -#: ../src/verbs.cpp:2530 +#: ../src/verbs.cpp:2534 msgid "_Hide all layers" msgstr "Slē_pt visus slāņus" -#: ../src/verbs.cpp:2531 +#: ../src/verbs.cpp:2535 msgid "Hide all the layers" msgstr "Slēpt visus slāņus" -#: ../src/verbs.cpp:2532 +#: ../src/verbs.cpp:2536 msgid "_Lock all layers" msgstr "S_lēgt visus slāņus" -#: ../src/verbs.cpp:2533 +#: ../src/verbs.cpp:2537 msgid "Lock all the layers" msgstr "Slēdz visus slāņus" -#: ../src/verbs.cpp:2534 +#: ../src/verbs.cpp:2538 msgid "Lock/Unlock _other layers" msgstr "Aizslēgt/atslēgt citus slāņus" -#: ../src/verbs.cpp:2535 +#: ../src/verbs.cpp:2539 msgid "Lock all the other layers" msgstr "Slēdz visus citus slāņus" -#: ../src/verbs.cpp:2536 +#: ../src/verbs.cpp:2540 msgid "_Unlock all layers" msgstr "Atslēgt visus slāņ_us" -#: ../src/verbs.cpp:2537 +#: ../src/verbs.cpp:2541 msgid "Unlock all the layers" msgstr "Atslēdz visus slāņus" -#: ../src/verbs.cpp:2538 +#: ../src/verbs.cpp:2542 msgid "_Lock/Unlock Current Layer" msgstr "Slē_gt/atslēgt pašreizējo slāni" -#: ../src/verbs.cpp:2539 +#: ../src/verbs.cpp:2543 msgid "Toggle lock on current layer" msgstr "Pārslēdz pašreizējā slāņa slēdzeni" -#: ../src/verbs.cpp:2540 +#: ../src/verbs.cpp:2544 msgid "_Show/hide Current Layer" msgstr "Paslēpt/rādīt pašreizējo slāni" -#: ../src/verbs.cpp:2541 +#: ../src/verbs.cpp:2545 msgid "Toggle visibility of current layer" msgstr "Pārslēdz pašreizējā slāņa redzamību" #. Object -#: ../src/verbs.cpp:2544 +#: ../src/verbs.cpp:2548 msgid "Rotate _90° CW" msgstr "Pagriezt _90° CW" #. This is shared between tooltips and statusbar, so they #. must use UTF-8, not HTML entities for special characters. -#: ../src/verbs.cpp:2547 +#: ../src/verbs.cpp:2551 msgid "Rotate selection 90° clockwise" msgstr "Pagriezt izvēlēto par 90° pulksteņrādītāja virzienā" -#: ../src/verbs.cpp:2548 +#: ../src/verbs.cpp:2552 msgid "Rotate 9_0° CCW" msgstr "Pagriezt 9_0° CCW" #. This is shared between tooltips and statusbar, so they #. must use UTF-8, not HTML entities for special characters. -#: ../src/verbs.cpp:2551 +#: ../src/verbs.cpp:2555 msgid "Rotate selection 90° counter-clockwise" msgstr "Pagriezt izvēlēto par 90° pretēji pulksteņrādītāja virzienam" -#: ../src/verbs.cpp:2552 +#: ../src/verbs.cpp:2556 msgid "Remove _Transformations" msgstr "Aizvāk_t pārveidojumus" -#: ../src/verbs.cpp:2553 +#: ../src/verbs.cpp:2557 msgid "Remove transformations from object" msgstr "Aizvākt pārveidojumus no objekta" -#: ../src/verbs.cpp:2554 +#: ../src/verbs.cpp:2558 msgid "_Object to Path" msgstr "_Objektu par ceļu" -#: ../src/verbs.cpp:2555 +#: ../src/verbs.cpp:2559 msgid "Convert selected object to path" msgstr "Pārvērst atlasīto objektu par ceļu" -#: ../src/verbs.cpp:2556 +#: ../src/verbs.cpp:2560 msgid "_Flow into Frame" msgstr "_Aizpildīt rāmi" -#: ../src/verbs.cpp:2557 +#: ../src/verbs.cpp:2561 msgid "Put text into a frame (path or shape), creating a flowed text linked to the frame object" msgstr "Ievietojiet tekstu rāmī (ceļā vai figūrā), izveidojot ar tekstu aizpildītu rāmja objektu" -#: ../src/verbs.cpp:2558 +#: ../src/verbs.cpp:2562 msgid "_Unflow" msgstr "Aizvākt teksta aizpildīj_umu" -#: ../src/verbs.cpp:2559 +#: ../src/verbs.cpp:2563 msgid "Remove text from frame (creates a single-line text object)" msgstr "Izņemt tekstu no rāmja (izveido vienas rindas teksta objektu)" -#: ../src/verbs.cpp:2560 +#: ../src/verbs.cpp:2564 msgid "_Convert to Text" msgstr "_Pārveidot par tekstu" -#: ../src/verbs.cpp:2561 +#: ../src/verbs.cpp:2565 msgid "Convert flowed text to regular text object (preserves appearance)" msgstr "Pārvērš teksta aizpildījumu par vienkāršu teksta objektu (saglabājot izskatu)" -#: ../src/verbs.cpp:2563 +#: ../src/verbs.cpp:2567 msgid "Flip _Horizontal" msgstr "Apmest horizontāli" -#: ../src/verbs.cpp:2563 +#: ../src/verbs.cpp:2567 msgid "Flip selected objects horizontally" msgstr "Apmest izvēlēto objektu horizontāli" -#: ../src/verbs.cpp:2566 +#: ../src/verbs.cpp:2570 msgid "Flip _Vertical" msgstr "Apmest vertikāli" -#: ../src/verbs.cpp:2566 +#: ../src/verbs.cpp:2570 msgid "Flip selected objects vertically" msgstr "Apmest izvēlēto objektu vertikāli" -#: ../src/verbs.cpp:2569 +#: ../src/verbs.cpp:2573 msgid "Apply mask to selection (using the topmost object as mask)" msgstr "Uzlieciet masku atlasītajam (izmantojot augšējo objektu kā masku)" -#: ../src/verbs.cpp:2571 +#: ../src/verbs.cpp:2575 msgid "Edit mask" msgstr "Labot masku" -#: ../src/verbs.cpp:2572 -#: ../src/verbs.cpp:2578 +#: ../src/verbs.cpp:2576 +#: ../src/verbs.cpp:2582 msgid "_Release" msgstr "At_laist" -#: ../src/verbs.cpp:2573 +#: ../src/verbs.cpp:2577 msgid "Remove mask from selection" msgstr "Noņemt maskas no atlasītā" -#: ../src/verbs.cpp:2575 +#: ../src/verbs.cpp:2579 msgid "Apply clipping path to selection (using the topmost object as clipping path)" msgstr "Pielietot atlasītajam izgriešanas ceļu (par izgriešanas ceļu izmantojot augšpusē esošo objektu)" -#: ../src/verbs.cpp:2577 +#: ../src/verbs.cpp:2581 msgid "Edit clipping path" msgstr "Labot izgriešanas ceļu" -#: ../src/verbs.cpp:2579 +#: ../src/verbs.cpp:2583 msgid "Remove clipping path from selection" msgstr "Aizvākt izgriešanas ceļu no atlasītā" #. Tools -#: ../src/verbs.cpp:2582 +#: ../src/verbs.cpp:2586 msgctxt "ContextVerb" msgid "Select" msgstr "Iezīmēt" -#: ../src/verbs.cpp:2583 +#: ../src/verbs.cpp:2587 msgid "Select and transform objects" msgstr "Atlasīt un pārveidot objektus" -#: ../src/verbs.cpp:2584 +#: ../src/verbs.cpp:2588 msgctxt "ContextVerb" msgid "Node Edit" msgstr "Labot mezglu" -#: ../src/verbs.cpp:2585 +#: ../src/verbs.cpp:2589 msgid "Edit paths by nodes" msgstr "Labot ceļus pa mezgliem" -#: ../src/verbs.cpp:2586 +#: ../src/verbs.cpp:2590 msgctxt "ContextVerb" msgid "Tweak" msgstr "Pieskaņot" -#: ../src/verbs.cpp:2587 +#: ../src/verbs.cpp:2591 msgid "Tweak objects by sculpting or painting" msgstr "Pieskaņot objektus veidojot vai krāsojot" -#: ../src/verbs.cpp:2588 +#: ../src/verbs.cpp:2592 msgctxt "ContextVerb" msgid "Spray" msgstr "Smidzināt" -#: ../src/verbs.cpp:2589 +#: ../src/verbs.cpp:2593 msgid "Spray objects by sculpting or painting" msgstr "Izsmidzināt objektus veidojot vai krāsojot" -#: ../src/verbs.cpp:2590 +#: ../src/verbs.cpp:2594 msgctxt "ContextVerb" msgid "Rectangle" msgstr "Taisnstūris" -#: ../src/verbs.cpp:2591 +#: ../src/verbs.cpp:2595 msgid "Create rectangles and squares" msgstr "Zīmēt taisnstūrus un kvadrātus" -#: ../src/verbs.cpp:2592 +#: ../src/verbs.cpp:2596 msgctxt "ContextVerb" msgid "3D Box" msgstr "3D paralēlskaldnis" -#: ../src/verbs.cpp:2593 +#: ../src/verbs.cpp:2597 msgid "Create 3D boxes" msgstr "Izveidot 3D paralēlskaldņus" -#: ../src/verbs.cpp:2594 +#: ../src/verbs.cpp:2598 msgctxt "ContextVerb" msgid "Ellipse" msgstr "Elipse" -#: ../src/verbs.cpp:2595 +#: ../src/verbs.cpp:2599 msgid "Create circles, ellipses, and arcs" msgstr "Izveidot riņķus, elipses un lokus" -#: ../src/verbs.cpp:2596 +#: ../src/verbs.cpp:2600 msgctxt "ContextVerb" msgid "Star" msgstr "Zvaigzne" -#: ../src/verbs.cpp:2597 +#: ../src/verbs.cpp:2601 msgid "Create stars and polygons" msgstr "Izveidot zvaigznes un daudzstūrus" -#: ../src/verbs.cpp:2598 +#: ../src/verbs.cpp:2602 msgctxt "ContextVerb" msgid "Spiral" msgstr "Spirāle" -#: ../src/verbs.cpp:2599 +#: ../src/verbs.cpp:2603 msgid "Create spirals" msgstr "Izveidot spirāles" -#: ../src/verbs.cpp:2600 +#: ../src/verbs.cpp:2604 msgctxt "ContextVerb" msgid "Pencil" msgstr "Zīmulis" -#: ../src/verbs.cpp:2601 +#: ../src/verbs.cpp:2605 msgid "Draw freehand lines" msgstr "Zīmēt brīvas rokas līnijas" -#: ../src/verbs.cpp:2602 +#: ../src/verbs.cpp:2606 msgctxt "ContextVerb" msgid "Pen" msgstr "Spalva" -#: ../src/verbs.cpp:2603 +#: ../src/verbs.cpp:2607 msgid "Draw Bezier curves and straight lines" msgstr "Zīmējiet Bezjē līknes un taisnas līnijas" -#: ../src/verbs.cpp:2604 +#: ../src/verbs.cpp:2608 msgctxt "ContextVerb" msgid "Calligraphy" msgstr "Kaligrāfija" -#: ../src/verbs.cpp:2605 +#: ../src/verbs.cpp:2609 msgid "Draw calligraphic or brush strokes" msgstr "Zīmējiet kaligrāfiskās vai otas līnijas" -#: ../src/verbs.cpp:2607 +#: ../src/verbs.cpp:2611 msgid "Create and edit text objects" msgstr "Izveidot un labot teksta objektus" -#: ../src/verbs.cpp:2608 +#: ../src/verbs.cpp:2612 msgctxt "ContextVerb" msgid "Gradient" msgstr "Krāsu pāreja" -#: ../src/verbs.cpp:2609 +#: ../src/verbs.cpp:2613 msgid "Create and edit gradients" msgstr "Izveidot un labot krāsu pārejas" -#: ../src/verbs.cpp:2610 +#: ../src/verbs.cpp:2614 msgctxt "ContextVerb" msgid "Mesh" msgstr "Tīkls" -#: ../src/verbs.cpp:2611 +#: ../src/verbs.cpp:2615 msgid "Create and edit meshes" msgstr "Izveidot un labot tīklus" -#: ../src/verbs.cpp:2612 +#: ../src/verbs.cpp:2616 msgctxt "ContextVerb" msgid "Zoom" msgstr "Tuvināt/tālināt" -#: ../src/verbs.cpp:2613 +#: ../src/verbs.cpp:2617 msgid "Zoom in or out" msgstr "Tuvināt vai tālināt" -#: ../src/verbs.cpp:2615 +#: ../src/verbs.cpp:2619 msgid "Measurement tool" msgstr "Mērinstruments" -#: ../src/verbs.cpp:2616 +#: ../src/verbs.cpp:2620 msgctxt "ContextVerb" msgid "Dropper" msgstr "Pipete" -#: ../src/verbs.cpp:2617 -#: ../src/widgets/sp-color-notebook.cpp:413 +#: ../src/verbs.cpp:2621 +#: ../src/widgets/sp-color-notebook.cpp:411 msgid "Pick colors from image" msgstr "Izvēlēties krāsas no attēla" -#: ../src/verbs.cpp:2618 +#: ../src/verbs.cpp:2622 msgctxt "ContextVerb" msgid "Connector" msgstr "Savienotājs" -#: ../src/verbs.cpp:2619 +#: ../src/verbs.cpp:2623 msgid "Create diagram connectors" msgstr "Izveidot diagrammu savienotājus" -#: ../src/verbs.cpp:2620 +#: ../src/verbs.cpp:2624 msgctxt "ContextVerb" msgid "Paint Bucket" msgstr "Krāsas spainis" -#: ../src/verbs.cpp:2621 +#: ../src/verbs.cpp:2625 msgid "Fill bounded areas" msgstr "Aizpildīt noslēgtos apgabalus" -#: ../src/verbs.cpp:2622 +#: ../src/verbs.cpp:2626 msgctxt "ContextVerb" msgid "LPE Edit" msgstr "LPE labošana" -#: ../src/verbs.cpp:2623 +#: ../src/verbs.cpp:2627 msgid "Edit Path Effect parameters" msgstr "Labot ceļa efekta parametrus" -#: ../src/verbs.cpp:2624 +#: ../src/verbs.cpp:2628 msgctxt "ContextVerb" msgid "Eraser" msgstr "Dzēšgumija" -#: ../src/verbs.cpp:2625 +#: ../src/verbs.cpp:2629 msgid "Erase existing paths" msgstr "Dzēst pastāvošos ceļus" -#: ../src/verbs.cpp:2626 +#: ../src/verbs.cpp:2630 msgctxt "ContextVerb" msgid "LPE Tool" msgstr "LPE rīks" -#: ../src/verbs.cpp:2627 +#: ../src/verbs.cpp:2631 msgid "Do geometric constructions" msgstr "Izveidot ģeometriskas figūras" #. Tool prefs -#: ../src/verbs.cpp:2629 +#: ../src/verbs.cpp:2633 msgid "Selector Preferences" msgstr "Atlasītāja iestatījumi" -#: ../src/verbs.cpp:2630 +#: ../src/verbs.cpp:2634 msgid "Open Preferences for the Selector tool" msgstr "Atvērt iestatījumus atlasīšanas rīkam" -#: ../src/verbs.cpp:2631 +#: ../src/verbs.cpp:2635 msgid "Node Tool Preferences" msgstr "Mezglu rīka iestatījumi" -#: ../src/verbs.cpp:2632 +#: ../src/verbs.cpp:2636 msgid "Open Preferences for the Node tool" msgstr "Atvērt iestatījumus mezglu rīkam" -#: ../src/verbs.cpp:2633 +#: ../src/verbs.cpp:2637 msgid "Tweak Tool Preferences" msgstr "Pieskaņošanas rīka iestatījumi" -#: ../src/verbs.cpp:2634 +#: ../src/verbs.cpp:2638 msgid "Open Preferences for the Tweak tool" msgstr "Atvērt iestatījumus pieskaņošanas rīkam" -#: ../src/verbs.cpp:2635 +#: ../src/verbs.cpp:2639 msgid "Spray Tool Preferences" msgstr "Smidzinātāja iestatījumi" -#: ../src/verbs.cpp:2636 +#: ../src/verbs.cpp:2640 msgid "Open Preferences for the Spray tool" msgstr "Atvērt iestatījumus smidzināšanas rīkam" -#: ../src/verbs.cpp:2637 +#: ../src/verbs.cpp:2641 msgid "Rectangle Preferences" msgstr "Taisnstūra iestatījumi" -#: ../src/verbs.cpp:2638 +#: ../src/verbs.cpp:2642 msgid "Open Preferences for the Rectangle tool" msgstr "Atvērt iestatījumus taisnstūru rīkam" -#: ../src/verbs.cpp:2639 +#: ../src/verbs.cpp:2643 msgid "3D Box Preferences" msgstr "3D paralēlskaldņa iestatījumi" -#: ../src/verbs.cpp:2640 +#: ../src/verbs.cpp:2644 msgid "Open Preferences for the 3D Box tool" msgstr "Atvērt iestatījumus 3D paralēlskaldņa rīkam" -#: ../src/verbs.cpp:2641 +#: ../src/verbs.cpp:2645 msgid "Ellipse Preferences" msgstr "Elipses iestatījumi" -#: ../src/verbs.cpp:2642 +#: ../src/verbs.cpp:2646 msgid "Open Preferences for the Ellipse tool" msgstr "Atvērt iestatījumus elipses rīkam" -#: ../src/verbs.cpp:2643 +#: ../src/verbs.cpp:2647 msgid "Star Preferences" msgstr "Zvaigznes iestatījumi" -#: ../src/verbs.cpp:2644 +#: ../src/verbs.cpp:2648 msgid "Open Preferences for the Star tool" msgstr "Atvērt iestatījumus zvaigznes rīkam" -#: ../src/verbs.cpp:2645 +#: ../src/verbs.cpp:2649 msgid "Spiral Preferences" msgstr "Spirāles iestatījumi" -#: ../src/verbs.cpp:2646 +#: ../src/verbs.cpp:2650 msgid "Open Preferences for the Spiral tool" msgstr "Atvērt iestatījumus spirāles rīkam" -#: ../src/verbs.cpp:2647 +#: ../src/verbs.cpp:2651 msgid "Pencil Preferences" msgstr "Zīmuļa iestatījumi" -#: ../src/verbs.cpp:2648 +#: ../src/verbs.cpp:2652 msgid "Open Preferences for the Pencil tool" msgstr "Atvērt iestatījumus zīmuļa rīkam" -#: ../src/verbs.cpp:2649 +#: ../src/verbs.cpp:2653 msgid "Pen Preferences" msgstr "Spalvas iestatījumi" -#: ../src/verbs.cpp:2650 +#: ../src/verbs.cpp:2654 msgid "Open Preferences for the Pen tool" msgstr "Atvērt iestatījumus spalvas rīkam" -#: ../src/verbs.cpp:2651 +#: ../src/verbs.cpp:2655 msgid "Calligraphic Preferences" msgstr "Kaligrāfijas iestatījumi" -#: ../src/verbs.cpp:2652 +#: ../src/verbs.cpp:2656 msgid "Open Preferences for the Calligraphy tool" msgstr "Atvērt iestatījumus kaligrāfijas rīkam" -#: ../src/verbs.cpp:2653 +#: ../src/verbs.cpp:2657 msgid "Text Preferences" msgstr "Teksta iestatījumi" -#: ../src/verbs.cpp:2654 +#: ../src/verbs.cpp:2658 msgid "Open Preferences for the Text tool" msgstr "Atvērt iestatījumus teksta rīkam" -#: ../src/verbs.cpp:2655 +#: ../src/verbs.cpp:2659 msgid "Gradient Preferences" msgstr "Krāsu pārejas iestatījumi" -#: ../src/verbs.cpp:2656 +#: ../src/verbs.cpp:2660 msgid "Open Preferences for the Gradient tool" msgstr "Atvērt iestatījumus krāsu pārejas rīkam " -#: ../src/verbs.cpp:2657 +#: ../src/verbs.cpp:2661 msgid "Mesh Preferences" msgstr "Tīkla iestatījumi" -#: ../src/verbs.cpp:2658 +#: ../src/verbs.cpp:2662 msgid "Open Preferences for the Mesh tool" msgstr "Atvērt iestatījumus režģtīkla rīkam" -#: ../src/verbs.cpp:2659 +#: ../src/verbs.cpp:2663 msgid "Zoom Preferences" msgstr "Tālummaiņas iestatījumi" -#: ../src/verbs.cpp:2660 +#: ../src/verbs.cpp:2664 msgid "Open Preferences for the Zoom tool" msgstr "Atvērt iestatījumus tālummaiņas rīkam" -#: ../src/verbs.cpp:2661 +#: ../src/verbs.cpp:2665 msgid "Measure Preferences" msgstr "Mērīšanas iestatījumi" -#: ../src/verbs.cpp:2662 +#: ../src/verbs.cpp:2666 msgid "Open Preferences for the Measure tool" msgstr "Atvērt iestatījumus mērīšanas rīkam" -#: ../src/verbs.cpp:2663 +#: ../src/verbs.cpp:2667 msgid "Dropper Preferences" msgstr "Pipetes iestatījumi" -#: ../src/verbs.cpp:2664 +#: ../src/verbs.cpp:2668 msgid "Open Preferences for the Dropper tool" msgstr "Atvērt pipetes rīka iestatījumus" -#: ../src/verbs.cpp:2665 +#: ../src/verbs.cpp:2669 msgid "Connector Preferences" msgstr "Savienotāja iestatījumi" -#: ../src/verbs.cpp:2666 +#: ../src/verbs.cpp:2670 msgid "Open Preferences for the Connector tool" msgstr "Atvērt iestatījumus savienotāju rīkam" -#: ../src/verbs.cpp:2667 +#: ../src/verbs.cpp:2671 msgid "Paint Bucket Preferences" msgstr "Krāsas spaiņa iestatījumi" -#: ../src/verbs.cpp:2668 +#: ../src/verbs.cpp:2672 msgid "Open Preferences for the Paint Bucket tool" msgstr "Atvērt iestatījumus kāras spaiņa rīkam" -#: ../src/verbs.cpp:2669 +#: ../src/verbs.cpp:2673 msgid "Eraser Preferences" msgstr "Dzēšgumijas iestatījumi" -#: ../src/verbs.cpp:2670 +#: ../src/verbs.cpp:2674 msgid "Open Preferences for the Eraser tool" msgstr "Atvērt iestatījumus dzēšgumijas rīkam" -#: ../src/verbs.cpp:2671 +#: ../src/verbs.cpp:2675 msgid "LPE Tool Preferences" msgstr "LPE rīka iestatījumi" -#: ../src/verbs.cpp:2672 +#: ../src/verbs.cpp:2676 msgid "Open Preferences for the LPETool tool" msgstr "Atvērt iestatījumus LPE rīkam" #. Zoom/View -#: ../src/verbs.cpp:2674 +#: ../src/verbs.cpp:2678 msgid "Zoom In" msgstr "Tuvināt" -#: ../src/verbs.cpp:2674 +#: ../src/verbs.cpp:2678 msgid "Zoom in" msgstr "Tuvināt" -#: ../src/verbs.cpp:2675 +#: ../src/verbs.cpp:2679 msgid "Zoom Out" msgstr "Tālināt" -#: ../src/verbs.cpp:2675 +#: ../src/verbs.cpp:2679 msgid "Zoom out" msgstr "Tālināt" -#: ../src/verbs.cpp:2676 +#: ../src/verbs.cpp:2680 msgid "_Rulers" msgstr "_Lineāli" -#: ../src/verbs.cpp:2676 +#: ../src/verbs.cpp:2680 msgid "Show or hide the canvas rulers" msgstr "Parādīt vai paslēpt audekla ritjoslas" -#: ../src/verbs.cpp:2677 +#: ../src/verbs.cpp:2681 msgid "Scroll_bars" msgstr "Rit_joslas" -#: ../src/verbs.cpp:2677 +#: ../src/verbs.cpp:2681 msgid "Show or hide the canvas scrollbars" msgstr "Parādīt vai paslēpt audekla ritjoslas" -#: ../src/verbs.cpp:2678 +#: ../src/verbs.cpp:2682 msgid "_Grid" msgstr "_Tīkls" -#: ../src/verbs.cpp:2678 +#: ../src/verbs.cpp:2682 msgid "Show or hide the grid" msgstr "Rādīt vai slēpt tīklu." -#: ../src/verbs.cpp:2679 +#: ../src/verbs.cpp:2683 msgid "G_uides" msgstr "Palīglīnijas" -#: ../src/verbs.cpp:2679 +#: ../src/verbs.cpp:2683 msgid "Show or hide guides (drag from a ruler to create a guide)" msgstr "Rādīt vai slēpt palīglīnijas (lai izveidotu palīglīniju, velciet no lineāla)" -#: ../src/verbs.cpp:2680 +#: ../src/verbs.cpp:2684 msgid "Enable snapping" msgstr "Ieslēgt piesaistīšanu" -#: ../src/verbs.cpp:2681 +#: ../src/verbs.cpp:2685 msgid "_Commands Bar" msgstr "_Komandu josla" -#: ../src/verbs.cpp:2681 +#: ../src/verbs.cpp:2685 msgid "Show or hide the Commands bar (under the menu)" msgstr "Rādīt vai slēpt komandu joslu (zem izvēlnes)" -#: ../src/verbs.cpp:2682 +#: ../src/verbs.cpp:2686 msgid "Sn_ap Controls Bar" msgstr "Pies_aistes vadīklu josla" -#: ../src/verbs.cpp:2682 +#: ../src/verbs.cpp:2686 msgid "Show or hide the snapping controls" msgstr "Rādīt vai slēpt piesaistes vadīklu joslu" -#: ../src/verbs.cpp:2683 +#: ../src/verbs.cpp:2687 msgid "T_ool Controls Bar" msgstr "Rīku vadīklu j_osla" -#: ../src/verbs.cpp:2683 +#: ../src/verbs.cpp:2687 msgid "Show or hide the Tool Controls bar" msgstr "Rādīt vai slēpt rīku vadīklu joslu" -#: ../src/verbs.cpp:2684 +#: ../src/verbs.cpp:2688 msgid "_Toolbox" msgstr "_Rīkjosla" -#: ../src/verbs.cpp:2684 +#: ../src/verbs.cpp:2688 msgid "Show or hide the main toolbox (on the left)" msgstr "Rādīt vai slēpt galveno rīku kasti (kreisajā malā)" -#: ../src/verbs.cpp:2685 +#: ../src/verbs.cpp:2689 msgid "_Palette" msgstr "_Palete" -#: ../src/verbs.cpp:2685 +#: ../src/verbs.cpp:2689 msgid "Show or hide the color palette" msgstr "Rādīt vai slēpt krāsu paleti" -#: ../src/verbs.cpp:2686 +#: ../src/verbs.cpp:2690 msgid "_Statusbar" msgstr "_Statusa josla" -#: ../src/verbs.cpp:2686 +#: ../src/verbs.cpp:2690 msgid "Show or hide the statusbar (at the bottom of the window)" msgstr "Rādīt vai slēpt stāvokļa joslu (loga apakšā)" -#: ../src/verbs.cpp:2687 +#: ../src/verbs.cpp:2691 msgid "Nex_t Zoom" msgstr "_Nākošā tālummaiņa" -#: ../src/verbs.cpp:2687 +#: ../src/verbs.cpp:2691 msgid "Next zoom (from the history of zooms)" msgstr "Nākošā tālummaiņa (no tālummaiņas vēstures)" -#: ../src/verbs.cpp:2689 +#: ../src/verbs.cpp:2693 msgid "Pre_vious Zoom" msgstr "Ie_priekšējā tālummaiņa" -#: ../src/verbs.cpp:2689 +#: ../src/verbs.cpp:2693 msgid "Previous zoom (from the history of zooms)" msgstr "Iepriekšējā tālummaiņa (no tālummaiņas vēstures)" -#: ../src/verbs.cpp:2691 +#: ../src/verbs.cpp:2695 msgid "Zoom 1:_1" msgstr "Tālummaiņa 1:_1" -#: ../src/verbs.cpp:2691 +#: ../src/verbs.cpp:2695 msgid "Zoom to 1:1" msgstr "Tālummainīt 1:1" -#: ../src/verbs.cpp:2693 +#: ../src/verbs.cpp:2697 msgid "Zoom 1:_2" msgstr "Tālummaiņa 1:_2" -#: ../src/verbs.cpp:2693 +#: ../src/verbs.cpp:2697 msgid "Zoom to 1:2" msgstr "Tālummainīt 1:2" -#: ../src/verbs.cpp:2695 +#: ../src/verbs.cpp:2699 msgid "_Zoom 2:1" msgstr "_Tālummaiņa 2:1" -#: ../src/verbs.cpp:2695 +#: ../src/verbs.cpp:2699 msgid "Zoom to 2:1" msgstr "Tālummainīt 2:1" -#: ../src/verbs.cpp:2698 +#: ../src/verbs.cpp:2702 msgid "_Fullscreen" msgstr "_Pilnekrāna" -#: ../src/verbs.cpp:2698 -#: ../src/verbs.cpp:2700 +#: ../src/verbs.cpp:2702 +#: ../src/verbs.cpp:2704 msgid "Stretch this document window to full screen" msgstr "Izplest šī dokumenta logu pa visu ekrānu" -#: ../src/verbs.cpp:2700 +#: ../src/verbs.cpp:2704 msgid "Fullscreen & Focus Mode" msgstr "Pilnekrāna un fokusēšanas režīms" -#: ../src/verbs.cpp:2703 +#: ../src/verbs.cpp:2707 msgid "Toggle _Focus Mode" msgstr "Pārslēgt fokusēšanas režīmu" -#: ../src/verbs.cpp:2703 +#: ../src/verbs.cpp:2707 msgid "Remove excess toolbars to focus on drawing" msgstr "Aizvākt liekās rīkjoslas, lai atbrīvotu lielāku laukumu zīmējumam" -#: ../src/verbs.cpp:2705 +#: ../src/verbs.cpp:2709 msgid "Duplic_ate Window" msgstr "Dublēt logu" -#: ../src/verbs.cpp:2705 +#: ../src/verbs.cpp:2709 msgid "Open a new window with the same document" msgstr "Atvērt šo pašu dokumentu jaunā logā" -#: ../src/verbs.cpp:2707 +#: ../src/verbs.cpp:2711 msgid "_New View Preview" msgstr "Jau_na skata priekšskatījums" -#: ../src/verbs.cpp:2708 +#: ../src/verbs.cpp:2712 msgid "New View Preview" msgstr "Jauna skata priekšskatījums" #. "view_new_preview" -#: ../src/verbs.cpp:2710 -#: ../src/verbs.cpp:2718 +#: ../src/verbs.cpp:2714 +#: ../src/verbs.cpp:2722 msgid "_Normal" msgstr "_Normāls" -#: ../src/verbs.cpp:2711 +#: ../src/verbs.cpp:2715 msgid "Switch to normal display mode" msgstr "Pārslēgt uz normālu ekrāna režīmu" -#: ../src/verbs.cpp:2712 +#: ../src/verbs.cpp:2716 msgid "No _Filters" msgstr "Nav _filtru" -#: ../src/verbs.cpp:2713 +#: ../src/verbs.cpp:2717 msgid "Switch to normal display without filters" msgstr "Pārslēgt uz normālu ekrānu bez filtriem" -#: ../src/verbs.cpp:2714 +#: ../src/verbs.cpp:2718 msgid "_Outline" msgstr "Ār_līnija" -#: ../src/verbs.cpp:2715 +#: ../src/verbs.cpp:2719 msgid "Switch to outline (wireframe) display mode" msgstr "Pārslēgt uz aprišu (karkasa) ekrāna režīmu" #. new ZoomVerb(SP_VERB_VIEW_COLOR_MODE_PRINT_COLORS_PREVIEW, "ViewColorModePrintColorsPreview", N_("_Print Colors Preview"), #. N_("Switch to print colors preview mode"), NULL), -#: ../src/verbs.cpp:2716 -#: ../src/verbs.cpp:2724 +#: ../src/verbs.cpp:2720 +#: ../src/verbs.cpp:2728 msgid "_Toggle" msgstr "Pārslēg_t" -#: ../src/verbs.cpp:2717 +#: ../src/verbs.cpp:2721 msgid "Toggle between normal and outline display modes" msgstr "Pārslēgties starp parasto un aprišu ekrāna režīmu" -#: ../src/verbs.cpp:2719 +#: ../src/verbs.cpp:2723 msgid "Switch to normal color display mode" msgstr "Pārslēgt uz normālu krāsu ekrāna režīmu" -#: ../src/verbs.cpp:2720 +#: ../src/verbs.cpp:2724 msgid "_Grayscale" msgstr "_Pelēktoņu" -#: ../src/verbs.cpp:2721 +#: ../src/verbs.cpp:2725 msgid "Switch to grayscale display mode" msgstr "Pārslēgt uz pelēktoņu ekrāna režīmu" -#: ../src/verbs.cpp:2725 +#: ../src/verbs.cpp:2729 msgid "Toggle between normal and grayscale color display modes" msgstr "Pārslēgt starp parasto un pelēktoņu ekrāna režīmu" -#: ../src/verbs.cpp:2727 +#: ../src/verbs.cpp:2731 msgid "Color-managed view" msgstr "Skats ar krāsu vadību" -#: ../src/verbs.cpp:2728 +#: ../src/verbs.cpp:2732 msgid "Toggle color-managed display for this document window" msgstr "Ieslēgt ekrāna krāsu vadību šī dokumenta logam" -#: ../src/verbs.cpp:2730 +#: ../src/verbs.cpp:2734 msgid "Ico_n Preview..." msgstr "Ikonu priekšskatījums..." -#: ../src/verbs.cpp:2731 +#: ../src/verbs.cpp:2735 msgid "Open a window to preview objects at different icon resolutions" msgstr "Atveriet logu, lai priekšskatītu objektus atšķirīgā ikonu izšķirtspējā" -#: ../src/verbs.cpp:2733 +#: ../src/verbs.cpp:2737 msgid "Zoom to fit page in window" msgstr "Tālummainīt, lai Ietilpināt lapu logā" -#: ../src/verbs.cpp:2734 +#: ../src/verbs.cpp:2738 msgid "Page _Width" msgstr "Lapas _platums" -#: ../src/verbs.cpp:2735 +#: ../src/verbs.cpp:2739 msgid "Zoom to fit page width in window" msgstr "Tālummainīt, lai ietilpinātu lapu logā tās pilnā platumā." -#: ../src/verbs.cpp:2737 +#: ../src/verbs.cpp:2741 msgid "Zoom to fit drawing in window" msgstr "Tālummainīt, lai Ietilpinātu zīmējumu logā" -#: ../src/verbs.cpp:2739 +#: ../src/verbs.cpp:2743 msgid "Zoom to fit selection in window" msgstr "Tālummainīt, lai ietilpinātu atlasīto logā" #. Dialogs -#: ../src/verbs.cpp:2742 +#: ../src/verbs.cpp:2746 msgid "P_references..." msgstr "Iestatījumi..." -#: ../src/verbs.cpp:2743 +#: ../src/verbs.cpp:2747 msgid "Edit global Inkscape preferences" msgstr "Labot globālos Inkscape iestatījumus" -#: ../src/verbs.cpp:2744 +#: ../src/verbs.cpp:2748 msgid "_Document Properties..." msgstr "_Dokumenta īpašības..." -#: ../src/verbs.cpp:2745 +#: ../src/verbs.cpp:2749 msgid "Edit properties of this document (to be saved with the document)" msgstr "Labot šī dokumenta īpašības (tiks saglabātas kopā ar dokumentu)" -#: ../src/verbs.cpp:2746 +#: ../src/verbs.cpp:2750 msgid "Document _Metadata..." msgstr "Dokumenta _metadati..." -#: ../src/verbs.cpp:2747 +#: ../src/verbs.cpp:2751 msgid "Edit document metadata (to be saved with the document)" msgstr "Labot šī dokumenta matadatus (tiks saglabāti kopā ar dokumentu)" -#: ../src/verbs.cpp:2749 +#: ../src/verbs.cpp:2753 msgid "Edit objects' colors, gradients, arrowheads, and other fill and stroke properties..." msgstr "Labojiet objekta krāsas, krāsu pārejas, bultu galus un citas aizpildījuma un apmales īpašības..." -#: ../src/verbs.cpp:2750 +#: ../src/verbs.cpp:2754 msgid "Gl_yphs..." msgstr "Glifi..." -#: ../src/verbs.cpp:2751 +#: ../src/verbs.cpp:2755 msgid "Select characters from a glyphs palette" msgstr "Izvēlieties simbolus no glifu paletes" #. TRANSLATORS: "Swatches" means: color samples -#: ../src/verbs.cpp:2753 +#: ../src/verbs.cpp:2757 msgid "S_watches..." msgstr "Krāsu paraugi..." -#: ../src/verbs.cpp:2754 +#: ../src/verbs.cpp:2758 msgid "Select colors from a swatches palette" msgstr "Izvēlieties krāsas no krāsu paraugu paletes" -#: ../src/verbs.cpp:2755 +#: ../src/verbs.cpp:2759 msgid "S_ymbols..." msgstr "S_imboli..." -#: ../src/verbs.cpp:2756 +#: ../src/verbs.cpp:2760 msgid "Select symbol from a symbols palette" msgstr "Izvēlieties simbolu no simbolu paletes" -#: ../src/verbs.cpp:2757 +#: ../src/verbs.cpp:2761 msgid "Transfor_m..." msgstr "Pārveidot..." -#: ../src/verbs.cpp:2758 +#: ../src/verbs.cpp:2762 msgid "Precisely control objects' transformations" msgstr "Precīzi kontrolēt objekta pārveidojumus" -#: ../src/verbs.cpp:2759 +#: ../src/verbs.cpp:2763 msgid "_Align and Distribute..." msgstr "Lī_dzināt un izkliedēt..." -#: ../src/verbs.cpp:2760 +#: ../src/verbs.cpp:2764 msgid "Align and distribute objects" msgstr "Līdzināt un izkliedēt objektus" -#: ../src/verbs.cpp:2761 +#: ../src/verbs.cpp:2765 msgid "_Spray options..." msgstr "_Smidzināšanas iestatījumi..." -#: ../src/verbs.cpp:2762 +#: ../src/verbs.cpp:2766 msgid "Some options for the spray" msgstr "Daži smidzināšanas iestaījumi" -#: ../src/verbs.cpp:2763 +#: ../src/verbs.cpp:2767 msgid "Undo _History..." msgstr "Atsaukumu _vēsture..." -#: ../src/verbs.cpp:2764 +#: ../src/verbs.cpp:2768 msgid "Undo History" msgstr "Atsaukumu vēsture" -#: ../src/verbs.cpp:2766 +#: ../src/verbs.cpp:2770 msgid "View and select font family, font size and other text properties" msgstr "Aplūkojiet un izvēlieties fontu saimi, fonta izmēru un citas teksta īpašības" -#: ../src/verbs.cpp:2767 +#: ../src/verbs.cpp:2771 msgid "_XML Editor..." msgstr "XML redaktors..." -#: ../src/verbs.cpp:2768 +#: ../src/verbs.cpp:2772 msgid "View and edit the XML tree of the document" msgstr "Aplūkot un labot dokumenta XML koku" -#: ../src/verbs.cpp:2769 +#: ../src/verbs.cpp:2773 msgid "_Find/Replace..." msgstr "_Meklēt/aizvietot..." -#: ../src/verbs.cpp:2770 +#: ../src/verbs.cpp:2774 msgid "Find objects in document" msgstr "Meklēt objektus dokumentā " -#: ../src/verbs.cpp:2771 +#: ../src/verbs.cpp:2775 msgid "Find and _Replace Text..." msgstr "Meklēt un aizvietot tekstu..." -#: ../src/verbs.cpp:2772 +#: ../src/verbs.cpp:2776 msgid "Find and replace text in document" msgstr "Meklēt un aizvietot tekstu" -#: ../src/verbs.cpp:2774 +#: ../src/verbs.cpp:2778 msgid "Check spelling of text in document" msgstr "Pārbaudīt teksta pareizrakstību dokumentā" -#: ../src/verbs.cpp:2775 +#: ../src/verbs.cpp:2779 msgid "_Messages..." msgstr "_Vēstules..." -#: ../src/verbs.cpp:2776 +#: ../src/verbs.cpp:2780 msgid "View debug messages" msgstr "Skatīt atkļūdošanas paziņojumus" -#: ../src/verbs.cpp:2777 +#: ../src/verbs.cpp:2781 msgid "S_cripts..." msgstr "S_kripti..." -#: ../src/verbs.cpp:2778 +#: ../src/verbs.cpp:2782 msgid "Run scripts" msgstr "Palaist skriptus" -#: ../src/verbs.cpp:2779 +#: ../src/verbs.cpp:2783 msgid "Show/Hide D_ialogs" msgstr "Rādīt/slēpt dialogus" -#: ../src/verbs.cpp:2780 +#: ../src/verbs.cpp:2784 msgid "Show or hide all open dialogs" msgstr "Rādīt vai paslēpt visus atvērtos dialogus" -#: ../src/verbs.cpp:2781 +#: ../src/verbs.cpp:2785 msgid "Create Tiled Clones..." msgstr "Izveidot klonu rakstu..." -#: ../src/verbs.cpp:2782 +#: ../src/verbs.cpp:2786 msgid "Create multiple clones of selected object, arranging them into a pattern or scattering" msgstr "Izveidot vairākus objekta klonus, izkārtojot tos rakstā (faktūrā) vai izkliedējot" -#: ../src/verbs.cpp:2783 +#: ../src/verbs.cpp:2787 msgid "_Object attributes..." msgstr "_Objekta atribūti..." -#: ../src/verbs.cpp:2784 +#: ../src/verbs.cpp:2788 msgid "Edit the object attributes..." msgstr "Labot objekta atribūtus..." -#: ../src/verbs.cpp:2786 +#: ../src/verbs.cpp:2790 msgid "Edit the ID, locked and visible status, and other object properties" msgstr "Labojiet ID, slēgšanas un redzamības stāvokli un citas objekta īpašības" -#: ../src/verbs.cpp:2787 +#: ../src/verbs.cpp:2791 msgid "_Input Devices..." msgstr "_Ievadierīces..." -#: ../src/verbs.cpp:2788 +#: ../src/verbs.cpp:2792 msgid "Configure extended input devices, such as a graphics tablet" msgstr "Konfigurējiet paplašināto iespēju ievades ierīces, piem. grafiskās planšetes" -#: ../src/verbs.cpp:2789 +#: ../src/verbs.cpp:2793 msgid "_Extensions..." msgstr "_Paplašinājumi..." -#: ../src/verbs.cpp:2790 +#: ../src/verbs.cpp:2794 msgid "Query information about extensions" msgstr "Vaicājuma informācija par paplašinājumiem" -#: ../src/verbs.cpp:2791 +#: ../src/verbs.cpp:2795 msgid "Layer_s..." msgstr "_Slāņi..." -#: ../src/verbs.cpp:2792 +#: ../src/verbs.cpp:2796 msgid "View Layers" msgstr "Skatīt slāņus" -#: ../src/verbs.cpp:2793 +#: ../src/verbs.cpp:2797 msgid "Path E_ffects ..." msgstr "Ceļa e_fekti..." -#: ../src/verbs.cpp:2794 +#: ../src/verbs.cpp:2798 msgid "Manage, edit, and apply path effects" msgstr "Vadīt, labot un pielietot ceļa efektus" -#: ../src/verbs.cpp:2795 +#: ../src/verbs.cpp:2799 msgid "Filter _Editor..." msgstr "Filtru r_edaktors" -#: ../src/verbs.cpp:2796 +#: ../src/verbs.cpp:2800 msgid "Manage, edit, and apply SVG filters" msgstr "Vadīt, labot un pielietot SVG filtrus" -#: ../src/verbs.cpp:2797 +#: ../src/verbs.cpp:2801 msgid "SVG Font Editor..." msgstr "SVG fontu redaktors" -#: ../src/verbs.cpp:2798 +#: ../src/verbs.cpp:2802 msgid "Edit SVG fonts" msgstr "Labot SVG fontus" -#: ../src/verbs.cpp:2799 +#: ../src/verbs.cpp:2803 msgid "Print Colors..." msgstr "Drukāt krāsas..." -#: ../src/verbs.cpp:2800 +#: ../src/verbs.cpp:2804 msgid "Select which color separations to render in Print Colors Preview rendermode" msgstr "Izvēlieties, kuru krāsu dalījumus renderēt Krāsu drukas priekšskatījuma renderēšanas režīmā" -#: ../src/verbs.cpp:2801 +#: ../src/verbs.cpp:2805 msgid "_Export PNG Image..." msgstr "_Eksportēt PNG attēlu..." -#: ../src/verbs.cpp:2802 +#: ../src/verbs.cpp:2806 msgid "Export this document or a selection as a PNG image" msgstr "Eksportēt šo dokumentu vai atlasīto kā PNG attēlu" #. Help -#: ../src/verbs.cpp:2804 +#: ../src/verbs.cpp:2808 msgid "About E_xtensions" msgstr "Par _paplašinājumiem" -#: ../src/verbs.cpp:2805 +#: ../src/verbs.cpp:2809 msgid "Information on Inkscape extensions" msgstr "Informācija par Inkscape paplašinājumiem" -#: ../src/verbs.cpp:2806 +#: ../src/verbs.cpp:2810 msgid "About _Memory" msgstr "Par at_miņu" -#: ../src/verbs.cpp:2807 +#: ../src/verbs.cpp:2811 msgid "Memory usage information" msgstr "Atmiņas izmantošanas informācija" -#: ../src/verbs.cpp:2808 +#: ../src/verbs.cpp:2812 msgid "_About Inkscape" msgstr "P_ar Inkscape" -#: ../src/verbs.cpp:2809 +#: ../src/verbs.cpp:2813 msgid "Inkscape version, authors, license" msgstr "Inkscape versija, autori, licence" #. new HelpVerb(SP_VERB_SHOW_LICENSE, "ShowLicense", N_("_License"), #. N_("Distribution terms"), /*"show_license"*/"inkscape_options"), #. Tutorials -#: ../src/verbs.cpp:2814 +#: ../src/verbs.cpp:2818 msgid "Inkscape: _Basic" msgstr "Inkscape: pamati" -#: ../src/verbs.cpp:2815 +#: ../src/verbs.cpp:2819 msgid "Getting started with Inkscape" msgstr "Sākt darbu ar Inkscape" #. "tutorial_basic" -#: ../src/verbs.cpp:2816 +#: ../src/verbs.cpp:2820 msgid "Inkscape: _Shapes" msgstr "Inkscape: figūra_s" -#: ../src/verbs.cpp:2817 +#: ../src/verbs.cpp:2821 msgid "Using shape tools to create and edit shapes" msgstr "Figūru rīku izmantošana figūru izveidošanai un labošanai" -#: ../src/verbs.cpp:2818 +#: ../src/verbs.cpp:2822 msgid "Inkscape: _Advanced" msgstr "Inkscape: Padziļināti" -#: ../src/verbs.cpp:2819 +#: ../src/verbs.cpp:2823 msgid "Advanced Inkscape topics" msgstr "Padziļinātie Inkscape temati" #. "tutorial_advanced" #. TRANSLATORS: "to trace" means "to convert a bitmap to vector graphics" (to vectorize) -#: ../src/verbs.cpp:2821 +#: ../src/verbs.cpp:2825 msgid "Inkscape: T_racing" msgstr "Inkscape: vekto_rizēšana" -#: ../src/verbs.cpp:2822 +#: ../src/verbs.cpp:2826 msgid "Using bitmap tracing" msgstr "Izmanto bitkartes vektorizēšanu" #. "tutorial_tracing" -#: ../src/verbs.cpp:2823 +#: ../src/verbs.cpp:2827 msgid "Inkscape: _Calligraphy" msgstr "Inkscape: kaligrāfija" -#: ../src/verbs.cpp:2824 +#: ../src/verbs.cpp:2828 msgid "Using the Calligraphy pen tool" msgstr "Kaligrāfiskās spalvas lietošana" -#: ../src/verbs.cpp:2825 +#: ../src/verbs.cpp:2829 msgid "Inkscape: _Interpolate" msgstr "Inkscape: _interpolēt" -#: ../src/verbs.cpp:2826 +#: ../src/verbs.cpp:2830 msgid "Using the interpolate extension" msgstr "Izmanto interpolācijas paplašinājumu" #. "tutorial_interpolate" -#: ../src/verbs.cpp:2827 +#: ../src/verbs.cpp:2831 msgid "_Elements of Design" msgstr "Dizaina _elementi" -#: ../src/verbs.cpp:2828 +#: ../src/verbs.cpp:2832 msgid "Principles of design in the tutorial form" msgstr "Dizaina principi mācību materiālu formā" #. "tutorial_design" -#: ../src/verbs.cpp:2829 +#: ../src/verbs.cpp:2833 msgid "_Tips and Tricks" msgstr "Padomi un vil_tības" -#: ../src/verbs.cpp:2830 +#: ../src/verbs.cpp:2834 msgid "Miscellaneous tips and tricks" msgstr "Dažādi padomi un triki" #. "tutorial_tips" #. Effect -- renamed Extension -#: ../src/verbs.cpp:2833 +#: ../src/verbs.cpp:2837 msgid "Previous Exte_nsion" msgstr "Iepriekšējais paplaši_nājums" -#: ../src/verbs.cpp:2834 +#: ../src/verbs.cpp:2838 msgid "Repeat the last extension with the same settings" msgstr "Atkārtot pēdējo paplašinājumu ar tiem pašiem iestatījumiem" -#: ../src/verbs.cpp:2835 +#: ../src/verbs.cpp:2839 msgid "_Previous Extension Settings..." msgstr "Ie_priekšējā paplašinājuma iestatījumi" -#: ../src/verbs.cpp:2836 +#: ../src/verbs.cpp:2840 msgid "Repeat the last extension with new settings" msgstr "Atkārtot pēdējo paplašinājumu ar jaunajiem iestatījumiem" -#: ../src/verbs.cpp:2840 +#: ../src/verbs.cpp:2844 msgid "Fit the page to the current selection" msgstr "Pielāgot lapu pašreiz atlasītajam" -#: ../src/verbs.cpp:2842 +#: ../src/verbs.cpp:2846 msgid "Fit the page to the drawing" msgstr "Pielāgot lapu zīmējumam" -#: ../src/verbs.cpp:2844 +#: ../src/verbs.cpp:2848 msgid "Fit the page to the current selection or the drawing if there is no selection" msgstr "Pielāgot lapu iezīmētajam apgabalam vai zīmējumam, ja nekas nav iezīmēts" #. LockAndHide -#: ../src/verbs.cpp:2846 +#: ../src/verbs.cpp:2850 msgid "Unlock All" msgstr "Atslēgt visus" -#: ../src/verbs.cpp:2848 +#: ../src/verbs.cpp:2852 msgid "Unlock All in All Layers" msgstr "Atslēgt visus visos slāņos" -#: ../src/verbs.cpp:2850 +#: ../src/verbs.cpp:2854 msgid "Unhide All" msgstr "Rādīt visus" -#: ../src/verbs.cpp:2852 +#: ../src/verbs.cpp:2856 msgid "Unhide All in All Layers" msgstr "Rādīt visus visos slāņos" -#: ../src/verbs.cpp:2856 +#: ../src/verbs.cpp:2860 msgid "Link an ICC color profile" msgstr "Piesaistīt ICC krāsu profilu" -#: ../src/verbs.cpp:2857 +#: ../src/verbs.cpp:2861 msgid "Remove Color Profile" msgstr "Aizvākt krāsu profilu" -#: ../src/verbs.cpp:2858 +#: ../src/verbs.cpp:2862 msgid "Remove a linked ICC color profile" msgstr "Aizvākt piesaistīto ICC krāsu profilu" -#: ../src/verbs.cpp:2881 -#: ../src/verbs.cpp:2882 +#: ../src/verbs.cpp:2885 +#: ../src/verbs.cpp:2886 msgid "Center on horizontal and vertical axis" msgstr "Centrēt uz horizontālās un vertikālās ass" @@ -23462,6 +23511,10 @@ msgstr "Grafs" msgid "Connector Length" msgstr "Savienotāja garums" +#: ../src/widgets/connector-toolbar.cpp:398 +msgid "Length:" +msgstr "Garums:" + #: ../src/widgets/connector-toolbar.cpp:399 msgid "Ideal length for connectors when layout is applied" msgstr "Ideālais savienotāju garums pēc izkārtojuma pielietošanas" @@ -23486,88 +23539,88 @@ msgstr "Punktējums" msgid "Pattern offset" msgstr "Faktūras nobīde" -#: ../src/widgets/desktop-widget.cpp:462 +#: ../src/widgets/desktop-widget.cpp:461 msgid "Zoom drawing if window size changes" msgstr "Tālummainīt attēlu, ja mainās loga izmēri" -#: ../src/widgets/desktop-widget.cpp:666 +#: ../src/widgets/desktop-widget.cpp:665 msgid "Cursor coordinates" msgstr "Kursora koordinātes" -#: ../src/widgets/desktop-widget.cpp:692 +#: ../src/widgets/desktop-widget.cpp:691 msgid "Z:" msgstr "Z:" #. display the initial welcome message in the statusbar -#: ../src/widgets/desktop-widget.cpp:735 +#: ../src/widgets/desktop-widget.cpp:734 msgid "Welcome to Inkscape! Use shape or freehand tools to create objects; use selector (arrow) to move or transform them." msgstr "Laipni lūdzam Inkscape! Izmantojiet figūru zīmēšanas vai brīvrokas līdzekļus, lai izveidotu objektus; izmantojiet kursora bultiņu, lai tos pārvietotu vai pārveidotu." -#: ../src/widgets/desktop-widget.cpp:829 +#: ../src/widgets/desktop-widget.cpp:828 msgid "grayscale" msgstr "pelēktoņu" -#: ../src/widgets/desktop-widget.cpp:830 +#: ../src/widgets/desktop-widget.cpp:829 msgid ", grayscale" msgstr ", pelēktoņu" -#: ../src/widgets/desktop-widget.cpp:831 +#: ../src/widgets/desktop-widget.cpp:830 msgid "print colors preview" msgstr "krāsu drukas priekšskatījums" -#: ../src/widgets/desktop-widget.cpp:832 +#: ../src/widgets/desktop-widget.cpp:831 msgid ", print colors preview" msgstr ", krāsu drukas priekšskatījums" -#: ../src/widgets/desktop-widget.cpp:833 +#: ../src/widgets/desktop-widget.cpp:832 msgid "outline" msgstr "aprises" -#: ../src/widgets/desktop-widget.cpp:834 +#: ../src/widgets/desktop-widget.cpp:833 msgid "no filters" msgstr "bez filtriem" -#: ../src/widgets/desktop-widget.cpp:861 +#: ../src/widgets/desktop-widget.cpp:860 #, c-format msgid "%s%s: %d (%s%s) - Inkscape" msgstr "%s%s: %d (%s%s) - Inkscape" -#: ../src/widgets/desktop-widget.cpp:863 -#: ../src/widgets/desktop-widget.cpp:867 +#: ../src/widgets/desktop-widget.cpp:862 +#: ../src/widgets/desktop-widget.cpp:866 #, c-format msgid "%s%s: %d (%s) - Inkscape" msgstr "%s%s: %d (%s) - Inkscape" -#: ../src/widgets/desktop-widget.cpp:869 +#: ../src/widgets/desktop-widget.cpp:868 #, c-format msgid "%s%s: %d - Inkscape" msgstr "%s%s: %d - Inkscape" -#: ../src/widgets/desktop-widget.cpp:875 +#: ../src/widgets/desktop-widget.cpp:874 #, c-format msgid "%s%s (%s%s) - Inkscape" msgstr "%s%s (%s%s) - Inkscape" -#: ../src/widgets/desktop-widget.cpp:877 -#: ../src/widgets/desktop-widget.cpp:881 +#: ../src/widgets/desktop-widget.cpp:876 +#: ../src/widgets/desktop-widget.cpp:880 #, c-format msgid "%s%s (%s) - Inkscape" msgstr "%s%s (%s) - Inkscape" -#: ../src/widgets/desktop-widget.cpp:883 +#: ../src/widgets/desktop-widget.cpp:882 #, c-format msgid "%s%s - Inkscape" msgstr "%s%s - Inkscape" -#: ../src/widgets/desktop-widget.cpp:1052 +#: ../src/widgets/desktop-widget.cpp:1051 msgid "Color-managed display is enabled in this window" msgstr "Ekrāna krāsu vadība ir ieslēgta šajā logā" -#: ../src/widgets/desktop-widget.cpp:1054 +#: ../src/widgets/desktop-widget.cpp:1053 msgid "Color-managed display is disabled in this window" msgstr "Ekrāna krāsu vadība ir izslēgta šajā logā" -#: ../src/widgets/desktop-widget.cpp:1109 +#: ../src/widgets/desktop-widget.cpp:1108 #, c-format msgid "" "Save changes to document \"%s\" before closing?\n" @@ -23578,12 +23631,12 @@ msgstr "" "\n" "Ja aizvērsiet nesaglabājot, visas izdarītās izmaiņas tiks zaudētas." -#: ../src/widgets/desktop-widget.cpp:1119 -#: ../src/widgets/desktop-widget.cpp:1178 +#: ../src/widgets/desktop-widget.cpp:1118 +#: ../src/widgets/desktop-widget.cpp:1177 msgid "Close _without saving" msgstr "Aizvērt _nesaglabājot" -#: ../src/widgets/desktop-widget.cpp:1168 +#: ../src/widgets/desktop-widget.cpp:1167 #, c-format msgid "" "The file \"%s\" was saved with a format that may cause data loss!\n" @@ -23594,11 +23647,11 @@ msgstr "" "\n" "Vai vēlaties saglabāt šo failu kā Inkscape SVG?" -#: ../src/widgets/desktop-widget.cpp:1180 +#: ../src/widgets/desktop-widget.cpp:1179 msgid "_Save as Inkscape SVG" msgstr "_Saglabāt kā Inkscape SVG" -#: ../src/widgets/desktop-widget.cpp:1390 +#: ../src/widgets/desktop-widget.cpp:1389 msgid "Note:" msgstr "Piezīme:" @@ -23626,11 +23679,6 @@ msgstr "Ja ir izvēlēta alfa, piešķiriet to atlasītajam kā aizpildījuma va msgid "Assign" msgstr "Piešķirt" -#: ../src/widgets/ege-paint-def.cpp:67 -#: ../src/widgets/ege-paint-def.cpp:91 -msgid "none" -msgstr "nekas" - #: ../src/widgets/ege-paint-def.cpp:88 msgid "remove" msgstr "aizvākt" @@ -23651,33 +23699,33 @@ msgstr "Izgriezt no objektiem" msgid "The width of the eraser pen (relative to the visible canvas area)" msgstr "Dzēšgumijas platums (attiecībā pret redzamo auduma laukumu)" -#: ../src/widgets/fill-style.cpp:358 +#: ../src/widgets/fill-style.cpp:362 msgid "Change fill rule" msgstr "Mainiet aizpildīšanas noteikumu" -#: ../src/widgets/fill-style.cpp:443 -#: ../src/widgets/fill-style.cpp:522 +#: ../src/widgets/fill-style.cpp:447 +#: ../src/widgets/fill-style.cpp:526 msgid "Set fill color" msgstr "Iestatīt aizpildījuma krāsu" -#: ../src/widgets/fill-style.cpp:443 -#: ../src/widgets/fill-style.cpp:522 +#: ../src/widgets/fill-style.cpp:447 +#: ../src/widgets/fill-style.cpp:526 msgid "Set stroke color" msgstr "Iestatīt apmales krāsu" -#: ../src/widgets/fill-style.cpp:621 +#: ../src/widgets/fill-style.cpp:625 msgid "Set gradient on fill" msgstr "Iestatīt aizpildījuma krāsu pāreju" -#: ../src/widgets/fill-style.cpp:621 +#: ../src/widgets/fill-style.cpp:625 msgid "Set gradient on stroke" msgstr "Iestatīt apmales krāsu pāreju" -#: ../src/widgets/fill-style.cpp:681 +#: ../src/widgets/fill-style.cpp:685 msgid "Set pattern on fill" msgstr "Iestatīt aizpildījuma faktūru" -#: ../src/widgets/fill-style.cpp:682 +#: ../src/widgets/fill-style.cpp:686 msgid "Set pattern on stroke" msgstr "Iestatīt apmales faktūru" @@ -23712,7 +23760,7 @@ msgid "Edit gradient" msgstr "Labot krāsu pāreju" #: ../src/widgets/gradient-selector.cpp:288 -#: ../src/widgets/paint-selector.cpp:241 +#: ../src/widgets/paint-selector.cpp:244 msgid "Swatch" msgstr "Palete" @@ -23877,7 +23925,7 @@ msgid "Link gradients to change all related gradients" msgstr "Sasaistīt krāsu pārejas, lai mainītu visas saistītās krāsu pārejas" #: ../src/widgets/gradient-vector.cpp:332 -#: ../src/widgets/paint-selector.cpp:919 +#: ../src/widgets/paint-selector.cpp:922 msgid "No document selected" msgstr "Nav izvēlēts neviens dokuments" @@ -23907,11 +23955,11 @@ msgstr "Dzēst pašreizējo krāsu pārejas atbalsta punktu" msgid "Stop Color" msgstr "Atbalsta punkta krāsa" -#: ../src/widgets/gradient-vector.cpp:1009 +#: ../src/widgets/gradient-vector.cpp:1007 msgid "Gradient editor" msgstr "Krāsu pāreju redaktors" -#: ../src/widgets/gradient-vector.cpp:1309 +#: ../src/widgets/gradient-vector.cpp:1307 msgid "Change gradient stop color" msgstr "Mainīt krāsu pārejas atbalsta punkta krāsu" @@ -24298,74 +24346,74 @@ msgstr "Noklusētie" msgid "Reset paint bucket parameters to defaults (use Inkscape Preferences > Tools to change defaults)" msgstr "Atiestatīt krāsas spaiņa parametrus uz noklusētajiem (izmantojiet Inkscape Iestatījumi > Rīki, lai manītu noklusētās vērtības)" -#: ../src/widgets/paint-selector.cpp:231 +#: ../src/widgets/paint-selector.cpp:234 msgid "No paint" msgstr "Nav krāsas" -#: ../src/widgets/paint-selector.cpp:233 +#: ../src/widgets/paint-selector.cpp:236 msgid "Flat color" msgstr "Vienlaidu krāsa" -#: ../src/widgets/paint-selector.cpp:235 +#: ../src/widgets/paint-selector.cpp:238 msgid "Linear gradient" msgstr "Lineāra krāsu pāreja" -#: ../src/widgets/paint-selector.cpp:237 +#: ../src/widgets/paint-selector.cpp:240 msgid "Radial gradient" msgstr "Radiāla krāsu pāreja" -#: ../src/widgets/paint-selector.cpp:243 +#: ../src/widgets/paint-selector.cpp:246 msgid "Unset paint (make it undefined so it can be inherited)" msgstr "Atiestatīt krāsu (iestatīt to kā nenoteiktu, lai to būtu iespējams pārmantot)" #. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/painting.html#FillRuleProperty -#: ../src/widgets/paint-selector.cpp:260 +#: ../src/widgets/paint-selector.cpp:263 msgid "Any path self-intersections or subpaths create holes in the fill (fill-rule: evenodd)" msgstr "Jebkura ceļa paškrustošanās vai apakšceļi radīs caurumus aizpildījumā (fill-rule: evenodd)" #. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/painting.html#FillRuleProperty -#: ../src/widgets/paint-selector.cpp:271 +#: ../src/widgets/paint-selector.cpp:274 msgid "Fill is solid unless a subpath is counterdirectional (fill-rule: nonzero)" msgstr "Aizpildījums ir vienlaidu, ja vien apakšceļa virziens nav pretējs (fill-rule: nonzero)" -#: ../src/widgets/paint-selector.cpp:587 +#: ../src/widgets/paint-selector.cpp:590 msgid "No objects" msgstr "Nav objektu" -#: ../src/widgets/paint-selector.cpp:598 +#: ../src/widgets/paint-selector.cpp:601 msgid "Multiple styles" msgstr "Vairāki stili" -#: ../src/widgets/paint-selector.cpp:609 +#: ../src/widgets/paint-selector.cpp:612 msgid "Paint is undefined" msgstr "Krāsa nav noteikta" -#: ../src/widgets/paint-selector.cpp:620 +#: ../src/widgets/paint-selector.cpp:623 msgid "No paint" msgstr "Nav krāsas" -#: ../src/widgets/paint-selector.cpp:691 +#: ../src/widgets/paint-selector.cpp:694 msgid "Flat color" msgstr "Vienlaidu krāsa" #. sp_gradient_selector_set_mode(SP_GRADIENT_SELECTOR(gsel), SP_GRADIENT_SELECTOR_MODE_LINEAR); -#: ../src/widgets/paint-selector.cpp:755 +#: ../src/widgets/paint-selector.cpp:758 msgid "Linear gradient" msgstr "Lineāra krāsu pāreja" -#: ../src/widgets/paint-selector.cpp:758 +#: ../src/widgets/paint-selector.cpp:761 msgid "Radial gradient" msgstr "Radiāla krāsu pāreja" -#: ../src/widgets/paint-selector.cpp:1052 +#: ../src/widgets/paint-selector.cpp:1055 msgid "Use the Node tool to adjust position, scale, and rotation of the pattern on canvas. Use Object > Pattern > Objects to Pattern to create a new pattern from selection." msgstr "Izmantojiet Mezglu rīks, lai pielāgotu faktūras novietojumu, mērogu un pagriezienu uz audekla. Izmantojiet Objekts > Faktūra > Objektus par faktūru, lai no atlasītā izveidotu jaunu faktūru." -#: ../src/widgets/paint-selector.cpp:1065 +#: ../src/widgets/paint-selector.cpp:1068 msgid "Pattern fill" msgstr "Aizpildījums ar faktūru" -#: ../src/widgets/paint-selector.cpp:1161 +#: ../src/widgets/paint-selector.cpp:1164 msgid "Swatch fill" msgstr "Paletes aizpildījums" @@ -24835,84 +24883,93 @@ msgstr "Mērogs:" msgid "Variation in the scale of the sprayed objects; 0% for the same scale than the original object" msgstr "Izsmidzināto objektu lieluma variācijas; 0% atbilst sākotnējā objekta izmēriem" -#: ../src/widgets/sp-attribute-widget.cpp:301 +#: ../src/widgets/sp-attribute-widget.cpp:299 msgid "Set attribute" msgstr "Iestatīt atribūtu" -#: ../src/widgets/sp-color-icc-selector.cpp:107 +#: ../src/widgets/sp-color-icc-selector.cpp:257 msgid "CMS" msgstr "CMS" -#: ../src/widgets/sp-color-icc-selector.cpp:214 +#: ../src/widgets/sp-color-icc-selector.cpp:354 #: ../src/widgets/sp-color-scales.cpp:428 msgid "_R:" msgstr "_R" -#: ../src/widgets/sp-color-icc-selector.cpp:214 -#: ../src/widgets/sp-color-icc-selector.cpp:215 +#. TYPE_RGB_16 +#: ../src/widgets/sp-color-icc-selector.cpp:355 #: ../src/widgets/sp-color-scales.cpp:431 msgid "_G:" msgstr "_G" -#: ../src/widgets/sp-color-icc-selector.cpp:214 +#: ../src/widgets/sp-color-icc-selector.cpp:356 #: ../src/widgets/sp-color-scales.cpp:434 msgid "_B:" msgstr "_B" -#: ../src/widgets/sp-color-icc-selector.cpp:216 -#: ../src/widgets/sp-color-icc-selector.cpp:217 +#: ../src/widgets/sp-color-icc-selector.cpp:358 +msgid "G:" +msgstr "G:" + +#: ../src/widgets/sp-color-icc-selector.cpp:358 +msgid "Gray" +msgstr "Pelēks" + +#. TYPE_GRAY_16 +#: ../src/widgets/sp-color-icc-selector.cpp:360 +#: ../src/widgets/sp-color-icc-selector.cpp:364 #: ../src/widgets/sp-color-scales.cpp:454 msgid "_H:" msgstr "_H" -#: ../src/widgets/sp-color-icc-selector.cpp:216 -#: ../src/widgets/sp-color-icc-selector.cpp:217 +#. TYPE_HSV_16 +#: ../src/widgets/sp-color-icc-selector.cpp:361 +#: ../src/widgets/sp-color-icc-selector.cpp:366 #: ../src/widgets/sp-color-scales.cpp:457 msgid "_S:" msgstr "_S" -#: ../src/widgets/sp-color-icc-selector.cpp:217 +#. TYPE_HLS_16 +#: ../src/widgets/sp-color-icc-selector.cpp:365 #: ../src/widgets/sp-color-scales.cpp:460 msgid "_L:" msgstr "_L:" -#: ../src/widgets/sp-color-icc-selector.cpp:218 -#: ../src/widgets/sp-color-icc-selector.cpp:219 +#: ../src/widgets/sp-color-icc-selector.cpp:368 +#: ../src/widgets/sp-color-icc-selector.cpp:373 #: ../src/widgets/sp-color-scales.cpp:482 msgid "_C:" msgstr "_C" -#: ../src/widgets/sp-color-icc-selector.cpp:218 -#: ../src/widgets/sp-color-icc-selector.cpp:219 +#. TYPE_CMYK_16 +#. TYPE_CMY_16 +#: ../src/widgets/sp-color-icc-selector.cpp:369 +#: ../src/widgets/sp-color-icc-selector.cpp:374 #: ../src/widgets/sp-color-scales.cpp:485 msgid "_M:" msgstr "_M" -#: ../src/widgets/sp-color-icc-selector.cpp:218 -#: ../src/widgets/sp-color-icc-selector.cpp:219 +#: ../src/widgets/sp-color-icc-selector.cpp:370 +#: ../src/widgets/sp-color-icc-selector.cpp:375 #: ../src/widgets/sp-color-scales.cpp:488 msgid "_Y:" msgstr "_Y:" -#: ../src/widgets/sp-color-icc-selector.cpp:218 +#: ../src/widgets/sp-color-icc-selector.cpp:371 #: ../src/widgets/sp-color-scales.cpp:491 msgid "_K:" msgstr "_K" -#: ../src/widgets/sp-color-icc-selector.cpp:229 -msgid "Gray" -msgstr "Pelēks" - -#: ../src/widgets/sp-color-icc-selector.cpp:298 +#: ../src/widgets/sp-color-icc-selector.cpp:453 msgid "Fix" msgstr "Izlabot" -#: ../src/widgets/sp-color-icc-selector.cpp:301 +#: ../src/widgets/sp-color-icc-selector.cpp:456 msgid "Fix RGB fallback to match icc-color() value." msgstr "Labot RGB alternatīvo vērtību, lai atbilstu icc-color() vērtībai." #. Label -#: ../src/widgets/sp-color-icc-selector.cpp:439 +#: ../src/widgets/sp-color-icc-selector.cpp:559 #: ../src/widgets/sp-color-scales.cpp:437 #: ../src/widgets/sp-color-scales.cpp:463 #: ../src/widgets/sp-color-scales.cpp:494 @@ -24920,8 +24977,8 @@ msgstr "Labot RGB alternatīvo vērtību, lai atbilstu icc-color() vērtībai." msgid "_A:" msgstr "_A" -#: ../src/widgets/sp-color-icc-selector.cpp:458 -#: ../src/widgets/sp-color-icc-selector.cpp:480 +#: ../src/widgets/sp-color-icc-selector.cpp:570 +#: ../src/widgets/sp-color-icc-selector.cpp:583 #: ../src/widgets/sp-color-scales.cpp:438 #: ../src/widgets/sp-color-scales.cpp:439 #: ../src/widgets/sp-color-scales.cpp:464 @@ -24933,24 +24990,24 @@ msgstr "_A" msgid "Alpha (opacity)" msgstr "Alfa (necaurspīdība)" -#: ../src/widgets/sp-color-notebook.cpp:387 +#: ../src/widgets/sp-color-notebook.cpp:385 msgid "Color Managed" msgstr "Krāsu vadīts" -#: ../src/widgets/sp-color-notebook.cpp:394 +#: ../src/widgets/sp-color-notebook.cpp:392 msgid "Out of gamut!" msgstr "Ārpus krāsu diapazona!" -#: ../src/widgets/sp-color-notebook.cpp:401 +#: ../src/widgets/sp-color-notebook.cpp:399 msgid "Too much ink!" msgstr "Pārāk daudz tintes!" #. Create RGBA entry and color preview -#: ../src/widgets/sp-color-notebook.cpp:418 +#: ../src/widgets/sp-color-notebook.cpp:416 msgid "RGBA_:" msgstr "RGBA_:" -#: ../src/widgets/sp-color-notebook.cpp:426 +#: ../src/widgets/sp-color-notebook.cpp:424 msgid "Hexadecimal RGBA value of the color" msgstr "Krāsas RGBA heksadecimālā vērtība" @@ -25213,40 +25270,35 @@ msgstr "Stūrains, noslēgts gals" msgid "Dashes:" msgstr "Svītras:" -#: ../src/widgets/stroke-style.cpp:346 -msgid "_Start Markers:" -msgstr "_Sākuma marķieri:" +#. Drop down marker selectors +#. TRANSLATORS: Path markers are an SVG feature that allows you to attach arbitrary shapes +#. (arrowheads, bullets, faces, whatever) to the start, end, or middle nodes of a path. +#: ../src/widgets/stroke-style.cpp:345 +msgid "Markers:" +msgstr "Marķieri:" -#: ../src/widgets/stroke-style.cpp:347 +#: ../src/widgets/stroke-style.cpp:351 msgid "Start Markers are drawn on the first node of a path or shape" msgstr "Sākuma marķieri tiek pievienoti ceļa vai figūras pirmajam mezglam" -#: ../src/widgets/stroke-style.cpp:365 -msgid "_Mid Markers:" -msgstr "_Vidus marķieri:" - -#: ../src/widgets/stroke-style.cpp:366 +#: ../src/widgets/stroke-style.cpp:360 msgid "Mid Markers are drawn on every node of a path or shape except the first and last nodes" msgstr "Vidus marķieri tiek pievienoti katram ceļa vai figūras mezglam, izņemot pirmo un pēdējo" -#: ../src/widgets/stroke-style.cpp:384 -msgid "_End Markers:" -msgstr "_Beigu marķieri:" - -#: ../src/widgets/stroke-style.cpp:385 +#: ../src/widgets/stroke-style.cpp:369 msgid "End Markers are drawn on the last node of a path or shape" msgstr "Beigu marķieri tiek pievienoti ceļa vai figūras pēdējam mezglam" -#: ../src/widgets/stroke-style.cpp:512 +#: ../src/widgets/stroke-style.cpp:487 msgid "Set markers" msgstr "Iestatīt marķierus" -#: ../src/widgets/stroke-style.cpp:1100 -#: ../src/widgets/stroke-style.cpp:1185 +#: ../src/widgets/stroke-style.cpp:1075 +#: ../src/widgets/stroke-style.cpp:1160 msgid "Set stroke style" msgstr "Iestatīt apmales stilu" -#: ../src/widgets/stroke-style.cpp:1273 +#: ../src/widgets/stroke-style.cpp:1248 msgid "Set marker color" msgstr "Iestatīt marķiera krāsu" @@ -25492,176 +25544,176 @@ msgstr "Pagr.:" msgid "Character rotation (degrees)" msgstr "Rakstzīmju pagrieziens (grādos)" -#: ../src/widgets/toolbox.cpp:177 +#: ../src/widgets/toolbox.cpp:181 msgid "Color/opacity used for color tweaking" msgstr "Krāsu korekcijai izmantojamā krāsa/necauspīdība" -#: ../src/widgets/toolbox.cpp:185 +#: ../src/widgets/toolbox.cpp:189 msgid "Style of new stars" msgstr "Jauno zvaigžņu stils" -#: ../src/widgets/toolbox.cpp:187 +#: ../src/widgets/toolbox.cpp:191 msgid "Style of new rectangles" msgstr "Jauno taisnstūru stils" -#: ../src/widgets/toolbox.cpp:189 +#: ../src/widgets/toolbox.cpp:193 msgid "Style of new 3D boxes" msgstr "Jauno 3D paralēlskaldņu stils" -#: ../src/widgets/toolbox.cpp:191 +#: ../src/widgets/toolbox.cpp:195 msgid "Style of new ellipses" msgstr "Jauno elipšu stils" -#: ../src/widgets/toolbox.cpp:193 +#: ../src/widgets/toolbox.cpp:197 msgid "Style of new spirals" msgstr "Jauno spirāļu stils" -#: ../src/widgets/toolbox.cpp:195 +#: ../src/widgets/toolbox.cpp:199 msgid "Style of new paths created by Pencil" msgstr "Jauno, ar zīmuļa rīku veidoto ceļu stils" -#: ../src/widgets/toolbox.cpp:197 +#: ../src/widgets/toolbox.cpp:201 msgid "Style of new paths created by Pen" msgstr "Jauno, ar spalvas rīku veidoto ceļu stils" -#: ../src/widgets/toolbox.cpp:199 +#: ../src/widgets/toolbox.cpp:203 msgid "Style of new calligraphic strokes" msgstr "Jauno kaligrāfisko apmaļu stils" -#: ../src/widgets/toolbox.cpp:201 -#: ../src/widgets/toolbox.cpp:203 +#: ../src/widgets/toolbox.cpp:205 +#: ../src/widgets/toolbox.cpp:207 msgid "TBD" msgstr "TBD" -#: ../src/widgets/toolbox.cpp:215 +#: ../src/widgets/toolbox.cpp:219 msgid "Style of Paint Bucket fill objects" msgstr "Krāsas spaiņa objektu aizpildījuma stils" -#: ../src/widgets/toolbox.cpp:1678 +#: ../src/widgets/toolbox.cpp:1682 msgid "Bounding box" msgstr "Robežrāmis" -#: ../src/widgets/toolbox.cpp:1678 +#: ../src/widgets/toolbox.cpp:1682 msgid "Snap bounding boxes" msgstr "Piesaistīt robežrāmjus" -#: ../src/widgets/toolbox.cpp:1687 +#: ../src/widgets/toolbox.cpp:1691 msgid "Bounding box edges" msgstr "Robežrāmju malas" -#: ../src/widgets/toolbox.cpp:1687 +#: ../src/widgets/toolbox.cpp:1691 msgid "Snap to edges of a bounding box" msgstr "Piesaistīt robežrāmju malām" -#: ../src/widgets/toolbox.cpp:1696 +#: ../src/widgets/toolbox.cpp:1700 msgid "Bounding box corners" msgstr "Robežrāmju stūri" -#: ../src/widgets/toolbox.cpp:1696 +#: ../src/widgets/toolbox.cpp:1700 msgid "Snap bounding box corners" msgstr "Piesaistīt robežrāmju stūriem" -#: ../src/widgets/toolbox.cpp:1705 +#: ../src/widgets/toolbox.cpp:1709 msgid "BBox Edge Midpoints" msgstr "Robežrāmju malu viduspunktiem" -#: ../src/widgets/toolbox.cpp:1705 +#: ../src/widgets/toolbox.cpp:1709 msgid "Snap midpoints of bounding box edges" msgstr "Piesaistīt robežrāmju malu viduspunktiem" -#: ../src/widgets/toolbox.cpp:1715 +#: ../src/widgets/toolbox.cpp:1719 msgid "BBox Centers" msgstr "Robežrāmju centriem" -#: ../src/widgets/toolbox.cpp:1715 +#: ../src/widgets/toolbox.cpp:1719 msgid "Snapping centers of bounding boxes" msgstr "Piesaistīt robežrāmju centriem" -#: ../src/widgets/toolbox.cpp:1724 +#: ../src/widgets/toolbox.cpp:1728 msgid "Snap nodes, paths, and handles" msgstr "Piesaistīt mezglus, ceļus un turus" -#: ../src/widgets/toolbox.cpp:1732 +#: ../src/widgets/toolbox.cpp:1736 msgid "Snap to paths" msgstr "Piesaistīt ceļiem" -#: ../src/widgets/toolbox.cpp:1741 +#: ../src/widgets/toolbox.cpp:1745 msgid "Path intersections" msgstr "Ceļu krustpunkti" -#: ../src/widgets/toolbox.cpp:1741 +#: ../src/widgets/toolbox.cpp:1745 msgid "Snap to path intersections" msgstr "Piesaistīt ceļu krustpunktiem" -#: ../src/widgets/toolbox.cpp:1750 +#: ../src/widgets/toolbox.cpp:1754 msgid "To nodes" msgstr "Pie mezgliem" -#: ../src/widgets/toolbox.cpp:1750 +#: ../src/widgets/toolbox.cpp:1754 msgid "Snap cusp nodes, incl. rectangle corners" msgstr "Piesaistīt asos mezglus, ieskaitot taisnstūru stūrus" -#: ../src/widgets/toolbox.cpp:1759 +#: ../src/widgets/toolbox.cpp:1763 msgid "Smooth nodes" msgstr "Gludi mezgli" -#: ../src/widgets/toolbox.cpp:1759 +#: ../src/widgets/toolbox.cpp:1763 msgid "Snap smooth nodes, incl. quadrant points of ellipses" msgstr "Piesaistīt gludos mezglus, ieskaitot elipšu kvadrantu punktus" -#: ../src/widgets/toolbox.cpp:1768 +#: ../src/widgets/toolbox.cpp:1772 msgid "Line Midpoints" msgstr "Līnijas viduspunkti" -#: ../src/widgets/toolbox.cpp:1768 +#: ../src/widgets/toolbox.cpp:1772 msgid "Snap midpoints of line segments" msgstr "Piesaistīt līnijas posmu viduspunktus" -#: ../src/widgets/toolbox.cpp:1777 +#: ../src/widgets/toolbox.cpp:1781 msgid "Others" msgstr "Citi" -#: ../src/widgets/toolbox.cpp:1777 +#: ../src/widgets/toolbox.cpp:1781 msgid "Snap other points (centers, guide origins, gradient handles, etc.)" msgstr "Piesaistīt citus punktus (centrus, vadlīniju sākumus, krāsu pāreju turus utt.)" -#: ../src/widgets/toolbox.cpp:1785 +#: ../src/widgets/toolbox.cpp:1789 msgid "Object Centers" msgstr "Objekta centri" -#: ../src/widgets/toolbox.cpp:1785 +#: ../src/widgets/toolbox.cpp:1789 msgid "Snap centers of objects" msgstr "Piesaistīt objektu centrus" -#: ../src/widgets/toolbox.cpp:1794 +#: ../src/widgets/toolbox.cpp:1798 msgid "Rotation Centers" msgstr "Griešanās centrs" -#: ../src/widgets/toolbox.cpp:1794 +#: ../src/widgets/toolbox.cpp:1798 msgid "Snap an item's rotation center" msgstr "Piesaistīt objekta griešanās centram" -#: ../src/widgets/toolbox.cpp:1803 +#: ../src/widgets/toolbox.cpp:1807 msgid "Text baseline" msgstr "Teksta bāzes līnija" -#: ../src/widgets/toolbox.cpp:1803 +#: ../src/widgets/toolbox.cpp:1807 msgid "Snap text anchors and baselines" msgstr "Piesaistīt teksta enkurus un bāzes līnijas" -#: ../src/widgets/toolbox.cpp:1813 +#: ../src/widgets/toolbox.cpp:1817 msgid "Page border" msgstr "Lapas robeža" -#: ../src/widgets/toolbox.cpp:1813 +#: ../src/widgets/toolbox.cpp:1817 msgid "Snap to the page border" msgstr "Piesaistīt lapas robežām" -#: ../src/widgets/toolbox.cpp:1822 +#: ../src/widgets/toolbox.cpp:1826 msgid "Snap to grids" msgstr "Piesaistīt režģim" -#: ../src/widgets/toolbox.cpp:1831 +#: ../src/widgets/toolbox.cpp:1835 msgid "Snap guides" msgstr "Piesaistes palīglīnijas" @@ -25676,7 +25728,7 @@ msgstr "(plata ota)" #: ../src/widgets/tweak-toolbar.cpp:146 msgid "The width of the tweak area (relative to the visible canvas area)" -msgstr "" +msgstr "Pieskaņošanas laukuma platums (attiecībā pret redzamo audekla laukumu)" #. Force #: ../src/widgets/tweak-toolbar.cpp:160 @@ -25697,7 +25749,7 @@ msgstr "Spēks" #: ../src/widgets/tweak-toolbar.cpp:163 msgid "The force of the tweak action" -msgstr "" +msgstr "Pieskaņošanas darbības spēks" #: ../src/widgets/tweak-toolbar.cpp:181 msgid "Move mode" @@ -25922,6 +25974,15 @@ msgstr "Laukums (px^2): " msgid "Failed to import the numpy or numpy.linalg modules. These modules are required by this extension. Please install them and try again." msgstr "Neizdevās importēt numpy vai numpy.linalg moduļus. Šie moduļi ir nepieciešami šim paplašinājuma. Lūdzu, uzstādiet tos un mēģiniet vēlreiz." +#: ../share/extensions/dxf_outlines.py:300 +msgid "Error: Field 'Layer match name' must be filled when using 'By name match' option" +msgstr "Kļūda: laukam 'Slāņa nosaukuma atbilstība' jābūt aizpildītam, ja izmantojat 'Pēc nosaukuma atbilstības' iespēju" + +#: ../share/extensions/dxf_outlines.py:341 +#, python-format +msgid "Warning: Layer '%s' not found!" +msgstr "Uzmanību: slānis '%s' nav atrasts!" + #: ../share/extensions/embedimage.py:84 msgid "No xlink:href or sodipodi:absref attributes found, or they do not point to an existing file! Unable to embed image." msgstr "Nav atrasti xlink:href vai sodipodi:absref atribūti vai arī tie nenorāda uz pastāvošu failu! Attēlu iegult nav iespējams." @@ -26284,19 +26345,19 @@ msgstr "{0}Slāņa nosaukums: {1}" #: ../share/extensions/jessyInk_summary.py:102 msgid "{0}Transition in: {1} ({2!s} s)" -msgstr "" +msgstr "{0}Parādīšanās pāreja: {1} ({2!s} s)" #: ../share/extensions/jessyInk_summary.py:104 msgid "{0}Transition in: {1}" -msgstr "" +msgstr "{0}Parādīšanās pāreja: {1}" #: ../share/extensions/jessyInk_summary.py:111 msgid "{0}Transition out: {1} ({2!s} s)" -msgstr "" +msgstr "{0}Izgaišanas pāreja: {1} ({2!s} s)" #: ../share/extensions/jessyInk_summary.py:113 msgid "{0}Transition out: {1}" -msgstr "" +msgstr "{0}Izgaišanas pāreja: {1}" #: ../share/extensions/jessyInk_summary.py:120 msgid "" @@ -26829,8 +26890,8 @@ msgid "HSL Adjust" msgstr "HSL pieskaņošana" #: ../share/extensions/color_HSL_adjust.inx.h:3 -msgid "Hue (°):" -msgstr "Nokrāsa (°):" +msgid "Hue (°)" +msgstr "Nokrāsa (°)" #: ../share/extensions/color_HSL_adjust.inx.h:4 msgid "Random hue" @@ -26838,8 +26899,8 @@ msgstr "Nejauša nokrāsa" #: ../share/extensions/color_HSL_adjust.inx.h:6 #, no-c-format -msgid "Saturation (%):" -msgstr "Piesātinājums (%):" +msgid "Saturation (%)" +msgstr "Piesātinājums (%)" #: ../share/extensions/color_HSL_adjust.inx.h:7 msgid "Random saturation" @@ -26847,8 +26908,8 @@ msgstr "Nejauša piesātinātība" #: ../share/extensions/color_HSL_adjust.inx.h:9 #, no-c-format -msgid "Lightness (%):" -msgstr "Gaišums (%):" +msgid "Lightness (%)" +msgstr "Gaišums (%)" #: ../share/extensions/color_HSL_adjust.inx.h:10 msgid "Random lightness" @@ -27045,7 +27106,7 @@ msgstr "Apvilktā riņķa līnija" #: ../share/extensions/draw_from_triangle.inx.h:4 msgid "Circumcentre" -msgstr "" +msgstr "Apvilktas riņķa līnijas centrs" #: ../share/extensions/draw_from_triangle.inx.h:5 msgid "Incircle" @@ -27053,11 +27114,11 @@ msgstr "Ievilktā riņķa līnija" #: ../share/extensions/draw_from_triangle.inx.h:6 msgid "Incentre" -msgstr "" +msgstr "Ievilktas riņķa līnijas centrs" #: ../share/extensions/draw_from_triangle.inx.h:7 msgid "Contact Triangle" -msgstr "" +msgstr "Apvilkts trijstūris" #: ../share/extensions/draw_from_triangle.inx.h:8 msgid "Excircles" @@ -27065,11 +27126,11 @@ msgstr "Ārējās riņķa līnijas" #: ../share/extensions/draw_from_triangle.inx.h:9 msgid "Excentres" -msgstr "" +msgstr "Ārmalām piekļauto riņķu centri" #: ../share/extensions/draw_from_triangle.inx.h:10 msgid "Extouch Triangle" -msgstr "" +msgstr "Ārmalām piekļauto riņķu trijstūris" #: ../share/extensions/draw_from_triangle.inx.h:11 msgid "Excentral Triangle" @@ -27133,7 +27194,7 @@ msgstr "Pielāgotais punkts norādīts ar:" #: ../share/extensions/draw_from_triangle.inx.h:26 msgid "Point At:" -msgstr "" +msgstr "Norāde uz:" #: ../share/extensions/draw_from_triangle.inx.h:27 msgid "Draw Marker At This Point" @@ -27149,14 +27210,12 @@ msgid "Radius (px):" msgstr "Rādiuss (px):" #: ../share/extensions/draw_from_triangle.inx.h:30 -#, fuzzy msgid "Draw Isogonal Conjugate" -msgstr "Zīmēt izogonālo..." +msgstr "Zīmēt bisektrišu spoguļpunktu" #: ../share/extensions/draw_from_triangle.inx.h:31 -#, fuzzy msgid "Draw Isotomic Conjugate" -msgstr "Zīmēt izotomisko ..." +msgstr "Zīmēt mediānu spoguļpunktu" #: ../share/extensions/draw_from_triangle.inx.h:32 msgid "Report this triangle's properties" @@ -27195,6 +27254,28 @@ msgid "" "You can specify the radius of a circle around a custom point using a formula, which may also contain the side lengths, angles, etc. You can also plot the isogonal and isotomic conjugate of the point. Be aware that this may cause a divide-by-zero error for certain points.\n" " " msgstr "" +"Šis paplašinājums zīmē palīglīnijas ap trijstūri, ko veido pirmie trīs atlasītā ceļa mezgli. Varat izvēlēties kādu no piedāvātajiem objektiem vai arī izveidot jaunus.\n" +"\n" +"Visas vienības ir Inkscape's pikseļu vienības. Visi leņķi ir radiānos.\n" +"Jūs varat norādīt punktu, izmantojot trilineārās koordinātes vai arī ar trijstūra centra funkciju.\n" +"Ievadiet malu garumu vai leņķu funkcijas.\n" +"Trilineārie elementi jāatdala ar kolu: ':'.\n" +"Malu garumi tiek apzīmēti kā 's_a', 's_b' un 's_c'.\n" +"Tām atbilstošie leņķi ir 'a_a', 'a_b', un 'a_c'.\n" +"Tāpat varat izmantot trijstūra pusperimetru un laukumu kā konstantes. Lai izmantotu tos, ierakstiet 'area' vai 'semiperim'.\n" +"\n" +"Varat izmantot jebkuru standarta Python matemātisko funkciju:\n" +"ceil(x); fabs(x); floor(x); fmod(x,y); frexp(x); ldexp(x,i); \n" +"modf(x); exp(x); log(x [, base]); log10(x); pow(x,y); sqrt(x); \n" +"acos(x); asin(x); atan(x); atan2(y,x); hypot(x,y); \n" +"cos(x); sin(x); tan(x); degrees(x); radians(x); \n" +"cosh(x); sinh(x); tanh(x)\n" +"\n" +"Tāpat ir pieejamas arī apgrieztās trigonometriskās funkcijas:\n" +"sec(x); csc(x); cot(x)\n" +"\n" +"Jūs varat norādīt riņķa līnijas rādiusu ap nepieciešamo punktu izmantojot formulu, kas arī satur malu garumus, leņķus utt. Tāpat ir iespējams uzzīmēt punkta spoguļpunktu izmantojot bisektrises un mediānas. Ņemiet vērā, ka tas var izsaukt dalīts -ar-nulli kļūdu atsevišķiem punktiem.\n" +" " #: ../share/extensions/dxf_input.inx.h:1 msgid "DXF Input" @@ -27274,26 +27355,42 @@ msgid "Character Encoding" msgstr "Rakstzīmju kodējums" #: ../share/extensions/dxf_outlines.inx.h:7 -msgid "keep only visible layers" -msgstr "saglabāt tikai redzamos slāņus" +msgid "Layer export selection" +msgstr "Eksportējamā slāņa atlasīšana" -#: ../share/extensions/dxf_outlines.inx.h:16 +#: ../share/extensions/dxf_outlines.inx.h:8 +msgid "Layer match name" +msgstr "Slāņa nosaukuma atbilstība" + +#: ../share/extensions/dxf_outlines.inx.h:17 msgid "Latin 1" msgstr "Latin 1" -#: ../share/extensions/dxf_outlines.inx.h:17 +#: ../share/extensions/dxf_outlines.inx.h:18 msgid "CP 1250" msgstr "CP 1250" -#: ../share/extensions/dxf_outlines.inx.h:18 +#: ../share/extensions/dxf_outlines.inx.h:19 msgid "CP 1252" msgstr "CP 1252" -#: ../share/extensions/dxf_outlines.inx.h:19 +#: ../share/extensions/dxf_outlines.inx.h:20 msgid "UTF 8" msgstr "UTF 8" #: ../share/extensions/dxf_outlines.inx.h:21 +msgid "All (default)" +msgstr "Viss (noklusētais)" + +#: ../share/extensions/dxf_outlines.inx.h:22 +msgid "Visible only" +msgstr "Tikai redzamās" + +#: ../share/extensions/dxf_outlines.inx.h:23 +msgid "By name match" +msgstr "Pēc nosaukuma atbilstības" + +#: ../share/extensions/dxf_outlines.inx.h:25 msgid "" "- AutoCAD Release 14 DXF format.\n" "- The base unit parameter specifies in what unit the coordinates are output (90 px = 1 in).\n" @@ -27303,7 +27400,7 @@ msgid "" " - clones (the crossreference to the original is lost)\n" "- ROBO-Master spline output is a specialized spline readable only by ROBO-Master and AutoDesk viewers, not Inkscape.\n" "- LWPOLYLINE output is a multiply-connected polyline, disable it to use a legacy version of the LINE output.\n" -"- You can choose to export all layers or only visible ones" +"- You can choose to export all layers, only visible ones or by name match (case insensitive and use comma ',' as separator)" msgstr "" "- AutoCAD Release 14 DXF formāts.\n" "- Pamata vienības parametrs norāda vienības, kurās tiek izvadītas koordinātes (90 px = 1 colla).\n" @@ -27313,9 +27410,9 @@ msgstr "" " - kloni (šķērsatsauces uz oriģinālu tiek zaudētas)\n" "- ROBO-Master līkņu izvade ir specifiskas līknes, ko var izmantot tikai ar ROBO-Master un AutoDesk skatītājiem, nevis Inkscape.\n" "- LWPOLYLINE izvade ir daudzkārtīgi savienota līnija; atslēdziet to, lai izmantotu vēsturisko LINE izvades versiju.\n" -"- Varat izvēlēties, vai izvadīt visus slāņus vai tikai redzamos." +"- Varat izvēlēties, vai izvadīt visus slāņus, tikai redzamos vai arī ar atbilstošiem nosaukumiem (reģistrjutīgs, atdalīšanai lietojiet komatu)" -#: ../share/extensions/dxf_outlines.inx.h:30 +#: ../share/extensions/dxf_outlines.inx.h:34 msgid "Desktop Cutting Plotter (AutoCAD DXF R14) (*.dxf)" msgstr "Desktop Cutting Plotter (AutoCAD DXF R14) (*.dxf)" @@ -27486,7 +27583,7 @@ msgstr "Funkciju grafiku konstruktors" #: ../share/extensions/funcplot.inx.h:2 msgid "Range and sampling" -msgstr "" +msgstr "Diapazons un izlase" #: ../share/extensions/funcplot.inx.h:3 msgid "Start X value:" @@ -27675,7 +27772,7 @@ msgstr "Apgabals" #: ../share/extensions/gcodetools_area.inx.h:2 msgid "Maximum area cutting curves:" -msgstr "" +msgstr "Maksimālās laukuma griešanas līknes:" #: ../share/extensions/gcodetools_area.inx.h:3 msgid "Area width:" @@ -27687,7 +27784,7 @@ msgstr "Laukuma rīka pārklāšanās (0..0.9):" #: ../share/extensions/gcodetools_area.inx.h:5 msgid "\"Create area offset\": creates several Inkscape path offsets to fill original path's area up to \"Area radius\" value. Outlines start from \"1/2 D\" up to \"Area width\" total width with \"D\" steps where D is taken from the nearest tool definition (\"Tool diameter\" value). Only one offset will be created if the \"Area width\" is equal to \"1/2 D\"." -msgstr "" +msgstr "\"Izveidot laukuma nobīdi\": rada vairākas Inkscape ceļu nobīdes, lai aizpildītu sākotnējā ceļa laukumu līdz \"Laukuma rādiuss\" vērtībai. Aprises sākas no \"1/2 D\" un turpinās līdz \"Laukuma platums\" kopējam platumam ar \"D\" soļiem, kur D tiek ņemts no tuvākā rīka iestatījumiem (\"Rīka diametrs\" vērtības). Var izveidot tikai vienu nobīdi, ja \"Laukuma platums\" ir vienāds ar \"1/2 D\"." #: ../share/extensions/gcodetools_area.inx.h:6 msgid "Fill area" @@ -27711,11 +27808,11 @@ msgstr "Zig Zag" #: ../share/extensions/gcodetools_area.inx.h:12 msgid "Area artifacts" -msgstr "" +msgstr "Laukuma artefakti" #: ../share/extensions/gcodetools_area.inx.h:13 msgid "Artifact diameter:" -msgstr "" +msgstr "Artefakta diametrs:" #: ../share/extensions/gcodetools_area.inx.h:14 msgid "Action:" @@ -27735,7 +27832,7 @@ msgstr "dzēst" #: ../share/extensions/gcodetools_area.inx.h:18 msgid "Usage: 1. Select all Area Offsets (gray outlines) 2. Object/Ungroup (Shift+Ctrl+G) 3. Press Apply Suspected small objects will be marked out by colored arrows." -msgstr "" +msgstr "Lietošana: 1. Atlasiet visas laukuma nobīdes (pelēkās aprises) 2. Objekts/Atgrupēt (Shift+Ctrl+G) 3. Nospiediet 'Pielietot'; Aizdomas turētie sīkie objekti tiks atzīmēti ar krāsainām bultiņām." #: ../share/extensions/gcodetools_area.inx.h:19 #: ../share/extensions/gcodetools_lathe.inx.h:12 @@ -27747,7 +27844,7 @@ msgstr "Ceļu par G-code" #: ../share/extensions/gcodetools_lathe.inx.h:13 #: ../share/extensions/gcodetools_path_to_gcode.inx.h:2 msgid "Biarc interpolation tolerance:" -msgstr "" +msgstr "Dubultloku izlīdzināšanas pielaide:" #: ../share/extensions/gcodetools_area.inx.h:21 #: ../share/extensions/gcodetools_lathe.inx.h:14 @@ -27771,7 +27868,7 @@ msgstr "Dziļuma funkcija:" #: ../share/extensions/gcodetools_lathe.inx.h:17 #: ../share/extensions/gcodetools_path_to_gcode.inx.h:6 msgid "Sort paths to reduse rapid distance" -msgstr "" +msgstr "Šķirot ceļus, lai samazinātu tukšgaitas pārvietojumus" #: ../share/extensions/gcodetools_area.inx.h:25 #: ../share/extensions/gcodetools_lathe.inx.h:18 @@ -27795,7 +27892,7 @@ msgstr "Soli pa solim" #: ../share/extensions/gcodetools_lathe.inx.h:21 #: ../share/extensions/gcodetools_path_to_gcode.inx.h:10 msgid "Biarc interpolation tolerance is the maximum distance between path and its approximation. The segment will be split into two segments if the distance between path's segment and its approximation exceeds biarc interpolation tolerance. For depth function c=color intensity from 0.0 (white) to 1.0 (black), d is the depth defined by orientation points, s - surface defined by orientation points." -msgstr "" +msgstr "Dubultloku izlīdzināšanas pielaide ir maksimālais attālums starp ceļu un tā tuvinājumu. Posms tiks sadalīts divos posmos, ja attālums starp ceļa posmu un tā tuvinājumu pārsniegs pielaidi. Dziļuma funkcijai c ir krāsas intensitāte no 0.0 (balta) līdz 1.0 (melna), d ir orientācijas punktu noteikts dziļums, s - orientācijas punktu noteikta virsma." #: ../share/extensions/gcodetools_area.inx.h:30 #: ../share/extensions/gcodetools_engraving.inx.h:8 @@ -27970,7 +28067,7 @@ msgstr "Noapaļot visas vērtības līdz 4 cipariem" #: ../share/extensions/gcodetools_lathe.inx.h:45 #: ../share/extensions/gcodetools_path_to_gcode.inx.h:34 msgid "Fast pre-penetrate" -msgstr "" +msgstr "Ātrā priekšiegremdēšana" #: ../share/extensions/gcodetools_check_for_updates.inx.h:1 msgid "Check for updates" @@ -28014,7 +28111,7 @@ msgstr "Gravēšana" #: ../share/extensions/gcodetools_engraving.inx.h:2 msgid "Smooth convex corners between this value and 180 degrees:" -msgstr "" +msgstr "Nogludināt izliektos stūrus starp šo vērtību un 180 grādiem:" #: ../share/extensions/gcodetools_engraving.inx.h:3 msgid "Maximum distance for engraving (mm/inch):" @@ -28062,7 +28159,7 @@ msgstr "Priekšskatījuma izmērs (px):" #: ../share/extensions/gcodetools_graffiti.inx.h:8 msgid "Preview's paint emmit (pts/s):" -msgstr "" +msgstr "Priekšskatījuma krāsas emisija (pts/s):" #: ../share/extensions/gcodetools_graffiti.inx.h:10 #: ../share/extensions/gcodetools_orientation_points.inx.h:3 @@ -28097,7 +28194,7 @@ msgstr "grafiti punkti" #: ../share/extensions/gcodetools_graffiti.inx.h:17 #: ../share/extensions/gcodetools_orientation_points.inx.h:10 msgid "in-out reference point" -msgstr "" +msgstr "ieejas-izejas atskaites punkts" #: ../share/extensions/gcodetools_graffiti.inx.h:20 #: ../share/extensions/gcodetools_orientation_points.inx.h:13 @@ -28190,7 +28287,7 @@ msgstr "Sagatavot stūrus" #: ../share/extensions/gcodetools_prepare_path_for_plasma.inx.h:11 msgid "Stepout distance for corners:" -msgstr "" +msgstr "Stūru izvirzīšanās attālums:" #: ../share/extensions/gcodetools_prepare_path_for_plasma.inx.h:12 msgid "Maximum angle for corner (0-180 deg):" @@ -28445,7 +28542,7 @@ msgstr "Centra punkta diametrs (px):" #: ../share/extensions/grid_polar.inx.h:3 msgid "Circumferential Labels:" -msgstr "" +msgstr "Uzraksti uz aploces:" #: ../share/extensions/grid_polar.inx.h:5 msgid "Degrees" @@ -28453,11 +28550,11 @@ msgstr "Grādi" #: ../share/extensions/grid_polar.inx.h:6 msgid "Circumferential Label Size (px):" -msgstr "" +msgstr "Uzraksta uz aploces lielums (px):" #: ../share/extensions/grid_polar.inx.h:7 msgid "Circumferential Label Outset (px):" -msgstr "" +msgstr "Uzraksta uz aploces attālums no objekta (px):" #: ../share/extensions/grid_polar.inx.h:8 msgid "Circular Divisions" @@ -28505,7 +28602,7 @@ msgstr "Apakšiedaļas leņķa pamatiedaļā:" #: ../share/extensions/grid_polar.inx.h:19 msgid "Minor Angle Division End 'n' Divs. Before Centre:" -msgstr "" +msgstr "Papildleņķa iedaļas beidzas pirms norādītā iedaļu skaita:" #: ../share/extensions/grid_polar.inx.h:20 msgid "Major Angular Division Thickness (px):" @@ -28592,16 +28689,16 @@ msgid "Guillotine" msgstr "Giljotīna" #: ../share/extensions/guillotine.inx.h:2 -msgid "Directory to save images to" +msgid "Directory to save images to:" msgstr "Mape attēlu saglabāšanai:" #: ../share/extensions/guillotine.inx.h:3 -msgid "Image name (without extension)" -msgstr "Attēla nosaukums (bez paplašinājuma)" +msgid "Image name (without extension):" +msgstr "Attēla nosaukums (bez paplašinājuma):" #: ../share/extensions/guillotine.inx.h:4 -msgid "Ignore these settings and use export hints?" -msgstr "Neņemt vērā šos iestatījumus un izmantot eksportēšanas padomus?" +msgid "Ignore these settings and use export hints" +msgstr "Neņemt vērā šos iestatījumus un izmantot eksportēšanas padomus" #: ../share/extensions/guillotine.inx.h:5 #: ../share/extensions/print_win32_vector.inx.h:2 @@ -28621,16 +28718,16 @@ msgid "Please make sure that all objects you want to plot are converted to paths msgstr "Lūdzu, pārliecinieties, ka visu uz ploteri nosūtāmie objekti ir pārvērsti par ceļiem. Plotēšana automātiski tiks pieskaņota nulles punktam." #: ../share/extensions/hpgl_output.inx.h:3 -msgid "Resolution (dpi)" -msgstr "Izšķirtspēja (dpi)" +msgid "Resolution (dpi):" +msgstr "Izšķirtspēja (dpi):;" #: ../share/extensions/hpgl_output.inx.h:4 msgid "The amount of steps the cutter moves if it moves for 1 inch, either get this value from your plotter manual or learn it by trial and error (Standard: '1016')" msgstr "Nepieciešamais soļu skaits griežņa pārvietošanai par vienu collu (25,4 mm); vai nu atrodiet to plotera pamācībā vai noskaidrojiet eksperimentāli (standarts: '1016')" #: ../share/extensions/hpgl_output.inx.h:5 -msgid "Pen number" -msgstr "Spalvas numurs" +msgid "Pen number:" +msgstr "Spalvas numurs:;" #: ../share/extensions/hpgl_output.inx.h:6 msgid "The number of the pen (tool) to use, on most plotters 1 (Standard: '1')" @@ -28657,8 +28754,8 @@ msgid "Whether the plotter needs the zero point to be in the center of the drawi msgstr "Vai ploterim ir nepieciešams lai nulles punkts atrastos zīmējuma vidū. Dažiem ploteriem tas ir nepieciešams - noskaidrojiet to plotera pamācībā vai eksperimentāli (standarts: 'False\")" #: ../share/extensions/hpgl_output.inx.h:13 -msgid "Curve flatness" -msgstr "Līknes plakanums" +msgid "Curve flatness:" +msgstr "Līknes plakanums:" #: ../share/extensions/hpgl_output.inx.h:14 msgid "Curves are divided into lines, this number controls how fine the curves will be reproduced, the smaller the finer (Standard: '1.2')" @@ -28666,19 +28763,19 @@ msgstr "Līknes tiek sadalītas līnijās, šis skaitlis nosaka, cik precīzi l #: ../share/extensions/hpgl_output.inx.h:15 msgid "Use Overcut" -msgstr "" +msgstr "Izmantot pārgriezumu" #: ../share/extensions/hpgl_output.inx.h:16 msgid "Whether the overcut will be used, if not the 'Overcut' parameter is unused (Standard: 'True')" -msgstr "" +msgstr "Nosaka, vai tiks izmantots pārgriezums, ja nē, parametrs \"Pārgriezums' netiks izmantots (Standarts: \"Patiess'" #: ../share/extensions/hpgl_output.inx.h:17 -msgid "Overcut (mm)" -msgstr "" +msgid "Overcut (mm):" +msgstr "Pārgriezums (mm):" #: ../share/extensions/hpgl_output.inx.h:18 msgid "The distance in mm that will be cut over the starting point of the path to prevent open paths (Standard: '1.00')" -msgstr "" +msgstr "Attālums mm, kas tiks griezts pāri ceļa sākumpunktam, lai nepieļautu atvērtus ceļus (standarts: '1.00')" #: ../share/extensions/hpgl_output.inx.h:19 msgid "Correct tool offset" @@ -28686,10 +28783,10 @@ msgstr "Koriģēt rīka nobīdi" #: ../share/extensions/hpgl_output.inx.h:20 msgid "Whether the tool offset should be corrected, if not the 'Tool offset' and 'Return Factor' parameters are unused (Standard: 'True')" -msgstr "" +msgstr "Vai nepieciešams koriģēt rīka nobīdi; ja nē - parametri 'Rīka nobīde' un 'Atgriešanās faktors' netiks izmantoti (Standarts: 'Patiess')" #: ../share/extensions/hpgl_output.inx.h:21 -msgid "Tool offset (mm)" +msgid "Tool offset (mm):" msgstr "Rīka nobīde (mm):" #: ../share/extensions/hpgl_output.inx.h:22 @@ -28697,23 +28794,23 @@ msgid "The offset from the tool tip to the tool axis in mm (Standard: '0.25')" msgstr "Rīka gala nobīde pret rīka asi mm (standarts: '0.25')" #: ../share/extensions/hpgl_output.inx.h:23 -msgid "Return Factor" +msgid "Return Factor:" msgstr "Atgriešanās faktors:" #: ../share/extensions/hpgl_output.inx.h:24 msgid "The return factor multiplied by the tool offset is the length that is used to guide the tool back to the original path after an overcut is performed, you can only determine this value by experimentation (Standard: '2.50')" -msgstr "" +msgstr "Atgriešanās faktora reizinājums ar rīka nobīdi tiek izmantots nepieciešamā attāluma noteikšanai, lai aizvadītu rīku atpakaļ pie sākotnējā ceļa pēc pārgriezuma izpildes. Šo vērtību ir iespējams noteikt tikai eksperimentāli (Standarts: '2.50')" #: ../share/extensions/hpgl_output.inx.h:25 -msgid "X offset (mm)" +msgid "X offset (mm):" msgstr "X nobīde (mm):" #: ../share/extensions/hpgl_output.inx.h:26 msgid "The offset to move your plot away from the zero point in mm (Standard: '0.00')" -msgstr "" +msgstr "Nobīde jūsu rasējuma pārbīdei no nulles punkta, mm (Standarts: '0.00')" #: ../share/extensions/hpgl_output.inx.h:27 -msgid "Y offset (mm)" +msgid "Y offset (mm):" msgstr "Y nobīde (mm):" #: ../share/extensions/hpgl_output.inx.h:28 @@ -28733,16 +28830,16 @@ msgid "Sends the generated HPGL data also via serial connection to your plotter msgstr "Nosūta ģenerētos HPGL datus uz ploteri arī izmantojot seriālo savienojumu (standarts: 'False')" #: ../share/extensions/hpgl_output.inx.h:32 -msgid "Serial Port" -msgstr "Seriālais ports" +msgid "Serial Port:" +msgstr "Seriālais ports:" #: ../share/extensions/hpgl_output.inx.h:33 msgid "The port of your serial connection, on Windows something like 'COM1', on Linux something like: '/dev/ttyUSB0' (Standard: 'COM1')" msgstr "Seriālā savienojuma ports, uz Windows kaut kas līdzīgs 'COM1', uz Linux - '/dev/ttyUSB0' (standarts: 'COM1')" #: ../share/extensions/hpgl_output.inx.h:34 -msgid "Baud Rate" -msgstr "Ātrums bodos" +msgid "Baud Rate:" +msgstr "Ātrums bodos:" #: ../share/extensions/hpgl_output.inx.h:35 msgid "The Baud rate of your serial connection (Standard: '9600')" @@ -28925,7 +29022,7 @@ msgstr "Interpolācijas metode:" #: ../share/extensions/interp.inx.h:5 msgid "Duplicate endpaths" -msgstr "" +msgstr "Dubultot beigu ceļus" #: ../share/extensions/interp.inx.h:6 msgid "Interpolate style" @@ -29116,7 +29213,7 @@ msgstr "Pārslēgt izpildes gaitas indikatoru" #: ../share/extensions/jessyInk_keyBindings.inx.h:14 msgid "Reset timer:" -msgstr "" +msgstr "Atiestatīt taimeri:" #: ../share/extensions/jessyInk_keyBindings.inx.h:15 msgid "Export presentation:" @@ -29548,6 +29645,25 @@ msgid "" "\n" "]: return to remembered point\n" msgstr "" +"\n" +"Ceļs tiek veidots pielietojot Likumu \n" +"aizvietošanu Aksiomām Skaitu reižu.\n" +"Aksiomā un Likumos tiek izmantotas\n" +"sekojošās komandas:\n" +"\n" +"Jebkurš no A,B,C,D,E,F: zīmēt uz priekšu \n" +"\n" +"Jebkurš no G,H,I,J,K,L: pārvietoties uz priekšu \n" +"\n" +"+: pagriezties pa kreisi\n" +"\n" +"-: pagriezties pa labi\n" +"\n" +"|: pagriezties par 180 grādiem\n" +"\n" +"[: iegaumēt punktu\n" +"\n" +"]: atgriezties pie iegaumētā punkta\n" #: ../share/extensions/lorem_ipsum.inx.h:1 msgid "Lorem ipsum" @@ -29637,6 +29753,10 @@ msgstr "Fonta izmērs (px):" msgid "Offset (px):" msgstr "Nobīde (px):" +#: ../share/extensions/measure.inx.h:8 +msgid "Precision:" +msgstr "Precizitāte:" + #: ../share/extensions/measure.inx.h:9 msgid "Scale Factor (Drawing:Real Length) = 1:" msgstr "Mērogs (zīmējums:patiesais garums) - 1;" @@ -29645,10 +29765,6 @@ msgstr "Mērogs (zīmējums:patiesais garums) - 1;" msgid "Length Unit:" msgstr "Garuma vienība:" -#: ../share/extensions/measure.inx.h:11 -msgid "Length" -msgstr "Garums" - #: ../share/extensions/measure.inx.h:12 msgctxt "measure extension" msgid "Area" @@ -29721,7 +29837,7 @@ msgstr "Parametriskās līknes" #: ../share/extensions/param_curves.inx.h:2 msgid "Range and Sampling" -msgstr "" +msgstr "Diapazons un izlase" #: ../share/extensions/param_curves.inx.h:3 msgid "Start t-value:" @@ -29732,24 +29848,24 @@ msgid "End t-value:" msgstr "Beigu t-vērtība" #: ../share/extensions/param_curves.inx.h:5 -msgid "Multiply t-range by 2*pi:" -msgstr "Reizināt t-diapazonu ar 2*Pi:" +msgid "Multiply t-range by 2*pi" +msgstr "Reizināt t-diapazonu ar 2*Pi" #: ../share/extensions/param_curves.inx.h:6 -msgid "x-value of rectangle's left:" -msgstr "taisnstūra kreisās malas x vērtība:" +msgid "X-value of rectangle's left:" +msgstr "Taisnstūra kreisās malas x vērtība:" #: ../share/extensions/param_curves.inx.h:7 -msgid "x-value of rectangle's right:" -msgstr "taisnstūra lapās malas x vērtība:" +msgid "X-value of rectangle's right:" +msgstr "Taisnstūra labās malas x vērtība:" #: ../share/extensions/param_curves.inx.h:8 -msgid "y-value of rectangle's bottom:" -msgstr "taisnstūra apakšējās malas y vērtība:" +msgid "Y-value of rectangle's bottom:" +msgstr "Taisnstūra apakšējās malas y vērtība:" #: ../share/extensions/param_curves.inx.h:9 -msgid "y-value of rectangle's top:" -msgstr "taisnstūra augšējās malas y vērtība:" +msgid "Y-value of rectangle's top:" +msgstr "Taisnstūra augšējās malas y vērtība:" #: ../share/extensions/param_curves.inx.h:10 msgid "Samples:" @@ -29764,12 +29880,12 @@ msgstr "" "Pirmie atvasinājumi vienmēr tiek noteikti skaitliski." #: ../share/extensions/param_curves.inx.h:26 -msgid "x-Function:" -msgstr "x-funkcija" +msgid "X-Function:" +msgstr "x-funkcija:" #: ../share/extensions/param_curves.inx.h:27 -msgid "y-Function:" -msgstr "y-funkcija" +msgid "Y-Function:" +msgstr "x-funkcija:" #: ../share/extensions/pathalongpath.inx.h:1 msgid "Pattern along Path" @@ -29866,7 +29982,7 @@ msgstr "Šis efekts izkliedē faktūru gar norādīto \"skeleta\" ceļu. Faktūr #: ../share/extensions/perfectboundcover.inx.h:1 msgid "Perfect-Bound Cover Template" -msgstr "" +msgstr "Ideāli sašūta vāka sagatave" #: ../share/extensions/perfectboundcover.inx.h:2 msgid "Book Properties" @@ -30139,7 +30255,7 @@ msgstr "Gaisma Z:" #: ../share/extensions/polyhedron_3d.inx.h:48 msgid "Draw back-facing polygons" -msgstr "" +msgstr "Zīmēt daudzstūrus ar mugurām kopā" #: ../share/extensions/polyhedron_3d.inx.h:49 msgid "Z-sort faces by:" @@ -30351,12 +30467,12 @@ msgid "Find and Replace font" msgstr "Meklēt un aizvietot fontu" #: ../share/extensions/replace_font.inx.h:3 -msgid "Find this font: " -msgstr "Meklēt šo fontu" +msgid "Find font: " +msgstr "Meklēt šo fontu:" #: ../share/extensions/replace_font.inx.h:4 -msgid "And replace with: " -msgstr "Un aizvietot ar:" +msgid "Replace with: " +msgstr "Aizvietot ar:" #: ../share/extensions/replace_font.inx.h:5 msgid "Replace all fonts with: " @@ -30868,10 +30984,6 @@ msgstr "Mēneša mala" msgid "The options below have no influence when the above is checked." msgstr "Zemāk esošajiem iestatījumiem nav ietekmes, ja ir atzīmēts augstāk esošais." -#: ../share/extensions/svgcalendar.inx.h:19 -msgid "Colors" -msgstr "Krāsas" - #: ../share/extensions/svgcalendar.inx.h:20 msgid "Year color:" msgstr "Gada krāsa" @@ -31166,7 +31278,7 @@ msgstr "Procenti (attiecībā pret vecāka izmēru)" #: ../share/extensions/webslicer_create_group.inx.h:10 msgid "Undefined (relative to non-floating content size)" -msgstr "" +msgstr "Nenoteikts (attiecībā pret nepeldošā satura izmēriem)" #: ../share/extensions/webslicer_create_group.inx.h:12 msgid "Layout Group is only about to help a better code generation (if you need it). To use this, you must to select some \"Slicer rectangles\" first." @@ -31267,11 +31379,11 @@ msgstr "Nenovietots attēls" #: ../share/extensions/webslicer_create_rect.inx.h:29 msgid "Left Floated Image" -msgstr "" +msgstr "Peldošais attēls pa kreisi" #: ../share/extensions/webslicer_create_rect.inx.h:30 msgid "Right Floated Image" -msgstr "" +msgstr "Peldošais attēls pa labi" #: ../share/extensions/webslicer_create_rect.inx.h:31 msgid "Position anchor:" @@ -31352,7 +31464,7 @@ msgstr "Iestatāmā vērtība:" #: ../share/extensions/web-set-att.inx.h:6 #: ../share/extensions/web-transmit-att.inx.h:5 msgid "Compatibility with previews code to this event:" -msgstr "" +msgstr "Savietojamība ar šī notikuma priekšskatījumu kodu:" #: ../share/extensions/web-set-att.inx.h:7 msgid "Source and destination of setting:" @@ -31531,6 +31643,80 @@ msgstr "Populārs izgriezumkopu grafiskais formāts" msgid "XAML Input" msgstr "XAML ievade" +#~ msgid "Preview scale: " +#~ msgstr "Priekšskatījuma mērogs:" + +#~ msgid "Fit" +#~ msgstr "Pielāgot" + +#~ msgid "Fit to width" +#~ msgstr "Pielāgot platumam" + +#~ msgid "Fit to height" +#~ msgstr "Pielāgot augstumam" + +#~ msgid "Preview size: " +#~ msgstr "Priekšskatījuma izmērs:" + +#~ msgid "_Start Markers:" +#~ msgstr "_Sākuma marķieri:" + +#~ msgid "_Mid Markers:" +#~ msgstr "_Vidus marķieri:" + +#~ msgid "_End Markers:" +#~ msgstr "_Beigu marķieri:" + +#~ msgid "Crop:" +#~ msgstr "Graizīt:" + +#~ msgid "Red:" +#~ msgstr "Sarkans:" + +#~ msgid "Green:" +#~ msgstr "Zaļš:" + +#~ msgid "Blue:" +#~ msgstr "Zils:" + +#~ msgid "Lightness:" +#~ msgstr "Gaišums:" + +#~ msgid "Alpha:" +#~ msgstr "Alfa:" + +#~ msgid "Level:" +#~ msgstr "Līmenis:" + +#~ msgid "Contrast:" +#~ msgstr "Kontrasts:" + +#~ msgid "Colors:" +#~ msgstr "Krāsas:" + +#~ msgid "Simplify:" +#~ msgstr "Vienkāršot:" + +#~ msgid "Blur:" +#~ msgstr "Izpludinājums:" + +#~ msgid "Select only one group to convert to symbol." +#~ msgstr "" +#~ "Atlasiet tikai vienu grupu, kuru vēlaties pārvērst par simbolu." + +#~ msgid "Select original (Shift+D) to convert to symbol." +#~ msgstr "" +#~ "Atlasiet oriģinālu (Shift+D), kuru vēlaties pārvērst par simbolu." + +#~ msgid "Group selection first to convert to symbol." +#~ msgstr "Atlasiet objektu grupu pirms pārvēršanas par simbolu." + +#~ msgid "keep only visible layers" +#~ msgstr "saglabāt tikai redzamos slāņus" + +#~ msgid "y-Function:" +#~ msgstr "y-funkcija" + #~ msgid "T_ype: " #~ msgstr "T_ips:" diff --git a/po/uk.po b/po/uk.po index 86d4eef26..0ca40211b 100644 --- a/po/uk.po +++ b/po/uk.po @@ -12,8 +12,8 @@ msgid "" msgstr "" "Project-Id-Version: uk\n" "Report-Msgid-Bugs-To: inkscape-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2013-06-23 13:35+0300\n" -"PO-Revision-Date: 2013-06-23 13:57+0300\n" +"POT-Creation-Date: 2013-08-24 16:36+0300\n" +"PO-Revision-Date: 2013-08-24 16:52+0300\n" "Last-Translator: Yuri Chornoivan \n" "Language-Team: Ukrainian \n" "Language: uk\n" @@ -974,8 +974,8 @@ msgstr "Хутро тигра з переходами і фасками навк msgid "Black Light" msgstr "Чорне світло" -#: ../share/filters/filters.svg.h:1 ../src/ui/dialog/clonetiler.cpp:831 -#: ../src/ui/dialog/clonetiler.cpp:982 +#: ../share/filters/filters.svg.h:1 ../src/ui/dialog/clonetiler.cpp:832 +#: ../src/ui/dialog/clonetiler.cpp:983 #: ../src/extension/internal/bitmap/colorize.cpp:52 #: ../src/extension/internal/filter/bumps.h:101 #: ../src/extension/internal/filter/bumps.h:321 @@ -1007,7 +1007,7 @@ msgstr "Чорне світло" #: ../src/extension/internal/filter/paint.h:717 #: ../src/extension/internal/filter/shadows.h:73 #: ../src/extension/internal/filter/transparency.h:345 -#: ../src/ui/dialog/document-properties.cpp:150 +#: ../src/ui/dialog/document-properties.cpp:149 #: ../share/extensions/color_blackandwhite.inx.h:2 #: ../share/extensions/color_brighter.inx.h:2 #: ../share/extensions/color_custom.inx.h:15 @@ -3303,8 +3303,8 @@ msgstr "Напрямок" msgid "Defines the direction and magnitude of the extrusion" msgstr "Визначає напрямок і потужність витискання" -#: ../src/sp-flowtext.cpp:339 ../src/sp-text.cpp:400 -#: ../src/text-context.cpp:1630 +#: ../src/sp-flowtext.cpp:339 ../src/sp-text.cpp:399 +#: ../src/text-context.cpp:1631 msgid " [truncated]" msgstr " (обрізано)" @@ -3324,18 +3324,18 @@ msgstr[0] "Зв'язаний контурний текст (%d літер msgstr[1] "Зв'язаний контурний текст (%d літери%s)" msgstr[2] "Зв'язаний контурний текст (%d літер%s)" -#: ../src/arc-context.cpp:307 +#: ../src/arc-context.cpp:306 msgid "" "Ctrl: make circle or integer-ratio ellipse, snap arc/segment angle" msgstr "" "Ctrl: створює коло або еліпс з цілим відношенням сторін, обмежує кут " "дуги/сегмента" -#: ../src/arc-context.cpp:308 ../src/rect-context.cpp:353 +#: ../src/arc-context.cpp:307 ../src/rect-context.cpp:352 msgid "Shift: draw around the starting point" msgstr "Shift: малювати навколо початкової точки" -#: ../src/arc-context.cpp:464 +#: ../src/arc-context.cpp:465 #, c-format msgid "" "Ellipse: %s × %s (constrained to ratio %d:%d); with Shift " @@ -3344,7 +3344,7 @@ msgstr "" "Еліпс: %s × %s (обмежений співвідношенням %d:%d); з Shift " "малює навколо початкової точки" -#: ../src/arc-context.cpp:466 +#: ../src/arc-context.cpp:467 #, c-format msgid "" "Ellipse: %s × %s; with Ctrl to make square or integer-" @@ -3353,24 +3353,24 @@ msgstr "" "Еліпс: %s × %s; з натиснутим Ctrl малює коло або еліпс з " "цілим відношенням півосей; з Shift малює навколо початкової точки" -#: ../src/arc-context.cpp:492 +#: ../src/arc-context.cpp:493 msgid "Create ellipse" msgstr "Створити еліпс" -#: ../src/box3d-context.cpp:421 ../src/box3d-context.cpp:428 -#: ../src/box3d-context.cpp:435 ../src/box3d-context.cpp:442 -#: ../src/box3d-context.cpp:449 ../src/box3d-context.cpp:456 +#: ../src/box3d-context.cpp:420 ../src/box3d-context.cpp:427 +#: ../src/box3d-context.cpp:434 ../src/box3d-context.cpp:441 +#: ../src/box3d-context.cpp:448 ../src/box3d-context.cpp:455 msgid "Change perspective (angle of PLs)" msgstr "Зміна перспективи (кута між лініями перспективи)" #. status text -#: ../src/box3d-context.cpp:640 +#: ../src/box3d-context.cpp:639 msgid "3D Box; with Shift to extrude along the Z axis" msgstr "" "Просторовий об'єкт; утримування Shift витягуватиме об'єкт " "вздовж осі Z" -#: ../src/box3d-context.cpp:668 +#: ../src/box3d-context.cpp:667 msgid "Create 3D box" msgstr "Створити тривимірний об'єкт" @@ -3392,22 +3392,21 @@ msgstr "(некоректний рядок UTF-8)" #: ../src/ui/dialog/filter-effects-dialog.cpp:518 #: ../src/ui/dialog/inkscape-preferences.cpp:332 #: ../src/ui/dialog/inkscape-preferences.cpp:641 -#: ../src/ui/dialog/inkscape-preferences.cpp:1255 -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 -#: ../src/ui/dialog/inkscape-preferences.cpp:1817 +#: ../src/ui/dialog/inkscape-preferences.cpp:1259 +#: ../src/ui/dialog/inkscape-preferences.cpp:1423 +#: ../src/ui/dialog/inkscape-preferences.cpp:1821 #: ../src/ui/dialog/input.cpp:742 ../src/ui/dialog/input.cpp:743 #: ../src/ui/dialog/input.cpp:1571 ../src/ui/dialog/input.cpp:1625 -#: ../src/verbs.cpp:2292 ../src/widgets/gradient-toolbar.cpp:1128 -#: ../src/widgets/pencil-toolbar.cpp:189 +#: ../src/verbs.cpp:2345 ../src/widgets/gradient-toolbar.cpp:1128 +#: ../src/widgets/pencil-toolbar.cpp:184 +#: ../src/widgets/stroke-marker-selector.cpp:388 #: ../share/extensions/gcodetools_area.inx.h:48 #: ../share/extensions/gcodetools_dxf_points.inx.h:20 #: ../share/extensions/gcodetools_engraving.inx.h:26 #: ../share/extensions/gcodetools_graffiti.inx.h:37 #: ../share/extensions/gcodetools_lathe.inx.h:41 #: ../share/extensions/gcodetools_path_to_gcode.inx.h:30 -#: ../share/extensions/grid_polar.inx.h:4 -#: ../share/extensions/guides_creator.inx.h:7 -#: ../share/extensions/scour.inx.h:18 +#: ../share/extensions/grid_polar.inx.h:4 ../share/extensions/scour.inx.h:18 msgid "None" msgstr "немає" @@ -3441,11 +3440,11 @@ msgstr "" msgid "Select at least one non-connector object." msgstr "Позначте принаймні два об'єкти для з'єднання." -#: ../src/connector-context.cpp:1456 ../src/widgets/connector-toolbar.cpp:330 +#: ../src/connector-context.cpp:1456 ../src/widgets/connector-toolbar.cpp:326 msgid "Make connectors avoid selected objects" msgstr "Змусити лінії огинати вибрані об'єкти" -#: ../src/connector-context.cpp:1457 ../src/widgets/connector-toolbar.cpp:340 +#: ../src/connector-context.cpp:1457 ../src/widgets/connector-toolbar.cpp:336 msgid "Make connectors ignore selected objects" msgstr "Змусити лінії ігнорувати вибрані об'єкти" @@ -3461,396 +3460,396 @@ msgstr "" "Поточний рівень заблоковано. Розблокуйте його, щоб мати можливість " "креслити у ньому." -#: ../src/desktop-events.cpp:228 +#: ../src/desktop-events.cpp:225 msgid "Create guide" msgstr "Створити напрямну" -#: ../src/desktop-events.cpp:473 +#: ../src/desktop-events.cpp:470 msgid "Move guide" msgstr "Пересунути напрямну" -#: ../src/desktop-events.cpp:480 ../src/desktop-events.cpp:538 +#: ../src/desktop-events.cpp:477 ../src/desktop-events.cpp:535 #: ../src/ui/dialog/guides.cpp:144 msgid "Delete guide" msgstr "Вилучити напрямну" -#: ../src/desktop-events.cpp:518 +#: ../src/desktop-events.cpp:515 #, c-format msgid "Guideline: %s" msgstr "Напрямна: %s" -#: ../src/desktop.cpp:911 +#: ../src/desktop.cpp:826 msgid "No previous zoom." msgstr "Немає попереднього масштабу." -#: ../src/desktop.cpp:932 +#: ../src/desktop.cpp:847 msgid "No next zoom." msgstr "Немає наступного масштабу." -#: ../src/ui/dialog/clonetiler.cpp:111 +#: ../src/ui/dialog/clonetiler.cpp:112 msgid "_Symmetry" msgstr "Си_метрія" #. TRANSLATORS: "translation" means "shift" / "displacement" here. -#: ../src/ui/dialog/clonetiler.cpp:123 +#: ../src/ui/dialog/clonetiler.cpp:124 msgid "P1: simple translation" msgstr "P1: простий зсув" -#: ../src/ui/dialog/clonetiler.cpp:124 +#: ../src/ui/dialog/clonetiler.cpp:125 msgid "P2: 180° rotation" msgstr "P2: обертання на 180°" -#: ../src/ui/dialog/clonetiler.cpp:125 +#: ../src/ui/dialog/clonetiler.cpp:126 msgid "PM: reflection" msgstr "PM: віддзеркалення" #. TRANSLATORS: "glide reflection" is a reflection and a translation combined. #. For more info, see http://mathforum.org/sum95/suzanne/symsusan.html -#: ../src/ui/dialog/clonetiler.cpp:128 +#: ../src/ui/dialog/clonetiler.cpp:129 msgid "PG: glide reflection" msgstr "PG: ковзне віддзеркалення" -#: ../src/ui/dialog/clonetiler.cpp:129 +#: ../src/ui/dialog/clonetiler.cpp:130 msgid "CM: reflection + glide reflection" msgstr "CM: віддзеркалення + ковзне віддзеркалення" -#: ../src/ui/dialog/clonetiler.cpp:130 +#: ../src/ui/dialog/clonetiler.cpp:131 msgid "PMM: reflection + reflection" msgstr "PMM: віддзеркалення + віддзеркалення" -#: ../src/ui/dialog/clonetiler.cpp:131 +#: ../src/ui/dialog/clonetiler.cpp:132 msgid "PMG: reflection + 180° rotation" msgstr "PMG: віддзеркалення + обертання на 180°" -#: ../src/ui/dialog/clonetiler.cpp:132 +#: ../src/ui/dialog/clonetiler.cpp:133 msgid "PGG: glide reflection + 180° rotation" msgstr "PGG: ковзне віддзеркалення + обертання на 180°" -#: ../src/ui/dialog/clonetiler.cpp:133 +#: ../src/ui/dialog/clonetiler.cpp:134 msgid "CMM: reflection + reflection + 180° rotation" msgstr "CMM: віддзеркалення + віддзеркалення + обертання на 180°" -#: ../src/ui/dialog/clonetiler.cpp:134 +#: ../src/ui/dialog/clonetiler.cpp:135 msgid "P4: 90° rotation" msgstr "P4: обертання на 90°" -#: ../src/ui/dialog/clonetiler.cpp:135 +#: ../src/ui/dialog/clonetiler.cpp:136 msgid "P4M: 90° rotation + 45° reflection" msgstr "P4M: обертання на 90° + обертання на 45°" -#: ../src/ui/dialog/clonetiler.cpp:136 +#: ../src/ui/dialog/clonetiler.cpp:137 msgid "P4G: 90° rotation + 90° reflection" msgstr "P4G: обертання на 90° + обертання на 90°" -#: ../src/ui/dialog/clonetiler.cpp:137 +#: ../src/ui/dialog/clonetiler.cpp:138 msgid "P3: 120° rotation" msgstr "P3: обертання на 120°" -#: ../src/ui/dialog/clonetiler.cpp:138 +#: ../src/ui/dialog/clonetiler.cpp:139 msgid "P31M: reflection + 120° rotation, dense" msgstr "P31M: віддзеркалення + обертання на 120°, щільне" -#: ../src/ui/dialog/clonetiler.cpp:139 +#: ../src/ui/dialog/clonetiler.cpp:140 msgid "P3M1: reflection + 120° rotation, sparse" msgstr "P3M1: віддзеркалення + обертання на 120°, розсіяне" -#: ../src/ui/dialog/clonetiler.cpp:140 +#: ../src/ui/dialog/clonetiler.cpp:141 msgid "P6: 60° rotation" msgstr "P6: обертання на 60°" -#: ../src/ui/dialog/clonetiler.cpp:141 +#: ../src/ui/dialog/clonetiler.cpp:142 msgid "P6M: reflection + 60° rotation" msgstr "P6M: віддзеркалення + обертання на 60°" -#: ../src/ui/dialog/clonetiler.cpp:161 +#: ../src/ui/dialog/clonetiler.cpp:162 msgid "Select one of the 17 symmetry groups for the tiling" msgstr "Виберіть одну з 17 груп симетрії для мозаїки" -#: ../src/ui/dialog/clonetiler.cpp:179 +#: ../src/ui/dialog/clonetiler.cpp:180 msgid "S_hift" msgstr "Зс_ув" #. TRANSLATORS: "shift" means: the tiles will be shifted (offset) horizontally by this amount -#: ../src/ui/dialog/clonetiler.cpp:189 +#: ../src/ui/dialog/clonetiler.cpp:190 #, no-c-format msgid "Shift X:" msgstr "Зсув за віссю X:" -#: ../src/ui/dialog/clonetiler.cpp:197 +#: ../src/ui/dialog/clonetiler.cpp:198 #, no-c-format msgid "Horizontal shift per row (in % of tile width)" msgstr "Горизонтальний зсув на кожен рядок (у % від ширини плитки)" -#: ../src/ui/dialog/clonetiler.cpp:205 +#: ../src/ui/dialog/clonetiler.cpp:206 #, no-c-format msgid "Horizontal shift per column (in % of tile width)" msgstr "Горизонтальний зсув на кожен стовпчик (у % від ширини плитки)" -#: ../src/ui/dialog/clonetiler.cpp:211 +#: ../src/ui/dialog/clonetiler.cpp:212 msgid "Randomize the horizontal shift by this percentage" msgstr "Випадковий горизонтальний зсув не більше ніж на на даний відсоток" #. TRANSLATORS: "shift" means: the tiles will be shifted (offset) vertically by this amount -#: ../src/ui/dialog/clonetiler.cpp:221 +#: ../src/ui/dialog/clonetiler.cpp:222 #, no-c-format msgid "Shift Y:" msgstr "Зсув за віссю Y:" -#: ../src/ui/dialog/clonetiler.cpp:229 +#: ../src/ui/dialog/clonetiler.cpp:230 #, no-c-format msgid "Vertical shift per row (in % of tile height)" msgstr "Вертикальний зсув на кожен рядок (у % від висоти плитки)" -#: ../src/ui/dialog/clonetiler.cpp:237 +#: ../src/ui/dialog/clonetiler.cpp:238 #, no-c-format msgid "Vertical shift per column (in % of tile height)" msgstr "Вертикальний зсув на кожен стовпчик (у % від висоти плитки)" -#: ../src/ui/dialog/clonetiler.cpp:244 +#: ../src/ui/dialog/clonetiler.cpp:245 msgid "Randomize the vertical shift by this percentage" msgstr "Випадковий вертикальний зсув не більше ніж на даний відсоток" -#: ../src/ui/dialog/clonetiler.cpp:252 ../src/ui/dialog/clonetiler.cpp:398 +#: ../src/ui/dialog/clonetiler.cpp:253 ../src/ui/dialog/clonetiler.cpp:399 msgid "Exponent:" msgstr "Експоненціально:" -#: ../src/ui/dialog/clonetiler.cpp:259 +#: ../src/ui/dialog/clonetiler.cpp:260 msgid "Whether rows are spaced evenly (1), converge (<1) or diverge (>1)" msgstr "" "Спосіб розстановки проміжку між рядками: рівномірно (1), зближення (<1) чи " "розходження (>1)" -#: ../src/ui/dialog/clonetiler.cpp:266 +#: ../src/ui/dialog/clonetiler.cpp:267 msgid "Whether columns are spaced evenly (1), converge (<1) or diverge (>1)" msgstr "" "Спосіб розстановки проміжку між стовпчиками: рівномірно (1), зближення (<1) " "чи розходження (>1)" #. TRANSLATORS: "Alternate" is a verb here -#: ../src/ui/dialog/clonetiler.cpp:274 ../src/ui/dialog/clonetiler.cpp:438 -#: ../src/ui/dialog/clonetiler.cpp:514 ../src/ui/dialog/clonetiler.cpp:587 -#: ../src/ui/dialog/clonetiler.cpp:633 ../src/ui/dialog/clonetiler.cpp:760 +#: ../src/ui/dialog/clonetiler.cpp:275 ../src/ui/dialog/clonetiler.cpp:439 +#: ../src/ui/dialog/clonetiler.cpp:515 ../src/ui/dialog/clonetiler.cpp:588 +#: ../src/ui/dialog/clonetiler.cpp:634 ../src/ui/dialog/clonetiler.cpp:761 msgid "Alternate:" msgstr "Чергування:" -#: ../src/ui/dialog/clonetiler.cpp:280 +#: ../src/ui/dialog/clonetiler.cpp:281 msgid "Alternate the sign of shifts for each row" msgstr "Чергувати знак зсувів кожного рядка та стовпчика" -#: ../src/ui/dialog/clonetiler.cpp:285 +#: ../src/ui/dialog/clonetiler.cpp:286 msgid "Alternate the sign of shifts for each column" msgstr "Чергувати знак зсувів кожного рядка та стовпчика" #. TRANSLATORS: "Cumulate" is a verb here -#: ../src/ui/dialog/clonetiler.cpp:292 ../src/ui/dialog/clonetiler.cpp:456 -#: ../src/ui/dialog/clonetiler.cpp:532 +#: ../src/ui/dialog/clonetiler.cpp:293 ../src/ui/dialog/clonetiler.cpp:457 +#: ../src/ui/dialog/clonetiler.cpp:533 msgid "Cumulate:" msgstr "Накопичувати:" -#: ../src/ui/dialog/clonetiler.cpp:298 +#: ../src/ui/dialog/clonetiler.cpp:299 msgid "Cumulate the shifts for each row" msgstr "Накопичувати зсув для кожного рядка" -#: ../src/ui/dialog/clonetiler.cpp:303 +#: ../src/ui/dialog/clonetiler.cpp:304 msgid "Cumulate the shifts for each column" msgstr "Накопичувати зсув для кожного стовпчика" #. TRANSLATORS: "Cumulate" is a verb here -#: ../src/ui/dialog/clonetiler.cpp:310 +#: ../src/ui/dialog/clonetiler.cpp:311 msgid "Exclude tile:" msgstr "Виключити плитку:" -#: ../src/ui/dialog/clonetiler.cpp:316 +#: ../src/ui/dialog/clonetiler.cpp:317 msgid "Exclude tile height in shift" msgstr "Виключити висоту плитки із зсуву" -#: ../src/ui/dialog/clonetiler.cpp:321 +#: ../src/ui/dialog/clonetiler.cpp:322 msgid "Exclude tile width in shift" msgstr "Виключити ширину плитки із зсуву" -#: ../src/ui/dialog/clonetiler.cpp:330 +#: ../src/ui/dialog/clonetiler.cpp:331 msgid "Sc_ale" msgstr "Мас_штабувати" -#: ../src/ui/dialog/clonetiler.cpp:338 +#: ../src/ui/dialog/clonetiler.cpp:339 msgid "Scale X:" msgstr "Масштаб за X:" -#: ../src/ui/dialog/clonetiler.cpp:346 +#: ../src/ui/dialog/clonetiler.cpp:347 #, no-c-format msgid "Horizontal scale per row (in % of tile width)" msgstr "Горизонтальний масштаб на кожен рядок (у % від ширини плитки)" -#: ../src/ui/dialog/clonetiler.cpp:354 +#: ../src/ui/dialog/clonetiler.cpp:355 #, no-c-format msgid "Horizontal scale per column (in % of tile width)" msgstr "Горизонтальний масштаб на кожен стовпчик (у % від ширини плитки)" -#: ../src/ui/dialog/clonetiler.cpp:360 +#: ../src/ui/dialog/clonetiler.cpp:361 msgid "Randomize the horizontal scale by this percentage" msgstr "" "Випадково змінити горизонтальний масштаб не більше ніж на даний відсоток" -#: ../src/ui/dialog/clonetiler.cpp:368 +#: ../src/ui/dialog/clonetiler.cpp:369 msgid "Scale Y:" msgstr "Масштаб за Y:" -#: ../src/ui/dialog/clonetiler.cpp:376 +#: ../src/ui/dialog/clonetiler.cpp:377 #, no-c-format msgid "Vertical scale per row (in % of tile height)" msgstr "Вертикальний масштаб на кожен рядок (у % від висоти плитки)" -#: ../src/ui/dialog/clonetiler.cpp:384 +#: ../src/ui/dialog/clonetiler.cpp:385 #, no-c-format msgid "Vertical scale per column (in % of tile height)" msgstr "Вертикальний масштаб на кожен стовпчик (у % від висоти плитки)" -#: ../src/ui/dialog/clonetiler.cpp:390 +#: ../src/ui/dialog/clonetiler.cpp:391 msgid "Randomize the vertical scale by this percentage" msgstr "Випадково змінити вертикальний масштаб не більше ніж на даний відсоток" -#: ../src/ui/dialog/clonetiler.cpp:404 +#: ../src/ui/dialog/clonetiler.cpp:405 msgid "Whether row scaling is uniform (1), converge (<1) or diverge (>1)" msgstr "" "Спосіб розстановки проміжку між рядками: рівномірно (1), зближення (<1) чи " "розходження (>1)" -#: ../src/ui/dialog/clonetiler.cpp:410 +#: ../src/ui/dialog/clonetiler.cpp:411 msgid "Whether column scaling is uniform (1), converge (<1) or diverge (>1)" msgstr "" "Спосіб розстановки проміжку між стовпчиками: рівномірно (1), зближення (<1) " "чи розходження (>1)" -#: ../src/ui/dialog/clonetiler.cpp:418 +#: ../src/ui/dialog/clonetiler.cpp:419 msgid "Base:" msgstr "Базис:" -#: ../src/ui/dialog/clonetiler.cpp:424 ../src/ui/dialog/clonetiler.cpp:430 +#: ../src/ui/dialog/clonetiler.cpp:425 ../src/ui/dialog/clonetiler.cpp:431 msgid "" "Base for a logarithmic spiral: not used (0), converge (<1), or diverge (>1)" msgstr "" "Базис логарифмічної спіралі: не використовується (0), зближення (<1) чи " "розходження (>1)" -#: ../src/ui/dialog/clonetiler.cpp:444 +#: ../src/ui/dialog/clonetiler.cpp:445 msgid "Alternate the sign of scales for each row" msgstr "Чергувати знак зміни масштабу для кожного рядка" -#: ../src/ui/dialog/clonetiler.cpp:449 +#: ../src/ui/dialog/clonetiler.cpp:450 msgid "Alternate the sign of scales for each column" msgstr "Чергувати знак зміни масштабу для кожного стовпчика" -#: ../src/ui/dialog/clonetiler.cpp:462 +#: ../src/ui/dialog/clonetiler.cpp:463 msgid "Cumulate the scales for each row" msgstr "Накопичувати зміни масштабу для кожного рядка" -#: ../src/ui/dialog/clonetiler.cpp:467 +#: ../src/ui/dialog/clonetiler.cpp:468 msgid "Cumulate the scales for each column" msgstr "Накопичувати зміни масштабу для кожного стовпчика" -#: ../src/ui/dialog/clonetiler.cpp:476 +#: ../src/ui/dialog/clonetiler.cpp:477 msgid "_Rotation" msgstr "_Обертання" -#: ../src/ui/dialog/clonetiler.cpp:484 +#: ../src/ui/dialog/clonetiler.cpp:485 msgid "Angle:" msgstr "Кут:" -#: ../src/ui/dialog/clonetiler.cpp:492 +#: ../src/ui/dialog/clonetiler.cpp:493 #, no-c-format msgid "Rotate tiles by this angle for each row" msgstr "Обертати плитки на цей кут на кожен рядок" -#: ../src/ui/dialog/clonetiler.cpp:500 +#: ../src/ui/dialog/clonetiler.cpp:501 #, no-c-format msgid "Rotate tiles by this angle for each column" msgstr "Обертати плитки на цей кут на кожен стовпчик" -#: ../src/ui/dialog/clonetiler.cpp:506 +#: ../src/ui/dialog/clonetiler.cpp:507 msgid "Randomize the rotation angle by this percentage" msgstr "Випадковий кут обертання не більше ніж на даний відсоток" -#: ../src/ui/dialog/clonetiler.cpp:520 +#: ../src/ui/dialog/clonetiler.cpp:521 msgid "Alternate the rotation direction for each row" msgstr "Чергувати напрямок обертання на кожен рядок" -#: ../src/ui/dialog/clonetiler.cpp:525 +#: ../src/ui/dialog/clonetiler.cpp:526 msgid "Alternate the rotation direction for each column" msgstr "Чергувати напрямок обертання на кожен стовпчик" -#: ../src/ui/dialog/clonetiler.cpp:538 +#: ../src/ui/dialog/clonetiler.cpp:539 msgid "Cumulate the rotation for each row" msgstr "Накопичувати обертання на кожен рядок" -#: ../src/ui/dialog/clonetiler.cpp:543 +#: ../src/ui/dialog/clonetiler.cpp:544 msgid "Cumulate the rotation for each column" msgstr "Накопичувати обертання на кожен стовпчик" -#: ../src/ui/dialog/clonetiler.cpp:552 +#: ../src/ui/dialog/clonetiler.cpp:553 msgid "_Blur & opacity" msgstr "_Розмиття та непрозорість" -#: ../src/ui/dialog/clonetiler.cpp:561 +#: ../src/ui/dialog/clonetiler.cpp:562 msgid "Blur:" msgstr "Розмиття" -#: ../src/ui/dialog/clonetiler.cpp:567 +#: ../src/ui/dialog/clonetiler.cpp:568 msgid "Blur tiles by this percentage for each row" msgstr "Розмити елементи візерунку на цей відсоток для кожного рядка" -#: ../src/ui/dialog/clonetiler.cpp:573 +#: ../src/ui/dialog/clonetiler.cpp:574 msgid "Blur tiles by this percentage for each column" msgstr "Розмити елементи візерунку на цей відсоток для кожного стовпчика" -#: ../src/ui/dialog/clonetiler.cpp:579 +#: ../src/ui/dialog/clonetiler.cpp:580 msgid "Randomize the tile blur by this percentage" msgstr "Випадково змінювати розмиття візерунку на вказаний відсоток" -#: ../src/ui/dialog/clonetiler.cpp:593 +#: ../src/ui/dialog/clonetiler.cpp:594 msgid "Alternate the sign of blur change for each row" msgstr "Чергувати знак зміни розмиття для кожного рядка" -#: ../src/ui/dialog/clonetiler.cpp:598 +#: ../src/ui/dialog/clonetiler.cpp:599 msgid "Alternate the sign of blur change for each column" msgstr "Чергувати знак зміни розмиття для кожного стовпчика" -#: ../src/ui/dialog/clonetiler.cpp:607 +#: ../src/ui/dialog/clonetiler.cpp:608 msgid "Opacity:" msgstr "Непрозорість:" -#: ../src/ui/dialog/clonetiler.cpp:613 +#: ../src/ui/dialog/clonetiler.cpp:614 msgid "Decrease tile opacity by this percentage for each row" msgstr "Зменшувати непрозорість плитки на цей відсоток на кожен рядок" -#: ../src/ui/dialog/clonetiler.cpp:619 +#: ../src/ui/dialog/clonetiler.cpp:620 msgid "Decrease tile opacity by this percentage for each column" msgstr "Зменшувати непрозорість плитки на цей відсоток на кожен стовпчик" -#: ../src/ui/dialog/clonetiler.cpp:625 +#: ../src/ui/dialog/clonetiler.cpp:626 msgid "Randomize the tile opacity by this percentage" msgstr "Випадкова непрозорість плитки не більше ніж на даний відсоток" -#: ../src/ui/dialog/clonetiler.cpp:639 +#: ../src/ui/dialog/clonetiler.cpp:640 msgid "Alternate the sign of opacity change for each row" msgstr "Чергувати знак зміни непрозорості на кожен рядок" -#: ../src/ui/dialog/clonetiler.cpp:644 +#: ../src/ui/dialog/clonetiler.cpp:645 msgid "Alternate the sign of opacity change for each column" msgstr "Чергувати знак зміни непрозорості на кожен стовпчик" -#: ../src/ui/dialog/clonetiler.cpp:652 +#: ../src/ui/dialog/clonetiler.cpp:653 msgid "Co_lor" msgstr "_Колір" -#: ../src/ui/dialog/clonetiler.cpp:662 +#: ../src/ui/dialog/clonetiler.cpp:663 msgid "Initial color: " msgstr "Початковий колір: " -#: ../src/ui/dialog/clonetiler.cpp:666 +#: ../src/ui/dialog/clonetiler.cpp:667 msgid "Initial color of tiled clones" msgstr "Початковий колір для клонів" -#: ../src/ui/dialog/clonetiler.cpp:666 +#: ../src/ui/dialog/clonetiler.cpp:667 msgid "" "Initial color for clones (works only if the original has unset fill or " "stroke)" @@ -3858,201 +3857,201 @@ msgstr "" "Початковий колір для клонів (працює лише якщо для оригіналу не встановлено " "заповнення чи штрих)" -#: ../src/ui/dialog/clonetiler.cpp:681 +#: ../src/ui/dialog/clonetiler.cpp:682 msgid "H:" msgstr "В:" -#: ../src/ui/dialog/clonetiler.cpp:687 +#: ../src/ui/dialog/clonetiler.cpp:688 msgid "Change the tile hue by this percentage for each row" msgstr "Змінювати відтінок плитки на цей відсоток на кожен рядок" -#: ../src/ui/dialog/clonetiler.cpp:693 +#: ../src/ui/dialog/clonetiler.cpp:694 msgid "Change the tile hue by this percentage for each column" msgstr "Зменшувати відтінок плитки на цей відсоток на кожен стовпчик" -#: ../src/ui/dialog/clonetiler.cpp:699 +#: ../src/ui/dialog/clonetiler.cpp:700 msgid "Randomize the tile hue by this percentage" msgstr "Випадкова зміна відтінку плитки не більше ніж на даний відсоток" -#: ../src/ui/dialog/clonetiler.cpp:708 +#: ../src/ui/dialog/clonetiler.cpp:709 msgid "S:" msgstr "Н:" -#: ../src/ui/dialog/clonetiler.cpp:714 +#: ../src/ui/dialog/clonetiler.cpp:715 msgid "Change the color saturation by this percentage for each row" msgstr "Змінювати насиченість на цей відсоток на кожен рядок" -#: ../src/ui/dialog/clonetiler.cpp:720 +#: ../src/ui/dialog/clonetiler.cpp:721 msgid "Change the color saturation by this percentage for each column" msgstr "Змінювати насиченість на цей відсоток на кожен стовпчик" -#: ../src/ui/dialog/clonetiler.cpp:726 +#: ../src/ui/dialog/clonetiler.cpp:727 msgid "Randomize the color saturation by this percentage" msgstr "Випадкова зміна насиченості кольору не більше ніж на даний відсоток" -#: ../src/ui/dialog/clonetiler.cpp:734 +#: ../src/ui/dialog/clonetiler.cpp:735 msgid "L:" msgstr "О:" -#: ../src/ui/dialog/clonetiler.cpp:740 +#: ../src/ui/dialog/clonetiler.cpp:741 msgid "Change the color lightness by this percentage for each row" msgstr "Змінювати освітленість плитки на цей відсоток на кожен рядок" -#: ../src/ui/dialog/clonetiler.cpp:746 +#: ../src/ui/dialog/clonetiler.cpp:747 msgid "Change the color lightness by this percentage for each column" msgstr "Змінювати яскравість плитки на цей відсоток на кожен стовпчик" -#: ../src/ui/dialog/clonetiler.cpp:752 +#: ../src/ui/dialog/clonetiler.cpp:753 msgid "Randomize the color lightness by this percentage" msgstr "Випадкова зміна яскравості плитки не більше ніж на даний відсоток" -#: ../src/ui/dialog/clonetiler.cpp:766 +#: ../src/ui/dialog/clonetiler.cpp:767 msgid "Alternate the sign of color changes for each row" msgstr "Чергувати знак зміни кольору на кожен рядок" -#: ../src/ui/dialog/clonetiler.cpp:771 +#: ../src/ui/dialog/clonetiler.cpp:772 msgid "Alternate the sign of color changes for each column" msgstr "Чергувати знак зміни кольору на кожен стовпчик" -#: ../src/ui/dialog/clonetiler.cpp:779 +#: ../src/ui/dialog/clonetiler.cpp:780 msgid "_Trace" msgstr "_Векторизувати растр" -#: ../src/ui/dialog/clonetiler.cpp:791 +#: ../src/ui/dialog/clonetiler.cpp:792 msgid "Trace the drawing under the tiles" msgstr "Векторизувати область за плитками" -#: ../src/ui/dialog/clonetiler.cpp:795 +#: ../src/ui/dialog/clonetiler.cpp:796 msgid "" "For each clone, pick a value from the drawing in that clone's location and " "apply it to the clone" msgstr "" "Для кожного клону, вибрати значення під клоном та застосувати його до клону" -#: ../src/ui/dialog/clonetiler.cpp:814 +#: ../src/ui/dialog/clonetiler.cpp:815 msgid "1. Pick from the drawing:" msgstr "1. Взяти значення:" -#: ../src/ui/dialog/clonetiler.cpp:832 +#: ../src/ui/dialog/clonetiler.cpp:833 msgid "Pick the visible color and opacity" msgstr "Взяти видимий колір і прозорість" -#: ../src/ui/dialog/clonetiler.cpp:839 ../src/ui/dialog/clonetiler.cpp:992 +#: ../src/ui/dialog/clonetiler.cpp:840 ../src/ui/dialog/clonetiler.cpp:993 #: ../src/extension/internal/bitmap/opacity.cpp:38 #: ../src/extension/internal/filter/blurs.h:333 #: ../src/extension/internal/filter/transparency.h:279 -#: ../src/widgets/tweak-toolbar.cpp:352 +#: ../src/widgets/tweak-toolbar.cpp:348 #: ../share/extensions/interp_att_g.inx.h:16 msgid "Opacity" msgstr "Непрозорість" -#: ../src/ui/dialog/clonetiler.cpp:840 +#: ../src/ui/dialog/clonetiler.cpp:841 msgid "Pick the total accumulated opacity" msgstr "Взяти сумарну непрозорість у кожній точці" -#: ../src/ui/dialog/clonetiler.cpp:847 +#: ../src/ui/dialog/clonetiler.cpp:848 msgid "R" msgstr "R" -#: ../src/ui/dialog/clonetiler.cpp:848 +#: ../src/ui/dialog/clonetiler.cpp:849 msgid "Pick the Red component of the color" msgstr "Взяти червону компоненту кольору" -#: ../src/ui/dialog/clonetiler.cpp:855 +#: ../src/ui/dialog/clonetiler.cpp:856 msgid "G" msgstr "G" -#: ../src/ui/dialog/clonetiler.cpp:856 +#: ../src/ui/dialog/clonetiler.cpp:857 msgid "Pick the Green component of the color" msgstr "Взяти зелену компоненту кольору" -#: ../src/ui/dialog/clonetiler.cpp:863 +#: ../src/ui/dialog/clonetiler.cpp:864 msgid "B" msgstr "B" -#: ../src/ui/dialog/clonetiler.cpp:864 +#: ../src/ui/dialog/clonetiler.cpp:865 msgid "Pick the Blue component of the color" msgstr "Взяти блакитну компоненту кольору" -#: ../src/ui/dialog/clonetiler.cpp:871 +#: ../src/ui/dialog/clonetiler.cpp:872 msgctxt "Clonetiler color hue" msgid "H" msgstr "В" -#: ../src/ui/dialog/clonetiler.cpp:872 +#: ../src/ui/dialog/clonetiler.cpp:873 msgid "Pick the hue of the color" msgstr "Взяти відтінок кольору" -#: ../src/ui/dialog/clonetiler.cpp:879 +#: ../src/ui/dialog/clonetiler.cpp:880 msgctxt "Clonetiler color saturation" msgid "S" msgstr "Н" -#: ../src/ui/dialog/clonetiler.cpp:880 +#: ../src/ui/dialog/clonetiler.cpp:881 msgid "Pick the saturation of the color" msgstr "Взяти насиченість кольору" -#: ../src/ui/dialog/clonetiler.cpp:887 +#: ../src/ui/dialog/clonetiler.cpp:888 msgctxt "Clonetiler color lightness" msgid "L" msgstr "О" -#: ../src/ui/dialog/clonetiler.cpp:888 +#: ../src/ui/dialog/clonetiler.cpp:889 msgid "Pick the lightness of the color" msgstr "Взяти яскравість кольору" -#: ../src/ui/dialog/clonetiler.cpp:898 +#: ../src/ui/dialog/clonetiler.cpp:899 msgid "2. Tweak the picked value:" msgstr "2. Змінити взяте значення:" -#: ../src/ui/dialog/clonetiler.cpp:915 +#: ../src/ui/dialog/clonetiler.cpp:916 msgid "Gamma-correct:" msgstr "Гамма-корекція:" -#: ../src/ui/dialog/clonetiler.cpp:919 +#: ../src/ui/dialog/clonetiler.cpp:920 msgid "Shift the mid-range of the picked value upwards (>0) or downwards (<0)" msgstr "Зсунути середину діапазону взятих значень вгору (>0) чи вниз (<0)" -#: ../src/ui/dialog/clonetiler.cpp:926 +#: ../src/ui/dialog/clonetiler.cpp:927 msgid "Randomize:" msgstr "Випадково:" -#: ../src/ui/dialog/clonetiler.cpp:930 +#: ../src/ui/dialog/clonetiler.cpp:931 msgid "Randomize the picked value by this percentage" msgstr "Випадково міняти взяте значення, максимум на даний відсоток" -#: ../src/ui/dialog/clonetiler.cpp:937 +#: ../src/ui/dialog/clonetiler.cpp:938 msgid "Invert:" msgstr "Інвертувати:" -#: ../src/ui/dialog/clonetiler.cpp:941 +#: ../src/ui/dialog/clonetiler.cpp:942 msgid "Invert the picked value" msgstr "Інвертувати взяте значення" -#: ../src/ui/dialog/clonetiler.cpp:947 +#: ../src/ui/dialog/clonetiler.cpp:948 msgid "3. Apply the value to the clones':" msgstr "3. Застосувати це значення до клонів:" -#: ../src/ui/dialog/clonetiler.cpp:962 +#: ../src/ui/dialog/clonetiler.cpp:963 msgid "Presence" msgstr "Наявність" -#: ../src/ui/dialog/clonetiler.cpp:965 +#: ../src/ui/dialog/clonetiler.cpp:966 msgid "" "Each clone is created with the probability determined by the picked value in " "that point" msgstr "" "Ймовірність появи кожного клону визначається значенням, взятим у даній точці" -#: ../src/ui/dialog/clonetiler.cpp:972 +#: ../src/ui/dialog/clonetiler.cpp:973 msgid "Size" msgstr "Розмір" -#: ../src/ui/dialog/clonetiler.cpp:975 +#: ../src/ui/dialog/clonetiler.cpp:976 msgid "Each clone's size is determined by the picked value in that point" msgstr "Розмір кожного клону визначається значенням, взятим у даній точці" -#: ../src/ui/dialog/clonetiler.cpp:985 +#: ../src/ui/dialog/clonetiler.cpp:986 msgid "" "Each clone is painted by the picked color (the original must have unset fill " "or stroke)" @@ -4060,48 +4059,48 @@ msgstr "" "Кожен клон фарбується взятим у даній точці кольором (оригінал не повинен " "мати власний колір чи штрих)" -#: ../src/ui/dialog/clonetiler.cpp:995 +#: ../src/ui/dialog/clonetiler.cpp:996 msgid "Each clone's opacity is determined by the picked value in that point" msgstr "" "Прозорість кожного кольору визначається значенням, взятим у даній точці" -#: ../src/ui/dialog/clonetiler.cpp:1043 +#: ../src/ui/dialog/clonetiler.cpp:1044 msgid "How many rows in the tiling" msgstr "Кількість рядків у мозаїці" -#: ../src/ui/dialog/clonetiler.cpp:1073 +#: ../src/ui/dialog/clonetiler.cpp:1074 msgid "How many columns in the tiling" msgstr "Кількість стовпчиків у мозаїці" -#: ../src/ui/dialog/clonetiler.cpp:1117 +#: ../src/ui/dialog/clonetiler.cpp:1119 msgid "Width of the rectangle to be filled" msgstr "Ширина області, що заповнюється" -#: ../src/ui/dialog/clonetiler.cpp:1151 +#: ../src/ui/dialog/clonetiler.cpp:1152 msgid "Height of the rectangle to be filled" msgstr "Висота області, що заповнюється" -#: ../src/ui/dialog/clonetiler.cpp:1168 +#: ../src/ui/dialog/clonetiler.cpp:1169 msgid "Rows, columns: " msgstr "Рядків, стовпчиків: " -#: ../src/ui/dialog/clonetiler.cpp:1169 +#: ../src/ui/dialog/clonetiler.cpp:1170 msgid "Create the specified number of rows and columns" msgstr "Створити вказану кількість рядків та стовпчиків" -#: ../src/ui/dialog/clonetiler.cpp:1178 +#: ../src/ui/dialog/clonetiler.cpp:1179 msgid "Width, height: " msgstr "Ширина, висота: " -#: ../src/ui/dialog/clonetiler.cpp:1179 +#: ../src/ui/dialog/clonetiler.cpp:1180 msgid "Fill the specified width and height with the tiling" msgstr "Заповнити мозаїкою вказану область" -#: ../src/ui/dialog/clonetiler.cpp:1200 +#: ../src/ui/dialog/clonetiler.cpp:1201 msgid "Use saved size and position of the tile" msgstr "Використовувати збережені розмір та позицію плитки" -#: ../src/ui/dialog/clonetiler.cpp:1203 +#: ../src/ui/dialog/clonetiler.cpp:1204 msgid "" "Pretend that the size and position of the tile are the same as the last time " "you tiled it (if any), instead of using the current size" @@ -4109,11 +4108,11 @@ msgstr "" "Сприяти, щоб розмір та позиція плиток були такі самі, як і останнього разу, " "коли ви їх розбивали на мозаїку, замість використання поточного розміру" -#: ../src/ui/dialog/clonetiler.cpp:1237 +#: ../src/ui/dialog/clonetiler.cpp:1238 msgid " _Create " msgstr "_Створити " -#: ../src/ui/dialog/clonetiler.cpp:1239 +#: ../src/ui/dialog/clonetiler.cpp:1240 msgid "Create and tile the clones of the selection" msgstr "Створити мозаїку з клонів позначеної ділянки" @@ -4122,31 +4121,31 @@ msgstr "Створити мозаїку з клонів позначеної д #. diagrams on the left in the following screenshot: #. http://www.inkscape.org/screenshots/gallery/inkscape-0.42-CVS-tiles-unclump.png #. So unclumping is the process of spreading a number of objects out more evenly. -#: ../src/ui/dialog/clonetiler.cpp:1259 +#: ../src/ui/dialog/clonetiler.cpp:1260 msgid " _Unclump " msgstr "_Розгрупувати " -#: ../src/ui/dialog/clonetiler.cpp:1260 +#: ../src/ui/dialog/clonetiler.cpp:1261 msgid "Spread out clones to reduce clumping; can be applied repeatedly" msgstr "" "Розповсюдити клони для послаблення групування; може бути застосовано повторно" -#: ../src/ui/dialog/clonetiler.cpp:1266 +#: ../src/ui/dialog/clonetiler.cpp:1267 msgid " Re_move " msgstr " В_илучити " -#: ../src/ui/dialog/clonetiler.cpp:1267 +#: ../src/ui/dialog/clonetiler.cpp:1268 msgid "Remove existing tiled clones of the selected object (siblings only)" msgstr "" "Вилучити існуючі мозаїчні клони позначеного об'єкта (лише нащадків одного " "об'єкта)" -#: ../src/ui/dialog/clonetiler.cpp:1283 +#: ../src/ui/dialog/clonetiler.cpp:1284 msgid " R_eset " msgstr "С_кинути " #. TRANSLATORS: "change" is a noun here -#: ../src/ui/dialog/clonetiler.cpp:1285 +#: ../src/ui/dialog/clonetiler.cpp:1286 msgid "" "Reset all shifts, scales, rotates, opacity and color changes in the dialog " "to zero" @@ -4154,44 +4153,44 @@ msgstr "" "Скинути усі зсуви, масштабування, обертання та зміни прозорості й кольору на " "нуль" -#: ../src/ui/dialog/clonetiler.cpp:1358 +#: ../src/ui/dialog/clonetiler.cpp:1359 msgid "Nothing selected." msgstr "Нічого не позначено." -#: ../src/ui/dialog/clonetiler.cpp:1364 +#: ../src/ui/dialog/clonetiler.cpp:1365 msgid "More than one object selected." msgstr "позначено більше ніж один об'єкт." -#: ../src/ui/dialog/clonetiler.cpp:1371 +#: ../src/ui/dialog/clonetiler.cpp:1372 #, c-format msgid "Object has %d tiled clones." msgstr "Об'єкт має%d мозаїчних клонів." -#: ../src/ui/dialog/clonetiler.cpp:1376 +#: ../src/ui/dialog/clonetiler.cpp:1377 msgid "Object has no tiled clones." msgstr "Об'єкт не має мозаїчних клонів." -#: ../src/ui/dialog/clonetiler.cpp:2096 +#: ../src/ui/dialog/clonetiler.cpp:2097 msgid "Select one object whose tiled clones to unclump." msgstr "Позначте один об'єкт, клони якого слід розгрупувати." -#: ../src/ui/dialog/clonetiler.cpp:2118 +#: ../src/ui/dialog/clonetiler.cpp:2119 msgid "Unclump tiled clones" msgstr "Розгрупувати мозаїку з клонів" -#: ../src/ui/dialog/clonetiler.cpp:2147 +#: ../src/ui/dialog/clonetiler.cpp:2148 msgid "Select one object whose tiled clones to remove." msgstr "Позначте один об'єкт, клони якого слід вилучити." -#: ../src/ui/dialog/clonetiler.cpp:2170 +#: ../src/ui/dialog/clonetiler.cpp:2171 msgid "Delete tiled clones" msgstr "Вилучити мозаїку з клонів" -#: ../src/ui/dialog/clonetiler.cpp:2217 ../src/selection-chemistry.cpp:2501 +#: ../src/ui/dialog/clonetiler.cpp:2218 ../src/selection-chemistry.cpp:2488 msgid "Select an object to clone." msgstr "Позначте об'єкт для клонування." -#: ../src/ui/dialog/clonetiler.cpp:2223 +#: ../src/ui/dialog/clonetiler.cpp:2224 msgid "" "If you want to clone several objects, group them and clone the " "group." @@ -4199,56 +4198,57 @@ msgstr "" "Для клонування кількох об'єктів, згрупуйте їх та клонуйте групу." -#: ../src/ui/dialog/clonetiler.cpp:2232 +#: ../src/ui/dialog/clonetiler.cpp:2233 msgid "Creating tiled clones..." msgstr "Створення мозаїчних клонів…" -#: ../src/ui/dialog/clonetiler.cpp:2637 +#: ../src/ui/dialog/clonetiler.cpp:2638 msgid "Create tiled clones" msgstr "Створити мозаїку з клонів" -#: ../src/ui/dialog/clonetiler.cpp:2870 +#: ../src/ui/dialog/clonetiler.cpp:2871 msgid "Per row:" msgstr "На рядок:" -#: ../src/ui/dialog/clonetiler.cpp:2888 +#: ../src/ui/dialog/clonetiler.cpp:2889 msgid "Per column:" msgstr "На стовпчик:" -#: ../src/ui/dialog/clonetiler.cpp:2896 +#: ../src/ui/dialog/clonetiler.cpp:2897 msgid "Randomize:" msgstr "Випадковість:" -#: ../src/ui/dialog/export.cpp:150 ../src/verbs.cpp:2736 +#: ../src/ui/dialog/export.cpp:151 ../src/verbs.cpp:2791 msgid "_Page" msgstr "_Сторінка" -#: ../src/ui/dialog/export.cpp:150 ../src/verbs.cpp:2740 +#: ../src/ui/dialog/export.cpp:151 ../src/verbs.cpp:2795 msgid "_Drawing" msgstr "_Малюнок" -#: ../src/ui/dialog/export.cpp:150 ../src/verbs.cpp:2742 +#: ../src/ui/dialog/export.cpp:151 ../src/verbs.cpp:2797 msgid "_Selection" msgstr "Поз_начене" -#: ../src/ui/dialog/export.cpp:150 +#: ../src/ui/dialog/export.cpp:151 msgid "_Custom" msgstr "_Інше" -#: ../src/ui/dialog/export.cpp:166 ../src/widgets/measure-toolbar.cpp:115 -#: ../src/widgets/measure-toolbar.cpp:123 ../share/extensions/gears.inx.h:6 +#: ../src/ui/dialog/export.cpp:167 ../src/widgets/measure-toolbar.cpp:116 +#: ../src/widgets/measure-toolbar.cpp:124 +#: ../share/extensions/render_gears.inx.h:6 msgid "Units:" msgstr "Одиниці:" -#: ../src/ui/dialog/export.cpp:168 +#: ../src/ui/dialog/export.cpp:169 msgid "_Export As..." msgstr "_Експортувати як…" -#: ../src/ui/dialog/export.cpp:171 +#: ../src/ui/dialog/export.cpp:172 msgid "B_atch export all selected objects" msgstr "Па_кетний експорт усіх позначених об'єктів" -#: ../src/ui/dialog/export.cpp:171 +#: ../src/ui/dialog/export.cpp:172 msgid "" "Export each selected object into its own PNG file, using export hints if any " "(caution, overwrites without asking!)" @@ -4257,94 +4257,94 @@ msgstr "" "підказки експорту, якщо вони є (застереження, перезапис ведеться без " "попередження!)" -#: ../src/ui/dialog/export.cpp:173 +#: ../src/ui/dialog/export.cpp:174 msgid "Hide a_ll except selected" msgstr "С_ховати все за винятком позначених" -#: ../src/ui/dialog/export.cpp:173 +#: ../src/ui/dialog/export.cpp:174 msgid "In the exported image, hide all objects except those that are selected" msgstr "" "В експортованому зображенні приховувати всі об'єкти, за винятком позначених" -#: ../src/ui/dialog/export.cpp:174 +#: ../src/ui/dialog/export.cpp:175 msgid "Close when complete" msgstr "Закрити після завершення" -#: ../src/ui/dialog/export.cpp:174 +#: ../src/ui/dialog/export.cpp:175 msgid "Once the export completes, close this dialog" msgstr "Після завершення експортування закрити це діалогове вікно" -#: ../src/ui/dialog/export.cpp:176 +#: ../src/ui/dialog/export.cpp:177 msgid "_Export" msgstr "_Експортувати" -#: ../src/ui/dialog/export.cpp:194 +#: ../src/ui/dialog/export.cpp:195 msgid "Export area" msgstr "Експортувати ділянку" -#: ../src/ui/dialog/export.cpp:230 +#: ../src/ui/dialog/export.cpp:234 msgid "_x0:" msgstr "_x0:" -#: ../src/ui/dialog/export.cpp:234 +#: ../src/ui/dialog/export.cpp:238 msgid "x_1:" msgstr "x_1:" -#: ../src/ui/dialog/export.cpp:238 +#: ../src/ui/dialog/export.cpp:242 msgid "Wid_th:" msgstr "Ши_рина:" -#: ../src/ui/dialog/export.cpp:242 +#: ../src/ui/dialog/export.cpp:246 msgid "_y0:" msgstr "_y0:" -#: ../src/ui/dialog/export.cpp:246 +#: ../src/ui/dialog/export.cpp:250 msgid "y_1:" msgstr "y_1:" -#: ../src/ui/dialog/export.cpp:250 +#: ../src/ui/dialog/export.cpp:254 msgid "Hei_ght:" msgstr "Ви_сота:" -#: ../src/ui/dialog/export.cpp:265 +#: ../src/ui/dialog/export.cpp:269 msgid "Image size" msgstr "Розмір зображення" -#: ../src/ui/dialog/export.cpp:283 ../src/live_effects/lpe-bendpath.cpp:54 +#: ../src/ui/dialog/export.cpp:287 ../src/live_effects/lpe-bendpath.cpp:54 #: ../src/live_effects/lpe-patternalongpath.cpp:62 -#: ../src/ui/dialog/transformation.cpp:79 ../src/ui/widget/page-sizer.cpp:238 +#: ../src/ui/dialog/transformation.cpp:80 ../src/ui/widget/page-sizer.cpp:236 msgid "_Width:" msgstr "_Ширина:" -#: ../src/ui/dialog/export.cpp:283 ../src/ui/dialog/export.cpp:294 +#: ../src/ui/dialog/export.cpp:287 ../src/ui/dialog/export.cpp:298 msgid "pixels at" msgstr "точок" -#: ../src/ui/dialog/export.cpp:289 +#: ../src/ui/dialog/export.cpp:293 msgid "dp_i" msgstr "dp_i" -#: ../src/ui/dialog/export.cpp:294 ../src/ui/dialog/transformation.cpp:81 -#: ../src/ui/widget/page-sizer.cpp:239 +#: ../src/ui/dialog/export.cpp:298 ../src/ui/dialog/transformation.cpp:82 +#: ../src/ui/widget/page-sizer.cpp:237 msgid "_Height:" msgstr "_Висота:" -#: ../src/ui/dialog/export.cpp:302 -#: ../src/ui/dialog/inkscape-preferences.cpp:1432 -#: ../src/ui/dialog/inkscape-preferences.cpp:1435 -#: ../src/ui/dialog/inkscape-preferences.cpp:1447 +#: ../src/ui/dialog/export.cpp:306 +#: ../src/ui/dialog/inkscape-preferences.cpp:1436 +#: ../src/ui/dialog/inkscape-preferences.cpp:1439 +#: ../src/ui/dialog/inkscape-preferences.cpp:1451 msgid "dpi" msgstr "т/д" -#: ../src/ui/dialog/export.cpp:310 +#: ../src/ui/dialog/export.cpp:314 msgid "_Filename" msgstr "_Назва файла" -#: ../src/ui/dialog/export.cpp:352 +#: ../src/ui/dialog/export.cpp:356 msgid "Export the bitmap file with these settings" msgstr "Експортувати файл з цими параметрами" -#: ../src/ui/dialog/export.cpp:606 +#: ../src/ui/dialog/export.cpp:607 #, c-format msgid "B_atch export %d selected object" msgid_plural "B_atch export %d selected objects" @@ -4352,75 +4352,75 @@ msgstr[0] "Па_кетний експорт %d позначеного об'єк msgstr[1] "Па_кетний експорт %d позначених об'єктів" msgstr[2] "Па_кетний експорт %d позначених об'єктів" -#: ../src/ui/dialog/export.cpp:922 +#: ../src/ui/dialog/export.cpp:923 msgid "Export in progress" msgstr "Триває експортування" -#: ../src/ui/dialog/export.cpp:1006 +#: ../src/ui/dialog/export.cpp:1013 msgid "No items selected." msgstr "Не позначено жодного пункту." -#: ../src/ui/dialog/export.cpp:1010 ../src/ui/dialog/export.cpp:1012 +#: ../src/ui/dialog/export.cpp:1017 ../src/ui/dialog/export.cpp:1019 msgid "Exporting %1 files" msgstr "Експортування %1 файлів" -#: ../src/ui/dialog/export.cpp:1052 ../src/ui/dialog/export.cpp:1054 +#: ../src/ui/dialog/export.cpp:1059 ../src/ui/dialog/export.cpp:1061 #, c-format msgid "Exporting file %s..." msgstr "Експортування файла %s…" -#: ../src/ui/dialog/export.cpp:1063 ../src/ui/dialog/export.cpp:1154 +#: ../src/ui/dialog/export.cpp:1070 ../src/ui/dialog/export.cpp:1161 #, c-format msgid "Could not export to filename %s.\n" msgstr "Не вдається експортувати до файла %s.\n" -#: ../src/ui/dialog/export.cpp:1066 +#: ../src/ui/dialog/export.cpp:1073 #, c-format msgid "Could not export to filename %s." msgstr "Не вдалося експортувати до файла %s." -#: ../src/ui/dialog/export.cpp:1081 +#: ../src/ui/dialog/export.cpp:1088 #, c-format msgid "Successfully exported %d files from %d selected items." msgstr "Успішно експортовано %d файлів з %d позначених пунктів." -#: ../src/ui/dialog/export.cpp:1092 +#: ../src/ui/dialog/export.cpp:1099 msgid "You have to enter a filename." msgstr "Слід вказати назву файла." -#: ../src/ui/dialog/export.cpp:1093 +#: ../src/ui/dialog/export.cpp:1100 msgid "You have to enter a filename" msgstr "Необхідно ввести назву файла" -#: ../src/ui/dialog/export.cpp:1107 +#: ../src/ui/dialog/export.cpp:1114 msgid "The chosen area to be exported is invalid." msgstr "Некоректна область для експортування." -#: ../src/ui/dialog/export.cpp:1108 +#: ../src/ui/dialog/export.cpp:1115 msgid "The chosen area to be exported is invalid" msgstr "Некоректна область для експорту" -#: ../src/ui/dialog/export.cpp:1123 +#: ../src/ui/dialog/export.cpp:1130 #, c-format msgid "Directory %s does not exist or is not a directory.\n" msgstr "Каталог %s не існує, або ж це не каталог.\n" #. TRANSLATORS: %1 will be the filename, %2 the width, and %3 the height of the image -#: ../src/ui/dialog/export.cpp:1137 ../src/ui/dialog/export.cpp:1139 +#: ../src/ui/dialog/export.cpp:1144 ../src/ui/dialog/export.cpp:1146 msgid "Exporting %1 (%2 x %3)" msgstr "Експортування %1 (%2 ⨯ %3)" -#: ../src/ui/dialog/export.cpp:1165 +#: ../src/ui/dialog/export.cpp:1172 #, c-format msgid "Drawing exported to %s." msgstr "Малюнок експортовано до %s." -#: ../src/ui/dialog/export.cpp:1169 +#: ../src/ui/dialog/export.cpp:1176 msgid "Export aborted." msgstr "Експорт перервано." -#: ../src/ui/dialog/export.cpp:1287 ../src/ui/dialog/export.cpp:1321 -#: ../src/shortcuts.cpp:336 +#: ../src/ui/dialog/export.cpp:1294 ../src/ui/dialog/export.cpp:1328 +#: ../src/shortcuts.cpp:337 msgid "Select a filename for exporting" msgstr "Виберіть назву файла для експорту" @@ -4503,7 +4503,7 @@ msgstr "Виправити правопис" msgid "_Font" msgstr "_Шрифт" -#: ../src/ui/dialog/text-edit.cpp:72 ../src/menus-skeleton.h:249 +#: ../src/ui/dialog/text-edit.cpp:72 ../src/menus-skeleton.h:248 #: ../src/ui/dialog/find.cpp:77 msgid "_Text" msgstr "_Текст" @@ -4517,31 +4517,31 @@ msgid "AaBbCcIiPpQq12369$€¢?.;/()" msgstr "АаБбВвЇїЄєҐґIiPpQq12369$€¢?.;/()" #. Align buttons -#: ../src/ui/dialog/text-edit.cpp:97 ../src/widgets/text-toolbar.cpp:1358 -#: ../src/widgets/text-toolbar.cpp:1359 +#: ../src/ui/dialog/text-edit.cpp:97 ../src/widgets/text-toolbar.cpp:1349 +#: ../src/widgets/text-toolbar.cpp:1350 msgid "Align left" msgstr "Вирівнювання ліворуч" -#: ../src/ui/dialog/text-edit.cpp:98 ../src/widgets/text-toolbar.cpp:1366 -#: ../src/widgets/text-toolbar.cpp:1367 +#: ../src/ui/dialog/text-edit.cpp:98 ../src/widgets/text-toolbar.cpp:1357 +#: ../src/widgets/text-toolbar.cpp:1358 msgid "Align center" msgstr "Посередині" -#: ../src/ui/dialog/text-edit.cpp:99 ../src/widgets/text-toolbar.cpp:1374 -#: ../src/widgets/text-toolbar.cpp:1375 +#: ../src/ui/dialog/text-edit.cpp:99 ../src/widgets/text-toolbar.cpp:1365 +#: ../src/widgets/text-toolbar.cpp:1366 msgid "Align right" msgstr "Вирівнювання праворуч" -#: ../src/ui/dialog/text-edit.cpp:100 ../src/widgets/text-toolbar.cpp:1383 +#: ../src/ui/dialog/text-edit.cpp:100 ../src/widgets/text-toolbar.cpp:1374 msgid "Justify (only flowed text)" msgstr "Вирівняти раз шириною (лише неконтурний текст)" #. Direction buttons -#: ../src/ui/dialog/text-edit.cpp:109 ../src/widgets/text-toolbar.cpp:1418 +#: ../src/ui/dialog/text-edit.cpp:109 ../src/widgets/text-toolbar.cpp:1409 msgid "Horizontal text" msgstr "Горизонтальний текст" -#: ../src/ui/dialog/text-edit.cpp:110 ../src/widgets/text-toolbar.cpp:1425 +#: ../src/ui/dialog/text-edit.cpp:110 ../src/widgets/text-toolbar.cpp:1416 msgid "Vertical text" msgstr "Вертикальний текст" @@ -4554,7 +4554,7 @@ msgid "Text path offset" msgstr "Відступ тексту від контуру" #: ../src/ui/dialog/text-edit.cpp:588 ../src/ui/dialog/text-edit.cpp:662 -#: ../src/text-context.cpp:1518 +#: ../src/text-context.cpp:1519 msgid "Set text style" msgstr "Встановити стиль тексту" @@ -4667,112 +4667,112 @@ msgstr "Вилучити вузол" msgid "Change attribute" msgstr "Змінити атрибут" -#: ../src/display/canvas-axonomgrid.cpp:369 ../src/display/canvas-grid.cpp:746 +#: ../src/display/canvas-axonomgrid.cpp:316 ../src/display/canvas-grid.cpp:693 msgid "Grid _units:" msgstr "О_диниці сітки:" -#: ../src/display/canvas-axonomgrid.cpp:371 ../src/display/canvas-grid.cpp:748 +#: ../src/display/canvas-axonomgrid.cpp:318 ../src/display/canvas-grid.cpp:695 msgid "_Origin X:" msgstr "_Початок за X:" -#: ../src/display/canvas-axonomgrid.cpp:371 ../src/display/canvas-grid.cpp:748 +#: ../src/display/canvas-axonomgrid.cpp:318 ../src/display/canvas-grid.cpp:695 #: ../src/ui/dialog/inkscape-preferences.cpp:735 #: ../src/ui/dialog/inkscape-preferences.cpp:760 msgid "X coordinate of grid origin" msgstr "Координата X початку сітки" -#: ../src/display/canvas-axonomgrid.cpp:373 ../src/display/canvas-grid.cpp:750 +#: ../src/display/canvas-axonomgrid.cpp:320 ../src/display/canvas-grid.cpp:697 msgid "O_rigin Y:" msgstr "П_очаток по Y:" -#: ../src/display/canvas-axonomgrid.cpp:373 ../src/display/canvas-grid.cpp:750 +#: ../src/display/canvas-axonomgrid.cpp:320 ../src/display/canvas-grid.cpp:697 #: ../src/ui/dialog/inkscape-preferences.cpp:736 #: ../src/ui/dialog/inkscape-preferences.cpp:761 msgid "Y coordinate of grid origin" msgstr "Координата Y початку сітки" -#: ../src/display/canvas-axonomgrid.cpp:375 ../src/display/canvas-grid.cpp:754 +#: ../src/display/canvas-axonomgrid.cpp:322 ../src/display/canvas-grid.cpp:701 msgid "Spacing _Y:" msgstr "Інтервал за _Y:" -#: ../src/display/canvas-axonomgrid.cpp:375 +#: ../src/display/canvas-axonomgrid.cpp:322 #: ../src/ui/dialog/inkscape-preferences.cpp:764 msgid "Base length of z-axis" msgstr "Базова довжина вісі z" -#: ../src/display/canvas-axonomgrid.cpp:377 +#: ../src/display/canvas-axonomgrid.cpp:324 #: ../src/ui/dialog/inkscape-preferences.cpp:767 -#: ../src/widgets/box3d-toolbar.cpp:320 +#: ../src/widgets/box3d-toolbar.cpp:315 msgid "Angle X:" msgstr "Кут X:" -#: ../src/display/canvas-axonomgrid.cpp:377 +#: ../src/display/canvas-axonomgrid.cpp:324 #: ../src/ui/dialog/inkscape-preferences.cpp:767 msgid "Angle of x-axis" msgstr "Кут вісі x" -#: ../src/display/canvas-axonomgrid.cpp:379 +#: ../src/display/canvas-axonomgrid.cpp:326 #: ../src/ui/dialog/inkscape-preferences.cpp:768 -#: ../src/widgets/box3d-toolbar.cpp:399 +#: ../src/widgets/box3d-toolbar.cpp:394 msgid "Angle Z:" msgstr "Кут Z:" -#: ../src/display/canvas-axonomgrid.cpp:379 +#: ../src/display/canvas-axonomgrid.cpp:326 #: ../src/ui/dialog/inkscape-preferences.cpp:768 msgid "Angle of z-axis" msgstr "Кут вісі z" -#: ../src/display/canvas-axonomgrid.cpp:383 ../src/display/canvas-grid.cpp:758 +#: ../src/display/canvas-axonomgrid.cpp:330 ../src/display/canvas-grid.cpp:705 msgid "Minor grid line _color:" msgstr "Колір _другорядної лінії сітки:" -#: ../src/display/canvas-axonomgrid.cpp:383 ../src/display/canvas-grid.cpp:758 +#: ../src/display/canvas-axonomgrid.cpp:330 ../src/display/canvas-grid.cpp:705 #: ../src/ui/dialog/inkscape-preferences.cpp:719 msgid "Minor grid line color" msgstr "Колір другорядних ліній сітки" -#: ../src/display/canvas-axonomgrid.cpp:383 ../src/display/canvas-grid.cpp:758 +#: ../src/display/canvas-axonomgrid.cpp:330 ../src/display/canvas-grid.cpp:705 msgid "Color of the minor grid lines" msgstr "Колір другорядних ліній сітки" -#: ../src/display/canvas-axonomgrid.cpp:388 ../src/display/canvas-grid.cpp:763 +#: ../src/display/canvas-axonomgrid.cpp:335 ../src/display/canvas-grid.cpp:710 msgid "Ma_jor grid line color:" msgstr "Колір о_сновної лінії сітки:" -#: ../src/display/canvas-axonomgrid.cpp:388 ../src/display/canvas-grid.cpp:763 +#: ../src/display/canvas-axonomgrid.cpp:335 ../src/display/canvas-grid.cpp:710 #: ../src/ui/dialog/inkscape-preferences.cpp:721 msgid "Major grid line color" msgstr "Колір основних ліній сітки" -#: ../src/display/canvas-axonomgrid.cpp:389 ../src/display/canvas-grid.cpp:764 +#: ../src/display/canvas-axonomgrid.cpp:336 ../src/display/canvas-grid.cpp:711 msgid "Color of the major (highlighted) grid lines" msgstr "Колір основних (підсвічених) ліній сітки" -#: ../src/display/canvas-axonomgrid.cpp:393 ../src/display/canvas-grid.cpp:768 +#: ../src/display/canvas-axonomgrid.cpp:340 ../src/display/canvas-grid.cpp:715 msgid "_Major grid line every:" msgstr "Осно_вна лінія через кожні:" -#: ../src/display/canvas-axonomgrid.cpp:393 ../src/display/canvas-grid.cpp:768 +#: ../src/display/canvas-axonomgrid.cpp:340 ../src/display/canvas-grid.cpp:715 msgid "lines" msgstr "ліній" -#: ../src/display/canvas-grid.cpp:62 +#: ../src/display/canvas-grid.cpp:63 msgid "Rectangular grid" msgstr "Прямокутна сітка" -#: ../src/display/canvas-grid.cpp:63 +#: ../src/display/canvas-grid.cpp:64 msgid "Axonometric grid" msgstr "Аксонометрична сітка" -#: ../src/display/canvas-grid.cpp:274 +#: ../src/display/canvas-grid.cpp:275 msgid "Create new grid" msgstr "Створити нову сітку" -#: ../src/display/canvas-grid.cpp:340 +#: ../src/display/canvas-grid.cpp:341 msgid "_Enabled" msgstr "_Увімкнено" -#: ../src/display/canvas-grid.cpp:341 +#: ../src/display/canvas-grid.cpp:342 msgid "" "Determines whether to snap to this grid or not. Can be 'on' for invisible " "grids." @@ -4780,11 +4780,11 @@ msgstr "" "Визначає чи будуть об'єкти прилипати до цієї сітки, чи ні. Може бути " "увімкнено для невидимої сітки." -#: ../src/display/canvas-grid.cpp:345 +#: ../src/display/canvas-grid.cpp:346 msgid "Snap to visible _grid lines only" msgstr "Прилипати лише до в_идимих ліній сітки" -#: ../src/display/canvas-grid.cpp:346 +#: ../src/display/canvas-grid.cpp:347 msgid "" "When zoomed out, not all grid lines will be displayed. Only the visible ones " "will be snapped to" @@ -4792,11 +4792,11 @@ msgstr "" "Під час зменшення масштабу програма зменшуватиме кількість показаних ліній " "сітки. Прилипання відбуватиметься лише до видимих ліній." -#: ../src/display/canvas-grid.cpp:350 +#: ../src/display/canvas-grid.cpp:351 msgid "_Visible" msgstr "_Видимість" -#: ../src/display/canvas-grid.cpp:351 +#: ../src/display/canvas-grid.cpp:352 msgid "" "Determines whether the grid is displayed or not. Objects are still snapped " "to invisible grids." @@ -4804,25 +4804,25 @@ msgstr "" "Визначає чи буде показано сітку, чи ні. Об'єкти, як і раніше, буде " "прив'язано до невидимої сітки." -#: ../src/display/canvas-grid.cpp:752 +#: ../src/display/canvas-grid.cpp:699 msgid "Spacing _X:" msgstr "Інтервал за _X:" -#: ../src/display/canvas-grid.cpp:752 +#: ../src/display/canvas-grid.cpp:699 #: ../src/ui/dialog/inkscape-preferences.cpp:741 msgid "Distance between vertical grid lines" msgstr "Відстань між вертикальними лініями сітки" -#: ../src/display/canvas-grid.cpp:754 +#: ../src/display/canvas-grid.cpp:701 #: ../src/ui/dialog/inkscape-preferences.cpp:742 msgid "Distance between horizontal grid lines" msgstr "Відстань між горизонтальними лініями сітки" -#: ../src/display/canvas-grid.cpp:785 +#: ../src/display/canvas-grid.cpp:732 msgid "_Show dots instead of lines" msgstr "_Показувати точки замість ліній" -#: ../src/display/canvas-grid.cpp:786 +#: ../src/display/canvas-grid.cpp:733 msgid "If set, displays dots at gridpoints instead of gridlines" msgstr "Якщо встановлено, замість напрямних відображаються точки сітки" @@ -4972,11 +4972,11 @@ msgstr "Середня точка рамки-обгортки" msgid "Bounding box side midpoint" msgstr "Бокова середня точка рамки-обгортки" -#: ../src/display/snap-indicator.cpp:194 ../src/ui/tool/node.cpp:1310 +#: ../src/display/snap-indicator.cpp:194 ../src/ui/tool/node.cpp:1316 msgid "Smooth node" msgstr "Гладкий вузол" -#: ../src/display/snap-indicator.cpp:197 ../src/ui/tool/node.cpp:1309 +#: ../src/display/snap-indicator.cpp:197 ../src/ui/tool/node.cpp:1315 msgid "Cusp node" msgstr "Гострий вузол" @@ -5041,7 +5041,7 @@ msgstr "Новий документ %d" msgid "Memory document %1" msgstr "Документ у пам'яті %1" -#: ../src/document.cpp:707 +#: ../src/document.cpp:713 #, c-format msgid "Unnamed document %d" msgstr "Документ без назви %d" @@ -5141,7 +5141,7 @@ msgstr "Малювання штриха гумки" msgid "Draw eraser stroke" msgstr "Намалювати штрих гумкою" -#: ../src/event-context.cpp:675 +#: ../src/event-context.cpp:668 msgid "Space+mouse move to pan canvas" msgstr "Пробіл+пересування миші для переміщення полотна" @@ -5150,11 +5150,11 @@ msgid "[Unchanged]" msgstr "(Не змінено)" #. Edit -#: ../src/event-log.cpp:275 ../src/event-log.cpp:278 ../src/verbs.cpp:2328 +#: ../src/event-log.cpp:275 ../src/event-log.cpp:278 ../src/verbs.cpp:2383 msgid "_Undo" msgstr "В_ернути" -#: ../src/event-log.cpp:285 ../src/event-log.cpp:289 ../src/verbs.cpp:2330 +#: ../src/event-log.cpp:285 ../src/event-log.cpp:289 ../src/verbs.cpp:2385 msgid "_Redo" msgstr "Повт_орити" @@ -5182,7 +5182,7 @@ msgstr " опис: " msgid " (No preferences)" msgstr " (Немає уподобань)" -#: ../src/extension/effect.h:70 ../src/verbs.cpp:2101 +#: ../src/extension/effect.h:70 ../src/verbs.cpp:2156 msgid "Extensions" msgstr "Додатки" @@ -5324,12 +5324,12 @@ msgstr "Адаптивна постеризація" #: ../src/extension/internal/bitmap/adaptiveThreshold.cpp:41 #: ../src/extension/internal/bitmap/raise.cpp:42 #: ../src/extension/internal/bitmap/sample.cpp:41 -#: ../src/extension/internal/bluredge.cpp:137 +#: ../src/extension/internal/bluredge.cpp:138 #: ../src/ui/dialog/object-attributes.cpp:68 #: ../src/ui/dialog/object-attributes.cpp:76 -#: ../src/widgets/calligraphy-toolbar.cpp:451 -#: ../src/widgets/erasor-toolbar.cpp:149 ../src/widgets/spray-toolbar.cpp:132 -#: ../src/widgets/tweak-toolbar.cpp:146 +#: ../src/widgets/calligraphy-toolbar.cpp:447 +#: ../src/widgets/eraser-toolbar.cpp:145 ../src/widgets/spray-toolbar.cpp:128 +#: ../src/widgets/tweak-toolbar.cpp:142 #: ../share/extensions/foldablebox.inx.h:2 msgid "Width:" msgstr "Ширина:" @@ -5403,9 +5403,9 @@ msgstr "Додати шум" #: ../src/extension/internal/filter/color.h:1497 #: ../src/extension/internal/filter/color.h:1585 #: ../src/extension/internal/filter/distort.h:69 -#: ../src/extension/internal/filter/morphology.h:60 ../src/rdf.cpp:241 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2613 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2692 +#: ../src/extension/internal/filter/morphology.h:60 ../src/rdf.cpp:244 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2626 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2705 #: ../src/ui/dialog/object-attributes.cpp:49 #: ../share/extensions/jessyInk_effects.inx.h:5 #: ../share/extensions/jessyInk_export.inx.h:3 @@ -5457,7 +5457,7 @@ msgstr "Розмиття" #: ../src/extension/internal/bitmap/oilPaint.cpp:39 #: ../src/extension/internal/bitmap/sharpen.cpp:40 #: ../src/extension/internal/bitmap/unsharpmask.cpp:43 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2670 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2683 msgid "Radius:" msgstr "Радіус:" @@ -5596,7 +5596,7 @@ msgstr "Обертання карти кольорів" #: ../src/extension/internal/bitmap/cycleColormap.cpp:39 #: ../src/extension/internal/bitmap/spread.cpp:39 #: ../src/extension/internal/bitmap/unsharpmask.cpp:45 -#: ../src/widgets/spray-toolbar.cpp:224 +#: ../src/widgets/spray-toolbar.cpp:220 msgid "Amount:" msgstr "Кількість:" @@ -5784,8 +5784,8 @@ msgstr "" "фарбою" #: ../src/extension/internal/bitmap/opacity.cpp:40 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2660 -#: ../src/widgets/dropper-toolbar.cpp:111 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2673 +#: ../src/widgets/dropper-toolbar.cpp:107 msgid "Opacity:" msgstr "Непрозорість:" @@ -5935,23 +5935,23 @@ msgstr "Довжина хвилі:" msgid "Alter selected bitmap(s) along sine wave" msgstr "Змінити вибрані растрові зображення за хвилею синусоїди" -#: ../src/extension/internal/bluredge.cpp:135 +#: ../src/extension/internal/bluredge.cpp:136 msgid "Inset/Outset Halo" msgstr "Втягування/Розтягування ореола" -#: ../src/extension/internal/bluredge.cpp:137 +#: ../src/extension/internal/bluredge.cpp:138 msgid "Width in px of the halo" msgstr "Ширина ореолу у точках" -#: ../src/extension/internal/bluredge.cpp:138 +#: ../src/extension/internal/bluredge.cpp:139 msgid "Number of steps:" msgstr "Кількість кроків:" -#: ../src/extension/internal/bluredge.cpp:138 +#: ../src/extension/internal/bluredge.cpp:139 msgid "Number of inset/outset copies of the object to make" msgstr "Кількість копій втягування/розтягування об'єкта" -#: ../src/extension/internal/bluredge.cpp:142 +#: ../src/extension/internal/bluredge.cpp:143 #: ../share/extensions/extrude.inx.h:5 #: ../share/extensions/generate_voronoi.inx.h:9 #: ../share/extensions/interp.inx.h:7 ../share/extensions/motion.inx.h:4 @@ -5984,7 +5984,7 @@ msgstr "PostScript level 2" #: ../src/extension/internal/cairo-ps-out.cpp:335 #: ../src/extension/internal/cairo-ps-out.cpp:376 #: ../src/extension/internal/cairo-renderer-pdf-out.cpp:250 -#: ../src/extension/internal/emf-win32-inout.cpp:2553 +#: ../src/extension/internal/emf-win32-inout.cpp:2557 msgid "Convert texts to paths" msgstr "Перетворити текст на контури" @@ -6152,39 +6152,39 @@ msgstr "Файли обміну презентаціями Corel DRAW (*.cmx)" msgid "Open presentation exchange files saved in Corel DRAW" msgstr "Відкрити файли обміну презентаціями, збережені за допомогою Corel DRAW" -#: ../src/extension/internal/emf-win32-inout.cpp:2523 +#: ../src/extension/internal/emf-win32-inout.cpp:2527 msgid "EMF Input" msgstr "Імпорт EMF" -#: ../src/extension/internal/emf-win32-inout.cpp:2528 +#: ../src/extension/internal/emf-win32-inout.cpp:2532 msgid "Enhanced Metafiles (*.emf)" msgstr "Розширений метафайл (*.emf)" -#: ../src/extension/internal/emf-win32-inout.cpp:2529 +#: ../src/extension/internal/emf-win32-inout.cpp:2533 msgid "Enhanced Metafiles" msgstr "Розширені метафайли" -#: ../src/extension/internal/emf-win32-inout.cpp:2537 +#: ../src/extension/internal/emf-win32-inout.cpp:2541 msgid "WMF Input" msgstr "Імпорт WMF" -#: ../src/extension/internal/emf-win32-inout.cpp:2542 +#: ../src/extension/internal/emf-win32-inout.cpp:2546 msgid "Windows Metafiles (*.wmf)" msgstr "Метафайл Windows (*.wmf)" -#: ../src/extension/internal/emf-win32-inout.cpp:2543 +#: ../src/extension/internal/emf-win32-inout.cpp:2547 msgid "Windows Metafiles" msgstr "Метафайл Windows" -#: ../src/extension/internal/emf-win32-inout.cpp:2551 +#: ../src/extension/internal/emf-win32-inout.cpp:2555 msgid "EMF Output" msgstr "Експорт до EMF" -#: ../src/extension/internal/emf-win32-inout.cpp:2557 +#: ../src/extension/internal/emf-win32-inout.cpp:2561 msgid "Enhanced Metafile (*.emf)" msgstr "Розширений метафайл (*.emf)" -#: ../src/extension/internal/emf-win32-inout.cpp:2558 +#: ../src/extension/internal/emf-win32-inout.cpp:2562 msgid "Enhanced Metafile" msgstr "Розширений метафайл" @@ -6456,7 +6456,7 @@ msgstr "Ерозія" #: ../src/extension/internal/filter/blurs.h:336 #: ../src/extension/internal/filter/color.h:1205 #: ../src/extension/internal/filter/color.h:1317 -#: ../src/ui/dialog/document-properties.cpp:108 +#: ../src/ui/dialog/document-properties.cpp:107 msgid "Background color" msgstr "Колір тла" @@ -6517,7 +6517,7 @@ msgstr "Витискання джерела" #: ../src/extension/internal/filter/color.h:637 #: ../src/extension/internal/filter/color.h:821 #: ../src/extension/internal/filter/transparency.h:132 -#: ../src/filter-enums.cpp:100 ../src/flood-context.cpp:228 +#: ../src/filter-enums.cpp:100 ../src/flood-context.cpp:227 #: ../src/widgets/sp-color-icc-selector.cpp:355 #: ../src/widgets/sp-color-scales.cpp:429 #: ../src/widgets/sp-color-scales.cpp:430 @@ -6530,7 +6530,7 @@ msgstr "Червоний" #: ../src/extension/internal/filter/color.h:638 #: ../src/extension/internal/filter/color.h:822 #: ../src/extension/internal/filter/transparency.h:133 -#: ../src/filter-enums.cpp:101 ../src/flood-context.cpp:229 +#: ../src/filter-enums.cpp:101 ../src/flood-context.cpp:228 #: ../src/widgets/sp-color-icc-selector.cpp:356 #: ../src/widgets/sp-color-scales.cpp:432 #: ../src/widgets/sp-color-scales.cpp:433 @@ -6543,7 +6543,7 @@ msgstr "Зелений" #: ../src/extension/internal/filter/color.h:639 #: ../src/extension/internal/filter/color.h:823 #: ../src/extension/internal/filter/transparency.h:134 -#: ../src/filter-enums.cpp:102 ../src/flood-context.cpp:230 +#: ../src/filter-enums.cpp:102 ../src/flood-context.cpp:229 #: ../src/widgets/sp-color-icc-selector.cpp:357 #: ../src/widgets/sp-color-scales.cpp:435 #: ../src/widgets/sp-color-scales.cpp:436 @@ -6569,7 +6569,7 @@ msgstr "Розсіяний" #: ../src/extension/internal/filter/bumps.h:98 #: ../src/extension/internal/filter/bumps.h:329 #: ../src/libgdl/gdl-dock-placeholder.c:175 ../src/libgdl/gdl-dock.c:199 -#: ../src/widgets/rect-toolbar.cpp:332 +#: ../src/widgets/rect-toolbar.cpp:334 #: ../share/extensions/interp_att_g.inx.h:11 msgid "Height" msgstr "Висота" @@ -6581,10 +6581,10 @@ msgstr "Висота" #: ../src/extension/internal/filter/color.h:1113 #: ../src/extension/internal/filter/paint.h:86 #: ../src/extension/internal/filter/paint.h:592 -#: ../src/extension/internal/filter/paint.h:707 ../src/flood-context.cpp:233 +#: ../src/extension/internal/filter/paint.h:707 ../src/flood-context.cpp:232 #: ../src/widgets/sp-color-icc-selector.cpp:366 #: ../src/widgets/sp-color-scales.cpp:461 -#: ../src/widgets/sp-color-scales.cpp:462 ../src/widgets/tweak-toolbar.cpp:336 +#: ../src/widgets/sp-color-scales.cpp:462 ../src/widgets/tweak-toolbar.cpp:332 #: ../share/extensions/color_randomize.inx.h:5 msgid "Lightness" msgstr "Яскравість" @@ -6606,7 +6606,7 @@ msgstr "Джерело світла:" msgid "Distant" msgstr "Віддалене" -#: ../src/extension/internal/filter/bumps.h:106 ../src/helper/units.cpp:38 +#: ../src/extension/internal/filter/bumps.h:106 #: ../src/ui/dialog/inkscape-preferences.cpp:451 msgid "Point" msgstr "Точка" @@ -6696,7 +6696,7 @@ msgstr "Тло:" #: ../src/extension/internal/filter/bumps.h:322 #: ../src/extension/internal/filter/transparency.h:57 -#: ../src/filter-enums.cpp:29 ../src/selection-describer.cpp:56 +#: ../src/filter-enums.cpp:29 ../src/selection-describer.cpp:57 msgid "Image" msgstr "Зображення" @@ -6779,19 +6779,19 @@ msgstr "Малювання за каналами" #: ../src/extension/internal/filter/color.h:156 #: ../src/extension/internal/filter/color.h:257 -#: ../src/extension/internal/filter/paint.h:87 ../src/flood-context.cpp:232 -#: ../src/ui/dialog/inkscape-preferences.cpp:937 +#: ../src/extension/internal/filter/paint.h:87 ../src/flood-context.cpp:231 +#: ../src/ui/dialog/inkscape-preferences.cpp:941 #: ../src/widgets/sp-color-icc-selector.cpp:362 #: ../src/widgets/sp-color-icc-selector.cpp:367 #: ../src/widgets/sp-color-scales.cpp:458 -#: ../src/widgets/sp-color-scales.cpp:459 ../src/widgets/tweak-toolbar.cpp:320 +#: ../src/widgets/sp-color-scales.cpp:459 ../src/widgets/tweak-toolbar.cpp:316 #: ../share/extensions/color_randomize.inx.h:4 msgid "Saturation" msgstr "Насиченість" #: ../src/extension/internal/filter/color.h:160 #: ../src/extension/internal/filter/transparency.h:135 -#: ../src/filter-enums.cpp:103 ../src/flood-context.cpp:234 +#: ../src/filter-enums.cpp:103 ../src/flood-context.cpp:233 msgid "Alpha" msgstr "Альфа-канал" @@ -6957,7 +6957,7 @@ msgid "Fade to:" msgstr "Перетворення на:" #: ../src/extension/internal/filter/color.h:744 -#: ../src/ui/widget/selected-style.cpp:254 +#: ../src/ui/widget/selected-style.cpp:257 #: ../src/widgets/sp-color-icc-selector.cpp:372 #: ../src/widgets/sp-color-scales.cpp:492 #: ../src/widgets/sp-color-scales.cpp:493 @@ -6965,7 +6965,7 @@ msgid "Black" msgstr "Чорний" #: ../src/extension/internal/filter/color.h:745 -#: ../src/ui/widget/selected-style.cpp:250 +#: ../src/ui/widget/selected-style.cpp:253 msgid "White" msgstr "Білий" @@ -6988,7 +6988,7 @@ msgid "Customize greyscale components" msgstr "Налаштувати компоненти відтінків сірого" #: ../src/extension/internal/filter/color.h:905 -#: ../src/ui/widget/selected-style.cpp:246 +#: ../src/ui/widget/selected-style.cpp:249 msgid "Invert" msgstr "Інвертувати" @@ -7073,7 +7073,7 @@ msgstr "Зміщення червоного" #: ../src/extension/internal/filter/color.h:1307 #: ../src/extension/internal/filter/color.h:1310 #: ../src/extension/internal/filter/color.h:1313 -#: ../src/ui/dialog/input.cpp:1616 ../src/ui/dialog/layers.cpp:915 +#: ../src/ui/dialog/input.cpp:1616 ../src/ui/dialog/layers.cpp:916 msgid "X" msgstr "X" @@ -7216,8 +7216,8 @@ msgstr "Вихід" #: ../src/extension/internal/filter/distort.h:77 #: ../src/extension/internal/filter/textures.h:75 -#: ../src/ui/widget/selected-style.cpp:128 -#: ../src/ui/widget/style-swatch.cpp:127 +#: ../src/ui/widget/selected-style.cpp:131 +#: ../src/ui/widget/style-swatch.cpp:128 msgid "Stroke:" msgstr "Штрих:" @@ -7329,6 +7329,8 @@ msgid "Detect:" msgstr "Позначити:" #: ../src/extension/internal/filter/image.h:52 +#: ../src/ui/dialog/template-load-tab.cpp:96 +#: ../src/ui/dialog/template-load-tab.cpp:131 msgid "All" msgstr "Всі" @@ -7368,8 +7370,8 @@ msgstr "Відкрите" #: ../src/extension/internal/filter/morphology.h:65 #: ../src/libgdl/gdl-dock-placeholder.c:167 ../src/libgdl/gdl-dock.c:191 -#: ../src/widgets/rect-toolbar.cpp:315 ../src/widgets/spray-toolbar.cpp:132 -#: ../src/widgets/tweak-toolbar.cpp:146 +#: ../src/widgets/rect-toolbar.cpp:317 ../src/widgets/spray-toolbar.cpp:128 +#: ../src/widgets/tweak-toolbar.cpp:142 #: ../share/extensions/interp_att_g.inx.h:10 msgid "Width" msgstr "Ширина" @@ -7604,15 +7606,15 @@ msgstr "" "горизонтальних ліній" #: ../src/extension/internal/filter/paint.h:331 -#: ../src/ui/dialog/align-and-distribute.cpp:1048 -#: ../src/widgets/desktop-widget.cpp:2000 +#: ../src/ui/dialog/align-and-distribute.cpp:997 +#: ../src/widgets/desktop-widget.cpp:2004 msgid "Drawing" msgstr "Малюнок" #: ../src/extension/internal/filter/paint.h:335 #: ../src/extension/internal/filter/paint.h:496 #: ../src/extension/internal/filter/paint.h:590 -#: ../src/extension/internal/filter/paint.h:976 ../src/splivarot.cpp:1988 +#: ../src/extension/internal/filter/paint.h:976 ../src/splivarot.cpp:2024 msgid "Simplify" msgstr "Спростити" @@ -7883,7 +7885,7 @@ msgstr "Пляма від чорнила на пергаменті або гру msgid "Blend" msgstr "Накладення" -#: ../src/extension/internal/filter/transparency.h:55 ../src/rdf.cpp:258 +#: ../src/extension/internal/filter/transparency.h:55 ../src/rdf.cpp:261 msgid "Source:" msgstr "Джерело:" @@ -7893,10 +7895,10 @@ msgid "Background" msgstr "Тло" #: ../src/extension/internal/filter/transparency.h:59 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2610 -#: ../src/ui/dialog/input.cpp:1088 ../src/widgets/erasor-toolbar.cpp:127 -#: ../src/widgets/pencil-toolbar.cpp:161 ../src/widgets/spray-toolbar.cpp:202 -#: ../src/widgets/tweak-toolbar.cpp:272 ../share/extensions/extrude.inx.h:2 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2623 +#: ../src/ui/dialog/input.cpp:1088 ../src/widgets/eraser-toolbar.cpp:123 +#: ../src/widgets/pencil-toolbar.cpp:156 ../src/widgets/spray-toolbar.cpp:198 +#: ../src/widgets/tweak-toolbar.cpp:268 ../share/extensions/extrude.inx.h:2 #: ../share/extensions/triangle.inx.h:8 msgid "Mode:" msgstr "Режим:" @@ -7990,7 +7992,7 @@ msgstr "Градієнти, що використовуються у GIMP" #: ../src/extension/internal/grid.cpp:209 ../src/ui/widget/panel.cpp:117 msgid "Grid" -msgstr "Сітку" +msgstr "Сітка" #: ../src/extension/internal/grid.cpp:211 msgid "Line Width:" @@ -8016,11 +8018,12 @@ msgstr "Вертикальний зсув:" #: ../share/extensions/draw_from_triangle.inx.h:58 #: ../share/extensions/eqtexsvg.inx.h:4 #: ../share/extensions/foldablebox.inx.h:9 -#: ../share/extensions/funcplot.inx.h:38 ../share/extensions/gears.inx.h:11 +#: ../share/extensions/funcplot.inx.h:38 #: ../share/extensions/grid_cartesian.inx.h:23 #: ../share/extensions/grid_isometric.inx.h:11 #: ../share/extensions/grid_polar.inx.h:22 -#: ../share/extensions/guides_creator.inx.h:20 +#: ../share/extensions/guides_creator.inx.h:19 +#: ../share/extensions/hershey.inx.h:52 #: ../share/extensions/layout_nup.inx.h:35 #: ../share/extensions/lindenmayer.inx.h:34 #: ../share/extensions/param_curves.inx.h:30 @@ -8031,6 +8034,8 @@ msgstr "Вертикальний зсув:" #: ../share/extensions/render_barcode.inx.h:5 #: ../share/extensions/render_barcode_datamatrix.inx.h:5 #: ../share/extensions/render_barcode_qrcode.inx.h:18 +#: ../share/extensions/render_gears.inx.h:11 +#: ../share/extensions/render_gear_rack.inx.h:5 #: ../share/extensions/rtree.inx.h:4 ../share/extensions/spirograph.inx.h:10 #: ../share/extensions/svgcalendar.inx.h:38 #: ../share/extensions/triangle.inx.h:14 @@ -8039,9 +8044,9 @@ msgid "Render" msgstr "Відтворення" #: ../src/extension/internal/grid.cpp:220 -#: ../src/ui/dialog/document-properties.cpp:148 +#: ../src/ui/dialog/document-properties.cpp:147 #: ../src/ui/dialog/inkscape-preferences.cpp:776 -#: ../src/widgets/toolbox.cpp:1826 +#: ../src/widgets/toolbox.cpp:1820 msgid "Grids" msgstr "Сітки" @@ -8384,47 +8389,47 @@ msgstr "Контролює, чи буде показано параметри е msgid "Format autodetect failed. The file is being opened as SVG." msgstr "Не вдається визначити формат файла. Файл відкривається як SVG." -#: ../src/file.cpp:153 +#: ../src/file.cpp:179 msgid "default.svg" msgstr "типовий.svg" -#: ../src/file.cpp:284 +#: ../src/file.cpp:318 msgid "Broken links have been changed to point to existing files." msgstr "Помилкові посилання змінено так, щоб вони вказували на поточні файли." -#: ../src/file.cpp:295 ../src/file.cpp:1218 +#: ../src/file.cpp:329 ../src/file.cpp:1253 #, c-format msgid "Failed to load the requested file %s" msgstr "Не вдається завантажити потрібний файл %s" -#: ../src/file.cpp:321 +#: ../src/file.cpp:355 msgid "Document not saved yet. Cannot revert." msgstr "" "Документ ще не був збережений. Неможливо повернутись до попереднього стану." -#: ../src/file.cpp:327 +#: ../src/file.cpp:361 #, c-format msgid "Changes will be lost! Are you sure you want to reload document %s?" msgstr "" "Зміни будуть втрачені! Ви впевнені, що бажаєте завантажити документ %s знову?" -#: ../src/file.cpp:356 +#: ../src/file.cpp:390 msgid "Document reverted." msgstr "Документ повернутий до попереднього стану." -#: ../src/file.cpp:358 +#: ../src/file.cpp:392 msgid "Document not reverted." msgstr "Документ не повернутий до попереднього стану." -#: ../src/file.cpp:508 +#: ../src/file.cpp:542 msgid "Select file to open" msgstr "Виберіть файл" -#: ../src/file.cpp:592 +#: ../src/file.cpp:624 msgid "Clean up document" msgstr "Очистити документ" -#: ../src/file.cpp:597 +#: ../src/file.cpp:631 #, c-format msgid "Removed %i unused definition in <defs>." msgid_plural "Removed %i unused definitions in <defs>." @@ -8432,11 +8437,11 @@ msgstr[0] "Вилучено %i непотрібний елемент у & msgstr[1] "Вилучено %i непотрібні елементи у <defs>." msgstr[2] "Вилучено %i непотрібних елементів у <defs>." -#: ../src/file.cpp:602 +#: ../src/file.cpp:636 msgid "No unused definitions in <defs>." msgstr "Немає непотрібних елементів у <defs>." -#: ../src/file.cpp:633 +#: ../src/file.cpp:668 #, c-format msgid "" "No Inkscape extension found to save document (%s). This may have been " @@ -8445,12 +8450,12 @@ msgstr "" "Не знайдено модуль збереження документа (%s). Можливо, невідомий суфікс " "назви файла." -#: ../src/file.cpp:634 ../src/file.cpp:642 ../src/file.cpp:650 -#: ../src/file.cpp:656 ../src/file.cpp:661 +#: ../src/file.cpp:669 ../src/file.cpp:677 ../src/file.cpp:685 +#: ../src/file.cpp:691 ../src/file.cpp:696 msgid "Document not saved." msgstr "Документ не збережено." -#: ../src/file.cpp:641 +#: ../src/file.cpp:676 #, c-format msgid "" "File %s is write protected. Please remove write protection and try again." @@ -8458,60 +8463,60 @@ msgstr "" "Файл %s захищено від запису. Будь ласка, зніміть захист від запису і " "повторіть спробу." -#: ../src/file.cpp:649 +#: ../src/file.cpp:684 #, c-format msgid "File %s could not be saved." msgstr "Файл %s неможливо зберегти." -#: ../src/file.cpp:679 ../src/file.cpp:681 +#: ../src/file.cpp:714 ../src/file.cpp:716 msgid "Document saved." msgstr "Документ збережено." #. We are saving for the first time; create a unique default filename -#: ../src/file.cpp:829 ../src/file.cpp:1381 +#: ../src/file.cpp:864 ../src/file.cpp:1416 #, c-format msgid "drawing%s" msgstr "рисунок%s" -#: ../src/file.cpp:835 +#: ../src/file.cpp:870 #, c-format msgid "drawing-%d%s" msgstr "рисунок-%d%s" -#: ../src/file.cpp:839 +#: ../src/file.cpp:874 #, c-format msgid "%s" msgstr "%s" -#: ../src/file.cpp:854 +#: ../src/file.cpp:889 msgid "Select file to save a copy to" msgstr "Оберіть файл для збереження копії" -#: ../src/file.cpp:856 +#: ../src/file.cpp:891 msgid "Select file to save to" msgstr "Виберіть файл для збереження" -#: ../src/file.cpp:962 ../src/file.cpp:964 +#: ../src/file.cpp:997 ../src/file.cpp:999 msgid "No changes need to be saved." msgstr "Файл не було змінено. Збереження непотрібне." -#: ../src/file.cpp:983 +#: ../src/file.cpp:1018 msgid "Saving document..." msgstr "Збереження документа…" -#: ../src/file.cpp:1215 ../src/ui/dialog/ocaldialogs.cpp:1244 +#: ../src/file.cpp:1250 ../src/ui/dialog/ocaldialogs.cpp:1244 msgid "Import" msgstr "Імпорт" -#: ../src/file.cpp:1265 +#: ../src/file.cpp:1300 msgid "Select file to import" msgstr "Виберіть файл для імпорту" -#: ../src/file.cpp:1403 +#: ../src/file.cpp:1438 msgid "Select file to export to" msgstr "Оберіть файл для експорту" -#: ../src/file.cpp:1656 +#: ../src/file.cpp:1691 msgid "Import Clip Art" msgstr "Імпортування шаблонів" @@ -8539,7 +8544,7 @@ msgstr "Карта зміщення" msgid "Flood" msgstr "Заливання" -#: ../src/filter-enums.cpp:30 +#: ../src/filter-enums.cpp:30 ../share/extensions/text_merge.inx.h:1 msgid "Merge" msgstr "Об'єднання" @@ -8592,7 +8597,7 @@ msgid "Luminance to Alpha" msgstr "Освітленість до прозорості" #. File -#: ../src/filter-enums.cpp:70 ../src/verbs.cpp:2295 +#: ../src/filter-enums.cpp:70 ../src/verbs.cpp:2348 #: ../share/extensions/jessyInk_mouseHandler.inx.h:3 #: ../share/extensions/jessyInk_transitions.inx.h:7 msgid "Default" @@ -8602,7 +8607,7 @@ msgstr "Типовий" msgid "Arithmetic" msgstr "Арифметичний" -#: ../src/filter-enums.cpp:92 ../src/selection-chemistry.cpp:516 +#: ../src/filter-enums.cpp:92 ../src/selection-chemistry.cpp:531 msgid "Duplicate" msgstr "Дублювати" @@ -8634,43 +8639,43 @@ msgstr "Точкове джерело" msgid "Spot Light" msgstr "Прожектор" -#: ../src/flood-context.cpp:227 +#: ../src/flood-context.cpp:226 msgid "Visible Colors" msgstr "Видимі кольори" -#: ../src/flood-context.cpp:231 ../src/widgets/sp-color-icc-selector.cpp:361 +#: ../src/flood-context.cpp:230 ../src/widgets/sp-color-icc-selector.cpp:361 #: ../src/widgets/sp-color-icc-selector.cpp:365 #: ../src/widgets/sp-color-scales.cpp:455 -#: ../src/widgets/sp-color-scales.cpp:456 ../src/widgets/tweak-toolbar.cpp:304 +#: ../src/widgets/sp-color-scales.cpp:456 ../src/widgets/tweak-toolbar.cpp:300 #: ../share/extensions/color_randomize.inx.h:3 msgid "Hue" msgstr "Відтінок" -#: ../src/flood-context.cpp:245 +#: ../src/flood-context.cpp:244 msgctxt "Flood autogap" msgid "None" msgstr "Немає" -#: ../src/flood-context.cpp:246 +#: ../src/flood-context.cpp:245 msgctxt "Flood autogap" msgid "Small" msgstr "Малий" -#: ../src/flood-context.cpp:247 +#: ../src/flood-context.cpp:246 msgctxt "Flood autogap" msgid "Medium" msgstr "Середній" -#: ../src/flood-context.cpp:248 +#: ../src/flood-context.cpp:247 msgctxt "Flood autogap" msgid "Large" msgstr "Великий" -#: ../src/flood-context.cpp:470 +#: ../src/flood-context.cpp:469 msgid "Too much inset, the result is empty." msgstr "Надто багато втягувань, результат порожній." -#: ../src/flood-context.cpp:511 +#: ../src/flood-context.cpp:510 #, c-format msgid "" "Area filled, path with %d node created and unioned with selection." @@ -8686,7 +8691,7 @@ msgstr[2] "" "Область заповнено, контур з %d вузлами створено та поєднано з " "позначеною областю." -#: ../src/flood-context.cpp:517 +#: ../src/flood-context.cpp:516 #, c-format msgid "Area filled, path with %d node created." msgid_plural "Area filled, path with %d nodes created." @@ -8694,11 +8699,11 @@ msgstr[0] "Область заповнено, створено контур з < msgstr[1] "Область заповнено, створено контур з %d вузлами." msgstr[2] "Область заповнено, створено контур з %d вузлами." -#: ../src/flood-context.cpp:785 ../src/flood-context.cpp:1095 +#: ../src/flood-context.cpp:784 ../src/flood-context.cpp:1094 msgid "Area is not bounded, cannot fill." msgstr "Область не обмежена, заповнення неможливе." -#: ../src/flood-context.cpp:1100 +#: ../src/flood-context.cpp:1099 msgid "" "Only the visible part of the bounded area was filled. If you want to " "fill all of the area, undo, zoom out, and fill again." @@ -8707,15 +8712,15 @@ msgstr "" "заповнити всю область, верніть зміни, зробіть меншим масштаб та заповніть " "знову." -#: ../src/flood-context.cpp:1118 ../src/flood-context.cpp:1277 +#: ../src/flood-context.cpp:1117 ../src/flood-context.cpp:1276 msgid "Fill bounded area" msgstr "Заповнення замкненої області" -#: ../src/flood-context.cpp:1137 +#: ../src/flood-context.cpp:1136 msgid "Set style on object" msgstr "Встановити стиль об'єкта" -#: ../src/flood-context.cpp:1196 +#: ../src/flood-context.cpp:1195 msgid "Draw over areas to add to fill, hold Alt for touch fill" msgstr "" "Малювати по областям для додавання заповнення, при утриманні AltЖодного вуса градієнта з %d в %d виб msgstr[2] "Жодного вуса градієнта з %d в %d вибраних об'єктах" #: ../src/gradient-context.cpp:381 ../src/gradient-context.cpp:479 -#: ../src/ui/dialog/swatches.cpp:203 ../src/widgets/gradient-vector.cpp:814 +#: ../src/ui/dialog/swatches.cpp:204 ../src/widgets/gradient-vector.cpp:814 msgid "Add gradient stop" msgstr "Додавання опорної точки градієнта" @@ -8953,294 +8958,120 @@ msgstr "Перемістити опорні точки градієнта" msgid "Delete gradient stop(s)" msgstr "Вилучити опорні точки градієнта" -#: ../src/helper/units.cpp:37 ../src/live_effects/lpe-ruler.cpp:42 -msgid "Unit" -msgstr "Одиниця" - -#. Add the units menu. -#: ../src/helper/units.cpp:37 ../src/widgets/lpe-toolbar.cpp:400 -#: ../src/widgets/node-toolbar.cpp:622 -#: ../src/widgets/paintbucket-toolbar.cpp:185 -#: ../src/widgets/rect-toolbar.cpp:376 ../src/widgets/select-toolbar.cpp:538 -msgid "Units" -msgstr "Одиниці" - -#: ../src/helper/units.cpp:38 ../share/extensions/dxf_outlines.inx.h:9 -msgid "pt" -msgstr "пт" - -#: ../src/helper/units.cpp:38 ../share/extensions/perfectboundcover.inx.h:11 -msgid "Points" -msgstr "Пункти" - -#: ../src/helper/units.cpp:38 -msgid "Pt" -msgstr "пт" - -#: ../src/helper/units.cpp:39 ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Pica" -msgstr "Піка" - -#: ../src/helper/units.cpp:39 ../share/extensions/dxf_outlines.inx.h:10 -msgid "pc" -msgstr "пк" - -#: ../src/helper/units.cpp:39 -msgid "Picas" -msgstr "Піки" - -#: ../src/helper/units.cpp:39 -msgid "Pc" -msgstr "Пк" - -#: ../src/helper/units.cpp:40 ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Pixel" -msgstr "Точка" - -#: ../src/helper/units.cpp:40 ../share/extensions/dxf_outlines.inx.h:11 -#: ../share/extensions/gears.inx.h:7 -msgid "px" -msgstr "точок" - -#: ../src/helper/units.cpp:40 -msgid "Pixels" -msgstr "Точки" - -#: ../src/helper/units.cpp:40 -msgid "Px" -msgstr "точок" - -#. You can add new elements from this point forward -#: ../src/helper/units.cpp:42 -msgid "Percent" -msgstr "Відсоток" - -#: ../src/helper/units.cpp:42 ../src/ui/dialog/inkscape-preferences.cpp:1265 -msgid "%" -msgstr "%" - -#: ../src/helper/units.cpp:42 -msgid "Percents" -msgstr "Відсотки" - -#: ../src/helper/units.cpp:43 ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Millimeter" -msgstr "Міліметр" - -#: ../src/helper/units.cpp:43 ../share/extensions/dxf_outlines.inx.h:12 -#: ../share/extensions/gears.inx.h:9 -#: ../share/extensions/gcodetools_area.inx.h:46 -#: ../share/extensions/gcodetools_dxf_points.inx.h:18 -#: ../share/extensions/gcodetools_engraving.inx.h:24 -#: ../share/extensions/gcodetools_graffiti.inx.h:18 -#: ../share/extensions/gcodetools_lathe.inx.h:39 -#: ../share/extensions/gcodetools_orientation_points.inx.h:11 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:28 -msgid "mm" -msgstr "мм" - -#: ../src/helper/units.cpp:43 -msgid "Millimeters" -msgstr "Міліметри" - -#: ../src/helper/units.cpp:44 ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Centimeter" -msgstr "Сантиметр" - -#: ../src/helper/units.cpp:44 ../share/extensions/dxf_outlines.inx.h:13 -msgid "cm" -msgstr "см" - -#: ../src/helper/units.cpp:44 -msgid "Centimeters" -msgstr "Сантиметри" - -#: ../src/helper/units.cpp:45 -msgid "Meter" -msgstr "Метр" - -#: ../src/helper/units.cpp:45 ../share/extensions/dxf_outlines.inx.h:14 -msgid "m" -msgstr "м" - -#: ../src/helper/units.cpp:45 -msgid "Meters" -msgstr "Метри" - -#. no svg_unit -#: ../src/helper/units.cpp:46 ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Inch" -msgstr "Дюйм" - -#: ../src/helper/units.cpp:46 ../share/extensions/dxf_outlines.inx.h:15 -#: ../share/extensions/gears.inx.h:8 -#: ../share/extensions/gcodetools_area.inx.h:47 -#: ../share/extensions/gcodetools_dxf_points.inx.h:19 -#: ../share/extensions/gcodetools_engraving.inx.h:25 -#: ../share/extensions/gcodetools_graffiti.inx.h:19 -#: ../share/extensions/gcodetools_lathe.inx.h:40 -#: ../share/extensions/gcodetools_orientation_points.inx.h:12 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:29 -msgid "in" -msgstr "дюйм" - -#: ../src/helper/units.cpp:46 -msgid "Inches" -msgstr "Дюйми" - -#: ../src/helper/units.cpp:47 -msgid "Foot" -msgstr "Фут" - -#: ../src/helper/units.cpp:47 ../share/extensions/dxf_outlines.inx.h:16 -msgid "ft" -msgstr "фт" - -#: ../src/helper/units.cpp:47 -msgid "Feet" -msgstr "Фути" - -#. Volatiles do not have default, so there are none here -#. TRANSLATORS: for info, see http://www.w3.org/TR/REC-CSS2/syndata.html#length-units -#: ../src/helper/units.cpp:50 ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Em square" -msgstr "Em квадрат" - -#: ../src/helper/units.cpp:50 -msgid "em" -msgstr "em" - -#: ../src/helper/units.cpp:50 -msgid "Em squares" -msgstr "Em квадрати" - -#. TRANSLATORS: for info, see http://www.w3.org/TR/REC-CSS2/syndata.html#length-units -#: ../src/helper/units.cpp:52 -msgid "Ex square" -msgstr "Ex квадрат" - -#: ../src/helper/units.cpp:52 -msgid "ex" -msgstr "ex" - -#: ../src/helper/units.cpp:52 -msgid "Ex squares" -msgstr "Ex квадрати" - -#: ../src/inkscape.cpp:322 +#: ../src/inkscape.cpp:341 msgid "Autosave failed! Cannot create directory %1." msgstr "" "Спроба автоматичного збереження зазнала невдачі! Не вдалося створити каталог " "%1." -#: ../src/inkscape.cpp:331 +#: ../src/inkscape.cpp:350 msgid "Autosave failed! Cannot open directory %1." msgstr "" "Спроба автоматичного збереження зазнала невдачі! Не вдалося відкрити каталог " "%1." -#: ../src/inkscape.cpp:347 +#: ../src/inkscape.cpp:366 msgid "Autosaving documents..." msgstr "Автозбереження документів…" -#: ../src/inkscape.cpp:420 +#: ../src/inkscape.cpp:439 msgid "Autosave failed! Could not find inkscape extension to save document." msgstr "" "Спроба автоматичного збереження зазнала невдачі! Не вдалося знайти додаток " "inkscape для зберігання документа." -#: ../src/inkscape.cpp:423 ../src/inkscape.cpp:430 +#: ../src/inkscape.cpp:442 ../src/inkscape.cpp:449 #, c-format msgid "Autosave failed! File %s could not be saved." msgstr "" "Спроба автоматичного зберігання зазнала невдачі! Файл %s неможливо зберегти." -#: ../src/inkscape.cpp:445 +#: ../src/inkscape.cpp:464 msgid "Autosave complete." msgstr "Автоматичне збереження завершено." -#: ../src/inkscape.cpp:691 +#: ../src/inkscape.cpp:712 msgid "Untitled document" msgstr "Без назви" #. Show nice dialog box -#: ../src/inkscape.cpp:723 +#: ../src/inkscape.cpp:744 msgid "Inkscape encountered an internal error and will close now.\n" msgstr "Внутрішня помилка. Зараз роботу Inkscape буде завершено.\n" -#: ../src/inkscape.cpp:724 +#: ../src/inkscape.cpp:745 msgid "" "Automatic backups of unsaved documents were done to the following " "locations:\n" msgstr "" -"Виконано автоматичне збереження резервних копій не збережених документів:\n" +"Виконано автоматичне збереження резервних копій незбережених документів:\n" -#: ../src/inkscape.cpp:725 +#: ../src/inkscape.cpp:746 msgid "Automatic backup of the following documents failed:\n" msgstr "Не вдається створити резервну копію такого документа:\n" -#: ../src/interface.cpp:865 +#: ../src/interface.cpp:774 msgctxt "Interface setup" msgid "Default" msgstr "Типовий" -#: ../src/interface.cpp:865 +#: ../src/interface.cpp:774 msgid "Default interface setup" msgstr "Типові налаштування інтерфейсу" -#: ../src/interface.cpp:866 +#: ../src/interface.cpp:775 msgctxt "Interface setup" msgid "Custom" msgstr "Нетиповий" -#: ../src/interface.cpp:866 +#: ../src/interface.cpp:775 msgid "Setup for custom task" msgstr "Налаштування для виконання певного завдання" -#: ../src/interface.cpp:867 +#: ../src/interface.cpp:776 msgctxt "Interface setup" msgid "Wide" msgstr "Широкий" -#: ../src/interface.cpp:867 +#: ../src/interface.cpp:776 msgid "Setup for widescreen work" msgstr "Налаштування для широкоекранних моніторів" -#: ../src/interface.cpp:979 +#: ../src/interface.cpp:888 #, c-format msgid "Verb \"%s\" Unknown" msgstr "Невідоме дієслово «%s»" -#: ../src/interface.cpp:1021 +#: ../src/interface.cpp:927 msgid "Open _Recent" msgstr "Відкрити не_давній" -#: ../src/interface.cpp:1129 ../src/interface.cpp:1215 -#: ../src/interface.cpp:1318 ../src/ui/widget/selected-style.cpp:523 +#: ../src/interface.cpp:1035 ../src/interface.cpp:1121 +#: ../src/interface.cpp:1224 ../src/ui/widget/selected-style.cpp:528 msgid "Drop color" msgstr "Скинути колір" -#: ../src/interface.cpp:1168 ../src/interface.cpp:1278 +#: ../src/interface.cpp:1074 ../src/interface.cpp:1184 msgid "Drop color on gradient" msgstr "Перенесення кольору на градієнт" -#: ../src/interface.cpp:1331 +#: ../src/interface.cpp:1237 msgid "Could not parse SVG data" msgstr "Не вдається прочитати SVG-дані" -#: ../src/interface.cpp:1370 +#: ../src/interface.cpp:1276 msgid "Drop SVG" msgstr "Скинути SVG" -#: ../src/interface.cpp:1383 +#: ../src/interface.cpp:1289 msgid "Drop Symbol" msgstr "Скинути символ" -#: ../src/interface.cpp:1414 +#: ../src/interface.cpp:1320 msgid "Drop bitmap image" msgstr "Скинути растрову картинку" -#: ../src/interface.cpp:1506 +#: ../src/interface.cpp:1412 #, c-format msgid "" "A file named \"%s\" already exists. Do " @@ -9253,160 +9084,160 @@ msgstr "" "\n" "Файл вже існує у «%s». Заміна призведе до перезапису його вмісту." -#: ../src/interface.cpp:1513 ../share/extensions/web-set-att.inx.h:21 +#: ../src/interface.cpp:1419 ../share/extensions/web-set-att.inx.h:21 #: ../share/extensions/web-transmit-att.inx.h:19 msgid "Replace" msgstr "Замінити" -#: ../src/interface.cpp:1584 +#: ../src/interface.cpp:1490 msgid "Go to parent" msgstr "На рівень вище" #. TRANSLATORS: #%1 is the id of the group e.g. , not a number. -#: ../src/interface.cpp:1625 +#: ../src/interface.cpp:1531 msgid "Enter group #%1" msgstr "Увійти до групи №%1" #. Item dialog -#: ../src/interface.cpp:1737 ../src/verbs.cpp:2789 +#: ../src/interface.cpp:1643 ../src/verbs.cpp:2842 msgid "_Object Properties..." msgstr "В_ластивості об'єкта…" -#: ../src/interface.cpp:1746 +#: ../src/interface.cpp:1652 msgid "_Select This" msgstr "_Позначити це" -#: ../src/interface.cpp:1757 +#: ../src/interface.cpp:1663 msgid "Select Same" msgstr "Позначити те саме" #. Select same fill and stroke -#: ../src/interface.cpp:1767 +#: ../src/interface.cpp:1673 msgid "Fill and Stroke" msgstr "Заповнення та штрих" #. Select same fill color -#: ../src/interface.cpp:1774 +#: ../src/interface.cpp:1680 msgid "Fill Color" msgstr "Колір заповнення" #. Select same stroke color -#: ../src/interface.cpp:1781 +#: ../src/interface.cpp:1687 msgid "Stroke Color" msgstr "Колір штриха" #. Select same stroke style -#: ../src/interface.cpp:1788 +#: ../src/interface.cpp:1694 msgid "Stroke Style" msgstr "Стиль штриха" #. Select same stroke style -#: ../src/interface.cpp:1795 +#: ../src/interface.cpp:1701 msgid "Object type" msgstr "Тип об'єкта" #. Move to layer -#: ../src/interface.cpp:1802 +#: ../src/interface.cpp:1708 msgid "_Move to layer ..." msgstr "П_ересунути до шару…" #. Create link -#: ../src/interface.cpp:1812 +#: ../src/interface.cpp:1718 msgid "Create _Link" msgstr "С_творити посилання" #. Set mask -#: ../src/interface.cpp:1835 +#: ../src/interface.cpp:1741 msgid "Set Mask" msgstr "Задати маску" #. Release mask -#: ../src/interface.cpp:1846 +#: ../src/interface.cpp:1752 msgid "Release Mask" msgstr "Зняти маску" #. Set Clip -#: ../src/interface.cpp:1857 +#: ../src/interface.cpp:1763 msgid "Set Cl_ip" msgstr "Встановити _обрізання" #. Release Clip -#: ../src/interface.cpp:1868 +#: ../src/interface.cpp:1774 msgid "Release C_lip" msgstr "Зн_яти обрізання" #. Group -#: ../src/interface.cpp:1879 ../src/verbs.cpp:2428 +#: ../src/interface.cpp:1785 ../src/verbs.cpp:2483 msgid "_Group" msgstr "З_групувати" -#: ../src/interface.cpp:1950 +#: ../src/interface.cpp:1856 msgid "Create link" msgstr "Створити посилання" #. Ungroup -#: ../src/interface.cpp:1981 ../src/verbs.cpp:2430 +#: ../src/interface.cpp:1887 ../src/verbs.cpp:2485 msgid "_Ungroup" msgstr "Розгр_упувати" #. Link dialog -#: ../src/interface.cpp:2006 +#: ../src/interface.cpp:1912 msgid "Link _Properties..." msgstr "В_ластивості посилання…" #. Select item -#: ../src/interface.cpp:2012 +#: ../src/interface.cpp:1918 msgid "_Follow Link" msgstr "_Перейти за посиланням" #. Reset transformations -#: ../src/interface.cpp:2018 +#: ../src/interface.cpp:1924 msgid "_Remove Link" msgstr "Ви_лучити посилання" -#: ../src/interface.cpp:2049 +#: ../src/interface.cpp:1955 msgid "Remove link" msgstr "Вилучити прив'язку" #. Image properties -#: ../src/interface.cpp:2060 +#: ../src/interface.cpp:1966 msgid "Image _Properties..." msgstr "В_ластивості зображення…" #. Edit externally -#: ../src/interface.cpp:2066 +#: ../src/interface.cpp:1972 msgid "Edit Externally..." msgstr "Редагувати у зовнішній програмі…" #. Trace Bitmap #. TRANSLATORS: "to trace" means "to convert a bitmap to vector graphics" (to vectorize) -#: ../src/interface.cpp:2075 ../src/verbs.cpp:2491 +#: ../src/interface.cpp:1981 ../src/verbs.cpp:2546 msgid "_Trace Bitmap..." msgstr "_Векторизувати растр" -#: ../src/interface.cpp:2085 +#: ../src/interface.cpp:1991 msgctxt "Context menu" msgid "Embed Image" msgstr "Вбудувати зображення" -#: ../src/interface.cpp:2096 +#: ../src/interface.cpp:2002 msgctxt "Context menu" msgid "Extract Image..." msgstr "Видобути зображення…" #. Item dialog #. Fill and Stroke dialog -#: ../src/interface.cpp:2235 ../src/interface.cpp:2255 ../src/verbs.cpp:2752 +#: ../src/interface.cpp:2141 ../src/interface.cpp:2161 ../src/verbs.cpp:2807 msgid "_Fill and Stroke..." msgstr "_Заповнення та штрих" #. Edit Text dialog -#: ../src/interface.cpp:2261 ../src/verbs.cpp:2769 +#: ../src/interface.cpp:2167 ../src/verbs.cpp:2824 msgid "_Text and Font..." msgstr "_Текст та шрифт…" #. Spellcheck dialog -#: ../src/interface.cpp:2267 ../src/verbs.cpp:2777 +#: ../src/interface.cpp:2173 ../src/verbs.cpp:2832 msgid "Check Spellin_g..." msgstr "Перевірити п_равопис…" @@ -9471,7 +9302,8 @@ msgid "Dockitem which 'owns' this grip" msgstr "Елемент, що є «володарем» цього" #. Name -#: ../src/libgdl/gdl-dock-item.c:298 ../src/widgets/text-toolbar.cpp:1430 +#: ../src/libgdl/gdl-dock-item.c:298 ../src/widgets/ruler.cpp:191 +#: ../src/widgets/text-toolbar.cpp:1421 #: ../share/extensions/gcodetools_graffiti.inx.h:9 #: ../share/extensions/gcodetools_orientation_points.inx.h:2 msgid "Orientation" @@ -9590,11 +9422,11 @@ msgstr "" "якщо встановлено 0, всі розблоковуються; -1 позначає відсутність " "підпорядкованості серед елементів" -#: ../src/libgdl/gdl-dock-master.c:157 ../src/libgdl/gdl-switcher.c:732 +#: ../src/libgdl/gdl-dock-master.c:157 ../src/libgdl/gdl-switcher.c:737 msgid "Switcher Style" msgstr "Стиль перемикача" -#: ../src/libgdl/gdl-dock-master.c:158 ../src/libgdl/gdl-switcher.c:733 +#: ../src/libgdl/gdl-dock-master.c:158 ../src/libgdl/gdl-switcher.c:738 msgid "Switcher buttons style" msgstr "Стиль кнопок перемикача" @@ -9617,10 +9449,10 @@ msgstr "" "панелей можна називати контролерами." #: ../src/libgdl/gdl-dock-notebook.c:132 -#: ../src/ui/dialog/align-and-distribute.cpp:1047 -#: ../src/ui/dialog/document-properties.cpp:146 +#: ../src/ui/dialog/align-and-distribute.cpp:996 +#: ../src/ui/dialog/document-properties.cpp:145 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1551 -#: ../src/widgets/desktop-widget.cpp:1996 +#: ../src/widgets/desktop-widget.cpp:2000 #: ../share/extensions/voronoi2svg.inx.h:9 msgid "Page" msgstr "Сторінка" @@ -9630,9 +9462,9 @@ msgid "The index of the current page" msgstr "Індекс поточної сторінки" #: ../src/libgdl/gdl-dock-object.c:125 -#: ../src/ui/dialog/inkscape-preferences.cpp:1482 -#: ../src/ui/widget/page-sizer.cpp:260 -#: ../src/widgets/gradient-selector.cpp:156 +#: ../src/ui/dialog/inkscape-preferences.cpp:1486 +#: ../src/ui/widget/page-sizer.cpp:258 +#: ../src/widgets/gradient-selector.cpp:157 #: ../src/widgets/sp-xmlview-attr-list.cpp:54 msgid "Name" msgstr "Назва" @@ -9705,7 +9537,7 @@ msgstr "" "Спроба прив'язування до %p вже прив'язаного об'єкта %p (поточний господар: " "%p)" -#: ../src/libgdl/gdl-dock-paned.c:130 +#: ../src/libgdl/gdl-dock-paned.c:130 ../src/widgets/ruler.cpp:229 msgid "Position" msgstr "Розташування" @@ -9980,7 +9812,7 @@ msgstr "Лінійка" msgid "Power stroke" msgstr "Потужний штрих" -#: ../src/live_effects/effect.cpp:124 ../src/selection-chemistry.cpp:2792 +#: ../src/live_effects/effect.cpp:124 ../src/selection-chemistry.cpp:2779 msgid "Clone original path" msgstr "Клонувати початковий контур" @@ -10448,7 +10280,7 @@ msgid "Beveled" msgstr "З фаскою" #: ../src/live_effects/lpe-powerstroke.cpp:221 -#: ../src/widgets/star-toolbar.cpp:546 +#: ../src/widgets/star-toolbar.cpp:542 msgid "Rounded" msgstr "Округленість" @@ -10461,7 +10293,7 @@ msgid "Miter" msgstr "Накласти" #: ../src/live_effects/lpe-powerstroke.cpp:224 -#: ../src/widgets/pencil-toolbar.cpp:137 +#: ../src/widgets/pencil-toolbar.cpp:132 msgid "Spiro" msgstr "Криві Спіро" @@ -10520,7 +10352,7 @@ msgstr "Визначає форму початку контуру" #. TRANSLATORS: The line join style specifies the shape to be used at the #. corners of paths. It can be "miter", "round" or "bevel". #: ../src/live_effects/lpe-powerstroke.cpp:238 -#: ../src/widgets/stroke-style.cpp:220 +#: ../src/widgets/stroke-style.cpp:223 msgid "Join:" msgstr "З'єднання:" @@ -10533,7 +10365,7 @@ msgid "Miter limit:" msgstr "Межа вістря:" #: ../src/live_effects/lpe-powerstroke.cpp:239 -#: ../src/widgets/stroke-style.cpp:271 +#: ../src/widgets/stroke-style.cpp:274 msgid "Maximum length of the miter (in units of stroke width)" msgstr "Найбільша довжина вістря (у одиницях товщини штриха)" @@ -10734,11 +10566,13 @@ msgstr "" #: ../src/live_effects/lpe-ruler.cpp:25 ../share/extensions/restack.inx.h:12 #: ../share/extensions/text_extract.inx.h:8 +#: ../share/extensions/text_merge.inx.h:8 msgid "Left" msgstr "Ліворуч" #: ../src/live_effects/lpe-ruler.cpp:26 ../share/extensions/restack.inx.h:14 #: ../share/extensions/text_extract.inx.h:10 +#: ../share/extensions/text_merge.inx.h:10 msgid "Right" msgstr "Праворуч" @@ -10746,11 +10580,11 @@ msgstr "Праворуч" msgid "Both" msgstr "Обидва" -#: ../src/live_effects/lpe-ruler.cpp:33 ../src/widgets/arc-toolbar.cpp:341 +#: ../src/live_effects/lpe-ruler.cpp:33 ../src/widgets/arc-toolbar.cpp:337 msgid "Start" msgstr "Початок" -#: ../src/live_effects/lpe-ruler.cpp:34 ../src/widgets/arc-toolbar.cpp:354 +#: ../src/live_effects/lpe-ruler.cpp:34 ../src/widgets/arc-toolbar.cpp:350 msgid "End" msgstr "Кінець" @@ -10770,6 +10604,10 @@ msgstr "Відстань між послідовними позначками н msgid "Unit:" msgstr "Одиниця:" +#: ../src/live_effects/lpe-ruler.cpp:42 ../src/widgets/ruler.cpp:201 +msgid "Unit" +msgstr "Одиниця" + #: ../src/live_effects/lpe-ruler.cpp:43 msgid "Ma_jor length:" msgstr "_Основна довжина:" @@ -10915,7 +10753,7 @@ msgid "How many construction lines (tangents) to draw" msgstr "Кількість ліній побудови (дотичних) для малювання" #: ../src/live_effects/lpe-sketch.cpp:58 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2667 #: ../share/extensions/render_alphabetsoup.inx.h:3 msgid "Scale:" msgstr "Масштаб:" @@ -11088,7 +10926,7 @@ msgstr "Змінити випадковий параметр" msgid "Change text parameter" msgstr "Змінити параметр тексту" -#: ../src/live_effects/parameter/unit.cpp:78 +#: ../src/live_effects/parameter/unit.cpp:80 msgid "Change unit parameter" msgstr "Змінити параметр одиниць" @@ -11096,7 +10934,7 @@ msgstr "Змінити параметр одиниць" msgid "Change vector parameter" msgstr "Змінити параметр вектора" -#: ../src/main-cmdlineact.cpp:49 +#: ../src/main-cmdlineact.cpp:50 #, c-format msgid "Unable to find verb ID '%s' specified on the command line.\n" msgstr "" @@ -11108,41 +10946,41 @@ msgstr "" msgid "Unable to find node ID: '%s'\n" msgstr "Не вдається знайти ідентифікатор вузла: '%s'\n" -#: ../src/main.cpp:280 +#: ../src/main.cpp:298 msgid "Print the Inkscape version number" msgstr "Вивести версію Inkscape" -#: ../src/main.cpp:285 +#: ../src/main.cpp:303 msgid "Do not use X server (only process files from console)" msgstr "Не використовувати X сервер (лише консольні операції)" -#: ../src/main.cpp:290 +#: ../src/main.cpp:308 msgid "Try to use X server (even if $DISPLAY is not set)" msgstr "" "Намагатися використовувати X сервер, навіть якщо змінну $DISPLAY не " "встановлено" -#: ../src/main.cpp:295 +#: ../src/main.cpp:313 msgid "Open specified document(s) (option string may be excluded)" msgstr "Відкрити вказані документи (аргумент може бути виключений)" -#: ../src/main.cpp:296 ../src/main.cpp:301 ../src/main.cpp:306 -#: ../src/main.cpp:378 ../src/main.cpp:383 ../src/main.cpp:388 -#: ../src/main.cpp:399 ../src/main.cpp:416 +#: ../src/main.cpp:314 ../src/main.cpp:319 ../src/main.cpp:324 +#: ../src/main.cpp:396 ../src/main.cpp:401 ../src/main.cpp:406 +#: ../src/main.cpp:417 ../src/main.cpp:434 msgid "FILENAME" msgstr "НАЗВА_ФАЙЛА" -#: ../src/main.cpp:300 +#: ../src/main.cpp:318 msgid "Print document(s) to specified output file (use '| program' for pipe)" msgstr "" "Друкувати документ(и) у вказаний файл (для передавання програмі " "використовуйте '| program')" -#: ../src/main.cpp:305 +#: ../src/main.cpp:323 msgid "Export document to a PNG file" msgstr "Експортувати документ у файл формату PNG" -#: ../src/main.cpp:310 +#: ../src/main.cpp:328 msgid "" "Resolution for exporting to bitmap and for rasterization of filters in PS/" "EPS/PDF (default 90)" @@ -11150,11 +10988,11 @@ msgstr "" "Роздільна здатність для експортування у растр і для растеризації фільтрів у " "PS/EPS/PDF (типове значення 90)" -#: ../src/main.cpp:311 ../src/ui/widget/rendering-options.cpp:34 +#: ../src/main.cpp:329 ../src/ui/widget/rendering-options.cpp:34 msgid "DPI" msgstr "Роздільність" -#: ../src/main.cpp:315 +#: ../src/main.cpp:333 msgid "" "Exported area in SVG user units (default is the page; 0,0 is lower-left " "corner)" @@ -11162,29 +11000,29 @@ msgstr "" "Область експорту у одиницях SVG (типово — вся сторінка; 0,0 — лівий нижній " "кут)" -#: ../src/main.cpp:316 +#: ../src/main.cpp:334 msgid "x0:y0:x1:y1" msgstr "x0:y0:x1:y1" -#: ../src/main.cpp:320 +#: ../src/main.cpp:338 msgid "Exported area is the entire drawing (not page)" msgstr "Область експорту є суцільним малюнком (не сторінкою)" -#: ../src/main.cpp:325 +#: ../src/main.cpp:343 msgid "Exported area is the entire page" msgstr "Ділянкою експорту є вся сторінка" -#: ../src/main.cpp:330 +#: ../src/main.cpp:348 msgid "Only for PS/EPS/PDF, sets margin in mm around exported area (default 0)" msgstr "" "Лише для PS/EPS/PDF, встановлює ширину полів навколо експортованої ділянки у " "міліметрах (типово 0)" -#: ../src/main.cpp:331 ../src/main.cpp:373 +#: ../src/main.cpp:349 ../src/main.cpp:391 msgid "VALUE" msgstr "ЗНАЧЕННЯ" -#: ../src/main.cpp:335 +#: ../src/main.cpp:353 msgid "" "Snap the bitmap export area outwards to the nearest integer values (in SVG " "user units)" @@ -11192,75 +11030,75 @@ msgstr "" "Округлити область експорту растру назовні до найближчого цілого значення (у " "одиницях SVG)" -#: ../src/main.cpp:340 +#: ../src/main.cpp:358 msgid "The width of exported bitmap in pixels (overrides export-dpi)" msgstr "Ширина зображення для експорту у точках (перевизначає export-dpi)" -#: ../src/main.cpp:341 +#: ../src/main.cpp:359 msgid "WIDTH" msgstr "ШИРИНА" -#: ../src/main.cpp:345 +#: ../src/main.cpp:363 msgid "The height of exported bitmap in pixels (overrides export-dpi)" msgstr "Висота зображення для експорту у точках (перевизначає export-dpi)" -#: ../src/main.cpp:346 +#: ../src/main.cpp:364 msgid "HEIGHT" msgstr "ВИСОТА" -#: ../src/main.cpp:350 +#: ../src/main.cpp:368 msgid "The ID of the object to export" msgstr "Ідентифікатор об'єкта, що експортується" -#: ../src/main.cpp:351 ../src/main.cpp:461 -#: ../src/ui/dialog/inkscape-preferences.cpp:1485 +#: ../src/main.cpp:369 ../src/main.cpp:479 +#: ../src/ui/dialog/inkscape-preferences.cpp:1489 msgid "ID" msgstr "Ідентифікатор" #. TRANSLATORS: this means: "Only export the object whose id is given in --export-id". #. See "man inkscape" for details. -#: ../src/main.cpp:357 +#: ../src/main.cpp:375 msgid "" "Export just the object with export-id, hide all others (only with export-id)" msgstr "" "Експортувати лише об'єкт з заданим ідентифікатором, усі інші приховати (лише " "з export-id)" -#: ../src/main.cpp:362 +#: ../src/main.cpp:380 msgid "Use stored filename and DPI hints when exporting (only with export-id)" msgstr "" "При експорті використовувати збережену назву файла та розширення (лише з " "export-id)" -#: ../src/main.cpp:367 +#: ../src/main.cpp:385 msgid "Background color of exported bitmap (any SVG-supported color string)" msgstr "" "Колір тла для експорту растрового зображення (будь-яка підтримувана SVG-" "кольорова гама)" -#: ../src/main.cpp:368 +#: ../src/main.cpp:386 msgid "COLOR" msgstr "КОЛІР" -#: ../src/main.cpp:372 +#: ../src/main.cpp:390 msgid "Background opacity of exported bitmap (either 0.0 to 1.0, or 1 to 255)" msgstr "Прозорість тла для експорту растру (від 0.0 до 1.0, або від 1 до 255)" -#: ../src/main.cpp:377 +#: ../src/main.cpp:395 msgid "Export document to plain SVG file (no sodipodi or inkscape namespaces)" msgstr "" "Експортувати документ у формат «звичайний SVG» (без елементів sodipodi: або " "inkscape:)" -#: ../src/main.cpp:382 +#: ../src/main.cpp:400 msgid "Export document to a PS file" msgstr "Експортувати документ у файл формату PS" -#: ../src/main.cpp:387 +#: ../src/main.cpp:405 msgid "Export document to an EPS file" msgstr "Експортувати документ у файл формату EPS" -#: ../src/main.cpp:392 +#: ../src/main.cpp:410 msgid "" "Choose the PostScript Level used to export. Possible choices are 2 (the " "default) and 3" @@ -11268,16 +11106,16 @@ msgstr "" "Виберіть рівень мови PostScript для експортованих даних. Можливі варіанти: 2 " "(типовий) і 3" -#: ../src/main.cpp:394 +#: ../src/main.cpp:412 msgid "PS Level" msgstr "Рівень PS" -#: ../src/main.cpp:398 +#: ../src/main.cpp:416 msgid "Export document to a PDF file" msgstr "Експортувати документ у файл формату PDF" #. TRANSLATORS: "--export-pdf-version" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:404 +#: ../src/main.cpp:422 msgid "" "Export PDF to given version. (hint: make sure to input the exact string " "found in the PDF export dialog, e.g. \"PDF 1.4\" which is PDF-a conformant)" @@ -11286,11 +11124,11 @@ msgstr "" "з діалогового вікна експортування PDF точно (приклад: \"PDF 1.4\"), щоб " "зберегти сумісність зі стандартом PDF-a)" -#: ../src/main.cpp:405 +#: ../src/main.cpp:423 msgid "PDF_VERSION" msgstr "ВЕРСІЯ_PDF" -#: ../src/main.cpp:409 +#: ../src/main.cpp:427 msgid "" "Export PDF/PS/EPS without text. Besides the PDF/PS/EPS, a LaTeX file is " "exported, putting the text on top of the PDF/PS/EPS file. Include the result " @@ -11301,17 +11139,17 @@ msgstr "" "накласти на дані з файла PDF/PS/EPS. Вставити результат до вашого файла " "LaTeX можна буде командою: \\input{файл_latex.tex}" -#: ../src/main.cpp:415 +#: ../src/main.cpp:433 msgid "Export document to an Enhanced Metafile (EMF) File" msgstr "Експортувати документ у файл формату EMF" -#: ../src/main.cpp:421 +#: ../src/main.cpp:439 msgid "Convert text object to paths on export (PS, EPS, PDF, SVG)" msgstr "" "Перетворити тестовий об'єкт на контури під час експортування (PS, EPS, PDF? " "SVG)" -#: ../src/main.cpp:426 +#: ../src/main.cpp:444 msgid "" "Render filtered objects without filters, instead of rasterizing (PS, EPS, " "PDF)" @@ -11320,75 +11158,92 @@ msgstr "" "PDF)" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:432 +#: ../src/main.cpp:450 msgid "" "Query the X coordinate of the drawing or, if specified, of the object with --" "query-id" msgstr "Запитати X-координату рисунка чи, якщо вказано, об'єкта з --query-id" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:438 +#: ../src/main.cpp:456 msgid "" "Query the Y coordinate of the drawing or, if specified, of the object with --" "query-id" msgstr "Запитати Y-координату рисунка чи, якщо вказано, об'єкта з --query-id" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:444 +#: ../src/main.cpp:462 msgid "" "Query the width of the drawing or, if specified, of the object with --query-" "id" msgstr "Запитати ширину рисунка чи, якщо вказано, об'єкта з --query-id" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:450 +#: ../src/main.cpp:468 msgid "" "Query the height of the drawing or, if specified, of the object with --query-" "id" msgstr "Запитати висоту рисунка чи, якщо вказано, об'єкта з --query-id" -#: ../src/main.cpp:455 +#: ../src/main.cpp:473 msgid "List id,x,y,w,h for all objects" msgstr "Список ід,x,y,ш,в всіх об'єктів" -#: ../src/main.cpp:460 +#: ../src/main.cpp:478 msgid "The ID of the object whose dimensions are queried" msgstr "Ідентифікатор об'єкта, розміри якого опитуються" #. TRANSLATORS: this option makes Inkscape print the name (path) of the extension directory -#: ../src/main.cpp:466 +#: ../src/main.cpp:484 msgid "Print out the extension directory and exit" msgstr "Вивести на екран каталог додатка і вийти" -#: ../src/main.cpp:471 +#: ../src/main.cpp:489 msgid "Remove unused definitions from the defs section(s) of the document" msgstr "Вилучити з розділу defs документа визначення, що не використовуються" -#: ../src/main.cpp:476 +#: ../src/main.cpp:495 +msgid "Enter a listening loop for D-Bus messages in console mode" +msgstr "" +"Увійти у цикл очікування повідомлень D-Bus, працюючи у консольному режимі" + +#: ../src/main.cpp:500 +msgid "" +"Specify the D-Bus bus name to listen for messages on (default is org." +"inkscape)" +msgstr "" +"Вкажіть назву каналу D-Bus, на якому слід очікувати на повідомлення (типовою " +"є org.inkscape)" + +#: ../src/main.cpp:501 +msgid "BUS-NAME" +msgstr "НАЗВА-КАНАЛУ" + +#: ../src/main.cpp:506 msgid "List the IDs of all the verbs in Inkscape" msgstr "Список ідентифікаторів усіх дієслів у Inkscape" -#: ../src/main.cpp:481 +#: ../src/main.cpp:511 msgid "Verb to call when Inkscape opens." msgstr "Дієслово, що викликається при відкриванні Inkscape." -#: ../src/main.cpp:482 +#: ../src/main.cpp:512 msgid "VERB-ID" msgstr "ІД-ДІЄСЛОВА" -#: ../src/main.cpp:486 +#: ../src/main.cpp:516 msgid "Object ID to select when Inkscape opens." msgstr "Ідентифікатор об'єкта, який визначається при відкриванні Inkscape." -#: ../src/main.cpp:487 +#: ../src/main.cpp:517 msgid "OBJECT-ID" msgstr "ІД-ОБ'ЄКТА" -#: ../src/main.cpp:491 +#: ../src/main.cpp:521 msgid "Start Inkscape in interactive shell mode." msgstr "Запустити Inkscape у режимі інтерактивної оболонки." -#: ../src/main.cpp:835 ../src/main.cpp:1192 +#: ../src/main.cpp:868 ../src/main.cpp:1256 msgid "" "[OPTIONS...] [FILE...]\n" "\n" @@ -11409,11 +11264,11 @@ msgstr "_Створити" #. " \n" #. " \n" -#: ../src/menus-skeleton.h:43 ../src/verbs.cpp:2574 ../src/verbs.cpp:2580 +#: ../src/menus-skeleton.h:43 ../src/verbs.cpp:2629 ../src/verbs.cpp:2635 msgid "_Edit" msgstr "_Зміни" -#: ../src/menus-skeleton.h:53 ../src/verbs.cpp:2340 +#: ../src/menus-skeleton.h:53 ../src/verbs.cpp:2395 msgid "Paste Si_ze" msgstr "Вставити за р_озміром" @@ -11451,46 +11306,45 @@ msgstr "Режим показу _кольорів" msgid "Sh_ow/Hide" msgstr "По_казати/Сховати" -#. " \n" #. Not quite ready to be in the menus. #. " \n" -#: ../src/menus-skeleton.h:158 +#: ../src/menus-skeleton.h:157 msgid "_Layer" msgstr "_Шар" -#: ../src/menus-skeleton.h:182 +#: ../src/menus-skeleton.h:181 msgid "_Object" msgstr "_Об'єкт" -#: ../src/menus-skeleton.h:190 +#: ../src/menus-skeleton.h:189 msgid "Cli_p" msgstr "Відсі_кання" -#: ../src/menus-skeleton.h:194 +#: ../src/menus-skeleton.h:193 msgid "Mas_k" msgstr "Ма_ска" -#: ../src/menus-skeleton.h:198 +#: ../src/menus-skeleton.h:197 msgid "Patter_n" msgstr "В_ізерунок" -#: ../src/menus-skeleton.h:222 +#: ../src/menus-skeleton.h:221 msgid "_Path" msgstr "_Контур" -#: ../src/menus-skeleton.h:267 +#: ../src/menus-skeleton.h:266 msgid "Filter_s" msgstr "Філ_ьтри" -#: ../src/menus-skeleton.h:273 +#: ../src/menus-skeleton.h:272 msgid "Exte_nsions" msgstr "Дод_атки" -#: ../src/menus-skeleton.h:279 +#: ../src/menus-skeleton.h:278 msgid "_Help" msgstr "_Довідка" -#: ../src/menus-skeleton.h:283 +#: ../src/menus-skeleton.h:282 msgid "Tutorials" msgstr "Підручники" @@ -11704,65 +11558,65 @@ msgstr "Розділення" msgid "No path(s) to break apart in the selection." msgstr "У позначеному немає контурів, що можуть розділитись." -#: ../src/path-chemistry.cpp:303 +#: ../src/path-chemistry.cpp:301 msgid "Select object(s) to convert to path." msgstr "Позначте об'єкти для перетворення у контур." -#: ../src/path-chemistry.cpp:309 +#: ../src/path-chemistry.cpp:307 msgid "Converting objects to paths..." msgstr "Перетворення об'єктів на контури…" -#: ../src/path-chemistry.cpp:331 +#: ../src/path-chemistry.cpp:329 msgid "Object to path" msgstr "Об'єкт у контур" -#: ../src/path-chemistry.cpp:333 +#: ../src/path-chemistry.cpp:331 msgid "No objects to convert to path in the selection." msgstr "У позначеному немає об'єктів, що перетворюються у контур." -#: ../src/path-chemistry.cpp:610 +#: ../src/path-chemistry.cpp:608 msgid "Select path(s) to reverse." msgstr "Виберіть контур(и) для зміни напряму." -#: ../src/path-chemistry.cpp:619 +#: ../src/path-chemistry.cpp:617 msgid "Reversing paths..." msgstr "Розвертання контурів…" -#: ../src/path-chemistry.cpp:654 +#: ../src/path-chemistry.cpp:652 msgid "Reverse path" msgstr "Розвернути контур" -#: ../src/path-chemistry.cpp:656 +#: ../src/path-chemistry.cpp:654 msgid "No paths to reverse in the selection." msgstr "У позначеному немає контурів для зміни напряму." -#: ../src/pen-context.cpp:222 ../src/pencil-context.cpp:534 +#: ../src/pen-context.cpp:220 ../src/pencil-context.cpp:534 msgid "Drawing cancelled" msgstr "Малювання скасовано" -#: ../src/pen-context.cpp:460 ../src/pencil-context.cpp:259 +#: ../src/pen-context.cpp:458 ../src/pencil-context.cpp:259 msgid "Continuing selected path" msgstr "Продовжується позначений контур" -#: ../src/pen-context.cpp:470 ../src/pencil-context.cpp:267 +#: ../src/pen-context.cpp:468 ../src/pencil-context.cpp:267 msgid "Creating new path" msgstr "Створення контуру" -#: ../src/pen-context.cpp:472 ../src/pencil-context.cpp:270 +#: ../src/pen-context.cpp:470 ../src/pencil-context.cpp:270 msgid "Appending to selected path" msgstr "Додається до позначеного контуру" -#: ../src/pen-context.cpp:632 +#: ../src/pen-context.cpp:630 msgid "Click or click and drag to close and finish the path." msgstr "Клацання або перетягування закривають цей контур." -#: ../src/pen-context.cpp:642 +#: ../src/pen-context.cpp:640 msgid "" "Click or click and drag to continue the path from this point." msgstr "" "Клацання або перетягування продовжує контур з цієї точки." -#: ../src/pen-context.cpp:1237 +#: ../src/pen-context.cpp:1240 #, c-format msgid "" "Curve segment: angle %3.2f°, distance %s; with Ctrl to " @@ -11771,7 +11625,7 @@ msgstr "" "Сегмент кривої: кут %3.2f°, відстань %s; з Ctrl — кут " "прилипання, Enter — завершити контур" -#: ../src/pen-context.cpp:1238 +#: ../src/pen-context.cpp:1241 #, c-format msgid "" "Line segment: angle %3.2f°, distance %s; with Ctrl to " @@ -11780,7 +11634,7 @@ msgstr "" "Сегмент лінії: кут %3.2f°, відстань %s; з Ctrl — кут " "прилипання, Enter — завершити контур" -#: ../src/pen-context.cpp:1255 +#: ../src/pen-context.cpp:1258 #, c-format msgid "" "Curve handle: angle %3.2f°, length %s; with Ctrl to snap " @@ -11788,7 +11642,7 @@ msgid "" msgstr "" "Вус вузла кривої: кут %3.2f°, довжина %s; Ctrl обмежує кут" -#: ../src/pen-context.cpp:1277 +#: ../src/pen-context.cpp:1280 #, c-format msgid "" "Curve handle, symmetric: angle %3.2f°, length %s; with CtrlВус кривої, симетричний: кут %3.2f°, довжина %s; з Ctrl — " "кут прилипання, з Shift — лише пересунути вус" -#: ../src/pen-context.cpp:1278 +#: ../src/pen-context.cpp:1281 #, c-format msgid "" "Curve handle: angle %3.2f°, length %s; with Ctrl to snap " @@ -11806,7 +11660,7 @@ msgstr "" "Вус кривої: кут %3.2f°, довжина %s; з Ctrl — кут " "прилипання, Shift — лише пересування вуса" -#: ../src/pen-context.cpp:1324 +#: ../src/pen-context.cpp:1327 msgid "Drawing finished" msgstr "Малювання завершено" @@ -11871,7 +11725,7 @@ msgstr "Плямиста" msgid "Tracing" msgstr "Трасування" -#: ../src/preferences.cpp:132 +#: ../src/preferences.cpp:134 msgid "" "Inkscape will run with default settings, and new settings will not be saved. " msgstr "" @@ -11881,7 +11735,7 @@ msgstr "" #. the creation failed #. _reportError(Glib::ustring::compose(_("Cannot create profile directory %1."), #. Glib::filename_to_utf8(_prefs_dir)), not_saved); -#: ../src/preferences.cpp:147 +#: ../src/preferences.cpp:149 #, c-format msgid "Cannot create profile directory %s." msgstr "Не вдається створити каталог профілю %s." @@ -11889,7 +11743,7 @@ msgstr "Не вдається створити каталог профілю %s. #. The profile dir is not actually a directory #. _reportError(Glib::ustring::compose(_("%1 is not a valid directory."), #. Glib::filename_to_utf8(_prefs_dir)), not_saved); -#: ../src/preferences.cpp:165 +#: ../src/preferences.cpp:167 #, c-format msgid "%s is not a valid directory." msgstr "%s не є коректним каталогом." @@ -11897,27 +11751,27 @@ msgstr "%s не є коректним каталогом." #. The write failed. #. _reportError(Glib::ustring::compose(_("Failed to create the preferences file %1."), #. Glib::filename_to_utf8(_prefs_filename)), not_saved); -#: ../src/preferences.cpp:176 +#: ../src/preferences.cpp:178 #, c-format msgid "Failed to create the preferences file %s." msgstr "На вдалося створити файл налаштувань %s." -#: ../src/preferences.cpp:212 +#: ../src/preferences.cpp:214 #, c-format msgid "The preferences file %s is not a regular file." msgstr "Файл налаштувань %s не є звичайним файлом." -#: ../src/preferences.cpp:222 +#: ../src/preferences.cpp:224 #, c-format msgid "The preferences file %s could not be read." msgstr "Файл налаштувань %s неможливо прочитати." -#: ../src/preferences.cpp:233 +#: ../src/preferences.cpp:235 #, c-format msgid "The preferences file %s is not a valid XML document." msgstr "Файл налаштувань %s не є коректним документом XML." -#: ../src/preferences.cpp:242 +#: ../src/preferences.cpp:244 #, c-format msgid "The file %s is not a valid Inkscape preferences file." msgstr "Файл %s не є коректним файлом налаштувань Inkscape." @@ -11947,8 +11801,8 @@ msgid "CC Attribution-NonCommercial-NoDerivs" msgstr "CC Attribution-NonCommercial-NoDerivs" #: ../src/rdf.cpp:205 -msgid "Public Domain" -msgstr "Для суспільного використання" +msgid "CC0 Public Domain Dedication" +msgstr "CC0 Public Domain Dedication" #: ../src/rdf.cpp:210 msgid "FreeArt" @@ -11959,150 +11813,149 @@ msgid "Open Font License" msgstr "Ліцензія Open Font" #. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/linking.html#AElementXLinkTitleAttribute -#: ../src/rdf.cpp:232 ../src/ui/dialog/object-attributes.cpp:57 +#: ../src/rdf.cpp:235 ../src/ui/dialog/object-attributes.cpp:57 msgid "Title:" msgstr "Заголовок:" -#: ../src/rdf.cpp:233 -msgid "Name by which this document is formally known" -msgstr "Назва, під якою цей документ офіційно відомий" +#: ../src/rdf.cpp:236 +msgid "A name given to the resource" +msgstr "Назва, яку надано ресурсу" -#: ../src/rdf.cpp:235 +#: ../src/rdf.cpp:238 msgid "Date:" msgstr "Дата:" -#: ../src/rdf.cpp:236 -msgid "Date associated with the creation of this document (YYYY-MM-DD)" -msgstr "Дата, до якої відноситься створення цього документа (РРРР-ММ-ДД)" +#: ../src/rdf.cpp:239 +msgid "" +"A point or period of time associated with an event in the lifecycle of the " +"resource" +msgstr "" +"Момент або інтервал часу, пов’язаний з подією у життєвому циклі ресурсу" -#: ../src/rdf.cpp:238 ../share/extensions/webslicer_create_rect.inx.h:3 +#: ../src/rdf.cpp:241 ../share/extensions/webslicer_create_rect.inx.h:3 msgid "Format:" msgstr "Формат:" -#: ../src/rdf.cpp:239 -msgid "The physical or digital manifestation of this document (MIME type)" -msgstr "Фізичний або цифровий вияв цього документа (MIME-тип)" - #: ../src/rdf.cpp:242 -msgid "Type of document (DCMI Type)" -msgstr "Тип документа (тип DCMI)" +msgid "The file format, physical medium, or dimensions of the resource" +msgstr "Формат файлів, фізичний носій або розмірності ресурсу" #: ../src/rdf.cpp:245 +msgid "The nature or genre of the resource" +msgstr "Природа або жанр ресурсу" + +#: ../src/rdf.cpp:248 msgid "Creator:" -msgstr "Автор:" +msgstr "Створювач:" -#: ../src/rdf.cpp:246 -msgid "" -"Name of entity primarily responsible for making the content of this document" -msgstr "" -"Назва суб'єкта, головним чином відповідального за створення цього документа" +#: ../src/rdf.cpp:249 +msgid "An entity primarily responsible for making the resource" +msgstr "Елемент, який головним чином є відповідальним за створення ресурсу" -#: ../src/rdf.cpp:248 +#: ../src/rdf.cpp:251 msgid "Rights:" msgstr "Права:" -#: ../src/rdf.cpp:249 -msgid "" -"Name of entity with rights to the Intellectual Property of this document" -msgstr "Назва суб'єкта, чиєю інтелектуальною власністю є цей документ" +#: ../src/rdf.cpp:252 +msgid "Information about rights held in and over the resource" +msgstr "Дані щодо прав доступу ресурсу і до ресурсу" -#: ../src/rdf.cpp:251 +#: ../src/rdf.cpp:254 msgid "Publisher:" msgstr "Поширювач:" -#: ../src/rdf.cpp:252 -msgid "Name of entity responsible for making this document available" -msgstr "Назва суб'єкта, відповідального за публікацію цього документа" - #: ../src/rdf.cpp:255 +msgid "An entity responsible for making the resource available" +msgstr "Елемент, який є відповідальним за доступність ресурсу" + +#: ../src/rdf.cpp:258 msgid "Identifier:" msgstr "Ідентифікатор:" -#: ../src/rdf.cpp:256 -msgid "Unique URI to reference this document" -msgstr "Унікальний URI для посилання на цей документ" - #: ../src/rdf.cpp:259 -msgid "Unique URI to reference the source of this document" -msgstr "Унікальний URI для посилання на джерело цього документа" +msgid "An unambiguous reference to the resource within a given context" +msgstr "Однозначне посилання на ресурс у даному контексті" + +#: ../src/rdf.cpp:262 +msgid "A related resource from which the described resource is derived" +msgstr "Пов’язаний ресурс, від якого походить описаний ресурс" -#: ../src/rdf.cpp:261 +#: ../src/rdf.cpp:264 msgid "Relation:" msgstr "Зв'язок:" -#: ../src/rdf.cpp:262 -msgid "Unique URI to a related document" -msgstr "Унікальний URI пов'язаного документа" +#: ../src/rdf.cpp:265 +msgid "A related resource" +msgstr "Пов’язаний ресурс" -#: ../src/rdf.cpp:264 ../src/ui/dialog/inkscape-preferences.cpp:1837 +#: ../src/rdf.cpp:267 ../src/ui/dialog/inkscape-preferences.cpp:1841 msgid "Language:" msgstr "Мова:" -#: ../src/rdf.cpp:265 -msgid "" -"Two-letter language tag with optional subtags for the language of this " -"document (e.g. 'en-GB')" -msgstr "Дволітерний код мови, можливо з підтеґами (наприклад, «uk-UA»)" +#: ../src/rdf.cpp:268 +msgid "A language of the resource" +msgstr "Мова ресурсу" -#: ../src/rdf.cpp:267 +#: ../src/rdf.cpp:270 msgid "Keywords:" msgstr "Ключові слова:" -#: ../src/rdf.cpp:268 -msgid "" -"The topic of this document as comma-separated key words, phrases, or " -"classifications" -msgstr "Опис теми цього документа списком ключових слів, фраз чи класифікацій" +#: ../src/rdf.cpp:271 +msgid "The topic of the resource" +msgstr "Тема ресурсу" #. TRANSLATORS: "Coverage": the spatial or temporal characteristics of the content. #. For info, see Appendix D of http://www.w3.org/TR/1998/WD-rdf-schema-19980409/ -#: ../src/rdf.cpp:272 +#: ../src/rdf.cpp:275 msgid "Coverage:" msgstr "Покриття:" -#: ../src/rdf.cpp:273 -msgid "Extent or scope of this document" -msgstr "Висвітлення або тематичні рамки цього документа" - #: ../src/rdf.cpp:276 -msgid "Description:" +msgid "" +"The spatial or temporal topic of the resource, the spatial applicability of " +"the resource, or the jurisdiction under which the resource is relevant" +msgstr "" +"Просторова або часова тема ресурсу, просторова застосовність ресурсу або " +"правові межі чинності ресурсу" + +#: ../src/rdf.cpp:279 +msgid "Description:" msgstr "Опис:" -#: ../src/rdf.cpp:277 -msgid "A short account of the content of this document" -msgstr "Короткий перелік вмісту цього документа" +#: ../src/rdf.cpp:280 +msgid "An account of the resource" +msgstr "Обліковий запис ресурсу" #. FIXME: need to handle 1 agent per line of input -#: ../src/rdf.cpp:281 +#: ../src/rdf.cpp:284 msgid "Contributors:" msgstr "Учасники розробки:" -#: ../src/rdf.cpp:282 -msgid "" -"Names of entities responsible for making contributions to the content of " -"this document" -msgstr "Назви суб'єктів, що зробили внесок у створення цього документа" +#: ../src/rdf.cpp:285 +msgid "An entity responsible for making contributions to the resource" +msgstr "" +"Елемент, який головним чином є відповідальним за внесення змін до ресурсу" #. TRANSLATORS: URL to a page that defines the license for the document -#: ../src/rdf.cpp:286 +#: ../src/rdf.cpp:289 msgid "URI:" msgstr "Адреса:" #. TRANSLATORS: this is where you put a URL to a page that defines the license -#: ../src/rdf.cpp:288 +#: ../src/rdf.cpp:291 msgid "URI to this document's license's namespace definition" msgstr "URI тексту ліцензії, що застосовується до цього документа" #. TRANSLATORS: fragment of XML representing the license of the document -#: ../src/rdf.cpp:292 +#: ../src/rdf.cpp:295 msgid "Fragment:" msgstr "Фрагмент:" -#: ../src/rdf.cpp:293 +#: ../src/rdf.cpp:296 msgid "XML fragment for the RDF 'License' section" msgstr "XML-фрагмент RDF-розділу «Ліцензія»" -#: ../src/rect-context.cpp:352 +#: ../src/rect-context.cpp:351 msgid "" "Ctrl: make square or integer-ratio rect, lock a rounded corner " "circular" @@ -12110,7 +11963,7 @@ msgstr "" "Ctrl: квадрати чи прямокутник з цілим відношенням сторін, кругле " "округлення" -#: ../src/rect-context.cpp:505 +#: ../src/rect-context.cpp:506 #, c-format msgid "" "Rectangle: %s × %s (constrained to ratio %d:%d); with ShiftПрямокутник: %s × %s (обмежено відношенням %d:%d); за допомогою " "Shift можна малювати навколо початкової точки" -#: ../src/rect-context.cpp:508 +#: ../src/rect-context.cpp:509 #, c-format msgid "" "Rectangle: %s × %s (constrained to golden ratio 1.618 : 1); with " @@ -12128,7 +11981,7 @@ msgstr "" "Прямокутник: %s × %s (обмежено параметром «золотого» перерізу " "1,618 : 1); за допомогою Shift можна малювати навколо початкової точки" -#: ../src/rect-context.cpp:510 +#: ../src/rect-context.cpp:511 #, c-format msgid "" "Rectangle: %s × %s (constrained to golden ratio 1 : 1.618); with " @@ -12137,7 +11990,7 @@ msgstr "" "Прямокутник: %s × %s (обмежено параметром «золотого» перерізу " "1 : 1,618); за допомогою Shift можна малювати навколо початкової точки" -#: ../src/rect-context.cpp:514 +#: ../src/rect-context.cpp:515 #, c-format msgid "" "Rectangle: %s × %s; with Ctrl to make square or integer-" @@ -12146,7 +11999,7 @@ msgstr "" "Прямокутник: %s × %s; Ctrl — квадрат чи прямокутник з " "цілим відношенням сторін, Shift — малювати навколо початкової точки" -#: ../src/rect-context.cpp:539 +#: ../src/rect-context.cpp:540 msgid "Create rectangle" msgstr "Створити прямокутник" @@ -12154,11 +12007,11 @@ msgstr "Створити прямокутник" msgid "Fixup broken links" msgstr "Виправлення помилкових посилань" -#: ../src/select-context.cpp:181 +#: ../src/select-context.cpp:183 msgid "Click selection to toggle scale/rotation handles" msgstr "Клацання на об'єкті перемикає стрілки зміни масштабу/обертання" -#: ../src/select-context.cpp:182 +#: ../src/select-context.cpp:184 msgid "" "No objects selected. Click, Shift+click, Alt+scroll mouse on top of objects, " "or drag around objects to select." @@ -12167,11 +12020,11 @@ msgstr "" "Shift+клацанням, Alt+прокручуванням коліщатка над об'єктами або обведіть " "об'єкт." -#: ../src/select-context.cpp:241 +#: ../src/select-context.cpp:243 msgid "Move canceled." msgstr "Переміщення скасовано." -#: ../src/select-context.cpp:249 +#: ../src/select-context.cpp:251 msgid "Selection canceled." msgstr "Позначення скасовано." @@ -12215,261 +12068,263 @@ msgstr "" msgid "Selected object is not a group. Cannot enter." msgstr "позначений об'єкт не є групою. Неможливо увійти." -#: ../src/selection-chemistry.cpp:377 +#: ../src/selection-chemistry.cpp:392 msgid "Delete text" msgstr "Вилучити текст" -#: ../src/selection-chemistry.cpp:385 +#: ../src/selection-chemistry.cpp:400 msgid "Nothing was deleted." msgstr "Нічого не було вилучено." -#: ../src/selection-chemistry.cpp:404 ../src/text-context.cpp:1030 +#: ../src/selection-chemistry.cpp:419 ../src/text-context.cpp:1031 #: ../src/ui/dialog/calligraphic-profile-rename.cpp:75 -#: ../src/ui/dialog/swatches.cpp:278 ../src/widgets/erasor-toolbar.cpp:114 +#: ../src/ui/dialog/swatches.cpp:279 ../src/widgets/eraser-toolbar.cpp:110 #: ../src/widgets/gradient-toolbar.cpp:1193 #: ../src/widgets/gradient-toolbar.cpp:1207 #: ../src/widgets/gradient-toolbar.cpp:1221 -#: ../src/widgets/node-toolbar.cpp:410 +#: ../src/widgets/node-toolbar.cpp:413 msgid "Delete" msgstr "Вилучити" -#: ../src/selection-chemistry.cpp:432 +#: ../src/selection-chemistry.cpp:447 msgid "Select object(s) to duplicate." msgstr "Позначте об'єкт(и) для дублювання." -#: ../src/selection-chemistry.cpp:541 +#: ../src/selection-chemistry.cpp:556 msgid "Delete all" msgstr "Вилучити все" -#: ../src/selection-chemistry.cpp:737 +#: ../src/selection-chemistry.cpp:746 msgid "Select some objects to group." msgstr "Позначте два або більше об'єктів для групування." -#: ../src/selection-chemistry.cpp:752 ../src/selection-describer.cpp:54 +#: ../src/selection-chemistry.cpp:761 ../src/selection-describer.cpp:55 msgid "Group" msgstr "Згрупувати" -#: ../src/selection-chemistry.cpp:766 +#: ../src/selection-chemistry.cpp:770 msgid "Select a group to ungroup." msgstr "Позначте групу для розгрупування." -#: ../src/selection-chemistry.cpp:809 +#: ../src/selection-chemistry.cpp:813 msgid "No groups to ungroup in the selection." msgstr "У позначеному немає груп." -#: ../src/selection-chemistry.cpp:815 ../src/sp-item-group.cpp:479 +#: ../src/selection-chemistry.cpp:819 ../src/sp-item-group.cpp:479 msgid "Ungroup" msgstr "Розгрупувати" -#: ../src/selection-chemistry.cpp:901 +#: ../src/selection-chemistry.cpp:900 msgid "Select object(s) to raise." msgstr "Оберіть об'єкт(и) для підняття." -#: ../src/selection-chemistry.cpp:907 ../src/selection-chemistry.cpp:967 -#: ../src/selection-chemistry.cpp:1000 ../src/selection-chemistry.cpp:1064 +#: ../src/selection-chemistry.cpp:906 ../src/selection-chemistry.cpp:962 +#: ../src/selection-chemistry.cpp:990 ../src/selection-chemistry.cpp:1051 msgid "" "You cannot raise/lower objects from different groups or layers." msgstr "" "Не можна піднімати/опускати об'єкти з різних груп чи шарів." #. TRANSLATORS: "Raise" means "to raise an object" in the undo history -#: ../src/selection-chemistry.cpp:947 +#: ../src/selection-chemistry.cpp:946 msgctxt "Undo action" msgid "Raise" msgstr "підняття" -#: ../src/selection-chemistry.cpp:959 +#: ../src/selection-chemistry.cpp:954 msgid "Select object(s) to raise to top." msgstr "Позначте об'єкт(и) для піднімання нагору." -#: ../src/selection-chemistry.cpp:982 +#: ../src/selection-chemistry.cpp:977 msgid "Raise to top" msgstr "Підняти на передній план" -#: ../src/selection-chemistry.cpp:994 +#: ../src/selection-chemistry.cpp:984 msgid "Select object(s) to lower." msgstr "Позначте об'єкт(и) для опускання." -#: ../src/selection-chemistry.cpp:1044 +#. TRANSLATORS: "Lower" means "to lower an object" in the undo history +#: ../src/selection-chemistry.cpp:1035 +msgctxt "Undo action" msgid "Lower" -msgstr "Опустити" +msgstr "опускання" -#: ../src/selection-chemistry.cpp:1056 +#: ../src/selection-chemistry.cpp:1043 msgid "Select object(s) to lower to bottom." msgstr "Позначте об'єкт(и) для опускання на низ." -#: ../src/selection-chemistry.cpp:1091 +#: ../src/selection-chemistry.cpp:1078 msgid "Lower to bottom" msgstr "Опустити на задній план" -#: ../src/selection-chemistry.cpp:1098 +#: ../src/selection-chemistry.cpp:1085 msgid "Nothing to undo." msgstr "Немає операцій, що можна скасувати." -#: ../src/selection-chemistry.cpp:1106 +#: ../src/selection-chemistry.cpp:1093 msgid "Nothing to redo." msgstr "Немає операцій, що можна вернути." -#: ../src/selection-chemistry.cpp:1167 +#: ../src/selection-chemistry.cpp:1154 msgid "Paste" msgstr "Вставити" -#: ../src/selection-chemistry.cpp:1175 +#: ../src/selection-chemistry.cpp:1162 msgid "Paste style" msgstr "Вставити стиль" -#: ../src/selection-chemistry.cpp:1185 +#: ../src/selection-chemistry.cpp:1172 msgid "Paste live path effect" msgstr "Вставити ефект динамічного контуру" -#: ../src/selection-chemistry.cpp:1206 +#: ../src/selection-chemistry.cpp:1193 msgid "Select object(s) to remove live path effects from." msgstr "Оберіть об'єкт(и) для вилучення анімованих ефектів контурів." -#: ../src/selection-chemistry.cpp:1218 +#: ../src/selection-chemistry.cpp:1205 msgid "Remove live path effect" msgstr "Вилучити анімований ефект контуру" -#: ../src/selection-chemistry.cpp:1229 +#: ../src/selection-chemistry.cpp:1216 msgid "Select object(s) to remove filters from." msgstr "Виберіть об'єкт(и), з яких слід вилучити фільтри." -#: ../src/selection-chemistry.cpp:1239 -#: ../src/ui/dialog/filter-effects-dialog.cpp:1448 +#: ../src/selection-chemistry.cpp:1226 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1461 msgid "Remove filter" msgstr "Вилучити фільтр" -#: ../src/selection-chemistry.cpp:1248 +#: ../src/selection-chemistry.cpp:1235 msgid "Paste size" msgstr "Вставити розмір" -#: ../src/selection-chemistry.cpp:1257 +#: ../src/selection-chemistry.cpp:1244 msgid "Paste size separately" msgstr "Вставити розмір окремо" -#: ../src/selection-chemistry.cpp:1267 +#: ../src/selection-chemistry.cpp:1254 msgid "Select object(s) to move to the layer above." msgstr "Позначте об'єкти для переміщення на шар вище." -#: ../src/selection-chemistry.cpp:1293 +#: ../src/selection-chemistry.cpp:1280 msgid "Raise to next layer" msgstr "Піднятися на наступний шар" -#: ../src/selection-chemistry.cpp:1300 +#: ../src/selection-chemistry.cpp:1287 msgid "No more layers above." msgstr "Більше немає вищих шарів." -#: ../src/selection-chemistry.cpp:1312 +#: ../src/selection-chemistry.cpp:1299 msgid "Select object(s) to move to the layer below." msgstr "Позначте об'єкти для переміщення на шар нижче." -#: ../src/selection-chemistry.cpp:1338 +#: ../src/selection-chemistry.cpp:1325 msgid "Lower to previous layer" msgstr "Опуститися на попередній шар" -#: ../src/selection-chemistry.cpp:1345 +#: ../src/selection-chemistry.cpp:1332 msgid "No more layers below." msgstr "Немає нижчого шару." -#: ../src/selection-chemistry.cpp:1357 +#: ../src/selection-chemistry.cpp:1344 msgid "Select object(s) to move." msgstr "Позначте об'єкти для пересування." -#: ../src/selection-chemistry.cpp:1374 ../src/verbs.cpp:2517 +#: ../src/selection-chemistry.cpp:1361 ../src/verbs.cpp:2572 msgid "Move selection to layer" msgstr "Пересунути позначене до шару" -#: ../src/selection-chemistry.cpp:1598 +#: ../src/selection-chemistry.cpp:1585 msgid "Remove transform" msgstr "Прибрати трансформацію" -#: ../src/selection-chemistry.cpp:1701 +#: ../src/selection-chemistry.cpp:1688 msgid "Rotate 90° CCW" msgstr "Обернути на 90° проти годинникової стрілки" -#: ../src/selection-chemistry.cpp:1701 +#: ../src/selection-chemistry.cpp:1688 msgid "Rotate 90° CW" msgstr "Обернути на 90° за годинниковою стрілкою" -#: ../src/selection-chemistry.cpp:1722 ../src/seltrans.cpp:485 -#: ../src/ui/dialog/transformation.cpp:892 +#: ../src/selection-chemistry.cpp:1709 ../src/seltrans.cpp:468 +#: ../src/ui/dialog/transformation.cpp:893 msgid "Rotate" msgstr "Обертати" -#: ../src/selection-chemistry.cpp:2101 +#: ../src/selection-chemistry.cpp:2088 msgid "Rotate by pixels" msgstr "Обертати поточково" -#: ../src/selection-chemistry.cpp:2131 ../src/seltrans.cpp:482 -#: ../src/ui/dialog/transformation.cpp:867 +#: ../src/selection-chemistry.cpp:2118 ../src/seltrans.cpp:465 +#: ../src/ui/dialog/transformation.cpp:868 #: ../share/extensions/interp_att_g.inx.h:12 msgid "Scale" msgstr "Масштабувати" -#: ../src/selection-chemistry.cpp:2156 +#: ../src/selection-chemistry.cpp:2143 msgid "Scale by whole factor" msgstr "Масштабувати за повним коефіцієнтом" -#: ../src/selection-chemistry.cpp:2171 +#: ../src/selection-chemistry.cpp:2158 msgid "Move vertically" msgstr "Перемістити вертикально" -#: ../src/selection-chemistry.cpp:2174 +#: ../src/selection-chemistry.cpp:2161 msgid "Move horizontally" msgstr "Перемістити горизонтально" -#: ../src/selection-chemistry.cpp:2177 ../src/selection-chemistry.cpp:2203 -#: ../src/seltrans.cpp:479 ../src/ui/dialog/transformation.cpp:806 +#: ../src/selection-chemistry.cpp:2164 ../src/selection-chemistry.cpp:2190 +#: ../src/seltrans.cpp:462 ../src/ui/dialog/transformation.cpp:807 msgid "Move" msgstr "Перемістити" -#: ../src/selection-chemistry.cpp:2197 +#: ../src/selection-chemistry.cpp:2184 msgid "Move vertically by pixels" msgstr "Перемістити вертикально поточково" -#: ../src/selection-chemistry.cpp:2200 +#: ../src/selection-chemistry.cpp:2187 msgid "Move horizontally by pixels" msgstr "Перемістити горизонтально поточково" -#: ../src/selection-chemistry.cpp:2332 +#: ../src/selection-chemistry.cpp:2319 msgid "The selection has no applied path effect." msgstr "Обране не має застосованого ефекту контуру." -#: ../src/selection-chemistry.cpp:2535 +#: ../src/selection-chemistry.cpp:2522 msgctxt "Action" msgid "Clone" msgstr "Клонувати" -#: ../src/selection-chemistry.cpp:2551 +#: ../src/selection-chemistry.cpp:2538 msgid "Select clones to relink." msgstr "Позначте клон для перез'єднання." -#: ../src/selection-chemistry.cpp:2558 +#: ../src/selection-chemistry.cpp:2545 msgid "Copy an object to clipboard to relink clones to." msgstr "" "Копіювати об'єкт до буфера обміну інформації для перез'єднання клонів." -#: ../src/selection-chemistry.cpp:2582 +#: ../src/selection-chemistry.cpp:2569 msgid "No clones to relink in the selection." msgstr "У позначеному немає клонів для перез'єднання." -#: ../src/selection-chemistry.cpp:2585 +#: ../src/selection-chemistry.cpp:2572 msgid "Relink clone" msgstr "Перез'єднати клон" -#: ../src/selection-chemistry.cpp:2599 +#: ../src/selection-chemistry.cpp:2586 msgid "Select clones to unlink." msgstr "Позначте клон для від'єднання." -#: ../src/selection-chemistry.cpp:2653 +#: ../src/selection-chemistry.cpp:2640 msgid "No clones to unlink in the selection." msgstr "У позначеному немає клонів." -#: ../src/selection-chemistry.cpp:2657 +#: ../src/selection-chemistry.cpp:2644 msgid "Unlink clone" msgstr "Від'єднати клон" -#: ../src/selection-chemistry.cpp:2670 +#: ../src/selection-chemistry.cpp:2657 msgid "" "Select a clone to go to its original. Select a linked offset " "to go to its source. Select a text on path to go to the path. Select " @@ -12479,7 +12334,7 @@ msgstr "" "перейти до її контуру; текст вздовж контуру, щоб перейти до його " "контуру. Позначте текст у рамці, щоб перейти до рамки." -#: ../src/selection-chemistry.cpp:2703 +#: ../src/selection-chemistry.cpp:2690 msgid "" "Cannot find the object to select (orphaned clone, offset, textpath, " "flowed text?)" @@ -12487,7 +12342,7 @@ msgstr "" "Не вдається знайти об'єкт, що позначається (осиротілий клон, втяжка, " "текст вздовж контуру чи текст у рамці?)" -#: ../src/selection-chemistry.cpp:2709 +#: ../src/selection-chemistry.cpp:2696 msgid "" "The object you're trying to select is not visible (it is in <" "defs>)" @@ -12495,219 +12350,219 @@ msgstr "" "Об'єкт, який ви намагаєтесь позначити, є невидимим (знаходиться у <" "defs>)" -#: ../src/selection-chemistry.cpp:2754 +#: ../src/selection-chemistry.cpp:2741 msgid "Select one path to clone." msgstr "Позначте один контур для клонування." -#: ../src/selection-chemistry.cpp:2758 +#: ../src/selection-chemistry.cpp:2745 msgid "Select one path to clone." msgstr "Позначте один контур для клонування." -#: ../src/selection-chemistry.cpp:2813 +#: ../src/selection-chemistry.cpp:2800 msgid "Select object(s) to convert to marker." msgstr "Позначте об'єкт(и) для перетворення у маркер." -#: ../src/selection-chemistry.cpp:2881 +#: ../src/selection-chemistry.cpp:2868 msgid "Objects to marker" msgstr "Об'єкти у маркер" -#: ../src/selection-chemistry.cpp:2909 +#: ../src/selection-chemistry.cpp:2896 msgid "Select object(s) to convert to guides." msgstr "Позначте об'єкт(и) для перетворення у напрямні." -#: ../src/selection-chemistry.cpp:2921 +#: ../src/selection-chemistry.cpp:2908 msgid "Objects to guides" msgstr "Об'єкти у напрямні" -#: ../src/selection-chemistry.cpp:2940 +#: ../src/selection-chemistry.cpp:2927 msgid "Select groups to convert to symbols." msgstr "Позначте групи для перетворення на символи." -#: ../src/selection-chemistry.cpp:2960 +#: ../src/selection-chemistry.cpp:2947 msgid "No groups converted to symbols." msgstr "На символи не перетвореною жодної групи." #. Group just disappears, nothing to select. -#: ../src/selection-chemistry.cpp:2967 +#: ../src/selection-chemistry.cpp:2954 msgid "Group to symbol" msgstr "Групу у символ" -#: ../src/selection-chemistry.cpp:3031 +#: ../src/selection-chemistry.cpp:3018 msgid "Select a symbol to extract objects from." msgstr "Позначте символ для видобування з нього об’єктів." -#: ../src/selection-chemistry.cpp:3040 +#: ../src/selection-chemistry.cpp:3027 msgid "Select only one symbol to convert to group." msgstr "Позначте лише один символ для перетворення на групу." -#: ../src/selection-chemistry.cpp:3081 +#: ../src/selection-chemistry.cpp:3068 msgid "Group from symbol" msgstr "Група з символу" -#: ../src/selection-chemistry.cpp:3098 +#: ../src/selection-chemistry.cpp:3085 msgid "Select object(s) to convert to pattern." msgstr "Позначте об'єкт(и) для перетворення у візерунок." -#: ../src/selection-chemistry.cpp:3186 +#: ../src/selection-chemistry.cpp:3173 msgid "Objects to pattern" msgstr "Об'єкти у візерунок" -#: ../src/selection-chemistry.cpp:3202 +#: ../src/selection-chemistry.cpp:3189 msgid "Select an object with pattern fill to extract objects from." msgstr "" "Позначте об'єкт із заповненням візерунком для витягування об'єктів з " "нього." -#: ../src/selection-chemistry.cpp:3255 +#: ../src/selection-chemistry.cpp:3242 msgid "No pattern fills in the selection." msgstr "У позначеному немає заповнення візерунком." -#: ../src/selection-chemistry.cpp:3258 +#: ../src/selection-chemistry.cpp:3245 msgid "Pattern to objects" msgstr "Візерунок у об'єкти" -#: ../src/selection-chemistry.cpp:3349 +#: ../src/selection-chemistry.cpp:3336 msgid "Select object(s) to make a bitmap copy." msgstr "Позначте об'єкти для створення їхньої растрової копії." -#: ../src/selection-chemistry.cpp:3353 +#: ../src/selection-chemistry.cpp:3340 msgid "Rendering bitmap..." msgstr "Показ растрового зображення…" -#: ../src/selection-chemistry.cpp:3530 +#: ../src/selection-chemistry.cpp:3517 msgid "Create bitmap" msgstr "Створення растрового зображення" -#: ../src/selection-chemistry.cpp:3562 +#: ../src/selection-chemistry.cpp:3549 msgid "Select object(s) to create clippath or mask from." msgstr "" "Оберіть об'єкт(и) для створення з них контуру вирізання або маски." -#: ../src/selection-chemistry.cpp:3565 +#: ../src/selection-chemistry.cpp:3552 msgid "Select mask object and object(s) to apply clippath or mask to." msgstr "" "Оберіть об'єкт-маску та об'єкт(и) для застосування вирізання або " "маскування." -#: ../src/selection-chemistry.cpp:3746 +#: ../src/selection-chemistry.cpp:3733 msgid "Set clipping path" msgstr "Задати контур вирізання" -#: ../src/selection-chemistry.cpp:3748 +#: ../src/selection-chemistry.cpp:3735 msgid "Set mask" msgstr "Задати маску" -#: ../src/selection-chemistry.cpp:3763 +#: ../src/selection-chemistry.cpp:3750 msgid "Select object(s) to remove clippath or mask from." msgstr "" "Оберіть об'єкт(и) для вилучення контуру вирізання або маскування." -#: ../src/selection-chemistry.cpp:3874 +#: ../src/selection-chemistry.cpp:3861 msgid "Release clipping path" msgstr "Від'єднати закріплений контур" -#: ../src/selection-chemistry.cpp:3876 +#: ../src/selection-chemistry.cpp:3863 msgid "Release mask" msgstr "Маску знято" -#: ../src/selection-chemistry.cpp:3895 +#: ../src/selection-chemistry.cpp:3882 msgid "Select object(s) to fit canvas to." msgstr "Оберіть об'єкт(и) для підбирання їхніх розмірів під полотно." #. Fit Page -#: ../src/selection-chemistry.cpp:3915 ../src/verbs.cpp:2843 +#: ../src/selection-chemistry.cpp:3902 ../src/verbs.cpp:2896 msgid "Fit Page to Selection" msgstr "Підігнати полотно до позначеної області" -#: ../src/selection-chemistry.cpp:3944 ../src/verbs.cpp:2845 +#: ../src/selection-chemistry.cpp:3931 ../src/verbs.cpp:2898 msgid "Fit Page to Drawing" msgstr "Підігнати полотно під намальоване" -#: ../src/selection-chemistry.cpp:3965 ../src/verbs.cpp:2847 +#: ../src/selection-chemistry.cpp:3952 ../src/verbs.cpp:2900 msgid "Fit Page to Selection or Drawing" msgstr "Підігнати полотно під позначену область чи область креслення" #. TRANSLATORS: "Link" means internet link (anchor) -#: ../src/selection-describer.cpp:46 +#: ../src/selection-describer.cpp:47 msgctxt "Web" msgid "Link" msgstr "Посилання" -#: ../src/selection-describer.cpp:48 +#: ../src/selection-describer.cpp:49 msgid "Circle" msgstr "Коло" #. Ellipse -#: ../src/selection-describer.cpp:50 ../src/selection-describer.cpp:77 +#: ../src/selection-describer.cpp:51 ../src/selection-describer.cpp:78 #: ../src/ui/dialog/inkscape-preferences.cpp:403 -#: ../src/widgets/pencil-toolbar.cpp:192 +#: ../src/widgets/pencil-toolbar.cpp:187 msgid "Ellipse" msgstr "Еліпс" -#: ../src/selection-describer.cpp:52 +#: ../src/selection-describer.cpp:53 msgid "Flowed text" msgstr "Контурний текст" -#: ../src/selection-describer.cpp:58 +#: ../src/selection-describer.cpp:59 msgid "Line" msgstr "Лінія" -#: ../src/selection-describer.cpp:60 +#: ../src/selection-describer.cpp:61 msgid "Path" msgstr "Контур" -#: ../src/selection-describer.cpp:62 ../src/widgets/star-toolbar.cpp:474 +#: ../src/selection-describer.cpp:63 ../src/widgets/star-toolbar.cpp:470 msgid "Polygon" msgstr "Багатокутник" -#: ../src/selection-describer.cpp:64 +#: ../src/selection-describer.cpp:65 msgid "Polyline" msgstr "Багатокутник" #. Rectangle -#: ../src/selection-describer.cpp:66 +#: ../src/selection-describer.cpp:67 #: ../src/ui/dialog/inkscape-preferences.cpp:393 msgid "Rectangle" msgstr "Прямокутник" #. 3D box -#: ../src/selection-describer.cpp:68 +#: ../src/selection-describer.cpp:69 #: ../src/ui/dialog/inkscape-preferences.cpp:398 msgid "3D Box" msgstr "Просторовий об'єкт" -#: ../src/selection-describer.cpp:70 +#: ../src/selection-describer.cpp:71 msgctxt "Object" msgid "Text" msgstr "Текст" -#: ../src/selection-describer.cpp:73 +#: ../src/selection-describer.cpp:74 msgctxt "Object" msgid "Symbol" msgstr "Символ" #. TRANSLATORS: "Clone" is a noun, type of object -#: ../src/selection-describer.cpp:75 +#: ../src/selection-describer.cpp:76 msgctxt "Object" msgid "Clone" msgstr "Клон" -#: ../src/selection-describer.cpp:79 +#: ../src/selection-describer.cpp:80 #: ../share/extensions/gcodetools_lathe.inx.h:9 msgid "Offset path" msgstr "Розтягнення контуру" #. Spiral -#: ../src/selection-describer.cpp:81 +#: ../src/selection-describer.cpp:82 #: ../src/ui/dialog/inkscape-preferences.cpp:411 #: ../share/extensions/gcodetools_area.inx.h:11 msgid "Spiral" msgstr "Спіраль" #. Star -#: ../src/selection-describer.cpp:83 +#: ../src/selection-describer.cpp:84 #: ../src/ui/dialog/inkscape-preferences.cpp:407 -#: ../src/widgets/star-toolbar.cpp:481 +#: ../src/widgets/star-toolbar.cpp:477 msgid "Star" msgstr "Зірка" @@ -12840,19 +12695,57 @@ msgstr[0] "; %d фільтрований об'єкт " msgstr[1] "; %d фільтровані об'єкти " msgstr[2] "; %d фільтрованих об'єктів " -#: ../src/seltrans.cpp:488 ../src/ui/dialog/transformation.cpp:950 +#: ../src/seltrans.cpp:471 ../src/ui/dialog/transformation.cpp:981 msgid "Skew" msgstr "Нахил" -#: ../src/seltrans.cpp:500 +#: ../src/seltrans.cpp:483 msgid "Set center" msgstr "Встановлення центру" -#: ../src/seltrans.cpp:575 +#: ../src/seltrans.cpp:558 msgid "Stamp" msgstr "Штамп" -#: ../src/seltrans.cpp:604 +#: ../src/seltrans.cpp:711 +msgid "Reset center" +msgstr "Повернення до початкового центру" + +#: ../src/seltrans.cpp:938 ../src/seltrans.cpp:1035 +#, c-format +msgid "Scale: %0.2f%% x %0.2f%%; with Ctrl to lock ratio" +msgstr "" +"Зміна розміру: %0.2f%% x %0.2f%%; з Ctrl — зберігаючи пропорцію" + +#. TRANSLATORS: don't modify the first ";" +#. (it will NOT be displayed as ";" - only the second one will be) +#: ../src/seltrans.cpp:1167 +#, c-format +msgid "Skew: %0.2f°; with Ctrl to snap angle" +msgstr "Нахил: %0.2f°; з Ctrl — обмежити кут" + +#. TRANSLATORS: don't modify the first ";" +#. (it will NOT be displayed as ";" - only the second one will be) +#: ../src/seltrans.cpp:1242 +#, c-format +msgid "Rotate: %0.2f°; with Ctrl to snap angle" +msgstr "Обертання: %0.2f°; з Ctrl — обмежити кут" + +#: ../src/seltrans.cpp:1279 +#, c-format +msgid "Move center to %s, %s" +msgstr "Перемістити центр до %s, %s" + +#: ../src/seltrans.cpp:1433 +#, c-format +msgid "" +"Move by %s, %s; with Ctrl to restrict to horizontal/vertical; " +"with Shift to disable snapping" +msgstr "" +"Перемістити на %s, %s. Ctrl — лише по горизонталі/вертикалі, " +"Shift — без прилипання" + +#: ../src/seltrans-handles.cpp:9 msgid "" "Squeeze or stretch selection; with Ctrl to scale uniformly; " "with Shift to scale around rotation center" @@ -12860,7 +12753,7 @@ msgstr "" "Стиснути чи розтягнути позначені об'єкти; з Ctrl — зберігати " "пропорцію; з Shift — навколо центру обертання" -#: ../src/seltrans.cpp:605 +#: ../src/seltrans-handles.cpp:10 msgid "" "Scale selection; with Ctrl to scale uniformly; with Shift to scale around rotation center" @@ -12868,7 +12761,7 @@ msgstr "" "Змінювати розмір позначених об'єктів; з Ctrl — зберігати " "пропорцію; з Shift — навколо центру обертання" -#: ../src/seltrans.cpp:609 +#: ../src/seltrans-handles.cpp:11 msgid "" "Skew selection; with Ctrl to snap angle; with Shift to " "skew around the opposite side" @@ -12876,7 +12769,7 @@ msgstr "" "Нахилити позначені об'єкти; з Ctrl — обмежувати кут; з " "Shift — навколо протилежного кута" -#: ../src/seltrans.cpp:610 +#: ../src/seltrans-handles.cpp:12 msgid "" "Rotate selection; with Ctrl to snap angle; with Shift " "to rotate around the opposite corner" @@ -12884,7 +12777,7 @@ msgstr "" "Обертати позначені об'єкти; з Ctrl — обмежувати кут; з " "Shift — навколо протилежного кута" -#: ../src/seltrans.cpp:623 +#: ../src/seltrans-handles.cpp:13 msgid "" "Center of rotation and skewing: drag to reposition; scaling with " "Shift also uses this center" @@ -12892,50 +12785,12 @@ msgstr "" "Центр обертання та нахилу: його можна перетягнути; зміна розміру з " "Shift також відбувається навколо нього" -#: ../src/seltrans.cpp:773 -msgid "Reset center" -msgstr "Повернення до початкового центру" - -#: ../src/seltrans.cpp:1017 ../src/seltrans.cpp:1114 -#, c-format -msgid "Scale: %0.2f%% x %0.2f%%; with Ctrl to lock ratio" -msgstr "" -"Зміна розміру: %0.2f%% x %0.2f%%; з Ctrl — зберігаючи пропорцію" - -#. TRANSLATORS: don't modify the first ";" -#. (it will NOT be displayed as ";" - only the second one will be) -#: ../src/seltrans.cpp:1228 -#, c-format -msgid "Skew: %0.2f°; with Ctrl to snap angle" -msgstr "Нахил: %0.2f°; з Ctrl — обмежити кут" - -#. TRANSLATORS: don't modify the first ";" -#. (it will NOT be displayed as ";" - only the second one will be) -#: ../src/seltrans.cpp:1303 -#, c-format -msgid "Rotate: %0.2f°; with Ctrl to snap angle" -msgstr "Обертання: %0.2f°; з Ctrl — обмежити кут" - -#: ../src/seltrans.cpp:1338 -#, c-format -msgid "Move center to %s, %s" -msgstr "Перемістити центр до %s, %s" - -#: ../src/seltrans.cpp:1514 -#, c-format -msgid "" -"Move by %s, %s; with Ctrl to restrict to horizontal/vertical; " -"with Shift to disable snapping" -msgstr "" -"Перемістити на %s, %s. Ctrl — лише по горизонталі/вертикалі, " -"Shift — без прилипання" - -#: ../src/shortcuts.cpp:225 +#: ../src/shortcuts.cpp:226 #, c-format msgid "Keyboard directory (%s) is unavailable." msgstr "Каталог з параметрами клавіатури (%s) недоступний." -#: ../src/shortcuts.cpp:369 +#: ../src/shortcuts.cpp:370 msgid "Select a file to import" msgstr "Виберіть файл для імпортування" @@ -12948,19 +12803,19 @@ msgstr "Посилання на: %s" msgid "Link without URI" msgstr "Посилання без URI" -#: ../src/sp-ellipse.cpp:452 ../src/sp-ellipse.cpp:775 +#: ../src/sp-ellipse.cpp:457 ../src/sp-ellipse.cpp:780 msgid "Ellipse" msgstr "Еліпс" -#: ../src/sp-ellipse.cpp:566 +#: ../src/sp-ellipse.cpp:571 msgid "Circle" msgstr "Коло" -#: ../src/sp-ellipse.cpp:770 +#: ../src/sp-ellipse.cpp:775 msgid "Segment" msgstr "Сегмент" -#: ../src/sp-ellipse.cpp:772 +#: ../src/sp-ellipse.cpp:777 msgid "Arc" msgstr "Дуга" @@ -12979,21 +12834,21 @@ msgstr "Область верстки" msgid "Flow excluded region" msgstr "Виключена область верстки" -#: ../src/sp-guide.cpp:290 +#: ../src/sp-guide.cpp:289 msgid "Create Guides Around the Page" msgstr "Створити напрямні навколо сторінки" -#: ../src/sp-guide.cpp:302 ../src/verbs.cpp:2414 +#: ../src/sp-guide.cpp:301 ../src/verbs.cpp:2467 msgid "Delete All Guides" msgstr "Вилучити всі напрямні" #. Guide has probably been deleted and no longer has an attached namedview. -#: ../src/sp-guide.cpp:462 +#: ../src/sp-guide.cpp:461 #, c-format msgid "Deleted" msgstr "Вилучено" -#: ../src/sp-guide.cpp:471 +#: ../src/sp-guide.cpp:470 msgid "" "Shift+drag to rotate, Ctrl+drag to move origin, Del to " "delete" @@ -13001,31 +12856,31 @@ msgstr "" "Shift+Перетягування починає обертання. Ctrl+Перетягування " "пересуває центр обертання. Del вилучає." -#: ../src/sp-guide.cpp:475 +#: ../src/sp-guide.cpp:474 #, c-format msgid "vertical, at %s" msgstr "вертикальна, на %s" -#: ../src/sp-guide.cpp:478 +#: ../src/sp-guide.cpp:477 #, c-format msgid "horizontal, at %s" msgstr "горизонтальна, на %s" -#: ../src/sp-guide.cpp:483 +#: ../src/sp-guide.cpp:482 #, c-format msgid "at %d degrees, through (%s,%s)" msgstr "на %d градусів, через (%s,%s)" -#: ../src/sp-image.cpp:1068 +#: ../src/sp-image.cpp:1069 msgid "embedded" msgstr "включене" -#: ../src/sp-image.cpp:1076 +#: ../src/sp-image.cpp:1077 #, c-format msgid "Image with bad reference: %s" msgstr "Зображення з неправильним посиланням: %s" -#: ../src/sp-image.cpp:1077 +#: ../src/sp-image.cpp:1078 #, c-format msgid "Image %d × %d: %s" msgstr "Зображення %d × %d: %s" @@ -13038,7 +12893,7 @@ msgstr[0] "Група з %d об'єкта" msgstr[1] "Група з %d об'єктів" msgstr[2] "Група з %d об'єктів" -#: ../src/sp-item.cpp:977 ../src/verbs.cpp:211 +#: ../src/sp-item.cpp:977 ../src/verbs.cpp:213 msgid "Object" msgstr "Об'єкт" @@ -13068,7 +12923,7 @@ msgstr "Рядок" #: ../src/sp-lpe-item.cpp:316 msgid "An exception occurred during execution of the Path Effect." -msgstr "Під час виконання Ефекту контуру сталася помилка типу виключення." +msgstr "Під час застосування ефекту контуру сталася помилка типу виключення." #. TRANSLATORS COMMENT: %s is either "outset" or "inset" depending on sign #: ../src/sp-offset.cpp:393 @@ -13142,16 +12997,16 @@ msgstr[1] "Багатокутник з %d вершинами" msgstr[2] "Багатокутник з %d вершинами" #. TRANSLATORS: For description of font with no name. -#: ../src/sp-text.cpp:392 +#: ../src/sp-text.cpp:390 msgid "<no name found>" msgstr "<назву не знайдено>" -#: ../src/sp-text.cpp:404 +#: ../src/sp-text.cpp:403 #, c-format msgid "Text on path%s (%s, %s)" msgstr "Текст за контуром%s (%s, %s)" -#: ../src/sp-text.cpp:405 +#: ../src/sp-text.cpp:404 #, c-format msgid "Text%s (%s, %s)" msgstr "Текст%s (%s, %s)" @@ -13173,31 +13028,31 @@ msgstr "Осиротілий клон тексту" msgid "Text span" msgstr "Блок тексту" -#: ../src/sp-use.cpp:303 +#: ../src/sp-use.cpp:299 #, c-format msgid "'%s' Symbol" msgstr "Символ «%s»" #. TRANSLATORS: Used for statusbar description for long chains: #. * "Clone of: Clone of: ... in Layer 1". -#: ../src/sp-use.cpp:311 +#: ../src/sp-use.cpp:307 msgid "..." msgstr "…" -#: ../src/sp-use.cpp:319 +#: ../src/sp-use.cpp:315 #, c-format msgid "Clone of: %s" msgstr "Клон від: %s" -#: ../src/sp-use.cpp:323 +#: ../src/sp-use.cpp:319 msgid "Orphaned clone" msgstr "Осиротілий клон" -#: ../src/spiral-context.cpp:304 +#: ../src/spiral-context.cpp:303 msgid "Ctrl: snap angle" msgstr "Ctrl: обмежити кут" -#: ../src/spiral-context.cpp:306 +#: ../src/spiral-context.cpp:305 msgid "Alt: lock spiral radius" msgstr "Alt: заблокувати радіус спіралі" @@ -13211,46 +13066,46 @@ msgstr "Спіраль: радіус %s, кут %5g°; з Ctrl msgid "Create spiral" msgstr "Створення спіралі" -#: ../src/splivarot.cpp:68 ../src/splivarot.cpp:74 +#: ../src/splivarot.cpp:69 ../src/splivarot.cpp:75 msgid "Union" msgstr "Об'єднання" -#: ../src/splivarot.cpp:80 +#: ../src/splivarot.cpp:81 msgid "Intersection" msgstr "Перетин" -#: ../src/splivarot.cpp:86 ../src/splivarot.cpp:92 +#: ../src/splivarot.cpp:87 ../src/splivarot.cpp:93 msgid "Difference" msgstr "Різниця" -#: ../src/splivarot.cpp:98 +#: ../src/splivarot.cpp:99 msgid "Exclusion" msgstr "Виключення" -#: ../src/splivarot.cpp:103 +#: ../src/splivarot.cpp:104 msgid "Division" msgstr "Ділення" -#: ../src/splivarot.cpp:108 +#: ../src/splivarot.cpp:109 msgid "Cut path" msgstr "Обрізати контур" -#: ../src/splivarot.cpp:123 +#: ../src/splivarot.cpp:134 msgid "Select at least 2 paths to perform a boolean operation." msgstr "Для логічної операції треба позначити не менше двох контурів." -#: ../src/splivarot.cpp:127 +#: ../src/splivarot.cpp:138 msgid "Select at least 1 path to perform a boolean union." msgstr "Оберіть хоча б 1 контур для виконання об'єднання." -#: ../src/splivarot.cpp:133 +#: ../src/splivarot.cpp:144 msgid "" "Select exactly 2 paths to perform difference, division, or path cut." msgstr "" "Для операції виключного АБО, ділення та розрізання контуру виберіть точно " "2 контури." -#: ../src/splivarot.cpp:149 ../src/splivarot.cpp:164 +#: ../src/splivarot.cpp:160 ../src/splivarot.cpp:175 msgid "" "Unable to determine the z-order of the objects selected for " "difference, XOR, division, or path cut." @@ -13259,76 +13114,76 @@ msgstr "" "об'єктів, позначених для операції різниці, виключного АБО, ділення " "розрізання контуру." -#: ../src/splivarot.cpp:194 +#: ../src/splivarot.cpp:205 msgid "" "One of the objects is not a path, cannot perform boolean operation." msgstr "Один з об'єктів не є контуром, логічна операція неможлива." -#: ../src/splivarot.cpp:918 +#: ../src/splivarot.cpp:954 msgid "Select stroked path(s) to convert stroke to path." msgstr "Оберіть контур(и) з штрихів для перетворення на контур." -#: ../src/splivarot.cpp:1271 +#: ../src/splivarot.cpp:1307 msgid "Convert stroke to path" msgstr "Перетворити штрих на контур" #. TRANSLATORS: "to outline" means "to convert stroke to path" -#: ../src/splivarot.cpp:1274 +#: ../src/splivarot.cpp:1310 msgid "No stroked paths in the selection." msgstr "У позначеному немає контурів зі штрихів." -#: ../src/splivarot.cpp:1345 +#: ../src/splivarot.cpp:1381 msgid "Selected object is not a path, cannot inset/outset." msgstr "" "позначений об'єкт не є контуром, втягування/розтягування неможливі." -#: ../src/splivarot.cpp:1441 ../src/splivarot.cpp:1506 +#: ../src/splivarot.cpp:1477 ../src/splivarot.cpp:1542 msgid "Create linked offset" msgstr "Створити зв'язану втяжку" -#: ../src/splivarot.cpp:1442 ../src/splivarot.cpp:1507 +#: ../src/splivarot.cpp:1478 ../src/splivarot.cpp:1543 msgid "Create dynamic offset" msgstr "Створити динамічний відступ" -#: ../src/splivarot.cpp:1532 +#: ../src/splivarot.cpp:1568 msgid "Select path(s) to inset/outset." msgstr "Позначте контур(и) для втягування/розтягування." -#: ../src/splivarot.cpp:1745 +#: ../src/splivarot.cpp:1781 msgid "Outset path" msgstr "Розтягнений контур" -#: ../src/splivarot.cpp:1745 +#: ../src/splivarot.cpp:1781 msgid "Inset path" msgstr "Втягнутий контур" -#: ../src/splivarot.cpp:1747 +#: ../src/splivarot.cpp:1783 msgid "No paths to inset/outset in the selection." msgstr "У позначеному немає контурів для втягування/розтягування." -#: ../src/splivarot.cpp:1909 +#: ../src/splivarot.cpp:1945 msgid "Simplifying paths (separately):" msgstr "Спрощення контурів (окремо):" -#: ../src/splivarot.cpp:1911 +#: ../src/splivarot.cpp:1947 msgid "Simplifying paths:" msgstr "Спрощення контурів:" -#: ../src/splivarot.cpp:1948 +#: ../src/splivarot.cpp:1984 #, c-format msgid "%s %d of %d paths simplified..." msgstr "%s %d з %d контурів спрощено…" -#: ../src/splivarot.cpp:1960 +#: ../src/splivarot.cpp:1996 #, c-format msgid "%d paths simplified." msgstr "%d контурів спрощено." -#: ../src/splivarot.cpp:1974 +#: ../src/splivarot.cpp:2010 msgid "Select path(s) to simplify." msgstr "Позначте контур(и) для спрощення." -#: ../src/splivarot.cpp:1990 +#: ../src/splivarot.cpp:2026 msgid "No paths to simplify in the selection." msgstr "У позначеному немає контурів для спрощення." @@ -13368,11 +13223,11 @@ msgstr "" msgid "Nothing selected! Select objects to spray." msgstr "Нічого не позначено! Позначте об'єкти, які слід розкидати." -#: ../src/spray-context.cpp:745 ../src/widgets/spray-toolbar.cpp:182 +#: ../src/spray-context.cpp:745 ../src/widgets/spray-toolbar.cpp:178 msgid "Spray with copies" msgstr "Розкидання копій" -#: ../src/spray-context.cpp:749 ../src/widgets/spray-toolbar.cpp:189 +#: ../src/spray-context.cpp:749 ../src/widgets/spray-toolbar.cpp:185 msgid "Spray with clones" msgstr "Розкидання клонів" @@ -13380,7 +13235,7 @@ msgstr "Розкидання клонів" msgid "Spray in single path" msgstr "Розкидання окремого контуру" -#: ../src/star-context.cpp:320 +#: ../src/star-context.cpp:319 msgid "Ctrl: snap angle; keep rays radial" msgstr "Ctrl: обмежити кут; промені за радіусом без перекосу" @@ -13427,7 +13282,7 @@ msgstr "" "Щоб розташувати текст за контуром, контурний текст слід зробити видимим." -#: ../src/text-chemistry.cpp:183 ../src/verbs.cpp:2434 +#: ../src/text-chemistry.cpp:183 ../src/verbs.cpp:2489 msgid "Put text on path" msgstr "Розмістити текст вздовж контуру" @@ -13439,7 +13294,7 @@ msgstr "Позначте текст вздовж контуру, щоб msgid "No texts-on-paths in the selection." msgstr "У позначеному немає тексту на контурі." -#: ../src/text-chemistry.cpp:219 ../src/verbs.cpp:2436 +#: ../src/text-chemistry.cpp:219 ../src/verbs.cpp:2491 msgid "Remove text from path" msgstr "Зняти текст з контуру" @@ -13487,58 +13342,58 @@ msgstr "Перетворення контурного тексту на звич msgid "No flowed text(s) to convert in the selection." msgstr "У позначеному немає контурного тексту(ів) для перетворення." -#: ../src/text-context.cpp:426 +#: ../src/text-context.cpp:425 msgid "Click to edit the text, drag to select part of the text." msgstr "" "Клацніть, щоб редагувати текст, перетягуванням можна позначити " "частину тексту." -#: ../src/text-context.cpp:428 +#: ../src/text-context.cpp:427 msgid "" "Click to edit the flowed text, drag to select part of the text." msgstr "" "Клацніть, щоб редагувати текст у рамці, перетягуванням можна " "позначити частину тексту." -#: ../src/text-context.cpp:482 +#: ../src/text-context.cpp:481 msgid "Create text" msgstr "Створити текст" -#: ../src/text-context.cpp:507 +#: ../src/text-context.cpp:506 msgid "Non-printable character" msgstr "Недрукований символ" -#: ../src/text-context.cpp:522 +#: ../src/text-context.cpp:521 msgid "Insert Unicode character" msgstr "Вставити символ з таблиці Unicode" -#: ../src/text-context.cpp:557 +#: ../src/text-context.cpp:556 #, c-format msgid "Unicode (Enter to finish): %s: %s" msgstr "Юнікод (Enter для завершення): %s: %s" -#: ../src/text-context.cpp:559 ../src/text-context.cpp:868 +#: ../src/text-context.cpp:558 ../src/text-context.cpp:869 msgid "Unicode (Enter to finish): " msgstr "Unicode (Enter для завершення): " -#: ../src/text-context.cpp:645 +#: ../src/text-context.cpp:646 #, c-format msgid "Flowed text frame: %s × %s" msgstr "Текст у рамці: %s × %s" -#: ../src/text-context.cpp:702 +#: ../src/text-context.cpp:703 msgid "Type text; Enter to start new line." msgstr "Введіть текст; Enter — початок нового рядка." -#: ../src/text-context.cpp:713 +#: ../src/text-context.cpp:714 msgid "Flowed text is created." msgstr "Текстову область створено." -#: ../src/text-context.cpp:715 +#: ../src/text-context.cpp:716 msgid "Create flowed text" msgstr "Створити контурний текст" -#: ../src/text-context.cpp:717 +#: ../src/text-context.cpp:718 msgid "" "The frame is too small for the current font size. Flowed text not " "created." @@ -13546,75 +13401,75 @@ msgstr "" "Рамка надто мала для поточного розміру шрифту. Текстову область не " "створено." -#: ../src/text-context.cpp:853 +#: ../src/text-context.cpp:854 msgid "No-break space" msgstr "Нерозривний пробіл" -#: ../src/text-context.cpp:855 +#: ../src/text-context.cpp:856 msgid "Insert no-break space" msgstr "Вставити нерозривний пробіл" -#: ../src/text-context.cpp:892 +#: ../src/text-context.cpp:893 msgid "Make bold" msgstr "Зробити жирним" -#: ../src/text-context.cpp:910 +#: ../src/text-context.cpp:911 msgid "Make italic" msgstr "Зробити курсивним" -#: ../src/text-context.cpp:949 +#: ../src/text-context.cpp:950 msgid "New line" msgstr "Новий рядок" -#: ../src/text-context.cpp:991 +#: ../src/text-context.cpp:992 msgid "Backspace" msgstr "Забій" -#: ../src/text-context.cpp:1047 +#: ../src/text-context.cpp:1048 msgid "Kern to the left" msgstr "Відбивка ліворуч" -#: ../src/text-context.cpp:1072 +#: ../src/text-context.cpp:1073 msgid "Kern to the right" msgstr "Відбивка праворуч" -#: ../src/text-context.cpp:1097 +#: ../src/text-context.cpp:1098 msgid "Kern up" msgstr "Відбивка нагору" -#: ../src/text-context.cpp:1122 +#: ../src/text-context.cpp:1123 msgid "Kern down" msgstr "Відбивка донизу" -#: ../src/text-context.cpp:1198 +#: ../src/text-context.cpp:1199 msgid "Rotate counterclockwise" msgstr "Обертати проти годинникової стрілки" -#: ../src/text-context.cpp:1219 +#: ../src/text-context.cpp:1220 msgid "Rotate clockwise" msgstr "Обертати за годинниковою стрілкою" -#: ../src/text-context.cpp:1236 +#: ../src/text-context.cpp:1237 msgid "Contract line spacing" msgstr "Скорочення міжрядкового проміжку" -#: ../src/text-context.cpp:1243 +#: ../src/text-context.cpp:1244 msgid "Contract letter spacing" msgstr "Зменшена відстань між літерами" -#: ../src/text-context.cpp:1261 +#: ../src/text-context.cpp:1262 msgid "Expand line spacing" msgstr "Збільшена відстань між рядками" -#: ../src/text-context.cpp:1268 +#: ../src/text-context.cpp:1269 msgid "Expand letter spacing" msgstr "Збільшення міжрядкового проміжку" -#: ../src/text-context.cpp:1396 +#: ../src/text-context.cpp:1397 msgid "Paste text" msgstr "Вставити текст" -#: ../src/text-context.cpp:1647 +#: ../src/text-context.cpp:1648 #, c-format msgid "" "Type or edit flowed text (%d characters%s); Enter to start new " @@ -13623,14 +13478,14 @@ msgstr "" "Введіть або змініть плаваючий текст (%d символів%s); Enter починає " "новий абзац." -#: ../src/text-context.cpp:1649 +#: ../src/text-context.cpp:1650 #, c-format msgid "Type or edit text (%d characters%s); Enter to start new line." msgstr "" "Введіть або змініть текст (%d символів%s); Enter — початок нового " "рядка." -#: ../src/text-context.cpp:1657 ../src/tools-switch.cpp:201 +#: ../src/text-context.cpp:1658 ../src/tools-switch.cpp:201 msgid "" "Click to select or create text, drag to create flowed text; " "then type." @@ -13638,7 +13493,7 @@ msgstr "" "Клацання позначає чи створює текстовий об'єкт; перетягніть щоб " "створити плаваючу тестову область; після чого можна набирати текст." -#: ../src/text-context.cpp:1759 +#: ../src/text-context.cpp:1760 msgid "Type text" msgstr "Друк тексту" @@ -14049,254 +13904,254 @@ msgstr "" "Максим Дзюманенко (dziumanenko@gmail.com)\n" "Юрій Чорноіван (yurchor@ukr.net)" -#: ../src/ui/dialog/align-and-distribute.cpp:219 -#: ../src/ui/dialog/align-and-distribute.cpp:896 +#: ../src/ui/dialog/align-and-distribute.cpp:170 +#: ../src/ui/dialog/align-and-distribute.cpp:845 msgid "Align" msgstr "Вирівнювання" -#: ../src/ui/dialog/align-and-distribute.cpp:391 -#: ../src/ui/dialog/align-and-distribute.cpp:897 +#: ../src/ui/dialog/align-and-distribute.cpp:340 +#: ../src/ui/dialog/align-and-distribute.cpp:846 msgid "Distribute" msgstr "Розставити" -#: ../src/ui/dialog/align-and-distribute.cpp:464 +#: ../src/ui/dialog/align-and-distribute.cpp:413 msgid "Minimum horizontal gap (in px units) between bounding boxes" msgstr "Мінімальна горизонтальна відстань (у точках) між рамками" #. TRANSLATORS: "H:" stands for horizontal gap -#: ../src/ui/dialog/align-and-distribute.cpp:466 +#: ../src/ui/dialog/align-and-distribute.cpp:415 msgctxt "Gap" msgid "_H:" msgstr "_Г:" -#: ../src/ui/dialog/align-and-distribute.cpp:474 +#: ../src/ui/dialog/align-and-distribute.cpp:423 msgid "Minimum vertical gap (in px units) between bounding boxes" msgstr "Мінімальна вертикальна відстань (у точках) між рамками" #. TRANSLATORS: Vertical gap -#: ../src/ui/dialog/align-and-distribute.cpp:476 +#: ../src/ui/dialog/align-and-distribute.cpp:425 msgctxt "Gap" msgid "_V:" msgstr "_В:" -#: ../src/ui/dialog/align-and-distribute.cpp:512 -#: ../src/ui/dialog/align-and-distribute.cpp:899 -#: ../src/widgets/connector-toolbar.cpp:427 +#: ../src/ui/dialog/align-and-distribute.cpp:461 +#: ../src/ui/dialog/align-and-distribute.cpp:848 +#: ../src/widgets/connector-toolbar.cpp:423 msgid "Remove overlaps" msgstr "Вилучити перекриття" -#: ../src/ui/dialog/align-and-distribute.cpp:543 -#: ../src/widgets/connector-toolbar.cpp:256 +#: ../src/ui/dialog/align-and-distribute.cpp:492 +#: ../src/widgets/connector-toolbar.cpp:252 msgid "Arrange connector network" msgstr "Впорядкувати сітку з'єднувальних ліній" -#: ../src/ui/dialog/align-and-distribute.cpp:636 +#: ../src/ui/dialog/align-and-distribute.cpp:585 msgid "Exchange Positions" msgstr "Обміняти позиціями" -#: ../src/ui/dialog/align-and-distribute.cpp:670 +#: ../src/ui/dialog/align-and-distribute.cpp:619 msgid "Unclump" msgstr "Розгрупувати" -#: ../src/ui/dialog/align-and-distribute.cpp:742 +#: ../src/ui/dialog/align-and-distribute.cpp:691 msgid "Randomize positions" msgstr "Зробити позиції випадковими" -#: ../src/ui/dialog/align-and-distribute.cpp:845 +#: ../src/ui/dialog/align-and-distribute.cpp:794 msgid "Distribute text baselines" msgstr "Розставити базові рядки тексту" -#: ../src/ui/dialog/align-and-distribute.cpp:868 +#: ../src/ui/dialog/align-and-distribute.cpp:817 msgid "Align text baselines" msgstr "Вирівняти базові лінії тексту" -#: ../src/ui/dialog/align-and-distribute.cpp:898 +#: ../src/ui/dialog/align-and-distribute.cpp:847 msgid "Rearrange" msgstr "Перевпорядкувати" -#: ../src/ui/dialog/align-and-distribute.cpp:900 -#: ../src/widgets/toolbox.cpp:1728 +#: ../src/ui/dialog/align-and-distribute.cpp:849 +#: ../src/widgets/toolbox.cpp:1722 msgid "Nodes" msgstr "Вузли" -#: ../src/ui/dialog/align-and-distribute.cpp:914 +#: ../src/ui/dialog/align-and-distribute.cpp:863 msgid "Relative to: " msgstr "Відносно: " -#: ../src/ui/dialog/align-and-distribute.cpp:915 +#: ../src/ui/dialog/align-and-distribute.cpp:864 msgid "_Treat selection as group: " msgstr "Вва_жати вибране групою: " #. Align -#: ../src/ui/dialog/align-and-distribute.cpp:921 ../src/verbs.cpp:2865 -#: ../src/verbs.cpp:2866 +#: ../src/ui/dialog/align-and-distribute.cpp:870 ../src/verbs.cpp:2928 +#: ../src/verbs.cpp:2929 msgid "Align right edges of objects to the left edge of the anchor" msgstr "Вирівняти праві краї об'єктів до лівого краю якоря" -#: ../src/ui/dialog/align-and-distribute.cpp:924 ../src/verbs.cpp:2867 -#: ../src/verbs.cpp:2868 +#: ../src/ui/dialog/align-and-distribute.cpp:873 ../src/verbs.cpp:2930 +#: ../src/verbs.cpp:2931 msgid "Align left edges" msgstr "Вирівняти ліві сторони" -#: ../src/ui/dialog/align-and-distribute.cpp:927 ../src/verbs.cpp:2869 -#: ../src/verbs.cpp:2870 +#: ../src/ui/dialog/align-and-distribute.cpp:876 ../src/verbs.cpp:2932 +#: ../src/verbs.cpp:2933 msgid "Center on vertical axis" msgstr "Центрувати за вертикальною віссю" -#: ../src/ui/dialog/align-and-distribute.cpp:930 ../src/verbs.cpp:2871 -#: ../src/verbs.cpp:2872 +#: ../src/ui/dialog/align-and-distribute.cpp:879 ../src/verbs.cpp:2934 +#: ../src/verbs.cpp:2935 msgid "Align right sides" msgstr "Вирівняти праві сторони" -#: ../src/ui/dialog/align-and-distribute.cpp:933 ../src/verbs.cpp:2873 -#: ../src/verbs.cpp:2874 +#: ../src/ui/dialog/align-and-distribute.cpp:882 ../src/verbs.cpp:2936 +#: ../src/verbs.cpp:2937 msgid "Align left edges of objects to the right edge of the anchor" msgstr "Вирівняти ліві краї об'єктів до правого краю якоря" -#: ../src/ui/dialog/align-and-distribute.cpp:936 ../src/verbs.cpp:2875 -#: ../src/verbs.cpp:2876 +#: ../src/ui/dialog/align-and-distribute.cpp:885 ../src/verbs.cpp:2938 +#: ../src/verbs.cpp:2939 msgid "Align bottom edges of objects to the top edge of the anchor" msgstr "Вирівняти нижні краї об'єктів до верхнього краю якоря" -#: ../src/ui/dialog/align-and-distribute.cpp:939 ../src/verbs.cpp:2877 -#: ../src/verbs.cpp:2878 +#: ../src/ui/dialog/align-and-distribute.cpp:888 ../src/verbs.cpp:2940 +#: ../src/verbs.cpp:2941 msgid "Align top edges" msgstr "Вирівняти верхні сторони" -#: ../src/ui/dialog/align-and-distribute.cpp:942 ../src/verbs.cpp:2879 -#: ../src/verbs.cpp:2880 +#: ../src/ui/dialog/align-and-distribute.cpp:891 ../src/verbs.cpp:2942 +#: ../src/verbs.cpp:2943 msgid "Center on horizontal axis" msgstr "Центрувати на горизонтальній осі" -#: ../src/ui/dialog/align-and-distribute.cpp:945 ../src/verbs.cpp:2881 -#: ../src/verbs.cpp:2882 +#: ../src/ui/dialog/align-and-distribute.cpp:894 ../src/verbs.cpp:2944 +#: ../src/verbs.cpp:2945 msgid "Align bottom edges" msgstr "Вирівняти нижні сторони" -#: ../src/ui/dialog/align-and-distribute.cpp:948 ../src/verbs.cpp:2883 -#: ../src/verbs.cpp:2884 +#: ../src/ui/dialog/align-and-distribute.cpp:897 ../src/verbs.cpp:2946 +#: ../src/verbs.cpp:2947 msgid "Align top edges of objects to the bottom edge of the anchor" msgstr "Вирівняти верхні краї об'єктів до нижнього краю якоря" -#: ../src/ui/dialog/align-and-distribute.cpp:953 +#: ../src/ui/dialog/align-and-distribute.cpp:902 msgid "Align baseline anchors of texts horizontally" msgstr "Розташувати базову лінію тексту горизонтально" -#: ../src/ui/dialog/align-and-distribute.cpp:956 +#: ../src/ui/dialog/align-and-distribute.cpp:905 msgid "Align baselines of texts" msgstr "Вирівняти базові лінії тексту" -#: ../src/ui/dialog/align-and-distribute.cpp:961 +#: ../src/ui/dialog/align-and-distribute.cpp:910 msgid "Make horizontal gaps between objects equal" msgstr "Зробити однаковими інтервали між об'єктами по горизонталі" -#: ../src/ui/dialog/align-and-distribute.cpp:965 +#: ../src/ui/dialog/align-and-distribute.cpp:914 msgid "Distribute left edges equidistantly" msgstr "Рівномірно розподілити ліві краї" -#: ../src/ui/dialog/align-and-distribute.cpp:968 +#: ../src/ui/dialog/align-and-distribute.cpp:917 msgid "Distribute centers equidistantly horizontally" msgstr "Розставити центри об'єктів на однаковій відстані по горизонталі" -#: ../src/ui/dialog/align-and-distribute.cpp:971 +#: ../src/ui/dialog/align-and-distribute.cpp:920 msgid "Distribute right edges equidistantly" msgstr "Рівномірно розподілити праві краї" -#: ../src/ui/dialog/align-and-distribute.cpp:975 +#: ../src/ui/dialog/align-and-distribute.cpp:924 msgid "Make vertical gaps between objects equal" msgstr "Вирівняти інтервали між об'єктами по вертикалі" -#: ../src/ui/dialog/align-and-distribute.cpp:979 +#: ../src/ui/dialog/align-and-distribute.cpp:928 msgid "Distribute top edges equidistantly" msgstr "Рівномірно розподілити верхні краї" -#: ../src/ui/dialog/align-and-distribute.cpp:982 +#: ../src/ui/dialog/align-and-distribute.cpp:931 msgid "Distribute centers equidistantly vertically" msgstr "Розставити центри об'єктів на однаковій відстані по вертикалі" -#: ../src/ui/dialog/align-and-distribute.cpp:985 +#: ../src/ui/dialog/align-and-distribute.cpp:934 msgid "Distribute bottom edges equidistantly" msgstr "Рівномірно розподілити нижні краї" -#: ../src/ui/dialog/align-and-distribute.cpp:990 +#: ../src/ui/dialog/align-and-distribute.cpp:939 msgid "Distribute baseline anchors of texts horizontally" msgstr "Розподілити базові якорі символів рівномірно по горизонталі" -#: ../src/ui/dialog/align-and-distribute.cpp:993 +#: ../src/ui/dialog/align-and-distribute.cpp:942 msgid "Distribute baselines of texts vertically" msgstr "Розподілити базові лінії тексту вертикально" -#: ../src/ui/dialog/align-and-distribute.cpp:999 -#: ../src/widgets/connector-toolbar.cpp:389 +#: ../src/ui/dialog/align-and-distribute.cpp:948 +#: ../src/widgets/connector-toolbar.cpp:385 msgid "Nicely arrange selected connector network" msgstr "Гармонійно розташувати вибране з'єднання об'єктів" -#: ../src/ui/dialog/align-and-distribute.cpp:1002 +#: ../src/ui/dialog/align-and-distribute.cpp:951 msgid "Exchange positions of selected objects - selection order" msgstr "Обмін позиціями позначених об'єктів — порядок позначення" -#: ../src/ui/dialog/align-and-distribute.cpp:1005 +#: ../src/ui/dialog/align-and-distribute.cpp:954 msgid "Exchange positions of selected objects - stacking order" msgstr "Обмін позиціями позначених об'єктів — порядок стосування" -#: ../src/ui/dialog/align-and-distribute.cpp:1008 +#: ../src/ui/dialog/align-and-distribute.cpp:957 msgid "Exchange positions of selected objects - clockwise rotate" msgstr "" "Обмін позиціями позначених об'єктів — циклічний перехід за годинниковою " "стрілкою" -#: ../src/ui/dialog/align-and-distribute.cpp:1013 +#: ../src/ui/dialog/align-and-distribute.cpp:962 msgid "Randomize centers in both dimensions" msgstr "Випадково розташувати центри у обох напрямках" -#: ../src/ui/dialog/align-and-distribute.cpp:1016 +#: ../src/ui/dialog/align-and-distribute.cpp:965 msgid "Unclump objects: try to equalize edge-to-edge distances" msgstr "" "Розгрупувати об'єкт: спробувати встановити рівну відстань між межами об'єктів" -#: ../src/ui/dialog/align-and-distribute.cpp:1021 +#: ../src/ui/dialog/align-and-distribute.cpp:970 msgid "" "Move objects as little as possible so that their bounding boxes do not " "overlap" msgstr "" "Переміщувати об'єкти якомога менше, так щоб їхні рамки не перекривалися" -#: ../src/ui/dialog/align-and-distribute.cpp:1029 +#: ../src/ui/dialog/align-and-distribute.cpp:978 msgid "Align selected nodes to a common horizontal line" msgstr "Вирівняти вибрані вузли до спільної горизонталі" -#: ../src/ui/dialog/align-and-distribute.cpp:1032 +#: ../src/ui/dialog/align-and-distribute.cpp:981 msgid "Align selected nodes to a common vertical line" msgstr "Вирівняти вибрані вузли до спільної вертикалі" -#: ../src/ui/dialog/align-and-distribute.cpp:1035 +#: ../src/ui/dialog/align-and-distribute.cpp:984 msgid "Distribute selected nodes horizontally" msgstr "Розподілити вибрані вузли по горизонталі" -#: ../src/ui/dialog/align-and-distribute.cpp:1038 +#: ../src/ui/dialog/align-and-distribute.cpp:987 msgid "Distribute selected nodes vertically" msgstr "Розподілити вибрані вузли по вертикалі" #. Rest of the widgetry -#: ../src/ui/dialog/align-and-distribute.cpp:1043 +#: ../src/ui/dialog/align-and-distribute.cpp:992 msgid "Last selected" msgstr "Останній позначений" -#: ../src/ui/dialog/align-and-distribute.cpp:1044 +#: ../src/ui/dialog/align-and-distribute.cpp:993 msgid "First selected" msgstr "Перший позначений" -#: ../src/ui/dialog/align-and-distribute.cpp:1045 +#: ../src/ui/dialog/align-and-distribute.cpp:994 msgid "Biggest object" msgstr "Найбільший об'єкт" -#: ../src/ui/dialog/align-and-distribute.cpp:1046 +#: ../src/ui/dialog/align-and-distribute.cpp:995 msgid "Smallest object" msgstr "Найменший об'єкт" -#: ../src/ui/dialog/align-and-distribute.cpp:1049 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1555 ../src/verbs.cpp:173 -#: ../src/widgets/desktop-widget.cpp:2004 +#: ../src/ui/dialog/align-and-distribute.cpp:998 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1555 ../src/verbs.cpp:175 +#: ../src/widgets/desktop-widget.cpp:2008 #: ../share/extensions/printing_marks.inx.h:18 msgid "Selection" msgstr "позначене" @@ -14359,7 +14214,6 @@ msgid "Messages" msgstr "Повідомлення" #: ../src/ui/dialog/debug.cpp:87 ../src/ui/dialog/messages.cpp:47 -#: ../src/ui/dialog/scriptdialog.cpp:182 msgid "_Clear" msgstr "О_чистити" @@ -14372,57 +14226,57 @@ msgid "Release log messages" msgstr "Вимкнути повідомлення журналу" #: ../src/ui/dialog/document-metadata.cpp:88 -#: ../src/ui/dialog/document-properties.cpp:152 +#: ../src/ui/dialog/document-properties.cpp:151 msgid "Metadata" msgstr "Метадані" #: ../src/ui/dialog/document-metadata.cpp:89 -#: ../src/ui/dialog/document-properties.cpp:153 +#: ../src/ui/dialog/document-properties.cpp:152 msgid "License" msgstr "Ліцензія" #: ../src/ui/dialog/document-metadata.cpp:126 -#: ../src/ui/dialog/document-properties.cpp:960 +#: ../src/ui/dialog/document-properties.cpp:959 msgid "Dublin Core Entities" msgstr "Пункти Dublin Core" #: ../src/ui/dialog/document-metadata.cpp:168 -#: ../src/ui/dialog/document-properties.cpp:1022 +#: ../src/ui/dialog/document-properties.cpp:1021 msgid "License" msgstr "Ліцензія" #. --------------------------------------------------------------- -#: ../src/ui/dialog/document-properties.cpp:105 +#: ../src/ui/dialog/document-properties.cpp:104 msgid "Show page _border" msgstr "Показувати _рамку полотна" -#: ../src/ui/dialog/document-properties.cpp:105 +#: ../src/ui/dialog/document-properties.cpp:104 msgid "If set, rectangular page border is shown" msgstr "У разі встановлення буде показано прямокутну рамку сторінки" -#: ../src/ui/dialog/document-properties.cpp:106 +#: ../src/ui/dialog/document-properties.cpp:105 msgid "Border on _top of drawing" msgstr "Рамка полотна завжди _над малюнком" -#: ../src/ui/dialog/document-properties.cpp:106 +#: ../src/ui/dialog/document-properties.cpp:105 msgid "If set, border is always on top of the drawing" msgstr "У разі встановлення над малюнком завжди буде рамка полотна" -#: ../src/ui/dialog/document-properties.cpp:107 +#: ../src/ui/dialog/document-properties.cpp:106 msgid "_Show border shadow" msgstr "_Показувати тінь від рамки" -#: ../src/ui/dialog/document-properties.cpp:107 +#: ../src/ui/dialog/document-properties.cpp:106 msgid "If set, page border shows a shadow on its right and lower side" msgstr "" "У разі встановлення границі сторінок відбиватимуть тіні на правій та нижній " "сторонах" -#: ../src/ui/dialog/document-properties.cpp:108 +#: ../src/ui/dialog/document-properties.cpp:107 msgid "Back_ground color:" msgstr "Ко_лір тла:" -#: ../src/ui/dialog/document-properties.cpp:108 +#: ../src/ui/dialog/document-properties.cpp:107 msgid "" "Color of the page background. Note: transparency setting ignored while " "editing but used when exporting to bitmap." @@ -14430,80 +14284,80 @@ msgstr "" "Колір тла сторінки. Зауваження: параметр прозорості буде проігноровано під " "час редагування, але враховано під час експортування до растра." -#: ../src/ui/dialog/document-properties.cpp:109 +#: ../src/ui/dialog/document-properties.cpp:108 msgid "Border _color:" msgstr "_Колір рамки:" -#: ../src/ui/dialog/document-properties.cpp:109 +#: ../src/ui/dialog/document-properties.cpp:108 msgid "Page border color" msgstr "Колір рамки полотна" -#: ../src/ui/dialog/document-properties.cpp:109 +#: ../src/ui/dialog/document-properties.cpp:108 msgid "Color of the page border" msgstr "Колір рамки полотна" -#: ../src/ui/dialog/document-properties.cpp:110 +#: ../src/ui/dialog/document-properties.cpp:109 msgid "Default _units:" msgstr "Типові о_диниці:" #. --------------------------------------------------------------- #. General snap options -#: ../src/ui/dialog/document-properties.cpp:114 +#: ../src/ui/dialog/document-properties.cpp:113 msgid "Show _guides" msgstr "Показувати _напрямні" -#: ../src/ui/dialog/document-properties.cpp:114 +#: ../src/ui/dialog/document-properties.cpp:113 msgid "Show or hide guides" msgstr "Показати/сховати напрямні" -#: ../src/ui/dialog/document-properties.cpp:115 +#: ../src/ui/dialog/document-properties.cpp:114 msgid "Guide co_lor:" msgstr "Ко_лір напрямних:" -#: ../src/ui/dialog/document-properties.cpp:115 +#: ../src/ui/dialog/document-properties.cpp:114 msgid "Guideline color" msgstr "Колір напрямних" -#: ../src/ui/dialog/document-properties.cpp:115 +#: ../src/ui/dialog/document-properties.cpp:114 msgid "Color of guidelines" msgstr "Колір напрямних" -#: ../src/ui/dialog/document-properties.cpp:116 +#: ../src/ui/dialog/document-properties.cpp:115 msgid "_Highlight color:" msgstr "Колір _підсвічення:" -#: ../src/ui/dialog/document-properties.cpp:116 +#: ../src/ui/dialog/document-properties.cpp:115 msgid "Highlighted guideline color" msgstr "Колір підсвіченої напрямної" -#: ../src/ui/dialog/document-properties.cpp:116 +#: ../src/ui/dialog/document-properties.cpp:115 msgid "Color of a guideline when it is under mouse" msgstr "Колір напрямної при наведенні на неї миші" #. --------------------------------------------------------------- -#: ../src/ui/dialog/document-properties.cpp:118 +#: ../src/ui/dialog/document-properties.cpp:117 msgid "Snap _distance" msgstr "_Відстань для прилипання" -#: ../src/ui/dialog/document-properties.cpp:118 +#: ../src/ui/dialog/document-properties.cpp:117 msgid "Snap only when _closer than:" msgstr "Прилипати на відстані, _меншій за:" -#: ../src/ui/dialog/document-properties.cpp:118 -#: ../src/ui/dialog/document-properties.cpp:123 -#: ../src/ui/dialog/document-properties.cpp:128 +#: ../src/ui/dialog/document-properties.cpp:117 +#: ../src/ui/dialog/document-properties.cpp:122 +#: ../src/ui/dialog/document-properties.cpp:127 msgid "Always snap" msgstr "Повсюдне прилипання" -#: ../src/ui/dialog/document-properties.cpp:119 +#: ../src/ui/dialog/document-properties.cpp:118 msgid "Snapping distance, in screen pixels, for snapping to objects" msgstr "Дистанція прилипання до об'єктів, у точках" -#: ../src/ui/dialog/document-properties.cpp:119 +#: ../src/ui/dialog/document-properties.cpp:118 msgid "Always snap to objects, regardless of their distance" msgstr "Повсюдне прилипання до об'єктів, незалежно від відстані" -#: ../src/ui/dialog/document-properties.cpp:120 +#: ../src/ui/dialog/document-properties.cpp:119 msgid "" "If set, objects only snap to another object when it's within the range " "specified below" @@ -14512,23 +14366,23 @@ msgstr "" "знаходитимуться на відстані заданій нижче" #. Options for snapping to grids -#: ../src/ui/dialog/document-properties.cpp:123 +#: ../src/ui/dialog/document-properties.cpp:122 msgid "Snap d_istance" msgstr "_Відстань для прилипання" -#: ../src/ui/dialog/document-properties.cpp:123 +#: ../src/ui/dialog/document-properties.cpp:122 msgid "Snap only when c_loser than:" msgstr "Прилипати на відстані, м_еншій за:" -#: ../src/ui/dialog/document-properties.cpp:124 +#: ../src/ui/dialog/document-properties.cpp:123 msgid "Snapping distance, in screen pixels, for snapping to grid" msgstr "Дистанція прилипання до сітки, у точках" -#: ../src/ui/dialog/document-properties.cpp:124 +#: ../src/ui/dialog/document-properties.cpp:123 msgid "Always snap to grids, regardless of the distance" msgstr "Повсюдне прилипання до сітки, незалежно від відстані" -#: ../src/ui/dialog/document-properties.cpp:125 +#: ../src/ui/dialog/document-properties.cpp:124 msgid "" "If set, objects only snap to a grid line when it's within the range " "specified below" @@ -14537,23 +14391,23 @@ msgstr "" "знаходитимуться на заданій нижче відстані" #. Options for snapping to guides -#: ../src/ui/dialog/document-properties.cpp:128 +#: ../src/ui/dialog/document-properties.cpp:127 msgid "Snap dist_ance" msgstr "В_ідстань для прилипання" -#: ../src/ui/dialog/document-properties.cpp:128 +#: ../src/ui/dialog/document-properties.cpp:127 msgid "Snap only when close_r than:" msgstr "Прилипати на відстані, ме_ншій за:" -#: ../src/ui/dialog/document-properties.cpp:129 +#: ../src/ui/dialog/document-properties.cpp:128 msgid "Snapping distance, in screen pixels, for snapping to guides" msgstr "Дистанція прилипання до напрямних, у точках" -#: ../src/ui/dialog/document-properties.cpp:129 +#: ../src/ui/dialog/document-properties.cpp:128 msgid "Always snap to guides, regardless of the distance" msgstr "Повсюдне прилипання до напрямних, незалежно від відстані" -#: ../src/ui/dialog/document-properties.cpp:130 +#: ../src/ui/dialog/document-properties.cpp:129 msgid "" "If set, objects only snap to a guide when it's within the range specified " "below" @@ -14562,106 +14416,106 @@ msgstr "" "знаходитимуться на заданій нижче відстані" #. --------------------------------------------------------------- -#: ../src/ui/dialog/document-properties.cpp:133 +#: ../src/ui/dialog/document-properties.cpp:132 msgid "Snap to clip paths" msgstr "Прилипання до контурів обрізання" -#: ../src/ui/dialog/document-properties.cpp:133 +#: ../src/ui/dialog/document-properties.cpp:132 msgid "When snapping to paths, then also try snapping to clip paths" msgstr "Намагатися виконати прилипання до контурів обрізання" -#: ../src/ui/dialog/document-properties.cpp:134 +#: ../src/ui/dialog/document-properties.cpp:133 msgid "Snap to mask paths" msgstr "Прилипання до контурів масок" -#: ../src/ui/dialog/document-properties.cpp:134 +#: ../src/ui/dialog/document-properties.cpp:133 msgid "When snapping to paths, then also try snapping to mask paths" msgstr "Намагатися виконати прилипання до контурів масок" -#: ../src/ui/dialog/document-properties.cpp:135 +#: ../src/ui/dialog/document-properties.cpp:134 msgid "Snap perpendicularly" msgstr "Перпендикулярне прилипання" -#: ../src/ui/dialog/document-properties.cpp:135 +#: ../src/ui/dialog/document-properties.cpp:134 msgid "" "When snapping to paths or guides, then also try snapping perpendicularly" msgstr "" "Намагатися під час прилипання виконувати і прилипання у перпендикулярному " "напрямку" -#: ../src/ui/dialog/document-properties.cpp:136 +#: ../src/ui/dialog/document-properties.cpp:135 msgid "Snap tangentially" msgstr "Дотичне прилипання" -#: ../src/ui/dialog/document-properties.cpp:136 +#: ../src/ui/dialog/document-properties.cpp:135 msgid "When snapping to paths or guides, then also try snapping tangentially" msgstr "" "Намагатися під час прилипання виконувати і прилипання у дотичному напрямку" -#: ../src/ui/dialog/document-properties.cpp:139 +#: ../src/ui/dialog/document-properties.cpp:138 msgctxt "Grid" msgid "_New" msgstr "_Створити" -#: ../src/ui/dialog/document-properties.cpp:139 +#: ../src/ui/dialog/document-properties.cpp:138 msgid "Create new grid." msgstr "Створити нову напрямну." -#: ../src/ui/dialog/document-properties.cpp:140 +#: ../src/ui/dialog/document-properties.cpp:139 msgctxt "Grid" msgid "_Remove" msgstr "Ви_лучити" -#: ../src/ui/dialog/document-properties.cpp:140 +#: ../src/ui/dialog/document-properties.cpp:139 msgid "Remove selected grid." msgstr "Вилучити вибрану сітку." -#: ../src/ui/dialog/document-properties.cpp:147 -#: ../src/widgets/toolbox.cpp:1835 +#: ../src/ui/dialog/document-properties.cpp:146 +#: ../src/widgets/toolbox.cpp:1829 msgid "Guides" msgstr "Напрямні" -#: ../src/ui/dialog/document-properties.cpp:149 ../src/verbs.cpp:2684 +#: ../src/ui/dialog/document-properties.cpp:148 ../src/verbs.cpp:2739 msgid "Snap" msgstr "Прилипання" -#: ../src/ui/dialog/document-properties.cpp:151 +#: ../src/ui/dialog/document-properties.cpp:150 msgid "Scripting" msgstr "Запис сценаріїв" -#: ../src/ui/dialog/document-properties.cpp:311 +#: ../src/ui/dialog/document-properties.cpp:310 msgid "General" msgstr "Загальні" -#: ../src/ui/dialog/document-properties.cpp:313 +#: ../src/ui/dialog/document-properties.cpp:312 msgid "Color" msgstr "Колір" -#: ../src/ui/dialog/document-properties.cpp:315 +#: ../src/ui/dialog/document-properties.cpp:314 msgid "Border" msgstr "Рамка" -#: ../src/ui/dialog/document-properties.cpp:317 +#: ../src/ui/dialog/document-properties.cpp:316 msgid "Page Size" msgstr "Розмір сторінки" -#: ../src/ui/dialog/document-properties.cpp:350 +#: ../src/ui/dialog/document-properties.cpp:349 msgid "Guides" msgstr "Напрямні" -#: ../src/ui/dialog/document-properties.cpp:368 +#: ../src/ui/dialog/document-properties.cpp:367 msgid "Snap to objects" msgstr "Прилипання до об'єктів" -#: ../src/ui/dialog/document-properties.cpp:370 +#: ../src/ui/dialog/document-properties.cpp:369 msgid "Snap to grids" msgstr "Прилипання до сітки" -#: ../src/ui/dialog/document-properties.cpp:372 +#: ../src/ui/dialog/document-properties.cpp:371 msgid "Snap to guides" msgstr "Прилипання до напрямних" -#: ../src/ui/dialog/document-properties.cpp:374 +#: ../src/ui/dialog/document-properties.cpp:373 msgid "Miscellaneous" msgstr "Інше" @@ -14669,131 +14523,131 @@ msgstr "Інше" #. Inkscape::GC::release(defsRepr); #. inform the document, so we can undo #. Color Management -#: ../src/ui/dialog/document-properties.cpp:487 ../src/verbs.cpp:2859 +#: ../src/ui/dialog/document-properties.cpp:486 ../src/verbs.cpp:2912 msgid "Link Color Profile" msgstr "Пов'язати профіль кольорів" -#: ../src/ui/dialog/document-properties.cpp:588 +#: ../src/ui/dialog/document-properties.cpp:587 msgid "Remove linked color profile" msgstr "Вилучити пов'язаний профіль кольорів" -#: ../src/ui/dialog/document-properties.cpp:601 +#: ../src/ui/dialog/document-properties.cpp:600 msgid "Linked Color Profiles:" msgstr "Пов'язані профілі кольорів:" -#: ../src/ui/dialog/document-properties.cpp:603 +#: ../src/ui/dialog/document-properties.cpp:602 msgid "Available Color Profiles:" msgstr "Доступні профілі кольорів:" -#: ../src/ui/dialog/document-properties.cpp:605 +#: ../src/ui/dialog/document-properties.cpp:604 msgid "Link Profile" msgstr "Пов'язати з профілем" -#: ../src/ui/dialog/document-properties.cpp:608 +#: ../src/ui/dialog/document-properties.cpp:607 msgid "Unlink Profile" msgstr "Від'єднати від профілю" -#: ../src/ui/dialog/document-properties.cpp:686 +#: ../src/ui/dialog/document-properties.cpp:685 msgid "Profile Name" msgstr "Назва профілю" -#: ../src/ui/dialog/document-properties.cpp:722 +#: ../src/ui/dialog/document-properties.cpp:721 msgid "External scripts" msgstr "Зовнішні скрипти" -#: ../src/ui/dialog/document-properties.cpp:723 +#: ../src/ui/dialog/document-properties.cpp:722 msgid "Embedded scripts" msgstr "Вбудовані скрипти" -#: ../src/ui/dialog/document-properties.cpp:728 +#: ../src/ui/dialog/document-properties.cpp:727 msgid "External script files:" msgstr "Файли зовнішніх скриптів:" -#: ../src/ui/dialog/document-properties.cpp:730 +#: ../src/ui/dialog/document-properties.cpp:729 msgid "Add the current file name or browse for a file" msgstr "Додайте назву поточного файла або вкажіть якийсь файл" -#: ../src/ui/dialog/document-properties.cpp:733 -#: ../src/ui/dialog/document-properties.cpp:811 -#: ../src/ui/widget/selected-style.cpp:334 +#: ../src/ui/dialog/document-properties.cpp:732 +#: ../src/ui/dialog/document-properties.cpp:810 +#: ../src/ui/widget/selected-style.cpp:339 msgid "Remove" msgstr "Вилучити" -#: ../src/ui/dialog/document-properties.cpp:798 +#: ../src/ui/dialog/document-properties.cpp:797 msgid "Filename" msgstr "Назва файла" -#: ../src/ui/dialog/document-properties.cpp:806 +#: ../src/ui/dialog/document-properties.cpp:805 msgid "Embedded script files:" msgstr "Файли вбудованих скриптів:" -#: ../src/ui/dialog/document-properties.cpp:808 +#: ../src/ui/dialog/document-properties.cpp:807 msgid "New" msgstr "Створити" -#: ../src/ui/dialog/document-properties.cpp:875 +#: ../src/ui/dialog/document-properties.cpp:874 msgid "Script id" msgstr "Ід. скрипту" -#: ../src/ui/dialog/document-properties.cpp:881 +#: ../src/ui/dialog/document-properties.cpp:880 msgid "Content:" msgstr "Вміст:" -#: ../src/ui/dialog/document-properties.cpp:998 +#: ../src/ui/dialog/document-properties.cpp:997 msgid "_Save as default" msgstr "З_берегти як типові" -#: ../src/ui/dialog/document-properties.cpp:999 +#: ../src/ui/dialog/document-properties.cpp:998 msgid "Save this metadata as the default metadata" msgstr "Зберегти ці метадані як типові метадані" -#: ../src/ui/dialog/document-properties.cpp:1000 +#: ../src/ui/dialog/document-properties.cpp:999 msgid "Use _default" msgstr "Використовувати _типові" -#: ../src/ui/dialog/document-properties.cpp:1001 +#: ../src/ui/dialog/document-properties.cpp:1000 msgid "Use the previously saved default metadata here" msgstr "Скористатися тут раніше збереженими типовими метаданими" #. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1074 +#: ../src/ui/dialog/document-properties.cpp:1073 msgid "Add external script..." msgstr "Додати зовнішній скрипт…" -#: ../src/ui/dialog/document-properties.cpp:1113 +#: ../src/ui/dialog/document-properties.cpp:1112 msgid "Select a script to load" msgstr "Виберіть скрипт для завантаження" #. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1141 +#: ../src/ui/dialog/document-properties.cpp:1140 msgid "Add embedded script..." msgstr "Додати вбудований скрипт…" #. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1172 +#: ../src/ui/dialog/document-properties.cpp:1171 msgid "Remove external script" msgstr "Вилучити зовнішній скрипт" #. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1206 +#: ../src/ui/dialog/document-properties.cpp:1205 msgid "Remove embedded script" msgstr "Вилучити вбудований скрипт" #. TODO repr->set_content(_EmbeddedContent.get_buffer()->get_text()); #. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1306 +#: ../src/ui/dialog/document-properties.cpp:1305 msgid "Edit embedded script" msgstr "Редагувати вбудований скрипт" -#: ../src/ui/dialog/document-properties.cpp:1389 +#: ../src/ui/dialog/document-properties.cpp:1388 msgid "Creation" msgstr "Створення" -#: ../src/ui/dialog/document-properties.cpp:1390 +#: ../src/ui/dialog/document-properties.cpp:1389 msgid "Defined grids" msgstr "Визначені сітки" -#: ../src/ui/dialog/document-properties.cpp:1618 +#: ../src/ui/dialog/document-properties.cpp:1617 msgid "Remove grid" msgstr "Вилучити сітку" @@ -14801,8 +14655,8 @@ msgstr "Вилучити сітку" msgid "Information" msgstr "Інформація" -#: ../src/ui/dialog/extension-editor.cpp:82 ../src/verbs.cpp:288 -#: ../src/verbs.cpp:307 ../share/extensions/color_custom.inx.h:7 +#: ../src/ui/dialog/extension-editor.cpp:82 ../src/verbs.cpp:290 +#: ../src/verbs.cpp:309 ../share/extensions/color_custom.inx.h:7 #: ../share/extensions/color_HSL_adjust.inx.h:11 #: ../share/extensions/color_randomize.inx.h:6 #: ../share/extensions/dots.inx.h:7 @@ -15123,99 +14977,99 @@ msgstr "_Дублювати" msgid "_Filter" msgstr "_Фільтр" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1168 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1174 msgid "R_ename" msgstr "Пере_йменувати" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1298 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1304 msgid "Rename filter" msgstr "Перейменувати фільтр" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1335 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1348 msgid "Apply filter" msgstr "Застосувати фільтр" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1405 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1418 msgid "filter" msgstr "фільтрувати" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1412 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1425 msgid "Add filter" msgstr "Додати фільтр" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1464 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1477 msgid "Duplicate filter" msgstr "Дублювати фільтр" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1563 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1576 msgid "_Effect" msgstr "_Ефект" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1573 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1586 msgid "Connections" msgstr "З'єднання" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1711 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1724 msgid "Remove filter primitive" msgstr "Вилучити примітив фільтра" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2299 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2312 msgid "Remove merge node" msgstr "Вилучити вузол об'єднання" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2419 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2432 msgid "Reorder filter primitive" msgstr "Зміна порядку примітивів фільтра" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2499 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2512 msgid "Add Effect:" msgstr "Додати ефект:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2500 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2513 msgid "No effect selected" msgstr "Не вибрано жодного ефекту" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2501 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2514 msgid "No filter selected" msgstr "Не вибрано жодного фільтра" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2547 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2560 msgid "Effect parameters" msgstr "Параметри ефекту" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2548 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2561 msgid "Filter General Settings" msgstr "Загальні параметри фільтра" #. default x: #. default y: -#: ../src/ui/dialog/filter-effects-dialog.cpp:2606 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2619 msgid "Coordinates:" msgstr "Координати:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2606 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2619 msgid "X coordinate of the left corners of filter effects region" msgstr "Координата X лівих кутів області дії ефектів фільтра" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2606 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2619 msgid "Y coordinate of the upper corners of filter effects region" msgstr "Координата X верхніх кутів області дії ефектів фільтра" #. default width: #. default height: -#: ../src/ui/dialog/filter-effects-dialog.cpp:2607 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2620 msgid "Dimensions:" msgstr "Розміри:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2607 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2620 msgid "Width of filter effects region" msgstr "Ширина області дії ефектів фільтра" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2607 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2620 msgid "Height of filter effects region" msgstr "Висота області дії ефектів фільтра" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2613 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2626 msgid "" "Indicates the type of matrix operation. The keyword 'matrix' indicates that " "a full 5x4 matrix of values will be provided. The other keywords represent " @@ -15226,23 +15080,23 @@ msgstr "" "матрицю значень розміром 5×4. Інші варіанти — це простий спосіб виконати " "найпростіші операції без визначення всієї матриці вручну." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2614 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2627 msgid "Value(s):" msgstr "Значення:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2629 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2669 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2642 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2682 msgid "Operator:" msgstr "Оператор:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2630 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 msgid "K1:" msgstr "K1:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2630 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2631 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2632 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2633 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2645 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2646 msgid "" "If the arithmetic operation is chosen, each result pixel is computed using " "the formula k1*i1*i2 + k2*i1 + k3*i2 + k4 where i1 and i2 are the pixel " @@ -15252,38 +15106,38 @@ msgstr "" "за формулою k1*i1*i2 + k2*i1 + k3*i2 + k4, де i1 і i2 — значення пікселів " "першого і другого вхідних значень відповідно." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2631 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 msgid "K2:" msgstr "K2:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2632 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2645 msgid "K3:" msgstr "K3:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2633 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2646 msgid "K4:" msgstr "K4:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 msgid "Size:" msgstr "Розмір:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 msgid "width of the convolve matrix" msgstr "ширина матриці згортки" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 msgid "height of the convolve matrix" msgstr "висота матриці згортки" #. default x: #. default y: -#: ../src/ui/dialog/filter-effects-dialog.cpp:2637 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2650 #: ../src/ui/dialog/object-attributes.cpp:48 msgid "Target:" msgstr "Target:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2637 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2650 msgid "" "X coordinate of the target point in the convolve matrix. The convolution is " "applied to pixels around this point." @@ -15291,7 +15145,7 @@ msgstr "" "Координата X кінцевої точки матриці згортки. Згортка застосовується до " "пікселів навколо цієї точки." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2637 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2650 msgid "" "Y coordinate of the target point in the convolve matrix. The convolution is " "applied to pixels around this point." @@ -15300,11 +15154,11 @@ msgstr "" "пікселів навколо цієї точки." #. TRANSLATORS: for info on "Kernel", see http://en.wikipedia.org/wiki/Kernel_(matrix) -#: ../src/ui/dialog/filter-effects-dialog.cpp:2639 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2652 msgid "Kernel:" msgstr "Ядро:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2639 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2652 msgid "" "This matrix describes the convolve operation that is applied to the input " "image in order to calculate the pixel colors at the output. Different " @@ -15319,11 +15173,11 @@ msgstr "" "у той час, як матриця, заповнена сталим ненульовим значенням дасть звичайний " "ефект розмивання." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2641 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 msgid "Divisor:" msgstr "Дільник:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2641 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 msgid "" "After applying the kernelMatrix to the input image to yield a number, that " "number is divided by divisor to yield the final destination color value. A " @@ -15335,11 +15189,11 @@ msgstr "" "кольору. Дільник, що є сумою всіх значень матриці, приглушує загальну " "інтенсивність кольорів остаточного зображення." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2642 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 msgid "Bias:" msgstr "Зміщення:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2642 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 msgid "" "This value is added to each component. This is useful to define a constant " "value as the zero response of the filter." @@ -15347,11 +15201,11 @@ msgstr "" "Це значення додається до кожного компонента. Корисно для задання сталої, як " "нульового відгуку фільтра." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2656 msgid "Edge Mode:" msgstr "Режим країв:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2656 msgid "" "Determines how to extend the input image as necessary with color values so " "that the matrix operations can be applied when the kernel is positioned at " @@ -15361,31 +15215,31 @@ msgstr "" "щоб матричні операції могли працювати з ядром, розташованим на краю " "зображення або поблизу нього." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2657 msgid "Preserve Alpha" msgstr "Зберігати α-канал" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2657 msgid "If set, the alpha channel won't be altered by this filter primitive." msgstr "Якщо встановлено, α-канал не буде змінено цим примітивом фільтра." #. default: white -#: ../src/ui/dialog/filter-effects-dialog.cpp:2647 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2660 msgid "Diffuse Color:" msgstr "Колір дифузії:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2647 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2680 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2660 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2693 msgid "Defines the color of the light source" msgstr "Визначає колір джерела світла" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2648 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2681 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2661 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2694 msgid "Surface Scale:" msgstr "Масштаб поверхні:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2648 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2681 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2661 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2694 msgid "" "This value amplifies the heights of the bump map defined by the input alpha " "channel" @@ -15393,59 +15247,59 @@ msgstr "" "Це значення визначає множник висоти карти рельєфу, що задається вхідним α-" "каналом" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2682 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2662 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2695 msgid "Constant:" msgstr "Константа:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2682 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2662 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2695 msgid "This constant affects the Phong lighting model." msgstr "Ця стала стосується моделі освітлення Фонга" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2650 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2684 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2663 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2697 msgid "Kernel Unit Length:" msgstr "Одиниця довжини у ядрі:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2667 msgid "This defines the intensity of the displacement effect." msgstr "Ця величина визначає інтенсивність ефекту зміщення." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2668 msgid "X displacement:" msgstr "Зміщення за X:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2668 msgid "Color component that controls the displacement in the X direction" msgstr "Компонент кольору, що керує зміщенням у напрямку осі X" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2656 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2669 msgid "Y displacement:" msgstr "Зміщення за Y:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2656 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2669 msgid "Color component that controls the displacement in the Y direction" msgstr "Компонент кольору, що керує зміщенням у напрямку осі Y" #. default: black -#: ../src/ui/dialog/filter-effects-dialog.cpp:2659 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2672 msgid "Flood Color:" msgstr "Колір заливки:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2659 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2672 msgid "The whole filter region will be filled with this color." msgstr "Всю область дії фільтра буде залито цим кольором." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2663 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 msgid "Standard Deviation:" msgstr "Стандартне відхилення:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2663 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 msgid "The standard deviation for the blur operation." msgstr "Стандартне відхилення під час виконання операції розмивання" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2669 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2682 msgid "" "Erode: performs \"thinning\" of input image.\n" "Dilate: performs \"fattenning\" of input image." @@ -15453,41 +15307,41 @@ msgstr "" "Ерозія: виконує «витончення» вхідного зображення\n" "Розтягування: «потовщує» вхідне зображення" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2673 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2686 msgid "Source of Image:" msgstr "Джерело зображення:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2689 msgid "Delta X:" msgstr "Крок за X:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2689 msgid "This is how far the input image gets shifted to the right" msgstr "Визначає як далеко вхідне зображення зміщується праворуч" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2677 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2690 msgid "Delta Y:" msgstr "Крок за Y:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2677 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2690 msgid "This is how far the input image gets shifted downwards" msgstr "Визначає як далеко вхідне зображення зміщується донизу" #. default: white -#: ../src/ui/dialog/filter-effects-dialog.cpp:2680 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2693 msgid "Specular Color:" msgstr "Колір відбиття:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2683 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2696 #: ../share/extensions/interp.inx.h:2 msgid "Exponent:" msgstr "Експонента:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2683 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2696 msgid "Exponent for specular term, larger is more \"shiny\"." msgstr "Степінь відбиття: більше значення дає «яскравіше»." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2692 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2705 msgid "" "Indicates whether the filter primitive should perform a noise or turbulence " "function." @@ -15495,27 +15349,27 @@ msgstr "" "Позначає чи повинен примітив виконувати функцію створення турбулентності або " "шуму." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2693 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2706 msgid "Base Frequency:" msgstr "Опорна частота:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2694 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2707 msgid "Octaves:" msgstr "Октави:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2695 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2708 msgid "Seed:" msgstr "Випадкове значення:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2695 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2708 msgid "The starting number for the pseudo random number generator." msgstr "Початкове число для генератора псевдовипадкових чисел." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2707 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2720 msgid "Add filter primitive" msgstr "Додати примітив фільтра" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2724 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2737 msgid "" "The feBlend filter primitive provides 4 image blending modes: screen, " "multiply, darken and lighten." @@ -15523,7 +15377,7 @@ msgstr "" "Примітив фільтра feBlend надає можливість використовувати 4 режими " "змішування: просвічування, множення, темнішання та світлішання." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2728 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2741 msgid "" "The feColorMatrix filter primitive applies a matrix transformation to " "color of each rendered pixel. This allows for effects like turning object to " @@ -15533,7 +15387,7 @@ msgstr "" "кольору до кожної відображеної точки. Все це включає до себе перетворення " "об'єкта до півтонів сірого, зміну насиченості кольору і зміну відтінку." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2732 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2745 msgid "" "The feComponentTransfer filter primitive manipulates the input's " "color components (red, green, blue, and alpha) according to particular " @@ -15545,7 +15399,7 @@ msgstr "" "з окремими функціями переходу, роблячи можливим операції на зразок " "регулювання яскравості і контрасту, баланс кольорів та постеризацію." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2736 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2749 msgid "" "The feComposite filter primitive composites two images using one of " "the Porter-Duff blending modes or the arithmetic mode described in SVG " @@ -15557,7 +15411,7 @@ msgstr "" "описаного у стандарті SVG. Режими змішування Портера-Даффа по суті є " "булівськими операціями між значеннями кольорів відповідних точок зображень." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2740 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2753 msgid "" "The feConvolveMatrix lets you specify a Convolution to be applied on " "the image. Common effects created using convolution matrices are blur, " @@ -15572,7 +15426,7 @@ msgstr "" "за допомогою цього примітиву фільтра, особливий примітив фільтра для " "Гаусового розмивання є швидшим та незалежним від роздільної здатності." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2744 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2757 msgid "" "The feDiffuseLighting and feSpecularLighting filter primitives create " "\"embossed\" shadings. The input's alpha channel is used to provide depth " @@ -15584,7 +15438,7 @@ msgstr "" "використовується для відтворення глибини: непрозоріші області наближаються " "до глядача, а прозоріші — віддаляються." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2748 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2761 msgid "" "The feDisplacementMap filter primitive displaces the pixels in the " "first input using the second input as a displacement map, that shows from " @@ -15596,7 +15450,7 @@ msgstr "" "у якому напрямку і на яку відстань слід змістити точку. Класичними " "прикладами фільтра є ефекти «вихор» і «затискання»." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2752 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2765 msgid "" "The feFlood filter primitive fills the region with a given color and " "opacity. It is usually used as an input to other filters to apply color to " @@ -15606,7 +15460,7 @@ msgstr "" "непрозорістю. Зазвичай, його використовують як початковий для інших " "фільтрів, з метою надати графіці кольору." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2756 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2769 msgid "" "The feGaussianBlur filter primitive uniformly blurs its input. It is " "commonly used together with feOffset to create a drop shadow effect." @@ -15615,7 +15469,7 @@ msgstr "" "його застосовано. Зазвичай, він використовується разом з feOffset для " "створення ефекту відкидання тіні." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2760 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2773 msgid "" "The feImage filter primitive fills the region with an external image " "or another part of the document." @@ -15623,7 +15477,7 @@ msgstr "" "Примітив фільтра feImage заливає область зовнішнім зображенням або " "іншою частиною документа." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2764 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2777 msgid "" "The feMerge filter primitive composites several temporary images " "inside the filter primitive to a single image. It uses normal alpha " @@ -15636,7 +15490,7 @@ msgstr "" "кратне застосування примітивів feBlend у 'звичайному' режимі або кратне " "застосування примітивів feComposite у 'над'-режимі." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2768 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2781 msgid "" "The feMorphology filter primitive provides erode and dilate effects. " "For single-color objects erode makes the object thinner and dilate makes it " @@ -15646,7 +15500,7 @@ msgstr "" "ерозії та розширення. Для однокольорових об'єктів ерозія робить об'єкт " "меншим, а розширення — більшим." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2772 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2785 msgid "" "The feOffset filter primitive offsets the image by an user-defined " "amount. For example, this is useful for drop shadows, where the shadow is in " @@ -15656,7 +15510,7 @@ msgstr "" "відстань. Це, наприклад, корисно для відображення тіней, коли тінь " "розташовано з невеликим зсувом відносно об'єкта, що її відкидає." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2776 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2789 msgid "" "The feDiffuseLighting and feSpecularLighting filter primitives " "create \"embossed\" shadings. The input's alpha channel is used to provide " @@ -15668,14 +15522,14 @@ msgstr "" "матеріалу, використовується для відтворення глибини: непрозоріші області " "наближаються до глядача, а прозоріші — віддаляються." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2780 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2793 msgid "" "The feTile filter primitive tiles a region with its input graphic" msgstr "" "Примітив фільтра feTile заповнює область мозаїкою у формі вхідного " "графічного зображення" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2784 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2797 msgid "" "The feTurbulence filter primitive renders Perlin noise. This kind of " "noise is useful in simulating several nature phenomena like clouds, fire and " @@ -15685,11 +15539,11 @@ msgstr "" "шумів корисний для імітації деяких природних явищ на зразок хмар, полум'я та " "диму, та під час створення складних текстур на зразок мармуру та граніту." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2803 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2816 msgid "Duplicate filter primitive" msgstr "Дублювати примітив фільтра" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2856 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2869 msgid "Set filter primitive attribute" msgstr "Встановити атрибут примітива фільтра" @@ -15875,7 +15729,7 @@ msgstr "Спіралі" msgid "Search spirals" msgstr "Шукати спіралі" -#: ../src/ui/dialog/find.cpp:102 ../src/widgets/toolbox.cpp:1736 +#: ../src/ui/dialog/find.cpp:102 ../src/widgets/toolbox.cpp:1730 msgid "Paths" msgstr "Контури" @@ -16064,6 +15918,7 @@ msgid "Coptic" msgstr "коптська" #: ../src/ui/dialog/glyphs.cpp:69 ../src/ui/dialog/glyphs.cpp:161 +#: ../share/extensions/hershey.inx.h:22 msgid "Cyrillic" msgstr "кирилиця" @@ -17162,12 +17017,12 @@ msgstr "Стиль малювання об'єктів" #. Zoom #: ../src/ui/dialog/inkscape-preferences.cpp:376 -#: ../src/widgets/desktop-widget.cpp:631 +#: ../src/widgets/desktop-widget.cpp:635 msgid "Zoom" msgstr "Масштаб" #. Measure -#: ../src/ui/dialog/inkscape-preferences.cpp:381 ../src/verbs.cpp:2618 +#: ../src/ui/dialog/inkscape-preferences.cpp:381 ../src/verbs.cpp:2673 msgctxt "ContextVerb" msgid "Measure" msgstr "Міра" @@ -17232,7 +17087,7 @@ msgstr "" "знімається попереднє позначення)" #. Text -#: ../src/ui/dialog/inkscape-preferences.cpp:439 ../src/verbs.cpp:2610 +#: ../src/ui/dialog/inkscape-preferences.cpp:439 ../src/verbs.cpp:2665 msgctxt "ContextVerb" msgid "Text" msgstr "Текст" @@ -17260,13 +17115,37 @@ msgstr "" "Показувати діалогове вікно попередження щодо заміни шрифтів, якщо у системі " "не буде виявлено потрібних шрифтів." -#. , _("Ex square"), _("Percent") -#. , SP_CSS_UNIT_EX, SP_CSS_UNIT_PERCENT -#: ../src/ui/dialog/inkscape-preferences.cpp:454 -msgid "Text units" -msgstr "Одиниці тексту" - -#: ../src/ui/dialog/inkscape-preferences.cpp:456 +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Pixel" +msgstr "Точка" + +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Pica" +msgstr "Піка" + +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Millimeter" +msgstr "Міліметр" + +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Centimeter" +msgstr "Сантиметр" + +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Inch" +msgstr "Дюйм" + +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Em square" +msgstr "Em квадрат" + +#. , _("Ex square"), _("Percent") +#. , SP_CSS_UNIT_EX, SP_CSS_UNIT_PERCENT +#: ../src/ui/dialog/inkscape-preferences.cpp:454 +msgid "Text units" +msgstr "Одиниці тексту" + +#: ../src/ui/dialog/inkscape-preferences.cpp:456 msgid "Text size unit type:" msgstr "Тип одиниць розміру символів:" @@ -17305,8 +17184,8 @@ msgstr "Відро з фарбою" #. Gradient #: ../src/ui/dialog/inkscape-preferences.cpp:478 -#: ../src/widgets/gradient-selector.cpp:150 -#: ../src/widgets/gradient-selector.cpp:302 +#: ../src/widgets/gradient-selector.cpp:151 +#: ../src/widgets/gradient-selector.cpp:303 msgid "Gradient" msgstr "Градієнт" @@ -18126,9 +18005,9 @@ msgid "_Click/drag threshold:" msgstr "Вва_жати клацанням перетягування на:" #: ../src/ui/dialog/inkscape-preferences.cpp:852 -#: ../src/ui/dialog/inkscape-preferences.cpp:1190 #: ../src/ui/dialog/inkscape-preferences.cpp:1194 -#: ../src/ui/dialog/inkscape-preferences.cpp:1204 +#: ../src/ui/dialog/inkscape-preferences.cpp:1198 +#: ../src/ui/dialog/inkscape-preferences.cpp:1208 msgid "pixels" msgstr "точок" @@ -18218,20 +18097,38 @@ msgstr "" msgid "Path data" msgstr "Дані контуру" -#: ../src/ui/dialog/inkscape-preferences.cpp:882 -msgid "Allow relative coordinates" -msgstr "Дозволити відносні координати" +#: ../src/ui/dialog/inkscape-preferences.cpp:883 +msgid "Absolute" +msgstr "Абсолютний" + +#: ../src/ui/dialog/inkscape-preferences.cpp:883 +msgid "Relative" +msgstr "Відносний" #: ../src/ui/dialog/inkscape-preferences.cpp:883 -msgid "If set, relative coordinates may be used in path data" +#: ../src/ui/dialog/inkscape-preferences.cpp:1173 +msgid "Optimized" +msgstr "З оптимізацією" + +#: ../src/ui/dialog/inkscape-preferences.cpp:887 +msgid "Path string format" +msgstr "Формат рядка контуру" + +#: ../src/ui/dialog/inkscape-preferences.cpp:887 +msgid "" +"Path data should be written: only with absolute coordinates, only with " +"relative coordinates, or optimized for string length (mixed absolute and " +"relative coordinates)" msgstr "" -"Якщо позначено, у даних контурів можна використовувати відносні координати" +"Дані контуру має бути записано лише у абсолютних координатах, лише у " +"відносних координатах або оптимізовано за довжиною рядка (використовуючи як " +"абсолютні, так і відносні координати)" -#: ../src/ui/dialog/inkscape-preferences.cpp:885 +#: ../src/ui/dialog/inkscape-preferences.cpp:889 msgid "Force repeat commands" msgstr "Примусове повторення команд" -#: ../src/ui/dialog/inkscape-preferences.cpp:886 +#: ../src/ui/dialog/inkscape-preferences.cpp:890 msgid "" "Force repeating of the same path command (for example, 'L 1,2 L 3,4' instead " "of 'L 1,2 3,4')" @@ -18239,23 +18136,23 @@ msgstr "" "Примусове повторення тої самої команди контуру (наприклад, 'L 1,2 L 3,4' " "замість 'L 1,2 3,4')" -#: ../src/ui/dialog/inkscape-preferences.cpp:888 +#: ../src/ui/dialog/inkscape-preferences.cpp:892 msgid "Numbers" msgstr "Числа" -#: ../src/ui/dialog/inkscape-preferences.cpp:891 +#: ../src/ui/dialog/inkscape-preferences.cpp:895 msgid "_Numeric precision:" msgstr "_Числова точність:" -#: ../src/ui/dialog/inkscape-preferences.cpp:891 +#: ../src/ui/dialog/inkscape-preferences.cpp:895 msgid "Significant figures of the values written to the SVG file" msgstr "Значущі частини значень, які буде записано до файла SVG" -#: ../src/ui/dialog/inkscape-preferences.cpp:894 +#: ../src/ui/dialog/inkscape-preferences.cpp:898 msgid "Minimum _exponent:" msgstr "Мінімальний по_казник:" -#: ../src/ui/dialog/inkscape-preferences.cpp:894 +#: ../src/ui/dialog/inkscape-preferences.cpp:898 msgid "" "The smallest number written to SVG is 10 to the power of this exponent; " "anything smaller is written as zero" @@ -18265,17 +18162,17 @@ msgstr "" #. Code to add controls for attribute checking options #. Add incorrect style properties options -#: ../src/ui/dialog/inkscape-preferences.cpp:899 +#: ../src/ui/dialog/inkscape-preferences.cpp:903 msgid "Improper Attributes Actions" msgstr "Дії з неналежними атрибутами" -#: ../src/ui/dialog/inkscape-preferences.cpp:901 -#: ../src/ui/dialog/inkscape-preferences.cpp:909 -#: ../src/ui/dialog/inkscape-preferences.cpp:917 +#: ../src/ui/dialog/inkscape-preferences.cpp:905 +#: ../src/ui/dialog/inkscape-preferences.cpp:913 +#: ../src/ui/dialog/inkscape-preferences.cpp:921 msgid "Print warnings" msgstr "Повідомляти про помилки" -#: ../src/ui/dialog/inkscape-preferences.cpp:902 +#: ../src/ui/dialog/inkscape-preferences.cpp:906 msgid "" "Print warning if invalid or non-useful attributes found. Database files " "located in inkscape_data_dir/attributes." @@ -18284,20 +18181,20 @@ msgstr "" "атрибут. Файли бази даних зберігаються у теці каталог_даних_inkscape/" "attributes." -#: ../src/ui/dialog/inkscape-preferences.cpp:903 +#: ../src/ui/dialog/inkscape-preferences.cpp:907 msgid "Remove attributes" msgstr "Вилучати атрибути" -#: ../src/ui/dialog/inkscape-preferences.cpp:904 +#: ../src/ui/dialog/inkscape-preferences.cpp:908 msgid "Delete invalid or non-useful attributes from element tag" msgstr "Вилучати некоректні та непотрібні атрибути з теґів елемента" #. Add incorrect style properties options -#: ../src/ui/dialog/inkscape-preferences.cpp:907 +#: ../src/ui/dialog/inkscape-preferences.cpp:911 msgid "Inappropriate Style Properties Actions" msgstr "Дії з неналежними властивостями стилю" -#: ../src/ui/dialog/inkscape-preferences.cpp:910 +#: ../src/ui/dialog/inkscape-preferences.cpp:914 msgid "" "Print warning if inappropriate style properties found (i.e. 'font-family' " "set on a ). Database files located in inkscape_data_dir/attributes." @@ -18306,21 +18203,21 @@ msgstr "" "(наприклад, «font-family» у ). Файли бази даних зберігаються у теці " "каталог_даних_inkscape/attributes." -#: ../src/ui/dialog/inkscape-preferences.cpp:911 -#: ../src/ui/dialog/inkscape-preferences.cpp:919 +#: ../src/ui/dialog/inkscape-preferences.cpp:915 +#: ../src/ui/dialog/inkscape-preferences.cpp:923 msgid "Remove style properties" msgstr "Вилучати властивості стилю" -#: ../src/ui/dialog/inkscape-preferences.cpp:912 +#: ../src/ui/dialog/inkscape-preferences.cpp:916 msgid "Delete inappropriate style properties" msgstr "Вилучати невідповідні властивості стилю" #. Add default or inherited style properties options -#: ../src/ui/dialog/inkscape-preferences.cpp:915 +#: ../src/ui/dialog/inkscape-preferences.cpp:919 msgid "Non-useful Style Properties Actions" msgstr "Дії з непотрібними властивостями стилю" -#: ../src/ui/dialog/inkscape-preferences.cpp:918 +#: ../src/ui/dialog/inkscape-preferences.cpp:922 msgid "" "Print warning if redundant style properties found (i.e. if a property has " "the default value and a different value is not inherited or if value is the " @@ -18332,19 +18229,19 @@ msgstr "" "самим, яке було успадковано). Файли бази даних зберігаються у теці " "каталог_даних_inkscape/attributes." -#: ../src/ui/dialog/inkscape-preferences.cpp:920 +#: ../src/ui/dialog/inkscape-preferences.cpp:924 msgid "Delete redundant style properties" msgstr "Вилучати зайві властивості стилю" -#: ../src/ui/dialog/inkscape-preferences.cpp:922 +#: ../src/ui/dialog/inkscape-preferences.cpp:926 msgid "Check Attributes and Style Properties on" msgstr "Перевіряти атрибути і властивості стилів під час" -#: ../src/ui/dialog/inkscape-preferences.cpp:924 +#: ../src/ui/dialog/inkscape-preferences.cpp:928 msgid "Reading" msgstr "читання" -#: ../src/ui/dialog/inkscape-preferences.cpp:925 +#: ../src/ui/dialog/inkscape-preferences.cpp:929 msgid "" "Check attributes and style properties on reading in SVG files (including " "those internal to Inkscape which will slow down startup)" @@ -18352,11 +18249,11 @@ msgstr "" "Перевіряти атрибути і властивості стилів під час читання файлів SVG (зокрема " "перевіряти вбудовані файли Inkscape, що може уповільнити запуск програми)" -#: ../src/ui/dialog/inkscape-preferences.cpp:926 +#: ../src/ui/dialog/inkscape-preferences.cpp:930 msgid "Editing" -msgstr "Редагування" +msgstr "редагування" -#: ../src/ui/dialog/inkscape-preferences.cpp:927 +#: ../src/ui/dialog/inkscape-preferences.cpp:931 msgid "" "Check attributes and style properties while editing SVG files (may slow down " "Inkscape, mostly useful for debugging)" @@ -18364,42 +18261,42 @@ msgstr "" "Перевіряти атрибути і властивості стилів під час редагування файлів SVG " "(може уповільнити Inkscape, корисне для діагностики негараздів)" -#: ../src/ui/dialog/inkscape-preferences.cpp:928 +#: ../src/ui/dialog/inkscape-preferences.cpp:932 msgid "Writing" msgstr "запису" -#: ../src/ui/dialog/inkscape-preferences.cpp:929 +#: ../src/ui/dialog/inkscape-preferences.cpp:933 msgid "Check attributes and style properties on writing out SVG files" msgstr "" "Перевіряти атрибути і властивості стилів під час запису даних до файлів SVG" -#: ../src/ui/dialog/inkscape-preferences.cpp:931 +#: ../src/ui/dialog/inkscape-preferences.cpp:935 msgid "SVG output" msgstr "Експорт до SVG" #. TRANSLATORS: see http://www.newsandtech.com/issues/2004/03-04/pt/03-04_rendering.htm -#: ../src/ui/dialog/inkscape-preferences.cpp:937 +#: ../src/ui/dialog/inkscape-preferences.cpp:941 msgid "Perceptual" msgstr "Придатна для сприйняття" -#: ../src/ui/dialog/inkscape-preferences.cpp:937 +#: ../src/ui/dialog/inkscape-preferences.cpp:941 msgid "Relative Colorimetric" msgstr "Відносна колориметрична" -#: ../src/ui/dialog/inkscape-preferences.cpp:937 +#: ../src/ui/dialog/inkscape-preferences.cpp:941 msgid "Absolute Colorimetric" msgstr "Абсолютна колориметрична" -#: ../src/ui/dialog/inkscape-preferences.cpp:941 +#: ../src/ui/dialog/inkscape-preferences.cpp:945 msgid "(Note: Color management has been disabled in this build)" msgstr "" "(Зауваження: під час збирання цієї програми керування кольором було вимкнено)" -#: ../src/ui/dialog/inkscape-preferences.cpp:945 +#: ../src/ui/dialog/inkscape-preferences.cpp:949 msgid "Display adjustment" msgstr "Налаштування показу" -#: ../src/ui/dialog/inkscape-preferences.cpp:955 +#: ../src/ui/dialog/inkscape-preferences.cpp:959 #, c-format msgid "" "The ICC profile to use to calibrate display output.\n" @@ -18408,116 +18305,116 @@ msgstr "" "Профіль ICC, який буде використано для калібрування показу на екрані.\n" "Каталоги для пошуку:%s" -#: ../src/ui/dialog/inkscape-preferences.cpp:956 +#: ../src/ui/dialog/inkscape-preferences.cpp:960 msgid "Display profile:" msgstr "Профіль дисплея:" -#: ../src/ui/dialog/inkscape-preferences.cpp:961 +#: ../src/ui/dialog/inkscape-preferences.cpp:965 msgid "Retrieve profile from display" msgstr "Отримати профіль з дисплея" -#: ../src/ui/dialog/inkscape-preferences.cpp:964 +#: ../src/ui/dialog/inkscape-preferences.cpp:968 msgid "Retrieve profiles from those attached to displays via XICC" msgstr "Отримати профілі з тих, що прив'язані до дисплеїв через XICC" -#: ../src/ui/dialog/inkscape-preferences.cpp:966 +#: ../src/ui/dialog/inkscape-preferences.cpp:970 msgid "Retrieve profiles from those attached to displays" msgstr "Отримати профілі з тих, що прив'язано до дисплеїв" -#: ../src/ui/dialog/inkscape-preferences.cpp:971 +#: ../src/ui/dialog/inkscape-preferences.cpp:975 msgid "Display rendering intent:" msgstr "Ціль відтворення кольорів на дисплеї:" -#: ../src/ui/dialog/inkscape-preferences.cpp:972 +#: ../src/ui/dialog/inkscape-preferences.cpp:976 msgid "The rendering intent to use to calibrate display output" msgstr "" "Режим відтворення кольорів, що використовуватиметься для калібрування виводу " "на дисплей" -#: ../src/ui/dialog/inkscape-preferences.cpp:974 +#: ../src/ui/dialog/inkscape-preferences.cpp:978 msgid "Proofing" msgstr "Проба кольорів" -#: ../src/ui/dialog/inkscape-preferences.cpp:976 +#: ../src/ui/dialog/inkscape-preferences.cpp:980 msgid "Simulate output on screen" msgstr "Імітувати пристрій виводу" -#: ../src/ui/dialog/inkscape-preferences.cpp:978 +#: ../src/ui/dialog/inkscape-preferences.cpp:982 msgid "Simulates output of target device" msgstr "Імітувати вивід на цільовий пристрій" -#: ../src/ui/dialog/inkscape-preferences.cpp:980 +#: ../src/ui/dialog/inkscape-preferences.cpp:984 msgid "Mark out of gamut colors" msgstr "Позначати кольори поза гамою" -#: ../src/ui/dialog/inkscape-preferences.cpp:982 +#: ../src/ui/dialog/inkscape-preferences.cpp:986 msgid "Highlights colors that are out of gamut for the target device" msgstr "Підсвічує кольори, що лежать поза гамою цільового пристрою" -#: ../src/ui/dialog/inkscape-preferences.cpp:994 +#: ../src/ui/dialog/inkscape-preferences.cpp:998 msgid "Out of gamut warning color:" msgstr "Колір для попередження про гаму:" -#: ../src/ui/dialog/inkscape-preferences.cpp:995 +#: ../src/ui/dialog/inkscape-preferences.cpp:999 msgid "Selects the color used for out of gamut warning" msgstr "" "Обирає колір, що використовуватиметься для попередження про відсутність у " "гамі" -#: ../src/ui/dialog/inkscape-preferences.cpp:997 +#: ../src/ui/dialog/inkscape-preferences.cpp:1001 msgid "Device profile:" msgstr "Профіль пристрою виводу:" -#: ../src/ui/dialog/inkscape-preferences.cpp:998 +#: ../src/ui/dialog/inkscape-preferences.cpp:1002 msgid "The ICC profile to use to simulate device output" msgstr "Профіль ICC, що використовуватиметься для імітації пристрою виведення" -#: ../src/ui/dialog/inkscape-preferences.cpp:1001 +#: ../src/ui/dialog/inkscape-preferences.cpp:1005 msgid "Device rendering intent:" msgstr "Ціль відтворення кольорів:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1002 +#: ../src/ui/dialog/inkscape-preferences.cpp:1006 msgid "The rendering intent to use to calibrate device output" msgstr "" "Ціль відтворення кольорів, що використовуватиметься для калібрування " "виведення на пристрій" -#: ../src/ui/dialog/inkscape-preferences.cpp:1004 +#: ../src/ui/dialog/inkscape-preferences.cpp:1008 msgid "Black point compensation" msgstr "Компенсація чорної точки" -#: ../src/ui/dialog/inkscape-preferences.cpp:1006 +#: ../src/ui/dialog/inkscape-preferences.cpp:1010 msgid "Enables black point compensation" msgstr "Вмикає компенсацію чорної точки" -#: ../src/ui/dialog/inkscape-preferences.cpp:1008 +#: ../src/ui/dialog/inkscape-preferences.cpp:1012 msgid "Preserve black" msgstr "Зберігати чорний" -#: ../src/ui/dialog/inkscape-preferences.cpp:1015 +#: ../src/ui/dialog/inkscape-preferences.cpp:1019 msgid "(LittleCMS 1.15 or later required)" msgstr "(потрібна бібліотека LittleCMS версії 1.15 або новіша)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1017 +#: ../src/ui/dialog/inkscape-preferences.cpp:1021 msgid "Preserve K channel in CMYK -> CMYK transforms" msgstr "Зберігати канал K під час перетворень CMYK → CMYK" -#: ../src/ui/dialog/inkscape-preferences.cpp:1031 +#: ../src/ui/dialog/inkscape-preferences.cpp:1035 #: ../src/widgets/sp-color-icc-selector.cpp:474 #: ../src/widgets/sp-color-icc-selector.cpp:766 msgid "" msgstr "<немає>" -#: ../src/ui/dialog/inkscape-preferences.cpp:1076 +#: ../src/ui/dialog/inkscape-preferences.cpp:1080 msgid "Color management" msgstr "Керування кольором" #. Autosave options -#: ../src/ui/dialog/inkscape-preferences.cpp:1079 +#: ../src/ui/dialog/inkscape-preferences.cpp:1083 msgid "Enable autosave (requires restart)" msgstr "Увімкнути автозбереження (потребує перезапуску)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1080 +#: ../src/ui/dialog/inkscape-preferences.cpp:1084 msgid "" "Automatically save the current document(s) at a given interval, thus " "minimizing loss in case of a crash" @@ -18525,12 +18422,12 @@ msgstr "" "Автоматично зберігати поточні документи через вказані проміжки часу, таким " "чином зменшуючи втрати у випадку аварійного завершення програми" -#: ../src/ui/dialog/inkscape-preferences.cpp:1086 +#: ../src/ui/dialog/inkscape-preferences.cpp:1090 msgctxt "Filesystem" msgid "Autosave _directory:" msgstr "Каталог _автозбереження:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1086 +#: ../src/ui/dialog/inkscape-preferences.cpp:1090 msgid "" "The directory where autosaves will be written. This should be an absolute " "path (starts with / on UNIX or a drive letter such as C: on Windows). " @@ -18539,19 +18436,19 @@ msgstr "" "вказати абсолютну адресу (адресу, що починається з / у UNIX або літери " "диска, наприклад C:, у Windows). " -#: ../src/ui/dialog/inkscape-preferences.cpp:1088 +#: ../src/ui/dialog/inkscape-preferences.cpp:1092 msgid "_Interval (in minutes):" msgstr "_Інтервал (у хвилинах):" -#: ../src/ui/dialog/inkscape-preferences.cpp:1088 +#: ../src/ui/dialog/inkscape-preferences.cpp:1092 msgid "Interval (in minutes) at which document will be autosaved" msgstr "Інтервал (у хвилинах) між автоматичними зберіганнями копій" -#: ../src/ui/dialog/inkscape-preferences.cpp:1090 +#: ../src/ui/dialog/inkscape-preferences.cpp:1094 msgid "_Maximum number of autosaves:" msgstr "Макс_имальна кількість копій автозбереження:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1090 +#: ../src/ui/dialog/inkscape-preferences.cpp:1094 msgid "" "Maximum number of autosaved files; use this to limit the storage space used" msgstr "" @@ -18570,15 +18467,15 @@ msgstr "" #. _autosave_autosave_interval.signal_changed().connect( sigc::ptr_fun(inkscape_autosave_init), TRUE ); #. #. ----------- -#: ../src/ui/dialog/inkscape-preferences.cpp:1105 +#: ../src/ui/dialog/inkscape-preferences.cpp:1109 msgid "Autosave" msgstr "Автозбереження" -#: ../src/ui/dialog/inkscape-preferences.cpp:1109 +#: ../src/ui/dialog/inkscape-preferences.cpp:1113 msgid "Open Clip Art Library _Server Name:" msgstr "_Назва сервера бібліотеки Open Clip Art:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1110 +#: ../src/ui/dialog/inkscape-preferences.cpp:1114 msgid "" "The server name of the Open Clip Art Library webdav server; it's used by the " "Import and Export to OCAL function" @@ -18586,35 +18483,35 @@ msgstr "" "Назва сервера webdav бібліотеки Open Clip Art. Його буде використано " "функціями імпорту з та експорту до OCAL." -#: ../src/ui/dialog/inkscape-preferences.cpp:1112 +#: ../src/ui/dialog/inkscape-preferences.cpp:1116 msgid "Open Clip Art Library _Username:" msgstr "Ім'_я користувача бібліотеки Open Clip Art:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1113 +#: ../src/ui/dialog/inkscape-preferences.cpp:1117 msgid "The username used to log into Open Clip Art Library" msgstr "Ім'я користувача для авторизації у системі бібліотеки Open Clip Art" -#: ../src/ui/dialog/inkscape-preferences.cpp:1115 +#: ../src/ui/dialog/inkscape-preferences.cpp:1119 msgid "Open Clip Art Library _Password:" msgstr "Паро_ль до бібліотеки Open Clip Art:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1116 +#: ../src/ui/dialog/inkscape-preferences.cpp:1120 msgid "The password used to log into Open Clip Art Library" msgstr "Пароль для авторизації у системі бібліотеки Open Clip Art" -#: ../src/ui/dialog/inkscape-preferences.cpp:1117 +#: ../src/ui/dialog/inkscape-preferences.cpp:1121 msgid "Open Clip Art" msgstr "Open Clip Art" -#: ../src/ui/dialog/inkscape-preferences.cpp:1122 +#: ../src/ui/dialog/inkscape-preferences.cpp:1126 msgid "Behavior" msgstr "Поведінка" -#: ../src/ui/dialog/inkscape-preferences.cpp:1126 +#: ../src/ui/dialog/inkscape-preferences.cpp:1130 msgid "_Simplification threshold:" msgstr "Поріг спро_щення:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1127 +#: ../src/ui/dialog/inkscape-preferences.cpp:1131 msgid "" "How strong is the Node tool's Simplify command by default. If you invoke " "this command several times in quick succession, it will act more and more " @@ -18625,45 +18522,45 @@ msgstr "" "більш агресивно; щоб повернутися до типового значення, зробіть паузу перед " "черговим викликом команди." -#: ../src/ui/dialog/inkscape-preferences.cpp:1129 +#: ../src/ui/dialog/inkscape-preferences.cpp:1133 msgid "Color stock markers the same color as object" msgstr "Колір опорних маркерів збігається з кольором об’єкта" -#: ../src/ui/dialog/inkscape-preferences.cpp:1130 +#: ../src/ui/dialog/inkscape-preferences.cpp:1134 msgid "Color custom markers the same color as object" msgstr "Колір нетипових маркерів збігається з кольором об’єкта" -#: ../src/ui/dialog/inkscape-preferences.cpp:1131 -#: ../src/ui/dialog/inkscape-preferences.cpp:1341 +#: ../src/ui/dialog/inkscape-preferences.cpp:1135 +#: ../src/ui/dialog/inkscape-preferences.cpp:1345 msgid "Update marker color when object color changes" msgstr "Оновлювати колір маркера у разі зміни кольора об’єкта" #. Selecting options -#: ../src/ui/dialog/inkscape-preferences.cpp:1134 +#: ../src/ui/dialog/inkscape-preferences.cpp:1138 msgid "Select in all layers" msgstr "Позначити все в усіх шарах" -#: ../src/ui/dialog/inkscape-preferences.cpp:1135 +#: ../src/ui/dialog/inkscape-preferences.cpp:1139 msgid "Select only within current layer" msgstr "Позначити лише у поточному шарі" -#: ../src/ui/dialog/inkscape-preferences.cpp:1136 +#: ../src/ui/dialog/inkscape-preferences.cpp:1140 msgid "Select in current layer and sublayers" msgstr "Позначити у поточному шарі та підшарах" -#: ../src/ui/dialog/inkscape-preferences.cpp:1137 +#: ../src/ui/dialog/inkscape-preferences.cpp:1141 msgid "Ignore hidden objects and layers" msgstr "Ігнорувати приховані об'єкти і шари" -#: ../src/ui/dialog/inkscape-preferences.cpp:1138 +#: ../src/ui/dialog/inkscape-preferences.cpp:1142 msgid "Ignore locked objects and layers" msgstr "Ігнорувати заблоковані об'єкти і шари" -#: ../src/ui/dialog/inkscape-preferences.cpp:1139 +#: ../src/ui/dialog/inkscape-preferences.cpp:1143 msgid "Deselect upon layer change" msgstr "Зняти позначення після зміни шару" -#: ../src/ui/dialog/inkscape-preferences.cpp:1142 +#: ../src/ui/dialog/inkscape-preferences.cpp:1146 msgid "" "Uncheck this to be able to keep the current objects selected when the " "current layer changes" @@ -18671,25 +18568,25 @@ msgstr "" "Вимкніть це параметр, якщо бажаєте зберегти позначення після зміни поточного " "шару" -#: ../src/ui/dialog/inkscape-preferences.cpp:1144 +#: ../src/ui/dialog/inkscape-preferences.cpp:1148 msgid "Ctrl+A, Tab, Shift+Tab" msgstr "Ctrl+A, Tab, Shift+Tab" -#: ../src/ui/dialog/inkscape-preferences.cpp:1146 +#: ../src/ui/dialog/inkscape-preferences.cpp:1150 msgid "Make keyboard selection commands work on objects in all layers" msgstr "Позначати з клавіатури об'єкти в усіх шарах одночасно" -#: ../src/ui/dialog/inkscape-preferences.cpp:1148 +#: ../src/ui/dialog/inkscape-preferences.cpp:1152 msgid "Make keyboard selection commands work on objects in current layer only" msgstr "Позначати з клавіатури об'єкти тільки у поточному шарі" -#: ../src/ui/dialog/inkscape-preferences.cpp:1150 +#: ../src/ui/dialog/inkscape-preferences.cpp:1154 msgid "" "Make keyboard selection commands work on objects in current layer and all " "its sublayers" msgstr "Позначати з клавіатури об'єкти в поточному шарі та усіх його підшарах" -#: ../src/ui/dialog/inkscape-preferences.cpp:1152 +#: ../src/ui/dialog/inkscape-preferences.cpp:1156 msgid "" "Uncheck this to be able to select objects that are hidden (either by " "themselves or by being in a hidden layer)" @@ -18697,7 +18594,7 @@ msgstr "" "Вимкніть цей параметр, якщо бажаєте позначити приховані (невидимі) об'єкти " "(окремо або у прихованому шарі)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1154 +#: ../src/ui/dialog/inkscape-preferences.cpp:1158 msgid "" "Uncheck this to be able to select objects that are locked (either by " "themselves or by being in a locked layer)" @@ -18705,76 +18602,72 @@ msgstr "" "Вимкніть це параметр, якщо бажаєте позначити заблоковані об'єкти (окремо або " "у заблокованому шарі)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1156 +#: ../src/ui/dialog/inkscape-preferences.cpp:1160 msgid "Wrap when cycling objects in z-order" msgstr "Циклічний перехід між об'єктами у напрямку z" -#: ../src/ui/dialog/inkscape-preferences.cpp:1158 +#: ../src/ui/dialog/inkscape-preferences.cpp:1162 msgid "Alt+Scroll Wheel" msgstr "Alt+Коліщатко гортання" -#: ../src/ui/dialog/inkscape-preferences.cpp:1160 +#: ../src/ui/dialog/inkscape-preferences.cpp:1164 msgid "Wrap around at start and end when cycling objects in z-order" msgstr "Замкнути циклічний перехід між об'єктами у напрямку вісі z." -#: ../src/ui/dialog/inkscape-preferences.cpp:1162 +#: ../src/ui/dialog/inkscape-preferences.cpp:1166 msgid "Selecting" msgstr "Позначення" #. Transforms options -#: ../src/ui/dialog/inkscape-preferences.cpp:1165 -#: ../src/widgets/select-toolbar.cpp:572 +#: ../src/ui/dialog/inkscape-preferences.cpp:1169 +#: ../src/widgets/select-toolbar.cpp:576 msgid "Scale stroke width" msgstr "Змінювати ширину штриха" -#: ../src/ui/dialog/inkscape-preferences.cpp:1166 +#: ../src/ui/dialog/inkscape-preferences.cpp:1170 msgid "Scale rounded corners in rectangles" msgstr "Змінювати радіус округлених кутів" -#: ../src/ui/dialog/inkscape-preferences.cpp:1167 +#: ../src/ui/dialog/inkscape-preferences.cpp:1171 msgid "Transform gradients" msgstr "Трансформувати градієнти" -#: ../src/ui/dialog/inkscape-preferences.cpp:1168 +#: ../src/ui/dialog/inkscape-preferences.cpp:1172 msgid "Transform patterns" msgstr "Трансформувати візерунки" -#: ../src/ui/dialog/inkscape-preferences.cpp:1169 -msgid "Optimized" -msgstr "З оптимізацією" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1170 +#: ../src/ui/dialog/inkscape-preferences.cpp:1174 msgid "Preserved" msgstr "Без оптимізації" -#: ../src/ui/dialog/inkscape-preferences.cpp:1173 -#: ../src/widgets/select-toolbar.cpp:573 +#: ../src/ui/dialog/inkscape-preferences.cpp:1177 +#: ../src/widgets/select-toolbar.cpp:577 msgid "When scaling objects, scale the stroke width by the same proportion" msgstr "" "При зміні розміру об'єктів змінювати ширину штриха у відповідній пропорції" -#: ../src/ui/dialog/inkscape-preferences.cpp:1175 -#: ../src/widgets/select-toolbar.cpp:584 +#: ../src/ui/dialog/inkscape-preferences.cpp:1179 +#: ../src/widgets/select-toolbar.cpp:588 msgid "When scaling rectangles, scale the radii of rounded corners" msgstr "" "При зміні розміру прямокутників міняти радіус округлених кутів у тій самій " "пропорції" -#: ../src/ui/dialog/inkscape-preferences.cpp:1177 -#: ../src/widgets/select-toolbar.cpp:595 +#: ../src/ui/dialog/inkscape-preferences.cpp:1181 +#: ../src/widgets/select-toolbar.cpp:599 msgid "Move gradients (in fill or stroke) along with the objects" msgstr "Трансформувати градієнти (у заповненні чи штрихах) разом з об'єктом" -#: ../src/ui/dialog/inkscape-preferences.cpp:1179 -#: ../src/widgets/select-toolbar.cpp:606 +#: ../src/ui/dialog/inkscape-preferences.cpp:1183 +#: ../src/widgets/select-toolbar.cpp:610 msgid "Move patterns (in fill or stroke) along with the objects" msgstr "Трансформувати візерунки (у заповненнях чи штрихах) разом з об'єктом" -#: ../src/ui/dialog/inkscape-preferences.cpp:1180 +#: ../src/ui/dialog/inkscape-preferences.cpp:1184 msgid "Store transformation" msgstr "Збереження трансформації" -#: ../src/ui/dialog/inkscape-preferences.cpp:1182 +#: ../src/ui/dialog/inkscape-preferences.cpp:1186 msgid "" "If possible, apply transformation to objects without adding a transform= " "attribute" @@ -18782,19 +18675,19 @@ msgstr "" "При можливості застосовувати до об'єктів трансформацію без додавання " "атрибуту transform=" -#: ../src/ui/dialog/inkscape-preferences.cpp:1184 +#: ../src/ui/dialog/inkscape-preferences.cpp:1188 msgid "Always store transformation as a transform= attribute on objects" msgstr "Завжди зберігати трансформацію у вигляді атрибута transform=" -#: ../src/ui/dialog/inkscape-preferences.cpp:1186 +#: ../src/ui/dialog/inkscape-preferences.cpp:1190 msgid "Transforms" msgstr "Трансформації" -#: ../src/ui/dialog/inkscape-preferences.cpp:1190 +#: ../src/ui/dialog/inkscape-preferences.cpp:1194 msgid "Mouse _wheel scrolls by:" msgstr "Ко_лесо миші гортає на:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1191 +#: ../src/ui/dialog/inkscape-preferences.cpp:1195 msgid "" "One mouse wheel notch scrolls by this distance in screen pixels " "(horizontally with Shift)" @@ -18802,24 +18695,24 @@ msgstr "" "На цю відстань у точках зсувається зображення одним клацанням колеса миші (з " "натиснутою клавішею Shift — по горизонталі)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1192 +#: ../src/ui/dialog/inkscape-preferences.cpp:1196 msgid "Ctrl+arrows" msgstr "Ctrl+стрілки" -#: ../src/ui/dialog/inkscape-preferences.cpp:1194 +#: ../src/ui/dialog/inkscape-preferences.cpp:1198 msgid "Sc_roll by:" msgstr "К_рок гортання:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1195 +#: ../src/ui/dialog/inkscape-preferences.cpp:1199 msgid "Pressing Ctrl+arrow key scrolls by this distance (in screen pixels)" msgstr "" "На цю відстань у точках зсувається зображення при натисканні Ctrl+стрілки" -#: ../src/ui/dialog/inkscape-preferences.cpp:1197 +#: ../src/ui/dialog/inkscape-preferences.cpp:1201 msgid "_Acceleration:" msgstr "_Прискорення:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1198 +#: ../src/ui/dialog/inkscape-preferences.cpp:1202 msgid "" "Pressing and holding Ctrl+arrow will gradually speed up scrolling (0 for no " "acceleration)" @@ -18827,15 +18720,15 @@ msgstr "" "Якщо утримувати натиснутими Ctrl+стрілку, швидкість гортання буде зростати " "(0 скасовує прискорення)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1199 +#: ../src/ui/dialog/inkscape-preferences.cpp:1203 msgid "Autoscrolling" msgstr "Автогортання" -#: ../src/ui/dialog/inkscape-preferences.cpp:1201 +#: ../src/ui/dialog/inkscape-preferences.cpp:1205 msgid "_Speed:" msgstr "_Швидкість:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1202 +#: ../src/ui/dialog/inkscape-preferences.cpp:1206 msgid "" "How fast the canvas autoscrolls when you drag beyond canvas edge (0 to turn " "autoscroll off)" @@ -18843,12 +18736,12 @@ msgstr "" "Як швидко буде відбуватись гортання при перетягуванні об'єкта за межі вікна " "(0 скасовує автогортання)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1204 +#: ../src/ui/dialog/inkscape-preferences.cpp:1208 #: ../src/ui/dialog/tracedialog.cpp:522 ../src/ui/dialog/tracedialog.cpp:721 msgid "_Threshold:" msgstr "_Поріг:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1205 +#: ../src/ui/dialog/inkscape-preferences.cpp:1209 msgid "" "How far (in screen pixels) you need to be from the canvas edge to trigger " "autoscroll; positive is outside the canvas, negative is within the canvas" @@ -18861,11 +18754,11 @@ msgstr "" #. _page_scrolling.add_line( false, "", _scroll_space, "", #. _("When on, pressing and holding Space and dragging with left mouse button pans canvas (as in Adobe Illustrator); when off, Space temporarily switches to Selector tool (default)")); #. -#: ../src/ui/dialog/inkscape-preferences.cpp:1211 +#: ../src/ui/dialog/inkscape-preferences.cpp:1215 msgid "Mouse wheel zooms by default" msgstr "Колесо миші типово змінює масштаб" -#: ../src/ui/dialog/inkscape-preferences.cpp:1213 +#: ../src/ui/dialog/inkscape-preferences.cpp:1217 msgid "" "When on, mouse wheel zooms without Ctrl and scrolls canvas with Ctrl; when " "off, it zooms with Ctrl and scrolls without Ctrl" @@ -18874,24 +18767,24 @@ msgstr "" "гортання з Ctrl; якщо зняти позначку, воно змінюватиме масштаб з Ctrl і " "гортатиме без Ctrl." -#: ../src/ui/dialog/inkscape-preferences.cpp:1214 +#: ../src/ui/dialog/inkscape-preferences.cpp:1218 msgid "Scrolling" msgstr "Гортання" #. Snapping options -#: ../src/ui/dialog/inkscape-preferences.cpp:1217 +#: ../src/ui/dialog/inkscape-preferences.cpp:1221 msgid "Enable snap indicator" msgstr "Увімкнути індикатор прилипання" -#: ../src/ui/dialog/inkscape-preferences.cpp:1219 +#: ../src/ui/dialog/inkscape-preferences.cpp:1223 msgid "After snapping, a symbol is drawn at the point that has snapped" msgstr "Після прилипання у точні прилипання буде намальовано цей символ" -#: ../src/ui/dialog/inkscape-preferences.cpp:1222 +#: ../src/ui/dialog/inkscape-preferences.cpp:1226 msgid "_Delay (in ms):" msgstr "З_атримка (у мс):" -#: ../src/ui/dialog/inkscape-preferences.cpp:1223 +#: ../src/ui/dialog/inkscape-preferences.cpp:1227 msgid "" "Postpone snapping as long as the mouse is moving, and then wait an " "additional fraction of a second. This additional delay is specified here. " @@ -18902,20 +18795,20 @@ msgstr "" "встановити нульове або близьке до нульового значення, прилипання буде " "миттєвим." -#: ../src/ui/dialog/inkscape-preferences.cpp:1225 +#: ../src/ui/dialog/inkscape-preferences.cpp:1229 msgid "Only snap the node closest to the pointer" msgstr "Прилипання лише до вузла, найближчого до вказівника" -#: ../src/ui/dialog/inkscape-preferences.cpp:1227 +#: ../src/ui/dialog/inkscape-preferences.cpp:1231 msgid "" "Only try to snap the node that is initially closest to the mouse pointer" msgstr "Виконувати прилипання лише до вузла, найближчого до вказівника миші" -#: ../src/ui/dialog/inkscape-preferences.cpp:1230 +#: ../src/ui/dialog/inkscape-preferences.cpp:1234 msgid "_Weight factor:" msgstr "_Ваговий коефіцієнт:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1231 +#: ../src/ui/dialog/inkscape-preferences.cpp:1235 msgid "" "When multiple snap solutions are found, then Inkscape can either prefer the " "closest transformation (when set to 0), or prefer the node that was " @@ -18925,11 +18818,11 @@ msgstr "" "найближче перетворення (якщо встановлено 0), або вибрати вузол, який " "спочатку був найближчим до вказівника миші (якщо встановлено 1)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1233 +#: ../src/ui/dialog/inkscape-preferences.cpp:1237 msgid "Snap the mouse pointer when dragging a constrained knot" msgstr "Прилипання до вказівника миші під час перетягування обмеженого вузла" -#: ../src/ui/dialog/inkscape-preferences.cpp:1235 +#: ../src/ui/dialog/inkscape-preferences.cpp:1239 msgid "" "When dragging a knot along a constraint line, then snap the position of the " "mouse pointer instead of snapping the projection of the knot onto the " @@ -18938,16 +18831,16 @@ msgstr "" "Під час перетягування вузла вздовж лінії обмеження виконувати прилипання до " "позиції вказівника миші, а не до проекції вузла на лінію обмеження" -#: ../src/ui/dialog/inkscape-preferences.cpp:1237 +#: ../src/ui/dialog/inkscape-preferences.cpp:1241 msgid "Snapping" msgstr "Прилипання" #. nudgedistance is limited to 1000 in select-context.cpp: use the same limit here -#: ../src/ui/dialog/inkscape-preferences.cpp:1242 +#: ../src/ui/dialog/inkscape-preferences.cpp:1246 msgid "_Arrow keys move by:" msgstr "С_трілки переміщують на:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1243 +#: ../src/ui/dialog/inkscape-preferences.cpp:1247 msgid "" "Pressing an arrow key moves selected object(s) or node(s) by this distance" msgstr "" @@ -18955,28 +18848,28 @@ msgstr "" "клавіші зі стрілкою" #. defaultscale is limited to 1000 in select-context.cpp: use the same limit here -#: ../src/ui/dialog/inkscape-preferences.cpp:1246 +#: ../src/ui/dialog/inkscape-preferences.cpp:1250 msgid "> and < _scale by:" msgstr "Кр_ок зміни масштабу при > та <:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1247 +#: ../src/ui/dialog/inkscape-preferences.cpp:1251 msgid "Pressing > or < scales selection up or down by this increment" msgstr "" "На цю величину змінюється розмір позначеного при натисканні клавіш > чи <" -#: ../src/ui/dialog/inkscape-preferences.cpp:1249 +#: ../src/ui/dialog/inkscape-preferences.cpp:1253 msgid "_Inset/Outset by:" msgstr "В_тягнути/розтягнути на:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1250 +#: ../src/ui/dialog/inkscape-preferences.cpp:1254 msgid "Inset and Outset commands displace the path by this distance" msgstr "На цю відстань переміщують контур команди втягування та розтягування" -#: ../src/ui/dialog/inkscape-preferences.cpp:1251 +#: ../src/ui/dialog/inkscape-preferences.cpp:1255 msgid "Compass-like display of angles" msgstr "Подібне до компасу відображення кутів" -#: ../src/ui/dialog/inkscape-preferences.cpp:1253 +#: ../src/ui/dialog/inkscape-preferences.cpp:1257 msgid "" "When on, angles are displayed with 0 at north, 0 to 360 range, positive " "clockwise; otherwise with 0 at east, -180 to 180 range, positive " @@ -18987,15 +18880,15 @@ msgstr "" "випадку 0 вказує на схід, діапазон значень знаходиться між -180 та 180, " "приріст кута відбувається проти годинникової стрілки." -#: ../src/ui/dialog/inkscape-preferences.cpp:1259 +#: ../src/ui/dialog/inkscape-preferences.cpp:1263 msgid "_Rotation snaps every:" msgstr "О_бмеження обертання:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1259 +#: ../src/ui/dialog/inkscape-preferences.cpp:1263 msgid "degrees" msgstr "градусів" -#: ../src/ui/dialog/inkscape-preferences.cpp:1260 +#: ../src/ui/dialog/inkscape-preferences.cpp:1264 msgid "" "Rotating with Ctrl pressed snaps every that much degrees; also, pressing " "[ or ] rotates by this amount" @@ -19003,11 +18896,11 @@ msgstr "" "Обертання з натиснутою Ctrl обмежує кут значеннями, кратними вибраному; " "натискання «[» чи «]» повертає на вибраний кут" -#: ../src/ui/dialog/inkscape-preferences.cpp:1261 +#: ../src/ui/dialog/inkscape-preferences.cpp:1265 msgid "Relative snapping of guideline angles" msgstr "Відносне прилипання кутів нахилу напрямних" -#: ../src/ui/dialog/inkscape-preferences.cpp:1263 +#: ../src/ui/dialog/inkscape-preferences.cpp:1267 msgid "" "When on, the snap angles when rotating a guideline will be relative to the " "original angle" @@ -19015,11 +18908,15 @@ msgstr "" "Якщо позначено, кути прилипання під час обертання напрямної будуть " "обчислюватися відносно початкового кута" -#: ../src/ui/dialog/inkscape-preferences.cpp:1265 +#: ../src/ui/dialog/inkscape-preferences.cpp:1269 msgid "_Zoom in/out by:" msgstr "Крок _масштабування:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1266 +#: ../src/ui/dialog/inkscape-preferences.cpp:1269 +msgid "%" +msgstr "%" + +#: ../src/ui/dialog/inkscape-preferences.cpp:1270 msgid "" "Zoom tool click, +/- keys, and middle click zoom in and out by this " "multiplier" @@ -19027,44 +18924,44 @@ msgstr "" "Крок при клацанні інструментом масштабу, натисканні клавіш +/- та клацанні " "середньою кнопкою миші" -#: ../src/ui/dialog/inkscape-preferences.cpp:1267 +#: ../src/ui/dialog/inkscape-preferences.cpp:1271 msgid "Steps" msgstr "Кроки" #. Clones options -#: ../src/ui/dialog/inkscape-preferences.cpp:1270 +#: ../src/ui/dialog/inkscape-preferences.cpp:1274 msgid "Move in parallel" msgstr "Переміщуються паралельно" -#: ../src/ui/dialog/inkscape-preferences.cpp:1272 +#: ../src/ui/dialog/inkscape-preferences.cpp:1276 msgid "Stay unmoved" msgstr "Залишаються нерухомими" -#: ../src/ui/dialog/inkscape-preferences.cpp:1274 +#: ../src/ui/dialog/inkscape-preferences.cpp:1278 msgid "Move according to transform" msgstr "Рухаються у відповідності до transform=" -#: ../src/ui/dialog/inkscape-preferences.cpp:1276 +#: ../src/ui/dialog/inkscape-preferences.cpp:1280 msgid "Are unlinked" msgstr "Від'єднуються" -#: ../src/ui/dialog/inkscape-preferences.cpp:1278 +#: ../src/ui/dialog/inkscape-preferences.cpp:1282 msgid "Are deleted" msgstr "Вилучаються" -#: ../src/ui/dialog/inkscape-preferences.cpp:1281 +#: ../src/ui/dialog/inkscape-preferences.cpp:1285 msgid "Moving original: clones and linked offsets" msgstr "Пересування оригіналу: клони та прив'язані розтяжки" -#: ../src/ui/dialog/inkscape-preferences.cpp:1283 +#: ../src/ui/dialog/inkscape-preferences.cpp:1287 msgid "Clones are translated by the same vector as their original" msgstr "Кожен клон зсувається на той самий вектор, що й оригінал" -#: ../src/ui/dialog/inkscape-preferences.cpp:1285 +#: ../src/ui/dialog/inkscape-preferences.cpp:1289 msgid "Clones preserve their positions when their original is moved" msgstr "Клони залишаються на місці, коли рухаються їхні оригінали" -#: ../src/ui/dialog/inkscape-preferences.cpp:1287 +#: ../src/ui/dialog/inkscape-preferences.cpp:1291 msgid "" "Each clone moves according to the value of its transform= attribute; for " "example, a rotated clone will move in a different direction than its original" @@ -19073,27 +18970,27 @@ msgstr "" "Наприклад, повернутий клон буде переміщуватись у іншому напрямку, ніж його " "оригінал." -#: ../src/ui/dialog/inkscape-preferences.cpp:1288 +#: ../src/ui/dialog/inkscape-preferences.cpp:1292 msgid "Deleting original: clones" msgstr "Вилучення оригіналу: клони" -#: ../src/ui/dialog/inkscape-preferences.cpp:1290 +#: ../src/ui/dialog/inkscape-preferences.cpp:1294 msgid "Orphaned clones are converted to regular objects" msgstr "Осиротілі клони перетворюються у звичайні об'єкти" -#: ../src/ui/dialog/inkscape-preferences.cpp:1292 +#: ../src/ui/dialog/inkscape-preferences.cpp:1296 msgid "Orphaned clones are deleted along with their original" msgstr "Осиротілі клони вилучаються разом з оригіналом" -#: ../src/ui/dialog/inkscape-preferences.cpp:1294 +#: ../src/ui/dialog/inkscape-preferences.cpp:1298 msgid "Duplicating original+clones/linked offset" msgstr "Дублювання оригінал+клони/прив'язані розтяжки" -#: ../src/ui/dialog/inkscape-preferences.cpp:1296 +#: ../src/ui/dialog/inkscape-preferences.cpp:1300 msgid "Relink duplicated clones" msgstr "Повторно пов'язувати дубльовані клони" -#: ../src/ui/dialog/inkscape-preferences.cpp:1298 +#: ../src/ui/dialog/inkscape-preferences.cpp:1302 msgid "" "When duplicating a selection containing both a clone and its original " "(possibly in groups), relink the duplicated clone to the duplicated original " @@ -19104,28 +19001,28 @@ msgstr "" "старим оригіналом" #. TRANSLATORS: Heading for the Inkscape Preferences "Clones" Page -#: ../src/ui/dialog/inkscape-preferences.cpp:1301 +#: ../src/ui/dialog/inkscape-preferences.cpp:1305 msgid "Clones" msgstr "Клони" #. Clip paths and masks options -#: ../src/ui/dialog/inkscape-preferences.cpp:1304 +#: ../src/ui/dialog/inkscape-preferences.cpp:1308 msgid "When applying, use the topmost selected object as clippath/mask" msgstr "" "При застосуванні найвищий позначений об'єкт є контуром вирізання або маскою" -#: ../src/ui/dialog/inkscape-preferences.cpp:1306 +#: ../src/ui/dialog/inkscape-preferences.cpp:1310 msgid "" "Uncheck this to use the bottom selected object as the clipping path or mask" msgstr "" "Зніміть позначку щоб використовувати нижній позначений об'єкт як контур " "вирізання або маску" -#: ../src/ui/dialog/inkscape-preferences.cpp:1307 +#: ../src/ui/dialog/inkscape-preferences.cpp:1311 msgid "Remove clippath/mask object after applying" msgstr "Вилучати контур вирізання або маску після застосування" -#: ../src/ui/dialog/inkscape-preferences.cpp:1309 +#: ../src/ui/dialog/inkscape-preferences.cpp:1313 msgid "" "After applying, remove the object used as the clipping path or mask from the " "drawing" @@ -19133,57 +19030,57 @@ msgstr "" "Після застосування вилучається об'єкт, що використовувався як контур " "вирізання чи маска з малюнку" -#: ../src/ui/dialog/inkscape-preferences.cpp:1311 +#: ../src/ui/dialog/inkscape-preferences.cpp:1315 msgid "Before applying" msgstr "До застосування" -#: ../src/ui/dialog/inkscape-preferences.cpp:1313 +#: ../src/ui/dialog/inkscape-preferences.cpp:1317 msgid "Do not group clipped/masked objects" msgstr "Не групувати обрізані/замасковані об'єкти" -#: ../src/ui/dialog/inkscape-preferences.cpp:1314 +#: ../src/ui/dialog/inkscape-preferences.cpp:1318 msgid "Put every clipped/masked object in its own group" msgstr "Додавати для кожного обрізаного/замаскованого об'єкта власну групу" -#: ../src/ui/dialog/inkscape-preferences.cpp:1315 +#: ../src/ui/dialog/inkscape-preferences.cpp:1319 msgid "Put all clipped/masked objects into one group" msgstr "Зібрати всі обрізані/замасковані об'єкти у одну групу" -#: ../src/ui/dialog/inkscape-preferences.cpp:1318 +#: ../src/ui/dialog/inkscape-preferences.cpp:1322 msgid "Apply clippath/mask to every object" msgstr "Застосувати контур обрізання/маскування до всіх об'єктів" -#: ../src/ui/dialog/inkscape-preferences.cpp:1321 +#: ../src/ui/dialog/inkscape-preferences.cpp:1325 msgid "Apply clippath/mask to groups containing single object" msgstr "" "Застосувати контур обрізання/маскування до груп, що містять окремі об'єкти" -#: ../src/ui/dialog/inkscape-preferences.cpp:1324 +#: ../src/ui/dialog/inkscape-preferences.cpp:1328 msgid "Apply clippath/mask to group containing all objects" msgstr "Застосувати контур обрізання/маскування до групи всіх об'єктів" -#: ../src/ui/dialog/inkscape-preferences.cpp:1326 +#: ../src/ui/dialog/inkscape-preferences.cpp:1330 msgid "After releasing" msgstr "Після відпускання" -#: ../src/ui/dialog/inkscape-preferences.cpp:1328 +#: ../src/ui/dialog/inkscape-preferences.cpp:1332 msgid "Ungroup automatically created groups" msgstr "Розгрупувати автоматично створені групи" -#: ../src/ui/dialog/inkscape-preferences.cpp:1330 +#: ../src/ui/dialog/inkscape-preferences.cpp:1334 msgid "Ungroup groups created when setting clip/mask" msgstr "Розгрупувати групи, створені застосування обрізання/маскування" -#: ../src/ui/dialog/inkscape-preferences.cpp:1332 +#: ../src/ui/dialog/inkscape-preferences.cpp:1336 msgid "Clippaths and masks" msgstr "Вирізання та маскування" -#: ../src/ui/dialog/inkscape-preferences.cpp:1335 +#: ../src/ui/dialog/inkscape-preferences.cpp:1339 msgid "Stroke Style Markers" msgstr "Маркери стилю штриха" -#: ../src/ui/dialog/inkscape-preferences.cpp:1337 -#: ../src/ui/dialog/inkscape-preferences.cpp:1339 +#: ../src/ui/dialog/inkscape-preferences.cpp:1341 +#: ../src/ui/dialog/inkscape-preferences.cpp:1343 msgid "" "Stroke color same as object, fill color either object fill color or marker " "fill color" @@ -19191,49 +19088,50 @@ msgstr "" "Колір штриха збігається з кольором об’єкта, колір заповнення є або кольором " "об’єкта або кольором заповнення маркера" -#: ../src/ui/dialog/inkscape-preferences.cpp:1343 +#: ../src/ui/dialog/inkscape-preferences.cpp:1347 +#: ../share/extensions/hershey.inx.h:27 msgid "Markers" msgstr "Маркери" -#: ../src/ui/dialog/inkscape-preferences.cpp:1346 +#: ../src/ui/dialog/inkscape-preferences.cpp:1350 msgid "Document cleanup" msgstr "Очищення документа" -#: ../src/ui/dialog/inkscape-preferences.cpp:1347 -#: ../src/ui/dialog/inkscape-preferences.cpp:1349 +#: ../src/ui/dialog/inkscape-preferences.cpp:1351 +#: ../src/ui/dialog/inkscape-preferences.cpp:1353 msgid "Remove unused swatches when doing a document cleanup" msgstr "Вилучати невикористані елементи під час очищення документа" #. tooltip -#: ../src/ui/dialog/inkscape-preferences.cpp:1350 +#: ../src/ui/dialog/inkscape-preferences.cpp:1354 msgid "Cleanup" msgstr "Очищення" -#: ../src/ui/dialog/inkscape-preferences.cpp:1358 +#: ../src/ui/dialog/inkscape-preferences.cpp:1362 msgid "Number of _Threads:" msgstr "Кількість _потоків:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1358 -#: ../src/ui/dialog/inkscape-preferences.cpp:1876 +#: ../src/ui/dialog/inkscape-preferences.cpp:1362 +#: ../src/ui/dialog/inkscape-preferences.cpp:1880 msgid "(requires restart)" msgstr "(потребує перезапуску)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1359 +#: ../src/ui/dialog/inkscape-preferences.cpp:1363 msgid "Configure number of processors/threads to use when rendering filters" msgstr "" "Налаштувати кількість процесорів/потоків, які слід використовувати для " "обробки фільтрування" -#: ../src/ui/dialog/inkscape-preferences.cpp:1363 +#: ../src/ui/dialog/inkscape-preferences.cpp:1367 msgid "Rendering _cache size:" msgstr "Розмір _кешу обробки:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1363 +#: ../src/ui/dialog/inkscape-preferences.cpp:1367 msgctxt "mebibyte (2^20 bytes) abbreviation" msgid "MiB" msgstr "МіБ" -#: ../src/ui/dialog/inkscape-preferences.cpp:1363 +#: ../src/ui/dialog/inkscape-preferences.cpp:1367 msgid "" "Set the amount of memory per document which can be used to store rendered " "parts of the drawing for later reuse; set to zero to disable caching" @@ -19244,37 +19142,37 @@ msgstr "" #. blur quality #. filter quality -#: ../src/ui/dialog/inkscape-preferences.cpp:1366 -#: ../src/ui/dialog/inkscape-preferences.cpp:1390 +#: ../src/ui/dialog/inkscape-preferences.cpp:1370 +#: ../src/ui/dialog/inkscape-preferences.cpp:1394 msgid "Best quality (slowest)" msgstr "Найвища якість (найповільніше)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1368 -#: ../src/ui/dialog/inkscape-preferences.cpp:1392 -msgid "Better quality (slower)" +#: ../src/ui/dialog/inkscape-preferences.cpp:1372 +#: ../src/ui/dialog/inkscape-preferences.cpp:1396 +msgid "Better quality (slower)" msgstr "Добра якість (повільно)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1370 -#: ../src/ui/dialog/inkscape-preferences.cpp:1394 +#: ../src/ui/dialog/inkscape-preferences.cpp:1374 +#: ../src/ui/dialog/inkscape-preferences.cpp:1398 msgid "Average quality" msgstr "Посередня якість" -#: ../src/ui/dialog/inkscape-preferences.cpp:1372 -#: ../src/ui/dialog/inkscape-preferences.cpp:1396 +#: ../src/ui/dialog/inkscape-preferences.cpp:1376 +#: ../src/ui/dialog/inkscape-preferences.cpp:1400 msgid "Lower quality (faster)" msgstr "Низька якість (швидко)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1374 -#: ../src/ui/dialog/inkscape-preferences.cpp:1398 +#: ../src/ui/dialog/inkscape-preferences.cpp:1378 +#: ../src/ui/dialog/inkscape-preferences.cpp:1402 msgid "Lowest quality (fastest)" msgstr "Найнижча якість (найшвидше)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1377 +#: ../src/ui/dialog/inkscape-preferences.cpp:1381 msgid "Gaussian blur quality for display" msgstr "Якість гаусового розмивання для показу" -#: ../src/ui/dialog/inkscape-preferences.cpp:1379 -#: ../src/ui/dialog/inkscape-preferences.cpp:1403 +#: ../src/ui/dialog/inkscape-preferences.cpp:1383 +#: ../src/ui/dialog/inkscape-preferences.cpp:1407 msgid "" "Best quality, but display may be very slow at high zooms (bitmap export " "always uses best quality)" @@ -19282,129 +19180,129 @@ msgstr "" "Найкраща якість, але відображення може бути дуже повільним за великого " "збільшення (експорт растрових зображень завжди використовує найвищу якість)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1381 -#: ../src/ui/dialog/inkscape-preferences.cpp:1405 +#: ../src/ui/dialog/inkscape-preferences.cpp:1385 +#: ../src/ui/dialog/inkscape-preferences.cpp:1409 msgid "Better quality, but slower display" msgstr "Краща якість, але повільніше відображення" -#: ../src/ui/dialog/inkscape-preferences.cpp:1383 -#: ../src/ui/dialog/inkscape-preferences.cpp:1407 +#: ../src/ui/dialog/inkscape-preferences.cpp:1387 +#: ../src/ui/dialog/inkscape-preferences.cpp:1411 msgid "Average quality, acceptable display speed" msgstr "Посередня якість, прийнятна швидкість відображення" -#: ../src/ui/dialog/inkscape-preferences.cpp:1385 -#: ../src/ui/dialog/inkscape-preferences.cpp:1409 +#: ../src/ui/dialog/inkscape-preferences.cpp:1389 +#: ../src/ui/dialog/inkscape-preferences.cpp:1413 msgid "Lower quality (some artifacts), but display is faster" msgstr "Нижча якість (певні похибки), але відображення швидше" -#: ../src/ui/dialog/inkscape-preferences.cpp:1387 -#: ../src/ui/dialog/inkscape-preferences.cpp:1411 +#: ../src/ui/dialog/inkscape-preferences.cpp:1391 +#: ../src/ui/dialog/inkscape-preferences.cpp:1415 msgid "Lowest quality (considerable artifacts), but display is fastest" msgstr "Найнижча якість (значні похибки), але відображення найшвидше" -#: ../src/ui/dialog/inkscape-preferences.cpp:1401 +#: ../src/ui/dialog/inkscape-preferences.cpp:1405 msgid "Filter effects quality for display" msgstr "Якість ефектів фільтрування для показу" #. build custom preferences tab -#: ../src/ui/dialog/inkscape-preferences.cpp:1413 +#: ../src/ui/dialog/inkscape-preferences.cpp:1417 #: ../src/ui/dialog/print.cpp:224 msgid "Rendering" -msgstr "Тип друку" +msgstr "Обробка" -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 +#: ../src/ui/dialog/inkscape-preferences.cpp:1423 msgid "2x2" msgstr "2x2" -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 +#: ../src/ui/dialog/inkscape-preferences.cpp:1423 msgid "4x4" msgstr "4x4" -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 +#: ../src/ui/dialog/inkscape-preferences.cpp:1423 msgid "8x8" msgstr "8x8" -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 +#: ../src/ui/dialog/inkscape-preferences.cpp:1423 msgid "16x16" msgstr "16x16" -#: ../src/ui/dialog/inkscape-preferences.cpp:1423 +#: ../src/ui/dialog/inkscape-preferences.cpp:1427 msgid "Oversample bitmaps:" msgstr "Усереднювати растр по точках:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1426 +#: ../src/ui/dialog/inkscape-preferences.cpp:1430 msgid "Automatically reload bitmaps" msgstr "Автоматично перезавантажувати растр" -#: ../src/ui/dialog/inkscape-preferences.cpp:1428 +#: ../src/ui/dialog/inkscape-preferences.cpp:1432 msgid "Automatically reload linked images when file is changed on disk" msgstr "" "Автоматично перезавантажувати пов'язані зображення після зміни файла на диску" -#: ../src/ui/dialog/inkscape-preferences.cpp:1430 +#: ../src/ui/dialog/inkscape-preferences.cpp:1434 msgid "_Bitmap editor:" msgstr "_Растровий редактор:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1432 +#: ../src/ui/dialog/inkscape-preferences.cpp:1436 msgid "Default export _resolution:" msgstr "Типова роз_дільна здатність для експорту:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1433 +#: ../src/ui/dialog/inkscape-preferences.cpp:1437 msgid "Default bitmap resolution (in dots per inch) in the Export dialog" msgstr "Типова роздільна здатність (у точках на дюйм) у вікні експорту" -#: ../src/ui/dialog/inkscape-preferences.cpp:1435 +#: ../src/ui/dialog/inkscape-preferences.cpp:1439 msgid "Resolution for Create Bitmap _Copy:" msgstr "Роздільна здатність для створення растрової копі_ї:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1436 +#: ../src/ui/dialog/inkscape-preferences.cpp:1440 msgid "Resolution used by the Create Bitmap Copy command" msgstr "" "Роздільна здатність, яку буде використано у команді створення растрової копії" -#: ../src/ui/dialog/inkscape-preferences.cpp:1438 +#: ../src/ui/dialog/inkscape-preferences.cpp:1442 msgid "Always embed" msgstr "Завжди вбудовувати" -#: ../src/ui/dialog/inkscape-preferences.cpp:1438 +#: ../src/ui/dialog/inkscape-preferences.cpp:1442 msgid "Always link" msgstr "Завжди пов'язувати" -#: ../src/ui/dialog/inkscape-preferences.cpp:1438 +#: ../src/ui/dialog/inkscape-preferences.cpp:1442 msgid "Ask" msgstr "Питати" -#: ../src/ui/dialog/inkscape-preferences.cpp:1441 +#: ../src/ui/dialog/inkscape-preferences.cpp:1445 msgid "Bitmap import:" msgstr "Імпортування растра:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1444 +#: ../src/ui/dialog/inkscape-preferences.cpp:1448 msgid "Bitmap import quality:" msgstr "Якість імпортування растра:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1447 +#: ../src/ui/dialog/inkscape-preferences.cpp:1451 msgid "Default _import resolution:" msgstr "Типова роздільна здатність для _імпортування:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1448 +#: ../src/ui/dialog/inkscape-preferences.cpp:1452 msgid "Default bitmap resolution (in dots per inch) for bitmap import" msgstr "" "Типова роздільна здатність (у точках на дюйм) для імпортованих растрових " "зображень" -#: ../src/ui/dialog/inkscape-preferences.cpp:1449 +#: ../src/ui/dialog/inkscape-preferences.cpp:1453 msgid "Override file resolution" msgstr "Перевизначити роздільну здатність з файла" -#: ../src/ui/dialog/inkscape-preferences.cpp:1451 +#: ../src/ui/dialog/inkscape-preferences.cpp:1455 msgid "Use default bitmap resolution in favor of information from file" msgstr "Надавати перевагу типові роздільній здатності перед даними з файла" -#: ../src/ui/dialog/inkscape-preferences.cpp:1453 +#: ../src/ui/dialog/inkscape-preferences.cpp:1457 msgid "Bitmaps" msgstr "Растрові зображення" -#: ../src/ui/dialog/inkscape-preferences.cpp:1465 +#: ../src/ui/dialog/inkscape-preferences.cpp:1469 msgid "" "Select a file of predefined shortcuts to use. Any customized shortcuts you " "create will be added seperately to " @@ -19412,31 +19310,32 @@ msgstr "" "Виберіть файл попередньо визначених скорочень, яким слід скористатися. Всі " "створені вами нетипові скорочення буде окремо додано до " -#: ../src/ui/dialog/inkscape-preferences.cpp:1468 +#: ../src/ui/dialog/inkscape-preferences.cpp:1472 msgid "Shortcut file:" msgstr "Файл скорочень:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1471 +#: ../src/ui/dialog/inkscape-preferences.cpp:1475 +#: ../src/ui/dialog/template-load-tab.cpp:46 msgid "Search:" msgstr "Шукати:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1483 +#: ../src/ui/dialog/inkscape-preferences.cpp:1487 msgid "Shortcut" msgstr "Скорочення" -#: ../src/ui/dialog/inkscape-preferences.cpp:1484 -#: ../src/ui/widget/page-sizer.cpp:262 +#: ../src/ui/dialog/inkscape-preferences.cpp:1488 +#: ../src/ui/widget/page-sizer.cpp:260 msgid "Description" msgstr "Опис" -#: ../src/ui/dialog/inkscape-preferences.cpp:1539 +#: ../src/ui/dialog/inkscape-preferences.cpp:1543 #: ../src/ui/dialog/svg-fonts-dialog.cpp:694 #: ../src/ui/dialog/tracedialog.cpp:813 #: ../src/ui/widget/preferences-widget.cpp:749 msgid "Reset" msgstr "Скинути" -#: ../src/ui/dialog/inkscape-preferences.cpp:1539 +#: ../src/ui/dialog/inkscape-preferences.cpp:1543 msgid "" "Remove all your customized keyboard shortcuts, and revert to the shortcuts " "in the shortcut file listed above" @@ -19444,40 +19343,40 @@ msgstr "" "Вилучити всі нетипові клавіатурні скорочення і повернутися до скорочень, " "визначених у файлів, вказаному вище." -#: ../src/ui/dialog/inkscape-preferences.cpp:1543 +#: ../src/ui/dialog/inkscape-preferences.cpp:1547 msgid "Import ..." msgstr "Імпорт…" -#: ../src/ui/dialog/inkscape-preferences.cpp:1543 +#: ../src/ui/dialog/inkscape-preferences.cpp:1547 msgid "Import custom keyboard shortcuts from a file" msgstr "Імпортувати нетипові клавіатурні скорочення з файла" -#: ../src/ui/dialog/inkscape-preferences.cpp:1546 +#: ../src/ui/dialog/inkscape-preferences.cpp:1550 msgid "Export ..." msgstr "Експортувати…" -#: ../src/ui/dialog/inkscape-preferences.cpp:1546 +#: ../src/ui/dialog/inkscape-preferences.cpp:1550 msgid "Export custom keyboard shortcuts to a file" msgstr "Експортувати нетипові клавіатурні скорочення до файла" -#: ../src/ui/dialog/inkscape-preferences.cpp:1556 +#: ../src/ui/dialog/inkscape-preferences.cpp:1560 msgid "Keyboard Shortcuts" msgstr "Клавіатурні скорочення" #. Find this group in the tree -#: ../src/ui/dialog/inkscape-preferences.cpp:1719 +#: ../src/ui/dialog/inkscape-preferences.cpp:1723 msgid "Misc" msgstr "Інше" -#: ../src/ui/dialog/inkscape-preferences.cpp:1838 +#: ../src/ui/dialog/inkscape-preferences.cpp:1842 msgid "Set the main spell check language" msgstr "Встановити основну мову перевірки правопису" -#: ../src/ui/dialog/inkscape-preferences.cpp:1841 +#: ../src/ui/dialog/inkscape-preferences.cpp:1845 msgid "Second language:" msgstr "Друга мова:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1842 +#: ../src/ui/dialog/inkscape-preferences.cpp:1846 msgid "" "Set the second spell check language; checking will only stop on words " "unknown in ALL chosen languages" @@ -19485,11 +19384,11 @@ msgstr "" "Встановіть другу мову для перевірки правопису: перевірка зупинятиметься лише " "на словах, яких немає у ВСІХ вказаних мовах" -#: ../src/ui/dialog/inkscape-preferences.cpp:1845 +#: ../src/ui/dialog/inkscape-preferences.cpp:1849 msgid "Third language:" msgstr "Третя мова:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1846 +#: ../src/ui/dialog/inkscape-preferences.cpp:1850 msgid "" "Set the third spell check language; checking will only stop on words unknown " "in ALL chosen languages" @@ -19497,31 +19396,31 @@ msgstr "" "Встановіть третю мову для перевірки правопису: перевірка зупинятиметься лише " "на словах, яких немає у ВСІХ вказаних мовах" -#: ../src/ui/dialog/inkscape-preferences.cpp:1848 +#: ../src/ui/dialog/inkscape-preferences.cpp:1852 msgid "Ignore words with digits" msgstr "Ігнорувати слова з цифрами" -#: ../src/ui/dialog/inkscape-preferences.cpp:1850 +#: ../src/ui/dialog/inkscape-preferences.cpp:1854 msgid "Ignore words containing digits, such as \"R2D2\"" msgstr "Ігнорувати слова, що містять цифри, наприклад, «R2D2»" -#: ../src/ui/dialog/inkscape-preferences.cpp:1852 +#: ../src/ui/dialog/inkscape-preferences.cpp:1856 msgid "Ignore words in ALL CAPITALS" msgstr "Ігнорувати слова ПРОПИСНИМИ" -#: ../src/ui/dialog/inkscape-preferences.cpp:1854 +#: ../src/ui/dialog/inkscape-preferences.cpp:1858 msgid "Ignore words in all capitals, such as \"IUPAC\"" msgstr "Ігнорувати слова, написані прописними літерами, наприклад, «IUPAC»" -#: ../src/ui/dialog/inkscape-preferences.cpp:1856 +#: ../src/ui/dialog/inkscape-preferences.cpp:1860 msgid "Spellcheck" msgstr "Перевірка правопису" -#: ../src/ui/dialog/inkscape-preferences.cpp:1876 +#: ../src/ui/dialog/inkscape-preferences.cpp:1880 msgid "Latency _skew:" msgstr "Від_хилення латентності:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1877 +#: ../src/ui/dialog/inkscape-preferences.cpp:1881 msgid "" "Factor by which the event clock is skewed from the actual time (0.9766 on " "some systems)" @@ -19529,11 +19428,11 @@ msgstr "" "Коефіцієнт, на який годинник подій відхилятиметься від справжнього часу " "(0,9766 на деяких системах)." -#: ../src/ui/dialog/inkscape-preferences.cpp:1879 +#: ../src/ui/dialog/inkscape-preferences.cpp:1883 msgid "Pre-render named icons" msgstr "Іменовані піктограми, що залежать від показу" -#: ../src/ui/dialog/inkscape-preferences.cpp:1881 +#: ../src/ui/dialog/inkscape-preferences.cpp:1885 msgid "" "When on, named icons will be rendered before displaying the ui. This is for " "working around bugs in GTK+ named icon notification" @@ -19542,85 +19441,85 @@ msgstr "" "користувача. Це зроблено для обходу вад у сповіщенні іменованою піктограмою " "у GTK+" -#: ../src/ui/dialog/inkscape-preferences.cpp:1889 +#: ../src/ui/dialog/inkscape-preferences.cpp:1893 msgid "System info" msgstr "Відомості щодо системи" -#: ../src/ui/dialog/inkscape-preferences.cpp:1893 +#: ../src/ui/dialog/inkscape-preferences.cpp:1897 msgid "User config: " msgstr "Налаштування користувача: " -#: ../src/ui/dialog/inkscape-preferences.cpp:1893 +#: ../src/ui/dialog/inkscape-preferences.cpp:1897 msgid "Location of users configuration" msgstr "Розташування налаштувань користувача" -#: ../src/ui/dialog/inkscape-preferences.cpp:1897 +#: ../src/ui/dialog/inkscape-preferences.cpp:1901 msgid "User preferences: " msgstr "Параметри користувача: " -#: ../src/ui/dialog/inkscape-preferences.cpp:1897 +#: ../src/ui/dialog/inkscape-preferences.cpp:1901 msgid "Location of the users preferences file" msgstr "Розташування файлів з параметрами користувачів" -#: ../src/ui/dialog/inkscape-preferences.cpp:1901 +#: ../src/ui/dialog/inkscape-preferences.cpp:1905 msgid "User extensions: " msgstr "Додатки користувача: " -#: ../src/ui/dialog/inkscape-preferences.cpp:1901 +#: ../src/ui/dialog/inkscape-preferences.cpp:1905 msgid "Location of the users extensions" msgstr "Розташування додатків користувача" -#: ../src/ui/dialog/inkscape-preferences.cpp:1905 +#: ../src/ui/dialog/inkscape-preferences.cpp:1909 msgid "User cache: " msgstr "Кеш користувача: " -#: ../src/ui/dialog/inkscape-preferences.cpp:1905 +#: ../src/ui/dialog/inkscape-preferences.cpp:1909 msgid "Location of users cache" msgstr "Розташування кешу даних користувача" -#: ../src/ui/dialog/inkscape-preferences.cpp:1913 +#: ../src/ui/dialog/inkscape-preferences.cpp:1917 msgid "Temporary files: " msgstr "Тимчасові файли: " -#: ../src/ui/dialog/inkscape-preferences.cpp:1913 +#: ../src/ui/dialog/inkscape-preferences.cpp:1917 msgid "Location of the temporary files used for autosave" msgstr "" "Розташування тимчасових файлів, які використовуватимуться для створення " "автоматичних копій" -#: ../src/ui/dialog/inkscape-preferences.cpp:1917 +#: ../src/ui/dialog/inkscape-preferences.cpp:1921 msgid "Inkscape data: " msgstr "Дані Inkscape: " -#: ../src/ui/dialog/inkscape-preferences.cpp:1917 +#: ../src/ui/dialog/inkscape-preferences.cpp:1921 msgid "Location of Inkscape data" msgstr "Розташування даних Inkscape" -#: ../src/ui/dialog/inkscape-preferences.cpp:1921 +#: ../src/ui/dialog/inkscape-preferences.cpp:1925 msgid "Inkscape extensions: " msgstr "Додатки Inkscape: " -#: ../src/ui/dialog/inkscape-preferences.cpp:1921 +#: ../src/ui/dialog/inkscape-preferences.cpp:1925 msgid "Location of the Inkscape extensions" msgstr "Розташування додатків Inkscape" -#: ../src/ui/dialog/inkscape-preferences.cpp:1930 +#: ../src/ui/dialog/inkscape-preferences.cpp:1934 msgid "System data: " msgstr "Системна дата: " -#: ../src/ui/dialog/inkscape-preferences.cpp:1930 +#: ../src/ui/dialog/inkscape-preferences.cpp:1934 msgid "Locations of system data" msgstr "Розташування загальносистемних даних" -#: ../src/ui/dialog/inkscape-preferences.cpp:1954 +#: ../src/ui/dialog/inkscape-preferences.cpp:1958 msgid "Icon theme: " msgstr "Тема піктограм: " -#: ../src/ui/dialog/inkscape-preferences.cpp:1954 +#: ../src/ui/dialog/inkscape-preferences.cpp:1958 msgid "Locations of icon themes" msgstr "Розташування тем піктограм" -#: ../src/ui/dialog/inkscape-preferences.cpp:1956 +#: ../src/ui/dialog/inkscape-preferences.cpp:1960 msgid "System" msgstr "Система" @@ -19684,7 +19583,7 @@ msgstr "" "Ви_користовувати графічний планшет чи інший пристрій (потребує " "перезавантаження)" -#: ../src/ui/dialog/input.cpp:1082 ../src/verbs.cpp:2301 +#: ../src/ui/dialog/input.cpp:1082 ../src/verbs.cpp:2354 msgid "_Save" msgstr "З_берегти" @@ -19704,8 +19603,8 @@ msgstr "" "Пристрій може бути «Вимкнено», його координати відображено на весь «Екран» " "або на окреме (зазвичай те, яке перебуває у фокусі) «Вікно»" -#: ../src/ui/dialog/input.cpp:1616 ../src/widgets/calligraphy-toolbar.cpp:599 -#: ../src/widgets/spray-toolbar.cpp:240 ../src/widgets/tweak-toolbar.cpp:390 +#: ../src/ui/dialog/input.cpp:1616 ../src/widgets/calligraphy-toolbar.cpp:595 +#: ../src/widgets/spray-toolbar.cpp:236 ../src/widgets/tweak-toolbar.cpp:386 msgid "Pressure" msgstr "Тиск" @@ -19748,8 +19647,8 @@ msgstr "Перейменування шару" #. TODO: find an unused layer number, forming name from _("Layer ") + "%d" #: ../src/ui/dialog/layer-properties.cpp:354 -#: ../src/ui/dialog/layer-properties.cpp:410 ../src/verbs.cpp:192 -#: ../src/verbs.cpp:2232 +#: ../src/ui/dialog/layer-properties.cpp:410 ../src/verbs.cpp:194 +#: ../src/verbs.cpp:2285 msgid "Layer" msgstr "Шар" @@ -19757,7 +19656,7 @@ msgstr "Шар" msgid "_Rename" msgstr "Пере_йменувати" -#: ../src/ui/dialog/layer-properties.cpp:368 ../src/ui/dialog/layers.cpp:749 +#: ../src/ui/dialog/layer-properties.cpp:368 ../src/ui/dialog/layers.cpp:750 msgid "Rename layer" msgstr "Перейменувати шар" @@ -19783,59 +19682,59 @@ msgid "Move to Layer" msgstr "Пересунути до шару" #: ../src/ui/dialog/layer-properties.cpp:411 -#: ../src/ui/dialog/transformation.cpp:113 +#: ../src/ui/dialog/transformation.cpp:114 msgid "_Move" msgstr "_Переміщення" -#: ../src/ui/dialog/layers.cpp:524 ../src/ui/widget/layer-selector.cpp:613 +#: ../src/ui/dialog/layers.cpp:525 ../src/ui/widget/layer-selector.cpp:613 msgid "Unhide layer" msgstr "Показати шар" -#: ../src/ui/dialog/layers.cpp:524 ../src/ui/widget/layer-selector.cpp:613 +#: ../src/ui/dialog/layers.cpp:525 ../src/ui/widget/layer-selector.cpp:613 msgid "Hide layer" msgstr "Сховати шар" -#: ../src/ui/dialog/layers.cpp:535 ../src/ui/widget/layer-selector.cpp:605 +#: ../src/ui/dialog/layers.cpp:536 ../src/ui/widget/layer-selector.cpp:605 msgid "Lock layer" msgstr "Заблокувати шар" -#: ../src/ui/dialog/layers.cpp:535 ../src/ui/widget/layer-selector.cpp:605 +#: ../src/ui/dialog/layers.cpp:536 ../src/ui/widget/layer-selector.cpp:605 msgid "Unlock layer" msgstr "Розблокувати шар" -#: ../src/ui/dialog/layers.cpp:623 ../src/verbs.cpp:1347 +#: ../src/ui/dialog/layers.cpp:624 ../src/verbs.cpp:1397 msgid "Toggle layer solo" msgstr "Увімкнути або вимкнути соло шару" -#: ../src/ui/dialog/layers.cpp:626 ../src/verbs.cpp:1371 +#: ../src/ui/dialog/layers.cpp:627 ../src/verbs.cpp:1421 msgid "Lock other layers" msgstr "Заблокувати інші шари" -#: ../src/ui/dialog/layers.cpp:720 +#: ../src/ui/dialog/layers.cpp:721 msgid "Moved layer" msgstr "Пересунутий шар" -#: ../src/ui/dialog/layers.cpp:882 +#: ../src/ui/dialog/layers.cpp:883 msgctxt "Layers" msgid "New" msgstr "Створити" -#: ../src/ui/dialog/layers.cpp:887 +#: ../src/ui/dialog/layers.cpp:888 msgctxt "Layers" msgid "Bot" msgstr "Низ" -#: ../src/ui/dialog/layers.cpp:893 +#: ../src/ui/dialog/layers.cpp:894 msgctxt "Layers" msgid "Dn" msgstr "Вн" -#: ../src/ui/dialog/layers.cpp:899 +#: ../src/ui/dialog/layers.cpp:900 msgctxt "Layers" msgid "Up" msgstr "Вг" -#: ../src/ui/dialog/layers.cpp:905 +#: ../src/ui/dialog/layers.cpp:906 msgctxt "Layers" msgid "Top" msgstr "Верх" @@ -19961,6 +19860,43 @@ msgstr "Розпочато запис до журналу." msgid "Log capture stopped." msgstr "Зупинено запис до журналу." +#: ../src/ui/dialog/new-from-template.cpp:24 +msgid "Create from template" +msgstr "Створити з шаблону" + +#: ../src/ui/dialog/new-from-template.cpp:26 +msgid "New From Template" +msgstr "Створити з шаблона" + +#: ../src/ui/dialog/template-widget.cpp:29 +msgid "More info" +msgstr "Додаткова інформація" + +#: ../src/ui/dialog/template-widget.cpp:30 +#: ../src/ui/dialog/template-widget.cpp:31 +msgid " " +msgstr " " + +#: ../src/ui/dialog/template-widget.cpp:32 +msgid "no template selected" +msgstr "не вибрано шаблону" + +#: ../src/ui/dialog/template-widget.cpp:98 +msgid "Path: " +msgstr "Шлях: " + +#: ../src/ui/dialog/template-widget.cpp:101 +msgid "Description: " +msgstr "Опис: " + +#: ../src/ui/dialog/template-widget.cpp:103 +msgid "Keywords: " +msgstr "Ключові слова: " + +#: ../src/ui/dialog/template-widget.cpp:110 +msgid "By: " +msgstr "Автор: " + #: ../src/ui/dialog/object-attributes.cpp:47 msgid "Href:" msgstr "Href:" @@ -19993,13 +19929,13 @@ msgstr "URL:" #: ../src/ui/dialog/object-attributes.cpp:66 #: ../src/ui/dialog/object-attributes.cpp:74 ../src/ui/dialog/tile.cpp:618 -#: ../src/widgets/desktop-widget.cpp:666 ../src/widgets/node-toolbar.cpp:590 +#: ../src/widgets/desktop-widget.cpp:670 ../src/widgets/node-toolbar.cpp:593 msgid "X:" msgstr "X:" #: ../src/ui/dialog/object-attributes.cpp:67 #: ../src/ui/dialog/object-attributes.cpp:75 ../src/ui/dialog/tile.cpp:619 -#: ../src/widgets/desktop-widget.cpp:676 ../src/widgets/node-toolbar.cpp:608 +#: ../src/widgets/desktop-widget.cpp:680 ../src/widgets/node-toolbar.cpp:611 msgid "Y:" msgstr "Y:" @@ -20026,8 +19962,8 @@ msgstr "С_ховати" msgid "L_ock" msgstr "За_мкнути" -#: ../src/ui/dialog/object-properties.cpp:74 ../src/verbs.cpp:2572 -#: ../src/verbs.cpp:2578 +#: ../src/ui/dialog/object-properties.cpp:74 ../src/verbs.cpp:2627 +#: ../src/verbs.cpp:2633 msgid "_Set" msgstr "_Встановити" @@ -20180,35 +20116,6 @@ msgstr "Документ SVG" msgid "Print" msgstr "Друкувати" -#. ## Add a menu for clear() -#: ../src/ui/dialog/scriptdialog.cpp:178 ../src/verbs.cpp:135 -msgid "File" -msgstr "Файл" - -#: ../src/ui/dialog/scriptdialog.cpp:186 -msgid "_Execute Javascript" -msgstr "_Виконати Javascript" - -#: ../src/ui/dialog/scriptdialog.cpp:190 -msgid "_Execute Python" -msgstr "_Виконати Python" - -#: ../src/ui/dialog/scriptdialog.cpp:194 -msgid "_Execute Ruby" -msgstr "_Виконати Ruby" - -#: ../src/ui/dialog/scriptdialog.cpp:205 -msgid "Script" -msgstr "Сценарій" - -#: ../src/ui/dialog/scriptdialog.cpp:215 -msgid "Output" -msgstr "Вивід" - -#: ../src/ui/dialog/scriptdialog.cpp:225 -msgid "Errors" -msgstr "Помилки" - #: ../src/ui/dialog/svg-fonts-dialog.cpp:138 msgid "Set SVG Font attribute" msgstr "Встановити атрибут шрифту SVG" @@ -20369,58 +20276,58 @@ msgid "Preview Text:" msgstr "Перегляд тексту:" #. ******************* Symbol Sets ************************ -#: ../src/ui/dialog/symbols.cpp:126 +#: ../src/ui/dialog/symbols.cpp:128 msgid "Symbol set: " msgstr "Набір символів: " #. Fill in later -#: ../src/ui/dialog/symbols.cpp:135 ../src/ui/dialog/symbols.cpp:136 +#: ../src/ui/dialog/symbols.cpp:137 ../src/ui/dialog/symbols.cpp:138 msgid "Current Document" msgstr "Поточний документ" -#: ../src/ui/dialog/symbols.cpp:203 +#: ../src/ui/dialog/symbols.cpp:205 msgid "Add Symbol from the current document." msgstr "Додати символ до поточного документа." -#: ../src/ui/dialog/symbols.cpp:212 +#: ../src/ui/dialog/symbols.cpp:214 msgid "Remove Symbol from the current document." msgstr "Вилучити символ з поточного документа." -#: ../src/ui/dialog/symbols.cpp:225 +#: ../src/ui/dialog/symbols.cpp:227 msgid "Make Icons bigger by zooming in." msgstr "Робити піктограми більшими збільшенням масштабу." -#: ../src/ui/dialog/symbols.cpp:234 +#: ../src/ui/dialog/symbols.cpp:236 msgid "Make Icons smaller by zooming out." msgstr "Робити піктограми меншими зменшенням масштабу." -#: ../src/ui/dialog/symbols.cpp:243 +#: ../src/ui/dialog/symbols.cpp:245 msgid "Toggle 'fit' symbols in icon space." msgstr "Вмикати/Вимикати символи підбирання розмірів у просторі піктограм." -#: ../src/ui/dialog/symbols.cpp:556 +#: ../src/ui/dialog/symbols.cpp:558 msgid "Unnamed Symbols" msgstr "Символи без назв" #. TRANSLATORS: An item in context menu on a colour in the swatches -#: ../src/ui/dialog/swatches.cpp:258 +#: ../src/ui/dialog/swatches.cpp:259 msgid "Set fill" msgstr "Встановлення заливання" #. TRANSLATORS: An item in context menu on a colour in the swatches -#: ../src/ui/dialog/swatches.cpp:266 +#: ../src/ui/dialog/swatches.cpp:267 msgid "Set stroke" msgstr "Встановлення штриха" -#: ../src/ui/dialog/swatches.cpp:287 +#: ../src/ui/dialog/swatches.cpp:288 msgid "Edit..." msgstr "Редагування…" -#: ../src/ui/dialog/swatches.cpp:299 +#: ../src/ui/dialog/swatches.cpp:300 msgid "Convert" msgstr "Перетворити" -#: ../src/ui/dialog/swatches.cpp:543 +#: ../src/ui/dialog/swatches.cpp:544 #, c-format msgid "Palettes directory (%s) is unavailable." msgstr "Каталог з палітрами (%s) недоступний." @@ -20761,42 +20668,42 @@ msgstr "Перервати векторизацію" msgid "Execute the trace" msgstr "Провести векторизацію" -#: ../src/ui/dialog/transformation.cpp:75 -#: ../src/ui/dialog/transformation.cpp:85 +#: ../src/ui/dialog/transformation.cpp:76 +#: ../src/ui/dialog/transformation.cpp:86 msgid "_Horizontal:" msgstr "_Горизонтальне:" -#: ../src/ui/dialog/transformation.cpp:75 +#: ../src/ui/dialog/transformation.cpp:76 msgid "Horizontal displacement (relative) or position (absolute)" msgstr "Горизонтальний зсув (відносний) або позиція (абсолютна)" -#: ../src/ui/dialog/transformation.cpp:77 -#: ../src/ui/dialog/transformation.cpp:87 +#: ../src/ui/dialog/transformation.cpp:78 +#: ../src/ui/dialog/transformation.cpp:88 msgid "_Vertical:" msgstr "_Вертикальний:" -#: ../src/ui/dialog/transformation.cpp:77 +#: ../src/ui/dialog/transformation.cpp:78 msgid "Vertical displacement (relative) or position (absolute)" msgstr "Вертикальний зсув (відносний) або позиція (абсолютна)" -#: ../src/ui/dialog/transformation.cpp:79 +#: ../src/ui/dialog/transformation.cpp:80 msgid "Horizontal size (absolute or percentage of current)" msgstr "Горизонтальний розмір (абсолютний або у відсотках до поточного)" -#: ../src/ui/dialog/transformation.cpp:81 +#: ../src/ui/dialog/transformation.cpp:82 msgid "Vertical size (absolute or percentage of current)" msgstr "Вертикальний розмір (абсолютний або у відсотках до поточного)" -#: ../src/ui/dialog/transformation.cpp:83 +#: ../src/ui/dialog/transformation.cpp:84 msgid "A_ngle:" msgstr "_Кут:" -#: ../src/ui/dialog/transformation.cpp:83 -#: ../src/ui/dialog/transformation.cpp:1068 +#: ../src/ui/dialog/transformation.cpp:84 +#: ../src/ui/dialog/transformation.cpp:1103 msgid "Rotation angle (positive = counterclockwise)" msgstr "Кут повороту (додатній = проти годинникової стрілки)" -#: ../src/ui/dialog/transformation.cpp:85 +#: ../src/ui/dialog/transformation.cpp:86 msgid "" "Horizontal skew angle (positive = counterclockwise), or absolute " "displacement, or percentage displacement" @@ -20804,7 +20711,7 @@ msgstr "" "Кут горизонтального ухилу (додатній = проти годинникової стрілки), або " "абсолютне зміщення, або відсоткове зміщення" -#: ../src/ui/dialog/transformation.cpp:87 +#: ../src/ui/dialog/transformation.cpp:88 msgid "" "Vertical skew angle (positive = counterclockwise), or absolute displacement, " "or percentage displacement" @@ -20812,35 +20719,35 @@ msgstr "" "Кут вертикального ухилу (додатній = проти годинникової стрілки), або " "абсолютне зміщення, або відсоткове зміщення" -#: ../src/ui/dialog/transformation.cpp:90 +#: ../src/ui/dialog/transformation.cpp:91 msgid "Transformation matrix element A" msgstr "Елемент матриці трансформації A" -#: ../src/ui/dialog/transformation.cpp:91 +#: ../src/ui/dialog/transformation.cpp:92 msgid "Transformation matrix element B" msgstr "Елемент матриці трансформації B" -#: ../src/ui/dialog/transformation.cpp:92 +#: ../src/ui/dialog/transformation.cpp:93 msgid "Transformation matrix element C" msgstr "Елемент матриці трансформації C" -#: ../src/ui/dialog/transformation.cpp:93 +#: ../src/ui/dialog/transformation.cpp:94 msgid "Transformation matrix element D" msgstr "Елемент матриці трансформації D" -#: ../src/ui/dialog/transformation.cpp:94 +#: ../src/ui/dialog/transformation.cpp:95 msgid "Transformation matrix element E" msgstr "Елемент матриці трансформації E" -#: ../src/ui/dialog/transformation.cpp:95 +#: ../src/ui/dialog/transformation.cpp:96 msgid "Transformation matrix element F" msgstr "Елемент матриці трансформації F" -#: ../src/ui/dialog/transformation.cpp:100 +#: ../src/ui/dialog/transformation.cpp:101 msgid "Rela_tive move" msgstr "Відно_сне переміщення" -#: ../src/ui/dialog/transformation.cpp:100 +#: ../src/ui/dialog/transformation.cpp:101 msgid "" "Add the specified relative displacement to the current position; otherwise, " "edit the current absolute position directly" @@ -20848,19 +20755,19 @@ msgstr "" "Додати задане відносне зміщення до поточної позиції; або відредагуйте " "поточну абсолютну позицію напряму" -#: ../src/ui/dialog/transformation.cpp:101 +#: ../src/ui/dialog/transformation.cpp:102 msgid "_Scale proportionally" msgstr "Мас_штабувати пропорційно" -#: ../src/ui/dialog/transformation.cpp:101 +#: ../src/ui/dialog/transformation.cpp:102 msgid "Preserve the width/height ratio of the scaled objects" msgstr "Зберегти співвідношення ширина/висота для масштабованих об'єктів" -#: ../src/ui/dialog/transformation.cpp:102 +#: ../src/ui/dialog/transformation.cpp:103 msgid "Apply to each _object separately" msgstr "Застосувати до кожного о_б'єкта окремо" -#: ../src/ui/dialog/transformation.cpp:102 +#: ../src/ui/dialog/transformation.cpp:103 msgid "" "Apply the scale/rotate/skew to each selected object separately; otherwise, " "transform the selection as a whole" @@ -20869,11 +20776,11 @@ msgstr "" "позначеного об'єкта; інакше перетворення буде застосовано до позначеного " "об'єкта цілком" -#: ../src/ui/dialog/transformation.cpp:103 +#: ../src/ui/dialog/transformation.cpp:104 msgid "Edit c_urrent matrix" msgstr "Редагувати по_точну матрицю" -#: ../src/ui/dialog/transformation.cpp:103 +#: ../src/ui/dialog/transformation.cpp:104 msgid "" "Edit the current transform= matrix; otherwise, post-multiply transform= by " "this matrix" @@ -20881,43 +20788,53 @@ msgstr "" "Редагувати поточний transform= матрицю; інакше transform= буде помножено на " "цю матрицю" -#: ../src/ui/dialog/transformation.cpp:116 +#: ../src/ui/dialog/transformation.cpp:117 msgid "_Scale" msgstr "_Масштаб" -#: ../src/ui/dialog/transformation.cpp:119 +#: ../src/ui/dialog/transformation.cpp:120 msgid "_Rotate" msgstr "_Обертання" -#: ../src/ui/dialog/transformation.cpp:122 +#: ../src/ui/dialog/transformation.cpp:123 msgid "Ske_w" msgstr "_Нахил" -#: ../src/ui/dialog/transformation.cpp:125 +#: ../src/ui/dialog/transformation.cpp:126 msgid "Matri_x" msgstr "Матри_ця" -#: ../src/ui/dialog/transformation.cpp:149 +#: ../src/ui/dialog/transformation.cpp:150 msgid "Reset the values on the current tab to defaults" msgstr "Змінити величини у поточній вкладці на типові" -#: ../src/ui/dialog/transformation.cpp:156 +#: ../src/ui/dialog/transformation.cpp:157 msgid "Apply transformation to selection" msgstr "Застосувати перетворення до позначених об'єктів" -#: ../src/ui/dialog/transformation.cpp:331 +#: ../src/ui/dialog/transformation.cpp:332 msgid "Rotate in a counterclockwise direction" msgstr "Обернути проти годинникової стрілки" -#: ../src/ui/dialog/transformation.cpp:337 +#: ../src/ui/dialog/transformation.cpp:338 msgid "Rotate in a clockwise direction" msgstr "Обернути за годинниковою стрілкою" -#: ../src/ui/dialog/transformation.cpp:976 +#: ../src/ui/dialog/transformation.cpp:907 +#: ../src/ui/dialog/transformation.cpp:918 +#: ../src/ui/dialog/transformation.cpp:932 +#: ../src/ui/dialog/transformation.cpp:951 +#: ../src/ui/dialog/transformation.cpp:962 +#: ../src/ui/dialog/transformation.cpp:972 +#: ../src/ui/dialog/transformation.cpp:996 +msgid "Transform matrix is singular, not used." +msgstr "Матриця перетворення є виродженою, не використовуємо її." + +#: ../src/ui/dialog/transformation.cpp:1011 msgid "Edit transformation matrix" msgstr "Редагування матриці трансформації" -#: ../src/ui/dialog/transformation.cpp:1075 +#: ../src/ui/dialog/transformation.cpp:1110 msgid "Rotation angle (positive = clockwise)" msgstr "Кут повороту (додатний = за годинниковою стрілкою)" @@ -20959,95 +20876,95 @@ msgstr "" "клацніть лівою кнопкою миші, щоб вставити вузол, клацніть один раз, щоб " "позначити (більше: Shift, Ctrl+Alt)" -#: ../src/ui/tool/multi-path-manipulator.cpp:322 +#: ../src/ui/tool/multi-path-manipulator.cpp:326 msgid "Retract handles" msgstr "Втягнути вуса" -#: ../src/ui/tool/multi-path-manipulator.cpp:322 ../src/ui/tool/node.cpp:271 +#: ../src/ui/tool/multi-path-manipulator.cpp:326 ../src/ui/tool/node.cpp:270 msgid "Change node type" msgstr "Змінити тип вузла" -#: ../src/ui/tool/multi-path-manipulator.cpp:330 +#: ../src/ui/tool/multi-path-manipulator.cpp:334 msgid "Straighten segments" msgstr "Розпрямляти сегменти" -#: ../src/ui/tool/multi-path-manipulator.cpp:332 +#: ../src/ui/tool/multi-path-manipulator.cpp:336 msgid "Make segments curves" msgstr "Зробити сегменти кривими" -#: ../src/ui/tool/multi-path-manipulator.cpp:339 +#: ../src/ui/tool/multi-path-manipulator.cpp:343 msgid "Add nodes" msgstr "Додати вузли" -#: ../src/ui/tool/multi-path-manipulator.cpp:344 +#: ../src/ui/tool/multi-path-manipulator.cpp:348 msgid "Add extremum nodes" msgstr "Додати вузли у екстремумах" -#: ../src/ui/tool/multi-path-manipulator.cpp:350 +#: ../src/ui/tool/multi-path-manipulator.cpp:354 msgid "Duplicate nodes" msgstr "Дублювати вузли" -#: ../src/ui/tool/multi-path-manipulator.cpp:412 -#: ../src/widgets/node-toolbar.cpp:417 +#: ../src/ui/tool/multi-path-manipulator.cpp:416 +#: ../src/widgets/node-toolbar.cpp:420 msgid "Join nodes" msgstr "З'єднати вузли" -#: ../src/ui/tool/multi-path-manipulator.cpp:419 -#: ../src/widgets/node-toolbar.cpp:428 +#: ../src/ui/tool/multi-path-manipulator.cpp:423 +#: ../src/widgets/node-toolbar.cpp:431 msgid "Break nodes" msgstr "Розрізати вузли" -#: ../src/ui/tool/multi-path-manipulator.cpp:426 +#: ../src/ui/tool/multi-path-manipulator.cpp:430 msgid "Delete nodes" msgstr "Вилучити вузли" -#: ../src/ui/tool/multi-path-manipulator.cpp:756 +#: ../src/ui/tool/multi-path-manipulator.cpp:760 msgid "Move nodes" msgstr "Перемістити вузли" -#: ../src/ui/tool/multi-path-manipulator.cpp:759 +#: ../src/ui/tool/multi-path-manipulator.cpp:763 msgid "Move nodes horizontally" msgstr "Перемістити вузли горизонтально" -#: ../src/ui/tool/multi-path-manipulator.cpp:763 +#: ../src/ui/tool/multi-path-manipulator.cpp:767 msgid "Move nodes vertically" msgstr "Перемістити вузли вертикально" -#: ../src/ui/tool/multi-path-manipulator.cpp:767 -#: ../src/ui/tool/multi-path-manipulator.cpp:770 +#: ../src/ui/tool/multi-path-manipulator.cpp:771 +#: ../src/ui/tool/multi-path-manipulator.cpp:774 msgid "Rotate nodes" msgstr "Обертання вузлів" -#: ../src/ui/tool/multi-path-manipulator.cpp:774 -#: ../src/ui/tool/multi-path-manipulator.cpp:780 +#: ../src/ui/tool/multi-path-manipulator.cpp:778 +#: ../src/ui/tool/multi-path-manipulator.cpp:784 msgid "Scale nodes uniformly" msgstr "Масштабувати вузли однорідно" -#: ../src/ui/tool/multi-path-manipulator.cpp:777 +#: ../src/ui/tool/multi-path-manipulator.cpp:781 msgid "Scale nodes" msgstr "Масштабувати вузли" -#: ../src/ui/tool/multi-path-manipulator.cpp:784 +#: ../src/ui/tool/multi-path-manipulator.cpp:788 msgid "Scale nodes horizontally" msgstr "Масштабувати вузли горизонтально" -#: ../src/ui/tool/multi-path-manipulator.cpp:788 +#: ../src/ui/tool/multi-path-manipulator.cpp:792 msgid "Scale nodes vertically" msgstr "Масштабувати вузли вертикально" -#: ../src/ui/tool/multi-path-manipulator.cpp:792 +#: ../src/ui/tool/multi-path-manipulator.cpp:796 msgid "Skew nodes horizontally" msgstr "Перекосити вузли горизонтально" -#: ../src/ui/tool/multi-path-manipulator.cpp:796 +#: ../src/ui/tool/multi-path-manipulator.cpp:800 msgid "Skew nodes vertically" msgstr "Перекосити вузли вертикально" -#: ../src/ui/tool/multi-path-manipulator.cpp:800 +#: ../src/ui/tool/multi-path-manipulator.cpp:804 msgid "Flip nodes horizontally" msgstr "Віддзеркалити вузли горизонтально" -#: ../src/ui/tool/multi-path-manipulator.cpp:803 +#: ../src/ui/tool/multi-path-manipulator.cpp:807 msgid "Flip nodes vertically" msgstr "Віддзеркалити вузли вертикально" @@ -21112,33 +21029,33 @@ msgctxt "Node tool tip" msgid "Drag to select objects to edit" msgstr "Перетягніть вказівник для позначення об'єктів редагування" -#: ../src/ui/tool/node.cpp:246 +#: ../src/ui/tool/node.cpp:245 msgid "Cusp node handle" msgstr "Елемент керування гострого вузла" -#: ../src/ui/tool/node.cpp:247 +#: ../src/ui/tool/node.cpp:246 msgid "Smooth node handle" msgstr "Елемент керування згладженого вузла" -#: ../src/ui/tool/node.cpp:248 +#: ../src/ui/tool/node.cpp:247 msgid "Symmetric node handle" msgstr "Елемент керування симетричного вузла" -#: ../src/ui/tool/node.cpp:249 +#: ../src/ui/tool/node.cpp:248 msgid "Auto-smooth node handle" msgstr "Елемент керування автозгладженого вузла" -#: ../src/ui/tool/node.cpp:433 +#: ../src/ui/tool/node.cpp:432 msgctxt "Path handle tip" msgid "more: Shift, Ctrl, Alt" msgstr "більше: Shift, Ctrl, Alt" -#: ../src/ui/tool/node.cpp:435 +#: ../src/ui/tool/node.cpp:434 msgctxt "Path handle tip" msgid "more: Ctrl, Alt" msgstr "більше: Ctrl, Alt" -#: ../src/ui/tool/node.cpp:441 +#: ../src/ui/tool/node.cpp:440 #, c-format msgctxt "Path handle tip" msgid "" @@ -21148,7 +21065,7 @@ msgstr "" "Shift+Ctrl+Alt: зберігати довжину, змінювати кут обертання кроками у " "%g°, обертати обидва елементи керування" -#: ../src/ui/tool/node.cpp:446 +#: ../src/ui/tool/node.cpp:445 #, c-format msgctxt "Path handle tip" msgid "" @@ -21157,19 +21074,19 @@ msgstr "" "Ctrl+Alt: зберігати довжину елемента, змінювати кут обертання кроками " "%g°" -#: ../src/ui/tool/node.cpp:452 +#: ../src/ui/tool/node.cpp:451 msgctxt "Path handle tip" msgid "Shift+Alt: preserve handle length and rotate both handles" msgstr "" "Shift+Alt: зберегти довжину елемента керування, обертати обидва " "елементи" -#: ../src/ui/tool/node.cpp:455 +#: ../src/ui/tool/node.cpp:454 msgctxt "Path handle tip" msgid "Alt: preserve handle length while dragging" msgstr "Alt: зберігати довжину елемента керування під час перетягування" -#: ../src/ui/tool/node.cpp:462 +#: ../src/ui/tool/node.cpp:461 #, c-format msgctxt "Path handle tip" msgid "" @@ -21179,19 +21096,19 @@ msgstr "" "Shift+Ctrl: змінювати кут обертання кроками у %g°, обертати обидва " "елементи керування" -#: ../src/ui/tool/node.cpp:466 +#: ../src/ui/tool/node.cpp:465 #, c-format msgctxt "Path handle tip" msgid "Ctrl: snap rotation angle to %g° increments, click to retract" msgstr "" "Ctrl: змінювати кут обертання кроками у %g°, клацніть для скасування" -#: ../src/ui/tool/node.cpp:471 +#: ../src/ui/tool/node.cpp:470 msgctxt "Path hande tip" msgid "Shift: rotate both handles by the same angle" msgstr "Shift: обертати на однаковий кут обидва елементи керування" -#: ../src/ui/tool/node.cpp:478 +#: ../src/ui/tool/node.cpp:477 #, c-format msgctxt "Path handle tip" msgid "Auto node handle: drag to convert to smooth node (%s)" @@ -21199,47 +21116,47 @@ msgstr "" "Елемент керування автоматикою вузла: перетягніть, щоб перетворити " "вузол на гладкий (%s)" -#: ../src/ui/tool/node.cpp:481 +#: ../src/ui/tool/node.cpp:480 #, c-format msgctxt "Path handle tip" msgid "%s: drag to shape the segment (%s)" msgstr "%s: перетягніть для зміни форми сегмента (%s)" -#: ../src/ui/tool/node.cpp:497 +#: ../src/ui/tool/node.cpp:500 #, c-format msgctxt "Path handle tip" msgid "Move handle by %s, %s; angle %.2f°, length %s" msgstr "Пересунути елемент керування на %s, %s; кут %.2f°, відстань %s" -#: ../src/ui/tool/node.cpp:1263 +#: ../src/ui/tool/node.cpp:1266 msgctxt "Path node tip" msgid "Shift: drag out a handle, click to toggle selection" msgstr "" "Shift: перетягніть елемент керування, клацніть, щоб увімкнути/" "вимкнути режим позначення" -#: ../src/ui/tool/node.cpp:1265 +#: ../src/ui/tool/node.cpp:1268 msgctxt "Path node tip" msgid "Shift: click to toggle selection" msgstr "Shift: клацніть, щоб увімкнути/вимкнути режим позначення" -#: ../src/ui/tool/node.cpp:1270 +#: ../src/ui/tool/node.cpp:1273 msgctxt "Path node tip" msgid "Ctrl+Alt: move along handle lines, click to delete node" msgstr "" "Ctrl+Alt: пересунути лінії елемента керування, клацання вилучає вузол" -#: ../src/ui/tool/node.cpp:1273 +#: ../src/ui/tool/node.cpp:1276 msgctxt "Path node tip" msgid "Ctrl: move along axes, click to change node type" msgstr "Ctrl: пересунути вздовж осей, клацання змінює тип вузла" -#: ../src/ui/tool/node.cpp:1277 +#: ../src/ui/tool/node.cpp:1280 msgctxt "Path node tip" msgid "Alt: sculpt nodes" msgstr "Alt: надати форму вузлам" -#: ../src/ui/tool/node.cpp:1285 +#: ../src/ui/tool/node.cpp:1288 #, c-format msgctxt "Path node tip" msgid "%s: drag to shape the path (more: Shift, Ctrl, Alt)" @@ -21247,7 +21164,7 @@ msgstr "" "%s: перетягніть вказівник, щоб змінити форму контуру (більше: Shift, " "Ctrl, Alt)" -#: ../src/ui/tool/node.cpp:1288 +#: ../src/ui/tool/node.cpp:1291 #, c-format msgctxt "Path node tip" msgid "" @@ -21258,7 +21175,7 @@ msgstr "" "перемикає елементи керування масштабування/обертання (більше: Shift, Ctrl, " "Alt)" -#: ../src/ui/tool/node.cpp:1291 +#: ../src/ui/tool/node.cpp:1294 #, c-format msgctxt "Path node tip" msgid "" @@ -21268,17 +21185,17 @@ msgstr "" "%s: перетягніть вказівник, щоб змінити форму контуру, клацніть, щоб " "позначити лише цей вузол (більше: Shift, Ctrl, Alt)" -#: ../src/ui/tool/node.cpp:1299 +#: ../src/ui/tool/node.cpp:1305 #, c-format msgctxt "Path node tip" msgid "Move node by %s, %s" msgstr "Пересунути вузол на %s, %s" -#: ../src/ui/tool/node.cpp:1311 +#: ../src/ui/tool/node.cpp:1317 msgid "Symmetric node" msgstr "Симетричний вузол" -#: ../src/ui/tool/node.cpp:1312 +#: ../src/ui/tool/node.cpp:1318 msgid "Auto-smooth node" msgstr "Автоматично згладжений вузол" @@ -21292,7 +21209,7 @@ msgstr "Обертати вус" #. We need to call MPM's method because it could have been our last node #: ../src/ui/tool/path-manipulator.cpp:1374 -#: ../src/widgets/node-toolbar.cpp:406 +#: ../src/widgets/node-toolbar.cpp:409 msgid "Delete node" msgstr "Вилучити вузол" @@ -21460,8 +21377,8 @@ msgid "MetadataLicence|Other" msgstr "Інша" #: ../src/ui/widget/object-composite-settings.cpp:67 -#: ../src/ui/widget/selected-style.cpp:1090 -#: ../src/ui/widget/selected-style.cpp:1091 +#: ../src/ui/widget/selected-style.cpp:1095 +#: ../src/ui/widget/selected-style.cpp:1096 msgid "Opacity (%)" msgstr "Непрозорість (у %)" @@ -21470,81 +21387,83 @@ msgid "Change blur" msgstr "Зміна розмивання" #: ../src/ui/widget/object-composite-settings.cpp:220 -#: ../src/ui/widget/selected-style.cpp:922 -#: ../src/ui/widget/selected-style.cpp:1216 +#: ../src/ui/widget/selected-style.cpp:927 +#: ../src/ui/widget/selected-style.cpp:1221 msgid "Change opacity" msgstr "Зміна непрозорості" -#: ../src/ui/widget/page-sizer.cpp:237 +#: ../src/ui/widget/page-sizer.cpp:235 msgid "U_nits:" msgstr "О_диниці:" -#: ../src/ui/widget/page-sizer.cpp:238 +#: ../src/ui/widget/page-sizer.cpp:236 msgid "Width of paper" msgstr "Ширина полотна" -#: ../src/ui/widget/page-sizer.cpp:239 +#: ../src/ui/widget/page-sizer.cpp:237 msgid "Height of paper" msgstr "Висота полотна" -#: ../src/ui/widget/page-sizer.cpp:240 +#: ../src/ui/widget/page-sizer.cpp:238 msgid "T_op margin:" msgstr "_Верхнє поле:" -#: ../src/ui/widget/page-sizer.cpp:240 +#: ../src/ui/widget/page-sizer.cpp:238 msgid "Top margin" msgstr "Верхнє поле" -#: ../src/ui/widget/page-sizer.cpp:241 +#: ../src/ui/widget/page-sizer.cpp:239 msgid "L_eft:" msgstr "_Ліве:" -#: ../src/ui/widget/page-sizer.cpp:241 +#: ../src/ui/widget/page-sizer.cpp:239 +#: ../share/extensions/guides_creator.inx.h:17 msgid "Left margin" msgstr "Ліве поле" -#: ../src/ui/widget/page-sizer.cpp:242 +#: ../src/ui/widget/page-sizer.cpp:240 msgid "Ri_ght:" msgstr "_Праве:" -#: ../src/ui/widget/page-sizer.cpp:242 +#: ../src/ui/widget/page-sizer.cpp:240 +#: ../share/extensions/guides_creator.inx.h:18 msgid "Right margin" msgstr "Праве поле" -#: ../src/ui/widget/page-sizer.cpp:243 +#: ../src/ui/widget/page-sizer.cpp:241 msgid "Botto_m:" msgstr "Ни_жнє:" -#: ../src/ui/widget/page-sizer.cpp:243 +#: ../src/ui/widget/page-sizer.cpp:241 msgid "Bottom margin" msgstr "Нижнє поле" -#: ../src/ui/widget/page-sizer.cpp:303 ../share/extensions/hpgl_output.inx.h:7 +#: ../src/ui/widget/page-sizer.cpp:296 ../share/extensions/hpgl_output.inx.h:7 msgid "Orientation:" msgstr "Орієнтація:" -#: ../src/ui/widget/page-sizer.cpp:306 +#: ../src/ui/widget/page-sizer.cpp:299 msgid "_Landscape" msgstr "_Альбомна" -#: ../src/ui/widget/page-sizer.cpp:311 +#: ../src/ui/widget/page-sizer.cpp:304 msgid "_Portrait" msgstr "Кни_жкова" #. ## Set up custom size frame -#: ../src/ui/widget/page-sizer.cpp:329 +#: ../src/ui/widget/page-sizer.cpp:322 msgid "Custom size" msgstr "Особливий розмір" -#: ../src/ui/widget/page-sizer.cpp:374 +#: ../src/ui/widget/page-sizer.cpp:367 msgid "Resi_ze page to content..." msgstr "_Розмір сторінки за вмістом…" -#: ../src/ui/widget/page-sizer.cpp:426 +#: ../src/ui/widget/page-sizer.cpp:419 msgid "_Resize page to drawing or selection" msgstr "_Підігнати розмір за малюнком або позначеною областю" -#: ../src/ui/widget/page-sizer.cpp:427 +#: ../src/ui/widget/page-sizer.cpp:420 msgid "" "Resize the page to fit the current selection, or the entire drawing if there " "is no selection" @@ -21552,7 +21471,7 @@ msgstr "" "Змінити масштаб сторінки для відповідності поточному фрагменту або всьому " "рисунку, якщо фрагмент не позначений" -#: ../src/ui/widget/page-sizer.cpp:492 +#: ../src/ui/widget/page-sizer.cpp:485 msgid "Set page size" msgstr "Встановлення розміру сторінки" @@ -21702,280 +21621,280 @@ msgstr "" "зображення не можна буде масштабувати без викривлень. Однак всі графічні " "елементи буде надруковано так, як вони виглядають на екрані." -#: ../src/ui/widget/selected-style.cpp:127 -#: ../src/ui/widget/style-swatch.cpp:126 +#: ../src/ui/widget/selected-style.cpp:130 +#: ../src/ui/widget/style-swatch.cpp:127 msgid "Fill:" msgstr "Заповнення:" -#: ../src/ui/widget/selected-style.cpp:129 +#: ../src/ui/widget/selected-style.cpp:132 msgid "O:" msgstr "Н:" -#: ../src/ui/widget/selected-style.cpp:174 +#: ../src/ui/widget/selected-style.cpp:177 msgid "N/A" msgstr "Н/Д" -#: ../src/ui/widget/selected-style.cpp:177 -#: ../src/ui/widget/selected-style.cpp:1083 -#: ../src/ui/widget/selected-style.cpp:1084 +#: ../src/ui/widget/selected-style.cpp:180 +#: ../src/ui/widget/selected-style.cpp:1088 +#: ../src/ui/widget/selected-style.cpp:1089 #: ../src/widgets/gradient-toolbar.cpp:176 msgid "Nothing selected" msgstr "Нічого не позначено" -#: ../src/ui/widget/selected-style.cpp:179 -#: ../src/ui/widget/style-swatch.cpp:319 +#: ../src/ui/widget/selected-style.cpp:182 +#: ../src/ui/widget/style-swatch.cpp:320 msgctxt "Fill and stroke" msgid "None" msgstr "Немає" -#: ../src/ui/widget/selected-style.cpp:182 -#: ../src/ui/widget/style-swatch.cpp:321 +#: ../src/ui/widget/selected-style.cpp:185 +#: ../src/ui/widget/style-swatch.cpp:322 msgctxt "Fill and stroke" msgid "No fill" msgstr "Без заповнення" -#: ../src/ui/widget/selected-style.cpp:182 -#: ../src/ui/widget/style-swatch.cpp:321 +#: ../src/ui/widget/selected-style.cpp:185 +#: ../src/ui/widget/style-swatch.cpp:322 msgctxt "Fill and stroke" msgid "No stroke" msgstr "Без штриха" -#: ../src/ui/widget/selected-style.cpp:184 -#: ../src/ui/widget/style-swatch.cpp:300 ../src/widgets/paint-selector.cpp:242 +#: ../src/ui/widget/selected-style.cpp:187 +#: ../src/ui/widget/style-swatch.cpp:301 ../src/widgets/paint-selector.cpp:242 msgid "Pattern" msgstr "Заповнення візерунком" -#: ../src/ui/widget/selected-style.cpp:187 -#: ../src/ui/widget/style-swatch.cpp:302 +#: ../src/ui/widget/selected-style.cpp:190 +#: ../src/ui/widget/style-swatch.cpp:303 msgid "Pattern fill" msgstr "Заповнення візерунком" -#: ../src/ui/widget/selected-style.cpp:187 -#: ../src/ui/widget/style-swatch.cpp:302 +#: ../src/ui/widget/selected-style.cpp:190 +#: ../src/ui/widget/style-swatch.cpp:303 msgid "Pattern stroke" msgstr "Штрих-візерунок" -#: ../src/ui/widget/selected-style.cpp:189 +#: ../src/ui/widget/selected-style.cpp:192 msgid "L" msgstr "Л" -#: ../src/ui/widget/selected-style.cpp:192 -#: ../src/ui/widget/style-swatch.cpp:294 +#: ../src/ui/widget/selected-style.cpp:195 +#: ../src/ui/widget/style-swatch.cpp:295 msgid "Linear gradient fill" msgstr "Заповнення з лінійним градієнтом" -#: ../src/ui/widget/selected-style.cpp:192 -#: ../src/ui/widget/style-swatch.cpp:294 +#: ../src/ui/widget/selected-style.cpp:195 +#: ../src/ui/widget/style-swatch.cpp:295 msgid "Linear gradient stroke" msgstr "Штрих з лінійним градієнтом" -#: ../src/ui/widget/selected-style.cpp:199 +#: ../src/ui/widget/selected-style.cpp:202 msgid "R" msgstr "П" -#: ../src/ui/widget/selected-style.cpp:202 -#: ../src/ui/widget/style-swatch.cpp:298 +#: ../src/ui/widget/selected-style.cpp:205 +#: ../src/ui/widget/style-swatch.cpp:299 msgid "Radial gradient fill" msgstr "Заповнення з радіальним градієнтом" -#: ../src/ui/widget/selected-style.cpp:202 -#: ../src/ui/widget/style-swatch.cpp:298 +#: ../src/ui/widget/selected-style.cpp:205 +#: ../src/ui/widget/style-swatch.cpp:299 msgid "Radial gradient stroke" msgstr "Штрих з радіальним градієнтом" -#: ../src/ui/widget/selected-style.cpp:209 +#: ../src/ui/widget/selected-style.cpp:212 msgid "Different" msgstr "Інші" -#: ../src/ui/widget/selected-style.cpp:212 +#: ../src/ui/widget/selected-style.cpp:215 msgid "Different fills" msgstr "Інші заповнення" -#: ../src/ui/widget/selected-style.cpp:212 +#: ../src/ui/widget/selected-style.cpp:215 msgid "Different strokes" msgstr "Інші штрихи" -#: ../src/ui/widget/selected-style.cpp:214 -#: ../src/ui/widget/style-swatch.cpp:324 +#: ../src/ui/widget/selected-style.cpp:217 +#: ../src/ui/widget/style-swatch.cpp:325 msgid "Unset" msgstr "Не встановлено" #. TRANSLATORS COMMENT: unset is a verb here -#: ../src/ui/widget/selected-style.cpp:217 -#: ../src/ui/widget/selected-style.cpp:275 -#: ../src/ui/widget/selected-style.cpp:554 -#: ../src/ui/widget/style-swatch.cpp:326 ../src/widgets/fill-style.cpp:712 +#: ../src/ui/widget/selected-style.cpp:220 +#: ../src/ui/widget/selected-style.cpp:278 +#: ../src/ui/widget/selected-style.cpp:559 +#: ../src/ui/widget/style-swatch.cpp:327 ../src/widgets/fill-style.cpp:712 msgid "Unset fill" msgstr "Не заливати" -#: ../src/ui/widget/selected-style.cpp:217 -#: ../src/ui/widget/selected-style.cpp:275 -#: ../src/ui/widget/selected-style.cpp:570 -#: ../src/ui/widget/style-swatch.cpp:326 ../src/widgets/fill-style.cpp:712 +#: ../src/ui/widget/selected-style.cpp:220 +#: ../src/ui/widget/selected-style.cpp:278 +#: ../src/ui/widget/selected-style.cpp:575 +#: ../src/ui/widget/style-swatch.cpp:327 ../src/widgets/fill-style.cpp:712 msgid "Unset stroke" msgstr "Зняття штриха" -#: ../src/ui/widget/selected-style.cpp:220 +#: ../src/ui/widget/selected-style.cpp:223 msgid "Flat color fill" msgstr "Однорідне заповнення" -#: ../src/ui/widget/selected-style.cpp:220 +#: ../src/ui/widget/selected-style.cpp:223 msgid "Flat color stroke" msgstr "Однорідний штрих" #. TRANSLATOR COMMENT: A means "Averaged" -#: ../src/ui/widget/selected-style.cpp:223 +#: ../src/ui/widget/selected-style.cpp:226 msgid "a" msgstr "a" -#: ../src/ui/widget/selected-style.cpp:226 +#: ../src/ui/widget/selected-style.cpp:229 msgid "Fill is averaged over selected objects" msgstr "Заповнення усереднюється у позначених об'єктах" -#: ../src/ui/widget/selected-style.cpp:226 +#: ../src/ui/widget/selected-style.cpp:229 msgid "Stroke is averaged over selected objects" msgstr "Штрих усереднено для позначених об'єктів" #. TRANSLATOR COMMENT: M means "Multiple" -#: ../src/ui/widget/selected-style.cpp:229 +#: ../src/ui/widget/selected-style.cpp:232 msgid "m" msgstr "m" -#: ../src/ui/widget/selected-style.cpp:232 +#: ../src/ui/widget/selected-style.cpp:235 msgid "Multiple selected objects have the same fill" msgstr "Множина позначених об'єктів має однакове заповнення" -#: ../src/ui/widget/selected-style.cpp:232 +#: ../src/ui/widget/selected-style.cpp:235 msgid "Multiple selected objects have the same stroke" msgstr "Множина позначених об'єктів має однакові штрихи" -#: ../src/ui/widget/selected-style.cpp:234 +#: ../src/ui/widget/selected-style.cpp:237 msgid "Edit fill..." msgstr "Редагувати заповнення…" -#: ../src/ui/widget/selected-style.cpp:234 +#: ../src/ui/widget/selected-style.cpp:237 msgid "Edit stroke..." msgstr "Редагування штриха…" -#: ../src/ui/widget/selected-style.cpp:238 +#: ../src/ui/widget/selected-style.cpp:241 msgid "Last set color" msgstr "Останній використаний колір" -#: ../src/ui/widget/selected-style.cpp:242 +#: ../src/ui/widget/selected-style.cpp:245 msgid "Last selected color" msgstr "Останній вибраний колір" -#: ../src/ui/widget/selected-style.cpp:258 +#: ../src/ui/widget/selected-style.cpp:261 msgid "Copy color" msgstr "Копіювати колір" -#: ../src/ui/widget/selected-style.cpp:262 +#: ../src/ui/widget/selected-style.cpp:265 msgid "Paste color" msgstr "Вставити колір" -#: ../src/ui/widget/selected-style.cpp:266 -#: ../src/ui/widget/selected-style.cpp:847 +#: ../src/ui/widget/selected-style.cpp:269 +#: ../src/ui/widget/selected-style.cpp:852 msgid "Swap fill and stroke" msgstr "Поміняти місцями кольори заповнення та штриха" -#: ../src/ui/widget/selected-style.cpp:270 -#: ../src/ui/widget/selected-style.cpp:579 -#: ../src/ui/widget/selected-style.cpp:588 +#: ../src/ui/widget/selected-style.cpp:273 +#: ../src/ui/widget/selected-style.cpp:584 +#: ../src/ui/widget/selected-style.cpp:593 msgid "Make fill opaque" msgstr "Зробити заповнення непрозорим" -#: ../src/ui/widget/selected-style.cpp:270 +#: ../src/ui/widget/selected-style.cpp:273 msgid "Make stroke opaque" msgstr "Зробити штрихи непрозорими" -#: ../src/ui/widget/selected-style.cpp:279 -#: ../src/ui/widget/selected-style.cpp:536 ../src/widgets/fill-style.cpp:510 +#: ../src/ui/widget/selected-style.cpp:282 +#: ../src/ui/widget/selected-style.cpp:541 ../src/widgets/fill-style.cpp:510 msgid "Remove fill" msgstr "Вилучити заповнення" -#: ../src/ui/widget/selected-style.cpp:279 -#: ../src/ui/widget/selected-style.cpp:545 ../src/widgets/fill-style.cpp:510 +#: ../src/ui/widget/selected-style.cpp:282 +#: ../src/ui/widget/selected-style.cpp:550 ../src/widgets/fill-style.cpp:510 msgid "Remove stroke" msgstr "Вилучити штрих" -#: ../src/ui/widget/selected-style.cpp:600 +#: ../src/ui/widget/selected-style.cpp:605 msgid "Apply last set color to fill" msgstr "Застосувати останній використаний колір для заповнення" -#: ../src/ui/widget/selected-style.cpp:612 +#: ../src/ui/widget/selected-style.cpp:617 msgid "Apply last set color to stroke" msgstr "Застосувати останній використаний колір для штриха" -#: ../src/ui/widget/selected-style.cpp:623 +#: ../src/ui/widget/selected-style.cpp:628 msgid "Apply last selected color to fill" msgstr "Застосувати останній вибраний колір для заповнення" -#: ../src/ui/widget/selected-style.cpp:634 +#: ../src/ui/widget/selected-style.cpp:639 msgid "Apply last selected color to stroke" msgstr "Застосувати останній вибраний колір для штриха" -#: ../src/ui/widget/selected-style.cpp:660 +#: ../src/ui/widget/selected-style.cpp:665 msgid "Invert fill" msgstr "Інвертувати заповнення" -#: ../src/ui/widget/selected-style.cpp:684 +#: ../src/ui/widget/selected-style.cpp:689 msgid "Invert stroke" msgstr "Інвертувати штрих" -#: ../src/ui/widget/selected-style.cpp:696 +#: ../src/ui/widget/selected-style.cpp:701 msgid "White fill" msgstr "Заповнення білим" -#: ../src/ui/widget/selected-style.cpp:708 +#: ../src/ui/widget/selected-style.cpp:713 msgid "White stroke" msgstr "Білий штрих" -#: ../src/ui/widget/selected-style.cpp:720 +#: ../src/ui/widget/selected-style.cpp:725 msgid "Black fill" msgstr "Заповнення чорним" -#: ../src/ui/widget/selected-style.cpp:732 +#: ../src/ui/widget/selected-style.cpp:737 msgid "Black stroke" msgstr "Чорний штрих" -#: ../src/ui/widget/selected-style.cpp:775 +#: ../src/ui/widget/selected-style.cpp:780 msgid "Paste fill" msgstr "Вставити заповнення" -#: ../src/ui/widget/selected-style.cpp:793 +#: ../src/ui/widget/selected-style.cpp:798 msgid "Paste stroke" msgstr "Вставити штрих" -#: ../src/ui/widget/selected-style.cpp:949 +#: ../src/ui/widget/selected-style.cpp:954 msgid "Change stroke width" msgstr "Змінити товщину штриха" -#: ../src/ui/widget/selected-style.cpp:1044 +#: ../src/ui/widget/selected-style.cpp:1049 msgid ", drag to adjust" msgstr ", налаштуйте шляхом перетягування" -#: ../src/ui/widget/selected-style.cpp:1129 +#: ../src/ui/widget/selected-style.cpp:1134 #, c-format msgid "Stroke width: %.5g%s%s" msgstr "Товщина штриха: %.5g%s%s" -#: ../src/ui/widget/selected-style.cpp:1133 +#: ../src/ui/widget/selected-style.cpp:1138 msgid " (averaged)" msgstr " (осереднений)" -#: ../src/ui/widget/selected-style.cpp:1161 +#: ../src/ui/widget/selected-style.cpp:1166 msgid "0 (transparent)" msgstr "0 (прозорий)" -#: ../src/ui/widget/selected-style.cpp:1185 +#: ../src/ui/widget/selected-style.cpp:1190 msgid "100% (opaque)" msgstr "100% (непрозорий)" -#: ../src/ui/widget/selected-style.cpp:1352 +#: ../src/ui/widget/selected-style.cpp:1357 msgid "Adjust alpha" msgstr "Скоригувати канал прозорості" -#: ../src/ui/widget/selected-style.cpp:1354 +#: ../src/ui/widget/selected-style.cpp:1359 #, c-format msgid "" "Adjusting alpha: was %.3g, now %.3g (diff %.3g); with CtrlCtrl для зміни освітленості;Shift — для " "зміни насиченості, без модифікаторів — виправлення відтінку" -#: ../src/ui/widget/selected-style.cpp:1358 +#: ../src/ui/widget/selected-style.cpp:1363 msgid "Adjust saturation" msgstr "Корекція насиченості" -#: ../src/ui/widget/selected-style.cpp:1360 +#: ../src/ui/widget/selected-style.cpp:1365 #, c-format msgid "" "Adjusting saturation: was %.3g, now %.3g (diff %.3g); with " @@ -22001,11 +21920,11 @@ msgstr "" "скористайтеся Ctrl для корекції освітленості, Alt — для зміни " "прозорості, без модифікаторів – корекція відтінку" -#: ../src/ui/widget/selected-style.cpp:1364 +#: ../src/ui/widget/selected-style.cpp:1369 msgid "Adjust lightness" msgstr "Корекція освітленості" -#: ../src/ui/widget/selected-style.cpp:1366 +#: ../src/ui/widget/selected-style.cpp:1371 #, c-format msgid "" "Adjusting lightness: was %.3g, now %.3g (diff %.3g); with " @@ -22016,11 +21935,11 @@ msgstr "" "скористайтеся Shift для зміни насиченості, Alt — для зміни " "прозорості, без модифікаторів — виправлення відтінку" -#: ../src/ui/widget/selected-style.cpp:1370 +#: ../src/ui/widget/selected-style.cpp:1375 msgid "Adjust hue" msgstr "Корекція відтінку" -#: ../src/ui/widget/selected-style.cpp:1372 +#: ../src/ui/widget/selected-style.cpp:1377 #, c-format msgid "" "Adjusting hue: was %.3g, now %.3g (diff %.3g); with ShiftShift для зміни насиченості, Alt — для зміни " "прозорості, а Ctrl для зміни освітленості" -#: ../src/ui/widget/selected-style.cpp:1492 -#: ../src/ui/widget/selected-style.cpp:1506 +#: ../src/ui/widget/selected-style.cpp:1497 +#: ../src/ui/widget/selected-style.cpp:1511 msgid "Adjust stroke width" msgstr "Скоригувати товщину штриха" -#: ../src/ui/widget/selected-style.cpp:1493 +#: ../src/ui/widget/selected-style.cpp:1498 #, c-format msgid "Adjusting stroke width: was %.3g, now %.3g (diff %.3g)" msgstr "" @@ -22048,35 +21967,35 @@ msgctxt "Sliders" msgid "Link" msgstr "З'єднати" -#: ../src/ui/widget/style-swatch.cpp:292 +#: ../src/ui/widget/style-swatch.cpp:293 msgid "L Gradient" msgstr "Лінійний градієнт" -#: ../src/ui/widget/style-swatch.cpp:296 +#: ../src/ui/widget/style-swatch.cpp:297 msgid "R Gradient" msgstr "Рад. градієнт" -#: ../src/ui/widget/style-swatch.cpp:312 +#: ../src/ui/widget/style-swatch.cpp:313 #, c-format msgid "Fill: %06x/%.3g" msgstr "Заповнення: %06x/%.3g" -#: ../src/ui/widget/style-swatch.cpp:314 +#: ../src/ui/widget/style-swatch.cpp:315 #, c-format msgid "Stroke: %06x/%.3g" msgstr "Штрих: %06x/%.3g" -#: ../src/ui/widget/style-swatch.cpp:346 +#: ../src/ui/widget/style-swatch.cpp:347 #, c-format msgid "Stroke width: %.5g%s" msgstr "Товщина штриха: %.5g%s" -#: ../src/ui/widget/style-swatch.cpp:362 +#: ../src/ui/widget/style-swatch.cpp:363 #, c-format msgid "O: %2.0f" msgstr "Н: %2.0f" -#: ../src/ui/widget/style-swatch.cpp:367 +#: ../src/ui/widget/style-swatch.cpp:368 #, c-format msgid "Opacity: %2.1f %%" msgstr "Непрозорість: %2.1f %%" @@ -22132,30 +22051,35 @@ msgstr[2] "" "міститься у %d об'єктах; перетягніть, утримуючи Shift, щоб " "відокремити вибрані об'єкти" -#: ../src/verbs.cpp:154 ../src/widgets/calligraphy-toolbar.cpp:647 +#: ../src/verbs.cpp:137 +msgid "File" +msgstr "Файл" + +#: ../src/verbs.cpp:156 ../src/widgets/calligraphy-toolbar.cpp:643 msgid "Edit" msgstr "Змінити" -#: ../src/verbs.cpp:230 +#: ../src/verbs.cpp:232 msgid "Context" msgstr "Контекст" -#: ../src/verbs.cpp:249 ../src/verbs.cpp:2166 +#: ../src/verbs.cpp:251 ../src/verbs.cpp:2219 #: ../share/extensions/jessyInk_view.inx.h:1 #: ../share/extensions/polyhedron_3d.inx.h:26 msgid "View" msgstr "Перегляд" -#: ../src/verbs.cpp:269 +#: ../src/verbs.cpp:271 msgid "Dialog" msgstr "Діалогове вікно" -#: ../src/verbs.cpp:326 ../share/extensions/lorem_ipsum.inx.h:8 +#: ../src/verbs.cpp:328 ../share/extensions/lorem_ipsum.inx.h:8 #: ../share/extensions/replace_font.inx.h:11 #: ../share/extensions/split.inx.h:10 ../share/extensions/text_braille.inx.h:2 #: ../share/extensions/text_extract.inx.h:14 #: ../share/extensions/text_flipcase.inx.h:2 #: ../share/extensions/text_lowercase.inx.h:2 +#: ../share/extensions/text_merge.inx.h:16 #: ../share/extensions/text_randomcase.inx.h:2 #: ../share/extensions/text_sentencecase.inx.h:2 #: ../share/extensions/text_titlecase.inx.h:2 @@ -22163,228 +22087,228 @@ msgstr "Діалогове вікно" msgid "Text" msgstr "Текст" -#: ../src/verbs.cpp:1173 +#: ../src/verbs.cpp:1223 msgid "Switch to next layer" msgstr "Перемкнутися на наступний шар" -#: ../src/verbs.cpp:1174 +#: ../src/verbs.cpp:1224 msgid "Switched to next layer." msgstr "Перемикання на наступний шар." -#: ../src/verbs.cpp:1176 +#: ../src/verbs.cpp:1226 msgid "Cannot go past last layer." msgstr "Неможливо переміститися вище за останній шар." -#: ../src/verbs.cpp:1185 +#: ../src/verbs.cpp:1235 msgid "Switch to previous layer" msgstr "Перемкнутися на попередній шар" -#: ../src/verbs.cpp:1186 +#: ../src/verbs.cpp:1236 msgid "Switched to previous layer." msgstr "Перемикання на попередній шар." -#: ../src/verbs.cpp:1188 +#: ../src/verbs.cpp:1238 msgid "Cannot go before first layer." msgstr "Неможливо переміститися нижче за перший шар." -#: ../src/verbs.cpp:1209 ../src/verbs.cpp:1306 ../src/verbs.cpp:1338 -#: ../src/verbs.cpp:1344 ../src/verbs.cpp:1368 ../src/verbs.cpp:1383 +#: ../src/verbs.cpp:1259 ../src/verbs.cpp:1356 ../src/verbs.cpp:1388 +#: ../src/verbs.cpp:1394 ../src/verbs.cpp:1418 ../src/verbs.cpp:1433 msgid "No current layer." msgstr "Немає поточного шару." -#: ../src/verbs.cpp:1238 ../src/verbs.cpp:1242 +#: ../src/verbs.cpp:1288 ../src/verbs.cpp:1292 #, c-format msgid "Raised layer %s." msgstr "Шар %s піднято." -#: ../src/verbs.cpp:1239 +#: ../src/verbs.cpp:1289 msgid "Layer to top" msgstr "Підняти шар нагору" -#: ../src/verbs.cpp:1243 +#: ../src/verbs.cpp:1293 msgid "Raise layer" msgstr "Підняти шар" -#: ../src/verbs.cpp:1246 ../src/verbs.cpp:1250 +#: ../src/verbs.cpp:1296 ../src/verbs.cpp:1300 #, c-format msgid "Lowered layer %s." msgstr "Шар %s опущено." -#: ../src/verbs.cpp:1247 +#: ../src/verbs.cpp:1297 msgid "Layer to bottom" msgstr "Опустити шар додолу" -#: ../src/verbs.cpp:1251 +#: ../src/verbs.cpp:1301 msgid "Lower layer" msgstr "Опустити шар" -#: ../src/verbs.cpp:1260 +#: ../src/verbs.cpp:1310 msgid "Cannot move layer any further." msgstr "Неможливо перемістити шар далі." -#: ../src/verbs.cpp:1274 ../src/verbs.cpp:1293 +#: ../src/verbs.cpp:1324 ../src/verbs.cpp:1343 #, c-format msgid "%s copy" msgstr "Копія %s" -#: ../src/verbs.cpp:1301 +#: ../src/verbs.cpp:1351 msgid "Duplicate layer" msgstr "Дублювати шар" #. TRANSLATORS: this means "The layer has been duplicated." -#: ../src/verbs.cpp:1304 +#: ../src/verbs.cpp:1354 msgid "Duplicated layer." msgstr "Дубльований шар." -#: ../src/verbs.cpp:1333 +#: ../src/verbs.cpp:1383 msgid "Delete layer" msgstr "Вилучити шар" #. TRANSLATORS: this means "The layer has been deleted." -#: ../src/verbs.cpp:1336 +#: ../src/verbs.cpp:1386 msgid "Deleted layer." msgstr "Шар вилучено." -#: ../src/verbs.cpp:1353 +#: ../src/verbs.cpp:1403 msgid "Show all layers" msgstr "Показати всі шари" -#: ../src/verbs.cpp:1358 +#: ../src/verbs.cpp:1408 msgid "Hide all layers" msgstr "Приховати всі шари" -#: ../src/verbs.cpp:1363 +#: ../src/verbs.cpp:1413 msgid "Lock all layers" msgstr "Заблокувати всі шари" -#: ../src/verbs.cpp:1377 +#: ../src/verbs.cpp:1427 msgid "Unlock all layers" msgstr "Розблокувати всі шари" -#: ../src/verbs.cpp:1451 +#: ../src/verbs.cpp:1511 msgid "Flip horizontally" msgstr "Віддзеркалити горизонтально" -#: ../src/verbs.cpp:1456 +#: ../src/verbs.cpp:1516 msgid "Flip vertically" msgstr "Віддзеркалити вертикально" #. TRANSLATORS: If you have translated the tutorial-basic.en.svgz file to your language, #. then translate this string as "tutorial-basic.LANG.svgz" (where LANG is your language #. code); otherwise leave as "tutorial-basic.svg". -#: ../src/verbs.cpp:2049 +#: ../src/verbs.cpp:2104 msgid "tutorial-basic.svg" msgstr "tutorial-basic.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2053 +#: ../src/verbs.cpp:2108 msgid "tutorial-shapes.svg" msgstr "tutorial-shapes.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2057 +#: ../src/verbs.cpp:2112 msgid "tutorial-advanced.svg" msgstr "tutorial-advanced.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2061 +#: ../src/verbs.cpp:2116 msgid "tutorial-tracing.svg" msgstr "tutorial-tracing.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2065 +#: ../src/verbs.cpp:2120 msgid "tutorial-calligraphy.svg" msgstr "tutorial-calligraphy.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2069 +#: ../src/verbs.cpp:2124 msgid "tutorial-interpolate.svg" msgstr "tutorial-interpolate.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2073 +#: ../src/verbs.cpp:2128 msgid "tutorial-elements.svg" msgstr "tutorial-elements.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2077 +#: ../src/verbs.cpp:2132 msgid "tutorial-tips.svg" msgstr "tutorial-tips.svg" -#: ../src/verbs.cpp:2265 ../src/verbs.cpp:2851 +#: ../src/verbs.cpp:2318 ../src/verbs.cpp:2904 msgid "Unlock all objects in the current layer" msgstr "Розблокувати усі об'єкти у поточному шарі" -#: ../src/verbs.cpp:2269 ../src/verbs.cpp:2853 +#: ../src/verbs.cpp:2322 ../src/verbs.cpp:2906 msgid "Unlock all objects in all layers" msgstr "Розблокувати усі об'єкти в усіх шарах" -#: ../src/verbs.cpp:2273 ../src/verbs.cpp:2855 +#: ../src/verbs.cpp:2326 ../src/verbs.cpp:2908 msgid "Unhide all objects in the current layer" msgstr "Розблокувати усі об'єкти у поточному шарі" -#: ../src/verbs.cpp:2277 ../src/verbs.cpp:2857 +#: ../src/verbs.cpp:2330 ../src/verbs.cpp:2910 msgid "Unhide all objects in all layers" msgstr "Показати усі об'єкти в усіх шарах" -#: ../src/verbs.cpp:2292 +#: ../src/verbs.cpp:2345 msgid "Does nothing" msgstr "Немає дій" -#: ../src/verbs.cpp:2295 +#: ../src/verbs.cpp:2348 msgid "Create new document from the default template" msgstr "Створити новий документ зі стандартного шаблону" -#: ../src/verbs.cpp:2297 +#: ../src/verbs.cpp:2350 msgid "_Open..." msgstr "_Відкрити…" -#: ../src/verbs.cpp:2298 +#: ../src/verbs.cpp:2351 msgid "Open an existing document" msgstr "Відкрити існуючий документ" -#: ../src/verbs.cpp:2299 +#: ../src/verbs.cpp:2352 msgid "Re_vert" msgstr "Від_новити" -#: ../src/verbs.cpp:2300 +#: ../src/verbs.cpp:2353 msgid "Revert to the last saved version of document (changes will be lost)" msgstr "Відновити останню збережену версію документа (зміни будуть втрачені)" -#: ../src/verbs.cpp:2301 +#: ../src/verbs.cpp:2354 msgid "Save document" msgstr "Зберегти документ" -#: ../src/verbs.cpp:2303 +#: ../src/verbs.cpp:2356 msgid "Save _As..." msgstr "Зберегти _як…" -#: ../src/verbs.cpp:2304 +#: ../src/verbs.cpp:2357 msgid "Save document under a new name" msgstr "Зберегти документ під іншою назвою" -#: ../src/verbs.cpp:2305 +#: ../src/verbs.cpp:2358 msgid "Save a Cop_y..." msgstr "Зберегти _копію…" -#: ../src/verbs.cpp:2306 +#: ../src/verbs.cpp:2359 msgid "Save a copy of the document under a new name" msgstr "Зберегти копію документа під іншою назвою" -#: ../src/verbs.cpp:2307 +#: ../src/verbs.cpp:2360 msgid "_Print..." msgstr "Над_рукувати…" -#: ../src/verbs.cpp:2307 +#: ../src/verbs.cpp:2360 msgid "Print document" msgstr "Надрукувати документ" #. TRANSLATORS: "Vacuum Defs" means "Clean up defs" (so as to remove unused definitions) -#: ../src/verbs.cpp:2310 +#: ../src/verbs.cpp:2363 msgid "Clean _up document" msgstr "О_чистити документ" -#: ../src/verbs.cpp:2310 +#: ../src/verbs.cpp:2363 msgid "" "Remove unused definitions (such as gradients or clipping paths) from the <" "defs> of the document" @@ -22392,144 +22316,152 @@ msgstr "" "Прибрати непотрібні визначення (наприклад, градієнти чи вирізання) з <" "defs> документа" -#: ../src/verbs.cpp:2312 +#: ../src/verbs.cpp:2365 msgid "_Import..." msgstr "_Імпортувати…" -#: ../src/verbs.cpp:2313 +#: ../src/verbs.cpp:2366 msgid "Import a bitmap or SVG image into this document" msgstr "Імпортувати зображення (растрове чи SVG) до документа" -#: ../src/verbs.cpp:2314 +#: ../src/verbs.cpp:2367 msgid "_Export Bitmap..." msgstr "_Експортувати растр…" -#: ../src/verbs.cpp:2315 +#: ../src/verbs.cpp:2368 msgid "Export this document or a selection as a bitmap image" msgstr "Експортувати документ чи позначену частину у растрове зображення" -#: ../src/verbs.cpp:2316 +#: ../src/verbs.cpp:2369 msgid "Import Clip Art..." msgstr "_Імпортувати шаблон…" -#: ../src/verbs.cpp:2317 +#: ../src/verbs.cpp:2370 msgid "Import clipart from Open Clip Art Library" msgstr "Імпортувати шаблон з бібліотеки Open Clip Art" #. new FileVerb(SP_VERB_FILE_EXPORT_TO_OCAL, "FileExportToOCAL", N_("Export To Open Clip Art Library"), N_("Export this document to Open Clip Art Library"), INKSCAPE_ICON_DOCUMENT_EXPORT_OCAL), -#: ../src/verbs.cpp:2319 +#: ../src/verbs.cpp:2372 msgid "N_ext Window" msgstr "_Наступне вікно" -#: ../src/verbs.cpp:2320 +#: ../src/verbs.cpp:2373 msgid "Switch to the next document window" msgstr "Перейти до наступного вікна документа" -#: ../src/verbs.cpp:2321 +#: ../src/verbs.cpp:2374 msgid "P_revious Window" msgstr "_Попереднє вікно" -#: ../src/verbs.cpp:2322 +#: ../src/verbs.cpp:2375 msgid "Switch to the previous document window" msgstr "Перейти до попереднього вікна документа" -#: ../src/verbs.cpp:2323 +#: ../src/verbs.cpp:2376 msgid "_Close" msgstr "_Закрити" -#: ../src/verbs.cpp:2324 +#: ../src/verbs.cpp:2377 msgid "Close this document window" msgstr "Закрити це вікно документа" -#: ../src/verbs.cpp:2325 +#: ../src/verbs.cpp:2378 msgid "_Quit" msgstr "Ви_йти" -#: ../src/verbs.cpp:2325 +#: ../src/verbs.cpp:2378 msgid "Quit Inkscape" msgstr "Вийти з Inkscape" -#: ../src/verbs.cpp:2328 +#: ../src/verbs.cpp:2379 +msgid "_Templates..." +msgstr "_Шаблони…" + +#: ../src/verbs.cpp:2380 +msgid "Create new project from template" +msgstr "Створити новий проект на основі шаблону" + +#: ../src/verbs.cpp:2383 msgid "Undo last action" msgstr "Скасувати останню операцію" -#: ../src/verbs.cpp:2331 +#: ../src/verbs.cpp:2386 msgid "Do again the last undone action" msgstr "Повторити останню скасовану дію" -#: ../src/verbs.cpp:2332 +#: ../src/verbs.cpp:2387 msgid "Cu_t" msgstr "_Вирізати" -#: ../src/verbs.cpp:2333 +#: ../src/verbs.cpp:2388 msgid "Cut selection to clipboard" msgstr "Вирізати позначені об'єкти у буфер обміну" -#: ../src/verbs.cpp:2334 +#: ../src/verbs.cpp:2389 msgid "_Copy" msgstr "_Копіювати" -#: ../src/verbs.cpp:2335 +#: ../src/verbs.cpp:2390 msgid "Copy selection to clipboard" msgstr "Скопіювати позначені об'єкти у буфер обміну" -#: ../src/verbs.cpp:2336 +#: ../src/verbs.cpp:2391 msgid "_Paste" msgstr "Вст_авити" -#: ../src/verbs.cpp:2337 +#: ../src/verbs.cpp:2392 msgid "Paste objects from clipboard to mouse point, or paste text" msgstr "Вставити об'єкти з буферу обміну або текст у позицію курсора миші" -#: ../src/verbs.cpp:2338 +#: ../src/verbs.cpp:2393 msgid "Paste _Style" msgstr "Вставити _стиль" -#: ../src/verbs.cpp:2339 +#: ../src/verbs.cpp:2394 msgid "Apply the style of the copied object to selection" msgstr "Застосувати стиль скопійованого об'єкта до позначених об'єктів" -#: ../src/verbs.cpp:2341 +#: ../src/verbs.cpp:2396 msgid "Scale selection to match the size of the copied object" msgstr "" "Зміна масштабу позначених об'єктів з метою задовольнити розміру копійованого " "об'єкта" -#: ../src/verbs.cpp:2342 +#: ../src/verbs.cpp:2397 msgid "Paste _Width" msgstr "Вставити _ширину" -#: ../src/verbs.cpp:2343 +#: ../src/verbs.cpp:2398 msgid "Scale selection horizontally to match the width of the copied object" msgstr "" "Змінити масштаб позначених об'єктів за горизонтальним розміром з метою " "відповідності ширині копійованого об'єкта" -#: ../src/verbs.cpp:2344 +#: ../src/verbs.cpp:2399 msgid "Paste _Height" msgstr "Вставити _висоту" -#: ../src/verbs.cpp:2345 +#: ../src/verbs.cpp:2400 msgid "Scale selection vertically to match the height of the copied object" msgstr "" "Змінити масштаб позначених об'єктів за вертикальним розміром з метою " "відповідності висоті копійованого об'єкта" -#: ../src/verbs.cpp:2346 +#: ../src/verbs.cpp:2401 msgid "Paste Size Separately" msgstr "Вставити розмір окремо" -#: ../src/verbs.cpp:2347 +#: ../src/verbs.cpp:2402 msgid "Scale each selected object to match the size of the copied object" msgstr "" "Змінити кожного позначеного об'єкта з метою відповідності розміру " "копійованого об'єкта" -#: ../src/verbs.cpp:2348 +#: ../src/verbs.cpp:2403 msgid "Paste Width Separately" msgstr "Вставити ширину окремо" -#: ../src/verbs.cpp:2349 +#: ../src/verbs.cpp:2404 msgid "" "Scale each selected object horizontally to match the width of the copied " "object" @@ -22537,11 +22469,11 @@ msgstr "" "Змінити масштаб кожного позначеного об'єкта за горизонтальним розміром з " "метою відповідності ширині копійованого об'єкта" -#: ../src/verbs.cpp:2350 +#: ../src/verbs.cpp:2405 msgid "Paste Height Separately" msgstr "Вставити висоту окремо" -#: ../src/verbs.cpp:2351 +#: ../src/verbs.cpp:2406 msgid "" "Scale each selected object vertically to match the height of the copied " "object" @@ -22549,67 +22481,67 @@ msgstr "" "Змінити масштаб кожного позначеного об'єкта за вертикальним розміром з метою " "відповідності висоті копійованого об'єкта" -#: ../src/verbs.cpp:2352 +#: ../src/verbs.cpp:2407 msgid "Paste _In Place" msgstr "Вставити на _місце" -#: ../src/verbs.cpp:2353 +#: ../src/verbs.cpp:2408 msgid "Paste objects from clipboard to the original location" msgstr "Вставити об'єкти з буфера у місце, де вони були раніше" -#: ../src/verbs.cpp:2354 +#: ../src/verbs.cpp:2409 msgid "Paste Path _Effect" msgstr "Вставити _ефект контуру" -#: ../src/verbs.cpp:2355 +#: ../src/verbs.cpp:2410 msgid "Apply the path effect of the copied object to selection" msgstr "Застосувати ефект контуру скопійованого об'єкта до позначених об'єктів" -#: ../src/verbs.cpp:2356 +#: ../src/verbs.cpp:2411 msgid "Remove Path _Effect" msgstr "Вилучити _ефект контуру" -#: ../src/verbs.cpp:2357 +#: ../src/verbs.cpp:2412 msgid "Remove any path effects from selected objects" msgstr "Вилучити всі ефекти контурів з позначених об'єктів" -#: ../src/verbs.cpp:2358 +#: ../src/verbs.cpp:2413 msgid "_Remove Filters" msgstr "В_илучити фільтри" -#: ../src/verbs.cpp:2359 +#: ../src/verbs.cpp:2414 msgid "Remove any filters from selected objects" msgstr "Вилучити всі наслідки застосування фільтрів з позначених об'єктів" -#: ../src/verbs.cpp:2360 +#: ../src/verbs.cpp:2415 msgid "_Delete" msgstr "В_илучити" -#: ../src/verbs.cpp:2361 +#: ../src/verbs.cpp:2416 msgid "Delete selection" msgstr "Вилучити позначені об'єкти" -#: ../src/verbs.cpp:2362 +#: ../src/verbs.cpp:2417 msgid "Duplic_ate" msgstr "_Дублювати" -#: ../src/verbs.cpp:2363 +#: ../src/verbs.cpp:2418 msgid "Duplicate selected objects" msgstr "Дублювати позначені об'єкти" -#: ../src/verbs.cpp:2364 +#: ../src/verbs.cpp:2419 msgid "Create Clo_ne" msgstr "Створити к_лон" -#: ../src/verbs.cpp:2365 +#: ../src/verbs.cpp:2420 msgid "Create a clone (a copy linked to the original) of selected object" msgstr "Створити клон (копію, пов'язану з оригіналом) позначеного об'єкта" -#: ../src/verbs.cpp:2366 +#: ../src/verbs.cpp:2421 msgid "Unlin_k Clone" msgstr "В_ід'єднати клон" -#: ../src/verbs.cpp:2367 +#: ../src/verbs.cpp:2422 msgid "" "Cut the selected clones' links to the originals, turning them into " "standalone objects" @@ -22617,29 +22549,29 @@ msgstr "" "Вирізати вибрані посилання клонів на оригінали з перетворенням їх на окремі " "об'єкти" -#: ../src/verbs.cpp:2368 +#: ../src/verbs.cpp:2423 msgid "Relink to Copied" msgstr "Перез'єднати з копійованим" -#: ../src/verbs.cpp:2369 +#: ../src/verbs.cpp:2424 msgid "Relink the selected clones to the object currently on the clipboard" msgstr "" "Перез'єднати вибрані клони з об'єктом, який зараз перебуває у буфері обміну " "даними" -#: ../src/verbs.cpp:2370 +#: ../src/verbs.cpp:2425 msgid "Select _Original" msgstr "Позначити о_ригінал" -#: ../src/verbs.cpp:2371 +#: ../src/verbs.cpp:2426 msgid "Select the object to which the selected clone is linked" msgstr "Позначити об'єкт, з яким пов'язаний вибраний клон" -#: ../src/verbs.cpp:2372 +#: ../src/verbs.cpp:2427 msgid "Clone original path (LPE)" msgstr "Клонувати початковий контур (геометрично)" -#: ../src/verbs.cpp:2373 +#: ../src/verbs.cpp:2428 msgid "" "Creates a new path, applies the Clone original LPE, and refers it to the " "selected path" @@ -22647,19 +22579,19 @@ msgstr "" "Створює новий контур, застосовує геометричне перетворення клонування " "початкового контуру і пов'язує його з вибраним контуром" -#: ../src/verbs.cpp:2374 +#: ../src/verbs.cpp:2429 msgid "Objects to _Marker" msgstr "Об'єкти у _маркер" -#: ../src/verbs.cpp:2375 +#: ../src/verbs.cpp:2430 msgid "Convert selection to a line marker" msgstr "Перетворити вибране на маркер лінії" -#: ../src/verbs.cpp:2376 +#: ../src/verbs.cpp:2431 msgid "Objects to Gu_ides" msgstr "Об'єкти у на_прямні" -#: ../src/verbs.cpp:2377 +#: ../src/verbs.cpp:2432 msgid "" "Convert selected objects to a collection of guidelines aligned with their " "edges" @@ -22667,92 +22599,92 @@ msgstr "" "Перетворити вибрані об'єкти на декілька напрямних, вирівняних за краями " "об'єктів" -#: ../src/verbs.cpp:2378 +#: ../src/verbs.cpp:2433 msgid "Objects to Patter_n" msgstr "О_б'єкти у візерунок" -#: ../src/verbs.cpp:2379 +#: ../src/verbs.cpp:2434 msgid "Convert selection to a rectangle with tiled pattern fill" msgstr "Перетворити позначені об'єкти у прямокутник, заповнений візерунком" -#: ../src/verbs.cpp:2380 +#: ../src/verbs.cpp:2435 msgid "Pattern to _Objects" msgstr "_Візерунок у об'єкти" -#: ../src/verbs.cpp:2381 +#: ../src/verbs.cpp:2436 msgid "Extract objects from a tiled pattern fill" msgstr "Витягнути об'єкти з текстурного заповнення" -#: ../src/verbs.cpp:2382 +#: ../src/verbs.cpp:2437 msgid "Group to Symbol" msgstr "Групу на символ" -#: ../src/verbs.cpp:2383 +#: ../src/verbs.cpp:2438 msgid "Convert group to a symbol" msgstr "Перетворити групу на символ" -#: ../src/verbs.cpp:2384 +#: ../src/verbs.cpp:2439 msgid "Symbol to Group" msgstr "Символ у групу" -#: ../src/verbs.cpp:2385 +#: ../src/verbs.cpp:2440 msgid "Extract group from a symbol" msgstr "Видобути групу з символу" -#: ../src/verbs.cpp:2386 +#: ../src/verbs.cpp:2441 msgid "Clea_r All" msgstr "О_чистити все" -#: ../src/verbs.cpp:2387 +#: ../src/verbs.cpp:2442 msgid "Delete all objects from document" msgstr "Вилучити усі об'єкти з документа" -#: ../src/verbs.cpp:2388 +#: ../src/verbs.cpp:2443 msgid "Select Al_l" msgstr "Поз_начити все" -#: ../src/verbs.cpp:2389 +#: ../src/verbs.cpp:2444 msgid "Select all objects or all nodes" msgstr "Позначити всі об'єкти чи всі вузли" -#: ../src/verbs.cpp:2390 +#: ../src/verbs.cpp:2445 msgid "Select All in All La_yers" msgstr "Позначити все в усіх _шарах" -#: ../src/verbs.cpp:2391 +#: ../src/verbs.cpp:2446 msgid "Select all objects in all visible and unlocked layers" msgstr "Позначити усі об'єкти в усіх видимих та розблокованих шарах" -#: ../src/verbs.cpp:2392 +#: ../src/verbs.cpp:2447 msgid "Fill _and Stroke" msgstr "Заповнення _та штрих" -#: ../src/verbs.cpp:2393 +#: ../src/verbs.cpp:2448 msgid "" "Select all objects with the same fill and stroke as the selected objects" msgstr "Позначити всі об'єкти з тим самим заповненням та штрихом" -#: ../src/verbs.cpp:2394 +#: ../src/verbs.cpp:2449 msgid "_Fill Color" msgstr "За_повнити кольором" -#: ../src/verbs.cpp:2395 +#: ../src/verbs.cpp:2450 msgid "Select all objects with the same fill as the selected objects" msgstr "Позначити всі об'єкти з тим самим заповненням" -#: ../src/verbs.cpp:2396 +#: ../src/verbs.cpp:2451 msgid "_Stroke Color" msgstr "Колір _штриха" -#: ../src/verbs.cpp:2397 +#: ../src/verbs.cpp:2452 msgid "Select all objects with the same stroke as the selected objects" msgstr "Позначити всі об'єкти з тим самим штрихом" -#: ../src/verbs.cpp:2398 +#: ../src/verbs.cpp:2453 msgid "Stroke St_yle" msgstr "С_тиль штриха" -#: ../src/verbs.cpp:2399 +#: ../src/verbs.cpp:2454 msgid "" "Select all objects with the same stroke style (width, dash, markers) as the " "selected objects" @@ -22760,11 +22692,11 @@ msgstr "" "Позначити всі об'єкти з тим самим типом штриха (товщиною, рисками, " "позначками)" -#: ../src/verbs.cpp:2400 +#: ../src/verbs.cpp:2455 msgid "_Object Type" msgstr "Тип _об'єкта" -#: ../src/verbs.cpp:2401 +#: ../src/verbs.cpp:2456 msgid "" "Select all objects with the same object type (rect, arc, text, path, bitmap " "etc) as the selected objects" @@ -22772,152 +22704,152 @@ msgstr "" "Позначити всі об'єкти з тим самим типом об'єкта (прямокутник, дуга, текст, " "контур, растрове зображення тощо), що і позначені об'єкти" -#: ../src/verbs.cpp:2402 +#: ../src/verbs.cpp:2457 msgid "In_vert Selection" msgstr "_Інвертувати позначення" -#: ../src/verbs.cpp:2403 +#: ../src/verbs.cpp:2458 msgid "Invert selection (unselect what is selected and select everything else)" msgstr "" "Інвертувати позначення (зняти позначення з позначеного та позначити решту)" -#: ../src/verbs.cpp:2404 +#: ../src/verbs.cpp:2459 msgid "Invert in All Layers" msgstr "Інвертувати в усіх шарах" -#: ../src/verbs.cpp:2405 +#: ../src/verbs.cpp:2460 msgid "Invert selection in all visible and unlocked layers" msgstr "Інвертувати позначення в усіх видимих та незаблокованих шарах" -#: ../src/verbs.cpp:2406 +#: ../src/verbs.cpp:2461 msgid "Select Next" msgstr "Обрати наступний" -#: ../src/verbs.cpp:2407 +#: ../src/verbs.cpp:2462 msgid "Select next object or node" msgstr "Обрати наступний об'єкт або вузол" -#: ../src/verbs.cpp:2408 +#: ../src/verbs.cpp:2463 msgid "Select Previous" msgstr "Обрати попереднє" -#: ../src/verbs.cpp:2409 +#: ../src/verbs.cpp:2464 msgid "Select previous object or node" msgstr "Обрати попередній об'єкт чи вузол" -#: ../src/verbs.cpp:2410 +#: ../src/verbs.cpp:2465 msgid "D_eselect" msgstr "Зн_яти позначення" -#: ../src/verbs.cpp:2411 +#: ../src/verbs.cpp:2466 msgid "Deselect any selected objects or nodes" msgstr "Зняти позначення з усіх об'єктів чи вузлів" -#: ../src/verbs.cpp:2412 -msgid "Create _Guides Around the Page" -msgstr "Створити _напрямні навколо сторінки" - -#: ../src/verbs.cpp:2413 ../src/verbs.cpp:2415 +#: ../src/verbs.cpp:2468 ../src/verbs.cpp:2470 msgid "Create four guides aligned with the page borders" msgstr "Створити чотири напрямні за краями сторінки" -#: ../src/verbs.cpp:2416 +#: ../src/verbs.cpp:2469 +msgid "Create _Guides Around the Page" +msgstr "Створити _напрямні навколо сторінки" + +#: ../src/verbs.cpp:2471 msgid "Next path effect parameter" msgstr "Наступний параметр ефекту контуру" -#: ../src/verbs.cpp:2417 +#: ../src/verbs.cpp:2472 msgid "Show next editable path effect parameter" msgstr "Показати наступний придатний до редагування параметр ефекту контуру" #. Selection -#: ../src/verbs.cpp:2420 +#: ../src/verbs.cpp:2475 msgid "Raise to _Top" msgstr "Підняти на п_ередній план" -#: ../src/verbs.cpp:2421 +#: ../src/verbs.cpp:2476 msgid "Raise selection to top" msgstr "Підняти позначені об'єкти на передній план" -#: ../src/verbs.cpp:2422 +#: ../src/verbs.cpp:2477 msgid "Lower to _Bottom" msgstr "Опустити на з_адній план" -#: ../src/verbs.cpp:2423 +#: ../src/verbs.cpp:2478 msgid "Lower selection to bottom" msgstr "Опустити позначені об'єкти на задній план" -#: ../src/verbs.cpp:2424 +#: ../src/verbs.cpp:2479 msgid "_Raise" msgstr "_Підняти" -#: ../src/verbs.cpp:2425 +#: ../src/verbs.cpp:2480 msgid "Raise selection one step" msgstr "Підняти позначені об'єкти на один рівень" -#: ../src/verbs.cpp:2426 +#: ../src/verbs.cpp:2481 msgid "_Lower" msgstr "_Опустити" -#: ../src/verbs.cpp:2427 +#: ../src/verbs.cpp:2482 msgid "Lower selection one step" msgstr "Опустити позначені об'єкти на один рівень" -#: ../src/verbs.cpp:2429 +#: ../src/verbs.cpp:2484 msgid "Group selected objects" msgstr "Згрупувати позначені об'єкти" -#: ../src/verbs.cpp:2431 +#: ../src/verbs.cpp:2486 msgid "Ungroup selected groups" msgstr "Розгрупувати позначені групи" -#: ../src/verbs.cpp:2433 +#: ../src/verbs.cpp:2488 msgid "_Put on Path" msgstr "_Розмістити по контуру" -#: ../src/verbs.cpp:2435 +#: ../src/verbs.cpp:2490 msgid "_Remove from Path" msgstr "Відокрем_ити від контуру" -#: ../src/verbs.cpp:2437 +#: ../src/verbs.cpp:2492 msgid "Remove Manual _Kerns" msgstr "Вилучити ручний _міжлітерний інтервал" #. TRANSLATORS: "glyph": An image used in the visual representation of characters; #. roughly speaking, how a character looks. A font is a set of glyphs. -#: ../src/verbs.cpp:2440 +#: ../src/verbs.cpp:2495 msgid "Remove all manual kerns and glyph rotations from a text object" msgstr "" "Вилучити з текстового об'єкта усі додані вручну повороти кернів та гліфів" -#: ../src/verbs.cpp:2442 +#: ../src/verbs.cpp:2497 msgid "_Union" msgstr "С_ума" -#: ../src/verbs.cpp:2443 +#: ../src/verbs.cpp:2498 msgid "Create union of selected paths" msgstr "Створення об'єднання позначених контурів" -#: ../src/verbs.cpp:2444 +#: ../src/verbs.cpp:2499 msgid "_Intersection" msgstr "_Перетин" -#: ../src/verbs.cpp:2445 +#: ../src/verbs.cpp:2500 msgid "Create intersection of selected paths" msgstr "Створення перетину позначених контурів" -#: ../src/verbs.cpp:2446 +#: ../src/verbs.cpp:2501 msgid "_Difference" msgstr "Р_ізниця" -#: ../src/verbs.cpp:2447 +#: ../src/verbs.cpp:2502 msgid "Create difference of selected paths (bottom minus top)" msgstr "Створення різниці позначених контурів (низ мінус верх)" -#: ../src/verbs.cpp:2448 +#: ../src/verbs.cpp:2503 msgid "E_xclusion" msgstr "Виключне _АБО" -#: ../src/verbs.cpp:2449 +#: ../src/verbs.cpp:2504 msgid "" "Create exclusive OR of selected paths (those parts that belong to only one " "path)" @@ -22925,21 +22857,21 @@ msgstr "" "Створити контур шляхом виключного АБО з позначених контурів (ті частини, що " "належать тільки одному з контурів)" -#: ../src/verbs.cpp:2450 +#: ../src/verbs.cpp:2505 msgid "Di_vision" msgstr "_Ділення" -#: ../src/verbs.cpp:2451 +#: ../src/verbs.cpp:2506 msgid "Cut the bottom path into pieces" msgstr "Розрізати нижній контур верхнім на частини" #. TRANSLATORS: "to cut a path" is not the same as "to break a path apart" - see the #. Advanced tutorial for more info -#: ../src/verbs.cpp:2454 +#: ../src/verbs.cpp:2509 msgid "Cut _Path" msgstr "Розрізати _контур" -#: ../src/verbs.cpp:2455 +#: ../src/verbs.cpp:2510 msgid "Cut the bottom path's stroke into pieces, removing fill" msgstr "" "Розрізати штрих нижнього контуру верхнім на частини, з вилученням заповнення" @@ -22947,347 +22879,347 @@ msgstr "" #. TRANSLATORS: "outset": expand a shape by offsetting the object's path, #. i.e. by displacing it perpendicular to the path in each point. #. See also the Advanced Tutorial for explanation. -#: ../src/verbs.cpp:2459 +#: ../src/verbs.cpp:2514 msgid "Outs_et" msgstr "Ро_зтягнути" -#: ../src/verbs.cpp:2460 +#: ../src/verbs.cpp:2515 msgid "Outset selected paths" msgstr "Розтягнути позначені контури" -#: ../src/verbs.cpp:2462 +#: ../src/verbs.cpp:2517 msgid "O_utset Path by 1 px" msgstr "Р_озтягнути на 1 точку" -#: ../src/verbs.cpp:2463 +#: ../src/verbs.cpp:2518 msgid "Outset selected paths by 1 px" msgstr "Розтягнути позначені контури на 1 точку" -#: ../src/verbs.cpp:2465 +#: ../src/verbs.cpp:2520 msgid "O_utset Path by 10 px" msgstr "Р_озтягнути на 10 точок" -#: ../src/verbs.cpp:2466 +#: ../src/verbs.cpp:2521 msgid "Outset selected paths by 10 px" msgstr "Розтягнути позначені контури на 10 точок" #. TRANSLATORS: "inset": contract a shape by offsetting the object's path, #. i.e. by displacing it perpendicular to the path in each point. #. See also the Advanced Tutorial for explanation. -#: ../src/verbs.cpp:2470 +#: ../src/verbs.cpp:2525 msgid "I_nset" msgstr "В_тягнути" -#: ../src/verbs.cpp:2471 +#: ../src/verbs.cpp:2526 msgid "Inset selected paths" msgstr "Втягнути позначені контури" -#: ../src/verbs.cpp:2473 +#: ../src/verbs.cpp:2528 msgid "I_nset Path by 1 px" msgstr "Вт_ягнути контур на 1 точку" -#: ../src/verbs.cpp:2474 +#: ../src/verbs.cpp:2529 msgid "Inset selected paths by 1 px" msgstr "Втягнути позначені контури на 1 точку" -#: ../src/verbs.cpp:2476 +#: ../src/verbs.cpp:2531 msgid "I_nset Path by 10 px" msgstr "Вт_ягнути контур на 10 точок" -#: ../src/verbs.cpp:2477 +#: ../src/verbs.cpp:2532 msgid "Inset selected paths by 10 px" msgstr "Втягнути позначені контури на 10 точок" -#: ../src/verbs.cpp:2479 +#: ../src/verbs.cpp:2534 msgid "D_ynamic Offset" msgstr "Д_инамічний відступ" -#: ../src/verbs.cpp:2479 +#: ../src/verbs.cpp:2534 msgid "Create a dynamic offset object" msgstr "" "Створити об'єкт, втягування/розтягування якого можна змінювати динамічно" -#: ../src/verbs.cpp:2481 +#: ../src/verbs.cpp:2536 msgid "_Linked Offset" msgstr "Зв'_язане втягування" -#: ../src/verbs.cpp:2482 +#: ../src/verbs.cpp:2537 msgid "Create a dynamic offset object linked to the original path" msgstr "" "Створити втягування/розтягування, динамічно пов'язане з початковим контуром" -#: ../src/verbs.cpp:2484 +#: ../src/verbs.cpp:2539 msgid "_Stroke to Path" msgstr "_Штрих у контур" -#: ../src/verbs.cpp:2485 +#: ../src/verbs.cpp:2540 msgid "Convert selected object's stroke to paths" msgstr "Перетворити штрих позначеного об'єкта на контури" -#: ../src/verbs.cpp:2486 +#: ../src/verbs.cpp:2541 msgid "Si_mplify" msgstr "_Спростити" -#: ../src/verbs.cpp:2487 +#: ../src/verbs.cpp:2542 msgid "Simplify selected paths (remove extra nodes)" msgstr "Спростити позначені контури вилученням зайвих вузлів" -#: ../src/verbs.cpp:2488 +#: ../src/verbs.cpp:2543 msgid "_Reverse" msgstr "Роз_вернути" -#: ../src/verbs.cpp:2489 +#: ../src/verbs.cpp:2544 msgid "Reverse the direction of selected paths (useful for flipping markers)" msgstr "" "Змінити напрямок позначених контурів на протилежний (корисно для " "віддзеркалення маркерів)" -#: ../src/verbs.cpp:2492 +#: ../src/verbs.cpp:2547 msgid "Create one or more paths from a bitmap by tracing it" msgstr "" "Створення одного або більше контурів з растрового файла шляхом трасування" -#: ../src/verbs.cpp:2493 +#: ../src/verbs.cpp:2548 msgid "Make a _Bitmap Copy" msgstr "З_робити растрову копію" -#: ../src/verbs.cpp:2494 +#: ../src/verbs.cpp:2549 msgid "Export selection to a bitmap and insert it into document" msgstr "Експортувати позначені об'єкти у растр та вставити його у документ" -#: ../src/verbs.cpp:2495 +#: ../src/verbs.cpp:2550 msgid "_Combine" msgstr "Об'_єднати" -#: ../src/verbs.cpp:2496 +#: ../src/verbs.cpp:2551 msgid "Combine several paths into one" msgstr "Об'єднати декілька контурів у один" #. TRANSLATORS: "to cut a path" is not the same as "to break a path apart" - see the #. Advanced tutorial for more info -#: ../src/verbs.cpp:2499 +#: ../src/verbs.cpp:2554 msgid "Break _Apart" msgstr "_Розділити" -#: ../src/verbs.cpp:2500 +#: ../src/verbs.cpp:2555 msgid "Break selected paths into subpaths" msgstr "Розділити позначені контури на частини" -#: ../src/verbs.cpp:2501 +#: ../src/verbs.cpp:2556 msgid "Ro_ws and Columns..." msgstr "Р_ядки і стовпчики…" -#: ../src/verbs.cpp:2502 +#: ../src/verbs.cpp:2557 msgid "Arrange selected objects in a table" msgstr "Компонувати позначені об'єкти у формі таблиці" #. Layer -#: ../src/verbs.cpp:2504 +#: ../src/verbs.cpp:2559 msgid "_Add Layer..." msgstr "_Додати шар…" -#: ../src/verbs.cpp:2505 +#: ../src/verbs.cpp:2560 msgid "Create a new layer" msgstr "Створити новий шар" -#: ../src/verbs.cpp:2506 +#: ../src/verbs.cpp:2561 msgid "Re_name Layer..." msgstr "Пере_йменувати шар…" -#: ../src/verbs.cpp:2507 +#: ../src/verbs.cpp:2562 msgid "Rename the current layer" msgstr "Перейменувати поточний шар" -#: ../src/verbs.cpp:2508 +#: ../src/verbs.cpp:2563 msgid "Switch to Layer Abov_e" msgstr "Перейти на шар _вище" -#: ../src/verbs.cpp:2509 +#: ../src/verbs.cpp:2564 msgid "Switch to the layer above the current" msgstr "Перейти на шар, що знаходиться вище від поточного" -#: ../src/verbs.cpp:2510 +#: ../src/verbs.cpp:2565 msgid "Switch to Layer Belo_w" msgstr "Перейти на шар _нижче" -#: ../src/verbs.cpp:2511 +#: ../src/verbs.cpp:2566 msgid "Switch to the layer below the current" msgstr "Перейти на шар, що знаходиться нижче від поточного" -#: ../src/verbs.cpp:2512 +#: ../src/verbs.cpp:2567 msgid "Move Selection to Layer Abo_ve" msgstr "Перемістити позначені об'єкти на шар ви_ще" -#: ../src/verbs.cpp:2513 +#: ../src/verbs.cpp:2568 msgid "Move selection to the layer above the current" msgstr "Перемістити на шар, що знаходиться над поточним" -#: ../src/verbs.cpp:2514 +#: ../src/verbs.cpp:2569 msgid "Move Selection to Layer Bel_ow" msgstr "Перемістити на шар ни_жче" -#: ../src/verbs.cpp:2515 +#: ../src/verbs.cpp:2570 msgid "Move selection to the layer below the current" msgstr "Перемістити на шар, що знаходиться під поточним" -#: ../src/verbs.cpp:2516 +#: ../src/verbs.cpp:2571 msgid "Move Selection to Layer..." msgstr "Пересунути позначене до шару…" -#: ../src/verbs.cpp:2518 +#: ../src/verbs.cpp:2573 msgid "Layer to _Top" msgstr "Підняти шар до_гори" -#: ../src/verbs.cpp:2519 +#: ../src/verbs.cpp:2574 msgid "Raise the current layer to the top" msgstr "Підняти поточний шар догори" -#: ../src/verbs.cpp:2520 +#: ../src/verbs.cpp:2575 msgid "Layer to _Bottom" msgstr "Опустити шар в _основу" -#: ../src/verbs.cpp:2521 +#: ../src/verbs.cpp:2576 msgid "Lower the current layer to the bottom" msgstr "Опустити поточний шар на найнижчий рівень" -#: ../src/verbs.cpp:2522 +#: ../src/verbs.cpp:2577 msgid "_Raise Layer" msgstr "_Підняти шар" -#: ../src/verbs.cpp:2523 +#: ../src/verbs.cpp:2578 msgid "Raise the current layer" msgstr "Підняти поточний шар" -#: ../src/verbs.cpp:2524 +#: ../src/verbs.cpp:2579 msgid "_Lower Layer" msgstr "_Опустити шар" -#: ../src/verbs.cpp:2525 +#: ../src/verbs.cpp:2580 msgid "Lower the current layer" msgstr "Опустити поточний шар" -#: ../src/verbs.cpp:2526 +#: ../src/verbs.cpp:2581 msgid "D_uplicate Current Layer" msgstr "Д_ублювати поточний шар" -#: ../src/verbs.cpp:2527 +#: ../src/verbs.cpp:2582 msgid "Duplicate an existing layer" msgstr "Дублювати поточний шар" -#: ../src/verbs.cpp:2528 +#: ../src/verbs.cpp:2583 msgid "_Delete Current Layer" msgstr "В_илучити поточний шар" -#: ../src/verbs.cpp:2529 +#: ../src/verbs.cpp:2584 msgid "Delete the current layer" msgstr "Вилучити поточний шар" -#: ../src/verbs.cpp:2530 +#: ../src/verbs.cpp:2585 msgid "_Show/hide other layers" msgstr "_Показати або сховати інші шари" -#: ../src/verbs.cpp:2531 +#: ../src/verbs.cpp:2586 msgid "Solo the current layer" msgstr "Виокремити поточний шар" -#: ../src/verbs.cpp:2532 +#: ../src/verbs.cpp:2587 msgid "_Show all layers" msgstr "По_казати всі шари" -#: ../src/verbs.cpp:2533 +#: ../src/verbs.cpp:2588 msgid "Show all the layers" msgstr "Показати всі шари" -#: ../src/verbs.cpp:2534 +#: ../src/verbs.cpp:2589 msgid "_Hide all layers" msgstr "При_ховати всі шари" -#: ../src/verbs.cpp:2535 +#: ../src/verbs.cpp:2590 msgid "Hide all the layers" msgstr "Приховати всі шари" -#: ../src/verbs.cpp:2536 +#: ../src/verbs.cpp:2591 msgid "_Lock all layers" msgstr "За_блокувати всі шари" -#: ../src/verbs.cpp:2537 +#: ../src/verbs.cpp:2592 msgid "Lock all the layers" msgstr "Заблокувати всі шари" -#: ../src/verbs.cpp:2538 +#: ../src/verbs.cpp:2593 msgid "Lock/Unlock _other layers" msgstr "Заблокувати чи розблокувати ін_ші шари" -#: ../src/verbs.cpp:2539 +#: ../src/verbs.cpp:2594 msgid "Lock all the other layers" msgstr "Заблокувати всі інші шари" -#: ../src/verbs.cpp:2540 +#: ../src/verbs.cpp:2595 msgid "_Unlock all layers" msgstr "_Розблокувати всі шари" -#: ../src/verbs.cpp:2541 +#: ../src/verbs.cpp:2596 msgid "Unlock all the layers" msgstr "Розблокувати всі шари" -#: ../src/verbs.cpp:2542 +#: ../src/verbs.cpp:2597 msgid "_Lock/Unlock Current Layer" msgstr "За_блокувати чи розблокувати поточний шар" -#: ../src/verbs.cpp:2543 +#: ../src/verbs.cpp:2598 msgid "Toggle lock on current layer" msgstr "Заблокувати або розблокувати поточний шар" -#: ../src/verbs.cpp:2544 +#: ../src/verbs.cpp:2599 msgid "_Show/hide Current Layer" msgstr "_Показати або сховати поточний шар" -#: ../src/verbs.cpp:2545 +#: ../src/verbs.cpp:2600 msgid "Toggle visibility of current layer" msgstr "Увімкнути/Вимкнути видимість поточного шару" #. Object -#: ../src/verbs.cpp:2548 +#: ../src/verbs.cpp:2603 msgid "Rotate _90° CW" msgstr "Обернути на _90° за годинниковою стрілкою" #. This is shared between tooltips and statusbar, so they #. must use UTF-8, not HTML entities for special characters. -#: ../src/verbs.cpp:2551 +#: ../src/verbs.cpp:2606 msgid "Rotate selection 90° clockwise" msgstr "Обернути позначені об'єкти на 90° за годинниковою стрілкою" -#: ../src/verbs.cpp:2552 +#: ../src/verbs.cpp:2607 msgid "Rotate 9_0° CCW" msgstr "Обернути на 9_0° проти годинникової стрілки" #. This is shared between tooltips and statusbar, so they #. must use UTF-8, not HTML entities for special characters. -#: ../src/verbs.cpp:2555 +#: ../src/verbs.cpp:2610 msgid "Rotate selection 90° counter-clockwise" msgstr "Обернути позначені об'єкти на 90° проти годинникової стрілки" -#: ../src/verbs.cpp:2556 +#: ../src/verbs.cpp:2611 msgid "Remove _Transformations" msgstr "Прибрати _трансформацію" -#: ../src/verbs.cpp:2557 +#: ../src/verbs.cpp:2612 msgid "Remove transformations from object" msgstr "Прибрати трансформації з об'єкта" -#: ../src/verbs.cpp:2558 +#: ../src/verbs.cpp:2613 msgid "_Object to Path" msgstr "_Об'єкт у контур" -#: ../src/verbs.cpp:2559 +#: ../src/verbs.cpp:2614 msgid "Convert selected object to path" msgstr "Перетворити позначений об'єкт на контур" -#: ../src/verbs.cpp:2560 +#: ../src/verbs.cpp:2615 msgid "_Flow into Frame" msgstr "_Огорнути в рамку" -#: ../src/verbs.cpp:2561 +#: ../src/verbs.cpp:2616 msgid "" "Put text into a frame (path or shape), creating a flowed text linked to the " "frame object" @@ -23295,742 +23227,742 @@ msgstr "" "Вкласти текст у рамку (контур чи форму), створивши контурний текст " "прив'язаний до об'єкта рамки" -#: ../src/verbs.cpp:2562 +#: ../src/verbs.cpp:2617 msgid "_Unflow" msgstr "_Вийняти з рамки" -#: ../src/verbs.cpp:2563 +#: ../src/verbs.cpp:2618 msgid "Remove text from frame (creates a single-line text object)" msgstr "Вийняти тест з рамки, створивши звичайний тестовий об'єкт в один рядок" -#: ../src/verbs.cpp:2564 +#: ../src/verbs.cpp:2619 msgid "_Convert to Text" msgstr "_Перетворити у текст" -#: ../src/verbs.cpp:2565 +#: ../src/verbs.cpp:2620 msgid "Convert flowed text to regular text object (preserves appearance)" msgstr "Перетворити контурний текст у звичайний текст (із збереженням вигляду)" -#: ../src/verbs.cpp:2567 +#: ../src/verbs.cpp:2622 msgid "Flip _Horizontal" msgstr "Віддзеркалити гор_изонтально" -#: ../src/verbs.cpp:2567 +#: ../src/verbs.cpp:2622 msgid "Flip selected objects horizontally" msgstr "Віддзеркалити позначені об'єкти горизонтально" -#: ../src/verbs.cpp:2570 +#: ../src/verbs.cpp:2625 msgid "Flip _Vertical" msgstr "Віддзеркалити _вертикально" -#: ../src/verbs.cpp:2570 +#: ../src/verbs.cpp:2625 msgid "Flip selected objects vertically" msgstr "Віддзеркалити позначені об'єкти вертикально" -#: ../src/verbs.cpp:2573 +#: ../src/verbs.cpp:2628 msgid "Apply mask to selection (using the topmost object as mask)" msgstr "" "Застосувати маску до позначених об'єктів (використовуючи найвищий об'єкт як " "маску)" -#: ../src/verbs.cpp:2575 +#: ../src/verbs.cpp:2630 msgid "Edit mask" msgstr "Змінити маску" -#: ../src/verbs.cpp:2576 ../src/verbs.cpp:2582 +#: ../src/verbs.cpp:2631 ../src/verbs.cpp:2637 msgid "_Release" msgstr "_Скинути" -#: ../src/verbs.cpp:2577 +#: ../src/verbs.cpp:2632 msgid "Remove mask from selection" msgstr "Вилучити маску з позначеного" -#: ../src/verbs.cpp:2579 +#: ../src/verbs.cpp:2634 msgid "" "Apply clipping path to selection (using the topmost object as clipping path)" msgstr "" "Застосувати контур-обгортку до позначених об'єктів (використовуючи найвищий " "об'єкт як контур-обгортку)" -#: ../src/verbs.cpp:2581 +#: ../src/verbs.cpp:2636 msgid "Edit clipping path" msgstr "Змінити контур вирізання" -#: ../src/verbs.cpp:2583 +#: ../src/verbs.cpp:2638 msgid "Remove clipping path from selection" msgstr "Вилучити контур-обгортку з позначених об'єктів'" #. Tools -#: ../src/verbs.cpp:2586 +#: ../src/verbs.cpp:2641 msgctxt "ContextVerb" msgid "Select" msgstr "Позначення" -#: ../src/verbs.cpp:2587 +#: ../src/verbs.cpp:2642 msgid "Select and transform objects" msgstr "Позначення та трансформація об'єктів" -#: ../src/verbs.cpp:2588 +#: ../src/verbs.cpp:2643 msgctxt "ContextVerb" msgid "Node Edit" msgstr "Редактор вузлів" -#: ../src/verbs.cpp:2589 +#: ../src/verbs.cpp:2644 msgid "Edit paths by nodes" msgstr "Редагування контурів за вузлами" -#: ../src/verbs.cpp:2590 +#: ../src/verbs.cpp:2645 msgctxt "ContextVerb" msgid "Tweak" msgstr "Корекція" -#: ../src/verbs.cpp:2591 +#: ../src/verbs.cpp:2646 msgid "Tweak objects by sculpting or painting" msgstr "Коригувати об'єкти за допомогою профілювання або розфарбовування" -#: ../src/verbs.cpp:2592 +#: ../src/verbs.cpp:2647 msgctxt "ContextVerb" msgid "Spray" msgstr "Розкидання" -#: ../src/verbs.cpp:2593 +#: ../src/verbs.cpp:2648 msgid "Spray objects by sculpting or painting" msgstr "Розкидати об'єкти за допомогою профілювання або розфарбовування" -#: ../src/verbs.cpp:2594 +#: ../src/verbs.cpp:2649 msgctxt "ContextVerb" msgid "Rectangle" msgstr "Прямокутник" -#: ../src/verbs.cpp:2595 +#: ../src/verbs.cpp:2650 msgid "Create rectangles and squares" msgstr "Створення прямокутників та квадратів" -#: ../src/verbs.cpp:2596 +#: ../src/verbs.cpp:2651 msgctxt "ContextVerb" msgid "3D Box" msgstr "Просторовий об'єкт" -#: ../src/verbs.cpp:2597 +#: ../src/verbs.cpp:2652 msgid "Create 3D boxes" msgstr "Створити тривимірні об'єкти" -#: ../src/verbs.cpp:2598 +#: ../src/verbs.cpp:2653 msgctxt "ContextVerb" msgid "Ellipse" msgstr "Еліпс" -#: ../src/verbs.cpp:2599 +#: ../src/verbs.cpp:2654 msgid "Create circles, ellipses, and arcs" msgstr "Створення кіл, еліпсів та дуг" -#: ../src/verbs.cpp:2600 +#: ../src/verbs.cpp:2655 msgctxt "ContextVerb" msgid "Star" msgstr "Зірка" -#: ../src/verbs.cpp:2601 +#: ../src/verbs.cpp:2656 msgid "Create stars and polygons" msgstr "Створення зірок та багатокутників" -#: ../src/verbs.cpp:2602 +#: ../src/verbs.cpp:2657 msgctxt "ContextVerb" msgid "Spiral" msgstr "Спіраль" -#: ../src/verbs.cpp:2603 +#: ../src/verbs.cpp:2658 msgid "Create spirals" msgstr "Створення спіралей" -#: ../src/verbs.cpp:2604 +#: ../src/verbs.cpp:2659 msgctxt "ContextVerb" msgid "Pencil" msgstr "Олівець" -#: ../src/verbs.cpp:2605 +#: ../src/verbs.cpp:2660 msgid "Draw freehand lines" msgstr "Малювання довільних контурів" -#: ../src/verbs.cpp:2606 +#: ../src/verbs.cpp:2661 msgctxt "ContextVerb" msgid "Pen" msgstr "Перо" -#: ../src/verbs.cpp:2607 +#: ../src/verbs.cpp:2662 msgid "Draw Bezier curves and straight lines" msgstr "Малювання кривих Безьє чи прямих ліній" -#: ../src/verbs.cpp:2608 +#: ../src/verbs.cpp:2663 msgctxt "ContextVerb" msgid "Calligraphy" msgstr "Каліграфія" -#: ../src/verbs.cpp:2609 +#: ../src/verbs.cpp:2664 msgid "Draw calligraphic or brush strokes" msgstr "Малювати каліграфічним пером або пензлем" -#: ../src/verbs.cpp:2611 +#: ../src/verbs.cpp:2666 msgid "Create and edit text objects" msgstr "Створення та зміна текстових об'єктів" -#: ../src/verbs.cpp:2612 +#: ../src/verbs.cpp:2667 msgctxt "ContextVerb" msgid "Gradient" msgstr "Градієнт" -#: ../src/verbs.cpp:2613 +#: ../src/verbs.cpp:2668 msgid "Create and edit gradients" msgstr "Створення та зміна градієнтів" -#: ../src/verbs.cpp:2614 +#: ../src/verbs.cpp:2669 msgctxt "ContextVerb" msgid "Mesh" msgstr "Сітка" -#: ../src/verbs.cpp:2615 +#: ../src/verbs.cpp:2670 msgid "Create and edit meshes" msgstr "Створення та зміна сіток" -#: ../src/verbs.cpp:2616 +#: ../src/verbs.cpp:2671 msgctxt "ContextVerb" msgid "Zoom" msgstr "Масштаб" -#: ../src/verbs.cpp:2617 +#: ../src/verbs.cpp:2672 msgid "Zoom in or out" msgstr "Змінити масштаб" -#: ../src/verbs.cpp:2619 +#: ../src/verbs.cpp:2674 msgid "Measurement tool" msgstr "Інструмент вимірювання" -#: ../src/verbs.cpp:2620 +#: ../src/verbs.cpp:2675 msgctxt "ContextVerb" msgid "Dropper" msgstr "Піпетка" -#: ../src/verbs.cpp:2621 ../src/widgets/sp-color-notebook.cpp:411 +#: ../src/verbs.cpp:2676 ../src/widgets/sp-color-notebook.cpp:411 msgid "Pick colors from image" msgstr "Взяти кольори з зображення" -#: ../src/verbs.cpp:2622 +#: ../src/verbs.cpp:2677 msgctxt "ContextVerb" msgid "Connector" msgstr "Лінія з'єднання" -#: ../src/verbs.cpp:2623 +#: ../src/verbs.cpp:2678 msgid "Create diagram connectors" msgstr "Створити лінії з'єднання на діаграмі" -#: ../src/verbs.cpp:2624 +#: ../src/verbs.cpp:2679 msgctxt "ContextVerb" msgid "Paint Bucket" msgstr "Відро з фарбою" -#: ../src/verbs.cpp:2625 +#: ../src/verbs.cpp:2680 msgid "Fill bounded areas" msgstr "Заповнити замкнені області" -#: ../src/verbs.cpp:2626 +#: ../src/verbs.cpp:2681 msgctxt "ContextVerb" msgid "LPE Edit" msgstr "Редагування геометричних побудов" -#: ../src/verbs.cpp:2627 +#: ../src/verbs.cpp:2682 msgid "Edit Path Effect parameters" msgstr "Змінити параметри ефекту контуру" -#: ../src/verbs.cpp:2628 +#: ../src/verbs.cpp:2683 msgctxt "ContextVerb" msgid "Eraser" msgstr "Гумка" -#: ../src/verbs.cpp:2629 +#: ../src/verbs.cpp:2684 msgid "Erase existing paths" msgstr "Витерти існуючі контури" -#: ../src/verbs.cpp:2630 +#: ../src/verbs.cpp:2685 msgctxt "ContextVerb" msgid "LPE Tool" msgstr "Інструмент геометричної побудови" -#: ../src/verbs.cpp:2631 +#: ../src/verbs.cpp:2686 msgid "Do geometric constructions" msgstr "Виконати геометричну побудову" #. Tool prefs -#: ../src/verbs.cpp:2633 +#: ../src/verbs.cpp:2688 msgid "Selector Preferences" msgstr "Параметри селектора" -#: ../src/verbs.cpp:2634 +#: ../src/verbs.cpp:2689 msgid "Open Preferences for the Selector tool" msgstr "Відкрити вікно параметрів Inkscape для інструмента позначення" -#: ../src/verbs.cpp:2635 +#: ../src/verbs.cpp:2690 msgid "Node Tool Preferences" msgstr "Параметри редактора вузлів" -#: ../src/verbs.cpp:2636 +#: ../src/verbs.cpp:2691 msgid "Open Preferences for the Node tool" msgstr "Відкрити вікно параметрів Inkscape для інструмента «Редактор вузлів»" -#: ../src/verbs.cpp:2637 +#: ../src/verbs.cpp:2692 msgid "Tweak Tool Preferences" msgstr "Параметри інструмента «Корекція»" -#: ../src/verbs.cpp:2638 +#: ../src/verbs.cpp:2693 msgid "Open Preferences for the Tweak tool" msgstr "Відкрити вікно параметрів Inkscape для інструмента «Корекція»" -#: ../src/verbs.cpp:2639 +#: ../src/verbs.cpp:2694 msgid "Spray Tool Preferences" msgstr "Параметри інструмента «Розкидання»" -#: ../src/verbs.cpp:2640 +#: ../src/verbs.cpp:2695 msgid "Open Preferences for the Spray tool" msgstr "Відкрити вікно параметрів для інструмента «Розкидання»" -#: ../src/verbs.cpp:2641 +#: ../src/verbs.cpp:2696 msgid "Rectangle Preferences" msgstr "Параметри прямокутника" -#: ../src/verbs.cpp:2642 +#: ../src/verbs.cpp:2697 msgid "Open Preferences for the Rectangle tool" msgstr "Відкрити вікно параметрів Inkscape для інструмента «Прямокутник»" -#: ../src/verbs.cpp:2643 +#: ../src/verbs.cpp:2698 msgid "3D Box Preferences" msgstr "Параметри просторового об'єкта" -#: ../src/verbs.cpp:2644 +#: ../src/verbs.cpp:2699 msgid "Open Preferences for the 3D Box tool" msgstr "" "Відкрити вікно параметрів Inkscape для інструмента «Просторовий об'єкт»" -#: ../src/verbs.cpp:2645 +#: ../src/verbs.cpp:2700 msgid "Ellipse Preferences" msgstr "Параметри еліпса" -#: ../src/verbs.cpp:2646 +#: ../src/verbs.cpp:2701 msgid "Open Preferences for the Ellipse tool" msgstr "Відкрити вікно параметрів Inkscape для інструмента «Еліпс»" -#: ../src/verbs.cpp:2647 +#: ../src/verbs.cpp:2702 msgid "Star Preferences" msgstr "Властивості зірки" -#: ../src/verbs.cpp:2648 +#: ../src/verbs.cpp:2703 msgid "Open Preferences for the Star tool" msgstr "Відкрити вікно параметрів Inkscape для інструмента «Зірка»" -#: ../src/verbs.cpp:2649 +#: ../src/verbs.cpp:2704 msgid "Spiral Preferences" msgstr "Властивості спіралі" -#: ../src/verbs.cpp:2650 +#: ../src/verbs.cpp:2705 msgid "Open Preferences for the Spiral tool" msgstr "Відкрити вікно параметрів Inkscape для інструмента «Спіраль»" -#: ../src/verbs.cpp:2651 +#: ../src/verbs.cpp:2706 msgid "Pencil Preferences" msgstr "Параметри олівця" -#: ../src/verbs.cpp:2652 +#: ../src/verbs.cpp:2707 msgid "Open Preferences for the Pencil tool" msgstr "Відкрити вікно параметрів Inkscape для інструмента «Олівець»" -#: ../src/verbs.cpp:2653 +#: ../src/verbs.cpp:2708 msgid "Pen Preferences" msgstr "Параметри пера" -#: ../src/verbs.cpp:2654 +#: ../src/verbs.cpp:2709 msgid "Open Preferences for the Pen tool" msgstr "Відкрити вікно параметрів Inkscape для інструмента «Перо»" -#: ../src/verbs.cpp:2655 +#: ../src/verbs.cpp:2710 msgid "Calligraphic Preferences" msgstr "Параметри каліграфічного пера" -#: ../src/verbs.cpp:2656 +#: ../src/verbs.cpp:2711 msgid "Open Preferences for the Calligraphy tool" msgstr "Відкрити вікно параметрів Inkscape для інструмента «Каліграфічне перо»" -#: ../src/verbs.cpp:2657 +#: ../src/verbs.cpp:2712 msgid "Text Preferences" msgstr "Параметри тексту" -#: ../src/verbs.cpp:2658 +#: ../src/verbs.cpp:2713 msgid "Open Preferences for the Text tool" msgstr "Відкрити вікно параметрів Inkscape для інструмента «Текст»" -#: ../src/verbs.cpp:2659 +#: ../src/verbs.cpp:2714 msgid "Gradient Preferences" msgstr "Параметри градієнта" -#: ../src/verbs.cpp:2660 +#: ../src/verbs.cpp:2715 msgid "Open Preferences for the Gradient tool" msgstr "Відкрити вікно параметрів Inkscape для інструмента «Градієнт»" -#: ../src/verbs.cpp:2661 +#: ../src/verbs.cpp:2716 msgid "Mesh Preferences" msgstr "Параметри сітки" -#: ../src/verbs.cpp:2662 +#: ../src/verbs.cpp:2717 msgid "Open Preferences for the Mesh tool" msgstr "Відкрити вікно параметрів для інструмента «Сітка»" -#: ../src/verbs.cpp:2663 +#: ../src/verbs.cpp:2718 msgid "Zoom Preferences" msgstr "Параметри масштабу" -#: ../src/verbs.cpp:2664 +#: ../src/verbs.cpp:2719 msgid "Open Preferences for the Zoom tool" msgstr "Відкрити вікно параметрів Inkscape для інструмента «Масштаб»" -#: ../src/verbs.cpp:2665 +#: ../src/verbs.cpp:2720 msgid "Measure Preferences" msgstr "Властивості вимірювання" -#: ../src/verbs.cpp:2666 +#: ../src/verbs.cpp:2721 msgid "Open Preferences for the Measure tool" msgstr "Відкрити вікно параметрів для інструмента «Вимірювання»" -#: ../src/verbs.cpp:2667 +#: ../src/verbs.cpp:2722 msgid "Dropper Preferences" msgstr "Параметри піпетки" -#: ../src/verbs.cpp:2668 +#: ../src/verbs.cpp:2723 msgid "Open Preferences for the Dropper tool" msgstr "Відкрити вікно параметрів Inkscape для інструмента «Піпетка»" -#: ../src/verbs.cpp:2669 +#: ../src/verbs.cpp:2724 msgid "Connector Preferences" msgstr "Параметри лінії з'єднання" -#: ../src/verbs.cpp:2670 +#: ../src/verbs.cpp:2725 msgid "Open Preferences for the Connector tool" msgstr "Відкрити вікно параметрів Inkscape для інструмента «Лінії з'єднання»" -#: ../src/verbs.cpp:2671 +#: ../src/verbs.cpp:2726 msgid "Paint Bucket Preferences" msgstr "Параметри відра з фарбою" -#: ../src/verbs.cpp:2672 +#: ../src/verbs.cpp:2727 msgid "Open Preferences for the Paint Bucket tool" msgstr "Відкрити параметри для інструмента «Відро з фарбою»" -#: ../src/verbs.cpp:2673 +#: ../src/verbs.cpp:2728 msgid "Eraser Preferences" msgstr "Властивості гумки" -#: ../src/verbs.cpp:2674 +#: ../src/verbs.cpp:2729 msgid "Open Preferences for the Eraser tool" msgstr "Відкрити вікно параметрів для інструмента «Гумка»" -#: ../src/verbs.cpp:2675 +#: ../src/verbs.cpp:2730 msgid "LPE Tool Preferences" msgstr "Параметри інструмента «Геометричні побудови»" -#: ../src/verbs.cpp:2676 +#: ../src/verbs.cpp:2731 msgid "Open Preferences for the LPETool tool" msgstr "Відкрити вікно параметрів для інструмента «Геометричні побудови»" #. Zoom/View -#: ../src/verbs.cpp:2678 +#: ../src/verbs.cpp:2733 msgid "Zoom In" msgstr "Збільшити" -#: ../src/verbs.cpp:2678 +#: ../src/verbs.cpp:2733 msgid "Zoom in" msgstr "Збільшити" -#: ../src/verbs.cpp:2679 +#: ../src/verbs.cpp:2734 msgid "Zoom Out" msgstr "Зменшити" -#: ../src/verbs.cpp:2679 +#: ../src/verbs.cpp:2734 msgid "Zoom out" msgstr "Зменшити" -#: ../src/verbs.cpp:2680 +#: ../src/verbs.cpp:2735 msgid "_Rulers" msgstr "_Лінійки" -#: ../src/verbs.cpp:2680 +#: ../src/verbs.cpp:2735 msgid "Show or hide the canvas rulers" msgstr "Показати або сховати лінійки полотна" -#: ../src/verbs.cpp:2681 +#: ../src/verbs.cpp:2736 msgid "Scroll_bars" msgstr "_Смуги гортання" -#: ../src/verbs.cpp:2681 +#: ../src/verbs.cpp:2736 msgid "Show or hide the canvas scrollbars" msgstr "Показати/Сховати смуги гортання полотна" -#: ../src/verbs.cpp:2682 +#: ../src/verbs.cpp:2737 msgid "_Grid" msgstr "С_ітка" -#: ../src/verbs.cpp:2682 +#: ../src/verbs.cpp:2737 msgid "Show or hide the grid" msgstr "Показати або сховати сітку" -#: ../src/verbs.cpp:2683 +#: ../src/verbs.cpp:2738 msgid "G_uides" msgstr "Нап_рямні" -#: ../src/verbs.cpp:2683 +#: ../src/verbs.cpp:2738 msgid "Show or hide guides (drag from a ruler to create a guide)" msgstr "" "Показати чи сховати напрямні (потягніть від лінійки для створення напрямної)" -#: ../src/verbs.cpp:2684 +#: ../src/verbs.cpp:2739 msgid "Enable snapping" msgstr "Дозволити прилипання" -#: ../src/verbs.cpp:2685 +#: ../src/verbs.cpp:2740 msgid "_Commands Bar" msgstr "Панель ко_манд" -#: ../src/verbs.cpp:2685 +#: ../src/verbs.cpp:2740 msgid "Show or hide the Commands bar (under the menu)" msgstr "Показати/сховати панель команд (під меню)" -#: ../src/verbs.cpp:2686 +#: ../src/verbs.cpp:2741 msgid "Sn_ap Controls Bar" msgstr "Панель керування при_липанням" -#: ../src/verbs.cpp:2686 +#: ../src/verbs.cpp:2741 msgid "Show or hide the snapping controls" msgstr "Показати або сховати інструменти керування прилипанням" -#: ../src/verbs.cpp:2687 +#: ../src/verbs.cpp:2742 msgid "T_ool Controls Bar" msgstr "Па_нель параметрів інструментів" -#: ../src/verbs.cpp:2687 +#: ../src/verbs.cpp:2742 msgid "Show or hide the Tool Controls bar" msgstr "Показати або сховати панель з параметрами інструментів" -#: ../src/verbs.cpp:2688 +#: ../src/verbs.cpp:2743 msgid "_Toolbox" msgstr "Панель _інструментів" -#: ../src/verbs.cpp:2688 +#: ../src/verbs.cpp:2743 msgid "Show or hide the main toolbox (on the left)" msgstr "Показати або сховати головну панель інструментів (зліва)" -#: ../src/verbs.cpp:2689 +#: ../src/verbs.cpp:2744 msgid "_Palette" msgstr "_Палітру" -#: ../src/verbs.cpp:2689 +#: ../src/verbs.cpp:2744 msgid "Show or hide the color palette" msgstr "Показати або сховати панель з палітрою кольорів" -#: ../src/verbs.cpp:2690 +#: ../src/verbs.cpp:2745 msgid "_Statusbar" msgstr "_Рядок стану" -#: ../src/verbs.cpp:2690 +#: ../src/verbs.cpp:2745 msgid "Show or hide the statusbar (at the bottom of the window)" msgstr "Показати або сховати рядок стану (внизу вікна)" -#: ../src/verbs.cpp:2691 +#: ../src/verbs.cpp:2746 msgid "Nex_t Zoom" msgstr "Н_аступний масштаб" -#: ../src/verbs.cpp:2691 +#: ../src/verbs.cpp:2746 msgid "Next zoom (from the history of zooms)" msgstr "Наступний масштаб (з історії зміни масштабу)" -#: ../src/verbs.cpp:2693 +#: ../src/verbs.cpp:2748 msgid "Pre_vious Zoom" msgstr "П_опередній масштаб" -#: ../src/verbs.cpp:2693 +#: ../src/verbs.cpp:2748 msgid "Previous zoom (from the history of zooms)" msgstr "Попередній масштаб (з історії зміни масштабу)" -#: ../src/verbs.cpp:2695 +#: ../src/verbs.cpp:2750 msgid "Zoom 1:_1" msgstr "Масштаб 1:_1" -#: ../src/verbs.cpp:2695 +#: ../src/verbs.cpp:2750 msgid "Zoom to 1:1" msgstr "Масштаб 1:1" -#: ../src/verbs.cpp:2697 +#: ../src/verbs.cpp:2752 msgid "Zoom 1:_2" msgstr "Масштаб 1:_2" -#: ../src/verbs.cpp:2697 +#: ../src/verbs.cpp:2752 msgid "Zoom to 1:2" msgstr "Масштаб 1:2" -#: ../src/verbs.cpp:2699 +#: ../src/verbs.cpp:2754 msgid "_Zoom 2:1" msgstr "Мас_штаб 2:1" -#: ../src/verbs.cpp:2699 +#: ../src/verbs.cpp:2754 msgid "Zoom to 2:1" msgstr "Масштаб 2:1" -#: ../src/verbs.cpp:2702 +#: ../src/verbs.cpp:2757 msgid "_Fullscreen" msgstr "На весь _екран" -#: ../src/verbs.cpp:2702 ../src/verbs.cpp:2704 +#: ../src/verbs.cpp:2757 ../src/verbs.cpp:2759 msgid "Stretch this document window to full screen" msgstr "Розтягнути вікно документа на весь екран" -#: ../src/verbs.cpp:2704 +#: ../src/verbs.cpp:2759 msgid "Fullscreen & Focus Mode" msgstr "Повноекранний режим та режим фокусування" -#: ../src/verbs.cpp:2707 +#: ../src/verbs.cpp:2762 msgid "Toggle _Focus Mode" msgstr "Перемкнути режим _фокусування" -#: ../src/verbs.cpp:2707 +#: ../src/verbs.cpp:2762 msgid "Remove excess toolbars to focus on drawing" msgstr "Вилучити зайві панелі інструментів для фокусування на малюванні" -#: ../src/verbs.cpp:2709 +#: ../src/verbs.cpp:2764 msgid "Duplic_ate Window" msgstr "_Дублювати вікно" -#: ../src/verbs.cpp:2709 +#: ../src/verbs.cpp:2764 msgid "Open a new window with the same document" msgstr "Відкрити нове вікно з цим самим документом" -#: ../src/verbs.cpp:2711 +#: ../src/verbs.cpp:2766 msgid "_New View Preview" msgstr "_Створити попередній перегляд" -#: ../src/verbs.cpp:2712 +#: ../src/verbs.cpp:2767 msgid "New View Preview" msgstr "Створити нове вікно попереднього перегляду" #. "view_new_preview" -#: ../src/verbs.cpp:2714 ../src/verbs.cpp:2722 +#: ../src/verbs.cpp:2769 ../src/verbs.cpp:2777 msgid "_Normal" msgstr "_Звичайний" -#: ../src/verbs.cpp:2715 +#: ../src/verbs.cpp:2770 msgid "Switch to normal display mode" msgstr "Перемикання на звичайний режим відображення" -#: ../src/verbs.cpp:2716 +#: ../src/verbs.cpp:2771 msgid "No _Filters" msgstr "Без _фільтрів" -#: ../src/verbs.cpp:2717 +#: ../src/verbs.cpp:2772 msgid "Switch to normal display without filters" msgstr "Перемикання на звичайний режим без фільтрів" -#: ../src/verbs.cpp:2718 +#: ../src/verbs.cpp:2773 msgid "_Outline" msgstr "_Обрис" -#: ../src/verbs.cpp:2719 +#: ../src/verbs.cpp:2774 msgid "Switch to outline (wireframe) display mode" msgstr "Перемкнутися на каркасний режим відображення" #. new ZoomVerb(SP_VERB_VIEW_COLOR_MODE_PRINT_COLORS_PREVIEW, "ViewColorModePrintColorsPreview", N_("_Print Colors Preview"), #. N_("Switch to print colors preview mode"), NULL), -#: ../src/verbs.cpp:2720 ../src/verbs.cpp:2728 +#: ../src/verbs.cpp:2775 ../src/verbs.cpp:2783 msgid "_Toggle" msgstr "_Перемкнутися" -#: ../src/verbs.cpp:2721 +#: ../src/verbs.cpp:2776 msgid "Toggle between normal and outline display modes" msgstr "Перемикач між нормальним та каркасним режимами відображення" -#: ../src/verbs.cpp:2723 +#: ../src/verbs.cpp:2778 msgid "Switch to normal color display mode" msgstr "Перемикання на звичайний режим показу кольорів" -#: ../src/verbs.cpp:2724 +#: ../src/verbs.cpp:2779 msgid "_Grayscale" msgstr "Сі_рі півтони" -#: ../src/verbs.cpp:2725 +#: ../src/verbs.cpp:2780 msgid "Switch to grayscale display mode" msgstr "Перемикання на режим показу тонів сірого" -#: ../src/verbs.cpp:2729 +#: ../src/verbs.cpp:2784 msgid "Toggle between normal and grayscale color display modes" msgstr "" "Перемикач між нормальним режимом показу та режимом показу у відтінках сірого" -#: ../src/verbs.cpp:2731 +#: ../src/verbs.cpp:2786 msgid "Color-managed view" msgstr "Перегляд керування кольором" -#: ../src/verbs.cpp:2732 +#: ../src/verbs.cpp:2787 msgid "Toggle color-managed display for this document window" msgstr "" "Перемикач узгодження відображення кольорів дисплеєм для цього вікна документа" -#: ../src/verbs.cpp:2734 +#: ../src/verbs.cpp:2789 msgid "Ico_n Preview..." msgstr "Переглянути як п_іктограму…" -#: ../src/verbs.cpp:2735 +#: ../src/verbs.cpp:2790 msgid "Open a window to preview objects at different icon resolutions" msgstr "Переглянути позначений елемент у формі піктограми різних розмірів" -#: ../src/verbs.cpp:2737 +#: ../src/verbs.cpp:2792 msgid "Zoom to fit page in window" msgstr "Змінити масштаб, щоб розмістити сторінку цілком" -#: ../src/verbs.cpp:2738 +#: ../src/verbs.cpp:2793 msgid "Page _Width" msgstr "Ш_ирина сторінки" -#: ../src/verbs.cpp:2739 +#: ../src/verbs.cpp:2794 msgid "Zoom to fit page width in window" msgstr "Змінити масштаб, щоб розмістити сторінку по ширині" -#: ../src/verbs.cpp:2741 +#: ../src/verbs.cpp:2796 msgid "Zoom to fit drawing in window" msgstr "Змінити масштаб, щоб розмістити малюнок цілком" -#: ../src/verbs.cpp:2743 +#: ../src/verbs.cpp:2798 msgid "Zoom to fit selection in window" msgstr "Змінити масштаб, щоб розмістити позначену область" #. Dialogs -#: ../src/verbs.cpp:2746 +#: ../src/verbs.cpp:2801 msgid "P_references..." msgstr "На_лаштування…" -#: ../src/verbs.cpp:2747 +#: ../src/verbs.cpp:2802 msgid "Edit global Inkscape preferences" msgstr "Редагування загальних параметрів Inkscape" -#: ../src/verbs.cpp:2748 +#: ../src/verbs.cpp:2803 msgid "_Document Properties..." msgstr "Параметри д_окумента…" -#: ../src/verbs.cpp:2749 +#: ../src/verbs.cpp:2804 msgid "Edit properties of this document (to be saved with the document)" msgstr "" "Редагування властивостей поточного документа (вони будуть збережені разом з " "ним)" -#: ../src/verbs.cpp:2750 +#: ../src/verbs.cpp:2805 msgid "Document _Metadata..." msgstr "_Метадані документа" -#: ../src/verbs.cpp:2751 +#: ../src/verbs.cpp:2806 msgid "Edit document metadata (to be saved with the document)" msgstr "Редагування метаданих документа (вони будуть збережені разом з ним)" -#: ../src/verbs.cpp:2753 +#: ../src/verbs.cpp:2808 msgid "" "Edit objects' colors, gradients, arrowheads, and other fill and stroke " "properties..." @@ -24038,125 +23970,117 @@ msgstr "" "Редагування кольорів об'єкта, градієнтів, форми стрілок та інші параметри " "заповнення та штриха…" -#: ../src/verbs.cpp:2754 +#: ../src/verbs.cpp:2809 msgid "Gl_yphs..." msgstr "Г_ліфи…" -#: ../src/verbs.cpp:2755 +#: ../src/verbs.cpp:2810 msgid "Select characters from a glyphs palette" msgstr "Виберіть символи з палітри гліфів" #. TRANSLATORS: "Swatches" means: color samples -#: ../src/verbs.cpp:2757 +#: ../src/verbs.cpp:2812 msgid "S_watches..." msgstr "Зразки _кольорів…" -#: ../src/verbs.cpp:2758 +#: ../src/verbs.cpp:2813 msgid "Select colors from a swatches palette" msgstr "Виберіть колір з палітри зразків" -#: ../src/verbs.cpp:2759 +#: ../src/verbs.cpp:2814 msgid "S_ymbols..." msgstr "С_имволи…" -#: ../src/verbs.cpp:2760 +#: ../src/verbs.cpp:2815 msgid "Select symbol from a symbols palette" msgstr "Виберіть символ з палітри символів" -#: ../src/verbs.cpp:2761 +#: ../src/verbs.cpp:2816 msgid "Transfor_m..." msgstr "_Трансформувати…" -#: ../src/verbs.cpp:2762 +#: ../src/verbs.cpp:2817 msgid "Precisely control objects' transformations" msgstr "Контролювати точність перетворень об'єктів" -#: ../src/verbs.cpp:2763 +#: ../src/verbs.cpp:2818 msgid "_Align and Distribute..." msgstr "Вирів_няти та розподілити…" -#: ../src/verbs.cpp:2764 +#: ../src/verbs.cpp:2819 msgid "Align and distribute objects" msgstr "Вирівняти та розподілити об'єкти" -#: ../src/verbs.cpp:2765 +#: ../src/verbs.cpp:2820 msgid "_Spray options..." msgstr "Параметри _розкидання…" -#: ../src/verbs.cpp:2766 +#: ../src/verbs.cpp:2821 msgid "Some options for the spray" msgstr "Параметри розкидання" -#: ../src/verbs.cpp:2767 +#: ../src/verbs.cpp:2822 msgid "Undo _History..." msgstr "Істо_рія змін…" -#: ../src/verbs.cpp:2768 +#: ../src/verbs.cpp:2823 msgid "Undo History" msgstr "Історія для скасування змін" -#: ../src/verbs.cpp:2770 +#: ../src/verbs.cpp:2825 msgid "View and select font family, font size and other text properties" msgstr "" "Перегляд та вибір назви шрифту, його розміру та інших властивостей тексту" -#: ../src/verbs.cpp:2771 +#: ../src/verbs.cpp:2826 msgid "_XML Editor..." msgstr "Редактор _XML…" -#: ../src/verbs.cpp:2772 +#: ../src/verbs.cpp:2827 msgid "View and edit the XML tree of the document" msgstr "Перегляд та редагування дерева XML поточного документа" -#: ../src/verbs.cpp:2773 +#: ../src/verbs.cpp:2828 msgid "_Find/Replace..." msgstr "Знайти і з_амінити…" -#: ../src/verbs.cpp:2774 +#: ../src/verbs.cpp:2829 msgid "Find objects in document" msgstr "Знайти об'єкти у документі" -#: ../src/verbs.cpp:2775 +#: ../src/verbs.cpp:2830 msgid "Find and _Replace Text..." msgstr "Знайти і з_амінити текст…" -#: ../src/verbs.cpp:2776 +#: ../src/verbs.cpp:2831 msgid "Find and replace text in document" msgstr "Знайти і замінити текст у документі" -#: ../src/verbs.cpp:2778 +#: ../src/verbs.cpp:2833 msgid "Check spelling of text in document" msgstr "Перевірити правопис тексту у документі" -#: ../src/verbs.cpp:2779 +#: ../src/verbs.cpp:2834 msgid "_Messages..." msgstr "По_відомлення…" -#: ../src/verbs.cpp:2780 +#: ../src/verbs.cpp:2835 msgid "View debug messages" msgstr "Переглянути діагностичні повідомлення" -#: ../src/verbs.cpp:2781 -msgid "S_cripts..." -msgstr "С_ценарії…" - -#: ../src/verbs.cpp:2782 -msgid "Run scripts" -msgstr "Запустити сценарії" - -#: ../src/verbs.cpp:2783 +#: ../src/verbs.cpp:2836 msgid "Show/Hide D_ialogs" msgstr "Показати/сховати діало_ги" -#: ../src/verbs.cpp:2784 +#: ../src/verbs.cpp:2837 msgid "Show or hide all open dialogs" msgstr "Показати чи сховати всі активні діалогові вікна" -#: ../src/verbs.cpp:2785 +#: ../src/verbs.cpp:2838 msgid "Create Tiled Clones..." msgstr "Створити мозаїку з клонів…" -#: ../src/verbs.cpp:2786 +#: ../src/verbs.cpp:2839 msgid "" "Create multiple clones of selected object, arranging them into a pattern or " "scattering" @@ -24164,213 +24088,213 @@ msgstr "" "Створити множину клонів позначеного об'єкта, з розташуванням їх у формі " "візерунку або покриття" -#: ../src/verbs.cpp:2787 +#: ../src/verbs.cpp:2840 msgid "_Object attributes..." msgstr "_Атрибути об'єкта…" -#: ../src/verbs.cpp:2788 +#: ../src/verbs.cpp:2841 msgid "Edit the object attributes..." msgstr "Змінити атрибути об'єкта…" -#: ../src/verbs.cpp:2790 +#: ../src/verbs.cpp:2843 msgid "Edit the ID, locked and visible status, and other object properties" msgstr "" "Редагування ідентифікатора, стану заблокованості та видимості та інших " "властивостей об'єкта" -#: ../src/verbs.cpp:2791 +#: ../src/verbs.cpp:2844 msgid "_Input Devices..." msgstr "_Пристрої введення…" -#: ../src/verbs.cpp:2792 +#: ../src/verbs.cpp:2845 msgid "Configure extended input devices, such as a graphics tablet" msgstr "Налаштовування розширених пристроїв введення" -#: ../src/verbs.cpp:2793 +#: ../src/verbs.cpp:2846 msgid "_Extensions..." msgstr "_Про додатки…" -#: ../src/verbs.cpp:2794 +#: ../src/verbs.cpp:2847 msgid "Query information about extensions" msgstr "Зібрати інформацію про додатки" -#: ../src/verbs.cpp:2795 +#: ../src/verbs.cpp:2848 msgid "Layer_s..." msgstr "_Шари…" -#: ../src/verbs.cpp:2796 +#: ../src/verbs.cpp:2849 msgid "View Layers" msgstr "Переглянути шари" -#: ../src/verbs.cpp:2797 +#: ../src/verbs.cpp:2850 msgid "Path E_ffects ..." msgstr "Е_фекти контурів…" -#: ../src/verbs.cpp:2798 +#: ../src/verbs.cpp:2851 msgid "Manage, edit, and apply path effects" msgstr "Керування, редагування і застосування ефектів контурів" -#: ../src/verbs.cpp:2799 +#: ../src/verbs.cpp:2852 msgid "Filter _Editor..." msgstr "Р_едактор фільтрів…" -#: ../src/verbs.cpp:2800 +#: ../src/verbs.cpp:2853 msgid "Manage, edit, and apply SVG filters" msgstr "Керування, редагування і застосування фільтрів SVG" -#: ../src/verbs.cpp:2801 +#: ../src/verbs.cpp:2854 msgid "SVG Font Editor..." msgstr "Редактор шрифтів SVG…" -#: ../src/verbs.cpp:2802 +#: ../src/verbs.cpp:2855 msgid "Edit SVG fonts" msgstr "Редагувати шрифти SVG" -#: ../src/verbs.cpp:2803 +#: ../src/verbs.cpp:2856 msgid "Print Colors..." msgstr "Друкувати кольори…" -#: ../src/verbs.cpp:2804 +#: ../src/verbs.cpp:2857 msgid "" "Select which color separations to render in Print Colors Preview rendermode" msgstr "" "Вкажіть ділянки кольорів, які слід обробляти у режимі обробки попереднього " "перегляду кольорів друку." -#: ../src/verbs.cpp:2805 +#: ../src/verbs.cpp:2858 msgid "_Export PNG Image..." msgstr "_Експортувати як зображення PNG…" -#: ../src/verbs.cpp:2806 +#: ../src/verbs.cpp:2859 msgid "Export this document or a selection as a PNG image" msgstr "Експортувати документ чи позначену частину як зображення PNG" #. Help -#: ../src/verbs.cpp:2808 +#: ../src/verbs.cpp:2861 msgid "About E_xtensions" msgstr "Про _додатки" -#: ../src/verbs.cpp:2809 +#: ../src/verbs.cpp:2862 msgid "Information on Inkscape extensions" msgstr "Інформація про додатки Inkscape" -#: ../src/verbs.cpp:2810 +#: ../src/verbs.cpp:2863 msgid "About _Memory" msgstr "Про п_ам'ять" -#: ../src/verbs.cpp:2811 +#: ../src/verbs.cpp:2864 msgid "Memory usage information" msgstr "Інформація про використання пам'яті" -#: ../src/verbs.cpp:2812 +#: ../src/verbs.cpp:2865 msgid "_About Inkscape" msgstr "_Про програму Inkscape" -#: ../src/verbs.cpp:2813 +#: ../src/verbs.cpp:2866 msgid "Inkscape version, authors, license" msgstr "Версія, автори та ліцензія Inkscape" #. new HelpVerb(SP_VERB_SHOW_LICENSE, "ShowLicense", N_("_License"), #. N_("Distribution terms"), /*"show_license"*/"inkscape_options"), #. Tutorials -#: ../src/verbs.cpp:2818 +#: ../src/verbs.cpp:2871 msgid "Inkscape: _Basic" msgstr "Inkscape: _Початковий рівень" -#: ../src/verbs.cpp:2819 +#: ../src/verbs.cpp:2872 msgid "Getting started with Inkscape" msgstr "Починаємо роботу з Inkscape" #. "tutorial_basic" -#: ../src/verbs.cpp:2820 +#: ../src/verbs.cpp:2873 msgid "Inkscape: _Shapes" msgstr "Inkscape: _Фігури" -#: ../src/verbs.cpp:2821 +#: ../src/verbs.cpp:2874 msgid "Using shape tools to create and edit shapes" msgstr "Використання інструментів малювання та редагування фігур" -#: ../src/verbs.cpp:2822 +#: ../src/verbs.cpp:2875 msgid "Inkscape: _Advanced" msgstr "Inkscape: _Другий рівень" -#: ../src/verbs.cpp:2823 +#: ../src/verbs.cpp:2876 msgid "Advanced Inkscape topics" msgstr "Додаткові теми з Inkscape" #. "tutorial_advanced" #. TRANSLATORS: "to trace" means "to convert a bitmap to vector graphics" (to vectorize) -#: ../src/verbs.cpp:2825 +#: ../src/verbs.cpp:2878 msgid "Inkscape: T_racing" msgstr "Inkscape: _Векторизація" -#: ../src/verbs.cpp:2826 +#: ../src/verbs.cpp:2879 msgid "Using bitmap tracing" msgstr "Використання векторизації растру" #. "tutorial_tracing" -#: ../src/verbs.cpp:2827 +#: ../src/verbs.cpp:2880 msgid "Inkscape: _Calligraphy" msgstr "Inkscape: _Каліграфія" -#: ../src/verbs.cpp:2828 +#: ../src/verbs.cpp:2881 msgid "Using the Calligraphy pen tool" msgstr "Використання каліграфічного пера" -#: ../src/verbs.cpp:2829 +#: ../src/verbs.cpp:2882 msgid "Inkscape: _Interpolate" msgstr "Inkscape: _Інтерполяція" -#: ../src/verbs.cpp:2830 +#: ../src/verbs.cpp:2883 msgid "Using the interpolate extension" msgstr "Використання додатка інтерполяції" #. "tutorial_interpolate" -#: ../src/verbs.cpp:2831 +#: ../src/verbs.cpp:2884 msgid "_Elements of Design" msgstr "_Елементи дизайну" -#: ../src/verbs.cpp:2832 +#: ../src/verbs.cpp:2885 msgid "Principles of design in the tutorial form" msgstr "Підручник з принципів дизайну" #. "tutorial_design" -#: ../src/verbs.cpp:2833 +#: ../src/verbs.cpp:2886 msgid "_Tips and Tricks" msgstr "_Поради та прийоми" -#: ../src/verbs.cpp:2834 +#: ../src/verbs.cpp:2887 msgid "Miscellaneous tips and tricks" msgstr "Різноманітні поради та прийоми" #. "tutorial_tips" #. Effect -- renamed Extension -#: ../src/verbs.cpp:2837 +#: ../src/verbs.cpp:2890 msgid "Previous Exte_nsion" msgstr "Попередній _додаток" -#: ../src/verbs.cpp:2838 +#: ../src/verbs.cpp:2891 msgid "Repeat the last extension with the same settings" msgstr "" "Повторити ефекти використання попереднього додатка з тими самими параметрами" -#: ../src/verbs.cpp:2839 +#: ../src/verbs.cpp:2892 msgid "_Previous Extension Settings..." msgstr "П_араметри попереднього додатка…" -#: ../src/verbs.cpp:2840 +#: ../src/verbs.cpp:2893 msgid "Repeat the last extension with new settings" msgstr "Повторити останній ефект з новими параметрами" -#: ../src/verbs.cpp:2844 +#: ../src/verbs.cpp:2897 msgid "Fit the page to the current selection" msgstr "Підігнати полотно до поточного позначеної області" -#: ../src/verbs.cpp:2846 +#: ../src/verbs.cpp:2899 msgid "Fit the page to the drawing" msgstr "Підганяє полотно під вже намальоване" -#: ../src/verbs.cpp:2848 +#: ../src/verbs.cpp:2901 msgid "" "Fit the page to the current selection or the drawing if there is no selection" msgstr "" @@ -24378,243 +24302,283 @@ msgstr "" "креслення, якщо нічого не позначено" #. LockAndHide -#: ../src/verbs.cpp:2850 +#: ../src/verbs.cpp:2903 msgid "Unlock All" msgstr "Розблокувати все" -#: ../src/verbs.cpp:2852 +#: ../src/verbs.cpp:2905 msgid "Unlock All in All Layers" msgstr "Розблокувати все в усіх шарах" -#: ../src/verbs.cpp:2854 +#: ../src/verbs.cpp:2907 msgid "Unhide All" msgstr "Показати все" -#: ../src/verbs.cpp:2856 +#: ../src/verbs.cpp:2909 msgid "Unhide All in All Layers" msgstr "Показати все в усіх шарах" -#: ../src/verbs.cpp:2860 +#: ../src/verbs.cpp:2913 msgid "Link an ICC color profile" msgstr "Посилання на профіль кольорів ICC" -#: ../src/verbs.cpp:2861 +#: ../src/verbs.cpp:2914 msgid "Remove Color Profile" msgstr "Вилучити профіль кольорів" -#: ../src/verbs.cpp:2862 +#: ../src/verbs.cpp:2915 msgid "Remove a linked ICC color profile" msgstr "Вилучити пов'язаний профіль кольорів ICC" -#: ../src/verbs.cpp:2885 ../src/verbs.cpp:2886 +#: ../src/verbs.cpp:2918 +msgid "Add External Script" +msgstr "Додати зовнішній скрипт" + +#: ../src/verbs.cpp:2918 +msgid "Add an external script" +msgstr "Додати зовнішній скрипт" + +#: ../src/verbs.cpp:2920 +msgid "Add Embedded Script" +msgstr "Додати вбудований скрипт" + +#: ../src/verbs.cpp:2920 +msgid "Add an embedded script" +msgstr "Додати вбудований скрипт" + +#: ../src/verbs.cpp:2922 +msgid "Edit Embedded Script" +msgstr "Редагувати вбудований скрипт" + +#: ../src/verbs.cpp:2922 +msgid "Edit an embedded script" +msgstr "Редагувати вбудований скрипт" + +#: ../src/verbs.cpp:2924 +msgid "Remove External Script" +msgstr "Вилучити зовнішній скрипт" + +#: ../src/verbs.cpp:2924 +msgid "Remove an external script" +msgstr "Вилучити зовнішній скрипт" + +#: ../src/verbs.cpp:2926 +msgid "Remove Embedded Script" +msgstr "Вилучити вбудований скрипт" + +#: ../src/verbs.cpp:2926 +msgid "Remove an embedded script" +msgstr "Вилучити вбудований скрипт" + +#: ../src/verbs.cpp:2948 ../src/verbs.cpp:2949 msgid "Center on horizontal and vertical axis" msgstr "Центрувати на горизонтальній і вертикальній осі" -#: ../src/widgets/arc-toolbar.cpp:146 +#: ../src/widgets/arc-toolbar.cpp:142 msgid "Arc: Change start/end" msgstr "Дуга: змінити початок/кінець" -#: ../src/widgets/arc-toolbar.cpp:212 +#: ../src/widgets/arc-toolbar.cpp:208 msgid "Arc: Change open/closed" msgstr "Дуга: змінити відкритість/замкненість" -#: ../src/widgets/arc-toolbar.cpp:303 ../src/widgets/arc-toolbar.cpp:332 -#: ../src/widgets/rect-toolbar.cpp:259 ../src/widgets/rect-toolbar.cpp:297 -#: ../src/widgets/spiral-toolbar.cpp:229 ../src/widgets/spiral-toolbar.cpp:253 -#: ../src/widgets/star-toolbar.cpp:395 ../src/widgets/star-toolbar.cpp:456 +#: ../src/widgets/arc-toolbar.cpp:299 ../src/widgets/arc-toolbar.cpp:328 +#: ../src/widgets/rect-toolbar.cpp:261 ../src/widgets/rect-toolbar.cpp:299 +#: ../src/widgets/spiral-toolbar.cpp:225 ../src/widgets/spiral-toolbar.cpp:249 +#: ../src/widgets/star-toolbar.cpp:391 ../src/widgets/star-toolbar.cpp:452 msgid "New:" msgstr "Новий:" #. FIXME: implement averaging of all parameters for multiple selected #. gtk_label_set_markup(GTK_LABEL(l), _("Average:")); -#: ../src/widgets/arc-toolbar.cpp:306 ../src/widgets/arc-toolbar.cpp:317 -#: ../src/widgets/rect-toolbar.cpp:267 ../src/widgets/rect-toolbar.cpp:285 -#: ../src/widgets/spiral-toolbar.cpp:231 ../src/widgets/spiral-toolbar.cpp:242 -#: ../src/widgets/star-toolbar.cpp:397 +#: ../src/widgets/arc-toolbar.cpp:302 ../src/widgets/arc-toolbar.cpp:313 +#: ../src/widgets/rect-toolbar.cpp:269 ../src/widgets/rect-toolbar.cpp:287 +#: ../src/widgets/spiral-toolbar.cpp:227 ../src/widgets/spiral-toolbar.cpp:238 +#: ../src/widgets/star-toolbar.cpp:393 msgid "Change:" msgstr "Змінити:" -#: ../src/widgets/arc-toolbar.cpp:341 +#: ../src/widgets/arc-toolbar.cpp:337 msgid "Start:" msgstr "Початок:" -#: ../src/widgets/arc-toolbar.cpp:342 +#: ../src/widgets/arc-toolbar.cpp:338 msgid "The angle (in degrees) from the horizontal to the arc's start point" msgstr "Кут (у градусах) від горизонталі до початкової точки дуги" -#: ../src/widgets/arc-toolbar.cpp:354 +#: ../src/widgets/arc-toolbar.cpp:350 msgid "End:" msgstr "Кінець:" -#: ../src/widgets/arc-toolbar.cpp:355 +#: ../src/widgets/arc-toolbar.cpp:351 msgid "The angle (in degrees) from the horizontal to the arc's end point" msgstr "Кут (у градусах) від горизонталі до кінцевої точки дуги" -#: ../src/widgets/arc-toolbar.cpp:371 +#: ../src/widgets/arc-toolbar.cpp:367 msgid "Closed arc" msgstr "Закрита дуга" -#: ../src/widgets/arc-toolbar.cpp:372 +#: ../src/widgets/arc-toolbar.cpp:368 msgid "Switch to segment (closed shape with two radii)" msgstr "Перетворити на сегмент (замкнутої фігури з двома радіусами-сторонами)" -#: ../src/widgets/arc-toolbar.cpp:378 +#: ../src/widgets/arc-toolbar.cpp:374 msgid "Open Arc" msgstr "Відкрита дуга" -#: ../src/widgets/arc-toolbar.cpp:379 +#: ../src/widgets/arc-toolbar.cpp:375 msgid "Switch to arc (unclosed shape)" msgstr "Перейти до дуги (незакриту фігуру)" -#: ../src/widgets/arc-toolbar.cpp:402 +#: ../src/widgets/arc-toolbar.cpp:398 msgid "Make whole" msgstr "Зробити цілим" -#: ../src/widgets/arc-toolbar.cpp:403 +#: ../src/widgets/arc-toolbar.cpp:399 msgid "Make the shape a whole ellipse, not arc or segment" msgstr "Робить фігуру цілим еліпсом, а не дугою чи сегментом" #. TODO: use the correct axis here, too -#: ../src/widgets/box3d-toolbar.cpp:253 +#: ../src/widgets/box3d-toolbar.cpp:248 msgid "3D Box: Change perspective (angle of infinite axis)" msgstr "" "Просторовий об'єкт: Зміна перспективи (кута сходження на нескінченності)" -#: ../src/widgets/box3d-toolbar.cpp:320 +#: ../src/widgets/box3d-toolbar.cpp:315 msgid "Angle in X direction" msgstr "Кут у напрямку осі X" #. Translators: PL is short for 'perspective line' -#: ../src/widgets/box3d-toolbar.cpp:322 +#: ../src/widgets/box3d-toolbar.cpp:317 msgid "Angle of PLs in X direction" msgstr "Кут між ЛП у напрямку осі X" #. Translators: VP is short for 'vanishing point' -#: ../src/widgets/box3d-toolbar.cpp:344 +#: ../src/widgets/box3d-toolbar.cpp:339 msgid "State of VP in X direction" msgstr "Стан ТС у напрямку осі X" -#: ../src/widgets/box3d-toolbar.cpp:345 +#: ../src/widgets/box3d-toolbar.cpp:340 msgid "Toggle VP in X direction between 'finite' and 'infinite' (=parallel)" msgstr "" "Перемикач ТС у напрямку осі X між значеннями 'скінченна' і " "'нескінченна' (=паралельність)" -#: ../src/widgets/box3d-toolbar.cpp:360 +#: ../src/widgets/box3d-toolbar.cpp:355 msgid "Angle in Y direction" msgstr "Кут у напрямку осі Y" -#: ../src/widgets/box3d-toolbar.cpp:360 +#: ../src/widgets/box3d-toolbar.cpp:355 msgid "Angle Y:" msgstr "Кут Y:" #. Translators: PL is short for 'perspective line' -#: ../src/widgets/box3d-toolbar.cpp:362 +#: ../src/widgets/box3d-toolbar.cpp:357 msgid "Angle of PLs in Y direction" msgstr "Перемикач між ЛП у напрямку осі Y" #. Translators: VP is short for 'vanishing point' -#: ../src/widgets/box3d-toolbar.cpp:383 +#: ../src/widgets/box3d-toolbar.cpp:378 msgid "State of VP in Y direction" msgstr "Стан ТС у напрямку осі Y" -#: ../src/widgets/box3d-toolbar.cpp:384 +#: ../src/widgets/box3d-toolbar.cpp:379 msgid "Toggle VP in Y direction between 'finite' and 'infinite' (=parallel)" msgstr "" "Перемикач ТС у напрямку осі Y між значеннями 'скінченна' і " "'нескінченна' (=паралельність)" -#: ../src/widgets/box3d-toolbar.cpp:399 +#: ../src/widgets/box3d-toolbar.cpp:394 msgid "Angle in Z direction" msgstr "Кут у напрямку осі Z" #. Translators: PL is short for 'perspective line' -#: ../src/widgets/box3d-toolbar.cpp:401 +#: ../src/widgets/box3d-toolbar.cpp:396 msgid "Angle of PLs in Z direction" msgstr "Кут між ЛП у напрямку осі Z" #. Translators: VP is short for 'vanishing point' -#: ../src/widgets/box3d-toolbar.cpp:422 +#: ../src/widgets/box3d-toolbar.cpp:417 msgid "State of VP in Z direction" msgstr "Стан ТС у напрямку осі Z" -#: ../src/widgets/box3d-toolbar.cpp:423 +#: ../src/widgets/box3d-toolbar.cpp:418 msgid "Toggle VP in Z direction between 'finite' and 'infinite' (=parallel)" msgstr "" "Перемикач ТС у напрямку осі Z між значеннями 'скінченна' і " "'нескінченна' (=паралельність)" #. gint preset_index = ege_select_one_action_get_active( sel ); -#: ../src/widgets/calligraphy-toolbar.cpp:239 -#: ../src/widgets/calligraphy-toolbar.cpp:283 -#: ../src/widgets/calligraphy-toolbar.cpp:288 +#: ../src/widgets/calligraphy-toolbar.cpp:235 +#: ../src/widgets/calligraphy-toolbar.cpp:279 +#: ../src/widgets/calligraphy-toolbar.cpp:284 msgid "No preset" msgstr "Без шаблону" #. Width -#: ../src/widgets/calligraphy-toolbar.cpp:448 -#: ../src/widgets/erasor-toolbar.cpp:146 +#: ../src/widgets/calligraphy-toolbar.cpp:444 +#: ../src/widgets/eraser-toolbar.cpp:142 msgid "(hairline)" msgstr "(мотузка)" #. Mean #. Rotation #. Scale -#: ../src/widgets/calligraphy-toolbar.cpp:448 -#: ../src/widgets/calligraphy-toolbar.cpp:481 -#: ../src/widgets/erasor-toolbar.cpp:146 ../src/widgets/pencil-toolbar.cpp:303 -#: ../src/widgets/spray-toolbar.cpp:129 ../src/widgets/spray-toolbar.cpp:145 -#: ../src/widgets/spray-toolbar.cpp:161 ../src/widgets/spray-toolbar.cpp:221 -#: ../src/widgets/spray-toolbar.cpp:251 ../src/widgets/spray-toolbar.cpp:269 -#: ../src/widgets/tweak-toolbar.cpp:143 ../src/widgets/tweak-toolbar.cpp:160 -#: ../src/widgets/tweak-toolbar.cpp:368 +#: ../src/widgets/calligraphy-toolbar.cpp:444 +#: ../src/widgets/calligraphy-toolbar.cpp:477 +#: ../src/widgets/eraser-toolbar.cpp:142 ../src/widgets/pencil-toolbar.cpp:298 +#: ../src/widgets/spray-toolbar.cpp:125 ../src/widgets/spray-toolbar.cpp:141 +#: ../src/widgets/spray-toolbar.cpp:157 ../src/widgets/spray-toolbar.cpp:217 +#: ../src/widgets/spray-toolbar.cpp:247 ../src/widgets/spray-toolbar.cpp:265 +#: ../src/widgets/tweak-toolbar.cpp:139 ../src/widgets/tweak-toolbar.cpp:156 +#: ../src/widgets/tweak-toolbar.cpp:364 msgid "(default)" msgstr "(типова)" -#: ../src/widgets/calligraphy-toolbar.cpp:448 -#: ../src/widgets/erasor-toolbar.cpp:146 +#: ../src/widgets/calligraphy-toolbar.cpp:444 +#: ../src/widgets/eraser-toolbar.cpp:142 msgid "(broad stroke)" msgstr "(широкий штрих)" -#: ../src/widgets/calligraphy-toolbar.cpp:451 -#: ../src/widgets/erasor-toolbar.cpp:149 +#: ../src/widgets/calligraphy-toolbar.cpp:447 +#: ../src/widgets/eraser-toolbar.cpp:145 msgid "Pen Width" msgstr "Ширина пера" -#: ../src/widgets/calligraphy-toolbar.cpp:452 +#: ../src/widgets/calligraphy-toolbar.cpp:448 msgid "The width of the calligraphic pen (relative to the visible canvas area)" msgstr "Ширина каліграфічного пера (відносно видимої області полотна)" #. Thinning -#: ../src/widgets/calligraphy-toolbar.cpp:465 +#: ../src/widgets/calligraphy-toolbar.cpp:461 msgid "(speed blows up stroke)" msgstr "(швидкість збільшення штриху)" -#: ../src/widgets/calligraphy-toolbar.cpp:465 +#: ../src/widgets/calligraphy-toolbar.cpp:461 msgid "(slight widening)" msgstr "(невелике розширення)" -#: ../src/widgets/calligraphy-toolbar.cpp:465 +#: ../src/widgets/calligraphy-toolbar.cpp:461 msgid "(constant width)" msgstr "(постійна ширина)" -#: ../src/widgets/calligraphy-toolbar.cpp:465 +#: ../src/widgets/calligraphy-toolbar.cpp:461 msgid "(slight thinning, default)" msgstr "(невелике зменшення товщини, типово)" -#: ../src/widgets/calligraphy-toolbar.cpp:465 +#: ../src/widgets/calligraphy-toolbar.cpp:461 msgid "(speed deflates stroke)" msgstr "(швидкість зменшення штриху)" -#: ../src/widgets/calligraphy-toolbar.cpp:468 +#: ../src/widgets/calligraphy-toolbar.cpp:464 msgid "Stroke Thinning" msgstr "Звуження штриха" -#: ../src/widgets/calligraphy-toolbar.cpp:468 +#: ../src/widgets/calligraphy-toolbar.cpp:464 msgid "Thinning:" msgstr "Звуження:" -#: ../src/widgets/calligraphy-toolbar.cpp:469 +#: ../src/widgets/calligraphy-toolbar.cpp:465 msgid "" "How much velocity thins the stroke (> 0 makes fast strokes thinner, < 0 " "makes them broader, 0 makes width independent of velocity)" @@ -24623,28 +24587,28 @@ msgstr "" "штрихи ширше, 0 — ширина штриха не залежить від швидкості)" #. Angle -#: ../src/widgets/calligraphy-toolbar.cpp:481 +#: ../src/widgets/calligraphy-toolbar.cpp:477 msgid "(left edge up)" msgstr "(піднімати лівий край)" -#: ../src/widgets/calligraphy-toolbar.cpp:481 +#: ../src/widgets/calligraphy-toolbar.cpp:477 msgid "(horizontal)" msgstr "(горизонтально)" -#: ../src/widgets/calligraphy-toolbar.cpp:481 +#: ../src/widgets/calligraphy-toolbar.cpp:477 msgid "(right edge up)" msgstr "(піднімати правий край)" -#: ../src/widgets/calligraphy-toolbar.cpp:484 +#: ../src/widgets/calligraphy-toolbar.cpp:480 msgid "Pen Angle" msgstr "Кут пера" -#: ../src/widgets/calligraphy-toolbar.cpp:484 +#: ../src/widgets/calligraphy-toolbar.cpp:480 #: ../share/extensions/motion.inx.h:3 ../share/extensions/restack.inx.h:10 msgid "Angle:" msgstr "Кут:" -#: ../src/widgets/calligraphy-toolbar.cpp:485 +#: ../src/widgets/calligraphy-toolbar.cpp:481 msgid "" "The angle of the pen's nib (in degrees; 0 = horizontal; has no effect if " "fixation = 0)" @@ -24653,27 +24617,27 @@ msgstr "" "ефекту)" #. Fixation -#: ../src/widgets/calligraphy-toolbar.cpp:499 +#: ../src/widgets/calligraphy-toolbar.cpp:495 msgid "(perpendicular to stroke, \"brush\")" msgstr "(перпендикулярно штриху, «щітка»)" -#: ../src/widgets/calligraphy-toolbar.cpp:499 +#: ../src/widgets/calligraphy-toolbar.cpp:495 msgid "(almost fixed, default)" msgstr "(майже постійна, типово)" -#: ../src/widgets/calligraphy-toolbar.cpp:499 +#: ../src/widgets/calligraphy-toolbar.cpp:495 msgid "(fixed by Angle, \"pen\")" msgstr "(з постійним кутом, «перо»)" -#: ../src/widgets/calligraphy-toolbar.cpp:502 +#: ../src/widgets/calligraphy-toolbar.cpp:498 msgid "Fixation" msgstr "Фіксація" -#: ../src/widgets/calligraphy-toolbar.cpp:502 +#: ../src/widgets/calligraphy-toolbar.cpp:498 msgid "Fixation:" msgstr "Фіксація:" -#: ../src/widgets/calligraphy-toolbar.cpp:503 +#: ../src/widgets/calligraphy-toolbar.cpp:499 msgid "" "Angle behavior (0 = nib always perpendicular to stroke direction, 100 = " "fixed angle)" @@ -24682,31 +24646,31 @@ msgstr "" "= фіксований кут)" #. Cap Rounding -#: ../src/widgets/calligraphy-toolbar.cpp:515 +#: ../src/widgets/calligraphy-toolbar.cpp:511 msgid "(blunt caps, default)" msgstr "(тупі кінці, типово)" -#: ../src/widgets/calligraphy-toolbar.cpp:515 +#: ../src/widgets/calligraphy-toolbar.cpp:511 msgid "(slightly bulging)" msgstr "(невелика випуклість)" -#: ../src/widgets/calligraphy-toolbar.cpp:515 +#: ../src/widgets/calligraphy-toolbar.cpp:511 msgid "(approximately round)" msgstr "(приблизно коло)" -#: ../src/widgets/calligraphy-toolbar.cpp:515 +#: ../src/widgets/calligraphy-toolbar.cpp:511 msgid "(long protruding caps)" msgstr "(довгі виступаючі кінці)" -#: ../src/widgets/calligraphy-toolbar.cpp:519 +#: ../src/widgets/calligraphy-toolbar.cpp:515 msgid "Cap rounding" msgstr "Заокруглення вершини" -#: ../src/widgets/calligraphy-toolbar.cpp:519 +#: ../src/widgets/calligraphy-toolbar.cpp:515 msgid "Caps:" msgstr "Кінці:" -#: ../src/widgets/calligraphy-toolbar.cpp:520 +#: ../src/widgets/calligraphy-toolbar.cpp:516 msgid "" "Increase to make caps at the ends of strokes protrude more (0 = no caps, 1 = " "round caps)" @@ -24715,94 +24679,94 @@ msgstr "" "кінець)" #. Tremor -#: ../src/widgets/calligraphy-toolbar.cpp:532 +#: ../src/widgets/calligraphy-toolbar.cpp:528 msgid "(smooth line)" msgstr "(гладка лінія)" -#: ../src/widgets/calligraphy-toolbar.cpp:532 +#: ../src/widgets/calligraphy-toolbar.cpp:528 msgid "(slight tremor)" msgstr "(невелика дрижання)" -#: ../src/widgets/calligraphy-toolbar.cpp:532 +#: ../src/widgets/calligraphy-toolbar.cpp:528 msgid "(noticeable tremor)" msgstr "(помітне дрижання)" -#: ../src/widgets/calligraphy-toolbar.cpp:532 +#: ../src/widgets/calligraphy-toolbar.cpp:528 msgid "(maximum tremor)" msgstr "(максимальне дрижання)" -#: ../src/widgets/calligraphy-toolbar.cpp:535 +#: ../src/widgets/calligraphy-toolbar.cpp:531 msgid "Stroke Tremor" msgstr "Дрижання штриха" -#: ../src/widgets/calligraphy-toolbar.cpp:535 +#: ../src/widgets/calligraphy-toolbar.cpp:531 msgid "Tremor:" msgstr "Дрижання:" -#: ../src/widgets/calligraphy-toolbar.cpp:536 +#: ../src/widgets/calligraphy-toolbar.cpp:532 msgid "Increase to make strokes rugged and trembling" msgstr "Збільшіть, щоб штрихи стали грубими та звивистими" #. Wiggle -#: ../src/widgets/calligraphy-toolbar.cpp:550 +#: ../src/widgets/calligraphy-toolbar.cpp:546 msgid "(no wiggle)" msgstr "(без погойдування)" -#: ../src/widgets/calligraphy-toolbar.cpp:550 +#: ../src/widgets/calligraphy-toolbar.cpp:546 msgid "(slight deviation)" msgstr "(невеликий відхилення)" -#: ../src/widgets/calligraphy-toolbar.cpp:550 +#: ../src/widgets/calligraphy-toolbar.cpp:546 msgid "(wild waves and curls)" msgstr "(великі хвилі та завитки)" -#: ../src/widgets/calligraphy-toolbar.cpp:553 +#: ../src/widgets/calligraphy-toolbar.cpp:549 msgid "Pen Wiggle" msgstr "Погойдування пера" -#: ../src/widgets/calligraphy-toolbar.cpp:553 +#: ../src/widgets/calligraphy-toolbar.cpp:549 msgid "Wiggle:" msgstr "Погойдування:" -#: ../src/widgets/calligraphy-toolbar.cpp:554 +#: ../src/widgets/calligraphy-toolbar.cpp:550 msgid "Increase to make the pen waver and wiggle" msgstr "Збільшення параметру збільшує хвилеподібність ліній" #. Mass -#: ../src/widgets/calligraphy-toolbar.cpp:567 +#: ../src/widgets/calligraphy-toolbar.cpp:563 msgid "(no inertia)" msgstr "(без інерції)" -#: ../src/widgets/calligraphy-toolbar.cpp:567 +#: ../src/widgets/calligraphy-toolbar.cpp:563 msgid "(slight smoothing, default)" msgstr "(невелике згладжування, типово)" -#: ../src/widgets/calligraphy-toolbar.cpp:567 +#: ../src/widgets/calligraphy-toolbar.cpp:563 msgid "(noticeable lagging)" msgstr "(помітне запізнення)" -#: ../src/widgets/calligraphy-toolbar.cpp:567 +#: ../src/widgets/calligraphy-toolbar.cpp:563 msgid "(maximum inertia)" msgstr "(максимальна інерція)" -#: ../src/widgets/calligraphy-toolbar.cpp:570 +#: ../src/widgets/calligraphy-toolbar.cpp:566 msgid "Pen Mass" msgstr "Маса пера" -#: ../src/widgets/calligraphy-toolbar.cpp:570 +#: ../src/widgets/calligraphy-toolbar.cpp:566 msgid "Mass:" msgstr "Маса:" -#: ../src/widgets/calligraphy-toolbar.cpp:571 +#: ../src/widgets/calligraphy-toolbar.cpp:567 msgid "Increase to make the pen drag behind, as if slowed by inertia" msgstr "" "Збільшення веде до відставання пензля так, неначе його сповільнює інерція" -#: ../src/widgets/calligraphy-toolbar.cpp:586 +#: ../src/widgets/calligraphy-toolbar.cpp:582 msgid "Trace Background" msgstr "Слід на тлі" -#: ../src/widgets/calligraphy-toolbar.cpp:587 +#: ../src/widgets/calligraphy-toolbar.cpp:583 msgid "" "Trace the lightness of the background by the width of the pen (white - " "minimum width, black - maximum width)" @@ -24810,112 +24774,112 @@ msgstr "" "Залишати слід освітлення на тлі залежно від ширини пера (білий — мінімальна " "ширина, чорний — максимальна ширина)" -#: ../src/widgets/calligraphy-toolbar.cpp:600 +#: ../src/widgets/calligraphy-toolbar.cpp:596 msgid "Use the pressure of the input device to alter the width of the pen" msgstr "Використовувати силу натиску пристроєм введення для зміни ширини лінії" -#: ../src/widgets/calligraphy-toolbar.cpp:612 +#: ../src/widgets/calligraphy-toolbar.cpp:608 msgid "Tilt" msgstr "Нахил" -#: ../src/widgets/calligraphy-toolbar.cpp:613 +#: ../src/widgets/calligraphy-toolbar.cpp:609 msgid "Use the tilt of the input device to alter the angle of the pen's nib" msgstr "Використовувати нахил пристрою введення для зміни кута" -#: ../src/widgets/calligraphy-toolbar.cpp:628 +#: ../src/widgets/calligraphy-toolbar.cpp:624 msgid "Choose a preset" msgstr "Обрати набір" -#: ../src/widgets/calligraphy-toolbar.cpp:643 +#: ../src/widgets/calligraphy-toolbar.cpp:639 msgid "Add/Edit Profile" msgstr "Додати/Змінити профіль" -#: ../src/widgets/calligraphy-toolbar.cpp:644 +#: ../src/widgets/calligraphy-toolbar.cpp:640 msgid "Add or edit calligraphic profile" msgstr "Додати або змінити профіль каліграфії" -#: ../src/widgets/connector-toolbar.cpp:136 +#: ../src/widgets/connector-toolbar.cpp:132 msgid "Set connector type: orthogonal" msgstr "Встановити тип з'єднання: під прямим кутом" -#: ../src/widgets/connector-toolbar.cpp:136 +#: ../src/widgets/connector-toolbar.cpp:132 msgid "Set connector type: polyline" msgstr "Встановити тип з'єднання: ламана" -#: ../src/widgets/connector-toolbar.cpp:185 +#: ../src/widgets/connector-toolbar.cpp:181 msgid "Change connector curvature" msgstr "Змінити кривину з'єднання" -#: ../src/widgets/connector-toolbar.cpp:236 +#: ../src/widgets/connector-toolbar.cpp:232 msgid "Change connector spacing" msgstr "Зміна відстаней для лінії з'єднання" -#: ../src/widgets/connector-toolbar.cpp:329 +#: ../src/widgets/connector-toolbar.cpp:325 msgid "Avoid" msgstr "Уникати" -#: ../src/widgets/connector-toolbar.cpp:339 +#: ../src/widgets/connector-toolbar.cpp:335 msgid "Ignore" msgstr "Ігнорувати" -#: ../src/widgets/connector-toolbar.cpp:350 +#: ../src/widgets/connector-toolbar.cpp:346 msgid "Orthogonal" msgstr "Під прямим кутом" -#: ../src/widgets/connector-toolbar.cpp:351 +#: ../src/widgets/connector-toolbar.cpp:347 msgid "Make connector orthogonal or polyline" msgstr "Зробити з'єднання з'єднанням під прямим кутом або з'єднанням у ламаній" -#: ../src/widgets/connector-toolbar.cpp:365 +#: ../src/widgets/connector-toolbar.cpp:361 msgid "Connector Curvature" msgstr "Кривина з'єднання" -#: ../src/widgets/connector-toolbar.cpp:365 +#: ../src/widgets/connector-toolbar.cpp:361 msgid "Curvature:" msgstr "Кривина:" -#: ../src/widgets/connector-toolbar.cpp:366 +#: ../src/widgets/connector-toolbar.cpp:362 msgid "The amount of connectors curvature" msgstr "Кривина з'єднань" -#: ../src/widgets/connector-toolbar.cpp:376 +#: ../src/widgets/connector-toolbar.cpp:372 msgid "Connector Spacing" msgstr "Відстань для з'єднання" -#: ../src/widgets/connector-toolbar.cpp:376 +#: ../src/widgets/connector-toolbar.cpp:372 msgid "Spacing:" msgstr "Інтервал:" -#: ../src/widgets/connector-toolbar.cpp:377 +#: ../src/widgets/connector-toolbar.cpp:373 msgid "The amount of space left around objects by auto-routing connectors" msgstr "Простір, що залишається навколо об'єктів під час автоз'єднання" -#: ../src/widgets/connector-toolbar.cpp:388 +#: ../src/widgets/connector-toolbar.cpp:384 msgid "Graph" msgstr "Графік" -#: ../src/widgets/connector-toolbar.cpp:398 +#: ../src/widgets/connector-toolbar.cpp:394 msgid "Connector Length" msgstr "Довжина з'єднання" -#: ../src/widgets/connector-toolbar.cpp:398 +#: ../src/widgets/connector-toolbar.cpp:394 msgid "Length:" msgstr "Довжина:" -#: ../src/widgets/connector-toolbar.cpp:399 +#: ../src/widgets/connector-toolbar.cpp:395 msgid "Ideal length for connectors when layout is applied" msgstr "" "Зразкова довжина ліній з'єднання після застосування зовнішнього вигляду" -#: ../src/widgets/connector-toolbar.cpp:411 +#: ../src/widgets/connector-toolbar.cpp:407 msgid "Downwards" msgstr "Вниз" -#: ../src/widgets/connector-toolbar.cpp:412 +#: ../src/widgets/connector-toolbar.cpp:408 msgid "Make connectors with end-markers (arrows) point downwards" msgstr "Змусити кінцеві стрілки ліній з'єднання вказувати вниз" -#: ../src/widgets/connector-toolbar.cpp:428 +#: ../src/widgets/connector-toolbar.cpp:424 msgid "Do not allow overlapping shapes" msgstr "Не дозволяти перекриття форм" @@ -24927,20 +24891,20 @@ msgstr "Пунктир" msgid "Pattern offset" msgstr "Зміщення пунктиру" -#: ../src/widgets/desktop-widget.cpp:461 +#: ../src/widgets/desktop-widget.cpp:465 msgid "Zoom drawing if window size changes" msgstr "Змінювати масштаб при зміні розмірів вікна" -#: ../src/widgets/desktop-widget.cpp:665 +#: ../src/widgets/desktop-widget.cpp:669 msgid "Cursor coordinates" msgstr "Координати курсора" -#: ../src/widgets/desktop-widget.cpp:691 +#: ../src/widgets/desktop-widget.cpp:695 msgid "Z:" msgstr "Z:" #. display the initial welcome message in the statusbar -#: ../src/widgets/desktop-widget.cpp:734 +#: ../src/widgets/desktop-widget.cpp:738 msgid "" "Welcome to Inkscape! Use shape or freehand tools to create objects; " "use selector (arrow) to move or transform them." @@ -24949,69 +24913,69 @@ msgstr "" "малювання для створення об'єктів; для їх переміщення чи трансформації " "використовуйте селектор (стрілку)." -#: ../src/widgets/desktop-widget.cpp:828 +#: ../src/widgets/desktop-widget.cpp:832 msgid "grayscale" msgstr "сірі півтони" -#: ../src/widgets/desktop-widget.cpp:829 +#: ../src/widgets/desktop-widget.cpp:833 msgid ", grayscale" msgstr ", сірі півтони" -#: ../src/widgets/desktop-widget.cpp:830 +#: ../src/widgets/desktop-widget.cpp:834 msgid "print colors preview" msgstr "друк попереднього перегляду кольорів" -#: ../src/widgets/desktop-widget.cpp:831 +#: ../src/widgets/desktop-widget.cpp:835 msgid ", print colors preview" msgstr ", друк попереднього перегляду кольорів" -#: ../src/widgets/desktop-widget.cpp:832 +#: ../src/widgets/desktop-widget.cpp:836 msgid "outline" msgstr "обрис" -#: ../src/widgets/desktop-widget.cpp:833 +#: ../src/widgets/desktop-widget.cpp:837 msgid "no filters" msgstr "без фільтрування" -#: ../src/widgets/desktop-widget.cpp:860 +#: ../src/widgets/desktop-widget.cpp:864 #, c-format msgid "%s%s: %d (%s%s) - Inkscape" msgstr "%s%s: %d (%s%s) – Inkscape" -#: ../src/widgets/desktop-widget.cpp:862 ../src/widgets/desktop-widget.cpp:866 +#: ../src/widgets/desktop-widget.cpp:866 ../src/widgets/desktop-widget.cpp:870 #, c-format msgid "%s%s: %d (%s) - Inkscape" msgstr "%s%s: %d (%s) — Inkscape" -#: ../src/widgets/desktop-widget.cpp:868 +#: ../src/widgets/desktop-widget.cpp:872 #, c-format msgid "%s%s: %d - Inkscape" msgstr "%s%s: %d — Inkscape" -#: ../src/widgets/desktop-widget.cpp:874 +#: ../src/widgets/desktop-widget.cpp:878 #, c-format msgid "%s%s (%s%s) - Inkscape" msgstr "%s%s (%s%s) — Inkscape" -#: ../src/widgets/desktop-widget.cpp:876 ../src/widgets/desktop-widget.cpp:880 +#: ../src/widgets/desktop-widget.cpp:880 ../src/widgets/desktop-widget.cpp:884 #, c-format msgid "%s%s (%s) - Inkscape" msgstr "%s%s (%s) — Inkscape" -#: ../src/widgets/desktop-widget.cpp:882 +#: ../src/widgets/desktop-widget.cpp:886 #, c-format msgid "%s%s - Inkscape" msgstr "%s%s — Inkscape" -#: ../src/widgets/desktop-widget.cpp:1051 +#: ../src/widgets/desktop-widget.cpp:1055 msgid "Color-managed display is enabled in this window" msgstr "Показ з керуванням кольорами у цьому вікні увімкнено" -#: ../src/widgets/desktop-widget.cpp:1053 +#: ../src/widgets/desktop-widget.cpp:1057 msgid "Color-managed display is disabled in this window" msgstr "Показ з керуванням кольорами у цьому вікні вимкнено" -#: ../src/widgets/desktop-widget.cpp:1108 +#: ../src/widgets/desktop-widget.cpp:1112 #, c-format msgid "" "Save changes to document \"%s\" before " @@ -25024,12 +24988,12 @@ msgstr "" "\n" "Якщо ви закриєте документ без збереження, усі зміни будуть втрачені." -#: ../src/widgets/desktop-widget.cpp:1118 -#: ../src/widgets/desktop-widget.cpp:1177 +#: ../src/widgets/desktop-widget.cpp:1122 +#: ../src/widgets/desktop-widget.cpp:1181 msgid "Close _without saving" msgstr "_Не зберігати" -#: ../src/widgets/desktop-widget.cpp:1167 +#: ../src/widgets/desktop-widget.cpp:1171 #, c-format msgid "" "The file \"%s\" was saved with a " @@ -25042,19 +25006,19 @@ msgstr "" "\n" "Зберегти документ у форматі SVG Inkscape?" -#: ../src/widgets/desktop-widget.cpp:1179 +#: ../src/widgets/desktop-widget.cpp:1183 msgid "_Save as Inkscape SVG" msgstr "_Зберегти як SVG Inkscape" -#: ../src/widgets/desktop-widget.cpp:1389 +#: ../src/widgets/desktop-widget.cpp:1393 msgid "Note:" msgstr "Примітка:" -#: ../src/widgets/dropper-toolbar.cpp:118 +#: ../src/widgets/dropper-toolbar.cpp:114 msgid "Pick opacity" msgstr "Непрозорість піпетки" -#: ../src/widgets/dropper-toolbar.cpp:119 +#: ../src/widgets/dropper-toolbar.cpp:115 msgid "" "Pick both the color and the alpha (transparency) under cursor; otherwise, " "pick only the visible color premultiplied by alpha" @@ -25062,21 +25026,21 @@ msgstr "" "Підберіть колір та альфу (прозорість) під курсором; інакше підберіть тільки " "видимий колір попередньо помножений на альфу" -#: ../src/widgets/dropper-toolbar.cpp:122 +#: ../src/widgets/dropper-toolbar.cpp:118 msgid "Pick" msgstr "Піпетка" -#: ../src/widgets/dropper-toolbar.cpp:131 +#: ../src/widgets/dropper-toolbar.cpp:127 msgid "Assign opacity" msgstr "Призначити непрозорість" -#: ../src/widgets/dropper-toolbar.cpp:132 +#: ../src/widgets/dropper-toolbar.cpp:128 msgid "" "If alpha was picked, assign it to selection as fill or stroke transparency" msgstr "" "Якщо підібрано альфу, призначити її заповненню чи штриху у позначеній області" -#: ../src/widgets/dropper-toolbar.cpp:135 +#: ../src/widgets/dropper-toolbar.cpp:131 msgid "Assign" msgstr "Призначити" @@ -25084,19 +25048,19 @@ msgstr "Призначити" msgid "remove" msgstr "вилучити" -#: ../src/widgets/erasor-toolbar.cpp:115 +#: ../src/widgets/eraser-toolbar.cpp:111 msgid "Delete objects touched by the eraser" msgstr "Вилучати об'єкти, яких торкнулася гумка" -#: ../src/widgets/erasor-toolbar.cpp:121 +#: ../src/widgets/eraser-toolbar.cpp:117 msgid "Cut" msgstr "Вирізати" -#: ../src/widgets/erasor-toolbar.cpp:122 +#: ../src/widgets/eraser-toolbar.cpp:118 msgid "Cut out from objects" msgstr "Вирізати з об'єктів" -#: ../src/widgets/erasor-toolbar.cpp:150 +#: ../src/widgets/eraser-toolbar.cpp:146 msgid "The width of the eraser pen (relative to the visible canvas area)" msgstr "Ширина гумки (відносно видимої області полотна)" @@ -25128,40 +25092,40 @@ msgstr "Встановлення візерунку для заповнення" msgid "Set pattern on stroke" msgstr "Додати візерунок до штриха" -#: ../src/widgets/font-selector.cpp:135 ../src/widgets/text-toolbar.cpp:966 -#: ../src/widgets/text-toolbar.cpp:1284 +#: ../src/widgets/font-selector.cpp:134 ../src/widgets/text-toolbar.cpp:962 +#: ../src/widgets/text-toolbar.cpp:1275 msgid "Font size" msgstr "Розмір шрифту" #. Family frame -#: ../src/widgets/font-selector.cpp:149 +#: ../src/widgets/font-selector.cpp:148 msgid "Font family" msgstr "Гарнітура шрифту" #. Style frame -#: ../src/widgets/font-selector.cpp:192 +#: ../src/widgets/font-selector.cpp:191 msgctxt "Font selector" msgid "Style" msgstr "Стиль" -#: ../src/widgets/font-selector.cpp:243 ../share/extensions/dots.inx.h:3 +#: ../src/widgets/font-selector.cpp:242 ../share/extensions/dots.inx.h:3 msgid "Font size:" msgstr "Розмір шрифту:" -#: ../src/widgets/gradient-selector.cpp:207 +#: ../src/widgets/gradient-selector.cpp:208 msgid "Create a duplicate gradient" msgstr "Створення дублікат градієнта" -#: ../src/widgets/gradient-selector.cpp:217 +#: ../src/widgets/gradient-selector.cpp:218 msgid "Edit gradient" msgstr "Змінити градієнт" -#: ../src/widgets/gradient-selector.cpp:288 +#: ../src/widgets/gradient-selector.cpp:289 #: ../src/widgets/paint-selector.cpp:244 msgid "Swatch" msgstr "Зразок" -#: ../src/widgets/gradient-selector.cpp:338 +#: ../src/widgets/gradient-selector.cpp:339 msgid "Rename gradient" msgstr "Перейменувати градієнт" @@ -25330,6 +25294,7 @@ msgstr "Зв'язати градієнти, щоб вони змінювалис #: ../src/widgets/gradient-vector.cpp:332 #: ../src/widgets/paint-selector.cpp:922 +#: ../src/widgets/stroke-marker-selector.cpp:154 msgid "No document selected" msgstr "Документ не вибрано" @@ -25367,44 +25332,44 @@ msgstr "Редактор градієнтів" msgid "Change gradient stop color" msgstr "Змінити колір опорної точки градієнта" -#: ../src/widgets/lpe-toolbar.cpp:249 +#: ../src/widgets/lpe-toolbar.cpp:252 msgid "Closed" msgstr "Заблокований" -#: ../src/widgets/lpe-toolbar.cpp:251 +#: ../src/widgets/lpe-toolbar.cpp:254 msgid "Open start" msgstr "Відкритий початок" -#: ../src/widgets/lpe-toolbar.cpp:253 +#: ../src/widgets/lpe-toolbar.cpp:256 msgid "Open end" msgstr "Відкритий кінець" -#: ../src/widgets/lpe-toolbar.cpp:255 +#: ../src/widgets/lpe-toolbar.cpp:258 msgid "Open both" msgstr "Відкриті обидва кінці" -#: ../src/widgets/lpe-toolbar.cpp:314 +#: ../src/widgets/lpe-toolbar.cpp:317 msgid "All inactive" msgstr "Всі незадіяні" -#: ../src/widgets/lpe-toolbar.cpp:315 +#: ../src/widgets/lpe-toolbar.cpp:318 msgid "No geometric tool is active" msgstr "Жоден з геометричних інструментів не задіяно" -#: ../src/widgets/lpe-toolbar.cpp:348 +#: ../src/widgets/lpe-toolbar.cpp:351 msgid "Show limiting bounding box" msgstr "Показати контур-обгортку" -#: ../src/widgets/lpe-toolbar.cpp:349 +#: ../src/widgets/lpe-toolbar.cpp:352 msgid "Show bounding box (used to cut infinite lines)" msgstr "" "Показувати рамку-обгортку (використовується для вирізання нескінченних ліній)" -#: ../src/widgets/lpe-toolbar.cpp:360 +#: ../src/widgets/lpe-toolbar.cpp:363 msgid "Get limiting bounding box from selection" msgstr "Отримати контур-обгортку з позначених об'єктів" -#: ../src/widgets/lpe-toolbar.cpp:361 +#: ../src/widgets/lpe-toolbar.cpp:364 msgid "" "Set limiting bounding box (used to cut infinite lines) to the bounding box " "of current selection" @@ -25412,42 +25377,49 @@ msgstr "" "Вказати обмежувальну рамку-обгортку (використовується для обрізання " "нескінченних ліній) до рамки-обгортки поточної вибраної області" -#: ../src/widgets/lpe-toolbar.cpp:373 +#: ../src/widgets/lpe-toolbar.cpp:376 msgid "Choose a line segment type" msgstr "Обрати тип сегмента лінії" -#: ../src/widgets/lpe-toolbar.cpp:389 +#: ../src/widgets/lpe-toolbar.cpp:392 msgid "Display measuring info" msgstr "Показати відомості щодо виміру" -#: ../src/widgets/lpe-toolbar.cpp:390 +#: ../src/widgets/lpe-toolbar.cpp:393 msgid "Display measuring info for selected items" msgstr "Показувати відомості щодо виміру для вибраних елементів" -#: ../src/widgets/lpe-toolbar.cpp:410 +#. Add the units menu. +#: ../src/widgets/lpe-toolbar.cpp:403 ../src/widgets/node-toolbar.cpp:625 +#: ../src/widgets/paintbucket-toolbar.cpp:186 +#: ../src/widgets/rect-toolbar.cpp:378 ../src/widgets/select-toolbar.cpp:542 +msgid "Units" +msgstr "Одиниці" + +#: ../src/widgets/lpe-toolbar.cpp:413 msgid "Open LPE dialog" msgstr "Відкрити діалогове вікно геометричних побудов" -#: ../src/widgets/lpe-toolbar.cpp:411 +#: ../src/widgets/lpe-toolbar.cpp:414 msgid "Open LPE dialog (to adapt parameters numerically)" msgstr "" "Відкрити діалогове вікно геометричних побудов (для числового налаштування " "параметрів)" -#: ../src/widgets/measure-toolbar.cpp:102 ../src/widgets/text-toolbar.cpp:1287 +#: ../src/widgets/measure-toolbar.cpp:103 ../src/widgets/text-toolbar.cpp:1278 msgid "Font Size" msgstr "Розмір шрифту" -#: ../src/widgets/measure-toolbar.cpp:102 +#: ../src/widgets/measure-toolbar.cpp:103 msgid "Font Size:" msgstr "Розмір шрифту:" -#: ../src/widgets/measure-toolbar.cpp:103 +#: ../src/widgets/measure-toolbar.cpp:104 msgid "The font size to be used in the measurement labels" msgstr "Розмір шрифту, який буде використано для міток вимірювання" -#: ../src/widgets/measure-toolbar.cpp:115 -#: ../src/widgets/measure-toolbar.cpp:123 +#: ../src/widgets/measure-toolbar.cpp:116 +#: ../src/widgets/measure-toolbar.cpp:124 msgid "The units to be used for the measurements" msgstr "Одиниці, які буде використано для вимірювання" @@ -25468,6 +25440,7 @@ msgid "Create conical gradient" msgstr "Створити конічний градієнт" #: ../src/widgets/mesh-toolbar.cpp:263 +#: ../share/extensions/guides_creator.inx.h:5 msgid "Rows" msgstr "Рядки" @@ -25480,6 +25453,7 @@ msgid "Number of rows in new mesh" msgstr "Кількість рядків у новій сітці" #: ../src/widgets/mesh-toolbar.cpp:279 +#: ../share/extensions/guides_creator.inx.h:4 msgid "Columns" msgstr "Стовпчики" @@ -25507,7 +25481,7 @@ msgstr "Редагування штриха" msgid "Edit stroke mesh" msgstr "Редагування сітки штриха" -#: ../src/widgets/mesh-toolbar.cpp:317 ../src/widgets/node-toolbar.cpp:530 +#: ../src/widgets/mesh-toolbar.cpp:317 ../src/widgets/node-toolbar.cpp:533 msgid "Show Handles" msgstr "Показувати елементи керування" @@ -25515,203 +25489,203 @@ msgstr "Показувати елементи керування" msgid "Show side and tensor handles" msgstr "Показати бічний елемент та елемент керування тензором" -#: ../src/widgets/node-toolbar.cpp:350 +#: ../src/widgets/node-toolbar.cpp:353 msgid "Insert node" msgstr "Вставити вузол" -#: ../src/widgets/node-toolbar.cpp:351 +#: ../src/widgets/node-toolbar.cpp:354 msgid "Insert new nodes into selected segments" msgstr "Вставити нові вузли у позначені сегменти" -#: ../src/widgets/node-toolbar.cpp:354 +#: ../src/widgets/node-toolbar.cpp:357 msgid "Insert" msgstr "Вставити" -#: ../src/widgets/node-toolbar.cpp:365 +#: ../src/widgets/node-toolbar.cpp:368 msgid "Insert node at min X" msgstr "Вставити вузол у точці мінімуму за X" -#: ../src/widgets/node-toolbar.cpp:366 +#: ../src/widgets/node-toolbar.cpp:369 msgid "Insert new nodes at min X into selected segments" msgstr "" "Вставити нові вузли у позначені сегменти у точках з мінімальними " "координатами за X" -#: ../src/widgets/node-toolbar.cpp:369 +#: ../src/widgets/node-toolbar.cpp:372 msgid "Insert min X" msgstr "Вставити у мін. X" -#: ../src/widgets/node-toolbar.cpp:375 +#: ../src/widgets/node-toolbar.cpp:378 msgid "Insert node at max X" msgstr "Вставити вузол у точці максимуму за X" -#: ../src/widgets/node-toolbar.cpp:376 +#: ../src/widgets/node-toolbar.cpp:379 msgid "Insert new nodes at max X into selected segments" msgstr "" "Вставити нові вузли у позначені сегменти у точках з максимальними " "координатами за X" -#: ../src/widgets/node-toolbar.cpp:379 +#: ../src/widgets/node-toolbar.cpp:382 msgid "Insert max X" msgstr "Вставити у макс. X" -#: ../src/widgets/node-toolbar.cpp:385 +#: ../src/widgets/node-toolbar.cpp:388 msgid "Insert node at min Y" msgstr "Вставити вузол у точці мінімуму за Y" -#: ../src/widgets/node-toolbar.cpp:386 +#: ../src/widgets/node-toolbar.cpp:389 msgid "Insert new nodes at min Y into selected segments" msgstr "" "Вставити нові вузли у позначені сегменти у точках з мінімальними " "координатами за Y" -#: ../src/widgets/node-toolbar.cpp:389 +#: ../src/widgets/node-toolbar.cpp:392 msgid "Insert min Y" msgstr "Вставити у мін. Y" -#: ../src/widgets/node-toolbar.cpp:395 +#: ../src/widgets/node-toolbar.cpp:398 msgid "Insert node at max Y" msgstr "Вставити вузол у точці максимуму за Y" -#: ../src/widgets/node-toolbar.cpp:396 +#: ../src/widgets/node-toolbar.cpp:399 msgid "Insert new nodes at max Y into selected segments" msgstr "" "Вставити нові вузли у позначені сегменти у точках з максимальними " "координатами за Y" -#: ../src/widgets/node-toolbar.cpp:399 +#: ../src/widgets/node-toolbar.cpp:402 msgid "Insert max Y" msgstr "Вставити у макс. Y" -#: ../src/widgets/node-toolbar.cpp:407 +#: ../src/widgets/node-toolbar.cpp:410 msgid "Delete selected nodes" msgstr "Вилучити позначені вузли" -#: ../src/widgets/node-toolbar.cpp:418 +#: ../src/widgets/node-toolbar.cpp:421 msgid "Join selected nodes" msgstr "З'єднати позначені вузли" -#: ../src/widgets/node-toolbar.cpp:421 +#: ../src/widgets/node-toolbar.cpp:424 msgid "Join" msgstr "З'єднати" -#: ../src/widgets/node-toolbar.cpp:429 +#: ../src/widgets/node-toolbar.cpp:432 msgid "Break path at selected nodes" msgstr "Розірвати контур у позначеному вузлі" -#: ../src/widgets/node-toolbar.cpp:439 +#: ../src/widgets/node-toolbar.cpp:442 msgid "Join with segment" msgstr "З'єднати сегментом" -#: ../src/widgets/node-toolbar.cpp:440 +#: ../src/widgets/node-toolbar.cpp:443 msgid "Join selected endnodes with a new segment" msgstr "З'єднати позначені вузли новим сегментом" -#: ../src/widgets/node-toolbar.cpp:449 +#: ../src/widgets/node-toolbar.cpp:452 msgid "Delete segment" msgstr "Вилучити сегмент" -#: ../src/widgets/node-toolbar.cpp:450 +#: ../src/widgets/node-toolbar.cpp:453 msgid "Delete segment between two non-endpoint nodes" msgstr "Вилучити сегмент між двома не кінцевими вузлами" -#: ../src/widgets/node-toolbar.cpp:459 +#: ../src/widgets/node-toolbar.cpp:462 msgid "Node Cusp" msgstr "Гострі вузли" -#: ../src/widgets/node-toolbar.cpp:460 +#: ../src/widgets/node-toolbar.cpp:463 msgid "Make selected nodes corner" msgstr "Зробити позначені вузли гострими" -#: ../src/widgets/node-toolbar.cpp:469 +#: ../src/widgets/node-toolbar.cpp:472 msgid "Node Smooth" msgstr "Згладити вузли" -#: ../src/widgets/node-toolbar.cpp:470 +#: ../src/widgets/node-toolbar.cpp:473 msgid "Make selected nodes smooth" msgstr "Зробити позначені вузли гладкими" -#: ../src/widgets/node-toolbar.cpp:479 +#: ../src/widgets/node-toolbar.cpp:482 msgid "Node Symmetric" msgstr "Симетричні вузли" -#: ../src/widgets/node-toolbar.cpp:480 +#: ../src/widgets/node-toolbar.cpp:483 msgid "Make selected nodes symmetric" msgstr "Зробити позначені вузли симетричними" -#: ../src/widgets/node-toolbar.cpp:489 +#: ../src/widgets/node-toolbar.cpp:492 msgid "Node Auto" msgstr "Автовузол" -#: ../src/widgets/node-toolbar.cpp:490 +#: ../src/widgets/node-toolbar.cpp:493 msgid "Make selected nodes auto-smooth" msgstr "Автоматичне згладжування вибраних вузлів" -#: ../src/widgets/node-toolbar.cpp:499 +#: ../src/widgets/node-toolbar.cpp:502 msgid "Node Line" msgstr "Лінії вузла" -#: ../src/widgets/node-toolbar.cpp:500 +#: ../src/widgets/node-toolbar.cpp:503 msgid "Make selected segments lines" msgstr "Зробити позначені сегменти прямими" -#: ../src/widgets/node-toolbar.cpp:509 +#: ../src/widgets/node-toolbar.cpp:512 msgid "Node Curve" msgstr "Криві вузла" -#: ../src/widgets/node-toolbar.cpp:510 +#: ../src/widgets/node-toolbar.cpp:513 msgid "Make selected segments curves" msgstr "Зробити позначені сегменти кривими" -#: ../src/widgets/node-toolbar.cpp:519 +#: ../src/widgets/node-toolbar.cpp:522 msgid "Show Transform Handles" msgstr "Показати елементи керування перетворенням" -#: ../src/widgets/node-toolbar.cpp:520 +#: ../src/widgets/node-toolbar.cpp:523 msgid "Show transformation handles for selected nodes" msgstr "Показувати елементи керування перетворенням для позначених вузлів" -#: ../src/widgets/node-toolbar.cpp:531 +#: ../src/widgets/node-toolbar.cpp:534 msgid "Show Bezier handles of selected nodes" msgstr "Показувати елементи керування кривою Безьє для позначених вузлів" -#: ../src/widgets/node-toolbar.cpp:541 +#: ../src/widgets/node-toolbar.cpp:544 msgid "Show Outline" msgstr "Показати обрис" -#: ../src/widgets/node-toolbar.cpp:542 +#: ../src/widgets/node-toolbar.cpp:545 msgid "Show path outline (without path effects)" msgstr "Показувати обрис контуру (без ефектів контуру)" -#: ../src/widgets/node-toolbar.cpp:564 +#: ../src/widgets/node-toolbar.cpp:567 msgid "Edit clipping paths" msgstr "Зміна контурів обрізання" -#: ../src/widgets/node-toolbar.cpp:565 +#: ../src/widgets/node-toolbar.cpp:568 msgid "Show clipping path(s) of selected object(s)" msgstr "Показувати контури обрізання позначених об'єктів" -#: ../src/widgets/node-toolbar.cpp:575 +#: ../src/widgets/node-toolbar.cpp:578 msgid "Edit masks" msgstr "Зміна масок" -#: ../src/widgets/node-toolbar.cpp:576 +#: ../src/widgets/node-toolbar.cpp:579 msgid "Show mask(s) of selected object(s)" msgstr "Показувати маски позначених об'єктів" -#: ../src/widgets/node-toolbar.cpp:590 +#: ../src/widgets/node-toolbar.cpp:593 msgid "X coordinate:" msgstr "X координата:" -#: ../src/widgets/node-toolbar.cpp:590 +#: ../src/widgets/node-toolbar.cpp:593 msgid "X coordinate of selected node(s)" msgstr "X-координата вибраних вузлів" -#: ../src/widgets/node-toolbar.cpp:608 +#: ../src/widgets/node-toolbar.cpp:611 msgid "Y coordinate:" msgstr "Y координата:" -#: ../src/widgets/node-toolbar.cpp:608 +#: ../src/widgets/node-toolbar.cpp:611 msgid "Y coordinate of selected node(s)" msgstr "Y-координата вибраних вузлів" @@ -25735,36 +25709,36 @@ msgstr "" "Максимальна допустима різниця між точкою, на якій клацнули та сусідніми " "точками які обчислені у заповненні" -#: ../src/widgets/paintbucket-toolbar.cpp:193 +#: ../src/widgets/paintbucket-toolbar.cpp:194 msgid "Grow/shrink by" msgstr "Збільшити/зменшити на" -#: ../src/widgets/paintbucket-toolbar.cpp:193 +#: ../src/widgets/paintbucket-toolbar.cpp:194 msgid "Grow/shrink by:" msgstr "Збільшити/зменшити на:" -#: ../src/widgets/paintbucket-toolbar.cpp:194 +#: ../src/widgets/paintbucket-toolbar.cpp:195 msgid "" "The amount to grow (positive) or shrink (negative) the created fill path" msgstr "" "Величина збільшення (додатне число) або зменшення (від'ємне) створеного " "контуру заповнення" -#: ../src/widgets/paintbucket-toolbar.cpp:219 +#: ../src/widgets/paintbucket-toolbar.cpp:220 msgid "Close gaps" msgstr "Закрити проміжки" -#: ../src/widgets/paintbucket-toolbar.cpp:220 +#: ../src/widgets/paintbucket-toolbar.cpp:221 msgid "Close gaps:" msgstr "Закриті проміжки:" -#: ../src/widgets/paintbucket-toolbar.cpp:231 -#: ../src/widgets/pencil-toolbar.cpp:326 ../src/widgets/spiral-toolbar.cpp:304 -#: ../src/widgets/star-toolbar.cpp:576 +#: ../src/widgets/paintbucket-toolbar.cpp:232 +#: ../src/widgets/pencil-toolbar.cpp:321 ../src/widgets/spiral-toolbar.cpp:300 +#: ../src/widgets/star-toolbar.cpp:572 msgid "Defaults" msgstr "Типово" -#: ../src/widgets/paintbucket-toolbar.cpp:232 +#: ../src/widgets/paintbucket-toolbar.cpp:233 msgid "" "Reset paint bucket parameters to defaults (use Inkscape Preferences > Tools " "to change defaults)" @@ -25855,83 +25829,83 @@ msgstr "" msgid "Pattern fill" msgstr "Заповнення візерунком" -#: ../src/widgets/paint-selector.cpp:1164 +#: ../src/widgets/paint-selector.cpp:1162 msgid "Swatch fill" msgstr "Заливання за зразком" -#: ../src/widgets/pencil-toolbar.cpp:130 +#: ../src/widgets/pencil-toolbar.cpp:125 msgid "Bezier" msgstr "Крива Безьє" -#: ../src/widgets/pencil-toolbar.cpp:131 +#: ../src/widgets/pencil-toolbar.cpp:126 msgid "Create regular Bezier path" msgstr "Створення регулярного контуру Безьє" -#: ../src/widgets/pencil-toolbar.cpp:138 +#: ../src/widgets/pencil-toolbar.cpp:133 msgid "Create Spiro path" msgstr "Створення контуру Спіро" -#: ../src/widgets/pencil-toolbar.cpp:145 +#: ../src/widgets/pencil-toolbar.cpp:140 msgid "Zigzag" msgstr "Зиґзаґ" -#: ../src/widgets/pencil-toolbar.cpp:146 +#: ../src/widgets/pencil-toolbar.cpp:141 msgid "Create a sequence of straight line segments" msgstr "Створити послідовність прямих сегментів лінії" -#: ../src/widgets/pencil-toolbar.cpp:152 +#: ../src/widgets/pencil-toolbar.cpp:147 msgid "Paraxial" msgstr "Приосьовий режим" -#: ../src/widgets/pencil-toolbar.cpp:153 +#: ../src/widgets/pencil-toolbar.cpp:148 msgid "Create a sequence of paraxial line segments" msgstr "Створити послідовність парааксіальних сегментів лінії" -#: ../src/widgets/pencil-toolbar.cpp:161 +#: ../src/widgets/pencil-toolbar.cpp:156 msgid "Mode of new lines drawn by this tool" msgstr "Режим малювання нових ліній за допомогою цього інструмента" -#: ../src/widgets/pencil-toolbar.cpp:190 +#: ../src/widgets/pencil-toolbar.cpp:185 msgid "Triangle in" msgstr "Послаблення" -#: ../src/widgets/pencil-toolbar.cpp:191 +#: ../src/widgets/pencil-toolbar.cpp:186 msgid "Triangle out" msgstr "Посилення" -#: ../src/widgets/pencil-toolbar.cpp:193 +#: ../src/widgets/pencil-toolbar.cpp:188 msgid "From clipboard" msgstr "З буфера обміну даними" -#: ../src/widgets/pencil-toolbar.cpp:218 ../src/widgets/pencil-toolbar.cpp:219 +#: ../src/widgets/pencil-toolbar.cpp:213 ../src/widgets/pencil-toolbar.cpp:214 msgid "Shape:" msgstr "Форма:" -#: ../src/widgets/pencil-toolbar.cpp:218 +#: ../src/widgets/pencil-toolbar.cpp:213 msgid "Shape of new paths drawn by this tool" msgstr "Форма нових контурів, створений за допомогою цього інструмента" -#: ../src/widgets/pencil-toolbar.cpp:303 +#: ../src/widgets/pencil-toolbar.cpp:298 msgid "(many nodes, rough)" msgstr "(багато вузлів, груба)" -#: ../src/widgets/pencil-toolbar.cpp:303 +#: ../src/widgets/pencil-toolbar.cpp:298 msgid "(few nodes, smooth)" msgstr "(мало вузлів, гладка)" -#: ../src/widgets/pencil-toolbar.cpp:306 +#: ../src/widgets/pencil-toolbar.cpp:301 msgid "Smoothing:" msgstr "Згладжування:" -#: ../src/widgets/pencil-toolbar.cpp:306 +#: ../src/widgets/pencil-toolbar.cpp:301 msgid "Smoothing: " msgstr "Згладжування: " -#: ../src/widgets/pencil-toolbar.cpp:307 +#: ../src/widgets/pencil-toolbar.cpp:302 msgid "How much smoothing (simplifying) is applied to the line" msgstr "Міра згладжування (спрощення), яку буде застосовано до лінії" -#: ../src/widgets/pencil-toolbar.cpp:327 +#: ../src/widgets/pencil-toolbar.cpp:322 msgid "" "Reset pencil parameters to defaults (use Inkscape Preferences > Tools to " "change defaults)" @@ -25939,79 +25913,115 @@ msgstr "" "Відновити типові параметри пера (типові параметри можна змінити у вікні " "Параметри Inkscape->Інструменти)" -#: ../src/widgets/rect-toolbar.cpp:128 +#: ../src/widgets/rect-toolbar.cpp:130 msgid "Change rectangle" msgstr "Змінити прямокутник" -#: ../src/widgets/rect-toolbar.cpp:315 +#: ../src/widgets/rect-toolbar.cpp:317 msgid "W:" msgstr "Ш:" -#: ../src/widgets/rect-toolbar.cpp:315 +#: ../src/widgets/rect-toolbar.cpp:317 msgid "Width of rectangle" msgstr "Ширина прямокутника" -#: ../src/widgets/rect-toolbar.cpp:332 +#: ../src/widgets/rect-toolbar.cpp:334 msgid "H:" msgstr "Г:" -#: ../src/widgets/rect-toolbar.cpp:332 +#: ../src/widgets/rect-toolbar.cpp:334 msgid "Height of rectangle" msgstr "Висота прямокутника" -#: ../src/widgets/rect-toolbar.cpp:346 ../src/widgets/rect-toolbar.cpp:361 +#: ../src/widgets/rect-toolbar.cpp:348 ../src/widgets/rect-toolbar.cpp:363 msgid "not rounded" msgstr "не округлений" -#: ../src/widgets/rect-toolbar.cpp:349 +#: ../src/widgets/rect-toolbar.cpp:351 msgid "Horizontal radius" msgstr "Горизонтальний радіус" -#: ../src/widgets/rect-toolbar.cpp:349 +#: ../src/widgets/rect-toolbar.cpp:351 msgid "Rx:" msgstr "Гор. радіус:" -#: ../src/widgets/rect-toolbar.cpp:349 +#: ../src/widgets/rect-toolbar.cpp:351 msgid "Horizontal radius of rounded corners" msgstr "Горизонтальний радіус округлених кутів" -#: ../src/widgets/rect-toolbar.cpp:364 +#: ../src/widgets/rect-toolbar.cpp:366 msgid "Vertical radius" msgstr "Вертикальний радіус" -#: ../src/widgets/rect-toolbar.cpp:364 +#: ../src/widgets/rect-toolbar.cpp:366 msgid "Ry:" msgstr "Верт. радіус:" -#: ../src/widgets/rect-toolbar.cpp:364 +#: ../src/widgets/rect-toolbar.cpp:366 msgid "Vertical radius of rounded corners" msgstr "Вертикальний радіус округлених кутів" -#: ../src/widgets/rect-toolbar.cpp:383 +#: ../src/widgets/rect-toolbar.cpp:385 msgid "Not rounded" msgstr "Не округлений" -#: ../src/widgets/rect-toolbar.cpp:384 +#: ../src/widgets/rect-toolbar.cpp:386 msgid "Make corners sharp" msgstr "Прибрати округлення кутів" -#: ../src/widgets/select-toolbar.cpp:263 +#: ../src/widgets/ruler.cpp:192 +msgid "The orientation of the ruler" +msgstr "Орієнтація лінійки" + +#: ../src/widgets/ruler.cpp:202 +msgid "Unit of the ruler" +msgstr "Одиниця виміру на лінійці" + +#: ../src/widgets/ruler.cpp:209 +msgid "Lower" +msgstr "Нижня" + +#: ../src/widgets/ruler.cpp:210 +msgid "Lower limit of ruler" +msgstr "Нижня межа на лінійці" + +#: ../src/widgets/ruler.cpp:219 +msgid "Upper" +msgstr "Верхня" + +#: ../src/widgets/ruler.cpp:220 +msgid "Upper limit of ruler" +msgstr "Верхня межа на лінійці" + +#: ../src/widgets/ruler.cpp:230 +msgid "Position of mark on the ruler" +msgstr "Розташування позначки на лінійці" + +#: ../src/widgets/ruler.cpp:239 +msgid "Max Size" +msgstr "Макс. розмір" + +#: ../src/widgets/ruler.cpp:240 +msgid "Maximum size of the ruler" +msgstr "Максимальний розмір лінійки" + +#: ../src/widgets/select-toolbar.cpp:267 msgid "Transform by toolbar" msgstr "Трансформувати візерунки" -#: ../src/widgets/select-toolbar.cpp:341 +#: ../src/widgets/select-toolbar.cpp:345 msgid "Now stroke width is scaled when objects are scaled." msgstr "" "Тепер товщина штриха масштабується під час зміни масштабу " "об'єктів." -#: ../src/widgets/select-toolbar.cpp:343 +#: ../src/widgets/select-toolbar.cpp:347 msgid "Now stroke width is not scaled when objects are scaled." msgstr "" "Тепер товщина штриха не масштабується під час зміни масштабу " "об'єктів." -#: ../src/widgets/select-toolbar.cpp:354 +#: ../src/widgets/select-toolbar.cpp:358 msgid "" "Now rounded rectangle corners are scaled when rectangles are " "scaled." @@ -26019,7 +26029,7 @@ msgstr "" "Тепер закруглені кути прямокутника змінюватимуть масштаб під " "час зміни масштабу прямокутника." -#: ../src/widgets/select-toolbar.cpp:356 +#: ../src/widgets/select-toolbar.cpp:360 msgid "" "Now rounded rectangle corners are not scaled when rectangles " "are scaled." @@ -26027,7 +26037,7 @@ msgstr "" "Тепер закруглені кути прямокутника не змінюватимуть масштаб " "під час зміни масштабу прямокутника." -#: ../src/widgets/select-toolbar.cpp:367 +#: ../src/widgets/select-toolbar.cpp:371 msgid "" "Now gradients are transformed along with their objects when " "those are transformed (moved, scaled, rotated, or skewed)." @@ -26036,7 +26046,7 @@ msgstr "" "коли вони перетворюватимуться (переміщуватимуться, змінюватимуть масштаб, " "повертатимуться або нахилятимуться)." -#: ../src/widgets/select-toolbar.cpp:369 +#: ../src/widgets/select-toolbar.cpp:373 msgid "" "Now gradients remain fixed when objects are transformed " "(moved, scaled, rotated, or skewed)." @@ -26044,7 +26054,7 @@ msgstr "" "Тепер закруглені кути прямокутника не змінюватимуться під час " "зміни масштабу прямокутника." -#: ../src/widgets/select-toolbar.cpp:380 +#: ../src/widgets/select-toolbar.cpp:384 msgid "" "Now patterns are transformed along with their objects when " "those are transformed (moved, scaled, rotated, or skewed)." @@ -26053,7 +26063,7 @@ msgstr "" "коли вони перетворюватимуться (переміщуватимуться, змінюватимуть масштаб, " "повертатимуться або нахилятимуться)." -#: ../src/widgets/select-toolbar.cpp:382 +#: ../src/widgets/select-toolbar.cpp:386 msgid "" "Now patterns remain fixed when objects are transformed (moved, " "scaled, rotated, or skewed)." @@ -26063,167 +26073,167 @@ msgstr "" "повертатимуться або нахилятимуться)." #. four spinbuttons -#: ../src/widgets/select-toolbar.cpp:500 +#: ../src/widgets/select-toolbar.cpp:504 msgctxt "Select toolbar" msgid "X position" msgstr "Розташування за X" -#: ../src/widgets/select-toolbar.cpp:500 +#: ../src/widgets/select-toolbar.cpp:504 msgctxt "Select toolbar" msgid "X:" msgstr "X:" -#: ../src/widgets/select-toolbar.cpp:502 +#: ../src/widgets/select-toolbar.cpp:506 msgid "Horizontal coordinate of selection" msgstr "Горизонтальна координата позначення" -#: ../src/widgets/select-toolbar.cpp:506 +#: ../src/widgets/select-toolbar.cpp:510 msgctxt "Select toolbar" msgid "Y position" msgstr "Розташування за Y" -#: ../src/widgets/select-toolbar.cpp:506 +#: ../src/widgets/select-toolbar.cpp:510 msgctxt "Select toolbar" msgid "Y:" msgstr "Y:" -#: ../src/widgets/select-toolbar.cpp:508 +#: ../src/widgets/select-toolbar.cpp:512 msgid "Vertical coordinate of selection" msgstr "Вертикальна координата позначення" -#: ../src/widgets/select-toolbar.cpp:512 +#: ../src/widgets/select-toolbar.cpp:516 msgctxt "Select toolbar" msgid "Width" msgstr "Ширина" -#: ../src/widgets/select-toolbar.cpp:512 +#: ../src/widgets/select-toolbar.cpp:516 msgctxt "Select toolbar" msgid "W:" msgstr "Ш:" -#: ../src/widgets/select-toolbar.cpp:514 +#: ../src/widgets/select-toolbar.cpp:518 msgid "Width of selection" msgstr "Ширина позначення" -#: ../src/widgets/select-toolbar.cpp:521 +#: ../src/widgets/select-toolbar.cpp:525 msgid "Lock width and height" msgstr "Заблокувати ширину і висоту" -#: ../src/widgets/select-toolbar.cpp:522 +#: ../src/widgets/select-toolbar.cpp:526 msgid "When locked, change both width and height by the same proportion" msgstr "Коли заблоковано, пропорційно змінювати ширину та висоту" -#: ../src/widgets/select-toolbar.cpp:531 +#: ../src/widgets/select-toolbar.cpp:535 msgctxt "Select toolbar" msgid "Height" msgstr "Висота" -#: ../src/widgets/select-toolbar.cpp:531 +#: ../src/widgets/select-toolbar.cpp:535 msgctxt "Select toolbar" msgid "H:" msgstr "В:" -#: ../src/widgets/select-toolbar.cpp:533 +#: ../src/widgets/select-toolbar.cpp:537 msgid "Height of selection" msgstr "Висота позначення" -#: ../src/widgets/select-toolbar.cpp:583 +#: ../src/widgets/select-toolbar.cpp:587 msgid "Scale rounded corners" msgstr "Змінити розмір округлених кутів" -#: ../src/widgets/select-toolbar.cpp:594 +#: ../src/widgets/select-toolbar.cpp:598 msgid "Move gradients" msgstr "Перемістити градієнти" -#: ../src/widgets/select-toolbar.cpp:605 +#: ../src/widgets/select-toolbar.cpp:609 msgid "Move patterns" msgstr "Перемістити текстури" -#: ../src/widgets/spiral-toolbar.cpp:115 +#: ../src/widgets/spiral-toolbar.cpp:111 msgid "Change spiral" msgstr "Змінити спіраль" -#: ../src/widgets/spiral-toolbar.cpp:261 +#: ../src/widgets/spiral-toolbar.cpp:257 msgid "just a curve" msgstr "просто крива" -#: ../src/widgets/spiral-toolbar.cpp:261 +#: ../src/widgets/spiral-toolbar.cpp:257 msgid "one full revolution" msgstr "один повний оберт" -#: ../src/widgets/spiral-toolbar.cpp:264 +#: ../src/widgets/spiral-toolbar.cpp:260 msgid "Number of turns" msgstr "Кількість витків" -#: ../src/widgets/spiral-toolbar.cpp:264 +#: ../src/widgets/spiral-toolbar.cpp:260 msgid "Turns:" msgstr "Витків:" -#: ../src/widgets/spiral-toolbar.cpp:264 +#: ../src/widgets/spiral-toolbar.cpp:260 msgid "Number of revolutions" msgstr "Кількість витків" -#: ../src/widgets/spiral-toolbar.cpp:275 +#: ../src/widgets/spiral-toolbar.cpp:271 msgid "circle" msgstr "коло" -#: ../src/widgets/spiral-toolbar.cpp:275 +#: ../src/widgets/spiral-toolbar.cpp:271 msgid "edge is much denser" msgstr "біля краю набагато частіше" -#: ../src/widgets/spiral-toolbar.cpp:275 +#: ../src/widgets/spiral-toolbar.cpp:271 msgid "edge is denser" msgstr "біля краю частіше" -#: ../src/widgets/spiral-toolbar.cpp:275 +#: ../src/widgets/spiral-toolbar.cpp:271 msgid "even" msgstr "рівна спіраль" -#: ../src/widgets/spiral-toolbar.cpp:275 +#: ../src/widgets/spiral-toolbar.cpp:271 msgid "center is denser" msgstr "біля центру частіше" -#: ../src/widgets/spiral-toolbar.cpp:275 +#: ../src/widgets/spiral-toolbar.cpp:271 msgid "center is much denser" msgstr "біля центру набагато частіше" -#: ../src/widgets/spiral-toolbar.cpp:278 +#: ../src/widgets/spiral-toolbar.cpp:274 msgid "Divergence" msgstr "Розходження" -#: ../src/widgets/spiral-toolbar.cpp:278 +#: ../src/widgets/spiral-toolbar.cpp:274 msgid "Divergence:" msgstr "Розходження:" -#: ../src/widgets/spiral-toolbar.cpp:278 +#: ../src/widgets/spiral-toolbar.cpp:274 msgid "How much denser/sparser are outer revolutions; 1 = uniform" msgstr "Ступінь збільшення/зменшення відстані між витками; 1 = рівномірно" -#: ../src/widgets/spiral-toolbar.cpp:289 +#: ../src/widgets/spiral-toolbar.cpp:285 msgid "starts from center" msgstr "почати від центру" -#: ../src/widgets/spiral-toolbar.cpp:289 +#: ../src/widgets/spiral-toolbar.cpp:285 msgid "starts mid-way" msgstr "почати на півдорозі" -#: ../src/widgets/spiral-toolbar.cpp:289 +#: ../src/widgets/spiral-toolbar.cpp:285 msgid "starts near edge" msgstr "почати поряд з краєм" -#: ../src/widgets/spiral-toolbar.cpp:292 +#: ../src/widgets/spiral-toolbar.cpp:288 msgid "Inner radius" msgstr "Внутрішній радіус" -#: ../src/widgets/spiral-toolbar.cpp:292 +#: ../src/widgets/spiral-toolbar.cpp:288 msgid "Inner radius:" msgstr "Внутрішній радіус:" -#: ../src/widgets/spiral-toolbar.cpp:292 +#: ../src/widgets/spiral-toolbar.cpp:288 msgid "Radius of the innermost revolution (relative to the spiral size)" msgstr "Радіус першого внутрішнього витка (відносно розміру спіралі)" -#: ../src/widgets/spiral-toolbar.cpp:305 ../src/widgets/star-toolbar.cpp:577 +#: ../src/widgets/spiral-toolbar.cpp:301 ../src/widgets/star-toolbar.cpp:573 msgid "" "Reset shape parameters to defaults (use Inkscape Preferences > Tools to " "change defaults)" @@ -26232,116 +26242,116 @@ msgstr "" "Параметри Inkscape->Інструменти)" #. Width -#: ../src/widgets/spray-toolbar.cpp:129 +#: ../src/widgets/spray-toolbar.cpp:125 msgid "(narrow spray)" msgstr "(вузьке розкидання)" -#: ../src/widgets/spray-toolbar.cpp:129 +#: ../src/widgets/spray-toolbar.cpp:125 msgid "(broad spray)" msgstr "(широке розкидання)" -#: ../src/widgets/spray-toolbar.cpp:132 +#: ../src/widgets/spray-toolbar.cpp:128 msgid "The width of the spray area (relative to the visible canvas area)" msgstr "Ширина області розкидання (відносно видимої області полотна)" -#: ../src/widgets/spray-toolbar.cpp:145 +#: ../src/widgets/spray-toolbar.cpp:141 msgid "(maximum mean)" msgstr "(максимальне середнє)" -#: ../src/widgets/spray-toolbar.cpp:148 +#: ../src/widgets/spray-toolbar.cpp:144 msgid "Focus" msgstr "Фокусування" -#: ../src/widgets/spray-toolbar.cpp:148 +#: ../src/widgets/spray-toolbar.cpp:144 msgid "Focus:" msgstr "Фокусування:" -#: ../src/widgets/spray-toolbar.cpp:148 +#: ../src/widgets/spray-toolbar.cpp:144 msgid "0 to spray a spot; increase to enlarge the ring radius" msgstr "" "0 призведе до малювання п'ятна. Збільшення значення збільшить радіус кільця." #. Standard_deviation -#: ../src/widgets/spray-toolbar.cpp:161 +#: ../src/widgets/spray-toolbar.cpp:157 msgid "(minimum scatter)" msgstr "(мінімальне розсіювання)" -#: ../src/widgets/spray-toolbar.cpp:161 +#: ../src/widgets/spray-toolbar.cpp:157 msgid "(maximum scatter)" msgstr "(максимальне розсіювання)" -#: ../src/widgets/spray-toolbar.cpp:164 +#: ../src/widgets/spray-toolbar.cpp:160 msgctxt "Spray tool" msgid "Scatter" msgstr "Розсіювання" -#: ../src/widgets/spray-toolbar.cpp:164 +#: ../src/widgets/spray-toolbar.cpp:160 msgctxt "Spray tool" msgid "Scatter:" msgstr "Розсіювання:" -#: ../src/widgets/spray-toolbar.cpp:164 +#: ../src/widgets/spray-toolbar.cpp:160 msgid "Increase to scatter sprayed objects" msgstr "Збільшити розсіювання розкиданих об'єктів" -#: ../src/widgets/spray-toolbar.cpp:183 +#: ../src/widgets/spray-toolbar.cpp:179 msgid "Spray copies of the initial selection" msgstr "Розкидати копії початкової позначеної області" -#: ../src/widgets/spray-toolbar.cpp:190 +#: ../src/widgets/spray-toolbar.cpp:186 msgid "Spray clones of the initial selection" msgstr "Розкидати клони початкової позначеної області" -#: ../src/widgets/spray-toolbar.cpp:196 +#: ../src/widgets/spray-toolbar.cpp:192 msgid "Spray single path" msgstr "Розкидати окремий контур" -#: ../src/widgets/spray-toolbar.cpp:197 +#: ../src/widgets/spray-toolbar.cpp:193 msgid "Spray objects in a single path" msgstr "Розкидати об'єкти за окремим контуром" -#: ../src/widgets/spray-toolbar.cpp:201 ../src/widgets/tweak-toolbar.cpp:271 +#: ../src/widgets/spray-toolbar.cpp:197 ../src/widgets/tweak-toolbar.cpp:267 msgid "Mode" msgstr "Режим" #. Population -#: ../src/widgets/spray-toolbar.cpp:221 +#: ../src/widgets/spray-toolbar.cpp:217 msgid "(low population)" msgstr "(низька щільність)" -#: ../src/widgets/spray-toolbar.cpp:221 +#: ../src/widgets/spray-toolbar.cpp:217 msgid "(high population)" msgstr "(висока щільність)" -#: ../src/widgets/spray-toolbar.cpp:224 +#: ../src/widgets/spray-toolbar.cpp:220 msgid "Amount" msgstr "Величина" -#: ../src/widgets/spray-toolbar.cpp:225 +#: ../src/widgets/spray-toolbar.cpp:221 msgid "Adjusts the number of items sprayed per click" msgstr "" "За допомогою цього параметра можна вказати кількість об'єктів, які буде " "розкидано за одне клацання" -#: ../src/widgets/spray-toolbar.cpp:241 +#: ../src/widgets/spray-toolbar.cpp:237 msgid "" "Use the pressure of the input device to alter the amount of sprayed objects" msgstr "" "Використовувати силу натиску пристрою введення для зміни кількості об'єктів" -#: ../src/widgets/spray-toolbar.cpp:251 +#: ../src/widgets/spray-toolbar.cpp:247 msgid "(high rotation variation)" msgstr "(значне відхилення обертання)" -#: ../src/widgets/spray-toolbar.cpp:254 +#: ../src/widgets/spray-toolbar.cpp:250 msgid "Rotation" msgstr "Обертання" -#: ../src/widgets/spray-toolbar.cpp:254 +#: ../src/widgets/spray-toolbar.cpp:250 msgid "Rotation:" msgstr "Обертання:" -#: ../src/widgets/spray-toolbar.cpp:256 +#: ../src/widgets/spray-toolbar.cpp:252 #, no-c-format msgid "" "Variation of the rotation of the sprayed objects; 0% for the same rotation " @@ -26350,21 +26360,21 @@ msgstr "" "Припустиме відхилення у куті повороту розкиданих об'єктів. Значення 0% " "призведе до рівності цього кута куту повороту початкового об'єкта." -#: ../src/widgets/spray-toolbar.cpp:269 +#: ../src/widgets/spray-toolbar.cpp:265 msgid "(high scale variation)" msgstr "(значне відхилення масштабу)" -#: ../src/widgets/spray-toolbar.cpp:272 +#: ../src/widgets/spray-toolbar.cpp:268 msgctxt "Spray tool" msgid "Scale" msgstr "Масштабувати" -#: ../src/widgets/spray-toolbar.cpp:272 +#: ../src/widgets/spray-toolbar.cpp:268 msgctxt "Spray tool" msgid "Scale:" msgstr "Масштаб:" -#: ../src/widgets/spray-toolbar.cpp:274 +#: ../src/widgets/spray-toolbar.cpp:270 #, no-c-format msgid "" "Variation in the scale of the sprayed objects; 0% for the same scale than " @@ -26525,181 +26535,181 @@ msgstr "Значення" msgid "Type text in a text node" msgstr "Надрукувати текст у текстовому вузлі" -#: ../src/widgets/star-toolbar.cpp:114 +#: ../src/widgets/star-toolbar.cpp:110 msgid "Star: Change number of corners" msgstr "Зірка: Зміна кількості кутів" -#: ../src/widgets/star-toolbar.cpp:167 +#: ../src/widgets/star-toolbar.cpp:163 msgid "Star: Change spoke ratio" msgstr "Зірка: Зміна відношення радіусів" -#: ../src/widgets/star-toolbar.cpp:212 +#: ../src/widgets/star-toolbar.cpp:208 msgid "Make polygon" msgstr "Перетворення на багатокутник" -#: ../src/widgets/star-toolbar.cpp:212 +#: ../src/widgets/star-toolbar.cpp:208 msgid "Make star" msgstr "Створення зірки" -#: ../src/widgets/star-toolbar.cpp:251 +#: ../src/widgets/star-toolbar.cpp:247 msgid "Star: Change rounding" msgstr "Зірка: Зміна заокруглення" -#: ../src/widgets/star-toolbar.cpp:291 +#: ../src/widgets/star-toolbar.cpp:287 msgid "Star: Change randomization" msgstr "Зірка: Зміна випадковості викривлення" -#: ../src/widgets/star-toolbar.cpp:475 +#: ../src/widgets/star-toolbar.cpp:471 msgid "Regular polygon (with one handle) instead of a star" msgstr "Правильний багатокутник, а не зірка" -#: ../src/widgets/star-toolbar.cpp:482 +#: ../src/widgets/star-toolbar.cpp:478 msgid "Star instead of a regular polygon (with one handle)" msgstr "Зірка замість звичайного багатокутника (з одним вусом)" -#: ../src/widgets/star-toolbar.cpp:503 +#: ../src/widgets/star-toolbar.cpp:499 msgid "triangle/tri-star" msgstr "трикутник/зірка з 3 променями" -#: ../src/widgets/star-toolbar.cpp:503 +#: ../src/widgets/star-toolbar.cpp:499 msgid "square/quad-star" msgstr "квадрат/зірка з 4 променями" -#: ../src/widgets/star-toolbar.cpp:503 +#: ../src/widgets/star-toolbar.cpp:499 msgid "pentagon/five-pointed star" msgstr "п'ятикутник/зірка з 5 променями" -#: ../src/widgets/star-toolbar.cpp:503 +#: ../src/widgets/star-toolbar.cpp:499 msgid "hexagon/six-pointed star" msgstr "шестикутник/зірка з 6 променями" -#: ../src/widgets/star-toolbar.cpp:506 +#: ../src/widgets/star-toolbar.cpp:502 msgid "Corners" msgstr "Кути" -#: ../src/widgets/star-toolbar.cpp:506 +#: ../src/widgets/star-toolbar.cpp:502 msgid "Corners:" msgstr "Кути:" -#: ../src/widgets/star-toolbar.cpp:506 +#: ../src/widgets/star-toolbar.cpp:502 msgid "Number of corners of a polygon or star" msgstr "Кількість кутів багатокутника чи зірки" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "thin-ray star" msgstr "зірка з тонкими променями" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "pentagram" msgstr "пентаграма" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "hexagram" msgstr "гексаграма" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "heptagram" msgstr "гептаграма" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "octagram" msgstr "октаграма" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "regular polygon" msgstr "звичайний багатокутник" -#: ../src/widgets/star-toolbar.cpp:522 +#: ../src/widgets/star-toolbar.cpp:518 msgid "Spoke ratio" msgstr "Відношення радіусів" -#: ../src/widgets/star-toolbar.cpp:522 +#: ../src/widgets/star-toolbar.cpp:518 msgid "Spoke ratio:" msgstr "Відношення радіусів:" #. TRANSLATORS: Tip radius of a star is the distance from the center to the farthest handle. #. Base radius is the same for the closest handle. -#: ../src/widgets/star-toolbar.cpp:525 +#: ../src/widgets/star-toolbar.cpp:521 msgid "Base radius to tip radius ratio" msgstr "Відношення радіусів основи та вершини променя" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "stretched" msgstr "розтягнений" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "twisted" msgstr "перекручений" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "slightly pinched" msgstr "трохи затиснутий" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "NOT rounded" msgstr "НЕ округлений" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "slightly rounded" msgstr "трохи округлений" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "visibly rounded" msgstr "помітно округлений" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "well rounded" msgstr "значно округлений" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "amply rounded" msgstr "дуже округлений" -#: ../src/widgets/star-toolbar.cpp:543 ../src/widgets/star-toolbar.cpp:558 +#: ../src/widgets/star-toolbar.cpp:539 ../src/widgets/star-toolbar.cpp:554 msgid "blown up" msgstr "надутий" -#: ../src/widgets/star-toolbar.cpp:546 +#: ../src/widgets/star-toolbar.cpp:542 msgid "Rounded:" msgstr "Округленість:" -#: ../src/widgets/star-toolbar.cpp:546 +#: ../src/widgets/star-toolbar.cpp:542 msgid "How much rounded are the corners (0 for sharp)" msgstr "Наскільки згладжені кути (0 — гострі)" -#: ../src/widgets/star-toolbar.cpp:558 +#: ../src/widgets/star-toolbar.cpp:554 msgid "NOT randomized" msgstr "БЕЗ випадковості" -#: ../src/widgets/star-toolbar.cpp:558 +#: ../src/widgets/star-toolbar.cpp:554 msgid "slightly irregular" msgstr "трохи неправильно" -#: ../src/widgets/star-toolbar.cpp:558 +#: ../src/widgets/star-toolbar.cpp:554 msgid "visibly randomized" msgstr "помітно випадково" -#: ../src/widgets/star-toolbar.cpp:558 +#: ../src/widgets/star-toolbar.cpp:554 msgid "strongly randomized" msgstr "дуже випадково" -#: ../src/widgets/star-toolbar.cpp:561 +#: ../src/widgets/star-toolbar.cpp:557 msgid "Randomized" msgstr "Випадково" -#: ../src/widgets/star-toolbar.cpp:561 +#: ../src/widgets/star-toolbar.cpp:557 msgid "Randomized:" msgstr "Викривлено:" -#: ../src/widgets/star-toolbar.cpp:561 +#: ../src/widgets/star-toolbar.cpp:557 msgid "Scatter randomly the corners and angles" msgstr "Випадковим чином перемістити кути та повернути радіуси" -#: ../src/widgets/stroke-style.cpp:185 +#: ../src/widgets/stroke-style.cpp:188 msgid "Stroke width" msgstr "Товщина штриха" -#: ../src/widgets/stroke-style.cpp:187 +#: ../src/widgets/stroke-style.cpp:190 msgctxt "Stroke width" msgid "_Width:" msgstr "_Ширина:" @@ -26707,70 +26717,70 @@ msgstr "_Ширина:" #. TRANSLATORS: Miter join: joining lines with a sharp (pointed) corner. #. For an example, draw a triangle with a large stroke width and modify the #. "Join" option (in the Fill and Stroke dialog). -#: ../src/widgets/stroke-style.cpp:232 +#: ../src/widgets/stroke-style.cpp:235 msgid "Miter join" msgstr "Гостре" #. TRANSLATORS: Round join: joining lines with a rounded corner. #. For an example, draw a triangle with a large stroke width and modify the #. "Join" option (in the Fill and Stroke dialog). -#: ../src/widgets/stroke-style.cpp:240 +#: ../src/widgets/stroke-style.cpp:243 msgid "Round join" msgstr "Округлене" #. TRANSLATORS: Bevel join: joining lines with a blunted (flattened) corner. #. For an example, draw a triangle with a large stroke width and modify the #. "Join" option (in the Fill and Stroke dialog). -#: ../src/widgets/stroke-style.cpp:248 +#: ../src/widgets/stroke-style.cpp:251 msgid "Bevel join" msgstr "Фасочне" -#: ../src/widgets/stroke-style.cpp:273 +#: ../src/widgets/stroke-style.cpp:276 msgid "Miter _limit:" msgstr "Ме_жа вістря:" #. Cap type #. TRANSLATORS: cap type specifies the shape for the ends of lines #. spw_label(t, _("_Cap:"), 0, i); -#: ../src/widgets/stroke-style.cpp:289 +#: ../src/widgets/stroke-style.cpp:292 msgid "Cap:" msgstr "Закінчення:" #. TRANSLATORS: Butt cap: the line shape does not extend beyond the end point #. of the line; the ends of the line are square -#: ../src/widgets/stroke-style.cpp:300 +#: ../src/widgets/stroke-style.cpp:303 msgid "Butt cap" msgstr "Плоскі" #. TRANSLATORS: Round cap: the line shape extends beyond the end point of the #. line; the ends of the line are rounded -#: ../src/widgets/stroke-style.cpp:307 +#: ../src/widgets/stroke-style.cpp:310 msgid "Round cap" msgstr "Округлені" #. TRANSLATORS: Square cap: the line shape extends beyond the end point of the #. line; the ends of the line are square -#: ../src/widgets/stroke-style.cpp:314 +#: ../src/widgets/stroke-style.cpp:317 msgid "Square cap" msgstr "Квадратні" #. Dash -#: ../src/widgets/stroke-style.cpp:319 +#: ../src/widgets/stroke-style.cpp:322 msgid "Dashes:" msgstr "Пунктир:" #. Drop down marker selectors #. TRANSLATORS: Path markers are an SVG feature that allows you to attach arbitrary shapes #. (arrowheads, bullets, faces, whatever) to the start, end, or middle nodes of a path. -#: ../src/widgets/stroke-style.cpp:345 +#: ../src/widgets/stroke-style.cpp:348 msgid "Markers:" msgstr "Маркери:" -#: ../src/widgets/stroke-style.cpp:351 +#: ../src/widgets/stroke-style.cpp:354 msgid "Start Markers are drawn on the first node of a path or shape" msgstr "Початкові маркери малюються на першому вузлі контуру або форми" -#: ../src/widgets/stroke-style.cpp:360 +#: ../src/widgets/stroke-style.cpp:363 msgid "" "Mid Markers are drawn on every node of a path or shape except the first and " "last nodes" @@ -26778,19 +26788,19 @@ msgstr "" "Серединні маркери малюються на кожному вузлі контуру або форми окрім першого " "і останнього вузлів" -#: ../src/widgets/stroke-style.cpp:369 +#: ../src/widgets/stroke-style.cpp:372 msgid "End Markers are drawn on the last node of a path or shape" msgstr "Кінцеві маркери малюються на останньому вузлі контуру або форми" -#: ../src/widgets/stroke-style.cpp:487 +#: ../src/widgets/stroke-style.cpp:490 msgid "Set markers" msgstr "Встановити маркери" -#: ../src/widgets/stroke-style.cpp:1075 ../src/widgets/stroke-style.cpp:1160 +#: ../src/widgets/stroke-style.cpp:1020 ../src/widgets/stroke-style.cpp:1105 msgid "Set stroke style" msgstr "Встановлення стилю штриха" -#: ../src/widgets/stroke-style.cpp:1248 +#: ../src/widgets/stroke-style.cpp:1193 msgid "Set marker color" msgstr "Встановити колір маркера" @@ -26798,611 +26808,611 @@ msgstr "Встановити колір маркера" msgid "Change swatch color" msgstr "Змінити колір зразка" -#: ../src/widgets/text-toolbar.cpp:178 +#: ../src/widgets/text-toolbar.cpp:174 msgid "Text: Change font family" msgstr "Текст: Зміна сімейства шрифту" -#: ../src/widgets/text-toolbar.cpp:242 +#: ../src/widgets/text-toolbar.cpp:238 msgid "Text: Change font size" msgstr "Текст: Зміна розміру шрифту" -#: ../src/widgets/text-toolbar.cpp:280 +#: ../src/widgets/text-toolbar.cpp:276 msgid "Text: Change font style" msgstr "Текст: Зміна нарису шрифту" -#: ../src/widgets/text-toolbar.cpp:358 +#: ../src/widgets/text-toolbar.cpp:354 msgid "Text: Change superscript or subscript" msgstr "Текст: змінити на верхній або нижній індекс" -#: ../src/widgets/text-toolbar.cpp:503 +#: ../src/widgets/text-toolbar.cpp:499 msgid "Text: Change alignment" msgstr "Текст: Зміна вирівнювання" -#: ../src/widgets/text-toolbar.cpp:546 +#: ../src/widgets/text-toolbar.cpp:542 msgid "Text: Change line-height" msgstr "Текст: Зміна висоти рядків" -#: ../src/widgets/text-toolbar.cpp:595 +#: ../src/widgets/text-toolbar.cpp:591 msgid "Text: Change word-spacing" msgstr "Текст: Зміна інтервалів між словами" -#: ../src/widgets/text-toolbar.cpp:636 +#: ../src/widgets/text-toolbar.cpp:632 msgid "Text: Change letter-spacing" msgstr "Текст: Зміна інтервалів між літерами" -#: ../src/widgets/text-toolbar.cpp:676 +#: ../src/widgets/text-toolbar.cpp:672 msgid "Text: Change dx (kern)" msgstr "Текст: Зміна приросту за x (керна)" -#: ../src/widgets/text-toolbar.cpp:710 +#: ../src/widgets/text-toolbar.cpp:706 msgid "Text: Change dy" msgstr "Текст: Зміна приросту за y" -#: ../src/widgets/text-toolbar.cpp:745 +#: ../src/widgets/text-toolbar.cpp:741 msgid "Text: Change rotate" msgstr "Текст: Зміна кута обертання" -#: ../src/widgets/text-toolbar.cpp:793 +#: ../src/widgets/text-toolbar.cpp:789 msgid "Text: Change orientation" msgstr "Текст: Зміна орієнтації" -#: ../src/widgets/text-toolbar.cpp:1235 +#: ../src/widgets/text-toolbar.cpp:1226 msgid "Font Family" msgstr "Гарнітура шрифту" -#: ../src/widgets/text-toolbar.cpp:1236 +#: ../src/widgets/text-toolbar.cpp:1227 msgid "Select Font Family (Alt-X to access)" msgstr "Виберіть гарнітуру шрифту (Alt-X для доступу)" #. Focus widget #. Enable entry completion -#: ../src/widgets/text-toolbar.cpp:1246 +#: ../src/widgets/text-toolbar.cpp:1237 msgid "Select all text with this font-family" msgstr "Позначити всі фрагменти тексту з цією гарнітурою шрифту" -#: ../src/widgets/text-toolbar.cpp:1250 +#: ../src/widgets/text-toolbar.cpp:1241 msgid "Font not found on system" msgstr "Шрифту у системі не виявлено" -#: ../src/widgets/text-toolbar.cpp:1309 +#: ../src/widgets/text-toolbar.cpp:1300 msgid "Font Style" msgstr "Стиль шрифту" -#: ../src/widgets/text-toolbar.cpp:1310 +#: ../src/widgets/text-toolbar.cpp:1301 msgid "Font style" msgstr "Стиль шрифту" #. Name -#: ../src/widgets/text-toolbar.cpp:1327 +#: ../src/widgets/text-toolbar.cpp:1318 msgid "Toggle Superscript" msgstr "Увімкнути/Вимкнути режим верхнього індексу" #. Label -#: ../src/widgets/text-toolbar.cpp:1328 +#: ../src/widgets/text-toolbar.cpp:1319 msgid "Toggle superscript" msgstr "Увімкнути/Вимкнути режим верхнього індексу" #. Name -#: ../src/widgets/text-toolbar.cpp:1340 +#: ../src/widgets/text-toolbar.cpp:1331 msgid "Toggle Subscript" msgstr "Увімкнути/Вимкнути режим нижнього індексу" #. Label -#: ../src/widgets/text-toolbar.cpp:1341 +#: ../src/widgets/text-toolbar.cpp:1332 msgid "Toggle subscript" msgstr "Увімкнути/Вимкнути режим нижнього індексу" -#: ../src/widgets/text-toolbar.cpp:1382 +#: ../src/widgets/text-toolbar.cpp:1373 msgid "Justify" msgstr "Вирівняти з заповненням" #. Name -#: ../src/widgets/text-toolbar.cpp:1389 +#: ../src/widgets/text-toolbar.cpp:1380 msgid "Alignment" msgstr "Вирівнювання" #. Label -#: ../src/widgets/text-toolbar.cpp:1390 +#: ../src/widgets/text-toolbar.cpp:1381 msgid "Text alignment" msgstr "Вирівнювання тексту" -#: ../src/widgets/text-toolbar.cpp:1417 +#: ../src/widgets/text-toolbar.cpp:1408 msgid "Horizontal" msgstr "Горизонтально" -#: ../src/widgets/text-toolbar.cpp:1424 +#: ../src/widgets/text-toolbar.cpp:1415 msgid "Vertical" msgstr "Вертикально" #. Label -#: ../src/widgets/text-toolbar.cpp:1431 +#: ../src/widgets/text-toolbar.cpp:1422 msgid "Text orientation" msgstr "Орієнтація тексту" #. Drop down menu -#: ../src/widgets/text-toolbar.cpp:1454 +#: ../src/widgets/text-toolbar.cpp:1445 msgid "Smaller spacing" msgstr "Менший інтервал" -#: ../src/widgets/text-toolbar.cpp:1454 ../src/widgets/text-toolbar.cpp:1485 -#: ../src/widgets/text-toolbar.cpp:1516 +#: ../src/widgets/text-toolbar.cpp:1445 ../src/widgets/text-toolbar.cpp:1475 +#: ../src/widgets/text-toolbar.cpp:1505 msgctxt "Text tool" msgid "Normal" msgstr "Звичайний" -#: ../src/widgets/text-toolbar.cpp:1454 +#: ../src/widgets/text-toolbar.cpp:1445 msgid "Larger spacing" msgstr "Більший інтервал" #. name -#: ../src/widgets/text-toolbar.cpp:1459 +#: ../src/widgets/text-toolbar.cpp:1450 msgid "Line Height" msgstr "Висота рядка" #. label -#: ../src/widgets/text-toolbar.cpp:1460 +#: ../src/widgets/text-toolbar.cpp:1451 msgid "Line:" msgstr "Рядок:" #. short label -#: ../src/widgets/text-toolbar.cpp:1461 +#: ../src/widgets/text-toolbar.cpp:1452 msgid "Spacing between lines (times font size)" msgstr "Інтервал між рядками (у одиницях розміру шрифту)" #. Drop down menu -#: ../src/widgets/text-toolbar.cpp:1485 ../src/widgets/text-toolbar.cpp:1516 +#: ../src/widgets/text-toolbar.cpp:1475 ../src/widgets/text-toolbar.cpp:1505 msgid "Negative spacing" msgstr "Від'ємний інтервал" -#: ../src/widgets/text-toolbar.cpp:1485 ../src/widgets/text-toolbar.cpp:1516 +#: ../src/widgets/text-toolbar.cpp:1475 ../src/widgets/text-toolbar.cpp:1505 msgid "Positive spacing" msgstr "Додатний інтервал" #. name -#: ../src/widgets/text-toolbar.cpp:1490 +#: ../src/widgets/text-toolbar.cpp:1480 msgid "Word spacing" msgstr "Інтервал між словами" #. label -#: ../src/widgets/text-toolbar.cpp:1491 +#: ../src/widgets/text-toolbar.cpp:1481 msgid "Word:" msgstr "Слово:" #. short label -#: ../src/widgets/text-toolbar.cpp:1492 +#: ../src/widgets/text-toolbar.cpp:1482 msgid "Spacing between words (px)" msgstr "Інтервал між словами (у пікселях)" #. name -#: ../src/widgets/text-toolbar.cpp:1521 +#: ../src/widgets/text-toolbar.cpp:1510 msgid "Letter spacing" msgstr "Інтервал між літерами" #. label -#: ../src/widgets/text-toolbar.cpp:1522 +#: ../src/widgets/text-toolbar.cpp:1511 msgid "Letter:" msgstr "Літера:" #. short label -#: ../src/widgets/text-toolbar.cpp:1523 +#: ../src/widgets/text-toolbar.cpp:1512 msgid "Spacing between letters (px)" msgstr "Інтервал між літерами (у пікселях)" #. name -#: ../src/widgets/text-toolbar.cpp:1552 +#: ../src/widgets/text-toolbar.cpp:1540 msgid "Kerning" msgstr "Кернінґ" #. label -#: ../src/widgets/text-toolbar.cpp:1553 +#: ../src/widgets/text-toolbar.cpp:1541 msgid "Kern:" msgstr "Керн:" #. short label -#: ../src/widgets/text-toolbar.cpp:1554 +#: ../src/widgets/text-toolbar.cpp:1542 msgid "Horizontal kerning (px)" msgstr "Горизонтальний кернінґ (у пікселях)" #. name -#: ../src/widgets/text-toolbar.cpp:1583 +#: ../src/widgets/text-toolbar.cpp:1570 msgid "Vertical Shift" msgstr "Вертикальний зсув" #. label -#: ../src/widgets/text-toolbar.cpp:1584 +#: ../src/widgets/text-toolbar.cpp:1571 msgid "Vert:" msgstr "Верт.:" #. short label -#: ../src/widgets/text-toolbar.cpp:1585 +#: ../src/widgets/text-toolbar.cpp:1572 msgid "Vertical shift (px)" msgstr "Вертикальний зсув (у пікселях)" #. name -#: ../src/widgets/text-toolbar.cpp:1614 +#: ../src/widgets/text-toolbar.cpp:1600 msgid "Letter rotation" msgstr "Обертання літер" #. label -#: ../src/widgets/text-toolbar.cpp:1615 +#: ../src/widgets/text-toolbar.cpp:1601 msgid "Rot:" msgstr "Обер.:" #. short label -#: ../src/widgets/text-toolbar.cpp:1616 +#: ../src/widgets/text-toolbar.cpp:1602 msgid "Character rotation (degrees)" msgstr "Обертання символів (у градусах)" -#: ../src/widgets/toolbox.cpp:181 +#: ../src/widgets/toolbox.cpp:179 msgid "Color/opacity used for color tweaking" msgstr "Колір/непрозорість, що використовуватимуться для корекції кольору" -#: ../src/widgets/toolbox.cpp:189 +#: ../src/widgets/toolbox.cpp:187 msgid "Style of new stars" msgstr "Стиль нових зірок" -#: ../src/widgets/toolbox.cpp:191 +#: ../src/widgets/toolbox.cpp:189 msgid "Style of new rectangles" msgstr "Стиль нових прямокутників" -#: ../src/widgets/toolbox.cpp:193 +#: ../src/widgets/toolbox.cpp:191 msgid "Style of new 3D boxes" msgstr "Стиль нових просторових об'єктів" -#: ../src/widgets/toolbox.cpp:195 +#: ../src/widgets/toolbox.cpp:193 msgid "Style of new ellipses" msgstr "Стиль нових еліпсів" -#: ../src/widgets/toolbox.cpp:197 +#: ../src/widgets/toolbox.cpp:195 msgid "Style of new spirals" msgstr "Стиль нових спіралей" -#: ../src/widgets/toolbox.cpp:199 +#: ../src/widgets/toolbox.cpp:197 msgid "Style of new paths created by Pencil" msgstr "Стиль нових контурів, що створені Олівцем" -#: ../src/widgets/toolbox.cpp:201 +#: ../src/widgets/toolbox.cpp:199 msgid "Style of new paths created by Pen" msgstr "Стиль нових контурів, що створені Пером" -#: ../src/widgets/toolbox.cpp:203 +#: ../src/widgets/toolbox.cpp:201 msgid "Style of new calligraphic strokes" msgstr "Стиль нових каліграфічних штрихів" -#: ../src/widgets/toolbox.cpp:205 ../src/widgets/toolbox.cpp:207 +#: ../src/widgets/toolbox.cpp:203 ../src/widgets/toolbox.cpp:205 msgid "TBD" msgstr "Ще не визначено" -#: ../src/widgets/toolbox.cpp:219 +#: ../src/widgets/toolbox.cpp:217 msgid "Style of Paint Bucket fill objects" msgstr "Стиль нових об'єктів, що створені інструментом заповнення" -#: ../src/widgets/toolbox.cpp:1682 +#: ../src/widgets/toolbox.cpp:1676 msgid "Bounding box" msgstr "Рамка-обгортка" -#: ../src/widgets/toolbox.cpp:1682 +#: ../src/widgets/toolbox.cpp:1676 msgid "Snap bounding boxes" msgstr "Прилипання до рамок-обгорток" -#: ../src/widgets/toolbox.cpp:1691 +#: ../src/widgets/toolbox.cpp:1685 msgid "Bounding box edges" msgstr "Краї рамок-обгорток" -#: ../src/widgets/toolbox.cpp:1691 +#: ../src/widgets/toolbox.cpp:1685 msgid "Snap to edges of a bounding box" msgstr "Прилипання до країв рамок-обгорток" -#: ../src/widgets/toolbox.cpp:1700 +#: ../src/widgets/toolbox.cpp:1694 msgid "Bounding box corners" msgstr "Кути рамок-обгорток" -#: ../src/widgets/toolbox.cpp:1700 +#: ../src/widgets/toolbox.cpp:1694 msgid "Snap bounding box corners" msgstr "Прилипання до кутів рамок-обгорток" -#: ../src/widgets/toolbox.cpp:1709 +#: ../src/widgets/toolbox.cpp:1703 msgid "BBox Edge Midpoints" msgstr "Середні точки країв рамки-обгортки" -#: ../src/widgets/toolbox.cpp:1709 +#: ../src/widgets/toolbox.cpp:1703 msgid "Snap midpoints of bounding box edges" msgstr "Прилипання до середніх точок країв рамок-обгорток" -#: ../src/widgets/toolbox.cpp:1719 +#: ../src/widgets/toolbox.cpp:1713 msgid "BBox Centers" msgstr "Центри рамок-обгорток" -#: ../src/widgets/toolbox.cpp:1719 +#: ../src/widgets/toolbox.cpp:1713 msgid "Snapping centers of bounding boxes" msgstr "Прилипання до центрів рамок-обгорток" -#: ../src/widgets/toolbox.cpp:1728 +#: ../src/widgets/toolbox.cpp:1722 msgid "Snap nodes, paths, and handles" msgstr "Прилипання до вузлів, контурів та вусів" -#: ../src/widgets/toolbox.cpp:1736 +#: ../src/widgets/toolbox.cpp:1730 msgid "Snap to paths" msgstr "Прилипання до контурів" -#: ../src/widgets/toolbox.cpp:1745 +#: ../src/widgets/toolbox.cpp:1739 msgid "Path intersections" msgstr "Перетин контурів" -#: ../src/widgets/toolbox.cpp:1745 +#: ../src/widgets/toolbox.cpp:1739 msgid "Snap to path intersections" msgstr "Прилипання до перетинів контурів" -#: ../src/widgets/toolbox.cpp:1754 +#: ../src/widgets/toolbox.cpp:1748 msgid "To nodes" msgstr "До вузлів" -#: ../src/widgets/toolbox.cpp:1754 +#: ../src/widgets/toolbox.cpp:1748 msgid "Snap cusp nodes, incl. rectangle corners" msgstr "Прилипання до вузлів-вершин, зокрема кутів прямокутників" -#: ../src/widgets/toolbox.cpp:1763 +#: ../src/widgets/toolbox.cpp:1757 msgid "Smooth nodes" msgstr "Гладкі вузли" -#: ../src/widgets/toolbox.cpp:1763 +#: ../src/widgets/toolbox.cpp:1757 msgid "Snap smooth nodes, incl. quadrant points of ellipses" msgstr "Прилипання до гладких вузлів, зокрема вершин еліпсів" -#: ../src/widgets/toolbox.cpp:1772 +#: ../src/widgets/toolbox.cpp:1766 msgid "Line Midpoints" msgstr "Середні точки лінії" -#: ../src/widgets/toolbox.cpp:1772 +#: ../src/widgets/toolbox.cpp:1766 msgid "Snap midpoints of line segments" msgstr "Прилипання до середніх точок сегментів лінії" -#: ../src/widgets/toolbox.cpp:1781 +#: ../src/widgets/toolbox.cpp:1775 msgid "Others" msgstr "Інші" -#: ../src/widgets/toolbox.cpp:1781 +#: ../src/widgets/toolbox.cpp:1775 msgid "Snap other points (centers, guide origins, gradient handles, etc.)" msgstr "" "Прилипання до інших точок (центрів, початків напрямних, опорних точок " "градієнтів тощо)" -#: ../src/widgets/toolbox.cpp:1789 +#: ../src/widgets/toolbox.cpp:1783 msgid "Object Centers" msgstr "Центри об'єктів" -#: ../src/widgets/toolbox.cpp:1789 +#: ../src/widgets/toolbox.cpp:1783 msgid "Snap centers of objects" msgstr "Прилипання до центрів об'єктів" -#: ../src/widgets/toolbox.cpp:1798 +#: ../src/widgets/toolbox.cpp:1792 msgid "Rotation Centers" msgstr "Центри обертання" -#: ../src/widgets/toolbox.cpp:1798 +#: ../src/widgets/toolbox.cpp:1792 msgid "Snap an item's rotation center" msgstr "Прилипання до центру обертання елемента" -#: ../src/widgets/toolbox.cpp:1807 +#: ../src/widgets/toolbox.cpp:1801 msgid "Text baseline" msgstr "Базова лінія тексту" -#: ../src/widgets/toolbox.cpp:1807 +#: ../src/widgets/toolbox.cpp:1801 msgid "Snap text anchors and baselines" msgstr "Прилипання до прив'язок тексту та центрів об'єктів" -#: ../src/widgets/toolbox.cpp:1817 +#: ../src/widgets/toolbox.cpp:1811 msgid "Page border" msgstr "Межа сторінки" -#: ../src/widgets/toolbox.cpp:1817 +#: ../src/widgets/toolbox.cpp:1811 msgid "Snap to the page border" msgstr "Прилипання до межі сторінки" -#: ../src/widgets/toolbox.cpp:1826 +#: ../src/widgets/toolbox.cpp:1820 msgid "Snap to grids" msgstr "Прилипання до сітки" -#: ../src/widgets/toolbox.cpp:1835 +#: ../src/widgets/toolbox.cpp:1829 msgid "Snap guides" msgstr "Прилипання до напрямних" #. Width -#: ../src/widgets/tweak-toolbar.cpp:143 +#: ../src/widgets/tweak-toolbar.cpp:139 msgid "(pinch tweak)" msgstr "(легка корекція)" -#: ../src/widgets/tweak-toolbar.cpp:143 +#: ../src/widgets/tweak-toolbar.cpp:139 msgid "(broad tweak)" msgstr "(широка корекція)" -#: ../src/widgets/tweak-toolbar.cpp:146 +#: ../src/widgets/tweak-toolbar.cpp:142 msgid "The width of the tweak area (relative to the visible canvas area)" msgstr "Ширина області корекції (відносно видимої області полотна)" #. Force -#: ../src/widgets/tweak-toolbar.cpp:160 +#: ../src/widgets/tweak-toolbar.cpp:156 msgid "(minimum force)" msgstr "(максимальна сила)" -#: ../src/widgets/tweak-toolbar.cpp:160 +#: ../src/widgets/tweak-toolbar.cpp:156 msgid "(maximum force)" msgstr "(максимальна сила)" -#: ../src/widgets/tweak-toolbar.cpp:163 +#: ../src/widgets/tweak-toolbar.cpp:159 msgid "Force" msgstr "Сила" -#: ../src/widgets/tweak-toolbar.cpp:163 +#: ../src/widgets/tweak-toolbar.cpp:159 msgid "Force:" msgstr "Сила:" -#: ../src/widgets/tweak-toolbar.cpp:163 +#: ../src/widgets/tweak-toolbar.cpp:159 msgid "The force of the tweak action" msgstr "Сила дії інструмента корекції" -#: ../src/widgets/tweak-toolbar.cpp:181 +#: ../src/widgets/tweak-toolbar.cpp:177 msgid "Move mode" msgstr "Режим пересування" -#: ../src/widgets/tweak-toolbar.cpp:182 +#: ../src/widgets/tweak-toolbar.cpp:178 msgid "Move objects in any direction" msgstr "Пересунути об'єкти у довільному напрямку" -#: ../src/widgets/tweak-toolbar.cpp:188 +#: ../src/widgets/tweak-toolbar.cpp:184 msgid "Move in/out mode" msgstr "Режим пересування всередину/назовні" -#: ../src/widgets/tweak-toolbar.cpp:189 +#: ../src/widgets/tweak-toolbar.cpp:185 msgid "Move objects towards cursor; with Shift from cursor" msgstr "Пересунути об'єкти у напрямку вказівника; з Shift — від вказівника" -#: ../src/widgets/tweak-toolbar.cpp:195 +#: ../src/widgets/tweak-toolbar.cpp:191 msgid "Move jitter mode" msgstr "Режим дисперсії пересування" -#: ../src/widgets/tweak-toolbar.cpp:196 +#: ../src/widgets/tweak-toolbar.cpp:192 msgid "Move objects in random directions" msgstr "Пересунути об'єкти у випадкових напрямках" -#: ../src/widgets/tweak-toolbar.cpp:202 +#: ../src/widgets/tweak-toolbar.cpp:198 msgid "Scale mode" msgstr "Режим масштабування" -#: ../src/widgets/tweak-toolbar.cpp:203 +#: ../src/widgets/tweak-toolbar.cpp:199 msgid "Shrink objects, with Shift enlarge" msgstr "Стиснути об'єкти, з Shift — збільшити" -#: ../src/widgets/tweak-toolbar.cpp:209 +#: ../src/widgets/tweak-toolbar.cpp:205 msgid "Rotate mode" msgstr "Режим обертання" -#: ../src/widgets/tweak-toolbar.cpp:210 +#: ../src/widgets/tweak-toolbar.cpp:206 msgid "Rotate objects, with Shift counterclockwise" msgstr "Обертання об'єктів, з Shift — проти годинникової стрілки" -#: ../src/widgets/tweak-toolbar.cpp:216 +#: ../src/widgets/tweak-toolbar.cpp:212 msgid "Duplicate/delete mode" msgstr "Режим дублювання/вилучення" -#: ../src/widgets/tweak-toolbar.cpp:217 +#: ../src/widgets/tweak-toolbar.cpp:213 msgid "Duplicate objects, with Shift delete" msgstr "Дублювати об'єкти, з Shift — вилучити" -#: ../src/widgets/tweak-toolbar.cpp:223 +#: ../src/widgets/tweak-toolbar.cpp:219 msgid "Push mode" msgstr "Режим штовхання" -#: ../src/widgets/tweak-toolbar.cpp:224 +#: ../src/widgets/tweak-toolbar.cpp:220 msgid "Push parts of paths in any direction" msgstr "Виштовхування частин контурів у довільному напрямку" -#: ../src/widgets/tweak-toolbar.cpp:230 +#: ../src/widgets/tweak-toolbar.cpp:226 msgid "Shrink/grow mode" msgstr "Режим втягування/розтягування" -#: ../src/widgets/tweak-toolbar.cpp:231 +#: ../src/widgets/tweak-toolbar.cpp:227 msgid "Shrink (inset) parts of paths; with Shift grow (outset)" msgstr "Втягування частин контурів; з Shift розтягування" -#: ../src/widgets/tweak-toolbar.cpp:237 +#: ../src/widgets/tweak-toolbar.cpp:233 msgid "Attract/repel mode" msgstr "Режим притягання/відштовхування" -#: ../src/widgets/tweak-toolbar.cpp:238 +#: ../src/widgets/tweak-toolbar.cpp:234 msgid "Attract parts of paths towards cursor; with Shift from cursor" msgstr "Притягнути частини контуру до курсора, з Shift — від курсора" -#: ../src/widgets/tweak-toolbar.cpp:244 +#: ../src/widgets/tweak-toolbar.cpp:240 msgid "Roughen mode" msgstr "Режим грубішання" -#: ../src/widgets/tweak-toolbar.cpp:245 +#: ../src/widgets/tweak-toolbar.cpp:241 msgid "Roughen parts of paths" msgstr "Грубішання частин контурів" -#: ../src/widgets/tweak-toolbar.cpp:251 +#: ../src/widgets/tweak-toolbar.cpp:247 msgid "Color paint mode" msgstr "Режим малювання кольором" -#: ../src/widgets/tweak-toolbar.cpp:252 +#: ../src/widgets/tweak-toolbar.cpp:248 msgid "Paint the tool's color upon selected objects" msgstr "Малювати кольором інструмента на вибраних об'єктах" -#: ../src/widgets/tweak-toolbar.cpp:258 +#: ../src/widgets/tweak-toolbar.cpp:254 msgid "Color jitter mode" msgstr "Режим перебирання кольорів" -#: ../src/widgets/tweak-toolbar.cpp:259 +#: ../src/widgets/tweak-toolbar.cpp:255 msgid "Jitter the colors of selected objects" msgstr "Перебір кольорів вибраних об'єктів" -#: ../src/widgets/tweak-toolbar.cpp:265 +#: ../src/widgets/tweak-toolbar.cpp:261 msgid "Blur mode" msgstr "Режим розмивання" -#: ../src/widgets/tweak-toolbar.cpp:266 +#: ../src/widgets/tweak-toolbar.cpp:262 msgid "Blur selected objects more; with Shift, blur less" msgstr "Розмити вибрані об'єкти; з Shift — менше розмивання" -#: ../src/widgets/tweak-toolbar.cpp:293 +#: ../src/widgets/tweak-toolbar.cpp:289 msgid "Channels:" msgstr "Канали:" -#: ../src/widgets/tweak-toolbar.cpp:305 +#: ../src/widgets/tweak-toolbar.cpp:301 msgid "In color mode, act on objects' hue" msgstr "У кольоровому режимі працює як відтінок об'єкта" #. TRANSLATORS: "H" here stands for hue -#: ../src/widgets/tweak-toolbar.cpp:309 +#: ../src/widgets/tweak-toolbar.cpp:305 msgid "H" msgstr "В" -#: ../src/widgets/tweak-toolbar.cpp:321 +#: ../src/widgets/tweak-toolbar.cpp:317 msgid "In color mode, act on objects' saturation" msgstr "У кольоровому режимі працює як насиченість об'єкта" #. TRANSLATORS: "S" here stands for Saturation -#: ../src/widgets/tweak-toolbar.cpp:325 +#: ../src/widgets/tweak-toolbar.cpp:321 msgid "S" msgstr "Н" -#: ../src/widgets/tweak-toolbar.cpp:337 +#: ../src/widgets/tweak-toolbar.cpp:333 msgid "In color mode, act on objects' lightness" msgstr "У кольоровому режимі працює як освітленість об'єкта" #. TRANSLATORS: "L" here stands for Lightness -#: ../src/widgets/tweak-toolbar.cpp:341 +#: ../src/widgets/tweak-toolbar.cpp:337 msgid "L" msgstr "О" -#: ../src/widgets/tweak-toolbar.cpp:353 +#: ../src/widgets/tweak-toolbar.cpp:349 msgid "In color mode, act on objects' opacity" msgstr "У кольоровому режимі працює як прозорість об'єкта" #. TRANSLATORS: "O" here stands for Opacity -#: ../src/widgets/tweak-toolbar.cpp:357 +#: ../src/widgets/tweak-toolbar.cpp:353 msgid "O" msgstr "П" #. Fidelity -#: ../src/widgets/tweak-toolbar.cpp:368 +#: ../src/widgets/tweak-toolbar.cpp:364 msgid "(rough, simplified)" msgstr "(грубо, спрощено)" -#: ../src/widgets/tweak-toolbar.cpp:368 +#: ../src/widgets/tweak-toolbar.cpp:364 msgid "(fine, but many nodes)" msgstr "(точно, але багато вузлів)" -#: ../src/widgets/tweak-toolbar.cpp:371 +#: ../src/widgets/tweak-toolbar.cpp:367 msgid "Fidelity" msgstr "Точність" -#: ../src/widgets/tweak-toolbar.cpp:371 +#: ../src/widgets/tweak-toolbar.cpp:367 msgid "Fidelity:" msgstr "Точність:" -#: ../src/widgets/tweak-toolbar.cpp:372 +#: ../src/widgets/tweak-toolbar.cpp:368 msgid "" "Low fidelity simplifies paths; high fidelity preserves path features but may " "generate a lot of new nodes" @@ -27411,7 +27421,7 @@ msgstr "" "зберігає особливості контуру, але може призвести до створення великої " "кількості вузлів" -#: ../src/widgets/tweak-toolbar.cpp:391 +#: ../src/widgets/tweak-toolbar.cpp:387 msgid "Use the pressure of the input device to alter the force of tweak action" msgstr "" "Використовувати силу натиску пристрою введення для зміни сили дії корекції" @@ -27466,6 +27476,15 @@ msgstr "Напівпериметр (у пк): " msgid "Area (px^2): " msgstr "Площа (у пк²): " +#: ../share/extensions/dxf_input.py:504 +#, python-format +msgid "" +"%d ENTITIES of type POLYLINE encountered and ignored. Please try to convert " +"to Release 13 format using QCad." +msgstr "" +"Виявлено і проігноровано %d записів типу POLYLINE. Спробуйте виконати " +"перетворення у формат версії 13 за допомогою QCad." + #: ../share/extensions/dxf_outlines.py:49 msgid "" "Failed to import the numpy or numpy.linalg modules. These modules are " @@ -27844,6 +27863,18 @@ msgstr "Для роботи цього додатка потрібен хоча msgid "The sliced bitmaps have been saved as:" msgstr "Зрізані растрові зображення було збережено як:" +#: ../share/extensions/hpgl_input.py:59 +msgid "No HPGL data found." +msgstr "Не знайдено даних HPGL." + +#: ../share/extensions/hpgl_input.py:111 +msgid "" +"The HPGL data contained unknown (unsupported) commands, there is a " +"possibility that the drawing is missing some content." +msgstr "" +"У даних HPGL містилися невідомі (непідтримувані) команди. Ймовірно, що на " +"кресленні не буде деяких елементів." + #: ../share/extensions/inkex.py:133 #, python-format msgid "" @@ -29064,6 +29095,55 @@ msgstr "Параметри експортування шарів" msgid "Layer match name" msgstr "Назва відповідного шару" +#: ../share/extensions/dxf_outlines.inx.h:9 +msgid "pt" +msgstr "пт" + +#: ../share/extensions/dxf_outlines.inx.h:10 +msgid "pc" +msgstr "пк" + +#: ../share/extensions/dxf_outlines.inx.h:11 +#: ../share/extensions/render_gears.inx.h:7 +msgid "px" +msgstr "точок" + +#: ../share/extensions/dxf_outlines.inx.h:12 +#: ../share/extensions/gcodetools_area.inx.h:46 +#: ../share/extensions/gcodetools_dxf_points.inx.h:18 +#: ../share/extensions/gcodetools_engraving.inx.h:24 +#: ../share/extensions/gcodetools_graffiti.inx.h:18 +#: ../share/extensions/gcodetools_lathe.inx.h:39 +#: ../share/extensions/gcodetools_orientation_points.inx.h:11 +#: ../share/extensions/gcodetools_path_to_gcode.inx.h:28 +#: ../share/extensions/render_gears.inx.h:9 +msgid "mm" +msgstr "мм" + +#: ../share/extensions/dxf_outlines.inx.h:13 +msgid "cm" +msgstr "см" + +#: ../share/extensions/dxf_outlines.inx.h:14 +msgid "m" +msgstr "м" + +#: ../share/extensions/dxf_outlines.inx.h:15 +#: ../share/extensions/gcodetools_area.inx.h:47 +#: ../share/extensions/gcodetools_dxf_points.inx.h:19 +#: ../share/extensions/gcodetools_engraving.inx.h:25 +#: ../share/extensions/gcodetools_graffiti.inx.h:19 +#: ../share/extensions/gcodetools_lathe.inx.h:40 +#: ../share/extensions/gcodetools_orientation_points.inx.h:12 +#: ../share/extensions/gcodetools_path_to_gcode.inx.h:29 +#: ../share/extensions/render_gears.inx.h:8 +msgid "in" +msgstr "дюйм" + +#: ../share/extensions/dxf_outlines.inx.h:16 +msgid "ft" +msgstr "фт" + #: ../share/extensions/dxf_outlines.inx.h:17 msgid "Latin 1" msgstr "Latin 1" @@ -29426,30 +29506,6 @@ msgstr "Малювати вісі" msgid "Add x-axis endpoints" msgstr "Додати кінцеві точки за віссю x" -#: ../share/extensions/gears.inx.h:1 -msgid "Gear" -msgstr "Зубцювате колесо" - -#: ../share/extensions/gears.inx.h:2 -msgid "Number of teeth:" -msgstr "Кількість зубців:" - -#: ../share/extensions/gears.inx.h:3 -msgid "Circular pitch (tooth size):" -msgstr "Круговий крок (розмір зубця):" - -#: ../share/extensions/gears.inx.h:4 -msgid "Pressure angle (degrees):" -msgstr "Кут зчеплення зубців (у градусах):" - -#: ../share/extensions/gears.inx.h:5 -msgid "Diameter of center hole (0 for none):" -msgstr "Діаметр центрального отвору (0 — без отвору):" - -#: ../share/extensions/gears.inx.h:10 -msgid "Unit of measurement for both circular pitch and center diameter." -msgstr "Одиниця виміру кругового кроку і діаметра центрального отвору." - #: ../share/extensions/gcodetools_about.inx.h:1 msgid "About" msgstr "Про програму" @@ -30485,72 +30541,56 @@ msgid "Guides creator" msgstr "Інструмент створення напрямних" #: ../share/extensions/guides_creator.inx.h:2 -msgid "Preset:" -msgstr "Шаблон:" +msgid "Regular guides" +msgstr "Звичайні напрямні" #: ../share/extensions/guides_creator.inx.h:3 -msgid "Custom..." -msgstr "Інше…" - -#: ../share/extensions/guides_creator.inx.h:4 -msgid "Golden ratio" -msgstr "«Золота» пропорція" - -#: ../share/extensions/guides_creator.inx.h:5 -msgid "Rule-of-third" -msgstr "Правило трьох" +msgid "Guides preset" +msgstr "Набір напрямних" #: ../share/extensions/guides_creator.inx.h:6 -msgid "Vertical guide each:" -msgstr "Вертикальна напрямна кожні:" +msgid "Start from edges" +msgstr "Почати від країв" + +#: ../share/extensions/guides_creator.inx.h:7 +msgid "Delete existing guides" +msgstr "Вилучити існуючі напрямні" #: ../share/extensions/guides_creator.inx.h:8 -msgid "1/2" -msgstr "1/2" +msgid "Diagonal guides" +msgstr "Діагональні напрямні" #: ../share/extensions/guides_creator.inx.h:9 -msgid "1/3" -msgstr "1/3" +msgid "Upper left corner" +msgstr "Верхній лівий кут" #: ../share/extensions/guides_creator.inx.h:10 -msgid "1/4" -msgstr "1/4" +msgid "Upper right corner" +msgstr "Верхній правий кут" #: ../share/extensions/guides_creator.inx.h:11 -msgid "1/5" -msgstr "1/5" +msgid "Lower left corner" +msgstr "Нижній лівий кут" #: ../share/extensions/guides_creator.inx.h:12 -msgid "1/6" -msgstr "1/6" +msgid "Lower right corner" +msgstr "Нижній правий кут" #: ../share/extensions/guides_creator.inx.h:13 -msgid "1/7" -msgstr "1/7" +msgid "Margins" +msgstr "Поля" #: ../share/extensions/guides_creator.inx.h:14 -msgid "1/8" -msgstr "1/8" +msgid "Margins preset" +msgstr "Набір полів" #: ../share/extensions/guides_creator.inx.h:15 -msgid "1/9" -msgstr "1/9" +msgid "Header margin" +msgstr "Поле шапки" #: ../share/extensions/guides_creator.inx.h:16 -msgid "1/10" -msgstr "1/10" - -#: ../share/extensions/guides_creator.inx.h:17 -msgid "Horizontal guide each:" -msgstr "Горизонтальні напрямні кожні:" - -#: ../share/extensions/guides_creator.inx.h:18 -msgid "Start from edges" -msgstr "Почати від країв" - -#: ../share/extensions/guides_creator.inx.h:19 -msgid "Delete existing guides" -msgstr "Вилучити існуючі напрямні" +msgid "Footer margin" +msgstr "Поле підвалу" #: ../share/extensions/guillotine.inx.h:1 msgid "Guillotine" @@ -30577,6 +30617,171 @@ msgstr "Експорт" msgid "Draw Handles" msgstr "Малювати вуса" +#: ../share/extensions/hershey.inx.h:1 +msgid "Hershey Text" +msgstr "Текст Hershey" + +#: ../share/extensions/hershey.inx.h:2 +msgid "Render Text" +msgstr "Обробка тексту" + +#: ../share/extensions/hershey.inx.h:3 +#: ../share/extensions/render_alphabetsoup.inx.h:2 +#: ../share/extensions/render_barcode_datamatrix.inx.h:2 +#: ../share/extensions/render_barcode_qrcode.inx.h:3 +msgid "Text:" +msgstr "Текст:" + +#: ../share/extensions/hershey.inx.h:4 +msgid " Action" +msgstr " Дія" + +#: ../share/extensions/hershey.inx.h:5 +msgid " Font face " +msgstr " Гарнітура шрифту " + +#: ../share/extensions/hershey.inx.h:6 +msgid "Typeset that text" +msgstr "Надрукувати цей текст" + +#: ../share/extensions/hershey.inx.h:7 +msgid "Write glyph table" +msgstr "Записати таблицю гліфів" + +#: ../share/extensions/hershey.inx.h:8 +msgid "Sans 1-stroke" +msgstr "Без засічок, одноштрихова" + +#: ../share/extensions/hershey.inx.h:9 +msgid "Sans bold" +msgstr "Без засічок, напівжирна" + +#: ../share/extensions/hershey.inx.h:10 +msgid "Serif medium" +msgstr "З засічками, середня" + +#: ../share/extensions/hershey.inx.h:11 +msgid "Serif medium italic" +msgstr "З засічками, середня курсивна" + +#: ../share/extensions/hershey.inx.h:12 +msgid "Serif bold italic" +msgstr "З засічками, напівжирна курсивна" + +#: ../share/extensions/hershey.inx.h:13 +msgid "Serif bold" +msgstr "З засічками, напівжирна" + +#: ../share/extensions/hershey.inx.h:14 +msgid "Script 1-stroke" +msgstr "Рукописний, одноштрихова" + +#: ../share/extensions/hershey.inx.h:15 +msgid "Script 1-stroke (alt)" +msgstr "Рукописна, одноштрихова (альтернативна)" + +#: ../share/extensions/hershey.inx.h:16 +msgid "Script medium" +msgstr "Рукописна, середня" + +#: ../share/extensions/hershey.inx.h:17 +msgid "Gothic English" +msgstr "Готична англійська" + +#: ../share/extensions/hershey.inx.h:18 +msgid "Gothic German" +msgstr "Готична німецька" + +#: ../share/extensions/hershey.inx.h:19 +msgid "Gothic Italian" +msgstr "Готична італійська" + +#: ../share/extensions/hershey.inx.h:20 +msgid "Greek 1-stroke" +msgstr "Грецька, одноштрихова" + +#: ../share/extensions/hershey.inx.h:21 +msgid "Greek medium" +msgstr "Грецька, середня" + +#: ../share/extensions/hershey.inx.h:23 +msgid "Japanese" +msgstr "Японська" + +#: ../share/extensions/hershey.inx.h:24 +msgid "Astrology" +msgstr "Астрологічна" + +#: ../share/extensions/hershey.inx.h:25 +msgid "Math (lower)" +msgstr "Математична (малі)" + +#: ../share/extensions/hershey.inx.h:26 +msgid "Math (upper)" +msgstr "Математична (великі)" + +#: ../share/extensions/hershey.inx.h:28 +msgid "Meteorology" +msgstr "Метеорологічна" + +#: ../share/extensions/hershey.inx.h:29 +msgid "Music" +msgstr "Музична" + +#: ../share/extensions/hershey.inx.h:30 +msgid "Symbolic" +msgstr "Символи" + +#: ../share/extensions/hershey.inx.h:31 +msgid "" +" \n" +"\n" +"\n" +"\n" +msgstr "" +" \n" +"\n" +"\n" +"\n" + +#: ../share/extensions/hershey.inx.h:36 +msgid "About..." +msgstr "Про додаток…" + +#: ../share/extensions/hershey.inx.h:37 +msgid "" +"\n" +"This extension renders a line of text using\n" +"\"Hershey\" fonts for plotters, derived from \n" +"NBS SP-424 1976-04, \"A contribution to \n" +"computer typesetting techniques: Tables of\n" +"Coordinates for Hershey's Repertory of\n" +"Occidental Type Fonts and Graphic Symbols.\"\n" +"\n" +"These are not traditional \"outline\" fonts, \n" +"but are instead \"single-stroke\" fonts, or\n" +"\"engraving\" fonts where the character is\n" +"formed by the stroke (and not the fill).\n" +"\n" +"For additional information, please visit:\n" +" www.evilmadscientist.com/go/hershey" +msgstr "" +"\n" +"Цей додаток призначено для виведення рядка тексту\n" +"за допомогою шрифтів «Hershey» для плотерів, на основі \n" +"NBS SP-424 1976-04, «A contribution to \n" +"computer typesetting techniques: Tables of\n" +"Coordinates for Hershey's Repertory of\n" +"Occidental Type Fonts and Graphic Symbols.»\n" +"\n" +"Ці шрифти не є традиційними контурними шрифтами, \n" +"а скоріше одноштриховими шрифтами або шрифтами \n" +"для гравірування, символи у цих шрифтах створюються\n" +"нерозривним штрихом, а не заповненням контуру.\n" +"\n" +"Додаткову інформацію можна знайти на цьому сайті:\n" +" www.evilmadscientist.com/go/hershey" + #: ../share/extensions/hpgl_output.inx.h:1 msgid "HPGL Output" msgstr "Експорт до HPGL" @@ -32067,6 +32272,10 @@ msgstr "Сторінок на дюйм (ppi)" msgid "Caliper (inches)" msgstr "Товщина листа (дюйми)" +#: ../share/extensions/perfectboundcover.inx.h:11 +msgid "Points" +msgstr "Пункти" + #: ../share/extensions/perfectboundcover.inx.h:12 msgid "Bond Weight #" msgstr "Вага паперу" @@ -32429,12 +32638,6 @@ msgstr "" msgid "Alphabet Soup" msgstr "Абетковий суп" -#: ../share/extensions/render_alphabetsoup.inx.h:2 -#: ../share/extensions/render_barcode_datamatrix.inx.h:2 -#: ../share/extensions/render_barcode_qrcode.inx.h:3 -msgid "Text:" -msgstr "Текст:" - #: ../share/extensions/render_barcode.inx.h:1 msgid "Classic" msgstr "Класичний" @@ -32518,6 +32721,47 @@ msgstr "H (приблизно 30%)" msgid "Square size (px):" msgstr "Розмір квадрата (у пк):" +#: ../share/extensions/render_gears.inx.h:1 +#: ../share/extensions/render_gear_rack.inx.h:6 +msgid "Gear" +msgstr "Зубцювате колесо" + +#: ../share/extensions/render_gears.inx.h:2 +msgid "Number of teeth:" +msgstr "Кількість зубців:" + +#: ../share/extensions/render_gears.inx.h:3 +msgid "Circular pitch (tooth size):" +msgstr "Круговий крок (розмір зубця):" + +#: ../share/extensions/render_gears.inx.h:4 +msgid "Pressure angle (degrees):" +msgstr "Кут зчеплення зубців (у градусах):" + +#: ../share/extensions/render_gears.inx.h:5 +msgid "Diameter of center hole (0 for none):" +msgstr "Діаметр центрального отвору (0 — без отвору):" + +#: ../share/extensions/render_gears.inx.h:10 +msgid "Unit of measurement for both circular pitch and center diameter." +msgstr "Одиниця виміру кругового кроку і діаметра центрального отвору." + +#: ../share/extensions/render_gear_rack.inx.h:1 +msgid "Rack Gear" +msgstr "Рейкова зубчаста передача" + +#: ../share/extensions/render_gear_rack.inx.h:2 +msgid "Rack Length:" +msgstr "Довжина рейки:" + +#: ../share/extensions/render_gear_rack.inx.h:3 +msgid "Tooth Spacing:" +msgstr "Інтервал між зубцями:" + +#: ../share/extensions/render_gear_rack.inx.h:4 +msgid "Contact Angle:" +msgstr "Кут зчеплення:" + #: ../share/extensions/replace_font.inx.h:1 msgid "Replace font" msgstr "Замінити шрифт" @@ -32603,6 +32847,7 @@ msgstr "Горизонтальна точка:" #: ../share/extensions/restack.inx.h:13 #: ../share/extensions/text_extract.inx.h:9 +#: ../share/extensions/text_merge.inx.h:9 msgid "Middle" msgstr "Посередині" @@ -32612,11 +32857,13 @@ msgstr "Вертикальна точка:" #: ../share/extensions/restack.inx.h:16 #: ../share/extensions/text_extract.inx.h:12 +#: ../share/extensions/text_merge.inx.h:12 msgid "Top" msgstr "Верх" #: ../share/extensions/restack.inx.h:17 #: ../share/extensions/text_extract.inx.h:13 +#: ../share/extensions/text_merge.inx.h:13 msgid "Bottom" msgstr "Низ" @@ -33220,30 +33467,37 @@ msgid "Extract" msgstr "Видобування" #: ../share/extensions/text_extract.inx.h:2 +#: ../share/extensions/text_merge.inx.h:2 msgid "Text direction:" msgstr "Напрямок тексту:" #: ../share/extensions/text_extract.inx.h:3 +#: ../share/extensions/text_merge.inx.h:3 msgid "Left to right" msgstr "Зліва праворуч" #: ../share/extensions/text_extract.inx.h:4 +#: ../share/extensions/text_merge.inx.h:4 msgid "Bottom to top" msgstr "Знизу догори" #: ../share/extensions/text_extract.inx.h:5 +#: ../share/extensions/text_merge.inx.h:5 msgid "Right to left" msgstr "Справа ліворуч" #: ../share/extensions/text_extract.inx.h:6 +#: ../share/extensions/text_merge.inx.h:6 msgid "Top to bottom" msgstr "Згори вниз" #: ../share/extensions/text_extract.inx.h:7 +#: ../share/extensions/text_merge.inx.h:7 msgid "Horizontal point:" msgstr "Горизонтальна точка:" #: ../share/extensions/text_extract.inx.h:11 +#: ../share/extensions/text_merge.inx.h:11 msgid "Vertical point:" msgstr "Вертикальна точка:" @@ -33264,6 +33518,14 @@ msgstr "Змінити регістр" msgid "lowercase" msgstr "нижній регістр" +#: ../share/extensions/text_merge.inx.h:14 +msgid "Flow text" +msgstr "Контурний текст" + +#: ../share/extensions/text_merge.inx.h:15 +msgid "Keep style" +msgstr "Зберегти стиль" + #: ../share/extensions/text_randomcase.inx.h:1 msgid "rANdOm CasE" msgstr "вИПАдкоВий реГіСТР" @@ -33819,6 +34081,178 @@ msgstr "Популярний графічний формат для кліпар msgid "XAML Input" msgstr "Імпорт з XAML" +#~ msgid "Pt" +#~ msgstr "пт" + +#~ msgid "Picas" +#~ msgstr "Піки" + +#~ msgid "Pc" +#~ msgstr "Пк" + +#~ msgid "Pixels" +#~ msgstr "Точки" + +#~ msgid "Px" +#~ msgstr "точок" + +#~ msgid "Percent" +#~ msgstr "Відсоток" + +#~ msgid "Percents" +#~ msgstr "Відсотки" + +#~ msgid "Millimeters" +#~ msgstr "Міліметри" + +#~ msgid "Centimeters" +#~ msgstr "Сантиметри" + +#~ msgid "Meter" +#~ msgstr "Метр" + +#~ msgid "Meters" +#~ msgstr "Метри" + +#~ msgid "Inches" +#~ msgstr "Дюйми" + +#~ msgid "Foot" +#~ msgstr "Фут" + +#~ msgid "Feet" +#~ msgstr "Фути" + +#~ msgid "em" +#~ msgstr "em" + +#~ msgid "Em squares" +#~ msgstr "Em квадрати" + +#~ msgid "Ex square" +#~ msgstr "Ex квадрат" + +#~ msgid "ex" +#~ msgstr "ex" + +#~ msgid "Ex squares" +#~ msgstr "Ex квадрати" + +#~ msgid "Name by which this document is formally known" +#~ msgstr "Назва, під якою цей документ офіційно відомий" + +#~ msgid "Date associated with the creation of this document (YYYY-MM-DD)" +#~ msgstr "Дата, до якої відноситься створення цього документа (РРРР-ММ-ДД)" + +#~ msgid "The physical or digital manifestation of this document (MIME type)" +#~ msgstr "Фізичний або цифровий вияв цього документа (MIME-тип)" + +#~ msgid "Type of document (DCMI Type)" +#~ msgstr "Тип документа (тип DCMI)" + +#~ msgid "" +#~ "Name of entity with rights to the Intellectual Property of this document" +#~ msgstr "Назва суб'єкта, чиєю інтелектуальною власністю є цей документ" + +#~ msgid "Unique URI to reference this document" +#~ msgstr "Унікальний URI для посилання на цей документ" + +#~ msgid "Unique URI to reference the source of this document" +#~ msgstr "Унікальний URI для посилання на джерело цього документа" + +#~ msgid "Unique URI to a related document" +#~ msgstr "Унікальний URI пов'язаного документа" + +#~ msgid "" +#~ "Two-letter language tag with optional subtags for the language of this " +#~ "document (e.g. 'en-GB')" +#~ msgstr "Дволітерний код мови, можливо з підтеґами (наприклад, «uk-UA»)" + +#~ msgid "" +#~ "The topic of this document as comma-separated key words, phrases, or " +#~ "classifications" +#~ msgstr "" +#~ "Опис теми цього документа списком ключових слів, фраз чи класифікацій" + +#~ msgid "Extent or scope of this document" +#~ msgstr "Висвітлення або тематичні рамки цього документа" + +#~ msgid "Allow relative coordinates" +#~ msgstr "Дозволити відносні координати" + +#~ msgid "If set, relative coordinates may be used in path data" +#~ msgstr "" +#~ "Якщо позначено, у даних контурів можна використовувати відносні координати" + +#~ msgid "_Execute Javascript" +#~ msgstr "_Виконати Javascript" + +#~ msgid "_Execute Python" +#~ msgstr "_Виконати Python" + +#~ msgid "_Execute Ruby" +#~ msgstr "_Виконати Ruby" + +#~ msgid "Script" +#~ msgstr "Сценарій" + +#~ msgid "Output" +#~ msgstr "Вивід" + +#~ msgid "Errors" +#~ msgstr "Помилки" + +#~ msgid "S_cripts..." +#~ msgstr "С_ценарії…" + +#~ msgid "Run scripts" +#~ msgstr "Запустити сценарії" + +#~ msgid "Preset:" +#~ msgstr "Шаблон:" + +#~ msgid "Custom..." +#~ msgstr "Інше…" + +#~ msgid "Golden ratio" +#~ msgstr "«Золота» пропорція" + +#~ msgid "Rule-of-third" +#~ msgstr "Правило трьох" + +#~ msgid "Vertical guide each:" +#~ msgstr "Вертикальна напрямна кожні:" + +#~ msgid "1/2" +#~ msgstr "1/2" + +#~ msgid "1/3" +#~ msgstr "1/3" + +#~ msgid "1/4" +#~ msgstr "1/4" + +#~ msgid "1/5" +#~ msgstr "1/5" + +#~ msgid "1/6" +#~ msgstr "1/6" + +#~ msgid "1/7" +#~ msgstr "1/7" + +#~ msgid "1/8" +#~ msgstr "1/8" + +#~ msgid "1/9" +#~ msgstr "1/9" + +#~ msgid "1/10" +#~ msgstr "1/10" + +#~ msgid "Horizontal guide each:" +#~ msgstr "Горизонтальні напрямні кожні:" + #~ msgid "Preview scale: " #~ msgstr "Масштаб перегляду: " @@ -33938,9 +34372,6 @@ msgstr "Імпорт з XAML" #~ "Візерунок є верхнім об'єктом у позначеному (можна використовувати групи " #~ "контурів, форми, клони...)" -#~ msgid "Blend source:" -#~ msgstr "Джерело змішування:" - #~ msgid "Composite:" #~ msgstr "Суміщення:" -- cgit v1.2.3 From e9468d5c8bc974ee96dc7537e0d13fe2def0e615 Mon Sep 17 00:00:00 2001 From: Slagvi Public Date: Sat, 24 Aug 2013 23:36:04 +0200 Subject: Add listing procedural templates in NewFromTemplate dialog. (bzr r12481.1.1) --- src/ui/dialog/template-load-tab.cpp | 100 ++++++++++++++++++++++++------------ src/ui/dialog/template-load-tab.h | 4 ++ 2 files changed, 72 insertions(+), 32 deletions(-) diff --git a/src/ui/dialog/template-load-tab.cpp b/src/ui/dialog/template-load-tab.cpp index 265ee8026..280b3b073 100644 --- a/src/ui/dialog/template-load-tab.cpp +++ b/src/ui/dialog/template-load-tab.cpp @@ -18,6 +18,8 @@ #include #include #include +#include +#include #include "interface.h" #include "file.h" @@ -27,6 +29,8 @@ #include "xml/repr.h" #include "xml/document.h" #include "xml/node.h" +#include "extension/db.h" +#include "extension/effect.h" namespace Inkscape { @@ -187,6 +191,10 @@ void TemplateLoadTab::_loadTemplates() // system templates dir _getTemplatesFromDir(INKSCAPE_TEMPLATESDIR + _loading_path); + + + // procedural templates + _getProceduralTemplates(); } @@ -209,7 +217,6 @@ TemplateLoadTab::TemplateData TemplateLoadTab::_processTemplateFile(const Glib:: Inkscape::XML::Document *rdoc; rdoc = sp_repr_read_file(path.data(), SP_SVG_NS_URI); Inkscape::XML::Node *myRoot; - Inkscape::XML::Node *dataNode; if (rdoc){ myRoot = rdoc->root(); @@ -221,37 +228,7 @@ TemplateLoadTab::TemplateData TemplateLoadTab::_processTemplateFile(const Glib:: if (myRoot == NULL) // No template info return result; - - if ((dataNode = sp_repr_lookup_name(myRoot, "inkscape:_name")) != NULL) - result.display_name = dgettext("Document template name", dataNode->firstChild()->content()); - if ((dataNode = sp_repr_lookup_name(myRoot, "inkscape:author")) != NULL) - result.author = dataNode->firstChild()->content(); - if ((dataNode = sp_repr_lookup_name(myRoot, "inkscape:_short")) != NULL) - result.short_description = dgettext("Document template short description", dataNode->firstChild()->content()); - if ((dataNode = sp_repr_lookup_name(myRoot, "inkscape:_long") )!= NULL) - result.long_description = dgettext("Document template long description", dataNode->firstChild()->content()); - if ((dataNode = sp_repr_lookup_name(myRoot, "inkscape:preview")) != NULL) - result.preview_name = dataNode->firstChild()->content(); - if ((dataNode = sp_repr_lookup_name(myRoot, "inkscape:date")) != NULL){ - result.creation_date = dataNode->firstChild()->content(); - } - - if ((dataNode = sp_repr_lookup_name(myRoot, "inkscape:_keywords")) != NULL){ - Glib::ustring data = dataNode->firstChild()->content(); - while (!data.empty()){ - std::size_t pos = data.find_first_of(" "); - if (pos == Glib::ustring::npos) - pos = data.size(); - - Glib::ustring keyword = dgettext("Document template keyword", data.substr(0, pos).data()); - result.keywords.insert(keyword); - _keywords.insert(keyword); - - if (pos == data.size()) - break; - data.erase(0, pos+1); - } - } + _getDataFromNode(myRoot, result); } return result; @@ -277,5 +254,64 @@ void TemplateLoadTab::_getTemplatesFromDir(const Glib::ustring &path) } } + +void TemplateLoadTab::_getProceduralTemplates() +{ + std::list effects; + Inkscape::Extension::db.get_effect_list(effects); + + std::list::iterator it = effects.begin(); + while (it != effects.end()){ + Inkscape::XML::Node *myRoot; + myRoot = (*it)->get_repr(); + myRoot = sp_repr_lookup_name(myRoot, "inkscape:_templateinfo"); + + if (myRoot){ + TemplateData result; + result.display_name = (*it)->get_name(); + result.is_procedural = true; + result.path = ""; + _getDataFromNode(myRoot, result); + _tdata[result.display_name] = result; + } + ++it; + } +} + + +void TemplateLoadTab::_getDataFromNode(Inkscape::XML::Node *dataNode, TemplateData &data) +{ + Inkscape::XML::Node *currentData; + if ((currentData = sp_repr_lookup_name(dataNode, "inkscape:_name")) != NULL) + data.display_name = dgettext("Document template name", currentData->firstChild()->content()); + if ((currentData = sp_repr_lookup_name(dataNode, "inkscape:author")) != NULL) + data.author = currentData->firstChild()->content(); + if ((currentData = sp_repr_lookup_name(dataNode, "inkscape:_short")) != NULL) + data.short_description = dgettext("Document template short description", currentData->firstChild()->content()); + if ((currentData = sp_repr_lookup_name(dataNode, "inkscape:_long") )!= NULL) + data.long_description = dgettext("Document template long description", currentData->firstChild()->content()); + if ((currentData = sp_repr_lookup_name(dataNode, "inkscape:preview")) != NULL) + data.preview_name = currentData->firstChild()->content(); + if ((currentData = sp_repr_lookup_name(dataNode, "inkscape:date")) != NULL) + data.creation_date = currentData->firstChild()->content(); + + if ((currentData = sp_repr_lookup_name(dataNode, "inkscape:_keywords")) != NULL){ + Glib::ustring tplKeywords = currentData->firstChild()->content(); + while (!tplKeywords.empty()){ + std::size_t pos = tplKeywords.find_first_of(" "); + if (pos == Glib::ustring::npos) + pos = tplKeywords.size(); + + Glib::ustring keyword = dgettext("Document template keyword", tplKeywords.substr(0, pos).data()); + data.keywords.insert(keyword); + _keywords.insert(keyword); + + if (pos == tplKeywords.size()) + break; + tplKeywords.erase(0, pos+1); + } + } +} + } } diff --git a/src/ui/dialog/template-load-tab.h b/src/ui/dialog/template-load-tab.h index 50f3e0be2..c3817cf1b 100644 --- a/src/ui/dialog/template-load-tab.h +++ b/src/ui/dialog/template-load-tab.h @@ -19,6 +19,8 @@ #include #include +#include "xml/node.h" + namespace Inkscape { namespace UI { @@ -91,6 +93,8 @@ private: SearchType _current_search_type; + void _getDataFromNode(Inkscape::XML::Node *, TemplateData &); + void _getProceduralTemplates(); void _getTemplatesFromDir(const Glib::ustring &); void _keywordSelected(); TemplateData _processTemplateFile(const Glib::ustring &); -- cgit v1.2.3 From 4dfcc084f4bbc40b3ab9dada2b5821191b859d84 Mon Sep 17 00:00:00 2001 From: Uwe Sch??ler Date: Sun, 25 Aug 2013 10:44:54 +0200 Subject: German translation update (bzr r12486) --- po/de.po | 6519 ++++++++++++++++++++++++++++++++------------------------------ 1 file changed, 3380 insertions(+), 3139 deletions(-) diff --git a/po/de.po b/po/de.po index d929cb9bb..0661bb545 100644 --- a/po/de.po +++ b/po/de.po @@ -17,8 +17,8 @@ msgid "" msgstr "" "Project-Id-Version: inkscape\n" "Report-Msgid-Bugs-To: inkscape-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2013-06-27 21:15+0200\n" -"PO-Revision-Date: 2013-07-31 22:10+0100\n" +"POT-Creation-Date: 2013-08-22 14:40+0200\n" +"PO-Revision-Date: 2013-08-25 10:44+0100\n" "Last-Translator: Uwe Schoeler \n" "Language-Team: \n" "Language: de\n" @@ -969,8 +969,8 @@ msgstr "Aufgefaltetes Tigerfellmuster mit abgeschrägten Kanten " msgid "Black Light" msgstr "Schwarzes Licht" -#: ../share/filters/filters.svg.h:1 ../src/ui/dialog/clonetiler.cpp:831 -#: ../src/ui/dialog/clonetiler.cpp:982 +#: ../share/filters/filters.svg.h:1 ../src/ui/dialog/clonetiler.cpp:832 +#: ../src/ui/dialog/clonetiler.cpp:983 #: ../src/extension/internal/bitmap/colorize.cpp:52 #: ../src/extension/internal/filter/bumps.h:101 #: ../src/extension/internal/filter/bumps.h:321 @@ -1002,7 +1002,7 @@ msgstr "Schwarzes Licht" #: ../src/extension/internal/filter/paint.h:717 #: ../src/extension/internal/filter/shadows.h:73 #: ../src/extension/internal/filter/transparency.h:345 -#: ../src/ui/dialog/document-properties.cpp:150 +#: ../src/ui/dialog/document-properties.cpp:149 #: ../share/extensions/color_blackandwhite.inx.h:2 #: ../share/extensions/color_brighter.inx.h:2 #: ../share/extensions/color_custom.inx.h:15 @@ -3276,8 +3276,8 @@ msgstr "Richtung" msgid "Defines the direction and magnitude of the extrusion" msgstr "Definiert Richtung und Ausmaß der Extrusion" -#: ../src/sp-flowtext.cpp:339 ../src/sp-text.cpp:400 -#: ../src/text-context.cpp:1630 +#: ../src/sp-flowtext.cpp:339 ../src/sp-text.cpp:399 +#: ../src/text-context.cpp:1631 msgid " [truncated]" msgstr "[abgestumpft}" @@ -3295,18 +3295,18 @@ msgid_plural "Linked flowed text (%d characters%s)" msgstr[0] "Verknüpfter Fließtext (%d Zeichen %s)" msgstr[1] "Verknüpfter Fließtext (%d Zeichen %s)" -#: ../src/arc-context.cpp:307 +#: ../src/arc-context.cpp:306 msgid "" "Ctrl: make circle or integer-ratio ellipse, snap arc/segment angle" msgstr "" "Strg: Kreis oder Ellipse mit ganzzahligem Höhen-/Breitenverhältnis " "erzeugen, Winkel vom Bogen/Kreissegment einrasten" -#: ../src/arc-context.cpp:308 ../src/rect-context.cpp:353 +#: ../src/arc-context.cpp:307 ../src/rect-context.cpp:352 msgid "Shift: draw around the starting point" msgstr "Umschalt: Um Mittelpunkt zeichnen" -#: ../src/arc-context.cpp:464 +#: ../src/arc-context.cpp:465 #, c-format msgid "" "Ellipse: %s × %s (constrained to ratio %d:%d); with Shift " @@ -3315,7 +3315,7 @@ msgstr "" "Ellipse: %s × %s (festes Achsenverhältnis %d:%d); Umschalt zeichnet um Startpunkt" -#: ../src/arc-context.cpp:466 +#: ../src/arc-context.cpp:467 #, c-format msgid "" "Ellipse: %s × %s; with Ctrl to make square or integer-" @@ -3324,22 +3324,22 @@ msgstr "" "Ellipse: %s × %s; Strg drücken für ganzzahliges " "Verhältnis der Radien; Umschalt zeichnet um Startpunkt" -#: ../src/arc-context.cpp:492 +#: ../src/arc-context.cpp:493 msgid "Create ellipse" msgstr "Ellipse erzeugen" -#: ../src/box3d-context.cpp:421 ../src/box3d-context.cpp:428 -#: ../src/box3d-context.cpp:435 ../src/box3d-context.cpp:442 -#: ../src/box3d-context.cpp:449 ../src/box3d-context.cpp:456 +#: ../src/box3d-context.cpp:420 ../src/box3d-context.cpp:427 +#: ../src/box3d-context.cpp:434 ../src/box3d-context.cpp:441 +#: ../src/box3d-context.cpp:448 ../src/box3d-context.cpp:455 msgid "Change perspective (angle of PLs)" msgstr "Perspektive ändern (Winkel der Perspektivlinien)" #. status text -#: ../src/box3d-context.cpp:640 +#: ../src/box3d-context.cpp:639 msgid "3D Box; with Shift to extrude along the Z axis" msgstr "3D Box; Umschalt um in Z-Richtung zu vergrößern" -#: ../src/box3d-context.cpp:668 +#: ../src/box3d-context.cpp:667 msgid "Create 3D box" msgstr "3D-Quader erzeugen" @@ -3362,22 +3362,21 @@ msgstr "(ungültiger UTF-8 string)" #: ../src/ui/dialog/filter-effects-dialog.cpp:518 #: ../src/ui/dialog/inkscape-preferences.cpp:332 #: ../src/ui/dialog/inkscape-preferences.cpp:641 -#: ../src/ui/dialog/inkscape-preferences.cpp:1255 -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 -#: ../src/ui/dialog/inkscape-preferences.cpp:1817 +#: ../src/ui/dialog/inkscape-preferences.cpp:1259 +#: ../src/ui/dialog/inkscape-preferences.cpp:1423 +#: ../src/ui/dialog/inkscape-preferences.cpp:1821 #: ../src/ui/dialog/input.cpp:742 ../src/ui/dialog/input.cpp:743 #: ../src/ui/dialog/input.cpp:1571 ../src/ui/dialog/input.cpp:1625 -#: ../src/verbs.cpp:2293 ../src/widgets/gradient-toolbar.cpp:1128 -#: ../src/widgets/pencil-toolbar.cpp:189 +#: ../src/verbs.cpp:2345 ../src/widgets/gradient-toolbar.cpp:1128 +#: ../src/widgets/pencil-toolbar.cpp:184 +#: ../src/widgets/stroke-marker-selector.cpp:388 #: ../share/extensions/gcodetools_area.inx.h:48 #: ../share/extensions/gcodetools_dxf_points.inx.h:20 #: ../share/extensions/gcodetools_engraving.inx.h:26 #: ../share/extensions/gcodetools_graffiti.inx.h:37 #: ../share/extensions/gcodetools_lathe.inx.h:41 #: ../share/extensions/gcodetools_path_to_gcode.inx.h:30 -#: ../share/extensions/grid_polar.inx.h:4 -#: ../share/extensions/guides_creator.inx.h:7 -#: ../share/extensions/scour.inx.h:18 +#: ../share/extensions/grid_polar.inx.h:4 ../share/extensions/scour.inx.h:18 msgid "None" msgstr "Keine" @@ -3412,11 +3411,11 @@ msgstr "" msgid "Select at least one non-connector object." msgstr "Mindestens ein Objekt auswählen, das kein Objektverbinder ist." -#: ../src/connector-context.cpp:1456 ../src/widgets/connector-toolbar.cpp:330 +#: ../src/connector-context.cpp:1456 ../src/widgets/connector-toolbar.cpp:326 msgid "Make connectors avoid selected objects" msgstr "Objektverbinder weichen den ausgewählten Objekten aus" -#: ../src/connector-context.cpp:1457 ../src/widgets/connector-toolbar.cpp:340 +#: ../src/connector-context.cpp:1457 ../src/widgets/connector-toolbar.cpp:336 msgid "Make connectors ignore selected objects" msgstr "Objektverbinder ignorieren die ausgewählten Objekte" @@ -3430,396 +3429,396 @@ msgstr "" msgid "Current layer is locked. Unlock it to be able to draw on it." msgstr "Aktuelle Ebene ist gesperrt. Entsperren, um darauf zu zeichnen." -#: ../src/desktop-events.cpp:228 +#: ../src/desktop-events.cpp:225 msgid "Create guide" msgstr "Führungslinie erzeugen" -#: ../src/desktop-events.cpp:473 +#: ../src/desktop-events.cpp:470 msgid "Move guide" msgstr "Führungslinie verschieben" -#: ../src/desktop-events.cpp:480 ../src/desktop-events.cpp:538 +#: ../src/desktop-events.cpp:477 ../src/desktop-events.cpp:535 #: ../src/ui/dialog/guides.cpp:144 msgid "Delete guide" msgstr "Führungslinie löschen" -#: ../src/desktop-events.cpp:518 +#: ../src/desktop-events.cpp:515 #, c-format msgid "Guideline: %s" msgstr "Führungslinie: %s" -#: ../src/desktop.cpp:911 +#: ../src/desktop.cpp:826 msgid "No previous zoom." msgstr "Kein vorheriger Zoomfaktor." -#: ../src/desktop.cpp:932 +#: ../src/desktop.cpp:847 msgid "No next zoom." msgstr "Kein nächster Zoomfaktor." -#: ../src/ui/dialog/clonetiler.cpp:111 +#: ../src/ui/dialog/clonetiler.cpp:112 msgid "_Symmetry" msgstr "_Symmetrie" #. TRANSLATORS: "translation" means "shift" / "displacement" here. -#: ../src/ui/dialog/clonetiler.cpp:123 +#: ../src/ui/dialog/clonetiler.cpp:124 msgid "P1: simple translation" msgstr "P1: einfache Verschiebung" -#: ../src/ui/dialog/clonetiler.cpp:124 +#: ../src/ui/dialog/clonetiler.cpp:125 msgid "P2: 180° rotation" msgstr "P2: 180° Rotation" -#: ../src/ui/dialog/clonetiler.cpp:125 +#: ../src/ui/dialog/clonetiler.cpp:126 msgid "PM: reflection" msgstr "PM: Reflektion" #. TRANSLATORS: "glide reflection" is a reflection and a translation combined. #. For more info, see http://mathforum.org/sum95/suzanne/symsusan.html -#: ../src/ui/dialog/clonetiler.cpp:128 +#: ../src/ui/dialog/clonetiler.cpp:129 msgid "PG: glide reflection" msgstr "PG: gleitende Reflektion" -#: ../src/ui/dialog/clonetiler.cpp:129 +#: ../src/ui/dialog/clonetiler.cpp:130 msgid "CM: reflection + glide reflection" msgstr "CM: Reflektion + gleitende Reflektion" -#: ../src/ui/dialog/clonetiler.cpp:130 +#: ../src/ui/dialog/clonetiler.cpp:131 msgid "PMM: reflection + reflection" msgstr "PMM: Reflektion + Reflektion" -#: ../src/ui/dialog/clonetiler.cpp:131 +#: ../src/ui/dialog/clonetiler.cpp:132 msgid "PMG: reflection + 180° rotation" msgstr "PMG: Reflektion + 180° Rotation" -#: ../src/ui/dialog/clonetiler.cpp:132 +#: ../src/ui/dialog/clonetiler.cpp:133 msgid "PGG: glide reflection + 180° rotation" msgstr "PGG: gleitende Reflektion + 180° Rotation" -#: ../src/ui/dialog/clonetiler.cpp:133 +#: ../src/ui/dialog/clonetiler.cpp:134 msgid "CMM: reflection + reflection + 180° rotation" msgstr "CMM: Reflektion + Reflektion + 180° Rotation" -#: ../src/ui/dialog/clonetiler.cpp:134 +#: ../src/ui/dialog/clonetiler.cpp:135 msgid "P4: 90° rotation" msgstr "P4: 90° Rotation" -#: ../src/ui/dialog/clonetiler.cpp:135 +#: ../src/ui/dialog/clonetiler.cpp:136 msgid "P4M: 90° rotation + 45° reflection" msgstr "P4M: 90° Rotation + 45° Reflektion" -#: ../src/ui/dialog/clonetiler.cpp:136 +#: ../src/ui/dialog/clonetiler.cpp:137 msgid "P4G: 90° rotation + 90° reflection" msgstr "P4G: 90° Rotation + 90° Reflektion" -#: ../src/ui/dialog/clonetiler.cpp:137 +#: ../src/ui/dialog/clonetiler.cpp:138 msgid "P3: 120° rotation" msgstr "P3: 120° Rotation" -#: ../src/ui/dialog/clonetiler.cpp:138 +#: ../src/ui/dialog/clonetiler.cpp:139 msgid "P31M: reflection + 120° rotation, dense" msgstr "P31M: Reflektion + 120° Rotation, dicht" -#: ../src/ui/dialog/clonetiler.cpp:139 +#: ../src/ui/dialog/clonetiler.cpp:140 msgid "P3M1: reflection + 120° rotation, sparse" msgstr "P3M1: Reflektion + 120° Rotation, dünn" -#: ../src/ui/dialog/clonetiler.cpp:140 +#: ../src/ui/dialog/clonetiler.cpp:141 msgid "P6: 60° rotation" msgstr "P6: 60° Rotation" -#: ../src/ui/dialog/clonetiler.cpp:141 +#: ../src/ui/dialog/clonetiler.cpp:142 msgid "P6M: reflection + 60° rotation" msgstr "P6M: Reflektion + 60° Rotation" -#: ../src/ui/dialog/clonetiler.cpp:161 +#: ../src/ui/dialog/clonetiler.cpp:162 msgid "Select one of the 17 symmetry groups for the tiling" msgstr "Eine der 17 Symmetrie-Gruppen zum Kacheln auswählen" -#: ../src/ui/dialog/clonetiler.cpp:179 +#: ../src/ui/dialog/clonetiler.cpp:180 msgid "S_hift" msgstr "Versc_hiebung" #. TRANSLATORS: "shift" means: the tiles will be shifted (offset) horizontally by this amount -#: ../src/ui/dialog/clonetiler.cpp:189 +#: ../src/ui/dialog/clonetiler.cpp:190 #, no-c-format msgid "Shift X:" msgstr "Verschiebung X:" -#: ../src/ui/dialog/clonetiler.cpp:197 +#: ../src/ui/dialog/clonetiler.cpp:198 #, no-c-format msgid "Horizontal shift per row (in % of tile width)" msgstr "Horizontale Verschiebung pro Reihe (in % der Kachelbreite)" -#: ../src/ui/dialog/clonetiler.cpp:205 +#: ../src/ui/dialog/clonetiler.cpp:206 #, no-c-format msgid "Horizontal shift per column (in % of tile width)" msgstr "Horizontale Verschiebung pro Spalte (in % der Kachelbreite)" -#: ../src/ui/dialog/clonetiler.cpp:211 +#: ../src/ui/dialog/clonetiler.cpp:212 msgid "Randomize the horizontal shift by this percentage" msgstr "Zufällige horizontale Verschiebung um diesen Prozentsatz" #. TRANSLATORS: "shift" means: the tiles will be shifted (offset) vertically by this amount -#: ../src/ui/dialog/clonetiler.cpp:221 +#: ../src/ui/dialog/clonetiler.cpp:222 #, no-c-format msgid "Shift Y:" msgstr "Verschiebung X:" -#: ../src/ui/dialog/clonetiler.cpp:229 +#: ../src/ui/dialog/clonetiler.cpp:230 #, no-c-format msgid "Vertical shift per row (in % of tile height)" msgstr "Vertikale Verschiebung pro Reihe (in % der Kachelhöhe)" -#: ../src/ui/dialog/clonetiler.cpp:237 +#: ../src/ui/dialog/clonetiler.cpp:238 #, no-c-format msgid "Vertical shift per column (in % of tile height)" msgstr "Vertikale Verschiebung pro Spalte (in % der Kachelhöhe)" -#: ../src/ui/dialog/clonetiler.cpp:244 +#: ../src/ui/dialog/clonetiler.cpp:245 msgid "Randomize the vertical shift by this percentage" msgstr "Zufällige vertikale Verschiebung um diesen Prozentsatz" -#: ../src/ui/dialog/clonetiler.cpp:252 ../src/ui/dialog/clonetiler.cpp:398 +#: ../src/ui/dialog/clonetiler.cpp:253 ../src/ui/dialog/clonetiler.cpp:399 msgid "Exponent:" msgstr "Exponent:" -#: ../src/ui/dialog/clonetiler.cpp:259 +#: ../src/ui/dialog/clonetiler.cpp:260 msgid "Whether rows are spaced evenly (1), converge (<1) or diverge (>1)" msgstr "" "Reihenabstände bleiben gleich (1), laufen zusammen (<1) oder auseinander (>1)" -#: ../src/ui/dialog/clonetiler.cpp:266 +#: ../src/ui/dialog/clonetiler.cpp:267 msgid "Whether columns are spaced evenly (1), converge (<1) or diverge (>1)" msgstr "" "Spaltenabstände bleiben gleich (1), laufen zusammen (<1) oder auseinander " "(>1)" #. TRANSLATORS: "Alternate" is a verb here -#: ../src/ui/dialog/clonetiler.cpp:274 ../src/ui/dialog/clonetiler.cpp:438 -#: ../src/ui/dialog/clonetiler.cpp:514 ../src/ui/dialog/clonetiler.cpp:587 -#: ../src/ui/dialog/clonetiler.cpp:633 ../src/ui/dialog/clonetiler.cpp:760 +#: ../src/ui/dialog/clonetiler.cpp:275 ../src/ui/dialog/clonetiler.cpp:439 +#: ../src/ui/dialog/clonetiler.cpp:515 ../src/ui/dialog/clonetiler.cpp:588 +#: ../src/ui/dialog/clonetiler.cpp:634 ../src/ui/dialog/clonetiler.cpp:761 msgid "Alternate:" msgstr "Abwechseln:" -#: ../src/ui/dialog/clonetiler.cpp:280 +#: ../src/ui/dialog/clonetiler.cpp:281 msgid "Alternate the sign of shifts for each row" msgstr "Vorzeichenumkehrung der Verschiebungen für jede Reihe" -#: ../src/ui/dialog/clonetiler.cpp:285 +#: ../src/ui/dialog/clonetiler.cpp:286 msgid "Alternate the sign of shifts for each column" msgstr "Vorzeichenumkehrung der Verschiebungen für jede Spalte" #. TRANSLATORS: "Cumulate" is a verb here -#: ../src/ui/dialog/clonetiler.cpp:292 ../src/ui/dialog/clonetiler.cpp:456 -#: ../src/ui/dialog/clonetiler.cpp:532 +#: ../src/ui/dialog/clonetiler.cpp:293 ../src/ui/dialog/clonetiler.cpp:457 +#: ../src/ui/dialog/clonetiler.cpp:533 msgid "Cumulate:" msgstr "Anhäufen:" -#: ../src/ui/dialog/clonetiler.cpp:298 +#: ../src/ui/dialog/clonetiler.cpp:299 msgid "Cumulate the shifts for each row" msgstr "Verschiebungen für sukzessive Reihen aufaddieren" -#: ../src/ui/dialog/clonetiler.cpp:303 +#: ../src/ui/dialog/clonetiler.cpp:304 msgid "Cumulate the shifts for each column" msgstr "Verschiebungen für sukzessive Spalten aufaddieren" #. TRANSLATORS: "Cumulate" is a verb here -#: ../src/ui/dialog/clonetiler.cpp:310 +#: ../src/ui/dialog/clonetiler.cpp:311 msgid "Exclude tile:" msgstr "Kachel ausschließen:" -#: ../src/ui/dialog/clonetiler.cpp:316 +#: ../src/ui/dialog/clonetiler.cpp:317 msgid "Exclude tile height in shift" msgstr "Kachelhöhe in Verschiebung nicht einberechnen" -#: ../src/ui/dialog/clonetiler.cpp:321 +#: ../src/ui/dialog/clonetiler.cpp:322 msgid "Exclude tile width in shift" msgstr "Kachelbreite in Verschiebung nicht einberechnen" -#: ../src/ui/dialog/clonetiler.cpp:330 +#: ../src/ui/dialog/clonetiler.cpp:331 msgid "Sc_ale" msgstr "_Maßstab" -#: ../src/ui/dialog/clonetiler.cpp:338 +#: ../src/ui/dialog/clonetiler.cpp:339 msgid "Scale X:" msgstr "X-Skalierung:" -#: ../src/ui/dialog/clonetiler.cpp:346 +#: ../src/ui/dialog/clonetiler.cpp:347 #, no-c-format msgid "Horizontal scale per row (in % of tile width)" msgstr "Horizontale Skalierung pro Reihe (in % der Kachelbreite)" -#: ../src/ui/dialog/clonetiler.cpp:354 +#: ../src/ui/dialog/clonetiler.cpp:355 #, no-c-format msgid "Horizontal scale per column (in % of tile width)" msgstr "Horizontale Skalierung pro Spalte (in % der Kachelbreite)" -#: ../src/ui/dialog/clonetiler.cpp:360 +#: ../src/ui/dialog/clonetiler.cpp:361 msgid "Randomize the horizontal scale by this percentage" msgstr "Horizontale Skalierung um diesen Prozentsatz zufällig verändern" -#: ../src/ui/dialog/clonetiler.cpp:368 +#: ../src/ui/dialog/clonetiler.cpp:369 msgid "Scale Y:" msgstr "Y-Skalierung:" -#: ../src/ui/dialog/clonetiler.cpp:376 +#: ../src/ui/dialog/clonetiler.cpp:377 #, no-c-format msgid "Vertical scale per row (in % of tile height)" msgstr "Vertikale Skalierung pro Reihe (in % der Kachelhöhe)" -#: ../src/ui/dialog/clonetiler.cpp:384 +#: ../src/ui/dialog/clonetiler.cpp:385 #, no-c-format msgid "Vertical scale per column (in % of tile height)" msgstr "Vertikale Skalierung pro Spalte (in % der Kachelhöhe)" -#: ../src/ui/dialog/clonetiler.cpp:390 +#: ../src/ui/dialog/clonetiler.cpp:391 msgid "Randomize the vertical scale by this percentage" msgstr "Vertikale Skalierung um diesen Prozentsatz zufällig verändern" -#: ../src/ui/dialog/clonetiler.cpp:404 +#: ../src/ui/dialog/clonetiler.cpp:405 msgid "Whether row scaling is uniform (1), converge (<1) or diverge (>1)" msgstr "" "Reihenabstände bleiben gleich (1), laufen zusammen (<1) oder vergrößern sich " "(>1)" -#: ../src/ui/dialog/clonetiler.cpp:410 +#: ../src/ui/dialog/clonetiler.cpp:411 msgid "Whether column scaling is uniform (1), converge (<1) or diverge (>1)" msgstr "" "Spaltenabstände bleiben gleich (1), laufen zusammen (<1) oder vergrößern " "sich (>1)" -#: ../src/ui/dialog/clonetiler.cpp:418 +#: ../src/ui/dialog/clonetiler.cpp:419 msgid "Base:" msgstr "Basis:" -#: ../src/ui/dialog/clonetiler.cpp:424 ../src/ui/dialog/clonetiler.cpp:430 +#: ../src/ui/dialog/clonetiler.cpp:425 ../src/ui/dialog/clonetiler.cpp:431 msgid "" "Base for a logarithmic spiral: not used (0), converge (<1), or diverge (>1)" msgstr "" "Basis einer logarithmischen Spirale: 0 - nicht benutzt, (<1) - konvergent, " "(>1) - divergent" -#: ../src/ui/dialog/clonetiler.cpp:444 +#: ../src/ui/dialog/clonetiler.cpp:445 msgid "Alternate the sign of scales for each row" msgstr "Vorzeichen der Skalierungen für jede Reihe umkehren" -#: ../src/ui/dialog/clonetiler.cpp:449 +#: ../src/ui/dialog/clonetiler.cpp:450 msgid "Alternate the sign of scales for each column" msgstr "Vorzeichen der Skalierungen für jede Spalte umkehren" -#: ../src/ui/dialog/clonetiler.cpp:462 +#: ../src/ui/dialog/clonetiler.cpp:463 msgid "Cumulate the scales for each row" msgstr "Skalierung für sukzessive Reihen aufaddieren" -#: ../src/ui/dialog/clonetiler.cpp:467 +#: ../src/ui/dialog/clonetiler.cpp:468 msgid "Cumulate the scales for each column" msgstr "Skalierung für sukzessive Spalten aufaddieren" -#: ../src/ui/dialog/clonetiler.cpp:476 +#: ../src/ui/dialog/clonetiler.cpp:477 msgid "_Rotation" msgstr "_Rotation" -#: ../src/ui/dialog/clonetiler.cpp:484 +#: ../src/ui/dialog/clonetiler.cpp:485 msgid "Angle:" msgstr "Winkel:" -#: ../src/ui/dialog/clonetiler.cpp:492 +#: ../src/ui/dialog/clonetiler.cpp:493 #, no-c-format msgid "Rotate tiles by this angle for each row" msgstr "Kacheln um diesen Winkel für jede Reihe drehen" -#: ../src/ui/dialog/clonetiler.cpp:500 +#: ../src/ui/dialog/clonetiler.cpp:501 #, no-c-format msgid "Rotate tiles by this angle for each column" msgstr "Kacheln um diesen Winkel für jede Spalte drehen" -#: ../src/ui/dialog/clonetiler.cpp:506 +#: ../src/ui/dialog/clonetiler.cpp:507 msgid "Randomize the rotation angle by this percentage" msgstr "Rotationswinkel um diesen Prozentsatz zufällig verändern" -#: ../src/ui/dialog/clonetiler.cpp:520 +#: ../src/ui/dialog/clonetiler.cpp:521 msgid "Alternate the rotation direction for each row" msgstr "Vorzeichenumkehr des Rotationsfaktors bei jeder Reihe" -#: ../src/ui/dialog/clonetiler.cpp:525 +#: ../src/ui/dialog/clonetiler.cpp:526 msgid "Alternate the rotation direction for each column" msgstr "Vorzeichenumkehr des Rotationsfaktors bei jeder Spalte" -#: ../src/ui/dialog/clonetiler.cpp:538 +#: ../src/ui/dialog/clonetiler.cpp:539 msgid "Cumulate the rotation for each row" msgstr "Rotation für sukzessive Reihen aufaddieren" -#: ../src/ui/dialog/clonetiler.cpp:543 +#: ../src/ui/dialog/clonetiler.cpp:544 msgid "Cumulate the rotation for each column" msgstr "Rotation für sukzessive Spalten aufaddieren" -#: ../src/ui/dialog/clonetiler.cpp:552 +#: ../src/ui/dialog/clonetiler.cpp:553 msgid "_Blur & opacity" msgstr "_Weichzeichner und Deckkraft" -#: ../src/ui/dialog/clonetiler.cpp:561 +#: ../src/ui/dialog/clonetiler.cpp:562 msgid "Blur:" msgstr "Weichzeichner:" -#: ../src/ui/dialog/clonetiler.cpp:567 +#: ../src/ui/dialog/clonetiler.cpp:568 msgid "Blur tiles by this percentage for each row" msgstr "Weichzeichnen der Kacheln um diesen Prozentsatz für jede Reihe" -#: ../src/ui/dialog/clonetiler.cpp:573 +#: ../src/ui/dialog/clonetiler.cpp:574 msgid "Blur tiles by this percentage for each column" msgstr "Weichzeichnen der Kacheln um diesen Prozentsatz für jede Spalte" -#: ../src/ui/dialog/clonetiler.cpp:579 +#: ../src/ui/dialog/clonetiler.cpp:580 msgid "Randomize the tile blur by this percentage" msgstr "Kachel-Weichzeichnung zufällig um diesen Prozentsatz verändern" -#: ../src/ui/dialog/clonetiler.cpp:593 +#: ../src/ui/dialog/clonetiler.cpp:594 msgid "Alternate the sign of blur change for each row" msgstr "Vorzeichen der Weichzeichnungs-Änderungen bei jeder Reihe umkehren" -#: ../src/ui/dialog/clonetiler.cpp:598 +#: ../src/ui/dialog/clonetiler.cpp:599 msgid "Alternate the sign of blur change for each column" msgstr "Vorzeichen der Weichzeichnungs-Änderungen bei jeder Spalte umkehren" -#: ../src/ui/dialog/clonetiler.cpp:607 +#: ../src/ui/dialog/clonetiler.cpp:608 msgid "Opacity:" msgstr "Deckkraft:" -#: ../src/ui/dialog/clonetiler.cpp:613 +#: ../src/ui/dialog/clonetiler.cpp:614 msgid "Decrease tile opacity by this percentage for each row" msgstr "" "Verringern der Deckkraft der Kacheln um diesen Prozentsatz für jede Reihe" -#: ../src/ui/dialog/clonetiler.cpp:619 +#: ../src/ui/dialog/clonetiler.cpp:620 msgid "Decrease tile opacity by this percentage for each column" msgstr "" "Verringern der Deckkraft der Kacheln um diesen Prozentsatz für jede Spalte" -#: ../src/ui/dialog/clonetiler.cpp:625 +#: ../src/ui/dialog/clonetiler.cpp:626 msgid "Randomize the tile opacity by this percentage" msgstr "Deckkraft der Kacheln um diesen Prozentsatz zufällig verändern" -#: ../src/ui/dialog/clonetiler.cpp:639 +#: ../src/ui/dialog/clonetiler.cpp:640 msgid "Alternate the sign of opacity change for each row" msgstr "Vorzeichen des Deckkraftfaktors bei jeder Reihe umkehren" -#: ../src/ui/dialog/clonetiler.cpp:644 +#: ../src/ui/dialog/clonetiler.cpp:645 msgid "Alternate the sign of opacity change for each column" msgstr "Vorzeichen des Deckkraftfaktors bei jeder Spalte umkehren" -#: ../src/ui/dialog/clonetiler.cpp:652 +#: ../src/ui/dialog/clonetiler.cpp:653 msgid "Co_lor" msgstr "_Farbe" -#: ../src/ui/dialog/clonetiler.cpp:662 +#: ../src/ui/dialog/clonetiler.cpp:663 msgid "Initial color: " msgstr "Ursprüngliche Farbe: " -#: ../src/ui/dialog/clonetiler.cpp:666 +#: ../src/ui/dialog/clonetiler.cpp:667 msgid "Initial color of tiled clones" msgstr "Ursprüngliche Farbe der gekachelten Klone" -#: ../src/ui/dialog/clonetiler.cpp:666 +#: ../src/ui/dialog/clonetiler.cpp:667 msgid "" "Initial color for clones (works only if the original has unset fill or " "stroke)" @@ -3827,73 +3826,73 @@ msgstr "" "Ursprüngliche Farbe der Klone (Füllung oder Kontur des Originals dürfen " "nicht gesetzt sein )" -#: ../src/ui/dialog/clonetiler.cpp:681 +#: ../src/ui/dialog/clonetiler.cpp:682 msgid "H:" msgstr "H:" -#: ../src/ui/dialog/clonetiler.cpp:687 +#: ../src/ui/dialog/clonetiler.cpp:688 msgid "Change the tile hue by this percentage for each row" msgstr "Farbton der Kacheln um diesen Prozentsatz für jede Reihe verändern" -#: ../src/ui/dialog/clonetiler.cpp:693 +#: ../src/ui/dialog/clonetiler.cpp:694 msgid "Change the tile hue by this percentage for each column" msgstr "Farbton der Kacheln um diesen Prozentsatz für jede Spalte verändern" -#: ../src/ui/dialog/clonetiler.cpp:699 +#: ../src/ui/dialog/clonetiler.cpp:700 msgid "Randomize the tile hue by this percentage" msgstr "Farbton der Kachel zufällig um diesen Prozentsatz verändern" -#: ../src/ui/dialog/clonetiler.cpp:708 +#: ../src/ui/dialog/clonetiler.cpp:709 msgid "S:" msgstr "S:" -#: ../src/ui/dialog/clonetiler.cpp:714 +#: ../src/ui/dialog/clonetiler.cpp:715 msgid "Change the color saturation by this percentage for each row" msgstr "" "Farbsättigung der Kacheln um diesen Prozentsatz für jede Reihe verändern" -#: ../src/ui/dialog/clonetiler.cpp:720 +#: ../src/ui/dialog/clonetiler.cpp:721 msgid "Change the color saturation by this percentage for each column" msgstr "" "Farbsättigung der Kacheln um diesen Prozentsatz für jede Spalte verändern" -#: ../src/ui/dialog/clonetiler.cpp:726 +#: ../src/ui/dialog/clonetiler.cpp:727 msgid "Randomize the color saturation by this percentage" msgstr "Farbsättigung um diesen Prozentsatz zufällig verändern" -#: ../src/ui/dialog/clonetiler.cpp:734 +#: ../src/ui/dialog/clonetiler.cpp:735 msgid "L:" msgstr "L:" -#: ../src/ui/dialog/clonetiler.cpp:740 +#: ../src/ui/dialog/clonetiler.cpp:741 msgid "Change the color lightness by this percentage for each row" msgstr "Helligkeit der Kacheln um diesen Prozentsatz für jede Reihe verändern" -#: ../src/ui/dialog/clonetiler.cpp:746 +#: ../src/ui/dialog/clonetiler.cpp:747 msgid "Change the color lightness by this percentage for each column" msgstr "Helligkeit der Kacheln um diesen Prozentsatz für jede Spalte verändern" -#: ../src/ui/dialog/clonetiler.cpp:752 +#: ../src/ui/dialog/clonetiler.cpp:753 msgid "Randomize the color lightness by this percentage" msgstr "Helligkeitsanteil der Farbe zufällig um diesen Prozentsatz verändern" -#: ../src/ui/dialog/clonetiler.cpp:766 +#: ../src/ui/dialog/clonetiler.cpp:767 msgid "Alternate the sign of color changes for each row" msgstr "Vorzeichen der Farbänderungen bei jeder Reihe umkehren" -#: ../src/ui/dialog/clonetiler.cpp:771 +#: ../src/ui/dialog/clonetiler.cpp:772 msgid "Alternate the sign of color changes for each column" msgstr "Vorzeichen der Farbänderungen bei jeder Spalte umkehren" -#: ../src/ui/dialog/clonetiler.cpp:779 +#: ../src/ui/dialog/clonetiler.cpp:780 msgid "_Trace" msgstr "Bild _vektorisieren" -#: ../src/ui/dialog/clonetiler.cpp:791 +#: ../src/ui/dialog/clonetiler.cpp:792 msgid "Trace the drawing under the tiles" msgstr "Zeichnung unter den Kacheln vektorisieren" -#: ../src/ui/dialog/clonetiler.cpp:795 +#: ../src/ui/dialog/clonetiler.cpp:796 msgid "" "For each clone, pick a value from the drawing in that clone's location and " "apply it to the clone" @@ -3901,117 +3900,117 @@ msgstr "" "Für jeden Klon den entsprechenden Wert an dessen Stelle aus der Zeichnung " "anwenden" -#: ../src/ui/dialog/clonetiler.cpp:814 +#: ../src/ui/dialog/clonetiler.cpp:815 msgid "1. Pick from the drawing:" msgstr "1. Von der Zeichnung übernehmen:" -#: ../src/ui/dialog/clonetiler.cpp:832 +#: ../src/ui/dialog/clonetiler.cpp:833 msgid "Pick the visible color and opacity" msgstr "Sichtbare Farbe und Deckkraft übernehmen" -#: ../src/ui/dialog/clonetiler.cpp:839 ../src/ui/dialog/clonetiler.cpp:992 +#: ../src/ui/dialog/clonetiler.cpp:840 ../src/ui/dialog/clonetiler.cpp:993 #: ../src/extension/internal/bitmap/opacity.cpp:38 #: ../src/extension/internal/filter/blurs.h:333 #: ../src/extension/internal/filter/transparency.h:279 -#: ../src/widgets/tweak-toolbar.cpp:352 +#: ../src/widgets/tweak-toolbar.cpp:348 #: ../share/extensions/interp_att_g.inx.h:16 msgid "Opacity" msgstr "Deckkraft" -#: ../src/ui/dialog/clonetiler.cpp:840 +#: ../src/ui/dialog/clonetiler.cpp:841 msgid "Pick the total accumulated opacity" msgstr "Zusammengerechnete Deckkraft übernehmen" -#: ../src/ui/dialog/clonetiler.cpp:847 +#: ../src/ui/dialog/clonetiler.cpp:848 msgid "R" msgstr "R" -#: ../src/ui/dialog/clonetiler.cpp:848 +#: ../src/ui/dialog/clonetiler.cpp:849 msgid "Pick the Red component of the color" msgstr "Rotanteil der Farbe übernehmen" -#: ../src/ui/dialog/clonetiler.cpp:855 +#: ../src/ui/dialog/clonetiler.cpp:856 msgid "G" msgstr "G" -#: ../src/ui/dialog/clonetiler.cpp:856 +#: ../src/ui/dialog/clonetiler.cpp:857 msgid "Pick the Green component of the color" msgstr "Grünanteil der Farbe übernehmen" -#: ../src/ui/dialog/clonetiler.cpp:863 +#: ../src/ui/dialog/clonetiler.cpp:864 msgid "B" msgstr "B" -#: ../src/ui/dialog/clonetiler.cpp:864 +#: ../src/ui/dialog/clonetiler.cpp:865 msgid "Pick the Blue component of the color" msgstr "Blauanteil der Farbe übernehmen" -#: ../src/ui/dialog/clonetiler.cpp:871 +#: ../src/ui/dialog/clonetiler.cpp:872 msgctxt "Clonetiler color hue" msgid "H" msgstr "H" -#: ../src/ui/dialog/clonetiler.cpp:872 +#: ../src/ui/dialog/clonetiler.cpp:873 msgid "Pick the hue of the color" msgstr "Farbton des Farbwertes übernehmen" -#: ../src/ui/dialog/clonetiler.cpp:879 +#: ../src/ui/dialog/clonetiler.cpp:880 msgctxt "Clonetiler color saturation" msgid "S" msgstr "S" -#: ../src/ui/dialog/clonetiler.cpp:880 +#: ../src/ui/dialog/clonetiler.cpp:881 msgid "Pick the saturation of the color" msgstr "Sättigung des Farbwertes übernehmen" -#: ../src/ui/dialog/clonetiler.cpp:887 +#: ../src/ui/dialog/clonetiler.cpp:888 msgctxt "Clonetiler color lightness" msgid "L" msgstr "L" -#: ../src/ui/dialog/clonetiler.cpp:888 +#: ../src/ui/dialog/clonetiler.cpp:889 msgid "Pick the lightness of the color" msgstr "Helligkeit des Farbwertes übernehmen" -#: ../src/ui/dialog/clonetiler.cpp:898 +#: ../src/ui/dialog/clonetiler.cpp:899 msgid "2. Tweak the picked value:" msgstr "2. Übernommenen Wert feinjustieren:" -#: ../src/ui/dialog/clonetiler.cpp:915 +#: ../src/ui/dialog/clonetiler.cpp:916 msgid "Gamma-correct:" msgstr "Gammakorrektur:" -#: ../src/ui/dialog/clonetiler.cpp:919 +#: ../src/ui/dialog/clonetiler.cpp:920 msgid "Shift the mid-range of the picked value upwards (>0) or downwards (<0)" msgstr "" "Mittenbereich des übernommenen Wertes verschieben; nach oben (>0) oder unten " "(<0)" -#: ../src/ui/dialog/clonetiler.cpp:926 +#: ../src/ui/dialog/clonetiler.cpp:927 msgid "Randomize:" msgstr "Zufallsänderung:" -#: ../src/ui/dialog/clonetiler.cpp:930 +#: ../src/ui/dialog/clonetiler.cpp:931 msgid "Randomize the picked value by this percentage" msgstr "Übernommenen Wert um diesen Prozentsatz zufällig verändern" -#: ../src/ui/dialog/clonetiler.cpp:937 +#: ../src/ui/dialog/clonetiler.cpp:938 msgid "Invert:" msgstr "Invertieren:" -#: ../src/ui/dialog/clonetiler.cpp:941 +#: ../src/ui/dialog/clonetiler.cpp:942 msgid "Invert the picked value" msgstr "Übernommenen Wert invertieren" -#: ../src/ui/dialog/clonetiler.cpp:947 +#: ../src/ui/dialog/clonetiler.cpp:948 msgid "3. Apply the value to the clones':" msgstr "3. Wert auf die Klone anwenden:" -#: ../src/ui/dialog/clonetiler.cpp:962 +#: ../src/ui/dialog/clonetiler.cpp:963 msgid "Presence" msgstr "Anwesenheit" -#: ../src/ui/dialog/clonetiler.cpp:965 +#: ../src/ui/dialog/clonetiler.cpp:966 msgid "" "Each clone is created with the probability determined by the picked value in " "that point" @@ -4019,15 +4018,15 @@ msgstr "" "Jeder Klon wird mit der Wahrscheinlichkeit erzeugt, welche sich aus dem Wert " "an dieser Stelle ergibt" -#: ../src/ui/dialog/clonetiler.cpp:972 +#: ../src/ui/dialog/clonetiler.cpp:973 msgid "Size" msgstr "Größe" -#: ../src/ui/dialog/clonetiler.cpp:975 +#: ../src/ui/dialog/clonetiler.cpp:976 msgid "Each clone's size is determined by the picked value in that point" msgstr "Die jeweilige Größe der Klone hängt vom Wert an diesem Punkt ab" -#: ../src/ui/dialog/clonetiler.cpp:985 +#: ../src/ui/dialog/clonetiler.cpp:986 msgid "" "Each clone is painted by the picked color (the original must have unset fill " "or stroke)" @@ -4035,48 +4034,48 @@ msgstr "" "Jeder Klon wird in der übernommenen Farbe gezeichnet (Füllung oder Kontur " "des Originals dürfen nicht gesetzt sein)" -#: ../src/ui/dialog/clonetiler.cpp:995 +#: ../src/ui/dialog/clonetiler.cpp:996 msgid "Each clone's opacity is determined by the picked value in that point" msgstr "" "Die Deckkraft jedes Klons wird durch den Wert an dieser Stelle bestimmt" -#: ../src/ui/dialog/clonetiler.cpp:1043 +#: ../src/ui/dialog/clonetiler.cpp:1044 msgid "How many rows in the tiling" msgstr "Anzahl der Reihen beim Kacheln" -#: ../src/ui/dialog/clonetiler.cpp:1073 +#: ../src/ui/dialog/clonetiler.cpp:1074 msgid "How many columns in the tiling" msgstr "Anzahl der Spalten beim Kacheln" -#: ../src/ui/dialog/clonetiler.cpp:1117 +#: ../src/ui/dialog/clonetiler.cpp:1119 msgid "Width of the rectangle to be filled" msgstr "Breite des zu füllenden Rechtecks" -#: ../src/ui/dialog/clonetiler.cpp:1151 +#: ../src/ui/dialog/clonetiler.cpp:1152 msgid "Height of the rectangle to be filled" msgstr "Höhe des zu füllenden Rechtecks" -#: ../src/ui/dialog/clonetiler.cpp:1168 +#: ../src/ui/dialog/clonetiler.cpp:1169 msgid "Rows, columns: " msgstr "Reihen, Spalten: " -#: ../src/ui/dialog/clonetiler.cpp:1169 +#: ../src/ui/dialog/clonetiler.cpp:1170 msgid "Create the specified number of rows and columns" msgstr "Angegeben Anzahl von Reihen und Spalten erzeugen" -#: ../src/ui/dialog/clonetiler.cpp:1178 +#: ../src/ui/dialog/clonetiler.cpp:1179 msgid "Width, height: " msgstr "Breite, Höhe: " -#: ../src/ui/dialog/clonetiler.cpp:1179 +#: ../src/ui/dialog/clonetiler.cpp:1180 msgid "Fill the specified width and height with the tiling" msgstr "Durch Höhe und Breite angegeben Bereich mit Füllmuster versehen" -#: ../src/ui/dialog/clonetiler.cpp:1200 +#: ../src/ui/dialog/clonetiler.cpp:1201 msgid "Use saved size and position of the tile" msgstr "Gespeicherte Größe und Position der Kachel verwenden" -#: ../src/ui/dialog/clonetiler.cpp:1203 +#: ../src/ui/dialog/clonetiler.cpp:1204 msgid "" "Pretend that the size and position of the tile are the same as the last time " "you tiled it (if any), instead of using the current size" @@ -4084,11 +4083,11 @@ msgstr "" "Anstelle der aktuellen Größe die letzte Position und Größe der Kachel/" "Musterfüllung vorgeben" -#: ../src/ui/dialog/clonetiler.cpp:1237 +#: ../src/ui/dialog/clonetiler.cpp:1238 msgid " _Create " msgstr " _Erzeugen " -#: ../src/ui/dialog/clonetiler.cpp:1239 +#: ../src/ui/dialog/clonetiler.cpp:1240 msgid "Create and tile the clones of the selection" msgstr "Klone der Auswahl erzeugen und kacheln" @@ -4097,32 +4096,32 @@ msgstr "Klone der Auswahl erzeugen und kacheln" #. diagrams on the left in the following screenshot: #. http://www.inkscape.org/screenshots/gallery/inkscape-0.42-CVS-tiles-unclump.png #. So unclumping is the process of spreading a number of objects out more evenly. -#: ../src/ui/dialog/clonetiler.cpp:1259 +#: ../src/ui/dialog/clonetiler.cpp:1260 msgid " _Unclump " msgstr " Entkl_umpen " -#: ../src/ui/dialog/clonetiler.cpp:1260 +#: ../src/ui/dialog/clonetiler.cpp:1261 msgid "Spread out clones to reduce clumping; can be applied repeatedly" msgstr "" "Klone gleichmäßiger verteilen, um das Verklumpen zu verringern; mehrmals " "anwendbar" -#: ../src/ui/dialog/clonetiler.cpp:1266 +#: ../src/ui/dialog/clonetiler.cpp:1267 msgid " Re_move " msgstr " _Entfernen " -#: ../src/ui/dialog/clonetiler.cpp:1267 +#: ../src/ui/dialog/clonetiler.cpp:1268 msgid "Remove existing tiled clones of the selected object (siblings only)" msgstr "" "Vorhandene gekachelte Klone des ausgewählten Objektes entfernen (nur " "Geschwister)" -#: ../src/ui/dialog/clonetiler.cpp:1283 +#: ../src/ui/dialog/clonetiler.cpp:1284 msgid " R_eset " msgstr " _Zurücksetzen " #. TRANSLATORS: "change" is a noun here -#: ../src/ui/dialog/clonetiler.cpp:1285 +#: ../src/ui/dialog/clonetiler.cpp:1286 msgid "" "Reset all shifts, scales, rotates, opacity and color changes in the dialog " "to zero" @@ -4130,44 +4129,44 @@ msgstr "" "Rücksetzen aller Verschiebungen, Skalierungen, Rotationen und Deckkraft- und " "Farbanpassungen im Dialogfenster" -#: ../src/ui/dialog/clonetiler.cpp:1358 +#: ../src/ui/dialog/clonetiler.cpp:1359 msgid "Nothing selected." msgstr "Es wurde nichts ausgewählt." -#: ../src/ui/dialog/clonetiler.cpp:1364 +#: ../src/ui/dialog/clonetiler.cpp:1365 msgid "More than one object selected." msgstr "Mehr als ein Objekt ausgewählt." -#: ../src/ui/dialog/clonetiler.cpp:1371 +#: ../src/ui/dialog/clonetiler.cpp:1372 #, c-format msgid "Object has %d tiled clones." msgstr "Das Objekt hat %d gekachelte Klone." -#: ../src/ui/dialog/clonetiler.cpp:1376 +#: ../src/ui/dialog/clonetiler.cpp:1377 msgid "Object has no tiled clones." msgstr "Das Objekt hat keine gekachelten Klone." -#: ../src/ui/dialog/clonetiler.cpp:2096 +#: ../src/ui/dialog/clonetiler.cpp:2097 msgid "Select one object whose tiled clones to unclump." msgstr "Ein Objekt auswählen, dessen gekachelte Klone entklumpt werden." -#: ../src/ui/dialog/clonetiler.cpp:2118 +#: ../src/ui/dialog/clonetiler.cpp:2119 msgid "Unclump tiled clones" msgstr "Gekachelte Klone entklumpen" -#: ../src/ui/dialog/clonetiler.cpp:2147 +#: ../src/ui/dialog/clonetiler.cpp:2148 msgid "Select one object whose tiled clones to remove." msgstr "Ein Objekt auswählen, dessen gekachelte Klone entfernt werden." -#: ../src/ui/dialog/clonetiler.cpp:2170 +#: ../src/ui/dialog/clonetiler.cpp:2171 msgid "Delete tiled clones" msgstr "Gekachelte Klone löschen" -#: ../src/ui/dialog/clonetiler.cpp:2217 ../src/selection-chemistry.cpp:2501 +#: ../src/ui/dialog/clonetiler.cpp:2218 ../src/selection-chemistry.cpp:2487 msgid "Select an object to clone." msgstr "Zu klonendes Objekt auswählen." -#: ../src/ui/dialog/clonetiler.cpp:2223 +#: ../src/ui/dialog/clonetiler.cpp:2224 msgid "" "If you want to clone several objects, group them and clone the " "group." @@ -4175,58 +4174,58 @@ msgstr "" "Wenn mehrere Objekte geklont werden sollen, sollten sie gruppiert und " "dann die Gruppe geklont werden." -#: ../src/ui/dialog/clonetiler.cpp:2232 +#: ../src/ui/dialog/clonetiler.cpp:2233 msgid "Creating tiled clones..." msgstr "Geschachtelte Klone erstellen..." -#: ../src/ui/dialog/clonetiler.cpp:2637 +#: ../src/ui/dialog/clonetiler.cpp:2638 msgid "Create tiled clones" msgstr "Gekachelte Klone erzeugen" -#: ../src/ui/dialog/clonetiler.cpp:2870 +#: ../src/ui/dialog/clonetiler.cpp:2871 msgid "Per row:" msgstr "Pro Reihe:" -#: ../src/ui/dialog/clonetiler.cpp:2888 +#: ../src/ui/dialog/clonetiler.cpp:2889 msgid "Per column:" msgstr "Pro Spalte:" -#: ../src/ui/dialog/clonetiler.cpp:2896 +#: ../src/ui/dialog/clonetiler.cpp:2897 msgid "Randomize:" msgstr "Zufallsfaktor:" -#: ../src/ui/dialog/export.cpp:150 ../src/verbs.cpp:2737 +#: ../src/ui/dialog/export.cpp:151 ../src/verbs.cpp:2791 msgid "_Page" msgstr "_Seite" -#: ../src/ui/dialog/export.cpp:150 ../src/verbs.cpp:2741 +#: ../src/ui/dialog/export.cpp:151 ../src/verbs.cpp:2795 msgid "_Drawing" msgstr "_Zeichnung" -#: ../src/ui/dialog/export.cpp:150 ../src/verbs.cpp:2743 +#: ../src/ui/dialog/export.cpp:151 ../src/verbs.cpp:2797 msgid "_Selection" msgstr "_Auswahl" -#: ../src/ui/dialog/export.cpp:150 +#: ../src/ui/dialog/export.cpp:151 msgid "_Custom" msgstr "_Benutzerdefiniert" -#: ../src/ui/dialog/export.cpp:166 ../src/widgets/measure-toolbar.cpp:115 -#: ../src/widgets/measure-toolbar.cpp:123 +#: ../src/ui/dialog/export.cpp:167 ../src/widgets/measure-toolbar.cpp:116 +#: ../src/widgets/measure-toolbar.cpp:124 #: ../share/extensions/render_gears.inx.h:6 msgid "Units:" msgstr "Einheiten:" -#: ../src/ui/dialog/export.cpp:168 +#: ../src/ui/dialog/export.cpp:169 msgid "_Export As..." msgstr "_exportieren als…" -#: ../src/ui/dialog/export.cpp:171 +#: ../src/ui/dialog/export.cpp:172 msgid "B_atch export all selected objects" msgstr "Alle gewählten Objekte auf einmal exportieren" # !!! "export hints" are not clear to the user I guess -#: ../src/ui/dialog/export.cpp:171 +#: ../src/ui/dialog/export.cpp:172 msgid "" "Export each selected object into its own PNG file, using export hints if any " "(caution, overwrites without asking!)" @@ -4235,169 +4234,169 @@ msgstr "" "Berücksichtigung von Exporthinweisen, wenn vorhanden (Vorsicht, überschreibt " "ohne Warnung!)" -#: ../src/ui/dialog/export.cpp:173 +#: ../src/ui/dialog/export.cpp:174 msgid "Hide a_ll except selected" msgstr "Alle außer Ausgewählte verstecken" -#: ../src/ui/dialog/export.cpp:173 +#: ../src/ui/dialog/export.cpp:174 msgid "In the exported image, hide all objects except those that are selected" msgstr "Verstecke alle Objekte außer den gerade gewählten im exportierten Bild" -#: ../src/ui/dialog/export.cpp:174 +#: ../src/ui/dialog/export.cpp:175 msgid "Close when complete" msgstr "Schließen wenn fertig" -#: ../src/ui/dialog/export.cpp:174 +#: ../src/ui/dialog/export.cpp:175 msgid "Once the export completes, close this dialog" msgstr "Wenn der Export fertig ist, schließe den Dialog." -#: ../src/ui/dialog/export.cpp:176 +#: ../src/ui/dialog/export.cpp:177 msgid "_Export" msgstr "_Exportieren" -#: ../src/ui/dialog/export.cpp:194 +#: ../src/ui/dialog/export.cpp:195 msgid "Export area" msgstr "Exportbereich" -#: ../src/ui/dialog/export.cpp:230 +#: ../src/ui/dialog/export.cpp:234 msgid "_x0:" msgstr "_x0:" -#: ../src/ui/dialog/export.cpp:234 +#: ../src/ui/dialog/export.cpp:238 msgid "x_1:" msgstr "x_1:" -#: ../src/ui/dialog/export.cpp:238 +#: ../src/ui/dialog/export.cpp:242 msgid "Wid_th:" msgstr "Brei_te:" -#: ../src/ui/dialog/export.cpp:242 +#: ../src/ui/dialog/export.cpp:246 msgid "_y0:" msgstr "_y0:" -#: ../src/ui/dialog/export.cpp:246 +#: ../src/ui/dialog/export.cpp:250 msgid "y_1:" msgstr "y_1:" -#: ../src/ui/dialog/export.cpp:250 +#: ../src/ui/dialog/export.cpp:254 msgid "Hei_ght:" msgstr "Höhe:" -#: ../src/ui/dialog/export.cpp:265 +#: ../src/ui/dialog/export.cpp:269 msgid "Image size" msgstr "Bildgröße" -#: ../src/ui/dialog/export.cpp:283 ../src/live_effects/lpe-bendpath.cpp:54 +#: ../src/ui/dialog/export.cpp:287 ../src/live_effects/lpe-bendpath.cpp:54 #: ../src/live_effects/lpe-patternalongpath.cpp:62 -#: ../src/ui/dialog/transformation.cpp:79 ../src/ui/widget/page-sizer.cpp:238 +#: ../src/ui/dialog/transformation.cpp:80 ../src/ui/widget/page-sizer.cpp:236 msgid "_Width:" msgstr "_Breite:" -#: ../src/ui/dialog/export.cpp:283 ../src/ui/dialog/export.cpp:294 +#: ../src/ui/dialog/export.cpp:287 ../src/ui/dialog/export.cpp:298 msgid "pixels at" msgstr "Pixel bei" -#: ../src/ui/dialog/export.cpp:289 +#: ../src/ui/dialog/export.cpp:293 msgid "dp_i" msgstr "dp_i" -#: ../src/ui/dialog/export.cpp:294 ../src/ui/dialog/transformation.cpp:81 -#: ../src/ui/widget/page-sizer.cpp:239 +#: ../src/ui/dialog/export.cpp:298 ../src/ui/dialog/transformation.cpp:82 +#: ../src/ui/widget/page-sizer.cpp:237 msgid "_Height:" msgstr "_Höhe:" -#: ../src/ui/dialog/export.cpp:302 -#: ../src/ui/dialog/inkscape-preferences.cpp:1432 -#: ../src/ui/dialog/inkscape-preferences.cpp:1435 -#: ../src/ui/dialog/inkscape-preferences.cpp:1447 +#: ../src/ui/dialog/export.cpp:306 +#: ../src/ui/dialog/inkscape-preferences.cpp:1436 +#: ../src/ui/dialog/inkscape-preferences.cpp:1439 +#: ../src/ui/dialog/inkscape-preferences.cpp:1451 msgid "dpi" msgstr "dpi" -#: ../src/ui/dialog/export.cpp:310 +#: ../src/ui/dialog/export.cpp:314 msgid "_Filename" msgstr "_Dateiname" -#: ../src/ui/dialog/export.cpp:352 +#: ../src/ui/dialog/export.cpp:356 msgid "Export the bitmap file with these settings" msgstr "Bitmapdatei mit diesen Einstellungen exportieren" -#: ../src/ui/dialog/export.cpp:606 +#: ../src/ui/dialog/export.cpp:607 #, c-format msgid "B_atch export %d selected object" msgid_plural "B_atch export %d selected objects" msgstr[0] "B_atch-Export von %d gewähltem Objekt" msgstr[1] "B_atch-Export von %d gewählten Objekten" -#: ../src/ui/dialog/export.cpp:922 +#: ../src/ui/dialog/export.cpp:923 msgid "Export in progress" msgstr "Exportieren läuft" -#: ../src/ui/dialog/export.cpp:1006 +#: ../src/ui/dialog/export.cpp:1013 msgid "No items selected." msgstr "Kein Element gewählt." -#: ../src/ui/dialog/export.cpp:1010 ../src/ui/dialog/export.cpp:1012 +#: ../src/ui/dialog/export.cpp:1017 ../src/ui/dialog/export.cpp:1019 msgid "Exporting %1 files" msgstr "Exportiere %1 Dateien" -#: ../src/ui/dialog/export.cpp:1052 ../src/ui/dialog/export.cpp:1054 +#: ../src/ui/dialog/export.cpp:1059 ../src/ui/dialog/export.cpp:1061 #, c-format msgid "Exporting file %s..." msgstr "Exportiere Dateie %s..." -#: ../src/ui/dialog/export.cpp:1063 ../src/ui/dialog/export.cpp:1154 +#: ../src/ui/dialog/export.cpp:1070 ../src/ui/dialog/export.cpp:1161 #, c-format msgid "Could not export to filename %s.\n" msgstr "Konnte nicht als Datei %s exportieren.\n" -#: ../src/ui/dialog/export.cpp:1066 +#: ../src/ui/dialog/export.cpp:1073 #, c-format msgid "Could not export to filename %s." msgstr "Konnte nicht als Datei %s exportieren." -#: ../src/ui/dialog/export.cpp:1081 +#: ../src/ui/dialog/export.cpp:1088 #, c-format msgid "Successfully exported %d files from %d selected items." msgstr "" "Erfolgreich %d Dateien aus %d ausgewählten Artikeln exportiert." -#: ../src/ui/dialog/export.cpp:1092 +#: ../src/ui/dialog/export.cpp:1099 msgid "You have to enter a filename." msgstr "Sie müssen einen Dateinamen angeben" -#: ../src/ui/dialog/export.cpp:1093 +#: ../src/ui/dialog/export.cpp:1100 msgid "You have to enter a filename" msgstr "Sie müssen einen Dateinamen angeben" -#: ../src/ui/dialog/export.cpp:1107 +#: ../src/ui/dialog/export.cpp:1114 msgid "The chosen area to be exported is invalid." msgstr "Der zum Exportieren gewählte Bereich ist ungültig" -#: ../src/ui/dialog/export.cpp:1108 +#: ../src/ui/dialog/export.cpp:1115 msgid "The chosen area to be exported is invalid" msgstr "Der zum Exportieren gewählte Bereich ist ungültig" -#: ../src/ui/dialog/export.cpp:1123 +#: ../src/ui/dialog/export.cpp:1130 #, c-format msgid "Directory %s does not exist or is not a directory.\n" msgstr "Das Verzeichnis %s existiert nicht oder ist kein Verzeichnis.\n" #. TRANSLATORS: %1 will be the filename, %2 the width, and %3 the height of the image -#: ../src/ui/dialog/export.cpp:1137 ../src/ui/dialog/export.cpp:1139 +#: ../src/ui/dialog/export.cpp:1144 ../src/ui/dialog/export.cpp:1146 msgid "Exporting %1 (%2 x %3)" msgstr "Exportiere %1 (%2 x %3)" -#: ../src/ui/dialog/export.cpp:1165 +#: ../src/ui/dialog/export.cpp:1172 #, c-format msgid "Drawing exported to %s." msgstr "Zeichnung exportiert zu %s." -#: ../src/ui/dialog/export.cpp:1169 +#: ../src/ui/dialog/export.cpp:1176 msgid "Export aborted." msgstr "Export abgebochen." -#: ../src/ui/dialog/export.cpp:1287 ../src/ui/dialog/export.cpp:1321 -#: ../src/shortcuts.cpp:336 +#: ../src/ui/dialog/export.cpp:1294 ../src/ui/dialog/export.cpp:1328 +#: ../src/shortcuts.cpp:337 msgid "Select a filename for exporting" msgstr "Wählen Sie einen Namen für die zu exportierende Datei" @@ -4480,7 +4479,7 @@ msgstr "Korrigiere Rechtschreibung" msgid "_Font" msgstr "Schrift" -#: ../src/ui/dialog/text-edit.cpp:72 ../src/menus-skeleton.h:249 +#: ../src/ui/dialog/text-edit.cpp:72 ../src/menus-skeleton.h:248 #: ../src/ui/dialog/find.cpp:77 msgid "_Text" msgstr "_Text" @@ -4494,31 +4493,31 @@ msgid "AaBbCcIiPpQq12369$€¢?.;/()" msgstr "AaBbCcIiPpQqÄäÖöÜüß012369€¢?&.;/|()„“»«" #. Align buttons -#: ../src/ui/dialog/text-edit.cpp:97 ../src/widgets/text-toolbar.cpp:1358 -#: ../src/widgets/text-toolbar.cpp:1359 +#: ../src/ui/dialog/text-edit.cpp:97 ../src/widgets/text-toolbar.cpp:1349 +#: ../src/widgets/text-toolbar.cpp:1350 msgid "Align left" msgstr "Linksbündig ausrichten" -#: ../src/ui/dialog/text-edit.cpp:98 ../src/widgets/text-toolbar.cpp:1366 -#: ../src/widgets/text-toolbar.cpp:1367 +#: ../src/ui/dialog/text-edit.cpp:98 ../src/widgets/text-toolbar.cpp:1357 +#: ../src/widgets/text-toolbar.cpp:1358 msgid "Align center" msgstr "Zentriert ausrichten" -#: ../src/ui/dialog/text-edit.cpp:99 ../src/widgets/text-toolbar.cpp:1374 -#: ../src/widgets/text-toolbar.cpp:1375 +#: ../src/ui/dialog/text-edit.cpp:99 ../src/widgets/text-toolbar.cpp:1365 +#: ../src/widgets/text-toolbar.cpp:1366 msgid "Align right" msgstr "Rechtsbündig ausrichten" -#: ../src/ui/dialog/text-edit.cpp:100 ../src/widgets/text-toolbar.cpp:1383 +#: ../src/ui/dialog/text-edit.cpp:100 ../src/widgets/text-toolbar.cpp:1374 msgid "Justify (only flowed text)" msgstr "Ausrichten - Nur Fließtext" #. Direction buttons -#: ../src/ui/dialog/text-edit.cpp:109 ../src/widgets/text-toolbar.cpp:1418 +#: ../src/ui/dialog/text-edit.cpp:109 ../src/widgets/text-toolbar.cpp:1409 msgid "Horizontal text" msgstr "Horizontale Textausrichtung" -#: ../src/ui/dialog/text-edit.cpp:110 ../src/widgets/text-toolbar.cpp:1425 +#: ../src/ui/dialog/text-edit.cpp:110 ../src/widgets/text-toolbar.cpp:1416 msgid "Vertical text" msgstr "Vertikale Textausrichtung" @@ -4531,7 +4530,7 @@ msgid "Text path offset" msgstr "Text-Pfad-Versatz" #: ../src/ui/dialog/text-edit.cpp:588 ../src/ui/dialog/text-edit.cpp:662 -#: ../src/text-context.cpp:1518 +#: ../src/text-context.cpp:1519 msgid "Set text style" msgstr "Textstil setzen" @@ -4642,112 +4641,112 @@ msgstr "Knoten löschen" msgid "Change attribute" msgstr "Attribut ändern" -#: ../src/display/canvas-axonomgrid.cpp:369 ../src/display/canvas-grid.cpp:746 +#: ../src/display/canvas-axonomgrid.cpp:316 ../src/display/canvas-grid.cpp:693 msgid "Grid _units:" msgstr "Gitter-Raster_einheiten:" -#: ../src/display/canvas-axonomgrid.cpp:371 ../src/display/canvas-grid.cpp:748 +#: ../src/display/canvas-axonomgrid.cpp:318 ../src/display/canvas-grid.cpp:695 msgid "_Origin X:" msgstr "_Ursprung X:" -#: ../src/display/canvas-axonomgrid.cpp:371 ../src/display/canvas-grid.cpp:748 +#: ../src/display/canvas-axonomgrid.cpp:318 ../src/display/canvas-grid.cpp:695 #: ../src/ui/dialog/inkscape-preferences.cpp:735 #: ../src/ui/dialog/inkscape-preferences.cpp:760 msgid "X coordinate of grid origin" msgstr "X-Koordinate des Gitterursprungs" -#: ../src/display/canvas-axonomgrid.cpp:373 ../src/display/canvas-grid.cpp:750 +#: ../src/display/canvas-axonomgrid.cpp:320 ../src/display/canvas-grid.cpp:697 msgid "O_rigin Y:" msgstr "U_rsprung Y:" -#: ../src/display/canvas-axonomgrid.cpp:373 ../src/display/canvas-grid.cpp:750 +#: ../src/display/canvas-axonomgrid.cpp:320 ../src/display/canvas-grid.cpp:697 #: ../src/ui/dialog/inkscape-preferences.cpp:736 #: ../src/ui/dialog/inkscape-preferences.cpp:761 msgid "Y coordinate of grid origin" msgstr "Y-Koordinate des Gitterursprungs" -#: ../src/display/canvas-axonomgrid.cpp:375 ../src/display/canvas-grid.cpp:754 +#: ../src/display/canvas-axonomgrid.cpp:322 ../src/display/canvas-grid.cpp:701 msgid "Spacing _Y:" msgstr "Abstand _Y:" -#: ../src/display/canvas-axonomgrid.cpp:375 +#: ../src/display/canvas-axonomgrid.cpp:322 #: ../src/ui/dialog/inkscape-preferences.cpp:764 msgid "Base length of z-axis" msgstr "Basislänge der Z-Achse" -#: ../src/display/canvas-axonomgrid.cpp:377 +#: ../src/display/canvas-axonomgrid.cpp:324 #: ../src/ui/dialog/inkscape-preferences.cpp:767 -#: ../src/widgets/box3d-toolbar.cpp:320 +#: ../src/widgets/box3d-toolbar.cpp:315 msgid "Angle X:" msgstr "Winkel X:" -#: ../src/display/canvas-axonomgrid.cpp:377 +#: ../src/display/canvas-axonomgrid.cpp:324 #: ../src/ui/dialog/inkscape-preferences.cpp:767 msgid "Angle of x-axis" msgstr "Winkel der X-Achse" -#: ../src/display/canvas-axonomgrid.cpp:379 +#: ../src/display/canvas-axonomgrid.cpp:326 #: ../src/ui/dialog/inkscape-preferences.cpp:768 -#: ../src/widgets/box3d-toolbar.cpp:399 +#: ../src/widgets/box3d-toolbar.cpp:394 msgid "Angle Z:" msgstr "Winkel Z:" -#: ../src/display/canvas-axonomgrid.cpp:379 +#: ../src/display/canvas-axonomgrid.cpp:326 #: ../src/ui/dialog/inkscape-preferences.cpp:768 msgid "Angle of z-axis" msgstr "Winkel der Z-Achse" -#: ../src/display/canvas-axonomgrid.cpp:383 ../src/display/canvas-grid.cpp:758 +#: ../src/display/canvas-axonomgrid.cpp:330 ../src/display/canvas-grid.cpp:705 msgid "Minor grid line _color:" msgstr "Nebengitter-Linienfarbe:" -#: ../src/display/canvas-axonomgrid.cpp:383 ../src/display/canvas-grid.cpp:758 +#: ../src/display/canvas-axonomgrid.cpp:330 ../src/display/canvas-grid.cpp:705 #: ../src/ui/dialog/inkscape-preferences.cpp:719 msgid "Minor grid line color" msgstr "Nebengitter-Linienfarbe:" -#: ../src/display/canvas-axonomgrid.cpp:383 ../src/display/canvas-grid.cpp:758 +#: ../src/display/canvas-axonomgrid.cpp:330 ../src/display/canvas-grid.cpp:705 msgid "Color of the minor grid lines" msgstr "Farbe der Nebengitterlinien" -#: ../src/display/canvas-axonomgrid.cpp:388 ../src/display/canvas-grid.cpp:763 +#: ../src/display/canvas-axonomgrid.cpp:335 ../src/display/canvas-grid.cpp:710 msgid "Ma_jor grid line color:" msgstr "Farbe der _dicken Gitterlinien:" -#: ../src/display/canvas-axonomgrid.cpp:388 ../src/display/canvas-grid.cpp:763 +#: ../src/display/canvas-axonomgrid.cpp:335 ../src/display/canvas-grid.cpp:710 #: ../src/ui/dialog/inkscape-preferences.cpp:721 msgid "Major grid line color" msgstr "Farbe der dicken Gitterlinien" -#: ../src/display/canvas-axonomgrid.cpp:389 ../src/display/canvas-grid.cpp:764 +#: ../src/display/canvas-axonomgrid.cpp:336 ../src/display/canvas-grid.cpp:711 msgid "Color of the major (highlighted) grid lines" msgstr "Farbe der dicken (hervorgehobenen) Gitterlinien" -#: ../src/display/canvas-axonomgrid.cpp:393 ../src/display/canvas-grid.cpp:768 +#: ../src/display/canvas-axonomgrid.cpp:340 ../src/display/canvas-grid.cpp:715 msgid "_Major grid line every:" msgstr "D_icke Gitterlinien alle:" -#: ../src/display/canvas-axonomgrid.cpp:393 ../src/display/canvas-grid.cpp:768 +#: ../src/display/canvas-axonomgrid.cpp:340 ../src/display/canvas-grid.cpp:715 msgid "lines" msgstr "Linien" -#: ../src/display/canvas-grid.cpp:62 +#: ../src/display/canvas-grid.cpp:63 msgid "Rectangular grid" msgstr "Rechteckiges Gitter" -#: ../src/display/canvas-grid.cpp:63 +#: ../src/display/canvas-grid.cpp:64 msgid "Axonometric grid" msgstr "Axonometrisches Gitter" -#: ../src/display/canvas-grid.cpp:274 +#: ../src/display/canvas-grid.cpp:275 msgid "Create new grid" msgstr "Neues Gitter erzeugen" -#: ../src/display/canvas-grid.cpp:340 +#: ../src/display/canvas-grid.cpp:341 msgid "_Enabled" msgstr "_Eingeschaltet" -#: ../src/display/canvas-grid.cpp:341 +#: ../src/display/canvas-grid.cpp:342 msgid "" "Determines whether to snap to this grid or not. Can be 'on' for invisible " "grids." @@ -4755,11 +4754,11 @@ msgstr "" "Legt fest, ob an diesem Raster eingerastet werden soll. Kann auch für " "unsichtbare Gitter gesetzt sein." -#: ../src/display/canvas-grid.cpp:345 +#: ../src/display/canvas-grid.cpp:346 msgid "Snap to visible _grid lines only" msgstr "Nur an sichtbaren _Gitternlinien einrasten" -#: ../src/display/canvas-grid.cpp:346 +#: ../src/display/canvas-grid.cpp:347 msgid "" "When zoomed out, not all grid lines will be displayed. Only the visible ones " "will be snapped to" @@ -4767,11 +4766,11 @@ msgstr "" "Nicht alle Gitterlinien werden dargestellt, wenn stark heraus gezoomt wird. " "Nur auf Sichtbare wird eingerastet." -#: ../src/display/canvas-grid.cpp:350 +#: ../src/display/canvas-grid.cpp:351 msgid "_Visible" msgstr "Sichtbar" -#: ../src/display/canvas-grid.cpp:351 +#: ../src/display/canvas-grid.cpp:352 msgid "" "Determines whether the grid is displayed or not. Objects are still snapped " "to invisible grids." @@ -4779,25 +4778,25 @@ msgstr "" "Legt fest, ob das Raster angezeigt werden soll. Objekte rasten auch an " "unsichtbaren Gittern ein." -#: ../src/display/canvas-grid.cpp:752 +#: ../src/display/canvas-grid.cpp:699 msgid "Spacing _X:" msgstr "Abstand _X:" -#: ../src/display/canvas-grid.cpp:752 +#: ../src/display/canvas-grid.cpp:699 #: ../src/ui/dialog/inkscape-preferences.cpp:741 msgid "Distance between vertical grid lines" msgstr "Abstand der vertikalen Gitterlinien" -#: ../src/display/canvas-grid.cpp:754 +#: ../src/display/canvas-grid.cpp:701 #: ../src/ui/dialog/inkscape-preferences.cpp:742 msgid "Distance between horizontal grid lines" msgstr "Abstand der horizontalen Gitterlinien" -#: ../src/display/canvas-grid.cpp:785 +#: ../src/display/canvas-grid.cpp:732 msgid "_Show dots instead of lines" msgstr "Zeige Punkte anstatt Linien" -#: ../src/display/canvas-grid.cpp:786 +#: ../src/display/canvas-grid.cpp:733 msgid "If set, displays dots at gridpoints instead of gridlines" msgstr "Wenn gesetzt, Punkte an Gitterpunkten anstelle Gitterlinien verwenden" @@ -4947,11 +4946,11 @@ msgstr "Mittelpunkt der Umrandung" msgid "Bounding box side midpoint" msgstr "Mitte der Umrandungslinie" -#: ../src/display/snap-indicator.cpp:194 ../src/ui/tool/node.cpp:1310 +#: ../src/display/snap-indicator.cpp:194 ../src/ui/tool/node.cpp:1316 msgid "Smooth node" msgstr "glatter Knoten" -#: ../src/display/snap-indicator.cpp:197 ../src/ui/tool/node.cpp:1309 +#: ../src/display/snap-indicator.cpp:197 ../src/ui/tool/node.cpp:1315 msgid "Cusp node" msgstr "Spitzer Knoten" @@ -5016,7 +5015,7 @@ msgstr "Neues Dokument %d" msgid "Memory document %1" msgstr "Dokument im Speicher %1" -#: ../src/document.cpp:707 +#: ../src/document.cpp:713 #, c-format msgid "Unnamed document %d" msgstr "Unbenanntes Dokument %d" @@ -5124,11 +5123,11 @@ msgid "[Unchanged]" msgstr "[Unverändert]" #. Edit -#: ../src/event-log.cpp:275 ../src/event-log.cpp:278 ../src/verbs.cpp:2329 +#: ../src/event-log.cpp:275 ../src/event-log.cpp:278 ../src/verbs.cpp:2383 msgid "_Undo" msgstr "_Rückgängig" -#: ../src/event-log.cpp:285 ../src/event-log.cpp:289 ../src/verbs.cpp:2331 +#: ../src/event-log.cpp:285 ../src/event-log.cpp:289 ../src/verbs.cpp:2385 msgid "_Redo" msgstr "_Wiederherstellen" @@ -5156,7 +5155,7 @@ msgstr " Beschreibung: " msgid " (No preferences)" msgstr " (Keine Einstellungen)" -#: ../src/extension/effect.h:70 ../src/verbs.cpp:2102 +#: ../src/extension/effect.h:70 ../src/verbs.cpp:2156 msgid "Extensions" msgstr "Erweiterungen" @@ -5297,12 +5296,12 @@ msgstr "Adaptiver Schwellwert" #: ../src/extension/internal/bitmap/adaptiveThreshold.cpp:41 #: ../src/extension/internal/bitmap/raise.cpp:42 #: ../src/extension/internal/bitmap/sample.cpp:41 -#: ../src/extension/internal/bluredge.cpp:137 +#: ../src/extension/internal/bluredge.cpp:138 #: ../src/ui/dialog/object-attributes.cpp:68 #: ../src/ui/dialog/object-attributes.cpp:76 -#: ../src/widgets/calligraphy-toolbar.cpp:451 -#: ../src/widgets/erasor-toolbar.cpp:149 ../src/widgets/spray-toolbar.cpp:132 -#: ../src/widgets/tweak-toolbar.cpp:146 +#: ../src/widgets/calligraphy-toolbar.cpp:447 +#: ../src/widgets/eraser-toolbar.cpp:145 ../src/widgets/spray-toolbar.cpp:128 +#: ../src/widgets/tweak-toolbar.cpp:142 #: ../share/extensions/foldablebox.inx.h:2 msgid "Width:" msgstr "Breite:" @@ -5377,9 +5376,9 @@ msgstr "Rauschen hinzufügen" #: ../src/extension/internal/filter/color.h:1497 #: ../src/extension/internal/filter/color.h:1585 #: ../src/extension/internal/filter/distort.h:69 -#: ../src/extension/internal/filter/morphology.h:60 ../src/rdf.cpp:241 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2613 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2692 +#: ../src/extension/internal/filter/morphology.h:60 ../src/rdf.cpp:244 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2626 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2705 #: ../src/ui/dialog/object-attributes.cpp:49 #: ../share/extensions/jessyInk_effects.inx.h:5 #: ../share/extensions/jessyInk_export.inx.h:3 @@ -5431,7 +5430,7 @@ msgstr "Unschärfe" #: ../src/extension/internal/bitmap/oilPaint.cpp:39 #: ../src/extension/internal/bitmap/sharpen.cpp:40 #: ../src/extension/internal/bitmap/unsharpmask.cpp:43 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2670 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2683 msgid "Radius:" msgstr "Radius:" @@ -5568,7 +5567,7 @@ msgstr "Rotiere Farbpalette" #: ../src/extension/internal/bitmap/cycleColormap.cpp:39 #: ../src/extension/internal/bitmap/spread.cpp:39 #: ../src/extension/internal/bitmap/unsharpmask.cpp:45 -#: ../src/widgets/spray-toolbar.cpp:224 +#: ../src/widgets/spray-toolbar.cpp:220 msgid "Amount:" msgstr "Menge" @@ -5751,8 +5750,8 @@ msgstr "" "Lässt ausgewählte Bitmap(s) aussehen, als ob sie mit Ölfarbe gemalt seien." #: ../src/extension/internal/bitmap/opacity.cpp:40 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2660 -#: ../src/widgets/dropper-toolbar.cpp:111 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2673 +#: ../src/widgets/dropper-toolbar.cpp:107 msgid "Opacity:" msgstr "Deckkraft:" @@ -5895,23 +5894,23 @@ msgstr "Wellenlänge" msgid "Alter selected bitmap(s) along sine wave" msgstr "Ausgewählte Bitmap(s) entlang Sinuskurve verformen" -#: ../src/extension/internal/bluredge.cpp:135 +#: ../src/extension/internal/bluredge.cpp:136 msgid "Inset/Outset Halo" msgstr "Schrumpfen/Erweitern der Halo" -#: ../src/extension/internal/bluredge.cpp:137 +#: ../src/extension/internal/bluredge.cpp:138 msgid "Width in px of the halo" msgstr "Breite der Halo in Pixeln" -#: ../src/extension/internal/bluredge.cpp:138 +#: ../src/extension/internal/bluredge.cpp:139 msgid "Number of steps:" msgstr "Anzahl der Schritte:" -#: ../src/extension/internal/bluredge.cpp:138 +#: ../src/extension/internal/bluredge.cpp:139 msgid "Number of inset/outset copies of the object to make" msgstr "Anzahl der geschrumpften/erweiterten Kopien des Objekts" -#: ../src/extension/internal/bluredge.cpp:142 +#: ../src/extension/internal/bluredge.cpp:143 #: ../share/extensions/extrude.inx.h:5 #: ../share/extensions/generate_voronoi.inx.h:9 #: ../share/extensions/interp.inx.h:7 ../share/extensions/motion.inx.h:4 @@ -5944,7 +5943,7 @@ msgstr "Postscript Level 2" #: ../src/extension/internal/cairo-ps-out.cpp:335 #: ../src/extension/internal/cairo-ps-out.cpp:376 #: ../src/extension/internal/cairo-renderer-pdf-out.cpp:250 -#: ../src/extension/internal/emf-win32-inout.cpp:2553 +#: ../src/extension/internal/emf-win32-inout.cpp:2557 msgid "Convert texts to paths" msgstr "Texte in Pfade umwandeln" @@ -6116,40 +6115,40 @@ msgid "Open presentation exchange files saved in Corel DRAW" msgstr "" "Öffnen einer Presentation Exchange Datei, die in Corel DRAW gespeichert wurde" -#: ../src/extension/internal/emf-win32-inout.cpp:2523 +#: ../src/extension/internal/emf-win32-inout.cpp:2527 msgid "EMF Input" msgstr "EMF einlesen" -#: ../src/extension/internal/emf-win32-inout.cpp:2528 +#: ../src/extension/internal/emf-win32-inout.cpp:2532 msgid "Enhanced Metafiles (*.emf)" msgstr "Enhanced Windows-Metafile (*.emf)" # !!! -#: ../src/extension/internal/emf-win32-inout.cpp:2529 +#: ../src/extension/internal/emf-win32-inout.cpp:2533 msgid "Enhanced Metafiles" msgstr "Enhanced Metafiles" -#: ../src/extension/internal/emf-win32-inout.cpp:2537 +#: ../src/extension/internal/emf-win32-inout.cpp:2541 msgid "WMF Input" msgstr "WMF einlesen" -#: ../src/extension/internal/emf-win32-inout.cpp:2542 +#: ../src/extension/internal/emf-win32-inout.cpp:2546 msgid "Windows Metafiles (*.wmf)" msgstr "Windows-Metafiles (*.wmf)" -#: ../src/extension/internal/emf-win32-inout.cpp:2543 +#: ../src/extension/internal/emf-win32-inout.cpp:2547 msgid "Windows Metafiles" msgstr "Windows-Metafiles" -#: ../src/extension/internal/emf-win32-inout.cpp:2551 +#: ../src/extension/internal/emf-win32-inout.cpp:2555 msgid "EMF Output" msgstr "EMF-Ausgabe" -#: ../src/extension/internal/emf-win32-inout.cpp:2557 +#: ../src/extension/internal/emf-win32-inout.cpp:2561 msgid "Enhanced Metafile (*.emf)" msgstr "Enhanced Metafile (*.emf)" -#: ../src/extension/internal/emf-win32-inout.cpp:2558 +#: ../src/extension/internal/emf-win32-inout.cpp:2562 msgid "Enhanced Metafile" msgstr "Enhanced Metafile" @@ -6419,7 +6418,7 @@ msgstr "Erosion" #: ../src/extension/internal/filter/blurs.h:336 #: ../src/extension/internal/filter/color.h:1205 #: ../src/extension/internal/filter/color.h:1317 -#: ../src/ui/dialog/document-properties.cpp:108 +#: ../src/ui/dialog/document-properties.cpp:107 msgid "Background color" msgstr "Hintergrundfarbe" @@ -6480,7 +6479,7 @@ msgstr "Stoß-Quelle" #: ../src/extension/internal/filter/color.h:637 #: ../src/extension/internal/filter/color.h:821 #: ../src/extension/internal/filter/transparency.h:132 -#: ../src/filter-enums.cpp:100 ../src/flood-context.cpp:228 +#: ../src/filter-enums.cpp:100 ../src/flood-context.cpp:227 #: ../src/widgets/sp-color-icc-selector.cpp:355 #: ../src/widgets/sp-color-scales.cpp:429 #: ../src/widgets/sp-color-scales.cpp:430 @@ -6493,7 +6492,7 @@ msgstr "Rot" #: ../src/extension/internal/filter/color.h:638 #: ../src/extension/internal/filter/color.h:822 #: ../src/extension/internal/filter/transparency.h:133 -#: ../src/filter-enums.cpp:101 ../src/flood-context.cpp:229 +#: ../src/filter-enums.cpp:101 ../src/flood-context.cpp:228 #: ../src/widgets/sp-color-icc-selector.cpp:356 #: ../src/widgets/sp-color-scales.cpp:432 #: ../src/widgets/sp-color-scales.cpp:433 @@ -6506,7 +6505,7 @@ msgstr "Grün" #: ../src/extension/internal/filter/color.h:639 #: ../src/extension/internal/filter/color.h:823 #: ../src/extension/internal/filter/transparency.h:134 -#: ../src/filter-enums.cpp:102 ../src/flood-context.cpp:230 +#: ../src/filter-enums.cpp:102 ../src/flood-context.cpp:229 #: ../src/widgets/sp-color-icc-selector.cpp:357 #: ../src/widgets/sp-color-scales.cpp:435 #: ../src/widgets/sp-color-scales.cpp:436 @@ -6532,7 +6531,7 @@ msgstr "Diffuses Licht" #: ../src/extension/internal/filter/bumps.h:98 #: ../src/extension/internal/filter/bumps.h:329 #: ../src/libgdl/gdl-dock-placeholder.c:175 ../src/libgdl/gdl-dock.c:199 -#: ../src/widgets/rect-toolbar.cpp:332 +#: ../src/widgets/rect-toolbar.cpp:334 #: ../share/extensions/interp_att_g.inx.h:11 msgid "Height" msgstr "Höhe" @@ -6544,10 +6543,10 @@ msgstr "Höhe" #: ../src/extension/internal/filter/color.h:1113 #: ../src/extension/internal/filter/paint.h:86 #: ../src/extension/internal/filter/paint.h:592 -#: ../src/extension/internal/filter/paint.h:707 ../src/flood-context.cpp:233 +#: ../src/extension/internal/filter/paint.h:707 ../src/flood-context.cpp:232 #: ../src/widgets/sp-color-icc-selector.cpp:366 #: ../src/widgets/sp-color-scales.cpp:461 -#: ../src/widgets/sp-color-scales.cpp:462 ../src/widgets/tweak-toolbar.cpp:336 +#: ../src/widgets/sp-color-scales.cpp:462 ../src/widgets/tweak-toolbar.cpp:332 #: ../share/extensions/color_randomize.inx.h:5 msgid "Lightness" msgstr "Helligkeit" @@ -6569,7 +6568,7 @@ msgstr "Lichtquelle:" msgid "Distant" msgstr "Entfernt" -#: ../src/extension/internal/filter/bumps.h:106 ../src/helper/units.cpp:38 +#: ../src/extension/internal/filter/bumps.h:106 #: ../src/ui/dialog/inkscape-preferences.cpp:451 msgid "Point" msgstr "Punkt" @@ -6659,7 +6658,7 @@ msgstr "_Hintergrund:" #: ../src/extension/internal/filter/bumps.h:322 #: ../src/extension/internal/filter/transparency.h:57 -#: ../src/filter-enums.cpp:29 ../src/selection-describer.cpp:56 +#: ../src/filter-enums.cpp:29 ../src/selection-describer.cpp:57 msgid "Image" msgstr "Bild" @@ -6742,19 +6741,19 @@ msgstr "Kanalfarbe" #: ../src/extension/internal/filter/color.h:156 #: ../src/extension/internal/filter/color.h:257 -#: ../src/extension/internal/filter/paint.h:87 ../src/flood-context.cpp:232 -#: ../src/ui/dialog/inkscape-preferences.cpp:937 +#: ../src/extension/internal/filter/paint.h:87 ../src/flood-context.cpp:231 +#: ../src/ui/dialog/inkscape-preferences.cpp:941 #: ../src/widgets/sp-color-icc-selector.cpp:362 #: ../src/widgets/sp-color-icc-selector.cpp:367 #: ../src/widgets/sp-color-scales.cpp:458 -#: ../src/widgets/sp-color-scales.cpp:459 ../src/widgets/tweak-toolbar.cpp:320 +#: ../src/widgets/sp-color-scales.cpp:459 ../src/widgets/tweak-toolbar.cpp:316 #: ../share/extensions/color_randomize.inx.h:4 msgid "Saturation" msgstr "Sättigung" #: ../src/extension/internal/filter/color.h:160 #: ../src/extension/internal/filter/transparency.h:135 -#: ../src/filter-enums.cpp:103 ../src/flood-context.cpp:234 +#: ../src/filter-enums.cpp:103 ../src/flood-context.cpp:233 msgid "Alpha" msgstr "Alpha" @@ -6920,7 +6919,7 @@ msgid "Fade to:" msgstr "Ausblenden zu:" #: ../src/extension/internal/filter/color.h:744 -#: ../src/ui/widget/selected-style.cpp:254 +#: ../src/ui/widget/selected-style.cpp:257 #: ../src/widgets/sp-color-icc-selector.cpp:372 #: ../src/widgets/sp-color-scales.cpp:492 #: ../src/widgets/sp-color-scales.cpp:493 @@ -6928,7 +6927,7 @@ msgid "Black" msgstr "Schwarz" #: ../src/extension/internal/filter/color.h:745 -#: ../src/ui/widget/selected-style.cpp:250 +#: ../src/ui/widget/selected-style.cpp:253 msgid "White" msgstr "Weiß" @@ -6951,7 +6950,7 @@ msgid "Customize greyscale components" msgstr "Anpassen der Graustufen-Komponenten" #: ../src/extension/internal/filter/color.h:905 -#: ../src/ui/widget/selected-style.cpp:246 +#: ../src/ui/widget/selected-style.cpp:249 msgid "Invert" msgstr "Invertieren" @@ -7036,7 +7035,7 @@ msgstr "Rot-Versatz:" #: ../src/extension/internal/filter/color.h:1307 #: ../src/extension/internal/filter/color.h:1310 #: ../src/extension/internal/filter/color.h:1313 -#: ../src/ui/dialog/input.cpp:1616 ../src/ui/dialog/layers.cpp:915 +#: ../src/ui/dialog/input.cpp:1616 ../src/ui/dialog/layers.cpp:916 msgid "X" msgstr "X" @@ -7183,8 +7182,8 @@ msgstr "Out" #: ../src/extension/internal/filter/distort.h:77 #: ../src/extension/internal/filter/textures.h:75 -#: ../src/ui/widget/selected-style.cpp:128 -#: ../src/ui/widget/style-swatch.cpp:127 +#: ../src/ui/widget/selected-style.cpp:131 +#: ../src/ui/widget/style-swatch.cpp:128 msgid "Stroke:" msgstr "Kontur:" @@ -7294,6 +7293,8 @@ msgid "Detect:" msgstr "Erkennen:" #: ../src/extension/internal/filter/image.h:52 +#: ../src/ui/dialog/template-load-tab.cpp:96 +#: ../src/ui/dialog/template-load-tab.cpp:131 msgid "All" msgstr "alles" @@ -7333,8 +7334,8 @@ msgstr "Öffnen" #: ../src/extension/internal/filter/morphology.h:65 #: ../src/libgdl/gdl-dock-placeholder.c:167 ../src/libgdl/gdl-dock.c:191 -#: ../src/widgets/rect-toolbar.cpp:315 ../src/widgets/spray-toolbar.cpp:132 -#: ../src/widgets/tweak-toolbar.cpp:146 +#: ../src/widgets/rect-toolbar.cpp:317 ../src/widgets/spray-toolbar.cpp:128 +#: ../src/widgets/tweak-toolbar.cpp:142 #: ../share/extensions/interp_att_g.inx.h:10 msgid "Width" msgstr "Breite" @@ -7570,15 +7571,15 @@ msgstr "Konvertiere Bild in eine Gravur aus vertikalen und horizontalen Linien" # not sure here -cm- #: ../src/extension/internal/filter/paint.h:331 -#: ../src/ui/dialog/align-and-distribute.cpp:1048 -#: ../src/widgets/desktop-widget.cpp:2000 +#: ../src/ui/dialog/align-and-distribute.cpp:997 +#: ../src/widgets/desktop-widget.cpp:2004 msgid "Drawing" msgstr "Zeichnung" #: ../src/extension/internal/filter/paint.h:335 #: ../src/extension/internal/filter/paint.h:496 #: ../src/extension/internal/filter/paint.h:590 -#: ../src/extension/internal/filter/paint.h:976 ../src/splivarot.cpp:1988 +#: ../src/extension/internal/filter/paint.h:976 ../src/splivarot.cpp:2024 msgid "Simplify" msgstr "Vereinfachen" @@ -7854,7 +7855,7 @@ msgstr "Tintenklecks auf Stoff oder rauem Papier" msgid "Blend" msgstr "Mischen" -#: ../src/extension/internal/filter/transparency.h:55 ../src/rdf.cpp:258 +#: ../src/extension/internal/filter/transparency.h:55 ../src/rdf.cpp:261 msgid "Source:" msgstr "Quelle:" @@ -7864,10 +7865,10 @@ msgid "Background" msgstr "Hintergrund" #: ../src/extension/internal/filter/transparency.h:59 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2610 -#: ../src/ui/dialog/input.cpp:1088 ../src/widgets/erasor-toolbar.cpp:127 -#: ../src/widgets/pencil-toolbar.cpp:161 ../src/widgets/spray-toolbar.cpp:202 -#: ../src/widgets/tweak-toolbar.cpp:272 ../share/extensions/extrude.inx.h:2 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2623 +#: ../src/ui/dialog/input.cpp:1088 ../src/widgets/eraser-toolbar.cpp:123 +#: ../src/widgets/pencil-toolbar.cpp:156 ../src/widgets/spray-toolbar.cpp:198 +#: ../src/widgets/tweak-toolbar.cpp:268 ../share/extensions/extrude.inx.h:2 #: ../share/extensions/triangle.inx.h:8 msgid "Mode:" msgstr "Modus:" @@ -7890,9 +7891,8 @@ msgstr "Helligkeitsradierer" #: ../src/extension/internal/filter/transparency.h:209 #: ../src/extension/internal/filter/transparency.h:283 -#, fuzzy msgid "Global opacity" -msgstr "Globales Deckkraft:" +msgstr "Globale Deckkraft" #: ../src/extension/internal/filter/transparency.h:218 msgid "Make the lightest parts of the object progressively transparent" @@ -7994,7 +7994,7 @@ msgstr "Vertikaler Versatz" #: ../share/extensions/grid_cartesian.inx.h:23 #: ../share/extensions/grid_isometric.inx.h:11 #: ../share/extensions/grid_polar.inx.h:22 -#: ../share/extensions/guides_creator.inx.h:20 +#: ../share/extensions/guides_creator.inx.h:19 #: ../share/extensions/layout_nup.inx.h:35 #: ../share/extensions/lindenmayer.inx.h:34 #: ../share/extensions/param_curves.inx.h:30 @@ -8015,9 +8015,9 @@ msgid "Render" msgstr "Rendern" #: ../src/extension/internal/grid.cpp:220 -#: ../src/ui/dialog/document-properties.cpp:148 +#: ../src/ui/dialog/document-properties.cpp:147 #: ../src/ui/dialog/inkscape-preferences.cpp:776 -#: ../src/widgets/toolbox.cpp:1826 +#: ../src/widgets/toolbox.cpp:1820 msgid "Grids" msgstr "Gitter" @@ -8361,59 +8361,59 @@ msgstr "" "Die automatische Ermittlung des Formats ist fehlgeschlagen. Die Datei wird " "als SVG-Dokument geöffnet." -#: ../src/file.cpp:153 +#: ../src/file.cpp:179 msgid "default.svg" msgstr "default.de.svg" -#: ../src/file.cpp:284 +#: ../src/file.cpp:318 msgid "Broken links have been changed to point to existing files." msgstr "" "Defekte Verknüpfungen wurden geändert, um vorhandene Dateien zu verweisen." -#: ../src/file.cpp:295 ../src/file.cpp:1218 +#: ../src/file.cpp:329 ../src/file.cpp:1253 #, c-format msgid "Failed to load the requested file %s" msgstr "Laden der gewünschten Datei %s fehlgeschlagen" -#: ../src/file.cpp:321 +#: ../src/file.cpp:355 msgid "Document not saved yet. Cannot revert." msgstr "Dokument noch nicht gespeichtert. Kann nicht zurücksetzen." -#: ../src/file.cpp:327 +#: ../src/file.cpp:361 #, c-format msgid "Changes will be lost! Are you sure you want to reload document %s?" msgstr "" "Änderungen gehen verloren! Sind Sie sicher, dass Sie das Dokument %s erneut " "laden möchten?" -#: ../src/file.cpp:356 +#: ../src/file.cpp:390 msgid "Document reverted." msgstr "Dokument zurückgesetzt." -#: ../src/file.cpp:358 +#: ../src/file.cpp:392 msgid "Document not reverted." msgstr "Dokument nicht zurückgesetzt." -#: ../src/file.cpp:508 +#: ../src/file.cpp:542 msgid "Select file to open" msgstr "Wählen Sie die zu öffnende Datei" -#: ../src/file.cpp:592 +#: ../src/file.cpp:624 msgid "Clean up document" msgstr "Dokument bereinigen" -#: ../src/file.cpp:597 +#: ../src/file.cpp:631 #, c-format msgid "Removed %i unused definition in <defs>." msgid_plural "Removed %i unused definitions in <defs>." msgstr[0] "%i überflüssiges Element aus <defs> entfernt." msgstr[1] "%i überflüssige Elemente aus <defs> entfernt." -#: ../src/file.cpp:602 +#: ../src/file.cpp:636 msgid "No unused definitions in <defs>." msgstr "Keine überflüssigen Elemente in <defs>." -#: ../src/file.cpp:633 +#: ../src/file.cpp:668 #, c-format msgid "" "No Inkscape extension found to save document (%s). This may have been " @@ -8422,12 +8422,12 @@ msgstr "" "Keine vorhandene Erweiterung von Inkscape kann das Dokument (%s) sichern. " "Dies Ursache dafür ist möglicherweise eine unbekannte Dateinamenendung." -#: ../src/file.cpp:634 ../src/file.cpp:642 ../src/file.cpp:650 -#: ../src/file.cpp:656 ../src/file.cpp:661 +#: ../src/file.cpp:669 ../src/file.cpp:677 ../src/file.cpp:685 +#: ../src/file.cpp:691 ../src/file.cpp:696 msgid "Document not saved." msgstr "Dokument wurde nicht gespeichert." -#: ../src/file.cpp:641 +#: ../src/file.cpp:676 #, c-format msgid "" "File %s is write protected. Please remove write protection and try again." @@ -8435,60 +8435,60 @@ msgstr "" "Datei %s ist schreibgeschützt! Bitte entfernen Sie den Schreibschutz und " "versuchen es dann erneut." -#: ../src/file.cpp:649 +#: ../src/file.cpp:684 #, c-format msgid "File %s could not be saved." msgstr "Datei %s konnte nicht gespeichert werden." -#: ../src/file.cpp:679 ../src/file.cpp:681 +#: ../src/file.cpp:714 ../src/file.cpp:716 msgid "Document saved." msgstr "Dokument wurde gespeichert." #. We are saving for the first time; create a unique default filename -#: ../src/file.cpp:829 ../src/file.cpp:1381 +#: ../src/file.cpp:864 ../src/file.cpp:1416 #, c-format msgid "drawing%s" msgstr "Zeichnung%s" -#: ../src/file.cpp:835 +#: ../src/file.cpp:870 #, c-format msgid "drawing-%d%s" msgstr "Zeichnung-%d%s" -#: ../src/file.cpp:839 +#: ../src/file.cpp:874 #, c-format msgid "%s" msgstr "%s" -#: ../src/file.cpp:854 +#: ../src/file.cpp:889 msgid "Select file to save a copy to" msgstr "Datei wählen, in die eine Kopie gespeichert werden soll" -#: ../src/file.cpp:856 +#: ../src/file.cpp:891 msgid "Select file to save to" msgstr "Datei wählen, in die gespeichert werden soll" -#: ../src/file.cpp:962 ../src/file.cpp:964 +#: ../src/file.cpp:997 ../src/file.cpp:999 msgid "No changes need to be saved." msgstr "Es müssen keine Änderungen gespeichert werden." -#: ../src/file.cpp:983 +#: ../src/file.cpp:1018 msgid "Saving document..." msgstr "Dokument wird gespeichert…" -#: ../src/file.cpp:1215 ../src/ui/dialog/ocaldialogs.cpp:1244 +#: ../src/file.cpp:1250 ../src/ui/dialog/ocaldialogs.cpp:1244 msgid "Import" msgstr "Importieren" -#: ../src/file.cpp:1265 +#: ../src/file.cpp:1300 msgid "Select file to import" msgstr "Wählen Sie die zu importierende Datei" -#: ../src/file.cpp:1403 +#: ../src/file.cpp:1438 msgid "Select file to export to" msgstr "Wählen Sie die Datei, in die exportiert werden soll" -#: ../src/file.cpp:1656 +#: ../src/file.cpp:1691 msgid "Import Clip Art" msgstr "Importiere Clipart" @@ -8516,7 +8516,7 @@ msgstr "Versatzkarte" msgid "Flood" msgstr "Füllen" -#: ../src/filter-enums.cpp:30 +#: ../src/filter-enums.cpp:30 ../share/extensions/text_merge.inx.h:1 msgid "Merge" msgstr "Zusammenführen" @@ -8569,7 +8569,7 @@ msgid "Luminance to Alpha" msgstr "Leuchtkraft zu Alpha" #. File -#: ../src/filter-enums.cpp:70 ../src/verbs.cpp:2296 +#: ../src/filter-enums.cpp:70 ../src/verbs.cpp:2348 #: ../share/extensions/jessyInk_mouseHandler.inx.h:3 #: ../share/extensions/jessyInk_transitions.inx.h:7 msgid "Default" @@ -8579,7 +8579,7 @@ msgstr "Vorgabe" msgid "Arithmetic" msgstr "Arithmetisch" -#: ../src/filter-enums.cpp:92 ../src/selection-chemistry.cpp:516 +#: ../src/filter-enums.cpp:92 ../src/selection-chemistry.cpp:531 msgid "Duplicate" msgstr "Duplizieren" @@ -8611,44 +8611,44 @@ msgstr "Punktförmige Lichtquelle" msgid "Spot Light" msgstr "Spotlight" -#: ../src/flood-context.cpp:227 +#: ../src/flood-context.cpp:226 msgid "Visible Colors" msgstr "Sichtbare Farben" -#: ../src/flood-context.cpp:231 ../src/widgets/sp-color-icc-selector.cpp:361 +#: ../src/flood-context.cpp:230 ../src/widgets/sp-color-icc-selector.cpp:361 #: ../src/widgets/sp-color-icc-selector.cpp:365 #: ../src/widgets/sp-color-scales.cpp:455 -#: ../src/widgets/sp-color-scales.cpp:456 ../src/widgets/tweak-toolbar.cpp:304 +#: ../src/widgets/sp-color-scales.cpp:456 ../src/widgets/tweak-toolbar.cpp:300 #: ../share/extensions/color_randomize.inx.h:3 msgid "Hue" msgstr "Farbton" # CHECK -#: ../src/flood-context.cpp:245 +#: ../src/flood-context.cpp:244 msgctxt "Flood autogap" msgid "None" msgstr "Keine" -#: ../src/flood-context.cpp:246 +#: ../src/flood-context.cpp:245 msgctxt "Flood autogap" msgid "Small" msgstr "Klein" -#: ../src/flood-context.cpp:247 +#: ../src/flood-context.cpp:246 msgctxt "Flood autogap" msgid "Medium" msgstr "Mittel" -#: ../src/flood-context.cpp:248 +#: ../src/flood-context.cpp:247 msgctxt "Flood autogap" msgid "Large" msgstr "Groß" -#: ../src/flood-context.cpp:470 +#: ../src/flood-context.cpp:469 msgid "Too much inset, the result is empty." msgstr "Zu viel Schrumpfung, das Ergebnis ist leer." -#: ../src/flood-context.cpp:511 +#: ../src/flood-context.cpp:510 #, c-format msgid "" "Area filled, path with %d node created and unioned with selection." @@ -8661,18 +8661,18 @@ msgstr[1] "" "Gebiet gefüllt, Pfad mit %d Knoten erzeugt und mit der Auswahl " "vereinigt." -#: ../src/flood-context.cpp:517 +#: ../src/flood-context.cpp:516 #, c-format msgid "Area filled, path with %d node created." msgid_plural "Area filled, path with %d nodes created." msgstr[0] "Gebiet gefüllt, Pfad mit %d Knoten erzeugt." msgstr[1] "Gebiet gefüllt, Pfad mit %d Knoten erzeugt." -#: ../src/flood-context.cpp:785 ../src/flood-context.cpp:1095 +#: ../src/flood-context.cpp:784 ../src/flood-context.cpp:1094 msgid "Area is not bounded, cannot fill." msgstr "Gebiet ist nicht abgegrenzt, kann nicht füllen." -#: ../src/flood-context.cpp:1100 +#: ../src/flood-context.cpp:1099 msgid "" "Only the visible part of the bounded area was filled. If you want to " "fill all of the area, undo, zoom out, and fill again." @@ -8681,15 +8681,15 @@ msgstr "" "Sie das gesamte Gebiet füllen wollen, dann machen Sie rückgängig, zoomen " "heraus, und füllen Sie noch einmal." -#: ../src/flood-context.cpp:1118 ../src/flood-context.cpp:1277 +#: ../src/flood-context.cpp:1117 ../src/flood-context.cpp:1276 msgid "Fill bounded area" msgstr "Fülle abgegrenztes Gebiet" -#: ../src/flood-context.cpp:1137 +#: ../src/flood-context.cpp:1136 msgid "Set style on object" msgstr "Stil auf Objekte anwenden" -#: ../src/flood-context.cpp:1196 +#: ../src/flood-context.cpp:1195 msgid "Draw over areas to add to fill, hold Alt for touch fill" msgstr "" "Zeichne über Flächen um zur Füllung hinzuzufügen, Alt für " @@ -8703,7 +8703,7 @@ msgstr "Farbverlauf invertieren" msgid "Reverse gradient" msgstr "Farbverlauf umkehren" -#: ../src/gradient-chemistry.cpp:1608 ../src/widgets/gradient-selector.cpp:227 +#: ../src/gradient-chemistry.cpp:1608 ../src/widgets/gradient-selector.cpp:228 msgid "Delete swatch" msgstr "Zwischenfarbe löschen" @@ -8795,7 +8795,7 @@ msgstr[1] "" "Keine Verlaufs-Handles von %d ausgewählt bei %d markierten Objekten" #: ../src/gradient-context.cpp:381 ../src/gradient-context.cpp:479 -#: ../src/ui/dialog/swatches.cpp:203 ../src/widgets/gradient-vector.cpp:814 +#: ../src/ui/dialog/swatches.cpp:204 ../src/widgets/gradient-vector.cpp:814 msgid "Add gradient stop" msgstr "Zwischenfarbe zum Farbverlauf hinzufügen" @@ -8916,220 +8916,46 @@ msgstr "Zwischenfarbe(n) des Farbverlaufs verschieben" msgid "Delete gradient stop(s)" msgstr "Zwischenfarbe(n) des Farbverlaufs löschen" -#: ../src/helper/units.cpp:37 ../src/live_effects/lpe-ruler.cpp:42 -msgid "Unit" -msgstr "Einheit" - -#. Add the units menu. -#: ../src/helper/units.cpp:37 ../src/widgets/lpe-toolbar.cpp:400 -#: ../src/widgets/node-toolbar.cpp:622 -#: ../src/widgets/paintbucket-toolbar.cpp:185 -#: ../src/widgets/rect-toolbar.cpp:376 ../src/widgets/select-toolbar.cpp:538 -msgid "Units" -msgstr "Einheiten" - -#: ../src/helper/units.cpp:38 ../share/extensions/dxf_outlines.inx.h:9 -msgid "pt" -msgstr "pt" - -#: ../src/helper/units.cpp:38 ../share/extensions/perfectboundcover.inx.h:11 -msgid "Points" -msgstr "Punkte" - -#: ../src/helper/units.cpp:38 -msgid "Pt" -msgstr "Pkt" - -#: ../src/helper/units.cpp:39 ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Pica" -msgstr "Pica" - -#: ../src/helper/units.cpp:39 ../share/extensions/dxf_outlines.inx.h:10 -msgid "pc" -msgstr "pc" - -#: ../src/helper/units.cpp:39 -msgid "Picas" -msgstr "Picas" - -#: ../src/helper/units.cpp:39 -msgid "Pc" -msgstr "PC" - -#: ../src/helper/units.cpp:40 ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Pixel" -msgstr "Pixel" - -#: ../src/helper/units.cpp:40 ../share/extensions/dxf_outlines.inx.h:11 -#: ../share/extensions/render_gears.inx.h:7 -msgid "px" -msgstr "Px" - -#: ../src/helper/units.cpp:40 -msgid "Pixels" -msgstr "Pixel" - -#: ../src/helper/units.cpp:40 -msgid "Px" -msgstr "Px" - -#. You can add new elements from this point forward -#: ../src/helper/units.cpp:42 -msgid "Percent" -msgstr "Prozent" - -#: ../src/helper/units.cpp:42 ../src/ui/dialog/inkscape-preferences.cpp:1265 -msgid "%" -msgstr "%" - -#: ../src/helper/units.cpp:42 -msgid "Percents" -msgstr "Prozent" - -#: ../src/helper/units.cpp:43 ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Millimeter" -msgstr "Millimeter" - -#: ../src/helper/units.cpp:43 ../share/extensions/dxf_outlines.inx.h:12 -#: ../share/extensions/gcodetools_area.inx.h:46 -#: ../share/extensions/gcodetools_dxf_points.inx.h:18 -#: ../share/extensions/gcodetools_engraving.inx.h:24 -#: ../share/extensions/gcodetools_graffiti.inx.h:18 -#: ../share/extensions/gcodetools_lathe.inx.h:39 -#: ../share/extensions/gcodetools_orientation_points.inx.h:11 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:28 -#: ../share/extensions/render_gears.inx.h:9 -msgid "mm" -msgstr "mm" - -#: ../src/helper/units.cpp:43 -msgid "Millimeters" -msgstr "Millimeter" - -#: ../src/helper/units.cpp:44 ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Centimeter" -msgstr "Zentimeter" - -#: ../src/helper/units.cpp:44 ../share/extensions/dxf_outlines.inx.h:13 -msgid "cm" -msgstr "cm" - -#: ../src/helper/units.cpp:44 -msgid "Centimeters" -msgstr "Zentimeter" - -#: ../src/helper/units.cpp:45 -msgid "Meter" -msgstr "Meter" - -#: ../src/helper/units.cpp:45 ../share/extensions/dxf_outlines.inx.h:14 -msgid "m" -msgstr "m" - -#: ../src/helper/units.cpp:45 -msgid "Meters" -msgstr "Meter" - -#. no svg_unit -#: ../src/helper/units.cpp:46 ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Inch" -msgstr "Zoll" - -#: ../src/helper/units.cpp:46 ../share/extensions/dxf_outlines.inx.h:15 -#: ../share/extensions/gcodetools_area.inx.h:47 -#: ../share/extensions/gcodetools_dxf_points.inx.h:19 -#: ../share/extensions/gcodetools_engraving.inx.h:25 -#: ../share/extensions/gcodetools_graffiti.inx.h:19 -#: ../share/extensions/gcodetools_lathe.inx.h:40 -#: ../share/extensions/gcodetools_orientation_points.inx.h:12 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:29 -#: ../share/extensions/render_gears.inx.h:8 -msgid "in" -msgstr "In" - -#: ../src/helper/units.cpp:46 -msgid "Inches" -msgstr "Zoll" - -#: ../src/helper/units.cpp:47 -msgid "Foot" -msgstr "Fuß" - -#: ../src/helper/units.cpp:47 ../share/extensions/dxf_outlines.inx.h:16 -msgid "ft" -msgstr "ft" - -#: ../src/helper/units.cpp:47 -msgid "Feet" -msgstr "Vorschub" - -#. Volatiles do not have default, so there are none here -#. TRANSLATORS: for info, see http://www.w3.org/TR/REC-CSS2/syndata.html#length-units -#: ../src/helper/units.cpp:50 ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Em square" -msgstr "Em-Quadrat" - -#: ../src/helper/units.cpp:50 -msgid "em" -msgstr "em" - -#: ../src/helper/units.cpp:50 -msgid "Em squares" -msgstr "Em-Quadrate" - -#. TRANSLATORS: for info, see http://www.w3.org/TR/REC-CSS2/syndata.html#length-units -#: ../src/helper/units.cpp:52 -msgid "Ex square" -msgstr "Ix-Quadrat" - -#: ../src/helper/units.cpp:52 -msgid "ex" -msgstr "ex" - -#: ../src/helper/units.cpp:52 -msgid "Ex squares" -msgstr "Ix-Quadrate" - -#: ../src/inkscape.cpp:322 +#: ../src/inkscape.cpp:341 msgid "Autosave failed! Cannot create directory %1." msgstr "Autospeicherung fehlgeschlagen! Kann Verzeichnis %1 nicht erstellen." -#: ../src/inkscape.cpp:331 +#: ../src/inkscape.cpp:350 msgid "Autosave failed! Cannot open directory %1." msgstr "Autospeicherung fehlgeschlagen! Kann Verzeichnis %1 nicht öffnen." -#: ../src/inkscape.cpp:347 +#: ../src/inkscape.cpp:366 msgid "Autosaving documents..." msgstr "Dokument wird automatisch gespeichert…" -#: ../src/inkscape.cpp:420 +#: ../src/inkscape.cpp:439 msgid "Autosave failed! Could not find inkscape extension to save document." msgstr "" "Automatisches Speichern fehlgeschlagen! Inkscape-Endung konnte nicht " "gefunden werden." -#: ../src/inkscape.cpp:423 ../src/inkscape.cpp:430 +#: ../src/inkscape.cpp:442 ../src/inkscape.cpp:449 #, c-format msgid "Autosave failed! File %s could not be saved." msgstr "" "Automatisches Speichern fehlgeschlagen! Datei %s konnte nicht gespeichert " "werden." -#: ../src/inkscape.cpp:445 +#: ../src/inkscape.cpp:464 msgid "Autosave complete." msgstr "Automatisches Speichern abgeschlossen." -#: ../src/inkscape.cpp:691 +#: ../src/inkscape.cpp:712 msgid "Untitled document" msgstr "Unbenanntes Dokument" #. Show nice dialog box -#: ../src/inkscape.cpp:723 +#: ../src/inkscape.cpp:744 msgid "Inkscape encountered an internal error and will close now.\n" msgstr "" "Inkscape ist auf einen internen Fehler gestoßen und wird nun geschlossen.\n" -#: ../src/inkscape.cpp:724 +#: ../src/inkscape.cpp:745 msgid "" "Automatic backups of unsaved documents were done to the following " "locations:\n" @@ -9137,75 +8963,75 @@ msgstr "" "Unter folgenden Speicherorten wurden automatische Sicherungskopien nicht " "gespeicherter Dokumente angelegt:\n" -#: ../src/inkscape.cpp:725 +#: ../src/inkscape.cpp:746 msgid "Automatic backup of the following documents failed:\n" msgstr "" "Anlegen von automatischen Sicherungskopien folgender Dokumente " "fehlgeschlagen:\n" -#: ../src/interface.cpp:865 +#: ../src/interface.cpp:774 msgctxt "Interface setup" msgid "Default" msgstr "Vorgabe" -#: ../src/interface.cpp:865 +#: ../src/interface.cpp:774 msgid "Default interface setup" msgstr "Standard Schnittstellen-Setup" -#: ../src/interface.cpp:866 +#: ../src/interface.cpp:775 msgctxt "Interface setup" msgid "Custom" msgstr "Benutzerdefiniert" -#: ../src/interface.cpp:866 +#: ../src/interface.cpp:775 msgid "Setup for custom task" msgstr "Setup für benutzerdefinierte Aufgabe" -#: ../src/interface.cpp:867 +#: ../src/interface.cpp:776 msgctxt "Interface setup" msgid "Wide" msgstr "Breit" -#: ../src/interface.cpp:867 +#: ../src/interface.cpp:776 msgid "Setup for widescreen work" msgstr "Setup für die Breitbild-Arbeit" -#: ../src/interface.cpp:979 +#: ../src/interface.cpp:888 #, c-format msgid "Verb \"%s\" Unknown" msgstr "Verb \"%s\" unbekannt" -#: ../src/interface.cpp:1021 +#: ../src/interface.cpp:927 msgid "Open _Recent" msgstr "Zuletzt _geöffnete Dateien" # !!! correct? -#: ../src/interface.cpp:1129 ../src/interface.cpp:1215 -#: ../src/interface.cpp:1318 ../src/ui/widget/selected-style.cpp:523 +#: ../src/interface.cpp:1035 ../src/interface.cpp:1121 +#: ../src/interface.cpp:1224 ../src/ui/widget/selected-style.cpp:528 msgid "Drop color" msgstr "Farbe ablegen" -#: ../src/interface.cpp:1168 ../src/interface.cpp:1278 +#: ../src/interface.cpp:1074 ../src/interface.cpp:1184 msgid "Drop color on gradient" msgstr "Keine Zwischenfarben im Farbverlauf" -#: ../src/interface.cpp:1331 +#: ../src/interface.cpp:1237 msgid "Could not parse SVG data" msgstr "SVG-Daten konnten nicht analysiert werden" -#: ../src/interface.cpp:1370 +#: ../src/interface.cpp:1276 msgid "Drop SVG" msgstr "SVG ablegen" -#: ../src/interface.cpp:1383 +#: ../src/interface.cpp:1289 msgid "Drop Symbol" msgstr "Symbol fallenlassen" -#: ../src/interface.cpp:1414 +#: ../src/interface.cpp:1320 msgid "Drop bitmap image" msgstr "Bitmap-Bild ablegen" -#: ../src/interface.cpp:1506 +#: ../src/interface.cpp:1412 #, c-format msgid "" "A file named \"%s\" already exists. Do " @@ -9219,160 +9045,160 @@ msgstr "" "Die Datei existiert bereits in »%s«. Sie zu ersetzen wird ihren Inhalt " "überschreiben." -#: ../src/interface.cpp:1513 ../share/extensions/web-set-att.inx.h:21 +#: ../src/interface.cpp:1419 ../share/extensions/web-set-att.inx.h:21 #: ../share/extensions/web-transmit-att.inx.h:19 msgid "Replace" msgstr "Ersetzen" -#: ../src/interface.cpp:1584 +#: ../src/interface.cpp:1490 msgid "Go to parent" msgstr "Zum übergeordneten Objekt gehen" #. TRANSLATORS: #%1 is the id of the group e.g. , not a number. -#: ../src/interface.cpp:1625 +#: ../src/interface.cpp:1531 msgid "Enter group #%1" msgstr "Gruppe #%1 beitreten" #. Item dialog -#: ../src/interface.cpp:1737 ../src/verbs.cpp:2790 +#: ../src/interface.cpp:1643 ../src/verbs.cpp:2842 msgid "_Object Properties..." msgstr "Objekt_eigenschaften…" -#: ../src/interface.cpp:1746 +#: ../src/interface.cpp:1652 msgid "_Select This" msgstr "_Dies auswählen" -#: ../src/interface.cpp:1757 +#: ../src/interface.cpp:1663 msgid "Select Same" msgstr "Das Gleiche auswählen" #. Select same fill and stroke -#: ../src/interface.cpp:1767 +#: ../src/interface.cpp:1673 msgid "Fill and Stroke" msgstr "Füllung und _Kontur" #. Select same fill color -#: ../src/interface.cpp:1774 +#: ../src/interface.cpp:1680 msgid "Fill Color" msgstr "Füllfarbe" #. Select same stroke color -#: ../src/interface.cpp:1781 +#: ../src/interface.cpp:1687 msgid "Stroke Color" msgstr "Konturfarbe" #. Select same stroke style -#: ../src/interface.cpp:1788 +#: ../src/interface.cpp:1694 msgid "Stroke Style" msgstr "Muster der Kontur" #. Select same stroke style -#: ../src/interface.cpp:1795 +#: ../src/interface.cpp:1701 msgid "Object type" msgstr "Objekttyp" #. Move to layer -#: ../src/interface.cpp:1802 +#: ../src/interface.cpp:1708 msgid "_Move to layer ..." msgstr "Verschiebe zu Ebene..." #. Create link -#: ../src/interface.cpp:1812 +#: ../src/interface.cpp:1718 msgid "Create _Link" msgstr "_Verknüpfung erzeugen" #. Set mask -#: ../src/interface.cpp:1835 +#: ../src/interface.cpp:1741 msgid "Set Mask" msgstr "Maskierung setzen" #. Release mask -#: ../src/interface.cpp:1846 +#: ../src/interface.cpp:1752 msgid "Release Mask" msgstr "Maskierung entfernen" #. Set Clip -#: ../src/interface.cpp:1857 +#: ../src/interface.cpp:1763 msgid "Set Cl_ip" msgstr "_Clip setzen" #. Release Clip -#: ../src/interface.cpp:1868 +#: ../src/interface.cpp:1774 msgid "Release C_lip" msgstr "C_lip lösen" #. Group -#: ../src/interface.cpp:1879 ../src/verbs.cpp:2429 +#: ../src/interface.cpp:1785 ../src/verbs.cpp:2483 msgid "_Group" msgstr "_Gruppieren" -#: ../src/interface.cpp:1950 +#: ../src/interface.cpp:1856 msgid "Create link" msgstr "Verknüpfung erzeugen" #. Ungroup -#: ../src/interface.cpp:1981 ../src/verbs.cpp:2431 +#: ../src/interface.cpp:1887 ../src/verbs.cpp:2485 msgid "_Ungroup" msgstr "Grupp_ierung aufheben" #. Link dialog -#: ../src/interface.cpp:2006 +#: ../src/interface.cpp:1912 msgid "Link _Properties..." msgstr "Verknüpfungseigenschaften..." #. Select item -#: ../src/interface.cpp:2012 +#: ../src/interface.cpp:1918 msgid "_Follow Link" msgstr "Verknüpfung _folgen" #. Reset transformations -#: ../src/interface.cpp:2018 +#: ../src/interface.cpp:1924 msgid "_Remove Link" msgstr "Verknüpfung en_tfernen" -#: ../src/interface.cpp:2049 +#: ../src/interface.cpp:1955 msgid "Remove link" msgstr "Verknüpfung en_tfernen" #. Image properties -#: ../src/interface.cpp:2060 +#: ../src/interface.cpp:1966 msgid "Image _Properties..." msgstr "Bildeigenschaften..." #. Edit externally -#: ../src/interface.cpp:2066 +#: ../src/interface.cpp:1972 msgid "Edit Externally..." msgstr "Extern bearbeiten…" #. Trace Bitmap #. TRANSLATORS: "to trace" means "to convert a bitmap to vector graphics" (to vectorize) -#: ../src/interface.cpp:2075 ../src/verbs.cpp:2492 +#: ../src/interface.cpp:1981 ../src/verbs.cpp:2546 msgid "_Trace Bitmap..." msgstr "Bitmap _vektorisieren…" -#: ../src/interface.cpp:2085 +#: ../src/interface.cpp:1991 msgctxt "Context menu" msgid "Embed Image" msgstr "Bild einbetten" -#: ../src/interface.cpp:2096 +#: ../src/interface.cpp:2002 msgctxt "Context menu" msgid "Extract Image..." msgstr "Bild extrahieren..." #. Item dialog #. Fill and Stroke dialog -#: ../src/interface.cpp:2235 ../src/interface.cpp:2255 ../src/verbs.cpp:2753 +#: ../src/interface.cpp:2141 ../src/interface.cpp:2161 ../src/verbs.cpp:2807 msgid "_Fill and Stroke..." msgstr "Füllung und _Kontur…" #. Edit Text dialog -#: ../src/interface.cpp:2261 ../src/verbs.cpp:2770 +#: ../src/interface.cpp:2167 ../src/verbs.cpp:2824 msgid "_Text and Font..." msgstr "_Schrift und Text…" #. Spellcheck dialog -#: ../src/interface.cpp:2267 ../src/verbs.cpp:2778 +#: ../src/interface.cpp:2173 ../src/verbs.cpp:2832 msgid "Check Spellin_g..." msgstr "Rechtschreibprüfun_g..." @@ -9441,7 +9267,8 @@ msgid "Dockitem which 'owns' this grip" msgstr "Dockobjekt, das diesen Griff \"besitzt\"" #. Name -#: ../src/libgdl/gdl-dock-item.c:298 ../src/widgets/text-toolbar.cpp:1430 +#: ../src/libgdl/gdl-dock-item.c:298 ../src/widgets/ruler.cpp:191 +#: ../src/widgets/text-toolbar.cpp:1421 #: ../share/extensions/gcodetools_graffiti.inx.h:9 #: ../share/extensions/gcodetools_orientation_points.inx.h:2 msgid "Orientation" @@ -9559,11 +9386,11 @@ msgstr "" "Wenn zu 1 gesetzt, werden alle Dock-Objekte an Hauptobjekt gebunden; zu 0 " "sind alle ungebunden; -1 weist auf Inkonsistenzen zwischen den Objekten hin" -#: ../src/libgdl/gdl-dock-master.c:157 ../src/libgdl/gdl-switcher.c:732 +#: ../src/libgdl/gdl-dock-master.c:157 ../src/libgdl/gdl-switcher.c:737 msgid "Switcher Style" msgstr "Stil des Umschalters" -#: ../src/libgdl/gdl-dock-master.c:158 ../src/libgdl/gdl-switcher.c:733 +#: ../src/libgdl/gdl-dock-master.c:158 ../src/libgdl/gdl-switcher.c:738 msgid "Switcher buttons style" msgstr "Stil des Umschalters" @@ -9586,10 +9413,10 @@ msgstr "" "Steuerung heissen." #: ../src/libgdl/gdl-dock-notebook.c:132 -#: ../src/ui/dialog/align-and-distribute.cpp:1047 -#: ../src/ui/dialog/document-properties.cpp:146 +#: ../src/ui/dialog/align-and-distribute.cpp:996 +#: ../src/ui/dialog/document-properties.cpp:145 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1551 -#: ../src/widgets/desktop-widget.cpp:1996 +#: ../src/widgets/desktop-widget.cpp:2000 #: ../share/extensions/voronoi2svg.inx.h:9 msgid "Page" msgstr "Seite" @@ -9599,9 +9426,9 @@ msgid "The index of the current page" msgstr "Aktuelle Seitenzahl" #: ../src/libgdl/gdl-dock-object.c:125 -#: ../src/ui/dialog/inkscape-preferences.cpp:1482 -#: ../src/ui/widget/page-sizer.cpp:260 -#: ../src/widgets/gradient-selector.cpp:156 +#: ../src/ui/dialog/inkscape-preferences.cpp:1486 +#: ../src/ui/widget/page-sizer.cpp:258 +#: ../src/widgets/gradient-selector.cpp:157 #: ../src/widgets/sp-xmlview-attr-list.cpp:54 msgid "Name" msgstr "Name" @@ -9675,7 +9502,7 @@ msgstr "" "Versuch, %p an ein schon gebundenes Objekt %p anzubinden (gehört momentan zu " "%p)" -#: ../src/libgdl/gdl-dock-paned.c:130 +#: ../src/libgdl/gdl-dock-paned.c:130 ../src/widgets/ruler.cpp:229 msgid "Position" msgstr "Position:" @@ -9952,7 +9779,7 @@ msgstr "Lineal" msgid "Power stroke" msgstr "Kräftige Kontur" -#: ../src/live_effects/effect.cpp:124 ../src/selection-chemistry.cpp:2792 +#: ../src/live_effects/effect.cpp:124 ../src/selection-chemistry.cpp:2778 msgid "Clone original path" msgstr "Originalpfad klonen" @@ -10418,7 +10245,7 @@ msgid "Beveled" msgstr "Abgeschrägt" #: ../src/live_effects/lpe-powerstroke.cpp:221 -#: ../src/widgets/star-toolbar.cpp:546 +#: ../src/widgets/star-toolbar.cpp:542 msgid "Rounded" msgstr "Abgerundet" @@ -10431,7 +10258,7 @@ msgid "Miter" msgstr "Gehrung" #: ../src/live_effects/lpe-powerstroke.cpp:224 -#: ../src/widgets/pencil-toolbar.cpp:137 +#: ../src/widgets/pencil-toolbar.cpp:132 msgid "Spiro" msgstr "Spirale" @@ -10490,7 +10317,7 @@ msgstr "Bestimmt die Form des Pfad-Start" #. TRANSLATORS: The line join style specifies the shape to be used at the #. corners of paths. It can be "miter", "round" or "bevel". #: ../src/live_effects/lpe-powerstroke.cpp:238 -#: ../src/widgets/stroke-style.cpp:220 +#: ../src/widgets/stroke-style.cpp:223 msgid "Join:" msgstr "Verbindungsart:" @@ -10503,7 +10330,7 @@ msgid "Miter limit:" msgstr "Gehrungslimit:" #: ../src/live_effects/lpe-powerstroke.cpp:239 -#: ../src/widgets/stroke-style.cpp:271 +#: ../src/widgets/stroke-style.cpp:274 msgid "Maximum length of the miter (in units of stroke width)" msgstr "Maximale Länge der Spitze (in Vielfachen der Konturlinienbreite)" @@ -10707,11 +10534,13 @@ msgstr "" #: ../src/live_effects/lpe-ruler.cpp:25 ../share/extensions/restack.inx.h:12 #: ../share/extensions/text_extract.inx.h:8 +#: ../share/extensions/text_merge.inx.h:8 msgid "Left" msgstr "Links" #: ../src/live_effects/lpe-ruler.cpp:26 ../share/extensions/restack.inx.h:14 #: ../share/extensions/text_extract.inx.h:10 +#: ../share/extensions/text_merge.inx.h:10 msgid "Right" msgstr "Rechts" @@ -10719,11 +10548,11 @@ msgstr "Rechts" msgid "Both" msgstr "Beide" -#: ../src/live_effects/lpe-ruler.cpp:33 ../src/widgets/arc-toolbar.cpp:341 +#: ../src/live_effects/lpe-ruler.cpp:33 ../src/widgets/arc-toolbar.cpp:337 msgid "Start" msgstr "Anfang" -#: ../src/live_effects/lpe-ruler.cpp:34 ../src/widgets/arc-toolbar.cpp:354 +#: ../src/live_effects/lpe-ruler.cpp:34 ../src/widgets/arc-toolbar.cpp:350 msgid "End" msgstr "Ende" @@ -10743,6 +10572,10 @@ msgstr "Abstand zwischen aufeinander folgenden Linealmarkierungen" msgid "Unit:" msgstr "Einheit:" +#: ../src/live_effects/lpe-ruler.cpp:42 ../src/widgets/ruler.cpp:201 +msgid "Unit" +msgstr "Einheit" + #: ../src/live_effects/lpe-ruler.cpp:43 msgid "Ma_jor length:" msgstr "Große Länge:" @@ -10888,7 +10721,7 @@ msgid "How many construction lines (tangents) to draw" msgstr "Wie viele Konstruktionslinien (Tangenten) gezeichnet werden sollen" #: ../src/live_effects/lpe-sketch.cpp:58 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2667 #: ../share/extensions/render_alphabetsoup.inx.h:3 msgid "Scale:" msgstr "Skalierung:" @@ -11062,7 +10895,7 @@ msgstr "Zufallsparameter ändern" msgid "Change text parameter" msgstr "Text-Parameter ändern" -#: ../src/live_effects/parameter/unit.cpp:78 +#: ../src/live_effects/parameter/unit.cpp:80 msgid "Change unit parameter" msgstr "Einheiten-Parameter ändern" @@ -11070,7 +10903,7 @@ msgstr "Einheiten-Parameter ändern" msgid "Change vector parameter" msgstr "Vektorparameter ändern" -#: ../src/main-cmdlineact.cpp:49 +#: ../src/main-cmdlineact.cpp:50 #, c-format msgid "Unable to find verb ID '%s' specified on the command line.\n" msgstr "" @@ -11082,42 +10915,42 @@ msgstr "" msgid "Unable to find node ID: '%s'\n" msgstr "Kann Knoten-Kennung »%s« nicht finden.\n" -#: ../src/main.cpp:280 +#: ../src/main.cpp:298 msgid "Print the Inkscape version number" msgstr "Versionsnummer von Inkscape ausgeben" -#: ../src/main.cpp:285 +#: ../src/main.cpp:303 msgid "Do not use X server (only process files from console)" msgstr "X-Server nicht verwenden (Dateien nur mittels Konsole verarbeiten)" -#: ../src/main.cpp:290 +#: ../src/main.cpp:308 msgid "Try to use X server (even if $DISPLAY is not set)" msgstr "" "Versuche, den X-Server zu verwenden (auch wenn die Umgebungsvariable " "»$DISPLAY« nicht gesetzt wurde)" -#: ../src/main.cpp:295 +#: ../src/main.cpp:313 msgid "Open specified document(s) (option string may be excluded)" msgstr "" "Angegebene Dokumente öffnen (Optionszeichenkette muss nicht übergeben werden)" -#: ../src/main.cpp:296 ../src/main.cpp:301 ../src/main.cpp:306 -#: ../src/main.cpp:378 ../src/main.cpp:383 ../src/main.cpp:388 -#: ../src/main.cpp:399 ../src/main.cpp:416 +#: ../src/main.cpp:314 ../src/main.cpp:319 ../src/main.cpp:324 +#: ../src/main.cpp:396 ../src/main.cpp:401 ../src/main.cpp:406 +#: ../src/main.cpp:417 ../src/main.cpp:434 msgid "FILENAME" msgstr "DATEINAME" -#: ../src/main.cpp:300 +#: ../src/main.cpp:318 msgid "Print document(s) to specified output file (use '| program' for pipe)" msgstr "" "Dokumente in angegebene Ausgabedatei drucken (verwenden Sie »| Programm« zur " "Weiterleitung)" -#: ../src/main.cpp:305 +#: ../src/main.cpp:323 msgid "Export document to a PNG file" msgstr "Das Dokument in eine PNG-Datei exportieren" -#: ../src/main.cpp:310 +#: ../src/main.cpp:328 msgid "" "Resolution for exporting to bitmap and for rasterization of filters in PS/" "EPS/PDF (default 90)" @@ -11125,11 +10958,11 @@ msgstr "" "Auflösung beim Exportieren von Bitmaps und Rasterisierung von Filtern in PS/" "EPS/PDF (Vorgabe ist 90)" -#: ../src/main.cpp:311 ../src/ui/widget/rendering-options.cpp:34 +#: ../src/main.cpp:329 ../src/ui/widget/rendering-options.cpp:34 msgid "DPI" msgstr "DPI" -#: ../src/main.cpp:315 +#: ../src/main.cpp:333 msgid "" "Exported area in SVG user units (default is the page; 0,0 is lower-left " "corner)" @@ -11137,28 +10970,28 @@ msgstr "" "Exportierter Bereich in SVG-Benutzereinheiten (Vorgabe: gesamte " "Zeichenfläche, »0,0« ist die untere linke Ecke)" -#: ../src/main.cpp:316 +#: ../src/main.cpp:334 msgid "x0:y0:x1:y1" msgstr "X0:Y0:X1:Y1" -#: ../src/main.cpp:320 +#: ../src/main.cpp:338 msgid "Exported area is the entire drawing (not page)" msgstr "" "Exportierter Bereich ist die gesamte Zeichnung, nicht die Zeichenfläche" -#: ../src/main.cpp:325 +#: ../src/main.cpp:343 msgid "Exported area is the entire page" msgstr "Exportierter Bereich ist die gesamte Zeichenfläche" -#: ../src/main.cpp:330 +#: ../src/main.cpp:348 msgid "Only for PS/EPS/PDF, sets margin in mm around exported area (default 0)" msgstr "" -#: ../src/main.cpp:331 ../src/main.cpp:373 +#: ../src/main.cpp:349 ../src/main.cpp:391 msgid "VALUE" msgstr "WERT" -#: ../src/main.cpp:335 +#: ../src/main.cpp:353 msgid "" "Snap the bitmap export area outwards to the nearest integer values (in SVG " "user units)" @@ -11166,101 +10999,101 @@ msgstr "" "Die Fläche für den Export einer Bitmap nach außen auf die nächsten " "Ganzzahlen aufrunden (in SVG-Benutzereinheiten)" -#: ../src/main.cpp:340 +#: ../src/main.cpp:358 msgid "The width of exported bitmap in pixels (overrides export-dpi)" msgstr "Breite der erzeugten Bitmap in Pixeln (überschreibt Export-dpi)" -#: ../src/main.cpp:341 +#: ../src/main.cpp:359 msgid "WIDTH" msgstr "BREITE" -#: ../src/main.cpp:345 +#: ../src/main.cpp:363 msgid "The height of exported bitmap in pixels (overrides export-dpi)" msgstr "Höhe der erzeugten Bitmap in Pixeln (überschreibt Export-dpi)" -#: ../src/main.cpp:346 +#: ../src/main.cpp:364 msgid "HEIGHT" msgstr "HÖHE" -#: ../src/main.cpp:350 +#: ../src/main.cpp:368 msgid "The ID of the object to export" msgstr "Kennung des zu exportierenden Objektes" -#: ../src/main.cpp:351 ../src/main.cpp:461 -#: ../src/ui/dialog/inkscape-preferences.cpp:1485 +#: ../src/main.cpp:369 ../src/main.cpp:479 +#: ../src/ui/dialog/inkscape-preferences.cpp:1489 msgid "ID" msgstr "Kennung" #. TRANSLATORS: this means: "Only export the object whose id is given in --export-id". #. See "man inkscape" for details. -#: ../src/main.cpp:357 +#: ../src/main.cpp:375 msgid "" "Export just the object with export-id, hide all others (only with export-id)" msgstr "" "Nur das Objekt mit der angegebenen Export-ID exportieren, alle anderen " "auslassen" -#: ../src/main.cpp:362 +#: ../src/main.cpp:380 msgid "Use stored filename and DPI hints when exporting (only with export-id)" msgstr "" "Verwende gespeicherten Dateinamen und DPI-Hinweise zum Exportieren (nur mit " "Export-ID)" -#: ../src/main.cpp:367 +#: ../src/main.cpp:385 msgid "Background color of exported bitmap (any SVG-supported color string)" msgstr "" "Hintergrundfarbe der exportierten Bitmap (jede von SVG unterstützte " "Farbzeichenkette)" -#: ../src/main.cpp:368 +#: ../src/main.cpp:386 msgid "COLOR" msgstr "FARBE" -#: ../src/main.cpp:372 +#: ../src/main.cpp:390 msgid "Background opacity of exported bitmap (either 0.0 to 1.0, or 1 to 255)" msgstr "" "Hintergrunddeckkraft der exportierten Bitmap (0,0 bis 1,0 oder 1 bis 255)" -#: ../src/main.cpp:377 +#: ../src/main.cpp:395 msgid "Export document to plain SVG file (no sodipodi or inkscape namespaces)" msgstr "" "Dokument in reine SVG-Datei exportieren (ohne Sodipodi- oder Inkscape-" "Namensräume)" -#: ../src/main.cpp:382 +#: ../src/main.cpp:400 msgid "Export document to a PS file" msgstr "Das Dokument in eine PS-Datei exportieren" -#: ../src/main.cpp:387 +#: ../src/main.cpp:405 msgid "Export document to an EPS file" msgstr "Das Dokument in eine EPS-Datei exportieren" -#: ../src/main.cpp:392 +#: ../src/main.cpp:410 msgid "" "Choose the PostScript Level used to export. Possible choices are 2 (the " "default) and 3" msgstr "" -#: ../src/main.cpp:394 +#: ../src/main.cpp:412 msgid "PS Level" msgstr "PS Level" -#: ../src/main.cpp:398 +#: ../src/main.cpp:416 msgid "Export document to a PDF file" msgstr "Das Dokument in eine PDF-Datei exportieren" #. TRANSLATORS: "--export-pdf-version" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:404 +#: ../src/main.cpp:422 msgid "" "Export PDF to given version. (hint: make sure to input the exact string " "found in the PDF export dialog, e.g. \"PDF 1.4\" which is PDF-a conformant)" msgstr "" -#: ../src/main.cpp:405 +#: ../src/main.cpp:423 msgid "PDF_VERSION" msgstr "PDF_VERSION" -#: ../src/main.cpp:409 +#: ../src/main.cpp:427 msgid "" "Export PDF/PS/EPS without text. Besides the PDF/PS/EPS, a LaTeX file is " "exported, putting the text on top of the PDF/PS/EPS file. Include the result " @@ -11270,22 +11103,22 @@ msgstr "" "exportiert, die den Text oben auf die PDF/PS/EPS Datei legt. Einbinden des " "Ergebnisses in Latex mit: \\input{latexfile.tex}" -#: ../src/main.cpp:415 +#: ../src/main.cpp:433 msgid "Export document to an Enhanced Metafile (EMF) File" msgstr "Das Dokument in eine EMF-Datei exportieren" -#: ../src/main.cpp:421 +#: ../src/main.cpp:439 msgid "Convert text object to paths on export (PS, EPS, PDF, SVG)" msgstr "Textelemente beim Export (PS, EPS, PDF, SVG) in Pfade umwandeln " -#: ../src/main.cpp:426 +#: ../src/main.cpp:444 msgid "" "Render filtered objects without filters, instead of rasterizing (PS, EPS, " "PDF)" msgstr "Objekte ohne Filter zeichnen, statt Rasterisierung (PS, EPS, PDF)" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:432 +#: ../src/main.cpp:450 msgid "" "Query the X coordinate of the drawing or, if specified, of the object with --" "query-id" @@ -11294,7 +11127,7 @@ msgstr "" "Objektes" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:438 +#: ../src/main.cpp:456 msgid "" "Query the Y coordinate of the drawing or, if specified, of the object with --" "query-id" @@ -11303,7 +11136,7 @@ msgstr "" "Objektes" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:444 +#: ../src/main.cpp:462 msgid "" "Query the width of the drawing or, if specified, of the object with --query-" "id" @@ -11312,55 +11145,69 @@ msgstr "" "Objektes" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:450 +#: ../src/main.cpp:468 msgid "" "Query the height of the drawing or, if specified, of the object with --query-" "id" msgstr "" "Abfragen der Höhe der Zeichnung oder des mit --query-id angegebenen Objektes" -#: ../src/main.cpp:455 +#: ../src/main.cpp:473 msgid "List id,x,y,w,h for all objects" msgstr "id, x, y, w und h für alle Objekte auflisten" -#: ../src/main.cpp:460 +#: ../src/main.cpp:478 msgid "The ID of the object whose dimensions are queried" msgstr "Objekt-ID-Kennung, dessen Abmessungen abgefragt werden" #. TRANSLATORS: this option makes Inkscape print the name (path) of the extension directory -#: ../src/main.cpp:466 +#: ../src/main.cpp:484 msgid "Print out the extension directory and exit" msgstr "Erweiterungsverzeichnis ausgeben und beenden" -#: ../src/main.cpp:471 +#: ../src/main.cpp:489 msgid "Remove unused definitions from the defs section(s) of the document" msgstr "Unbenutzte Elemente aus den <defs> des Dokuments entfernen" -#: ../src/main.cpp:476 +#: ../src/main.cpp:495 +msgid "Enter a listening loop for D-Bus messages in console mode" +msgstr "" + +#: ../src/main.cpp:500 +msgid "" +"Specify the D-Bus bus name to listen for messages on (default is org." +"inkscape)" +msgstr "" + +#: ../src/main.cpp:501 +msgid "BUS-NAME" +msgstr "BUS-NAME" + +#: ../src/main.cpp:506 msgid "List the IDs of all the verbs in Inkscape" msgstr "Liste die Kennungen von allen Verben in Inkscape" -#: ../src/main.cpp:481 +#: ../src/main.cpp:511 msgid "Verb to call when Inkscape opens." msgstr "Aufzurufendes Verb wenn Inkscape startet." -#: ../src/main.cpp:482 +#: ../src/main.cpp:512 msgid "VERB-ID" msgstr "VERB-ID" -#: ../src/main.cpp:486 +#: ../src/main.cpp:516 msgid "Object ID to select when Inkscape opens." msgstr "Auszuwählende Objekt-Kennung wenn Inkscape startet." -#: ../src/main.cpp:487 +#: ../src/main.cpp:517 msgid "OBJECT-ID" msgstr "OBJECT-ID" -#: ../src/main.cpp:491 +#: ../src/main.cpp:521 msgid "Start Inkscape in interactive shell mode." msgstr "Inkscape in interaktivem Konsolenmodus starten." -#: ../src/main.cpp:835 ../src/main.cpp:1192 +#: ../src/main.cpp:868 ../src/main.cpp:1256 msgid "" "[OPTIONS...] [FILE...]\n" "\n" @@ -11381,11 +11228,11 @@ msgstr "_Neu" #. " \n" #. " \n" -#: ../src/menus-skeleton.h:43 ../src/verbs.cpp:2575 ../src/verbs.cpp:2581 +#: ../src/menus-skeleton.h:43 ../src/verbs.cpp:2629 ../src/verbs.cpp:2635 msgid "_Edit" msgstr "_Bearbeiten" -#: ../src/menus-skeleton.h:53 ../src/verbs.cpp:2341 +#: ../src/menus-skeleton.h:53 ../src/verbs.cpp:2395 msgid "Paste Si_ze" msgstr "_Größe einfügen" @@ -11423,47 +11270,46 @@ msgstr "Farb-Anzeigemodus" msgid "Sh_ow/Hide" msgstr "Anzeigen/Ausblenden" -#. " \n" #. Not quite ready to be in the menus. #. " \n" -#: ../src/menus-skeleton.h:158 +#: ../src/menus-skeleton.h:157 msgid "_Layer" msgstr "_Ebene" -#: ../src/menus-skeleton.h:182 +#: ../src/menus-skeleton.h:181 msgid "_Object" msgstr "_Objekt" -#: ../src/menus-skeleton.h:190 +#: ../src/menus-skeleton.h:189 msgid "Cli_p" msgstr "Ausschneide_pfad" -#: ../src/menus-skeleton.h:194 +#: ../src/menus-skeleton.h:193 msgid "Mas_k" msgstr "_Maskierung" -#: ../src/menus-skeleton.h:198 +#: ../src/menus-skeleton.h:197 msgid "Patter_n" msgstr "M_uster" -#: ../src/menus-skeleton.h:222 +#: ../src/menus-skeleton.h:221 msgid "_Path" msgstr "_Pfad" # !!! -#: ../src/menus-skeleton.h:267 +#: ../src/menus-skeleton.h:266 msgid "Filter_s" msgstr "_Filter" -#: ../src/menus-skeleton.h:273 +#: ../src/menus-skeleton.h:272 msgid "Exte_nsions" msgstr "E_rweiterungen" -#: ../src/menus-skeleton.h:279 +#: ../src/menus-skeleton.h:278 msgid "_Help" msgstr "_Hilfe" -#: ../src/menus-skeleton.h:283 +#: ../src/menus-skeleton.h:282 msgid "Tutorials" msgstr "Einführungen" @@ -11681,69 +11527,69 @@ msgstr "Zerlegen" msgid "No path(s) to break apart in the selection." msgstr "Kein Pfad ausgewählt, der zerlegt werden könnte." -#: ../src/path-chemistry.cpp:303 +#: ../src/path-chemistry.cpp:301 msgid "Select object(s) to convert to path." msgstr "Objekte auswählen, die in einen Pfad umgewandelt werden sollen." -#: ../src/path-chemistry.cpp:309 +#: ../src/path-chemistry.cpp:307 msgid "Converting objects to paths..." msgstr "Wandle Objekte in Pfade um..." -#: ../src/path-chemistry.cpp:331 +#: ../src/path-chemistry.cpp:329 msgid "Object to path" msgstr "Objekt in Pfad umwandeln" -#: ../src/path-chemistry.cpp:333 +#: ../src/path-chemistry.cpp:331 msgid "No objects to convert to path in the selection." msgstr "" "Keine Objekte ausgewählt, die in einen Pfad umgewandelt werden " "könnten." -#: ../src/path-chemistry.cpp:610 +#: ../src/path-chemistry.cpp:608 msgid "Select path(s) to reverse." msgstr "Mindestens einen Pfad zum Umkehren auswählen." -#: ../src/path-chemistry.cpp:619 +#: ../src/path-chemistry.cpp:617 msgid "Reversing paths..." msgstr "Kehre Pfadrichtungen um..." -#: ../src/path-chemistry.cpp:654 +#: ../src/path-chemistry.cpp:652 msgid "Reverse path" msgstr "Pfadrichtung umkehren" -#: ../src/path-chemistry.cpp:656 +#: ../src/path-chemistry.cpp:654 msgid "No paths to reverse in the selection." msgstr "Die Auswahl enthält keine Pfade zum Umkehren." -#: ../src/pen-context.cpp:222 ../src/pencil-context.cpp:534 +#: ../src/pen-context.cpp:220 ../src/pencil-context.cpp:534 msgid "Drawing cancelled" msgstr "Zeichnen abgebrochen" # !!! make singular and plural forms -#: ../src/pen-context.cpp:460 ../src/pencil-context.cpp:259 +#: ../src/pen-context.cpp:458 ../src/pencil-context.cpp:259 msgid "Continuing selected path" msgstr "Gewählten Pfad verlängern" -#: ../src/pen-context.cpp:470 ../src/pencil-context.cpp:267 +#: ../src/pen-context.cpp:468 ../src/pencil-context.cpp:267 msgid "Creating new path" msgstr "Erzeuge neuen Pfad" -#: ../src/pen-context.cpp:472 ../src/pencil-context.cpp:270 +#: ../src/pen-context.cpp:470 ../src/pencil-context.cpp:270 msgid "Appending to selected path" msgstr "Zu ausgewähltem Pfad hinzufügen" -#: ../src/pen-context.cpp:632 +#: ../src/pen-context.cpp:630 msgid "Click or click and drag to close and finish the path." msgstr "Klick oder Klick und Ziehen, um den Pfad abzuschließen." -#: ../src/pen-context.cpp:642 +#: ../src/pen-context.cpp:640 msgid "" "Click or click and drag to continue the path from this point." msgstr "" "Klick oder Klick und Ziehen, um den Pfad von diesem Punkt aus " "fortzusetzen." -#: ../src/pen-context.cpp:1237 +#: ../src/pen-context.cpp:1240 #, c-format msgid "" "Curve segment: angle %3.2f°, distance %s; with Ctrl to " @@ -11752,7 +11598,7 @@ msgstr "" "Kurvensegment: Winkel %3.2f°, Abstand %s; Strg rastet den " "Winkel ein; Eingabe schließt den Pfad ab" -#: ../src/pen-context.cpp:1238 +#: ../src/pen-context.cpp:1241 #, c-format msgid "" "Line segment: angle %3.2f°, distance %s; with Ctrl to " @@ -11761,7 +11607,7 @@ msgstr "" "Liniensegment: Winkel %3.2f°, Abstand %s; Strg rastet den " "Winkel ein; Eingabe schließt den Pfad ab" -#: ../src/pen-context.cpp:1255 +#: ../src/pen-context.cpp:1258 #, c-format msgid "" "Curve handle: angle %3.2f°, length %s; with Ctrl to snap " @@ -11770,7 +11616,7 @@ msgstr "" "Kurvenanfasser: Winkel %3.2f°; Länge %s; Winkel mit Strg " "einrasten" -#: ../src/pen-context.cpp:1277 +#: ../src/pen-context.cpp:1280 #, c-format msgid "" "Curve handle, symmetric: angle %3.2f°, length %s; with CtrlSymmetrischer Kurvenanfasser: Winkel %3.2f°, Länge %s; Strg rastet den Winkel ein; Umschalt bewegt nur diesen Anfasser" -#: ../src/pen-context.cpp:1278 +#: ../src/pen-context.cpp:1281 #, c-format msgid "" "Curve handle: angle %3.2f°, length %s; with Ctrl to snap " @@ -11789,7 +11635,7 @@ msgstr "" "Winkel ein; Umschalt bewegt nur diesen Anfasser" # not sure here -cm- -#: ../src/pen-context.cpp:1324 +#: ../src/pen-context.cpp:1327 msgid "Drawing finished" msgstr "Zeichnen beendet" @@ -11857,7 +11703,7 @@ msgstr "Klecksig" msgid "Tracing" msgstr "Nachzeichnen" -#: ../src/preferences.cpp:132 +#: ../src/preferences.cpp:134 msgid "" "Inkscape will run with default settings, and new settings will not be saved. " msgstr "" @@ -11867,7 +11713,7 @@ msgstr "" #. the creation failed #. _reportError(Glib::ustring::compose(_("Cannot create profile directory %1."), #. Glib::filename_to_utf8(_prefs_dir)), not_saved); -#: ../src/preferences.cpp:147 +#: ../src/preferences.cpp:149 #, c-format msgid "Cannot create profile directory %s." msgstr "Kann Profilverzeichnis %s nicht anlegen." @@ -11875,7 +11721,7 @@ msgstr "Kann Profilverzeichnis %s nicht anlegen." #. The profile dir is not actually a directory #. _reportError(Glib::ustring::compose(_("%1 is not a valid directory."), #. Glib::filename_to_utf8(_prefs_dir)), not_saved); -#: ../src/preferences.cpp:165 +#: ../src/preferences.cpp:167 #, c-format msgid "%s is not a valid directory." msgstr "%s ist kein gültiges Verzeichnis." @@ -11883,27 +11729,27 @@ msgstr "%s ist kein gültiges Verzeichnis." #. The write failed. #. _reportError(Glib::ustring::compose(_("Failed to create the preferences file %1."), #. Glib::filename_to_utf8(_prefs_filename)), not_saved); -#: ../src/preferences.cpp:176 +#: ../src/preferences.cpp:178 #, c-format msgid "Failed to create the preferences file %s." msgstr "Fehler beim Erstellen der Einstellungs-Datei %s." -#: ../src/preferences.cpp:212 +#: ../src/preferences.cpp:214 #, c-format msgid "The preferences file %s is not a regular file." msgstr "Die Einstellungs-Datei %s ist keine reguläre Datei." -#: ../src/preferences.cpp:222 +#: ../src/preferences.cpp:224 #, c-format msgid "The preferences file %s could not be read." msgstr "Datei %s konnte nicht gelesen werden." -#: ../src/preferences.cpp:233 +#: ../src/preferences.cpp:235 #, c-format msgid "The preferences file %s is not a valid XML document." msgstr "Die Vorgabendatei %s is kein gültiges XML-Dokument" -#: ../src/preferences.cpp:242 +#: ../src/preferences.cpp:244 #, c-format msgid "The file %s is not a valid Inkscape preferences file." msgstr "%s ist keine gültige Einstellungsdatei." @@ -11947,167 +11793,163 @@ msgid "Open Font License" msgstr "Open-Font-Lizenz" #. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/linking.html#AElementXLinkTitleAttribute -#: ../src/rdf.cpp:232 ../src/ui/dialog/object-attributes.cpp:57 +#: ../src/rdf.cpp:235 ../src/ui/dialog/object-attributes.cpp:57 msgid "Title:" msgstr "Title:" -#: ../src/rdf.cpp:233 -msgid "Name by which this document is formally known" -msgstr "Name, unter dem dieses Dokument formal bekannt ist." +#: ../src/rdf.cpp:236 +msgid "A name given to the resource" +msgstr "" -#: ../src/rdf.cpp:235 +#: ../src/rdf.cpp:238 msgid "Date:" msgstr "Datum:" -#: ../src/rdf.cpp:236 -msgid "Date associated with the creation of this document (YYYY-MM-DD)" +#: ../src/rdf.cpp:239 +msgid "" +"A point or period of time associated with an event in the lifecycle of the " +"resource" msgstr "" -"Datum, das mit der Erstellung dieses Dokuments assoziiert ist (JJJJ-MM-TT)" -#: ../src/rdf.cpp:238 ../share/extensions/webslicer_create_rect.inx.h:3 +#: ../src/rdf.cpp:241 ../share/extensions/webslicer_create_rect.inx.h:3 msgid "Format:" msgstr "Format:" -#: ../src/rdf.cpp:239 -msgid "The physical or digital manifestation of this document (MIME type)" +#: ../src/rdf.cpp:242 +msgid "The file format, physical medium, or dimensions of the resource" msgstr "" -"Die physische oder digitale Erscheinungsform dieses Dokuments (MIME-Typ)" -#: ../src/rdf.cpp:242 -msgid "Type of document (DCMI Type)" -msgstr "Typ des Dokuments (DCMI-Typ)." +#: ../src/rdf.cpp:245 +#, fuzzy +msgid "The nature or genre of the resource" +msgstr "Die Einheiten, die für die Messungen verwendet werden" # !!! Urheber? -#: ../src/rdf.cpp:245 +#: ../src/rdf.cpp:248 msgid "Creator:" msgstr "Autor/Urheber:" -#: ../src/rdf.cpp:246 -msgid "" -"Name of entity primarily responsible for making the content of this document" +#: ../src/rdf.cpp:249 +#, fuzzy +msgid "An entity primarily responsible for making the resource" msgstr "" "Name der Person oder Organisation, die hauptsächlich für die Erstellung des " "Dokumenteninhalts verantwortlich ist." -#: ../src/rdf.cpp:248 +#: ../src/rdf.cpp:251 msgid "Rights:" msgstr "Rechte:" -#: ../src/rdf.cpp:249 -msgid "" -"Name of entity with rights to the Intellectual Property of this document" +#: ../src/rdf.cpp:252 +msgid "Information about rights held in and over the resource" msgstr "" -"Name der Person oder Organisation, welche die Urheberrechte (Intellectual " -"Property) an diesem Dokument hält." -#: ../src/rdf.cpp:251 +#: ../src/rdf.cpp:254 msgid "Publisher:" msgstr "Herausgeber:" -#: ../src/rdf.cpp:252 -msgid "Name of entity responsible for making this document available" +#: ../src/rdf.cpp:255 +#, fuzzy +msgid "An entity responsible for making the resource available" msgstr "" "Name der Person oder Organisation, die für die Verfügbarmachung des " "Dokuments verantwortlich ist." -#: ../src/rdf.cpp:255 +#: ../src/rdf.cpp:258 msgid "Identifier:" msgstr "Identifikator:" -#: ../src/rdf.cpp:256 -msgid "Unique URI to reference this document" -msgstr "Eindeutige URI, um dieses Dokument zu referenzieren." - #: ../src/rdf.cpp:259 -msgid "Unique URI to reference the source of this document" -msgstr "Eindeutige URI, um die Quelle dieses Dokuments zu referenzieren." +msgid "An unambiguous reference to the resource within a given context" +msgstr "" + +#: ../src/rdf.cpp:262 +msgid "A related resource from which the described resource is derived" +msgstr "" -#: ../src/rdf.cpp:261 +#: ../src/rdf.cpp:264 msgid "Relation:" msgstr "Beziehung:" -#: ../src/rdf.cpp:262 -msgid "Unique URI to a related document" -msgstr "Eindeutige URI zu einem verwandten Dokument." +#: ../src/rdf.cpp:265 +#, fuzzy +msgid "A related resource" +msgstr "Mischquelle:" -#: ../src/rdf.cpp:264 ../src/ui/dialog/inkscape-preferences.cpp:1837 +#: ../src/rdf.cpp:267 ../src/ui/dialog/inkscape-preferences.cpp:1841 msgid "Language:" msgstr "Sprache:" -# !!! pull parenthesis inside sentenc -#: ../src/rdf.cpp:265 -msgid "" -"Two-letter language tag with optional subtags for the language of this " -"document (e.g. 'en-GB')" -msgstr "" -"Zweibuchstabiges Sprachsymbol mit optionalen Untersymbolen für die Sprache " -"dieses Dokuments (z.B. »de-CH«)" +#: ../src/rdf.cpp:268 +#, fuzzy +msgid "A language of the resource" +msgstr "Winkel der ersten Kopie" -#: ../src/rdf.cpp:267 +#: ../src/rdf.cpp:270 msgid "Keywords:" msgstr "Schlagworte:" -#: ../src/rdf.cpp:268 -msgid "" -"The topic of this document as comma-separated key words, phrases, or " -"classifications" -msgstr "" -"Das Thema dieses Dokuments als Schlagworte, Phrasen oder Klassifikation." +#: ../src/rdf.cpp:271 +#, fuzzy +msgid "The topic of the resource" +msgstr "Oberkante der Quelle" # !!! not the best translation #. TRANSLATORS: "Coverage": the spatial or temporal characteristics of the content. #. For info, see Appendix D of http://www.w3.org/TR/1998/WD-rdf-schema-19980409/ -#: ../src/rdf.cpp:272 +#: ../src/rdf.cpp:275 msgid "Coverage:" msgstr "Umfang:" -#: ../src/rdf.cpp:273 -msgid "Extent or scope of this document" -msgstr "Umfang oder Abdeckungsbereich dieses Dokuments." - #: ../src/rdf.cpp:276 +msgid "" +"The spatial or temporal topic of the resource, the spatial applicability of " +"the resource, or the jurisdiction under which the resource is relevant" +msgstr "" + +#: ../src/rdf.cpp:279 msgid "Description:" msgstr "Beschreibung:" -#: ../src/rdf.cpp:277 -msgid "A short account of the content of this document" +#: ../src/rdf.cpp:280 +#, fuzzy +msgid "An account of the resource" msgstr "Kurzer Abriß des Inhalts dieses Dokuments." #. FIXME: need to handle 1 agent per line of input -#: ../src/rdf.cpp:281 +#: ../src/rdf.cpp:284 msgid "Contributors:" msgstr "Mitwirkende:" -#: ../src/rdf.cpp:282 -msgid "" -"Names of entities responsible for making contributions to the content of " -"this document" +#: ../src/rdf.cpp:285 +#, fuzzy +msgid "An entity responsible for making contributions to the resource" msgstr "" "Namen von Personen oder Organisationen, die am Inhalt dieses Dokuments " "mitgewirkt haben." #. TRANSLATORS: URL to a page that defines the license for the document -#: ../src/rdf.cpp:286 +#: ../src/rdf.cpp:289 msgid "URI:" msgstr "URI:" #. TRANSLATORS: this is where you put a URL to a page that defines the license -#: ../src/rdf.cpp:288 +#: ../src/rdf.cpp:291 msgid "URI to this document's license's namespace definition" msgstr "" "URI, unter dem die Lizenzdefinition (license namespace) dieses Dokuments zu " "finden ist." #. TRANSLATORS: fragment of XML representing the license of the document -#: ../src/rdf.cpp:292 +#: ../src/rdf.cpp:295 msgid "Fragment:" msgstr "Fragment:" -#: ../src/rdf.cpp:293 +#: ../src/rdf.cpp:296 msgid "XML fragment for the RDF 'License' section" msgstr "XML-Fragment für den RDF-Abschnitt »Lizenz«." -#: ../src/rect-context.cpp:352 +#: ../src/rect-context.cpp:351 msgid "" "Ctrl: make square or integer-ratio rect, lock a rounded corner " "circular" @@ -12115,7 +11957,7 @@ msgstr "" "Strg: Quadrat oder Rechteck mit ganzzahligem Kanten-Längenverhältnis, " "abgerundete Kanten mit einheitlichen Radien" -#: ../src/rect-context.cpp:505 +#: ../src/rect-context.cpp:506 #, c-format msgid "" "Rectangle: %s × %s (constrained to ratio %d:%d); with ShiftRechteck: %s × %s (beschränkt auf Seitenverhältnis %d:%d); " "Umschalt - Rechteck vom Zentrum aus zeichnen" -#: ../src/rect-context.cpp:508 +#: ../src/rect-context.cpp:509 #, c-format msgid "" "Rectangle: %s × %s (constrained to golden ratio 1.618 : 1); with " @@ -12133,7 +11975,7 @@ msgstr "" "Rechteck: %s × %s (beschränkt auf Goldenen Schnitt 1,618 : 1); " "Umschalt - Rechteck vom Zentrum aus zeichnen" -#: ../src/rect-context.cpp:510 +#: ../src/rect-context.cpp:511 #, c-format msgid "" "Rectangle: %s × %s (constrained to golden ratio 1 : 1.618); with " @@ -12142,7 +11984,7 @@ msgstr "" "Rechteck: %s × %s (beschränkt auf Goldenen Schnitt 1 : 1,618); " "Umschalt - Rechteck vom Zentrum aus zeichnen" -#: ../src/rect-context.cpp:514 +#: ../src/rect-context.cpp:515 #, c-format msgid "" "Rectangle: %s × %s; with Ctrl to make square or integer-" @@ -12151,7 +11993,7 @@ msgstr "" "Rechteck: %s × %s; Strg erzeugt Quadrat oder ganzzahliges " "Höhen/Breitenverhältnis; Umschalt - Rechteck vom Zentrum aus zeichnen" -#: ../src/rect-context.cpp:539 +#: ../src/rect-context.cpp:540 msgid "Create rectangle" msgstr "Rechteck erzeugen" @@ -12159,12 +12001,12 @@ msgstr "Rechteck erzeugen" msgid "Fixup broken links" msgstr "Defekte Links fixen" -#: ../src/select-context.cpp:181 +#: ../src/select-context.cpp:183 msgid "Click selection to toggle scale/rotation handles" msgstr "" "Klicken Sie auf die Auswahl, um zwischen Skalieren und Rotieren umzuschalten" -#: ../src/select-context.cpp:182 +#: ../src/select-context.cpp:184 msgid "" "No objects selected. Click, Shift+click, Alt+scroll mouse on top of objects, " "or drag around objects to select." @@ -12173,12 +12015,12 @@ msgstr "" "auszuwählen." # !!! -#: ../src/select-context.cpp:241 +#: ../src/select-context.cpp:243 msgid "Move canceled." msgstr "Verschieben abgebrochen." # !!! -#: ../src/select-context.cpp:249 +#: ../src/select-context.cpp:251 msgid "Selection canceled." msgstr "Auswahl abgebrochen." @@ -12222,59 +12064,59 @@ msgstr "" msgid "Selected object is not a group. Cannot enter." msgstr "Ausgewähltes Objekt ist keine Gruppe - kann diese nicht betreten." -#: ../src/selection-chemistry.cpp:377 +#: ../src/selection-chemistry.cpp:392 msgid "Delete text" msgstr "Text löschen" -#: ../src/selection-chemistry.cpp:385 +#: ../src/selection-chemistry.cpp:400 msgid "Nothing was deleted." msgstr "Es wurde nichts gelöscht." -#: ../src/selection-chemistry.cpp:404 ../src/text-context.cpp:1030 +#: ../src/selection-chemistry.cpp:419 ../src/text-context.cpp:1031 #: ../src/ui/dialog/calligraphic-profile-rename.cpp:75 -#: ../src/ui/dialog/swatches.cpp:278 ../src/widgets/erasor-toolbar.cpp:114 +#: ../src/ui/dialog/swatches.cpp:279 ../src/widgets/eraser-toolbar.cpp:110 #: ../src/widgets/gradient-toolbar.cpp:1193 #: ../src/widgets/gradient-toolbar.cpp:1207 #: ../src/widgets/gradient-toolbar.cpp:1221 -#: ../src/widgets/node-toolbar.cpp:410 +#: ../src/widgets/node-toolbar.cpp:413 msgid "Delete" msgstr "Löschen" -#: ../src/selection-chemistry.cpp:432 +#: ../src/selection-chemistry.cpp:447 msgid "Select object(s) to duplicate." msgstr "Objekt(e) zum Duplizieren auswählen." -#: ../src/selection-chemistry.cpp:541 +#: ../src/selection-chemistry.cpp:556 msgid "Delete all" msgstr "Alles löschen" -#: ../src/selection-chemistry.cpp:737 +#: ../src/selection-chemistry.cpp:746 msgid "Select some objects to group." msgstr "Einige Objekte zum Gruppieren auswählen." -#: ../src/selection-chemistry.cpp:752 ../src/selection-describer.cpp:54 +#: ../src/selection-chemistry.cpp:761 ../src/selection-describer.cpp:55 msgid "Group" msgstr "Gruppieren" -#: ../src/selection-chemistry.cpp:766 +#: ../src/selection-chemistry.cpp:770 msgid "Select a group to ungroup." msgstr "" "Eine Gruppe auswählen, deren Gruppierung aufgehoben werden soll." -#: ../src/selection-chemistry.cpp:809 +#: ../src/selection-chemistry.cpp:813 msgid "No groups to ungroup in the selection." msgstr "Keine Gruppe zum Aufheben in dieser Auswahl." -#: ../src/selection-chemistry.cpp:815 ../src/sp-item-group.cpp:479 +#: ../src/selection-chemistry.cpp:819 ../src/sp-item-group.cpp:479 msgid "Ungroup" msgstr "Gruppierung aufheben" -#: ../src/selection-chemistry.cpp:901 +#: ../src/selection-chemistry.cpp:900 msgid "Select object(s) to raise." msgstr "Objekte zum Anheben auswählen." -#: ../src/selection-chemistry.cpp:907 ../src/selection-chemistry.cpp:967 -#: ../src/selection-chemistry.cpp:1000 ../src/selection-chemistry.cpp:1064 +#: ../src/selection-chemistry.cpp:906 ../src/selection-chemistry.cpp:962 +#: ../src/selection-chemistry.cpp:990 ../src/selection-chemistry.cpp:1050 msgid "" "You cannot raise/lower objects from different groups or layers." msgstr "" @@ -12282,214 +12124,214 @@ msgstr "" "angehoben oder abgesenkt werden." #. TRANSLATORS: "Raise" means "to raise an object" in the undo history -#: ../src/selection-chemistry.cpp:947 +#: ../src/selection-chemistry.cpp:946 msgctxt "Undo action" msgid "Raise" msgstr "Anheben" -#: ../src/selection-chemistry.cpp:959 +#: ../src/selection-chemistry.cpp:954 msgid "Select object(s) to raise to top." msgstr "" "Objekt(e) auswählen, die in den Vordergrund angehoben werden sollen." -#: ../src/selection-chemistry.cpp:982 +#: ../src/selection-chemistry.cpp:977 msgid "Raise to top" msgstr "Nach ganz oben anheben" -#: ../src/selection-chemistry.cpp:994 +#: ../src/selection-chemistry.cpp:984 msgid "Select object(s) to lower." msgstr "Objekt(e) zum Absenken auswählen." -#: ../src/selection-chemistry.cpp:1044 +#: ../src/selection-chemistry.cpp:1034 ../src/widgets/ruler.cpp:209 msgid "Lower" msgstr "Absenken" -#: ../src/selection-chemistry.cpp:1056 +#: ../src/selection-chemistry.cpp:1042 msgid "Select object(s) to lower to bottom." msgstr "" "Objekt(e) auswählen, die ganz in den Hintergrund abgesenkt werden " "sollen." -#: ../src/selection-chemistry.cpp:1091 +#: ../src/selection-chemistry.cpp:1077 msgid "Lower to bottom" msgstr "Nach ganz unten absenken" # !!! just make the menu item insensitive -#: ../src/selection-chemistry.cpp:1098 +#: ../src/selection-chemistry.cpp:1084 msgid "Nothing to undo." msgstr "Es gibt nichts rückgängig zu machen." # # !!! just make the menu item insensitive -#: ../src/selection-chemistry.cpp:1106 +#: ../src/selection-chemistry.cpp:1092 msgid "Nothing to redo." msgstr "Es gibt nichts wiederherzustellen." -#: ../src/selection-chemistry.cpp:1167 +#: ../src/selection-chemistry.cpp:1153 msgid "Paste" msgstr "Einfügen" -#: ../src/selection-chemistry.cpp:1175 +#: ../src/selection-chemistry.cpp:1161 msgid "Paste style" msgstr "Stil anwenden" -#: ../src/selection-chemistry.cpp:1185 +#: ../src/selection-chemistry.cpp:1171 msgid "Paste live path effect" msgstr "Pfad-Effekt einfügen" -#: ../src/selection-chemistry.cpp:1206 +#: ../src/selection-chemistry.cpp:1192 msgid "Select object(s) to remove live path effects from." msgstr "Objekt(e) auswählen, um den Pfad-Effekt zu entfernen." -#: ../src/selection-chemistry.cpp:1218 +#: ../src/selection-chemistry.cpp:1204 msgid "Remove live path effect" msgstr "Pfad-Effekt entfernen" -#: ../src/selection-chemistry.cpp:1229 +#: ../src/selection-chemistry.cpp:1215 msgid "Select object(s) to remove filters from." msgstr "Text auswählen, um Filter zu entfernen." -#: ../src/selection-chemistry.cpp:1239 -#: ../src/ui/dialog/filter-effects-dialog.cpp:1448 +#: ../src/selection-chemistry.cpp:1225 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1461 msgid "Remove filter" msgstr "Filter entfernen" -#: ../src/selection-chemistry.cpp:1248 +#: ../src/selection-chemistry.cpp:1234 msgid "Paste size" msgstr "Größe einfügen" -#: ../src/selection-chemistry.cpp:1257 +#: ../src/selection-chemistry.cpp:1243 msgid "Paste size separately" msgstr "Größe getrennt einfügen" -#: ../src/selection-chemistry.cpp:1267 +#: ../src/selection-chemistry.cpp:1253 msgid "Select object(s) to move to the layer above." msgstr "" "Objekt(e) auswählen, welche eine Ebene weiter nach oben verschoben " "werden sollen." -#: ../src/selection-chemistry.cpp:1293 +#: ../src/selection-chemistry.cpp:1279 msgid "Raise to next layer" msgstr "Auf nächste Ebene anheben" -#: ../src/selection-chemistry.cpp:1300 +#: ../src/selection-chemistry.cpp:1286 msgid "No more layers above." msgstr "Keine weiteren Ebenen über dieser." -#: ../src/selection-chemistry.cpp:1312 +#: ../src/selection-chemistry.cpp:1298 msgid "Select object(s) to move to the layer below." msgstr "" "Objekt(e) auswählen, welche in die Ebene darunter verschoben werden " "sollen." -#: ../src/selection-chemistry.cpp:1338 +#: ../src/selection-chemistry.cpp:1324 msgid "Lower to previous layer" msgstr "Zur nächsten Ebene absenken" -#: ../src/selection-chemistry.cpp:1345 +#: ../src/selection-chemistry.cpp:1331 msgid "No more layers below." msgstr "Keine weiteren Ebenen unter dieser." -#: ../src/selection-chemistry.cpp:1357 +#: ../src/selection-chemistry.cpp:1343 msgid "Select object(s) to move." msgstr "Objekt(e) zum Verschieben auswählen." -#: ../src/selection-chemistry.cpp:1374 ../src/verbs.cpp:2518 +#: ../src/selection-chemistry.cpp:1360 ../src/verbs.cpp:2572 msgid "Move selection to layer" msgstr "Auswahl zur Ebene verschieben" -#: ../src/selection-chemistry.cpp:1598 +#: ../src/selection-chemistry.cpp:1584 msgid "Remove transform" msgstr "Transformationen zurücksetzen" -#: ../src/selection-chemistry.cpp:1701 +#: ../src/selection-chemistry.cpp:1687 msgid "Rotate 90° CCW" msgstr "Um 90° entgegen Uhrzeigersinn rotieren" -#: ../src/selection-chemistry.cpp:1701 +#: ../src/selection-chemistry.cpp:1687 msgid "Rotate 90° CW" msgstr "Um 90° im Uhrzeigersinn rotieren" -#: ../src/selection-chemistry.cpp:1722 ../src/seltrans.cpp:485 -#: ../src/ui/dialog/transformation.cpp:892 +#: ../src/selection-chemistry.cpp:1708 ../src/seltrans.cpp:468 +#: ../src/ui/dialog/transformation.cpp:893 msgid "Rotate" msgstr "Drehen" -#: ../src/selection-chemistry.cpp:2101 +#: ../src/selection-chemistry.cpp:2087 msgid "Rotate by pixels" msgstr "Um Pixel rotieren" -#: ../src/selection-chemistry.cpp:2131 ../src/seltrans.cpp:482 -#: ../src/ui/dialog/transformation.cpp:867 +#: ../src/selection-chemistry.cpp:2117 ../src/seltrans.cpp:465 +#: ../src/ui/dialog/transformation.cpp:868 #: ../share/extensions/interp_att_g.inx.h:12 msgid "Scale" msgstr "Skalieren" -#: ../src/selection-chemistry.cpp:2156 +#: ../src/selection-chemistry.cpp:2142 msgid "Scale by whole factor" msgstr "Um einen ganzzahligen Faktor skalieren" -#: ../src/selection-chemistry.cpp:2171 +#: ../src/selection-chemistry.cpp:2157 msgid "Move vertically" msgstr "Vertikal verschieben" -#: ../src/selection-chemistry.cpp:2174 +#: ../src/selection-chemistry.cpp:2160 msgid "Move horizontally" msgstr "Horizontal verschieben" -#: ../src/selection-chemistry.cpp:2177 ../src/selection-chemistry.cpp:2203 -#: ../src/seltrans.cpp:479 ../src/ui/dialog/transformation.cpp:806 +#: ../src/selection-chemistry.cpp:2163 ../src/selection-chemistry.cpp:2189 +#: ../src/seltrans.cpp:462 ../src/ui/dialog/transformation.cpp:807 msgid "Move" msgstr "Verschieben" -#: ../src/selection-chemistry.cpp:2197 +#: ../src/selection-chemistry.cpp:2183 msgid "Move vertically by pixels" msgstr "Vertikal um einzelne Pixel verschieben" -#: ../src/selection-chemistry.cpp:2200 +#: ../src/selection-chemistry.cpp:2186 msgid "Move horizontally by pixels" msgstr "Horizontal um einzelne Pixel verschieben" -#: ../src/selection-chemistry.cpp:2332 +#: ../src/selection-chemistry.cpp:2318 msgid "The selection has no applied path effect." msgstr "Auf die Selektion ist kein Pfad-Effekt angewandt." -#: ../src/selection-chemistry.cpp:2535 +#: ../src/selection-chemistry.cpp:2521 msgctxt "Action" msgid "Clone" msgstr "Klone" -#: ../src/selection-chemistry.cpp:2551 +#: ../src/selection-chemistry.cpp:2537 msgid "Select clones to relink." msgstr "Klon auswählen, um wieder zu verknüpfen" -#: ../src/selection-chemistry.cpp:2558 +#: ../src/selection-chemistry.cpp:2544 msgid "Copy an object to clipboard to relink clones to." msgstr "Kopiert ein Objekt in die Ablage als Elter für Klone." -#: ../src/selection-chemistry.cpp:2582 +#: ../src/selection-chemistry.cpp:2568 msgid "No clones to relink in the selection." msgstr "" "Keine Klone in der Auswahl, deren Verknüpfung erneut gesetzt werden " "kann." -#: ../src/selection-chemistry.cpp:2585 +#: ../src/selection-chemistry.cpp:2571 msgid "Relink clone" msgstr "Klon wiederverbinden" -#: ../src/selection-chemistry.cpp:2599 +#: ../src/selection-chemistry.cpp:2585 msgid "Select clones to unlink." msgstr "Klon auswählen, dessen Verknüpfung aufgehoben werden soll." -#: ../src/selection-chemistry.cpp:2653 +#: ../src/selection-chemistry.cpp:2639 msgid "No clones to unlink in the selection." msgstr "" "Keine Klone in der Auswahl, deren Verknüpfung aufgehoben werden kann." -#: ../src/selection-chemistry.cpp:2657 +#: ../src/selection-chemistry.cpp:2643 msgid "Unlink clone" msgstr "Klonverbindung auftrennen" -#: ../src/selection-chemistry.cpp:2670 +#: ../src/selection-chemistry.cpp:2656 msgid "" "Select a clone to go to its original. Select a linked offset " "to go to its source. Select a text on path to go to the path. Select " @@ -12500,7 +12342,7 @@ msgstr "" "den Ausgangspfad zu finden. Fließtextpfad auswählen, um seinen Rahmen " "zu finden." -#: ../src/selection-chemistry.cpp:2703 +#: ../src/selection-chemistry.cpp:2689 msgid "" "Cannot find the object to select (orphaned clone, offset, textpath, " "flowed text?)" @@ -12508,7 +12350,7 @@ msgstr "" "Gesuchtes Objekt nicht gefunden - vielleicht ist der Klon, der " "verbundene Versatz, der Textpfad oder der Fließtext verwaist?" -#: ../src/selection-chemistry.cpp:2709 +#: ../src/selection-chemistry.cpp:2695 msgid "" "The object you're trying to select is not visible (it is in <" "defs>)" @@ -12516,227 +12358,227 @@ msgstr "" "Dieses Objekt kann nicht ausgewählt werden - es ist unsichtbar und " "befindet sich in <defs>" -#: ../src/selection-chemistry.cpp:2754 +#: ../src/selection-chemistry.cpp:2740 msgid "Select one path to clone." msgstr "Wähle ein Pfad zum Klonen aus." -#: ../src/selection-chemistry.cpp:2758 +#: ../src/selection-chemistry.cpp:2744 msgid "Select one path to clone." msgstr "Wähle ein Pfad zum Klonen aus." -#: ../src/selection-chemistry.cpp:2813 +#: ../src/selection-chemistry.cpp:2799 msgid "Select object(s) to convert to marker." msgstr "" "Objekt(e) auswählen, die in ein Füllmuster umgewandelt werden sollen." -#: ../src/selection-chemistry.cpp:2881 +#: ../src/selection-chemistry.cpp:2867 msgid "Objects to marker" msgstr "Objekte in Linienmarkierungen umwandeln" -#: ../src/selection-chemistry.cpp:2909 +#: ../src/selection-chemistry.cpp:2895 msgid "Select object(s) to convert to guides." msgstr "Objekt(e) auswählen, die in Führungs umgewandelt werden sollen." -#: ../src/selection-chemistry.cpp:2921 +#: ../src/selection-chemistry.cpp:2907 msgid "Objects to guides" msgstr "Objekte in Führungslinien umwandeln" -#: ../src/selection-chemistry.cpp:2940 +#: ../src/selection-chemistry.cpp:2926 #, fuzzy msgid "Select groups to convert to symbols." msgstr "Wählen Sie eine Gruppe, um zum Symbol zu konvertieren." -#: ../src/selection-chemistry.cpp:2960 +#: ../src/selection-chemistry.cpp:2946 #, fuzzy msgid "No groups converted to symbols." msgstr "Wählen Sie eine Gruppe, um zum Symbol zu konvertieren." #. Group just disappears, nothing to select. -#: ../src/selection-chemistry.cpp:2967 +#: ../src/selection-chemistry.cpp:2953 msgid "Group to symbol" msgstr "Gruppieren zum Symbol" -#: ../src/selection-chemistry.cpp:3031 +#: ../src/selection-chemistry.cpp:3017 msgid "Select a symbol to extract objects from." msgstr "Wählen Sie ein Symbol, um Objekte daraus zu entnehmen." -#: ../src/selection-chemistry.cpp:3040 +#: ../src/selection-chemistry.cpp:3026 msgid "Select only one symbol to convert to group." msgstr "" "Wählen Sie nur einSymbol aus, um es in eine Gruppe zu konvertieren." -#: ../src/selection-chemistry.cpp:3081 +#: ../src/selection-chemistry.cpp:3067 msgid "Group from symbol" msgstr "Gruppieren vom Symbol" -#: ../src/selection-chemistry.cpp:3098 +#: ../src/selection-chemistry.cpp:3084 msgid "Select object(s) to convert to pattern." msgstr "" "Objekt(e) auswählen, die in ein Füllmuster umgewandelt werden sollen." -#: ../src/selection-chemistry.cpp:3186 +#: ../src/selection-chemistry.cpp:3172 msgid "Objects to pattern" msgstr "Objekte in Füllmuster umwandeln" -#: ../src/selection-chemistry.cpp:3202 +#: ../src/selection-chemistry.cpp:3188 msgid "Select an object with pattern fill to extract objects from." msgstr "" "Ein Objekt mit Musterfüllung auswählen, um die Füllung zu extrahieren." -#: ../src/selection-chemistry.cpp:3255 +#: ../src/selection-chemistry.cpp:3241 msgid "No pattern fills in the selection." msgstr "Die Auswahl enthält keine Musterfüllung." -#: ../src/selection-chemistry.cpp:3258 +#: ../src/selection-chemistry.cpp:3244 msgid "Pattern to objects" msgstr "Füllmuster in Objekte umwandeln" -#: ../src/selection-chemistry.cpp:3349 +#: ../src/selection-chemistry.cpp:3335 msgid "Select object(s) to make a bitmap copy." msgstr "Objekt(e) auswählen, um eine Bitmap-Kopie zu erstellen." -#: ../src/selection-chemistry.cpp:3353 +#: ../src/selection-chemistry.cpp:3339 msgid "Rendering bitmap..." msgstr "Bitmap ausgeben" -#: ../src/selection-chemistry.cpp:3530 +#: ../src/selection-chemistry.cpp:3516 msgid "Create bitmap" msgstr "Bitmap erstellen" -#: ../src/selection-chemistry.cpp:3562 +#: ../src/selection-chemistry.cpp:3548 msgid "Select object(s) to create clippath or mask from." msgstr "" "Objekt(e) auswählen, um Ausschneidepfad oder Maskierung daraus zu " "erzeugen." -#: ../src/selection-chemistry.cpp:3565 +#: ../src/selection-chemistry.cpp:3551 msgid "Select mask object and object(s) to apply clippath or mask to." msgstr "" "Maskierungsobjekt und Objekt(e) auswählen, um Ausschneidepfad oder " "Maskierung darauf anzuwenden." -#: ../src/selection-chemistry.cpp:3746 +#: ../src/selection-chemistry.cpp:3732 msgid "Set clipping path" msgstr "Ausschneidepfad setzen" -#: ../src/selection-chemistry.cpp:3748 +#: ../src/selection-chemistry.cpp:3734 msgid "Set mask" msgstr "Maskierung setzen" -#: ../src/selection-chemistry.cpp:3763 +#: ../src/selection-chemistry.cpp:3749 msgid "Select object(s) to remove clippath or mask from." msgstr "" "Objekt(e) auswählen, um Ausschneidepfad oder Maskierung davon zu " "entfernen." -#: ../src/selection-chemistry.cpp:3874 +#: ../src/selection-chemistry.cpp:3860 msgid "Release clipping path" msgstr "Ausschneidepfad entfernen" -#: ../src/selection-chemistry.cpp:3876 +#: ../src/selection-chemistry.cpp:3862 msgid "Release mask" msgstr "Maskierung entfernen" -#: ../src/selection-chemistry.cpp:3895 +#: ../src/selection-chemistry.cpp:3881 msgid "Select object(s) to fit canvas to." msgstr "" "Objekt(e) auswählen, auf die die Leinwand angepasst werden soll." #. Fit Page -#: ../src/selection-chemistry.cpp:3915 ../src/verbs.cpp:2844 +#: ../src/selection-chemistry.cpp:3901 ../src/verbs.cpp:2896 msgid "Fit Page to Selection" msgstr "Seite in Auswahl einpassen" -#: ../src/selection-chemistry.cpp:3944 ../src/verbs.cpp:2846 +#: ../src/selection-chemistry.cpp:3930 ../src/verbs.cpp:2898 msgid "Fit Page to Drawing" msgstr "Seite in Zeichnungsgröße einpassen" -#: ../src/selection-chemistry.cpp:3965 ../src/verbs.cpp:2848 +#: ../src/selection-chemistry.cpp:3951 ../src/verbs.cpp:2900 msgid "Fit Page to Selection or Drawing" msgstr "Seite in Auswahl oder ganze Zeichnung einpassen" #. TRANSLATORS: "Link" means internet link (anchor) -#: ../src/selection-describer.cpp:46 +#: ../src/selection-describer.cpp:47 msgctxt "Web" msgid "Link" msgstr "Verknüpfung:" -#: ../src/selection-describer.cpp:48 +#: ../src/selection-describer.cpp:49 msgid "Circle" msgstr "Kreis" #. Ellipse -#: ../src/selection-describer.cpp:50 ../src/selection-describer.cpp:77 +#: ../src/selection-describer.cpp:51 ../src/selection-describer.cpp:78 #: ../src/ui/dialog/inkscape-preferences.cpp:403 -#: ../src/widgets/pencil-toolbar.cpp:192 +#: ../src/widgets/pencil-toolbar.cpp:187 msgid "Ellipse" msgstr "Ellipse" -#: ../src/selection-describer.cpp:52 +#: ../src/selection-describer.cpp:53 msgid "Flowed text" msgstr "Fließtext" -#: ../src/selection-describer.cpp:58 +#: ../src/selection-describer.cpp:59 msgid "Line" msgstr "Linie" -#: ../src/selection-describer.cpp:60 +#: ../src/selection-describer.cpp:61 msgid "Path" msgstr "Pfad" -#: ../src/selection-describer.cpp:62 ../src/widgets/star-toolbar.cpp:474 +#: ../src/selection-describer.cpp:63 ../src/widgets/star-toolbar.cpp:470 msgid "Polygon" msgstr "Polygon" -#: ../src/selection-describer.cpp:64 +#: ../src/selection-describer.cpp:65 msgid "Polyline" msgstr "Linienzug" #. Rectangle -#: ../src/selection-describer.cpp:66 +#: ../src/selection-describer.cpp:67 #: ../src/ui/dialog/inkscape-preferences.cpp:393 msgid "Rectangle" msgstr "Rechteck" #. 3D box -#: ../src/selection-describer.cpp:68 +#: ../src/selection-describer.cpp:69 #: ../src/ui/dialog/inkscape-preferences.cpp:398 msgid "3D Box" msgstr "3D-Box" -#: ../src/selection-describer.cpp:70 +#: ../src/selection-describer.cpp:71 msgctxt "Object" msgid "Text" msgstr "Text" -#: ../src/selection-describer.cpp:73 +#: ../src/selection-describer.cpp:74 msgctxt "Object" msgid "Symbol" msgstr "Symbol" #. TRANSLATORS: "Clone" is a noun, type of object -#: ../src/selection-describer.cpp:75 +#: ../src/selection-describer.cpp:76 msgctxt "Object" msgid "Clone" msgstr "Klone" # !!! verb or noun? -#: ../src/selection-describer.cpp:79 +#: ../src/selection-describer.cpp:80 #: ../share/extensions/gcodetools_lathe.inx.h:9 msgid "Offset path" msgstr "Pfadversatz" #. Spiral -#: ../src/selection-describer.cpp:81 +#: ../src/selection-describer.cpp:82 #: ../src/ui/dialog/inkscape-preferences.cpp:411 #: ../share/extensions/gcodetools_area.inx.h:11 msgid "Spiral" msgstr "Spirale" #. Star -#: ../src/selection-describer.cpp:83 +#: ../src/selection-describer.cpp:84 #: ../src/ui/dialog/inkscape-preferences.cpp:407 -#: ../src/widgets/star-toolbar.cpp:481 +#: ../src/widgets/star-toolbar.cpp:477 msgid "Star" msgstr "Stern" @@ -12864,19 +12706,58 @@ msgid_plural "; %d filtered objects " msgstr[0] "; %d gefiltertes Objekt" msgstr[1] "; %d gefilterte Objekte" -#: ../src/seltrans.cpp:488 ../src/ui/dialog/transformation.cpp:950 +#: ../src/seltrans.cpp:471 ../src/ui/dialog/transformation.cpp:981 msgid "Skew" msgstr "Scheren" -#: ../src/seltrans.cpp:500 +#: ../src/seltrans.cpp:483 msgid "Set center" msgstr "Mittelpunkt setzen" -#: ../src/seltrans.cpp:575 +#: ../src/seltrans.cpp:558 msgid "Stamp" msgstr "Stempeln" -#: ../src/seltrans.cpp:604 +#: ../src/seltrans.cpp:711 +msgid "Reset center" +msgstr "Mittelpunkt zurücksetzen" + +#: ../src/seltrans.cpp:938 ../src/seltrans.cpp:1035 +#, c-format +msgid "Scale: %0.2f%% x %0.2f%%; with Ctrl to lock ratio" +msgstr "" +"Skalierung: %0.2f%% × %0.2f%%; Höhen-/Breitenverhältnis mit Strg beibehalten" + +#. TRANSLATORS: don't modify the first ";" +#. (it will NOT be displayed as ";" - only the second one will be) +#: ../src/seltrans.cpp:1167 +#, c-format +msgid "Skew: %0.2f°; with Ctrl to snap angle" +msgstr "Scheren: %0.2f °; Winkel mit Strg einrasten" + +#. TRANSLATORS: don't modify the first ";" +#. (it will NOT be displayed as ";" - only the second one will be) +#: ../src/seltrans.cpp:1242 +#, c-format +msgid "Rotate: %0.2f°; with Ctrl to snap angle" +msgstr "Drehen: %0.2f°; Winkel mit Strg einrasten" + +#: ../src/seltrans.cpp:1279 +#, c-format +msgid "Move center to %s, %s" +msgstr "Mittelpunkt verschieben nach %s, %s" + +#: ../src/seltrans.cpp:1433 +#, c-format +msgid "" +"Move by %s, %s; with Ctrl to restrict to horizontal/vertical; " +"with Shift to disable snapping" +msgstr "" +"Verschieben um %s, %s; mit Strg nur horizontale/vertikale " +"Verschiebung; Umschalt deaktiviert Einrasten." + +#: ../src/seltrans-handles.cpp:9 msgid "" "Squeeze or stretch selection; with Ctrl to scale uniformly; " "with Shift to scale around rotation center" @@ -12884,7 +12765,7 @@ msgstr "" "Verzerren der Auswahl; Strg behält Höhen-/Breitenverhältnis " "bei; Umschalt skaliert um den Rotationsmittelpunkt" -#: ../src/seltrans.cpp:605 +#: ../src/seltrans-handles.cpp:10 msgid "" "Scale selection; with Ctrl to scale uniformly; with Shift to scale around rotation center" @@ -12892,7 +12773,7 @@ msgstr "" "Skalieren der Auswahl; Strg behält Höhen-/Breitenverhältnis " "bei; Umschalt skaliert um den Rotationsmittelpunkt" -#: ../src/seltrans.cpp:609 +#: ../src/seltrans-handles.cpp:11 msgid "" "Skew selection; with Ctrl to snap angle; with Shift to " "skew around the opposite side" @@ -12900,7 +12781,7 @@ msgstr "" "Scheren der Auswahl; Winkel mit Strg einrasten; Umschalt schert entlang der gegenüberliegenden Seite" -#: ../src/seltrans.cpp:610 +#: ../src/seltrans-handles.cpp:12 msgid "" "Rotate selection; with Ctrl to snap angle; with Shift " "to rotate around the opposite corner" @@ -12908,7 +12789,7 @@ msgstr "" "Drehen der Auswahl; Winkel mit Strg einrasten; Umschalt " "dreht entlang der gegenüberliegenden Seite" -#: ../src/seltrans.cpp:623 +#: ../src/seltrans-handles.cpp:13 msgid "" "Center of rotation and skewing: drag to reposition; scaling with " "Shift also uses this center" @@ -12916,52 +12797,13 @@ msgstr "" "Mittelpunkt für Drehen und Scheren: Ziehen verschiebt den " "Mittelpunkt; Skalieren mit Umschalt verwendet diesen Mittelpunkt" -#: ../src/seltrans.cpp:773 -msgid "Reset center" -msgstr "Mittelpunkt zurücksetzen" - -#: ../src/seltrans.cpp:1017 ../src/seltrans.cpp:1114 -#, c-format -msgid "Scale: %0.2f%% x %0.2f%%; with Ctrl to lock ratio" -msgstr "" -"Skalierung: %0.2f%% × %0.2f%%; Höhen-/Breitenverhältnis mit Strg beibehalten" - -#. TRANSLATORS: don't modify the first ";" -#. (it will NOT be displayed as ";" - only the second one will be) -#: ../src/seltrans.cpp:1228 -#, c-format -msgid "Skew: %0.2f°; with Ctrl to snap angle" -msgstr "Scheren: %0.2f °; Winkel mit Strg einrasten" - -#. TRANSLATORS: don't modify the first ";" -#. (it will NOT be displayed as ";" - only the second one will be) -#: ../src/seltrans.cpp:1303 -#, c-format -msgid "Rotate: %0.2f°; with Ctrl to snap angle" -msgstr "Drehen: %0.2f°; Winkel mit Strg einrasten" - -#: ../src/seltrans.cpp:1338 -#, c-format -msgid "Move center to %s, %s" -msgstr "Mittelpunkt verschieben nach %s, %s" - -#: ../src/seltrans.cpp:1514 -#, c-format -msgid "" -"Move by %s, %s; with Ctrl to restrict to horizontal/vertical; " -"with Shift to disable snapping" -msgstr "" -"Verschieben um %s, %s; mit Strg nur horizontale/vertikale " -"Verschiebung; Umschalt deaktiviert Einrasten." - # !!! palettes, not swatches? -#: ../src/shortcuts.cpp:225 +#: ../src/shortcuts.cpp:226 #, c-format msgid "Keyboard directory (%s) is unavailable." msgstr "Tastatur-verzeichnis (%s) nicht verfügbar." -#: ../src/shortcuts.cpp:369 +#: ../src/shortcuts.cpp:370 msgid "Select a file to import" msgstr "Wählen Sie die zu importierende Datei" @@ -12975,22 +12817,22 @@ msgid "Link without URI" msgstr "Verknüpfung ohne URI" # !!! -#: ../src/sp-ellipse.cpp:452 ../src/sp-ellipse.cpp:775 +#: ../src/sp-ellipse.cpp:457 ../src/sp-ellipse.cpp:780 msgid "Ellipse" msgstr "Ellipse" # !!! -#: ../src/sp-ellipse.cpp:566 +#: ../src/sp-ellipse.cpp:571 msgid "Circle" msgstr "Kreis" # !!! -#: ../src/sp-ellipse.cpp:770 +#: ../src/sp-ellipse.cpp:775 msgid "Segment" msgstr "Segment" # !!! -#: ../src/sp-ellipse.cpp:772 +#: ../src/sp-ellipse.cpp:777 msgid "Arc" msgstr "Kreisbogen" @@ -13009,21 +12851,21 @@ msgstr "Fließtext-Bereich" msgid "Flow excluded region" msgstr "Ausgeschlossenen Bereich umfließen" -#: ../src/sp-guide.cpp:290 +#: ../src/sp-guide.cpp:289 msgid "Create Guides Around the Page" msgstr "Führungslinien an Seitenrändern erstellen" -#: ../src/sp-guide.cpp:302 ../src/verbs.cpp:2415 +#: ../src/sp-guide.cpp:301 ../src/verbs.cpp:2467 msgid "Delete All Guides" msgstr "Führungslinien löschen" #. Guide has probably been deleted and no longer has an attached namedview. -#: ../src/sp-guide.cpp:462 +#: ../src/sp-guide.cpp:461 #, c-format msgid "Deleted" msgstr "Gelöscht" -#: ../src/sp-guide.cpp:471 +#: ../src/sp-guide.cpp:470 msgid "" "Shift+drag to rotate, Ctrl+drag to move origin, Del to " "delete" @@ -13031,31 +12873,31 @@ msgstr "" "Umschalt+Ziehen rotiert, Strg+Ziehen bewegt Ursprung, Entf löscht." -#: ../src/sp-guide.cpp:475 +#: ../src/sp-guide.cpp:474 #, c-format msgid "vertical, at %s" msgstr "Vertikale Führungslinie bei %s" -#: ../src/sp-guide.cpp:478 +#: ../src/sp-guide.cpp:477 #, c-format msgid "horizontal, at %s" msgstr "Horizontale Führungslinie bei %s" -#: ../src/sp-guide.cpp:483 +#: ../src/sp-guide.cpp:482 #, c-format msgid "at %d degrees, through (%s,%s)" msgstr "bei %d Grad, durch (%s, %s)" -#: ../src/sp-image.cpp:1068 +#: ../src/sp-image.cpp:1069 msgid "embedded" msgstr "eingebettet" -#: ../src/sp-image.cpp:1076 +#: ../src/sp-image.cpp:1077 #, c-format msgid "Image with bad reference: %s" msgstr "Bild-Objekt mit fehlerhaftem Bezug: %s" -#: ../src/sp-image.cpp:1077 +#: ../src/sp-image.cpp:1078 #, c-format msgid "Image %d × %d: %s" msgstr "Farbbild %d × %d: %s" @@ -13067,7 +12909,7 @@ msgid_plural "Group of %d objects" msgstr[0] "Gruppe von %d Objekt" msgstr[1] "Gruppe von %d Objekten" -#: ../src/sp-item.cpp:977 ../src/verbs.cpp:212 +#: ../src/sp-item.cpp:977 ../src/verbs.cpp:213 msgid "Object" msgstr "Objekt" @@ -13171,16 +13013,16 @@ msgstr[0] "Polygon mit %d Eckpunkt" msgstr[1] "Polygon mit %d Eckpunkten" #. TRANSLATORS: For description of font with no name. -#: ../src/sp-text.cpp:392 +#: ../src/sp-text.cpp:390 msgid "<no name found>" msgstr "<kein Name gefunden>" -#: ../src/sp-text.cpp:404 +#: ../src/sp-text.cpp:403 #, c-format msgid "Text on path%s (%s, %s)" msgstr "Text an Pfad%s (%s, %s)" -#: ../src/sp-text.cpp:405 +#: ../src/sp-text.cpp:404 #, c-format msgid "Text%s (%s, %s)" msgstr "Text%s (%s, %s)" @@ -13204,32 +13046,32 @@ msgstr "Verwaister Zeichen-Klon" msgid "Text span" msgstr "Textweite" -#: ../src/sp-use.cpp:303 +#: ../src/sp-use.cpp:299 #, c-format msgid "'%s' Symbol" msgstr "'%s' Symbol" #. TRANSLATORS: Used for statusbar description for long chains: #. * "Clone of: Clone of: ... in Layer 1". -#: ../src/sp-use.cpp:311 +#: ../src/sp-use.cpp:307 msgid "..." msgstr "…" -#: ../src/sp-use.cpp:319 +#: ../src/sp-use.cpp:315 #, c-format msgid "Clone of: %s" msgstr "Klon von: %s" # !!! -#: ../src/sp-use.cpp:323 +#: ../src/sp-use.cpp:319 msgid "Orphaned clone" msgstr "Verwaister Klon" -#: ../src/spiral-context.cpp:304 +#: ../src/spiral-context.cpp:303 msgid "Ctrl: snap angle" msgstr "Strg: Winkel einrasten" -#: ../src/spiral-context.cpp:306 +#: ../src/spiral-context.cpp:305 msgid "Alt: lock spiral radius" msgstr "Alt: Radius der Spirale einrasten" @@ -13244,50 +13086,50 @@ msgstr "" msgid "Create spiral" msgstr "Spirale erstellen" -#: ../src/splivarot.cpp:68 ../src/splivarot.cpp:74 +#: ../src/splivarot.cpp:69 ../src/splivarot.cpp:75 msgid "Union" msgstr "Vereinigung" -#: ../src/splivarot.cpp:80 +#: ../src/splivarot.cpp:81 msgid "Intersection" msgstr "Überschneidung" -#: ../src/splivarot.cpp:86 ../src/splivarot.cpp:92 +#: ../src/splivarot.cpp:87 ../src/splivarot.cpp:93 msgid "Difference" msgstr "Differenz" -#: ../src/splivarot.cpp:98 +#: ../src/splivarot.cpp:99 msgid "Exclusion" msgstr "Exklusiv-Oder (Ausschluss)" -#: ../src/splivarot.cpp:103 +#: ../src/splivarot.cpp:104 msgid "Division" msgstr "Division" -#: ../src/splivarot.cpp:108 +#: ../src/splivarot.cpp:109 msgid "Cut path" msgstr "Pfad zerschneiden" -#: ../src/splivarot.cpp:123 +#: ../src/splivarot.cpp:134 msgid "Select at least 2 paths to perform a boolean operation." msgstr "" "Wählen Sie mindestens 2 Pfade aus, um eine boole'sche Operation " "auszuführen." -#: ../src/splivarot.cpp:127 +#: ../src/splivarot.cpp:138 msgid "Select at least 1 path to perform a boolean union." msgstr "" "Wählen Sie mindestens 1 Pfad aus, um eine boole'sche Vereinigung " "auszuführen." -#: ../src/splivarot.cpp:133 +#: ../src/splivarot.cpp:144 msgid "" "Select exactly 2 paths to perform difference, division, or path cut." msgstr "" "Wählen Sie genau 2 Pfade aus, um eine Differenz-, XOR-, Dvisions- " "oder Pfadzuschneideoperation auszuführen." -#: ../src/splivarot.cpp:149 ../src/splivarot.cpp:164 +#: ../src/splivarot.cpp:160 ../src/splivarot.cpp:175 msgid "" "Unable to determine the z-order of the objects selected for " "difference, XOR, division, or path cut." @@ -13295,81 +13137,81 @@ msgstr "" "Die Z-Tiefe der ausgewählten Objekte konnte nicht für die Differenz-, " "XOR-, Division- oder Pfadzuschneideoperation ermittelt werden." -#: ../src/splivarot.cpp:194 +#: ../src/splivarot.cpp:205 msgid "" "One of the objects is not a path, cannot perform boolean operation." msgstr "" "Eines der ausgewählten Objekte ist kein Pfad. Boole'sche Operation " "wird nicht ausgeführt." -#: ../src/splivarot.cpp:918 +#: ../src/splivarot.cpp:954 msgid "Select stroked path(s) to convert stroke to path." msgstr "" "Pfade mit Kontur auswählen, um die Konturlinie in einen Pfad " "umzuwandeln." -#: ../src/splivarot.cpp:1271 +#: ../src/splivarot.cpp:1307 msgid "Convert stroke to path" msgstr "Kontur in Pfad umwandeln" #. TRANSLATORS: "to outline" means "to convert stroke to path" -#: ../src/splivarot.cpp:1274 +#: ../src/splivarot.cpp:1310 msgid "No stroked paths in the selection." msgstr "Keine Pfade mit Konturlinien in der Auswahl." -#: ../src/splivarot.cpp:1345 +#: ../src/splivarot.cpp:1381 msgid "Selected object is not a path, cannot inset/outset." msgstr "" "Ausgewähltes Objekt ist kein Pfad - kann es nicht schrumpfen/" "erweitern." -#: ../src/splivarot.cpp:1441 ../src/splivarot.cpp:1506 +#: ../src/splivarot.cpp:1477 ../src/splivarot.cpp:1542 msgid "Create linked offset" msgstr "Verbundenen Versatz erzeugen" -#: ../src/splivarot.cpp:1442 ../src/splivarot.cpp:1507 +#: ../src/splivarot.cpp:1478 ../src/splivarot.cpp:1543 msgid "Create dynamic offset" msgstr "Dynamischen Versatz erzeugen" -#: ../src/splivarot.cpp:1532 +#: ../src/splivarot.cpp:1568 msgid "Select path(s) to inset/outset." msgstr "Pfad zum Schrumpfen/Erweitern auswählen." -#: ../src/splivarot.cpp:1745 +#: ../src/splivarot.cpp:1781 msgid "Outset path" msgstr "Pfad erweitern" -#: ../src/splivarot.cpp:1745 +#: ../src/splivarot.cpp:1781 msgid "Inset path" msgstr "Pfad schrumpfen" -#: ../src/splivarot.cpp:1747 +#: ../src/splivarot.cpp:1783 msgid "No paths to inset/outset in the selection." msgstr "Die Auswahl enthält keine Pfade zum Schrumpfen/Erweitern." -#: ../src/splivarot.cpp:1909 +#: ../src/splivarot.cpp:1945 msgid "Simplifying paths (separately):" msgstr "Vereinfache Pfade (getrennt):" -#: ../src/splivarot.cpp:1911 +#: ../src/splivarot.cpp:1947 msgid "Simplifying paths:" msgstr "Vereinfache Pfade:" -#: ../src/splivarot.cpp:1948 +#: ../src/splivarot.cpp:1984 #, c-format msgid "%s %d of %d paths simplified..." msgstr "%s %d von %d Pfaden vereinfacht…" -#: ../src/splivarot.cpp:1960 +#: ../src/splivarot.cpp:1996 #, c-format msgid "%d paths simplified." msgstr "%d Pfade vereinfacht." -#: ../src/splivarot.cpp:1974 +#: ../src/splivarot.cpp:2010 msgid "Select path(s) to simplify." msgstr "Pfad zum Vereinfachen auswählen." -#: ../src/splivarot.cpp:1990 +#: ../src/splivarot.cpp:2026 msgid "No paths to simplify in the selection." msgstr "Die Auswahl enthält keine Pfade zum Vereinfachen." @@ -13409,11 +13251,11 @@ msgstr "" msgid "Nothing selected! Select objects to spray." msgstr "Nichts ausgewählt! Wähle Objekte zum Sprühen aus." -#: ../src/spray-context.cpp:745 ../src/widgets/spray-toolbar.cpp:182 +#: ../src/spray-context.cpp:745 ../src/widgets/spray-toolbar.cpp:178 msgid "Spray with copies" msgstr "Sprühen mit Kopien" -#: ../src/spray-context.cpp:749 ../src/widgets/spray-toolbar.cpp:189 +#: ../src/spray-context.cpp:749 ../src/widgets/spray-toolbar.cpp:185 msgid "Spray with clones" msgstr "Sprühen mit Klonen" @@ -13421,7 +13263,7 @@ msgstr "Sprühen mit Klonen" msgid "Spray in single path" msgstr "Sprühen in einen einzelnen Pfad" -#: ../src/star-context.cpp:320 +#: ../src/star-context.cpp:319 msgid "Ctrl: snap angle; keep rays radial" msgstr "Strg: Winkel einrasten; Strahlen bleiben radial ausgerichtet" @@ -13468,7 +13310,7 @@ msgid "The flowed text(s) must be visible in order to be put on a path." msgstr "" "Der Fließtext muss sichtbar sein, um einem Pfad zugewiesen zu werden." -#: ../src/text-chemistry.cpp:183 ../src/verbs.cpp:2435 +#: ../src/text-chemistry.cpp:183 ../src/verbs.cpp:2489 msgid "Put text on path" msgstr "Text an Pfad ausrichten" @@ -13480,7 +13322,7 @@ msgstr "Einen Text-Pfad zum Trennen vom Pfad auswählen." msgid "No texts-on-paths in the selection." msgstr "Kein Text-Pfad in der Auswahl vorhanden." -#: ../src/text-chemistry.cpp:219 ../src/verbs.cpp:2437 +#: ../src/text-chemistry.cpp:219 ../src/verbs.cpp:2491 msgid "Remove text from path" msgstr "Text wird von Pfad getrennt" @@ -13529,58 +13371,58 @@ msgstr "Fließtext in Text umwandeln" msgid "No flowed text(s) to convert in the selection." msgstr "Kein Fließtext zum Umwandeln in der Auswahl." -#: ../src/text-context.cpp:426 +#: ../src/text-context.cpp:425 msgid "Click to edit the text, drag to select part of the text." msgstr "" "Klick zum Ändern des Textes, Ziehen, um einen Teil des Textes " "zu ändern." -#: ../src/text-context.cpp:428 +#: ../src/text-context.cpp:427 msgid "" "Click to edit the flowed text, drag to select part of the text." msgstr "" "Klick zum Ändern des Fließtextes, Ziehen, um einen Teil des " "Textes zu ändern." -#: ../src/text-context.cpp:482 +#: ../src/text-context.cpp:481 msgid "Create text" msgstr "Text erstellen" -#: ../src/text-context.cpp:507 +#: ../src/text-context.cpp:506 msgid "Non-printable character" msgstr "Nicht druckbares Zeichen" -#: ../src/text-context.cpp:522 +#: ../src/text-context.cpp:521 msgid "Insert Unicode character" msgstr "Unicode-Zeichen einfügen" -#: ../src/text-context.cpp:557 +#: ../src/text-context.cpp:556 #, c-format msgid "Unicode (Enter to finish): %s: %s" msgstr "Unicode (Eingabe zum Abschliessen): %s: %s" -#: ../src/text-context.cpp:559 ../src/text-context.cpp:868 +#: ../src/text-context.cpp:558 ../src/text-context.cpp:869 msgid "Unicode (Enter to finish): " msgstr "Unicode (Eingabe zum Abschliessen): " -#: ../src/text-context.cpp:645 +#: ../src/text-context.cpp:646 #, c-format msgid "Flowed text frame: %s × %s" msgstr "Fließtext-Rahmen: %s × %s" -#: ../src/text-context.cpp:702 +#: ../src/text-context.cpp:703 msgid "Type text; Enter to start new line." msgstr "Text schreiben; Eingabe, um eine neue Zeile zu beginnen." -#: ../src/text-context.cpp:713 +#: ../src/text-context.cpp:714 msgid "Flowed text is created." msgstr "Fließtext wird erzeugt." -#: ../src/text-context.cpp:715 +#: ../src/text-context.cpp:716 msgid "Create flowed text" msgstr "Fließtext erstellen" -#: ../src/text-context.cpp:717 +#: ../src/text-context.cpp:718 msgid "" "The frame is too small for the current font size. Flowed text not " "created." @@ -13588,75 +13430,75 @@ msgstr "" "Der Rahmen ist zu klein für die aktuelle Schriftgröße. Der Fließtext " "wurde nicht erzeugt." -#: ../src/text-context.cpp:853 +#: ../src/text-context.cpp:854 msgid "No-break space" msgstr "Untrennbares Leerzeichen" -#: ../src/text-context.cpp:855 +#: ../src/text-context.cpp:856 msgid "Insert no-break space" msgstr "Untrennbares Leerzeichen einfügen" -#: ../src/text-context.cpp:892 +#: ../src/text-context.cpp:893 msgid "Make bold" msgstr "Fett" -#: ../src/text-context.cpp:910 +#: ../src/text-context.cpp:911 msgid "Make italic" msgstr "Kursiv" -#: ../src/text-context.cpp:949 +#: ../src/text-context.cpp:950 msgid "New line" msgstr "Neue Zeile" -#: ../src/text-context.cpp:991 +#: ../src/text-context.cpp:992 msgid "Backspace" msgstr "Rückschritt" -#: ../src/text-context.cpp:1047 +#: ../src/text-context.cpp:1048 msgid "Kern to the left" msgstr "Unterschneidung nach links" -#: ../src/text-context.cpp:1072 +#: ../src/text-context.cpp:1073 msgid "Kern to the right" msgstr "Unterschneidung nach rechts" -#: ../src/text-context.cpp:1097 +#: ../src/text-context.cpp:1098 msgid "Kern up" msgstr "Unterschneidung nach oben" -#: ../src/text-context.cpp:1122 +#: ../src/text-context.cpp:1123 msgid "Kern down" msgstr "Unterschneidung nach unten" -#: ../src/text-context.cpp:1198 +#: ../src/text-context.cpp:1199 msgid "Rotate counterclockwise" msgstr "Entgegen Uhrzeigersinn drehen" -#: ../src/text-context.cpp:1219 +#: ../src/text-context.cpp:1220 msgid "Rotate clockwise" msgstr "Im Uhrzeigersinn drehen" -#: ../src/text-context.cpp:1236 +#: ../src/text-context.cpp:1237 msgid "Contract line spacing" msgstr "Zeilenabstand vermindern" -#: ../src/text-context.cpp:1243 +#: ../src/text-context.cpp:1244 msgid "Contract letter spacing" msgstr "Zeichenabstand vermindern" -#: ../src/text-context.cpp:1261 +#: ../src/text-context.cpp:1262 msgid "Expand line spacing" msgstr "Zeilenabstand vergrößern" -#: ../src/text-context.cpp:1268 +#: ../src/text-context.cpp:1269 msgid "Expand letter spacing" msgstr "Zeichenabstand vergrößern" -#: ../src/text-context.cpp:1396 +#: ../src/text-context.cpp:1397 msgid "Paste text" msgstr "Text einfügen" -#: ../src/text-context.cpp:1647 +#: ../src/text-context.cpp:1648 #, c-format msgid "" "Type or edit flowed text (%d characters%s); Enter to start new " @@ -13665,14 +13507,14 @@ msgstr "" "Fließtext schreiben (%d Zeichen%s); Eingabe, um einen neuen Absatz zu " "beginnen." -#: ../src/text-context.cpp:1649 +#: ../src/text-context.cpp:1650 #, c-format msgid "Type or edit text (%d characters%s); Enter to start new line." msgstr "" "Text schreiben (%d Zeichen%s); Eingabe, um eine neue Zeile zu " "beginnen." -#: ../src/text-context.cpp:1657 ../src/tools-switch.cpp:201 +#: ../src/text-context.cpp:1658 ../src/tools-switch.cpp:201 msgid "" "Click to select or create text, drag to create flowed text; " "then type." @@ -13680,7 +13522,7 @@ msgstr "" "Zum Auswählen oder Erstellen eines Textobjekts klicken, Ziehen " "um Fließtext zu erstellen; anschließend schreiben." -#: ../src/text-context.cpp:1759 +#: ../src/text-context.cpp:1760 msgid "Type text" msgstr "Text eingeben" @@ -14103,212 +13945,212 @@ msgstr "" "Uwe Schöler (uschoeler@yahoo.de)\n" "Wolfram Strempfer (wolfram@strempfer.de)" -#: ../src/ui/dialog/align-and-distribute.cpp:219 -#: ../src/ui/dialog/align-and-distribute.cpp:896 +#: ../src/ui/dialog/align-and-distribute.cpp:170 +#: ../src/ui/dialog/align-and-distribute.cpp:845 msgid "Align" msgstr "Ausrichten" -#: ../src/ui/dialog/align-and-distribute.cpp:391 -#: ../src/ui/dialog/align-and-distribute.cpp:897 +#: ../src/ui/dialog/align-and-distribute.cpp:340 +#: ../src/ui/dialog/align-and-distribute.cpp:846 msgid "Distribute" msgstr "Verteilen" -#: ../src/ui/dialog/align-and-distribute.cpp:464 +#: ../src/ui/dialog/align-and-distribute.cpp:413 msgid "Minimum horizontal gap (in px units) between bounding boxes" msgstr "" "Minimaler horizontaler Abstand (in px-Einheiten) zwischen Umrandungsboxen" #. TRANSLATORS: "H:" stands for horizontal gap -#: ../src/ui/dialog/align-and-distribute.cpp:466 +#: ../src/ui/dialog/align-and-distribute.cpp:415 msgctxt "Gap" msgid "_H:" msgstr "_H:" -#: ../src/ui/dialog/align-and-distribute.cpp:474 +#: ../src/ui/dialog/align-and-distribute.cpp:423 msgid "Minimum vertical gap (in px units) between bounding boxes" msgstr "" "Minimaler vertikaler Abstand (in px-Einheiten) zwischen Umrandungsboxen" #. TRANSLATORS: Vertical gap -#: ../src/ui/dialog/align-and-distribute.cpp:476 +#: ../src/ui/dialog/align-and-distribute.cpp:425 msgctxt "Gap" msgid "_V:" msgstr "V:" -#: ../src/ui/dialog/align-and-distribute.cpp:512 -#: ../src/ui/dialog/align-and-distribute.cpp:899 -#: ../src/widgets/connector-toolbar.cpp:427 +#: ../src/ui/dialog/align-and-distribute.cpp:461 +#: ../src/ui/dialog/align-and-distribute.cpp:848 +#: ../src/widgets/connector-toolbar.cpp:423 msgid "Remove overlaps" msgstr "Überlappungen entfernen" -#: ../src/ui/dialog/align-and-distribute.cpp:543 -#: ../src/widgets/connector-toolbar.cpp:256 +#: ../src/ui/dialog/align-and-distribute.cpp:492 +#: ../src/widgets/connector-toolbar.cpp:252 msgid "Arrange connector network" msgstr "Netzwerk von Objektverbindern anordnen" -#: ../src/ui/dialog/align-and-distribute.cpp:636 +#: ../src/ui/dialog/align-and-distribute.cpp:585 msgid "Exchange Positions" msgstr "Positionne verändern" -#: ../src/ui/dialog/align-and-distribute.cpp:670 +#: ../src/ui/dialog/align-and-distribute.cpp:619 msgid "Unclump" msgstr "Entklumpen" -#: ../src/ui/dialog/align-and-distribute.cpp:742 +#: ../src/ui/dialog/align-and-distribute.cpp:691 msgid "Randomize positions" msgstr "Positionen zufällig machen" -#: ../src/ui/dialog/align-and-distribute.cpp:845 +#: ../src/ui/dialog/align-and-distribute.cpp:794 msgid "Distribute text baselines" msgstr "Textgrundlinien verteilen" -#: ../src/ui/dialog/align-and-distribute.cpp:868 +#: ../src/ui/dialog/align-and-distribute.cpp:817 msgid "Align text baselines" msgstr "Grundlinien von Text ausrichten" -#: ../src/ui/dialog/align-and-distribute.cpp:898 +#: ../src/ui/dialog/align-and-distribute.cpp:847 msgid "Rearrange" msgstr "Anordnen" -#: ../src/ui/dialog/align-and-distribute.cpp:900 -#: ../src/widgets/toolbox.cpp:1728 +#: ../src/ui/dialog/align-and-distribute.cpp:849 +#: ../src/widgets/toolbox.cpp:1722 msgid "Nodes" msgstr "Knoten" -#: ../src/ui/dialog/align-and-distribute.cpp:914 +#: ../src/ui/dialog/align-and-distribute.cpp:863 msgid "Relative to: " msgstr "Relativ zu: " -#: ../src/ui/dialog/align-and-distribute.cpp:915 +#: ../src/ui/dialog/align-and-distribute.cpp:864 msgid "_Treat selection as group: " msgstr "Auswahl als Gruppe behandeln:" #. Align -#: ../src/ui/dialog/align-and-distribute.cpp:921 ../src/verbs.cpp:2866 -#: ../src/verbs.cpp:2867 +#: ../src/ui/dialog/align-and-distribute.cpp:870 ../src/verbs.cpp:2928 +#: ../src/verbs.cpp:2929 msgid "Align right edges of objects to the left edge of the anchor" msgstr "Rechte Objektkanten an linker Seite der Verankerung ausrichten" -#: ../src/ui/dialog/align-and-distribute.cpp:924 ../src/verbs.cpp:2868 -#: ../src/verbs.cpp:2869 +#: ../src/ui/dialog/align-and-distribute.cpp:873 ../src/verbs.cpp:2930 +#: ../src/verbs.cpp:2931 msgid "Align left edges" msgstr "Linke Kanten ausrichten" -#: ../src/ui/dialog/align-and-distribute.cpp:927 ../src/verbs.cpp:2870 -#: ../src/verbs.cpp:2871 +#: ../src/ui/dialog/align-and-distribute.cpp:876 ../src/verbs.cpp:2932 +#: ../src/verbs.cpp:2933 msgid "Center on vertical axis" msgstr "Vertikal zentrieren" -#: ../src/ui/dialog/align-and-distribute.cpp:930 ../src/verbs.cpp:2872 -#: ../src/verbs.cpp:2873 +#: ../src/ui/dialog/align-and-distribute.cpp:879 ../src/verbs.cpp:2934 +#: ../src/verbs.cpp:2935 msgid "Align right sides" msgstr "Rechte Kanten ausrichten" -#: ../src/ui/dialog/align-and-distribute.cpp:933 ../src/verbs.cpp:2874 -#: ../src/verbs.cpp:2875 +#: ../src/ui/dialog/align-and-distribute.cpp:882 ../src/verbs.cpp:2936 +#: ../src/verbs.cpp:2937 msgid "Align left edges of objects to the right edge of the anchor" msgstr "Linke Objektkanten an rechter Seite der Verankerung ausrichten" -#: ../src/ui/dialog/align-and-distribute.cpp:936 ../src/verbs.cpp:2876 -#: ../src/verbs.cpp:2877 +#: ../src/ui/dialog/align-and-distribute.cpp:885 ../src/verbs.cpp:2938 +#: ../src/verbs.cpp:2939 msgid "Align bottom edges of objects to the top edge of the anchor" msgstr "Objektunterkanten an Oberkante der Verankerung ausrichten" -#: ../src/ui/dialog/align-and-distribute.cpp:939 ../src/verbs.cpp:2878 -#: ../src/verbs.cpp:2879 +#: ../src/ui/dialog/align-and-distribute.cpp:888 ../src/verbs.cpp:2940 +#: ../src/verbs.cpp:2941 msgid "Align top edges" msgstr "Oberkanten ausrichten" -#: ../src/ui/dialog/align-and-distribute.cpp:942 ../src/verbs.cpp:2880 -#: ../src/verbs.cpp:2881 +#: ../src/ui/dialog/align-and-distribute.cpp:891 ../src/verbs.cpp:2942 +#: ../src/verbs.cpp:2943 msgid "Center on horizontal axis" msgstr "Zentren horizontal ausrichten" -#: ../src/ui/dialog/align-and-distribute.cpp:945 ../src/verbs.cpp:2882 -#: ../src/verbs.cpp:2883 +#: ../src/ui/dialog/align-and-distribute.cpp:894 ../src/verbs.cpp:2944 +#: ../src/verbs.cpp:2945 msgid "Align bottom edges" msgstr "Unterkanten ausrichten" -#: ../src/ui/dialog/align-and-distribute.cpp:948 ../src/verbs.cpp:2884 -#: ../src/verbs.cpp:2885 +#: ../src/ui/dialog/align-and-distribute.cpp:897 ../src/verbs.cpp:2946 +#: ../src/verbs.cpp:2947 msgid "Align top edges of objects to the bottom edge of the anchor" msgstr "Objektoberkanten an Unterkante der Verankerung ausrichten" -#: ../src/ui/dialog/align-and-distribute.cpp:953 +#: ../src/ui/dialog/align-and-distribute.cpp:902 msgid "Align baseline anchors of texts horizontally" msgstr "Grundlinien der Textelemente horizontal ausrichten" -#: ../src/ui/dialog/align-and-distribute.cpp:956 +#: ../src/ui/dialog/align-and-distribute.cpp:905 msgid "Align baselines of texts" msgstr "Grundlinien der Textelemente ausrichten" -#: ../src/ui/dialog/align-and-distribute.cpp:961 +#: ../src/ui/dialog/align-and-distribute.cpp:910 msgid "Make horizontal gaps between objects equal" msgstr "Horizontale Abstände zwischen Objekten ausgleichen" -#: ../src/ui/dialog/align-and-distribute.cpp:965 +#: ../src/ui/dialog/align-and-distribute.cpp:914 msgid "Distribute left edges equidistantly" msgstr "Linke Objektkanten gleichmäßig anordnen" -#: ../src/ui/dialog/align-and-distribute.cpp:968 +#: ../src/ui/dialog/align-and-distribute.cpp:917 msgid "Distribute centers equidistantly horizontally" msgstr "Objektmittelpunkten horizontal gleichmäßig anordnen" -#: ../src/ui/dialog/align-and-distribute.cpp:971 +#: ../src/ui/dialog/align-and-distribute.cpp:920 msgid "Distribute right edges equidistantly" msgstr "Rechte Objektkanten gleichmäßig anordnen" -#: ../src/ui/dialog/align-and-distribute.cpp:975 +#: ../src/ui/dialog/align-and-distribute.cpp:924 msgid "Make vertical gaps between objects equal" msgstr "Vertikale Abstände zwischen Objekten ausgleichen" -#: ../src/ui/dialog/align-and-distribute.cpp:979 +#: ../src/ui/dialog/align-and-distribute.cpp:928 msgid "Distribute top edges equidistantly" msgstr "Oberkanten der Objekte gleichmäßig anordnen" -#: ../src/ui/dialog/align-and-distribute.cpp:982 +#: ../src/ui/dialog/align-and-distribute.cpp:931 msgid "Distribute centers equidistantly vertically" msgstr "Objektmittelpunkten vertikal gleichmäßig anordnen" -#: ../src/ui/dialog/align-and-distribute.cpp:985 +#: ../src/ui/dialog/align-and-distribute.cpp:934 msgid "Distribute bottom edges equidistantly" msgstr "Unterkanten gleichmäßig anordnen" -#: ../src/ui/dialog/align-and-distribute.cpp:990 +#: ../src/ui/dialog/align-and-distribute.cpp:939 msgid "Distribute baseline anchors of texts horizontally" msgstr "Grundlinien von Textelementen horizontal verteilen" -#: ../src/ui/dialog/align-and-distribute.cpp:993 +#: ../src/ui/dialog/align-and-distribute.cpp:942 msgid "Distribute baselines of texts vertically" msgstr "Grundlinien von Textelementen vertikal verteilen" -#: ../src/ui/dialog/align-and-distribute.cpp:999 -#: ../src/widgets/connector-toolbar.cpp:389 +#: ../src/ui/dialog/align-and-distribute.cpp:948 +#: ../src/widgets/connector-toolbar.cpp:385 msgid "Nicely arrange selected connector network" msgstr "Das gewählte Netzwerk von Objektverbindern gefällig anordnen" -#: ../src/ui/dialog/align-and-distribute.cpp:1002 +#: ../src/ui/dialog/align-and-distribute.cpp:951 msgid "Exchange positions of selected objects - selection order" msgstr "Ändern der Position der ausgewählten Objekte - Auswahlanordnung" -#: ../src/ui/dialog/align-and-distribute.cpp:1005 +#: ../src/ui/dialog/align-and-distribute.cpp:954 msgid "Exchange positions of selected objects - stacking order" msgstr "Ändern der Position der ausgewählten Objekte - Stapelanordnung" -#: ../src/ui/dialog/align-and-distribute.cpp:1008 +#: ../src/ui/dialog/align-and-distribute.cpp:957 msgid "Exchange positions of selected objects - clockwise rotate" msgstr "" "Ändern der Position der ausgewählten Objekte - im Uhrzeigersinn rotierend" -#: ../src/ui/dialog/align-and-distribute.cpp:1013 +#: ../src/ui/dialog/align-and-distribute.cpp:962 msgid "Randomize centers in both dimensions" msgstr "Mittelpunkte von Objekten zufällig horizontal und vertikal verteilen" -#: ../src/ui/dialog/align-and-distribute.cpp:1016 +#: ../src/ui/dialog/align-and-distribute.cpp:965 msgid "Unclump objects: try to equalize edge-to-edge distances" msgstr "Objekte entklumpen: Versuche, die Zwischenabstände anzugleichen" -#: ../src/ui/dialog/align-and-distribute.cpp:1021 +#: ../src/ui/dialog/align-and-distribute.cpp:970 msgid "" "Move objects as little as possible so that their bounding boxes do not " "overlap" @@ -14316,42 +14158,42 @@ msgstr "" "Objekte gerade so weit bewegen, dass sich ihre Umrandungsboxen nicht mehr " "überlappen" -#: ../src/ui/dialog/align-and-distribute.cpp:1029 +#: ../src/ui/dialog/align-and-distribute.cpp:978 msgid "Align selected nodes to a common horizontal line" msgstr "Ausgewählte Knoten horizontal ausrichten" -#: ../src/ui/dialog/align-and-distribute.cpp:1032 +#: ../src/ui/dialog/align-and-distribute.cpp:981 msgid "Align selected nodes to a common vertical line" msgstr "Ausgewählte Knoten vertikal ausrichten" -#: ../src/ui/dialog/align-and-distribute.cpp:1035 +#: ../src/ui/dialog/align-and-distribute.cpp:984 msgid "Distribute selected nodes horizontally" msgstr "Ausgewählte Knoten horizontal verteilen" -#: ../src/ui/dialog/align-and-distribute.cpp:1038 +#: ../src/ui/dialog/align-and-distribute.cpp:987 msgid "Distribute selected nodes vertically" msgstr "Ausgewählte Knoten vertikal verteilen" #. Rest of the widgetry -#: ../src/ui/dialog/align-and-distribute.cpp:1043 +#: ../src/ui/dialog/align-and-distribute.cpp:992 msgid "Last selected" msgstr "Zuletzt gewählt" -#: ../src/ui/dialog/align-and-distribute.cpp:1044 +#: ../src/ui/dialog/align-and-distribute.cpp:993 msgid "First selected" msgstr "Zuerst gewählt" -#: ../src/ui/dialog/align-and-distribute.cpp:1045 +#: ../src/ui/dialog/align-and-distribute.cpp:994 msgid "Biggest object" msgstr "Größtes Objekt" -#: ../src/ui/dialog/align-and-distribute.cpp:1046 +#: ../src/ui/dialog/align-and-distribute.cpp:995 msgid "Smallest object" msgstr "Kleinstes Objekt" -#: ../src/ui/dialog/align-and-distribute.cpp:1049 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1555 ../src/verbs.cpp:174 -#: ../src/widgets/desktop-widget.cpp:2004 +#: ../src/ui/dialog/align-and-distribute.cpp:998 +#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1555 ../src/verbs.cpp:175 +#: ../src/widgets/desktop-widget.cpp:2008 #: ../share/extensions/printing_marks.inx.h:18 msgid "Selection" msgstr "Auswahl" @@ -14414,7 +14256,6 @@ msgid "Messages" msgstr "Meldungen" #: ../src/ui/dialog/debug.cpp:87 ../src/ui/dialog/messages.cpp:47 -#: ../src/ui/dialog/scriptdialog.cpp:182 msgid "_Clear" msgstr "_Leeren" @@ -14427,58 +14268,58 @@ msgid "Release log messages" msgstr "Fehlerprotokoll verwerfen" #: ../src/ui/dialog/document-metadata.cpp:88 -#: ../src/ui/dialog/document-properties.cpp:152 +#: ../src/ui/dialog/document-properties.cpp:151 msgid "Metadata" msgstr "Metadaten" #: ../src/ui/dialog/document-metadata.cpp:89 -#: ../src/ui/dialog/document-properties.cpp:153 +#: ../src/ui/dialog/document-properties.cpp:152 msgid "License" msgstr "Nutzungsbedingungen - Lizenz" # !!! #: ../src/ui/dialog/document-metadata.cpp:126 -#: ../src/ui/dialog/document-properties.cpp:960 +#: ../src/ui/dialog/document-properties.cpp:959 msgid "Dublin Core Entities" msgstr "Dublin-Core-Entities" #: ../src/ui/dialog/document-metadata.cpp:168 -#: ../src/ui/dialog/document-properties.cpp:1022 +#: ../src/ui/dialog/document-properties.cpp:1021 msgid "License" msgstr "Lizenz" #. --------------------------------------------------------------- -#: ../src/ui/dialog/document-properties.cpp:105 +#: ../src/ui/dialog/document-properties.cpp:104 msgid "Show page _border" msgstr "_Rand der Seite anzeigen" -#: ../src/ui/dialog/document-properties.cpp:105 +#: ../src/ui/dialog/document-properties.cpp:104 msgid "If set, rectangular page border is shown" msgstr "Wenn gesetzt, dann wird ein rechteckiger Seitenrand gezeigt" -#: ../src/ui/dialog/document-properties.cpp:106 +#: ../src/ui/dialog/document-properties.cpp:105 msgid "Border on _top of drawing" msgstr "Rand im _Vordergrund anzeigen" -#: ../src/ui/dialog/document-properties.cpp:106 +#: ../src/ui/dialog/document-properties.cpp:105 msgid "If set, border is always on top of the drawing" msgstr "Wenn gesetzt, dann ist der Rand immmer im Vordergrund" -#: ../src/ui/dialog/document-properties.cpp:107 +#: ../src/ui/dialog/document-properties.cpp:106 msgid "_Show border shadow" msgstr "Rand_schatten anzeigen" -#: ../src/ui/dialog/document-properties.cpp:107 +#: ../src/ui/dialog/document-properties.cpp:106 msgid "If set, page border shows a shadow on its right and lower side" msgstr "" "Wenn gesetzt, dann zeigt der Seitenrand einen Schatten an der rechten und " "unteren Seite" -#: ../src/ui/dialog/document-properties.cpp:108 +#: ../src/ui/dialog/document-properties.cpp:107 msgid "Back_ground color:" msgstr "Hintergrundfarbe:" -#: ../src/ui/dialog/document-properties.cpp:108 +#: ../src/ui/dialog/document-properties.cpp:107 msgid "" "Color of the page background. Note: transparency setting ignored while " "editing but used when exporting to bitmap." @@ -14487,82 +14328,82 @@ msgstr "" "während der Bearbeitung ignoriert, aber genutzt, wenn es als Bitmap " "exportiert wird." -#: ../src/ui/dialog/document-properties.cpp:109 +#: ../src/ui/dialog/document-properties.cpp:108 msgid "Border _color:" msgstr "_Randfarbe:" -#: ../src/ui/dialog/document-properties.cpp:109 +#: ../src/ui/dialog/document-properties.cpp:108 msgid "Page border color" msgstr "Randfarbe der Zeichenfläche" -#: ../src/ui/dialog/document-properties.cpp:109 +#: ../src/ui/dialog/document-properties.cpp:108 msgid "Color of the page border" msgstr "Randfarbe der Zeichenfläche" -#: ../src/ui/dialog/document-properties.cpp:110 +#: ../src/ui/dialog/document-properties.cpp:109 msgid "Default _units:" msgstr "_Standard-Einheiten:" #. --------------------------------------------------------------- #. General snap options -#: ../src/ui/dialog/document-properties.cpp:114 +#: ../src/ui/dialog/document-properties.cpp:113 msgid "Show _guides" msgstr "_Führungslinien anzeigen" -#: ../src/ui/dialog/document-properties.cpp:114 +#: ../src/ui/dialog/document-properties.cpp:113 msgid "Show or hide guides" msgstr "Führungslinien anzeigen oder ausblenden" -#: ../src/ui/dialog/document-properties.cpp:115 +#: ../src/ui/dialog/document-properties.cpp:114 msgid "Guide co_lor:" msgstr "F_arbe der Führungslinien:" -#: ../src/ui/dialog/document-properties.cpp:115 +#: ../src/ui/dialog/document-properties.cpp:114 msgid "Guideline color" msgstr "Farbe der Führungslinien" -#: ../src/ui/dialog/document-properties.cpp:115 +#: ../src/ui/dialog/document-properties.cpp:114 msgid "Color of guidelines" msgstr "Farbe der Führungslinien" -#: ../src/ui/dialog/document-properties.cpp:116 +#: ../src/ui/dialog/document-properties.cpp:115 msgid "_Highlight color:" msgstr "_Hervorhebungsfarbe:" -#: ../src/ui/dialog/document-properties.cpp:116 +#: ../src/ui/dialog/document-properties.cpp:115 msgid "Highlighted guideline color" msgstr "Farbe der hervorgehobenen Führungslinien" -#: ../src/ui/dialog/document-properties.cpp:116 +#: ../src/ui/dialog/document-properties.cpp:115 msgid "Color of a guideline when it is under mouse" msgstr "Farbe der Führungslinie falls unter dem Mauszeiger" #. --------------------------------------------------------------- -#: ../src/ui/dialog/document-properties.cpp:118 +#: ../src/ui/dialog/document-properties.cpp:117 msgid "Snap _distance" msgstr "Einrastabstand" -#: ../src/ui/dialog/document-properties.cpp:118 +#: ../src/ui/dialog/document-properties.cpp:117 msgid "Snap only when _closer than:" msgstr "Nur einrasten, wenn _näher als:" -#: ../src/ui/dialog/document-properties.cpp:118 -#: ../src/ui/dialog/document-properties.cpp:123 -#: ../src/ui/dialog/document-properties.cpp:128 +#: ../src/ui/dialog/document-properties.cpp:117 +#: ../src/ui/dialog/document-properties.cpp:122 +#: ../src/ui/dialog/document-properties.cpp:127 msgid "Always snap" msgstr "Immer einrasten" -#: ../src/ui/dialog/document-properties.cpp:119 +#: ../src/ui/dialog/document-properties.cpp:118 msgid "Snapping distance, in screen pixels, for snapping to objects" msgstr "Einrastabstand in Bildschirmpixeln, um an Objekten einzurasten" -#: ../src/ui/dialog/document-properties.cpp:119 +#: ../src/ui/dialog/document-properties.cpp:118 msgid "Always snap to objects, regardless of their distance" msgstr "" "Wenn gesetzt, dann rasten Objekte am nahesten Objekt ein, unabhängig von der " "Entfernung" -#: ../src/ui/dialog/document-properties.cpp:120 +#: ../src/ui/dialog/document-properties.cpp:119 msgid "" "If set, objects only snap to another object when it's within the range " "specified below" @@ -14571,25 +14412,25 @@ msgstr "" "definierten Reichweite sind." #. Options for snapping to grids -#: ../src/ui/dialog/document-properties.cpp:123 +#: ../src/ui/dialog/document-properties.cpp:122 msgid "Snap d_istance" msgstr "Einrastabstand:" -#: ../src/ui/dialog/document-properties.cpp:123 +#: ../src/ui/dialog/document-properties.cpp:122 msgid "Snap only when c_loser than:" msgstr "Nur einrasten, wenn _näher als:" -#: ../src/ui/dialog/document-properties.cpp:124 +#: ../src/ui/dialog/document-properties.cpp:123 msgid "Snapping distance, in screen pixels, for snapping to grid" msgstr "Einrastabstand in Bildschirmpixeln, um in das Gitter einzurasten" -#: ../src/ui/dialog/document-properties.cpp:124 +#: ../src/ui/dialog/document-properties.cpp:123 msgid "Always snap to grids, regardless of the distance" msgstr "" "Wenn gesetzt, dann rasten Objekte an der nahesten Gitterslinie ein, " "unabhängig von der Entfernung" -#: ../src/ui/dialog/document-properties.cpp:125 +#: ../src/ui/dialog/document-properties.cpp:124 msgid "" "If set, objects only snap to a grid line when it's within the range " "specified below" @@ -14598,25 +14439,25 @@ msgstr "" "Reichweite sind." #. Options for snapping to guides -#: ../src/ui/dialog/document-properties.cpp:128 +#: ../src/ui/dialog/document-properties.cpp:127 msgid "Snap dist_ance" msgstr "Einrastabstand" -#: ../src/ui/dialog/document-properties.cpp:128 +#: ../src/ui/dialog/document-properties.cpp:127 msgid "Snap only when close_r than:" msgstr "Nur einrasten, wenn _näher als:" -#: ../src/ui/dialog/document-properties.cpp:129 +#: ../src/ui/dialog/document-properties.cpp:128 msgid "Snapping distance, in screen pixels, for snapping to guides" msgstr "Einrastabstand in Bildschirmpixeln, um an Führungslinien einzurasten" -#: ../src/ui/dialog/document-properties.cpp:129 +#: ../src/ui/dialog/document-properties.cpp:128 msgid "Always snap to guides, regardless of the distance" msgstr "" "Objekte rasten immer an der nächsten Führungslinie ein, unabhängig von der " "Entfernung" -#: ../src/ui/dialog/document-properties.cpp:130 +#: ../src/ui/dialog/document-properties.cpp:129 msgid "" "If set, objects only snap to a guide when it's within the range specified " "below" @@ -14625,116 +14466,116 @@ msgstr "" "Reichweite sind." #. --------------------------------------------------------------- -#: ../src/ui/dialog/document-properties.cpp:133 +#: ../src/ui/dialog/document-properties.cpp:132 msgid "Snap to clip paths" msgstr "An Ausschneidepfaden einrasten" -#: ../src/ui/dialog/document-properties.cpp:133 +#: ../src/ui/dialog/document-properties.cpp:132 msgid "When snapping to paths, then also try snapping to clip paths" msgstr "" "Neben dem Einrasten an Pfaden, auch versuchen an Ausschbeidepfaden " "einzurasten" -#: ../src/ui/dialog/document-properties.cpp:134 +#: ../src/ui/dialog/document-properties.cpp:133 msgid "Snap to mask paths" msgstr "An Maskierungspfaden einrasten" -#: ../src/ui/dialog/document-properties.cpp:134 +#: ../src/ui/dialog/document-properties.cpp:133 msgid "When snapping to paths, then also try snapping to mask paths" msgstr "" "Neben dem Einrasten an Pfaden, auch versuchen an Maskierungspfaden " "einzurasten" -#: ../src/ui/dialog/document-properties.cpp:135 +#: ../src/ui/dialog/document-properties.cpp:134 msgid "Snap perpendicularly" msgstr "Senkrecht einrasten" -#: ../src/ui/dialog/document-properties.cpp:135 +#: ../src/ui/dialog/document-properties.cpp:134 msgid "" "When snapping to paths or guides, then also try snapping perpendicularly" msgstr "" "Neben dem Einrasten an Pfaden oder Führungslinien, auch versuchen senkrecht " "einzurasten" -#: ../src/ui/dialog/document-properties.cpp:136 +#: ../src/ui/dialog/document-properties.cpp:135 msgid "Snap tangentially" msgstr "Tangential einrasten" -#: ../src/ui/dialog/document-properties.cpp:136 +#: ../src/ui/dialog/document-properties.cpp:135 msgid "When snapping to paths or guides, then also try snapping tangentially" msgstr "" "Neben dem Einrasten an Pfaden oder Führungslinien, auch versuchen tangential " "einzurasten" -#: ../src/ui/dialog/document-properties.cpp:139 +#: ../src/ui/dialog/document-properties.cpp:138 msgctxt "Grid" msgid "_New" msgstr "_Neu" -#: ../src/ui/dialog/document-properties.cpp:139 +#: ../src/ui/dialog/document-properties.cpp:138 msgid "Create new grid." msgstr "Neues Gitter erzeugen." -#: ../src/ui/dialog/document-properties.cpp:140 +#: ../src/ui/dialog/document-properties.cpp:139 msgctxt "Grid" msgid "_Remove" msgstr "_Entfernen" -#: ../src/ui/dialog/document-properties.cpp:140 +#: ../src/ui/dialog/document-properties.cpp:139 msgid "Remove selected grid." msgstr "Ausgewähltes Gitter entfernen." -#: ../src/ui/dialog/document-properties.cpp:147 -#: ../src/widgets/toolbox.cpp:1835 +#: ../src/ui/dialog/document-properties.cpp:146 +#: ../src/widgets/toolbox.cpp:1829 msgid "Guides" msgstr "Führungslinien" -#: ../src/ui/dialog/document-properties.cpp:149 ../src/verbs.cpp:2685 +#: ../src/ui/dialog/document-properties.cpp:148 ../src/verbs.cpp:2739 msgid "Snap" msgstr "Einrasten" -#: ../src/ui/dialog/document-properties.cpp:151 +#: ../src/ui/dialog/document-properties.cpp:150 msgid "Scripting" msgstr "Skripte" # !!! -#: ../src/ui/dialog/document-properties.cpp:311 +#: ../src/ui/dialog/document-properties.cpp:310 msgid "General" msgstr "Allgemein" # !!! -#: ../src/ui/dialog/document-properties.cpp:313 +#: ../src/ui/dialog/document-properties.cpp:312 msgid "Color" msgstr "Farbe" # !!! -#: ../src/ui/dialog/document-properties.cpp:315 +#: ../src/ui/dialog/document-properties.cpp:314 msgid "Border" msgstr "Rand" # !!! -#: ../src/ui/dialog/document-properties.cpp:317 +#: ../src/ui/dialog/document-properties.cpp:316 msgid "Page Size" msgstr "Seitengröße" # !!! -#: ../src/ui/dialog/document-properties.cpp:350 +#: ../src/ui/dialog/document-properties.cpp:349 msgid "Guides" msgstr "Führungslinien" -#: ../src/ui/dialog/document-properties.cpp:368 +#: ../src/ui/dialog/document-properties.cpp:367 msgid "Snap to objects" msgstr "An Objekten einrasten" -#: ../src/ui/dialog/document-properties.cpp:370 +#: ../src/ui/dialog/document-properties.cpp:369 msgid "Snap to grids" msgstr "Am Gitter einrasten" -#: ../src/ui/dialog/document-properties.cpp:372 +#: ../src/ui/dialog/document-properties.cpp:371 msgid "Snap to guides" msgstr "An Führungslinien einrasten" -#: ../src/ui/dialog/document-properties.cpp:374 +#: ../src/ui/dialog/document-properties.cpp:373 msgid "Miscellaneous" msgstr "Verschiedenes" @@ -14742,132 +14583,132 @@ msgstr "Verschiedenes" #. Inkscape::GC::release(defsRepr); #. inform the document, so we can undo #. Color Management -#: ../src/ui/dialog/document-properties.cpp:487 ../src/verbs.cpp:2860 +#: ../src/ui/dialog/document-properties.cpp:486 ../src/verbs.cpp:2912 msgid "Link Color Profile" msgstr "Farb-Profil verknüpfen" -#: ../src/ui/dialog/document-properties.cpp:588 +#: ../src/ui/dialog/document-properties.cpp:587 msgid "Remove linked color profile" msgstr "Verknüpftes Farb-Profil entfernen" -#: ../src/ui/dialog/document-properties.cpp:601 +#: ../src/ui/dialog/document-properties.cpp:600 msgid "Linked Color Profiles:" msgstr "Verknüpfte Farb-Profile:" -#: ../src/ui/dialog/document-properties.cpp:603 +#: ../src/ui/dialog/document-properties.cpp:602 msgid "Available Color Profiles:" msgstr "Verfügbare Farb-Profile:" -#: ../src/ui/dialog/document-properties.cpp:605 +#: ../src/ui/dialog/document-properties.cpp:604 msgid "Link Profile" msgstr "Profil verknüpfen" -#: ../src/ui/dialog/document-properties.cpp:608 +#: ../src/ui/dialog/document-properties.cpp:607 msgid "Unlink Profile" msgstr "Profil entknüpfen" -#: ../src/ui/dialog/document-properties.cpp:686 +#: ../src/ui/dialog/document-properties.cpp:685 msgid "Profile Name" msgstr "Profil-Name" -#: ../src/ui/dialog/document-properties.cpp:722 +#: ../src/ui/dialog/document-properties.cpp:721 msgid "External scripts" msgstr "Externe Scripte" -#: ../src/ui/dialog/document-properties.cpp:723 +#: ../src/ui/dialog/document-properties.cpp:722 msgid "Embedded scripts" msgstr "Eingebettete Scripte" -#: ../src/ui/dialog/document-properties.cpp:728 +#: ../src/ui/dialog/document-properties.cpp:727 msgid "External script files:" msgstr "Externe Script-Dateien:" -#: ../src/ui/dialog/document-properties.cpp:730 +#: ../src/ui/dialog/document-properties.cpp:729 msgid "Add the current file name or browse for a file" msgstr "" "Fügen Sie den aktuellen Dateinamen hinzu oder suchen Sie nach einer Datei" -#: ../src/ui/dialog/document-properties.cpp:733 -#: ../src/ui/dialog/document-properties.cpp:811 -#: ../src/ui/widget/selected-style.cpp:334 +#: ../src/ui/dialog/document-properties.cpp:732 +#: ../src/ui/dialog/document-properties.cpp:810 +#: ../src/ui/widget/selected-style.cpp:339 msgid "Remove" msgstr "Entfernen" -#: ../src/ui/dialog/document-properties.cpp:798 +#: ../src/ui/dialog/document-properties.cpp:797 msgid "Filename" msgstr "Dateiname" -#: ../src/ui/dialog/document-properties.cpp:806 +#: ../src/ui/dialog/document-properties.cpp:805 msgid "Embedded script files:" msgstr "Eingebettete Script-Dateien:" -#: ../src/ui/dialog/document-properties.cpp:808 +#: ../src/ui/dialog/document-properties.cpp:807 msgid "New" msgstr "Neu" -#: ../src/ui/dialog/document-properties.cpp:875 +#: ../src/ui/dialog/document-properties.cpp:874 msgid "Script id" msgstr "Skript id" -#: ../src/ui/dialog/document-properties.cpp:881 +#: ../src/ui/dialog/document-properties.cpp:880 msgid "Content:" msgstr "Inhalt:" -#: ../src/ui/dialog/document-properties.cpp:998 +#: ../src/ui/dialog/document-properties.cpp:997 msgid "_Save as default" msgstr "Zur Vorgabe machen" -#: ../src/ui/dialog/document-properties.cpp:999 +#: ../src/ui/dialog/document-properties.cpp:998 msgid "Save this metadata as the default metadata" msgstr "Metadaten als Standard-Metadaten abspeichern" -#: ../src/ui/dialog/document-properties.cpp:1000 +#: ../src/ui/dialog/document-properties.cpp:999 msgid "Use _default" msgstr "Standardeinstellungen benutzen" -#: ../src/ui/dialog/document-properties.cpp:1001 +#: ../src/ui/dialog/document-properties.cpp:1000 msgid "Use the previously saved default metadata here" msgstr "Verwenden Sie hier die zuvor gespeicherte Standardmetadaten" #. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1074 +#: ../src/ui/dialog/document-properties.cpp:1073 msgid "Add external script..." msgstr "Füge externes Script hinzu..." -#: ../src/ui/dialog/document-properties.cpp:1113 +#: ../src/ui/dialog/document-properties.cpp:1112 msgid "Select a script to load" msgstr "Skript zum Laden auswählen" #. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1141 +#: ../src/ui/dialog/document-properties.cpp:1140 msgid "Add embedded script..." msgstr "Füge eingebettetes Script hinzu..." #. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1172 +#: ../src/ui/dialog/document-properties.cpp:1171 msgid "Remove external script" msgstr "Lösche externes Script" #. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1206 +#: ../src/ui/dialog/document-properties.cpp:1205 msgid "Remove embedded script" msgstr "Eingebettetes Script entfernen" #. TODO repr->set_content(_EmbeddedContent.get_buffer()->get_text()); #. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1306 +#: ../src/ui/dialog/document-properties.cpp:1305 msgid "Edit embedded script" msgstr "Eingebettetes Script bearbeiten" -#: ../src/ui/dialog/document-properties.cpp:1389 +#: ../src/ui/dialog/document-properties.cpp:1388 msgid "Creation" msgstr "Erzeugen" -#: ../src/ui/dialog/document-properties.cpp:1390 +#: ../src/ui/dialog/document-properties.cpp:1389 msgid "Defined grids" msgstr "Definierte Gitter" -#: ../src/ui/dialog/document-properties.cpp:1618 +#: ../src/ui/dialog/document-properties.cpp:1617 msgid "Remove grid" msgstr "Gitter entfernen" @@ -14875,8 +14716,8 @@ msgstr "Gitter entfernen" msgid "Information" msgstr "Information" -#: ../src/ui/dialog/extension-editor.cpp:82 ../src/verbs.cpp:289 -#: ../src/verbs.cpp:308 ../share/extensions/color_custom.inx.h:7 +#: ../src/ui/dialog/extension-editor.cpp:82 ../src/verbs.cpp:290 +#: ../src/verbs.cpp:309 ../share/extensions/color_custom.inx.h:7 #: ../share/extensions/color_HSL_adjust.inx.h:11 #: ../share/extensions/color_randomize.inx.h:6 #: ../share/extensions/dots.inx.h:7 @@ -15190,99 +15031,99 @@ msgstr "_Duplizieren" msgid "_Filter" msgstr "_Filter" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1168 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1174 msgid "R_ename" msgstr "Umb_enennen" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1298 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1304 msgid "Rename filter" msgstr "Filter umbenennen" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1335 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1348 msgid "Apply filter" msgstr "Filter anwenden" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1405 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1418 msgid "filter" msgstr "Filter" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1412 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1425 msgid "Add filter" msgstr "Filter hinzufügen" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1464 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1477 msgid "Duplicate filter" msgstr "Filter duplizieren" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1563 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1576 msgid "_Effect" msgstr "_Effekt" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1573 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1586 msgid "Connections" msgstr "Verbindungen" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1711 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1724 msgid "Remove filter primitive" msgstr "Filterbaustein entfernen" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2299 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2312 msgid "Remove merge node" msgstr "Zusammengefassten Knoten löschen" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2419 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2432 msgid "Reorder filter primitive" msgstr "Filterbausteine umordnen" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2499 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2512 msgid "Add Effect:" msgstr "Effekt hinzufügen:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2500 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2513 msgid "No effect selected" msgstr "Kein Effekt gewählt" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2501 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2514 msgid "No filter selected" msgstr "Kein Filter gewählt" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2547 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2560 msgid "Effect parameters" msgstr "Effektparameter" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2548 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2561 msgid "Filter General Settings" msgstr "Allgemeine Filtereinstellungen" #. default x: #. default y: -#: ../src/ui/dialog/filter-effects-dialog.cpp:2606 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2619 msgid "Coordinates:" msgstr "Koordinaten:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2606 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2619 msgid "X coordinate of the left corners of filter effects region" msgstr "X-Koordinate der linken Ecke des Ausschnitts, auf den Filter wirkt" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2606 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2619 msgid "Y coordinate of the upper corners of filter effects region" msgstr "Y-Koordinate der obere Ecke des Ausschnitts, auf den Filter wirkt" #. default width: #. default height: -#: ../src/ui/dialog/filter-effects-dialog.cpp:2607 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2620 msgid "Dimensions:" msgstr "Dimensionen:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2607 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2620 msgid "Width of filter effects region" msgstr "Breite des Filtereffekts" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2607 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2620 msgid "Height of filter effects region" msgstr "Höhe des Filtereffekts" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2613 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2626 msgid "" "Indicates the type of matrix operation. The keyword 'matrix' indicates that " "a full 5x4 matrix of values will be provided. The other keywords represent " @@ -15294,23 +15135,23 @@ msgstr "" "für oft verwendete Farboperationen bereitstellen, ohne eine komplette Matrix " "angeben zu müssen." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2614 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2627 msgid "Value(s):" msgstr "Wert(e):" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2629 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2669 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2642 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2682 msgid "Operator:" msgstr "Operator:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2630 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 msgid "K1:" msgstr "K1:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2630 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2631 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2632 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2633 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2645 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2646 msgid "" "If the arithmetic operation is chosen, each result pixel is computed using " "the formula k1*i1*i2 + k2*i1 + k3*i2 + k4 where i1 and i2 are the pixel " @@ -15320,38 +15161,38 @@ msgstr "" "Formel k1*i1*i2 + k2*i1 + k3*i2 + k4 berechnet, wobei i1 und i2 die Werte " "der Eingangsbildpunkte sind." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2631 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 msgid "K2:" msgstr "K2:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2632 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2645 msgid "K3:" msgstr "K3:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2633 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2646 msgid "K4:" msgstr "K4:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 msgid "Size:" msgstr "Größe:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 msgid "width of the convolve matrix" msgstr "Breite der Faltungsmatrix" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 msgid "height of the convolve matrix" msgstr "Höhe der Faltungsmatrix" #. default x: #. default y: -#: ../src/ui/dialog/filter-effects-dialog.cpp:2637 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2650 #: ../src/ui/dialog/object-attributes.cpp:48 msgid "Target:" msgstr "Target:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2637 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2650 msgid "" "X coordinate of the target point in the convolve matrix. The convolution is " "applied to pixels around this point." @@ -15359,7 +15200,7 @@ msgstr "" "X-Koordinate des Zielpunktes der Faltung. Die Faltungsmatrix wirkt auf Pixel " "um diesen Punkt herum." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2637 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2650 msgid "" "Y coordinate of the target point in the convolve matrix. The convolution is " "applied to pixels around this point." @@ -15368,11 +15209,11 @@ msgstr "" "um diesen Punkt herum." #. TRANSLATORS: for info on "Kernel", see http://en.wikipedia.org/wiki/Kernel_(matrix) -#: ../src/ui/dialog/filter-effects-dialog.cpp:2639 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2652 msgid "Kernel:" msgstr "Faltungsmatrix:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2639 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2652 msgid "" "This matrix describes the convolve operation that is applied to the input " "image in order to calculate the pixel colors at the output. Different " @@ -15388,11 +15229,11 @@ msgstr "" "(entlang der Richtung der Matrixdiagonalen), während eine Matrix mit " "konstanten Einträgen eine isotrope Unschärfe erzeugt." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2641 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 msgid "Divisor:" msgstr "Teiler:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2641 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 msgid "" "After applying the kernelMatrix to the input image to yield a number, that " "number is divided by divisor to yield the final destination color value. A " @@ -15404,11 +15245,11 @@ msgstr "" "erhalten. Ist der Divisor die Summe der Matrixeinträge, so wird das Ergebnis " "eine gemittelte Farbintensität aufweisen." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2642 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 msgid "Bias:" msgstr "Grundwert:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2642 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 msgid "" "This value is added to each component. This is useful to define a constant " "value as the zero response of the filter." @@ -15416,11 +15257,11 @@ msgstr "" "Dieser Wert wird zu jeder Komponente hinzu addiert. Dies ergibt eine " "Grundantwort des Filters bei leerer Eingabe." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2656 msgid "Edge Mode:" msgstr "Kanten-Modus:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2656 msgid "" "Determines how to extend the input image as necessary with color values so " "that the matrix operations can be applied when the kernel is positioned at " @@ -15430,33 +15271,33 @@ msgstr "" "erweitert wird, damit die Faltungsmatrix bis an die Kanten des Originals " "angewendet werden kann." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2657 msgid "Preserve Alpha" msgstr "Alphawert beibehalten" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2657 msgid "If set, the alpha channel won't be altered by this filter primitive." msgstr "" "Wenn gesetzt, wird der Alphakanal von diesem Filterbaustein nicht " "beeinflusst." #. default: white -#: ../src/ui/dialog/filter-effects-dialog.cpp:2647 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2660 msgid "Diffuse Color:" msgstr "Diffusreflektierende Farbe:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2647 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2680 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2660 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2693 msgid "Defines the color of the light source" msgstr "Definiert die Farbe der Lichtquelle" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2648 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2681 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2661 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2694 msgid "Surface Scale:" msgstr "Oberflächenskalierung:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2648 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2681 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2661 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2694 msgid "" "This value amplifies the heights of the bump map defined by the input alpha " "channel" @@ -15464,59 +15305,59 @@ msgstr "" "Dieser Wert multipliziert die Oberflächenstruktur, die aus dem Alphakanal " "der Eingabe gewonnen wird." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2682 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2662 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2695 msgid "Constant:" msgstr "Konstante:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2682 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2662 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2695 msgid "This constant affects the Phong lighting model." msgstr "Diese Größe beeinflusst die Phong-Beleuchtung." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2650 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2684 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2663 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2697 msgid "Kernel Unit Length:" msgstr "Größe der Faltungsmatrixeinheit:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2667 msgid "This defines the intensity of the displacement effect." msgstr "Dies bestimmt die Stärke des Versatzeffekts." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2668 msgid "X displacement:" msgstr "X-Verschiebung:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2668 msgid "Color component that controls the displacement in the X direction" msgstr "Farbkomponente, die den Versatz in X-Richtung bestimmt" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2656 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2669 msgid "Y displacement:" msgstr "Y-Verschiebung:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2656 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2669 msgid "Color component that controls the displacement in the Y direction" msgstr "Farbkomponente, die den Versatz in Y-Richtung bestimmt" #. default: black -#: ../src/ui/dialog/filter-effects-dialog.cpp:2659 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2672 msgid "Flood Color:" msgstr "Füllfarbe:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2659 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2672 msgid "The whole filter region will be filled with this color." msgstr "Die gesamte Filterregion wird mit dieser Farbe gefüllt." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2663 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 msgid "Standard Deviation:" msgstr "Standard Abweichung:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2663 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 msgid "The standard deviation for the blur operation." msgstr "Standardabweichung für die Unschärfeoperation" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2669 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2682 msgid "" "Erode: performs \"thinning\" of input image.\n" "Dilate: performs \"fattenning\" of input image." @@ -15524,67 +15365,67 @@ msgstr "" "Erodieren: \"Verdünnt\" das Eingangsbild.\n" "Weiten:\"Verdickt\" das Eingangsbild." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2673 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2686 msgid "Source of Image:" msgstr "Bild-Quelle:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2689 msgid "Delta X:" msgstr "Delta X:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2689 msgid "This is how far the input image gets shifted to the right" msgstr "Um diesen Betrag wird das Eingangsbild nach rechts verschoben." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2677 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2690 msgid "Delta Y:" msgstr "Delta Y:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2677 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2690 msgid "This is how far the input image gets shifted downwards" msgstr "Um diesen Betrag wird das Eingangsbild nach unten verschoben." #. default: white -#: ../src/ui/dialog/filter-effects-dialog.cpp:2680 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2693 msgid "Specular Color:" msgstr "Glanzpunktfarbe:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2683 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2696 #: ../share/extensions/interp.inx.h:2 msgid "Exponent:" msgstr "Exponent:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2683 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2696 msgid "Exponent for specular term, larger is more \"shiny\"." msgstr "Exponent bestimmt Glanzlicht, größer ist \"glänzender\"" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2692 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2705 msgid "" "Indicates whether the filter primitive should perform a noise or turbulence " "function." msgstr "Zeigt an, ob der Filterbaustein Rauschen oder Turbulenz erzeugt." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2693 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2706 msgid "Base Frequency:" msgstr "Basisfrequenz:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2694 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2707 msgid "Octaves:" msgstr "Oktaven:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2695 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2708 msgid "Seed:" msgstr "Startwert:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2695 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2708 msgid "The starting number for the pseudo random number generator." msgstr "Startwert des Pseudozufallsgenerators" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2707 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2720 msgid "Add filter primitive" msgstr "Filterbaustein hinzufügen" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2724 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2737 msgid "" "The feBlend filter primitive provides 4 image blending modes: screen, " "multiply, darken and lighten." @@ -15592,7 +15433,7 @@ msgstr "" "Der Mischen Filterbaustein sieht 4 Bild-Misch-Modi vor: Screen, " "Multiplizieren, Verdunkeln und Aufhellen." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2728 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2741 msgid "" "The feColorMatrix filter primitive applies a matrix transformation to " "color of each rendered pixel. This allows for effects like turning object to " @@ -15602,7 +15443,7 @@ msgstr "" "die Farben der gerenderten Pixel an. Dies erlaubt Effekte wie Umwandeln in " "Graustufen, Modifizieren der Sättigung und Änderung des Farbwerts." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2732 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2745 msgid "" "The feComponentTransfer filter primitive manipulates the input's " "color components (red, green, blue, and alpha) according to particular " @@ -15614,7 +15455,7 @@ msgstr "" "festzulegender Transferfunktionen. Dies erlaubt Operationen wie Helligkeits- " "und Kontrasteinstellung, Farbbalance und Schwellenwerte." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2736 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2749 msgid "" "The feComposite filter primitive composites two images using one of " "the Porter-Duff blending modes or the arithmetic mode described in SVG " @@ -15627,7 +15468,7 @@ msgstr "" "Wesentlichen aus logischen Operationen zwischen den korrespondierenden Pixel-" "Werten der Bilder." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2740 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2753 msgid "" "The feConvolveMatrix lets you specify a Convolution to be applied on " "the image. Common effects created using convolution matrices are blur, " @@ -15642,7 +15483,7 @@ msgstr "" "allerdings ist der spezialisierte Effekt schneller und von der Auflösung " "unabhängig. " -#: ../src/ui/dialog/filter-effects-dialog.cpp:2744 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2757 msgid "" "The feDiffuseLighting and feSpecularLighting filter primitives create " "\"embossed\" shadings. The input's alpha channel is used to provide depth " @@ -15654,7 +15495,7 @@ msgstr "" "verwendet, um Höheninformationen zu erhalten: opakere Gebiete werden " "angehoben, weniger opake abgesenkt." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2748 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2761 msgid "" "The feDisplacementMap filter primitive displaces the pixels in the " "first input using the second input as a displacement map, that shows from " @@ -15666,7 +15507,7 @@ msgstr "" "definiert, woher die Pixel kommen sollen. Klassische Beispiele sind Wirbel- " "und Quetscheffekte." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2752 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2765 msgid "" "The feFlood filter primitive fills the region with a given color and " "opacity. It is usually used as an input to other filters to apply color to " @@ -15676,7 +15517,7 @@ msgstr "" "und Opazität. Normalerweise wird dies als Eingang für andere Filter " "verwendet, um so Farben ins Spiel zu bringen." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2756 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2769 msgid "" "The feGaussianBlur filter primitive uniformly blurs its input. It is " "commonly used together with feOffset to create a drop shadow effect." @@ -15685,7 +15526,7 @@ msgstr "" "Er wird normalerweise zusammen mit dem Filterbaustein Versatz benutzt, um " "abgesetzte Schatten zu erzeugen." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2760 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2773 msgid "" "The feImage filter primitive fills the region with an external image " "or another part of the document." @@ -15693,7 +15534,7 @@ msgstr "" "Der Filterbaustein Bild füllt eine Region mit einem externen Bild " "oder einem anderen Teil des Dokuments." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2764 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2777 msgid "" "The feMerge filter primitive composites several temporary images " "inside the filter primitive to a single image. It uses normal alpha " @@ -15705,7 +15546,7 @@ msgstr "" "zu den Bausteinen Überblenden im Normalmodus oder Verbund im \"Überlagern\"-" "Modus." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2768 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2781 msgid "" "The feMorphology filter primitive provides erode and dilate effects. " "For single-color objects erode makes the object thinner and dilate makes it " @@ -15715,7 +15556,7 @@ msgstr "" "\"Weiten\" zur Verfügung. Für einfarbige Objekte wirkt \"Erodieren\" " "ausdünnend und \"Weiten\" verdickend." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2772 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2785 msgid "" "The feOffset filter primitive offsets the image by an user-defined " "amount. For example, this is useful for drop shadows, where the shadow is in " @@ -15726,7 +15567,7 @@ msgstr "" "die sich an einer leicht anderen Position als das eigentliche Objekt " "befinden." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2776 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2789 msgid "" "The feDiffuseLighting and feSpecularLighting filter primitives " "create \"embossed\" shadings. The input's alpha channel is used to provide " @@ -15738,14 +15579,14 @@ msgstr "" "verwendet, um Tiefeninformationen zu erhalten: opakere Gebiete werden " "angehoben, weniger opake abgesenkt." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2780 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2793 msgid "" "The feTile filter primitive tiles a region with its input graphic" msgstr "" "Der Filterbaustein Kacheln belegt einen Bereich mit Kopien einer " "Graphik." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2784 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2797 msgid "" "The feTurbulence filter primitive renders Perlin noise. This kind of " "noise is useful in simulating several nature phenomena like clouds, fire and " @@ -15755,11 +15596,11 @@ msgstr "" "Rauschen kann verwendet werden, um natürliche Phänomene wie Wolken, Feuer " "oder Rauch, sowie komplexe Texturen wie Marmor oder Granit nachzubilden." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2803 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2816 msgid "Duplicate filter primitive" msgstr "Filterbaustein duplizieren" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2856 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2869 msgid "Set filter primitive attribute" msgstr "Attribut für Filterbaustein setzen" @@ -15946,7 +15787,7 @@ msgstr "Spiralen" msgid "Search spirals" msgstr "Spiralen durchsuchen" -#: ../src/ui/dialog/find.cpp:102 ../src/widgets/toolbox.cpp:1736 +#: ../src/ui/dialog/find.cpp:102 ../src/widgets/toolbox.cpp:1730 msgid "Paths" msgstr "Pfade" @@ -17240,12 +17081,12 @@ msgstr "Objekt-Farbstil" #. Zoom #: ../src/ui/dialog/inkscape-preferences.cpp:376 -#: ../src/widgets/desktop-widget.cpp:631 +#: ../src/widgets/desktop-widget.cpp:635 msgid "Zoom" msgstr "Zoomfaktor" #. Measure -#: ../src/ui/dialog/inkscape-preferences.cpp:381 ../src/verbs.cpp:2619 +#: ../src/ui/dialog/inkscape-preferences.cpp:381 ../src/verbs.cpp:2673 msgctxt "ContextVerb" msgid "Measure" msgstr "Ausmessen" @@ -17310,7 +17151,7 @@ msgstr "" "(vorherige Auswahl ist nicht mehr aktiv)" #. Text -#: ../src/ui/dialog/inkscape-preferences.cpp:439 ../src/verbs.cpp:2611 +#: ../src/ui/dialog/inkscape-preferences.cpp:439 ../src/verbs.cpp:2665 msgctxt "ContextVerb" msgid "Text" msgstr "Text" @@ -17338,6 +17179,30 @@ msgstr "" "Zeigt Schriftartenersetzungs-Warnmeldung, wenn angeforderte Schriftartenauf " "dem System nicht verfügbar sind" +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Pixel" +msgstr "Pixel" + +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Pica" +msgstr "Pica" + +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Millimeter" +msgstr "Millimeter" + +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Centimeter" +msgstr "Zentimeter" + +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Inch" +msgstr "Zoll" + +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Em square" +msgstr "Em-Quadrat" + #. , _("Ex square"), _("Percent") #. , SP_CSS_UNIT_EX, SP_CSS_UNIT_PERCENT #: ../src/ui/dialog/inkscape-preferences.cpp:454 @@ -17384,8 +17249,8 @@ msgstr "Farbeimer" #. Gradient #: ../src/ui/dialog/inkscape-preferences.cpp:478 -#: ../src/widgets/gradient-selector.cpp:150 -#: ../src/widgets/gradient-selector.cpp:302 +#: ../src/widgets/gradient-selector.cpp:151 +#: ../src/widgets/gradient-selector.cpp:303 msgid "Gradient" msgstr "Farbverlauf" @@ -18206,9 +18071,9 @@ msgid "_Click/drag threshold:" msgstr "Schwellwert für Klicken/Ziehen:" #: ../src/ui/dialog/inkscape-preferences.cpp:852 -#: ../src/ui/dialog/inkscape-preferences.cpp:1190 #: ../src/ui/dialog/inkscape-preferences.cpp:1194 -#: ../src/ui/dialog/inkscape-preferences.cpp:1204 +#: ../src/ui/dialog/inkscape-preferences.cpp:1198 +#: ../src/ui/dialog/inkscape-preferences.cpp:1208 msgid "pixels" msgstr "Pixel" @@ -18297,20 +18162,36 @@ msgstr "" msgid "Path data" msgstr "Pfad Daten" -#: ../src/ui/dialog/inkscape-preferences.cpp:882 -msgid "Allow relative coordinates" -msgstr "Relative Koordinaten erlauben." +#: ../src/ui/dialog/inkscape-preferences.cpp:883 +msgid "Absolute" +msgstr "Absolut" + +#: ../src/ui/dialog/inkscape-preferences.cpp:883 +msgid "Relative" +msgstr "Relativ zu: " #: ../src/ui/dialog/inkscape-preferences.cpp:883 -msgid "If set, relative coordinates may be used in path data" +#: ../src/ui/dialog/inkscape-preferences.cpp:1173 +msgid "Optimized" +msgstr "Optimiert" + +#: ../src/ui/dialog/inkscape-preferences.cpp:887 +#, fuzzy +msgid "Path string format" +msgstr "Entwurfspfad Farbe" + +#: ../src/ui/dialog/inkscape-preferences.cpp:887 +msgid "" +"Path data should be written: only with absolute coordinates, only with " +"relative coordinates, or optimized for string length (mixed absolute and " +"relative coordinates)" msgstr "" -"Wenn gesetzt können relative Koordinaten als Pfaddaten verwendet werden." -#: ../src/ui/dialog/inkscape-preferences.cpp:885 +#: ../src/ui/dialog/inkscape-preferences.cpp:889 msgid "Force repeat commands" msgstr "Erzwinge Kommandowiederholung" -#: ../src/ui/dialog/inkscape-preferences.cpp:886 +#: ../src/ui/dialog/inkscape-preferences.cpp:890 msgid "" "Force repeating of the same path command (for example, 'L 1,2 L 3,4' instead " "of 'L 1,2 3,4')" @@ -18318,23 +18199,23 @@ msgstr "" "Erzwingt die Wiederholung von Pfad-Kommandos (z.B. 'L 1,2 L 3,4' anstatt 'L " "1,2 3,4')" -#: ../src/ui/dialog/inkscape-preferences.cpp:888 +#: ../src/ui/dialog/inkscape-preferences.cpp:892 msgid "Numbers" msgstr "Zahlen" -#: ../src/ui/dialog/inkscape-preferences.cpp:891 +#: ../src/ui/dialog/inkscape-preferences.cpp:895 msgid "_Numeric precision:" msgstr "Genauigkeit:" -#: ../src/ui/dialog/inkscape-preferences.cpp:891 +#: ../src/ui/dialog/inkscape-preferences.cpp:895 msgid "Significant figures of the values written to the SVG file" msgstr "Maßgebliche Zahlen der Werte, die in die SVG-Datei geschrieben werden" -#: ../src/ui/dialog/inkscape-preferences.cpp:894 +#: ../src/ui/dialog/inkscape-preferences.cpp:898 msgid "Minimum _exponent:" msgstr "Minimal _Exponent:" -#: ../src/ui/dialog/inkscape-preferences.cpp:894 +#: ../src/ui/dialog/inkscape-preferences.cpp:898 msgid "" "The smallest number written to SVG is 10 to the power of this exponent; " "anything smaller is written as zero" @@ -18344,17 +18225,17 @@ msgstr "" #. Code to add controls for attribute checking options #. Add incorrect style properties options -#: ../src/ui/dialog/inkscape-preferences.cpp:899 +#: ../src/ui/dialog/inkscape-preferences.cpp:903 msgid "Improper Attributes Actions" msgstr "Unsachgemäße Attribut-Aktionen" -#: ../src/ui/dialog/inkscape-preferences.cpp:901 -#: ../src/ui/dialog/inkscape-preferences.cpp:909 -#: ../src/ui/dialog/inkscape-preferences.cpp:917 +#: ../src/ui/dialog/inkscape-preferences.cpp:905 +#: ../src/ui/dialog/inkscape-preferences.cpp:913 +#: ../src/ui/dialog/inkscape-preferences.cpp:921 msgid "Print warnings" msgstr "Drucke Warnungen" -#: ../src/ui/dialog/inkscape-preferences.cpp:902 +#: ../src/ui/dialog/inkscape-preferences.cpp:906 msgid "" "Print warning if invalid or non-useful attributes found. Database files " "located in inkscape_data_dir/attributes." @@ -18362,20 +18243,20 @@ msgstr "" "Gebe Warnung aus, wenn ungültige oder nicht-nützliche Attribute gefunden " "werden. Datenbank-Dateien liegen in inkscape_data_dir/Attribute." -#: ../src/ui/dialog/inkscape-preferences.cpp:903 +#: ../src/ui/dialog/inkscape-preferences.cpp:907 msgid "Remove attributes" msgstr "Attribute löschen" -#: ../src/ui/dialog/inkscape-preferences.cpp:904 +#: ../src/ui/dialog/inkscape-preferences.cpp:908 msgid "Delete invalid or non-useful attributes from element tag" msgstr "Löscht ungültige oder nicht-nützliche Attribute vom Element Tag" #. Add incorrect style properties options -#: ../src/ui/dialog/inkscape-preferences.cpp:907 +#: ../src/ui/dialog/inkscape-preferences.cpp:911 msgid "Inappropriate Style Properties Actions" msgstr "Unangemessene Stileigenschaften-Aktionen" -#: ../src/ui/dialog/inkscape-preferences.cpp:910 +#: ../src/ui/dialog/inkscape-preferences.cpp:914 msgid "" "Print warning if inappropriate style properties found (i.e. 'font-family' " "set on a ). Database files located in inkscape_data_dir/attributes." @@ -18384,21 +18265,21 @@ msgstr "" "'Schrift-Familie' auf einem gesetzt). Datenbank-Dateien liegen in " "inkscape_data_dir/Attribute." -#: ../src/ui/dialog/inkscape-preferences.cpp:911 -#: ../src/ui/dialog/inkscape-preferences.cpp:919 +#: ../src/ui/dialog/inkscape-preferences.cpp:915 +#: ../src/ui/dialog/inkscape-preferences.cpp:923 msgid "Remove style properties" msgstr "Stileigenschaften löschen" -#: ../src/ui/dialog/inkscape-preferences.cpp:912 +#: ../src/ui/dialog/inkscape-preferences.cpp:916 msgid "Delete inappropriate style properties" msgstr "Unpassende Stileigenschaften löschen" #. Add default or inherited style properties options -#: ../src/ui/dialog/inkscape-preferences.cpp:915 +#: ../src/ui/dialog/inkscape-preferences.cpp:919 msgid "Non-useful Style Properties Actions" msgstr "Nicht-nützliche Stileigenschafts-Aktionen" -#: ../src/ui/dialog/inkscape-preferences.cpp:918 +#: ../src/ui/dialog/inkscape-preferences.cpp:922 msgid "" "Print warning if redundant style properties found (i.e. if a property has " "the default value and a different value is not inherited or if value is the " @@ -18410,19 +18291,19 @@ msgstr "" "vererbt wird oder wenn ein Wert der gleiche ist, wenn er vererbt würde). " "Datenbank-Dateien liegen in inkscape_data_dir/Attribute." -#: ../src/ui/dialog/inkscape-preferences.cpp:920 +#: ../src/ui/dialog/inkscape-preferences.cpp:924 msgid "Delete redundant style properties" msgstr "Redundante Stileigenschaften löschen" -#: ../src/ui/dialog/inkscape-preferences.cpp:922 +#: ../src/ui/dialog/inkscape-preferences.cpp:926 msgid "Check Attributes and Style Properties on" msgstr "Überprüfen Sie Attribute und Style-Eigenschaften auf" -#: ../src/ui/dialog/inkscape-preferences.cpp:924 +#: ../src/ui/dialog/inkscape-preferences.cpp:928 msgid "Reading" msgstr "Lesen" -#: ../src/ui/dialog/inkscape-preferences.cpp:925 +#: ../src/ui/dialog/inkscape-preferences.cpp:929 msgid "" "Check attributes and style properties on reading in SVG files (including " "those internal to Inkscape which will slow down startup)" @@ -18431,11 +18312,11 @@ msgstr "" "Dateien (einschließlich derjenigen internen von Inkscape die den Start " "verlangsamen)" -#: ../src/ui/dialog/inkscape-preferences.cpp:926 +#: ../src/ui/dialog/inkscape-preferences.cpp:930 msgid "Editing" msgstr "Bearbeiten" -#: ../src/ui/dialog/inkscape-preferences.cpp:927 +#: ../src/ui/dialog/inkscape-preferences.cpp:931 msgid "" "Check attributes and style properties while editing SVG files (may slow down " "Inkscape, mostly useful for debugging)" @@ -18443,42 +18324,42 @@ msgstr "" "Überprüfen Sie die Attribute und Style-Eigenschaften während der Bearbeitung " "von SVG-Dateien (kann Inkscape verlangsamen, meist nützlich zur Fehlersuche)" -#: ../src/ui/dialog/inkscape-preferences.cpp:928 +#: ../src/ui/dialog/inkscape-preferences.cpp:932 msgid "Writing" msgstr "Schreiben" -#: ../src/ui/dialog/inkscape-preferences.cpp:929 +#: ../src/ui/dialog/inkscape-preferences.cpp:933 msgid "Check attributes and style properties on writing out SVG files" msgstr "" "Überprüfen Sie die Attribut- und Style-Eigenschaften beim Schreiben von SVG-" "Dateien" -#: ../src/ui/dialog/inkscape-preferences.cpp:931 +#: ../src/ui/dialog/inkscape-preferences.cpp:935 msgid "SVG output" msgstr "SVG-Ausgabe" #. TRANSLATORS: see http://www.newsandtech.com/issues/2004/03-04/pt/03-04_rendering.htm -#: ../src/ui/dialog/inkscape-preferences.cpp:937 +#: ../src/ui/dialog/inkscape-preferences.cpp:941 msgid "Perceptual" msgstr "Wahrnehmung" -#: ../src/ui/dialog/inkscape-preferences.cpp:937 +#: ../src/ui/dialog/inkscape-preferences.cpp:941 msgid "Relative Colorimetric" msgstr "Relative Farbmetrik" -#: ../src/ui/dialog/inkscape-preferences.cpp:937 +#: ../src/ui/dialog/inkscape-preferences.cpp:941 msgid "Absolute Colorimetric" msgstr "Absolute Farbmetrik" -#: ../src/ui/dialog/inkscape-preferences.cpp:941 +#: ../src/ui/dialog/inkscape-preferences.cpp:945 msgid "(Note: Color management has been disabled in this build)" msgstr "(Hinweis: Farbmanagement wurde in diesem Build deaktiviert)" -#: ../src/ui/dialog/inkscape-preferences.cpp:945 +#: ../src/ui/dialog/inkscape-preferences.cpp:949 msgid "Display adjustment" msgstr "Anzeige Anpassungen" -#: ../src/ui/dialog/inkscape-preferences.cpp:955 +#: ../src/ui/dialog/inkscape-preferences.cpp:959 #, c-format msgid "" "The ICC profile to use to calibrate display output.\n" @@ -18487,113 +18368,113 @@ msgstr "" "ICC-Profil, das zum Kalibrieren der Anzeige genutzt werden soll.\n" "Durchsuchte Verzeichnisse:%s" -#: ../src/ui/dialog/inkscape-preferences.cpp:956 +#: ../src/ui/dialog/inkscape-preferences.cpp:960 msgid "Display profile:" msgstr "Anzeigeprofil:" -#: ../src/ui/dialog/inkscape-preferences.cpp:961 +#: ../src/ui/dialog/inkscape-preferences.cpp:965 msgid "Retrieve profile from display" msgstr "Profil von Anzeige ermitteln" -#: ../src/ui/dialog/inkscape-preferences.cpp:964 +#: ../src/ui/dialog/inkscape-preferences.cpp:968 msgid "Retrieve profiles from those attached to displays via XICC" msgstr "Ermittle Profil von angeschlossenen Anzeigegeräten mittels XICC." -#: ../src/ui/dialog/inkscape-preferences.cpp:966 +#: ../src/ui/dialog/inkscape-preferences.cpp:970 msgid "Retrieve profiles from those attached to displays" msgstr "Ermittle Profil von angeschlossenen Anzeigegeräten." -#: ../src/ui/dialog/inkscape-preferences.cpp:971 +#: ../src/ui/dialog/inkscape-preferences.cpp:975 msgid "Display rendering intent:" msgstr "Anzeigenversatz" -#: ../src/ui/dialog/inkscape-preferences.cpp:972 +#: ../src/ui/dialog/inkscape-preferences.cpp:976 msgid "The rendering intent to use to calibrate display output" msgstr "" "Geräte-Wiedergabe-Bedeutung wird genutzt, um die Ausgabe zu kalibrieren." -#: ../src/ui/dialog/inkscape-preferences.cpp:974 +#: ../src/ui/dialog/inkscape-preferences.cpp:978 msgid "Proofing" msgstr "Druckprobe" -#: ../src/ui/dialog/inkscape-preferences.cpp:976 +#: ../src/ui/dialog/inkscape-preferences.cpp:980 msgid "Simulate output on screen" msgstr "Simulieren der Ausgabe auf dem Bildschirm" -#: ../src/ui/dialog/inkscape-preferences.cpp:978 +#: ../src/ui/dialog/inkscape-preferences.cpp:982 msgid "Simulates output of target device" msgstr "Simulieren der Ausgabe auf dem Zielgerät" -#: ../src/ui/dialog/inkscape-preferences.cpp:980 +#: ../src/ui/dialog/inkscape-preferences.cpp:984 msgid "Mark out of gamut colors" msgstr "Farben der Farbskala hervorheben" -#: ../src/ui/dialog/inkscape-preferences.cpp:982 +#: ../src/ui/dialog/inkscape-preferences.cpp:986 msgid "Highlights colors that are out of gamut for the target device" msgstr "Hebe Farben hervor die nicht im Farbbereich des Ausgabegerätes liegen." -#: ../src/ui/dialog/inkscape-preferences.cpp:994 +#: ../src/ui/dialog/inkscape-preferences.cpp:998 msgid "Out of gamut warning color:" msgstr "Farbbereichswarnung:" -#: ../src/ui/dialog/inkscape-preferences.cpp:995 +#: ../src/ui/dialog/inkscape-preferences.cpp:999 msgid "Selects the color used for out of gamut warning" msgstr "Bestimmt die Farbe die für Farbbereichswarnungen genutzt werden soll." -#: ../src/ui/dialog/inkscape-preferences.cpp:997 +#: ../src/ui/dialog/inkscape-preferences.cpp:1001 msgid "Device profile:" msgstr "Geräteprofil:" -#: ../src/ui/dialog/inkscape-preferences.cpp:998 +#: ../src/ui/dialog/inkscape-preferences.cpp:1002 msgid "The ICC profile to use to simulate device output" msgstr "ICC-Profil für Simulation der Geräteausgabe." -#: ../src/ui/dialog/inkscape-preferences.cpp:1001 +#: ../src/ui/dialog/inkscape-preferences.cpp:1005 msgid "Device rendering intent:" msgstr "Gerätewiedergabe-Bedeutung" -#: ../src/ui/dialog/inkscape-preferences.cpp:1002 +#: ../src/ui/dialog/inkscape-preferences.cpp:1006 msgid "The rendering intent to use to calibrate device output" msgstr "" "Geräte-Wiedergabe-Bedeutung wird genutzt, um die Ausgabe zu kalibrieren." -#: ../src/ui/dialog/inkscape-preferences.cpp:1004 +#: ../src/ui/dialog/inkscape-preferences.cpp:1008 msgid "Black point compensation" msgstr "Schwarzpunktanpassung" -#: ../src/ui/dialog/inkscape-preferences.cpp:1006 +#: ../src/ui/dialog/inkscape-preferences.cpp:1010 msgid "Enables black point compensation" msgstr "Ermöglicht Schwarzpunktkompensation" -#: ../src/ui/dialog/inkscape-preferences.cpp:1008 +#: ../src/ui/dialog/inkscape-preferences.cpp:1012 msgid "Preserve black" msgstr "Schwarzwert beibehalten" -#: ../src/ui/dialog/inkscape-preferences.cpp:1015 +#: ../src/ui/dialog/inkscape-preferences.cpp:1019 msgid "(LittleCMS 1.15 or later required)" msgstr "(LittleCMS 1.15 oder neuer wird benötigt)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1017 +#: ../src/ui/dialog/inkscape-preferences.cpp:1021 msgid "Preserve K channel in CMYK -> CMYK transforms" msgstr "Lässt K-Kanal in CMYK -> CMYK Transformation unverändert." # CHECK -#: ../src/ui/dialog/inkscape-preferences.cpp:1031 +#: ../src/ui/dialog/inkscape-preferences.cpp:1035 #: ../src/widgets/sp-color-icc-selector.cpp:474 #: ../src/widgets/sp-color-icc-selector.cpp:766 msgid "" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1076 +#: ../src/ui/dialog/inkscape-preferences.cpp:1080 msgid "Color management" msgstr "Farb-Management" #. Autosave options -#: ../src/ui/dialog/inkscape-preferences.cpp:1079 +#: ../src/ui/dialog/inkscape-preferences.cpp:1083 msgid "Enable autosave (requires restart)" msgstr "Automatisches Speichern (erfordert Neustart)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1080 +#: ../src/ui/dialog/inkscape-preferences.cpp:1084 msgid "" "Automatically save the current document(s) at a given interval, thus " "minimizing loss in case of a crash" @@ -18601,12 +18482,12 @@ msgstr "" "Speichert das Dokument in bestimmten Zeitabständen. Dadurch kann der " "Verlust, der durch Programmabstürze entsteht, verringert werden." -#: ../src/ui/dialog/inkscape-preferences.cpp:1086 +#: ../src/ui/dialog/inkscape-preferences.cpp:1090 msgctxt "Filesystem" msgid "Autosave _directory:" msgstr "Ort für automatisches Speichern:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1086 +#: ../src/ui/dialog/inkscape-preferences.cpp:1090 msgid "" "The directory where autosaves will be written. This should be an absolute " "path (starts with / on UNIX or a drive letter such as C: on Windows). " @@ -18615,21 +18496,21 @@ msgstr "" "sollte ein absoluter Pfad sein (startet mit / bei UNIX und einem " "Laufwerksbuchstaben wir C: bei Windows)." -#: ../src/ui/dialog/inkscape-preferences.cpp:1088 +#: ../src/ui/dialog/inkscape-preferences.cpp:1092 msgid "_Interval (in minutes):" msgstr "Zeitabstand (in Minuten):" -#: ../src/ui/dialog/inkscape-preferences.cpp:1088 +#: ../src/ui/dialog/inkscape-preferences.cpp:1092 msgid "Interval (in minutes) at which document will be autosaved" msgstr "" "In diesen Zeitabständen (in Minuten) wird das Dokument automatisch " "gespeichert." -#: ../src/ui/dialog/inkscape-preferences.cpp:1090 +#: ../src/ui/dialog/inkscape-preferences.cpp:1094 msgid "_Maximum number of autosaves:" msgstr "Maximale Anzahl an Sicherungen:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1090 +#: ../src/ui/dialog/inkscape-preferences.cpp:1094 msgid "" "Maximum number of autosaved files; use this to limit the storage space used" msgstr "" @@ -18648,15 +18529,15 @@ msgstr "" #. _autosave_autosave_interval.signal_changed().connect( sigc::ptr_fun(inkscape_autosave_init), TRUE ); #. #. ----------- -#: ../src/ui/dialog/inkscape-preferences.cpp:1105 +#: ../src/ui/dialog/inkscape-preferences.cpp:1109 msgid "Autosave" msgstr "Automatische Sicherung" -#: ../src/ui/dialog/inkscape-preferences.cpp:1109 +#: ../src/ui/dialog/inkscape-preferences.cpp:1113 msgid "Open Clip Art Library _Server Name:" msgstr "Open Clip Art Library Servername:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1110 +#: ../src/ui/dialog/inkscape-preferences.cpp:1114 msgid "" "The server name of the Open Clip Art Library webdav server; it's used by the " "Import and Export to OCAL function" @@ -18664,35 +18545,35 @@ msgstr "" "Der Servername des \"Open Clip Art Library\" Webdav Servers. Dieser wird " "beim Im- und Export zur OCAL verwendet." -#: ../src/ui/dialog/inkscape-preferences.cpp:1112 +#: ../src/ui/dialog/inkscape-preferences.cpp:1116 msgid "Open Clip Art Library _Username:" msgstr "Open Clip Art Library Benutzername:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1113 +#: ../src/ui/dialog/inkscape-preferences.cpp:1117 msgid "The username used to log into Open Clip Art Library" msgstr "Der Benutzername zum einloggen in die Open Clip Art Library." -#: ../src/ui/dialog/inkscape-preferences.cpp:1115 +#: ../src/ui/dialog/inkscape-preferences.cpp:1119 msgid "Open Clip Art Library _Password:" msgstr "Open Clip Art Library Kennwort:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1116 +#: ../src/ui/dialog/inkscape-preferences.cpp:1120 msgid "The password used to log into Open Clip Art Library" msgstr "Das Passwort zum einloggen in die Open Clip Art Library." -#: ../src/ui/dialog/inkscape-preferences.cpp:1117 +#: ../src/ui/dialog/inkscape-preferences.cpp:1121 msgid "Open Clip Art" msgstr "Login bei Open Clip Art" -#: ../src/ui/dialog/inkscape-preferences.cpp:1122 +#: ../src/ui/dialog/inkscape-preferences.cpp:1126 msgid "Behavior" msgstr "Verhalten" -#: ../src/ui/dialog/inkscape-preferences.cpp:1126 +#: ../src/ui/dialog/inkscape-preferences.cpp:1130 msgid "_Simplification threshold:" msgstr "Schwellwert für Vereinfachungen:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1127 +#: ../src/ui/dialog/inkscape-preferences.cpp:1131 msgid "" "How strong is the Node tool's Simplify command by default. If you invoke " "this command several times in quick succession, it will act more and more " @@ -18702,47 +18583,47 @@ msgstr "" "mehrmals schnell hintereinander ausgeführt, erhöht sich die Stärke; kurze " "Pause dazwischen setzt den Schwellwert zurück." -#: ../src/ui/dialog/inkscape-preferences.cpp:1129 +#: ../src/ui/dialog/inkscape-preferences.cpp:1133 msgid "Color stock markers the same color as object" msgstr "Farbe Standard-Marker in der gleichen Farbe wie das Objekt" -#: ../src/ui/dialog/inkscape-preferences.cpp:1130 +#: ../src/ui/dialog/inkscape-preferences.cpp:1134 msgid "Color custom markers the same color as object" msgstr "" "Färbe die benutzerdefinierten Markierungen in der gleichen Farbe wie das " "Objekt" -#: ../src/ui/dialog/inkscape-preferences.cpp:1131 -#: ../src/ui/dialog/inkscape-preferences.cpp:1341 +#: ../src/ui/dialog/inkscape-preferences.cpp:1135 +#: ../src/ui/dialog/inkscape-preferences.cpp:1345 msgid "Update marker color when object color changes" msgstr "Aktualisiert die Markierungsfarbe, wenn das Objekt die Farbe ändert" #. Selecting options -#: ../src/ui/dialog/inkscape-preferences.cpp:1134 +#: ../src/ui/dialog/inkscape-preferences.cpp:1138 msgid "Select in all layers" msgstr "In allen Ebenen auswählen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1135 +#: ../src/ui/dialog/inkscape-preferences.cpp:1139 msgid "Select only within current layer" msgstr "Nur innerhalb der aktuellen Ebene auswählen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1136 +#: ../src/ui/dialog/inkscape-preferences.cpp:1140 msgid "Select in current layer and sublayers" msgstr "Nur innerhalb der aktuellen Ebene und Unterebenen auswählen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1137 +#: ../src/ui/dialog/inkscape-preferences.cpp:1141 msgid "Ignore hidden objects and layers" msgstr "Ausgeblendete Objekte und Ebenen ignorieren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1138 +#: ../src/ui/dialog/inkscape-preferences.cpp:1142 msgid "Ignore locked objects and layers" msgstr "Gesperrte Objekte und Ebenen ignorieren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1139 +#: ../src/ui/dialog/inkscape-preferences.cpp:1143 msgid "Deselect upon layer change" msgstr "Auswahl bei Ebenenwechsel aufheben" -#: ../src/ui/dialog/inkscape-preferences.cpp:1142 +#: ../src/ui/dialog/inkscape-preferences.cpp:1146 msgid "" "Uncheck this to be able to keep the current objects selected when the " "current layer changes" @@ -18750,20 +18631,20 @@ msgstr "" "Dieses abwählen um Objekte ausgewählt zu lassen, wenn die aktuelle Ebene " "geändert wird" -#: ../src/ui/dialog/inkscape-preferences.cpp:1144 +#: ../src/ui/dialog/inkscape-preferences.cpp:1148 msgid "Ctrl+A, Tab, Shift+Tab" msgstr "Strg+A, Tabulator, Umschalt+Tabulator:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1146 +#: ../src/ui/dialog/inkscape-preferences.cpp:1150 msgid "Make keyboard selection commands work on objects in all layers" msgstr "Tastaturkommandos zur Auswahl wirken auf Objekte aller Ebenen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1148 +#: ../src/ui/dialog/inkscape-preferences.cpp:1152 msgid "Make keyboard selection commands work on objects in current layer only" msgstr "" "Tastaturkommandos zur Auswahl wirken nur auf Objekte in der aktuellen Ebene" -#: ../src/ui/dialog/inkscape-preferences.cpp:1150 +#: ../src/ui/dialog/inkscape-preferences.cpp:1154 msgid "" "Make keyboard selection commands work on objects in current layer and all " "its sublayers" @@ -18771,7 +18652,7 @@ msgstr "" "Tastaturkommandos zur Auswahl wirken auf Objekte in der aktuellen Ebene und " "aller ihrer Unterebenen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1152 +#: ../src/ui/dialog/inkscape-preferences.cpp:1156 msgid "" "Uncheck this to be able to select objects that are hidden (either by " "themselves or by being in a hidden layer)" @@ -18779,7 +18660,7 @@ msgstr "" "Dieses abwählen, damit ausgeblendete Objekte ausgewählt werden können (gilt " "auch für Objekte in ausgeblendeten Ebenen/Gruppierungen)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1154 +#: ../src/ui/dialog/inkscape-preferences.cpp:1158 msgid "" "Uncheck this to be able to select objects that are locked (either by " "themselves or by being in a locked layer)" @@ -18787,81 +18668,77 @@ msgstr "" "Dieses abwählen damit gesperrte Objekte ausgewählt werden können (gilt auch " "für Objekte in gesperrten Ebenen/Gruppierungen)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1156 +#: ../src/ui/dialog/inkscape-preferences.cpp:1160 msgid "Wrap when cycling objects in z-order" msgstr "Beim drehen von Objekten in Z-Ordnung einwickeln." -#: ../src/ui/dialog/inkscape-preferences.cpp:1158 +#: ../src/ui/dialog/inkscape-preferences.cpp:1162 msgid "Alt+Scroll Wheel" msgstr "Alt+Scroll-Rad" -#: ../src/ui/dialog/inkscape-preferences.cpp:1160 +#: ../src/ui/dialog/inkscape-preferences.cpp:1164 msgid "Wrap around at start and end when cycling objects in z-order" msgstr "" "Beim drehen von Objekten in Z-Ordnung um den Start- und Endpunkt einwickeln." -#: ../src/ui/dialog/inkscape-preferences.cpp:1162 +#: ../src/ui/dialog/inkscape-preferences.cpp:1166 msgid "Selecting" msgstr "Auswählen" #. Transforms options -#: ../src/ui/dialog/inkscape-preferences.cpp:1165 -#: ../src/widgets/select-toolbar.cpp:572 +#: ../src/ui/dialog/inkscape-preferences.cpp:1169 +#: ../src/widgets/select-toolbar.cpp:576 msgid "Scale stroke width" msgstr "Breite der Kontur skalieren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1166 +#: ../src/ui/dialog/inkscape-preferences.cpp:1170 msgid "Scale rounded corners in rectangles" msgstr "Abgerundete Ecken in Rechtecken mitskalieren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1167 +#: ../src/ui/dialog/inkscape-preferences.cpp:1171 msgid "Transform gradients" msgstr "Farbverläufe transformieren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1168 +#: ../src/ui/dialog/inkscape-preferences.cpp:1172 msgid "Transform patterns" msgstr "Füllmuster transformieren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1169 -msgid "Optimized" -msgstr "Optimiert" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1170 +#: ../src/ui/dialog/inkscape-preferences.cpp:1174 msgid "Preserved" msgstr "Beibehalten" -#: ../src/ui/dialog/inkscape-preferences.cpp:1173 -#: ../src/widgets/select-toolbar.cpp:573 +#: ../src/ui/dialog/inkscape-preferences.cpp:1177 +#: ../src/widgets/select-toolbar.cpp:577 msgid "When scaling objects, scale the stroke width by the same proportion" msgstr "" "Wenn Objekte skaliert werden, dann wird die Breite der Kontur ebenso " "skaliert." -#: ../src/ui/dialog/inkscape-preferences.cpp:1175 -#: ../src/widgets/select-toolbar.cpp:584 +#: ../src/ui/dialog/inkscape-preferences.cpp:1179 +#: ../src/widgets/select-toolbar.cpp:588 msgid "When scaling rectangles, scale the radii of rounded corners" msgstr "" "Wenn Rechtecke skaliert werden, dann werden die Radien von abgerundeten " "Ecken ebenso mitskaliert." -#: ../src/ui/dialog/inkscape-preferences.cpp:1177 -#: ../src/widgets/select-toolbar.cpp:595 +#: ../src/ui/dialog/inkscape-preferences.cpp:1181 +#: ../src/widgets/select-toolbar.cpp:599 msgid "Move gradients (in fill or stroke) along with the objects" msgstr "" "Farbverläufe (in Füllung oder Konturen) zusammen mit den Objekten " "transformieren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1179 -#: ../src/widgets/select-toolbar.cpp:606 +#: ../src/ui/dialog/inkscape-preferences.cpp:1183 +#: ../src/widgets/select-toolbar.cpp:610 msgid "Move patterns (in fill or stroke) along with the objects" msgstr "" "Muster (in Füllung oder Konturen) zusammen mit den Objekten transformieren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1180 +#: ../src/ui/dialog/inkscape-preferences.cpp:1184 msgid "Store transformation" msgstr "Transformation speichern:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1182 +#: ../src/ui/dialog/inkscape-preferences.cpp:1186 msgid "" "If possible, apply transformation to objects without adding a transform= " "attribute" @@ -18869,19 +18746,19 @@ msgstr "" "Wenn möglich, dann werden Transformationen auf Objekte angewendet, ohne ein " "transform=-Attribut hinzuzufügen." -#: ../src/ui/dialog/inkscape-preferences.cpp:1184 +#: ../src/ui/dialog/inkscape-preferences.cpp:1188 msgid "Always store transformation as a transform= attribute on objects" msgstr "Transformationen immer als transform=-Attribute speichern." -#: ../src/ui/dialog/inkscape-preferences.cpp:1186 +#: ../src/ui/dialog/inkscape-preferences.cpp:1190 msgid "Transforms" msgstr "Transformationen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1190 +#: ../src/ui/dialog/inkscape-preferences.cpp:1194 msgid "Mouse _wheel scrolls by:" msgstr "Mausrad rollt um:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1191 +#: ../src/ui/dialog/inkscape-preferences.cpp:1195 msgid "" "One mouse wheel notch scrolls by this distance in screen pixels " "(horizontally with Shift)" @@ -18889,23 +18766,23 @@ msgstr "" "Eine Stufe des Maus-Rades rollt um die angegebene Distanz in Pixeln " "(horizontal mit Umschalttaste)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1192 +#: ../src/ui/dialog/inkscape-preferences.cpp:1196 msgid "Ctrl+arrows" msgstr "Strg+Pfeile" -#: ../src/ui/dialog/inkscape-preferences.cpp:1194 +#: ../src/ui/dialog/inkscape-preferences.cpp:1198 msgid "Sc_roll by:" msgstr "Rolle um:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1195 +#: ../src/ui/dialog/inkscape-preferences.cpp:1199 msgid "Pressing Ctrl+arrow key scrolls by this distance (in screen pixels)" msgstr "Strg+Pfeiltasten rollen um diese Distanz (in Pixeln)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1197 +#: ../src/ui/dialog/inkscape-preferences.cpp:1201 msgid "_Acceleration:" msgstr "Beschleunigung:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1198 +#: ../src/ui/dialog/inkscape-preferences.cpp:1202 msgid "" "Pressing and holding Ctrl+arrow will gradually speed up scrolling (0 for no " "acceleration)" @@ -18913,15 +18790,15 @@ msgstr "" "Drücken von Strg+Pfeiltaste erhöht zunehmend die Rollgeschwindigkeit (0 " "bedeutet »keine Beschleunigung«)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1199 +#: ../src/ui/dialog/inkscape-preferences.cpp:1203 msgid "Autoscrolling" msgstr "Automatisches Rollen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1201 +#: ../src/ui/dialog/inkscape-preferences.cpp:1205 msgid "_Speed:" msgstr "Geschwindigkeit:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1202 +#: ../src/ui/dialog/inkscape-preferences.cpp:1206 msgid "" "How fast the canvas autoscrolls when you drag beyond canvas edge (0 to turn " "autoscroll off)" @@ -18929,12 +18806,12 @@ msgstr "" "Geschwindigkeit mit der die Arbeitsfläche verschoben wird, wenn der Zeiger " "ihren Rand überschreitet (0: Autorollen ist deaktiviert)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1204 +#: ../src/ui/dialog/inkscape-preferences.cpp:1208 #: ../src/ui/dialog/tracedialog.cpp:522 ../src/ui/dialog/tracedialog.cpp:721 msgid "_Threshold:" msgstr "Schwellwert:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1205 +#: ../src/ui/dialog/inkscape-preferences.cpp:1209 msgid "" "How far (in screen pixels) you need to be from the canvas edge to trigger " "autoscroll; positive is outside the canvas, negative is within the canvas" @@ -18948,11 +18825,11 @@ msgstr "" #. _page_scrolling.add_line( false, "", _scroll_space, "", #. _("When on, pressing and holding Space and dragging with left mouse button pans canvas (as in Adobe Illustrator); when off, Space temporarily switches to Selector tool (default)")); #. -#: ../src/ui/dialog/inkscape-preferences.cpp:1211 +#: ../src/ui/dialog/inkscape-preferences.cpp:1215 msgid "Mouse wheel zooms by default" msgstr "Standardmäßig zoomt das Mausrad" -#: ../src/ui/dialog/inkscape-preferences.cpp:1213 +#: ../src/ui/dialog/inkscape-preferences.cpp:1217 msgid "" "When on, mouse wheel zooms without Ctrl and scrolls canvas with Ctrl; when " "off, it zooms with Ctrl and scrolls without Ctrl" @@ -18960,25 +18837,25 @@ msgstr "" "Wenn aktiviert kann mit dem Mausrad die Ansicht vergrößert/verkleinert " "werden. Ist dies deaktiviert benötigt man dazu Strg+Mausrad. " -#: ../src/ui/dialog/inkscape-preferences.cpp:1214 +#: ../src/ui/dialog/inkscape-preferences.cpp:1218 msgid "Scrolling" msgstr "Rollen" #. Snapping options -#: ../src/ui/dialog/inkscape-preferences.cpp:1217 +#: ../src/ui/dialog/inkscape-preferences.cpp:1221 msgid "Enable snap indicator" msgstr "Einrast-Indikator aktivieren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1219 +#: ../src/ui/dialog/inkscape-preferences.cpp:1223 msgid "After snapping, a symbol is drawn at the point that has snapped" msgstr "" "Nach dem Einrasten wird ein Symbol an der Stelle, die einrastete, gezeichnet." -#: ../src/ui/dialog/inkscape-preferences.cpp:1222 +#: ../src/ui/dialog/inkscape-preferences.cpp:1226 msgid "_Delay (in ms):" msgstr "Verzögerung (in msec):" -#: ../src/ui/dialog/inkscape-preferences.cpp:1223 +#: ../src/ui/dialog/inkscape-preferences.cpp:1227 msgid "" "Postpone snapping as long as the mouse is moving, and then wait an " "additional fraction of a second. This additional delay is specified here. " @@ -18988,22 +18865,22 @@ msgstr "" "zusätzlichen Sekundenbruchteil. Diese additive Verzögerung wird hier " "festgelegt. Ist sie sehr klein, passiert das Einrasten sofort." -#: ../src/ui/dialog/inkscape-preferences.cpp:1225 +#: ../src/ui/dialog/inkscape-preferences.cpp:1229 msgid "Only snap the node closest to the pointer" msgstr "Nur an dem Knoten einrasten, der dem Zeiger am nähesten ist." -#: ../src/ui/dialog/inkscape-preferences.cpp:1227 +#: ../src/ui/dialog/inkscape-preferences.cpp:1231 msgid "" "Only try to snap the node that is initially closest to the mouse pointer" msgstr "" "Nur versuchen an dem Knoten einzurasten, der dem Mauszeiger zu Beginn am " "nächsten ist." -#: ../src/ui/dialog/inkscape-preferences.cpp:1230 +#: ../src/ui/dialog/inkscape-preferences.cpp:1234 msgid "_Weight factor:" msgstr "Gewichtsfaktor:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1231 +#: ../src/ui/dialog/inkscape-preferences.cpp:1235 msgid "" "When multiple snap solutions are found, then Inkscape can either prefer the " "closest transformation (when set to 0), or prefer the node that was " @@ -19013,11 +18890,11 @@ msgstr "" "Transformation anwenden (wenn auf 0 gesetzt) oder am Knoten, der dem " "Mauszeiger am nähesten ist (wenn auf 1 gesetzt) einrasten." -#: ../src/ui/dialog/inkscape-preferences.cpp:1233 +#: ../src/ui/dialog/inkscape-preferences.cpp:1237 msgid "Snap the mouse pointer when dragging a constrained knot" msgstr "Rastet den Mauszeiger ein, wenn ein festgesetzter Knoten gezogen wird." -#: ../src/ui/dialog/inkscape-preferences.cpp:1235 +#: ../src/ui/dialog/inkscape-preferences.cpp:1239 msgid "" "When dragging a knot along a constraint line, then snap the position of the " "mouse pointer instead of snapping the projection of the knot onto the " @@ -19026,16 +18903,16 @@ msgstr "" "Wird ein Knoten entlang einer festgesetzten Linie gezogen, dann rastet der " "Mauszeiger statt der Projektion des Knotens auf der Linie ein." -#: ../src/ui/dialog/inkscape-preferences.cpp:1237 +#: ../src/ui/dialog/inkscape-preferences.cpp:1241 msgid "Snapping" msgstr "Einrasten" #. nudgedistance is limited to 1000 in select-context.cpp: use the same limit here -#: ../src/ui/dialog/inkscape-preferences.cpp:1242 +#: ../src/ui/dialog/inkscape-preferences.cpp:1246 msgid "_Arrow keys move by:" msgstr "Pfeiltasten bewegen um:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1243 +#: ../src/ui/dialog/inkscape-preferences.cpp:1247 msgid "" "Pressing an arrow key moves selected object(s) or node(s) by this distance" msgstr "" @@ -19043,31 +18920,31 @@ msgstr "" "Knoten) um diese Entfernung (in SVG-Pixeln)" #. defaultscale is limited to 1000 in select-context.cpp: use the same limit here -#: ../src/ui/dialog/inkscape-preferences.cpp:1246 +#: ../src/ui/dialog/inkscape-preferences.cpp:1250 msgid "> and < _scale by:" msgstr "> und < skalieren um:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1247 +#: ../src/ui/dialog/inkscape-preferences.cpp:1251 msgid "Pressing > or < scales selection up or down by this increment" msgstr "" "Drücken von > oder < skaliert die ausgewählten Elemente um diesen Wert " "größer oder kleiner (in SVG-Pixeln) " -#: ../src/ui/dialog/inkscape-preferences.cpp:1249 +#: ../src/ui/dialog/inkscape-preferences.cpp:1253 msgid "_Inset/Outset by:" msgstr "Schrumpfen/Erweitern um:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1250 +#: ../src/ui/dialog/inkscape-preferences.cpp:1254 msgid "Inset and Outset commands displace the path by this distance" msgstr "" "Schrumpfungs- und Erweiterungsbefehle verändern den Pfad um diese Distanz " "(in SVG-Pixeln)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1251 +#: ../src/ui/dialog/inkscape-preferences.cpp:1255 msgid "Compass-like display of angles" msgstr "Anzeige von Winkeln wie bei einem Kompaß" -#: ../src/ui/dialog/inkscape-preferences.cpp:1253 +#: ../src/ui/dialog/inkscape-preferences.cpp:1257 msgid "" "When on, angles are displayed with 0 at north, 0 to 360 range, positive " "clockwise; otherwise with 0 at east, -180 to 180 range, positive " @@ -19078,15 +18955,15 @@ msgstr "" "-180 bis 180, positiv entgegen dem Uhrzeigersinn" # !!! need %s -#: ../src/ui/dialog/inkscape-preferences.cpp:1259 +#: ../src/ui/dialog/inkscape-preferences.cpp:1263 msgid "_Rotation snaps every:" msgstr "Rotation rastet ein alle:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1259 +#: ../src/ui/dialog/inkscape-preferences.cpp:1263 msgid "degrees" msgstr "Grad" -#: ../src/ui/dialog/inkscape-preferences.cpp:1260 +#: ../src/ui/dialog/inkscape-preferences.cpp:1264 msgid "" "Rotating with Ctrl pressed snaps every that much degrees; also, pressing " "[ or ] rotates by this amount" @@ -19094,11 +18971,11 @@ msgstr "" "Rotation mit gedrückter Strg-Taste lässt das Objekt mit dieser Gradrastung " "einrasten; die Tasten [ oder ] haben den gleichen Effekt" -#: ../src/ui/dialog/inkscape-preferences.cpp:1261 +#: ../src/ui/dialog/inkscape-preferences.cpp:1265 msgid "Relative snapping of guideline angles" msgstr "Relatives Einrasten von Führungslininen-Winkeln" -#: ../src/ui/dialog/inkscape-preferences.cpp:1263 +#: ../src/ui/dialog/inkscape-preferences.cpp:1267 msgid "" "When on, the snap angles when rotating a guideline will be relative to the " "original angle" @@ -19106,11 +18983,15 @@ msgstr "" "Wenn eingeschaltet, wird der Einrastwinkel beim Drehen einer Führungslinie " "relativ zum ursprünglichen Winkel" -#: ../src/ui/dialog/inkscape-preferences.cpp:1265 +#: ../src/ui/dialog/inkscape-preferences.cpp:1269 msgid "_Zoom in/out by:" msgstr "Zoomfaktor vergrößern/verkleinern um:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1266 +#: ../src/ui/dialog/inkscape-preferences.cpp:1269 +msgid "%" +msgstr "%" + +#: ../src/ui/dialog/inkscape-preferences.cpp:1270 msgid "" "Zoom tool click, +/- keys, and middle click zoom in and out by this " "multiplier" @@ -19118,45 +18999,45 @@ msgstr "" "Mit dem Zoomwerkzeug klicken, die + oder - Taste drücken, oder die mittlere " "Maustaste betätigen, damit sich die Zoomgröße um diesen Faktor ändert" -#: ../src/ui/dialog/inkscape-preferences.cpp:1267 +#: ../src/ui/dialog/inkscape-preferences.cpp:1271 msgid "Steps" msgstr "Schritte" #. Clones options -#: ../src/ui/dialog/inkscape-preferences.cpp:1270 +#: ../src/ui/dialog/inkscape-preferences.cpp:1274 msgid "Move in parallel" msgstr "parallel verschoben" -#: ../src/ui/dialog/inkscape-preferences.cpp:1272 +#: ../src/ui/dialog/inkscape-preferences.cpp:1276 msgid "Stay unmoved" msgstr "unbewegt bleiben" -#: ../src/ui/dialog/inkscape-preferences.cpp:1274 +#: ../src/ui/dialog/inkscape-preferences.cpp:1278 msgid "Move according to transform" msgstr "sich entsprechend des transform=-Attributs bewegen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1276 +#: ../src/ui/dialog/inkscape-preferences.cpp:1280 msgid "Are unlinked" msgstr "ihre Verbindung zum Original verlieren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1278 +#: ../src/ui/dialog/inkscape-preferences.cpp:1282 msgid "Are deleted" msgstr "ebenso gelöscht" -#: ../src/ui/dialog/inkscape-preferences.cpp:1281 +#: ../src/ui/dialog/inkscape-preferences.cpp:1285 msgid "Moving original: clones and linked offsets" msgstr "Verschiebe Original: Klone und verbundener Versatz" -#: ../src/ui/dialog/inkscape-preferences.cpp:1283 +#: ../src/ui/dialog/inkscape-preferences.cpp:1287 msgid "Clones are translated by the same vector as their original" msgstr "Klone werden mit demselben Vektor wie das Original verschoben." -#: ../src/ui/dialog/inkscape-preferences.cpp:1285 +#: ../src/ui/dialog/inkscape-preferences.cpp:1289 msgid "Clones preserve their positions when their original is moved" msgstr "" "Klone bleiben an ihren Positionen, während das Original verschoben wird." -#: ../src/ui/dialog/inkscape-preferences.cpp:1287 +#: ../src/ui/dialog/inkscape-preferences.cpp:1291 msgid "" "Each clone moves according to the value of its transform= attribute; for " "example, a rotated clone will move in a different direction than its original" @@ -19165,27 +19046,27 @@ msgstr "" "Attributs. Ein rotierter Klon wird sich zum Beispiel in eine andere Richtung " "als das Original drehen." -#: ../src/ui/dialog/inkscape-preferences.cpp:1288 +#: ../src/ui/dialog/inkscape-preferences.cpp:1292 msgid "Deleting original: clones" msgstr "Lösche Original: Klone" -#: ../src/ui/dialog/inkscape-preferences.cpp:1290 +#: ../src/ui/dialog/inkscape-preferences.cpp:1294 msgid "Orphaned clones are converted to regular objects" msgstr "Klone ohne Original werden zu regulären Objekten umgewandelt." -#: ../src/ui/dialog/inkscape-preferences.cpp:1292 +#: ../src/ui/dialog/inkscape-preferences.cpp:1296 msgid "Orphaned clones are deleted along with their original" msgstr "Klone werden zusammen mit ihrem Original gelöscht." -#: ../src/ui/dialog/inkscape-preferences.cpp:1294 +#: ../src/ui/dialog/inkscape-preferences.cpp:1298 msgid "Duplicating original+clones/linked offset" msgstr "Duplizieren Original+Klone/verbundener Versatz" -#: ../src/ui/dialog/inkscape-preferences.cpp:1296 +#: ../src/ui/dialog/inkscape-preferences.cpp:1300 msgid "Relink duplicated clones" msgstr "Duplizierte Klone neu verbinden" -#: ../src/ui/dialog/inkscape-preferences.cpp:1298 +#: ../src/ui/dialog/inkscape-preferences.cpp:1302 msgid "" "When duplicating a selection containing both a clone and its original " "(possibly in groups), relink the duplicated clone to the duplicated original " @@ -19196,29 +19077,29 @@ msgstr "" "den alten Originalen." #. TRANSLATORS: Heading for the Inkscape Preferences "Clones" Page -#: ../src/ui/dialog/inkscape-preferences.cpp:1301 +#: ../src/ui/dialog/inkscape-preferences.cpp:1305 msgid "Clones" msgstr "Klone" #. Clip paths and masks options -#: ../src/ui/dialog/inkscape-preferences.cpp:1304 +#: ../src/ui/dialog/inkscape-preferences.cpp:1308 msgid "When applying, use the topmost selected object as clippath/mask" msgstr "" "Verwende das oberste ausgewählte Objekt beim Anwenden als Ausschneidepfad " "oder Maskierung" -#: ../src/ui/dialog/inkscape-preferences.cpp:1306 +#: ../src/ui/dialog/inkscape-preferences.cpp:1310 msgid "" "Uncheck this to use the bottom selected object as the clipping path or mask" msgstr "" "Nicht auswählen, um das unterste ausgewählte Objekt als Ausschneidepfad oder " "Maskierung zu verwenden" -#: ../src/ui/dialog/inkscape-preferences.cpp:1307 +#: ../src/ui/dialog/inkscape-preferences.cpp:1311 msgid "Remove clippath/mask object after applying" msgstr "Ausschneidepfad oder Maskierungsobjekt nach dem Anwenden entfernen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1309 +#: ../src/ui/dialog/inkscape-preferences.cpp:1313 msgid "" "After applying, remove the object used as the clipping path or mask from the " "drawing" @@ -19226,60 +19107,60 @@ msgstr "" "Entferne das Objekt von der Zeichnung, welches als Ausschneidepfad oder " "Maskierung verwendet wird, nach dem Anwenden" -#: ../src/ui/dialog/inkscape-preferences.cpp:1311 +#: ../src/ui/dialog/inkscape-preferences.cpp:1315 msgid "Before applying" msgstr "Vor dem Anwenden:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1313 +#: ../src/ui/dialog/inkscape-preferences.cpp:1317 msgid "Do not group clipped/masked objects" msgstr "Kein Gruppieren ausgeschnittener/maskierter Objekte" -#: ../src/ui/dialog/inkscape-preferences.cpp:1314 +#: ../src/ui/dialog/inkscape-preferences.cpp:1318 msgid "Put every clipped/masked object in its own group" msgstr "" "Jedes ausgeschnittene/maskierte Objekt in seiner eigenen Gruppe anlegen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1315 +#: ../src/ui/dialog/inkscape-preferences.cpp:1319 msgid "Put all clipped/masked objects into one group" msgstr "" "Alle ausgeschnittenen/maskierten Objekte in einer einzelne Gruppe ablegen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1318 +#: ../src/ui/dialog/inkscape-preferences.cpp:1322 msgid "Apply clippath/mask to every object" msgstr "Ausschneidungspfad/Maske auf jedes Objekt anwenden" -#: ../src/ui/dialog/inkscape-preferences.cpp:1321 +#: ../src/ui/dialog/inkscape-preferences.cpp:1325 msgid "Apply clippath/mask to groups containing single object" msgstr "" "Ausschneidungspfad/Maske auf Gruppen anwenden, die Einzelobjekte beinhalten" -#: ../src/ui/dialog/inkscape-preferences.cpp:1324 +#: ../src/ui/dialog/inkscape-preferences.cpp:1328 msgid "Apply clippath/mask to group containing all objects" msgstr "" "Ausschneidungspfad/Maske auf Gruppen anwenden, die alle Objekte beinhalten" -#: ../src/ui/dialog/inkscape-preferences.cpp:1326 +#: ../src/ui/dialog/inkscape-preferences.cpp:1330 msgid "After releasing" msgstr "Nach dem Lösen:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1328 +#: ../src/ui/dialog/inkscape-preferences.cpp:1332 msgid "Ungroup automatically created groups" msgstr "Gruppierung automatisch erstellter Gruppen aufheben" -#: ../src/ui/dialog/inkscape-preferences.cpp:1330 +#: ../src/ui/dialog/inkscape-preferences.cpp:1334 msgid "Ungroup groups created when setting clip/mask" msgstr "Gruppierung aufheben beim Setzen der Ausschneidung/Maske" -#: ../src/ui/dialog/inkscape-preferences.cpp:1332 +#: ../src/ui/dialog/inkscape-preferences.cpp:1336 msgid "Clippaths and masks" msgstr "Ausschneidepfade und Maskierungen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1335 +#: ../src/ui/dialog/inkscape-preferences.cpp:1339 msgid "Stroke Style Markers" msgstr "Strich-Stilmarkierungen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1337 -#: ../src/ui/dialog/inkscape-preferences.cpp:1339 +#: ../src/ui/dialog/inkscape-preferences.cpp:1341 +#: ../src/ui/dialog/inkscape-preferences.cpp:1343 msgid "" "Stroke color same as object, fill color either object fill color or marker " "fill color" @@ -19287,49 +19168,49 @@ msgstr "" "Konturfarbe wie Objekt, Füllfarbe entweder Objekt-Füllfarbe oder Marker-" "Füllfarbe" -#: ../src/ui/dialog/inkscape-preferences.cpp:1343 +#: ../src/ui/dialog/inkscape-preferences.cpp:1347 msgid "Markers" msgstr "Markierungen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1346 +#: ../src/ui/dialog/inkscape-preferences.cpp:1350 msgid "Document cleanup" msgstr "Dokumentbereinigung" -#: ../src/ui/dialog/inkscape-preferences.cpp:1347 -#: ../src/ui/dialog/inkscape-preferences.cpp:1349 +#: ../src/ui/dialog/inkscape-preferences.cpp:1351 +#: ../src/ui/dialog/inkscape-preferences.cpp:1353 msgid "Remove unused swatches when doing a document cleanup" msgstr "" #. tooltip -#: ../src/ui/dialog/inkscape-preferences.cpp:1350 +#: ../src/ui/dialog/inkscape-preferences.cpp:1354 msgid "Cleanup" msgstr "Bereinigen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1358 +#: ../src/ui/dialog/inkscape-preferences.cpp:1362 msgid "Number of _Threads:" msgstr "Anzahl der Threads:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1358 -#: ../src/ui/dialog/inkscape-preferences.cpp:1876 +#: ../src/ui/dialog/inkscape-preferences.cpp:1362 +#: ../src/ui/dialog/inkscape-preferences.cpp:1880 msgid "(requires restart)" msgstr "(erfordert Neustart)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1359 +#: ../src/ui/dialog/inkscape-preferences.cpp:1363 msgid "Configure number of processors/threads to use when rendering filters" msgstr "" "Konfiguration der Anzahl an Prozessoren/Threads, die für das Rendern genutzt " "werden sollen." -#: ../src/ui/dialog/inkscape-preferences.cpp:1363 +#: ../src/ui/dialog/inkscape-preferences.cpp:1367 msgid "Rendering _cache size:" msgstr "Rendering-Cachegröße:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1363 +#: ../src/ui/dialog/inkscape-preferences.cpp:1367 msgctxt "mebibyte (2^20 bytes) abbreviation" msgid "MiB" msgstr "MiB" -#: ../src/ui/dialog/inkscape-preferences.cpp:1363 +#: ../src/ui/dialog/inkscape-preferences.cpp:1367 msgid "" "Set the amount of memory per document which can be used to store rendered " "parts of the drawing for later reuse; set to zero to disable caching" @@ -19340,37 +19221,37 @@ msgstr "" #. blur quality #. filter quality -#: ../src/ui/dialog/inkscape-preferences.cpp:1366 -#: ../src/ui/dialog/inkscape-preferences.cpp:1390 +#: ../src/ui/dialog/inkscape-preferences.cpp:1370 +#: ../src/ui/dialog/inkscape-preferences.cpp:1394 msgid "Best quality (slowest)" msgstr "Beste Qualität (am langsamsten)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1368 -#: ../src/ui/dialog/inkscape-preferences.cpp:1392 +#: ../src/ui/dialog/inkscape-preferences.cpp:1372 +#: ../src/ui/dialog/inkscape-preferences.cpp:1396 msgid "Better quality (slower)" msgstr "Gute Qualität (langsamer)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1370 -#: ../src/ui/dialog/inkscape-preferences.cpp:1394 +#: ../src/ui/dialog/inkscape-preferences.cpp:1374 +#: ../src/ui/dialog/inkscape-preferences.cpp:1398 msgid "Average quality" msgstr "Durchschnittliche Qualität" -#: ../src/ui/dialog/inkscape-preferences.cpp:1372 -#: ../src/ui/dialog/inkscape-preferences.cpp:1396 +#: ../src/ui/dialog/inkscape-preferences.cpp:1376 +#: ../src/ui/dialog/inkscape-preferences.cpp:1400 msgid "Lower quality (faster)" msgstr "Niedrigere Qualität (schneller)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1374 -#: ../src/ui/dialog/inkscape-preferences.cpp:1398 +#: ../src/ui/dialog/inkscape-preferences.cpp:1378 +#: ../src/ui/dialog/inkscape-preferences.cpp:1402 msgid "Lowest quality (fastest)" msgstr "Niedrigste Qualität (am schnellsten)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1377 +#: ../src/ui/dialog/inkscape-preferences.cpp:1381 msgid "Gaussian blur quality for display" msgstr "Anzeige Qualität des Gaußschen Weichzeichners:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1379 -#: ../src/ui/dialog/inkscape-preferences.cpp:1403 +#: ../src/ui/dialog/inkscape-preferences.cpp:1383 +#: ../src/ui/dialog/inkscape-preferences.cpp:1407 msgid "" "Best quality, but display may be very slow at high zooms (bitmap export " "always uses best quality)" @@ -19378,128 +19259,128 @@ msgstr "" "Beste Qualität, aber die Anzeige kann bei hohen Zoomstufen sehr langsam sein " "(Bitmap-Export verwendet immer diese Einstellung)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1381 -#: ../src/ui/dialog/inkscape-preferences.cpp:1405 +#: ../src/ui/dialog/inkscape-preferences.cpp:1385 +#: ../src/ui/dialog/inkscape-preferences.cpp:1409 msgid "Better quality, but slower display" msgstr "Bessere Qualität, aber langsamere Anzeige" -#: ../src/ui/dialog/inkscape-preferences.cpp:1383 -#: ../src/ui/dialog/inkscape-preferences.cpp:1407 +#: ../src/ui/dialog/inkscape-preferences.cpp:1387 +#: ../src/ui/dialog/inkscape-preferences.cpp:1411 msgid "Average quality, acceptable display speed" msgstr "Durchschnittliche Qualität, akzeptable Geschwindigkeit der Anzeige" -#: ../src/ui/dialog/inkscape-preferences.cpp:1385 -#: ../src/ui/dialog/inkscape-preferences.cpp:1409 +#: ../src/ui/dialog/inkscape-preferences.cpp:1389 +#: ../src/ui/dialog/inkscape-preferences.cpp:1413 msgid "Lower quality (some artifacts), but display is faster" msgstr "Niedrigere Qualität (einige Artefakte), aber schnellere Anzeige" -#: ../src/ui/dialog/inkscape-preferences.cpp:1387 -#: ../src/ui/dialog/inkscape-preferences.cpp:1411 +#: ../src/ui/dialog/inkscape-preferences.cpp:1391 +#: ../src/ui/dialog/inkscape-preferences.cpp:1415 msgid "Lowest quality (considerable artifacts), but display is fastest" msgstr "Niedrigste Qualität (beträchtliche Artefakte), aber schnellste Anzeige" -#: ../src/ui/dialog/inkscape-preferences.cpp:1401 +#: ../src/ui/dialog/inkscape-preferences.cpp:1405 msgid "Filter effects quality for display" msgstr "Effekt-Qualität für Anzeige:" #. build custom preferences tab -#: ../src/ui/dialog/inkscape-preferences.cpp:1413 +#: ../src/ui/dialog/inkscape-preferences.cpp:1417 #: ../src/ui/dialog/print.cpp:224 msgid "Rendering" msgstr "Rendern" -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 +#: ../src/ui/dialog/inkscape-preferences.cpp:1423 msgid "2x2" msgstr "2×2" -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 +#: ../src/ui/dialog/inkscape-preferences.cpp:1423 msgid "4x4" msgstr "4×4" -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 +#: ../src/ui/dialog/inkscape-preferences.cpp:1423 msgid "8x8" msgstr "8×8" -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 +#: ../src/ui/dialog/inkscape-preferences.cpp:1423 msgid "16x16" msgstr "16×16" -#: ../src/ui/dialog/inkscape-preferences.cpp:1423 +#: ../src/ui/dialog/inkscape-preferences.cpp:1427 msgid "Oversample bitmaps:" msgstr "Bitmap Überabtastung:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1426 +#: ../src/ui/dialog/inkscape-preferences.cpp:1430 msgid "Automatically reload bitmaps" msgstr "Automatisches Aktualisieren von Bildern" -#: ../src/ui/dialog/inkscape-preferences.cpp:1428 +#: ../src/ui/dialog/inkscape-preferences.cpp:1432 msgid "Automatically reload linked images when file is changed on disk" msgstr "Bilder neu laden, wenn diese auf dem Datenträger geändert wurden." -#: ../src/ui/dialog/inkscape-preferences.cpp:1430 +#: ../src/ui/dialog/inkscape-preferences.cpp:1434 msgid "_Bitmap editor:" msgstr "_Bitmap-Editor:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1432 +#: ../src/ui/dialog/inkscape-preferences.cpp:1436 msgid "Default export _resolution:" msgstr "Standard-Exportauflösung:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1433 +#: ../src/ui/dialog/inkscape-preferences.cpp:1437 msgid "Default bitmap resolution (in dots per inch) in the Export dialog" msgstr "" "Bevorzugte Auflösung der Bitmap (Punkte pro Zoll) im Exportieren-Dialog" -#: ../src/ui/dialog/inkscape-preferences.cpp:1435 +#: ../src/ui/dialog/inkscape-preferences.cpp:1439 msgid "Resolution for Create Bitmap _Copy:" msgstr "Auflösung von Bitmap Kopien:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1436 +#: ../src/ui/dialog/inkscape-preferences.cpp:1440 msgid "Resolution used by the Create Bitmap Copy command" msgstr "Auflösung von Bildern die mit \"Kopiere als Bitmap\" erstellt werden." -#: ../src/ui/dialog/inkscape-preferences.cpp:1438 +#: ../src/ui/dialog/inkscape-preferences.cpp:1442 msgid "Always embed" msgstr "Immer einbetten" -#: ../src/ui/dialog/inkscape-preferences.cpp:1438 +#: ../src/ui/dialog/inkscape-preferences.cpp:1442 msgid "Always link" msgstr "Immer verlinken" -#: ../src/ui/dialog/inkscape-preferences.cpp:1438 +#: ../src/ui/dialog/inkscape-preferences.cpp:1442 msgid "Ask" msgstr "Fragen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1441 +#: ../src/ui/dialog/inkscape-preferences.cpp:1445 msgid "Bitmap import:" msgstr "Bitmap-Import:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1444 +#: ../src/ui/dialog/inkscape-preferences.cpp:1448 msgid "Bitmap import quality:" msgstr "Bitmap-Import-Qualität:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1447 +#: ../src/ui/dialog/inkscape-preferences.cpp:1451 msgid "Default _import resolution:" msgstr "Standard-Importauflösung:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1448 +#: ../src/ui/dialog/inkscape-preferences.cpp:1452 msgid "Default bitmap resolution (in dots per inch) for bitmap import" msgstr "Standard-Bitmapauflösung (Punkte pro Zoll) für Bitmap-Import" -#: ../src/ui/dialog/inkscape-preferences.cpp:1449 +#: ../src/ui/dialog/inkscape-preferences.cpp:1453 msgid "Override file resolution" msgstr "Datei-Auflösung überschreiben" -#: ../src/ui/dialog/inkscape-preferences.cpp:1451 +#: ../src/ui/dialog/inkscape-preferences.cpp:1455 msgid "Use default bitmap resolution in favor of information from file" msgstr "" "Verwenden Sie Standard-Bitmap-Auflösung zu Gunsten von Informationen aus der " "Datei" -#: ../src/ui/dialog/inkscape-preferences.cpp:1453 +#: ../src/ui/dialog/inkscape-preferences.cpp:1457 msgid "Bitmaps" msgstr "Bitmaps" -#: ../src/ui/dialog/inkscape-preferences.cpp:1465 +#: ../src/ui/dialog/inkscape-preferences.cpp:1469 msgid "" "Select a file of predefined shortcuts to use. Any customized shortcuts you " "create will be added seperately to " @@ -19507,31 +19388,32 @@ msgstr "" "Wählen Sie eine Datei mit vorderfinierten Tastaturkürzeln. Jeder " "benutzerdefinierte Kürzel der erstellt wird, wird separat hinzugefügt zu" -#: ../src/ui/dialog/inkscape-preferences.cpp:1468 +#: ../src/ui/dialog/inkscape-preferences.cpp:1472 msgid "Shortcut file:" msgstr "Tastenkürzel-Datei:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1471 +#: ../src/ui/dialog/inkscape-preferences.cpp:1475 +#: ../src/ui/dialog/template-load-tab.cpp:46 msgid "Search:" msgstr "Suchen:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1483 +#: ../src/ui/dialog/inkscape-preferences.cpp:1487 msgid "Shortcut" msgstr "Tastenkürzel" -#: ../src/ui/dialog/inkscape-preferences.cpp:1484 -#: ../src/ui/widget/page-sizer.cpp:262 +#: ../src/ui/dialog/inkscape-preferences.cpp:1488 +#: ../src/ui/widget/page-sizer.cpp:260 msgid "Description" msgstr "Beschreibung" -#: ../src/ui/dialog/inkscape-preferences.cpp:1539 +#: ../src/ui/dialog/inkscape-preferences.cpp:1543 #: ../src/ui/dialog/svg-fonts-dialog.cpp:694 #: ../src/ui/dialog/tracedialog.cpp:813 #: ../src/ui/widget/preferences-widget.cpp:749 msgid "Reset" msgstr " _Zurücksetzen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1539 +#: ../src/ui/dialog/inkscape-preferences.cpp:1543 msgid "" "Remove all your customized keyboard shortcuts, and revert to the shortcuts " "in the shortcut file listed above" @@ -19539,40 +19421,40 @@ msgstr "" "Alle individuellen Tastaturkürzel entfernen und zurück zu den Verknüpfungen " "in der Shortcut-Datei der oben aufgeführten" -#: ../src/ui/dialog/inkscape-preferences.cpp:1543 +#: ../src/ui/dialog/inkscape-preferences.cpp:1547 msgid "Import ..." msgstr "_Importieren…" -#: ../src/ui/dialog/inkscape-preferences.cpp:1543 +#: ../src/ui/dialog/inkscape-preferences.cpp:1547 msgid "Import custom keyboard shortcuts from a file" msgstr "Importieren einer benutzerdefinierten Tastaturkürzel-Datei" -#: ../src/ui/dialog/inkscape-preferences.cpp:1546 +#: ../src/ui/dialog/inkscape-preferences.cpp:1550 msgid "Export ..." msgstr "_Exportieren…" -#: ../src/ui/dialog/inkscape-preferences.cpp:1546 +#: ../src/ui/dialog/inkscape-preferences.cpp:1550 msgid "Export custom keyboard shortcuts to a file" msgstr "Benutzerdefinierte Tastaturkürzel in eine Datei exportieren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1556 +#: ../src/ui/dialog/inkscape-preferences.cpp:1560 msgid "Keyboard Shortcuts" msgstr "Tastaturkürzel" #. Find this group in the tree -#: ../src/ui/dialog/inkscape-preferences.cpp:1719 +#: ../src/ui/dialog/inkscape-preferences.cpp:1723 msgid "Misc" msgstr "Sonstiges" -#: ../src/ui/dialog/inkscape-preferences.cpp:1838 +#: ../src/ui/dialog/inkscape-preferences.cpp:1842 msgid "Set the main spell check language" msgstr "Setzen der Hauptsprache der Rechtschreibprüfung" -#: ../src/ui/dialog/inkscape-preferences.cpp:1841 +#: ../src/ui/dialog/inkscape-preferences.cpp:1845 msgid "Second language:" msgstr "Zweite Sprache:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1842 +#: ../src/ui/dialog/inkscape-preferences.cpp:1846 msgid "" "Set the second spell check language; checking will only stop on words " "unknown in ALL chosen languages" @@ -19580,11 +19462,11 @@ msgstr "" "Setzen der zweiten Sprache der Rechtschreibprüfung; die Prüfung stoppt nur " "bei Wörtern, die in allen ausgewählten Sprachen unbekannt sind." -#: ../src/ui/dialog/inkscape-preferences.cpp:1845 +#: ../src/ui/dialog/inkscape-preferences.cpp:1849 msgid "Third language:" msgstr "Dritte Sprache:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1846 +#: ../src/ui/dialog/inkscape-preferences.cpp:1850 msgid "" "Set the third spell check language; checking will only stop on words unknown " "in ALL chosen languages" @@ -19592,31 +19474,31 @@ msgstr "" "Setzen der dritten Sprache der Rechtschreibprüfung; die Prüfung stoppt nur " "bei Wörtern, die in allen ausgewählten Sprachen unbekannt sind." -#: ../src/ui/dialog/inkscape-preferences.cpp:1848 +#: ../src/ui/dialog/inkscape-preferences.cpp:1852 msgid "Ignore words with digits" msgstr "Ignoriere Wörter mit Zahlen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1850 +#: ../src/ui/dialog/inkscape-preferences.cpp:1854 msgid "Ignore words containing digits, such as \"R2D2\"" msgstr "Ignoriere Wörter mit Zahlen, wie \"R2D2\"" -#: ../src/ui/dialog/inkscape-preferences.cpp:1852 +#: ../src/ui/dialog/inkscape-preferences.cpp:1856 msgid "Ignore words in ALL CAPITALS" msgstr "Ignoriere Wörter die GROSSGESCHRIEBEN sind" -#: ../src/ui/dialog/inkscape-preferences.cpp:1854 +#: ../src/ui/dialog/inkscape-preferences.cpp:1858 msgid "Ignore words in all capitals, such as \"IUPAC\"" msgstr "Ignoriere Wörter die GROSSGESCHRIEBEN sind, wie \"IUPAC\"" -#: ../src/ui/dialog/inkscape-preferences.cpp:1856 +#: ../src/ui/dialog/inkscape-preferences.cpp:1860 msgid "Spellcheck" msgstr "Rechtschreibprüfung" -#: ../src/ui/dialog/inkscape-preferences.cpp:1876 +#: ../src/ui/dialog/inkscape-preferences.cpp:1880 msgid "Latency _skew:" msgstr "Latenz-Schrägstellung:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1877 +#: ../src/ui/dialog/inkscape-preferences.cpp:1881 msgid "" "Factor by which the event clock is skewed from the actual time (0.9766 on " "some systems)" @@ -19624,11 +19506,11 @@ msgstr "" "Faktor, um den die Ereigniszeit gegenüber der Systemzeit verlangsamt wird " "(0,9766 auf manchen Systemen)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1879 +#: ../src/ui/dialog/inkscape-preferences.cpp:1883 msgid "Pre-render named icons" msgstr "Symbole mit Namen im Voraus rendern" -#: ../src/ui/dialog/inkscape-preferences.cpp:1881 +#: ../src/ui/dialog/inkscape-preferences.cpp:1885 msgid "" "When on, named icons will be rendered before displaying the ui. This is for " "working around bugs in GTK+ named icon notification" @@ -19636,83 +19518,83 @@ msgstr "" "Benannte Icons werden gerendert, bevor die Benutzeroberfläche dargestellt " "wird. Damit werden Fehler in der GTK+-Hinweisen zu benannten Icons umgangen." -#: ../src/ui/dialog/inkscape-preferences.cpp:1889 +#: ../src/ui/dialog/inkscape-preferences.cpp:1893 msgid "System info" msgstr "System-Information" -#: ../src/ui/dialog/inkscape-preferences.cpp:1893 +#: ../src/ui/dialog/inkscape-preferences.cpp:1897 msgid "User config: " msgstr "Benutzerkonfiguration:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1893 +#: ../src/ui/dialog/inkscape-preferences.cpp:1897 msgid "Location of users configuration" msgstr "Ort der Benutzerkonfiguration" -#: ../src/ui/dialog/inkscape-preferences.cpp:1897 +#: ../src/ui/dialog/inkscape-preferences.cpp:1901 msgid "User preferences: " msgstr "Benutzereinstellungen:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1897 +#: ../src/ui/dialog/inkscape-preferences.cpp:1901 msgid "Location of the users preferences file" msgstr "Ort der Benutzer-Einstellungsdatei" -#: ../src/ui/dialog/inkscape-preferences.cpp:1901 +#: ../src/ui/dialog/inkscape-preferences.cpp:1905 msgid "User extensions: " msgstr "Benutzererweiterungen:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1901 +#: ../src/ui/dialog/inkscape-preferences.cpp:1905 msgid "Location of the users extensions" msgstr "Ort der Benutzer-Erweiterungen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1905 +#: ../src/ui/dialog/inkscape-preferences.cpp:1909 msgid "User cache: " msgstr "Benutzer Cache:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1905 +#: ../src/ui/dialog/inkscape-preferences.cpp:1909 msgid "Location of users cache" msgstr "Ort des Benutzer-Caches" -#: ../src/ui/dialog/inkscape-preferences.cpp:1913 +#: ../src/ui/dialog/inkscape-preferences.cpp:1917 msgid "Temporary files: " msgstr "Temporäre Dateien:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1913 +#: ../src/ui/dialog/inkscape-preferences.cpp:1917 msgid "Location of the temporary files used for autosave" msgstr "Ort der temp. Dateien, die für Auto-Speicherung verwendet werden" -#: ../src/ui/dialog/inkscape-preferences.cpp:1917 +#: ../src/ui/dialog/inkscape-preferences.cpp:1921 msgid "Inkscape data: " msgstr "Inkscapedaten:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1917 +#: ../src/ui/dialog/inkscape-preferences.cpp:1921 msgid "Location of Inkscape data" msgstr "Ort der Inkscapedaten" -#: ../src/ui/dialog/inkscape-preferences.cpp:1921 +#: ../src/ui/dialog/inkscape-preferences.cpp:1925 msgid "Inkscape extensions: " msgstr "Inkscape-Erweiterungen:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1921 +#: ../src/ui/dialog/inkscape-preferences.cpp:1925 msgid "Location of the Inkscape extensions" msgstr "Ort der Inkscape-Erweiterungen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1930 +#: ../src/ui/dialog/inkscape-preferences.cpp:1934 msgid "System data: " msgstr "System" -#: ../src/ui/dialog/inkscape-preferences.cpp:1930 +#: ../src/ui/dialog/inkscape-preferences.cpp:1934 msgid "Locations of system data" msgstr "Ort der Systemdaten" -#: ../src/ui/dialog/inkscape-preferences.cpp:1954 +#: ../src/ui/dialog/inkscape-preferences.cpp:1958 msgid "Icon theme: " msgstr "Icon Thema:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1954 +#: ../src/ui/dialog/inkscape-preferences.cpp:1958 msgid "Locations of icon themes" msgstr "Ort der Icon-Themen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1956 +#: ../src/ui/dialog/inkscape-preferences.cpp:1960 msgid "System" msgstr "System" @@ -19774,7 +19656,7 @@ msgstr "Unterlage" msgid "_Use pressure-sensitive tablet (requires restart)" msgstr "Druckempfindliches Grafiktablett verwenden (erfordert Neustart)" -#: ../src/ui/dialog/input.cpp:1082 ../src/verbs.cpp:2302 +#: ../src/ui/dialog/input.cpp:1082 ../src/verbs.cpp:2354 msgid "_Save" msgstr "_Speichern" @@ -19795,8 +19677,8 @@ msgstr "" "gesamten 'Bildschirm' gemappt oder in ein einzelnes (normalerweise das " "aktive) 'Fenster'" -#: ../src/ui/dialog/input.cpp:1616 ../src/widgets/calligraphy-toolbar.cpp:599 -#: ../src/widgets/spray-toolbar.cpp:240 ../src/widgets/tweak-toolbar.cpp:390 +#: ../src/ui/dialog/input.cpp:1616 ../src/widgets/calligraphy-toolbar.cpp:595 +#: ../src/widgets/spray-toolbar.cpp:236 ../src/widgets/tweak-toolbar.cpp:386 msgid "Pressure" msgstr "Druck" @@ -19839,8 +19721,8 @@ msgstr "Ebene umbenennen" #. TODO: find an unused layer number, forming name from _("Layer ") + "%d" #: ../src/ui/dialog/layer-properties.cpp:354 -#: ../src/ui/dialog/layer-properties.cpp:410 ../src/verbs.cpp:193 -#: ../src/verbs.cpp:2233 +#: ../src/ui/dialog/layer-properties.cpp:410 ../src/verbs.cpp:194 +#: ../src/verbs.cpp:2285 msgid "Layer" msgstr "Ebene" @@ -19848,7 +19730,7 @@ msgstr "Ebene" msgid "_Rename" msgstr "_Umbenennen" -#: ../src/ui/dialog/layer-properties.cpp:368 ../src/ui/dialog/layers.cpp:749 +#: ../src/ui/dialog/layer-properties.cpp:368 ../src/ui/dialog/layers.cpp:750 msgid "Rename layer" msgstr "Ebene umbenennen" @@ -19874,59 +19756,59 @@ msgid "Move to Layer" msgstr "Zur Ebene verschieben" #: ../src/ui/dialog/layer-properties.cpp:411 -#: ../src/ui/dialog/transformation.cpp:113 +#: ../src/ui/dialog/transformation.cpp:114 msgid "_Move" msgstr "_Verschieben" -#: ../src/ui/dialog/layers.cpp:524 ../src/ui/widget/layer-selector.cpp:613 +#: ../src/ui/dialog/layers.cpp:525 ../src/ui/widget/layer-selector.cpp:613 msgid "Unhide layer" msgstr "Ebene einblenden" -#: ../src/ui/dialog/layers.cpp:524 ../src/ui/widget/layer-selector.cpp:613 +#: ../src/ui/dialog/layers.cpp:525 ../src/ui/widget/layer-selector.cpp:613 msgid "Hide layer" msgstr "Ebene ausblenden" -#: ../src/ui/dialog/layers.cpp:535 ../src/ui/widget/layer-selector.cpp:605 +#: ../src/ui/dialog/layers.cpp:536 ../src/ui/widget/layer-selector.cpp:605 msgid "Lock layer" msgstr "Ebene sperren" -#: ../src/ui/dialog/layers.cpp:535 ../src/ui/widget/layer-selector.cpp:605 +#: ../src/ui/dialog/layers.cpp:536 ../src/ui/widget/layer-selector.cpp:605 msgid "Unlock layer" msgstr "Ebene entsperren" -#: ../src/ui/dialog/layers.cpp:623 ../src/verbs.cpp:1348 +#: ../src/ui/dialog/layers.cpp:624 ../src/verbs.cpp:1397 msgid "Toggle layer solo" msgstr "Sichbarkeit der aktuellen Ebene umschalten" -#: ../src/ui/dialog/layers.cpp:626 ../src/verbs.cpp:1372 +#: ../src/ui/dialog/layers.cpp:627 ../src/verbs.cpp:1421 msgid "Lock other layers" msgstr "Anderen Ebene sperren" -#: ../src/ui/dialog/layers.cpp:720 +#: ../src/ui/dialog/layers.cpp:721 msgid "Moved layer" msgstr "Verschobene Ebene" -#: ../src/ui/dialog/layers.cpp:882 +#: ../src/ui/dialog/layers.cpp:883 msgctxt "Layers" msgid "New" msgstr "Neu" -#: ../src/ui/dialog/layers.cpp:887 +#: ../src/ui/dialog/layers.cpp:888 msgctxt "Layers" msgid "Bot" msgstr "Unten" -#: ../src/ui/dialog/layers.cpp:893 +#: ../src/ui/dialog/layers.cpp:894 msgctxt "Layers" msgid "Dn" msgstr "Runter" -#: ../src/ui/dialog/layers.cpp:899 +#: ../src/ui/dialog/layers.cpp:900 msgctxt "Layers" msgid "Up" msgstr "Hoch" -#: ../src/ui/dialog/layers.cpp:905 +#: ../src/ui/dialog/layers.cpp:906 msgctxt "Layers" msgid "Top" msgstr "Oben" @@ -20052,6 +19934,43 @@ msgstr "Log-Erfassung gestartet." msgid "Log capture stopped." msgstr "Log-Erfassung gestoppt." +#: ../src/ui/dialog/new-from-template.cpp:24 +msgid "Create from template" +msgstr "Erstellen von Vorlage" + +#: ../src/ui/dialog/new-from-template.cpp:26 +msgid "New From Template" +msgstr "Neu aus Vorlage" + +#: ../src/ui/dialog/template-widget.cpp:29 +msgid "More info" +msgstr "Mehr Info" + +#: ../src/ui/dialog/template-widget.cpp:30 +#: ../src/ui/dialog/template-widget.cpp:31 +msgid " " +msgstr "" + +#: ../src/ui/dialog/template-widget.cpp:32 +msgid "no template selected" +msgstr "Keine Vorlage gewählt" + +#: ../src/ui/dialog/template-widget.cpp:98 +msgid "Path: " +msgstr "Verzeichnis:" + +#: ../src/ui/dialog/template-widget.cpp:101 +msgid "Description: " +msgstr "Beschreibung:" + +#: ../src/ui/dialog/template-widget.cpp:103 +msgid "Keywords: " +msgstr "Schlagworte:" + +#: ../src/ui/dialog/template-widget.cpp:110 +msgid "By: " +msgstr "" + #: ../src/ui/dialog/object-attributes.cpp:47 msgid "Href:" msgstr "Href:" @@ -20084,13 +20003,13 @@ msgstr "URL:" #: ../src/ui/dialog/object-attributes.cpp:66 #: ../src/ui/dialog/object-attributes.cpp:74 ../src/ui/dialog/tile.cpp:618 -#: ../src/widgets/desktop-widget.cpp:666 ../src/widgets/node-toolbar.cpp:590 +#: ../src/widgets/desktop-widget.cpp:670 ../src/widgets/node-toolbar.cpp:593 msgid "X:" msgstr "X:" #: ../src/ui/dialog/object-attributes.cpp:67 #: ../src/ui/dialog/object-attributes.cpp:75 ../src/ui/dialog/tile.cpp:619 -#: ../src/widgets/desktop-widget.cpp:676 ../src/widgets/node-toolbar.cpp:608 +#: ../src/widgets/desktop-widget.cpp:680 ../src/widgets/node-toolbar.cpp:611 msgid "Y:" msgstr "Y:" @@ -20117,8 +20036,8 @@ msgstr "_Ausblenden" msgid "L_ock" msgstr "_Sperren" -#: ../src/ui/dialog/object-properties.cpp:74 ../src/verbs.cpp:2573 -#: ../src/verbs.cpp:2579 +#: ../src/ui/dialog/object-properties.cpp:74 ../src/verbs.cpp:2627 +#: ../src/verbs.cpp:2633 msgid "_Set" msgstr "_Setzen" @@ -20273,35 +20192,6 @@ msgstr "SVG Dokument" msgid "Print" msgstr "Drucken" -#. ## Add a menu for clear() -#: ../src/ui/dialog/scriptdialog.cpp:178 ../src/verbs.cpp:136 -msgid "File" -msgstr "_Datei" - -#: ../src/ui/dialog/scriptdialog.cpp:186 -msgid "_Execute Javascript" -msgstr "Javascript _ausführen" - -#: ../src/ui/dialog/scriptdialog.cpp:190 -msgid "_Execute Python" -msgstr "Python _ausführen" - -#: ../src/ui/dialog/scriptdialog.cpp:194 -msgid "_Execute Ruby" -msgstr "Ruby _ausführen" - -#: ../src/ui/dialog/scriptdialog.cpp:205 -msgid "Script" -msgstr "Skript" - -#: ../src/ui/dialog/scriptdialog.cpp:215 -msgid "Output" -msgstr "Ausgabe" - -#: ../src/ui/dialog/scriptdialog.cpp:225 -msgid "Errors" -msgstr "Fehler" - #: ../src/ui/dialog/svg-fonts-dialog.cpp:138 msgid "Set SVG Font attribute" msgstr "SVG-Schrift-Attribut setzen" @@ -20462,60 +20352,60 @@ msgid "Preview Text:" msgstr "Textvorschau:" #. ******************* Symbol Sets ************************ -#: ../src/ui/dialog/symbols.cpp:127 +#: ../src/ui/dialog/symbols.cpp:128 msgid "Symbol set: " msgstr "Symbolsatz:" #. Fill in later -#: ../src/ui/dialog/symbols.cpp:136 ../src/ui/dialog/symbols.cpp:137 +#: ../src/ui/dialog/symbols.cpp:137 ../src/ui/dialog/symbols.cpp:138 msgid "Current Document" msgstr "Aktuelles Dokument" -#: ../src/ui/dialog/symbols.cpp:204 +#: ../src/ui/dialog/symbols.cpp:205 msgid "Add Symbol from the current document." msgstr "Symbol vom aktuellen Dokument hinzufügen." -#: ../src/ui/dialog/symbols.cpp:213 +#: ../src/ui/dialog/symbols.cpp:214 msgid "Remove Symbol from the current document." msgstr "Symbol vom aktuellen Dokument entfernen." -#: ../src/ui/dialog/symbols.cpp:226 +#: ../src/ui/dialog/symbols.cpp:227 msgid "Make Icons bigger by zooming in." msgstr "Vergrößere die Icons durch Hineinzoomen." -#: ../src/ui/dialog/symbols.cpp:235 +#: ../src/ui/dialog/symbols.cpp:236 msgid "Make Icons smaller by zooming out." msgstr "Icons verkleinern durch Herauszoomen" -#: ../src/ui/dialog/symbols.cpp:244 +#: ../src/ui/dialog/symbols.cpp:245 msgid "Toggle 'fit' symbols in icon space." msgstr "" -#: ../src/ui/dialog/symbols.cpp:557 +#: ../src/ui/dialog/symbols.cpp:558 msgid "Unnamed Symbols" msgstr "Unbenannte Symbole" #. TRANSLATORS: An item in context menu on a colour in the swatches -#: ../src/ui/dialog/swatches.cpp:258 +#: ../src/ui/dialog/swatches.cpp:259 msgid "Set fill" msgstr "Füllung festlegen" #. TRANSLATORS: An item in context menu on a colour in the swatches -#: ../src/ui/dialog/swatches.cpp:266 +#: ../src/ui/dialog/swatches.cpp:267 msgid "Set stroke" msgstr "Kontur festlegen" -#: ../src/ui/dialog/swatches.cpp:287 +#: ../src/ui/dialog/swatches.cpp:288 msgid "Edit..." msgstr "Bearbeiten…" # !!! not the best translation -#: ../src/ui/dialog/swatches.cpp:299 +#: ../src/ui/dialog/swatches.cpp:300 msgid "Convert" msgstr "Konvertieren" # !!! palettes, not swatches? -#: ../src/ui/dialog/swatches.cpp:543 +#: ../src/ui/dialog/swatches.cpp:544 #, c-format msgid "Palettes directory (%s) is unavailable." msgstr "Palettenverzeichnis (%s) nicht auffindbar." @@ -20858,42 +20748,42 @@ msgstr "Nachzeichnen abbrechen" msgid "Execute the trace" msgstr "Nachzeichnen ausführen" -#: ../src/ui/dialog/transformation.cpp:75 -#: ../src/ui/dialog/transformation.cpp:85 +#: ../src/ui/dialog/transformation.cpp:76 +#: ../src/ui/dialog/transformation.cpp:86 msgid "_Horizontal:" msgstr "_Horizontal:" -#: ../src/ui/dialog/transformation.cpp:75 +#: ../src/ui/dialog/transformation.cpp:76 msgid "Horizontal displacement (relative) or position (absolute)" msgstr "Horizontale Verschiebung (relativ) oder Position (absolut)" -#: ../src/ui/dialog/transformation.cpp:77 -#: ../src/ui/dialog/transformation.cpp:87 +#: ../src/ui/dialog/transformation.cpp:78 +#: ../src/ui/dialog/transformation.cpp:88 msgid "_Vertical:" msgstr "_Vertikal:" -#: ../src/ui/dialog/transformation.cpp:77 +#: ../src/ui/dialog/transformation.cpp:78 msgid "Vertical displacement (relative) or position (absolute)" msgstr "Vertikale Verschiebung (relativ) oder Position (absolut)" -#: ../src/ui/dialog/transformation.cpp:79 +#: ../src/ui/dialog/transformation.cpp:80 msgid "Horizontal size (absolute or percentage of current)" msgstr "Horizontaler Vergrößerungsschritt (absolut oder prozentual)" -#: ../src/ui/dialog/transformation.cpp:81 +#: ../src/ui/dialog/transformation.cpp:82 msgid "Vertical size (absolute or percentage of current)" msgstr "Vertikaler Vergrößerungsschritt (absolut oder prozentual)" -#: ../src/ui/dialog/transformation.cpp:83 +#: ../src/ui/dialog/transformation.cpp:84 msgid "A_ngle:" msgstr "Winkel:" -#: ../src/ui/dialog/transformation.cpp:83 -#: ../src/ui/dialog/transformation.cpp:1068 +#: ../src/ui/dialog/transformation.cpp:84 +#: ../src/ui/dialog/transformation.cpp:1103 msgid "Rotation angle (positive = counterclockwise)" msgstr "Drehwinkel (positiv = gegen den Uhrzeigersinn)" -#: ../src/ui/dialog/transformation.cpp:85 +#: ../src/ui/dialog/transformation.cpp:86 msgid "" "Horizontal skew angle (positive = counterclockwise), or absolute " "displacement, or percentage displacement" @@ -20901,7 +20791,7 @@ msgstr "" "Horizontaler Scherwinkel (positiv = gegen den Uhrzeigersinn), oder absolute " "oder prozentuale Verschiebung" -#: ../src/ui/dialog/transformation.cpp:87 +#: ../src/ui/dialog/transformation.cpp:88 msgid "" "Vertical skew angle (positive = counterclockwise), or absolute displacement, " "or percentage displacement" @@ -20909,35 +20799,35 @@ msgstr "" "Vertikaler Scherwinkel (positiv = gegen den Uhrzeigersinn), oder absolute " "oder prozentuale Verschiebung" -#: ../src/ui/dialog/transformation.cpp:90 +#: ../src/ui/dialog/transformation.cpp:91 msgid "Transformation matrix element A" msgstr "Abbildungsmatrix, Element A" -#: ../src/ui/dialog/transformation.cpp:91 +#: ../src/ui/dialog/transformation.cpp:92 msgid "Transformation matrix element B" msgstr "Abbildungsmatrix, Element B" -#: ../src/ui/dialog/transformation.cpp:92 +#: ../src/ui/dialog/transformation.cpp:93 msgid "Transformation matrix element C" msgstr "Abbildungsmatrix, Element C" -#: ../src/ui/dialog/transformation.cpp:93 +#: ../src/ui/dialog/transformation.cpp:94 msgid "Transformation matrix element D" msgstr "Abbildungsmatrix, Element D" -#: ../src/ui/dialog/transformation.cpp:94 +#: ../src/ui/dialog/transformation.cpp:95 msgid "Transformation matrix element E" msgstr "Abbildungsmatrix, Element E" -#: ../src/ui/dialog/transformation.cpp:95 +#: ../src/ui/dialog/transformation.cpp:96 msgid "Transformation matrix element F" msgstr "Abbildungsmatrix, Element F" -#: ../src/ui/dialog/transformation.cpp:100 +#: ../src/ui/dialog/transformation.cpp:101 msgid "Rela_tive move" msgstr "_Relative Bewegung" -#: ../src/ui/dialog/transformation.cpp:100 +#: ../src/ui/dialog/transformation.cpp:101 msgid "" "Add the specified relative displacement to the current position; otherwise, " "edit the current absolute position directly" @@ -20945,19 +20835,19 @@ msgstr "" "Die angegebene relative Verschiebung zur aktuellen Position hinzuaddieren; " "anderenfalls die aktuelle absolute Position direkt ändern" -#: ../src/ui/dialog/transformation.cpp:101 +#: ../src/ui/dialog/transformation.cpp:102 msgid "_Scale proportionally" msgstr "Proportional skalieren" -#: ../src/ui/dialog/transformation.cpp:101 +#: ../src/ui/dialog/transformation.cpp:102 msgid "Preserve the width/height ratio of the scaled objects" msgstr "Das Verhältnis von Höhe und Breite der skalierten Objekte beibehalten" -#: ../src/ui/dialog/transformation.cpp:102 +#: ../src/ui/dialog/transformation.cpp:103 msgid "Apply to each _object separately" msgstr "Auf jedes _Objekt getrennt anwenden" -#: ../src/ui/dialog/transformation.cpp:102 +#: ../src/ui/dialog/transformation.cpp:103 msgid "" "Apply the scale/rotate/skew to each selected object separately; otherwise, " "transform the selection as a whole" @@ -20965,11 +20855,11 @@ msgstr "" "Skalierung/Drehung/Scherung auf jedes ausgewählte Objekt getrennt anwenden; " "anderenfalls auf die gesamte Auswahl anwenden" -#: ../src/ui/dialog/transformation.cpp:103 +#: ../src/ui/dialog/transformation.cpp:104 msgid "Edit c_urrent matrix" msgstr "_Aktuelle Matrix bearbeiten" -#: ../src/ui/dialog/transformation.cpp:103 +#: ../src/ui/dialog/transformation.cpp:104 msgid "" "Edit the current transform= matrix; otherwise, post-multiply transform= by " "this matrix" @@ -20977,43 +20867,53 @@ msgstr "" "Die aktuelle transform=-Matrix bearbeiten; andernfalls transform= hinterher " "mit dieser Matrix multiplizieren" -#: ../src/ui/dialog/transformation.cpp:116 +#: ../src/ui/dialog/transformation.cpp:117 msgid "_Scale" msgstr "_Maßstab" -#: ../src/ui/dialog/transformation.cpp:119 +#: ../src/ui/dialog/transformation.cpp:120 msgid "_Rotate" msgstr "_Drehen" -#: ../src/ui/dialog/transformation.cpp:122 +#: ../src/ui/dialog/transformation.cpp:123 msgid "Ske_w" msgstr "_Scheren" -#: ../src/ui/dialog/transformation.cpp:125 +#: ../src/ui/dialog/transformation.cpp:126 msgid "Matri_x" msgstr "Matri_x" -#: ../src/ui/dialog/transformation.cpp:149 +#: ../src/ui/dialog/transformation.cpp:150 msgid "Reset the values on the current tab to defaults" msgstr "Die Werte des aktuellen Reiters auf die Vorgabewerte setzen" -#: ../src/ui/dialog/transformation.cpp:156 +#: ../src/ui/dialog/transformation.cpp:157 msgid "Apply transformation to selection" msgstr "Transformation auf Auswahl anwenden" -#: ../src/ui/dialog/transformation.cpp:331 +#: ../src/ui/dialog/transformation.cpp:332 msgid "Rotate in a counterclockwise direction" msgstr "Entgegen Uhrzeigersinn drehen" -#: ../src/ui/dialog/transformation.cpp:337 +#: ../src/ui/dialog/transformation.cpp:338 msgid "Rotate in a clockwise direction" msgstr "Drehung im Uhrzeigersinn" -#: ../src/ui/dialog/transformation.cpp:976 +#: ../src/ui/dialog/transformation.cpp:907 +#: ../src/ui/dialog/transformation.cpp:918 +#: ../src/ui/dialog/transformation.cpp:932 +#: ../src/ui/dialog/transformation.cpp:951 +#: ../src/ui/dialog/transformation.cpp:962 +#: ../src/ui/dialog/transformation.cpp:972 +#: ../src/ui/dialog/transformation.cpp:996 +msgid "Transform matrix is singular, not used." +msgstr "" + +#: ../src/ui/dialog/transformation.cpp:1011 msgid "Edit transformation matrix" msgstr "Abbildungsmatrix ändern" -#: ../src/ui/dialog/transformation.cpp:1075 +#: ../src/ui/dialog/transformation.cpp:1110 msgid "Rotation angle (positive = clockwise)" msgstr "Drehwinkel (positiv = im Uhrzeigersinn)" @@ -21054,95 +20954,95 @@ msgstr "" "Bezier-Segment: Ziehen, um das Segment zu formen, Doppelklick zum " "Einfügen eines Knotens oder Klicken zum Auswählen (mehr: Umschalt, Strg+Alt)" -#: ../src/ui/tool/multi-path-manipulator.cpp:322 +#: ../src/ui/tool/multi-path-manipulator.cpp:326 msgid "Retract handles" msgstr "Anfasser zurückziehen" -#: ../src/ui/tool/multi-path-manipulator.cpp:322 ../src/ui/tool/node.cpp:271 +#: ../src/ui/tool/multi-path-manipulator.cpp:326 ../src/ui/tool/node.cpp:270 msgid "Change node type" msgstr "Knotentyp ändern" -#: ../src/ui/tool/multi-path-manipulator.cpp:330 +#: ../src/ui/tool/multi-path-manipulator.cpp:334 msgid "Straighten segments" msgstr "Segmente begradigen" -#: ../src/ui/tool/multi-path-manipulator.cpp:332 +#: ../src/ui/tool/multi-path-manipulator.cpp:336 msgid "Make segments curves" msgstr "Die gewählten Abschnitte in Kurven umwandeln" -#: ../src/ui/tool/multi-path-manipulator.cpp:339 +#: ../src/ui/tool/multi-path-manipulator.cpp:343 msgid "Add nodes" msgstr "Mehrere Knoten hinzufügen" -#: ../src/ui/tool/multi-path-manipulator.cpp:344 +#: ../src/ui/tool/multi-path-manipulator.cpp:348 msgid "Add extremum nodes" msgstr "Extremwert-Knoten hinzufügen" -#: ../src/ui/tool/multi-path-manipulator.cpp:350 +#: ../src/ui/tool/multi-path-manipulator.cpp:354 msgid "Duplicate nodes" msgstr "Knoten duplizieren" -#: ../src/ui/tool/multi-path-manipulator.cpp:412 -#: ../src/widgets/node-toolbar.cpp:417 +#: ../src/ui/tool/multi-path-manipulator.cpp:416 +#: ../src/widgets/node-toolbar.cpp:420 msgid "Join nodes" msgstr "Knoten verbinden" -#: ../src/ui/tool/multi-path-manipulator.cpp:419 -#: ../src/widgets/node-toolbar.cpp:428 +#: ../src/ui/tool/multi-path-manipulator.cpp:423 +#: ../src/widgets/node-toolbar.cpp:431 msgid "Break nodes" msgstr "Knoten unterbrechen" -#: ../src/ui/tool/multi-path-manipulator.cpp:426 +#: ../src/ui/tool/multi-path-manipulator.cpp:430 msgid "Delete nodes" msgstr "Knoten löschen" -#: ../src/ui/tool/multi-path-manipulator.cpp:756 +#: ../src/ui/tool/multi-path-manipulator.cpp:760 msgid "Move nodes" msgstr "Knoten verschieben" -#: ../src/ui/tool/multi-path-manipulator.cpp:759 +#: ../src/ui/tool/multi-path-manipulator.cpp:763 msgid "Move nodes horizontally" msgstr "Knoten horizontal verschieben" -#: ../src/ui/tool/multi-path-manipulator.cpp:763 +#: ../src/ui/tool/multi-path-manipulator.cpp:767 msgid "Move nodes vertically" msgstr "Knoten vertikal verschieben" -#: ../src/ui/tool/multi-path-manipulator.cpp:767 -#: ../src/ui/tool/multi-path-manipulator.cpp:770 +#: ../src/ui/tool/multi-path-manipulator.cpp:771 +#: ../src/ui/tool/multi-path-manipulator.cpp:774 msgid "Rotate nodes" msgstr "Knoten rotieren" -#: ../src/ui/tool/multi-path-manipulator.cpp:774 -#: ../src/ui/tool/multi-path-manipulator.cpp:780 +#: ../src/ui/tool/multi-path-manipulator.cpp:778 +#: ../src/ui/tool/multi-path-manipulator.cpp:784 msgid "Scale nodes uniformly" msgstr "Knoten skalieren" -#: ../src/ui/tool/multi-path-manipulator.cpp:777 +#: ../src/ui/tool/multi-path-manipulator.cpp:781 msgid "Scale nodes" msgstr "Knoten skalieren" -#: ../src/ui/tool/multi-path-manipulator.cpp:784 +#: ../src/ui/tool/multi-path-manipulator.cpp:788 msgid "Scale nodes horizontally" msgstr "Knoten horizontal skalieren" -#: ../src/ui/tool/multi-path-manipulator.cpp:788 +#: ../src/ui/tool/multi-path-manipulator.cpp:792 msgid "Scale nodes vertically" msgstr "Knoten vertikal skalieren" -#: ../src/ui/tool/multi-path-manipulator.cpp:792 +#: ../src/ui/tool/multi-path-manipulator.cpp:796 msgid "Skew nodes horizontally" msgstr "Knoten horizontal krümmen" -#: ../src/ui/tool/multi-path-manipulator.cpp:796 +#: ../src/ui/tool/multi-path-manipulator.cpp:800 msgid "Skew nodes vertically" msgstr "Knoten vertikal krümmen" -#: ../src/ui/tool/multi-path-manipulator.cpp:800 +#: ../src/ui/tool/multi-path-manipulator.cpp:804 msgid "Flip nodes horizontally" msgstr "Knoten Horizontal umkehren" -#: ../src/ui/tool/multi-path-manipulator.cpp:803 +#: ../src/ui/tool/multi-path-manipulator.cpp:807 msgid "Flip nodes vertically" msgstr "Knoten Vertikal umkehren" @@ -21204,33 +21104,33 @@ msgctxt "Node tool tip" msgid "Drag to select objects to edit" msgstr "Ziehen, um Objekte zum bearbeiten auszuwählen" -#: ../src/ui/tool/node.cpp:246 +#: ../src/ui/tool/node.cpp:245 msgid "Cusp node handle" msgstr "Spitzer Knotenanfasser" -#: ../src/ui/tool/node.cpp:247 +#: ../src/ui/tool/node.cpp:246 msgid "Smooth node handle" msgstr "Weicher Knotenanfasser" -#: ../src/ui/tool/node.cpp:248 +#: ../src/ui/tool/node.cpp:247 msgid "Symmetric node handle" msgstr "Symmetrischer Knotenanfasser" -#: ../src/ui/tool/node.cpp:249 +#: ../src/ui/tool/node.cpp:248 msgid "Auto-smooth node handle" msgstr "Knotenanfasser automatisch abrunden" -#: ../src/ui/tool/node.cpp:433 +#: ../src/ui/tool/node.cpp:432 msgctxt "Path handle tip" msgid "more: Shift, Ctrl, Alt" msgstr "mehr: Umschalttaste, STRG, ALT" -#: ../src/ui/tool/node.cpp:435 +#: ../src/ui/tool/node.cpp:434 msgctxt "Path handle tip" msgid "more: Ctrl, Alt" msgstr "more: STRG, ALT" -#: ../src/ui/tool/node.cpp:441 +#: ../src/ui/tool/node.cpp:440 #, c-format msgctxt "Path handle tip" msgid "" @@ -21240,7 +21140,7 @@ msgstr "" "Umschalt+Strg+Alt: Länge behalten und Rotationswinkel einrasten auf %g" "° Stufen, während dem Drehen beider Anfasser" -#: ../src/ui/tool/node.cpp:446 +#: ../src/ui/tool/node.cpp:445 #, c-format msgctxt "Path handle tip" msgid "" @@ -21248,17 +21148,17 @@ msgid "" msgstr "" "Ctrl+Alt: Länge behalten und Rotationswinkel einrasten auf %g° Stufen" -#: ../src/ui/tool/node.cpp:452 +#: ../src/ui/tool/node.cpp:451 msgctxt "Path handle tip" msgid "Shift+Alt: preserve handle length and rotate both handles" msgstr "Umschalt:bewahrt die Anfasserlänge und dreht beide Anfasser" -#: ../src/ui/tool/node.cpp:455 +#: ../src/ui/tool/node.cpp:454 msgctxt "Path handle tip" msgid "Alt: preserve handle length while dragging" msgstr "Alt: Anfasserlänge beim Ziehen behalten" -#: ../src/ui/tool/node.cpp:462 +#: ../src/ui/tool/node.cpp:461 #, c-format msgctxt "Path handle tip" msgid "" @@ -21268,7 +21168,7 @@ msgstr "" "Umschalt: Einrasten des Rotationswinkels auf %g° Stufen und beide " "Anfasser drehen" -#: ../src/ui/tool/node.cpp:466 +#: ../src/ui/tool/node.cpp:465 #, c-format msgctxt "Path handle tip" msgid "Ctrl: snap rotation angle to %g° increments, click to retract" @@ -21276,12 +21176,12 @@ msgstr "" "Ctrl: Einrasten des Rotationswinkels auf %g° Stufen, Klicken zum " "Zurücknehmen" -#: ../src/ui/tool/node.cpp:471 +#: ../src/ui/tool/node.cpp:470 msgctxt "Path hande tip" msgid "Shift: rotate both handles by the same angle" msgstr "Umschalt: Dreht beide Anfasser um den gleichen Winkel" -#: ../src/ui/tool/node.cpp:478 +#: ../src/ui/tool/node.cpp:477 #, c-format msgctxt "Path handle tip" msgid "Auto node handle: drag to convert to smooth node (%s)" @@ -21289,55 +21189,55 @@ msgstr "" "Automatischer Knoten-Anfasser: Ziehen, um in einen weichen Knoten zu " "konvertieren (%s)" -#: ../src/ui/tool/node.cpp:481 +#: ../src/ui/tool/node.cpp:480 #, c-format msgctxt "Path handle tip" msgid "%s: drag to shape the segment (%s)" msgstr "%s: Ziehen, um das Segment zu formen (%s)" -#: ../src/ui/tool/node.cpp:497 +#: ../src/ui/tool/node.cpp:500 #, c-format msgctxt "Path handle tip" msgid "Move handle by %s, %s; angle %.2f°, length %s" msgstr "Anfasser verschieben um %s, %s; Winkel %.2f°, Länge %s" -#: ../src/ui/tool/node.cpp:1263 +#: ../src/ui/tool/node.cpp:1266 msgctxt "Path node tip" msgid "Shift: drag out a handle, click to toggle selection" msgstr "" "Umschalt: Anfasser nach außen ziehen, Klicken um Auswahl umzuschalten" -#: ../src/ui/tool/node.cpp:1265 +#: ../src/ui/tool/node.cpp:1268 msgctxt "Path node tip" msgid "Shift: click to toggle selection" msgstr "Umschalt: Klick um Auswahl umzuschalten" -#: ../src/ui/tool/node.cpp:1270 +#: ../src/ui/tool/node.cpp:1273 msgctxt "Path node tip" msgid "Ctrl+Alt: move along handle lines, click to delete node" msgstr "" "STRG+Alt: Entlang der Anfasser-Linien verschieben. Klicken, um Knoten " "zu löschen" -#: ../src/ui/tool/node.cpp:1273 +#: ../src/ui/tool/node.cpp:1276 msgctxt "Path node tip" msgid "Ctrl: move along axes, click to change node type" msgstr "" "STRG: Verschieben entlang der Achsen. Klicken, um Knotentyp zu " "verändern" -#: ../src/ui/tool/node.cpp:1277 +#: ../src/ui/tool/node.cpp:1280 msgctxt "Path node tip" msgid "Alt: sculpt nodes" msgstr "Alt: Knoten formen" -#: ../src/ui/tool/node.cpp:1285 +#: ../src/ui/tool/node.cpp:1288 #, c-format msgctxt "Path node tip" msgid "%s: drag to shape the path (more: Shift, Ctrl, Alt)" msgstr "%s: Ziehen, um den Pfad zu formen (mehr: Umschalt, STRG, Alt)" -#: ../src/ui/tool/node.cpp:1288 +#: ../src/ui/tool/node.cpp:1291 #, c-format msgctxt "Path node tip" msgid "" @@ -21347,7 +21247,7 @@ msgstr "" "%s:Ziehen, um den Pfad zu formen, Klicken um Skalieren/Rotieren der " "Anfasser umzuschalten (mehr: Umschalt, Strg, Alt)" -#: ../src/ui/tool/node.cpp:1291 +#: ../src/ui/tool/node.cpp:1294 #, c-format msgctxt "Path node tip" msgid "" @@ -21357,17 +21257,17 @@ msgstr "" "%s: Ziehen, um den Pfad zu formen, Klicken, um nur diesen Knoten " "auszuwählen (mehr: Umschalt, Strg, Alt)" -#: ../src/ui/tool/node.cpp:1299 +#: ../src/ui/tool/node.cpp:1305 #, c-format msgctxt "Path node tip" msgid "Move node by %s, %s" msgstr "Knoten verschieben um %s, %s" -#: ../src/ui/tool/node.cpp:1311 +#: ../src/ui/tool/node.cpp:1317 msgid "Symmetric node" msgstr "symmetrischer Knoten" -#: ../src/ui/tool/node.cpp:1312 +#: ../src/ui/tool/node.cpp:1318 msgid "Auto-smooth node" msgstr "Knoten automatisch glätten" @@ -21381,7 +21281,7 @@ msgstr "Anfasser rotieren" #. We need to call MPM's method because it could have been our last node #: ../src/ui/tool/path-manipulator.cpp:1374 -#: ../src/widgets/node-toolbar.cpp:406 +#: ../src/widgets/node-toolbar.cpp:409 msgid "Delete node" msgstr "Knoten löschen" @@ -21548,8 +21448,8 @@ msgid "MetadataLicence|Other" msgstr "Andere" #: ../src/ui/widget/object-composite-settings.cpp:67 -#: ../src/ui/widget/selected-style.cpp:1090 -#: ../src/ui/widget/selected-style.cpp:1091 +#: ../src/ui/widget/selected-style.cpp:1095 +#: ../src/ui/widget/selected-style.cpp:1096 msgid "Opacity (%)" msgstr "Deckkraft (%)" @@ -21558,81 +21458,83 @@ msgid "Change blur" msgstr "Weichzeichner ändern" #: ../src/ui/widget/object-composite-settings.cpp:220 -#: ../src/ui/widget/selected-style.cpp:922 -#: ../src/ui/widget/selected-style.cpp:1216 +#: ../src/ui/widget/selected-style.cpp:927 +#: ../src/ui/widget/selected-style.cpp:1221 msgid "Change opacity" msgstr "Deckkraft ändern" -#: ../src/ui/widget/page-sizer.cpp:237 +#: ../src/ui/widget/page-sizer.cpp:235 msgid "U_nits:" msgstr "_Einheit:" -#: ../src/ui/widget/page-sizer.cpp:238 +#: ../src/ui/widget/page-sizer.cpp:236 msgid "Width of paper" msgstr "Breite des Papiers" -#: ../src/ui/widget/page-sizer.cpp:239 +#: ../src/ui/widget/page-sizer.cpp:237 msgid "Height of paper" msgstr "Höhe des Papiers" -#: ../src/ui/widget/page-sizer.cpp:240 +#: ../src/ui/widget/page-sizer.cpp:238 msgid "T_op margin:" msgstr "Obere Umrandung:" -#: ../src/ui/widget/page-sizer.cpp:240 +#: ../src/ui/widget/page-sizer.cpp:238 msgid "Top margin" msgstr "Oberer Rand" -#: ../src/ui/widget/page-sizer.cpp:241 +#: ../src/ui/widget/page-sizer.cpp:239 msgid "L_eft:" msgstr "Links:" -#: ../src/ui/widget/page-sizer.cpp:241 +#: ../src/ui/widget/page-sizer.cpp:239 +#: ../share/extensions/guides_creator.inx.h:17 msgid "Left margin" msgstr "Linker Rand" -#: ../src/ui/widget/page-sizer.cpp:242 +#: ../src/ui/widget/page-sizer.cpp:240 msgid "Ri_ght:" msgstr "Rechts:" -#: ../src/ui/widget/page-sizer.cpp:242 +#: ../src/ui/widget/page-sizer.cpp:240 +#: ../share/extensions/guides_creator.inx.h:18 msgid "Right margin" msgstr "Rechter Rand" -#: ../src/ui/widget/page-sizer.cpp:243 +#: ../src/ui/widget/page-sizer.cpp:241 msgid "Botto_m:" msgstr "Unten:" -#: ../src/ui/widget/page-sizer.cpp:243 +#: ../src/ui/widget/page-sizer.cpp:241 msgid "Bottom margin" msgstr "Unterer Rand" -#: ../src/ui/widget/page-sizer.cpp:303 ../share/extensions/hpgl_output.inx.h:7 +#: ../src/ui/widget/page-sizer.cpp:296 ../share/extensions/hpgl_output.inx.h:7 msgid "Orientation:" msgstr "Ausrichtung" -#: ../src/ui/widget/page-sizer.cpp:306 +#: ../src/ui/widget/page-sizer.cpp:299 msgid "_Landscape" msgstr "_Querformat" -#: ../src/ui/widget/page-sizer.cpp:311 +#: ../src/ui/widget/page-sizer.cpp:304 msgid "_Portrait" msgstr "_Hochformat" #. ## Set up custom size frame -#: ../src/ui/widget/page-sizer.cpp:329 +#: ../src/ui/widget/page-sizer.cpp:322 msgid "Custom size" msgstr "Benutzerdefiniert" -#: ../src/ui/widget/page-sizer.cpp:374 +#: ../src/ui/widget/page-sizer.cpp:367 msgid "Resi_ze page to content..." msgstr "Ändern der Seitengröße auf Inhalt..." -#: ../src/ui/widget/page-sizer.cpp:426 +#: ../src/ui/widget/page-sizer.cpp:419 msgid "_Resize page to drawing or selection" msgstr "Seite in Auswahl ein_passen" -#: ../src/ui/widget/page-sizer.cpp:427 +#: ../src/ui/widget/page-sizer.cpp:420 msgid "" "Resize the page to fit the current selection, or the entire drawing if there " "is no selection" @@ -21640,7 +21542,7 @@ msgstr "" "Seitengröße verändern, so daß sie auf die aktuelle Auswahl passt, oder auf " "die ganze Zeichnung, wenn keine Auswahl existiert" -#: ../src/ui/widget/page-sizer.cpp:492 +#: ../src/ui/widget/page-sizer.cpp:485 msgid "Set page size" msgstr "Seitengröße setzen" @@ -21792,286 +21694,286 @@ msgstr "" "größer und die Qualität hängt vom Zoomfaktor ab, die Zeichnung wird jedoch " "identisch zur angezeigten ausgegeben." -#: ../src/ui/widget/selected-style.cpp:127 -#: ../src/ui/widget/style-swatch.cpp:126 +#: ../src/ui/widget/selected-style.cpp:130 +#: ../src/ui/widget/style-swatch.cpp:127 msgid "Fill:" msgstr "Füllung:" -#: ../src/ui/widget/selected-style.cpp:129 +#: ../src/ui/widget/selected-style.cpp:132 msgid "O:" msgstr "O:" -#: ../src/ui/widget/selected-style.cpp:174 +#: ../src/ui/widget/selected-style.cpp:177 msgid "N/A" msgstr "N/A" -#: ../src/ui/widget/selected-style.cpp:177 -#: ../src/ui/widget/selected-style.cpp:1083 -#: ../src/ui/widget/selected-style.cpp:1084 +#: ../src/ui/widget/selected-style.cpp:180 +#: ../src/ui/widget/selected-style.cpp:1088 +#: ../src/ui/widget/selected-style.cpp:1089 #: ../src/widgets/gradient-toolbar.cpp:176 msgid "Nothing selected" msgstr "Nichts ausgewählt" # !!! -#: ../src/ui/widget/selected-style.cpp:179 -#: ../src/ui/widget/style-swatch.cpp:319 +#: ../src/ui/widget/selected-style.cpp:182 +#: ../src/ui/widget/style-swatch.cpp:320 msgctxt "Fill and stroke" msgid "None" msgstr "Keine" -#: ../src/ui/widget/selected-style.cpp:182 -#: ../src/ui/widget/style-swatch.cpp:321 +#: ../src/ui/widget/selected-style.cpp:185 +#: ../src/ui/widget/style-swatch.cpp:322 msgctxt "Fill and stroke" msgid "No fill" msgstr "Keine Füllung" -#: ../src/ui/widget/selected-style.cpp:182 -#: ../src/ui/widget/style-swatch.cpp:321 +#: ../src/ui/widget/selected-style.cpp:185 +#: ../src/ui/widget/style-swatch.cpp:322 msgctxt "Fill and stroke" msgid "No stroke" msgstr "Keine Kontur" -#: ../src/ui/widget/selected-style.cpp:184 -#: ../src/ui/widget/style-swatch.cpp:300 ../src/widgets/paint-selector.cpp:242 +#: ../src/ui/widget/selected-style.cpp:187 +#: ../src/ui/widget/style-swatch.cpp:301 ../src/widgets/paint-selector.cpp:242 msgid "Pattern" msgstr "Muster" -#: ../src/ui/widget/selected-style.cpp:187 -#: ../src/ui/widget/style-swatch.cpp:302 +#: ../src/ui/widget/selected-style.cpp:190 +#: ../src/ui/widget/style-swatch.cpp:303 msgid "Pattern fill" msgstr "Füllmuster" -#: ../src/ui/widget/selected-style.cpp:187 -#: ../src/ui/widget/style-swatch.cpp:302 +#: ../src/ui/widget/selected-style.cpp:190 +#: ../src/ui/widget/style-swatch.cpp:303 msgid "Pattern stroke" msgstr "Kontur des Musters" # !!! -#: ../src/ui/widget/selected-style.cpp:189 +#: ../src/ui/widget/selected-style.cpp:192 msgid "L" msgstr "L" -#: ../src/ui/widget/selected-style.cpp:192 -#: ../src/ui/widget/style-swatch.cpp:294 +#: ../src/ui/widget/selected-style.cpp:195 +#: ../src/ui/widget/style-swatch.cpp:295 msgid "Linear gradient fill" msgstr "Füllung des linearen Farbverlaufs" -#: ../src/ui/widget/selected-style.cpp:192 -#: ../src/ui/widget/style-swatch.cpp:294 +#: ../src/ui/widget/selected-style.cpp:195 +#: ../src/ui/widget/style-swatch.cpp:295 msgid "Linear gradient stroke" msgstr "Kontur des linearen Farbverlaufs" -#: ../src/ui/widget/selected-style.cpp:199 +#: ../src/ui/widget/selected-style.cpp:202 msgid "R" msgstr "R" -#: ../src/ui/widget/selected-style.cpp:202 -#: ../src/ui/widget/style-swatch.cpp:298 +#: ../src/ui/widget/selected-style.cpp:205 +#: ../src/ui/widget/style-swatch.cpp:299 msgid "Radial gradient fill" msgstr "Füllung des radialen Farbverlaufs" -#: ../src/ui/widget/selected-style.cpp:202 -#: ../src/ui/widget/style-swatch.cpp:298 +#: ../src/ui/widget/selected-style.cpp:205 +#: ../src/ui/widget/style-swatch.cpp:299 msgid "Radial gradient stroke" msgstr "Kontur des radialen Farbverlaufs" -#: ../src/ui/widget/selected-style.cpp:209 +#: ../src/ui/widget/selected-style.cpp:212 msgid "Different" msgstr "Unterschiedlich" -#: ../src/ui/widget/selected-style.cpp:212 +#: ../src/ui/widget/selected-style.cpp:215 msgid "Different fills" msgstr "Unterschiedliche Füllungen" -#: ../src/ui/widget/selected-style.cpp:212 +#: ../src/ui/widget/selected-style.cpp:215 msgid "Different strokes" msgstr "Unterschiedliche Konturen" # !!! -#: ../src/ui/widget/selected-style.cpp:214 -#: ../src/ui/widget/style-swatch.cpp:324 +#: ../src/ui/widget/selected-style.cpp:217 +#: ../src/ui/widget/style-swatch.cpp:325 msgid "Unset" msgstr "Ungesetzt" #. TRANSLATORS COMMENT: unset is a verb here -#: ../src/ui/widget/selected-style.cpp:217 -#: ../src/ui/widget/selected-style.cpp:275 -#: ../src/ui/widget/selected-style.cpp:554 -#: ../src/ui/widget/style-swatch.cpp:326 ../src/widgets/fill-style.cpp:712 +#: ../src/ui/widget/selected-style.cpp:220 +#: ../src/ui/widget/selected-style.cpp:278 +#: ../src/ui/widget/selected-style.cpp:559 +#: ../src/ui/widget/style-swatch.cpp:327 ../src/widgets/fill-style.cpp:712 msgid "Unset fill" msgstr "Füllung aufheben" -#: ../src/ui/widget/selected-style.cpp:217 -#: ../src/ui/widget/selected-style.cpp:275 -#: ../src/ui/widget/selected-style.cpp:570 -#: ../src/ui/widget/style-swatch.cpp:326 ../src/widgets/fill-style.cpp:712 +#: ../src/ui/widget/selected-style.cpp:220 +#: ../src/ui/widget/selected-style.cpp:278 +#: ../src/ui/widget/selected-style.cpp:575 +#: ../src/ui/widget/style-swatch.cpp:327 ../src/widgets/fill-style.cpp:712 msgid "Unset stroke" msgstr "Kontur aufheben" -#: ../src/ui/widget/selected-style.cpp:220 +#: ../src/ui/widget/selected-style.cpp:223 msgid "Flat color fill" msgstr "Einfache Farbe der Füllung" -#: ../src/ui/widget/selected-style.cpp:220 +#: ../src/ui/widget/selected-style.cpp:223 msgid "Flat color stroke" msgstr "Einfache Farbe der Kontur" # !!! #. TRANSLATOR COMMENT: A means "Averaged" -#: ../src/ui/widget/selected-style.cpp:223 +#: ../src/ui/widget/selected-style.cpp:226 msgid "a" msgstr "a" -#: ../src/ui/widget/selected-style.cpp:226 +#: ../src/ui/widget/selected-style.cpp:229 msgid "Fill is averaged over selected objects" msgstr "Füllung wird über ausgewählte Objekte gemittelt" -#: ../src/ui/widget/selected-style.cpp:226 +#: ../src/ui/widget/selected-style.cpp:229 msgid "Stroke is averaged over selected objects" msgstr "Konturlinie wird über ausgewählte Objekte gemittelt" # !!! #. TRANSLATOR COMMENT: M means "Multiple" -#: ../src/ui/widget/selected-style.cpp:229 +#: ../src/ui/widget/selected-style.cpp:232 msgid "m" msgstr "m" -#: ../src/ui/widget/selected-style.cpp:232 +#: ../src/ui/widget/selected-style.cpp:235 msgid "Multiple selected objects have the same fill" msgstr "Mehrere ausgewählte Objekte haben die selbe Füllung" -#: ../src/ui/widget/selected-style.cpp:232 +#: ../src/ui/widget/selected-style.cpp:235 msgid "Multiple selected objects have the same stroke" msgstr "Mehrere ausgewählte Objekte haben die selbe Kontur" -#: ../src/ui/widget/selected-style.cpp:234 +#: ../src/ui/widget/selected-style.cpp:237 msgid "Edit fill..." msgstr "Füllung bearbeiten…" -#: ../src/ui/widget/selected-style.cpp:234 +#: ../src/ui/widget/selected-style.cpp:237 msgid "Edit stroke..." msgstr "Kontur bearbeiten…" -#: ../src/ui/widget/selected-style.cpp:238 +#: ../src/ui/widget/selected-style.cpp:241 msgid "Last set color" msgstr "Zuletzt gesetzte Farbe" -#: ../src/ui/widget/selected-style.cpp:242 +#: ../src/ui/widget/selected-style.cpp:245 msgid "Last selected color" msgstr "Zuletzt gewählte Farbe" -#: ../src/ui/widget/selected-style.cpp:258 +#: ../src/ui/widget/selected-style.cpp:261 msgid "Copy color" msgstr "Farbe kopieren" -#: ../src/ui/widget/selected-style.cpp:262 +#: ../src/ui/widget/selected-style.cpp:265 msgid "Paste color" msgstr "Farbe einfügen" -#: ../src/ui/widget/selected-style.cpp:266 -#: ../src/ui/widget/selected-style.cpp:847 +#: ../src/ui/widget/selected-style.cpp:269 +#: ../src/ui/widget/selected-style.cpp:852 msgid "Swap fill and stroke" msgstr "Füllung und Linie vertauschen" -#: ../src/ui/widget/selected-style.cpp:270 -#: ../src/ui/widget/selected-style.cpp:579 -#: ../src/ui/widget/selected-style.cpp:588 +#: ../src/ui/widget/selected-style.cpp:273 +#: ../src/ui/widget/selected-style.cpp:584 +#: ../src/ui/widget/selected-style.cpp:593 msgid "Make fill opaque" msgstr "Füllung undurchsichtig machen" -#: ../src/ui/widget/selected-style.cpp:270 +#: ../src/ui/widget/selected-style.cpp:273 msgid "Make stroke opaque" msgstr "Kontur undurchsichtig machen" -#: ../src/ui/widget/selected-style.cpp:279 -#: ../src/ui/widget/selected-style.cpp:536 ../src/widgets/fill-style.cpp:510 +#: ../src/ui/widget/selected-style.cpp:282 +#: ../src/ui/widget/selected-style.cpp:541 ../src/widgets/fill-style.cpp:510 msgid "Remove fill" msgstr "Füllung entfernen" -#: ../src/ui/widget/selected-style.cpp:279 -#: ../src/ui/widget/selected-style.cpp:545 ../src/widgets/fill-style.cpp:510 +#: ../src/ui/widget/selected-style.cpp:282 +#: ../src/ui/widget/selected-style.cpp:550 ../src/widgets/fill-style.cpp:510 msgid "Remove stroke" msgstr "Kontur entfernen" -#: ../src/ui/widget/selected-style.cpp:600 +#: ../src/ui/widget/selected-style.cpp:605 msgid "Apply last set color to fill" msgstr "Zuletzt gesetzte Farbe auf Füllung anwenden" -#: ../src/ui/widget/selected-style.cpp:612 +#: ../src/ui/widget/selected-style.cpp:617 msgid "Apply last set color to stroke" msgstr "Zuletzt gesetzte Farbe auf Kontur anwenden" -#: ../src/ui/widget/selected-style.cpp:623 +#: ../src/ui/widget/selected-style.cpp:628 msgid "Apply last selected color to fill" msgstr "Zuletzt gewählte Farbe auf Füllung anwenden" -#: ../src/ui/widget/selected-style.cpp:634 +#: ../src/ui/widget/selected-style.cpp:639 msgid "Apply last selected color to stroke" msgstr "Zuletzt gewählte Farbe auf Kontur anwenden" -#: ../src/ui/widget/selected-style.cpp:660 +#: ../src/ui/widget/selected-style.cpp:665 msgid "Invert fill" msgstr "Füllung invertieren" -#: ../src/ui/widget/selected-style.cpp:684 +#: ../src/ui/widget/selected-style.cpp:689 msgid "Invert stroke" msgstr "Kontur invertieren" -#: ../src/ui/widget/selected-style.cpp:696 +#: ../src/ui/widget/selected-style.cpp:701 msgid "White fill" msgstr "Weiße Füllung" -#: ../src/ui/widget/selected-style.cpp:708 +#: ../src/ui/widget/selected-style.cpp:713 msgid "White stroke" msgstr "Weiße Kontur" -#: ../src/ui/widget/selected-style.cpp:720 +#: ../src/ui/widget/selected-style.cpp:725 msgid "Black fill" msgstr "Schwarze Füllung" -#: ../src/ui/widget/selected-style.cpp:732 +#: ../src/ui/widget/selected-style.cpp:737 msgid "Black stroke" msgstr "Schwarze Kontur" -#: ../src/ui/widget/selected-style.cpp:775 +#: ../src/ui/widget/selected-style.cpp:780 msgid "Paste fill" msgstr "Füllmuster einfügen" -#: ../src/ui/widget/selected-style.cpp:793 +#: ../src/ui/widget/selected-style.cpp:798 msgid "Paste stroke" msgstr "Kontur einfügen" -#: ../src/ui/widget/selected-style.cpp:949 +#: ../src/ui/widget/selected-style.cpp:954 msgid "Change stroke width" msgstr "Breite der Kontur ändern" -#: ../src/ui/widget/selected-style.cpp:1044 +#: ../src/ui/widget/selected-style.cpp:1049 msgid ", drag to adjust" msgstr ", Ziehen stellt ein" -#: ../src/ui/widget/selected-style.cpp:1129 +#: ../src/ui/widget/selected-style.cpp:1134 #, c-format msgid "Stroke width: %.5g%s%s" msgstr "Breite der Kontur: %.5g%s%s" # !!! not the best translation -#: ../src/ui/widget/selected-style.cpp:1133 +#: ../src/ui/widget/selected-style.cpp:1138 msgid " (averaged)" msgstr " (gemittelt)" -#: ../src/ui/widget/selected-style.cpp:1161 +#: ../src/ui/widget/selected-style.cpp:1166 msgid "0 (transparent)" msgstr "0 (durchsichtig)" -#: ../src/ui/widget/selected-style.cpp:1185 +#: ../src/ui/widget/selected-style.cpp:1190 msgid "100% (opaque)" msgstr "100% (undurchsichtig)" -#: ../src/ui/widget/selected-style.cpp:1352 +#: ../src/ui/widget/selected-style.cpp:1357 msgid "Adjust alpha" msgstr "Alpha anpassen" -#: ../src/ui/widget/selected-style.cpp:1354 +#: ../src/ui/widget/selected-style.cpp:1359 #, c-format msgid "" "Adjusting alpha: was %.3g, now %.3g (diff %.3g); with CtrlStrg wird Sättigung, mit Umschalt die Sättigung " "eingestellt, ohne Zusatztaste für Farbtom" -#: ../src/ui/widget/selected-style.cpp:1358 +#: ../src/ui/widget/selected-style.cpp:1363 msgid "Adjust saturation" msgstr "Sättigung anpassen" -#: ../src/ui/widget/selected-style.cpp:1360 +#: ../src/ui/widget/selected-style.cpp:1365 #, c-format msgid "" "Adjusting saturation: was %.3g, now %.3g (diff %.3g); with " @@ -22097,11 +21999,11 @@ msgstr "" "mit Strg wird Helligkeit, mit Alt der Alphawert angepasst, " "ohne Zusatztaste für Farbton" -#: ../src/ui/widget/selected-style.cpp:1364 +#: ../src/ui/widget/selected-style.cpp:1369 msgid "Adjust lightness" msgstr "Helligkeit anpassen" -#: ../src/ui/widget/selected-style.cpp:1366 +#: ../src/ui/widget/selected-style.cpp:1371 #, c-format msgid "" "Adjusting lightness: was %.3g, now %.3g (diff %.3g); with " @@ -22112,11 +22014,11 @@ msgstr "" "mit Umschalt wird Sättigung, mit Alt der Alphawert angepasst, " "ohne Zusatztaste für Farbwert." -#: ../src/ui/widget/selected-style.cpp:1370 +#: ../src/ui/widget/selected-style.cpp:1375 msgid "Adjust hue" msgstr "Farbton anpassen" -#: ../src/ui/widget/selected-style.cpp:1372 +#: ../src/ui/widget/selected-style.cpp:1377 #, c-format msgid "" "Adjusting hue: was %.3g, now %.3g (diff %.3g); with ShiftUmschalt wird Sättigung, mit Alt wird Alphawert und mit " "Strg Helligkeit angepasst" -#: ../src/ui/widget/selected-style.cpp:1492 -#: ../src/ui/widget/selected-style.cpp:1506 +#: ../src/ui/widget/selected-style.cpp:1497 +#: ../src/ui/widget/selected-style.cpp:1511 msgid "Adjust stroke width" msgstr "Breite der Konturlinie" -#: ../src/ui/widget/selected-style.cpp:1493 +#: ../src/ui/widget/selected-style.cpp:1498 #, c-format msgid "Adjusting stroke width: was %.3g, now %.3g (diff %.3g)" msgstr "" @@ -22144,35 +22046,35 @@ msgctxt "Sliders" msgid "Link" msgstr "Verknüpfung:" -#: ../src/ui/widget/style-swatch.cpp:292 +#: ../src/ui/widget/style-swatch.cpp:293 msgid "L Gradient" msgstr "L-Farbverlauf" -#: ../src/ui/widget/style-swatch.cpp:296 +#: ../src/ui/widget/style-swatch.cpp:297 msgid "R Gradient" msgstr "R-Farbverlauf" -#: ../src/ui/widget/style-swatch.cpp:312 +#: ../src/ui/widget/style-swatch.cpp:313 #, c-format msgid "Fill: %06x/%.3g" msgstr "Füllung: %06x/%.3g" -#: ../src/ui/widget/style-swatch.cpp:314 +#: ../src/ui/widget/style-swatch.cpp:315 #, c-format msgid "Stroke: %06x/%.3g" msgstr "Kontur: %06x/%.3g" -#: ../src/ui/widget/style-swatch.cpp:346 +#: ../src/ui/widget/style-swatch.cpp:347 #, c-format msgid "Stroke width: %.5g%s" msgstr "Konturbreite: %.5g%s" -#: ../src/ui/widget/style-swatch.cpp:362 +#: ../src/ui/widget/style-swatch.cpp:363 #, c-format msgid "O: %2.0f" msgstr "O: %2.0f" -#: ../src/ui/widget/style-swatch.cpp:367 +#: ../src/ui/widget/style-swatch.cpp:368 #, c-format msgid "Opacity: %2.1f %%" msgstr "Deckkraft: %2.1f %%" @@ -22224,30 +22126,35 @@ msgstr[0] "%d Quader zugewiesen. " msgstr[1] "" "%d Quadern zugewiesen. Umschalt+Ziehen trennt die Quader." -#: ../src/verbs.cpp:155 ../src/widgets/calligraphy-toolbar.cpp:647 +#: ../src/verbs.cpp:137 +msgid "File" +msgstr "_Datei" + +#: ../src/verbs.cpp:156 ../src/widgets/calligraphy-toolbar.cpp:643 msgid "Edit" msgstr "Bearbeiten" -#: ../src/verbs.cpp:231 +#: ../src/verbs.cpp:232 msgid "Context" msgstr "Kontext" -#: ../src/verbs.cpp:250 ../src/verbs.cpp:2167 +#: ../src/verbs.cpp:251 ../src/verbs.cpp:2219 #: ../share/extensions/jessyInk_view.inx.h:1 #: ../share/extensions/polyhedron_3d.inx.h:26 msgid "View" msgstr "Ansicht" -#: ../src/verbs.cpp:270 +#: ../src/verbs.cpp:271 msgid "Dialog" msgstr "Dialog" -#: ../src/verbs.cpp:327 ../share/extensions/lorem_ipsum.inx.h:8 +#: ../src/verbs.cpp:328 ../share/extensions/lorem_ipsum.inx.h:8 #: ../share/extensions/replace_font.inx.h:11 #: ../share/extensions/split.inx.h:10 ../share/extensions/text_braille.inx.h:2 #: ../share/extensions/text_extract.inx.h:14 #: ../share/extensions/text_flipcase.inx.h:2 #: ../share/extensions/text_lowercase.inx.h:2 +#: ../share/extensions/text_merge.inx.h:16 #: ../share/extensions/text_randomcase.inx.h:2 #: ../share/extensions/text_sentencecase.inx.h:2 #: ../share/extensions/text_titlecase.inx.h:2 @@ -22255,230 +22162,230 @@ msgstr "Dialog" msgid "Text" msgstr "Text" -#: ../src/verbs.cpp:1174 +#: ../src/verbs.cpp:1223 msgid "Switch to next layer" msgstr "Zur nächste Ebene wechseln" -#: ../src/verbs.cpp:1175 +#: ../src/verbs.cpp:1224 msgid "Switched to next layer." msgstr "Zur nächsten Ebene gewächselt." -#: ../src/verbs.cpp:1177 +#: ../src/verbs.cpp:1226 msgid "Cannot go past last layer." msgstr "Kann nicht hinter letzte Ebene wechseln." -#: ../src/verbs.cpp:1186 +#: ../src/verbs.cpp:1235 msgid "Switch to previous layer" msgstr "Zur vorherigen Ebene wechseln" -#: ../src/verbs.cpp:1187 +#: ../src/verbs.cpp:1236 msgid "Switched to previous layer." msgstr "Zur vorherigen Ebene gewechselt." -#: ../src/verbs.cpp:1189 +#: ../src/verbs.cpp:1238 msgid "Cannot go before first layer." msgstr "Kann nicht vor erste Ebene wechseln." -#: ../src/verbs.cpp:1210 ../src/verbs.cpp:1307 ../src/verbs.cpp:1339 -#: ../src/verbs.cpp:1345 ../src/verbs.cpp:1369 ../src/verbs.cpp:1384 +#: ../src/verbs.cpp:1259 ../src/verbs.cpp:1356 ../src/verbs.cpp:1388 +#: ../src/verbs.cpp:1394 ../src/verbs.cpp:1418 ../src/verbs.cpp:1433 msgid "No current layer." msgstr "Keine aktuelle Ebene." -#: ../src/verbs.cpp:1239 ../src/verbs.cpp:1243 +#: ../src/verbs.cpp:1288 ../src/verbs.cpp:1292 #, c-format msgid "Raised layer %s." msgstr "Ebene %s angehoben." -#: ../src/verbs.cpp:1240 +#: ../src/verbs.cpp:1289 msgid "Layer to top" msgstr "Ebene nach ganz oben" -#: ../src/verbs.cpp:1244 +#: ../src/verbs.cpp:1293 msgid "Raise layer" msgstr "Ebene anheben" -#: ../src/verbs.cpp:1247 ../src/verbs.cpp:1251 +#: ../src/verbs.cpp:1296 ../src/verbs.cpp:1300 #, c-format msgid "Lowered layer %s." msgstr "Ebene %s abgesenkt." -#: ../src/verbs.cpp:1248 +#: ../src/verbs.cpp:1297 msgid "Layer to bottom" msgstr "Ebene nach ganz unten" -#: ../src/verbs.cpp:1252 +#: ../src/verbs.cpp:1301 msgid "Lower layer" msgstr "Ebene absenken" -#: ../src/verbs.cpp:1261 +#: ../src/verbs.cpp:1310 msgid "Cannot move layer any further." msgstr "Kann Ebene nicht weiter verschieben." -#: ../src/verbs.cpp:1275 ../src/verbs.cpp:1294 +#: ../src/verbs.cpp:1324 ../src/verbs.cpp:1343 #, c-format msgid "%s copy" msgstr "%s Kopie" -#: ../src/verbs.cpp:1302 +#: ../src/verbs.cpp:1351 msgid "Duplicate layer" msgstr "Ebene duplizieren" #. TRANSLATORS: this means "The layer has been duplicated." -#: ../src/verbs.cpp:1305 +#: ../src/verbs.cpp:1354 msgid "Duplicated layer." msgstr "Duplizierte Ebene." -#: ../src/verbs.cpp:1334 +#: ../src/verbs.cpp:1383 msgid "Delete layer" msgstr "Ebene löschen" #. TRANSLATORS: this means "The layer has been deleted." -#: ../src/verbs.cpp:1337 +#: ../src/verbs.cpp:1386 msgid "Deleted layer." msgstr "Ebene wurde gelöscht." -#: ../src/verbs.cpp:1354 +#: ../src/verbs.cpp:1403 msgid "Show all layers" msgstr "Alle Ebenen zeigen" -#: ../src/verbs.cpp:1359 +#: ../src/verbs.cpp:1408 msgid "Hide all layers" msgstr "Alle Ebenen ausblenden" -#: ../src/verbs.cpp:1364 +#: ../src/verbs.cpp:1413 msgid "Lock all layers" msgstr "Alle Ebenen sperren" -#: ../src/verbs.cpp:1378 +#: ../src/verbs.cpp:1427 msgid "Unlock all layers" msgstr "Alle Ebenen entsperren" -#: ../src/verbs.cpp:1452 +#: ../src/verbs.cpp:1511 msgid "Flip horizontally" msgstr "Horizontal umkehren" -#: ../src/verbs.cpp:1457 +#: ../src/verbs.cpp:1516 msgid "Flip vertically" msgstr "Vertikal umkehren" #. TRANSLATORS: If you have translated the tutorial-basic.en.svgz file to your language, #. then translate this string as "tutorial-basic.LANG.svgz" (where LANG is your language #. code); otherwise leave as "tutorial-basic.svg". -#: ../src/verbs.cpp:2050 +#: ../src/verbs.cpp:2104 msgid "tutorial-basic.svg" msgstr "tutorial-basic.de.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2054 +#: ../src/verbs.cpp:2108 msgid "tutorial-shapes.svg" msgstr "tutorial-shapes.de.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2058 +#: ../src/verbs.cpp:2112 msgid "tutorial-advanced.svg" msgstr "tutorial-advanced.de.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2062 +#: ../src/verbs.cpp:2116 msgid "tutorial-tracing.svg" msgstr "tutorial-tracing.de.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2066 +#: ../src/verbs.cpp:2120 msgid "tutorial-calligraphy.svg" msgstr "tutorial-calligraphy.de.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2070 +#: ../src/verbs.cpp:2124 msgid "tutorial-interpolate.svg" msgstr "tutorial-interpolate.de.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2074 +#: ../src/verbs.cpp:2128 msgid "tutorial-elements.svg" msgstr "tutorial-elements.de.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2078 +#: ../src/verbs.cpp:2132 msgid "tutorial-tips.svg" msgstr "tutorial-tips.de.svg" -#: ../src/verbs.cpp:2266 ../src/verbs.cpp:2852 +#: ../src/verbs.cpp:2318 ../src/verbs.cpp:2904 msgid "Unlock all objects in the current layer" msgstr "Alle Objekte in der aktuellen Ebene entsperren" -#: ../src/verbs.cpp:2270 ../src/verbs.cpp:2854 +#: ../src/verbs.cpp:2322 ../src/verbs.cpp:2906 msgid "Unlock all objects in all layers" msgstr "Alle Objekte in allen Ebenen entsperren" -#: ../src/verbs.cpp:2274 ../src/verbs.cpp:2856 +#: ../src/verbs.cpp:2326 ../src/verbs.cpp:2908 msgid "Unhide all objects in the current layer" msgstr "Alle Objekte in der aktuellen Ebene einblenden" -#: ../src/verbs.cpp:2278 ../src/verbs.cpp:2858 +#: ../src/verbs.cpp:2330 ../src/verbs.cpp:2910 msgid "Unhide all objects in all layers" msgstr "Alle Objekte in allen Ebenen einblenden" -#: ../src/verbs.cpp:2293 +#: ../src/verbs.cpp:2345 msgid "Does nothing" msgstr "Hat keine Funktion" -#: ../src/verbs.cpp:2296 +#: ../src/verbs.cpp:2348 msgid "Create new document from the default template" msgstr "Ein neues Dokument mit der Standardvorlage anlegen" -#: ../src/verbs.cpp:2298 +#: ../src/verbs.cpp:2350 msgid "_Open..." msgstr "Ö_ffnen…" -#: ../src/verbs.cpp:2299 +#: ../src/verbs.cpp:2351 msgid "Open an existing document" msgstr "Ein bestehendes Dokument öffnen" -#: ../src/verbs.cpp:2300 +#: ../src/verbs.cpp:2352 msgid "Re_vert" msgstr "_Zurücksetzen" -#: ../src/verbs.cpp:2301 +#: ../src/verbs.cpp:2353 msgid "Revert to the last saved version of document (changes will be lost)" msgstr "" "Das Dokument auf die zuletzt gespeicherte Version zurücksetzen (Änderungen " "gehen verloren)" -#: ../src/verbs.cpp:2302 +#: ../src/verbs.cpp:2354 msgid "Save document" msgstr "Das Dokument speichern" -#: ../src/verbs.cpp:2304 +#: ../src/verbs.cpp:2356 msgid "Save _As..." msgstr "Speichern _unter…" -#: ../src/verbs.cpp:2305 +#: ../src/verbs.cpp:2357 msgid "Save document under a new name" msgstr "Dokument unter einem anderen Namen speichern" -#: ../src/verbs.cpp:2306 +#: ../src/verbs.cpp:2358 msgid "Save a Cop_y..." msgstr "_Kopie speichern unter…" -#: ../src/verbs.cpp:2307 +#: ../src/verbs.cpp:2359 msgid "Save a copy of the document under a new name" msgstr "Eine Kopie des Dokuments unter einem anderen Namen speichern" -#: ../src/verbs.cpp:2308 +#: ../src/verbs.cpp:2360 msgid "_Print..." msgstr "_Drucken…" -#: ../src/verbs.cpp:2308 +#: ../src/verbs.cpp:2360 msgid "Print document" msgstr "Das Dokument drucken" #. TRANSLATORS: "Vacuum Defs" means "Clean up defs" (so as to remove unused definitions) -#: ../src/verbs.cpp:2311 +#: ../src/verbs.cpp:2363 msgid "Clean _up document" msgstr "Dokument säubern" -#: ../src/verbs.cpp:2311 +#: ../src/verbs.cpp:2363 msgid "" "Remove unused definitions (such as gradients or clipping paths) from the <" "defs> of the document" @@ -22486,139 +22393,147 @@ msgstr "" "Unbenutzte vordefinierte Elemente (z.B. Farbverläufe oder Ausschneidepfade) " "aus den <defs> des Dokuments entfernen" -#: ../src/verbs.cpp:2313 +#: ../src/verbs.cpp:2365 msgid "_Import..." msgstr "_Importieren…" -#: ../src/verbs.cpp:2314 +#: ../src/verbs.cpp:2366 msgid "Import a bitmap or SVG image into this document" msgstr "Ein Bitmap- oder SVG-Bild in dieses Dokument importieren" -#: ../src/verbs.cpp:2315 +#: ../src/verbs.cpp:2367 msgid "_Export Bitmap..." msgstr "Bitmap _exportieren…" -#: ../src/verbs.cpp:2316 +#: ../src/verbs.cpp:2368 msgid "Export this document or a selection as a bitmap image" msgstr "Das Dokument oder eine Auswahl als Bitmap-Bild exportieren" -#: ../src/verbs.cpp:2317 +#: ../src/verbs.cpp:2369 msgid "Import Clip Art..." msgstr "Importiere Clip Art..." -#: ../src/verbs.cpp:2318 +#: ../src/verbs.cpp:2370 msgid "Import clipart from Open Clip Art Library" msgstr "Import aus der Open Clip Art Library" #. new FileVerb(SP_VERB_FILE_EXPORT_TO_OCAL, "FileExportToOCAL", N_("Export To Open Clip Art Library"), N_("Export this document to Open Clip Art Library"), INKSCAPE_ICON_DOCUMENT_EXPORT_OCAL), -#: ../src/verbs.cpp:2320 +#: ../src/verbs.cpp:2372 msgid "N_ext Window" msgstr "Nä_chstes Fenster" -#: ../src/verbs.cpp:2321 +#: ../src/verbs.cpp:2373 msgid "Switch to the next document window" msgstr "Zum nächsten Dokumentenfenster umschalten" -#: ../src/verbs.cpp:2322 +#: ../src/verbs.cpp:2374 msgid "P_revious Window" msgstr "Vor_heriges Fenster" -#: ../src/verbs.cpp:2323 +#: ../src/verbs.cpp:2375 msgid "Switch to the previous document window" msgstr "Zum vorherigen Dokumentenfenster umschalten" -#: ../src/verbs.cpp:2324 +#: ../src/verbs.cpp:2376 msgid "_Close" msgstr "S_chließen" -#: ../src/verbs.cpp:2325 +#: ../src/verbs.cpp:2377 msgid "Close this document window" msgstr "Dieses Dokumentenfenster schließen" -#: ../src/verbs.cpp:2326 +#: ../src/verbs.cpp:2378 msgid "_Quit" msgstr "_Beenden" -#: ../src/verbs.cpp:2326 +#: ../src/verbs.cpp:2378 msgid "Quit Inkscape" msgstr "Inkscape verlassen" -#: ../src/verbs.cpp:2329 +#: ../src/verbs.cpp:2379 +msgid "_Templates..." +msgstr "Vorlagen…" + +#: ../src/verbs.cpp:2380 +msgid "Create new project from template" +msgstr "Ein neues Dokument aus Vorlage anlegen" + +#: ../src/verbs.cpp:2383 msgid "Undo last action" msgstr "Letzten Bearbeitungsschritt rückgängig machen" # !!! Abiword just says "Letzten Befehl wiederholen" -#: ../src/verbs.cpp:2332 +#: ../src/verbs.cpp:2386 msgid "Do again the last undone action" msgstr "Einen rückgängig gemachten Bearbeitungsschritt erneut durchführen" -#: ../src/verbs.cpp:2333 +#: ../src/verbs.cpp:2387 msgid "Cu_t" msgstr "A_usschneiden" -#: ../src/verbs.cpp:2334 +#: ../src/verbs.cpp:2388 msgid "Cut selection to clipboard" msgstr "Die gewählten Objekte in die Zwischenablage verschieben" -#: ../src/verbs.cpp:2335 +#: ../src/verbs.cpp:2389 msgid "_Copy" msgstr "_Kopieren" -#: ../src/verbs.cpp:2336 +#: ../src/verbs.cpp:2390 msgid "Copy selection to clipboard" msgstr "Die gewählten Objekte in die Zwischenablage kopieren" -#: ../src/verbs.cpp:2337 +#: ../src/verbs.cpp:2391 msgid "_Paste" msgstr "E_infügen" -#: ../src/verbs.cpp:2338 +#: ../src/verbs.cpp:2392 msgid "Paste objects from clipboard to mouse point, or paste text" msgstr "" "Objekte aus der Zwischenablage an der Mausposition einfügen, oder Text " "einfügen" -#: ../src/verbs.cpp:2339 +#: ../src/verbs.cpp:2393 msgid "Paste _Style" msgstr "Stil an_wenden" -#: ../src/verbs.cpp:2340 +#: ../src/verbs.cpp:2394 msgid "Apply the style of the copied object to selection" msgstr "Stil des kopierten Objekts auf Auswahl anwenden" -#: ../src/verbs.cpp:2342 +#: ../src/verbs.cpp:2396 msgid "Scale selection to match the size of the copied object" msgstr "Auswahl auf Größe des kopierten Objekts skalieren" -#: ../src/verbs.cpp:2343 +#: ../src/verbs.cpp:2397 msgid "Paste _Width" msgstr "_Breite einfügen" -#: ../src/verbs.cpp:2344 +#: ../src/verbs.cpp:2398 msgid "Scale selection horizontally to match the width of the copied object" msgstr "Auswahl horizontal auf Breite des kopierten Objekts skalieren" -#: ../src/verbs.cpp:2345 +#: ../src/verbs.cpp:2399 msgid "Paste _Height" msgstr "_Höhe einfügen" -#: ../src/verbs.cpp:2346 +#: ../src/verbs.cpp:2400 msgid "Scale selection vertically to match the height of the copied object" msgstr "Auswahl vertikal auf Höhe des kopierten Objekts skalieren" -#: ../src/verbs.cpp:2347 +#: ../src/verbs.cpp:2401 msgid "Paste Size Separately" msgstr "Größe getrennt einfügen" -#: ../src/verbs.cpp:2348 +#: ../src/verbs.cpp:2402 msgid "Scale each selected object to match the size of the copied object" msgstr "Jedes ausgewählte Objekt auf Größe des kopierten Objekts skalieren" -#: ../src/verbs.cpp:2349 +#: ../src/verbs.cpp:2403 msgid "Paste Width Separately" msgstr "Breite getrennt einfügen" -#: ../src/verbs.cpp:2350 +#: ../src/verbs.cpp:2404 msgid "" "Scale each selected object horizontally to match the width of the copied " "object" @@ -22626,11 +22541,11 @@ msgstr "" "Jedes ausgewählte Objekt horizontal auf Breite des kopierten Objekts " "skalieren" -#: ../src/verbs.cpp:2351 +#: ../src/verbs.cpp:2405 msgid "Paste Height Separately" msgstr "Höhe getrennt einfügen" -#: ../src/verbs.cpp:2352 +#: ../src/verbs.cpp:2406 msgid "" "Scale each selected object vertically to match the height of the copied " "object" @@ -22638,69 +22553,69 @@ msgstr "" "Jedes ausgewählte Objekt vertikal auf Höhe des kopierten Objekts skalieren" # !!! translation is a bit clumsy... -#: ../src/verbs.cpp:2353 +#: ../src/verbs.cpp:2407 msgid "Paste _In Place" msgstr "An Ori_ginalposition einfügen" -#: ../src/verbs.cpp:2354 +#: ../src/verbs.cpp:2408 msgid "Paste objects from clipboard to the original location" msgstr "Objekte aus der Zwischenablage an ihrer Originalposition einfügen" -#: ../src/verbs.cpp:2355 +#: ../src/verbs.cpp:2409 msgid "Paste Path _Effect" msgstr "Pfad-_Effekt einfügen" -#: ../src/verbs.cpp:2356 +#: ../src/verbs.cpp:2410 msgid "Apply the path effect of the copied object to selection" msgstr "Pfad-Effekt des kopierten Objekts auf Auswahl anwenden" -#: ../src/verbs.cpp:2357 +#: ../src/verbs.cpp:2411 msgid "Remove Path _Effect" msgstr "Pfad-Effekt _entfernen" -#: ../src/verbs.cpp:2358 +#: ../src/verbs.cpp:2412 msgid "Remove any path effects from selected objects" msgstr "Effekt von Auswahl entfernen" -#: ../src/verbs.cpp:2359 +#: ../src/verbs.cpp:2413 msgid "_Remove Filters" msgstr "Filter entfernen" -#: ../src/verbs.cpp:2360 +#: ../src/verbs.cpp:2414 msgid "Remove any filters from selected objects" msgstr "Jeden Filter von Auswahl entfernen" -#: ../src/verbs.cpp:2361 +#: ../src/verbs.cpp:2415 msgid "_Delete" msgstr "_Löschen" -#: ../src/verbs.cpp:2362 +#: ../src/verbs.cpp:2416 msgid "Delete selection" msgstr "Auswahl löschen" -#: ../src/verbs.cpp:2363 +#: ../src/verbs.cpp:2417 msgid "Duplic_ate" msgstr "Dupli_zieren" -#: ../src/verbs.cpp:2364 +#: ../src/verbs.cpp:2418 msgid "Duplicate selected objects" msgstr "Gewählte Objekte duplizieren" -#: ../src/verbs.cpp:2365 +#: ../src/verbs.cpp:2419 msgid "Create Clo_ne" msgstr "_Klon erzeugen" -#: ../src/verbs.cpp:2366 +#: ../src/verbs.cpp:2420 msgid "Create a clone (a copy linked to the original) of selected object" msgstr "" "Einen Klon des gewählten Objekts erstellen (die Kopie ist mit dem Original " "verbunden)" -#: ../src/verbs.cpp:2367 +#: ../src/verbs.cpp:2421 msgid "Unlin_k Clone" msgstr "Klonverbindung auf_trennen" -#: ../src/verbs.cpp:2368 +#: ../src/verbs.cpp:2422 msgid "" "Cut the selected clones' links to the originals, turning them into " "standalone objects" @@ -22708,27 +22623,27 @@ msgstr "" "Die Verbindung des Klons zu seinem Original auftrennen, so daß ein " "selbständiges Objekt entsteht" -#: ../src/verbs.cpp:2369 +#: ../src/verbs.cpp:2423 msgid "Relink to Copied" msgstr "Verbinden mit Kopie" -#: ../src/verbs.cpp:2370 +#: ../src/verbs.cpp:2424 msgid "Relink the selected clones to the object currently on the clipboard" msgstr "Verbindet die Ausgewählten Klone mit dem Objekt in der Zwischenablage" -#: ../src/verbs.cpp:2371 +#: ../src/verbs.cpp:2425 msgid "Select _Original" msgstr "_Original auswählen" -#: ../src/verbs.cpp:2372 +#: ../src/verbs.cpp:2426 msgid "Select the object to which the selected clone is linked" msgstr "Objekt auswählen, mit dem der Klon verbunden ist" -#: ../src/verbs.cpp:2373 +#: ../src/verbs.cpp:2427 msgid "Clone original path (LPE)" msgstr "Originalpfad klonen" -#: ../src/verbs.cpp:2374 +#: ../src/verbs.cpp:2428 msgid "" "Creates a new path, applies the Clone original LPE, and refers it to the " "selected path" @@ -22736,19 +22651,19 @@ msgstr "" "Erstellt einen neuen Pfad, verwendet die ursprünglichen Klone LPE und " "verweist auf den ausgewählten Pfad" -#: ../src/verbs.cpp:2375 +#: ../src/verbs.cpp:2429 msgid "Objects to _Marker" msgstr "Objekte in Markierungen umwandeln" -#: ../src/verbs.cpp:2376 +#: ../src/verbs.cpp:2430 msgid "Convert selection to a line marker" msgstr "Auswahl in Linienmarkierung umwandeln" -#: ../src/verbs.cpp:2377 +#: ../src/verbs.cpp:2431 msgid "Objects to Gu_ides" msgstr "Objekte in Führungslinien umwandeln" -#: ../src/verbs.cpp:2378 +#: ../src/verbs.cpp:2432 msgid "" "Convert selected objects to a collection of guidelines aligned with their " "edges" @@ -22756,95 +22671,95 @@ msgstr "" "Ausgewählte Objekte in eine Sammlung von Führungslinien entlang ihrer Kanten " "umwandeln" -#: ../src/verbs.cpp:2379 +#: ../src/verbs.cpp:2433 msgid "Objects to Patter_n" msgstr "_Objekte in Füllmuster umwandeln" -#: ../src/verbs.cpp:2380 +#: ../src/verbs.cpp:2434 msgid "Convert selection to a rectangle with tiled pattern fill" msgstr "Die Auswahl in ein Rechteck mit gekacheltem Füllmuster umwandeln" -#: ../src/verbs.cpp:2381 +#: ../src/verbs.cpp:2435 msgid "Pattern to _Objects" msgstr "Füllmuster in Ob_jekte umwandeln" -#: ../src/verbs.cpp:2382 +#: ../src/verbs.cpp:2436 msgid "Extract objects from a tiled pattern fill" msgstr "Objekte aus einem gekacheltem Füllmuster extrahieren" -#: ../src/verbs.cpp:2383 +#: ../src/verbs.cpp:2437 msgid "Group to Symbol" msgstr "Gruppieren zum Symbol" -#: ../src/verbs.cpp:2384 +#: ../src/verbs.cpp:2438 msgid "Convert group to a symbol" msgstr "Gruppe in Symbol konvertieren" -#: ../src/verbs.cpp:2385 +#: ../src/verbs.cpp:2439 msgid "Symbol to Group" msgstr "Symbol zum Gruppieren" -#: ../src/verbs.cpp:2386 +#: ../src/verbs.cpp:2440 msgid "Extract group from a symbol" msgstr "Extrahiere Gruppe von einem Symbol" -#: ../src/verbs.cpp:2387 +#: ../src/verbs.cpp:2441 msgid "Clea_r All" msgstr "Alles l_eeren" -#: ../src/verbs.cpp:2388 +#: ../src/verbs.cpp:2442 msgid "Delete all objects from document" msgstr "Alle Objekte aus dem Dokument löschen" -#: ../src/verbs.cpp:2389 +#: ../src/verbs.cpp:2443 msgid "Select Al_l" msgstr "_Alles auswählen" -#: ../src/verbs.cpp:2390 +#: ../src/verbs.cpp:2444 msgid "Select all objects or all nodes" msgstr "Alle Objekte oder alle Knoten im Dokument auswählen" -#: ../src/verbs.cpp:2391 +#: ../src/verbs.cpp:2445 msgid "Select All in All La_yers" msgstr "Alles in allen Ebenen auswählen" -#: ../src/verbs.cpp:2392 +#: ../src/verbs.cpp:2446 msgid "Select all objects in all visible and unlocked layers" msgstr "Alle Objekte in allen sichtbaren und entsperrten Ebenen auswählen" -#: ../src/verbs.cpp:2393 +#: ../src/verbs.cpp:2447 msgid "Fill _and Stroke" msgstr "Füllung und _Kontur" -#: ../src/verbs.cpp:2394 +#: ../src/verbs.cpp:2448 msgid "" "Select all objects with the same fill and stroke as the selected objects" msgstr "" "Alle Objekte mit der gleichen Füllung und Kontur der ausgewählten Objekte " "wählen" -#: ../src/verbs.cpp:2395 +#: ../src/verbs.cpp:2449 msgid "_Fill Color" msgstr "Füllfarbe" -#: ../src/verbs.cpp:2396 +#: ../src/verbs.cpp:2450 msgid "Select all objects with the same fill as the selected objects" msgstr "Alle Objekte mit der gleichen Füllung der ausgewählten Objekte wählen" -#: ../src/verbs.cpp:2397 +#: ../src/verbs.cpp:2451 msgid "_Stroke Color" msgstr "Konturfarbe" -#: ../src/verbs.cpp:2398 +#: ../src/verbs.cpp:2452 msgid "Select all objects with the same stroke as the selected objects" msgstr "" "Wählen Sie alle Objekte mit der gleichen Kontur wie die ausgewählten Objekte" -#: ../src/verbs.cpp:2399 +#: ../src/verbs.cpp:2453 msgid "Stroke St_yle" msgstr "Konturstil" -#: ../src/verbs.cpp:2400 +#: ../src/verbs.cpp:2454 msgid "" "Select all objects with the same stroke style (width, dash, markers) as the " "selected objects" @@ -22852,11 +22767,11 @@ msgstr "" "Wählen Sie alle Objekte mit dem gleichen Konturstil (Breite, Bindestrich, " "Marker) wie die ausgewählten Objekte" -#: ../src/verbs.cpp:2401 +#: ../src/verbs.cpp:2455 msgid "_Object Type" msgstr "_Objekttyp" -#: ../src/verbs.cpp:2402 +#: ../src/verbs.cpp:2456 msgid "" "Select all objects with the same object type (rect, arc, text, path, bitmap " "etc) as the selected objects" @@ -22864,154 +22779,154 @@ msgstr "" "Wählen Sie alle Objekte mit dem gleichen Objekttyp (Rechteck, Bogen, Text, " "Pfad, Bitmap etc.) wie die ausgewählten Objekte" -#: ../src/verbs.cpp:2403 +#: ../src/verbs.cpp:2457 msgid "In_vert Selection" msgstr "Auswahl _umkehren" -#: ../src/verbs.cpp:2404 +#: ../src/verbs.cpp:2458 msgid "Invert selection (unselect what is selected and select everything else)" msgstr "" "Auswahl invertieren (alle ausgewählten Objekte deselektieren und alle " "anderen auswählen)" -#: ../src/verbs.cpp:2405 +#: ../src/verbs.cpp:2459 msgid "Invert in All Layers" msgstr "In allen Ebenen invertieren" -#: ../src/verbs.cpp:2406 +#: ../src/verbs.cpp:2460 msgid "Invert selection in all visible and unlocked layers" msgstr "Auswahl in allen sichtbaren und entsperrten Ebenen invertieren" -#: ../src/verbs.cpp:2407 +#: ../src/verbs.cpp:2461 msgid "Select Next" msgstr "Nächstes auswählen" -#: ../src/verbs.cpp:2408 +#: ../src/verbs.cpp:2462 msgid "Select next object or node" msgstr "Nächstes Objekt oder nächsten Knoten auswählen" -#: ../src/verbs.cpp:2409 +#: ../src/verbs.cpp:2463 msgid "Select Previous" msgstr "Vorheriges auswählen" -#: ../src/verbs.cpp:2410 +#: ../src/verbs.cpp:2464 msgid "Select previous object or node" msgstr "Vorheriges Objekt oder vorherigen Knoten auswählen" -#: ../src/verbs.cpp:2411 +#: ../src/verbs.cpp:2465 msgid "D_eselect" msgstr "Auswahl auf_heben" -#: ../src/verbs.cpp:2412 +#: ../src/verbs.cpp:2466 msgid "Deselect any selected objects or nodes" msgstr "Die Auswahl von Objekten oder Knoten aufheben" -#: ../src/verbs.cpp:2413 -msgid "Create _Guides Around the Page" -msgstr "_Führungslinien an Seitenrändern" - -#: ../src/verbs.cpp:2414 ../src/verbs.cpp:2416 +#: ../src/verbs.cpp:2468 ../src/verbs.cpp:2470 msgid "Create four guides aligned with the page borders" msgstr "Erstellt vier Führungslinien an den Seitengrenzen" -#: ../src/verbs.cpp:2417 +#: ../src/verbs.cpp:2469 +msgid "Create _Guides Around the Page" +msgstr "_Führungslinien an Seitenrändern" + +#: ../src/verbs.cpp:2471 msgid "Next path effect parameter" msgstr "Nächster Pfad-Effekt-Parameter" -#: ../src/verbs.cpp:2418 +#: ../src/verbs.cpp:2472 msgid "Show next editable path effect parameter" msgstr "Nächster Pfad-Effekt-Parameter" #. Selection -#: ../src/verbs.cpp:2421 +#: ../src/verbs.cpp:2475 msgid "Raise to _Top" msgstr "Nach ganz o_ben anheben" -#: ../src/verbs.cpp:2422 +#: ../src/verbs.cpp:2476 msgid "Raise selection to top" msgstr "Die gewählten Objekte nach ganz oben anheben" -#: ../src/verbs.cpp:2423 +#: ../src/verbs.cpp:2477 msgid "Lower to _Bottom" msgstr "Nach ganz u_nten absenken" -#: ../src/verbs.cpp:2424 +#: ../src/verbs.cpp:2478 msgid "Lower selection to bottom" msgstr "Die gewählten Objekte nach ganz unten absenken" -#: ../src/verbs.cpp:2425 +#: ../src/verbs.cpp:2479 msgid "_Raise" msgstr "_Anheben" -#: ../src/verbs.cpp:2426 +#: ../src/verbs.cpp:2480 msgid "Raise selection one step" msgstr "Die gewählten Objekte eine Stufe nach oben anheben" -#: ../src/verbs.cpp:2427 +#: ../src/verbs.cpp:2481 msgid "_Lower" msgstr "Ab_senken" -#: ../src/verbs.cpp:2428 +#: ../src/verbs.cpp:2482 msgid "Lower selection one step" msgstr "Die gewählten Objekte eine Stufe nach unten absenken" -#: ../src/verbs.cpp:2430 +#: ../src/verbs.cpp:2484 msgid "Group selected objects" msgstr "Die gewählten Objekte gruppieren" -#: ../src/verbs.cpp:2432 +#: ../src/verbs.cpp:2486 msgid "Ungroup selected groups" msgstr "Gruppierung markierter Gruppen aufheben" -#: ../src/verbs.cpp:2434 +#: ../src/verbs.cpp:2488 msgid "_Put on Path" msgstr "An _Pfad ausrichten" -#: ../src/verbs.cpp:2436 +#: ../src/verbs.cpp:2490 msgid "_Remove from Path" msgstr "Von Pfad _trennen" -#: ../src/verbs.cpp:2438 +#: ../src/verbs.cpp:2492 msgid "Remove Manual _Kerns" msgstr "Manuelle _Unterschneidungen entfernen" #. TRANSLATORS: "glyph": An image used in the visual representation of characters; #. roughly speaking, how a character looks. A font is a set of glyphs. -#: ../src/verbs.cpp:2441 +#: ../src/verbs.cpp:2495 msgid "Remove all manual kerns and glyph rotations from a text object" msgstr "" "Alle manuellen Unterschneidungen und Rotationen von einem Textobjekt " "entfernen" -#: ../src/verbs.cpp:2443 +#: ../src/verbs.cpp:2497 msgid "_Union" msgstr "_Vereinigung" -#: ../src/verbs.cpp:2444 +#: ../src/verbs.cpp:2498 msgid "Create union of selected paths" msgstr "Vereinigung der ausgewählten Pfade erzeugen" -#: ../src/verbs.cpp:2445 +#: ../src/verbs.cpp:2499 msgid "_Intersection" msgstr "Ü_berschneidung" -#: ../src/verbs.cpp:2446 +#: ../src/verbs.cpp:2500 msgid "Create intersection of selected paths" msgstr "Überschneidung der gewählten Pfade erzeugen" -#: ../src/verbs.cpp:2447 +#: ../src/verbs.cpp:2501 msgid "_Difference" msgstr "_Differenz" -#: ../src/verbs.cpp:2448 +#: ../src/verbs.cpp:2502 msgid "Create difference of selected paths (bottom minus top)" msgstr "Differenz der gewählten Pfade erzeugen (Unterer minus Oberer)" -#: ../src/verbs.cpp:2449 +#: ../src/verbs.cpp:2503 msgid "E_xclusion" msgstr "E_xklusiv-Oder (Ausschluss)" -#: ../src/verbs.cpp:2450 +#: ../src/verbs.cpp:2504 msgid "" "Create exclusive OR of selected paths (those parts that belong to only one " "path)" @@ -23019,21 +22934,21 @@ msgstr "" "Exklusiv-ODER der ausgewählen Pfade erzeugen (die Teile, die nur zu einem " "Pfad gehören)" -#: ../src/verbs.cpp:2451 +#: ../src/verbs.cpp:2505 msgid "Di_vision" msgstr "Di_vision" -#: ../src/verbs.cpp:2452 +#: ../src/verbs.cpp:2506 msgid "Cut the bottom path into pieces" msgstr "Untenliegenden Pfad in Teile zerschneiden" #. TRANSLATORS: "to cut a path" is not the same as "to break a path apart" - see the #. Advanced tutorial for more info -#: ../src/verbs.cpp:2455 +#: ../src/verbs.cpp:2509 msgid "Cut _Path" msgstr "Pfad _zerschneiden" -#: ../src/verbs.cpp:2456 +#: ../src/verbs.cpp:2510 msgid "Cut the bottom path's stroke into pieces, removing fill" msgstr "" "Kontur des untenliegenden Pfads in Teile zerschneiden, Füllung wird entfernt" @@ -23041,348 +22956,348 @@ msgstr "" #. TRANSLATORS: "outset": expand a shape by offsetting the object's path, #. i.e. by displacing it perpendicular to the path in each point. #. See also the Advanced Tutorial for explanation. -#: ../src/verbs.cpp:2460 +#: ../src/verbs.cpp:2514 msgid "Outs_et" msgstr "Er_weitern (vergrößern)" -#: ../src/verbs.cpp:2461 +#: ../src/verbs.cpp:2515 msgid "Outset selected paths" msgstr "Gewählte Pfade erweitern (vergrößern)" -#: ../src/verbs.cpp:2463 +#: ../src/verbs.cpp:2517 msgid "O_utset Path by 1 px" msgstr "Pfad um 1 px erweitern (vergrößern)" -#: ../src/verbs.cpp:2464 +#: ../src/verbs.cpp:2518 msgid "Outset selected paths by 1 px" msgstr "Gewählte Pfade um 1 px erweitern (vergrößern)" -#: ../src/verbs.cpp:2466 +#: ../src/verbs.cpp:2520 msgid "O_utset Path by 10 px" msgstr "Pfad um 10 px _erweitern (vergrößern)" -#: ../src/verbs.cpp:2467 +#: ../src/verbs.cpp:2521 msgid "Outset selected paths by 10 px" msgstr "Gewählte Pfade um 10 px erweitern (vergrößern)" #. TRANSLATORS: "inset": contract a shape by offsetting the object's path, #. i.e. by displacing it perpendicular to the path in each point. #. See also the Advanced Tutorial for explanation. -#: ../src/verbs.cpp:2471 +#: ../src/verbs.cpp:2525 msgid "I_nset" msgstr "Schrum_pfen" # !!! make singular and plural forms -#: ../src/verbs.cpp:2472 +#: ../src/verbs.cpp:2526 msgid "Inset selected paths" msgstr "Gewählte Pfade schrumpfen" -#: ../src/verbs.cpp:2474 +#: ../src/verbs.cpp:2528 msgid "I_nset Path by 1 px" msgstr "Pfad um _1 px schrumpfen" -#: ../src/verbs.cpp:2475 +#: ../src/verbs.cpp:2529 msgid "Inset selected paths by 1 px" msgstr "Gewählte Pfade um 1 px schrumpfen" -#: ../src/verbs.cpp:2477 +#: ../src/verbs.cpp:2531 msgid "I_nset Path by 10 px" msgstr "Pfad um 1_0 px schrumpfen" -#: ../src/verbs.cpp:2478 +#: ../src/verbs.cpp:2532 msgid "Inset selected paths by 10 px" msgstr "Gewählte Pfade um 10 px schrumpfen" -#: ../src/verbs.cpp:2480 +#: ../src/verbs.cpp:2534 msgid "D_ynamic Offset" msgstr "D_ynamischer Versatz" -#: ../src/verbs.cpp:2480 +#: ../src/verbs.cpp:2534 msgid "Create a dynamic offset object" msgstr "Ein Objekt mit dynamischem Versatz erstellen" -#: ../src/verbs.cpp:2482 +#: ../src/verbs.cpp:2536 msgid "_Linked Offset" msgstr "Ver_bundener Versatz" -#: ../src/verbs.cpp:2483 +#: ../src/verbs.cpp:2537 msgid "Create a dynamic offset object linked to the original path" msgstr "" "Dynamischen Versatz am Objekt erstellen. Verknüpfung zum originalen Pfad " "bleibt bestehen." -#: ../src/verbs.cpp:2485 +#: ../src/verbs.cpp:2539 msgid "_Stroke to Path" msgstr "_Kontur in Pfad umwandeln" -#: ../src/verbs.cpp:2486 +#: ../src/verbs.cpp:2540 msgid "Convert selected object's stroke to paths" msgstr "Die gewählten Konturen des Objekts in Pfade umwandeln" -#: ../src/verbs.cpp:2487 +#: ../src/verbs.cpp:2541 msgid "Si_mplify" msgstr "Ver_einfachen" -#: ../src/verbs.cpp:2488 +#: ../src/verbs.cpp:2542 msgid "Simplify selected paths (remove extra nodes)" msgstr "Ausgewählte Pfade vereinfachen (unnötige Punkte werden entfernt)" -#: ../src/verbs.cpp:2489 +#: ../src/verbs.cpp:2543 msgid "_Reverse" msgstr "_Richtung umkehren" -#: ../src/verbs.cpp:2490 +#: ../src/verbs.cpp:2544 msgid "Reverse the direction of selected paths (useful for flipping markers)" msgstr "" "Richtung der gewählten Pfade umkehren (nützlich, um Markierungen umzukehren)" -#: ../src/verbs.cpp:2493 +#: ../src/verbs.cpp:2547 msgid "Create one or more paths from a bitmap by tracing it" msgstr "Erzeuge einen oder mehrere Pfade durch Vektorisieren eines Bitmaps" -#: ../src/verbs.cpp:2494 +#: ../src/verbs.cpp:2548 msgid "Make a _Bitmap Copy" msgstr "_Bitmap-Kopie erstellen" -#: ../src/verbs.cpp:2495 +#: ../src/verbs.cpp:2549 msgid "Export selection to a bitmap and insert it into document" msgstr "Auswahl als Bitmap exportieren und in das Dokument re-importieren" # !!! maybe use "verbinden" -#: ../src/verbs.cpp:2496 +#: ../src/verbs.cpp:2550 msgid "_Combine" msgstr "_Kombinieren" -#: ../src/verbs.cpp:2497 +#: ../src/verbs.cpp:2551 msgid "Combine several paths into one" msgstr "Mehrere Pfade zu einem kombinieren" #. TRANSLATORS: "to cut a path" is not the same as "to break a path apart" - see the #. Advanced tutorial for more info -#: ../src/verbs.cpp:2500 +#: ../src/verbs.cpp:2554 msgid "Break _Apart" msgstr "_Zerlegen" -#: ../src/verbs.cpp:2501 +#: ../src/verbs.cpp:2555 msgid "Break selected paths into subpaths" msgstr "Die markierten Pfade in Unterpfade zerlegen" -#: ../src/verbs.cpp:2502 +#: ../src/verbs.cpp:2556 msgid "Ro_ws and Columns..." msgstr "Reihen und Spalten..." -#: ../src/verbs.cpp:2503 +#: ../src/verbs.cpp:2557 msgid "Arrange selected objects in a table" msgstr "Ausgewählte Objekte im Raster anordnen" #. Layer -#: ../src/verbs.cpp:2505 +#: ../src/verbs.cpp:2559 msgid "_Add Layer..." msgstr "Ebene _hinzufügen…" -#: ../src/verbs.cpp:2506 +#: ../src/verbs.cpp:2560 msgid "Create a new layer" msgstr "Eine neue Ebene anlegen" -#: ../src/verbs.cpp:2507 +#: ../src/verbs.cpp:2561 msgid "Re_name Layer..." msgstr "Ebene umbe_nennen…" -#: ../src/verbs.cpp:2508 +#: ../src/verbs.cpp:2562 msgid "Rename the current layer" msgstr "Aktuelle Ebene umbenennen" -#: ../src/verbs.cpp:2509 +#: ../src/verbs.cpp:2563 msgid "Switch to Layer Abov_e" msgstr "Zur darü_berliegenden Ebene umschalten" -#: ../src/verbs.cpp:2510 +#: ../src/verbs.cpp:2564 msgid "Switch to the layer above the current" msgstr "Zur darüberliegenden Ebene im Dokument umschalten" -#: ../src/verbs.cpp:2511 +#: ../src/verbs.cpp:2565 msgid "Switch to Layer Belo_w" msgstr "Zur dar_unterliegenden Ebene umschalten" -#: ../src/verbs.cpp:2512 +#: ../src/verbs.cpp:2566 msgid "Switch to the layer below the current" msgstr "Zur darunterliegenden Ebene im Dokument umschalten" -#: ../src/verbs.cpp:2513 +#: ../src/verbs.cpp:2567 msgid "Move Selection to Layer Abo_ve" msgstr "Auswahl zur darüber_liegenden Ebene verschieben" -#: ../src/verbs.cpp:2514 +#: ../src/verbs.cpp:2568 msgid "Move selection to the layer above the current" msgstr "Die Auswahl auf die darüberliegende Ebene verschieben" -#: ../src/verbs.cpp:2515 +#: ../src/verbs.cpp:2569 msgid "Move Selection to Layer Bel_ow" msgstr "Auswahl zur darun_terliegenden Ebene verschieben" -#: ../src/verbs.cpp:2516 +#: ../src/verbs.cpp:2570 msgid "Move selection to the layer below the current" msgstr "Die Auswahl auf die darunterliegende Ebene verschieben" -#: ../src/verbs.cpp:2517 +#: ../src/verbs.cpp:2571 msgid "Move Selection to Layer..." msgstr "Auswahl zur anderer Ebene verschieben" -#: ../src/verbs.cpp:2519 +#: ../src/verbs.cpp:2573 msgid "Layer to _Top" msgstr "Ebene nach ganz _oben" -#: ../src/verbs.cpp:2520 +#: ../src/verbs.cpp:2574 msgid "Raise the current layer to the top" msgstr "Die aktuelle Ebene nach ganz oben anheben" -#: ../src/verbs.cpp:2521 +#: ../src/verbs.cpp:2575 msgid "Layer to _Bottom" msgstr "Ebene nach ganz _unten" -#: ../src/verbs.cpp:2522 +#: ../src/verbs.cpp:2576 msgid "Lower the current layer to the bottom" msgstr "Die aktuelle Ebene nach ganz unten absenken" -#: ../src/verbs.cpp:2523 +#: ../src/verbs.cpp:2577 msgid "_Raise Layer" msgstr "Ebene an_heben" -#: ../src/verbs.cpp:2524 +#: ../src/verbs.cpp:2578 msgid "Raise the current layer" msgstr "Die aktuelle Ebene anheben" -#: ../src/verbs.cpp:2525 +#: ../src/verbs.cpp:2579 msgid "_Lower Layer" msgstr "Ebene ab_senken" -#: ../src/verbs.cpp:2526 +#: ../src/verbs.cpp:2580 msgid "Lower the current layer" msgstr "Die aktuelle Ebene absenken" -#: ../src/verbs.cpp:2527 +#: ../src/verbs.cpp:2581 msgid "D_uplicate Current Layer" msgstr "Aktuelle Ebene duplizieren" -#: ../src/verbs.cpp:2528 +#: ../src/verbs.cpp:2582 msgid "Duplicate an existing layer" msgstr "Dupliziert eine vorhandene Ebene" -#: ../src/verbs.cpp:2529 +#: ../src/verbs.cpp:2583 msgid "_Delete Current Layer" msgstr "Aktuelle Ebene _löschen" -#: ../src/verbs.cpp:2530 +#: ../src/verbs.cpp:2584 msgid "Delete the current layer" msgstr "Die aktuelle Ebene löschen" -#: ../src/verbs.cpp:2531 +#: ../src/verbs.cpp:2585 msgid "_Show/hide other layers" msgstr "Andere Ebenen anzeigen oder ausblenden" -#: ../src/verbs.cpp:2532 +#: ../src/verbs.cpp:2586 msgid "Solo the current layer" msgstr "Aktuelle Ebene vereinzeln" -#: ../src/verbs.cpp:2533 +#: ../src/verbs.cpp:2587 msgid "_Show all layers" msgstr "Zeige alle Ebenen" -#: ../src/verbs.cpp:2534 +#: ../src/verbs.cpp:2588 msgid "Show all the layers" msgstr "Zeige all die Ebenen" -#: ../src/verbs.cpp:2535 +#: ../src/verbs.cpp:2589 msgid "_Hide all layers" msgstr "Alle Ebenen ausblenden" -#: ../src/verbs.cpp:2536 +#: ../src/verbs.cpp:2590 msgid "Hide all the layers" msgstr "All die Ebenen ausblenden" -#: ../src/verbs.cpp:2537 +#: ../src/verbs.cpp:2591 msgid "_Lock all layers" msgstr "A_lle Ebenen sperren" -#: ../src/verbs.cpp:2538 +#: ../src/verbs.cpp:2592 msgid "Lock all the layers" msgstr "Alle der Ebenen sperren" -#: ../src/verbs.cpp:2539 +#: ../src/verbs.cpp:2593 msgid "Lock/Unlock _other layers" msgstr "Andere Ebenen sperren/entsperren" -#: ../src/verbs.cpp:2540 +#: ../src/verbs.cpp:2594 msgid "Lock all the other layers" msgstr "Alle der anderen Ebenen sperren" -#: ../src/verbs.cpp:2541 +#: ../src/verbs.cpp:2595 msgid "_Unlock all layers" msgstr "Alle Ebenen entsperren" -#: ../src/verbs.cpp:2542 +#: ../src/verbs.cpp:2596 msgid "Unlock all the layers" msgstr "Alle Ebenen entsperren" -#: ../src/verbs.cpp:2543 +#: ../src/verbs.cpp:2597 msgid "_Lock/Unlock Current Layer" msgstr "Aktuelle Ebene sperren/entsperren" -#: ../src/verbs.cpp:2544 +#: ../src/verbs.cpp:2598 msgid "Toggle lock on current layer" msgstr "Sperre auf aktuellen Layer umschalten" -#: ../src/verbs.cpp:2545 +#: ../src/verbs.cpp:2599 msgid "_Show/hide Current Layer" msgstr "Aktuelle Ebene anzeigen oder au_sblenden" -#: ../src/verbs.cpp:2546 +#: ../src/verbs.cpp:2600 msgid "Toggle visibility of current layer" msgstr "Aktuelle Ebene sichtbar/unsichtbar" #. Object -#: ../src/verbs.cpp:2549 +#: ../src/verbs.cpp:2603 msgid "Rotate _90° CW" msgstr "Um 90° im Uhr_zeigersinn rotieren" #. This is shared between tooltips and statusbar, so they #. must use UTF-8, not HTML entities for special characters. -#: ../src/verbs.cpp:2552 +#: ../src/verbs.cpp:2606 msgid "Rotate selection 90° clockwise" msgstr "Auswahl um 90° im Uhrzeigersinn drehen" -#: ../src/verbs.cpp:2553 +#: ../src/verbs.cpp:2607 msgid "Rotate 9_0° CCW" msgstr "Um 90° entgegen Uhrzeigersinn _rotieren" #. This is shared between tooltips and statusbar, so they #. must use UTF-8, not HTML entities for special characters. -#: ../src/verbs.cpp:2556 +#: ../src/verbs.cpp:2610 msgid "Rotate selection 90° counter-clockwise" msgstr "Auswahl um 90° gegen den Uhrzeigersinn drehen" -#: ../src/verbs.cpp:2557 +#: ../src/verbs.cpp:2611 msgid "Remove _Transformations" msgstr "Transformationen _zurücksetzen" -#: ../src/verbs.cpp:2558 +#: ../src/verbs.cpp:2612 msgid "Remove transformations from object" msgstr "Transformationen des Objekts rückgängig machen" -#: ../src/verbs.cpp:2559 +#: ../src/verbs.cpp:2613 msgid "_Object to Path" msgstr "_Objekt in Pfad umwandeln" -#: ../src/verbs.cpp:2560 +#: ../src/verbs.cpp:2614 msgid "Convert selected object to path" msgstr "Gewähltes Objekt in Pfad umwandeln" # !!! Frame, not form? -#: ../src/verbs.cpp:2561 +#: ../src/verbs.cpp:2615 msgid "_Flow into Frame" msgstr "Umbruch an Form _anpassen" -#: ../src/verbs.cpp:2562 +#: ../src/verbs.cpp:2616 msgid "" "Put text into a frame (path or shape), creating a flowed text linked to the " "frame object" @@ -23390,868 +23305,860 @@ msgstr "" "Text in einen Rahmen setzen (Pfad oder Form), so daß ein mit seinem Rahmen " "verbundener Fließtext erzeugt wird" -#: ../src/verbs.cpp:2563 +#: ../src/verbs.cpp:2617 msgid "_Unflow" msgstr "Fließtext _aufheben" -#: ../src/verbs.cpp:2564 +#: ../src/verbs.cpp:2618 msgid "Remove text from frame (creates a single-line text object)" msgstr "Text von der Form trennen (erzeugt einzeiliges Textobjekt)" -#: ../src/verbs.cpp:2565 +#: ../src/verbs.cpp:2619 msgid "_Convert to Text" msgstr "In normalen Text um_wandeln" -#: ../src/verbs.cpp:2566 +#: ../src/verbs.cpp:2620 msgid "Convert flowed text to regular text object (preserves appearance)" msgstr "Fließtext in gewöhnliches Textobjekt umwandeln (behält Aussehen bei)" -#: ../src/verbs.cpp:2568 +#: ../src/verbs.cpp:2622 msgid "Flip _Horizontal" msgstr "_Horizontal umkehren" -#: ../src/verbs.cpp:2568 +#: ../src/verbs.cpp:2622 msgid "Flip selected objects horizontally" msgstr "Ausgewählte Objekte horizontal umkehren" -#: ../src/verbs.cpp:2571 +#: ../src/verbs.cpp:2625 msgid "Flip _Vertical" msgstr "_Vertikal umkehren" -#: ../src/verbs.cpp:2571 +#: ../src/verbs.cpp:2625 msgid "Flip selected objects vertically" msgstr "Ausgewählte Objekte vertikal umkehren" -#: ../src/verbs.cpp:2574 +#: ../src/verbs.cpp:2628 msgid "Apply mask to selection (using the topmost object as mask)" msgstr "" "Maskierung auf Auswahl anwenden (oberstes Objekt als Maskierung verwenden)" -#: ../src/verbs.cpp:2576 +#: ../src/verbs.cpp:2630 msgid "Edit mask" msgstr "Maskierung bearbeiten" -#: ../src/verbs.cpp:2577 ../src/verbs.cpp:2583 +#: ../src/verbs.cpp:2631 ../src/verbs.cpp:2637 msgid "_Release" msgstr "F_reigeben" -#: ../src/verbs.cpp:2578 +#: ../src/verbs.cpp:2632 msgid "Remove mask from selection" msgstr "Maskierung von Auswahl entfernen" -#: ../src/verbs.cpp:2580 +#: ../src/verbs.cpp:2634 msgid "" "Apply clipping path to selection (using the topmost object as clipping path)" msgstr "" "Ausschneidepfad auf Auswahl anwenden (oberstes Objekt als Ausschneidepfad " "verwenden)" -#: ../src/verbs.cpp:2582 +#: ../src/verbs.cpp:2636 msgid "Edit clipping path" msgstr "Ausschneidepfad bearbeiten" -#: ../src/verbs.cpp:2584 +#: ../src/verbs.cpp:2638 msgid "Remove clipping path from selection" msgstr "Ausschneidepfad von Auswahl entfernen" #. Tools -#: ../src/verbs.cpp:2587 +#: ../src/verbs.cpp:2641 msgctxt "ContextVerb" msgid "Select" msgstr "Auswählen" -#: ../src/verbs.cpp:2588 +#: ../src/verbs.cpp:2642 msgid "Select and transform objects" msgstr "Objekte auswählen und verändern" -#: ../src/verbs.cpp:2589 +#: ../src/verbs.cpp:2643 msgctxt "ContextVerb" msgid "Node Edit" msgstr "Knoten bearbeiten" -#: ../src/verbs.cpp:2590 +#: ../src/verbs.cpp:2644 msgid "Edit paths by nodes" msgstr "Bearbeiten der Knoten oder der Anfasser eines Pfades" -#: ../src/verbs.cpp:2591 +#: ../src/verbs.cpp:2645 msgctxt "ContextVerb" msgid "Tweak" msgstr "Modellieren" -#: ../src/verbs.cpp:2592 +#: ../src/verbs.cpp:2646 msgid "Tweak objects by sculpting or painting" msgstr "Objekte verbessern durch Verformen oder Malen" -#: ../src/verbs.cpp:2593 +#: ../src/verbs.cpp:2647 msgctxt "ContextVerb" msgid "Spray" msgstr "Spray" -#: ../src/verbs.cpp:2594 +#: ../src/verbs.cpp:2648 msgid "Spray objects by sculpting or painting" msgstr "Objekte sprühen durch Verformen oder Malen" -#: ../src/verbs.cpp:2595 +#: ../src/verbs.cpp:2649 msgctxt "ContextVerb" msgid "Rectangle" msgstr "Rechteck" -#: ../src/verbs.cpp:2596 +#: ../src/verbs.cpp:2650 msgid "Create rectangles and squares" msgstr "Rechtecke und Quadrate erstellen" -#: ../src/verbs.cpp:2597 +#: ../src/verbs.cpp:2651 msgctxt "ContextVerb" msgid "3D Box" msgstr "3D-Box" -#: ../src/verbs.cpp:2598 +#: ../src/verbs.cpp:2652 msgid "Create 3D boxes" msgstr "3D-Boxen erzeugen" -#: ../src/verbs.cpp:2599 +#: ../src/verbs.cpp:2653 msgctxt "ContextVerb" msgid "Ellipse" msgstr "Ellipse" -#: ../src/verbs.cpp:2600 +#: ../src/verbs.cpp:2654 msgid "Create circles, ellipses, and arcs" msgstr "Kreise, Ellipsen und Bögen erstellen" -#: ../src/verbs.cpp:2601 +#: ../src/verbs.cpp:2655 msgctxt "ContextVerb" msgid "Star" msgstr "Stern" -#: ../src/verbs.cpp:2602 +#: ../src/verbs.cpp:2656 msgid "Create stars and polygons" msgstr "Sterne und Polygone erstellen" -#: ../src/verbs.cpp:2603 +#: ../src/verbs.cpp:2657 msgctxt "ContextVerb" msgid "Spiral" msgstr "Spirale" -#: ../src/verbs.cpp:2604 +#: ../src/verbs.cpp:2658 msgid "Create spirals" msgstr "Spiralen erstellen" -#: ../src/verbs.cpp:2605 +#: ../src/verbs.cpp:2659 msgctxt "ContextVerb" msgid "Pencil" msgstr "Malwerkzeug (Freihand)" -#: ../src/verbs.cpp:2606 +#: ../src/verbs.cpp:2660 msgid "Draw freehand lines" msgstr "Freihandlinien zeichnen" -#: ../src/verbs.cpp:2607 +#: ../src/verbs.cpp:2661 msgctxt "ContextVerb" msgid "Pen" msgstr "Füller (Linien und Bézierkurven)" -#: ../src/verbs.cpp:2608 +#: ../src/verbs.cpp:2662 msgid "Draw Bezier curves and straight lines" msgstr "Bézier-Kurven und gerade Linien zeichnen" -#: ../src/verbs.cpp:2609 +#: ../src/verbs.cpp:2663 msgctxt "ContextVerb" msgid "Calligraphy" msgstr "Kalligrafie" -#: ../src/verbs.cpp:2610 +#: ../src/verbs.cpp:2664 msgid "Draw calligraphic or brush strokes" msgstr "Kalligrafisch zeichnen" -#: ../src/verbs.cpp:2612 +#: ../src/verbs.cpp:2666 msgid "Create and edit text objects" msgstr "Textobjekte erstellen und bearbeiten" -#: ../src/verbs.cpp:2613 +#: ../src/verbs.cpp:2667 msgctxt "ContextVerb" msgid "Gradient" msgstr "Farbverlauf" -#: ../src/verbs.cpp:2614 +#: ../src/verbs.cpp:2668 msgid "Create and edit gradients" msgstr "Farbverläufe erstellen und bearbeiten" -#: ../src/verbs.cpp:2615 +#: ../src/verbs.cpp:2669 msgctxt "ContextVerb" msgid "Mesh" msgstr "Gitter" -#: ../src/verbs.cpp:2616 +#: ../src/verbs.cpp:2670 msgid "Create and edit meshes" msgstr "Gitter erstellen und bearbeiten" -#: ../src/verbs.cpp:2617 +#: ../src/verbs.cpp:2671 msgctxt "ContextVerb" msgid "Zoom" msgstr "Zoomfaktor" -#: ../src/verbs.cpp:2618 +#: ../src/verbs.cpp:2672 msgid "Zoom in or out" msgstr "Zoomfaktor vergrößern oder verringern" -#: ../src/verbs.cpp:2620 +#: ../src/verbs.cpp:2674 msgid "Measurement tool" msgstr "Messwerkzeug" -#: ../src/verbs.cpp:2621 +#: ../src/verbs.cpp:2675 msgctxt "ContextVerb" msgid "Dropper" msgstr "Farbpipette" -#: ../src/verbs.cpp:2622 ../src/widgets/sp-color-notebook.cpp:411 +#: ../src/verbs.cpp:2676 ../src/widgets/sp-color-notebook.cpp:411 msgid "Pick colors from image" msgstr "Farben aus dem Bild übernehmen" -#: ../src/verbs.cpp:2623 +#: ../src/verbs.cpp:2677 msgctxt "ContextVerb" msgid "Connector" msgstr "Objektverbinder" -#: ../src/verbs.cpp:2624 +#: ../src/verbs.cpp:2678 msgid "Create diagram connectors" msgstr "Objektverbinder erzeugen" -#: ../src/verbs.cpp:2625 +#: ../src/verbs.cpp:2679 msgctxt "ContextVerb" msgid "Paint Bucket" msgstr "Farbeimer" -#: ../src/verbs.cpp:2626 +#: ../src/verbs.cpp:2680 msgid "Fill bounded areas" msgstr "Abgegrenzte Flächen füllen" -#: ../src/verbs.cpp:2627 +#: ../src/verbs.cpp:2681 msgctxt "ContextVerb" msgid "LPE Edit" msgstr "LPE bearbeiten" -#: ../src/verbs.cpp:2628 +#: ../src/verbs.cpp:2682 msgid "Edit Path Effect parameters" msgstr "Pfad-Effekt-Parameter bearbeiten" # Name des Effekte-submenü, das alle Bitmap-Effekte beinhaltet. -#: ../src/verbs.cpp:2629 +#: ../src/verbs.cpp:2683 msgctxt "ContextVerb" msgid "Eraser" msgstr "Radierer" -#: ../src/verbs.cpp:2630 +#: ../src/verbs.cpp:2684 msgid "Erase existing paths" msgstr "Pfade entfernen" -#: ../src/verbs.cpp:2631 +#: ../src/verbs.cpp:2685 msgctxt "ContextVerb" msgid "LPE Tool" msgstr "LPE-Werkzeug" -#: ../src/verbs.cpp:2632 +#: ../src/verbs.cpp:2686 msgid "Do geometric constructions" msgstr "Geometrische Konstruktion durchführen" #. Tool prefs -#: ../src/verbs.cpp:2634 +#: ../src/verbs.cpp:2688 msgid "Selector Preferences" msgstr "Einstellungen für Auswahlwerkzeug" -#: ../src/verbs.cpp:2635 +#: ../src/verbs.cpp:2689 msgid "Open Preferences for the Selector tool" msgstr "Einstellungen für das Auswahlwerkzeug öffnen" -#: ../src/verbs.cpp:2636 +#: ../src/verbs.cpp:2690 msgid "Node Tool Preferences" msgstr "Einstellungen für Knotenwerkzeug" -#: ../src/verbs.cpp:2637 +#: ../src/verbs.cpp:2691 msgid "Open Preferences for the Node tool" msgstr "Einstellungen für das Knotenwerkzeug öffnen" -#: ../src/verbs.cpp:2638 +#: ../src/verbs.cpp:2692 msgid "Tweak Tool Preferences" msgstr "Einstellungen für Anpasswerkzeug" -#: ../src/verbs.cpp:2639 +#: ../src/verbs.cpp:2693 msgid "Open Preferences for the Tweak tool" msgstr "Eigenschaften für das Modifizier-Werkzeug öffnen" -#: ../src/verbs.cpp:2640 +#: ../src/verbs.cpp:2694 msgid "Spray Tool Preferences" msgstr "Einstellungen für Spraydose" -#: ../src/verbs.cpp:2641 +#: ../src/verbs.cpp:2695 msgid "Open Preferences for the Spray tool" msgstr "Eigenschaften für das Spray-Werkzeug öffnen" -#: ../src/verbs.cpp:2642 +#: ../src/verbs.cpp:2696 msgid "Rectangle Preferences" msgstr "Eigenschaften für Rechteckwerkzeug" -#: ../src/verbs.cpp:2643 +#: ../src/verbs.cpp:2697 msgid "Open Preferences for the Rectangle tool" msgstr "Einstellungen für das Rechteckwerkzeug öffnen" -#: ../src/verbs.cpp:2644 +#: ../src/verbs.cpp:2698 msgid "3D Box Preferences" msgstr "Einstellungen für 3D-Box" -#: ../src/verbs.cpp:2645 +#: ../src/verbs.cpp:2699 msgid "Open Preferences for the 3D Box tool" msgstr "Einstellungen für das 3D-Box-Werkzeug öffnen" -#: ../src/verbs.cpp:2646 +#: ../src/verbs.cpp:2700 msgid "Ellipse Preferences" msgstr "Einstellungen für Ellipsenwerkzeug" -#: ../src/verbs.cpp:2647 +#: ../src/verbs.cpp:2701 msgid "Open Preferences for the Ellipse tool" msgstr "Einstellungen für das Ellipsenwerkzeug öffnen" -#: ../src/verbs.cpp:2648 +#: ../src/verbs.cpp:2702 msgid "Star Preferences" msgstr "Einstellungen für Sternwerkzeug" -#: ../src/verbs.cpp:2649 +#: ../src/verbs.cpp:2703 msgid "Open Preferences for the Star tool" msgstr "Eigenschaften für das Sternwerkzeug öffnen" -#: ../src/verbs.cpp:2650 +#: ../src/verbs.cpp:2704 msgid "Spiral Preferences" msgstr "Einstellungen für Spiralenwerkzeug" -#: ../src/verbs.cpp:2651 +#: ../src/verbs.cpp:2705 msgid "Open Preferences for the Spiral tool" msgstr "Eigenschaften für das Spiralenwerkzeug öffnen" -#: ../src/verbs.cpp:2652 +#: ../src/verbs.cpp:2706 msgid "Pencil Preferences" msgstr "Einstellungen für Malwerkzeug" -#: ../src/verbs.cpp:2653 +#: ../src/verbs.cpp:2707 msgid "Open Preferences for the Pencil tool" msgstr "Eigenschaften für das Malwerkzeug öffnen" -#: ../src/verbs.cpp:2654 +#: ../src/verbs.cpp:2708 msgid "Pen Preferences" msgstr "Einstellungen für Zeichenwerkzeug" -#: ../src/verbs.cpp:2655 +#: ../src/verbs.cpp:2709 msgid "Open Preferences for the Pen tool" msgstr "Eigenschaften für das Zeichenwerkzeug öffnen" -#: ../src/verbs.cpp:2656 +#: ../src/verbs.cpp:2710 msgid "Calligraphic Preferences" msgstr "Einstellungen für Kalligrafiewerkzeug" -#: ../src/verbs.cpp:2657 +#: ../src/verbs.cpp:2711 msgid "Open Preferences for the Calligraphy tool" msgstr "Eigenschaften für das Kalligrafiewerkzeug öffnen" -#: ../src/verbs.cpp:2658 +#: ../src/verbs.cpp:2712 msgid "Text Preferences" msgstr "Einstellungen für Textwerkzeug" -#: ../src/verbs.cpp:2659 +#: ../src/verbs.cpp:2713 msgid "Open Preferences for the Text tool" msgstr "Eigenschaften für das Textwerkzeug öffnen" -#: ../src/verbs.cpp:2660 +#: ../src/verbs.cpp:2714 msgid "Gradient Preferences" msgstr "Einstellungen für Farbverläufe" -#: ../src/verbs.cpp:2661 +#: ../src/verbs.cpp:2715 msgid "Open Preferences for the Gradient tool" msgstr "Eigenschaften für Farbverläufe öffnen" -#: ../src/verbs.cpp:2662 +#: ../src/verbs.cpp:2716 msgid "Mesh Preferences" msgstr "Gitter-Einstellungen" -#: ../src/verbs.cpp:2663 +#: ../src/verbs.cpp:2717 msgid "Open Preferences for the Mesh tool" msgstr "Eigenschaften für das Gitterwerkzeug öffnen" -#: ../src/verbs.cpp:2664 +#: ../src/verbs.cpp:2718 msgid "Zoom Preferences" msgstr "Einstellungen für Zoomwerkzeug" -#: ../src/verbs.cpp:2665 +#: ../src/verbs.cpp:2719 msgid "Open Preferences for the Zoom tool" msgstr "Eigenschaften für das Zoomwerkzeug öffnen" -#: ../src/verbs.cpp:2666 +#: ../src/verbs.cpp:2720 msgid "Measure Preferences" msgstr "Messwerkzeug-Einstellungen" -#: ../src/verbs.cpp:2667 +#: ../src/verbs.cpp:2721 msgid "Open Preferences for the Measure tool" msgstr "Eigenschaften für das Messwerkzeug öffnen" -#: ../src/verbs.cpp:2668 +#: ../src/verbs.cpp:2722 msgid "Dropper Preferences" msgstr "Einstellungen für Farbpipette" -#: ../src/verbs.cpp:2669 +#: ../src/verbs.cpp:2723 msgid "Open Preferences for the Dropper tool" msgstr "Eigenschaften für die Farbpipette öffnen" -#: ../src/verbs.cpp:2670 +#: ../src/verbs.cpp:2724 msgid "Connector Preferences" msgstr "Einstellungen für Objektverbinder" -#: ../src/verbs.cpp:2671 +#: ../src/verbs.cpp:2725 msgid "Open Preferences for the Connector tool" msgstr "Eigenschaften für das Objektverbinder-Werkzeug öffnen" -#: ../src/verbs.cpp:2672 +#: ../src/verbs.cpp:2726 msgid "Paint Bucket Preferences" msgstr "Einstellungen für den Farbeimer" -#: ../src/verbs.cpp:2673 +#: ../src/verbs.cpp:2727 msgid "Open Preferences for the Paint Bucket tool" msgstr "Eigenschaften für das Farbeimer-Werkzeug öffnen" -#: ../src/verbs.cpp:2674 +#: ../src/verbs.cpp:2728 msgid "Eraser Preferences" msgstr "Einstellungen für das Löschwerkzeug" -#: ../src/verbs.cpp:2675 +#: ../src/verbs.cpp:2729 msgid "Open Preferences for the Eraser tool" msgstr "Eigenschaften für das Löschwerkzeug öffnen" -#: ../src/verbs.cpp:2676 +#: ../src/verbs.cpp:2730 msgid "LPE Tool Preferences" msgstr "Pfad-Effekt-Einstellungen" -#: ../src/verbs.cpp:2677 +#: ../src/verbs.cpp:2731 msgid "Open Preferences for the LPETool tool" msgstr "Eigenschaften für LPE-Werkzeug öffnen" #. Zoom/View -#: ../src/verbs.cpp:2679 +#: ../src/verbs.cpp:2733 msgid "Zoom In" msgstr "Heranzoomen" -#: ../src/verbs.cpp:2679 +#: ../src/verbs.cpp:2733 msgid "Zoom in" msgstr "Ansicht vergrößern" -#: ../src/verbs.cpp:2680 +#: ../src/verbs.cpp:2734 msgid "Zoom Out" msgstr "Wegzoomen" -#: ../src/verbs.cpp:2680 +#: ../src/verbs.cpp:2734 msgid "Zoom out" msgstr "Ansicht verkleinern" -#: ../src/verbs.cpp:2681 +#: ../src/verbs.cpp:2735 msgid "_Rulers" msgstr "_Lineale" -#: ../src/verbs.cpp:2681 +#: ../src/verbs.cpp:2735 msgid "Show or hide the canvas rulers" msgstr "Zeichnungslineale anzeigen oder ausblenden" -#: ../src/verbs.cpp:2682 +#: ../src/verbs.cpp:2736 msgid "Scroll_bars" msgstr "Roll_balken" -#: ../src/verbs.cpp:2682 +#: ../src/verbs.cpp:2736 msgid "Show or hide the canvas scrollbars" msgstr "Rollbalken anzeigen oder ausblenden" -#: ../src/verbs.cpp:2683 +#: ../src/verbs.cpp:2737 msgid "_Grid" msgstr "_Gitter" -#: ../src/verbs.cpp:2683 +#: ../src/verbs.cpp:2737 msgid "Show or hide the grid" msgstr "Gitter anzeigen oder ausblenden" -#: ../src/verbs.cpp:2684 +#: ../src/verbs.cpp:2738 msgid "G_uides" msgstr "_Führungslinien" -#: ../src/verbs.cpp:2684 +#: ../src/verbs.cpp:2738 msgid "Show or hide guides (drag from a ruler to create a guide)" msgstr "" "Führungslinien zeigen oder verstecken (von einem Lineal ziehen, um eine " "Führungslinie zu erzeugen)" -#: ../src/verbs.cpp:2685 +#: ../src/verbs.cpp:2739 msgid "Enable snapping" msgstr "Einrasten einschalten" -#: ../src/verbs.cpp:2686 +#: ../src/verbs.cpp:2740 msgid "_Commands Bar" msgstr "Befehlsleiste" -#: ../src/verbs.cpp:2686 +#: ../src/verbs.cpp:2740 msgid "Show or hide the Commands bar (under the menu)" msgstr "Befehlsleiste anzeigen oder ausblenden (Leiste unter dem Hauptmenü)" -#: ../src/verbs.cpp:2687 +#: ../src/verbs.cpp:2741 msgid "Sn_ap Controls Bar" msgstr "Einrasten-Kontrollleiste" -#: ../src/verbs.cpp:2687 +#: ../src/verbs.cpp:2741 msgid "Show or hide the snapping controls" msgstr "Kontrollen für Einrasten ein-/ausblenden" -#: ../src/verbs.cpp:2688 +#: ../src/verbs.cpp:2742 msgid "T_ool Controls Bar" msgstr "Werkzeugeinstellungsleiste" -#: ../src/verbs.cpp:2688 +#: ../src/verbs.cpp:2742 msgid "Show or hide the Tool Controls bar" msgstr "Einstellungsleiste für das Werkzeug ein-/ausblenden" -#: ../src/verbs.cpp:2689 +#: ../src/verbs.cpp:2743 msgid "_Toolbox" msgstr "Werkzeugleis_te" -#: ../src/verbs.cpp:2689 +#: ../src/verbs.cpp:2743 msgid "Show or hide the main toolbox (on the left)" msgstr "Werkzeugleiste (auf der linken Seite) an- oder abschalten" -#: ../src/verbs.cpp:2690 +#: ../src/verbs.cpp:2744 msgid "_Palette" msgstr "_Palette" -#: ../src/verbs.cpp:2690 +#: ../src/verbs.cpp:2744 msgid "Show or hide the color palette" msgstr "Farbpalette ein-/ausblenden" -#: ../src/verbs.cpp:2691 +#: ../src/verbs.cpp:2745 msgid "_Statusbar" msgstr "_Statuszeile" -#: ../src/verbs.cpp:2691 +#: ../src/verbs.cpp:2745 msgid "Show or hide the statusbar (at the bottom of the window)" msgstr "Statusleiste an- oder abschalten (am unteren Ende des Fensters)" -#: ../src/verbs.cpp:2692 +#: ../src/verbs.cpp:2746 msgid "Nex_t Zoom" msgstr "_Nächster Zoomfaktor" -#: ../src/verbs.cpp:2692 +#: ../src/verbs.cpp:2746 msgid "Next zoom (from the history of zooms)" msgstr "Den nächsten Zoomfaktor einstellen (aus der Liste bisheriger Faktoren)" -#: ../src/verbs.cpp:2694 +#: ../src/verbs.cpp:2748 msgid "Pre_vious Zoom" msgstr "_Vorheriger Zoomfaktor" -#: ../src/verbs.cpp:2694 +#: ../src/verbs.cpp:2748 msgid "Previous zoom (from the history of zooms)" msgstr "" "Den vorherigen Zoomfaktor einstellen (aus der Liste bisheriger Faktoren)" -#: ../src/verbs.cpp:2696 +#: ../src/verbs.cpp:2750 msgid "Zoom 1:_1" msgstr "Zoomfaktor 1:_1" -#: ../src/verbs.cpp:2696 +#: ../src/verbs.cpp:2750 msgid "Zoom to 1:1" msgstr "Den Zoomfaktor auf 1:1 setzen" -#: ../src/verbs.cpp:2698 +#: ../src/verbs.cpp:2752 msgid "Zoom 1:_2" msgstr "Zoomfaktor 1:_2" -#: ../src/verbs.cpp:2698 +#: ../src/verbs.cpp:2752 msgid "Zoom to 1:2" msgstr "Den Zoomfaktor auf 1:2 setzen" -#: ../src/verbs.cpp:2700 +#: ../src/verbs.cpp:2754 msgid "_Zoom 2:1" msgstr "_Zoomfaktor 2:1" -#: ../src/verbs.cpp:2700 +#: ../src/verbs.cpp:2754 msgid "Zoom to 2:1" msgstr "Den Zoomfaktor auf 2:1 setzen" -#: ../src/verbs.cpp:2703 +#: ../src/verbs.cpp:2757 msgid "_Fullscreen" msgstr "Voll_bild" -#: ../src/verbs.cpp:2703 ../src/verbs.cpp:2705 +#: ../src/verbs.cpp:2757 ../src/verbs.cpp:2759 msgid "Stretch this document window to full screen" msgstr "Dieses Dokumentenfenster auf Vollbild aufziehen" -#: ../src/verbs.cpp:2705 +#: ../src/verbs.cpp:2759 msgid "Fullscreen & Focus Mode" msgstr "Vollbild und Fokusmodus" -#: ../src/verbs.cpp:2708 +#: ../src/verbs.cpp:2762 msgid "Toggle _Focus Mode" msgstr "Schaltet _Fokusmodus um" -#: ../src/verbs.cpp:2708 +#: ../src/verbs.cpp:2762 msgid "Remove excess toolbars to focus on drawing" msgstr "Entfernt überzählige Werkzeugleisten, um Zeichenfläche zu maximieren" -#: ../src/verbs.cpp:2710 +#: ../src/verbs.cpp:2764 msgid "Duplic_ate Window" msgstr "Fenster d_uplizieren" -#: ../src/verbs.cpp:2710 +#: ../src/verbs.cpp:2764 msgid "Open a new window with the same document" msgstr "Das momentan geöffnete Dokument in einem neuen Fenster darstellen" -#: ../src/verbs.cpp:2712 +#: ../src/verbs.cpp:2766 msgid "_New View Preview" msgstr "_Neue Vorschau" -#: ../src/verbs.cpp:2713 +#: ../src/verbs.cpp:2767 msgid "New View Preview" msgstr "Neue Vorschau" #. "view_new_preview" -#: ../src/verbs.cpp:2715 ../src/verbs.cpp:2723 +#: ../src/verbs.cpp:2769 ../src/verbs.cpp:2777 msgid "_Normal" msgstr "_Normal" -#: ../src/verbs.cpp:2716 +#: ../src/verbs.cpp:2770 msgid "Switch to normal display mode" msgstr "In den normalen Anzeigemodus wechseln" -#: ../src/verbs.cpp:2717 +#: ../src/verbs.cpp:2771 msgid "No _Filters" msgstr "Keine _Filter" -#: ../src/verbs.cpp:2718 +#: ../src/verbs.cpp:2772 msgid "Switch to normal display without filters" msgstr "Wechselt in den normalen Anzeigemodus ohne Filter" -#: ../src/verbs.cpp:2719 +#: ../src/verbs.cpp:2773 msgid "_Outline" msgstr "_Umriss" -#: ../src/verbs.cpp:2720 +#: ../src/verbs.cpp:2774 msgid "Switch to outline (wireframe) display mode" msgstr "In den Umriss-(Drahtgitter)-Anzeigemodus wechseln" #. new ZoomVerb(SP_VERB_VIEW_COLOR_MODE_PRINT_COLORS_PREVIEW, "ViewColorModePrintColorsPreview", N_("_Print Colors Preview"), #. N_("Switch to print colors preview mode"), NULL), -#: ../src/verbs.cpp:2721 ../src/verbs.cpp:2729 +#: ../src/verbs.cpp:2775 ../src/verbs.cpp:2783 msgid "_Toggle" msgstr "_Umschalten" -#: ../src/verbs.cpp:2722 +#: ../src/verbs.cpp:2776 msgid "Toggle between normal and outline display modes" msgstr "Zwischen normaler und Umriss-Ansicht umschalten" -#: ../src/verbs.cpp:2724 +#: ../src/verbs.cpp:2778 msgid "Switch to normal color display mode" msgstr "In den normalen Anzeigemodus wechseln" -#: ../src/verbs.cpp:2725 +#: ../src/verbs.cpp:2779 msgid "_Grayscale" msgstr "_Graustufen" -#: ../src/verbs.cpp:2726 +#: ../src/verbs.cpp:2780 msgid "Switch to grayscale display mode" msgstr "In den Graustufen-Anzeigemodus wechseln" -#: ../src/verbs.cpp:2730 +#: ../src/verbs.cpp:2784 msgid "Toggle between normal and grayscale color display modes" msgstr "Zwischen normaler und Graustufen-Farb-Ansicht umschalten" # ??? -#: ../src/verbs.cpp:2732 +#: ../src/verbs.cpp:2786 msgid "Color-managed view" msgstr "Farbverwaltungsansicht" # ??? -#: ../src/verbs.cpp:2733 +#: ../src/verbs.cpp:2787 msgid "Toggle color-managed display for this document window" msgstr "Ansicht mit Farbverwaltung ein-/ausschalten" -#: ../src/verbs.cpp:2735 +#: ../src/verbs.cpp:2789 msgid "Ico_n Preview..." msgstr "_Icon-Vorschaufenster…" -#: ../src/verbs.cpp:2736 +#: ../src/verbs.cpp:2790 msgid "Open a window to preview objects at different icon resolutions" msgstr "" "Vorschaufenster öffnen, um Elemente bei verschiedenen Icon-Auflösungsstufen " "zu sehen" -#: ../src/verbs.cpp:2738 +#: ../src/verbs.cpp:2792 msgid "Zoom to fit page in window" msgstr "Die Seite in das Fenster einpassen" -#: ../src/verbs.cpp:2739 +#: ../src/verbs.cpp:2793 msgid "Page _Width" msgstr "Seiten_breite" -#: ../src/verbs.cpp:2740 +#: ../src/verbs.cpp:2794 msgid "Zoom to fit page width in window" msgstr "Die Seitenbreite in das Fenster einpassen" -#: ../src/verbs.cpp:2742 +#: ../src/verbs.cpp:2796 msgid "Zoom to fit drawing in window" msgstr "Die Zeichnung in das Fenster einpassen" -#: ../src/verbs.cpp:2744 +#: ../src/verbs.cpp:2798 msgid "Zoom to fit selection in window" msgstr "Die Auswahl in das Fenster einpassen" #. Dialogs -#: ../src/verbs.cpp:2747 +#: ../src/verbs.cpp:2801 msgid "P_references..." msgstr "Einstellungen" -#: ../src/verbs.cpp:2748 +#: ../src/verbs.cpp:2802 msgid "Edit global Inkscape preferences" msgstr "Globale Einstellungen für Inkscape bearbeiten" -#: ../src/verbs.cpp:2749 +#: ../src/verbs.cpp:2803 msgid "_Document Properties..." msgstr "D_okumenteneinstellungen…" -#: ../src/verbs.cpp:2750 +#: ../src/verbs.cpp:2804 msgid "Edit properties of this document (to be saved with the document)" msgstr "Einstellungen bearbeiten, die mit dem Dokument gespeichert werden" -#: ../src/verbs.cpp:2751 +#: ../src/verbs.cpp:2805 msgid "Document _Metadata..." msgstr "Dokument-_Metadaten…" -#: ../src/verbs.cpp:2752 +#: ../src/verbs.cpp:2806 msgid "Edit document metadata (to be saved with the document)" msgstr "Dokument-Metadaten bearbeiten, die mit dem Dokument gespeichert werden" -#: ../src/verbs.cpp:2754 +#: ../src/verbs.cpp:2808 msgid "" "Edit objects' colors, gradients, arrowheads, and other fill and stroke " "properties..." msgstr "" "Objektfarben, Farbverläufe, Strichbreiten, Pfeile, Strichmuster usw. ändern" -#: ../src/verbs.cpp:2755 +#: ../src/verbs.cpp:2809 msgid "Gl_yphs..." msgstr "Glyphen..." -#: ../src/verbs.cpp:2756 +#: ../src/verbs.cpp:2810 msgid "Select characters from a glyphs palette" msgstr "Zeichen aus einer Bildzeichen-Palette auswählen" #. TRANSLATORS: "Swatches" means: color samples -#: ../src/verbs.cpp:2758 +#: ../src/verbs.cpp:2812 msgid "S_watches..." msgstr "_Farbfelder-Palette…" -#: ../src/verbs.cpp:2759 +#: ../src/verbs.cpp:2813 msgid "Select colors from a swatches palette" msgstr "Farben aus einer Farbfelder-Palette auswählen" -#: ../src/verbs.cpp:2760 +#: ../src/verbs.cpp:2814 msgid "S_ymbols..." msgstr "S_ymbole..." -#: ../src/verbs.cpp:2761 +#: ../src/verbs.cpp:2815 msgid "Select symbol from a symbols palette" msgstr "Symbol aus einer Symbol-Palette auswählen" -#: ../src/verbs.cpp:2762 +#: ../src/verbs.cpp:2816 msgid "Transfor_m..." msgstr "_Transformationen…" -#: ../src/verbs.cpp:2763 +#: ../src/verbs.cpp:2817 msgid "Precisely control objects' transformations" msgstr "Transformationen eines Objektes präzise einstellen" -#: ../src/verbs.cpp:2764 +#: ../src/verbs.cpp:2818 msgid "_Align and Distribute..." msgstr "Ausri_chten und Abstände ausgleichen…" -#: ../src/verbs.cpp:2765 +#: ../src/verbs.cpp:2819 msgid "Align and distribute objects" msgstr "Objekte ausrichten und ihre Abstände ausgleichen" -#: ../src/verbs.cpp:2766 +#: ../src/verbs.cpp:2820 msgid "_Spray options..." msgstr "_Spraydosen-Optionen" -#: ../src/verbs.cpp:2767 +#: ../src/verbs.cpp:2821 msgid "Some options for the spray" msgstr "Einige Optionen des Sprühwerkzeuges" -#: ../src/verbs.cpp:2768 +#: ../src/verbs.cpp:2822 msgid "Undo _History..." msgstr "Bearbeitungs_historie…" -#: ../src/verbs.cpp:2769 +#: ../src/verbs.cpp:2823 msgid "Undo History" msgstr "Bearbeitungshistorie" -#: ../src/verbs.cpp:2771 +#: ../src/verbs.cpp:2825 msgid "View and select font family, font size and other text properties" msgstr "" "Schriftfamilie, Schriftgröße und andere Texteigenschaften ansehen und ändern" -#: ../src/verbs.cpp:2772 +#: ../src/verbs.cpp:2826 msgid "_XML Editor..." msgstr "_XML-Editor…" -#: ../src/verbs.cpp:2773 +#: ../src/verbs.cpp:2827 msgid "View and edit the XML tree of the document" msgstr "Zeige und ändere den XML-Baum des Dokuments" -#: ../src/verbs.cpp:2774 +#: ../src/verbs.cpp:2828 msgid "_Find/Replace..." msgstr "Suchen/Ersetzen..." -#: ../src/verbs.cpp:2775 +#: ../src/verbs.cpp:2829 msgid "Find objects in document" msgstr "Objekte im Dokument suchen" -#: ../src/verbs.cpp:2776 +#: ../src/verbs.cpp:2830 msgid "Find and _Replace Text..." msgstr "Text suchen und e_rsetzen..." -#: ../src/verbs.cpp:2777 +#: ../src/verbs.cpp:2831 msgid "Find and replace text in document" msgstr "Text im Dokument suchen und ersetzen" -#: ../src/verbs.cpp:2779 +#: ../src/verbs.cpp:2833 msgid "Check spelling of text in document" msgstr "Rechtschreibprüfung für Text im Dokument" -#: ../src/verbs.cpp:2780 +#: ../src/verbs.cpp:2834 msgid "_Messages..." msgstr "Nachrichten…" -#: ../src/verbs.cpp:2781 +#: ../src/verbs.cpp:2835 msgid "View debug messages" msgstr "Nachrichten zur Fehlersuche anzeigen" -#: ../src/verbs.cpp:2782 -msgid "S_cripts..." -msgstr "_Skripte…" - -#: ../src/verbs.cpp:2783 -msgid "Run scripts" -msgstr "Skripte ausführen" - -#: ../src/verbs.cpp:2784 +#: ../src/verbs.cpp:2836 msgid "Show/Hide D_ialogs" msgstr "_Dialoge anzeigen oder ausblenden" -#: ../src/verbs.cpp:2785 +#: ../src/verbs.cpp:2837 msgid "Show or hide all open dialogs" msgstr "Alle offenen Dialoge zeigen oder ausblenden" -#: ../src/verbs.cpp:2786 +#: ../src/verbs.cpp:2838 msgid "Create Tiled Clones..." msgstr "Gekachelte Klone erzeugen…" -#: ../src/verbs.cpp:2787 +#: ../src/verbs.cpp:2839 msgid "" "Create multiple clones of selected object, arranging them into a pattern or " "scattering" @@ -24259,213 +24166,213 @@ msgstr "" "Mehrere Klone des gewählten Objekts erstellen, die in einem Muster oder " "verstreut angeordnet sind" -#: ../src/verbs.cpp:2788 +#: ../src/verbs.cpp:2840 msgid "_Object attributes..." msgstr "_Objekteigenschaften…" -#: ../src/verbs.cpp:2789 +#: ../src/verbs.cpp:2841 msgid "Edit the object attributes..." msgstr "Objektattribute bearbeiten..." -#: ../src/verbs.cpp:2791 +#: ../src/verbs.cpp:2843 msgid "Edit the ID, locked and visible status, and other object properties" msgstr "" "Kennung, Status (gesperrt, sichtbar) und andere Objekteigenschaften ändern" -#: ../src/verbs.cpp:2792 +#: ../src/verbs.cpp:2844 msgid "_Input Devices..." msgstr "_Eingabegeräte…" -#: ../src/verbs.cpp:2793 +#: ../src/verbs.cpp:2845 msgid "Configure extended input devices, such as a graphics tablet" msgstr "Erweiterte Eingabegeräte konfigurieren, wie z.B. Grafiktabletts" -#: ../src/verbs.cpp:2794 +#: ../src/verbs.cpp:2846 msgid "_Extensions..." msgstr "_Erweiterungen…" -#: ../src/verbs.cpp:2795 +#: ../src/verbs.cpp:2847 msgid "Query information about extensions" msgstr "Informationen über Erweiterungen abfragen" -#: ../src/verbs.cpp:2796 +#: ../src/verbs.cpp:2848 msgid "Layer_s..." msgstr "_Ebenen…" -#: ../src/verbs.cpp:2797 +#: ../src/verbs.cpp:2849 msgid "View Layers" msgstr "Ebenen anzeigen" -#: ../src/verbs.cpp:2798 +#: ../src/verbs.cpp:2850 msgid "Path E_ffects ..." msgstr "Pfad-Effekt-Editor..." -#: ../src/verbs.cpp:2799 +#: ../src/verbs.cpp:2851 msgid "Manage, edit, and apply path effects" msgstr "Pfad-Effekt erstellen und anwenden" -#: ../src/verbs.cpp:2800 +#: ../src/verbs.cpp:2852 msgid "Filter _Editor..." msgstr "Filter-Editor…" -#: ../src/verbs.cpp:2801 +#: ../src/verbs.cpp:2853 msgid "Manage, edit, and apply SVG filters" msgstr "SVG-Filter verwalten, bearbeiten und anwenden" -#: ../src/verbs.cpp:2802 +#: ../src/verbs.cpp:2854 msgid "SVG Font Editor..." msgstr "SVG-Schrift-Editor…" -#: ../src/verbs.cpp:2803 +#: ../src/verbs.cpp:2855 msgid "Edit SVG fonts" msgstr "SVG-Schriften bearbeiten" -#: ../src/verbs.cpp:2804 +#: ../src/verbs.cpp:2856 msgid "Print Colors..." msgstr "Druckfarben…" -#: ../src/verbs.cpp:2805 +#: ../src/verbs.cpp:2857 msgid "" "Select which color separations to render in Print Colors Preview rendermode" msgstr "" "Wählen Sie die zu rendernden Farbseparationen im Druckfarben-Vorschau-" "Rendermodus aus" -#: ../src/verbs.cpp:2806 +#: ../src/verbs.cpp:2858 msgid "_Export PNG Image..." msgstr "_Exportiere PNG Bild..." -#: ../src/verbs.cpp:2807 +#: ../src/verbs.cpp:2859 msgid "Export this document or a selection as a PNG image" msgstr "Das Dokument oder eine Auswahl als Bitmap-Bild exportieren" #. Help -#: ../src/verbs.cpp:2809 +#: ../src/verbs.cpp:2861 msgid "About E_xtensions" msgstr "Über _Erweiterungen" -#: ../src/verbs.cpp:2810 +#: ../src/verbs.cpp:2862 msgid "Information on Inkscape extensions" msgstr "Informationen über Inkscape-Erweiterungen" -#: ../src/verbs.cpp:2811 +#: ../src/verbs.cpp:2863 msgid "About _Memory" msgstr "_Speichernutzung" -#: ../src/verbs.cpp:2812 +#: ../src/verbs.cpp:2864 msgid "Memory usage information" msgstr "Informationen über die Speichernutzung" -#: ../src/verbs.cpp:2813 +#: ../src/verbs.cpp:2865 msgid "_About Inkscape" msgstr "Ü_ber Inkscape" -#: ../src/verbs.cpp:2814 +#: ../src/verbs.cpp:2866 msgid "Inkscape version, authors, license" msgstr "Inkscape-Version, Autoren, Lizenz" #. new HelpVerb(SP_VERB_SHOW_LICENSE, "ShowLicense", N_("_License"), #. N_("Distribution terms"), /*"show_license"*/"inkscape_options"), #. Tutorials -#: ../src/verbs.cpp:2819 +#: ../src/verbs.cpp:2871 msgid "Inkscape: _Basic" msgstr "Inkscape: _Grundlagen" -#: ../src/verbs.cpp:2820 +#: ../src/verbs.cpp:2872 msgid "Getting started with Inkscape" msgstr "Erste Schritte mit Inkscape" #. "tutorial_basic" -#: ../src/verbs.cpp:2821 +#: ../src/verbs.cpp:2873 msgid "Inkscape: _Shapes" msgstr "Inkscape: _Formen" -#: ../src/verbs.cpp:2822 +#: ../src/verbs.cpp:2874 msgid "Using shape tools to create and edit shapes" msgstr "Benutzung der Formen-Werkzeuge zum Erzeugen und Verändern von Formen" -#: ../src/verbs.cpp:2823 +#: ../src/verbs.cpp:2875 msgid "Inkscape: _Advanced" msgstr "Inkscape: Fortgeschrittene _Benutzung" -#: ../src/verbs.cpp:2824 +#: ../src/verbs.cpp:2876 msgid "Advanced Inkscape topics" msgstr "Fortgeschrittene Themen bei der Benutzung von Inkscape" #. "tutorial_advanced" #. TRANSLATORS: "to trace" means "to convert a bitmap to vector graphics" (to vectorize) -#: ../src/verbs.cpp:2826 +#: ../src/verbs.cpp:2878 msgid "Inkscape: T_racing" msgstr "Inkscape: _Vektorisieren" -#: ../src/verbs.cpp:2827 +#: ../src/verbs.cpp:2879 msgid "Using bitmap tracing" msgstr "Verwendung der Bitmap-Vektorisierung" #. "tutorial_tracing" -#: ../src/verbs.cpp:2828 +#: ../src/verbs.cpp:2880 msgid "Inkscape: _Calligraphy" msgstr "Inkscape: _Kalligrafie" -#: ../src/verbs.cpp:2829 +#: ../src/verbs.cpp:2881 msgid "Using the Calligraphy pen tool" msgstr "Verwendung des kalligrafischen Füllers" -#: ../src/verbs.cpp:2830 +#: ../src/verbs.cpp:2882 msgid "Inkscape: _Interpolate" msgstr "Inkscape: _Interpolieren" -#: ../src/verbs.cpp:2831 +#: ../src/verbs.cpp:2883 msgid "Using the interpolate extension" msgstr "Benutzt die Erweiterung Interpolieren" #. "tutorial_interpolate" -#: ../src/verbs.cpp:2832 +#: ../src/verbs.cpp:2884 msgid "_Elements of Design" msgstr "_Elemente des Designs" -#: ../src/verbs.cpp:2833 +#: ../src/verbs.cpp:2885 msgid "Principles of design in the tutorial form" msgstr "Gestaltungsprinzipen" #. "tutorial_design" -#: ../src/verbs.cpp:2834 +#: ../src/verbs.cpp:2886 msgid "_Tips and Tricks" msgstr "_Tipps und Tricks" -#: ../src/verbs.cpp:2835 +#: ../src/verbs.cpp:2887 msgid "Miscellaneous tips and tricks" msgstr "Verschiedene Tipps und Tricks" #. "tutorial_tips" #. Effect -- renamed Extension -#: ../src/verbs.cpp:2838 +#: ../src/verbs.cpp:2890 msgid "Previous Exte_nsion" msgstr "Vorherige Erweiterungen" -#: ../src/verbs.cpp:2839 +#: ../src/verbs.cpp:2891 msgid "Repeat the last extension with the same settings" msgstr "Letzten Effekt mit den gleichen Einstellungen anwenden" -#: ../src/verbs.cpp:2840 +#: ../src/verbs.cpp:2892 msgid "_Previous Extension Settings..." msgstr "Vorherige Erweiterungs-Einstellungen…" -#: ../src/verbs.cpp:2841 +#: ../src/verbs.cpp:2893 msgid "Repeat the last extension with new settings" msgstr "Letzte Erweiterung mit anderen Einstellungen wiederholen" # !!! -#: ../src/verbs.cpp:2845 +#: ../src/verbs.cpp:2897 msgid "Fit the page to the current selection" msgstr "Die Seite in die aktuelle Auswahl einpassen" # !!! -#: ../src/verbs.cpp:2847 +#: ../src/verbs.cpp:2899 msgid "Fit the page to the drawing" msgstr "Die Seite in die Zeichnungsgröße einpassen" -#: ../src/verbs.cpp:2849 +#: ../src/verbs.cpp:2901 msgid "" "Fit the page to the current selection or the drawing if there is no selection" msgstr "" @@ -24474,248 +24381,288 @@ msgstr "" # !!! mnemonics #. LockAndHide -#: ../src/verbs.cpp:2851 +#: ../src/verbs.cpp:2903 msgid "Unlock All" msgstr "Alles entsperren" -#: ../src/verbs.cpp:2853 +#: ../src/verbs.cpp:2905 msgid "Unlock All in All Layers" msgstr "Alles in allen Ebenen entsperren" # !!! mnemonics -#: ../src/verbs.cpp:2855 +#: ../src/verbs.cpp:2907 msgid "Unhide All" msgstr "Alles einblenden" -#: ../src/verbs.cpp:2857 +#: ../src/verbs.cpp:2909 msgid "Unhide All in All Layers" msgstr "Alles in allen Ebenen einblenden" -#: ../src/verbs.cpp:2861 +#: ../src/verbs.cpp:2913 msgid "Link an ICC color profile" msgstr "Verknüpfung mit ICC-Farbprofil" -#: ../src/verbs.cpp:2862 +#: ../src/verbs.cpp:2914 msgid "Remove Color Profile" msgstr "Farbprofil entfernen" -#: ../src/verbs.cpp:2863 +#: ../src/verbs.cpp:2915 msgid "Remove a linked ICC color profile" msgstr "Entfernt ein verknüpftes ICC-Farbprofil." -#: ../src/verbs.cpp:2886 ../src/verbs.cpp:2887 +#: ../src/verbs.cpp:2918 +msgid "Add External Script" +msgstr "Füge externes Script hinzu" + +#: ../src/verbs.cpp:2918 +msgid "Add an external script" +msgstr "Füge ein externes Script hinzu" + +#: ../src/verbs.cpp:2920 +msgid "Add Embedded Script" +msgstr "Füge eingebettetes Script hinzu" + +#: ../src/verbs.cpp:2920 +msgid "Add an embedded script" +msgstr "Füge ein eingebettetes Script hinzu" + +#: ../src/verbs.cpp:2922 +msgid "Edit Embedded Script" +msgstr "Eingebettetes Script bearbeiten" + +#: ../src/verbs.cpp:2922 +msgid "Edit an embedded script" +msgstr "Ein eingebettetes Script bearbeiten" + +#: ../src/verbs.cpp:2924 +msgid "Remove External Script" +msgstr "Lösche externes Script" + +#: ../src/verbs.cpp:2924 +msgid "Remove an external script" +msgstr "Lösche ein externes Script" + +#: ../src/verbs.cpp:2926 +msgid "Remove Embedded Script" +msgstr "Eingebettetes Script entfernen" + +#: ../src/verbs.cpp:2926 +msgid "Remove an embedded script" +msgstr "Ein eingebettetes Script entfernen" + +#: ../src/verbs.cpp:2948 ../src/verbs.cpp:2949 msgid "Center on horizontal and vertical axis" msgstr "An horizontalen und vertikalen Achsen ausrichten" -#: ../src/widgets/arc-toolbar.cpp:146 +#: ../src/widgets/arc-toolbar.cpp:142 msgid "Arc: Change start/end" msgstr "Bogen: Beginn/Ende ändern" -#: ../src/widgets/arc-toolbar.cpp:212 +#: ../src/widgets/arc-toolbar.cpp:208 msgid "Arc: Change open/closed" msgstr "Bogen: Offen/geschlossen ändern" # !!! -#: ../src/widgets/arc-toolbar.cpp:303 ../src/widgets/arc-toolbar.cpp:332 -#: ../src/widgets/rect-toolbar.cpp:259 ../src/widgets/rect-toolbar.cpp:297 -#: ../src/widgets/spiral-toolbar.cpp:229 ../src/widgets/spiral-toolbar.cpp:253 -#: ../src/widgets/star-toolbar.cpp:395 ../src/widgets/star-toolbar.cpp:456 +#: ../src/widgets/arc-toolbar.cpp:299 ../src/widgets/arc-toolbar.cpp:328 +#: ../src/widgets/rect-toolbar.cpp:261 ../src/widgets/rect-toolbar.cpp:299 +#: ../src/widgets/spiral-toolbar.cpp:225 ../src/widgets/spiral-toolbar.cpp:249 +#: ../src/widgets/star-toolbar.cpp:391 ../src/widgets/star-toolbar.cpp:452 msgid "New:" msgstr "Neu:" # !!! #. FIXME: implement averaging of all parameters for multiple selected #. gtk_label_set_markup(GTK_LABEL(l), _("Average:")); -#: ../src/widgets/arc-toolbar.cpp:306 ../src/widgets/arc-toolbar.cpp:317 -#: ../src/widgets/rect-toolbar.cpp:267 ../src/widgets/rect-toolbar.cpp:285 -#: ../src/widgets/spiral-toolbar.cpp:231 ../src/widgets/spiral-toolbar.cpp:242 -#: ../src/widgets/star-toolbar.cpp:397 +#: ../src/widgets/arc-toolbar.cpp:302 ../src/widgets/arc-toolbar.cpp:313 +#: ../src/widgets/rect-toolbar.cpp:269 ../src/widgets/rect-toolbar.cpp:287 +#: ../src/widgets/spiral-toolbar.cpp:227 ../src/widgets/spiral-toolbar.cpp:238 +#: ../src/widgets/star-toolbar.cpp:393 msgid "Change:" msgstr "Ändern:" -#: ../src/widgets/arc-toolbar.cpp:341 +#: ../src/widgets/arc-toolbar.cpp:337 msgid "Start:" msgstr "Anfang:" -#: ../src/widgets/arc-toolbar.cpp:342 +#: ../src/widgets/arc-toolbar.cpp:338 msgid "The angle (in degrees) from the horizontal to the arc's start point" msgstr "" "Der Winkel (in Grad) von der Horizontalen bis zum Startpunkt des Bogens" -#: ../src/widgets/arc-toolbar.cpp:354 +#: ../src/widgets/arc-toolbar.cpp:350 msgid "End:" msgstr "Ende:" -#: ../src/widgets/arc-toolbar.cpp:355 +#: ../src/widgets/arc-toolbar.cpp:351 msgid "The angle (in degrees) from the horizontal to the arc's end point" msgstr "Der Winkel (in Grad) von der Horizontalen bis zum Endpunkt des Bogens" -#: ../src/widgets/arc-toolbar.cpp:371 +#: ../src/widgets/arc-toolbar.cpp:367 msgid "Closed arc" msgstr "Geschlossener Bogen" -#: ../src/widgets/arc-toolbar.cpp:372 +#: ../src/widgets/arc-toolbar.cpp:368 msgid "Switch to segment (closed shape with two radii)" msgstr "Zu Segment (geschlossene Form mit zwei Radien) umschalten" -#: ../src/widgets/arc-toolbar.cpp:378 +#: ../src/widgets/arc-toolbar.cpp:374 msgid "Open Arc" msgstr "Offener Bogen" -#: ../src/widgets/arc-toolbar.cpp:379 +#: ../src/widgets/arc-toolbar.cpp:375 msgid "Switch to arc (unclosed shape)" msgstr "Zu Bogen umschalten (offene Form)" -#: ../src/widgets/arc-toolbar.cpp:402 +#: ../src/widgets/arc-toolbar.cpp:398 msgid "Make whole" msgstr "Schließen" -#: ../src/widgets/arc-toolbar.cpp:403 +#: ../src/widgets/arc-toolbar.cpp:399 msgid "Make the shape a whole ellipse, not arc or segment" msgstr "Die Form zur ganzen Ellipse anstelle eines Bogens oder Segments machen" #. TODO: use the correct axis here, too -#: ../src/widgets/box3d-toolbar.cpp:253 +#: ../src/widgets/box3d-toolbar.cpp:248 msgid "3D Box: Change perspective (angle of infinite axis)" msgstr "3D-Box: Perspektive ändern (Winkel der unendlichen Achse)" -#: ../src/widgets/box3d-toolbar.cpp:320 +#: ../src/widgets/box3d-toolbar.cpp:315 msgid "Angle in X direction" msgstr "Winkel in X-Richtung" #. Translators: PL is short for 'perspective line' -#: ../src/widgets/box3d-toolbar.cpp:322 +#: ../src/widgets/box3d-toolbar.cpp:317 msgid "Angle of PLs in X direction" msgstr "Winkel der Perspektivlinien in X-Richtung" #. Translators: VP is short for 'vanishing point' -#: ../src/widgets/box3d-toolbar.cpp:344 +#: ../src/widgets/box3d-toolbar.cpp:339 msgid "State of VP in X direction" msgstr "Fluchtpunktstatus in X-Richtung" -#: ../src/widgets/box3d-toolbar.cpp:345 +#: ../src/widgets/box3d-toolbar.cpp:340 msgid "Toggle VP in X direction between 'finite' and 'infinite' (=parallel)" msgstr "" "Fluchtpunkt in X-Richtung zwischen 'endlich' und 'unendlich' (=parallel) " "umschalten" -#: ../src/widgets/box3d-toolbar.cpp:360 +#: ../src/widgets/box3d-toolbar.cpp:355 msgid "Angle in Y direction" msgstr "Winkel in Y-Richtung" -#: ../src/widgets/box3d-toolbar.cpp:360 +#: ../src/widgets/box3d-toolbar.cpp:355 msgid "Angle Y:" msgstr "Winkel Y:" #. Translators: PL is short for 'perspective line' -#: ../src/widgets/box3d-toolbar.cpp:362 +#: ../src/widgets/box3d-toolbar.cpp:357 msgid "Angle of PLs in Y direction" msgstr "Winkel der Perspektivlinien in Y-Richtung" #. Translators: VP is short for 'vanishing point' -#: ../src/widgets/box3d-toolbar.cpp:383 +#: ../src/widgets/box3d-toolbar.cpp:378 msgid "State of VP in Y direction" msgstr "Fluchtpunktstatus in Y-Richtung" -#: ../src/widgets/box3d-toolbar.cpp:384 +#: ../src/widgets/box3d-toolbar.cpp:379 msgid "Toggle VP in Y direction between 'finite' and 'infinite' (=parallel)" msgstr "" "Fluchtpunkt in Y-richtung zwischen 'endlich' und 'unendlich' (=parallel) " "umschalten" -#: ../src/widgets/box3d-toolbar.cpp:399 +#: ../src/widgets/box3d-toolbar.cpp:394 msgid "Angle in Z direction" msgstr "Winkel inZ-Richtung" #. Translators: PL is short for 'perspective line' -#: ../src/widgets/box3d-toolbar.cpp:401 +#: ../src/widgets/box3d-toolbar.cpp:396 msgid "Angle of PLs in Z direction" msgstr "Winkel der Perspektivlinien in Z-Richtung" #. Translators: VP is short for 'vanishing point' -#: ../src/widgets/box3d-toolbar.cpp:422 +#: ../src/widgets/box3d-toolbar.cpp:417 msgid "State of VP in Z direction" msgstr "Fluchtpunktstatus in Z-Richtung" -#: ../src/widgets/box3d-toolbar.cpp:423 +#: ../src/widgets/box3d-toolbar.cpp:418 msgid "Toggle VP in Z direction between 'finite' and 'infinite' (=parallel)" msgstr "" "Fluchtpunkt in Z-Richtung zwischen 'endlich' und 'unendlich' (=parallel) " "umschalten" #. gint preset_index = ege_select_one_action_get_active( sel ); -#: ../src/widgets/calligraphy-toolbar.cpp:239 -#: ../src/widgets/calligraphy-toolbar.cpp:283 -#: ../src/widgets/calligraphy-toolbar.cpp:288 +#: ../src/widgets/calligraphy-toolbar.cpp:235 +#: ../src/widgets/calligraphy-toolbar.cpp:279 +#: ../src/widgets/calligraphy-toolbar.cpp:284 msgid "No preset" msgstr "Keine Vorlage" #. Width -#: ../src/widgets/calligraphy-toolbar.cpp:448 -#: ../src/widgets/erasor-toolbar.cpp:146 +#: ../src/widgets/calligraphy-toolbar.cpp:444 +#: ../src/widgets/eraser-toolbar.cpp:142 msgid "(hairline)" msgstr "(Haarline)" #. Mean #. Rotation #. Scale -#: ../src/widgets/calligraphy-toolbar.cpp:448 -#: ../src/widgets/calligraphy-toolbar.cpp:481 -#: ../src/widgets/erasor-toolbar.cpp:146 ../src/widgets/pencil-toolbar.cpp:303 -#: ../src/widgets/spray-toolbar.cpp:129 ../src/widgets/spray-toolbar.cpp:145 -#: ../src/widgets/spray-toolbar.cpp:161 ../src/widgets/spray-toolbar.cpp:221 -#: ../src/widgets/spray-toolbar.cpp:251 ../src/widgets/spray-toolbar.cpp:269 -#: ../src/widgets/tweak-toolbar.cpp:143 ../src/widgets/tweak-toolbar.cpp:160 -#: ../src/widgets/tweak-toolbar.cpp:368 +#: ../src/widgets/calligraphy-toolbar.cpp:444 +#: ../src/widgets/calligraphy-toolbar.cpp:477 +#: ../src/widgets/eraser-toolbar.cpp:142 ../src/widgets/pencil-toolbar.cpp:298 +#: ../src/widgets/spray-toolbar.cpp:125 ../src/widgets/spray-toolbar.cpp:141 +#: ../src/widgets/spray-toolbar.cpp:157 ../src/widgets/spray-toolbar.cpp:217 +#: ../src/widgets/spray-toolbar.cpp:247 ../src/widgets/spray-toolbar.cpp:265 +#: ../src/widgets/tweak-toolbar.cpp:139 ../src/widgets/tweak-toolbar.cpp:156 +#: ../src/widgets/tweak-toolbar.cpp:364 msgid "(default)" msgstr "(Vorgabe)" -#: ../src/widgets/calligraphy-toolbar.cpp:448 -#: ../src/widgets/erasor-toolbar.cpp:146 +#: ../src/widgets/calligraphy-toolbar.cpp:444 +#: ../src/widgets/eraser-toolbar.cpp:142 msgid "(broad stroke)" msgstr "(breiter Strich)" -#: ../src/widgets/calligraphy-toolbar.cpp:451 -#: ../src/widgets/erasor-toolbar.cpp:149 +#: ../src/widgets/calligraphy-toolbar.cpp:447 +#: ../src/widgets/eraser-toolbar.cpp:145 msgid "Pen Width" msgstr "Stiftbreite" -#: ../src/widgets/calligraphy-toolbar.cpp:452 +#: ../src/widgets/calligraphy-toolbar.cpp:448 msgid "The width of the calligraphic pen (relative to the visible canvas area)" msgstr "" "Breite des kalligrafischen Füllers (relativ zum sichtbaren " "Dokumentausschnitt)" #. Thinning -#: ../src/widgets/calligraphy-toolbar.cpp:465 +#: ../src/widgets/calligraphy-toolbar.cpp:461 msgid "(speed blows up stroke)" msgstr "(Geschwindigkeit verdickt Strich)" -#: ../src/widgets/calligraphy-toolbar.cpp:465 +#: ../src/widgets/calligraphy-toolbar.cpp:461 msgid "(slight widening)" msgstr "(schwache Verdickung)" -#: ../src/widgets/calligraphy-toolbar.cpp:465 +#: ../src/widgets/calligraphy-toolbar.cpp:461 msgid "(constant width)" msgstr "(konstante Breite)" -#: ../src/widgets/calligraphy-toolbar.cpp:465 +#: ../src/widgets/calligraphy-toolbar.cpp:461 msgid "(slight thinning, default)" msgstr "(schwache Ausdünnung, Vorgabe)" -#: ../src/widgets/calligraphy-toolbar.cpp:465 +#: ../src/widgets/calligraphy-toolbar.cpp:461 msgid "(speed deflates stroke)" msgstr "(Geschwindigkeit dünnt Strich aus)" -#: ../src/widgets/calligraphy-toolbar.cpp:468 +#: ../src/widgets/calligraphy-toolbar.cpp:464 msgid "Stroke Thinning" msgstr "Strichstärke verringern" -#: ../src/widgets/calligraphy-toolbar.cpp:468 +#: ../src/widgets/calligraphy-toolbar.cpp:464 msgid "Thinning:" msgstr "Ausdünnung:" -#: ../src/widgets/calligraphy-toolbar.cpp:469 +#: ../src/widgets/calligraphy-toolbar.cpp:465 msgid "" "How much velocity thins the stroke (> 0 makes fast strokes thinner, < 0 " "makes them broader, 0 makes width independent of velocity)" @@ -24724,28 +24671,28 @@ msgstr "" "Strichzüge dünner, < 0 breiter, 0 unabhängig von der Geschwindigkeit)" #. Angle -#: ../src/widgets/calligraphy-toolbar.cpp:481 +#: ../src/widgets/calligraphy-toolbar.cpp:477 msgid "(left edge up)" msgstr "(linke Kante oben)" -#: ../src/widgets/calligraphy-toolbar.cpp:481 +#: ../src/widgets/calligraphy-toolbar.cpp:477 msgid "(horizontal)" msgstr "(horizontal)" -#: ../src/widgets/calligraphy-toolbar.cpp:481 +#: ../src/widgets/calligraphy-toolbar.cpp:477 msgid "(right edge up)" msgstr "(rechte Kante oben)" -#: ../src/widgets/calligraphy-toolbar.cpp:484 +#: ../src/widgets/calligraphy-toolbar.cpp:480 msgid "Pen Angle" msgstr "Stiftwinkel" -#: ../src/widgets/calligraphy-toolbar.cpp:484 +#: ../src/widgets/calligraphy-toolbar.cpp:480 #: ../share/extensions/motion.inx.h:3 ../share/extensions/restack.inx.h:10 msgid "Angle:" msgstr "Winkel:" -#: ../src/widgets/calligraphy-toolbar.cpp:485 +#: ../src/widgets/calligraphy-toolbar.cpp:481 msgid "" "The angle of the pen's nib (in degrees; 0 = horizontal; has no effect if " "fixation = 0)" @@ -24754,27 +24701,27 @@ msgstr "" "Fixierung: 0)" #. Fixation -#: ../src/widgets/calligraphy-toolbar.cpp:499 +#: ../src/widgets/calligraphy-toolbar.cpp:495 msgid "(perpendicular to stroke, \"brush\")" msgstr "(senkrecht zum Strich, \"Pinsel\")" -#: ../src/widgets/calligraphy-toolbar.cpp:499 +#: ../src/widgets/calligraphy-toolbar.cpp:495 msgid "(almost fixed, default)" msgstr "(fast fixiert, Vorgabe)" -#: ../src/widgets/calligraphy-toolbar.cpp:499 +#: ../src/widgets/calligraphy-toolbar.cpp:495 msgid "(fixed by Angle, \"pen\")" msgstr "(fixiert mit Winkel, \"Stift\")" -#: ../src/widgets/calligraphy-toolbar.cpp:502 +#: ../src/widgets/calligraphy-toolbar.cpp:498 msgid "Fixation" msgstr "Fixierung" -#: ../src/widgets/calligraphy-toolbar.cpp:502 +#: ../src/widgets/calligraphy-toolbar.cpp:498 msgid "Fixation:" msgstr "Fixierung:" -#: ../src/widgets/calligraphy-toolbar.cpp:503 +#: ../src/widgets/calligraphy-toolbar.cpp:499 msgid "" "Angle behavior (0 = nib always perpendicular to stroke direction, 100 = " "fixed angle)" @@ -24783,32 +24730,32 @@ msgstr "" "Winkel)" #. Cap Rounding -#: ../src/widgets/calligraphy-toolbar.cpp:515 +#: ../src/widgets/calligraphy-toolbar.cpp:511 msgid "(blunt caps, default)" msgstr "(stumpfe Enden, Vorgabe)" -#: ../src/widgets/calligraphy-toolbar.cpp:515 +#: ../src/widgets/calligraphy-toolbar.cpp:511 msgid "(slightly bulging)" msgstr "(leicht wölbend)" -#: ../src/widgets/calligraphy-toolbar.cpp:515 +#: ../src/widgets/calligraphy-toolbar.cpp:511 msgid "(approximately round)" msgstr "(ungefähr rund)" -#: ../src/widgets/calligraphy-toolbar.cpp:515 +#: ../src/widgets/calligraphy-toolbar.cpp:511 msgid "(long protruding caps)" msgstr "(lange hervorstehende Enden)" -#: ../src/widgets/calligraphy-toolbar.cpp:519 +#: ../src/widgets/calligraphy-toolbar.cpp:515 msgid "Cap rounding" msgstr "Spitzen abrunden" -#: ../src/widgets/calligraphy-toolbar.cpp:519 +#: ../src/widgets/calligraphy-toolbar.cpp:515 msgid "Caps:" msgstr "Linienenden:" # !!! check -#: ../src/widgets/calligraphy-toolbar.cpp:520 +#: ../src/widgets/calligraphy-toolbar.cpp:516 msgid "" "Increase to make caps at the ends of strokes protrude more (0 = no caps, 1 = " "round caps)" @@ -24817,94 +24764,94 @@ msgstr "" "Abschluss, 1 = runder Abschluss)" #. Tremor -#: ../src/widgets/calligraphy-toolbar.cpp:532 +#: ../src/widgets/calligraphy-toolbar.cpp:528 msgid "(smooth line)" msgstr "(glatte Linie)" -#: ../src/widgets/calligraphy-toolbar.cpp:532 +#: ../src/widgets/calligraphy-toolbar.cpp:528 msgid "(slight tremor)" msgstr "(leichtes Zittern)" -#: ../src/widgets/calligraphy-toolbar.cpp:532 +#: ../src/widgets/calligraphy-toolbar.cpp:528 msgid "(noticeable tremor)" msgstr "(deutliches Zittern)" -#: ../src/widgets/calligraphy-toolbar.cpp:532 +#: ../src/widgets/calligraphy-toolbar.cpp:528 msgid "(maximum tremor)" msgstr "(maximales Zittern)" -#: ../src/widgets/calligraphy-toolbar.cpp:535 +#: ../src/widgets/calligraphy-toolbar.cpp:531 msgid "Stroke Tremor" msgstr "Zittern der Linie" -#: ../src/widgets/calligraphy-toolbar.cpp:535 +#: ../src/widgets/calligraphy-toolbar.cpp:531 msgid "Tremor:" msgstr "Zittern:" -#: ../src/widgets/calligraphy-toolbar.cpp:536 +#: ../src/widgets/calligraphy-toolbar.cpp:532 msgid "Increase to make strokes rugged and trembling" msgstr "Erhöhen, um Striche zittrig und ausgefranst zu machen" #. Wiggle -#: ../src/widgets/calligraphy-toolbar.cpp:550 +#: ../src/widgets/calligraphy-toolbar.cpp:546 msgid "(no wiggle)" msgstr "(kein Wackeln)" -#: ../src/widgets/calligraphy-toolbar.cpp:550 +#: ../src/widgets/calligraphy-toolbar.cpp:546 msgid "(slight deviation)" msgstr "(leichte Abweichung)" -#: ../src/widgets/calligraphy-toolbar.cpp:550 +#: ../src/widgets/calligraphy-toolbar.cpp:546 msgid "(wild waves and curls)" msgstr "(wilde Wellen und Kringel)" -#: ../src/widgets/calligraphy-toolbar.cpp:553 +#: ../src/widgets/calligraphy-toolbar.cpp:549 msgid "Pen Wiggle" msgstr "Stift Verwackeln:" -#: ../src/widgets/calligraphy-toolbar.cpp:553 +#: ../src/widgets/calligraphy-toolbar.cpp:549 msgid "Wiggle:" msgstr "Wackeln:" -#: ../src/widgets/calligraphy-toolbar.cpp:554 +#: ../src/widgets/calligraphy-toolbar.cpp:550 msgid "Increase to make the pen waver and wiggle" msgstr "Erhöhen, um den Füller wacklig zu machen" #. Mass -#: ../src/widgets/calligraphy-toolbar.cpp:567 +#: ../src/widgets/calligraphy-toolbar.cpp:563 msgid "(no inertia)" msgstr "(keine Trägheit)" -#: ../src/widgets/calligraphy-toolbar.cpp:567 +#: ../src/widgets/calligraphy-toolbar.cpp:563 msgid "(slight smoothing, default)" msgstr "(leichte Glättung, Vorgabe)" -#: ../src/widgets/calligraphy-toolbar.cpp:567 +#: ../src/widgets/calligraphy-toolbar.cpp:563 msgid "(noticeable lagging)" msgstr "(deutliches Hinterherschleppen)" -#: ../src/widgets/calligraphy-toolbar.cpp:567 +#: ../src/widgets/calligraphy-toolbar.cpp:563 msgid "(maximum inertia)" msgstr "(maximale Trägheit)" -#: ../src/widgets/calligraphy-toolbar.cpp:570 +#: ../src/widgets/calligraphy-toolbar.cpp:566 msgid "Pen Mass" msgstr "Stiftmasse:" -#: ../src/widgets/calligraphy-toolbar.cpp:570 +#: ../src/widgets/calligraphy-toolbar.cpp:566 msgid "Mass:" msgstr "Masse:" -#: ../src/widgets/calligraphy-toolbar.cpp:571 +#: ../src/widgets/calligraphy-toolbar.cpp:567 msgid "Increase to make the pen drag behind, as if slowed by inertia" msgstr "Erhöhen, um den Füller nachzuschleppen, wie durch Trägheit verlangsamt" # !!! -#: ../src/widgets/calligraphy-toolbar.cpp:586 +#: ../src/widgets/calligraphy-toolbar.cpp:582 msgid "Trace Background" msgstr "Hintergrund verfolgen" -#: ../src/widgets/calligraphy-toolbar.cpp:587 +#: ../src/widgets/calligraphy-toolbar.cpp:583 msgid "" "Trace the lightness of the background by the width of the pen (white - " "minimum width, black - maximum width)" @@ -24912,116 +24859,116 @@ msgstr "" "Der Helligkeit des Hintergrunds mit der Breite des Stifts folgen (weiß - " "minimale Breite, schwarz - maximale Breite)" -#: ../src/widgets/calligraphy-toolbar.cpp:600 +#: ../src/widgets/calligraphy-toolbar.cpp:596 msgid "Use the pressure of the input device to alter the width of the pen" msgstr "" "Druckempfindlichkeit des Eingabegeräts benutzen, um die Strichbreite des " "Füllers zu beeinflussen" -#: ../src/widgets/calligraphy-toolbar.cpp:612 +#: ../src/widgets/calligraphy-toolbar.cpp:608 msgid "Tilt" msgstr "Neigung" -#: ../src/widgets/calligraphy-toolbar.cpp:613 +#: ../src/widgets/calligraphy-toolbar.cpp:609 msgid "Use the tilt of the input device to alter the angle of the pen's nib" msgstr "" "Neigungsempfindlichkeit des Eingabegeräts benutzen, um den Winkel der " "Füllerspitze zu beeinflussen" -#: ../src/widgets/calligraphy-toolbar.cpp:628 +#: ../src/widgets/calligraphy-toolbar.cpp:624 msgid "Choose a preset" msgstr "Wählen Sie eine Vorlage" -#: ../src/widgets/calligraphy-toolbar.cpp:643 +#: ../src/widgets/calligraphy-toolbar.cpp:639 msgid "Add/Edit Profile" msgstr "Profil hinzufügen oder editieren" -#: ../src/widgets/calligraphy-toolbar.cpp:644 +#: ../src/widgets/calligraphy-toolbar.cpp:640 msgid "Add or edit calligraphic profile" msgstr "Kalligrafisches Profil hinzufügen oder editieren" -#: ../src/widgets/connector-toolbar.cpp:136 +#: ../src/widgets/connector-toolbar.cpp:132 msgid "Set connector type: orthogonal" msgstr "Setzn den Verbindertyps: Winkelrecht" -#: ../src/widgets/connector-toolbar.cpp:136 +#: ../src/widgets/connector-toolbar.cpp:132 msgid "Set connector type: polyline" msgstr "Setzn den Verbindertyps: Polylinie" -#: ../src/widgets/connector-toolbar.cpp:185 +#: ../src/widgets/connector-toolbar.cpp:181 msgid "Change connector curvature" msgstr "Krümmung der Objektverbinder ändern" -#: ../src/widgets/connector-toolbar.cpp:236 +#: ../src/widgets/connector-toolbar.cpp:232 msgid "Change connector spacing" msgstr "Abstand der Objektverbinder ändern" -#: ../src/widgets/connector-toolbar.cpp:329 +#: ../src/widgets/connector-toolbar.cpp:325 msgid "Avoid" msgstr "Ausweichen" # CHECK -#: ../src/widgets/connector-toolbar.cpp:339 +#: ../src/widgets/connector-toolbar.cpp:335 msgid "Ignore" msgstr "Ignorieren" -#: ../src/widgets/connector-toolbar.cpp:350 +#: ../src/widgets/connector-toolbar.cpp:346 msgid "Orthogonal" msgstr "Orthogonal" -#: ../src/widgets/connector-toolbar.cpp:351 +#: ../src/widgets/connector-toolbar.cpp:347 msgid "Make connector orthogonal or polyline" msgstr "Erstelle den Verbinder winkelrecht oder als Polylinie" -#: ../src/widgets/connector-toolbar.cpp:365 +#: ../src/widgets/connector-toolbar.cpp:361 msgid "Connector Curvature" msgstr "Krümmung der Objektverbinder" -#: ../src/widgets/connector-toolbar.cpp:365 +#: ../src/widgets/connector-toolbar.cpp:361 msgid "Curvature:" msgstr "Krümmung" -#: ../src/widgets/connector-toolbar.cpp:366 +#: ../src/widgets/connector-toolbar.cpp:362 msgid "The amount of connectors curvature" msgstr "Der Krümmungswert der Verbindungslinie" -#: ../src/widgets/connector-toolbar.cpp:376 +#: ../src/widgets/connector-toolbar.cpp:372 msgid "Connector Spacing" msgstr "Verbinderabstand" -#: ../src/widgets/connector-toolbar.cpp:376 +#: ../src/widgets/connector-toolbar.cpp:372 msgid "Spacing:" msgstr "Abstand:" -#: ../src/widgets/connector-toolbar.cpp:377 +#: ../src/widgets/connector-toolbar.cpp:373 msgid "The amount of space left around objects by auto-routing connectors" msgstr "Platz, der von den Objektverbindern um Objekte herum gelassen wird" -#: ../src/widgets/connector-toolbar.cpp:388 +#: ../src/widgets/connector-toolbar.cpp:384 msgid "Graph" msgstr "Graph" -#: ../src/widgets/connector-toolbar.cpp:398 +#: ../src/widgets/connector-toolbar.cpp:394 msgid "Connector Length" msgstr "Verbinderlänge" -#: ../src/widgets/connector-toolbar.cpp:398 +#: ../src/widgets/connector-toolbar.cpp:394 msgid "Length:" msgstr "Länge:" -#: ../src/widgets/connector-toolbar.cpp:399 +#: ../src/widgets/connector-toolbar.cpp:395 msgid "Ideal length for connectors when layout is applied" msgstr "Ideale Länge für Objektverbinder wenn das Layout angewendet wird" -#: ../src/widgets/connector-toolbar.cpp:411 +#: ../src/widgets/connector-toolbar.cpp:407 msgid "Downwards" msgstr "Nach unten" -#: ../src/widgets/connector-toolbar.cpp:412 +#: ../src/widgets/connector-toolbar.cpp:408 msgid "Make connectors with end-markers (arrows) point downwards" msgstr "Objektverbinder mit Endemarkierungen (Pfeilen) zeigen nach unten" -#: ../src/widgets/connector-toolbar.cpp:428 +#: ../src/widgets/connector-toolbar.cpp:424 msgid "Do not allow overlapping shapes" msgstr "Keine überlappenden Formen erlauben" @@ -25033,20 +24980,20 @@ msgstr "Muster der Strichlinien" msgid "Pattern offset" msgstr "Versatz des Musters" -#: ../src/widgets/desktop-widget.cpp:461 +#: ../src/widgets/desktop-widget.cpp:465 msgid "Zoom drawing if window size changes" msgstr "Zeichnungsgröße mit Fenstergröße verändern" -#: ../src/widgets/desktop-widget.cpp:665 +#: ../src/widgets/desktop-widget.cpp:669 msgid "Cursor coordinates" msgstr "Zeigerkoordinaten" -#: ../src/widgets/desktop-widget.cpp:691 +#: ../src/widgets/desktop-widget.cpp:695 msgid "Z:" msgstr "Z:" #. display the initial welcome message in the statusbar -#: ../src/widgets/desktop-widget.cpp:734 +#: ../src/widgets/desktop-widget.cpp:738 msgid "" "Welcome to Inkscape! Use shape or freehand tools to create objects; " "use selector (arrow) to move or transform them." @@ -25054,71 +25001,71 @@ msgstr "" "Willkommen zu Inkscape! Formen- und Freihandwerkzeuge erstellen " "Objekte; das Auswahlwerkzeug (Pfeil) verschiebt und bearbeitet." -#: ../src/widgets/desktop-widget.cpp:828 +#: ../src/widgets/desktop-widget.cpp:832 msgid "grayscale" msgstr "Graustufen" -#: ../src/widgets/desktop-widget.cpp:829 +#: ../src/widgets/desktop-widget.cpp:833 msgid ", grayscale" msgstr ", Graustufen" -#: ../src/widgets/desktop-widget.cpp:830 +#: ../src/widgets/desktop-widget.cpp:834 msgid "print colors preview" msgstr "_Druckfarben-Vorschau" -#: ../src/widgets/desktop-widget.cpp:831 +#: ../src/widgets/desktop-widget.cpp:835 msgid ", print colors preview" msgstr ", Druckfarben-Vorschau" -#: ../src/widgets/desktop-widget.cpp:832 +#: ../src/widgets/desktop-widget.cpp:836 msgid "outline" msgstr "Umriss" -#: ../src/widgets/desktop-widget.cpp:833 +#: ../src/widgets/desktop-widget.cpp:837 msgid "no filters" msgstr "Keine _Filter" -#: ../src/widgets/desktop-widget.cpp:860 +#: ../src/widgets/desktop-widget.cpp:864 #, c-format msgid "%s%s: %d (%s%s) - Inkscape" msgstr "%s%s: %d (%s%s) - Inkscape" -#: ../src/widgets/desktop-widget.cpp:862 ../src/widgets/desktop-widget.cpp:866 +#: ../src/widgets/desktop-widget.cpp:866 ../src/widgets/desktop-widget.cpp:870 #, c-format msgid "%s%s: %d (%s) - Inkscape" msgstr "%s%s: %d (%s) - Inkscape" -#: ../src/widgets/desktop-widget.cpp:868 +#: ../src/widgets/desktop-widget.cpp:872 #, c-format msgid "%s%s: %d - Inkscape" msgstr "%s%s: %d - Inkscape" -#: ../src/widgets/desktop-widget.cpp:874 +#: ../src/widgets/desktop-widget.cpp:878 #, c-format msgid "%s%s (%s%s) - Inkscape" msgstr "%s%s (%s%s) - Inkscape" -#: ../src/widgets/desktop-widget.cpp:876 ../src/widgets/desktop-widget.cpp:880 +#: ../src/widgets/desktop-widget.cpp:880 ../src/widgets/desktop-widget.cpp:884 #, c-format msgid "%s%s (%s) - Inkscape" msgstr "%s%s (%s) - Inkscape" -#: ../src/widgets/desktop-widget.cpp:882 +#: ../src/widgets/desktop-widget.cpp:886 #, c-format msgid "%s%s - Inkscape" msgstr "%s%s - Inkscape" # ??? -#: ../src/widgets/desktop-widget.cpp:1051 +#: ../src/widgets/desktop-widget.cpp:1055 msgid "Color-managed display is enabled in this window" msgstr "Farbverwaltungsansicht ist in diesem Fenster eingeschaltet" # ??? -#: ../src/widgets/desktop-widget.cpp:1053 +#: ../src/widgets/desktop-widget.cpp:1057 msgid "Color-managed display is disabled in this window" msgstr "Farbverwaltungsansicht ist in diesem Fenster ausgeschaltet" -#: ../src/widgets/desktop-widget.cpp:1108 +#: ../src/widgets/desktop-widget.cpp:1112 #, c-format msgid "" "Save changes to document \"%s\" before " @@ -25131,12 +25078,12 @@ msgstr "" "\n" "Wenn Sie schließen, ohne zu speichern, dann gehen Ihre Änderungen verloren." -#: ../src/widgets/desktop-widget.cpp:1118 -#: ../src/widgets/desktop-widget.cpp:1177 +#: ../src/widgets/desktop-widget.cpp:1122 +#: ../src/widgets/desktop-widget.cpp:1181 msgid "Close _without saving" msgstr "Schließen, _ohne zu speichern" -#: ../src/widgets/desktop-widget.cpp:1167 +#: ../src/widgets/desktop-widget.cpp:1171 #, c-format msgid "" "The file \"%s\" was saved with a " @@ -25149,20 +25096,20 @@ msgstr "" "\n" "Möchten Sie das Dokument als ein Inkscape SVG speichern?" -#: ../src/widgets/desktop-widget.cpp:1179 +#: ../src/widgets/desktop-widget.cpp:1183 msgid "_Save as Inkscape SVG" msgstr "Als Inkscape-_SVG speichern" # CHECK -#: ../src/widgets/desktop-widget.cpp:1389 +#: ../src/widgets/desktop-widget.cpp:1393 msgid "Note:" msgstr "Hinweis:" -#: ../src/widgets/dropper-toolbar.cpp:118 +#: ../src/widgets/dropper-toolbar.cpp:114 msgid "Pick opacity" msgstr "Wähle Deckkraft" -#: ../src/widgets/dropper-toolbar.cpp:119 +#: ../src/widgets/dropper-toolbar.cpp:115 msgid "" "Pick both the color and the alpha (transparency) under cursor; otherwise, " "pick only the visible color premultiplied by alpha" @@ -25170,22 +25117,22 @@ msgstr "" "Farbe und Transparenz unter dem Cursor übernehmen; ansonsten nur die " "sichtbare Farbe mit dem Transparenzwert vormultipliziert übernehmen" -#: ../src/widgets/dropper-toolbar.cpp:122 +#: ../src/widgets/dropper-toolbar.cpp:118 msgid "Pick" msgstr "Aufnehmen" -#: ../src/widgets/dropper-toolbar.cpp:131 +#: ../src/widgets/dropper-toolbar.cpp:127 msgid "Assign opacity" msgstr "Transparenz festlegen" -#: ../src/widgets/dropper-toolbar.cpp:132 +#: ../src/widgets/dropper-toolbar.cpp:128 msgid "" "If alpha was picked, assign it to selection as fill or stroke transparency" msgstr "" "Wenn Transparenz übernommenen wurde, diese als Füllung oder Kontur der " "Auswahl anwenden." -#: ../src/widgets/dropper-toolbar.cpp:135 +#: ../src/widgets/dropper-toolbar.cpp:131 msgid "Assign" msgstr "Zuweisen" @@ -25193,19 +25140,19 @@ msgstr "Zuweisen" msgid "remove" msgstr "entfernen" -#: ../src/widgets/erasor-toolbar.cpp:115 +#: ../src/widgets/eraser-toolbar.cpp:111 msgid "Delete objects touched by the eraser" msgstr "Lösche Objekte, die vom Radierer berührt werden." -#: ../src/widgets/erasor-toolbar.cpp:121 +#: ../src/widgets/eraser-toolbar.cpp:117 msgid "Cut" msgstr "A_usschneiden" -#: ../src/widgets/erasor-toolbar.cpp:122 +#: ../src/widgets/eraser-toolbar.cpp:118 msgid "Cut out from objects" msgstr "Aus Objekt herausschneiden" -#: ../src/widgets/erasor-toolbar.cpp:150 +#: ../src/widgets/eraser-toolbar.cpp:146 msgid "The width of the eraser pen (relative to the visible canvas area)" msgstr "Die Größe des Radiers (relativ zum sichtbaren Dokumentausschnitt)" @@ -25237,40 +25184,40 @@ msgstr "Muster für die Füllung setzen" msgid "Set pattern on stroke" msgstr "Muster für die Kontur setzen" -#: ../src/widgets/font-selector.cpp:135 ../src/widgets/text-toolbar.cpp:966 -#: ../src/widgets/text-toolbar.cpp:1284 +#: ../src/widgets/font-selector.cpp:134 ../src/widgets/text-toolbar.cpp:962 +#: ../src/widgets/text-toolbar.cpp:1275 msgid "Font size" msgstr "Schriftgröße:" #. Family frame -#: ../src/widgets/font-selector.cpp:149 +#: ../src/widgets/font-selector.cpp:148 msgid "Font family" msgstr "Schriftfamilie" #. Style frame -#: ../src/widgets/font-selector.cpp:192 +#: ../src/widgets/font-selector.cpp:191 msgctxt "Font selector" msgid "Style" msgstr "Stil" -#: ../src/widgets/font-selector.cpp:243 ../share/extensions/dots.inx.h:3 +#: ../src/widgets/font-selector.cpp:242 ../share/extensions/dots.inx.h:3 msgid "Font size:" msgstr "Schriftgröße:" -#: ../src/widgets/gradient-selector.cpp:207 +#: ../src/widgets/gradient-selector.cpp:208 msgid "Create a duplicate gradient" msgstr "Duplikat-Farbverlauf erstellen" -#: ../src/widgets/gradient-selector.cpp:217 +#: ../src/widgets/gradient-selector.cpp:218 msgid "Edit gradient" msgstr "Farbverlauf bearbeiten" -#: ../src/widgets/gradient-selector.cpp:288 +#: ../src/widgets/gradient-selector.cpp:289 #: ../src/widgets/paint-selector.cpp:244 msgid "Swatch" msgstr "Farbmuster" -#: ../src/widgets/gradient-selector.cpp:338 +#: ../src/widgets/gradient-selector.cpp:339 msgid "Rename gradient" msgstr "Farbverlauf umbenennen" @@ -25441,6 +25388,7 @@ msgstr "Verknüpfe Farbverläufe, um alle verbundenen Farbverläufe zu ändern" #: ../src/widgets/gradient-vector.cpp:332 #: ../src/widgets/paint-selector.cpp:922 +#: ../src/widgets/stroke-marker-selector.cpp:154 msgid "No document selected" msgstr "Kein Dokument gewählt" @@ -25478,43 +25426,43 @@ msgstr "Farbverlaufs-Editor" msgid "Change gradient stop color" msgstr "Zwischenfarbe des Farbverlaufs ändern" -#: ../src/widgets/lpe-toolbar.cpp:249 +#: ../src/widgets/lpe-toolbar.cpp:252 msgid "Closed" msgstr "Geschlossen" -#: ../src/widgets/lpe-toolbar.cpp:251 +#: ../src/widgets/lpe-toolbar.cpp:254 msgid "Open start" msgstr "Offener Anfang" -#: ../src/widgets/lpe-toolbar.cpp:253 +#: ../src/widgets/lpe-toolbar.cpp:256 msgid "Open end" msgstr "Offenes Ende" -#: ../src/widgets/lpe-toolbar.cpp:255 +#: ../src/widgets/lpe-toolbar.cpp:258 msgid "Open both" msgstr "Öffne beide" -#: ../src/widgets/lpe-toolbar.cpp:314 +#: ../src/widgets/lpe-toolbar.cpp:317 msgid "All inactive" msgstr "Alles inaktiv" -#: ../src/widgets/lpe-toolbar.cpp:315 +#: ../src/widgets/lpe-toolbar.cpp:318 msgid "No geometric tool is active" msgstr "Es ist kein geometrisches Werkzeug aktiv" -#: ../src/widgets/lpe-toolbar.cpp:348 +#: ../src/widgets/lpe-toolbar.cpp:351 msgid "Show limiting bounding box" msgstr "Zeige Begrenzungsrahmen" -#: ../src/widgets/lpe-toolbar.cpp:349 +#: ../src/widgets/lpe-toolbar.cpp:352 msgid "Show bounding box (used to cut infinite lines)" msgstr "Zeigt Umrandung (wird benutzt, um unendliche Linien zu schneiden)" -#: ../src/widgets/lpe-toolbar.cpp:360 +#: ../src/widgets/lpe-toolbar.cpp:363 msgid "Get limiting bounding box from selection" msgstr "Begrenzungsrahmen aus Auswahl ermitteln" -#: ../src/widgets/lpe-toolbar.cpp:361 +#: ../src/widgets/lpe-toolbar.cpp:364 msgid "" "Set limiting bounding box (used to cut infinite lines) to the bounding box " "of current selection" @@ -25522,40 +25470,47 @@ msgstr "" "Begrenzungsrahmen (beschneidet unendliche Linien) gleich demjenigen der " "Auswahl" -#: ../src/widgets/lpe-toolbar.cpp:373 +#: ../src/widgets/lpe-toolbar.cpp:376 msgid "Choose a line segment type" msgstr "Segmenttyp wählen" -#: ../src/widgets/lpe-toolbar.cpp:389 +#: ../src/widgets/lpe-toolbar.cpp:392 msgid "Display measuring info" msgstr "Messwert anzeigen" -#: ../src/widgets/lpe-toolbar.cpp:390 +#: ../src/widgets/lpe-toolbar.cpp:393 msgid "Display measuring info for selected items" msgstr "Messwert aür ausgewählte Objekte anzeigen" -#: ../src/widgets/lpe-toolbar.cpp:410 +#. Add the units menu. +#: ../src/widgets/lpe-toolbar.cpp:403 ../src/widgets/node-toolbar.cpp:625 +#: ../src/widgets/paintbucket-toolbar.cpp:186 +#: ../src/widgets/rect-toolbar.cpp:378 ../src/widgets/select-toolbar.cpp:542 +msgid "Units" +msgstr "Einheiten" + +#: ../src/widgets/lpe-toolbar.cpp:413 msgid "Open LPE dialog" msgstr "LPE Dialog öffnen" -#: ../src/widgets/lpe-toolbar.cpp:411 +#: ../src/widgets/lpe-toolbar.cpp:414 msgid "Open LPE dialog (to adapt parameters numerically)" msgstr "Öffnet den LPE-Dialog (erlaubt Anpassung der Parameterwerte)" -#: ../src/widgets/measure-toolbar.cpp:102 ../src/widgets/text-toolbar.cpp:1287 +#: ../src/widgets/measure-toolbar.cpp:103 ../src/widgets/text-toolbar.cpp:1278 msgid "Font Size" msgstr "Schriftgröße" -#: ../src/widgets/measure-toolbar.cpp:102 +#: ../src/widgets/measure-toolbar.cpp:103 msgid "Font Size:" msgstr "Schriftgröße" -#: ../src/widgets/measure-toolbar.cpp:103 +#: ../src/widgets/measure-toolbar.cpp:104 msgid "The font size to be used in the measurement labels" msgstr "Die Schriftgröße, die für die Messungen verwendet werden" -#: ../src/widgets/measure-toolbar.cpp:115 -#: ../src/widgets/measure-toolbar.cpp:123 +#: ../src/widgets/measure-toolbar.cpp:116 +#: ../src/widgets/measure-toolbar.cpp:124 msgid "The units to be used for the measurements" msgstr "Die Einheiten, die für die Messungen verwendet werden" @@ -25576,6 +25531,7 @@ msgid "Create conical gradient" msgstr "Konischen Farbverlauf erzeugen" #: ../src/widgets/mesh-toolbar.cpp:263 +#: ../share/extensions/guides_creator.inx.h:5 msgid "Rows" msgstr "Reihen:" @@ -25588,6 +25544,7 @@ msgid "Number of rows in new mesh" msgstr "Anzahl der Zeilen im neuen Gitter" #: ../src/widgets/mesh-toolbar.cpp:279 +#: ../share/extensions/guides_creator.inx.h:4 msgid "Columns" msgstr "Spalten:" @@ -25615,7 +25572,7 @@ msgstr "Kontur bearbeiten…" msgid "Edit stroke mesh" msgstr "Konturgitter bearbeiten…" -#: ../src/widgets/mesh-toolbar.cpp:317 ../src/widgets/node-toolbar.cpp:530 +#: ../src/widgets/mesh-toolbar.cpp:317 ../src/widgets/node-toolbar.cpp:533 msgid "Show Handles" msgstr "Anfasser zeigen" @@ -25624,196 +25581,196 @@ msgstr "Anfasser zeigen" msgid "Show side and tensor handles" msgstr "Anzeigen der Anfasser" -#: ../src/widgets/node-toolbar.cpp:350 +#: ../src/widgets/node-toolbar.cpp:353 msgid "Insert node" msgstr "Knoten einfügen" -#: ../src/widgets/node-toolbar.cpp:351 +#: ../src/widgets/node-toolbar.cpp:354 msgid "Insert new nodes into selected segments" msgstr "Neue Knoten in den gewählten Segmenten einfügen" -#: ../src/widgets/node-toolbar.cpp:354 +#: ../src/widgets/node-toolbar.cpp:357 msgid "Insert" msgstr "Einfügen" -#: ../src/widgets/node-toolbar.cpp:365 +#: ../src/widgets/node-toolbar.cpp:368 msgid "Insert node at min X" msgstr "Knoten einfügen bei min X" -#: ../src/widgets/node-toolbar.cpp:366 +#: ../src/widgets/node-toolbar.cpp:369 msgid "Insert new nodes at min X into selected segments" msgstr "Neue Knoten bei min X in die gewählten Segmente einfügen" -#: ../src/widgets/node-toolbar.cpp:369 +#: ../src/widgets/node-toolbar.cpp:372 msgid "Insert min X" msgstr "Eingabe min X" -#: ../src/widgets/node-toolbar.cpp:375 +#: ../src/widgets/node-toolbar.cpp:378 msgid "Insert node at max X" msgstr "Knoten einfügen bei max X" -#: ../src/widgets/node-toolbar.cpp:376 +#: ../src/widgets/node-toolbar.cpp:379 msgid "Insert new nodes at max X into selected segments" msgstr "Neue Knoten bei max X in die gewählten Segmente einfügen" -#: ../src/widgets/node-toolbar.cpp:379 +#: ../src/widgets/node-toolbar.cpp:382 msgid "Insert max X" msgstr "Eingabe max X" -#: ../src/widgets/node-toolbar.cpp:385 +#: ../src/widgets/node-toolbar.cpp:388 msgid "Insert node at min Y" msgstr "Knoten einfügen bei min Y" -#: ../src/widgets/node-toolbar.cpp:386 +#: ../src/widgets/node-toolbar.cpp:389 msgid "Insert new nodes at min Y into selected segments" msgstr "Neue Knoten bei min Y in die gewählten Segmente einfügen" -#: ../src/widgets/node-toolbar.cpp:389 +#: ../src/widgets/node-toolbar.cpp:392 msgid "Insert min Y" msgstr "Eingabe min Y" -#: ../src/widgets/node-toolbar.cpp:395 +#: ../src/widgets/node-toolbar.cpp:398 msgid "Insert node at max Y" msgstr "Knoten einfügen bei max Y" -#: ../src/widgets/node-toolbar.cpp:396 +#: ../src/widgets/node-toolbar.cpp:399 msgid "Insert new nodes at max Y into selected segments" msgstr "Neue Knoten bei max Y in die gewählten Segmente einfügen" -#: ../src/widgets/node-toolbar.cpp:399 +#: ../src/widgets/node-toolbar.cpp:402 msgid "Insert max Y" msgstr "Eingabe max Y" -#: ../src/widgets/node-toolbar.cpp:407 +#: ../src/widgets/node-toolbar.cpp:410 msgid "Delete selected nodes" msgstr "Die gewählten Knoten löschen" -#: ../src/widgets/node-toolbar.cpp:418 +#: ../src/widgets/node-toolbar.cpp:421 msgid "Join selected nodes" msgstr "Gewählte Endknoten verbinden" -#: ../src/widgets/node-toolbar.cpp:421 +#: ../src/widgets/node-toolbar.cpp:424 msgid "Join" msgstr "Verbinden" # !!! difference to "split"? -#: ../src/widgets/node-toolbar.cpp:429 +#: ../src/widgets/node-toolbar.cpp:432 msgid "Break path at selected nodes" msgstr "Pfad an den gewählten Knoten auftrennen" -#: ../src/widgets/node-toolbar.cpp:439 +#: ../src/widgets/node-toolbar.cpp:442 msgid "Join with segment" msgstr "Segment verbinden" -#: ../src/widgets/node-toolbar.cpp:440 +#: ../src/widgets/node-toolbar.cpp:443 msgid "Join selected endnodes with a new segment" msgstr "Gewählte Endknoten durch ein neues Segment verbinden" -#: ../src/widgets/node-toolbar.cpp:449 +#: ../src/widgets/node-toolbar.cpp:452 msgid "Delete segment" msgstr "Segment löschen" -#: ../src/widgets/node-toolbar.cpp:450 +#: ../src/widgets/node-toolbar.cpp:453 msgid "Delete segment between two non-endpoint nodes" msgstr "Pfad zwischen zwei Knoten auftrennen" -#: ../src/widgets/node-toolbar.cpp:459 +#: ../src/widgets/node-toolbar.cpp:462 msgid "Node Cusp" msgstr "Knoten eckig" -#: ../src/widgets/node-toolbar.cpp:460 +#: ../src/widgets/node-toolbar.cpp:463 msgid "Make selected nodes corner" msgstr "Die gewählten Knoten in Ecken umwandeln" -#: ../src/widgets/node-toolbar.cpp:469 +#: ../src/widgets/node-toolbar.cpp:472 msgid "Node Smooth" msgstr "Knoten glatt" -#: ../src/widgets/node-toolbar.cpp:470 +#: ../src/widgets/node-toolbar.cpp:473 msgid "Make selected nodes smooth" msgstr "Die gewählten Knoten glätten" -#: ../src/widgets/node-toolbar.cpp:479 +#: ../src/widgets/node-toolbar.cpp:482 msgid "Node Symmetric" msgstr "Knoten symmetrisch" -#: ../src/widgets/node-toolbar.cpp:480 +#: ../src/widgets/node-toolbar.cpp:483 msgid "Make selected nodes symmetric" msgstr "Die gewählten Knoten symmetrisch machen" -#: ../src/widgets/node-toolbar.cpp:489 +#: ../src/widgets/node-toolbar.cpp:492 msgid "Node Auto" msgstr "Knoten automatisch" -#: ../src/widgets/node-toolbar.cpp:490 +#: ../src/widgets/node-toolbar.cpp:493 msgid "Make selected nodes auto-smooth" msgstr "Die gewählten Knoten automatisch abrunden" -#: ../src/widgets/node-toolbar.cpp:499 +#: ../src/widgets/node-toolbar.cpp:502 msgid "Node Line" msgstr "Knoten in Linien" -#: ../src/widgets/node-toolbar.cpp:500 +#: ../src/widgets/node-toolbar.cpp:503 msgid "Make selected segments lines" msgstr "Die gewählten Abschnitte in Linien umwandeln" -#: ../src/widgets/node-toolbar.cpp:509 +#: ../src/widgets/node-toolbar.cpp:512 msgid "Node Curve" msgstr "Knoten in Kurven" -#: ../src/widgets/node-toolbar.cpp:510 +#: ../src/widgets/node-toolbar.cpp:513 msgid "Make selected segments curves" msgstr "Die gewählten Abschnitte in Kurven umwandeln" -#: ../src/widgets/node-toolbar.cpp:519 +#: ../src/widgets/node-toolbar.cpp:522 msgid "Show Transform Handles" msgstr "Anfasser zeigen" -#: ../src/widgets/node-toolbar.cpp:520 +#: ../src/widgets/node-toolbar.cpp:523 msgid "Show transformation handles for selected nodes" msgstr "Zeige Anfasser für gewählte Knoten" -#: ../src/widgets/node-toolbar.cpp:531 +#: ../src/widgets/node-toolbar.cpp:534 msgid "Show Bezier handles of selected nodes" msgstr "Die Bézier-Anfasser von ausgewählten Knoten anzeigen" -#: ../src/widgets/node-toolbar.cpp:541 +#: ../src/widgets/node-toolbar.cpp:544 msgid "Show Outline" msgstr "Umriss zeigen" -#: ../src/widgets/node-toolbar.cpp:542 +#: ../src/widgets/node-toolbar.cpp:545 msgid "Show path outline (without path effects)" msgstr "Zeige Entwurfspfad (ohne Pfadeffekte)" -#: ../src/widgets/node-toolbar.cpp:564 +#: ../src/widgets/node-toolbar.cpp:567 msgid "Edit clipping paths" msgstr "Ausschneidepfad bearbeiten" -#: ../src/widgets/node-toolbar.cpp:565 +#: ../src/widgets/node-toolbar.cpp:568 msgid "Show clipping path(s) of selected object(s)" msgstr "Zeige Bézier-Anfasser für Ausschneidungspfade an ausgewählten Objekten" -#: ../src/widgets/node-toolbar.cpp:575 +#: ../src/widgets/node-toolbar.cpp:578 msgid "Edit masks" msgstr "Maskierung bearbeiten" -#: ../src/widgets/node-toolbar.cpp:576 +#: ../src/widgets/node-toolbar.cpp:579 msgid "Show mask(s) of selected object(s)" msgstr "Zeige Bézier-Anfasser für Maskierungen an ausgewählten Objekten" -#: ../src/widgets/node-toolbar.cpp:590 +#: ../src/widgets/node-toolbar.cpp:593 msgid "X coordinate:" msgstr "X-Koordinate:" -#: ../src/widgets/node-toolbar.cpp:590 +#: ../src/widgets/node-toolbar.cpp:593 msgid "X coordinate of selected node(s)" msgstr "X-Koordinate der Auswahl" -#: ../src/widgets/node-toolbar.cpp:608 +#: ../src/widgets/node-toolbar.cpp:611 msgid "Y coordinate:" msgstr "Y-Koordinate" -#: ../src/widgets/node-toolbar.cpp:608 +#: ../src/widgets/node-toolbar.cpp:611 msgid "Y coordinate of selected node(s)" msgstr "Y-Koordinate der Auswahl" @@ -25837,35 +25794,35 @@ msgstr "" "Der maximal erlaubte Unterschied zwischen dem angeklickten Pixel und den " "benachbarten Pixeln, um noch zur Füllung zu gehören" -#: ../src/widgets/paintbucket-toolbar.cpp:193 +#: ../src/widgets/paintbucket-toolbar.cpp:194 msgid "Grow/shrink by" msgstr "Vergrößern/Verkleinern um:" -#: ../src/widgets/paintbucket-toolbar.cpp:193 +#: ../src/widgets/paintbucket-toolbar.cpp:194 msgid "Grow/shrink by:" msgstr "Vergrößern/Verkleinern um:" -#: ../src/widgets/paintbucket-toolbar.cpp:194 +#: ../src/widgets/paintbucket-toolbar.cpp:195 msgid "" "The amount to grow (positive) or shrink (negative) the created fill path" msgstr "" "Erzeugten Füllungspfad vergrößern (positive) oder verkleinern (negativ)" -#: ../src/widgets/paintbucket-toolbar.cpp:219 +#: ../src/widgets/paintbucket-toolbar.cpp:220 msgid "Close gaps" msgstr "Lücken schließen" -#: ../src/widgets/paintbucket-toolbar.cpp:220 +#: ../src/widgets/paintbucket-toolbar.cpp:221 msgid "Close gaps:" msgstr "Lücken schließen:" -#: ../src/widgets/paintbucket-toolbar.cpp:231 -#: ../src/widgets/pencil-toolbar.cpp:326 ../src/widgets/spiral-toolbar.cpp:304 -#: ../src/widgets/star-toolbar.cpp:576 +#: ../src/widgets/paintbucket-toolbar.cpp:232 +#: ../src/widgets/pencil-toolbar.cpp:321 ../src/widgets/spiral-toolbar.cpp:300 +#: ../src/widgets/star-toolbar.cpp:572 msgid "Defaults" msgstr "Vorgaben" -#: ../src/widgets/paintbucket-toolbar.cpp:232 +#: ../src/widgets/paintbucket-toolbar.cpp:233 msgid "" "Reset paint bucket parameters to defaults (use Inkscape Preferences > Tools " "to change defaults)" @@ -25953,83 +25910,83 @@ msgstr "" msgid "Pattern fill" msgstr "Füllmuster" -#: ../src/widgets/paint-selector.cpp:1164 +#: ../src/widgets/paint-selector.cpp:1162 msgid "Swatch fill" msgstr "Farbmusterfüllung" -#: ../src/widgets/pencil-toolbar.cpp:130 +#: ../src/widgets/pencil-toolbar.cpp:125 msgid "Bezier" msgstr "Bezier" -#: ../src/widgets/pencil-toolbar.cpp:131 +#: ../src/widgets/pencil-toolbar.cpp:126 msgid "Create regular Bezier path" msgstr "Erstelle Bezier Pfad" -#: ../src/widgets/pencil-toolbar.cpp:138 +#: ../src/widgets/pencil-toolbar.cpp:133 msgid "Create Spiro path" msgstr "Erstelle Spiral-Pfad" -#: ../src/widgets/pencil-toolbar.cpp:145 +#: ../src/widgets/pencil-toolbar.cpp:140 msgid "Zigzag" msgstr "Zickzack" -#: ../src/widgets/pencil-toolbar.cpp:146 +#: ../src/widgets/pencil-toolbar.cpp:141 msgid "Create a sequence of straight line segments" msgstr "Erstelle eine Folge von Gerade Liniensegmenten" -#: ../src/widgets/pencil-toolbar.cpp:152 +#: ../src/widgets/pencil-toolbar.cpp:147 msgid "Paraxial" msgstr "achsenparallel" -#: ../src/widgets/pencil-toolbar.cpp:153 +#: ../src/widgets/pencil-toolbar.cpp:148 msgid "Create a sequence of paraxial line segments" msgstr "Erstelle eine Folge von Achsenparallelen Liniensegmenten" -#: ../src/widgets/pencil-toolbar.cpp:161 +#: ../src/widgets/pencil-toolbar.cpp:156 msgid "Mode of new lines drawn by this tool" msgstr "Modus für neue Linie mit diesem Werkzeug" -#: ../src/widgets/pencil-toolbar.cpp:190 +#: ../src/widgets/pencil-toolbar.cpp:185 msgid "Triangle in" msgstr "Dreieck Anfang" -#: ../src/widgets/pencil-toolbar.cpp:191 +#: ../src/widgets/pencil-toolbar.cpp:186 msgid "Triangle out" msgstr "Dreieck Ende" -#: ../src/widgets/pencil-toolbar.cpp:193 +#: ../src/widgets/pencil-toolbar.cpp:188 msgid "From clipboard" msgstr "Aus Zwischenablage" -#: ../src/widgets/pencil-toolbar.cpp:218 ../src/widgets/pencil-toolbar.cpp:219 +#: ../src/widgets/pencil-toolbar.cpp:213 ../src/widgets/pencil-toolbar.cpp:214 msgid "Shape:" msgstr "Form:" -#: ../src/widgets/pencil-toolbar.cpp:218 +#: ../src/widgets/pencil-toolbar.cpp:213 msgid "Shape of new paths drawn by this tool" msgstr "Stil von neuen Pfaden mit diesem Werkzeug" -#: ../src/widgets/pencil-toolbar.cpp:303 +#: ../src/widgets/pencil-toolbar.cpp:298 msgid "(many nodes, rough)" msgstr "(viele Knoten, grob)" -#: ../src/widgets/pencil-toolbar.cpp:303 +#: ../src/widgets/pencil-toolbar.cpp:298 msgid "(few nodes, smooth)" msgstr "(wenige Knoten, weich)" -#: ../src/widgets/pencil-toolbar.cpp:306 +#: ../src/widgets/pencil-toolbar.cpp:301 msgid "Smoothing:" msgstr "Glättung:" -#: ../src/widgets/pencil-toolbar.cpp:306 +#: ../src/widgets/pencil-toolbar.cpp:301 msgid "Smoothing: " msgstr "Glättung:" -#: ../src/widgets/pencil-toolbar.cpp:307 +#: ../src/widgets/pencil-toolbar.cpp:302 msgid "How much smoothing (simplifying) is applied to the line" msgstr "Wie stark die Linie geglättet (vereinfacht) wird" -#: ../src/widgets/pencil-toolbar.cpp:327 +#: ../src/widgets/pencil-toolbar.cpp:322 msgid "" "Reset pencil parameters to defaults (use Inkscape Preferences > Tools to " "change defaults)" @@ -26037,79 +25994,117 @@ msgstr "" "Die Parameter des Stiftes auf Vorgabewerte zurücksetzen (Menü Datei » " "Inkscape-Einstellungen » Werkzeuge, um die Grundeinstellungen zu ändern)" -#: ../src/widgets/rect-toolbar.cpp:128 +#: ../src/widgets/rect-toolbar.cpp:130 msgid "Change rectangle" msgstr "Rechteck ändern" -#: ../src/widgets/rect-toolbar.cpp:315 +#: ../src/widgets/rect-toolbar.cpp:317 msgid "W:" msgstr "W:" -#: ../src/widgets/rect-toolbar.cpp:315 +#: ../src/widgets/rect-toolbar.cpp:317 msgid "Width of rectangle" msgstr "Breite des Rechtecks" -#: ../src/widgets/rect-toolbar.cpp:332 +#: ../src/widgets/rect-toolbar.cpp:334 msgid "H:" msgstr "H:" -#: ../src/widgets/rect-toolbar.cpp:332 +#: ../src/widgets/rect-toolbar.cpp:334 msgid "Height of rectangle" msgstr "Höhe des Rechtecks" -#: ../src/widgets/rect-toolbar.cpp:346 ../src/widgets/rect-toolbar.cpp:361 +#: ../src/widgets/rect-toolbar.cpp:348 ../src/widgets/rect-toolbar.cpp:363 msgid "not rounded" msgstr "Nicht abgerundet" -#: ../src/widgets/rect-toolbar.cpp:349 +#: ../src/widgets/rect-toolbar.cpp:351 msgid "Horizontal radius" msgstr "Horizontaler Radius" -#: ../src/widgets/rect-toolbar.cpp:349 +#: ../src/widgets/rect-toolbar.cpp:351 msgid "Rx:" msgstr "Rx:" -#: ../src/widgets/rect-toolbar.cpp:349 +#: ../src/widgets/rect-toolbar.cpp:351 msgid "Horizontal radius of rounded corners" msgstr "Horizontaler Radius einer abgerundeten Ecke" -#: ../src/widgets/rect-toolbar.cpp:364 +#: ../src/widgets/rect-toolbar.cpp:366 msgid "Vertical radius" msgstr "Vertikaler Radius" -#: ../src/widgets/rect-toolbar.cpp:364 +#: ../src/widgets/rect-toolbar.cpp:366 msgid "Ry:" msgstr "Ry:" -#: ../src/widgets/rect-toolbar.cpp:364 +#: ../src/widgets/rect-toolbar.cpp:366 msgid "Vertical radius of rounded corners" msgstr "Vertikaler Radius einer abgerundeten Ecke" -#: ../src/widgets/rect-toolbar.cpp:383 +#: ../src/widgets/rect-toolbar.cpp:385 msgid "Not rounded" msgstr "Nicht abgerundet" -#: ../src/widgets/rect-toolbar.cpp:384 +#: ../src/widgets/rect-toolbar.cpp:386 msgid "Make corners sharp" msgstr "Spitze Ecken" -#: ../src/widgets/select-toolbar.cpp:263 +#: ../src/widgets/ruler.cpp:192 +#, fuzzy +msgid "The orientation of the ruler" +msgstr "Ausrichtung des anzudockenden Elementes" + +#: ../src/widgets/ruler.cpp:202 +#, fuzzy +msgid "Unit of the ruler" +msgstr "Breite des Musters" + +#: ../src/widgets/ruler.cpp:210 +#, fuzzy +msgid "Lower limit of ruler" +msgstr "Zur nächsten Ebene absenken" + +#: ../src/widgets/ruler.cpp:219 +#, fuzzy +msgid "Upper" +msgstr "Farbpipette" + +#: ../src/widgets/ruler.cpp:220 +msgid "Upper limit of ruler" +msgstr "Oberes Limit des Lineals" + +#: ../src/widgets/ruler.cpp:230 +#, fuzzy +msgid "Position of mark on the ruler" +msgstr "Ort der Icon-Themen" + +#: ../src/widgets/ruler.cpp:239 +#, fuzzy +msgid "Max Size" +msgstr "Größe" + +#: ../src/widgets/ruler.cpp:240 +msgid "Maximum size of the ruler" +msgstr "Maximalgröße des Lineals" + +#: ../src/widgets/select-toolbar.cpp:267 msgid "Transform by toolbar" msgstr "Mittels Werkzeugleiste transformieren" -#: ../src/widgets/select-toolbar.cpp:341 +#: ../src/widgets/select-toolbar.cpp:345 msgid "Now stroke width is scaled when objects are scaled." msgstr "" "Breite der Kontur wird nun skaliert, wenn Objekte skaliert " "werden." -#: ../src/widgets/select-toolbar.cpp:343 +#: ../src/widgets/select-toolbar.cpp:347 msgid "Now stroke width is not scaled when objects are scaled." msgstr "" "Breite der Kontur wird nun nicht skaliert, wenn Objekte " "skaliert werden." -#: ../src/widgets/select-toolbar.cpp:354 +#: ../src/widgets/select-toolbar.cpp:358 msgid "" "Now rounded rectangle corners are scaled when rectangles are " "scaled." @@ -26117,7 +26112,7 @@ msgstr "" "Ecken abgerundeter Rechtecke werden nun mitskaliert, wenn " "Objekte skaliert werden." -#: ../src/widgets/select-toolbar.cpp:356 +#: ../src/widgets/select-toolbar.cpp:360 msgid "" "Now rounded rectangle corners are not scaled when rectangles " "are scaled." @@ -26125,7 +26120,7 @@ msgstr "" "Ecken abgerundeter Rechtecke werden nun nicht mitskaliert, " "wenn Objekte skaliert werden." -#: ../src/widgets/select-toolbar.cpp:367 +#: ../src/widgets/select-toolbar.cpp:371 msgid "" "Now gradients are transformed along with their objects when " "those are transformed (moved, scaled, rotated, or skewed)." @@ -26133,7 +26128,7 @@ msgstr "" "Farbverläufe werden nun mit ihren Objekten transformiert, wenn " "diese transformiert werden (bewegt, skaliert, gedreht oder geschert)." -#: ../src/widgets/select-toolbar.cpp:369 +#: ../src/widgets/select-toolbar.cpp:373 msgid "" "Now gradients remain fixed when objects are transformed " "(moved, scaled, rotated, or skewed)." @@ -26141,7 +26136,7 @@ msgstr "" "Farbverläufe bleiben nun unverändert, wenn Objekte " "transformiert werden (bewegt, skaliert, gedreht oder geschert)." -#: ../src/widgets/select-toolbar.cpp:380 +#: ../src/widgets/select-toolbar.cpp:384 msgid "" "Now patterns are transformed along with their objects when " "those are transformed (moved, scaled, rotated, or skewed)." @@ -26149,7 +26144,7 @@ msgstr "" "Muster werden nun mit ihren Objekten transformiert, wenn diese " "transformiert werden (bewegt, skaliert, gedreht oder geschert)." -#: ../src/widgets/select-toolbar.cpp:382 +#: ../src/widgets/select-toolbar.cpp:386 msgid "" "Now patterns remain fixed when objects are transformed (moved, " "scaled, rotated, or skewed)." @@ -26158,167 +26153,167 @@ msgstr "" "werden (bewegt, skaliert, gedreht oder geschert)." #. four spinbuttons -#: ../src/widgets/select-toolbar.cpp:500 +#: ../src/widgets/select-toolbar.cpp:504 msgctxt "Select toolbar" msgid "X position" msgstr "X-Position" -#: ../src/widgets/select-toolbar.cpp:500 +#: ../src/widgets/select-toolbar.cpp:504 msgctxt "Select toolbar" msgid "X:" msgstr "X:" -#: ../src/widgets/select-toolbar.cpp:502 +#: ../src/widgets/select-toolbar.cpp:506 msgid "Horizontal coordinate of selection" msgstr "Horizontale Koordinate der Auswahl" -#: ../src/widgets/select-toolbar.cpp:506 +#: ../src/widgets/select-toolbar.cpp:510 msgctxt "Select toolbar" msgid "Y position" msgstr "Y-Position" -#: ../src/widgets/select-toolbar.cpp:506 +#: ../src/widgets/select-toolbar.cpp:510 msgctxt "Select toolbar" msgid "Y:" msgstr "Y:" -#: ../src/widgets/select-toolbar.cpp:508 +#: ../src/widgets/select-toolbar.cpp:512 msgid "Vertical coordinate of selection" msgstr "Vertikale Koordinate der Auswahl" -#: ../src/widgets/select-toolbar.cpp:512 +#: ../src/widgets/select-toolbar.cpp:516 msgctxt "Select toolbar" msgid "Width" msgstr "Breite" -#: ../src/widgets/select-toolbar.cpp:512 +#: ../src/widgets/select-toolbar.cpp:516 msgctxt "Select toolbar" msgid "W:" msgstr "B:" -#: ../src/widgets/select-toolbar.cpp:514 +#: ../src/widgets/select-toolbar.cpp:518 msgid "Width of selection" msgstr "Breite der Auswahl" -#: ../src/widgets/select-toolbar.cpp:521 +#: ../src/widgets/select-toolbar.cpp:525 msgid "Lock width and height" msgstr "Breite und Höhe sperren" -#: ../src/widgets/select-toolbar.cpp:522 +#: ../src/widgets/select-toolbar.cpp:526 msgid "When locked, change both width and height by the same proportion" msgstr "Wenn gesperrt, dann wird das Höhen- und Breitenverhältnis beibehalten" -#: ../src/widgets/select-toolbar.cpp:531 +#: ../src/widgets/select-toolbar.cpp:535 msgctxt "Select toolbar" msgid "Height" msgstr "Höhe" -#: ../src/widgets/select-toolbar.cpp:531 +#: ../src/widgets/select-toolbar.cpp:535 msgctxt "Select toolbar" msgid "H:" msgstr "H:" -#: ../src/widgets/select-toolbar.cpp:533 +#: ../src/widgets/select-toolbar.cpp:537 msgid "Height of selection" msgstr "Höhe der Auswahl" -#: ../src/widgets/select-toolbar.cpp:583 +#: ../src/widgets/select-toolbar.cpp:587 msgid "Scale rounded corners" msgstr "Abgerundete Ecken mitskalieren" -#: ../src/widgets/select-toolbar.cpp:594 +#: ../src/widgets/select-toolbar.cpp:598 msgid "Move gradients" msgstr "Farbverlaufs-Anfasser verschieben" -#: ../src/widgets/select-toolbar.cpp:605 +#: ../src/widgets/select-toolbar.cpp:609 msgid "Move patterns" msgstr "Muster verschieben" -#: ../src/widgets/spiral-toolbar.cpp:115 +#: ../src/widgets/spiral-toolbar.cpp:111 msgid "Change spiral" msgstr "Spirale ändern" -#: ../src/widgets/spiral-toolbar.cpp:261 +#: ../src/widgets/spiral-toolbar.cpp:257 msgid "just a curve" msgstr "Kurve ziehen" -#: ../src/widgets/spiral-toolbar.cpp:261 +#: ../src/widgets/spiral-toolbar.cpp:257 msgid "one full revolution" msgstr "eine volle Umdrehung" -#: ../src/widgets/spiral-toolbar.cpp:264 +#: ../src/widgets/spiral-toolbar.cpp:260 msgid "Number of turns" msgstr "Anzahl der Drehungen" -#: ../src/widgets/spiral-toolbar.cpp:264 +#: ../src/widgets/spiral-toolbar.cpp:260 msgid "Turns:" msgstr "Umdrehungen:" -#: ../src/widgets/spiral-toolbar.cpp:264 +#: ../src/widgets/spiral-toolbar.cpp:260 msgid "Number of revolutions" msgstr "Anzahl der Umdrehungen" -#: ../src/widgets/spiral-toolbar.cpp:275 +#: ../src/widgets/spiral-toolbar.cpp:271 msgid "circle" msgstr "Kreis" -#: ../src/widgets/spiral-toolbar.cpp:275 +#: ../src/widgets/spiral-toolbar.cpp:271 msgid "edge is much denser" msgstr "Kante ist viel dichter" -#: ../src/widgets/spiral-toolbar.cpp:275 +#: ../src/widgets/spiral-toolbar.cpp:271 msgid "edge is denser" msgstr "Kante ist dichter" -#: ../src/widgets/spiral-toolbar.cpp:275 +#: ../src/widgets/spiral-toolbar.cpp:271 msgid "even" msgstr "eben" -#: ../src/widgets/spiral-toolbar.cpp:275 +#: ../src/widgets/spiral-toolbar.cpp:271 msgid "center is denser" msgstr "Mittelpunkt ist dichter" -#: ../src/widgets/spiral-toolbar.cpp:275 +#: ../src/widgets/spiral-toolbar.cpp:271 msgid "center is much denser" msgstr "Zentrum ist viel dichter" -#: ../src/widgets/spiral-toolbar.cpp:278 +#: ../src/widgets/spiral-toolbar.cpp:274 msgid "Divergence" msgstr "Abweichung" -#: ../src/widgets/spiral-toolbar.cpp:278 +#: ../src/widgets/spiral-toolbar.cpp:274 msgid "Divergence:" msgstr "Abweichung:" -#: ../src/widgets/spiral-toolbar.cpp:278 +#: ../src/widgets/spiral-toolbar.cpp:274 msgid "How much denser/sparser are outer revolutions; 1 = uniform" msgstr "Dichte der äußeren Umdrehungen; 1 = gleichförmig" -#: ../src/widgets/spiral-toolbar.cpp:289 +#: ../src/widgets/spiral-toolbar.cpp:285 msgid "starts from center" msgstr "startet vom Mittelpunkt" -#: ../src/widgets/spiral-toolbar.cpp:289 +#: ../src/widgets/spiral-toolbar.cpp:285 msgid "starts mid-way" msgstr "beginnt mittig" -#: ../src/widgets/spiral-toolbar.cpp:289 +#: ../src/widgets/spiral-toolbar.cpp:285 msgid "starts near edge" msgstr "Startet nahe der Ecke" -#: ../src/widgets/spiral-toolbar.cpp:292 +#: ../src/widgets/spiral-toolbar.cpp:288 msgid "Inner radius" msgstr "Innerer Radius" -#: ../src/widgets/spiral-toolbar.cpp:292 +#: ../src/widgets/spiral-toolbar.cpp:288 msgid "Inner radius:" msgstr "Innerer Radius:" -#: ../src/widgets/spiral-toolbar.cpp:292 +#: ../src/widgets/spiral-toolbar.cpp:288 msgid "Radius of the innermost revolution (relative to the spiral size)" msgstr "Radius der innersten Umdrehung (relativ zur Gesamtgröße der Spirale)" -#: ../src/widgets/spiral-toolbar.cpp:305 ../src/widgets/star-toolbar.cpp:577 +#: ../src/widgets/spiral-toolbar.cpp:301 ../src/widgets/star-toolbar.cpp:573 msgid "" "Reset shape parameters to defaults (use Inkscape Preferences > Tools to " "change defaults)" @@ -26328,114 +26323,114 @@ msgstr "" # (swatches) #. Width -#: ../src/widgets/spray-toolbar.cpp:129 +#: ../src/widgets/spray-toolbar.cpp:125 msgid "(narrow spray)" msgstr "(eng sprühen)" -#: ../src/widgets/spray-toolbar.cpp:129 +#: ../src/widgets/spray-toolbar.cpp:125 msgid "(broad spray)" msgstr "(breit sprühen)" -#: ../src/widgets/spray-toolbar.cpp:132 +#: ../src/widgets/spray-toolbar.cpp:128 msgid "The width of the spray area (relative to the visible canvas area)" msgstr "Breite des Sprühbereichs (relativ zum sichtbaren Dokumentausschnitt)" -#: ../src/widgets/spray-toolbar.cpp:145 +#: ../src/widgets/spray-toolbar.cpp:141 msgid "(maximum mean)" msgstr "(maximales Mittel)" -#: ../src/widgets/spray-toolbar.cpp:148 +#: ../src/widgets/spray-toolbar.cpp:144 msgid "Focus" msgstr "Fokus" -#: ../src/widgets/spray-toolbar.cpp:148 +#: ../src/widgets/spray-toolbar.cpp:144 msgid "Focus:" msgstr "Fokus:" -#: ../src/widgets/spray-toolbar.cpp:148 +#: ../src/widgets/spray-toolbar.cpp:144 msgid "0 to spray a spot; increase to enlarge the ring radius" msgstr "0 um einen Punkt zu sprühen. Erhöhen, um den Ringradius zu erweitern." #. Standard_deviation -#: ../src/widgets/spray-toolbar.cpp:161 +#: ../src/widgets/spray-toolbar.cpp:157 msgid "(minimum scatter)" msgstr "(minimale Streuung)" -#: ../src/widgets/spray-toolbar.cpp:161 +#: ../src/widgets/spray-toolbar.cpp:157 msgid "(maximum scatter)" msgstr "(maximale Streuung)" -#: ../src/widgets/spray-toolbar.cpp:164 +#: ../src/widgets/spray-toolbar.cpp:160 msgctxt "Spray tool" msgid "Scatter" msgstr "Streuung" -#: ../src/widgets/spray-toolbar.cpp:164 +#: ../src/widgets/spray-toolbar.cpp:160 msgctxt "Spray tool" msgid "Scatter:" msgstr "Streuung:" -#: ../src/widgets/spray-toolbar.cpp:164 +#: ../src/widgets/spray-toolbar.cpp:160 msgid "Increase to scatter sprayed objects" msgstr "Vergrößern der Streuung gesprühter Objekte" -#: ../src/widgets/spray-toolbar.cpp:183 +#: ../src/widgets/spray-toolbar.cpp:179 msgid "Spray copies of the initial selection" msgstr "Sprühe Kopien vom zuletzt ausgewählten Objekt" -#: ../src/widgets/spray-toolbar.cpp:190 +#: ../src/widgets/spray-toolbar.cpp:186 msgid "Spray clones of the initial selection" msgstr "Sprühe Klone vom zuletzt ausgewählten Objekt" -#: ../src/widgets/spray-toolbar.cpp:196 +#: ../src/widgets/spray-toolbar.cpp:192 msgid "Spray single path" msgstr "Sprühe einzelnen Pfad" -#: ../src/widgets/spray-toolbar.cpp:197 +#: ../src/widgets/spray-toolbar.cpp:193 msgid "Spray objects in a single path" msgstr "Sprüht Objekte in einen einzelnen Pfad" -#: ../src/widgets/spray-toolbar.cpp:201 ../src/widgets/tweak-toolbar.cpp:271 +#: ../src/widgets/spray-toolbar.cpp:197 ../src/widgets/tweak-toolbar.cpp:267 msgid "Mode" msgstr "Modus" #. Population -#: ../src/widgets/spray-toolbar.cpp:221 +#: ../src/widgets/spray-toolbar.cpp:217 msgid "(low population)" msgstr "(niedrige Population)" -#: ../src/widgets/spray-toolbar.cpp:221 +#: ../src/widgets/spray-toolbar.cpp:217 msgid "(high population)" msgstr "(hoher Zuwachs)" -#: ../src/widgets/spray-toolbar.cpp:224 +#: ../src/widgets/spray-toolbar.cpp:220 msgid "Amount" msgstr "Menge" -#: ../src/widgets/spray-toolbar.cpp:225 +#: ../src/widgets/spray-toolbar.cpp:221 msgid "Adjusts the number of items sprayed per click" msgstr "Anzahl der Objekte festlegen, die per Klick gesprüht werden." -#: ../src/widgets/spray-toolbar.cpp:241 +#: ../src/widgets/spray-toolbar.cpp:237 msgid "" "Use the pressure of the input device to alter the amount of sprayed objects" msgstr "" "Druckempfindlichkeit des Eingabegeräts benutzen, um die Anzahl der zu " "sprühenden Objekte zu beeinflussen" -#: ../src/widgets/spray-toolbar.cpp:251 +#: ../src/widgets/spray-toolbar.cpp:247 msgid "(high rotation variation)" msgstr "(starke Abweichung)" -#: ../src/widgets/spray-toolbar.cpp:254 +#: ../src/widgets/spray-toolbar.cpp:250 msgid "Rotation" msgstr "_Rotation" -#: ../src/widgets/spray-toolbar.cpp:254 +#: ../src/widgets/spray-toolbar.cpp:250 msgid "Rotation:" msgstr "_Rotation" -#: ../src/widgets/spray-toolbar.cpp:256 +#: ../src/widgets/spray-toolbar.cpp:252 #, no-c-format msgid "" "Variation of the rotation of the sprayed objects; 0% for the same rotation " @@ -26444,21 +26439,21 @@ msgstr "" "Variiert die Drehung der zu sprühenden Objekte. 0% bedeutet gleiche Drehung " "wie das Originalobjekt." -#: ../src/widgets/spray-toolbar.cpp:269 +#: ../src/widgets/spray-toolbar.cpp:265 msgid "(high scale variation)" msgstr "(starke Abweichung)" -#: ../src/widgets/spray-toolbar.cpp:272 +#: ../src/widgets/spray-toolbar.cpp:268 msgctxt "Spray tool" msgid "Scale" msgstr "Skalieren" -#: ../src/widgets/spray-toolbar.cpp:272 +#: ../src/widgets/spray-toolbar.cpp:268 msgctxt "Spray tool" msgid "Scale:" msgstr "Skalierung:" -#: ../src/widgets/spray-toolbar.cpp:274 +#: ../src/widgets/spray-toolbar.cpp:270 #, no-c-format msgid "" "Variation in the scale of the sprayed objects; 0% for the same scale than " @@ -26621,181 +26616,181 @@ msgstr "Wert" msgid "Type text in a text node" msgstr "Text in einem Text-Knoten tippen" -#: ../src/widgets/star-toolbar.cpp:114 +#: ../src/widgets/star-toolbar.cpp:110 msgid "Star: Change number of corners" msgstr "Stern: Anzahl der Ecken ändern" -#: ../src/widgets/star-toolbar.cpp:167 +#: ../src/widgets/star-toolbar.cpp:163 msgid "Star: Change spoke ratio" msgstr "Stern: Verhältnis der Spitzen ändern" -#: ../src/widgets/star-toolbar.cpp:212 +#: ../src/widgets/star-toolbar.cpp:208 msgid "Make polygon" msgstr "Polygon erstellen" -#: ../src/widgets/star-toolbar.cpp:212 +#: ../src/widgets/star-toolbar.cpp:208 msgid "Make star" msgstr "Stern erstellen" -#: ../src/widgets/star-toolbar.cpp:251 +#: ../src/widgets/star-toolbar.cpp:247 msgid "Star: Change rounding" msgstr "Stern: Abrundung ändern" -#: ../src/widgets/star-toolbar.cpp:291 +#: ../src/widgets/star-toolbar.cpp:287 msgid "Star: Change randomization" msgstr "Stern: Zufälligkeit ändern" -#: ../src/widgets/star-toolbar.cpp:475 +#: ../src/widgets/star-toolbar.cpp:471 msgid "Regular polygon (with one handle) instead of a star" msgstr "Gewöhnliches Vieleck (Polygon mit einem Anfasser) statt eines Sterns" -#: ../src/widgets/star-toolbar.cpp:482 +#: ../src/widgets/star-toolbar.cpp:478 msgid "Star instead of a regular polygon (with one handle)" msgstr "Stern statt eines gewöhnlichen Vielecks (Polygon mit einem Anfasser)" -#: ../src/widgets/star-toolbar.cpp:503 +#: ../src/widgets/star-toolbar.cpp:499 msgid "triangle/tri-star" msgstr "Dreieck/Stern mit drei Spitzen" -#: ../src/widgets/star-toolbar.cpp:503 +#: ../src/widgets/star-toolbar.cpp:499 msgid "square/quad-star" msgstr "Quadrat/Stern mit vier Spitzen" -#: ../src/widgets/star-toolbar.cpp:503 +#: ../src/widgets/star-toolbar.cpp:499 msgid "pentagon/five-pointed star" msgstr "Fünfeck/Stern mit fünf Spitzen" -#: ../src/widgets/star-toolbar.cpp:503 +#: ../src/widgets/star-toolbar.cpp:499 msgid "hexagon/six-pointed star" msgstr "Sechseck/Stern mit sechs Spitzen" -#: ../src/widgets/star-toolbar.cpp:506 +#: ../src/widgets/star-toolbar.cpp:502 msgid "Corners" msgstr "Ecken" -#: ../src/widgets/star-toolbar.cpp:506 +#: ../src/widgets/star-toolbar.cpp:502 msgid "Corners:" msgstr "Ecken:" -#: ../src/widgets/star-toolbar.cpp:506 +#: ../src/widgets/star-toolbar.cpp:502 msgid "Number of corners of a polygon or star" msgstr "Zahl der Ecken eines Polygons oder Sterns" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "thin-ray star" msgstr "Dünnstrahliger Stern" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "pentagram" msgstr "Pentagram" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "hexagram" msgstr "hexagram" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "heptagram" msgstr "heptagram" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "octagram" msgstr "octagram" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "regular polygon" msgstr "Regelmäßiges Polygon erstellen" -#: ../src/widgets/star-toolbar.cpp:522 +#: ../src/widgets/star-toolbar.cpp:518 msgid "Spoke ratio" msgstr "Spitzenverhältnis:" -#: ../src/widgets/star-toolbar.cpp:522 +#: ../src/widgets/star-toolbar.cpp:518 msgid "Spoke ratio:" msgstr "Spitzenverhältnis:" #. TRANSLATORS: Tip radius of a star is the distance from the center to the farthest handle. #. Base radius is the same for the closest handle. -#: ../src/widgets/star-toolbar.cpp:525 +#: ../src/widgets/star-toolbar.cpp:521 msgid "Base radius to tip radius ratio" msgstr "Verhältnis vom Radius des Grundkörpers zum Radius der Spitzen" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "stretched" msgstr "gestreckt" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "twisted" msgstr "verdreht" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "slightly pinched" msgstr "leicht eingedrückt" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "NOT rounded" msgstr "NICHT abgerundet" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "slightly rounded" msgstr "schwach abgerundet" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "visibly rounded" msgstr "sichtbar abgerundet" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "well rounded" msgstr "gut abgerundet" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "amply rounded" msgstr "reichlich abgerundet" -#: ../src/widgets/star-toolbar.cpp:543 ../src/widgets/star-toolbar.cpp:558 +#: ../src/widgets/star-toolbar.cpp:539 ../src/widgets/star-toolbar.cpp:554 msgid "blown up" msgstr "aufgebläht" -#: ../src/widgets/star-toolbar.cpp:546 +#: ../src/widgets/star-toolbar.cpp:542 msgid "Rounded:" msgstr "Abrundung:" -#: ../src/widgets/star-toolbar.cpp:546 +#: ../src/widgets/star-toolbar.cpp:542 msgid "How much rounded are the corners (0 for sharp)" msgstr "Wie stark werden die Ecken abgerundet (0 für harte Kante)" -#: ../src/widgets/star-toolbar.cpp:558 +#: ../src/widgets/star-toolbar.cpp:554 msgid "NOT randomized" msgstr "NICHT durcheinander" -#: ../src/widgets/star-toolbar.cpp:558 +#: ../src/widgets/star-toolbar.cpp:554 msgid "slightly irregular" msgstr "leicht unregelmäßig" -#: ../src/widgets/star-toolbar.cpp:558 +#: ../src/widgets/star-toolbar.cpp:554 msgid "visibly randomized" msgstr "sichtbar unregelmäßig" -#: ../src/widgets/star-toolbar.cpp:558 +#: ../src/widgets/star-toolbar.cpp:554 msgid "strongly randomized" msgstr "stark unregelmäßig" -#: ../src/widgets/star-toolbar.cpp:561 +#: ../src/widgets/star-toolbar.cpp:557 msgid "Randomized" msgstr "unregelmäßig" -#: ../src/widgets/star-toolbar.cpp:561 +#: ../src/widgets/star-toolbar.cpp:557 msgid "Randomized:" msgstr "Zufallsänderung:" -#: ../src/widgets/star-toolbar.cpp:561 +#: ../src/widgets/star-toolbar.cpp:557 msgid "Scatter randomly the corners and angles" msgstr "Zufällige Variationen der Ecken und Winkel" -#: ../src/widgets/stroke-style.cpp:185 +#: ../src/widgets/stroke-style.cpp:188 msgid "Stroke width" msgstr "Breite der Kontur" -#: ../src/widgets/stroke-style.cpp:187 +#: ../src/widgets/stroke-style.cpp:190 msgctxt "Stroke width" msgid "_Width:" msgstr "_Breite:" @@ -26803,72 +26798,72 @@ msgstr "_Breite:" #. TRANSLATORS: Miter join: joining lines with a sharp (pointed) corner. #. For an example, draw a triangle with a large stroke width and modify the #. "Join" option (in the Fill and Stroke dialog). -#: ../src/widgets/stroke-style.cpp:232 +#: ../src/widgets/stroke-style.cpp:235 msgid "Miter join" msgstr "Spitze Verbindung" #. TRANSLATORS: Round join: joining lines with a rounded corner. #. For an example, draw a triangle with a large stroke width and modify the #. "Join" option (in the Fill and Stroke dialog). -#: ../src/widgets/stroke-style.cpp:240 +#: ../src/widgets/stroke-style.cpp:243 msgid "Round join" msgstr "Abgerundete Verbindung" #. TRANSLATORS: Bevel join: joining lines with a blunted (flattened) corner. #. For an example, draw a triangle with a large stroke width and modify the #. "Join" option (in the Fill and Stroke dialog). -#: ../src/widgets/stroke-style.cpp:248 +#: ../src/widgets/stroke-style.cpp:251 msgid "Bevel join" msgstr "Abgeschrägte Verbindung" -#: ../src/widgets/stroke-style.cpp:273 +#: ../src/widgets/stroke-style.cpp:276 msgid "Miter _limit:" msgstr "Gehrungs_limit:" #. Cap type #. TRANSLATORS: cap type specifies the shape for the ends of lines #. spw_label(t, _("_Cap:"), 0, i); -#: ../src/widgets/stroke-style.cpp:289 +#: ../src/widgets/stroke-style.cpp:292 msgid "Cap:" msgstr "Linienende:" #. TRANSLATORS: Butt cap: the line shape does not extend beyond the end point #. of the line; the ends of the line are square -#: ../src/widgets/stroke-style.cpp:300 +#: ../src/widgets/stroke-style.cpp:303 msgid "Butt cap" msgstr "Nicht überstehendes Ende" #. TRANSLATORS: Round cap: the line shape extends beyond the end point of the #. line; the ends of the line are rounded -#: ../src/widgets/stroke-style.cpp:307 +#: ../src/widgets/stroke-style.cpp:310 msgid "Round cap" msgstr "Abgerundetes Ende" #. TRANSLATORS: Square cap: the line shape extends beyond the end point of the #. line; the ends of the line are square -#: ../src/widgets/stroke-style.cpp:314 +#: ../src/widgets/stroke-style.cpp:317 msgid "Square cap" msgstr "Quadratisches Ende" #. Dash -#: ../src/widgets/stroke-style.cpp:319 +#: ../src/widgets/stroke-style.cpp:322 msgid "Dashes:" msgstr "Strichlinien:" #. Drop down marker selectors #. TRANSLATORS: Path markers are an SVG feature that allows you to attach arbitrary shapes #. (arrowheads, bullets, faces, whatever) to the start, end, or middle nodes of a path. -#: ../src/widgets/stroke-style.cpp:345 +#: ../src/widgets/stroke-style.cpp:348 msgid "Markers:" msgstr "Markierungen" -#: ../src/widgets/stroke-style.cpp:351 +#: ../src/widgets/stroke-style.cpp:354 msgid "Start Markers are drawn on the first node of a path or shape" msgstr "" "Startmakierungen werden am ersten Knoten eines Pfades oder einer Form " "gezeichnet." -#: ../src/widgets/stroke-style.cpp:360 +#: ../src/widgets/stroke-style.cpp:363 msgid "" "Mid Markers are drawn on every node of a path or shape except the first and " "last nodes" @@ -26876,21 +26871,21 @@ msgstr "" "Mittenmarkierungen werden auf jedem Knoten entlang eines Pfades - außer dem " "ersten und letzten - gezeichnet." -#: ../src/widgets/stroke-style.cpp:369 +#: ../src/widgets/stroke-style.cpp:372 msgid "End Markers are drawn on the last node of a path or shape" msgstr "" "Endmarkierungen werden auf dem ersten und letzten Knoten eines Pfades oder " "einer Form gezeichnet." -#: ../src/widgets/stroke-style.cpp:487 +#: ../src/widgets/stroke-style.cpp:490 msgid "Set markers" msgstr "Markierungen setzen" -#: ../src/widgets/stroke-style.cpp:1075 ../src/widgets/stroke-style.cpp:1160 +#: ../src/widgets/stroke-style.cpp:1020 ../src/widgets/stroke-style.cpp:1105 msgid "Set stroke style" msgstr "Stil der Kontur setzen" -#: ../src/widgets/stroke-style.cpp:1248 +#: ../src/widgets/stroke-style.cpp:1193 msgid "Set marker color" msgstr "Farbe der Markierung setzen" @@ -26898,612 +26893,612 @@ msgstr "Farbe der Markierung setzen" msgid "Change swatch color" msgstr "Farbmuster-Farbe ändern" -#: ../src/widgets/text-toolbar.cpp:178 +#: ../src/widgets/text-toolbar.cpp:174 msgid "Text: Change font family" msgstr "Text: Schriftfamilie ändern" -#: ../src/widgets/text-toolbar.cpp:242 +#: ../src/widgets/text-toolbar.cpp:238 msgid "Text: Change font size" msgstr "Text: Schriftgröße ändern" -#: ../src/widgets/text-toolbar.cpp:280 +#: ../src/widgets/text-toolbar.cpp:276 msgid "Text: Change font style" msgstr "Text: Schriftstil ändern" -#: ../src/widgets/text-toolbar.cpp:358 +#: ../src/widgets/text-toolbar.cpp:354 msgid "Text: Change superscript or subscript" msgstr "Text: Ändern von Hoch- und Tiefgestellt" -#: ../src/widgets/text-toolbar.cpp:503 +#: ../src/widgets/text-toolbar.cpp:499 msgid "Text: Change alignment" msgstr "Text: Ausrichtung ändern" -#: ../src/widgets/text-toolbar.cpp:546 +#: ../src/widgets/text-toolbar.cpp:542 msgid "Text: Change line-height" msgstr "Text: Linienhöhe ändern" -#: ../src/widgets/text-toolbar.cpp:595 +#: ../src/widgets/text-toolbar.cpp:591 msgid "Text: Change word-spacing" msgstr "Text: Wortabstand ändern" -#: ../src/widgets/text-toolbar.cpp:636 +#: ../src/widgets/text-toolbar.cpp:632 msgid "Text: Change letter-spacing" msgstr "Text: Buchstabenabstand ändern" -#: ../src/widgets/text-toolbar.cpp:676 +#: ../src/widgets/text-toolbar.cpp:672 msgid "Text: Change dx (kern)" msgstr "Text: Ändern dx (kern)" -#: ../src/widgets/text-toolbar.cpp:710 +#: ../src/widgets/text-toolbar.cpp:706 msgid "Text: Change dy" msgstr "Text: Ändern dy" -#: ../src/widgets/text-toolbar.cpp:745 +#: ../src/widgets/text-toolbar.cpp:741 msgid "Text: Change rotate" msgstr "Text: Ändern Drehung" -#: ../src/widgets/text-toolbar.cpp:793 +#: ../src/widgets/text-toolbar.cpp:789 msgid "Text: Change orientation" msgstr "Text: Richtung ändern" -#: ../src/widgets/text-toolbar.cpp:1235 +#: ../src/widgets/text-toolbar.cpp:1226 msgid "Font Family" msgstr "Schriftfamilie" -#: ../src/widgets/text-toolbar.cpp:1236 +#: ../src/widgets/text-toolbar.cpp:1227 msgid "Select Font Family (Alt-X to access)" msgstr "Schriftart-Familie auswählen (Alt + X zum Setzen)" #. Focus widget #. Enable entry completion -#: ../src/widgets/text-toolbar.cpp:1246 +#: ../src/widgets/text-toolbar.cpp:1237 msgid "Select all text with this font-family" msgstr "Wähle allen Text mit dieser Schriftart-Familie aus" -#: ../src/widgets/text-toolbar.cpp:1250 +#: ../src/widgets/text-toolbar.cpp:1241 msgid "Font not found on system" msgstr "Schrift wurde im System nicht gefunden" -#: ../src/widgets/text-toolbar.cpp:1309 +#: ../src/widgets/text-toolbar.cpp:1300 msgid "Font Style" msgstr "Schriftstil" -#: ../src/widgets/text-toolbar.cpp:1310 +#: ../src/widgets/text-toolbar.cpp:1301 msgid "Font style" msgstr "Schriftstil" #. Name -#: ../src/widgets/text-toolbar.cpp:1327 +#: ../src/widgets/text-toolbar.cpp:1318 msgid "Toggle Superscript" msgstr "Hochgestellt umschalten" #. Label -#: ../src/widgets/text-toolbar.cpp:1328 +#: ../src/widgets/text-toolbar.cpp:1319 msgid "Toggle superscript" msgstr "Hochgestellt umschalten" #. Name -#: ../src/widgets/text-toolbar.cpp:1340 +#: ../src/widgets/text-toolbar.cpp:1331 msgid "Toggle Subscript" msgstr "Tiefgestellt umschalten" #. Label -#: ../src/widgets/text-toolbar.cpp:1341 +#: ../src/widgets/text-toolbar.cpp:1332 msgid "Toggle subscript" msgstr "Tiefgestellt umschalten" -#: ../src/widgets/text-toolbar.cpp:1382 +#: ../src/widgets/text-toolbar.cpp:1373 msgid "Justify" msgstr "Blocksatz" #. Name -#: ../src/widgets/text-toolbar.cpp:1389 +#: ../src/widgets/text-toolbar.cpp:1380 msgid "Alignment" msgstr "Ausrichtung" #. Label -#: ../src/widgets/text-toolbar.cpp:1390 +#: ../src/widgets/text-toolbar.cpp:1381 msgid "Text alignment" msgstr "Textausrichtung" -#: ../src/widgets/text-toolbar.cpp:1417 +#: ../src/widgets/text-toolbar.cpp:1408 msgid "Horizontal" msgstr "Horizontal" -#: ../src/widgets/text-toolbar.cpp:1424 +#: ../src/widgets/text-toolbar.cpp:1415 msgid "Vertical" msgstr "Vertikal" #. Label -#: ../src/widgets/text-toolbar.cpp:1431 +#: ../src/widgets/text-toolbar.cpp:1422 msgid "Text orientation" msgstr "Textausrichtung" #. Drop down menu -#: ../src/widgets/text-toolbar.cpp:1454 +#: ../src/widgets/text-toolbar.cpp:1445 msgid "Smaller spacing" msgstr "Kleinerer Abstand" -#: ../src/widgets/text-toolbar.cpp:1454 ../src/widgets/text-toolbar.cpp:1485 -#: ../src/widgets/text-toolbar.cpp:1516 +#: ../src/widgets/text-toolbar.cpp:1445 ../src/widgets/text-toolbar.cpp:1475 +#: ../src/widgets/text-toolbar.cpp:1505 msgctxt "Text tool" msgid "Normal" msgstr "Normal" -#: ../src/widgets/text-toolbar.cpp:1454 +#: ../src/widgets/text-toolbar.cpp:1445 msgid "Larger spacing" msgstr "Größerer Abstand" #. name -#: ../src/widgets/text-toolbar.cpp:1459 +#: ../src/widgets/text-toolbar.cpp:1450 msgid "Line Height" msgstr "Linienhöhe" #. label -#: ../src/widgets/text-toolbar.cpp:1460 +#: ../src/widgets/text-toolbar.cpp:1451 msgid "Line:" msgstr "Linie:" #. short label -#: ../src/widgets/text-toolbar.cpp:1461 +#: ../src/widgets/text-toolbar.cpp:1452 msgid "Spacing between lines (times font size)" msgstr "Abstand zwischen Linien (Times Schriftgröße)" #. Drop down menu -#: ../src/widgets/text-toolbar.cpp:1485 ../src/widgets/text-toolbar.cpp:1516 +#: ../src/widgets/text-toolbar.cpp:1475 ../src/widgets/text-toolbar.cpp:1505 msgid "Negative spacing" msgstr "Negativer Abstand" -#: ../src/widgets/text-toolbar.cpp:1485 ../src/widgets/text-toolbar.cpp:1516 +#: ../src/widgets/text-toolbar.cpp:1475 ../src/widgets/text-toolbar.cpp:1505 msgid "Positive spacing" msgstr "Positiver Abstand" #. name -#: ../src/widgets/text-toolbar.cpp:1490 +#: ../src/widgets/text-toolbar.cpp:1480 msgid "Word spacing" msgstr "Wortabstand" #. label -#: ../src/widgets/text-toolbar.cpp:1491 +#: ../src/widgets/text-toolbar.cpp:1481 msgid "Word:" msgstr "Wort:" #. short label -#: ../src/widgets/text-toolbar.cpp:1492 +#: ../src/widgets/text-toolbar.cpp:1482 msgid "Spacing between words (px)" msgstr "Abstand zwischen Wörtern (px)" #. name -#: ../src/widgets/text-toolbar.cpp:1521 +#: ../src/widgets/text-toolbar.cpp:1510 msgid "Letter spacing" msgstr "Buchstabenabstand" #. label -#: ../src/widgets/text-toolbar.cpp:1522 +#: ../src/widgets/text-toolbar.cpp:1511 msgid "Letter:" msgstr "Buchstabe:" #. short label -#: ../src/widgets/text-toolbar.cpp:1523 +#: ../src/widgets/text-toolbar.cpp:1512 msgid "Spacing between letters (px)" msgstr "Abstand zwischen Buchstaben (px)" #. name -#: ../src/widgets/text-toolbar.cpp:1552 +#: ../src/widgets/text-toolbar.cpp:1540 msgid "Kerning" msgstr "Unterschneidung" #. label -#: ../src/widgets/text-toolbar.cpp:1553 +#: ../src/widgets/text-toolbar.cpp:1541 msgid "Kern:" msgstr "Kern:" #. short label -#: ../src/widgets/text-toolbar.cpp:1554 +#: ../src/widgets/text-toolbar.cpp:1542 msgid "Horizontal kerning (px)" msgstr "Horizontale Unterschneidung (px)" #. name -#: ../src/widgets/text-toolbar.cpp:1583 +#: ../src/widgets/text-toolbar.cpp:1570 msgid "Vertical Shift" msgstr "Vertikaler Versatz" #. label -#: ../src/widgets/text-toolbar.cpp:1584 +#: ../src/widgets/text-toolbar.cpp:1571 msgid "Vert:" msgstr "Vert:" #. short label -#: ../src/widgets/text-toolbar.cpp:1585 +#: ../src/widgets/text-toolbar.cpp:1572 msgid "Vertical shift (px)" msgstr "Vertikaler Versatz (px)" #. name -#: ../src/widgets/text-toolbar.cpp:1614 +#: ../src/widgets/text-toolbar.cpp:1600 msgid "Letter rotation" msgstr "Buchstabenrotation" #. label -#: ../src/widgets/text-toolbar.cpp:1615 +#: ../src/widgets/text-toolbar.cpp:1601 msgid "Rot:" msgstr "Rotation:" #. short label -#: ../src/widgets/text-toolbar.cpp:1616 +#: ../src/widgets/text-toolbar.cpp:1602 msgid "Character rotation (degrees)" msgstr "Zeichenrotation [Grad]" -#: ../src/widgets/toolbox.cpp:181 +#: ../src/widgets/toolbox.cpp:179 msgid "Color/opacity used for color tweaking" msgstr "Farbe / Opazität zur Farbjustage" -#: ../src/widgets/toolbox.cpp:189 +#: ../src/widgets/toolbox.cpp:187 msgid "Style of new stars" msgstr "Stil von neuen Sternen" -#: ../src/widgets/toolbox.cpp:191 +#: ../src/widgets/toolbox.cpp:189 msgid "Style of new rectangles" msgstr "Stil von neuen Rechtecken" -#: ../src/widgets/toolbox.cpp:193 +#: ../src/widgets/toolbox.cpp:191 msgid "Style of new 3D boxes" msgstr "Stil von neuen 3D-Boxen" -#: ../src/widgets/toolbox.cpp:195 +#: ../src/widgets/toolbox.cpp:193 msgid "Style of new ellipses" msgstr "Stil von neuen Ellipsen" -#: ../src/widgets/toolbox.cpp:197 +#: ../src/widgets/toolbox.cpp:195 msgid "Style of new spirals" msgstr "Stil von neuen Spiralen" -#: ../src/widgets/toolbox.cpp:199 +#: ../src/widgets/toolbox.cpp:197 msgid "Style of new paths created by Pencil" msgstr "Stil von neuen Pfaden (Malwerkzeug)" -#: ../src/widgets/toolbox.cpp:201 +#: ../src/widgets/toolbox.cpp:199 msgid "Style of new paths created by Pen" msgstr "Stil von neuen Pfaden (Zeichenwerkzeug)" -#: ../src/widgets/toolbox.cpp:203 +#: ../src/widgets/toolbox.cpp:201 msgid "Style of new calligraphic strokes" msgstr "Stil von neuen kalligrafischen Strichen" -#: ../src/widgets/toolbox.cpp:205 ../src/widgets/toolbox.cpp:207 +#: ../src/widgets/toolbox.cpp:203 ../src/widgets/toolbox.cpp:205 msgid "TBD" msgstr "\"Beschreibung fehlt noch!\"" -#: ../src/widgets/toolbox.cpp:219 +#: ../src/widgets/toolbox.cpp:217 msgid "Style of Paint Bucket fill objects" msgstr "Stil von neuen Farbeimer-Objekten" -#: ../src/widgets/toolbox.cpp:1682 +#: ../src/widgets/toolbox.cpp:1676 msgid "Bounding box" msgstr "Umrandungsbox" -#: ../src/widgets/toolbox.cpp:1682 +#: ../src/widgets/toolbox.cpp:1676 msgid "Snap bounding boxes" msgstr "An der Umrandung einrasten" -#: ../src/widgets/toolbox.cpp:1691 +#: ../src/widgets/toolbox.cpp:1685 msgid "Bounding box edges" msgstr "Kanten der Umrandung" -#: ../src/widgets/toolbox.cpp:1691 +#: ../src/widgets/toolbox.cpp:1685 msgid "Snap to edges of a bounding box" msgstr "An Kanten einer Umrandung einrasten" -#: ../src/widgets/toolbox.cpp:1700 +#: ../src/widgets/toolbox.cpp:1694 msgid "Bounding box corners" msgstr "Ecken der Umrandung" -#: ../src/widgets/toolbox.cpp:1700 +#: ../src/widgets/toolbox.cpp:1694 msgid "Snap bounding box corners" msgstr "An Ecken der Umrandung einrasten" -#: ../src/widgets/toolbox.cpp:1709 +#: ../src/widgets/toolbox.cpp:1703 msgid "BBox Edge Midpoints" msgstr "Mittenpunkte der Umrandungskanten" -#: ../src/widgets/toolbox.cpp:1709 +#: ../src/widgets/toolbox.cpp:1703 msgid "Snap midpoints of bounding box edges" msgstr "An Mittelpunkten von Umrandungslinien ein-/ausrasten" -#: ../src/widgets/toolbox.cpp:1719 +#: ../src/widgets/toolbox.cpp:1713 msgid "BBox Centers" msgstr "Mittelpunkt Umrandung" -#: ../src/widgets/toolbox.cpp:1719 +#: ../src/widgets/toolbox.cpp:1713 msgid "Snapping centers of bounding boxes" msgstr "An Mittelpunkten von Umrandungen ein-/ausrasten" -#: ../src/widgets/toolbox.cpp:1728 +#: ../src/widgets/toolbox.cpp:1722 msgid "Snap nodes, paths, and handles" msgstr "Knoten, Pfade und Anfasser einrasten" -#: ../src/widgets/toolbox.cpp:1736 +#: ../src/widgets/toolbox.cpp:1730 msgid "Snap to paths" msgstr "An Objektpfaden einrasten" -#: ../src/widgets/toolbox.cpp:1745 +#: ../src/widgets/toolbox.cpp:1739 msgid "Path intersections" msgstr "Pfadüberschneidung" -#: ../src/widgets/toolbox.cpp:1745 +#: ../src/widgets/toolbox.cpp:1739 msgid "Snap to path intersections" msgstr "An Pfadüberschneidungen einrasten" -#: ../src/widgets/toolbox.cpp:1754 +#: ../src/widgets/toolbox.cpp:1748 msgid "To nodes" msgstr "An Knoten" -#: ../src/widgets/toolbox.cpp:1754 +#: ../src/widgets/toolbox.cpp:1748 msgid "Snap cusp nodes, incl. rectangle corners" msgstr "An spitzen Knoten einrasten (inkl. Ecken von Rechtecken)" -#: ../src/widgets/toolbox.cpp:1763 +#: ../src/widgets/toolbox.cpp:1757 msgid "Smooth nodes" msgstr "Glatte Knotten" -#: ../src/widgets/toolbox.cpp:1763 +#: ../src/widgets/toolbox.cpp:1757 msgid "Snap smooth nodes, incl. quadrant points of ellipses" msgstr "Einrasten an glatten Knoten, inkl. Quadrant-Punkten von Ellipsen" -#: ../src/widgets/toolbox.cpp:1772 +#: ../src/widgets/toolbox.cpp:1766 msgid "Line Midpoints" msgstr "Linien-Mittelpunkte" -#: ../src/widgets/toolbox.cpp:1772 +#: ../src/widgets/toolbox.cpp:1766 msgid "Snap midpoints of line segments" msgstr "Einrasten an Mittelpunkten von Liniensegmenten" -#: ../src/widgets/toolbox.cpp:1781 +#: ../src/widgets/toolbox.cpp:1775 msgid "Others" msgstr "Andere" -#: ../src/widgets/toolbox.cpp:1781 +#: ../src/widgets/toolbox.cpp:1775 msgid "Snap other points (centers, guide origins, gradient handles, etc.)" msgstr "" "Einrasten an anderen Punkten (Zentren, Führungslinien-Ursprung, " "Verlaufsanfasser, etc.)" -#: ../src/widgets/toolbox.cpp:1789 +#: ../src/widgets/toolbox.cpp:1783 msgid "Object Centers" msgstr "Objektzentrum" -#: ../src/widgets/toolbox.cpp:1789 +#: ../src/widgets/toolbox.cpp:1783 msgid "Snap centers of objects" msgstr "An Objektmittelpunkten einrasten" -#: ../src/widgets/toolbox.cpp:1798 +#: ../src/widgets/toolbox.cpp:1792 msgid "Rotation Centers" msgstr "Rotationszentren" -#: ../src/widgets/toolbox.cpp:1798 +#: ../src/widgets/toolbox.cpp:1792 msgid "Snap an item's rotation center" msgstr "An Rotationszentren von Objekten einrasten" -#: ../src/widgets/toolbox.cpp:1807 +#: ../src/widgets/toolbox.cpp:1801 msgid "Text baseline" msgstr "Text-Grundlinie" -#: ../src/widgets/toolbox.cpp:1807 +#: ../src/widgets/toolbox.cpp:1801 msgid "Snap text anchors and baselines" msgstr "An TExtankern und Grundlinien einrasten" -#: ../src/widgets/toolbox.cpp:1817 +#: ../src/widgets/toolbox.cpp:1811 msgid "Page border" msgstr "Seitenrand" -#: ../src/widgets/toolbox.cpp:1817 +#: ../src/widgets/toolbox.cpp:1811 msgid "Snap to the page border" msgstr "Am Seitenrand einrasten" -#: ../src/widgets/toolbox.cpp:1826 +#: ../src/widgets/toolbox.cpp:1820 msgid "Snap to grids" msgstr "Am Gitter einrasten" -#: ../src/widgets/toolbox.cpp:1835 +#: ../src/widgets/toolbox.cpp:1829 msgid "Snap guides" msgstr "An Führungslinien einrasten" #. Width -#: ../src/widgets/tweak-toolbar.cpp:143 +#: ../src/widgets/tweak-toolbar.cpp:139 msgid "(pinch tweak)" msgstr "(Zupfjustage)" -#: ../src/widgets/tweak-toolbar.cpp:143 +#: ../src/widgets/tweak-toolbar.cpp:139 msgid "(broad tweak)" msgstr "(breite Justage)" -#: ../src/widgets/tweak-toolbar.cpp:146 +#: ../src/widgets/tweak-toolbar.cpp:142 msgid "The width of the tweak area (relative to the visible canvas area)" msgstr "Breite des Justagebereichs (relativ zum sichtbaren Dokumentausschnitt)" #. Force -#: ../src/widgets/tweak-toolbar.cpp:160 +#: ../src/widgets/tweak-toolbar.cpp:156 msgid "(minimum force)" msgstr "(minimale Stärke)" -#: ../src/widgets/tweak-toolbar.cpp:160 +#: ../src/widgets/tweak-toolbar.cpp:156 msgid "(maximum force)" msgstr "(maximale Stärke)" -#: ../src/widgets/tweak-toolbar.cpp:163 +#: ../src/widgets/tweak-toolbar.cpp:159 msgid "Force" msgstr "Kraft:" -#: ../src/widgets/tweak-toolbar.cpp:163 +#: ../src/widgets/tweak-toolbar.cpp:159 msgid "Force:" msgstr "Kraft:" -#: ../src/widgets/tweak-toolbar.cpp:163 +#: ../src/widgets/tweak-toolbar.cpp:159 msgid "The force of the tweak action" msgstr "Die Kraft der Modellierungsaktion" -#: ../src/widgets/tweak-toolbar.cpp:181 +#: ../src/widgets/tweak-toolbar.cpp:177 msgid "Move mode" msgstr "Verschiebungs-Modus" -#: ../src/widgets/tweak-toolbar.cpp:182 +#: ../src/widgets/tweak-toolbar.cpp:178 msgid "Move objects in any direction" msgstr "Verschiebe Objekte in irgendeine Richtung" -#: ../src/widgets/tweak-toolbar.cpp:188 +#: ../src/widgets/tweak-toolbar.cpp:184 msgid "Move in/out mode" msgstr "Her-/Wegbewegen" -#: ../src/widgets/tweak-toolbar.cpp:189 +#: ../src/widgets/tweak-toolbar.cpp:185 msgid "Move objects towards cursor; with Shift from cursor" msgstr "Verschiebt Objekte zum Cursor; mit Shift vom Cursor weg" -#: ../src/widgets/tweak-toolbar.cpp:195 +#: ../src/widgets/tweak-toolbar.cpp:191 msgid "Move jitter mode" msgstr "Zittern hinzufügen" -#: ../src/widgets/tweak-toolbar.cpp:196 +#: ../src/widgets/tweak-toolbar.cpp:192 msgid "Move objects in random directions" msgstr "Objekte in zufällige Richtungen verschieben" -#: ../src/widgets/tweak-toolbar.cpp:202 +#: ../src/widgets/tweak-toolbar.cpp:198 msgid "Scale mode" msgstr "Skalierungsmodus" -#: ../src/widgets/tweak-toolbar.cpp:203 +#: ../src/widgets/tweak-toolbar.cpp:199 msgid "Shrink objects, with Shift enlarge" msgstr "Schrumpft Objekte, mit Shift Erweitern" -#: ../src/widgets/tweak-toolbar.cpp:209 +#: ../src/widgets/tweak-toolbar.cpp:205 msgid "Rotate mode" msgstr "Rotationsmodus" -#: ../src/widgets/tweak-toolbar.cpp:210 +#: ../src/widgets/tweak-toolbar.cpp:206 msgid "Rotate objects, with Shift counterclockwise" msgstr "Objekte rotieren, mit Shift gegen den Uhrzeigersinn" -#: ../src/widgets/tweak-toolbar.cpp:216 +#: ../src/widgets/tweak-toolbar.cpp:212 msgid "Duplicate/delete mode" msgstr "Duplizieren/Löschen-Modus" -#: ../src/widgets/tweak-toolbar.cpp:217 +#: ../src/widgets/tweak-toolbar.cpp:213 msgid "Duplicate objects, with Shift delete" msgstr "Dupliziert Objekte; mit Shift Löschen" -#: ../src/widgets/tweak-toolbar.cpp:223 +#: ../src/widgets/tweak-toolbar.cpp:219 msgid "Push mode" msgstr "Drückmodus" -#: ../src/widgets/tweak-toolbar.cpp:224 +#: ../src/widgets/tweak-toolbar.cpp:220 msgid "Push parts of paths in any direction" msgstr "Teile des Pfades in eine beliebige Richtung schieben" -#: ../src/widgets/tweak-toolbar.cpp:230 +#: ../src/widgets/tweak-toolbar.cpp:226 msgid "Shrink/grow mode" msgstr "Schrumpf-/Wachstums-Modus" -#: ../src/widgets/tweak-toolbar.cpp:231 +#: ../src/widgets/tweak-toolbar.cpp:227 msgid "Shrink (inset) parts of paths; with Shift grow (outset)" msgstr "Teile von Pfaden Schrumpfen (Eindrücken); mit Umschalt Vergrößern" -#: ../src/widgets/tweak-toolbar.cpp:237 +#: ../src/widgets/tweak-toolbar.cpp:233 msgid "Attract/repel mode" msgstr "Anziehen-/Abstoßenmodus" -#: ../src/widgets/tweak-toolbar.cpp:238 +#: ../src/widgets/tweak-toolbar.cpp:234 msgid "Attract parts of paths towards cursor; with Shift from cursor" msgstr "" "Teile von Pfaden werden vom Zeiger angezogen oder mit Umschalt abgestoßen" -#: ../src/widgets/tweak-toolbar.cpp:244 +#: ../src/widgets/tweak-toolbar.cpp:240 msgid "Roughen mode" msgstr "Aufraumodus" -#: ../src/widgets/tweak-toolbar.cpp:245 +#: ../src/widgets/tweak-toolbar.cpp:241 msgid "Roughen parts of paths" msgstr "Teile von Pfaden anrauen" -#: ../src/widgets/tweak-toolbar.cpp:251 +#: ../src/widgets/tweak-toolbar.cpp:247 msgid "Color paint mode" msgstr "Farbmalmodus" -#: ../src/widgets/tweak-toolbar.cpp:252 +#: ../src/widgets/tweak-toolbar.cpp:248 msgid "Paint the tool's color upon selected objects" msgstr "Malt mit der Farbe des Werkzeugs auf ausgewählte Objekte" -#: ../src/widgets/tweak-toolbar.cpp:258 +#: ../src/widgets/tweak-toolbar.cpp:254 msgid "Color jitter mode" msgstr "Farbrauschen beeinflußen" -#: ../src/widgets/tweak-toolbar.cpp:259 +#: ../src/widgets/tweak-toolbar.cpp:255 msgid "Jitter the colors of selected objects" msgstr "Farben der gewählten Objekte verrauschen" -#: ../src/widgets/tweak-toolbar.cpp:265 +#: ../src/widgets/tweak-toolbar.cpp:261 msgid "Blur mode" msgstr "Unschärfemodus" -#: ../src/widgets/tweak-toolbar.cpp:266 +#: ../src/widgets/tweak-toolbar.cpp:262 msgid "Blur selected objects more; with Shift, blur less" msgstr "Ausgewählte Objekte stärker verwischen (mit Umschalt weniger)" -#: ../src/widgets/tweak-toolbar.cpp:293 +#: ../src/widgets/tweak-toolbar.cpp:289 msgid "Channels:" msgstr "Kanäle:" -#: ../src/widgets/tweak-toolbar.cpp:305 +#: ../src/widgets/tweak-toolbar.cpp:301 msgid "In color mode, act on objects' hue" msgstr "Im Farbmodus auf den Farbton eines Objekts wirken" #. TRANSLATORS: "H" here stands for hue -#: ../src/widgets/tweak-toolbar.cpp:309 +#: ../src/widgets/tweak-toolbar.cpp:305 msgid "H" msgstr "H" -#: ../src/widgets/tweak-toolbar.cpp:321 +#: ../src/widgets/tweak-toolbar.cpp:317 msgid "In color mode, act on objects' saturation" msgstr "Im Farbmodus auf die Farbsättigung eines Objekts wirken" #. TRANSLATORS: "S" here stands for Saturation -#: ../src/widgets/tweak-toolbar.cpp:325 +#: ../src/widgets/tweak-toolbar.cpp:321 msgid "S" msgstr "S" -#: ../src/widgets/tweak-toolbar.cpp:337 +#: ../src/widgets/tweak-toolbar.cpp:333 msgid "In color mode, act on objects' lightness" msgstr "Im Farbmodus auf die Helligkeit eines Objekts wirken" #. TRANSLATORS: "L" here stands for Lightness -#: ../src/widgets/tweak-toolbar.cpp:341 +#: ../src/widgets/tweak-toolbar.cpp:337 msgid "L" msgstr "L" -#: ../src/widgets/tweak-toolbar.cpp:353 +#: ../src/widgets/tweak-toolbar.cpp:349 msgid "In color mode, act on objects' opacity" msgstr "Im Farbmodus auf die Deckkraft eines Objekts wirken" #. TRANSLATORS: "O" here stands for Opacity -#: ../src/widgets/tweak-toolbar.cpp:357 +#: ../src/widgets/tweak-toolbar.cpp:353 msgid "O" msgstr "O" #. Fidelity -#: ../src/widgets/tweak-toolbar.cpp:368 +#: ../src/widgets/tweak-toolbar.cpp:364 msgid "(rough, simplified)" msgstr "(rau, einfach)" -#: ../src/widgets/tweak-toolbar.cpp:368 +#: ../src/widgets/tweak-toolbar.cpp:364 msgid "(fine, but many nodes)" msgstr "(fein, aber viele Knoten)" -#: ../src/widgets/tweak-toolbar.cpp:371 +#: ../src/widgets/tweak-toolbar.cpp:367 msgid "Fidelity" msgstr "Treue" -#: ../src/widgets/tweak-toolbar.cpp:371 +#: ../src/widgets/tweak-toolbar.cpp:367 msgid "Fidelity:" msgstr "Genauigkeit:" -#: ../src/widgets/tweak-toolbar.cpp:372 +#: ../src/widgets/tweak-toolbar.cpp:368 msgid "" "Low fidelity simplifies paths; high fidelity preserves path features but may " "generate a lot of new nodes" @@ -27511,7 +27506,7 @@ msgstr "" "Geringere Originaltreue vereinfacht den Pfad. Ein hoher Wert erhält die " "Pfadstruktur, erzeugt aber viele neuen Knoten" -#: ../src/widgets/tweak-toolbar.cpp:391 +#: ../src/widgets/tweak-toolbar.cpp:387 msgid "Use the pressure of the input device to alter the force of tweak action" msgstr "" "Druckempfindlichkeit des Eingabegeräts benutzen, um die Kraft der " @@ -27568,6 +27563,13 @@ msgstr "Halbdurchmesser in px:" msgid "Area (px^2): " msgstr "Gebiet (px^2):" +#: ../share/extensions/dxf_input.py:504 +#, python-format +msgid "" +"%d ENTITIES of type POLYLINE encountered and ignored. Please try to convert " +"to Release 13 format using QCad." +msgstr "" + #: ../share/extensions/dxf_outlines.py:49 msgid "" "Failed to import the numpy or numpy.linalg modules. These modules are " @@ -27628,9 +27630,8 @@ msgid "Unable to find image data." msgstr "Problem beim Auffinden der Bilderdaten" #: ../share/extensions/extrude.py:43 -#, fuzzy msgid "Need at least 2 paths selected" -msgstr "Pfad auswählen, wenn nichts gewählt wurde" +msgstr "Benötigt mindestens 2 ausgewählte Pfade" #: ../share/extensions/funcplot.py:48 msgid "x-interval cannot be zero. Please modify 'Start X' or 'End X'" @@ -27937,6 +27938,16 @@ msgstr "Diese Erweiterung benötigt mindestens eine nicht leere Ebene." msgid "The sliced bitmaps have been saved as:" msgstr "Die geschnittenen Bitmaps wurden gespeichert als:" +#: ../share/extensions/hpgl_input.py:59 +msgid "No HPGL data found." +msgstr "Keine HPGL-Daten gefunden." + +#: ../share/extensions/hpgl_input.py:111 +msgid "" +"The HPGL data contained unknown (unsupported) commands, there is a " +"possibility that the drawing is missing some content." +msgstr "" + #: ../share/extensions/inkex.py:133 #, python-format msgid "" @@ -29165,6 +29176,55 @@ msgstr "Ebenen-Export-Auswahl" msgid "Layer match name" msgstr "Ebenenname:" +#: ../share/extensions/dxf_outlines.inx.h:9 +msgid "pt" +msgstr "pt" + +#: ../share/extensions/dxf_outlines.inx.h:10 +msgid "pc" +msgstr "pc" + +#: ../share/extensions/dxf_outlines.inx.h:11 +#: ../share/extensions/render_gears.inx.h:7 +msgid "px" +msgstr "Px" + +#: ../share/extensions/dxf_outlines.inx.h:12 +#: ../share/extensions/gcodetools_area.inx.h:46 +#: ../share/extensions/gcodetools_dxf_points.inx.h:18 +#: ../share/extensions/gcodetools_engraving.inx.h:24 +#: ../share/extensions/gcodetools_graffiti.inx.h:18 +#: ../share/extensions/gcodetools_lathe.inx.h:39 +#: ../share/extensions/gcodetools_orientation_points.inx.h:11 +#: ../share/extensions/gcodetools_path_to_gcode.inx.h:28 +#: ../share/extensions/render_gears.inx.h:9 +msgid "mm" +msgstr "mm" + +#: ../share/extensions/dxf_outlines.inx.h:13 +msgid "cm" +msgstr "cm" + +#: ../share/extensions/dxf_outlines.inx.h:14 +msgid "m" +msgstr "m" + +#: ../share/extensions/dxf_outlines.inx.h:15 +#: ../share/extensions/gcodetools_area.inx.h:47 +#: ../share/extensions/gcodetools_dxf_points.inx.h:19 +#: ../share/extensions/gcodetools_engraving.inx.h:25 +#: ../share/extensions/gcodetools_graffiti.inx.h:19 +#: ../share/extensions/gcodetools_lathe.inx.h:40 +#: ../share/extensions/gcodetools_orientation_points.inx.h:12 +#: ../share/extensions/gcodetools_path_to_gcode.inx.h:29 +#: ../share/extensions/render_gears.inx.h:8 +msgid "in" +msgstr "In" + +#: ../share/extensions/dxf_outlines.inx.h:16 +msgid "ft" +msgstr "ft" + #: ../share/extensions/dxf_outlines.inx.h:17 msgid "Latin 1" msgstr "Latein 1" @@ -29186,9 +29246,8 @@ msgid "All (default)" msgstr "Alle (Vorgabe)" #: ../share/extensions/dxf_outlines.inx.h:22 -#, fuzzy msgid "Visible only" -msgstr "Sichtbare Farben" +msgstr "Nur Sichtbare" #: ../share/extensions/dxf_outlines.inx.h:23 msgid "By name match" @@ -30553,72 +30612,67 @@ msgid "Guides creator" msgstr "Führungslinien erstellen" #: ../share/extensions/guides_creator.inx.h:2 -msgid "Preset:" -msgstr "Voreinstellung" +#, fuzzy +msgid "Regular guides" +msgstr "Rechteckiges Gitter" #: ../share/extensions/guides_creator.inx.h:3 -msgid "Custom..." -msgstr "Benutzerdefiniert..." - -#: ../share/extensions/guides_creator.inx.h:4 -msgid "Golden ratio" -msgstr "Goldener Schnitt" - -#: ../share/extensions/guides_creator.inx.h:5 -msgid "Rule-of-third" -msgstr "Drittel-Regel" +#, fuzzy +msgid "Guides preset" +msgstr "Führungslinien erstellen" #: ../share/extensions/guides_creator.inx.h:6 -msgid "Vertical guide each:" -msgstr "Vertikale Führungslinie alle" +msgid "Start from edges" +msgstr "An Kanten beginnen" + +#: ../share/extensions/guides_creator.inx.h:7 +msgid "Delete existing guides" +msgstr "Lösche existierende Führungslinien" #: ../share/extensions/guides_creator.inx.h:8 -msgid "1/2" -msgstr "1/2" +#, fuzzy +msgid "Diagonal guides" +msgstr "An Führungslinien einrasten" #: ../share/extensions/guides_creator.inx.h:9 -msgid "1/3" -msgstr "1/3" +#, fuzzy +msgid "Upper left corner" +msgstr "Seitenecke" #: ../share/extensions/guides_creator.inx.h:10 -msgid "1/4" -msgstr "1/4" +#, fuzzy +msgid "Upper right corner" +msgstr "Seitenecke" #: ../share/extensions/guides_creator.inx.h:11 -msgid "1/5" -msgstr "1/5" +#, fuzzy +msgid "Lower left corner" +msgstr "Die aktuelle Ebene absenken" #: ../share/extensions/guides_creator.inx.h:12 -msgid "1/6" -msgstr "1/6" +#, fuzzy +msgid "Lower right corner" +msgstr "Die aktuelle Ebene absenken" #: ../share/extensions/guides_creator.inx.h:13 -msgid "1/7" -msgstr "1/7" +#, fuzzy +msgid "Margins" +msgstr "Randbox" #: ../share/extensions/guides_creator.inx.h:14 -msgid "1/8" -msgstr "1/8" +#, fuzzy +msgid "Margins preset" +msgstr "Randführungslinie" #: ../share/extensions/guides_creator.inx.h:15 -msgid "1/9" -msgstr "1/9" +#, fuzzy +msgid "Header margin" +msgstr "Seitenrand" #: ../share/extensions/guides_creator.inx.h:16 -msgid "1/10" -msgstr "1/10" - -#: ../share/extensions/guides_creator.inx.h:17 -msgid "Horizontal guide each:" -msgstr "Horizontale Führungslinie alle:" - -#: ../share/extensions/guides_creator.inx.h:18 -msgid "Start from edges" -msgstr "An Kanten beginnen" - -#: ../share/extensions/guides_creator.inx.h:19 -msgid "Delete existing guides" -msgstr "Lösche existierende Führungslinien" +#, fuzzy +msgid "Footer margin" +msgstr "Oberer Rand" #: ../share/extensions/guillotine.inx.h:1 msgid "Guillotine" @@ -32146,6 +32200,10 @@ msgstr "Seiten pro Zoll (PPI)" msgid "Caliper (inches)" msgstr "Messschieber (Zoll)" +#: ../share/extensions/perfectboundcover.inx.h:11 +msgid "Points" +msgstr "Punkte" + #: ../share/extensions/perfectboundcover.inx.h:12 msgid "Bond Weight #" msgstr "Bond Weight # (US-Maß für Papier-Flächenmasse)" @@ -32727,6 +32785,7 @@ msgstr "Horizontaler Punkt:" #: ../share/extensions/restack.inx.h:13 #: ../share/extensions/text_extract.inx.h:9 +#: ../share/extensions/text_merge.inx.h:9 msgid "Middle" msgstr "Mitte" @@ -32736,11 +32795,13 @@ msgstr "Vertikaler Punkt:" #: ../share/extensions/restack.inx.h:16 #: ../share/extensions/text_extract.inx.h:12 +#: ../share/extensions/text_merge.inx.h:12 msgid "Top" msgstr "Oben" #: ../share/extensions/restack.inx.h:17 #: ../share/extensions/text_extract.inx.h:13 +#: ../share/extensions/text_merge.inx.h:13 msgid "Bottom" msgstr "Unterste" @@ -33344,30 +33405,37 @@ msgid "Extract" msgstr "Extrahieren" #: ../share/extensions/text_extract.inx.h:2 +#: ../share/extensions/text_merge.inx.h:2 msgid "Text direction:" msgstr "Textrichtung" #: ../share/extensions/text_extract.inx.h:3 +#: ../share/extensions/text_merge.inx.h:3 msgid "Left to right" msgstr "Links nach Rechts" #: ../share/extensions/text_extract.inx.h:4 +#: ../share/extensions/text_merge.inx.h:4 msgid "Bottom to top" msgstr "Von Unten nach Oben" #: ../share/extensions/text_extract.inx.h:5 +#: ../share/extensions/text_merge.inx.h:5 msgid "Right to left" msgstr "Rechts nach Links" #: ../share/extensions/text_extract.inx.h:6 +#: ../share/extensions/text_merge.inx.h:6 msgid "Top to bottom" msgstr "Von Oben nach unten" #: ../share/extensions/text_extract.inx.h:7 +#: ../share/extensions/text_merge.inx.h:7 msgid "Horizontal point:" msgstr "Horizontaler Punkt:" #: ../share/extensions/text_extract.inx.h:11 +#: ../share/extensions/text_merge.inx.h:11 msgid "Vertical point:" msgstr "Vertikaler Punkt:" @@ -33388,6 +33456,14 @@ msgstr "Stellung ändern" msgid "lowercase" msgstr "kleinschreibung" +#: ../share/extensions/text_merge.inx.h:14 +msgid "Flow text" +msgstr "Fließtext" + +#: ../share/extensions/text_merge.inx.h:15 +msgid "Keep style" +msgstr "Stil behalten" + #: ../share/extensions/text_randomcase.inx.h:1 msgid "rANdOm CasE" msgstr "zuFäLLiGe scHreiBunG" @@ -33941,6 +34017,185 @@ msgstr "Ein beliebtes Dateiformat für Clipart" msgid "XAML Input" msgstr "XAML einlesen" +#~ msgid "Pt" +#~ msgstr "Pkt" + +#~ msgid "Picas" +#~ msgstr "Picas" + +#~ msgid "Pc" +#~ msgstr "PC" + +#~ msgid "Pixels" +#~ msgstr "Pixel" + +#~ msgid "Px" +#~ msgstr "Px" + +#~ msgid "Percent" +#~ msgstr "Prozent" + +#~ msgid "Percents" +#~ msgstr "Prozent" + +#~ msgid "Millimeters" +#~ msgstr "Millimeter" + +#~ msgid "Centimeters" +#~ msgstr "Zentimeter" + +#~ msgid "Meter" +#~ msgstr "Meter" + +#~ msgid "Meters" +#~ msgstr "Meter" + +#~ msgid "Inches" +#~ msgstr "Zoll" + +#~ msgid "Foot" +#~ msgstr "Fuß" + +#~ msgid "Feet" +#~ msgstr "Vorschub" + +#~ msgid "em" +#~ msgstr "em" + +#~ msgid "Em squares" +#~ msgstr "Em-Quadrate" + +#~ msgid "Ex square" +#~ msgstr "Ix-Quadrat" + +#~ msgid "ex" +#~ msgstr "ex" + +#~ msgid "Ex squares" +#~ msgstr "Ix-Quadrate" + +#~ msgid "Name by which this document is formally known" +#~ msgstr "Name, unter dem dieses Dokument formal bekannt ist." + +#~ msgid "Date associated with the creation of this document (YYYY-MM-DD)" +#~ msgstr "" +#~ "Datum, das mit der Erstellung dieses Dokuments assoziiert ist (JJJJ-MM-TT)" + +#~ msgid "The physical or digital manifestation of this document (MIME type)" +#~ msgstr "" +#~ "Die physische oder digitale Erscheinungsform dieses Dokuments (MIME-Typ)" + +#~ msgid "Type of document (DCMI Type)" +#~ msgstr "Typ des Dokuments (DCMI-Typ)." + +#~ msgid "" +#~ "Name of entity with rights to the Intellectual Property of this document" +#~ msgstr "" +#~ "Name der Person oder Organisation, welche die Urheberrechte (Intellectual " +#~ "Property) an diesem Dokument hält." + +#~ msgid "Unique URI to reference this document" +#~ msgstr "Eindeutige URI, um dieses Dokument zu referenzieren." + +#~ msgid "Unique URI to reference the source of this document" +#~ msgstr "Eindeutige URI, um die Quelle dieses Dokuments zu referenzieren." + +#~ msgid "Unique URI to a related document" +#~ msgstr "Eindeutige URI zu einem verwandten Dokument." + +# !!! pull parenthesis inside sentenc +#~ msgid "" +#~ "Two-letter language tag with optional subtags for the language of this " +#~ "document (e.g. 'en-GB')" +#~ msgstr "" +#~ "Zweibuchstabiges Sprachsymbol mit optionalen Untersymbolen für die " +#~ "Sprache dieses Dokuments (z.B. »de-CH«)" + +#~ msgid "" +#~ "The topic of this document as comma-separated key words, phrases, or " +#~ "classifications" +#~ msgstr "" +#~ "Das Thema dieses Dokuments als Schlagworte, Phrasen oder Klassifikation." + +#~ msgid "Extent or scope of this document" +#~ msgstr "Umfang oder Abdeckungsbereich dieses Dokuments." + +#~ msgid "Allow relative coordinates" +#~ msgstr "Relative Koordinaten erlauben." + +#~ msgid "If set, relative coordinates may be used in path data" +#~ msgstr "" +#~ "Wenn gesetzt können relative Koordinaten als Pfaddaten verwendet werden." + +#~ msgid "_Execute Javascript" +#~ msgstr "Javascript _ausführen" + +#~ msgid "_Execute Python" +#~ msgstr "Python _ausführen" + +#~ msgid "_Execute Ruby" +#~ msgstr "Ruby _ausführen" + +#~ msgid "Script" +#~ msgstr "Skript" + +#~ msgid "Output" +#~ msgstr "Ausgabe" + +#~ msgid "Errors" +#~ msgstr "Fehler" + +#~ msgid "S_cripts..." +#~ msgstr "_Skripte…" + +#~ msgid "Run scripts" +#~ msgstr "Skripte ausführen" + +#~ msgid "Preset:" +#~ msgstr "Voreinstellung" + +#~ msgid "Custom..." +#~ msgstr "Benutzerdefiniert..." + +#~ msgid "Golden ratio" +#~ msgstr "Goldener Schnitt" + +#~ msgid "Rule-of-third" +#~ msgstr "Drittel-Regel" + +#~ msgid "Vertical guide each:" +#~ msgstr "Vertikale Führungslinie alle" + +#~ msgid "1/2" +#~ msgstr "1/2" + +#~ msgid "1/3" +#~ msgstr "1/3" + +#~ msgid "1/4" +#~ msgstr "1/4" + +#~ msgid "1/5" +#~ msgstr "1/5" + +#~ msgid "1/6" +#~ msgstr "1/6" + +#~ msgid "1/7" +#~ msgstr "1/7" + +#~ msgid "1/8" +#~ msgstr "1/8" + +#~ msgid "1/9" +#~ msgstr "1/9" + +#~ msgid "1/10" +#~ msgstr "1/10" + +#~ msgid "Horizontal guide each:" +#~ msgstr "Horizontale Führungslinie alle:" + #~ msgid "Crop:" #~ msgstr "Schneiden:" @@ -34068,9 +34323,6 @@ msgstr "XAML einlesen" #~ msgid "Blur type:" #~ msgstr "Unschärfe-Typ:" -#~ msgid "Blend source:" -#~ msgstr "Mischquelle:" - #~ msgid "Composite:" #~ msgstr "Zusammengesetzt:" @@ -34236,10 +34488,6 @@ msgstr "XAML einlesen" #~ msgid "[Unstable!] Clone original path" #~ msgstr "Originalpfad ersetzen" -#~ msgctxt "Filesystem" -#~ msgid "Path:" -#~ msgstr "Verzeichnis:" - #~ msgid "_Blur:" #~ msgstr "Unschärfe:" @@ -34305,10 +34553,6 @@ msgstr "XAML einlesen" #~ msgid "Text Replace" #~ msgstr "Ersetzen" -#, fuzzy -#~ msgid "Not found" -#~ msgstr "Nicht abgerundet" - #~ msgid "Major grid line emphasizing" #~ msgstr "Hauptgitterlinien Betonung" @@ -36025,9 +36269,6 @@ msgstr "XAML einlesen" #~ msgstr "" #~ "Legt die Art der Bool'schen Operation fest, die angewendet werden soll." -#~ msgid "Angle of the first copy" -#~ msgstr "Winkel der ersten Kopie" - #~ msgid "Rotation angle" #~ msgstr "Rotationswinkel" -- cgit v1.2.3 From 77f61343ff18f29f05331131c2fe2bd810a64498 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Sun, 25 Aug 2013 19:42:22 -0400 Subject: Use real world units for page sizes. (bzr r12475.1.1) --- src/svg/svg-length.cpp | 12 +++--- src/ui/dialog/document-properties.cpp | 30 +++++++++++++-- src/ui/widget/page-sizer.cpp | 69 +++++++++++++++++++---------------- src/ui/widget/page-sizer.h | 8 +++- src/util/units.cpp | 30 +++++++++++++++ src/util/units.h | 4 ++ 6 files changed, 110 insertions(+), 43 deletions(-) diff --git a/src/svg/svg-length.cpp b/src/svg/svg-length.cpp index ea438e91a..359884f05 100644 --- a/src/svg/svg-length.cpp +++ b/src/svg/svg-length.cpp @@ -367,7 +367,7 @@ static unsigned sp_svg_length_read_lff(gchar const *str, SVGLength::Unit *unit, *unit = SVGLength::PT; } if (computed) { - *computed = v * Inkscape::Util::Quantity::convert(1, "pt", "px"); + *computed = Inkscape::Util::Quantity::convert(v, "pt", "px"); } break; case UVAL('p','c'): @@ -375,7 +375,7 @@ static unsigned sp_svg_length_read_lff(gchar const *str, SVGLength::Unit *unit, *unit = SVGLength::PC; } if (computed) { - *computed = v * Inkscape::Util::Quantity::convert(1, "pc", "px"); + *computed = Inkscape::Util::Quantity::convert(v, "pc", "px"); } break; case UVAL('m','m'): @@ -383,7 +383,7 @@ static unsigned sp_svg_length_read_lff(gchar const *str, SVGLength::Unit *unit, *unit = SVGLength::MM; } if (computed) { - *computed = v * Inkscape::Util::Quantity::convert(1, "mm", "px"); + *computed = Inkscape::Util::Quantity::convert(v, "mm", "px"); } break; case UVAL('c','m'): @@ -391,7 +391,7 @@ static unsigned sp_svg_length_read_lff(gchar const *str, SVGLength::Unit *unit, *unit = SVGLength::CM; } if (computed) { - *computed = v * Inkscape::Util::Quantity::convert(1, "cm", "px"); + *computed = Inkscape::Util::Quantity::convert(v, "cm", "px"); } break; case UVAL('i','n'): @@ -399,7 +399,7 @@ static unsigned sp_svg_length_read_lff(gchar const *str, SVGLength::Unit *unit, *unit = SVGLength::INCH; } if (computed) { - *computed = v * Inkscape::Util::Quantity::convert(1, "in", "px"); + *computed = Inkscape::Util::Quantity::convert(v, "in", "px"); } break; case UVAL('f','t'): @@ -407,7 +407,7 @@ static unsigned sp_svg_length_read_lff(gchar const *str, SVGLength::Unit *unit, *unit = SVGLength::FOOT; } if (computed) { - *computed = v * Inkscape::Util::Quantity::convert(1, "ft", "px"); + *computed = Inkscape::Util::Quantity::convert(v, "ft", "px"); } break; case UVAL('e','m'): diff --git a/src/ui/dialog/document-properties.cpp b/src/ui/dialog/document-properties.cpp index 77fb182e5..430f28474 100644 --- a/src/ui/dialog/document-properties.cpp +++ b/src/ui/dialog/document-properties.cpp @@ -1433,9 +1433,33 @@ void DocumentProperties::update() if (nv->doc_units) _rum_deflt.setUnit (nv->doc_units->abbr); - double const doc_w_px = sp_desktop_document(dt)->getWidth(); - double const doc_h_px = sp_desktop_document(dt)->getHeight(); - _page_sizer.setDim (doc_w_px, doc_h_px); + double const doc_w = sp_desktop_document(dt)->getRoot()->width.value; + Glib::ustring doc_w_unit = unit_table.getUnit(sp_desktop_document(dt)->getRoot()->width.unit).abbr; + if (doc_w_unit == "") { + if (nv->units) { + doc_w_unit = nv->units->abbr; + } else { + if (nv->doc_units) { + doc_w_unit = nv->doc_units->abbr; + } else { + doc_w_unit = "px"; + } + } + } + double const doc_h = sp_desktop_document(dt)->getRoot()->height.value; + Glib::ustring doc_h_unit = unit_table.getUnit(sp_desktop_document(dt)->getRoot()->height.unit).abbr; + if (doc_h_unit == "") { + if (nv->units) { + doc_h_unit = nv->units->abbr; + } else { + if (nv->doc_units) { + doc_h_unit = nv->doc_units->abbr; + } else { + doc_h_unit = "px"; + } + } + } + _page_sizer.setDim(Inkscape::Util::Quantity(doc_w, doc_w_unit), Inkscape::Util::Quantity(doc_h, doc_h_unit)); _page_sizer.updateFitMarginsUI(nv->getRepr()); //-----------------------------------------------------------guide page diff --git a/src/ui/widget/page-sizer.cpp b/src/ui/widget/page-sizer.cpp index 8287452d7..5a289096c 100644 --- a/src/ui/widget/page-sizer.cpp +++ b/src/ui/widget/page-sizer.cpp @@ -442,6 +442,7 @@ PageSizer::init () _portrait_connection = _portraitButton.signal_toggled().connect (sigc::mem_fun (*this, &PageSizer::on_portrait)); _changedw_connection = _dimensionWidth.signal_value_changed().connect (sigc::mem_fun (*this, &PageSizer::on_value_changed)); _changedh_connection = _dimensionHeight.signal_value_changed().connect (sigc::mem_fun (*this, &PageSizer::on_value_changed)); + _changedu_connection = _dimensionUnits.getUnitMenu()->signal_changed().connect (sigc::mem_fun (*this, &PageSizer::on_units_changed)); _fitPageButton.signal_clicked().connect(sigc::mem_fun(*this, &PageSizer::fire_fit_canvas_to_selection_or_drawing)); show_all_children(); @@ -454,11 +455,11 @@ PageSizer::init () * 'changeList' is true, then adjust the paperSizeList to show the closest * standard page size. * - * \param w, h given in px + * \param w, h * \param changeList whether to modify the paper size list */ void -PageSizer::setDim (double w, double h, bool changeList) +PageSizer::setDim (Inkscape::Util::Quantity w, Inkscape::Util::Quantity h, bool changeList) { static bool _called = false; if (_called) { @@ -476,19 +477,19 @@ PageSizer::setDim (double w, double h, bool changeList) if (SP_ACTIVE_DESKTOP && !_widgetRegistry->isUpdating()) { SPDocument *doc = sp_desktop_document(SP_ACTIVE_DESKTOP); double const old_height = doc->getHeight(); - doc->setWidth (Inkscape::Util::Quantity(w, "px")); - doc->setHeight (Inkscape::Util::Quantity(h, "px")); + doc->setWidth (w); + doc->setHeight (h); // The origin for the user is in the lower left corner; this point should remain stationary when // changing the page size. The SVG's origin however is in the upper left corner, so we must compensate for this - Geom::Translate const vert_offset(Geom::Point(0, (old_height - h))); + Geom::Translate const vert_offset(Geom::Point(0, (old_height - h.quantity))); doc->getRoot()->translateChildItems(vert_offset); DocumentUndo::done(doc, SP_VERB_NONE, _("Set page size")); } - if ( w != h ) { + if ( w.quantity != h.quantity ) { _landscapeButton.set_sensitive(true); _portraitButton.set_sensitive (true); - _landscape = ( w > h ); + _landscape = ( w.quantity > h.quantity ); _landscapeButton.set_active(_landscape ? true : false); _portraitButton.set_active (_landscape ? false : true); } else { @@ -503,9 +504,10 @@ PageSizer::setDim (double w, double h, bool changeList) _paperSizeListSelection->select(row); } - Unit const& unit = _dimensionUnits.getUnit(); - _dimensionWidth.setValue (w / unit.factor); - _dimensionHeight.setValue (h / unit.factor); + _dimensionWidth.setUnit(w.unit->abbr); + _dimensionWidth.setValue (w.quantity); + _dimensionHeight.setUnit(h.unit->abbr); + _dimensionHeight.setValue (h.quantity); _paper_size_list_connection.unblock(); _landscape_connection.unblock(); @@ -547,12 +549,12 @@ PageSizer::updateFitMarginsUI(Inkscape::XML::Node *nv_repr) * paperSizeListStore->children().end() if no such paper exists. */ Gtk::ListStore::iterator -PageSizer::find_paper_size (double w, double h) const +PageSizer::find_paper_size (Inkscape::Util::Quantity w, Inkscape::Util::Quantity h) const { - double smaller = w; - double larger = h; - if ( h < w ) { - smaller = h; larger = w; + double smaller = w.quantity; + double larger = h.quantity; + if ( h.quantity < w.quantity ) { + smaller = h.quantity; larger = w.quantity; } g_return_val_if_fail(smaller <= larger, _paperSizeListStore->children().end()); @@ -562,8 +564,8 @@ PageSizer::find_paper_size (double w, double h) const iter != _paperSizeTable.end() ; ++iter) { PaperSize paper = iter->second; Inkscape::Util::Unit const &i_unit = paper.unit; - double smallX = Inkscape::Util::Quantity::convert(paper.smaller, i_unit, "px"); - double largeX = Inkscape::Util::Quantity::convert(paper.larger, i_unit, "px"); + double smallX = Inkscape::Util::Quantity::convert(paper.smaller, i_unit, *w.unit); + double largeX = Inkscape::Util::Quantity::convert(paper.larger, i_unit, *w.unit); g_return_val_if_fail(smallX <= largeX, _paperSizeListStore->children().end()); @@ -643,8 +645,8 @@ PageSizer::on_paper_size_list_changed() return; } PaperSize paper = piter->second; - double w = paper.smaller; - double h = paper.larger; + Inkscape::Util::Quantity w = Inkscape::Util::Quantity(paper.smaller, paper.unit); + Inkscape::Util::Quantity h = Inkscape::Util::Quantity(paper.larger, paper.unit); if (std::find(lscape_papers.begin(), lscape_papers.end(), paper.name.c_str()) != lscape_papers.end()) { // enforce landscape mode if this is desired for the given page format @@ -654,9 +656,6 @@ PageSizer::on_paper_size_list_changed() _landscape = _landscapeButton.get_active(); } - w = Inkscape::Util::Quantity::convert(w, paper.unit, "px"); - h = Inkscape::Util::Quantity::convert(h, paper.unit, "px"); - if (_landscape) setDim (h, w, false); else @@ -673,9 +672,9 @@ PageSizer::on_portrait() { if (!_portraitButton.get_active()) return; - double w = _dimensionWidth.getValue ("px"); - double h = _dimensionHeight.getValue ("px"); - if (h < w) { + Inkscape::Util::Quantity w = Inkscape::Util::Quantity(_dimensionWidth.getValue(""), _dimensionWidth.getUnit()); + Inkscape::Util::Quantity h = Inkscape::Util::Quantity(_dimensionHeight.getValue(""), _dimensionHeight.getUnit()); + if (h.quantity < w.quantity) { setDim (h, w); } } @@ -689,9 +688,9 @@ PageSizer::on_landscape() { if (!_landscapeButton.get_active()) return; - double w = _dimensionWidth.getValue ("px"); - double h = _dimensionHeight.getValue ("px"); - if (w < h) { + Inkscape::Util::Quantity w = Inkscape::Util::Quantity(_dimensionWidth.getValue(""), _dimensionWidth.getUnit()); + Inkscape::Util::Quantity h = Inkscape::Util::Quantity(_dimensionHeight.getValue(""), _dimensionHeight.getUnit()); + if (w.quantity < h.quantity) { setDim (h, w); } } @@ -703,11 +702,17 @@ void PageSizer::on_value_changed() { if (_widgetRegistry->isUpdating()) return; - - setDim (_dimensionWidth.getValue("px"), - _dimensionHeight.getValue("px")); + if (_unit != _dimensionUnits.getUnit().abbr) return; + setDim (Inkscape::Util::Quantity(_dimensionWidth.getValue(""), _dimensionUnits.getUnit()), + Inkscape::Util::Quantity(_dimensionHeight.getValue(""), _dimensionUnits.getUnit())); +} +void +PageSizer::on_units_changed() +{ + _unit = _dimensionUnits.getUnit().abbr; + setDim (Inkscape::Util::Quantity(_dimensionWidth.getValue(""), _dimensionUnits.getUnit()), + Inkscape::Util::Quantity(_dimensionHeight.getValue(""), _dimensionUnits.getUnit())); } - } // namespace Widget } // namespace UI diff --git a/src/ui/widget/page-sizer.h b/src/ui/widget/page-sizer.h index 34ed7592d..95836a005 100644 --- a/src/ui/widget/page-sizer.h +++ b/src/ui/widget/page-sizer.h @@ -161,7 +161,7 @@ public: * Set the page size to the given dimensions. If 'changeList' is * true, then reset the paper size list to the closest match */ - void setDim (double w, double h, bool changeList=true); + void setDim (Inkscape::Util::Quantity w, Inkscape::Util::Quantity h, bool changeList=true); /** * Updates the scalar widgets for the fit margins. (Just changes the value @@ -179,7 +179,7 @@ protected: /** * Find the closest standard paper size in the table, to the */ - Gtk::ListStore::iterator find_paper_size (double w, double h) const; + Gtk::ListStore::iterator find_paper_size (Inkscape::Util::Quantity w, Inkscape::Util::Quantity h) const; void fire_fit_canvas_to_selection_or_drawing(); @@ -252,13 +252,17 @@ protected: //callback void on_value_changed(); + void on_units_changed(); sigc::connection _changedw_connection; sigc::connection _changedh_connection; + sigc::connection _changedu_connection; Registry *_widgetRegistry; //### state - whether we are currently landscape or portrait bool _landscape; + + Glib::ustring _unit; }; diff --git a/src/util/units.cpp b/src/util/units.cpp index 7bc910fcc..e7be3f5e6 100644 --- a/src/util/units.cpp +++ b/src/util/units.cpp @@ -220,6 +220,36 @@ Unit UnitTable::getUnit(Glib::ustring const &unit_abbr) const return Unit(); } } +Unit UnitTable::getUnit(SVGLength::Unit const u) const +{ + Glib::ustring u_str; + switch(u) { + case 1: + u_str = "px"; break; + case 2: + u_str = "pt"; break; + case 3: + u_str = "pc"; break; + case 4: + u_str = "mm"; break; + case 5: + u_str = "cm"; break; + case 6: + u_str = "in"; break; + case 7: + u_str = "ft"; break; + case 8: + u_str = "em"; break; + case 9: + u_str = "ex"; break; + case 10: + u_str = "%"; break; + default: + u_str = ""; + } + + return getUnit(u_str); +} Quantity UnitTable::getQuantity(Glib::ustring const& q) const { diff --git a/src/util/units.h b/src/util/units.h index bb202b96a..c5ee87ae3 100644 --- a/src/util/units.h +++ b/src/util/units.h @@ -28,6 +28,7 @@ Need to review the Units support that's in Gtkmm already... #include #include +#include "svg/svg.h" namespace Inkscape { namespace Util { @@ -132,6 +133,9 @@ class UnitTable { /** Retrieve a given unit based on its string identifier */ Unit getUnit(Glib::ustring const &name) const; + /** Retrieve a given unit based on its SVGLength unit */ + Unit getUnit(SVGLength::Unit const u) const; + /** Retrieve a quantity based on its string identifier */ Quantity getQuantity(Glib::ustring const &q) const; -- cgit v1.2.3 From 205e7c81bd2f536b394a0786111bf60c0aac1df6 Mon Sep 17 00:00:00 2001 From: "Jon A. Cruz" Date: Sun, 25 Aug 2013 19:40:15 -0700 Subject: Updating outdated test. Fixes bug #1202271. Fixed bugs: - https://launchpad.net/bugs/1202271 (bzr r12487) --- src/preferences-test.h | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/src/preferences-test.h b/src/preferences-test.h index 8e8ddb65b..92cb14247 100644 --- a/src/preferences-test.h +++ b/src/preferences-test.h @@ -18,7 +18,7 @@ public: TestObserver(Glib::ustring const &path) : Inkscape::Preferences::Observer(path), value(0) {} - + virtual void notify(Inkscape::Preferences::Entry const &val) { value = val.getInt(); @@ -35,29 +35,29 @@ public: prefs = NULL; Inkscape::Preferences::unload(); } - + void testStartingState() { - TS_ASSERT(prefs != NULL); - TS_ASSERT_EQUALS(prefs->isWritable(), false); + TS_ASSERT_DIFFERS(prefs, static_cast(0)); + TS_ASSERT_EQUALS(prefs->isWritable(), true); } - + void testOverwrite() { prefs->setInt("/test/intvalue", 123); prefs->setInt("/test/intvalue", 321); TS_ASSERT_EQUALS(prefs->getInt("/test/intvalue"), 321); } - + void testDefaultReturn() { TS_ASSERT_EQUALS(prefs->getInt("/this/path/does/not/exist", 123), 123); } - + void testLimitedReturn() { prefs->setInt("/test/intvalue", 1000); - + // simple case TS_ASSERT_EQUALS(prefs->getIntLimited("/test/intvalue", 123, 0, 500), 123); // the below may seem quirky but this behaviour is intended @@ -66,7 +66,7 @@ public: TS_ASSERT_EQUALS(prefs->getIntLimited("/test/intvalue", 123, 0, 1000), 1000); TS_ASSERT_EQUALS(prefs->getIntLimited("/test/intvalue", 123, 1000, 5000), 1000); } - + void testKeyObserverNotification() { Glib::ustring const path = "/some/random/path"; @@ -74,18 +74,18 @@ public: obs.value = 1; prefs->setInt(path, 5); TS_ASSERT_EQUALS(obs.value, 1); // no notifications sent before adding - + prefs->addObserver(obs); prefs->setInt(path, 10); TS_ASSERT_EQUALS(obs.value, 10); prefs->setInt("/some/other/random/path", 10); TS_ASSERT_EQUALS(obs.value, 10); // value should not change - + prefs->removeObserver(obs); prefs->setInt(path, 15); TS_ASSERT_EQUALS(obs.value, 10); // no notifications sent after removal } - + void testEntryObserverNotification() { Glib::ustring const path = "/some/random/path"; @@ -93,11 +93,11 @@ public: obs.value = 1; prefs->setInt(path, 5); TS_ASSERT_EQUALS(obs.value, 1); // no notifications sent before adding - + prefs->addObserver(obs); prefs->setInt(path, 10); TS_ASSERT_EQUALS(obs.value, 10); - + // test that filtering works properly prefs->setInt("/some/random/value", 1234); TS_ASSERT_EQUALS(obs.value, 10); @@ -105,12 +105,12 @@ public: TS_ASSERT_EQUALS(obs.value, 10); prefs->setInt("/some/random/path2", 1234); TS_ASSERT_EQUALS(obs.value, 10); - + prefs->removeObserver(obs); prefs->setInt(path, 15); TS_ASSERT_EQUALS(obs.value, 10); // no notifications sent after removal } - + void testPreferencesEntryMethods() { prefs->setInt("/test/prefentry", 100); -- cgit v1.2.3 From 76efdea96c0548aa8d3eddafd1a5a960245e4e21 Mon Sep 17 00:00:00 2001 From: "David R. Bild" Date: Mon, 26 Aug 2013 14:03:43 -0600 Subject: Move omit text feature from cairo renderer to context (bzr r12487.1.1) --- src/extension/internal/cairo-ps-out.cpp | 2 +- src/extension/internal/cairo-render-context.cpp | 14 ++++++++++++++ src/extension/internal/cairo-render-context.h | 6 ++++++ src/extension/internal/cairo-renderer-pdf-out.cpp | 2 +- src/extension/internal/cairo-renderer.cpp | 6 ------ src/extension/internal/cairo-renderer.h | 4 ---- 6 files changed, 22 insertions(+), 12 deletions(-) diff --git a/src/extension/internal/cairo-ps-out.cpp b/src/extension/internal/cairo-ps-out.cpp index bfbdd8149..e06c9f30d 100644 --- a/src/extension/internal/cairo-ps-out.cpp +++ b/src/extension/internal/cairo-ps-out.cpp @@ -97,7 +97,7 @@ ps_print_document_to_file(SPDocument *doc, gchar const *filename, unsigned int l ctx->setPSLevel(level); ctx->setEPS(eps); ctx->setTextToPath(texttopath); - renderer->_omitText = omittext; + ctx->setOmitText(omittext); ctx->setFilterToBitmap(filtertobitmap); ctx->setBitmapResolution(resolution); diff --git a/src/extension/internal/cairo-render-context.cpp b/src/extension/internal/cairo-render-context.cpp index 0ea1fd591..75ec45ad0 100644 --- a/src/extension/internal/cairo-render-context.cpp +++ b/src/extension/internal/cairo-render-context.cpp @@ -111,6 +111,7 @@ CairoRenderContext::CairoRenderContext(CairoRenderer *parent) : _ps_level(1), _eps(false), _is_texttopath(FALSE), + _is_omittext(FALSE), _is_filtertobitmap(FALSE), _bitmapresolution(72), _stream(NULL), @@ -426,6 +427,16 @@ void CairoRenderContext::setTextToPath(bool texttopath) _is_texttopath = texttopath; } +void CairoRenderContext::setOmitText(bool omittext) +{ + _is_omittext = omittext; +} + +bool CairoRenderContext::getOmitText(void) +{ + return _is_omittext; +} + void CairoRenderContext::setFilterToBitmap(bool filtertobitmap) { _is_filtertobitmap = filtertobitmap; @@ -1490,6 +1501,9 @@ bool CairoRenderContext::renderGlyphtext(PangoFont *font, Geom::Affine const &font_matrix, std::vector const &glyphtext, SPStyle const *style) { + if (_is_omittext) + return true; + // create a cairo_font_face from PangoFont double size = style->font_size.computed; /// \fixme why is this variable never used? gpointer fonthash = (gpointer)font; diff --git a/src/extension/internal/cairo-render-context.h b/src/extension/internal/cairo-render-context.h index 8829940c6..e66d4bf00 100644 --- a/src/extension/internal/cairo-render-context.h +++ b/src/extension/internal/cairo-render-context.h @@ -94,6 +94,8 @@ public: void setPDFLevel(unsigned int level); void setTextToPath(bool texttopath); bool getTextToPath(void); + void setOmitText(bool omittext); + bool getOmitText(void); void setFilterToBitmap(bool filtertobitmap); bool getFilterToBitmap(void); void setBitmapResolution(int resolution); @@ -109,6 +111,9 @@ public: /** Saves the contents of the context to a PNG file. */ bool saveAsPng(const char *file_name); + /** On targets supporting multiple pages, sends subsequent rendering to a new page*/ + void newPage(void); + /* Render/clip mode setting/query */ void setRenderMode(CairoRenderMode mode); CairoRenderMode getRenderMode(void) const; @@ -157,6 +162,7 @@ protected: unsigned int _ps_level; bool _eps; bool _is_texttopath; + bool _is_omittext; bool _is_filtertobitmap; int _bitmapresolution; diff --git a/src/extension/internal/cairo-renderer-pdf-out.cpp b/src/extension/internal/cairo-renderer-pdf-out.cpp index 0a0c3f44a..b9125582a 100644 --- a/src/extension/internal/cairo-renderer-pdf-out.cpp +++ b/src/extension/internal/cairo-renderer-pdf-out.cpp @@ -94,7 +94,7 @@ pdf_render_document_to_file(SPDocument *doc, gchar const *filename, unsigned int CairoRenderContext *ctx = renderer->createContext(); ctx->setPDFLevel(level); ctx->setTextToPath(texttopath); - renderer->_omitText = omittext; + ctx->setOmitText(omittext); ctx->setFilterToBitmap(filtertobitmap); ctx->setBitmapResolution(resolution); diff --git a/src/extension/internal/cairo-renderer.cpp b/src/extension/internal/cairo-renderer.cpp index f7ab63c98..76ebbfcb5 100644 --- a/src/extension/internal/cairo-renderer.cpp +++ b/src/extension/internal/cairo-renderer.cpp @@ -101,7 +101,6 @@ namespace Extension { namespace Internal { CairoRenderer::CairoRenderer(void) - : _omitText(false) {} CairoRenderer::~CairoRenderer(void) @@ -578,11 +577,6 @@ CairoRenderer::setStateForItem(CairoRenderContext *ctx, SPItem const *item) // TODO change this to accept a const SPItem: void CairoRenderer::renderItem(CairoRenderContext *ctx, SPItem *item) { - if ( _omitText && (SP_IS_TEXT(item) || SP_IS_FLOWTEXT(item)) ) { - // skip text if _omitText is true - return; - } - ctx->pushState(); setStateForItem(ctx, item); diff --git a/src/extension/internal/cairo-renderer.h b/src/extension/internal/cairo-renderer.h index c1482d82e..1ab8f1872 100644 --- a/src/extension/internal/cairo-renderer.h +++ b/src/extension/internal/cairo-renderer.h @@ -57,10 +57,6 @@ public: /** Traverses the object tree and invokes the render methods. */ void renderItem(CairoRenderContext *ctx, SPItem *item); - - /** If _omitText is true, no text will be output to the PDF document. - The PDF will be exactly the same as if the text was written to it and then erased. */ - bool _omitText; }; // FIXME: this should be a static method of CairoRenderer -- cgit v1.2.3 From f10048be170a45921ae8fc65ccd2588a9ad2897d Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Tue, 27 Aug 2013 12:32:55 -0400 Subject: Added viewBox implement document unit support. (bzr r12475.1.2) --- src/desktop.cpp | 10 +++--- src/document.cpp | 39 ++++++++++++++++------- src/document.h | 5 +-- src/extension/internal/cairo-renderer.cpp | 4 +-- src/extension/internal/grid.cpp | 5 +-- src/extension/internal/latex-pstricks.cpp | 8 ++--- src/extension/internal/latex-text-renderer.cpp | 4 +-- src/extension/internal/odf.cpp | 3 +- src/file.cpp | 2 +- src/flood-context.cpp | 4 +-- src/helper/pixbuf-ops.cpp | 2 +- src/helper/png-write.cpp | 3 +- src/inkview.cpp | 7 +++-- src/lpe-tool-context.cpp | 4 +-- src/object-snapper.cpp | 6 ++-- src/persp3d.cpp | 7 +++-- src/selection-chemistry.cpp | 4 +-- src/sp-guide.cpp | 2 +- src/sp-item-group.cpp | 31 +++++++++++++++++++ src/sp-item-group.h | 1 + src/sp-item.cpp | 6 ++-- src/sp-root.h | 2 +- src/svg-view-widget.cpp | 5 +-- src/svg-view.cpp | 13 ++++---- src/ui/dialog/aboutbox.cpp | 5 +-- src/ui/dialog/document-properties.cpp | 43 +++++++++++++++----------- src/ui/dialog/document-properties.h | 4 +++ src/ui/dialog/export.cpp | 6 ++-- src/ui/dialog/print.cpp | 8 ++--- src/ui/widget/page-sizer.cpp | 5 +-- src/widgets/desktop-widget.cpp | 4 +-- src/widgets/icon.cpp | 3 +- 32 files changed, 163 insertions(+), 92 deletions(-) diff --git a/src/desktop.cpp b/src/desktop.cpp index 13e339abe..ea53b9cf7 100644 --- a/src/desktop.cpp +++ b/src/desktop.cpp @@ -240,7 +240,7 @@ SPDesktop::init (SPNamedView *nv, SPCanvas *aCanvas, Inkscape::UI::View::EditWid // display rect and zoom are now handled in sp_desktop_widget_realize() Geom::Rect const d(Geom::Point(0.0, 0.0), - Geom::Point(document->getWidth(), document->getHeight())); + Geom::Point(document->getWidth().value("px"), document->getHeight().value("px"))); SP_CTRLRECT(page)->setRectangle(d); SP_CTRLRECT(page_border)->setRectangle(d); @@ -257,7 +257,7 @@ SPDesktop::init (SPNamedView *nv, SPCanvas *aCanvas, Inkscape::UI::View::EditWid /* Connect event for page resize */ - _doc2dt[5] = document->getHeight(); + _doc2dt[5] = document->getHeight().value("px"); sp_canvas_item_affine_absolute (SP_CANVAS_ITEM (drawing), _doc2dt); _modified_connection = namedview->connectModified(sigc::bind<2>(sigc::ptr_fun(&_namedview_modified), this)); @@ -1010,7 +1010,7 @@ void SPDesktop::zoom_page() { Geom::Rect d(Geom::Point(0, 0), - Geom::Point(doc()->getWidth(), doc()->getHeight())); + Geom::Point(doc()->getWidth().value("px"), doc()->getHeight().value("px"))); if (d.minExtent() < 1.0) { return; @@ -1027,12 +1027,12 @@ SPDesktop::zoom_page_width() { Geom::Rect const a = get_display_area(); - if (doc()->getWidth() < 1.0) { + if (doc()->getWidth().value("px") < 1.0) { return; } Geom::Rect d(Geom::Point(0, a.midpoint()[Geom::Y]), - Geom::Point(doc()->getWidth(), a.midpoint()[Geom::Y])); + Geom::Point(doc()->getWidth().value("px"), a.midpoint()[Geom::Y])); set_display_area(d, 10); } diff --git a/src/document.cpp b/src/document.cpp index 0b742e491..20c6fe331 100644 --- a/src/document.cpp +++ b/src/document.cpp @@ -534,16 +534,20 @@ SPDocument *SPDocument::doUnref() return NULL; } -gdouble SPDocument::getWidth() const +Inkscape::Util::Quantity SPDocument::getWidth() const { - g_return_val_if_fail(this->priv != NULL, 0.0); - g_return_val_if_fail(this->root != NULL, 0.0); + g_return_val_if_fail(this->priv != NULL, Inkscape::Util::Quantity(0.0, Inkscape::Util::Unit())); + g_return_val_if_fail(this->root != NULL, Inkscape::Util::Quantity(0.0, Inkscape::Util::Unit())); - gdouble result = root->width.computed; + gdouble result = root->width.value; + SVGLength::Unit u = root->width.unit; if (root->width.unit == SVGLength::PERCENT && root->viewBox_set) { result = root->viewBox.width(); } - return result; + if (u == SVGLength::NONE) { + u = SVGLength::PX; + } + return Inkscape::Util::Quantity(result, unit_table.getUnit(u)); } void SPDocument::setWidth(const Inkscape::Util::Quantity &width) @@ -570,16 +574,20 @@ void SPDocument::setWidth(const Inkscape::Util::Quantity &width) root->updateRepr(); } -gdouble SPDocument::getHeight() const +Inkscape::Util::Quantity SPDocument::getHeight() const { - g_return_val_if_fail(this->priv != NULL, 0.0); - g_return_val_if_fail(this->root != NULL, 0.0); + g_return_val_if_fail(this->priv != NULL, Inkscape::Util::Quantity(0.0, Inkscape::Util::Unit())); + g_return_val_if_fail(this->root != NULL, Inkscape::Util::Quantity(0.0, Inkscape::Util::Unit())); - gdouble result = root->height.computed; + gdouble result = root->height.value; + SVGLength::Unit u = root->height.unit; if (root->height.unit == SVGLength::PERCENT && root->viewBox_set) { result = root->viewBox.height(); } - return result; + if (u == SVGLength::NONE) { + u = SVGLength::PX; + } + return Inkscape::Util::Quantity(result, unit_table.getUnit(u)); } void SPDocument::setHeight(const Inkscape::Util::Quantity &height) @@ -606,9 +614,16 @@ void SPDocument::setHeight(const Inkscape::Util::Quantity &height) root->updateRepr(); } +void SPDocument::setViewBox(const Geom::Rect &viewBox) +{ + root->viewBox_set = true; + root->viewBox = viewBox; + root->updateRepr(); +} + Geom::Point SPDocument::getDimensions() const { - return Geom::Point(getWidth(), getHeight()); + return Geom::Point(getWidth().value("px"), getHeight().value("px")); } Geom::OptRect SPDocument::preferredBounds() const @@ -630,7 +645,7 @@ void SPDocument::fitToRect(Geom::Rect const &rect, bool with_margins) double const w = rect.width(); double const h = rect.height(); - double const old_height = getHeight(); + double const old_height = getHeight().value("px"); Inkscape::Util::Unit const px = unit_table.getUnit("px"); /* in px */ diff --git a/src/document.h b/src/document.h index 6782c6206..ebee3a84c 100644 --- a/src/document.h +++ b/src/document.h @@ -227,12 +227,13 @@ public: SPDocument *doRef(); SPDocument *doUnref(); - gdouble getWidth() const; - gdouble getHeight() const; + Inkscape::Util::Quantity getWidth() const; + Inkscape::Util::Quantity getHeight() const; Geom::Point getDimensions() const; Geom::OptRect preferredBounds() const; void setWidth(const Inkscape::Util::Quantity &width); void setHeight(const Inkscape::Util::Quantity &height); + void setViewBox(const Geom::Rect &viewBox); void requestModified(); gint ensureUpToDate(); bool addResource(const gchar *key, SPObject *object); diff --git a/src/extension/internal/cairo-renderer.cpp b/src/extension/internal/cairo-renderer.cpp index f7ab63c98..eddc5ba23 100644 --- a/src/extension/internal/cairo-renderer.cpp +++ b/src/extension/internal/cairo-renderer.cpp @@ -645,9 +645,9 @@ CairoRenderer::setupDocument(CairoRenderContext *ctx, SPDocument *doc, bool page Geom::Affine tp( Geom::Translate( bleedmargin_px, bleedmargin_px ) ); ctx->transform(tp); } else { - double high = doc->getHeight(); + double high = doc->getHeight().value("px"); if (ctx->_vector_based_target) - high *= Inkscape::Util::Quantity::convert(1, "px", "pt"); + high = Inkscape::Util::Quantity::convert(high, "px", "pt"); // this transform translates the export drawing to a virtual page (0,0)-(width,height) Geom::Affine tp(Geom::Translate(-d.left() * (ctx->_vector_based_target ? Inkscape::Util::Quantity::convert(1, "pt", "px") : 1.0), diff --git a/src/extension/internal/grid.cpp b/src/extension/internal/grid.cpp index 820d1c9d3..2f9d0ff25 100644 --- a/src/extension/internal/grid.cpp +++ b/src/extension/internal/grid.cpp @@ -35,6 +35,7 @@ #include "extension/effect.h" #include "extension/system.h" +#include "util/units.h" #include "grid.h" @@ -97,14 +98,14 @@ Grid::effect (Inkscape::Extension::Effect *module, Inkscape::UI::View::View *doc /* get page size */ SPDocument * doc = document->doc(); bounding_area = Geom::Rect( Geom::Point(0,0), - Geom::Point(doc->getWidth(), doc->getHeight()) ); + Geom::Point(doc->getWidth().value("px"), doc->getHeight().value("px")) ); } else { Geom::OptRect bounds = selection->visualBounds(); if (bounds) { bounding_area = *bounds; } - gdouble doc_height = (document->doc())->getHeight(); + gdouble doc_height = (document->doc())->getHeight().value("px"); Geom::Rect temprec = Geom::Rect(Geom::Point(bounding_area.min()[Geom::X], doc_height - bounding_area.min()[Geom::Y]), Geom::Point(bounding_area.max()[Geom::X], doc_height - bounding_area.max()[Geom::Y])); diff --git a/src/extension/internal/latex-pstricks.cpp b/src/extension/internal/latex-pstricks.cpp index 2ece1ba87..c8e8e2f2e 100644 --- a/src/extension/internal/latex-pstricks.cpp +++ b/src/extension/internal/latex-pstricks.cpp @@ -117,8 +117,8 @@ unsigned int PrintLatex::begin (Inkscape::Extension::Print *mod, SPDocument *doc } // width and height in pt - _width = doc->getWidth() * Inkscape::Util::Quantity::convert(1, "px", "pt"); - _height = doc->getHeight() * Inkscape::Util::Quantity::convert(1, "px", "pt"); + _width = doc->getWidth().value("pt"); + _height = doc->getHeight().value("pt"); if (res >= 0) { @@ -128,10 +128,10 @@ unsigned int PrintLatex::begin (Inkscape::Extension::Print *mod, SPDocument *doc os << "\\psset{xunit=.5pt,yunit=.5pt,runit=.5pt}\n"; // from now on we can output px, but they will be treated as pt - os << "\\begin{pspicture}(" << doc->getWidth() << "," << doc->getHeight() << ")\n"; + os << "\\begin{pspicture}(" << doc->getWidth().value("px") << "," << doc->getHeight().value("px") << ")\n"; } - m_tr_stack.push( Geom::Scale(1, -1) * Geom::Translate(0, doc->getHeight())); /// @fixme hardcoded doc2dt transform + m_tr_stack.push( Geom::Scale(1, -1) * Geom::Translate(0, doc->getHeight().value("px"))); /// @fixme hardcoded doc2dt transform return fprintf(_stream, "%s", os.str().c_str()); } diff --git a/src/extension/internal/latex-text-renderer.cpp b/src/extension/internal/latex-text-renderer.cpp index 57a71b467..b1c67aa81 100644 --- a/src/extension/internal/latex-text-renderer.cpp +++ b/src/extension/internal/latex-text-renderer.cpp @@ -602,7 +602,7 @@ LaTeXTextRenderer::setupDocument(SPDocument *doc, bool pageBoundingBox, float bl } // flip y-axis - push_transform( Geom::Scale(1,-1) * Geom::Translate(0, doc->getHeight()) ); /// @fixme hardcoded desktop transform! + push_transform( Geom::Scale(1,-1) * Geom::Translate(0, doc->getHeight().value("px")) ); /// @fixme hardcoded desktop transform! // write the info to LaTeX Inkscape::SVGOStringStream os; @@ -611,7 +611,7 @@ LaTeXTextRenderer::setupDocument(SPDocument *doc, bool pageBoundingBox, float bl // scaling of the image when including it in LaTeX os << " \\ifx\\svgwidth\\undefined%\n"; - os << " \\setlength{\\unitlength}{" << d.width() * Inkscape::Util::Quantity::convert(1, "px", "pt") << "bp}%\n"; // note: 'bp' is the Postscript pt unit in LaTeX, see LP bug #792384 + os << " \\setlength{\\unitlength}{" << Inkscape::Util::Quantity::convert(d.width(), "px", "pt") << "bp}%\n"; // note: 'bp' is the Postscript pt unit in LaTeX, see LP bug #792384 os << " \\ifx\\svgscale\\undefined%\n"; os << " \\relax%\n"; os << " \\else%\n"; diff --git a/src/extension/internal/odf.cpp b/src/extension/internal/odf.cpp index 9f745cdea..a4dbd1428 100644 --- a/src/extension/internal/odf.cpp +++ b/src/extension/internal/odf.cpp @@ -75,6 +75,7 @@ #include "sp-flowtext.h" #include "svg/svg.h" #include "text-editing.h" +#include "util/units.h" //# DOM-specific includes @@ -945,7 +946,7 @@ static Geom::Affine getODFTransform(const SPItem *item) //### Get SVG-to-ODF transform Geom::Affine tf (item->i2dt_affine()); //Flip Y into document coordinates - double doc_height = SP_ACTIVE_DOCUMENT->getHeight(); + double doc_height = SP_ACTIVE_DOCUMENT->getHeight().value("px"); Geom::Affine doc2dt_tf = Geom::Affine(Geom::Scale(1.0, -1.0)); /// @fixme hardcoded desktop transform doc2dt_tf = doc2dt_tf * Geom::Affine(Geom::Translate(0, doc_height)); tf = tf * doc2dt_tf; diff --git a/src/file.cpp b/src/file.cpp index 5007cd901..bb66e3330 100644 --- a/src/file.cpp +++ b/src/file.cpp @@ -263,7 +263,7 @@ bool sp_file_open(const Glib::ustring &uri, // If the current desktop is empty, open the document there doc->ensureUpToDate(); // TODO this will trigger broken link warnings, etc. desktop->change_document(doc); - doc->emitResizedSignal(doc->getWidth(), doc->getHeight()); + doc->emitResizedSignal(doc->getWidth().value("px"), doc->getHeight().value("px")); } else { // create a whole new desktop and window SPViewWidget *dtw = sp_desktop_widget_new(sp_document_namedview(doc, NULL)); // TODO this will trigger broken link warnings, etc. diff --git a/src/flood-context.cpp b/src/flood-context.cpp index a719f1202..c944e5683 100644 --- a/src/flood-context.cpp +++ b/src/flood-context.cpp @@ -797,7 +797,7 @@ static void sp_flood_do_flood_fill(SPEventContext *event_context, GdkEvent *even unsigned int height = (int)ceil(screen.height() * zoom_scale * padding); Geom::Point origin(screen.min()[Geom::X], - document->getHeight() - screen.height() - screen.min()[Geom::Y]); + document->getHeight().value("px") - screen.height() - screen.min()[Geom::Y]); origin[Geom::X] += (screen.width() * ((1 - padding) / 2)); origin[Geom::Y] += (screen.height() * ((1 - padding) / 2)); @@ -907,7 +907,7 @@ static void sp_flood_do_flood_fill(SPEventContext *event_context, GdkEvent *even } for (unsigned int i = 0; i < fill_points.size(); i++) { - Geom::Point pw = Geom::Point(fill_points[i][Geom::X] / zoom_scale, document->getHeight() + (fill_points[i][Geom::Y] / zoom_scale)) * affine; + Geom::Point pw = Geom::Point(fill_points[i][Geom::X] / zoom_scale, document->getHeight().value("px") + (fill_points[i][Geom::Y] / zoom_scale)) * affine; pw[Geom::X] = (int)MIN(width - 1, MAX(0, pw[Geom::X])); pw[Geom::Y] = (int)MIN(height - 1, MAX(0, pw[Geom::Y])); diff --git a/src/helper/pixbuf-ops.cpp b/src/helper/pixbuf-ops.cpp index 75c002c57..db7b73e34 100644 --- a/src/helper/pixbuf-ops.cpp +++ b/src/helper/pixbuf-ops.cpp @@ -116,7 +116,7 @@ GdkPixbuf *sp_generate_internal_bitmap(SPDocument *doc, gchar const */*filename* double padding = 1.0; Geom::Point origin(screen.min()[Geom::X], - doc->getHeight() - screen[Geom::Y].extent() - screen.min()[Geom::Y]); + doc->getHeight().value("px") - screen[Geom::Y].extent() - screen.min()[Geom::Y]); origin[Geom::X] = origin[Geom::X] + (screen[Geom::X].extent() * ((1 - padding) / 2)); origin[Geom::Y] = origin[Geom::Y] + (screen[Geom::Y].extent() * ((1 - padding) / 2)); diff --git a/src/helper/png-write.cpp b/src/helper/png-write.cpp index c43a207c8..b8b815b4c 100644 --- a/src/helper/png-write.cpp +++ b/src/helper/png-write.cpp @@ -34,6 +34,7 @@ #include "preferences.h" #include "rdf.h" #include "display/cairo-utils.h" +#include "util/units.h" /* This is an example of how to use libpng to read and write PNG files. * The file libpng.txt is much more verbose then this. If you have not @@ -415,7 +416,7 @@ ExportResult sp_export_png_file(SPDocument *doc, gchar const *filename, doc->ensureUpToDate(); /* Calculate translation by transforming to document coordinates (flipping Y)*/ - Geom::Point translation = Geom::Point(-area[Geom::X][0], area[Geom::Y][1] - doc->getHeight()); + Geom::Point translation = Geom::Point(-area[Geom::X][0], area[Geom::Y][1] - doc->getHeight().value("px")); /* This calculation is only valid when assumed that (x0,y0)= area.corner(0) and (x1,y1) = area.corner(2) * 1) a[0] * x0 + a[2] * y1 + a[4] = 0.0 diff --git a/src/inkview.cpp b/src/inkview.cpp index fd7f6b608..e65638df6 100644 --- a/src/inkview.cpp +++ b/src/inkview.cpp @@ -54,6 +54,7 @@ #include "document.h" #include "svg-view.h" #include "svg-view-widget.h" +#include "util/units.h" #ifdef WITH_INKJAR #include "io/inkjar.h" @@ -308,8 +309,8 @@ main (int argc, const char **argv) w = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_title( GTK_WINDOW(w), ss.doc->getName() ); gtk_window_set_default_size (GTK_WINDOW (w), - MIN ((int)(ss.doc)->getWidth (), (int)gdk_screen_width () - 64), - MIN ((int)(ss.doc)->getHeight (), (int)gdk_screen_height () - 64)); + MIN ((int)(ss.doc)->getWidth().value("px"), (int)gdk_screen_width() - 64), + MIN ((int)(ss.doc)->getHeight().value("px"), (int)gdk_screen_height() - 64)); ss.window = w; g_signal_connect (G_OBJECT (w), "delete_event", (GCallback) sp_svgview_main_delete, &ss); @@ -318,7 +319,7 @@ main (int argc, const char **argv) (ss.doc)->ensureUpToDate(); ss.view = sp_svg_view_widget_new (ss.doc); (ss.doc)->doUnref (); - SP_SVG_VIEW_WIDGET(ss.view)->setResize( false, ss.doc->getWidth(), ss.doc->getHeight() ); + SP_SVG_VIEW_WIDGET(ss.view)->setResize( false, ss.doc->getWidth().value("px"), ss.doc->getHeight().value("px") ); gtk_widget_show (ss.view); gtk_container_add (GTK_CONTAINER (w), ss.view); diff --git a/src/lpe-tool-context.cpp b/src/lpe-tool-context.cpp index 062a75a7b..49af2be47 100644 --- a/src/lpe-tool-context.cpp +++ b/src/lpe-tool-context.cpp @@ -369,8 +369,8 @@ lpetool_context_switch_mode(SPLPEToolContext *lc, Inkscape::LivePathEffect::Effe void lpetool_get_limiting_bbox_corners(SPDocument *document, Geom::Point &A, Geom::Point &B) { - Geom::Coord w = document->getWidth(); - Geom::Coord h = document->getHeight(); + Geom::Coord w = document->getWidth().value("px"); + Geom::Coord h = document->getHeight().value("px"); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); double ulx = prefs->getDouble("/tools/lpetool/bbox_upperleftx", 0); diff --git a/src/object-snapper.cpp b/src/object-snapper.cpp index 77ba3040f..c5a3e1e88 100644 --- a/src/object-snapper.cpp +++ b/src/object-snapper.cpp @@ -770,7 +770,7 @@ void Inkscape::ObjectSnapper::_clear_paths() const Geom::PathVector* Inkscape::ObjectSnapper::_getBorderPathv() const { - Geom::Rect const border_rect = Geom::Rect(Geom::Point(0,0), Geom::Point((_snapmanager->getDocument())->getWidth(),(_snapmanager->getDocument())->getHeight())); + Geom::Rect const border_rect = Geom::Rect(Geom::Point(0,0), Geom::Point((_snapmanager->getDocument())->getWidth().value("px"),(_snapmanager->getDocument())->getHeight().value("px"))); return _getPathvFromRect(border_rect); } @@ -787,8 +787,8 @@ Geom::PathVector* Inkscape::ObjectSnapper::_getPathvFromRect(Geom::Rect const re void Inkscape::ObjectSnapper::_getBorderNodes(std::vector *points) const { - Geom::Coord w = (_snapmanager->getDocument())->getWidth(); - Geom::Coord h = (_snapmanager->getDocument())->getHeight(); + Geom::Coord w = (_snapmanager->getDocument())->getWidth().value("px"); + Geom::Coord h = (_snapmanager->getDocument())->getHeight().value("px"); points->push_back(SnapCandidatePoint(Geom::Point(0,0), SNAPSOURCE_UNDEFINED, SNAPTARGET_PAGE_CORNER)); points->push_back(SnapCandidatePoint(Geom::Point(0,h), SNAPSOURCE_UNDEFINED, SNAPTARGET_PAGE_CORNER)); points->push_back(SnapCandidatePoint(Geom::Point(w,h), SNAPSOURCE_UNDEFINED, SNAPTARGET_PAGE_CORNER)); diff --git a/src/persp3d.cpp b/src/persp3d.cpp index 2744efb75..6ff2a6a85 100644 --- a/src/persp3d.cpp +++ b/src/persp3d.cpp @@ -24,6 +24,7 @@ #include "desktop-handles.h" #include #include "verbs.h" +#include "util/units.h" using Inkscape::DocumentUndo; @@ -191,10 +192,10 @@ Persp3D *persp3d_create_xml_element(SPDocument *document, Persp3DImpl *dup) {// repr = xml_doc->createElement("inkscape:perspective"); repr->setAttribute("sodipodi:type", "inkscape:persp3d"); - Proj::Pt2 proj_vp_x = Proj::Pt2 (0.0, document->getHeight()/2, 1.0); + Proj::Pt2 proj_vp_x = Proj::Pt2 (0.0, document->getHeight().value("px")/2, 1.0); Proj::Pt2 proj_vp_y = Proj::Pt2 (0.0, 1000.0, 0.0); - Proj::Pt2 proj_vp_z = Proj::Pt2 (document->getWidth(), document->getHeight()/2, 1.0); - Proj::Pt2 proj_origin = Proj::Pt2 (document->getWidth()/2, document->getHeight()/3, 1.0); + Proj::Pt2 proj_vp_z = Proj::Pt2 (document->getWidth().value("px"), document->getHeight().value("px")/2, 1.0); + Proj::Pt2 proj_origin = Proj::Pt2 (document->getWidth().value("px")/2, document->getHeight().value("px")/3, 1.0); if (dup) { proj_vp_x = dup->tmat.column (Proj::X); diff --git a/src/selection-chemistry.cpp b/src/selection-chemistry.cpp index 5976555f4..3c12b78bd 100644 --- a/src/selection-chemistry.cpp +++ b/src/selection-chemistry.cpp @@ -2808,7 +2808,7 @@ void sp_selection_to_marker(SPDesktop *desktop, bool apply) } // calculate the transform to be applied to objects to move them to 0,0 - Geom::Point move_p = Geom::Point(0, doc->getHeight()) - *c; + Geom::Point move_p = Geom::Point(0, doc->getHeight().value("px")) - *c; move_p[Geom::Y] = -move_p[Geom::Y]; Geom::Affine move = Geom::Affine(Geom::Translate(move_p)); @@ -3092,7 +3092,7 @@ sp_selection_tile(SPDesktop *desktop, bool apply) } // calculate the transform to be applied to objects to move them to 0,0 - Geom::Point move_p = Geom::Point(0, doc->getHeight()) - (r->min() + Geom::Point(0, r->dimensions()[Geom::Y])); + Geom::Point move_p = Geom::Point(0, doc->getHeight().value("px")) - (r->min() + Geom::Point(0, r->dimensions()[Geom::Y])); move_p[Geom::Y] = -move_p[Geom::Y]; Geom::Affine move = Geom::Affine(Geom::Translate(move_p)); diff --git a/src/sp-guide.cpp b/src/sp-guide.cpp index 961e53e04..f28a20a2b 100644 --- a/src/sp-guide.cpp +++ b/src/sp-guide.cpp @@ -275,7 +275,7 @@ sp_guide_create_guides_around_page(SPDesktop *dt) { std::list > pts; Geom::Point A(0, 0); - Geom::Point C(doc->getWidth(), doc->getHeight()); + Geom::Point C(doc->getWidth().value("px"), doc->getHeight().value("px")); Geom::Point B(C[Geom::X], 0); Geom::Point D(0, C[Geom::Y]); diff --git a/src/sp-item-group.cpp b/src/sp-item-group.cpp index a2eda6625..1b3a53828 100644 --- a/src/sp-item-group.cpp +++ b/src/sp-item-group.cpp @@ -50,6 +50,8 @@ #include "sp-switch.h" #include "sp-defs.h" #include "verbs.h" +#include "layer-model.h" +#include "selection-chemistry.h" using Inkscape::DocumentUndo; @@ -561,6 +563,35 @@ void SPGroup::translateChildItems(Geom::Translate const &tr) } } +// Recursively scale child items around a point +void SPGroup::scaleChildItemsRec(Geom::Scale const &sc, Geom::Point const &p) +{ + if ( hasChildren() ) { + for (SPObject *o = firstChild() ; o ; o = o->getNext() ) { + if ( SP_IS_ITEM(o) ) { + if (SP_IS_GROUP(o)) { + SP_GROUP(o)->scaleChildItemsRec(sc, p); + } else { + SPItem *item = reinterpret_cast(o); + Geom::OptRect bbox = item->desktopVisualBounds(); + if (bbox) { + // Clear selection (TODO: save and restore selection) + sp_desktop_selection(SP_ACTIVE_DESKTOP)->clear(); + + // Scale item + Geom::Translate const s(p); + Geom::Affine final = s.inverse() * sc * s; + Inkscape::LayerModel layers = Inkscape::LayerModel(); + Inkscape::Selection selection(&layers, SP_ACTIVE_DESKTOP); + selection.add(item); + sp_selection_apply_affine(&selection, final, true, true); + } + } + } + } + } +} + CGroup::CGroup(SPGroup *group) { _group = group; } diff --git a/src/sp-item-group.h b/src/sp-item-group.h index c13fa2b75..0b9d019a5 100644 --- a/src/sp-item-group.h +++ b/src/sp-item-group.h @@ -53,6 +53,7 @@ struct SPGroup : public SPLPEItem { LayerMode layerDisplayMode(unsigned int display_key) const; void setLayerDisplayMode(unsigned int display_key, LayerMode mode); void translateChildItems(Geom::Translate const &tr); + void scaleChildItemsRec(Geom::Scale const &sc, Geom::Point const &p); CGroup *group; diff --git a/src/sp-item.cpp b/src/sp-item.cpp index a4070c9b3..0ca9592c9 100644 --- a/src/sp-item.cpp +++ b/src/sp-item.cpp @@ -73,6 +73,8 @@ #include "live_effects/effect.h" #include "live_effects/lpeobject-reference.h" +#include "util/units.h" + #define noSP_ITEM_DEBUG_IDLE static void sp_item_build (SPObject *object, @@ -857,7 +859,7 @@ Geom::OptRect SPItem::desktopGeometricBounds() const Geom::OptRect SPItem::desktopVisualBounds() const { /// @fixme hardcoded desktop transform - Geom::Affine m = Geom::Scale(1, -1) * Geom::Translate(0, document->getHeight()); + Geom::Affine m = Geom::Scale(1, -1) * Geom::Translate(0, document->getHeight().value("px")); Geom::OptRect ret = documentVisualBounds(); if (ret) *ret *= m; return ret; @@ -1520,7 +1522,7 @@ Geom::Affine SPItem::i2dt_affine() const // TODO temp code to prevent crashing on command-line launch: ret = i2doc_affine() * Geom::Scale(1, -1) - * Geom::Translate(0, document->getHeight()); + * Geom::Translate(0, document->getHeight().value("px")); } return ret; } diff --git a/src/sp-root.h b/src/sp-root.h index e2bad917b..5e3f264bf 100644 --- a/src/sp-root.h +++ b/src/sp-root.h @@ -40,7 +40,7 @@ struct SPRoot : public SPGroup { SVGLength height; /* viewBox; */ - unsigned int viewBox_set : 1; + bool viewBox_set : true; Geom::Rect viewBox; /* preserveAspectRatio */ diff --git a/src/svg-view-widget.cpp b/src/svg-view-widget.cpp index d392943e0..567156fec 100644 --- a/src/svg-view-widget.cpp +++ b/src/svg-view-widget.cpp @@ -21,6 +21,7 @@ #include "document.h" #include "svg-view.h" #include "svg-view-widget.h" +#include "util/units.h" static void sp_svg_view_widget_class_init (SPSVGSPViewWidgetClass *klass); static void sp_svg_view_widget_init (SPSVGSPViewWidget *widget); @@ -175,8 +176,8 @@ static void sp_svg_view_widget_size_request(GtkWidget *widget, GtkRequisition *r gdouble width, height; svgv = static_cast (v); - width = (v->doc())->getWidth () * svgv->_hscale; - height = (v->doc())->getHeight () * svgv->_vscale; + width = (v->doc())->getWidth().value("px") * svgv->_hscale; + height = (v->doc())->getHeight().value("px") * svgv->_vscale; if (width <= vw->maxwidth) { hpol = GTK_POLICY_NEVER; diff --git a/src/svg-view.cpp b/src/svg-view.cpp index 7559cbb24..f52608420 100644 --- a/src/svg-view.cpp +++ b/src/svg-view.cpp @@ -20,6 +20,7 @@ #include "sp-item.h" #include "svg-view.h" #include "sp-root.h" +#include "util/units.h" SPSVGView::SPSVGView(SPCanvasGroup *parent) { @@ -71,16 +72,16 @@ void SPSVGView::doRescale(bool event) if (!doc()) { return; } - if (doc()->getWidth () < 1e-9) { + if (doc()->getWidth().value("px") < 1e-9) { return; } - if (doc()->getHeight () < 1e-9) { + if (doc()->getHeight().value("px") < 1e-9) { return; } if (_rescale) { - _hscale = _width / doc()->getWidth (); - _vscale = _height / doc()->getHeight (); + _hscale = _width / doc()->getWidth().value("px"); + _vscale = _height / doc()->getHeight().value("px"); if (_keepaspect) { if (_hscale > _vscale) { _hscale = _vscale; @@ -95,8 +96,8 @@ void SPSVGView::doRescale(bool event) } if (event) { - emitResized (doc()->getWidth () * _hscale, - doc()->getHeight () * _vscale); + emitResized (doc()->getWidth().value("px") * _hscale, + doc()->getHeight().value("px") * _vscale); } } diff --git a/src/ui/dialog/aboutbox.cpp b/src/ui/dialog/aboutbox.cpp index 6f1137e46..121773b6d 100644 --- a/src/ui/dialog/aboutbox.cpp +++ b/src/ui/dialog/aboutbox.cpp @@ -34,6 +34,7 @@ #include "svg-view-widget.h" #include "sp-text.h" #include "text-editing.h" +#include "util/units.h" #include "inkscape-version.h" @@ -175,8 +176,8 @@ Gtk::Widget *build_splash_widget() { GtkWidget *v=sp_svg_view_widget_new(doc); - double width=doc->getWidth(); - double height=doc->getHeight(); + double width=doc->getWidth().value("px"); + double height=doc->getHeight().value("px"); doc->doUnref(); diff --git a/src/ui/dialog/document-properties.cpp b/src/ui/dialog/document-properties.cpp index 430f28474..272b85d2a 100644 --- a/src/ui/dialog/document-properties.cpp +++ b/src/ui/dialog/document-properties.cpp @@ -54,6 +54,8 @@ #include #include +#include <2geom/transforms.h> + using std::pair; namespace Inkscape { @@ -169,6 +171,9 @@ DocumentProperties::DocumentProperties() signalDocumentReplaced().connect(sigc::mem_fun(*this, &DocumentProperties::_handleDocumentReplaced)); signalActivateDesktop().connect(sigc::mem_fun(*this, &DocumentProperties::_handleActivateDesktop)); signalDeactiveDesktop().connect(sigc::mem_fun(*this, &DocumentProperties::_handleDeactivateDesktop)); + + _rum_deflt.getUnitMenu()->signal_changed().connect(sigc::mem_fun(*this, &DocumentProperties::onDocUnitChange)); + _old_doc_unit = _rum_deflt.getUnit(); } void DocumentProperties::init() @@ -1436,28 +1441,12 @@ void DocumentProperties::update() double const doc_w = sp_desktop_document(dt)->getRoot()->width.value; Glib::ustring doc_w_unit = unit_table.getUnit(sp_desktop_document(dt)->getRoot()->width.unit).abbr; if (doc_w_unit == "") { - if (nv->units) { - doc_w_unit = nv->units->abbr; - } else { - if (nv->doc_units) { - doc_w_unit = nv->doc_units->abbr; - } else { - doc_w_unit = "px"; - } - } + doc_w_unit = "px"; } double const doc_h = sp_desktop_document(dt)->getRoot()->height.value; Glib::ustring doc_h_unit = unit_table.getUnit(sp_desktop_document(dt)->getRoot()->height.unit).abbr; if (doc_h_unit == "") { - if (nv->units) { - doc_h_unit = nv->units->abbr; - } else { - if (nv->doc_units) { - doc_h_unit = nv->doc_units->abbr; - } else { - doc_h_unit = "px"; - } - } + doc_h_unit = "px"; } _page_sizer.setDim(Inkscape::Util::Quantity(doc_w, doc_w_unit), Inkscape::Util::Quantity(doc_h, doc_h_unit)); _page_sizer.updateFitMarginsUI(nv->getRepr()); @@ -1642,6 +1631,24 @@ void DocumentProperties::onRemoveGrid() } } +/** Callback for document unit change. */ +void DocumentProperties::onDocUnitChange() +{ + SPDocument *doc = SP_ACTIVE_DOCUMENT; + Inkscape::Util::Unit doc_unit = _rum_deflt.getUnit(); + + // Set viewBox + Inkscape::Util::Quantity width = doc->getWidth(); + Inkscape::Util::Quantity height = doc->getHeight(); + doc->setViewBox(Geom::Rect::from_xywh(0, 0, width.value(doc_unit), height.value(doc_unit))); + + // Scale and translate objects + gdouble scale = Inkscape::Util::Quantity::convert(1, _old_doc_unit, doc_unit); + doc->getRoot()->scaleChildItemsRec(Geom::Scale(scale), Geom::Point(0, doc->getHeight().value("px"))); + + _old_doc_unit = doc_unit; + DocumentUndo::done(doc, SP_VERB_NONE, _("Changed document unit")); +} } // namespace Dialog } // namespace UI diff --git a/src/ui/dialog/document-properties.h b/src/ui/dialog/document-properties.h index 56fed30c4..56abf9741 100644 --- a/src/ui/dialog/document-properties.h +++ b/src/ui/dialog/document-properties.h @@ -216,6 +216,10 @@ private: // callback methods for buttons on grids page. void onNewGrid(); void onRemoveGrid(); + + // callback for document unit change + Inkscape::Util::Unit _old_doc_unit; + void onDocUnitChange(); }; } // namespace Dialog diff --git a/src/ui/dialog/export.cpp b/src/ui/dialog/export.cpp index 2c92608d7..c98e23000 100644 --- a/src/ui/dialog/export.cpp +++ b/src/ui/dialog/export.cpp @@ -762,7 +762,7 @@ void Export::onAreaToggled () } case SELECTION_PAGE: bbox = Geom::Rect(Geom::Point(0.0, 0.0), - Geom::Point(doc->getWidth(), doc->getHeight())); + Geom::Point(doc->getWidth().value("px"), doc->getHeight().value("px"))); // std::cout << "Using selection: PAGE" << std::endl; key = SELECTION_PAGE; @@ -1475,8 +1475,8 @@ void Export::detectSize() { doc = sp_desktop_document (SP_ACTIVE_DESKTOP); Geom::Point x(0.0, 0.0); - Geom::Point y(doc->getWidth(), - doc->getHeight()); + Geom::Point y(doc->getWidth().value("px"), + doc->getHeight().value("px")); Geom::Rect bbox(x, y); if (bbox_equal(bbox,current_bbox)) { diff --git a/src/ui/dialog/print.cpp b/src/ui/dialog/print.cpp index 4c8c77f96..3ce75327f 100644 --- a/src/ui/dialog/print.cpp +++ b/src/ui/dialog/print.cpp @@ -49,8 +49,8 @@ static void draw_page( if (junk->_tab->as_bitmap()) { // Render as exported PNG - gdouble width = (junk->_doc)->getWidth(); - gdouble height = (junk->_doc)->getHeight(); + gdouble width = (junk->_doc)->getWidth().value("px"); + gdouble height = (junk->_doc)->getHeight().value("px"); gdouble dpi = junk->_tab->bitmap_dpi(); std::string tmp_png; std::string tmp_base = "inkscape-print-png-XXXXXX"; @@ -195,8 +195,8 @@ Print::Print(SPDocument *doc, SPItem *base) : // set up paper size to match the document size gtk_print_operation_set_unit (_printop, GTK_UNIT_POINTS); GtkPageSetup *page_setup = gtk_page_setup_new(); - gdouble doc_width = _doc->getWidth() * Inkscape::Util::Quantity::convert(1, "px", "pt"); - gdouble doc_height = _doc->getHeight() * Inkscape::Util::Quantity::convert(1, "px", "pt"); + gdouble doc_width = _doc->getWidth().value("pt"); + gdouble doc_height = _doc->getHeight().value("pt"); GtkPaperSize *paper_size; if (doc_width > doc_height) { gtk_page_setup_set_orientation (page_setup, GTK_PAGE_ORIENTATION_LANDSCAPE); diff --git a/src/ui/widget/page-sizer.cpp b/src/ui/widget/page-sizer.cpp index 5a289096c..94c7b453a 100644 --- a/src/ui/widget/page-sizer.cpp +++ b/src/ui/widget/page-sizer.cpp @@ -476,12 +476,12 @@ PageSizer::setDim (Inkscape::Util::Quantity w, Inkscape::Util::Quantity h, bool if (SP_ACTIVE_DESKTOP && !_widgetRegistry->isUpdating()) { SPDocument *doc = sp_desktop_document(SP_ACTIVE_DESKTOP); - double const old_height = doc->getHeight(); + Inkscape::Util::Quantity const old_height = doc->getHeight(); doc->setWidth (w); doc->setHeight (h); // The origin for the user is in the lower left corner; this point should remain stationary when // changing the page size. The SVG's origin however is in the upper left corner, so we must compensate for this - Geom::Translate const vert_offset(Geom::Point(0, (old_height - h.quantity))); + Geom::Translate const vert_offset(Geom::Point(0, (old_height.value("px") - h.value("px")))); doc->getRoot()->translateChildItems(vert_offset); DocumentUndo::done(doc, SP_VERB_NONE, _("Set page size")); } @@ -709,6 +709,7 @@ PageSizer::on_value_changed() void PageSizer::on_units_changed() { + if (_widgetRegistry->isUpdating()) return; _unit = _dimensionUnits.getUnit().abbr; setDim (Inkscape::Util::Quantity(_dimensionWidth.getValue(""), _dimensionUnits.getUnit()), Inkscape::Util::Quantity(_dimensionHeight.getValue(""), _dimensionUnits.getUnit())); diff --git a/src/widgets/desktop-widget.cpp b/src/widgets/desktop-widget.cpp index 6493da84d..9d2d9b336 100644 --- a/src/widgets/desktop-widget.cpp +++ b/src/widgets/desktop-widget.cpp @@ -2132,8 +2132,8 @@ sp_desktop_widget_update_scrollbars (SPDesktopWidget *dtw, double scale) /* The desktop region we always show unconditionally */ SPDocument *doc = dtw->desktop->doc(); - Geom::Rect darea ( Geom::Point(-doc->getWidth(), -doc->getHeight()), - Geom::Point(2 * doc->getWidth(), 2 * doc->getHeight()) ); + Geom::Rect darea ( Geom::Point(-doc->getWidth().value("px"), -doc->getHeight().value("px")), + Geom::Point(2 * doc->getWidth().value("px"), 2 * doc->getHeight().value("px")) ); Geom::OptRect deskarea; if (Inkscape::Preferences::get()->getInt("/tools/bounding_box") == 0) { diff --git a/src/widgets/icon.cpp b/src/widgets/icon.cpp index dda453bc4..feb69cc64 100644 --- a/src/widgets/icon.cpp +++ b/src/widgets/icon.cpp @@ -42,6 +42,7 @@ #include "display/drawing.h" #include "io/sys.h" #include "sp-root.h" +#include "util/units.h" #include "icon.h" @@ -1137,7 +1138,7 @@ sp_icon_doc_icon( SPDocument *doc, Inkscape::Drawing &drawing, if ( object->parent == NULL ) { dbox = Geom::Rect(Geom::Point(0, 0), - Geom::Point(doc->getWidth(), doc->getHeight())); + Geom::Point(doc->getWidth().value("px"), doc->getHeight().value("px"))); } /* This is in document coordinates, i.e. pixels */ -- cgit v1.2.3 From 53191e860648248d7e7e06c0376990dd84c688e4 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Tue, 27 Aug 2013 12:43:32 -0400 Subject: Updated templates with viewBox. (bzr r12475.1.3) --- share/templates/A4.svg | 3 ++- share/templates/A4_landscape.svg | 3 ++- share/templates/CD_cover_300dpi.svg | 3 ++- share/templates/Letter.svg | 5 +++-- share/templates/Letter_landscape.svg | 5 +++-- share/templates/business_card_85x54mm.svg | 3 ++- share/templates/business_card_90x50mm.svg | 3 ++- share/templates/default.be.svg | 3 ++- share/templates/default_mm.svg | 3 ++- share/templates/default_pt.svg | 3 ++- 10 files changed, 22 insertions(+), 12 deletions(-) diff --git a/share/templates/A4.svg b/share/templates/A4.svg index 63991a8f9..e19a88fce 100644 --- a/share/templates/A4.svg +++ b/share/templates/A4.svg @@ -9,7 +9,8 @@ xmlns:cc="http://web.resource.org/cc/" xmlns:dc="http://purl.org/dc/elements/1.1/" width="210mm" - height="297mm"> + height="297mm" + viewBox="0 0 210 297"> + height="210mm" + viewBox="0 0 297 210"> + height="340pt" + viewBox="0 0 343 340"> + width="8.5in" + height="11in" + viewBox="0 0 8.5 11"> + width="11in" + height="8.5in" + viewBox="0 0 11 8.5"> + height="54mm" + viewBox="0 0 85 54"> + height="50mm" + viewBox="0 0 90 50"> + height="297mm" + viewBox="0 0 210 297"> + height="297mm" + viewBox="0 0 210 297"> + height="297mm" + viewBox="0 0 595.27558 841.88974"> Date: Tue, 27 Aug 2013 21:23:18 -0400 Subject: Remove no longer used file "share/ui/units.txt". (bzr r12475.1.4) --- share/ui/units.txt | 20 -------------------- 1 file changed, 20 deletions(-) delete mode 100644 share/ui/units.txt diff --git a/share/ui/units.txt b/share/ui/units.txt deleted file mode 100644 index 55fd68577..000000000 --- a/share/ui/units.txt +++ /dev/null @@ -1,20 +0,0 @@ -# Simple unit configuration file -# -# This is a space-delimited list of unit definitions. - -# name name_plural abbr type factor PRI description -# --------------------------------------------------------------------------- - % % % DIMENSIONLESS 1.00 Y Percentage - pixel pixels px LINEAR 1.00 Y CSS Pixels (90/inch) - point points pt LINEAR 1.25 N PostScript points (72/inch) - pica picas pc LINEAR 15.0 N 12 points - inch inches in LINEAR 90.0 N Inches (90 px/in) - millimeter millimeters mm LINEAR 3.543307 N Millimeters (25.4 mm/in) - centimeter centimeters cm LINEAR 35.43307 N Centimeters (10 mm/cm) - meter meters m LINEAR 3543.307 N Meters (100 cm/m) - foot feet ft LINEAR 1080 N Feet (12 in/ft) - degree degrees ° RADIAL 1.00 Y Degrees - radian radians rad RADIAL 57.296 N Radians (57.296 deg/rad) - font-height font-heights em FONT_HEIGHT 1.00 Y Font height - x-height x-heights ex FONT_HEIGHT 0.50 N Height of letter 'x' - half-em half-ems en FONT_HEIGHT 0.50 N Half of font height -- cgit v1.2.3 From 7dc2527975e5af02aa0b737d9a67e70bda62bfae Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Tue, 27 Aug 2013 21:26:29 -0400 Subject: Fix Windows build. (bzr r12475.1.5) --- src/extension/internal/emf-win32-print.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/extension/internal/emf-win32-print.cpp b/src/extension/internal/emf-win32-print.cpp index 621954f68..467260a92 100644 --- a/src/extension/internal/emf-win32-print.cpp +++ b/src/extension/internal/emf-win32-print.cpp @@ -113,8 +113,8 @@ unsigned int PrintEmfWin32::begin (Inkscape::Extension::Print *mod, SPDocument * WCHAR *unicode_uri = (WCHAR *) unicode_fn; // width and height in px - _width = doc->getWidth(); - _height = doc->getHeight(); + _width = doc->getWidth().value("px"); + _height = doc->getHeight().value("px"); bool pageBoundingBox; pageBoundingBox = mod->get_param_bool("pageBoundingBox"); @@ -204,7 +204,7 @@ unsigned int PrintEmfWin32::begin (Inkscape::Extension::Print *mod, SPDocument * g_free(local_fn); g_free(unicode_fn); - m_tr_stack.push( Geom::Scale(1, -1) * Geom::Translate(0, doc->getHeight())); /// @fixme hardcoded doc2dt transform + m_tr_stack.push( Geom::Scale(1, -1) * Geom::Translate(0, doc->getHeight().value("px"))); /// @fixme hardcoded doc2dt transform return 0; } -- cgit v1.2.3 From fcd3b1af971172bf0fbe6eabcd97eaf1223267ba Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Tue, 27 Aug 2013 22:14:56 -0400 Subject: Use enum names instead of numbers. (bzr r12475.1.6) --- src/util/units.cpp | 40 ++++++++++++++++++++-------------------- src/util/units.h | 2 +- 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/src/util/units.cpp b/src/util/units.cpp index e7be3f5e6..8bae9c419 100644 --- a/src/util/units.cpp +++ b/src/util/units.cpp @@ -166,25 +166,25 @@ bool operator!= (const Unit &u1, const Unit &u2) int Unit::svgUnit() const { if (!abbr.compare("px")) - return 1; + return SVGLength::PX; if (!abbr.compare("pt")) - return 2; + return SVGLength::PT; if (!abbr.compare("pc")) - return 3; + return SVGLength::PC; if (!abbr.compare("mm")) - return 4; + return SVGLength::MM; if (!abbr.compare("cm")) - return 5; + return SVGLength::CM; if (!abbr.compare("in")) - return 6; + return SVGLength::INCH; if (!abbr.compare("ft")) - return 7; + return SVGLength::FOOT; if (!abbr.compare("em")) - return 8; + return SVGLength::EM; if (!abbr.compare("ex")) - return 9; + return SVGLength::EX; if (!abbr.compare("%")) - return 10; + return SVGLength::PERCENT; return 0; } @@ -224,25 +224,25 @@ Unit UnitTable::getUnit(SVGLength::Unit const u) const { Glib::ustring u_str; switch(u) { - case 1: + case SVGLength::PX: u_str = "px"; break; - case 2: + case SVGLength::PT: u_str = "pt"; break; - case 3: + case SVGLength::PC: u_str = "pc"; break; - case 4: + case SVGLength::MM: u_str = "mm"; break; - case 5: + case SVGLength::CM: u_str = "cm"; break; - case 6: + case SVGLength::INCH: u_str = "in"; break; - case 7: + case SVGLength::FOOT: u_str = "ft"; break; - case 8: + case SVGLength::EM: u_str = "em"; break; - case 9: + case SVGLength::EX: u_str = "ex"; break; - case 10: + case SVGLength::PERCENT: u_str = "%"; break; default: u_str = ""; diff --git a/src/util/units.h b/src/util/units.h index c5ee87ae3..ececc8aa1 100644 --- a/src/util/units.h +++ b/src/util/units.h @@ -28,7 +28,7 @@ Need to review the Units support that's in Gtkmm already... #include #include -#include "svg/svg.h" +#include "svg/svg-length.h" namespace Inkscape { namespace Util { -- cgit v1.2.3 From bdb32f3606bca79275b0aafce4a2c722de88fd5d Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Tue, 27 Aug 2013 22:53:31 -0400 Subject: Added Quantity comparison functions. (bzr r12475.1.7) --- src/util/units.cpp | 21 +++++++++++++++++++++ src/util/units.h | 5 +++++ 2 files changed, 26 insertions(+) diff --git a/src/util/units.cpp b/src/util/units.cpp index 8bae9c419..2b09337b6 100644 --- a/src/util/units.cpp +++ b/src/util/units.cpp @@ -450,6 +450,27 @@ double Quantity::convert(const double from_dist, const Glib::ustring from, const return convert(from_dist, unit_table.getUnit(from), unit_table.getUnit(to)); } +bool operator< (const Quantity &ql, const Quantity &qr) +{ + if (ql.unit->type != qr.unit->type) { + g_warning("Incompatible units"); + return false; + } + return ql.quantity < qr.value(*ql.unit); +} +bool operator> (const Quantity &ql, const Quantity &qr) +{ + if (ql.unit->type != qr.unit->type) { + g_warning("Incompatible units"); + return false; + } + return ql.quantity > qr.value(*ql.unit); +} +bool operator!= (const Quantity &q1, const Quantity &q2) +{ + return (*q1.unit != *q2.unit) || (q1.quantity != q2.quantity); +} + } // namespace Util } // namespace Inkscape diff --git a/src/util/units.h b/src/util/units.h index ececc8aa1..44333fae2 100644 --- a/src/util/units.h +++ b/src/util/units.h @@ -113,6 +113,11 @@ public: static double convert(const double from_dist, const Glib::ustring from, const Unit &to); static double convert(const double from_dist, const Unit &from, const Glib::ustring to); static double convert(const double from_dist, const Glib::ustring from, const Glib::ustring to); + + /** Comparison operators. */ + friend bool operator< (const Quantity &ql, const Quantity &qr); + friend bool operator> (const Quantity &ql, const Quantity &qr); + friend bool operator!= (const Quantity &q1, const Quantity &q2); }; class UnitTable { -- cgit v1.2.3 From df50dc11aa33a9ceeaa0cac84dd3a869680e998f Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Tue, 27 Aug 2013 22:53:42 -0400 Subject: Use Quantity comparisons in PageSizer. (bzr r12475.1.8) --- src/ui/widget/page-sizer.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/ui/widget/page-sizer.cpp b/src/ui/widget/page-sizer.cpp index 94c7b453a..051937c43 100644 --- a/src/ui/widget/page-sizer.cpp +++ b/src/ui/widget/page-sizer.cpp @@ -486,10 +486,10 @@ PageSizer::setDim (Inkscape::Util::Quantity w, Inkscape::Util::Quantity h, bool DocumentUndo::done(doc, SP_VERB_NONE, _("Set page size")); } - if ( w.quantity != h.quantity ) { + if ( w != h ) { _landscapeButton.set_sensitive(true); _portraitButton.set_sensitive (true); - _landscape = ( w.quantity > h.quantity ); + _landscape = ( w > h ); _landscapeButton.set_active(_landscape ? true : false); _portraitButton.set_active (_landscape ? false : true); } else { @@ -553,7 +553,7 @@ PageSizer::find_paper_size (Inkscape::Util::Quantity w, Inkscape::Util::Quantity { double smaller = w.quantity; double larger = h.quantity; - if ( h.quantity < w.quantity ) { + if ( h < w ) { smaller = h.quantity; larger = w.quantity; } @@ -674,7 +674,7 @@ PageSizer::on_portrait() return; Inkscape::Util::Quantity w = Inkscape::Util::Quantity(_dimensionWidth.getValue(""), _dimensionWidth.getUnit()); Inkscape::Util::Quantity h = Inkscape::Util::Quantity(_dimensionHeight.getValue(""), _dimensionHeight.getUnit()); - if (h.quantity < w.quantity) { + if (h < w) { setDim (h, w); } } @@ -690,7 +690,7 @@ PageSizer::on_landscape() return; Inkscape::Util::Quantity w = Inkscape::Util::Quantity(_dimensionWidth.getValue(""), _dimensionWidth.getUnit()); Inkscape::Util::Quantity h = Inkscape::Util::Quantity(_dimensionHeight.getValue(""), _dimensionHeight.getUnit()); - if (w.quantity < h.quantity) { + if (w < h) { setDim (h, w); } } -- cgit v1.2.3 From 3bfb610bb7719d49821fe5381ae449789c3cb968 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Tue, 27 Aug 2013 23:32:14 -0400 Subject: Improve code readability. (bzr r12475.1.9) --- src/document.cpp | 2 +- src/extension/internal/cairo-renderer-pdf-out.cpp | 2 +- src/extension/internal/cairo-renderer.cpp | 4 +- src/extension/internal/emf-win32-inout.cpp | 10 ++-- src/extension/internal/emf-win32-print.cpp | 68 +++++++++++------------ src/extension/internal/pdfinput/pdf-parser.cpp | 6 +- src/extension/internal/pdfinput/svg-builder.cpp | 2 +- src/helper/pixbuf-ops.cpp | 2 +- src/main.cpp | 8 +-- src/selection-chemistry.cpp | 6 +- src/style.cpp | 30 +++++----- src/text-editing.cpp | 10 ++-- src/ui/clipboard.cpp | 4 +- src/ui/dialog/print.cpp | 4 +- src/ui/dialog/text-edit.cpp | 2 +- 15 files changed, 80 insertions(+), 80 deletions(-) diff --git a/src/document.cpp b/src/document.cpp index 20c6fe331..a544c60c9 100644 --- a/src/document.cpp +++ b/src/document.cpp @@ -980,7 +980,7 @@ void SPDocument::setupViewport(SPItemCtx *ctx) if (root->viewBox_set) { // if set, take from viewBox ctx->viewport = root->viewBox; } else { // as a last resort, set size to A4 - ctx->viewport = Geom::Rect::from_xywh(0, 0, 210 * Inkscape::Util::Quantity::convert(1, "mm", "px"), 297 * Inkscape::Util::Quantity::convert(1, "mm", "px")); + ctx->viewport = Geom::Rect::from_xywh(0, 0, Inkscape::Util::Quantity::convert(210, "mm", "px"), Inkscape::Util::Quantity::convert(297, "mm", "px")); } ctx->i2vp = Geom::identity(); } diff --git a/src/extension/internal/cairo-renderer-pdf-out.cpp b/src/extension/internal/cairo-renderer-pdf-out.cpp index 0a0c3f44a..f4eed1c57 100644 --- a/src/extension/internal/cairo-renderer-pdf-out.cpp +++ b/src/extension/internal/cairo-renderer-pdf-out.cpp @@ -197,7 +197,7 @@ CairoRendererPdfOutput::save(Inkscape::Extension::Output *mod, SPDocument *doc, float new_bleedmargin_px = 0.; try { - new_bleedmargin_px = mod->get_param_float("bleed") * Inkscape::Util::Quantity::convert(1, "mm", "px"); + new_bleedmargin_px = Inkscape::Util::Quantity::convert(mod->get_param_float("bleed"), "mm", "px"); } catch(...) { g_warning("Parameter might not exist"); diff --git a/src/extension/internal/cairo-renderer.cpp b/src/extension/internal/cairo-renderer.cpp index eddc5ba23..84f090745 100644 --- a/src/extension/internal/cairo-renderer.cpp +++ b/src/extension/internal/cairo-renderer.cpp @@ -463,8 +463,8 @@ static void sp_asbitmap_render(SPItem *item, CairoRenderContext *ctx) } // The width and height of the bitmap in pixels - unsigned width = ceil(bbox->width() * (res / Inkscape::Util::Quantity::convert(1, "in", "px"))); - unsigned height = ceil(bbox->height() * (res / Inkscape::Util::Quantity::convert(1, "in", "px"))); + unsigned width = ceil(bbox->width() * Inkscape::Util::Quantity::convert(res, "px", "in")); + unsigned height = ceil(bbox->height() * Inkscape::Util::Quantity::convert(res, "px", "in")); if (width == 0 || height == 0) return; diff --git a/src/extension/internal/emf-win32-inout.cpp b/src/extension/internal/emf-win32-inout.cpp index 60385f455..b9ab2e385 100644 --- a/src/extension/internal/emf-win32-inout.cpp +++ b/src/extension/internal/emf-win32-inout.cpp @@ -781,18 +781,18 @@ myEnhMetaFileProc(HDC /*hDC*/, HANDLETABLE * /*lpHTable*/, ENHMETARECORD const * d->dc[d->level].PixelsInX = pEmr->rclFrame.right - pEmr->rclFrame.left; d->dc[d->level].PixelsInY = pEmr->rclFrame.bottom - pEmr->rclFrame.top; - device_x = pEmr->rclFrame.left/100.0*Inkscape::Util::Quantity::convert(1, "mm", "px"); - device_y = pEmr->rclFrame.top/100.0*Inkscape::Util::Quantity::convert(1, "mm", "px"); + device_x = Inkscape::Util::Quantity::convert(pEmr->rclFrame.left/100.0, "mm", "px"); + device_y = Inkscape::Util::Quantity::convert(pEmr->rclFrame.top/100.0, "mm", "px"); d->MMX = d->dc[d->level].PixelsInX / 100.0; d->MMY = d->dc[d->level].PixelsInY / 100.0; - d->dc[d->level].PixelsOutX = d->MMX * Inkscape::Util::Quantity::convert(1, "mm", "px"); - d->dc[d->level].PixelsOutY = d->MMY * Inkscape::Util::Quantity::convert(1, "mm", "px"); + d->dc[d->level].PixelsOutX = Inkscape::Util::Quantity::convert(d->MMX, "mm", "px"); + d->dc[d->level].PixelsOutY = Inkscape::Util::Quantity::convert(d->MMY, "mm", "px"); // calculate ratio of Inkscape dpi/device dpi if (pEmr->szlMillimeters.cx && pEmr->szlDevice.cx) - device_scale = Inkscape::Util::Quantity::convert(1, "mm", "px")*pEmr->szlMillimeters.cx/pEmr->szlDevice.cx; + device_scale = Inkscape::Util::Quantity::convert(pEmr->szlMillimeters.cx/pEmr->szlDevice.cx, "mm", "px"); tmp_outdef << " width=\"" << d->MMX << "mm\"\n" << diff --git a/src/extension/internal/emf-win32-print.cpp b/src/extension/internal/emf-win32-print.cpp index 467260a92..e01782257 100644 --- a/src/extension/internal/emf-win32-print.cpp +++ b/src/extension/internal/emf-win32-print.cpp @@ -195,7 +195,7 @@ unsigned int PrintEmfWin32::begin (Inkscape::Extension::Print *mod, SPDocument * snprintf(buff, sizeof(buff)-1, "Screen=%dx%dpx, %dx%dmm", PixelsX, PixelsY, MMX, MMY); GdiComment(hdc, strlen(buff), (BYTE*) buff); - snprintf(buff, sizeof(buff)-1, "Drawing=%.1lfx%.1lfpx, %.1lfx%.1lfmm", _width, _height, dwInchesX * Inkscape::Util::Quantity::convert(1, "in", "mm"), dwInchesY * Inkscape::Util::Quantity::convert(1, "in", "mm")); + snprintf(buff, sizeof(buff)-1, "Drawing=%.1lfx%.1lfpx, %.1lfx%.1lfmm", _width, _height, Inkscape::Util::Quantity::convert(dwInchesX, "in", "mm"), Inkscape::Util::Quantity::convert(dwInchesY, "in", "mm")); GdiComment(hdc, strlen(buff), (BYTE*) buff); } @@ -303,7 +303,7 @@ void PrintEmfWin32::create_pen(SPStyle const *style, const Geom::Affine &transfo double scale = sqrt( (p[X]*p[X]) + (p[Y]*p[Y]) ) / sqrt(2); - DWORD linewidth = MAX( 1, (DWORD) (scale * style->stroke_width.computed * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI) ); + DWORD linewidth = MAX( 1, (DWORD) (scale * Inkscape::Util::Quantity::convert(style->stroke_width.computed, "px", "in") * dwDPI) ); if (style->stroke_linecap.computed == 0) { linecap = PS_ENDCAP_FLAT; @@ -340,7 +340,7 @@ void PrintEmfWin32::create_pen(SPStyle const *style, const Geom::Affine &transfo n_dash = style->stroke_dash.n_dash; dash = new DWORD[n_dash]; for (i = 0; i < style->stroke_dash.n_dash; i++) { - dash[i] = (DWORD) (style->stroke_dash.dash[i] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + dash[i] = (DWORD) (Inkscape::Util::Quantity::convert(style->stroke_dash.dash[i], "px", "in") * dwDPI); } } } @@ -543,8 +543,8 @@ bool PrintEmfWin32::print_simple_shape(Geom::PathVector const &pathv, const Geom Geom::Point p0 = pit->initialPoint(); - p0[X] = (p0[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); - p0[Y] = (p0[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + p0[X] = (Inkscape::Util::Quantity::convert(p0[X], "px", "in") * dwDPI); + p0[Y] = (Inkscape::Util::Quantity::convert(p0[Y], "px", "in") * dwDPI); LONG const x0 = (LONG) round(p0[X]); LONG const y0 = (LONG) round(rc.bottom-p0[Y]); @@ -563,10 +563,10 @@ bool PrintEmfWin32::print_simple_shape(Geom::PathVector const &pathv, const Geom //Geom::Point p0 = cit->initialPoint(); Geom::Point p1 = cit->finalPoint(); - //p0[X] = (p0[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); - p1[X] = (p1[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); - //p0[Y] = (p0[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); - p1[Y] = (p1[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + //p0[X] = (Inkscape::Util::Quantity::convert(p0[X], "px", "in") * dwDPI); + p1[X] = (Inkscape::Util::Quantity::convert(p1[X], "px", "in") * dwDPI); + //p0[Y] = (Inkscape::Util::Quantity::convert(p0[Y], "px", "in") * dwDPI); + p1[Y] = (Inkscape::Util::Quantity::convert(p1[Y], "px", "in") * dwDPI); //LONG const x0 = (LONG) round(p0[X]); //LONG const y0 = (LONG) round(rc.bottom-p0[Y]); @@ -585,14 +585,14 @@ bool PrintEmfWin32::print_simple_shape(Geom::PathVector const &pathv, const Geom Geom::Point p2 = points[2]; Geom::Point p3 = points[3]; - //p0[X] = (p0[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); - p1[X] = (p1[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); - p2[X] = (p2[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); - p3[X] = (p3[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); - //p0[Y] = (p0[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); - p1[Y] = (p1[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); - p2[Y] = (p2[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); - p3[Y] = (p3[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + //p0[X] = (Inkscape::Util::Quantity::convert(p0[X], "px", "in") * dwDPI); + p1[X] = (Inkscape::Util::Quantity::convert(p1[X], "px", "in") * dwDPI); + p2[X] = (Inkscape::Util::Quantity::convert(p2[X], "px", "in") * dwDPI); + p3[X] = (Inkscape::Util::Quantity::convert(p3[X], "px", "in") * dwDPI); + //p0[Y] = (Inkscape::Util::Quantity::convert(p0[Y], "px", "in") * dwDPI); + p1[Y] = (Inkscape::Util::Quantity::convert(p1[Y], "px", "in") * dwDPI); + p2[Y] = (Inkscape::Util::Quantity::convert(p2[Y], "px", "in") * dwDPI); + p3[Y] = (Inkscape::Util::Quantity::convert(p3[Y], "px", "in") * dwDPI); //LONG const x0 = (LONG) round(p0[X]); //LONG const y0 = (LONG) round(rc.bottom-p0[Y]); @@ -715,8 +715,8 @@ unsigned int PrintEmfWin32::print_pathv(Geom::PathVector const &pathv, const Geo Geom::Point p0 = pit->initialPoint(); - p0[X] = (p0[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); - p0[Y] = (p0[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + p0[X] = (Inkscape::Util::Quantity::convert(p0[X], "px", "in") * dwDPI); + p0[Y] = (Inkscape::Util::Quantity::convert(p0[Y], "px", "in") * dwDPI); LONG const x0 = (LONG) round(p0[X]); LONG const y0 = (LONG) round(rc.bottom-p0[Y]); @@ -733,10 +733,10 @@ unsigned int PrintEmfWin32::print_pathv(Geom::PathVector const &pathv, const Geo //Geom::Point p0 = cit->initialPoint(); Geom::Point p1 = cit->finalPoint(); - //p0[X] = (p0[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); - p1[X] = (p1[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); - //p0[Y] = (p0[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); - p1[Y] = (p1[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + //p0[X] = (Inkscape::Util::Quantity::convert(p0[X], "px", "in") * dwDPI); + p1[X] = (Inkscape::Util::Quantity::convert(p1[X], "px", "in") * dwDPI); + //p0[Y] = (Inkscape::Util::Quantity::convert(p0[Y], "px", "in") * dwDPI); + p1[Y] = (Inkscape::Util::Quantity::convert(p1[Y], "px", "in") * dwDPI); //LONG const x0 = (LONG) round(p0[X]); //LONG const y0 = (LONG) round(rc.bottom-p0[Y]); @@ -753,14 +753,14 @@ unsigned int PrintEmfWin32::print_pathv(Geom::PathVector const &pathv, const Geo Geom::Point p2 = points[2]; Geom::Point p3 = points[3]; - //p0[X] = (p0[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); - p1[X] = (p1[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); - p2[X] = (p2[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); - p3[X] = (p3[X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); - //p0[Y] = (p0[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); - p1[Y] = (p1[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); - p2[Y] = (p2[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); - p3[Y] = (p3[Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + //p0[X] = (Inkscape::Util::Quantity::convert(p0[X], "px", "in") * dwDPI); + p1[X] = (Inkscape::Util::Quantity::convert(p1[X], "px", "in") * dwDPI); + p2[X] = (Inkscape::Util::Quantity::convert(p2[X], "px", "in") * dwDPI); + p3[X] = (Inkscape::Util::Quantity::convert(p3[X], "px", "in") * dwDPI); + //p0[Y] = (Inkscape::Util::Quantity::convert(p0[Y], "px", "in") * dwDPI); + p1[Y] = (Inkscape::Util::Quantity::convert(p1[Y], "px", "in") * dwDPI); + p2[Y] = (Inkscape::Util::Quantity::convert(p2[Y], "px", "in") * dwDPI); + p3[Y] = (Inkscape::Util::Quantity::convert(p3[Y], "px", "in") * dwDPI); //LONG const x0 = (LONG) round(p0[X]); //LONG const y0 = (LONG) round(rc.bottom-p0[Y]); @@ -828,7 +828,7 @@ unsigned int PrintEmfWin32::text(Inkscape::Extension::Print * /*mod*/, char cons LOGFONTW *lf = (LOGFONTW*)g_malloc(sizeof(LOGFONTW)); g_assert(lf != NULL); - lf->lfHeight = -style->font_size.computed * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI; + lf->lfHeight = Inkscape::Util::Quantity::convert(-style->font_size.computed, "px", "in") * dwDPI; lf->lfWidth = 0; lf->lfEscapement = rot; lf->lfOrientation = rot; @@ -877,8 +877,8 @@ unsigned int PrintEmfWin32::text(Inkscape::Extension::Print * /*mod*/, char cons SetBkMode(hdc, TRANSPARENT); Geom::Point p2 = p * tf; - p2[Geom::X] = (p2[Geom::X] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); - p2[Geom::Y] = (p2[Geom::Y] * Inkscape::Util::Quantity::convert(1, "px", "in") * dwDPI); + p2[Geom::X] = (Inkscape::Util::Quantity::convert(p2[Geom::X], "px", "in") * dwDPI); + p2[Geom::Y] = (Inkscape::Util::Quantity::convert(p2[Geom::Y], "px", "in") * dwDPI); LONG const xpos = (LONG) round(p2[Geom::X]); LONG const ypos = (LONG) round(rc.bottom - p2[Geom::Y]); diff --git a/src/extension/internal/pdfinput/pdf-parser.cpp b/src/extension/internal/pdfinput/pdf-parser.cpp index 6e57f6278..7edb758fd 100644 --- a/src/extension/internal/pdfinput/pdf-parser.cpp +++ b/src/extension/internal/pdfinput/pdf-parser.cpp @@ -279,14 +279,14 @@ PdfParser::PdfParser(XRef *xrefA, Inkscape::Extension::Internal::SvgBuilder *bui ignoreUndef = 0; operatorHistory = NULL; builder = builderA; - builder->setDocumentSize(state->getPageWidth()*Inkscape::Util::Quantity::convert(1, "pt", "px"), - state->getPageHeight()*Inkscape::Util::Quantity::convert(1, "pt", "px")); + builder->setDocumentSize(Inkscape::Util::Quantity::convert(state->getPageWidth(), "pt", "px"), + Inkscape::Util::Quantity::convert(state->getPageHeight(), "pt", "px")); double *ctm = state->getCTM(); double scaledCTM[6]; for (int i = 0; i < 6; ++i) { baseMatrix[i] = ctm[i]; - scaledCTM[i] = Inkscape::Util::Quantity::convert(1, "pt", "px") * ctm[i]; + scaledCTM[i] = Inkscape::Util::Quantity::convert(ctm[i], "pt", "px"); } saveState(); builder->setTransform((double*)&scaledCTM); diff --git a/src/extension/internal/pdfinput/svg-builder.cpp b/src/extension/internal/pdfinput/svg-builder.cpp index a1a309a87..b3f15bbff 100644 --- a/src/extension/internal/pdfinput/svg-builder.cpp +++ b/src/extension/internal/pdfinput/svg-builder.cpp @@ -793,7 +793,7 @@ gchar *SvgBuilder::_createGradient(GfxShading *shading, double *matrix, bool for Geom::Affine pat_matrix(matrix[0], matrix[1], matrix[2], matrix[3], matrix[4], matrix[5]); if ( !for_shading && _is_top_level ) { - Geom::Affine flip(1.0, 0.0, 0.0, -1.0, 0.0, _height * Inkscape::Util::Quantity::convert(1, "px", "pt")); + Geom::Affine flip(1.0, 0.0, 0.0, -1.0, 0.0, Inkscape::Util::Quantity::convert(_height, "px", "pt")); pat_matrix *= flip; } gchar *transform_text = sp_svg_transform_write(pat_matrix); diff --git a/src/helper/pixbuf-ops.cpp b/src/helper/pixbuf-ops.cpp index db7b73e34..a53da5bba 100644 --- a/src/helper/pixbuf-ops.cpp +++ b/src/helper/pixbuf-ops.cpp @@ -121,7 +121,7 @@ GdkPixbuf *sp_generate_internal_bitmap(SPDocument *doc, gchar const */*filename* origin[Geom::X] = origin[Geom::X] + (screen[Geom::X].extent() * ((1 - padding) / 2)); origin[Geom::Y] = origin[Geom::Y] + (screen[Geom::Y].extent() * ((1 - padding) / 2)); - Geom::Scale scale( (xdpi / Inkscape::Util::Quantity::convert(1, "in", "px")), (ydpi / Inkscape::Util::Quantity::convert(1, "in", "px"))); + Geom::Scale scale(Inkscape::Util::Quantity::convert(xdpi, "px", "in"), Inkscape::Util::Quantity::convert(ydpi, "px", "in")); Geom::Affine affine = scale * Geom::Translate(-origin * scale); /* Create ArenaItems and set transform */ diff --git a/src/main.cpp b/src/main.cpp index 29f431aa8..dccf70889 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -1536,7 +1536,7 @@ static int sp_do_export_png(SPDocument *doc) g_warning("Export width %lu out of range (1 - %lu). Nothing exported.", width, (unsigned long int)PNG_UINT_31_MAX); return 1; } - dpi = (gdouble) width * Inkscape::Util::Quantity::convert(1, "in", "px") / area.width(); + dpi = (gdouble) Inkscape::Util::Quantity::convert(width, "in", "px") / area.width(); } if (sp_export_height) { @@ -1546,15 +1546,15 @@ static int sp_do_export_png(SPDocument *doc) g_warning("Export height %lu out of range (1 - %lu). Nothing exported.", height, (unsigned long int)PNG_UINT_31_MAX); return 1; } - dpi = (gdouble) height * Inkscape::Util::Quantity::convert(1, "in", "px") / area.height(); + dpi = (gdouble) Inkscape::Util::Quantity::convert(height, "in", "px") / area.height(); } if (!sp_export_width) { - width = (unsigned long int) (area.width() * dpi / Inkscape::Util::Quantity::convert(1, "in", "px") + 0.5); + width = (unsigned long int) (Inkscape::Util::Quantity::convert(area.width(), "px", "in") * dpi + 0.5); } if (!sp_export_height) { - height = (unsigned long int) (area.height() * dpi / Inkscape::Util::Quantity::convert(1, "in", "px") + 0.5); + height = (unsigned long int) (Inkscape::Util::Quantity::convert(area.height(), "px", "in") * dpi + 0.5); } guint32 bgcolor = 0x00000000; diff --git a/src/selection-chemistry.cpp b/src/selection-chemistry.cpp index 3c12b78bd..14e3462d7 100644 --- a/src/selection-chemistry.cpp +++ b/src/selection-chemistry.cpp @@ -3397,7 +3397,7 @@ void sp_selection_create_bitmap_copy(SPDesktop *desktop) res = prefs_res; } else if (0 < prefs_min) { // If minsize is given, look up minimum bitmap size (default 250 pixels) and calculate resolution from it - res = Inkscape::Util::Quantity::convert(1, "in", "px") * prefs_min / MIN(bbox->width(), bbox->height()); + res = Inkscape::Util::Quantity::convert(prefs_min, "in", "px") / MIN(bbox->width(), bbox->height()); } else { float hint_xdpi = 0, hint_ydpi = 0; Glib::ustring hint_filename; @@ -3418,8 +3418,8 @@ void sp_selection_create_bitmap_copy(SPDesktop *desktop) } // The width and height of the bitmap in pixels - unsigned width = (unsigned) floor(bbox->width() * res / Inkscape::Util::Quantity::convert(1, "in", "px")); - unsigned height =(unsigned) floor(bbox->height() * res / Inkscape::Util::Quantity::convert(1, "in", "px")); + unsigned width = (unsigned) floor(bbox->width() * Inkscape::Util::Quantity::convert(res, "px", "in")); + unsigned height =(unsigned) floor(bbox->height() * Inkscape::Util::Quantity::convert(res, "px", "in")); // Find out if we have to run an external filter gchar const *run = NULL; diff --git a/src/style.cpp b/src/style.cpp index 4a808fac6..8c0000f3a 100644 --- a/src/style.cpp +++ b/src/style.cpp @@ -2483,11 +2483,11 @@ sp_style_css_size_px_to_units(double size, int unit) case SP_CSS_UNIT_NONE: unit_size = size; break; case SP_CSS_UNIT_PX: unit_size = size; break; - case SP_CSS_UNIT_PT: unit_size = size * Inkscape::Util::Quantity::convert(1, "px", "pt"); break; - case SP_CSS_UNIT_PC: unit_size = size * (Inkscape::Util::Quantity::convert(1, "px", "pt") / Inkscape::Util::Quantity::convert(1, "pc", "pt")); break; - case SP_CSS_UNIT_MM: unit_size = size * Inkscape::Util::Quantity::convert(1, "px", "mm"); break; - case SP_CSS_UNIT_CM: unit_size = size * Inkscape::Util::Quantity::convert(1, "px", "cm"); break; - case SP_CSS_UNIT_IN: unit_size = size * Inkscape::Util::Quantity::convert(1, "px", "in"); break; + case SP_CSS_UNIT_PT: unit_size = Inkscape::Util::Quantity::convert(size, "px", "pt"); break; + case SP_CSS_UNIT_PC: unit_size = Inkscape::Util::Quantity::convert(size, "px", "pc"); break; + case SP_CSS_UNIT_MM: unit_size = Inkscape::Util::Quantity::convert(size, "px", "mm"); break; + case SP_CSS_UNIT_CM: unit_size = Inkscape::Util::Quantity::convert(size, "px", "cm"); break; + case SP_CSS_UNIT_IN: unit_size = Inkscape::Util::Quantity::convert(size, "px", "in"); break; case SP_CSS_UNIT_EM: unit_size = size / SP_CSS_FONT_SIZE_DEFAULT; break; case SP_CSS_UNIT_EX: unit_size = size * 2.0 / SP_CSS_FONT_SIZE_DEFAULT ; break; case SP_CSS_UNIT_PERCENT: unit_size = size * 100.0 / SP_CSS_FONT_SIZE_DEFAULT; break; @@ -3472,19 +3472,19 @@ sp_style_read_ilength(SPILength *val, gchar const *str) } else if (!strcmp(e, "pt")) { /* Userspace / DEVICESCALE */ val->unit = SP_CSS_UNIT_PT; - val->computed = value * Inkscape::Util::Quantity::convert(1, "pt", "px"); + val->computed = Inkscape::Util::Quantity::convert(value, "pt", "px"); } else if (!strcmp(e, "pc")) { val->unit = SP_CSS_UNIT_PC; - val->computed = value * Inkscape::Util::Quantity::convert(1, "pc", "px"); + val->computed = Inkscape::Util::Quantity::convert(value, "pc", "px"); } else if (!strcmp(e, "mm")) { val->unit = SP_CSS_UNIT_MM; - val->computed = value * Inkscape::Util::Quantity::convert(1, "mm", "px"); + val->computed = Inkscape::Util::Quantity::convert(value, "mm", "px"); } else if (!strcmp(e, "cm")) { val->unit = SP_CSS_UNIT_CM; - val->computed = value * Inkscape::Util::Quantity::convert(1, "cm", "px"); + val->computed = Inkscape::Util::Quantity::convert(value, "cm", "px"); } else if (!strcmp(e, "in")) { val->unit = SP_CSS_UNIT_IN; - val->computed = value * Inkscape::Util::Quantity::convert(1, "in", "px"); + val->computed = Inkscape::Util::Quantity::convert(value, "in", "px"); } else if (!strcmp(e, "em")) { /* EM square */ val->unit = SP_CSS_UNIT_EM; @@ -4043,23 +4043,23 @@ sp_style_write_ilength(gchar *p, gint const len, gchar const *const key, return g_strlcpy(p, os.str().c_str(), len); break; case SP_CSS_UNIT_PT: - os << key << ":" << val->computed * Inkscape::Util::Quantity::convert(1, "px", "pt") << "pt;"; + os << key << ":" << Inkscape::Util::Quantity::convert(val->computed, "px", "pt") << "pt;"; return g_strlcpy(p, os.str().c_str(), len); break; case SP_CSS_UNIT_PC: - os << key << ":" << val->computed * Inkscape::Util::Quantity::convert(1, "px", "pt") / 12.0 << "pc;"; + os << key << ":" << Inkscape::Util::Quantity::convert(val->computed, "px", "pc") << "pc;"; return g_strlcpy(p, os.str().c_str(), len); break; case SP_CSS_UNIT_MM: - os << key << ":" << val->computed * Inkscape::Util::Quantity::convert(1, "px", "mm") << "mm;"; + os << key << ":" << Inkscape::Util::Quantity::convert(val->computed, "px", "mm") << "mm;"; return g_strlcpy(p, os.str().c_str(), len); break; case SP_CSS_UNIT_CM: - os << key << ":" << val->computed * Inkscape::Util::Quantity::convert(1, "px", "cm") << "cm;"; + os << key << ":" << Inkscape::Util::Quantity::convert(val->computed, "px", "cm") << "cm;"; return g_strlcpy(p, os.str().c_str(), len); break; case SP_CSS_UNIT_IN: - os << key << ":" << val->computed * Inkscape::Util::Quantity::convert(1, "px", "in") << "in;"; + os << key << ":" << Inkscape::Util::Quantity::convert(val->computed, "px", "in") << "in;"; return g_strlcpy(p, os.str().c_str(), len); break; case SP_CSS_UNIT_EM: diff --git a/src/text-editing.cpp b/src/text-editing.cpp index 0d30863d9..cc59b0145 100644 --- a/src/text-editing.cpp +++ b/src/text-editing.cpp @@ -1278,23 +1278,23 @@ sp_te_adjust_linespacing_screen (SPItem *text, Inkscape::Text::Layout::iterator style->line_height.value = style->line_height.computed; break; case SP_CSS_UNIT_PT: - style->line_height.computed += zby * Inkscape::Util::Quantity::convert(1, "px", "pt"); + style->line_height.computed += Inkscape::Util::Quantity::convert(zby, "px", "pt"); style->line_height.value = style->line_height.computed; break; case SP_CSS_UNIT_PC: - style->line_height.computed += zby * (Inkscape::Util::Quantity::convert(1, "px", "pt") / 12); + style->line_height.computed += (Inkscape::Util::Quantity::convert(zby, "px", "pt") / 12); style->line_height.value = style->line_height.computed; break; case SP_CSS_UNIT_MM: - style->line_height.computed += zby * Inkscape::Util::Quantity::convert(1, "px", "mm"); + style->line_height.computed += Inkscape::Util::Quantity::convert(zby, "px", "mm"); style->line_height.value = style->line_height.computed; break; case SP_CSS_UNIT_CM: - style->line_height.computed += zby * Inkscape::Util::Quantity::convert(1, "px", "cm"); + style->line_height.computed += Inkscape::Util::Quantity::convert(zby, "px", "cm"); style->line_height.value = style->line_height.computed; break; case SP_CSS_UNIT_IN: - style->line_height.computed += zby * Inkscape::Util::Quantity::convert(1, "px", "in"); + style->line_height.computed += Inkscape::Util::Quantity::convert(zby, "px", "in"); style->line_height.value = style->line_height.computed; break; } diff --git a/src/ui/clipboard.cpp b/src/ui/clipboard.cpp index 629960613..084b2ebd8 100644 --- a/src/ui/clipboard.cpp +++ b/src/ui/clipboard.cpp @@ -1084,8 +1084,8 @@ void ClipboardManagerImpl::_onGet(Gtk::SelectionData &sel, guint /*info*/) Geom::Point origin (_clipboardSPDoc->getRoot()->x.computed, _clipboardSPDoc->getRoot()->y.computed); Geom::Rect area = Geom::Rect(origin, origin + _clipboardSPDoc->getDimensions()); - unsigned long int width = (unsigned long int) (area.width() * dpi / Inkscape::Util::Quantity::convert(1, "in", "px") + 0.5); - unsigned long int height = (unsigned long int) (area.height() * dpi / Inkscape::Util::Quantity::convert(1, "in", "px") + 0.5); + unsigned long int width = (unsigned long int) (Inkscape::Util::Quantity::convert(area.width(), "px", "in") * dpi + 0.5); + unsigned long int height = (unsigned long int) (Inkscape::Util::Quantity::convert(area.height(), "in", "px") * dpi + 0.5); // read from namedview Inkscape::XML::Node *nv = sp_repr_lookup_name (_clipboardSPDoc->rroot, "sodipodi:namedview"); diff --git a/src/ui/dialog/print.cpp b/src/ui/dialog/print.cpp index 3ce75327f..e6dae278b 100644 --- a/src/ui/dialog/print.cpp +++ b/src/ui/dialog/print.cpp @@ -72,8 +72,8 @@ static void draw_page( sp_export_png_file(junk->_doc, tmp_png.c_str(), 0.0, 0.0, width, height, - (unsigned long)(width * dpi / Inkscape::Util::Quantity::convert(1, "in", "px")), - (unsigned long)(height * dpi / Inkscape::Util::Quantity::convert(1, "in", "px")), + (unsigned long)(Inkscape::Util::Quantity::convert(width, "px", "in") * dpi), + (unsigned long)(Inkscape::Util::Quantity::convert(height, "px", "in") * dpi), dpi, dpi, bgcolor, NULL, NULL, true, NULL); // This doesn't seem to work: diff --git a/src/ui/dialog/text-edit.cpp b/src/ui/dialog/text-edit.cpp index 4a25f723b..9124681a0 100644 --- a/src/ui/dialog/text-edit.cpp +++ b/src/ui/dialog/text-edit.cpp @@ -401,7 +401,7 @@ void TextEdit::setPreviewText (Glib::ustring font_spec, Glib::ustring phrase) Inkscape::Preferences *prefs = Inkscape::Preferences::get(); int unit = prefs->getInt("/options/font/unitType", SP_CSS_UNIT_PT); - double pt_size = sp_style_css_size_units_to_px(sp_font_selector_get_size(fsel), unit) * Inkscape::Util::Quantity::convert(1, "px", "pt"); + double pt_size = Inkscape::Util::Quantity::convert(sp_style_css_size_units_to_px(sp_font_selector_get_size(fsel), unit), "px", "pt"); // Pango font size is in 1024ths of a point // C++11: Glib::ustring size = std::to_string( pt_size * PANGO_SCALE ); -- cgit v1.2.3 From 6ed0e34b74c37ab56d5345dfbe14305a48fb76d9 Mon Sep 17 00:00:00 2001 From: "David R. Bild" Date: Thu, 29 Aug 2013 14:26:13 -0600 Subject: use multiple graphic/text layers for pdf+latex output Fixed bugs: - https://launchpad.net/bugs/771957 (bzr r12487.1.2) --- src/extension/internal/cairo-render-context.cpp | 34 +++++++++++++++++++-- src/extension/internal/cairo-render-context.h | 11 +++++++ src/extension/internal/latex-text-renderer.cpp | 40 ++++++++++++++++++++++--- src/extension/internal/latex-text-renderer.h | 11 +++++++ 4 files changed, 90 insertions(+), 6 deletions(-) diff --git a/src/extension/internal/cairo-render-context.cpp b/src/extension/internal/cairo-render-context.cpp index 75ec45ad0..3c222bd9e 100644 --- a/src/extension/internal/cairo-render-context.cpp +++ b/src/extension/internal/cairo-render-context.cpp @@ -125,7 +125,8 @@ CairoRenderContext::CairoRenderContext(CairoRenderer *parent) : _state(NULL), _renderer(parent), _render_mode(RENDER_MODE_NORMAL), - _clip_mode(CLIP_MODE_MASK) + _clip_mode(CLIP_MODE_MASK), + _omittext_state(EMPTY) { font_table = g_hash_table_new_full(g_direct_hash, g_direct_equal, NULL, font_data_free); } @@ -1342,11 +1343,36 @@ CairoRenderContext::_setStrokeStyle(SPStyle const *style, Geom::OptRect const &p cairo_set_miter_limit(_cr, MAX(1, style->stroke_miterlimit.value)); } +void +CairoRenderContext::_prepareRenderGraphic() +{ + // Only PDFLaTeX supports importing a single page of a graphics file, + // so only PDF backend gets interleaved text/graphics + if (_is_omittext && _target == CAIRO_SURFACE_TYPE_PDF) { + if (_omittext_state == NEW_PAGE_ON_GRAPHIC) + cairo_show_page(_cr); + _omittext_state = GRAPHIC_ON_TOP; + } +} + +void +CairoRenderContext::_prepareRenderText() +{ + // Only PDFLaTeX supports importing a single page of a graphics file, + // so only PDF backend gets interleaved text/graphics + if (_is_omittext && _target == CAIRO_SURFACE_TYPE_PDF) { + if (_omittext_state == GRAPHIC_ON_TOP) + _omittext_state = NEW_PAGE_ON_GRAPHIC; + } +} + bool CairoRenderContext::renderPathVector(Geom::PathVector const & pathv, SPStyle const *style, Geom::OptRect const &pbox) { g_assert( _is_valid ); + _prepareRenderGraphic(); + if (_render_mode == RENDER_MODE_CLIP) { if (_clip_mode == CLIP_MODE_PATH) { addClipPath(pathv, &style->fill_rule); @@ -1419,6 +1445,8 @@ bool CairoRenderContext::renderImage(GdkPixbuf *pb, return true; } + _prepareRenderGraphic(); + int w = gdk_pixbuf_get_width (pb); int h = gdk_pixbuf_get_height (pb); @@ -1500,7 +1528,9 @@ unsigned int CairoRenderContext::_showGlyphs(cairo_t *cr, PangoFont * /*font*/, bool CairoRenderContext::renderGlyphtext(PangoFont *font, Geom::Affine const &font_matrix, std::vector const &glyphtext, SPStyle const *style) -{ +{ + + _prepareRenderText(); if (_is_omittext) return true; diff --git a/src/extension/internal/cairo-render-context.h b/src/extension/internal/cairo-render-context.h index e66d4bf00..f8426aebe 100644 --- a/src/extension/internal/cairo-render-context.h +++ b/src/extension/internal/cairo-render-context.h @@ -155,6 +155,12 @@ protected: CairoRenderContext(CairoRenderer *renderer); virtual ~CairoRenderContext(void); + enum CairoOmitTextPageState { + EMPTY, + GRAPHIC_ON_TOP, + NEW_PAGE_ON_GRAPHIC + }; + float _width; float _height; unsigned short _dpi; @@ -188,6 +194,8 @@ protected: CairoRenderMode _render_mode; CairoClipMode _clip_mode; + CairoOmitTextPageState _omittext_state; + cairo_pattern_t *_createPatternForPaintServer(SPPaintServer const *const paintserver, Geom::OptRect const &pbox, float alpha); cairo_pattern_t *_createPatternPainter(SPPaintServer const *const paintserver, Geom::OptRect const &pbox); @@ -202,6 +210,9 @@ protected: void _concatTransform(cairo_t *cr, double xx, double yx, double xy, double yy, double x0, double y0); void _concatTransform(cairo_t *cr, Geom::Affine const &transform); + void _prepareRenderGraphic(void); + void _prepareRenderText(void); + GHashTable *font_table; static void font_data_free(gpointer data); diff --git a/src/extension/internal/latex-text-renderer.cpp b/src/extension/internal/latex-text-renderer.cpp index 57a71b467..55d8d8352 100644 --- a/src/extension/internal/latex-text-renderer.cpp +++ b/src/extension/internal/latex-text-renderer.cpp @@ -98,7 +98,9 @@ latex_render_document_text_to_file( SPDocument *doc, gchar const *filename, LaTeXTextRenderer::LaTeXTextRenderer(bool pdflatex) : _stream(NULL), _filename(NULL), - _pdflatex(pdflatex) + _pdflatex(pdflatex), + _omittext_state(EMPTY), + _omittext_page(1) { push_transform(Geom::identity()); } @@ -262,6 +264,11 @@ LaTeXTextRenderer::sp_use_render(SPItem *item) void LaTeXTextRenderer::sp_text_render(SPItem *item) { + // Only PDFLaTeX supports importing a single page of a graphics file, + // so only PDF backend gets interleaved text/graphics + if (_pdflatex && _omittext_state == GRAPHIC_ON_TOP) + _omittext_state = NEW_PAGE_ON_GRAPHIC; + SPText *textobj = SP_TEXT (item); SPStyle *style = item->style; @@ -395,6 +402,11 @@ Flowtext is possible by using a minipage! :) Flowing in rectangle is possible, not in arb shape. */ + // Only PDFLaTeX supports importing a single page of a graphics file, + // so only PDF backend gets interleaved text/graphics + if (_pdflatex && _omittext_state == GRAPHIC_ON_TOP) + _omittext_state = NEW_PAGE_ON_GRAPHIC; + SPFlowtext *flowtext = SP_FLOWTEXT(item); SPStyle *style = item->style; @@ -556,8 +568,13 @@ LaTeXTextRenderer::sp_item_invoke_render(SPItem *item) return sp_text_render(item); } else if (SP_IS_FLOWTEXT(item)) { return sp_flowtext_render(item); + } else { + // Only PDFLaTeX supports importing a single page of a graphics file, + // so only PDF backend gets interleaved text/graphics + if (_pdflatex && (_omittext_state == EMPTY || _omittext_state == NEW_PAGE_ON_GRAPHIC)) + writeGraphicPage(); + _omittext_state = GRAPHIC_ON_TOP; } - // We are not interested in writing the other SPItem types to LaTeX } void @@ -568,6 +585,20 @@ LaTeXTextRenderer::renderItem(SPItem *item) pop_transform(); } +void +LaTeXTextRenderer::writeGraphicPage(void) { + Inkscape::SVGOStringStream os; + os.setf(std::ios::fixed); // no scientific notation + + // strip pathname, as it is probably desired. Having a specific path in the TeX file is not convenient. + if (_pdflatex) + os << " \\put(0,0){\\includegraphics[width=\\unitlength,page=" << _omittext_page++ << "]{" << _filename << "}}%\n"; + else + os << " \\put(0,0){\\includegraphics[width=\\unitlength]{" << _filename << "}}%\n"; + + fprintf(_stream, "%s", os.str().c_str()); +} + bool LaTeXTextRenderer::setupDocument(SPDocument *doc, bool pageBoundingBox, float bleedmargin_px, SPItem *base) { @@ -625,11 +656,12 @@ LaTeXTextRenderer::setupDocument(SPDocument *doc, bool pageBoundingBox, float bl os << " \\makeatother%\n"; os << " \\begin{picture}(" << _width << "," << _height << ")%\n"; - // strip pathname, as it is probably desired. Having a specific path in the TeX file is not convenient. - os << " \\put(0,0){\\includegraphics[width=\\unitlength]{" << _filename << "}}%\n"; fprintf(_stream, "%s", os.str().c_str()); + if (!_pdflatex) + writeGraphicPage(); + return true; } diff --git a/src/extension/internal/latex-text-renderer.h b/src/extension/internal/latex-text-renderer.h index 0fa94c9e6..9aecf5ed9 100644 --- a/src/extension/internal/latex-text-renderer.h +++ b/src/extension/internal/latex-text-renderer.h @@ -47,11 +47,20 @@ public: void renderItem(SPItem *item); protected: + enum LaTeXOmitTextPageState { + EMPTY, + GRAPHIC_ON_TOP, + NEW_PAGE_ON_GRAPHIC + }; + FILE * _stream; gchar * _filename; bool _pdflatex; /** true if ouputting for pdfLaTeX*/ + LaTeXOmitTextPageState _omittext_state; + gulong _omittext_page; + void push_transform(Geom::Affine const &transform); Geom::Affine const & transform(); void pop_transform(); @@ -60,6 +69,8 @@ protected: void writePreamble(); void writePostamble(); + void writeGraphicPage(); + void sp_item_invoke_render(SPItem *item); void sp_root_render(SPRoot *item); void sp_group_render(SPItem *item); -- cgit v1.2.3 From 3c4acd93fbc00c466d24b74f05d874dc2d7d6b95 Mon Sep 17 00:00:00 2001 From: su_v Date: Thu, 29 Aug 2013 23:28:08 +0200 Subject: adapt to changes in r12471 (unit refactoring) (bzr r11668.1.76) --- src/extension/internal/emf-inout.cpp | 9 ++++----- src/extension/internal/emf-print.cpp | 10 ++++------ src/extension/internal/wmf-inout.cpp | 8 ++++---- src/extension/internal/wmf-print.cpp | 5 ++--- 4 files changed, 14 insertions(+), 18 deletions(-) diff --git a/src/extension/internal/emf-inout.cpp b/src/extension/internal/emf-inout.cpp index 7dc0ee314..9dba3b77c 100644 --- a/src/extension/internal/emf-inout.cpp +++ b/src/extension/internal/emf-inout.cpp @@ -42,11 +42,10 @@ #include "extension/output.h" #include "display/drawing.h" #include "display/drawing-item.h" -#include "unit-constants.h" #include "clear-n_.h" #include "document.h" #include "libunicode-convert/unicode-convert.h" - +#include "util/units.h" #include "emf-print.h" #include "emf-inout.h" @@ -1784,7 +1783,7 @@ std::cout << "BEFORE DRAW" */ if ((pEmr->szlMillimeters.cx + pEmr->szlMillimeters.cy) && ( pEmr->szlDevice.cx + pEmr->szlDevice.cy)){ d->E2IdirY = 1.0; // assume MM_TEXT, if not, this will be changed later - d->D2PscaleX = d->D2PscaleY = PX_PER_MM * + d->D2PscaleX = d->D2PscaleY = Inkscape::Util::Quantity::convert(1, "mm", "px") * (double)(pEmr->szlMillimeters.cx + pEmr->szlMillimeters.cy)/ (double)( pEmr->szlDevice.cx + pEmr->szlDevice.cy); } @@ -1804,8 +1803,8 @@ std::cout << "BEFORE DRAW" d->MMX = d->MM100InX / 100.0; d->MMY = d->MM100InY / 100.0; - d->PixelsOutX = d->MMX * PX_PER_MM; - d->PixelsOutY = d->MMY * PX_PER_MM; + d->PixelsOutX = d->MMX * Inkscape::Util::Quantity::convert(1, "mm", "px"); + d->PixelsOutY = d->MMY * Inkscape::Util::Quantity::convert(1, "mm", "px"); // Upper left corner, from header rclBounds, in device units, usually both 0, but not always d->ulCornerInX = pEmr->rclBounds.left; diff --git a/src/extension/internal/emf-print.cpp b/src/extension/internal/emf-print.cpp index 7440b5380..33834bea8 100644 --- a/src/extension/internal/emf-print.cpp +++ b/src/extension/internal/emf-print.cpp @@ -40,14 +40,12 @@ #include "helper/geom.h" #include "helper/geom-curves.h" #include "sp-item.h" +#include "util/units.h" #include "style.h" #include "inkscape-version.h" #include "sp-root.h" - -#include "unit-constants.h" - #include "extension/system.h" #include "extension/print.h" #include "document.h" @@ -342,7 +340,7 @@ unsigned int PrintEmf::begin (Inkscape::Extension::Print *mod, SPDocument *doc) if (bbox) d = *bbox; } - d *= Geom::Scale(IN_PER_PX); + d *= Geom::Scale(Inkscape::Util::Quantity::convert(1, "px", "in")); float dwInchesX = d.width(); float dwInchesY = d.height(); @@ -410,7 +408,7 @@ unsigned int PrintEmf::begin (Inkscape::Extension::Print *mod, SPDocument *doc) g_error("Fatal programming error in PrintEmf::begin at textcomment_set 1"); } - snprintf(buff, sizeof(buff)-1, "Drawing=%.1lfx%.1lfpx, %.1lfx%.1lfmm", _width, _height, dwInchesX * MM_PER_IN, dwInchesY * MM_PER_IN); + snprintf(buff, sizeof(buff)-1, "Drawing=%.1lfx%.1lfpx, %.1lfx%.1lfmm", _width, _height, dwInchesX * Inkscape::Util::Quantity::convert(1, "in", "mm"), dwInchesY * Inkscape::Util::Quantity::convert(1, "in", "mm")); rec = textcomment_set(buff); if(!rec || emf_append((PU_ENHMETARECORD)rec, et, U_REC_FREE)){ g_error("Fatal programming error in PrintEmf::begin at textcomment_set 1"); @@ -1715,7 +1713,7 @@ unsigned int PrintEmf::image( unsigned int w, /** width of bitmap */ unsigned int h, /** height of bitmap */ unsigned int rs, /** row stride (normally w*4) */ - Geom::Affine const &tf_ignore, /** WRONG affine transform, use the one from m_tr_stack */ + Geom::Affine const &/*tf_ignore*/, /** WRONG affine transform, use the one from m_tr_stack */ SPStyle const *style) /** provides indirect link to image object */ { double x1,y1,dw,dh; diff --git a/src/extension/internal/wmf-inout.cpp b/src/extension/internal/wmf-inout.cpp index 4c69c76a0..7147b3433 100644 --- a/src/extension/internal/wmf-inout.cpp +++ b/src/extension/internal/wmf-inout.cpp @@ -42,7 +42,7 @@ #include "extension/output.h" #include "display/drawing.h" #include "display/drawing-item.h" -#include "unit-constants.h" +#include "util/units.h" #include "clear-n_.h" #include "document.h" #include "libunicode-convert/unicode-convert.h" @@ -1720,7 +1720,7 @@ int Wmf::myMetaFileProc(const char *contents, unsigned int length, PWMF_CALLBACK d->ulCornerInY = Placeable.Dst.top; d->E2IdirY = 1.0; // assume MM_ANISOTROPIC, if not, this will be changed later - d->D2PscaleX = d->D2PscaleY = PX_PER_IN/(double) Placeable.Inch; + d->D2PscaleX = d->D2PscaleY = Inkscape::Util::Quantity::convert(1, "in", "px")/(double) Placeable.Inch; trinfo_load_qe(d->tri, d->D2PscaleX); /* quantization error that will affect text positions */ // drawing size in Inkscape pixels @@ -1745,8 +1745,8 @@ int Wmf::myMetaFileProc(const char *contents, unsigned int length, PWMF_CALLBACK tmp_outdef << " version=\"1.0\"\n"; tmp_outdef << - " width=\"" << d->PixelsOutX/ PX_PER_MM << "mm\"\n" << - " height=\"" << d->PixelsOutY/ PX_PER_MM << "mm\">\n"; + " width=\"" << d->PixelsOutX/ Inkscape::Util::Quantity::convert(1, "mm", "px") << "mm\"\n" << + " height=\"" << d->PixelsOutY/ Inkscape::Util::Quantity::convert(1, "mm", "px") << "mm\">\n"; *(d->outdef) += tmp_outdef.str().c_str(); *(d->outdef) += ""; // temporary end of header diff --git a/src/extension/internal/wmf-print.cpp b/src/extension/internal/wmf-print.cpp index e91a74b20..b7ab49b57 100644 --- a/src/extension/internal/wmf-print.cpp +++ b/src/extension/internal/wmf-print.cpp @@ -45,8 +45,7 @@ #include "inkscape-version.h" #include "sp-root.h" - -#include "unit-constants.h" +#include "util/units.h" #include "extension/system.h" #include "extension/print.h" @@ -336,7 +335,7 @@ unsigned int PrintWmf::begin (Inkscape::Extension::Print *mod, SPDocument *doc) if (bbox) d = *bbox; } - d *= Geom::Scale(IN_PER_PX); // 90 dpi inside inkscape, wmf file will be 1200 dpi + d *= Geom::Scale(Inkscape::Util::Quantity::convert(1, "px", "in")); // 90 dpi inside inkscape, wmf file will be 1200 dpi /* -1/1200 in next two lines so that WMF read in will write out again at exactly the same size */ float dwInchesX = d.width() - 1.0/1200.0; -- cgit v1.2.3 From 24abda6919dd0118cb1fbfe4b9b7edb2065692a8 Mon Sep 17 00:00:00 2001 From: su_v Date: Thu, 29 Aug 2013 23:57:06 +0200 Subject: fix make check (POTFILES.in) (bzr r11668.1.77) --- po/POTFILES.in | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/po/POTFILES.in b/po/POTFILES.in index 75e9de185..2f6877485 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -88,7 +88,7 @@ src/extension/internal/cairo-ps-out.cpp src/extension/internal/cairo-renderer-pdf-out.cpp src/extension/internal/cdr-input.cpp src/extension/internal/clear-n_.h -src/extension/internal/emf-win32-inout.cpp +src/extension/internal/emf-inout.cpp src/extension/internal/filter/bevels.h src/extension/internal/filter/blurs.h src/extension/internal/filter/bumps.h @@ -117,6 +117,7 @@ src/extension/internal/pov-out.cpp src/extension/internal/svg.cpp src/extension/internal/svgz.cpp src/extension/internal/vsd-input.cpp +src/extension/internal/wmf-inout.cpp src/extension/internal/wpg-input.cpp src/extension/param/bool.cpp src/extension/param/description.cpp -- cgit v1.2.3 From 14f607efe6cb318756d74604c3cd6810799b5434 Mon Sep 17 00:00:00 2001 From: Krzysztof Kosi??ski Date: Sat, 31 Aug 2013 18:05:13 +0200 Subject: Move libuemf to a separate directory. Rename libunicode-convert to symbol_convert and put it in libuemf. (bzr r12490) --- configure.ac | 2 +- po/POTFILES.in | 107 +- src/CMakeLists.txt | 2 + src/Makefile.am | 23 +- src/extension/internal/Makefile_insert | 10 - src/extension/internal/emf-inout.cpp | 4 +- src/extension/internal/emf-inout.h | 2 +- src/extension/internal/emf-print.cpp | 7 +- src/extension/internal/emf-print.h | 2 +- src/extension/internal/text_reassemble.c | 2 +- src/extension/internal/uemf.c | 5523 ------------------------ src/extension/internal/uemf.h | 2889 ------------- src/extension/internal/uemf_endian.c | 1783 -------- src/extension/internal/uemf_endian.h | 37 - src/extension/internal/uemf_print.c | 2358 ---------- src/extension/internal/uemf_print.h | 169 - src/extension/internal/uemf_utf.c | 552 --- src/extension/internal/uemf_utf.h | 53 - src/extension/internal/uwmf.c | 6880 ------------------------------ src/extension/internal/uwmf.h | 2492 ----------- src/extension/internal/uwmf_endian.c | 1772 -------- src/extension/internal/uwmf_endian.h | 39 - src/extension/internal/uwmf_print.c | 1616 ------- src/extension/internal/uwmf_print.h | 48 - src/extension/internal/wmf-inout.cpp | 4 +- src/extension/internal/wmf-inout.h | 2 +- src/extension/internal/wmf-print.cpp | 8 +- src/extension/internal/wmf-print.h | 2 +- src/libnrtype/Layout-TNG-Output.cpp | 2 +- src/libuemf/CMakeLists.txt | 23 + src/libuemf/Makefile_insert | 24 + src/libuemf/README | 5 + src/libuemf/makefile.in | 17 + src/libuemf/symbol_convert.c | 1008 +++++ src/libuemf/symbol_convert.h | 51 + src/libuemf/uemf.c | 5523 ++++++++++++++++++++++++ src/libuemf/uemf.h | 2889 +++++++++++++ src/libuemf/uemf_endian.c | 1783 ++++++++ src/libuemf/uemf_endian.h | 37 + src/libuemf/uemf_print.c | 2358 ++++++++++ src/libuemf/uemf_print.h | 169 + src/libuemf/uemf_utf.c | 552 +++ src/libuemf/uemf_utf.h | 53 + src/libuemf/uwmf.c | 6880 ++++++++++++++++++++++++++++++ src/libuemf/uwmf.h | 2492 +++++++++++ src/libuemf/uwmf_endian.c | 1772 ++++++++ src/libuemf/uwmf_endian.h | 39 + src/libuemf/uwmf_print.c | 1616 +++++++ src/libuemf/uwmf_print.h | 48 + src/libunicode-convert/Makefile_insert | 5 - src/libunicode-convert/README | 1 - src/libunicode-convert/makefile.in | 17 - src/libunicode-convert/unicode-convert.c | 1008 ----- src/libunicode-convert/unicode-convert.h | 51 - src/style.h | 12 - 55 files changed, 27426 insertions(+), 27397 deletions(-) delete mode 100644 src/extension/internal/uemf.c delete mode 100644 src/extension/internal/uemf.h delete mode 100644 src/extension/internal/uemf_endian.c delete mode 100644 src/extension/internal/uemf_endian.h delete mode 100644 src/extension/internal/uemf_print.c delete mode 100644 src/extension/internal/uemf_print.h delete mode 100644 src/extension/internal/uemf_utf.c delete mode 100644 src/extension/internal/uemf_utf.h delete mode 100644 src/extension/internal/uwmf.c delete mode 100644 src/extension/internal/uwmf.h delete mode 100644 src/extension/internal/uwmf_endian.c delete mode 100644 src/extension/internal/uwmf_endian.h delete mode 100644 src/extension/internal/uwmf_print.c delete mode 100644 src/extension/internal/uwmf_print.h create mode 100644 src/libuemf/CMakeLists.txt create mode 100644 src/libuemf/Makefile_insert create mode 100644 src/libuemf/README create mode 100644 src/libuemf/makefile.in create mode 100644 src/libuemf/symbol_convert.c create mode 100644 src/libuemf/symbol_convert.h create mode 100644 src/libuemf/uemf.c create mode 100644 src/libuemf/uemf.h create mode 100644 src/libuemf/uemf_endian.c create mode 100644 src/libuemf/uemf_endian.h create mode 100644 src/libuemf/uemf_print.c create mode 100644 src/libuemf/uemf_print.h create mode 100644 src/libuemf/uemf_utf.c create mode 100644 src/libuemf/uemf_utf.h create mode 100644 src/libuemf/uwmf.c create mode 100644 src/libuemf/uwmf.h create mode 100644 src/libuemf/uwmf_endian.c create mode 100644 src/libuemf/uwmf_endian.h create mode 100644 src/libuemf/uwmf_print.c create mode 100644 src/libuemf/uwmf_print.h delete mode 100644 src/libunicode-convert/Makefile_insert delete mode 100644 src/libunicode-convert/README delete mode 100644 src/libunicode-convert/makefile.in delete mode 100644 src/libunicode-convert/unicode-convert.c delete mode 100644 src/libunicode-convert/unicode-convert.h diff --git a/configure.ac b/configure.ac index 7a08d5c61..5be7a09a8 100644 --- a/configure.ac +++ b/configure.ac @@ -1036,7 +1036,7 @@ src/libcroco/makefile src/libgdl/makefile src/libnrtype/makefile src/libavoid/makefile -src/libunicode-convert/makefile +src/libuemf/makefile src/livarot/makefile src/live_effects/makefile src/live_effects/parameter/makefile diff --git a/po/POTFILES.in b/po/POTFILES.in index 2f6877485..57af25c3d 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -1,35 +1,17 @@ - # List of source files containing translatable strings. # Please keep this file sorted alphabetically. -# Generated by Waf at Sun Oct 4 01:04:56 2009 - +# Generated by ./generate_POTFILES.sh at sob, 31 sie 2013, 17:42:59 CEST [encoding: UTF-8] - -cxxtest/cxxtestgen.py inkscape.desktop.in -share/filters/i18n.py share/filters/filters.svg.h -share/palettes/palettes.h -share/patterns/i18n.py -share/patterns/patterns.svg.h -src/conn-avoid-ref.cpp -src/connector-context.h -src/live_effects/lpe-extrude.cpp -src/sp-flowtext.cpp src/arc-context.cpp src/box3d-context.cpp src/box3d.cpp src/color-profile.cpp src/connector-context.cpp src/context-fns.cpp -src/desktop-events.cpp src/desktop.cpp -src/ui/dialog/clonetiler.cpp -src/ui/dialog/export.cpp -src/ui/dialog/export.h -src/ui/dialog/spellcheck.cpp -src/ui/dialog/text-edit.cpp -src/ui/dialog/xml-tree.cpp +src/desktop-events.cpp src/display/canvas-axonomgrid.cpp src/display/canvas-grid.cpp src/display/snap-indicator.cpp @@ -64,8 +46,8 @@ src/extension/internal/bitmap/enhance.cpp src/extension/internal/bitmap/equalize.cpp src/extension/internal/bitmap/gaussianBlur.cpp src/extension/internal/bitmap/implode.cpp -src/extension/internal/bitmap/level.cpp src/extension/internal/bitmap/levelChannel.cpp +src/extension/internal/bitmap/level.cpp src/extension/internal/bitmap/medianFilter.cpp src/extension/internal/bitmap/modulate.cpp src/extension/internal/bitmap/negate.cpp @@ -94,8 +76,8 @@ src/extension/internal/filter/blurs.h src/extension/internal/filter/bumps.h src/extension/internal/filter/color.h src/extension/internal/filter/distort.h -src/extension/internal/filter/filter-file.cpp src/extension/internal/filter/filter.cpp +src/extension/internal/filter/filter-file.cpp src/extension/internal/filter/image.h src/extension/internal/filter/morphology.h src/extension/internal/filter/overlays.h @@ -108,8 +90,8 @@ src/extension/internal/gdkpixbuf-input.cpp src/extension/internal/gimpgrad.cpp src/extension/internal/grid.cpp src/extension/internal/javafx-out.cpp -src/extension/internal/latex-pstricks-out.cpp src/extension/internal/latex-pstricks.cpp +src/extension/internal/latex-pstricks-out.cpp src/extension/internal/odf.cpp src/extension/internal/pdf-input-cairo.cpp src/extension/internal/pdfinput/pdf-input.cpp @@ -137,37 +119,55 @@ src/gradient-context.cpp src/gradient-drag.cpp src/inkscape.cpp src/interface.cpp -src/io/sys.cpp src/knot.cpp src/knotholder.cpp src/libgdl/gdl-dock-bar.c -src/libgdl/gdl-dock-item-grip.c +src/libgdl/gdl-dock.c src/libgdl/gdl-dock-item.c +src/libgdl/gdl-dock-item-grip.c src/libgdl/gdl-dock-master.c src/libgdl/gdl-dock-notebook.c src/libgdl/gdl-dock-object.c src/libgdl/gdl-dock-paned.c src/libgdl/gdl-dock-placeholder.c src/libgdl/gdl-dock-tablabel.c -src/libgdl/gdl-dock.c +src/libgdl/gdl-i18n.c src/libgdl/gdl-i18n.h src/libgdl/gdl-switcher.c src/libnrtype/FontFactory.cpp src/live_effects/effect.cpp +src/live_effects/lpe-angle_bisector.cpp src/live_effects/lpe-bendpath.cpp +src/live_effects/lpe-boolops.cpp +src/live_effects/lpe-circle_with_radius.cpp src/live_effects/lpe-clone-original.cpp src/live_effects/lpe-constructgrid.cpp +src/live_effects/lpe-copy_rotate.cpp src/live_effects/lpe-curvestitch.cpp +src/live_effects/lpe-dynastroke.cpp src/live_effects/lpe-envelope.cpp +src/live_effects/lpe-extrude.cpp src/live_effects/lpe-gears.cpp src/live_effects/lpe-interpolate.cpp src/live_effects/lpe-knot.cpp +src/live_effects/lpe-lattice.cpp +src/live_effects/lpe-line_segment.cpp +src/live_effects/lpe-mirror_symmetry.cpp src/live_effects/lpe-offset.cpp +src/live_effects/lpe-parallel.cpp +src/live_effects/lpe-path_length.cpp src/live_effects/lpe-patternalongpath.cpp +src/live_effects/lpe-perp_bisector.cpp +src/live_effects/lpe-perspective_path.cpp src/live_effects/lpe-powerstroke.cpp +src/live_effects/lpe-recursiveskeleton.cpp src/live_effects/lpe-rough-hatches.cpp src/live_effects/lpe-ruler.cpp +src/live_effects/lpe-skeleton.cpp src/live_effects/lpe-sketch.cpp +src/live_effects/lpe-tangent_to_curve.cpp +src/live_effects/lpe-test-doEffect-stack.cpp +src/live_effects/lpe-text_label.cpp src/live_effects/lpe-vonkoch.cpp src/live_effects/parameter/bool.cpp src/live_effects/parameter/enum.h @@ -180,17 +180,18 @@ src/live_effects/parameter/random.cpp src/live_effects/parameter/text.cpp src/live_effects/parameter/unit.cpp src/live_effects/parameter/vector.cpp +src/lpe-tool-context.cpp src/main-cmdlineact.cpp src/main.cpp src/menus-skeleton.h src/mesh-context.cpp src/object-edit.cpp src/path-chemistry.cpp -src/pen-context.cpp src/pencil-context.cpp +src/pen-context.cpp src/persp3d.cpp -src/preferences-skeleton.h src/preferences.cpp +src/preferences-skeleton.h src/rdf.cpp src/rect-context.cpp src/resource-manager.cpp @@ -200,31 +201,32 @@ src/selection-describer.cpp src/seltrans.cpp src/seltrans-handles.cpp src/shortcuts.cpp -src/shape-editor.cpp src/sp-anchor.cpp src/sp-ellipse.cpp src/sp-flowregion.cpp +src/sp-flowtext.cpp src/sp-guide.cpp src/sp-image.cpp -src/sp-item-group.cpp +src/spiral-context.cpp src/sp-item.cpp +src/sp-item-group.cpp src/sp-line.cpp +src/splivarot.cpp src/sp-lpe-item.cpp src/sp-namedview.cpp src/sp-offset.cpp src/sp-path.cpp src/sp-polygon.cpp src/sp-polyline.cpp +src/spray-context.cpp src/sp-rect.cpp src/sp-spiral.cpp src/sp-star.cpp +src/sp-switch.cpp src/sp-text.cpp src/sp-tref.cpp src/sp-tspan.cpp src/sp-use.cpp -src/spiral-context.cpp -src/splivarot.cpp -src/spray-context.cpp src/star-context.cpp src/text-chemistry.cpp src/text-context.cpp @@ -237,10 +239,12 @@ src/ui/clipboard.cpp src/ui/dialog/aboutbox.cpp src/ui/dialog/align-and-distribute.cpp src/ui/dialog/calligraphic-profile-rename.cpp +src/ui/dialog/clonetiler.cpp src/ui/dialog/color-item.cpp src/ui/dialog/debug.cpp src/ui/dialog/document-metadata.cpp src/ui/dialog/document-properties.cpp +src/ui/dialog/export.cpp src/ui/dialog/extension-editor.cpp src/ui/dialog/filedialogimpl-gtkmm.cpp src/ui/dialog/filedialogimpl-win32.cpp @@ -255,28 +259,31 @@ src/ui/dialog/inkscape-preferences.cpp src/ui/dialog/input.cpp src/ui/dialog/layer-properties.cpp src/ui/dialog/layers.cpp -src/ui/dialog/livepatheffect-editor.cpp src/ui/dialog/livepatheffect-add.cpp +src/ui/dialog/livepatheffect-editor.cpp src/ui/dialog/memory.cpp src/ui/dialog/messages.cpp src/ui/dialog/new-from-template.cpp -src/ui/dialog/template-load-tab.cpp -src/ui/dialog/template-widget.cpp src/ui/dialog/object-attributes.cpp src/ui/dialog/object-properties.cpp src/ui/dialog/ocaldialogs.cpp -src/ui/dialog/print.cpp src/ui/dialog/print-colors-preview-dialog.cpp +src/ui/dialog/print.cpp +src/ui/dialog/spellcheck.cpp src/ui/dialog/svg-fonts-dialog.cpp -src/ui/dialog/symbols.cpp src/ui/dialog/swatches.cpp +src/ui/dialog/symbols.cpp +src/ui/dialog/template-load-tab.cpp +src/ui/dialog/template-widget.cpp +src/ui/dialog/text-edit.cpp src/ui/dialog/tile.cpp src/ui/dialog/tracedialog.cpp src/ui/dialog/transformation.cpp +src/ui/dialog/xml-tree.cpp src/ui/tool/curve-drag-point.cpp src/ui/tool/multi-path-manipulator.cpp -src/ui/tool/node-tool.cpp src/ui/tool/node.cpp +src/ui/tool/node-tool.cpp src/ui/tool/path-manipulator.cpp src/ui/tool/transform-handle-set.cpp src/ui/widget/combo-enums.h @@ -294,6 +301,7 @@ src/ui/widget/selected-style.cpp src/ui/widget/spin-scale.cpp src/ui/widget/spin-slider.cpp src/ui/widget/style-swatch.cpp +src/util/ege-tags.cpp src/util/enums.h src/vanishing-point.cpp src/verbs.cpp @@ -321,24 +329,23 @@ src/widgets/pencil-toolbar.cpp src/widgets/rect-toolbar.cpp src/widgets/ruler.cpp src/widgets/select-toolbar.cpp -src/widgets/spiral-toolbar.cpp -src/widgets/spray-toolbar.cpp src/widgets/sp-attribute-widget.cpp src/widgets/sp-color-icc-selector.cpp src/widgets/sp-color-notebook.cpp src/widgets/sp-color-scales.cpp src/widgets/sp-color-selector.cpp src/widgets/sp-color-wheel-selector.cpp +src/widgets/spiral-toolbar.cpp +src/widgets/spray-toolbar.cpp src/widgets/sp-xmlview-attr-list.cpp src/widgets/sp-xmlview-content.cpp src/widgets/star-toolbar.cpp -src/widgets/stroke-style.cpp src/widgets/stroke-marker-selector.cpp +src/widgets/stroke-style.cpp src/widgets/swatch-selector.cpp src/widgets/text-toolbar.cpp src/widgets/toolbox.cpp src/widgets/tweak-toolbar.cpp -src/widgets/zoom-toolbar.cpp share/extensions/convert2dashes.py share/extensions/dimension.py share/extensions/draw_from_triangle.py @@ -355,7 +362,6 @@ share/extensions/gimp_xcf.py share/extensions/guides_creator.py share/extensions/guillotine.py share/extensions/hpgl_input.py -share/extensions/dxf_outlines.py share/extensions/inkex.py share/extensions/interp_att_g.py share/extensions/jessyInk_autoTexts.py @@ -376,7 +382,6 @@ share/extensions/pathscatter.py share/extensions/perspective.py share/extensions/polyhedron_3d.py share/extensions/print_win32_vector.py -share/extensions/render_alphabetsoup.py share/extensions/render_barcode_datamatrix.py share/extensions/render_barcode_qrcode.py share/extensions/replace_font.py @@ -388,7 +393,6 @@ share/extensions/uniconv_output.py share/extensions/voronoi2svg.py share/extensions/web-set-att.py share/extensions/webslicer_create_group.py -share/extensions/webslicer_create_rect.py share/extensions/webslicer_export.py share/extensions/web-transmit-att.py share/extensions/wireframe_sphere.py @@ -421,6 +425,7 @@ share/extensions/wireframe_sphere.py [type: gettext/xml] share/extensions/color_replace.inx [type: gettext/xml] share/extensions/color_rgbbarrel.inx [type: gettext/xml] share/extensions/convert2dashes.inx +[type: gettext/xml] share/extensions/dhw_input.inx [type: gettext/xml] share/extensions/dia.inx [type: gettext/xml] share/extensions/dimension.inx [type: gettext/xml] share/extensions/dots.inx @@ -460,6 +465,8 @@ share/extensions/wireframe_sphere.py [type: gettext/xml] share/extensions/guides_creator.inx [type: gettext/xml] share/extensions/guillotine.inx [type: gettext/xml] share/extensions/handles.inx +[type: gettext/xml] share/extensions/hershey.inx +[type: gettext/xml] share/extensions/hpgl_input.inx [type: gettext/xml] share/extensions/hpgl_output.inx [type: gettext/xml] share/extensions/ink2canvas.inx [type: gettext/xml] share/extensions/inkscape_follow_link.inx @@ -505,16 +512,16 @@ share/extensions/wireframe_sphere.py [type: gettext/xml] share/extensions/plt_output.inx [type: gettext/xml] share/extensions/polyhedron_3d.inx [type: gettext/xml] share/extensions/previous_glyph_layer.inx -[type: gettext/xml] share/extensions/print_win32_vector.inx [type: gettext/xml] share/extensions/printing_marks.inx +[type: gettext/xml] share/extensions/print_win32_vector.inx [type: gettext/xml] share/extensions/ps_input.inx [type: gettext/xml] share/extensions/radiusrand.inx [type: gettext/xml] share/extensions/render_alphabetsoup.inx -[type: gettext/xml] share/extensions/render_barcode.inx [type: gettext/xml] share/extensions/render_barcode_datamatrix.inx +[type: gettext/xml] share/extensions/render_barcode.inx [type: gettext/xml] share/extensions/render_barcode_qrcode.inx -[type: gettext/xml] share/extensions/render_gears.inx [type: gettext/xml] share/extensions/render_gear_rack.inx +[type: gettext/xml] share/extensions/render_gears.inx [type: gettext/xml] share/extensions/replace_font.inx [type: gettext/xml] share/extensions/restack.inx [type: gettext/xml] share/extensions/rtree.inx @@ -546,10 +553,10 @@ share/extensions/wireframe_sphere.py [type: gettext/xml] share/extensions/triangle.inx [type: gettext/xml] share/extensions/txt2svg.inx [type: gettext/xml] share/extensions/voronoi2svg.inx +[type: gettext/xml] share/extensions/web-set-att.inx [type: gettext/xml] share/extensions/webslicer_create_group.inx [type: gettext/xml] share/extensions/webslicer_create_rect.inx [type: gettext/xml] share/extensions/webslicer_export.inx -[type: gettext/xml] share/extensions/web-set-att.inx [type: gettext/xml] share/extensions/web-transmit-att.inx [type: gettext/xml] share/extensions/whirl.inx [type: gettext/xml] share/extensions/wireframe_sphere.inx diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 4f7592119..edc02658e 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -555,6 +555,7 @@ add_subdirectory(libavoid) add_subdirectory(libcola) add_subdirectory(libcroco) add_subdirectory(libgdl) +add_subdirectory(libuemf) add_subdirectory(libvpsc) add_subdirectory(livarot) add_subdirectory(libnrtype) @@ -594,6 +595,7 @@ target_link_libraries(inkscape cola_LIB vpsc_LIB livarot_LIB + uemf_LIB 2geom_LIB ${INKSCAPE_LIBS} diff --git a/src/Makefile.am b/src/Makefile.am index 3350f2438..77ba1f567 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -28,6 +28,7 @@ noinst_LIBRARIES = \ libcroco/libcroco.a \ libavoid/libavoid.a \ $(internal_GDL) \ + libuemf/libuemf.a \ libcola/libcola.a \ libvpsc/libvpsc.a \ livarot/libvarot.a \ @@ -124,7 +125,7 @@ include live_effects/Makefile_insert include live_effects/parameter/Makefile_insert include libvpsc/Makefile_insert include libcola/Makefile_insert -include libunicode-convert/Makefile_insert +include libuemf/Makefile_insert include svg/Makefile_insert include widgets/Makefile_insert include debug/Makefile_insert @@ -141,9 +142,7 @@ include 2geom/Makefile_insert # Extra files not mentioned as sources to include in the source tarball EXTRA_DIST += \ - $(top_srcdir)/Doxyfile \ - sp-skeleton.cpp sp-skeleton.h \ - util/makefile.in \ + 2geom/makefile.in \ debug/makefile.in \ dialogs/makefile.in \ display/makefile.in \ @@ -154,32 +153,36 @@ EXTRA_DIST += \ filters/makefile.in \ helper/makefile.in \ io/makefile.in \ - io/crystalegg.xml \ - io/doc2html.xsl \ - libgdl/makefile.in \ + libavoid/makefile.in \ libcroco/makefile.in \ + libgdl/makefile.in \ libnrtype/makefile.in \ - libavoid/makefile.in \ + libuemf/makefile.in \ livarot/makefile.in \ live_effects/makefile.in \ live_effects/parameter/makefile.in \ svg/makefile.in \ trace/makefile.in \ - ui/makefile.in \ ui/cache/makefile.in \ ui/dialog/makefile.in \ + ui/makefile.in \ ui/view/makefile.in \ ui/widget/makefile.in \ util/makefile.in \ + util/makefile.in \ widgets/makefile.in \ xml/makefile.in \ - 2geom/makefile.in \ + \ + $(top_srcdir)/Doxyfile \ extension/internal/emf-inout.cpp \ extension/internal/emf-inout.h \ extension/internal/emf-print.cpp \ extension/internal/emf-print.h \ helper/sp-marshal.list \ + io/crystalegg.xml \ + io/doc2html.xsl \ show-preview.bmp \ + sp-skeleton.cpp sp-skeleton.h \ winconsole.cpp \ $(CXXTEST_TEMPLATE) diff --git a/src/extension/internal/Makefile_insert b/src/extension/internal/Makefile_insert index 341973870..98093a297 100644 --- a/src/extension/internal/Makefile_insert +++ b/src/extension/internal/Makefile_insert @@ -158,16 +158,6 @@ ink_common_sources += \ extension/internal/filter/filter.h \ extension/internal/text_reassemble.c \ extension/internal/text_reassemble.h \ - extension/internal/uemf.c \ - extension/internal/uemf.h \ - extension/internal/uemf_utf.c \ - extension/internal/uemf_utf.h \ - extension/internal/uemf_endian.c \ - extension/internal/uemf_endian.h \ - extension/internal/uwmf.c \ - extension/internal/uwmf.h \ - extension/internal/uwmf_endian.c \ - extension/internal/uwmf_endian.h \ extension/internal/emf-print.h \ extension/internal/emf-print.cpp \ extension/internal/emf-inout.h \ diff --git a/src/extension/internal/emf-inout.cpp b/src/extension/internal/emf-inout.cpp index 9dba3b77c..eeecc8e59 100644 --- a/src/extension/internal/emf-inout.cpp +++ b/src/extension/internal/emf-inout.cpp @@ -30,7 +30,8 @@ #include #include #include -#define EMF_DRIVER // work around for SPStyle issue +#include + #include "sp-root.h" #include "sp-path.h" #include "style.h" @@ -44,7 +45,6 @@ #include "display/drawing-item.h" #include "clear-n_.h" #include "document.h" -#include "libunicode-convert/unicode-convert.h" #include "util/units.h" #include "emf-print.h" diff --git a/src/extension/internal/emf-inout.h b/src/extension/internal/emf-inout.h index b723f067f..787a2fdb3 100644 --- a/src/extension/internal/emf-inout.h +++ b/src/extension/internal/emf-inout.h @@ -13,9 +13,9 @@ #define PNG_SKIP_SETJMP_CHECK // else any further png.h include blows up in the compiler #include +#include #include "extension/implementation/implementation.h" #include "style.h" -#include "uemf.h" #include "text_reassemble.h" namespace Inkscape { diff --git a/src/extension/internal/emf-print.cpp b/src/extension/internal/emf-print.cpp index 33834bea8..1e9b0cd88 100644 --- a/src/extension/internal/emf-print.cpp +++ b/src/extension/internal/emf-print.cpp @@ -62,11 +62,8 @@ #include "emf-print.h" - #include -extern "C" { -#include "libunicode-convert/unicode-convert.h" -} +#include namespace Inkscape { @@ -2064,7 +2061,7 @@ unsigned int PrintEmf::text(Inkscape::Extension::Print * /*mod*/, char const *te U_DEFAULT_QUALITY, U_DEFAULT_PITCH | U_FF_DONTCARE, wfacename); - free(wfacename); + free(wfacename); rec = extcreatefontindirectw_set(&hfont, eht, (char *) &lf, NULL); if(!rec || emf_append((PU_ENHMETARECORD)rec, et, U_REC_FREE)){ diff --git a/src/extension/internal/emf-print.h b/src/extension/internal/emf-print.h index d42ba8a58..482503f71 100644 --- a/src/extension/internal/emf-print.h +++ b/src/extension/internal/emf-print.h @@ -16,7 +16,7 @@ # include "config.h" #endif -#include "uemf.h" +#include #include "extension/implementation/implementation.h" //#include "extension/extension.h" diff --git a/src/extension/internal/text_reassemble.c b/src/extension/internal/text_reassemble.c index d16c060de..9ed6c9c3a 100644 --- a/src/extension/internal/text_reassemble.c +++ b/src/extension/internal/text_reassemble.c @@ -79,7 +79,7 @@ extern "C" { #endif #include "text_reassemble.h" -#include "uemf_utf.h" /* For a couple of text functions. Exact copy from libUEMF. */ +#include /* For a couple of text functions. Exact copy from libUEMF. */ #include /* Code generated by make_ucd_mn_table.c using: diff --git a/src/extension/internal/uemf.c b/src/extension/internal/uemf.c deleted file mode 100644 index b06990dbd..000000000 --- a/src/extension/internal/uemf.c +++ /dev/null @@ -1,5523 +0,0 @@ -/** - @file uemf.c Functions for manipulating EMF files and structures. - - [U_EMR*]_set all take data and return a pointer to memory holding the constructed record. - The size of that record is also returned in recsize. - It is also in the second int32 in the record, but may have been byte swapped and so not usable. - If something goes wrong a NULL pointer is returned and recsize is set to 0. - - Compile with "U_VALGRIND" defined defined to enable code which lets valgrind check each record for - uninitialized data. - - Compile with "SOL8" defined for Solaris 8 or 9 (Sparc). -*/ - -/* -File: uemf.c -Version: 0.0.21 -Date: 20-FEB-2013 -Author: David Mathog, Biology Division, Caltech -email: mathog@caltech.edu -Copyright: 2013 David Mathog and California Institute of Technology (Caltech) -*/ - -#ifdef __cplusplus -extern "C" { -#endif - -#include -#include -#include -#include -#include -#include -#include -#include // for INT_MAX, INT_MIN -#include // for U_ROUND() -#include /* for offsetof() macro */ -#if 0 -#include //Not actually used, looking for collisions -#include //Not actually used, looking for collisions -#include //Not actually used, looking for collisions -#endif -#include "uemf.h" -/* one prototype from uemf_endian. Put it here because end user should never need to see it, sno -not in uemf.h or uemf_endian.h */ -void U_swap2(void *ul, unsigned int count); - -/** - \brief Look up the name of the EMR record by type. Returns U_EMR_INVALID if out of range. - - \return name of the EMR record, "U_EMR_INVALID" if out of range. - \param idx EMR record type. - -*/ -char *U_emr_names(unsigned int idx){ - if(idx U_EMR_MAX){ idx = 0; } - static char *U_WMR_NAMES[U_EMR_MAX+1]={ - "U_EMR_INVALID", - "U_EMR_HEADER", - "U_EMR_POLYBEZIER", - "U_EMR_POLYGON", - "U_EMR_POLYLINE", - "U_EMR_POLYBEZIERTO", - "U_EMR_POLYLINETO", - "U_EMR_POLYPOLYLINE", - "U_EMR_POLYPOLYGON", - "U_EMR_SETWINDOWEXTEX", - "U_EMR_SETWINDOWORGEX", - "U_EMR_SETVIEWPORTEXTEX", - "U_EMR_SETVIEWPORTORGEX", - "U_EMR_SETBRUSHORGEX", - "U_EMR_EOF", - "U_EMR_SETPIXELV", - "U_EMR_SETMAPPERFLAGS", - "U_EMR_SETMAPMODE", - "U_EMR_SETBKMODE", - "U_EMR_SETPOLYFILLMODE", - "U_EMR_SETROP2", - "U_EMR_SETSTRETCHBLTMODE", - "U_EMR_SETTEXTALIGN", - "U_EMR_SETCOLORADJUSTMENT", - "U_EMR_SETTEXTCOLOR", - "U_EMR_SETBKCOLOR", - "U_EMR_OFFSETCLIPRGN", - "U_EMR_MOVETOEX", - "U_EMR_SETMETARGN", - "U_EMR_EXCLUDECLIPRECT", - "U_EMR_INTERSECTCLIPRECT", - "U_EMR_SCALEVIEWPORTEXTEX", - "U_EMR_SCALEWINDOWEXTEX", - "U_EMR_SAVEDC", - "U_EMR_RESTOREDC", - "U_EMR_SETWORLDTRANSFORM", - "U_EMR_MODIFYWORLDTRANSFORM", - "U_EMR_SELECTOBJECT", - "U_EMR_CREATEPEN", - "U_EMR_CREATEBRUSHINDIRECT", - "U_EMR_DELETEOBJECT", - "U_EMR_ANGLEARC", - "U_EMR_ELLIPSE", - "U_EMR_RECTANGLE", - "U_EMR_ROUNDRECT", - "U_EMR_ARC", - "U_EMR_CHORD", - "U_EMR_PIE", - "U_EMR_SELECTPALETTE", - "U_EMR_CREATEPALETTE", - "U_EMR_SETPALETTEENTRIES", - "U_EMR_RESIZEPALETTE", - "U_EMR_REALIZEPALETTE", - "U_EMR_EXTFLOODFILL", - "U_EMR_LINETO", - "U_EMR_ARCTO", - "U_EMR_POLYDRAW", - "U_EMR_SETARCDIRECTION", - "U_EMR_SETMITERLIMIT", - "U_EMR_BEGINPATH", - "U_EMR_ENDPATH", - "U_EMR_CLOSEFIGURE", - "U_EMR_FILLPATH", - "U_EMR_STROKEANDFILLPATH", - "U_EMR_STROKEPATH", - "U_EMR_FLATTENPATH", - "U_EMR_WIDENPATH", - "U_EMR_SELECTCLIPPATH", - "U_EMR_ABORTPATH", - "U_EMR_UNDEF69", - "U_EMR_COMMENT", - "U_EMR_FILLRGN", - "U_EMR_FRAMERGN", - "U_EMR_INVERTRGN", - "U_EMR_PAINTRGN", - "U_EMR_EXTSELECTCLIPRGN", - "U_EMR_BITBLT", - "U_EMR_STRETCHBLT", - "U_EMR_MASKBLT", - "U_EMR_PLGBLT", - "U_EMR_SETDIBITSTODEVICE", - "U_EMR_STRETCHDIBITS", - "U_EMR_EXTCREATEFONTINDIRECTW", - "U_EMR_EXTTEXTOUTA", - "U_EMR_EXTTEXTOUTW", - "U_EMR_POLYBEZIER16", - "U_EMR_POLYGON16", - "U_EMR_POLYLINE16", - "U_EMR_POLYBEZIERTO16", - "U_EMR_POLYLINETO16", - "U_EMR_POLYPOLYLINE16", - "U_EMR_POLYPOLYGON16", - "U_EMR_POLYDRAW16", - "U_EMR_CREATEMONOBRUSH", - "U_EMR_CREATEDIBPATTERNBRUSHPT", - "U_EMR_EXTCREATEPEN", - "U_EMR_POLYTEXTOUTA", - "U_EMR_POLYTEXTOUTW", - "U_EMR_SETICMMODE", - "U_EMR_CREATECOLORSPACE", - "U_EMR_SETCOLORSPACE", - "U_EMR_DELETECOLORSPACE", - "U_EMR_GLSRECORD", - "U_EMR_GLSBOUNDEDRECORD", - "U_EMR_PIXELFORMAT", - "U_EMR_DRAWESCAPE", - "U_EMR_EXTESCAPE", - "U_EMR_UNDEF107", - "U_EMR_SMALLTEXTOUT", - "U_EMR_FORCEUFIMAPPING", - "U_EMR_NAMEDESCAPE", - "U_EMR_COLORCORRECTPALETTE", - "U_EMR_SETICMPROFILEA", - "U_EMR_SETICMPROFILEW", - "U_EMR_ALPHABLEND", - "U_EMR_SETLAYOUT", - "U_EMR_TRANSPARENTBLT", - "U_EMR_UNDEF117", - "U_EMR_GRADIENTFILL", - "U_EMR_SETLINKEDUFIS", - "U_EMR_SETTEXTJUSTIFICATION", - "U_EMR_COLORMATCHTOTARGETW", - "U_EMR_CREATECOLORSPACEW" - }; - return(U_WMR_NAMES[idx]); -} - - - -/* ********************************************************************************************** -These definitions are for code pieces that are used many times in the following implementation. These -definitions are not needed in end user code, so they are here rather than in uemf.h. -*********************************************************************************************** */ - -//! @cond - -// this one may also be used A=Msk,B=MskBmi and F=cbMsk -#define SET_CB_FROM_PXBMI(A,B,C,D,E,F) /* A=Px, B=Bmi, C=cbImage, D=cbImage4, E=cbBmi, F=cbPx */ \ - if(A){\ - if(!B)return(NULL); /* size is derived from U_BIMAPINFO, but NOT from its size field, go figure*/ \ - C = F;\ - D = UP4(C); /* pixel array might not be a multiples of 4 bytes*/ \ - E = sizeof(U_BITMAPINFOHEADER) + 4 * get_real_color_count((const char *) &(B->bmiHeader)); /* bmiheader + colortable*/ \ - }\ - else { C = 0; D = 0; E=0; } - -// variable "off" must be declared in the function - -#define APPEND_PXBMISRC(A,B,C,D,E,F,G) /* A=record, B=U_EMR,C=cbBmi, D=Bmi, E=Px, F=cbImage, G=cbImage4 */ \ - if(C){\ - memcpy(A + off, D, C);\ - ((B *) A)->offBmiSrc = off;\ - ((B *) A)->cbBmiSrc = C;\ - off += C;\ - memcpy(A + off, E, F);\ - ((B *) A)->offBitsSrc = off;\ - ((B *) A)->cbBitsSrc = F;\ - if(G - F){ \ - off += F;\ - memset(A + off, 0, G - F); \ - }\ - }\ - else {\ - ((B *) A)->offBmiSrc = 0;\ - ((B *) A)->cbBmiSrc = 0;\ - ((B *) A)->offBitsSrc = 0;\ - ((B *) A)->cbBitsSrc = 0;\ - } - -// variable "off" must be declared in the function - -#define APPEND_MSKBMISRC(A,B,C,D,E,F,G) /* A=record, B=U_EMR*,C=cbMskBmi, D=MskBmi, E=Msk, F=cbMskImage, G=cbMskImage4 */ \ - if(C){\ - memcpy(A + off, D, C);\ - ((B *) A)->offBmiMask = off;\ - ((B *) A)->cbBmiMask = C;\ - off += C;\ - memcpy(A + off, Msk, F);\ - ((B *) A)->offBitsMask = off;\ - ((B *) A)->cbBitsMask = F;\ - if(G - F){ memset(A + off, 0, G - F); }\ - }\ - else {\ - ((B *) A)->offBmiMask = 0;\ - ((B *) A)->cbBmiMask = 0;\ - ((B *) A)->offBitsMask = 0;\ - ((B *) A)->cbBitsMask = 0;\ - } - -//! @endcond - -/* ********************************************************************************************** -These functions are used for development and debugging and should be be includied in production code. -*********************************************************************************************** */ - -/** - \brief Debugging utility, used with valgrind to find uninitialized values. Not for use in production code. - \param buf memory area to examine ! - \param size length in bytes of buf! -*/ -int memprobe( - const void *buf, - size_t size - ){ - int sum=0; - char *ptr=(char *)buf; - for(;size;size--,ptr++){ sum += *ptr; } // read all bytes, trigger valgrind warning if any uninitialized - return(sum); -} - -/** - \brief Dump an EMFHANDLES structure. Not for use in production code. - \param string Text to output before dumping eht structure - \param handle Handle - \param eht EMFHANDLES structure to dump -*/ -void dumpeht( - char *string, - unsigned int *handle, - EMFHANDLES *eht - ){ - uint32_t i; - printf("%s\n",string); - printf("sptr: %d peak: %d top: %d\n",eht->sptr,eht->peak,eht->top); - if(handle){ - printf("handle: %d \n",*handle); - } - for(i=0;i<=5;i++){ - printf("table[%d]: %d\n",i,eht->table[i]); - } - for(i=1;i<=5;i++){ - printf("stack[%d]: %d\n",i,eht->stack[i]); - } -} - -/* ********************************************************************************************** -These functions are used for Image conversions and other -utility operations. Character type conversions are in uemf_utf.c -*********************************************************************************************** */ - -/** - \brief Make up an approximate dx array to pass to emrtext_set(), based on character height and weight. - - Take abs. value of character height, get width by multiplying by 0.6, and correct weight - approximately, with formula (measured on screen for one text line of Arial). - Caller is responsible for free() on the returned pointer. - - \return pointer to dx array - \param height character height (absolute value will be used) - \param weight LF_Weight Enumeration (character weight) - \param members Number of entries to put into dx - -*/ -uint32_t *dx_set( - int32_t height, - uint32_t weight, - uint32_t members - ){ - uint32_t i, width, *dx; - dx = (uint32_t *) malloc(members * sizeof(uint32_t)); - if(dx){ - if(U_FW_DONTCARE == weight)weight=U_FW_NORMAL; - width = (uint32_t) U_ROUND(((float) (height > 0 ? height : -height)) * 0.6 * (0.00024*(float) weight + 0.904)); - for ( i = 0; i < members; i++ ){ dx[i] = width; } - } - return(dx); -} - -/** - \brief Look up the properties (a bit map) of a type of EMR record. - Bits that may be set are defined in "Draw Properties" in uemf.h, they are U_DRAW_NOTEMPTY, etc.. - - \return bitmap of EMR record properties, or U_EMR_INVALID on error or release of all memory - \param type EMR record type. If U_EMR_INVALID release memory. (There is no U_EMR_INVALID EMR record type) - -*/ -uint32_t emr_properties(uint32_t type){ - static uint32_t *table=NULL; - uint32_t result = U_EMR_INVALID; // initialized to indicate an error (on a lookup) or nothing (on a memory release) - if(type == U_EMR_INVALID){ - if(table)free(table); - table=NULL; - } - else if(type>=1 && type= 180, else 0 - \param f2 Rotation direction, 1 if counter clockwise, else 0 - \param center Center coordinates - \param start Start coordinates (point on the ellipse defined by rect) - \param end End coordinates (point on the ellipse defined by rect) - \param size W,H of the x,y axes of the bounding rectangle. -*/ -int emr_arc_points_common( - PU_RECTL rclBox, - PU_POINTL ArcStart, - PU_POINTL ArcEnd, - int *f1, - int f2, - PU_PAIRF center, - PU_PAIRF start, - PU_PAIRF end, - PU_PAIRF size - ){ - U_PAIRF estart; // EMF start position, defines a radial - U_PAIRF eend; // EMF end position, defines a radial - U_PAIRF vec_estart; // define a unit vector from the center to estart - U_PAIRF vec_eend; // define a unit vector from the center to eend - U_PAIRF radii; // x,y radii of ellipse - U_PAIRF ratio; // intermediate value - float scale, cross; - center->x = ((float)(rclBox->left + rclBox->right ))/2.0; - center->y = ((float)(rclBox->top + rclBox->bottom))/2.0; - size->x = (float)(rclBox->right - rclBox->left ); - size->y = (float)(rclBox->bottom - rclBox->top ); - estart.x = (float)(ArcStart->x); - estart.y = (float)(ArcStart->y); - eend.x = (float)(ArcEnd->x); - eend.y = (float)(ArcEnd->y); - radii.x = size->x/2.0; - radii.y = size->y/2.0; - - vec_estart.x = (estart.x - center->x); // initial vector, not unit length - vec_estart.y = (estart.y - center->y); - scale = sqrt(vec_estart.x*vec_estart.x + vec_estart.y*vec_estart.y); - if(!scale)return(1); // bogus record, has start at center - vec_estart.x /= scale; // now a unit vector - vec_estart.y /= scale; - - vec_eend.x = (eend.x - center->x); // initial vector, not unit length - vec_eend.y = (eend.y - center->y); - scale = sqrt(vec_eend.x*vec_eend.x + vec_eend.y*vec_eend.y); - if(!scale)return(2); // bogus record, has end at center - vec_eend.x /= scale; // now a unit vector - vec_eend.y /= scale; - - - // Find the intersection of the vectors with the ellipse. With no loss of generality - // we can translate the ellipse to the origin, then we just need to find tu (t a factor, u the unit vector) - // that also satisfies (x/Rx)^2 + (y/Ry)^2 = 1. x is t*(ux), y is t*(uy), where ux,uy are the x,y components - // of the unit vector. Substituting gives: - // (t*(ux)/Rx)^2 + (t*(uy)/Ry)^2 = 1 - // t^2 = 1/( (ux/Rx)^2 + (uy/Ry)^2 ) - // t = sqrt(1/( (ux/Rx)^2 + (uy/Ry)^2 )) - - ratio.x = vec_estart.x/radii.x; - ratio.y = vec_estart.y/radii.y; - ratio.x *= ratio.x; // we only use the square - ratio.y *= ratio.y; - scale = 1.0/sqrt(ratio.x + ratio.y); - start->x = center->x + scale * vec_estart.x; - start->y = center->y + scale * vec_estart.y; - - ratio.x = vec_eend.x/radii.x; - ratio.y = vec_eend.y/radii.y; - ratio.x *= ratio.x; // we only use the square - ratio.y *= ratio.y; - scale = 1.0/sqrt(ratio.x + ratio.y); - end->x = center->x + scale * vec_eend.x; - end->y = center->y + scale * vec_eend.y; - - //lastly figure out if the swept angle is >180 degrees or not, based on the direction of rotation - //and the two unit vectors. - - cross = vec_estart.x * vec_eend.y - vec_estart.y * vec_eend.x; - if(!f2){ // counter clockwise rotation - if(cross >=0){ *f1 = 1; } - else { *f1 = 0; } - } - else { - if(cross >=0){ *f1 = 0; } - else { *f1 = 1; } - } - - - return(0); -} - -/** - \brief Derive from an EMF arc, chord, or pie the center, start, and end points, and the bounding rectangle. - - \return 0 on success, other values on errors. - \param record U_EMRPIE, U_EMRCHORD, or _EMRARC record - \param f1 1 if rotation angle >= 180, else 0 - \param f2 Rotation direction, 1 if counter clockwise, else 0 - \param center Center coordinates - \param start Start coordinates (point on the ellipse defined by rect) - \param end End coordinates (point on the ellipse defined by rect) - \param size W,H of the x,y axes of the bounding rectangle. -*/ -int emr_arc_points( - PU_ENHMETARECORD record, - int *f1, - int f2, - PU_PAIRF center, - PU_PAIRF start, - PU_PAIRF end, - PU_PAIRF size - ){ - PU_EMRARC pEmr = (PU_EMRARC) (record); - return emr_arc_points_common(&(pEmr->rclBox), &(pEmr->ptlStart), &(pEmr->ptlEnd), f1, f2, center, start, end, size ); -} - -/** - \brief Convert a U_RGBA 32 bit pixmap to one of many different types of DIB pixmaps. - - Conversions to formats using color tables assume that the color table can hold every color - in the input image. If that assumption is false then the conversion will fail. Conversion - from 8 bit color to N bit colors (N<8) do so by shifting the appropriate number of bits. - - \return 0 on success, other values on errors. - \param px DIB pixel array - \param cbPx DIB pixel array size in bytes - \param ct DIB color table - \param numCt DIB color table number of entries - \param rgba_px U_RGBA pixel array (32 bits) - \param w Width of pixel array - \param h Height of pixel array - \param stride Row stride of input pixel array in bytes - \param colortype DIB BitCount Enumeration - \param use_ct If true use color table (only for 1-16 bit DIBs) - \param invert If DIB rows are in opposite order from RGBA rows -*/ -int RGBA_to_DIB( - char **px, - uint32_t *cbPx, - PU_RGBQUAD *ct, - int *numCt, - const char *rgba_px, - int w, - int h, - int stride, - uint32_t colortype, - int use_ct, - int invert - ){ - int bs; - int pad; - int i,j,k; - int istart, iend, iinc; - uint8_t r,g,b,a,tmp8; - char *pxptr; - const char *rptr; - int found; - int usedbytes; - U_RGBQUAD color; - PU_RGBQUAD lct; - int32_t index; - - *px=NULL; - *ct=NULL; - *numCt=0; - *cbPx=0; - // sanity checking - if(!w || !h || !stride || !colortype || !rgba_px)return(1); - if(use_ct && colortype >= U_BCBM_COLOR16)return(2); //color tables not used above 16 bit pixels - if(!use_ct && colortype < U_BCBM_COLOR16)return(3); //color tables mandatory for < 16 bit - - bs = colortype/8; - if(bs<1){ - bs=1; - usedbytes = (w*colortype + 7)/8; // width of line in fully and partially occupied bytes - } - else { - usedbytes = w*bs; - } - pad = UP4(usedbytes) - usedbytes; // DIB rows must be aligned on 4 byte boundaries, they are padded at the end to accomplish this.; - *cbPx = h * (usedbytes + pad); // Rows must start on a 4 byte boundary! - *px = (char *) malloc(*cbPx); - if(!px)return(4); - if(use_ct){ - *numCt = 1<< colortype; - if(*numCt >w*h)*numCt=w*h; - lct = (PU_RGBQUAD) malloc(*numCt * sizeof(U_RGBQUAD)); - if(!lct)return(5); - *ct = lct; - } - - if(invert){ - istart = h-1; - iend = -1; - iinc = -1; - } - else { - istart = 0; - iend = h; - iinc = 1; - } - - found = 0; - tmp8 = 0; - pxptr = *px; - for(i=istart; i!=iend; i+=iinc){ - rptr= rgba_px + i*stride; - for(j=0; j *numCt){ // More colors found than are supported by the color table - free(*ct); - free(*px); - *numCt=0; - *cbPx=0; - return(6); - } - index = found - 1; - *lct = color; - } - switch(colortype){ - case U_BCBM_MONOCHROME: // 2 colors. bmiColors array has two entries - tmp8 = tmp8 >> 1; // This seems wrong, as it fills from the top of each byte. But it works. - tmp8 |= index << 7; - if(!((j+1) % 8)){ - *pxptr++ = tmp8; - tmp8 = 0; - } - break; - case U_BCBM_COLOR4: // 2^4 colors. bmiColors array has 16 entries - tmp8 = tmp8 << 4; - tmp8 |= index; - if(!((j+1) % 2)){ - *pxptr++ = tmp8; - tmp8 = 0; - } - break; - case U_BCBM_COLOR8: // 2^8 colors. bmiColors array has 256 entries - tmp8 = index; - *pxptr++ = tmp8; - break; - case U_BCBM_COLOR16: // 2^16 colors. (Several different color methods)) - case U_BCBM_COLOR24: // 2^24 colors. bmiColors is not used. Pixels are U_RGBTRIPLE. - case U_BCBM_COLOR32: // 2^32 colors. bmiColors is not used. Pixels are U_RGBQUAD. - case U_BCBM_EXPLICIT: // Derinved from JPG or PNG compressed image or ? - default: - return(7); // This should not be possible, but might happen with memory corruption - } - } - else { - switch(colortype){ - case U_BCBM_COLOR16: // 2^16 colors. (Several different color methods)) - b /= 8; g /= 8; r /= 8; - // Do it in this way so that the bytes are always stored Little Endian - tmp8 = b; - tmp8 |= g<<5; // least significant 3 bits of green - *pxptr++ = tmp8; - tmp8 = g>>3; // most significant 2 bits of green (there are only 5 bits of data) - tmp8 |= r<<2; - *pxptr++ = tmp8; - break; - case U_BCBM_COLOR24: // 2^24 colors. bmiColors is not used. Pixels are U_RGBTRIPLE. - *pxptr++ = b; - *pxptr++ = g; - *pxptr++ = r; - break; - case U_BCBM_COLOR32: // 2^32 colors. bmiColors is not used. Pixels are U_RGBQUAD. - *pxptr++ = b; - *pxptr++ = g; - *pxptr++ = r; - *pxptr++ = a; - break; - case U_BCBM_MONOCHROME: // 2 colors. bmiColors array has two entries - case U_BCBM_COLOR4: // 2^4 colors. bmiColors array has 16 entries - case U_BCBM_COLOR8: // 2^8 colors. bmiColors array has 256 entries - case U_BCBM_EXPLICIT: // Derinved from JPG or PNG compressed image or ? - default: - return(7); // This should not be possible, but might happen with memory corruption - } - } - } - if( use_ct && colortype == U_BCBM_MONOCHROME && (j % 8) ){ - *pxptr++ = tmp8; // Write last few indices - tmp8 = 0; - } - if( use_ct && colortype == U_BCBM_COLOR4 && (j % 2) ){ - *pxptr++ = tmp8; // Write last few indices - tmp8 = 0; - } - if(pad){ - memset(pxptr,0,pad); // not strictly necessary, but set all bytes so that we can find important unset ones with valgrind - pxptr += pad; - } - } - return(0); -} - -/** - \brief Get the actual number of colors in the color table from the BitMapInfoHeader. - BitmapInfoHeader may list 0 for some types which implies the maximum value. - If the image is big enough, that is set by the bit count, as in 256 for an 8 - bit image. - If the image is smaller it is set by width * height. - Note, this may be called by WMF code, so it is not safe to assume the data is aligned. - - \return Number of entries in the color table. - \param Bmih char * pointer to the U_BITMAPINFOHEADER -*/ -int get_real_color_count( - const char *Bmih - ){ - int Colors, BitCount, Width, Height; - uint32_t utmp4; - uint16_t utmp2; - int32_t tmp4; - char *cBmih = (char *) Bmih; - memcpy(&utmp4, cBmih + offsetof(U_BITMAPINFOHEADER,biClrUsed), 4); Colors = utmp4; - memcpy(&utmp2, cBmih + offsetof(U_BITMAPINFOHEADER,biBitCount), 2); BitCount = utmp2; - memcpy(&tmp4, cBmih + offsetof(U_BITMAPINFOHEADER,biWidth), 4); Width = tmp4; - memcpy(&tmp4, cBmih + offsetof(U_BITMAPINFOHEADER,biHeight), 4); Height = tmp4; - return(get_real_color_icount(Colors, BitCount, Width, Height)); -} - -/** - \brief Get the actual number of colors in the color table from the ClrUsed, BitCount, Width, and Height. - BitmapInfoHeader may list 0 for some types which implies the maximum value. - If the image is big enough, that is set by the bit count, as in 256 for an 8 - bit image. - If the image is smaller it is set by width * height. - - \return Number of entries in the color table. - \param PU_BITMAPINFOHEADER pointer to to the U_BITMAPINFOHEADER -*/ -int get_real_color_icount( - int Colors, - int BitCount, - int Width, - int Height - ){ - int area = Width * Height; - if(area < 0){ area = -area; } /* Height might be negative */ - if(Colors == 0){ - if( BitCount == U_BCBM_MONOCHROME){ Colors = 2; } - else if(BitCount == U_BCBM_COLOR4 ){ Colors = 16; } - else if(BitCount == U_BCBM_COLOR8 ){ Colors = 256; } - if(Colors > area){ Colors = area; } - } - return(Colors); -} - - -/** - \brief Get the DIB parameters from the BMI of the record for use by DBI_to_RGBA() - - \return BI_Compression Enumeration. For anything other than U_BI_RGB values other than px may not be valid. - \param pEmr pointer to EMR record that has a U_BITMAPINFO and bitmap - \param offBitsSrc Offset to the bitmap - \param offBmiSrc Offset to the U_BITMAPINFO - \param px pointer to DIB pixel array in pEmr - \param ct pointer to DIB color table in pEmr - \param numCt DIB color table number of entries, for PNG or JPG returns the number of bytes in the image - \param width Width of pixel array - \param height Height of pixel array (always returned as a positive number) - \param colortype DIB BitCount Enumeration - \param invert If DIB rows are in opposite order from RGBA rows -*/ -int get_DIB_params( - void *pEmr, - uint32_t offBitsSrc, - uint32_t offBmiSrc, - const char **px, - const U_RGBQUAD **ct, - uint32_t *numCt, - uint32_t *width, - uint32_t *height, - uint32_t *colortype, - uint32_t *invert - ){ - uint32_t bic; - PU_BITMAPINFO Bmi = (PU_BITMAPINFO)((char *)pEmr + offBmiSrc); - PU_BITMAPINFOHEADER Bmih = &(Bmi->bmiHeader); - /* if biCompression is not U_BI_RGB some or all of the following might not hold real values */ - bic = Bmih->biCompression; - *width = Bmih->biWidth; - *colortype = Bmih->biBitCount; - if(Bmih->biHeight < 0){ - *height = -Bmih->biHeight; - *invert = 1; - } - else { - *height = Bmih->biHeight; - *invert = 0; - } - if(bic == U_BI_RGB){ - *numCt = get_real_color_count((const char *) Bmih); - if( numCt){ *ct = (PU_RGBQUAD) ((char *)Bmi + sizeof(U_BITMAPINFOHEADER)); } - else { *ct = NULL; } - } - else { - *numCt = Bmih->biSizeImage; - *ct = NULL; - } - *px = (char *)((char *)pEmr + offBitsSrc); - return(bic); -} - -/** - \brief Convert one of many different types of DIB pixmaps to an RGBA 32 bit pixmap. - - \return 0 on success, other values on errors. - \param px DIB pixel array - \param ct DIB color table - \param numCt DIB color table number of entries - \param rgba_px U_RGBA pixel array (32 bits), created by this routine, caller must free. - \param w Width of pixel array in the record - \param h Height of pixel array in the record - \param colortype DIB BitCount Enumeration - \param use_ct Kept for symmetry with RGBA_to_DIB, should be set to numCt - \param invert If DIB rows are in opposite order from RGBA rows -*/ -int DIB_to_RGBA( - const char *px, - const U_RGBQUAD *ct, - int numCt, - char **rgba_px, - int w, - int h, - uint32_t colortype, - int use_ct, - int invert - ){ - uint32_t cbRgba_px; - int stride; - int bs; - int pad; - int i,j; - int istart, iend, iinc; - uint8_t r,g,b,a,tmp8; - const char *pxptr; - char *rptr; - int usedbytes; - U_RGBQUAD color; - int32_t index; - - // sanity checking - if(!w || !h || !colortype || !px)return(1); - if(use_ct && colortype >= U_BCBM_COLOR16)return(2); //color tables not used above 16 bit pixels - if(!use_ct && colortype < U_BCBM_COLOR16)return(3); //color tables mandatory for < 16 bit - if(use_ct && !numCt)return(4); //color table not adequately described - - stride = w * 4; - cbRgba_px = stride * h; - bs = colortype/8; - if(bs<1){ - bs=1; - usedbytes = (w*colortype + 7)/8; // width of line in fully and partially occupied bytes - } - else { - usedbytes = w*bs; - } - pad = UP4(usedbytes) - usedbytes; // DIB rows must be aligned on 4 byte boundaries, they are padded at the end to accomplish this.; - *rgba_px = (char *) malloc(cbRgba_px); - if(!rgba_px)return(4); - - if(invert){ - istart = h-1; - iend = -1; - iinc = -1; - } - else { - istart = 0; - iend = h; - iinc = 1; - } - - pxptr = px; - tmp8 = 0; // silences a compiler warning, tmp8 always sets when j=0, so never used uninitialized - for(i=istart; i!=iend; i+=iinc){ - rptr= *rgba_px + i*stride; - for(j=0; j> 7; - tmp8 = tmp8 << 1; - break; - case U_BCBM_COLOR4: // 2^4 colors. bmiColors array has 16 entries - if(!(j % 2)){ tmp8 = *pxptr++; } - index = 0xF0 & tmp8; - index = index >> 4; - tmp8 = tmp8 << 4; - break; - case U_BCBM_COLOR8: // 2^8 colors. bmiColors array has 256 entries - index = (uint8_t) *pxptr++;; - break; - case U_BCBM_COLOR16: // 2^16 colors. (Several different color methods)) - case U_BCBM_COLOR24: // 2^24 colors. bmiColors is not used. Pixels are U_RGBTRIPLE. - case U_BCBM_COLOR32: // 2^32 colors. bmiColors is not used. Pixels are U_RGBQUAD. - case U_BCBM_EXPLICIT: // Derinved from JPG or PNG compressed image or ? - default: - return(7); // This should not be possible, but might happen with memory corruption - } - color = ct[index]; - b = U_BGRAGetB(color); - g = U_BGRAGetG(color); - r = U_BGRAGetR(color); - a = U_BGRAGetA(color); - } - else { - switch(colortype){ - case U_BCBM_COLOR16: // 2^16 colors. (Several different color methods)) - // Do it in this way because the bytes are always stored Little Endian - tmp8 = *pxptr++; - b = (0x1F & tmp8) <<3; // 5 bits of b into the top 5 of 8 - g = tmp8 >> 5; // least significant 3 bits of green - tmp8 = *pxptr++; - r = (0x7C & tmp8) << 1; // 5 bits of r into the top 5 of 8 - g |= (0x3 & tmp8) << 3; // most significant 2 bits of green (there are only 5 bits of data) - g = g << 3; // restore intensity (have lost 3 bits of accuracy) - a = 0; - break; - case U_BCBM_COLOR24: // 2^24 colors. bmiColors is not used. Pixels are U_RGBTRIPLE. - b = *pxptr++; - g = *pxptr++; - r = *pxptr++; - a = 0; - break; - case U_BCBM_COLOR32: // 2^32 colors. bmiColors is not used. Pixels are U_RGBQUAD. - b = *pxptr++; - g = *pxptr++; - r = *pxptr++; - a = *pxptr++; - break; - case U_BCBM_MONOCHROME: // 2 colors. bmiColors array has two entries - case U_BCBM_COLOR4: // 2^4 colors. bmiColors array has 16 entries - case U_BCBM_COLOR8: // 2^8 colors. bmiColors array has 256 entries - case U_BCBM_EXPLICIT: // Derinved from JPG or PNG compressed image or ? - default: - return(7); // This should not be possible, but might happen with memory corruption - } - } - *rptr++ = r; - *rptr++ = g; - *rptr++ = b; - *rptr++ = a; - } - for(j=0; jw || st >h)return(NULL); // This is hopeless, the start point is outside of the array. - if(sl<0){ - if(sl+ew<=0)return(NULL); // This is hopeless, the start point is outside of the array. - ew += sl; - sl = 0; - } - if(st<0){ - if(st+eh<=0)return(NULL); // This is hopeless, the start point is outside of the array. - eh += st; - st = 0; - } - if(sl+ew > w)ew=w-sl; - if(st+eh > h)eh=h-st; - if(!sl && !st && (ew == w) && (eh == h)){ - sub = rgba_px; - } - else { - sptr = sub = malloc(ew*eh*4); - if(!sub)return(NULL); - for(i=st; inSize; - dup=malloc(irecsize); - if(dup){ memcpy(dup,emr,irecsize); } - return(dup); -} - - -/** - \brief Start constructing an emf in memory. Supply the file name and initial size. - \return 0 for success, >=0 for failure. - \param name EMF filename (will be opened) - \param initsize Initialize EMF in memory to hold this many bytes - \param chunksize When needed increase EMF in memory by this number of bytes - \param et EMF in memory - - -*/ -int emf_start( - const char *name, - const uint32_t initsize, - const uint32_t chunksize, - EMFTRACK **et - ){ - FILE *fp; - EMFTRACK *etl=NULL; - - if(initsize < 1)return(1); - if(chunksize < 1)return(2); - if(!name)return(3); - etl = (EMFTRACK *) malloc(sizeof(EMFTRACK)); - if(!etl)return(4); - etl->buf = malloc(initsize); // no need to zero the memory - if(!etl->buf){ - free(etl); - return(5); - } - fp=emf_fopen(name,U_WRITE); - if(!fp){ - free(etl->buf); - free(etl); - return(6); - } - etl->fp = fp; - etl->allocated = initsize; - etl->used = 0; - etl->records = 0; - etl->PalEntries = 0; - etl->chunk = chunksize; - *et=etl; - return(0); -} - -/** - \brief Finalize the emf in memory and write it to the file. - \return 0 on success, >=1 on failure - \param et EMF in memory - \param eht EMF handle table (peak handle number needed) -*/ -int emf_finish( - EMFTRACK *et, - EMFHANDLES *eht - ){ - U_EMRHEADER *record; - - if(!et->fp)return(1); // This could happen if something stomps on memory, otherwise should be caught in emf_start - - // Set the header fields which were unknown up until this point - - record = (U_EMRHEADER *)et->buf; - record->nBytes = et->used; - record->nRecords = et->records; - record->nHandles = eht->peak + 1; - record->nPalEntries = et->PalEntries; - -#if U_BYTE_SWAP - //This is a Big Endian machine, EMF data must be Little Endian - U_emf_endian(et->buf,et->used,1); -#endif - - if(1 != fwrite(et->buf,et->used,1,et->fp))return(2); - (void) fclose(et->fp); - et->fp=NULL; - return(0); -} - -/** - \brief Release memory for an emf structure in memory. Call this after emf_finish(). - \return 0 on success, >=1 on failure - \param et EMF in memory -*/ -int emf_free( - EMFTRACK **et - ){ - EMFTRACK *etl; - if(!et)return(1); - etl=*et; - if(!etl)return(2); - free(etl->buf); - free(etl); - *et=NULL; - return(0); -} - -/** - \brief wrapper for fopen, works on any platform - \return 0 on success, >=1 on failure - \param filename file to open (either ASCII or UTF-8) - \param mode U_READ or U_WRITE (these map to "rb" and "wb") -*/ -FILE *emf_fopen( - const char *filename, - const int mode - ){ - FILE *fp = NULL; -#ifdef WIN32 - uint16_t *fn16; - uint16_t *md16; - if(mode == U_READ){ md16 = U_Utf8ToUtf16le("rb", 0, NULL); } - else { md16 = U_Utf8ToUtf16le("wb", 0, NULL); } - fn16 = U_Utf8ToUtf16le(filename, 0, NULL); - fp = _wfopen(fn16,md16); - free(fn16); - free(md16); -#else - if(mode == U_READ){ fp = fopen(filename,"rb"); } - else { fp = fopen(filename,"wb"); } -#endif - return(fp); -} - -/** - \brief Retrieve contents of an EMF file by name. - \return 0 on success, >=1 on failure - \param filename Name of file to open, including the path - \param contents Contents of the file. Buffer must be free()'d by caller. - \param length Number of bytes in Contents -*/ -int emf_readdata( - const char *filename, - char **contents, - size_t *length - ){ - FILE *fp; - int status=0; - - *contents=NULL; - fp=emf_fopen(filename,U_READ); - if(!fp){ status = 1; } - else { - // read the entire file into memory - fseek(fp, 0, SEEK_END); // move to end - *length = ftell(fp); - rewind(fp); - *contents = (char *) malloc(*length); - if(!*contents){ - status = 2; - } - else { - size_t inbytes = fread(*contents,*length,1,fp); - if(inbytes != 1){ - free(*contents); - status = 3; - } - else { -#if U_BYTE_SWAP - //This is a Big Endian machine, EMF data is Little Endian - U_emf_endian(*contents,*length,0); // LE to BE -#endif - } - } - fclose(fp); - } - return(status); -} - - -/** - \brief Append an EMF record to an emf in memory. This may reallocate buf memory. - \return 0 for success, >=1 for failure. - \param rec Record to append to EMF in memory - \param et EMF in memory - \param freerec If true, free rec after append -*/ -int emf_append( - U_ENHMETARECORD *rec, - EMFTRACK *et, - int freerec - ){ - size_t deficit; - -#ifdef U_VALGRIND - printf("\nbefore \n"); - printf(" probe %d\n",memprobe(rec, U_EMRSIZE(rec))); - printf("after \n"); -#endif - if(!rec)return(1); - if(!et)return(2); - if(rec->nSize + et->used > et->allocated){ - deficit = rec->nSize + et->used - et->allocated; - if(deficit < et->chunk)deficit = et->chunk; - et->allocated += deficit; - et->buf = realloc(et->buf,et->allocated); - if(!et->buf)return(3); - } - memcpy(et->buf + et->used, rec, rec->nSize); - et->used += rec->nSize; - et->records++; - if(rec->iType == U_EMR_EOF){ et->PalEntries = ((U_EMREOF *)rec)->cbPalEntries; } - if(freerec){ free(rec); } - return(0); -} - -/** - \brief Create a handle table. Entries filled with 0 are empty, entries >0 hold a handle. - \return 0 for success, >=1 for failure. - \param initsize Initialize with space for this number of handles - \param chunksize When needed increase space by this number of handles - \param eht EMF handle table -*/ -int emf_htable_create( - uint32_t initsize, - uint32_t chunksize, - EMFHANDLES **eht - ){ - EMFHANDLES *ehtl; - unsigned int i; - - if(initsize<1)return(1); - if(chunksize<1)return(2); - ehtl = (EMFHANDLES *) malloc(sizeof(EMFHANDLES)); - if(!ehtl)return(3); - ehtl->table = malloc(initsize * sizeof(uint32_t)); - if(!ehtl->table){ - free(ehtl); - return(4); - } - ehtl->stack = malloc(initsize * sizeof(uint32_t)); - if(!ehtl->stack){ - free(ehtl); - free(ehtl->table); - return(5); - } - memset(ehtl->table , 0, initsize * sizeof(uint32_t)); // zero all slots in the table - for(i=1; istack[i]=i;} // preset the stack - ehtl->allocated = initsize; - ehtl->chunk = chunksize; - ehtl->table[0] = 0; // This slot isn't actually ever used - ehtl->stack[0] = 0; // This stack position isn't actually ever used - ehtl->peak = 1; - ehtl->sptr = 1; - ehtl->top = 0; - *eht = ehtl; - return(0); -} - -/** - \brief Delete an entry from the handle table. Move it back onto the stack. The specified slot is filled with a 0. - \return 0 for success, >=1 for failure. - \param ih handle - \param eht EMF handle table - -*/ -int emf_htable_delete( - uint32_t *ih, - EMFHANDLES *eht - ){ - if(!eht)return(1); - if(!eht->table)return(2); - if(!eht->stack)return(3); - if(*ih < 1)return(4); // invalid handle - if(!eht->table[*ih])return(5); // requested table position was not in use - eht->table[*ih]=0; // remove handle from table - while(eht->top>0 && !eht->table[eht->top]){ // adjust top - eht->top--; - } - eht->sptr--; // adjust stack - eht->stack[eht->sptr]=*ih; // place handle on stack - *ih=0; // invalidate handle variable, so a second delete will of it is not possible - return(0); -} - -/** - \brief Returns the index of the first free slot. - Call realloc() if needed. The slot is set to handle (indicates occupied) and the peak value is adjusted. - \return 0 for success, >=1 for failure. - \param ih handle - \param eht EMF handle table -*/ -int emf_htable_insert( - uint32_t *ih, - EMFHANDLES *eht - ){ - unsigned int i; - size_t newsize; - - if(!eht)return(1); - if(!eht->table)return(2); - if(!eht->stack)return(3); - if(!ih)return(4); - if(eht->sptr >= eht->allocated - 1){ // need to reallocate - newsize=eht->allocated + eht->chunk; - eht->table = realloc(eht->table,newsize * sizeof(uint32_t)); - if(!eht->table)return(5); - memset(&eht->table[eht->allocated] , 0, eht->chunk * sizeof(uint32_t)); // zero all NEW slots in the table - - eht->stack = realloc(eht->stack,newsize * sizeof(uint32_t)); - if(!eht->stack)return(6); - for(i=eht->allocated; istack[i] = i; } // init all NEW slots in the stack - eht->allocated = newsize; - } - *ih = eht->stack[eht->sptr]; // handle that is inserted - if(eht->table[*ih])return(7); - eht->table[*ih] = *ih; // handle goes into preexisting (but zero) slot in table - eht->stack[eht->sptr] = 0; - if(*ih > eht->top){ eht->top = *ih; } - if(eht->sptr > eht->peak){ eht->peak = eht->sptr; } - eht->sptr++; // next available handle - return(0); -} - -/** - \brief Free all memory in an htable. Sets the pointer to NULL. - \return 0 for success, >=1 for failure. - \param eht EMF handle table -*/ -int emf_htable_free( - EMFHANDLES **eht - ){ - EMFHANDLES *ehtl; - if(!eht)return(1); - ehtl = *eht; - if(!ehtl)return(2); - if(!ehtl->table)return(3); - if(!ehtl->stack)return(4); - free(ehtl->table); - free(ehtl->stack); - free(ehtl); - *eht=NULL; - return(0); -} - -/* ********************************************************************************************** -These functions create standard structures used in the EMR records. -*********************************************************************************************** */ - - -/** - \brief Set up fields for an EMR_HEADER from the physical device's width and height in mm and dots per millimeter. - Typically this is something like 216,279,47.244 (Letter paper, 1200 DPI = 47.244 DPmm) - \return 0 for success, >=1 for failure. - \param xmm Device width in millimeters - \param ymm Device height in millimeters - \param dpmm Dots per millimeter - \param szlDev Device size structure in pixels - \param szlMm Device size structure in mm -*/ -int device_size( - const int xmm, - const int ymm, - const float dpmm, - U_SIZEL *szlDev, - U_SIZEL *szlMm - ){ - if(xmm < 0 || ymm < 0 || dpmm < 0)return(1); - szlDev->cx = U_ROUND((float) xmm * dpmm); - szlDev->cy = U_ROUND((float) ymm * dpmm);; - szlMm->cx = xmm; - szlMm->cy = ymm; - return(0); -} - -/** - \brief Set up fields for an EMR_HEADER for drawing by physical size in mm and dots per millimeter. - Technically rclBounds is supposed to be the extent of the drawing within the EMF, but libUEMF has no way - of knowing this since it never actually draws anything. Instead this is set to the full drawing size. - Coordinates are inclusive inclusive, so 297 -> 0,29699. - \return 0 for success, >=1 for failure. - \param xmm Drawing width in millimeters - \param ymm Drawing height in millimeters - \param dpmm Dots per millimeter - \param rclBounds Drawing size structure in pixels - \param rclFrame Drawing size structure in mm -*/ -int drawing_size( - const int xmm, - const int ymm, - const float dpmm, - U_RECTL *rclBounds, - U_RECTL *rclFrame - ){ - if(xmm < 0 || ymm < 0 || dpmm < 0)return(1); - rclBounds->left = 0; - rclBounds->top = 0; - rclBounds->right = U_ROUND((float) xmm * dpmm) - 1; // because coordinate system is 0,0 in upper left, N,M in lower right - rclBounds->bottom = U_ROUND((float) ymm * dpmm) - 1; - rclFrame->left = 0; - rclFrame->top = 0; - rclFrame->right = U_ROUND((float) xmm * 100.) - 1; - rclFrame->bottom = U_ROUND((float) ymm * 100.) - 1; - return(0); -} - -/** - \brief Set a U_COLORREF value from separeate R,G,B values. - Or use macro directly: cr = U_RGB(r,g,b). - \param red Red component - \param green Green component - \param blue Blue component - -*/ -U_COLORREF colorref_set( - uint8_t red, - uint8_t green, - uint8_t blue - ){ - U_COLORREF cr = (U_COLORREF){red , green, blue, 0}; - return(cr); -} - -/** - \brief Set rect and rectl objects from Upper Left and Lower Right corner points. - \param ul upper left corner of rectangle - \param lr lower right corner of rectangle -*/ -U_RECTL rectl_set( - U_POINTL ul, - U_POINTL lr - ){ - U_RECTL rct; - rct.left = ul.x; - rct.top = ul.y; - rct.right = lr.x; - rct.bottom = lr.y; - return(rct); -} - -/** - \brief Set sizel objects with X,Y values. - \param x X coordinate - \param y Y coordinate -*/ -U_SIZEL sizel_set( - int32_t x, - int32_t y - ){ - U_SIZEL sz; - sz.cx = x; - sz.cy = y; - return(sz); -} - -/** - \brief Set pointl objects with X,Y values. - \param x X coordinate - \param y Y coordinate -*/ -U_POINTL point32_set( - int32_t x, - int32_t y - ){ - U_POINTL pt; - pt.x = x; - pt.y = y; - return(pt); -} - -/** - \brief Set point16 objects with 16 bit X,Y values. - \param x X coordinate - \param y Y coordinate -*/ -U_POINT16 point16_set( - int16_t x, - int16_t y - ){ - U_POINT16 pt; - pt.x = x; - pt.y = y; - return(pt); -} - -/** - \brief Find the bounding rectangle from a polyline of a given width. - \param count number of points in the polyline - \param pts the polyline - \param width width of drawn line - -*/ -U_RECT findbounds( - uint32_t count, - PU_POINT pts, - uint32_t width - ){ - U_RECT rect={INT32_MAX, INT32_MAX, INT32_MIN, INT32_MIN }; - unsigned int i; - - for(i=0; ix < rect.left ) rect.left = pts->x; - if ( pts->x > rect.right ) rect.right = pts->x; - if ( pts->y < rect.top ) rect.top = pts->y; - if ( pts->y > rect.bottom ) rect.bottom = pts->y; - } - if(width > 0){ - rect.left -= width; - rect.right += width; - rect.top += width; - rect.bottom -= width; - } - return(rect); -} - -/** - \brief Find the bounding rectangle from a polyline of a given width. - \param count number of points in the polyline - \param pts the polyline - \param width width of drawn line - -*/ -U_RECT findbounds16( - uint32_t count, - PU_POINT16 pts, - uint32_t width - ){ - U_RECT rect={INT16_MAX, INT16_MAX, INT16_MIN, INT16_MIN }; - unsigned int i; - - for(i=0; ix < rect.left ) rect.left = pts->x; - if ( pts->x > rect.right ) rect.right = pts->x; - if ( pts->y < rect.top ) rect.top = pts->y; - if ( pts->y > rect.bottom ) rect.bottom = pts->y; - } - if(width > 0){ - rect.left -= width; - rect.right += width; - rect.top += width; - rect.bottom -= width; - } - return(rect); -} -/** - \brief Construct a U_LOGBRUSH structure. - \return U_LOGBRUSH structure - \param lbStyle LB_Style Enumeration - \param lbColor Brush color - \param lbHatch HatchStyle Enumertaion -*/ -U_LOGBRUSH logbrush_set( - uint32_t lbStyle, - U_COLORREF lbColor, - int32_t lbHatch - ){ - U_LOGBRUSH lb; - lb.lbStyle = lbStyle; - lb.lbColor = lbColor; - lb.lbHatch = lbHatch; - return(lb); -} - -/** - \brief Construct a U_XFORM structure. - \return U_XFORM structure - \param eM11 Rotation Matrix element - \param eM12 Rotation Matrix element - \param eM21 Rotation Matrix element - \param eM22 Rotation Matrix element - \param eDx Translation element - \param eDy Translation element -*/ -U_XFORM xform_set( - U_FLOAT eM11, - U_FLOAT eM12, - U_FLOAT eM21, - U_FLOAT eM22, - U_FLOAT eDx, - U_FLOAT eDy - ){ - U_XFORM xform; - xform.eM11 = eM11; - xform.eM12 = eM12; - xform.eM21 = eM21; - xform.eM22 = eM22; - xform.eDx = eDx; - xform.eDy = eDy; - return(xform); -} - -/** - \brief Construct a U_XFORM structure. - \return U_XFORM structure - \param scale Scale factor - \param ratio Ratio of minor axis/major axis - \param rot Rotation angle in degrees, positive is counter clockwise from the x axis. - \param axisrot Angle in degrees defining the major axis before rotation, positive is counter clockwise from the x axis. - \param eDx Translation element - \param eDy Translation element - - Operation is: - 1 Conformal map of points based on scale, axis rotation, and axis ratio, - 2. Apply rotation - 3. Apply offset -*/ -U_XFORM xform_alt_set( - U_FLOAT scale, - U_FLOAT ratio, - U_FLOAT rot, - U_FLOAT axisrot, - U_FLOAT eDx, - U_FLOAT eDy - ){ - U_XFORM xform; - U_MAT2X2 mat1, mat2; - // angles are in degrees, must be in radians - rot *= (2.0 * U_PI)/360.0; - axisrot *= -(2.0 * U_PI)/360.0; - mat1.M11 = cos(rot); // set up the rotation matrix - mat1.M12 = -sin(rot); - mat1.M21 = sin(rot); - mat1.M22 = cos(rot); - if(ratio!=1.0){ // set scale/ellipticity matrix - mat2.M11 = scale*( cos(axisrot)*cos(axisrot) + ratio*sin(axisrot)*sin(axisrot) ); - mat2.M12 = mat2.M21 = scale*( sin(axisrot)*cos(axisrot) * (1.0 - ratio) ); - mat2.M22 = scale*( sin(axisrot)*sin(axisrot) + ratio*cos(axisrot)*cos(axisrot) ); - } - else { // when the ratio is 1.0 then the major axis angle is ignored and only scale matters - mat2.M11 = scale; - mat2.M12 = 0.0; - mat2.M21 = 0.0; - mat2.M22 = scale; - } - xform.eM11 = mat2.M11 * mat1.M11 + mat2.M12 * mat1.M21; - xform.eM12 = mat2.M11 * mat1.M12 + mat2.M12 * mat1.M22;; - xform.eM21 = mat2.M21 * mat1.M11 + mat2.M22 * mat1.M21; - xform.eM22 = mat2.M21 * mat1.M12 + mat2.M22 * mat1.M22; - xform.eDx = eDx; - xform.eDy = eDy; - return(xform); -} - - -/** - \brief Construct a U_LOGCOLORSPACEA structure. - \return U_LOGCOLORSPACEA structure - \param lcsCSType LCS_CSType Enumeration - \param lcsIntent LCS_Intent Enumeration - \param lcsEndpoints CIE XYZ color space endpoints - \param lcsGammaRGB Gamma For RGB - \param lcsFilename Could name an external color profile file, otherwise empty string -*/ -U_LOGCOLORSPACEA logcolorspacea_set( - int32_t lcsCSType, - int32_t lcsIntent, - U_CIEXYZTRIPLE lcsEndpoints, - U_LCS_GAMMARGB lcsGammaRGB, - char *lcsFilename - ){ - U_LOGCOLORSPACEA lcsa; - lcsa.lcsSignature = U_LCS_SIGNATURE; - lcsa.lcsVersion = U_LCS_SIGNATURE; - lcsa.lcsSize = sizeof(U_LOGCOLORSPACEA); - lcsa.lcsCSType = lcsCSType; - lcsa.lcsIntent = lcsIntent; - lcsa.lcsEndpoints = lcsEndpoints; - lcsa.lcsGammaRGB = lcsGammaRGB; - memset(lcsa.lcsFilename,0,U_MAX_PATH); // zero out the Filename field - strncpy(lcsa.lcsFilename,lcsFilename,U_MAX_PATH); - return(lcsa); -} - -/** - - \brief Construct a U_LOGCOLORSPACEW structure. - \return U_LOGCOLORSPACEW structure - \param lcsCSType LCS_CSType Enumeration - \param lcsIntent LCS_Intent Enumeration - \param lcsEndpoints CIE XYZ color space endpoints - \param lcsGammaRGB Gamma For RGB - \param lcsFilename Could name an external color profile file, otherwise empty string -*/ -U_LOGCOLORSPACEW logcolorspacew_set( - int32_t lcsCSType, - int32_t lcsIntent, - U_CIEXYZTRIPLE lcsEndpoints, - U_LCS_GAMMARGB lcsGammaRGB, - uint16_t *lcsFilename - ){ - U_LOGCOLORSPACEW lcsa; - lcsa.lcsSignature = U_LCS_SIGNATURE; - lcsa.lcsVersion = U_LCS_SIGNATURE; - lcsa.lcsSize = sizeof(U_LOGCOLORSPACEW); - lcsa.lcsCSType = lcsCSType; - lcsa.lcsIntent = lcsIntent; - lcsa.lcsEndpoints = lcsEndpoints; - lcsa.lcsGammaRGB = lcsGammaRGB; - wchar16strncpypad(lcsa.lcsFilename,lcsFilename,U_MAX_PATH); - return(lcsa); -} - -/** - - \brief Construct a U_PANOSE structure. - \return U_PANOSE structure - \param bFamilyType FamilyType Enumeration - \param bSerifStyle SerifType Enumeration - \param bWeight Weight Enumeration - \param bProportion Proportion Enumeration - \param bContrast Contrast Enumeration - \param bStrokeVariation StrokeVariation Enumeration - \param bArmStyle ArmStyle Enumeration - \param bLetterform Letterform Enumeration - \param bMidline Midline Enumeration - \param bXHeight XHeight Enumeration -*/ -U_PANOSE panose_set( - uint8_t bFamilyType, - uint8_t bSerifStyle, - uint8_t bWeight, - uint8_t bProportion, - uint8_t bContrast, - uint8_t bStrokeVariation, - uint8_t bArmStyle, - uint8_t bLetterform, - uint8_t bMidline, - uint8_t bXHeight - ){ - U_PANOSE panose; - panose.bFamilyType = bFamilyType; - panose.bSerifStyle = bSerifStyle; - panose.bWeight = bWeight; - panose.bProportion = bProportion; - panose.bContrast = bContrast; - panose.bStrokeVariation = bStrokeVariation; - panose.bArmStyle = bArmStyle; - panose.bLetterform = bLetterform; - panose.bMidline = bMidline; - panose.bXHeight = bXHeight; - return(panose); -} - -/** - \brief Construct a U_LOGFONT structure. - \return U_LOGFONT structure - \param lfHeight Height in Logical units - \param lfWidth Average Width in Logical units - \param lfEscapement Angle in 0.1 degrees betweem escapement vector and X axis - \param lfOrientation Angle in 0.1 degrees between baseline and X axis - \param lfWeight LF_Weight Enumeration - \param lfItalic Italics: 0 or 1 - \param lfUnderline Underline: 0 or 1 - \param lfStrikeOut Strikeout: 0 or 1 - \param lfCharSet LF_CharSet Enumeration - \param lfOutPrecision LF_OutPrecision Enumeration - \param lfClipPrecision LF_ClipPrecision Enumeration - \param lfQuality LF_Quality Enumeration - \param lfPitchAndFamily LF_PitchAndFamily Enumeration - \param lfFaceName Name of font. truncates at U_LF_FACESIZE, smaller must be null terminated - -*/ -U_LOGFONT logfont_set( - int32_t lfHeight, - int32_t lfWidth, - int32_t lfEscapement, - int32_t lfOrientation, - int32_t lfWeight, - uint8_t lfItalic, - uint8_t lfUnderline, - uint8_t lfStrikeOut, - uint8_t lfCharSet, - uint8_t lfOutPrecision, - uint8_t lfClipPrecision, - uint8_t lfQuality, - uint8_t lfPitchAndFamily, - uint16_t *lfFaceName - ){ - U_LOGFONT lf; - lf.lfHeight = lfHeight; - lf.lfWidth = lfWidth; - lf.lfEscapement = lfEscapement; - lf.lfOrientation = lfOrientation; - lf.lfWeight = lfWeight; - lf.lfItalic = lfItalic; - lf.lfUnderline = lfUnderline; - lf.lfStrikeOut = lfStrikeOut; - lf.lfCharSet = lfCharSet; - lf.lfOutPrecision = lfOutPrecision; - lf.lfClipPrecision = lfClipPrecision; - lf.lfQuality = lfQuality; - lf.lfPitchAndFamily = lfPitchAndFamily; - wchar16strncpypad(lf.lfFaceName, lfFaceName, U_LF_FACESIZE); // pad this one as the intial structure was not set to zero - return(lf); -} - - -/** - \brief Construct a U_LOGFONT_PANOSE structure. - \return U_LOGFONT_PANOSE structure - \param elfLogFont Basic font attributes - \param elfFullName Font full name, truncates at U_LF_FULLFACESIZE, smaller must be null terminated - \param elfStyle Font style, truncates at U_LF_FULLFACESIZE, smaller must be null terminated - \param elfStyleSize Font hinting starting at this point size, if 0, starts at Height - \param elfPanose Panose Object. If all zero, it is ignored. -*/ -U_LOGFONT_PANOSE logfont_panose_set( - U_LOGFONT elfLogFont, - uint16_t *elfFullName, - uint16_t *elfStyle, - uint32_t elfStyleSize, - U_PANOSE elfPanose - ){ - U_LOGFONT_PANOSE lfp; - memset(&lfp,0,sizeof(U_LOGFONT_PANOSE)); // all fields zero unless needed. Many should be ignored or must be 0. - wchar16strncpy(lfp.elfFullName, elfFullName, U_LF_FULLFACESIZE); - wchar16strncpy(lfp.elfStyle, elfStyle, U_LF_FACESIZE); - lfp.elfLogFont = elfLogFont; - lfp.elfStyleSize = elfStyleSize; - lfp.elfPanose = elfPanose; - return(lfp); -} - -/** - \brief Construct a U_BITMAPINFOHEADER structure. - \return U_BITMAPINFOHEADER structure - \param biWidth Bitmap width in pixels - \param biHeight Bitmap height in pixels - \param biPlanes Planes (must be 1) - \param biBitCount BitCount Enumeration - \param biCompression BI_Compression Enumeration - \param biSizeImage Size in bytes of image - \param biXPelsPerMeter X Resolution in pixels/meter - \param biYPelsPerMeter Y Resolution in pixels/meter - \param biClrUsed Number of bmciColors in U_BITMAPCOREINFO - \param biClrImportant Number of bmciColors needed (0 means all). -*/ -U_BITMAPINFOHEADER bitmapinfoheader_set( - int32_t biWidth, - int32_t biHeight, - uint16_t biPlanes, - uint16_t biBitCount, - uint32_t biCompression, - uint32_t biSizeImage, - int32_t biXPelsPerMeter, - int32_t biYPelsPerMeter, - U_NUM_RGBQUAD biClrUsed, - uint32_t biClrImportant - ){ - U_BITMAPINFOHEADER Bmi; - Bmi.biSize = sizeof(U_BITMAPINFOHEADER); - Bmi.biWidth = biWidth; - Bmi.biHeight = biHeight; - Bmi.biPlanes = biPlanes; - Bmi.biBitCount = biBitCount; - Bmi.biCompression = biCompression; - Bmi.biSizeImage = biSizeImage; - Bmi.biXPelsPerMeter = biXPelsPerMeter; - Bmi.biYPelsPerMeter = biYPelsPerMeter; - Bmi.biClrUsed = biClrUsed; - Bmi.biClrImportant = biClrImportant; - return(Bmi); -} - - -/** - \brief Allocate and construct a U_BITMAPINFO structure. - \return Pointer to a U_BITMAPINFO structure - \param BmiHeader Geometry and pixel properties - \param BmiColors Color table (must be NULL for some values of BmiHeader->biBitCount) -*/ -PU_BITMAPINFO bitmapinfo_set( - U_BITMAPINFOHEADER BmiHeader, - PU_RGBQUAD BmiColors - ){ - char *record; - int irecsize; - int cbColors, cbColors4, off; - - cbColors = 4*get_real_color_count((char *) &BmiHeader); - cbColors4 = UP4(cbColors); - irecsize = sizeof(U_BITMAPINFOHEADER) + cbColors4; - record = malloc(irecsize); - if(record){ - memcpy(record, &BmiHeader, sizeof(U_BITMAPINFOHEADER)); - if(cbColors){ - off = sizeof(U_BITMAPINFOHEADER); - memcpy(record + off, BmiColors, cbColors); - off += cbColors; - if(cbColors4 - cbColors){ memset(record + off, 0, cbColors4 - cbColors); } - } - } - return((PU_BITMAPINFO) record); -} - -/** - \brief Allocate and construct a U_EXTLOGPEN structure. - \return pointer to U_EXTLOGPEN structure, or NULL on error - \param elpPenStyle PenStyle Enumeration - \param elpWidth Width in logical units (elpPenStyle & U_PS_GEOMETRIC) or 1 (pixel) - \param elpBrushStyle LB_Style Enumeration - \param elpColor Pen color - \param elpHatch HatchStyle Enumeration - \param elpNumEntries Count of StyleEntry array - \param elpStyleEntry Array of StyleEntry (For user specified dot/dash patterns) -*/ -PU_EXTLOGPEN extlogpen_set( - uint32_t elpPenStyle, - uint32_t elpWidth, - uint32_t elpBrushStyle, - U_COLORREF elpColor, - int32_t elpHatch, - U_NUM_STYLEENTRY elpNumEntries, - U_STYLEENTRY *elpStyleEntry - ){ - int irecsize,szSyleArray; - char *record; - - if(elpNumEntries){ - if(!elpStyleEntry)return(NULL); - szSyleArray = elpNumEntries * sizeof(U_STYLEENTRY); - irecsize = sizeof(U_EXTLOGPEN) + szSyleArray - sizeof(U_STYLEENTRY); // first one is in the record - } - else { - szSyleArray = 0; - irecsize = sizeof(U_EXTLOGPEN); - } - record = malloc(irecsize); - if(record){ - ((PU_EXTLOGPEN) record)->elpPenStyle = elpPenStyle; - ((PU_EXTLOGPEN) record)->elpWidth = elpWidth; - ((PU_EXTLOGPEN) record)->elpBrushStyle = elpBrushStyle; - ((PU_EXTLOGPEN) record)->elpColor = elpColor; - ((PU_EXTLOGPEN) record)->elpHatch = elpHatch; - ((PU_EXTLOGPEN) record)->elpNumEntries = elpNumEntries; - if(elpNumEntries){ memcpy(((PU_EXTLOGPEN) record)->elpStyleEntry,elpStyleEntry,szSyleArray); } - else { memset(((PU_EXTLOGPEN) record)->elpStyleEntry,0,sizeof(U_STYLEENTRY)); } // not used, but this stops valgrind warnings - } - return((PU_EXTLOGPEN) record); -} - -/** - \brief Construct a U_LOGPEN structure. - \return U_LOGPEN structure - \param lopnStyle PenStyle Enumeration - \param lopnWidth Width of pen set by X, Y is ignored - \param lopnColor Pen color value - -*/ -U_LOGPEN logpen_set( - uint32_t lopnStyle, - U_POINT lopnWidth, - U_COLORREF lopnColor - ){ - U_LOGPEN lp; - lp.lopnStyle = lopnStyle; - lp.lopnWidth = lopnWidth; - lp.lopnColor = lopnColor; - return(lp); -} - -/** - \brief Construct a U_LOGPLTNTRY structure. - \return U_LOGPLTNTRY structure - \param peReserved Ignore - \param peRed Palette entry Red Intensity - \param peGreen Palette entry Green Intensity - \param peBlue Palette entry Blue Intensity -*/ -U_LOGPLTNTRY logpltntry_set( - uint8_t peReserved, - uint8_t peRed, - uint8_t peGreen, - uint8_t peBlue - ){ - U_LOGPLTNTRY lpny; - lpny.peReserved = peReserved; - lpny.peRed = peRed; - lpny.peGreen = peGreen; - lpny.peBlue = peBlue; - return(lpny); -} - -/** - \brief Allocate and construct a U_LOGPALETTE structure. - \return pointer to U_LOGPALETTE structure, or NULL on error. - \param palNumEntries Number of U_LOGPLTNTRY objects - \param palPalEntry array, PC_Entry Enumeration -*/ -PU_LOGPALETTE logpalette_set( - U_NUM_LOGPLTNTRY palNumEntries, - PU_LOGPLTNTRY *palPalEntry - ){ - PU_LOGPALETTE record; - int cbPalArray,irecsize; - - if(palNumEntries == 0 || !palPalEntry)return(NULL); - cbPalArray = palNumEntries * sizeof(U_LOGPLTNTRY); - irecsize = sizeof(U_LOGPALETTE) + cbPalArray - sizeof(U_LOGPLTNTRY); - record = (PU_LOGPALETTE) malloc(irecsize); - if(irecsize){ - record->palVersion = U_LP_VERSION; - record->palNumEntries = palNumEntries; - memcpy(record->palPalEntry,palPalEntry,cbPalArray); - } - return(record); -} - -/** - \brief Construct a U_RGNDATAHEADER structure. - \return U_RGNDATAHEADER structure - \param nCount Number of rectangles in region - \param rclBounds Region bounds -*/ -U_RGNDATAHEADER rgndataheader_set( - U_NUM_RECTL nCount, - U_RECTL rclBounds - ){ - U_RGNDATAHEADER rdh; - rdh.dwSize = U_RDH_OBJSIZE; - rdh.iType = U_RDH_RECTANGLES; - rdh.nCount = nCount; - rdh.nRgnSize = nCount * sizeof(U_RECTL); // Size in bytes of retangle array - rdh.rclBounds = rclBounds; - return(rdh); -} - -/** - \brief Allocate and construct a U_RGNDATA structure. - \return pointer to U_RGNDATA structure, or NULL on error. - \param rdh Data description - \param Buffer Array of U_RECTL elements -*/ -PU_RGNDATA rgndata_set( - U_RGNDATAHEADER rdh, - PU_RECTL Buffer - ){ - char *record; - int irecsize; - int szRgnArray,off; - - if(!Buffer || !rdh.nCount || !rdh.nRgnSize)return(NULL); - szRgnArray = rdh.nRgnSize; // size of the U_RECTL array - irecsize = sizeof(U_RGNDATA) + szRgnArray - sizeof(U_RECTL); // core + array - overlap - record = malloc(irecsize); - if(record){ - memcpy(record, &rdh, sizeof(U_RGNDATAHEADER)); - off = sizeof(U_RGNDATAHEADER); - memcpy(record + off, Buffer, szRgnArray); - } - return((PU_RGNDATA) record); -} - -/** - \brief Construct a U_COLORADJUSTMENT structure. - \return U_COLORADJUSTMENT structure - \param Size Size of this structure in bytes - \param Flags ColorAdjustment Enumeration - \param IlluminantIndex Illuminant Enumeration - \param RedGamma Red Gamma correction (range:2500:65000, 10000 is no correction) - \param GreenGamma Green Gamma correction (range:2500:65000, 10000 is no correction) - \param BlueGamma Blue Gamma correction (range:2500:65000, 10000 is no correction) - \param ReferenceBlack Values less than this are black (range:0:4000) - \param ReferenceWhite Values more than this are white (range:6000:10000) - \param Contrast Contrast adjustment (range:-100:100, 0 is no correction) - \param Brightness Brightness adjustment (range:-100:100, 0 is no correction) - \param Colorfulness Colorfulness adjustment (range:-100:100, 0 is no correction) - \param RedGreenTint Tine adjustment (range:-100:100, 0 is no correction) -*/ -U_COLORADJUSTMENT coloradjustment_set( - uint16_t Size, - uint16_t Flags, - uint16_t IlluminantIndex, - uint16_t RedGamma, - uint16_t GreenGamma, - uint16_t BlueGamma, - uint16_t ReferenceBlack, - uint16_t ReferenceWhite, - int16_t Contrast, - int16_t Brightness, - int16_t Colorfulness, - int16_t RedGreenTint - ){ - U_COLORADJUSTMENT ca; - ca.caSize = Size; - ca.caFlags = Flags; - ca.caIlluminantIndex = IlluminantIndex; - ca.caRedGamma = U_MNMX(RedGamma, U_RGB_GAMMA_MIN, U_RGB_GAMMA_MAX); - ca.caGreenGamma = U_MNMX(GreenGamma, U_RGB_GAMMA_MIN, U_RGB_GAMMA_MAX); - ca.caBlueGamma = U_MNMX(BlueGamma, U_RGB_GAMMA_MIN, U_RGB_GAMMA_MAX); - // Next one is different to eliminate compiler warning - U_R_B_MIN is 0 and unsigned - ca.caReferenceBlack = U_MAX( ReferenceBlack, U_REFERENCE_BLACK_MAX); - ca.caReferenceWhite = U_MNMX(ReferenceWhite, U_REFERENCE_WHITE_MIN, U_REFERENCE_WHITE_MAX); - ca.caContrast = U_MNMX(Contrast, U_COLOR_ADJ_MIN, U_COLOR_ADJ_MAX); - ca.caBrightness = U_MNMX(Brightness, U_COLOR_ADJ_MIN, U_COLOR_ADJ_MAX); - ca.caColorfulness = U_MNMX(Colorfulness, U_COLOR_ADJ_MIN, U_COLOR_ADJ_MAX); - ca.caRedGreenTint = U_MNMX(RedGreenTint, U_COLOR_ADJ_MIN, U_COLOR_ADJ_MAX); - return(ca); -} - -/** - \brief Construct a U_PIXELFORMATDESCRIPTOR structure. - \return U_PIXELFORMATDESCRIPTOR structure - \param dwFlags PFD_dwFlags Enumeration - \param iPixelType PFD_iPixelType Enumeration - \param cColorBits RGBA: total bits per pixel - \param cRedBits Red bits per pixel - \param cRedShift Red shift to data bits - \param cGreenBits Green bits per pixel - \param cGreenShift Green shift to data bits - \param cBlueBits Blue bits per pixel - \param cBlueShift Blue shift to data bits - \param cAlphaBits Alpha bits per pixel - \param cAlphaShift Alpha shift to data bits - \param cAccumBits Accumulator buffer, total bitplanes - \param cAccumRedBits Red accumulator buffer bitplanes - \param cAccumGreenBits Green accumulator buffer bitplanes - \param cAccumBlueBits Blue accumulator buffer bitplanes - \param cAccumAlphaBits Alpha accumulator buffer bitplanes - \param cDepthBits Depth of Z-buffer - \param cStencilBits Depth of stencil buffer - \param cAuxBuffers Depth of auxilliary buffers (not supported) - \param iLayerType PFD_iLayerType Enumeration, may be ignored - \param bReserved Bits 0:3/4:7 are number of Overlay/Underlay planes - \param dwLayerMask may be ignored - \param dwVisibleMask color or index of underlay plane - \param dwDamageMask may be ignored -*/ -U_PIXELFORMATDESCRIPTOR pixelformatdescriptor_set( - uint32_t dwFlags, - uint8_t iPixelType, - uint8_t cColorBits, - uint8_t cRedBits, - uint8_t cRedShift, - uint8_t cGreenBits, - uint8_t cGreenShift, - uint8_t cBlueBits, - uint8_t cBlueShift, - uint8_t cAlphaBits, - uint8_t cAlphaShift, - uint8_t cAccumBits, - uint8_t cAccumRedBits, - uint8_t cAccumGreenBits, - uint8_t cAccumBlueBits, - uint8_t cAccumAlphaBits, - uint8_t cDepthBits, - uint8_t cStencilBits, - uint8_t cAuxBuffers, - uint8_t iLayerType, - uint8_t bReserved, - uint32_t dwLayerMask, - uint32_t dwVisibleMask, - uint32_t dwDamageMask - ){ - U_PIXELFORMATDESCRIPTOR pfd; - pfd.nSize = sizeof(U_PIXELFORMATDESCRIPTOR); - pfd.nVersion = 1; - pfd.dwFlags = dwFlags; - pfd.iPixelType = iPixelType; - pfd.cColorBits = cColorBits; - pfd.cRedBits = cRedBits; - pfd.cRedShift = cRedShift; - pfd.cGreenBits = cGreenBits; - pfd.cGreenShift = cGreenShift; - pfd.cBlueBits = cBlueBits; - pfd.cBlueShift = cBlueShift; - pfd.cAlphaBits = cAlphaBits; - pfd.cAlphaShift = cAlphaShift; - pfd.cAccumBits = cAccumBits; - pfd.cAccumRedBits = cAccumRedBits; - pfd.cAccumGreenBits = cAccumGreenBits; - pfd.cAccumBlueBits = cAccumBlueBits; - pfd.cAccumAlphaBits = cAccumAlphaBits; - pfd.cDepthBits = cDepthBits; - pfd.cStencilBits = cStencilBits; - pfd.cAuxBuffers = cAuxBuffers; - pfd.iLayerType = iLayerType; - pfd.bReserved = bReserved; - pfd.dwLayerMask = dwLayerMask; - pfd.dwVisibleMask = dwVisibleMask; - pfd.dwDamageMask = dwDamageMask; - return(pfd); -} - -/** - \brief Allocate and create a U_EMRTEXT structure followed by its variable pieces via a char* pointer. - Dx cannot be NULL, if the calling program has no appropriate values call dx_set() first. - \return char* pointer to U_EMRTEXT structure followed by its variable pieces, or NULL on error - \param ptlReference String start coordinates - \param NumString Number of characters in string, does NOT include a terminator - \param cbChar Number of bytes per character - \param String String to write - \param fOptions ExtTextOutOptions Enumeration - \param rcl (Optional, when fOptions & 7) grayed/clipping/opaque rectangle - \param Dx Character spacing array from the start of the RECORD -*/ -char *emrtext_set( - U_POINTL ptlReference, - U_NUM_STR NumString, - uint32_t cbChar, - void *String, - uint32_t fOptions, - U_RECTL rcl, - uint32_t *Dx - ){ - int irecsize,cbDxArray,cbString4,cbString,off; - char *record; - uint32_t *loffDx; - - if(!String)return(NULL); - if(!Dx)return(NULL); - cbString = cbChar * NumString; // size of the string in bytes - cbString4 = UP4(cbString); // size of the string buffer - cbDxArray = sizeof(uint32_t)*NumString; // size of Dx array storage - if(fOptions & U_ETO_PDY)cbDxArray += cbDxArray; // of the Dx buffer, here do both X and Y coordinates - irecsize = sizeof(U_EMRTEXT) + sizeof(uint32_t) + cbString4 + cbDxArray; // core structure + offDx + string buf + dx buf - if(!(fOptions & U_ETO_NO_RECT)){ irecsize += sizeof(U_RECTL); } // plus variable U_RECTL, when it is present - record = malloc(irecsize); - if(record){ - ((PU_EMRTEXT)record)->ptlReference = ptlReference; - ((PU_EMRTEXT)record)->nChars = NumString; - // pick up ((PU_EMRTEXT)record)->offString later - ((PU_EMRTEXT)record)->fOptions = fOptions; - off = sizeof(U_EMRTEXT); // location where variable pieces will start to be written - if(!(fOptions & U_ETO_NO_RECT)){ // variable field, may or may not be present - memcpy(record + off,&rcl, sizeof(U_RECTL)); - off += sizeof(U_RECTL); - } - loffDx = (uint32_t *)(record + off); // offDx will go here, but we do not know with what value yet - off += sizeof(uint32_t); - memcpy(record + off,String,cbString); // copy the string data to its buffer - ((PU_EMRTEXT)record)->offString = off; // now save offset in the structure - off += cbString; - if(cbString < cbString4){ - memset(record+off,0,cbString4-cbString); // keeps valgrind happy (initialize padding after string) - off += cbString4-cbString; - } - memcpy(record + off, Dx, cbDxArray); // copy the Dx data to its buffer - *loffDx = off; // now save offDx to the structure - } - return(record); -} - - - -/* ********************************************************************************************** -These functions are simpler or more convenient ways to generate the specified types of EMR records. -Each should be called in preference to the underlying "base" EMR function. -*********************************************************************************************** */ - - -/** - \brief Allocate and construct a U_EMRCOMMENT structure with a UTF8 string. - A U_EMRCOMMENT contains application specific data, and that may include contain null characters. This function may be used when the - comment only incluces UT8 text. - \return pointer to U_EMRCOMMENT structure, or NULL on error. - \param string UTF8 string to store in the comment - - -*/ -char *textcomment_set( - const char *string - ){ - if(!string)return(NULL); - return(U_EMRCOMMENT_set(1 + strlen(string),string)); -} - -/** - \brief Allocate and construct a U_EMRDELETEOBJECT structure and also delete the requested object from the table. - Use this function instead of calling U_EMRDELETEOBJECT_set() directly. - \return pointer to U_EMRDELETEOBJECT structure, or NULL on error. - \param ihObject Pointer to handle to delete. This value is set to 0 if the function succeeds. - \param eht EMF handle table - - Note that calling this function should always be conditional on the specifed object being defined. It is easy to - write a program where deleteobject_set() is called in a sequence where, at the time, we know that ihObject is defined. - Then a later modification, possibly quite far away in the code, causes it to be undefined. That distant change will - result in a failure when this function reutrns. That problem cannot be handled here because the only values which - may be returned are a valid U_EMRDELETEOBJECT record or a NULL, and other errors could result in the NULL. - So the object must be checked before the call. -*/ -char *deleteobject_set( - uint32_t *ihObject, - EMFHANDLES *eht - ){ - uint32_t saveObject=*ihObject; - if(emf_htable_delete(ihObject,eht))return(NULL); // invalid handle or other problem, cannot be deleted - return(U_EMRDELETEOBJECT_set(saveObject)); -} - -/** - \brief Allocate and construct a U_EMRSELECTOBJECT structure, checks that the handle specified is one that can actually be selected. - Use this function instead of calling U_EMRSELECTOBJECT_set() directly. - \return pointer to U_EMRSELECTOBJECT structure, or NULL on error. - \param ihObject handle to select - \param eht EMF handle table -*/ -char *selectobject_set( - uint32_t ihObject, - EMFHANDLES *eht - ){ - if(!(U_STOCK_OBJECT & ihObject)){ // not a stock object, those go straight through - if(ihObject > eht->top)return(NULL); // handle this high is not in the table - if(!eht->table[ihObject])return(NULL); // handle is not in the table, so not active, so cannot be selected - } - return(U_EMRSELECTOBJECT_set(ihObject)); -} - -/** - \brief Allocate and construct a U_EMREXTCREATEPEN structure, create a handle and return it. - Use this function instead of calling U_EMREXTCREATEPEN_set() directly. - \return pointer to U_EMREXTCREATEPEN structure, or NULL on error. - \param ihPen handle to be used by new object - \param eht EMF handle table - \param Bmi bitmapbuffer - \param cbPx Size in bytes of pixel array (row stride * height, there may be some padding at the end of each row) - \param Px pixel array (NULL if cbPx == 0) - \param elp Pen parameters (Size is Variable!!!!) -*/ -char *extcreatepen_set( - uint32_t *ihPen, - EMFHANDLES *eht, - PU_BITMAPINFO Bmi, - const uint32_t cbPx, - char *Px, - PU_EXTLOGPEN elp - ){ - if(emf_htable_insert(ihPen, eht))return(NULL); - return(U_EMREXTCREATEPEN_set(*ihPen, Bmi, cbPx, Px, elp )); -} - -/** - \brief Allocate and construct a U_EMRCREATEPEN structure, create a handle and returns it - Use this function instead of calling U_EMRCREATEPEN_set() directly. - \return pointer to U_EMRCREATEPEN structure, or NULL on error. - \param ihPen handle to be used by new object - \param eht EMF handle table - \param lopn Pen parameters -*/ -char *createpen_set( - uint32_t *ihPen, - EMFHANDLES *eht, - U_LOGPEN lopn - ){ - if(emf_htable_insert(ihPen, eht))return(NULL); - return(U_EMRCREATEPEN_set(*ihPen, lopn)); -} - -/** - \brief Allocate and construct a U_EMRCREATEBRUSHINDIRECT structure, create a handle and returns it - Use this function instead of calling U_EMRCREATEBRUSHINDIRECT_set() directly. - \return pointer to U_EMRCREATEBRUSHINDIRECT structure, or NULL on error. - \param ihBrush handle to be used by new object - \param eht EMF handle table - \param lb Brush parameters -*/ -char *createbrushindirect_set( - uint32_t *ihBrush, - EMFHANDLES *eht, - U_LOGBRUSH lb - ){ - if(emf_htable_insert(ihBrush, eht))return(NULL); - return(U_EMRCREATEBRUSHINDIRECT_set(*ihBrush, lb)); -} - -/** - \brief Allocate and construct a U_EMRCREATEDIBPATTERNBRUSHPT_set structure, create a handle and returns it - Use this function instead of calling U_EMRCREATEDIBPATTERNBRUSHPT_set() directly. - \return pointer to U_EMRCREATEDIBPATTERNBRUSHPT_set structure, or NULL on error. - \param ihBrush handle to be used by new object - \param eht EMF handle table - \param iUsage DIBColors enumeration - \param Bmi Bitmap info - \param cbPx Size in bytes of pixel array (row stride * height, there may be some padding at the end of each row) - \param Px (Optional) bitmapbuffer (pixel array section ) -*/ -char *createdibpatternbrushpt_set( - uint32_t *ihBrush, - EMFHANDLES *eht, - const uint32_t iUsage, - PU_BITMAPINFO Bmi, - const uint32_t cbPx, - const char *Px - - ){ - if(emf_htable_insert(ihBrush, eht))return(NULL); - return(U_EMRCREATEDIBPATTERNBRUSHPT_set(*ihBrush, iUsage, Bmi, cbPx, Px)); -} - -/** - \brief Allocate and construct a U_EMRCREATEMONOBRUSH_set structure, create a handle and returns it - Use this function instead of calling U_EMRCREATEMONOBRUSH_set() directly. - \return pointer to U_EMRCREATEMONOBRUSH_set structure, or NULL on error. - \param ihBrush handle to be used by new object - \param eht EMF handle table - \param iUsage DIBColors enumeration - \param Bmi Bitmap info - \param cbPx Size in bytes of pixel array (row stride * height, there may be some padding at the end of each row) - \param Px (Optional) bitmapbuffer (pixel array section ) -*/ -char *createmonobrush_set( - uint32_t *ihBrush, - EMFHANDLES *eht, - const uint32_t iUsage, - PU_BITMAPINFO Bmi, - const uint32_t cbPx, - const char *Px - - ){ - if(emf_htable_insert(ihBrush, eht))return(NULL); - return(U_EMRCREATEMONOBRUSH_set(*ihBrush, iUsage, Bmi, cbPx, Px)); -} - - -/** - \brief Allocate and construct a U_EMRCREATECOLORSPACE structure, create a handle and returns it - Use this function instead of calling U_EMRCREATECOLORSPACE_set() directly. - \return pointer to U_EMRCREATECOLORSPACE structure, or NULL on error. - \param ihCS ColorSpace handle, will be created and returned - \param eht Pointer to structure holding all EMF handles - \param lcs ColorSpace parameters -*/ -char *createcolorspace_set( - uint32_t *ihCS, - EMFHANDLES *eht, - U_LOGCOLORSPACEA lcs - ){ - if(emf_htable_insert(ihCS, eht))return(NULL); - return(U_EMRCREATECOLORSPACE_set(*ihCS,lcs)); -} - -/** - \brief Allocate and construct a U_EMRCREATECOLORSPACEW structure, create a handle and returns it - Use this function instead of calling U_EMRCREATECOLORSPACEW_set() directly. - \return pointer to U_EMRCREATECOLORSPACEW structure, or NULL on error. - \param ihCS ColorSpace handle, will be created and returned - \param eht Pointer to structure holding all EMF handles - \param lcs ColorSpace parameters - \param dwFlags If low bit set Data is present - \param cbData Number of bytes of theData field. - \param Data (Optional, dwFlags & 1) color profile data -*/ -char *createcolorspacew_set( - uint32_t *ihCS, - EMFHANDLES *eht, - U_LOGCOLORSPACEW lcs, - uint32_t dwFlags, - U_CBDATA cbData, - uint8_t *Data - ){ - if(emf_htable_insert(ihCS, eht))return(NULL); - return(U_EMRCREATECOLORSPACEW_set(*ihCS, lcs, dwFlags, cbData, Data)); -} - -/** - \brief Allocate and construct a U_EMREXTCREATEFONTINDIRECTW structure, create a handle and returns it - Use this function instead of calling U_EMREXTCREATEFONTINDIRECTW_set() directly. - \return pointer to U_EMREXTCREATEFONTINDIRECTW structure, or NULL on error. - \param ihFont Font handle, will be created and returned - \param eht Pointer to structure holding all EMF handles - \param elf Pointer to Font parameters asPU_LOGFONT - \param elfw Pointer to Font parameters as U_LOGFONT_PANOSE -*/ -char *extcreatefontindirectw_set( - uint32_t *ihFont, - EMFHANDLES *eht, - const char *elf, - const char *elfw - ){ - if(emf_htable_insert(ihFont, eht))return(NULL); - return(U_EMREXTCREATEFONTINDIRECTW_set(*ihFont, elf, elfw)); -} - -/** - \brief Allocate and construct a U_EMRCREATEPALETTE structure, create a handle and returns it - Use this function instead of calling U_EMRCREATEPALETTE_set() directly. - \return pointer to U_EMRCREATEPALETTE structure, or NULL on error. - \param ihPal Palette handle, will be created and returned - \param eht Pointer to structure holding all EMF handles - \param lgpl PaletteFont parameters -*/ -char *createpalette_set( - uint32_t *ihPal, - EMFHANDLES *eht, - U_LOGPALETTE lgpl - ){ - if(emf_htable_insert(ihPal, eht))return(NULL); - return(U_EMRCREATEPALETTE_set(*ihPal, lgpl)); -} - -/** - \brief Allocate and construct a U_EMRSETPALETTEENTRIES structure, create a handle and returns it - Use this function instead of calling U_EMRSETPALETTEENTRIES_set() directly. - \return pointer to U_EMRSETPALETTEENTRIES structure, or NULL on error. - \param ihPal Palette handle, will be created and returned - \param eht Pointer to structure holding all EMF handles - \param iStart First Palette entry in selected object to set - \param cEntries Number of Palette entries in selected object to set - \param aPalEntries Values to set with -*/ -char *setpaletteentries_set( - uint32_t *ihPal, - EMFHANDLES *eht, - const uint32_t iStart, - const U_NUM_LOGPLTNTRY cEntries, - const PU_LOGPLTNTRY aPalEntries - ){ - if(emf_htable_insert(ihPal, eht))return(NULL); - return(U_EMRSETPALETTEENTRIES_set(*ihPal, iStart, cEntries, aPalEntries)); -} - -/** - \brief Allocate and construct a U_EMRFILLRGN structure, create a handle and returns it - Use this function instead of calling U_EMRFILLRGN_set() directly. - \return pointer to U_EMRFILLRGN structure, or NULL on error. - \param ihBrush Brush handle, will be created and returned - \param eht Pointer to structure holding all EMF handles - \param rclBounds Bounding rectangle in device units - \param RgnData Pointer to a U_RGNDATA structure -*/ -char *fillrgn_set( - uint32_t *ihBrush, - EMFHANDLES *eht, - const U_RECTL rclBounds, - const PU_RGNDATA RgnData - ){ - if(emf_htable_insert(ihBrush, eht))return(NULL); - return(U_EMRFILLRGN_set(rclBounds, *ihBrush, RgnData)); -} - -/** - \brief Allocate and construct a U_EMRFRAMERGN structure, create a handle and returns it - Use this function instead of calling U_EMRFRAMERGN_set() directly. - \return pointer to U_EMRFRAMERGN structure, or NULL on error. - \param ihBrush Brush handle, will be created and returned - \param eht Pointer to structure holding all EMF handles - \param rclBounds Bounding rectangle in device units - \param szlStroke W & H of Brush stroke - \param RgnData Pointer to a U_RGNDATA structure -*/ -char *framergn_set( - uint32_t *ihBrush, - EMFHANDLES *eht, - const U_RECTL rclBounds, - const U_SIZEL szlStroke, - const PU_RGNDATA RgnData - ){ - if(emf_htable_insert(ihBrush, eht))return(NULL); - return(U_EMRFRAMERGN_set(rclBounds, *ihBrush, szlStroke, RgnData)); -} - -/** - \brief Allocate and construct an array of U_POINT objects which has been subjected to a U_XFORM - \returns pointer to an array of U_POINT structures. - \param points pointer to the source U_POINT structures - \param count number of members in points - \param xform U_XFORM to apply - - May also be used to modify U_RECT by doubling the count and casting the pointer. -*/ -PU_POINT points_transform(PU_POINT points, int count, U_XFORM xform){ - PU_POINT newpts; - int i; - float x,y; - newpts = (PU_POINT) malloc(count * sizeof(U_POINT)); - for(i=0; i\n"; tmpSVGOutput += "\n"; - + return SPDocument::createNewDocFromMem( tmpSVGOutput.c_str(), strlen( tmpSVGOutput.c_str()), 0 ); } #endif - + /* Hunts preference directories for symbol files */ void SymbolsDialog::get_symbols() { std::list directories; if( Inkscape::IO::file_test( INKSCAPE_SYMBOLSDIR, G_FILE_TEST_EXISTS ) && - Inkscape::IO::file_test( INKSCAPE_SYMBOLSDIR, G_FILE_TEST_IS_DIR ) ) { + Inkscape::IO::file_test( INKSCAPE_SYMBOLSDIR, G_FILE_TEST_IS_DIR ) ) { directories.push_back( INKSCAPE_SYMBOLSDIR ); } if( Inkscape::IO::file_test( profile_path("symbols"), G_FILE_TEST_EXISTS ) && - Inkscape::IO::file_test( profile_path("symbols"), G_FILE_TEST_IS_DIR ) ) { + Inkscape::IO::file_test( profile_path("symbols"), G_FILE_TEST_IS_DIR ) ) { directories.push_back( profile_path("symbols") ); } @@ -526,46 +526,46 @@ void SymbolsDialog::get_symbols() { GDir *dir = g_dir_open( (*it).c_str(), 0, &err ); if( dir ) { - gchar *filename = 0; - while( (filename = (gchar *)g_dir_read_name( dir ) ) != NULL) { + gchar *filename = 0; + while( (filename = (gchar *)g_dir_read_name( dir ) ) != NULL) { - gchar *fullname = g_build_filename((*it).c_str(), filename, NULL); + gchar *fullname = g_build_filename((*it).c_str(), filename, NULL); - if ( !Inkscape::IO::file_test( fullname, G_FILE_TEST_IS_DIR ) ) { + if ( !Inkscape::IO::file_test( fullname, G_FILE_TEST_IS_DIR ) ) { - Glib::ustring fn( filename ); - Glib::ustring tag = fn.substr( fn.find_last_of(".") + 1 ); + Glib::ustring fn( filename ); + Glib::ustring tag = fn.substr( fn.find_last_of(".") + 1 ); - SPDocument* symbol_doc = NULL; + SPDocument* symbol_doc = NULL; #ifdef WITH_LIBVISIO - if( tag.compare( "vss" ) == 0 ) { - - symbol_doc = read_vss( fullname, filename ); - if( symbol_doc ) { - symbolSets[Glib::ustring(filename)]= symbol_doc; - symbolSet->append(filename); - } - } + if( tag.compare( "vss" ) == 0 ) { + + symbol_doc = read_vss( fullname, filename ); + if( symbol_doc ) { + symbolSets[Glib::ustring(filename)]= symbol_doc; + symbolSet->append(filename); + } + } #endif - // Try to read all remaining files as SVG - if( !symbol_doc ) { + // Try to read all remaining files as SVG + if( !symbol_doc ) { - symbol_doc = SPDocument::createNewDoc( fullname, FALSE ); - if( symbol_doc ) { + symbol_doc = SPDocument::createNewDoc( fullname, FALSE ); + if( symbol_doc ) { gchar *title = symbol_doc->getRoot()->title(); if( title == NULL ) { title = _("Unnamed Symbols"); } - symbolSets[Glib::ustring(title)] = symbol_doc; - symbolSet->append(title); - } - } - - } - g_free( fullname ); - } - g_dir_close( dir ); + symbolSets[Glib::ustring(title)] = symbol_doc; + symbolSet->append(title); + } + } + + } + g_free( fullname ); + } + g_dir_close( dir ); } } } @@ -627,16 +627,16 @@ gchar const* SymbolsDialog::style_from_use( gchar const* id, SPDocument* documen for( ; l != NULL; l = l->next ) { SPObject* use = SP_OBJECT(l->data); if( SP_IS_USE( use ) ) { - gchar const *href = use->getRepr()->attribute("xlink:href"); - if( href ) { - Glib::ustring href2(href); - Glib::ustring id2(id); - id2 = "#" + id2; - if( !href2.compare(id2) ) { - style = use->getRepr()->attribute("style"); - break; - } - } + gchar const *href = use->getRepr()->attribute("xlink:href"); + if( href ) { + Glib::ustring href2(href); + Glib::ustring id2(id); + id2 = "#" + id2; + if( !href2.compare(id2) ) { + style = use->getRepr()->attribute("style"); + break; + } + } } } return style; @@ -749,9 +749,13 @@ SymbolsDialog::create_symbol_image(gchar const *symbol_id, SPObject *symbol) /* Update to renderable state */ Glib::ustring key = svg_preview_cache.cache_key(previewDocument->getURI(), symbol_id, psize); //std::cout << " Key: " << key << std::endl; - // FIX ME - //Glib::RefPtr pixbuf = Glib::wrap(svg_preview_cache.get_preview_from_cache(key)); - Glib::RefPtr pixbuf = Glib::RefPtr(0); + + Glib::RefPtr pixbuf(NULL); + GdkPixbuf *pixbuf_gobj = svg_preview_cache.get_preview_from_cache(key); + if (pixbuf_gobj) { + g_object_ref(pixbuf_gobj); // the reference in svg_preview_cache will get destroyed when it's freed + pixbuf = Glib::wrap(pixbuf_gobj); + } // Find object's bbox in document. // Note symbols can have own viewport... ignore for now. @@ -776,8 +780,8 @@ SymbolsDialog::create_symbol_image(gchar const *symbol_id, SPObject *symbol) } if( fitSymbol->get_active() ) { - /* Fit */ - scale = psize/std::max(width,height); + /* Fit */ + scale = psize/std::max(width,height); } pixbuf = Glib::wrap(render_pixbuf(renderDrawing, scale, *dbox, psize)); @@ -814,8 +818,8 @@ void SymbolsDialog::setTargetDesktop(SPDesktop *desktop) if (this->currentDesktop != desktop) { this->currentDesktop = desktop; if( !symbolSets[symbolSet->get_active_text()] ) { - // Symbol set is from Current document, update - rebuild(); + // Symbol set is from Current document, update + rebuild(); } } } diff --git a/src/ui/widget/color-preview.cpp b/src/ui/widget/color-preview.cpp index 4b4a7b738..5bcd16528 100644 --- a/src/ui/widget/color-preview.cpp +++ b/src/ui/widget/color-preview.cpp @@ -73,9 +73,9 @@ ColorPreview::on_expose_event (GdkEventExpose *event) if (get_is_drawable()) { Cairo::RefPtr cr = get_window()->create_cairo_context(); - cr->rectangle(event->area.x, event->area.y, + cr->rectangle(event->area.x, event->area.y, event->area.width, event->area.height); - cr->clip(); + cr->clip(); result = on_draw(cr); } @@ -176,12 +176,7 @@ ColorPreview::toPixbuf (int width, int height) cairo_destroy(ct); cairo_surface_flush(s); - GdkPixbuf* pixbuf = gdk_pixbuf_new_from_data( cairo_image_surface_get_data(s), - GDK_COLORSPACE_RGB, TRUE, 8, - width, height, cairo_image_surface_get_stride(s), - ink_cairo_pixbuf_cleanup, s); - convert_pixbuf_argb32_to_normal(pixbuf); - + GdkPixbuf* pixbuf = ink_pixbuf_create_from_cairo_surface(s); return pixbuf; } diff --git a/src/widgets/dash-selector.cpp b/src/widgets/dash-selector.cpp index 51483a9c4..afc81e574 100644 --- a/src/widgets/dash-selector.cpp +++ b/src/widgets/dash-selector.cpp @@ -238,58 +238,50 @@ void SPDashSelector::get_dash(int *ndash, double **dash, double *off) /** * Fill a pixbuf with the dash pattern using standard cairo drawing */ -GdkPixbuf* SPDashSelector::sp_dash_to_pixbuf(double *pattern) { - - int n_dashes; - for (n_dashes = 0; pattern[n_dashes] >= 0.0; n_dashes ++) ; - - cairo_surface_t *s = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, preview_width, preview_height); - cairo_t *ct = cairo_create(s); - - cairo_set_line_width (ct, preview_lineheight); - cairo_scale (ct, preview_lineheight, 1); - //cairo_set_source_rgb (ct, 0, 0, 0); - cairo_move_to (ct, 0, preview_height/2); - cairo_line_to (ct, preview_width, preview_height/2); - cairo_set_dash(ct, pattern, n_dashes, 0); - cairo_stroke (ct); - - cairo_destroy(ct); - cairo_surface_flush(s); - - GdkPixbuf* pixbuf = gdk_pixbuf_new_from_data( cairo_image_surface_get_data(s), - GDK_COLORSPACE_RGB, TRUE, 8, - preview_width, preview_height, cairo_image_surface_get_stride(s), - ink_cairo_pixbuf_cleanup, s); - convert_pixbuf_argb32_to_normal(pixbuf); - return pixbuf; +GdkPixbuf* SPDashSelector::sp_dash_to_pixbuf(double *pattern) +{ + int n_dashes; + for (n_dashes = 0; pattern[n_dashes] >= 0.0; n_dashes ++) ; + + cairo_surface_t *s = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, preview_width, preview_height); + cairo_t *ct = cairo_create(s); + + cairo_set_line_width (ct, preview_lineheight); + cairo_scale (ct, preview_lineheight, 1); + //cairo_set_source_rgb (ct, 0, 0, 0); + cairo_move_to (ct, 0, preview_height/2); + cairo_line_to (ct, preview_width, preview_height/2); + cairo_set_dash(ct, pattern, n_dashes, 0); + cairo_stroke (ct); + + cairo_destroy(ct); + cairo_surface_flush(s); + + GdkPixbuf* pixbuf = ink_pixbuf_create_from_cairo_surface(s); + return pixbuf; } /** * Fill a pixbuf with a text label using standard cairo drawing */ -GdkPixbuf* SPDashSelector::sp_text_to_pixbuf(char *text) { - - cairo_surface_t *s = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, preview_width, preview_height); - cairo_t *ct = cairo_create(s); +GdkPixbuf* SPDashSelector::sp_text_to_pixbuf(char *text) +{ + cairo_surface_t *s = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, preview_width, preview_height); + cairo_t *ct = cairo_create(s); - cairo_select_font_face (ct, "Sans", CAIRO_FONT_SLANT_NORMAL, CAIRO_FONT_WEIGHT_NORMAL); - cairo_set_font_size (ct, 12.0); - cairo_set_source_rgb (ct, 0.0, 0.0, 0.0); - cairo_move_to (ct, 16.0, 13.0); - cairo_show_text (ct, text); + cairo_select_font_face (ct, "Sans", CAIRO_FONT_SLANT_NORMAL, CAIRO_FONT_WEIGHT_NORMAL); + cairo_set_font_size (ct, 12.0); + cairo_set_source_rgb (ct, 0.0, 0.0, 0.0); + cairo_move_to (ct, 16.0, 13.0); + cairo_show_text (ct, text); - cairo_stroke (ct); + cairo_stroke (ct); - cairo_destroy(ct); - cairo_surface_flush(s); + cairo_destroy(ct); + cairo_surface_flush(s); - GdkPixbuf* pixbuf = gdk_pixbuf_new_from_data( cairo_image_surface_get_data(s), - GDK_COLORSPACE_RGB, TRUE, 8, - preview_width, preview_height, cairo_image_surface_get_stride(s), - ink_cairo_pixbuf_cleanup, s); - convert_pixbuf_argb32_to_normal(pixbuf); - return pixbuf; + GdkPixbuf* pixbuf = ink_pixbuf_create_from_cairo_surface(s); + return pixbuf; } void SPDashSelector::on_selection () diff --git a/src/widgets/gradient-image.cpp b/src/widgets/gradient-image.cpp index 2d58355db..9a5dd4996 100644 --- a/src/widgets/gradient-image.cpp +++ b/src/widgets/gradient-image.cpp @@ -31,11 +31,11 @@ static void sp_gradient_image_size_request (GtkWidget *widget, GtkRequisition *r static void sp_gradient_image_destroy(GtkWidget *object); static void sp_gradient_image_get_preferred_width(GtkWidget *widget, gint *minimal_width, - gint *natural_width); + gint *natural_width); static void sp_gradient_image_get_preferred_height(GtkWidget *widget, gint *minimal_height, - gint *natural_height); + gint *natural_height); #else static void sp_gradient_image_destroy(GtkObject *object); static gboolean sp_gradient_image_expose(GtkWidget *widget, GdkEventExpose *event); @@ -50,53 +50,53 @@ static GtkWidgetClass *parent_class; GType sp_gradient_image_get_type(void) { - static GType type = 0; - if (!type) { - GTypeInfo info = { - sizeof (SPGradientImageClass), - NULL, NULL, - (GClassInitFunc) sp_gradient_image_class_init, - NULL, NULL, - sizeof (SPGradientImage), - 0, - (GInstanceInitFunc) sp_gradient_image_init, - NULL - }; - type = g_type_register_static (GTK_TYPE_WIDGET, "SPGradientImage", &info, (GTypeFlags)0); - } - return type; + static GType type = 0; + if (!type) { + GTypeInfo info = { + sizeof (SPGradientImageClass), + NULL, NULL, + (GClassInitFunc) sp_gradient_image_class_init, + NULL, NULL, + sizeof (SPGradientImage), + 0, + (GInstanceInitFunc) sp_gradient_image_init, + NULL + }; + type = g_type_register_static (GTK_TYPE_WIDGET, "SPGradientImage", &info, (GTypeFlags)0); + } + return type; } static void sp_gradient_image_class_init(SPGradientImageClass *klass) { - GtkWidgetClass *widget_class = GTK_WIDGET_CLASS(klass); - parent_class = GTK_WIDGET_CLASS(g_type_class_peek_parent (klass)); + GtkWidgetClass *widget_class = GTK_WIDGET_CLASS(klass); + parent_class = GTK_WIDGET_CLASS(g_type_class_peek_parent (klass)); #if GTK_CHECK_VERSION(3,0,0) -// GObjectClass *object_class = G_OBJECT_CLASS(klass); +// GObjectClass *object_class = G_OBJECT_CLASS(klass); - widget_class->get_preferred_width = sp_gradient_image_get_preferred_width; - widget_class->get_preferred_height = sp_gradient_image_get_preferred_height; - widget_class->draw = sp_gradient_image_draw; - widget_class->destroy = sp_gradient_image_destroy; + widget_class->get_preferred_width = sp_gradient_image_get_preferred_width; + widget_class->get_preferred_height = sp_gradient_image_get_preferred_height; + widget_class->draw = sp_gradient_image_draw; + widget_class->destroy = sp_gradient_image_destroy; #else - GtkObjectClass *object_class = GTK_OBJECT_CLASS(klass); + GtkObjectClass *object_class = GTK_OBJECT_CLASS(klass); - object_class->destroy = sp_gradient_image_destroy; - widget_class->size_request = sp_gradient_image_size_request; - widget_class->expose_event = sp_gradient_image_expose; + object_class->destroy = sp_gradient_image_destroy; + widget_class->size_request = sp_gradient_image_size_request; + widget_class->expose_event = sp_gradient_image_expose; #endif } static void sp_gradient_image_init (SPGradientImage *image) { - gtk_widget_set_has_window (GTK_WIDGET(image), FALSE); + gtk_widget_set_has_window (GTK_WIDGET(image), FALSE); - image->gradient = NULL; + image->gradient = NULL; - new (&image->release_connection) sigc::connection(); - new (&image->modified_connection) sigc::connection(); + new (&image->release_connection) sigc::connection(); + new (&image->modified_connection) sigc::connection(); } #if GTK_CHECK_VERSION(3,0,0) @@ -105,23 +105,23 @@ static void sp_gradient_image_destroy(GtkWidget *object) static void sp_gradient_image_destroy(GtkObject *object) #endif { - SPGradientImage *image = SP_GRADIENT_IMAGE (object); + SPGradientImage *image = SP_GRADIENT_IMAGE (object); - if (image->gradient) { - image->release_connection.disconnect(); - image->modified_connection.disconnect(); - image->gradient = NULL; - } + if (image->gradient) { + image->release_connection.disconnect(); + image->modified_connection.disconnect(); + image->gradient = NULL; + } - image->release_connection.~connection(); - image->modified_connection.~connection(); + image->release_connection.~connection(); + image->modified_connection.~connection(); #if GTK_CHECK_VERSION(3,0,0) - if (parent_class->destroy) - (* (parent_class)->destroy) (object); + if (parent_class->destroy) + (* (parent_class)->destroy) (object); #else - if ((GTK_OBJECT_CLASS(parent_class))->destroy) - (* (GTK_OBJECT_CLASS(parent_class))->destroy) (object); + if ((GTK_OBJECT_CLASS(parent_class))->destroy) + (* (GTK_OBJECT_CLASS(parent_class))->destroy) (object); #endif } @@ -134,36 +134,36 @@ static void sp_gradient_image_size_request(GtkWidget * /*widget*/, GtkRequisitio #if GTK_CHECK_VERSION(3,0,0) static void sp_gradient_image_get_preferred_width(GtkWidget *widget, gint *minimal_width, gint *natural_width) { - GtkRequisition requisition; - sp_gradient_image_size_request(widget, &requisition); - *minimal_width = *natural_width = requisition.width; + GtkRequisition requisition; + sp_gradient_image_size_request(widget, &requisition); + *minimal_width = *natural_width = requisition.width; } static void sp_gradient_image_get_preferred_height(GtkWidget *widget, gint *minimal_height, gint *natural_height) { - GtkRequisition requisition; - sp_gradient_image_size_request(widget, &requisition); - *minimal_height = *natural_height = requisition.height; + GtkRequisition requisition; + sp_gradient_image_size_request(widget, &requisition); + *minimal_height = *natural_height = requisition.height; } #endif #if !GTK_CHECK_VERSION(3,0,0) static gboolean sp_gradient_image_expose(GtkWidget *widget, GdkEventExpose *event) { - gboolean result = TRUE; - if(gtk_widget_is_drawable(widget)) { - cairo_t *ct = gdk_cairo_create(gtk_widget_get_window (widget)); - cairo_rectangle(ct, event->area.x, event->area.y, - event->area.width, event->area.height); - cairo_clip(ct); - GtkAllocation allocation; - gtk_widget_get_allocation(widget, &allocation); - cairo_translate(ct, allocation.x, allocation.y); - result = sp_gradient_image_draw(widget, ct); - cairo_destroy(ct); - } - - return result; + gboolean result = TRUE; + if(gtk_widget_is_drawable(widget)) { + cairo_t *ct = gdk_cairo_create(gtk_widget_get_window (widget)); + cairo_rectangle(ct, event->area.x, event->area.y, + event->area.width, event->area.height); + cairo_clip(ct); + GtkAllocation allocation; + gtk_widget_get_allocation(widget, &allocation); + cairo_translate(ct, allocation.x, allocation.y); + result = sp_gradient_image_draw(widget, ct); + cairo_destroy(ct); + } + + return result; } #endif @@ -179,7 +179,7 @@ static gboolean sp_gradient_image_draw(GtkWidget *widget, cairo_t *ct) cairo_paint(ct); cairo_pattern_destroy(check); - if (gr) { + if (gr) { cairo_pattern_t *p = sp_gradient_create_preview_pattern(gr, allocation.width); cairo_set_source(ct, p); cairo_paint(ct); @@ -192,11 +192,11 @@ static gboolean sp_gradient_image_draw(GtkWidget *widget, cairo_t *ct) GtkWidget * sp_gradient_image_new (SPGradient *gradient) { - SPGradientImage *image = SP_GRADIENT_IMAGE(g_object_new(SP_TYPE_GRADIENT_IMAGE, NULL)); + SPGradientImage *image = SP_GRADIENT_IMAGE(g_object_new(SP_TYPE_GRADIENT_IMAGE, NULL)); - sp_gradient_image_set_gradient (image, gradient); + sp_gradient_image_set_gradient (image, gradient); - return GTK_WIDGET(image); + return GTK_WIDGET(image); } GdkPixbuf* @@ -220,12 +220,8 @@ sp_gradient_to_pixbuf (SPGradient *gr, int width, int height) cairo_destroy(ct); cairo_surface_flush(s); - GdkPixbuf* pixbuf = gdk_pixbuf_new_from_data( cairo_image_surface_get_data(s), - GDK_COLORSPACE_RGB, TRUE, 8, - width, height, cairo_image_surface_get_stride(s), - ink_cairo_pixbuf_cleanup, s); - convert_pixbuf_argb32_to_normal(pixbuf); - + // no need to free s - the call below takes ownership + GdkPixbuf *pixbuf = ink_pixbuf_create_from_cairo_surface(s); return pixbuf; } @@ -233,44 +229,44 @@ sp_gradient_to_pixbuf (SPGradient *gr, int width, int height) void sp_gradient_image_set_gradient (SPGradientImage *image, SPGradient *gradient) { - if (image->gradient) { - image->release_connection.disconnect(); - image->modified_connection.disconnect(); - } + if (image->gradient) { + image->release_connection.disconnect(); + image->modified_connection.disconnect(); + } - image->gradient = gradient; + image->gradient = gradient; - if (gradient) { - image->release_connection = gradient->connectRelease(sigc::bind<1>(sigc::ptr_fun(&sp_gradient_image_gradient_release), image)); - image->modified_connection = gradient->connectModified(sigc::bind<2>(sigc::ptr_fun(&sp_gradient_image_gradient_modified), image)); - } + if (gradient) { + image->release_connection = gradient->connectRelease(sigc::bind<1>(sigc::ptr_fun(&sp_gradient_image_gradient_release), image)); + image->modified_connection = gradient->connectModified(sigc::bind<2>(sigc::ptr_fun(&sp_gradient_image_gradient_modified), image)); + } - sp_gradient_image_update (image); + sp_gradient_image_update (image); } static void sp_gradient_image_gradient_release (SPObject *, SPGradientImage *image) { - if (image->gradient) { - image->release_connection.disconnect(); - image->modified_connection.disconnect(); - } + if (image->gradient) { + image->release_connection.disconnect(); + image->modified_connection.disconnect(); + } - image->gradient = NULL; + image->gradient = NULL; - sp_gradient_image_update (image); + sp_gradient_image_update (image); } static void sp_gradient_image_gradient_modified (SPObject *, guint /*flags*/, SPGradientImage *image) { - sp_gradient_image_update (image); + sp_gradient_image_update (image); } static void sp_gradient_image_update (SPGradientImage *image) { - if (gtk_widget_is_drawable (GTK_WIDGET(image))) { - gtk_widget_queue_draw (GTK_WIDGET (image)); - } + if (gtk_widget_is_drawable (GTK_WIDGET(image))) { + gtk_widget_queue_draw (GTK_WIDGET (image)); + } } diff --git a/src/widgets/stroke-marker-selector.cpp b/src/widgets/stroke-marker-selector.cpp index 2d1c932d3..00b6b5c91 100644 --- a/src/widgets/stroke-marker-selector.cpp +++ b/src/widgets/stroke-marker-selector.cpp @@ -544,16 +544,16 @@ MarkerComboBox::create_marker_image(unsigned psize, gchar const *mname, gchar *cache_name = g_strconcat(combo_id, mname, NULL); Glib::ustring key = svg_preview_cache.cache_key(source->getURI(), cache_name, psize); g_free (cache_name); - Glib::RefPtr pixbuf = Glib::wrap(svg_preview_cache.get_preview_from_cache(key)); + GdkPixbuf *pixbuf = svg_preview_cache.get_preview_from_cache(key); // no ref created if (!pixbuf) { - pixbuf = Glib::wrap(render_pixbuf(drawing, 0.8, *dbox, psize)); - svg_preview_cache.set_preview_in_cache(key, pixbuf->gobj()); + pixbuf = render_pixbuf(drawing, 0.8, *dbox, psize); + svg_preview_cache.set_preview_in_cache(key, pixbuf); + g_object_unref(pixbuf); // reference is held by svg_preview_cache } // Create widget - Gtk::Image *pb = new Gtk::Image(pixbuf); - + Gtk::Image *pb = Glib::wrap(GTK_IMAGE(gtk_image_new_from_pixbuf(pixbuf))); return pb; } -- cgit v1.2.3 From 68830b1facc049966ecab3c7d2a0106e28c8dea7 Mon Sep 17 00:00:00 2001 From: Martin Owens Date: Fri, 13 Sep 2013 18:11:56 -0400 Subject: Fix the latest error with the adobe svg ns errors, boundry exceptions caused security failure. (bzr r12513) --- src/xml/repr-io.cpp | 82 ++++++++++++++++++++++++++++++++--------------------- 1 file changed, 49 insertions(+), 33 deletions(-) diff --git a/src/xml/repr-io.cpp b/src/xml/repr-io.cpp index c692e6509..f5a558607 100644 --- a/src/xml/repr-io.cpp +++ b/src/xml/repr-io.cpp @@ -98,10 +98,9 @@ public: } } - int setFile( char const * filename ); + int setFile( char const * filename, bool load_entities ); xmlDocPtr readXml(); - bool SystemCheck; // Checks for SYSTEM Entities static int readCb( void * context, char * buffer, int len ); static int closeCb( void * context ); @@ -115,16 +114,18 @@ private: FILE* fp; unsigned char firstFew[4]; int firstFewLen; + bool LoadEntities; // Checks for SYSTEM Entities (requires cached data) + std::string cachedData; + unsigned int cachedPos; Inkscape::URI dummy; Inkscape::IO::UriInputStream* instr; Inkscape::IO::GzipInputStream* gzin; }; -int XmlSource::setFile(char const *filename) +int XmlSource::setFile(char const *filename, bool load_entities=false) { int retVal = -1; - this->SystemCheck = false; this->filename = filename; fp = Inkscape::IO::fopen_utf8name(filename, "r"); @@ -178,7 +179,40 @@ int XmlSource::setFile(char const *filename) retVal = 0; // no error } } + if(load_entities) { + this->cachedData = std::string(""); + this->cachedPos = 0; + + // First get data from file in typical way (cache it all) + char *buffer = new char [4096]; + while(true) { + int len = this->read(buffer, 4096); + if(len <= 0) break; + buffer[len] = 0; + this->cachedData += buffer; + } + free(buffer); + + // Check for SYSTEM or PUBLIC entities and remove them from the cache + GMatchInfo *info; + gint start, end; + + GRegex *regex = g_regex_new( + "\\s]+\\s+(SYSTEM|PUBLIC\\s+\"[^>\"]+\")\\s+\"[^>\"]+\"\\s*>", + G_REGEX_CASELESS, G_REGEX_MATCH_NEWLINE_ANY, NULL); + + g_regex_match (regex, this->cachedData.c_str(), G_REGEX_MATCH_NEWLINE_ANY, &info); + while (g_match_info_matches (info)) { + if (g_match_info_fetch_pos (info, 1, &start, &end)) + this->cachedData.erase(start, end - start); + g_match_info_next (info, NULL); + } + g_match_info_unref(info); + g_regex_unref(regex); + } + // Do this after loading cache, so reads don't return cache to fill cache. + this->LoadEntities = load_entities; return retVal; } @@ -191,7 +225,7 @@ xmlDocPtr XmlSource::readXml() if (!allowNetAccess) parse_options |= XML_PARSE_NONET; // Allow NOENT only if we're filtering out SYSTEM and PUBLIC entities - if (SystemCheck) parse_options |= XML_PARSE_NOENT; + if (LoadEntities) parse_options |= XML_PARSE_NOENT; return xmlReadIO( readCb, closeCb, this, filename, getEncoding(), parse_options); @@ -204,31 +238,6 @@ int XmlSource::readCb( void * context, char * buffer, int len ) if ( context ) { XmlSource* self = static_cast(context); retVal = self->read( buffer, len ); - - if(self->SystemCheck) { - GMatchInfo *info; - gint start, end; - - GRegex *regex = g_regex_new( - "\\s]+\\s+(SYSTEM|PUBLIC\\s+\"[^>\"]+\")\\s+\"[^>\"]+\"\\s*>", - G_REGEX_CASELESS, G_REGEX_MATCH_NEWLINE_ANY, NULL); - - // Check for SYSTEM or PUBLIC entities and kill them with spaces - // Note: g_regex_replace does not modify buffer in place, this - // logic is used instead because we can just blank out the offending - // charicters in the right place without hurting the length. - g_regex_match (regex, buffer, G_REGEX_MATCH_NEWLINE_ANY, &info); - - while (g_match_info_matches (info)) { - if (g_match_info_fetch_pos (info, 1, &start, &end)) { - for (int x=start; x 0 ) { + if ( LoadEntities ) { + if (cachedPos >= cachedData.length()) { + return -1; + } else { + retVal = cachedData.copy(buffer, len, cachedPos); + cachedPos += retVal; + return retVal; // Do NOT continue. + } + } else if ( firstFewLen > 0 ) { int some = (len < firstFewLen) ? len : firstFewLen; memcpy( buffer, firstFew, some ); if ( len < firstFewLen ) { @@ -349,8 +366,7 @@ Document *sp_repr_read_file (const gchar * filename, const gchar *default_ns) // We try a system check version of load with NOENT for adobe if(rdoc && strcmp(rdoc->root()->name(), "ns:svg") == 0) { xmlFreeDoc( doc ); - src.setFile(filename); - src.SystemCheck = true; + src.setFile(filename, true); doc = src.readXml(); rdoc = sp_repr_do_read( doc, default_ns ); } -- cgit v1.2.3 From 9ea2da78029793bc772f9f57c4517f88e421edcc Mon Sep 17 00:00:00 2001 From: Martin Owens Date: Fri, 13 Sep 2013 20:45:20 -0400 Subject: Remove cc2.0 and 2.5 licenses (bzr r12514) --- share/branding/inkscape.svg | 24 +- share/examples/blend_modes.svg | 5449 +++++------------------------------ share/examples/lighting_filters.svg | 229 +- share/icons/inkscape.file.svg | 24 +- 4 files changed, 836 insertions(+), 4890 deletions(-) diff --git a/share/branding/inkscape.svg b/share/branding/inkscape.svg index 121bc3aef..617e66ef4 100644 --- a/share/branding/inkscape.svg +++ b/share/branding/inkscape.svg @@ -1,6 +1,7 @@ - - + +Inkscape Logo + @@ -170,15 +171,16 @@ http://andy.fitzsimon.com.au 2006 - + +Inkscape Logo - - - - - - - + + + + + + + @@ -208,7 +210,7 @@ - + diff --git a/share/examples/blend_modes.svg b/share/examples/blend_modes.svg index d0acf6e4c..6e229b1e5 100644 --- a/share/examples/blend_modes.svg +++ b/share/examples/blend_modes.svg @@ -1,4702 +1,753 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - Niko Kiirala <niko@kiirala.com> - - - Blending modes test - 2007-07-03 - - en - - - feBlend - blending modes - multiply - screen - darken - lighten - - - - - Copyright 2007 Niko Kiirala, licensed under Creative Commons by-sa 2.5 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Screen - Multiply - Normal - Multiply - Screen - Darken - Lighten - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Normal - Multiply - Screen - Darken - Lighten - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Normal - Multiply - Screen - Darken - Lighten - - - - - - - - Normal - Multiply - Screen - Darken - Lighten - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Normal - Multiply - Screen - Darken - Lighten - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Normal - Multiply - Screen - Darken - Lighten - - - - - - - - - - - - - - - - - - - - - - - - - Colour to white - Colour to transparent - - - - - - - - Normal - Multiply - Screen - Darken - Lighten - - Normal - Multiply - Screen - Darken - Lighten - - Normal - Multiply - Screen - Darken - Lighten - Colour to transparent (CMYK) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +image/svg+xml + + + +Niko Kiirala <niko@kiirala.com> + + +Blending modes test +2007-07-03 + +en + + +feBlend +blending modes +multiply +screen +darken +lighten + + + + +Copyright 2007 Niko Kiirala + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Screen +Multiply +Normal +Multiply +Screen +Darken +Lighten + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Normal +Multiply +Screen +Darken +Lighten + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Normal +Multiply +Screen +Darken +Lighten + + + + + + + +Normal +Multiply +Screen +Darken +Lighten + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Normal +Multiply +Screen +Darken +Lighten + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Normal +Multiply +Screen +Darken +Lighten + + + + + + + + + + + + + + + + + + + + + + + + +Colour to white +Colour to transparent + + + + + + + +Normal +Multiply +Screen +Darken +Lighten + +Normal +Multiply +Screen +Darken +Lighten + +Normal +Multiply +Screen +Darken +Lighten +Colour to transparent (CMYK) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/share/examples/lighting_filters.svg b/share/examples/lighting_filters.svg index d1de369be..ec2cac8fa 100644 --- a/share/examples/lighting_filters.svg +++ b/share/examples/lighting_filters.svg @@ -1,172 +1,63 @@ - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - Lighting effects example - 25 July 2007 - - - Niko Kiirala - - - - - Copyright 2007 Niko Kiirala, licensed under Creatice Commons by-sa 2.5 - - - - - feDiffuseLighting - feSpecularLighting - light - lighting effects - - - An example, how to make metallic-looking objects with SVG lighting effects - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + +image/svg+xml + + +Lighting effects example +25 July 2007 + + +Niko Kiirala + + + + +Copyright 2007 Niko Kiirala + + + + +feDiffuseLighting +feSpecularLighting +light +lighting effects + + +An example, how to make metallic-looking objects with SVG lighting effects + + + + + + + + + + + + + + + + diff --git a/share/icons/inkscape.file.svg b/share/icons/inkscape.file.svg index 8d52ad39b..5803d94bf 100644 --- a/share/icons/inkscape.file.svg +++ b/share/icons/inkscape.file.svg @@ -1,6 +1,7 @@ - - + +Inkscape Filetype Icon + @@ -126,15 +127,16 @@ http://andy.fitzsimon.com.au 2006 - + +Inkscape Filetype Icon - - - - - - - + + + + + + + @@ -158,7 +160,7 @@ - + -- cgit v1.2.3 From 28840aad6554556231882cfd8c4fd85ede197a24 Mon Sep 17 00:00:00 2001 From: Krzysztof Kosi??ski Date: Sat, 14 Sep 2013 02:53:34 +0200 Subject: Fix serious bug in recent GdkPixbuf / Cairo interop rework (bzr r12515) --- src/display/cairo-utils.cpp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/display/cairo-utils.cpp b/src/display/cairo-utils.cpp index 2726c9d5a..2d94d024f 100644 --- a/src/display/cairo-utils.cpp +++ b/src/display/cairo-utils.cpp @@ -420,10 +420,9 @@ ink_cairo_set_source_pixbuf(cairo_t *ct, GdkPixbuf *pb, double x, double y) * Converts the pixbuf to Cairo pixel format and returns an image surface * which can be used as a source. * - * The returned surface should be unreferenced - * with cairo_surface_destroy() once it's no longer needed. + * The returned surface is owned by the GdkPixbuf and should not be freed. * Calling this function causes the pixbuf to be unsuitable for use - * with GTK drawing functions. + * with GTK drawing functions until ink_pixbuf_ensure_normal() is called. */ cairo_surface_t * ink_cairo_surface_get_for_pixbuf(GdkPixbuf *pb) @@ -440,7 +439,7 @@ ink_cairo_surface_get_for_pixbuf(GdkPixbuf *pb) int stride = gdk_pixbuf_get_rowstride(pb); // create a surface that stores the data - cairo_surface_t *pbs = cairo_image_surface_create_for_data( + pbs = cairo_image_surface_create_for_data( data, CAIRO_FORMAT_ARGB32, w, h, stride); g_object_set_data_full(G_OBJECT(pb), "cairo_surface", pbs, (GDestroyNotify) cairo_surface_destroy); -- cgit v1.2.3 From 35dc2e5a640375d51119f2051a240454b5f5b8c8 Mon Sep 17 00:00:00 2001 From: Krzysztof Kosi??ski Date: Sat, 14 Sep 2013 03:59:43 +0200 Subject: Do not recompress images when embedding and generating PDFs. Fixes blocker bug #871563. Fixed bugs: - https://launchpad.net/bugs/871563 (bzr r12516) --- src/display/cairo-utils.cpp | 5 + src/display/drawing-image.cpp | 4 +- src/display/nr-filter-image.cpp | 2 + src/extension/internal/gdkpixbuf-input.cpp | 81 ++-- src/extension/internal/image-resolution.cpp | 18 +- src/selection-chemistry.cpp | 3 +- src/sp-image.cpp | 566 ++++++---------------------- src/sp-image.h | 2 +- 8 files changed, 162 insertions(+), 519 deletions(-) diff --git a/src/display/cairo-utils.cpp b/src/display/cairo-utils.cpp index 2d94d024f..755553033 100644 --- a/src/display/cairo-utils.cpp +++ b/src/display/cairo-utils.cpp @@ -423,6 +423,11 @@ ink_cairo_set_source_pixbuf(cairo_t *ct, GdkPixbuf *pb, double x, double y) * The returned surface is owned by the GdkPixbuf and should not be freed. * Calling this function causes the pixbuf to be unsuitable for use * with GTK drawing functions until ink_pixbuf_ensure_normal() is called. + * + * @bug You have to call g_object_set_data(G_OBJECT(pb), "cairo_surface", NULL) + * when unrefing the last reference to the pixbuf. Otherwise there will be + * crashes, because cairo_surface_destroy is called after the pixbuf data + * is already freed. */ cairo_surface_t * ink_cairo_surface_get_for_pixbuf(GdkPixbuf *pb) diff --git a/src/display/drawing-image.cpp b/src/display/drawing-image.cpp index b94d48774..46f066b8e 100644 --- a/src/display/drawing-image.cpp +++ b/src/display/drawing-image.cpp @@ -46,7 +46,7 @@ DrawingImage::setARGB32Pixbuf(GdkPixbuf *pb) } if (_pixbuf != NULL) { g_object_unref(_pixbuf); - cairo_surface_destroy(_surface); + // unrefing the pixbuf also destroys surface } _pixbuf = pb; _surface = pb ? ink_cairo_surface_get_for_pixbuf(pb) : NULL; @@ -206,7 +206,7 @@ unsigned DrawingImage::_renderItem(DrawingContext &ct, Geom::IntRect const &/*ar int orgstride = cairo_image_surface_get_stride(_surface); int newstride = cairo_image_surface_get_stride(_new_surface); - cairo_surface_flush(_surface); + //cairo_surface_flush(_surface); cairo_surface_flush(_new_surface); for(int y=0; ygobj()), "cairo_surface", NULL); } void FilterImage::render_cairo(FilterSlot &slot) @@ -301,6 +302,7 @@ void FilterImage::set_href(const gchar *href){ if (feImageHref) g_free (feImageHref); feImageHref = (href) ? g_strdup (href) : NULL; + g_object_set_data(G_OBJECT(image->gobj()), "cairo_surface", NULL); image.reset(); broken_ref = false; } diff --git a/src/extension/internal/gdkpixbuf-input.cpp b/src/extension/internal/gdkpixbuf-input.cpp index 994258ccc..117c2fe39 100644 --- a/src/extension/internal/gdkpixbuf-input.cpp +++ b/src/extension/internal/gdkpixbuf-input.cpp @@ -19,23 +19,18 @@ namespace Inkscape { namespace IO { -GdkPixbuf* pixbuf_new_from_file( char const *utf8name, GError **error ); +// this is defined in sp-image.cpp +GdkPixbuf* pixbuf_new_from_file(char const *filename, time_t &modTime, gchar*& pixPath); } namespace Extension { namespace Internal { -static std::set create_lossy_set() -{ - std::set lossy; - lossy.insert(".jpg"); - lossy.insert(".jpeg"); - return lossy; -} - SPDocument * GdkpixbufInput::open(Inkscape::Extension::Input *mod, char const *uri) { + // determine whether the image should be embedded + // TODO: this logic seems very wrong bool embed = false; Inkscape::Preferences *prefs = Inkscape::Preferences::get(); Glib::ustring attr = prefs->getString("/dialogs/import/link"); @@ -52,27 +47,14 @@ GdkpixbufInput::open(Inkscape::Extension::Input *mod, char const *uri) } SPDocument *doc = NULL; - GdkPixbuf *pb = Inkscape::IO::pixbuf_new_from_file( uri, NULL ); - static std::set lossy = create_lossy_set(); - - if (pb) { /* We are readable */ - // TODO revisit: bool is_lossy; - Glib::ustring mime_type, ext; - Glib::ustring u = uri; - std::size_t dotpos = u.rfind('.'); - if (dotpos != Glib::ustring::npos) { - ext = u.substr(dotpos, Glib::ustring::npos); - } + gchar *pixpath = NULL; + time_t dummy; + GdkPixbuf *pb = Inkscape::IO::pixbuf_new_from_file(uri, dummy, pixpath); - // HACK: replace with something better based on GIO - if (!ext.empty() && lossy.find(ext) != lossy.end()) { - // TODO revisit: is_lossy = true; - mime_type = "image/jpeg"; - } else { - // TODO revisit: is_lossy = false; - mime_type = "image/png"; - } + // TODO: the pixbuf is created again from the base64-encoded attribute in SPImage. + // Find a way to create the pixbuf only once. + if (pb) { doc = SPDocument::createNewDoc(NULL, TRUE, TRUE); bool saved = DocumentUndo::getUndoSensitive(doc); DocumentUndo::setUndoSensitive(doc, false); // no need to undo in this temporary document @@ -85,40 +67,22 @@ GdkpixbufInput::open(Inkscape::Extension::Input *mod, char const *uri) double xscale = 1; double yscale = 1; - gchar const *str = gdk_pixbuf_get_option( pb, "Inkscape::DpiX" ); - if ( str ) { - gint dpi = atoi(str); - if ( dpi > 0 && dpi != 72 ) { - xscale = 72.0 / (double)dpi; - } - } else { - if (!ir && !forcexdpi) - ir = new ImageResolution(uri); - if (ir && ir->ok()) - xscale = 900.0 / floor(10.*ir->x() + .5); // round-off to 0.1 dpi - else - xscale = 90.0 / defaultxdpi; - } - width *= xscale; - str = gdk_pixbuf_get_option( pb, "Inkscape::DpiY" ); - if ( str ) { - gint dpi = atoi(str); - if ( dpi > 0 && dpi != 72 ) { - yscale = 72.0 / (double)dpi; - } + if (!ir && !forcexdpi) { + ir = new ImageResolution(uri); + } + if (ir && ir->ok()) { + xscale = 900.0 / floor(10.*ir->x() + .5); // round-off to 0.1 dpi + yscale = 900.0 / floor(10.*ir->y() + .5); } else { - if (!ir && !forcexdpi) - ir = new ImageResolution(uri); - if (ir && ir->ok()) - yscale = 900.0 / floor(10.*ir->y() + .5); // round-off to 0.1 dpi - else - yscale = 90.0 / defaultxdpi; + xscale = 90.0 / defaultxdpi; + yscale = 90.0 / defaultxdpi; } + + width *= xscale; height *= yscale; - if (ir) - delete ir; + delete ir; // deleting NULL is safe // Create image node Inkscape::XML::Document *xml_doc = doc->getReprDoc(); @@ -127,7 +91,7 @@ GdkpixbufInput::open(Inkscape::Extension::Input *mod, char const *uri) sp_repr_set_svg_double(image_node, "height", height); if (embed) { - sp_embed_image(image_node, pb, mime_type); + sp_embed_image(image_node, pb); } else { // convert filename to uri gchar* _uri = g_filename_to_uri(uri, NULL, NULL); @@ -139,6 +103,7 @@ GdkpixbufInput::open(Inkscape::Extension::Input *mod, char const *uri) } } + g_object_set_data(G_OBJECT(pb), "cairo_surface", NULL); g_object_unref(pb); // Add it to the current layer diff --git a/src/extension/internal/image-resolution.cpp b/src/extension/internal/image-resolution.cpp index 3c254a59c..a9d33e831 100644 --- a/src/extension/internal/image-resolution.cpp +++ b/src/extension/internal/image-resolution.cpp @@ -14,13 +14,21 @@ #include "image-resolution.h" #define IR_TRY_PNG 1 +#include + #ifdef HAVE_EXIF -#define IR_TRY_EXIF 1 +#include +#include #endif + #define IR_TRY_EXIV 0 + #ifdef HAVE_JPEG #define IR_TRY_JFIF 1 +#include +#include #endif + #ifdef WITH_IMAGE_MAGICK #include #endif @@ -62,8 +70,6 @@ double ImageResolution::y() const { #if IR_TRY_PNG - -#include static bool haspngheader(FILE *fp) { unsigned char header[8]; @@ -133,9 +139,6 @@ void ImageResolution::readpng(char const *) { #if IR_TRY_EXIF -#include -#include - static double exifDouble(ExifEntry *entry, ExifByteOrder byte_order) { switch (entry->format) { case EXIF_FORMAT_BYTE: { @@ -264,9 +267,6 @@ void ImageResolution::readexiv(char const *) { #if IR_TRY_JFIF -#include -#include - static void irjfif_error_exit(j_common_ptr cinfo) { longjmp(*(jmp_buf*)cinfo->client_data, 1); } diff --git a/src/selection-chemistry.cpp b/src/selection-chemistry.cpp index 5976555f4..868f5a35c 100644 --- a/src/selection-chemistry.cpp +++ b/src/selection-chemistry.cpp @@ -3457,6 +3457,7 @@ void sp_selection_create_bitmap_copy(SPDesktop *desktop) } t = Geom::Scale(1, -1) * Geom::Translate(shift_x, shift_y) * eek.inverse(); /// @fixme hardcoded doc2dt transform? + // TODO: avoid roundtrip via file // Do the export sp_export_png_file(document, filepath, bbox->min()[Geom::X], bbox->min()[Geom::Y], @@ -3483,7 +3484,7 @@ void sp_selection_create_bitmap_copy(SPDesktop *desktop) if (pb) { // Create the repr for the image Inkscape::XML::Node * repr = xml_doc->createElement("svg:image"); - sp_embed_image(repr, pb, "image/png"); + sp_embed_image(repr, pb); if (res == Inkscape::Util::Quantity::convert(1, "in", "px")) { // for default 90 dpi, snap it to pixel grid sp_repr_set_svg_double(repr, "width", width); sp_repr_set_svg_double(repr, "height", height); diff --git a/src/sp-image.cpp b/src/sp-image.cpp index a082e2802..724fa0ad8 100644 --- a/src/sp-image.cpp +++ b/src/sp-image.cpp @@ -96,12 +96,7 @@ static void sp_image_update_arenaitem (SPImage *img, Inkscape::DrawingImage *ai) static void sp_image_update_canvas_image (SPImage *image); static GdkPixbuf * sp_image_repr_read_dataURI (const gchar * uri_data); static GdkPixbuf * sp_image_repr_read_b64 (const gchar * uri_data); - -extern "C" -{ - void user_read_data( png_structp png_ptr, png_bytep data, png_size_t length ); -} - +static void pixbuf_set_mime_data(GdkPixbuf *pb, guchar *data, gsize len, GdkPixbufFormat *fmt); #ifdef DEBUG_LCMS extern guint update_in_progress; @@ -138,286 +133,15 @@ extern guint update_in_progress; namespace Inkscape { namespace IO { -class PushPull -{ -public: - gboolean first; - FILE* fp; - guchar* scratch; - gsize size; - gsize used; - gsize offset; - GdkPixbufLoader *loader; - - PushPull() : first(TRUE), - fp(0), - scratch(0), - size(0), - used(0), - offset(0), - loader(0) {}; - - gboolean readMore() - { - gboolean good = FALSE; - if ( offset ) - { - g_memmove( scratch, scratch + offset, used - offset ); - used -= offset; - offset = 0; - } - if ( used < size ) - { - gsize space = size - used; - gsize got = fread( scratch + used, 1, space, fp ); - if ( got ) - { - if ( loader ) - { - GError *err = NULL; - //g_message( " __read %d bytes", (int)got ); - if ( !gdk_pixbuf_loader_write( loader, scratch + used, got, &err ) ) - { - //g_message("_error writing pixbuf data"); - } - } - - used += got; - good = TRUE; - } - else - { - good = FALSE; - } - } - return good; - } - - gsize available() const - { - return (used - offset); - } - - gsize readOut( gpointer data, gsize length ) - { - gsize giving = available(); - if ( length < giving ) - { - giving = length; - } - g_memmove( data, scratch + offset, giving ); - offset += giving; - if ( offset >= used ) - { - offset = 0; - used = 0; - } - return giving; - } - - void clear() - { - offset = 0; - used = 0; - } - -private: - PushPull& operator = (const PushPull& other); - PushPull(const PushPull& other); -}; - -static void user_read_data( png_structp png_ptr, png_bytep data, png_size_t length ) -{ -// g_message( "user_read_data(%d)", length ); - - PushPull* youme = (PushPull*)png_get_io_ptr(png_ptr); - - gsize filled = 0; - gboolean canRead = TRUE; - - while ( filled < length && canRead ) - { - gsize some = youme->readOut( data + filled, length - filled ); - filled += some; - if ( filled < length ) - { - canRead &= youme->readMore(); - } - } -// g_message("things out"); -} - - -static bool readPngAndHeaders( PushPull &youme, gint & dpiX, gint & dpiY ) -{ - bool good = true; - - gboolean isPng = !png_sig_cmp( youme.scratch + youme.offset, 0, youme.available() ); - //g_message( " png? %s", (isPng ? "Yes":"No") ); - if ( isPng ) { - png_structp pngPtr = png_create_read_struct( PNG_LIBPNG_VER_STRING, - 0, //(png_voidp)user_error_ptr, - 0, //user_error_fn, - 0 //user_warning_fn - ); - png_infop infoPtr = pngPtr ? png_create_info_struct( pngPtr ) : 0; - - if ( pngPtr && infoPtr ) { - if ( setjmp(png_jmpbuf(pngPtr)) ) { - // libpng calls longjmp to return here if an error occurs. - good = false; - } - - if (good) { - png_set_read_fn( pngPtr, &youme, user_read_data ); - //g_message( "In" ); - - //png_read_info( pngPtr, infoPtr ); - png_read_png( pngPtr, infoPtr, PNG_TRANSFORM_IDENTITY, 0 ); - - //g_message("out"); - - /* - if ( png_get_valid( pngPtr, infoPtr, PNG_INFO_pHYs ) ) - { - g_message("pHYs chunk now valid" ); - } - if ( png_get_valid( pngPtr, infoPtr, PNG_INFO_sCAL ) ) - { - g_message("sCAL chunk now valid" ); - } - */ - - png_uint_32 res_x = 0; - png_uint_32 res_y = 0; - int unit_type = 0; - if ( png_get_pHYs( pngPtr, infoPtr, &res_x, &res_y, &unit_type) ) { -// g_message( "pHYs yes (%d, %d) %d (%s)", (int)res_x, (int)res_y, unit_type, -// (unit_type == 1? "per meter" : "unknown") -// ); - -// g_message( " dpi: (%d, %d)", -// (int)(0.5 + ((double)res_x)/39.37), -// (int)(0.5 + ((double)res_y)/39.37) ); - if ( unit_type == PNG_RESOLUTION_METER ) - { - // TODO come up with a more accurate DPI setting - dpiX = (int)(0.5 + ((double)res_x)/39.37); - dpiY = (int)(0.5 + ((double)res_y)/39.37); - } - } else { -// g_message( "pHYs no" ); - } - -/* - double width = 0; - double height = 0; - int unit = 0; - if ( png_get_sCAL(pngPtr, infoPtr, &unit, &width, &height) ) - { - gchar* vals[] = { - "unknown", // PNG_SCALE_UNKNOWN - "meter", // PNG_SCALE_METER - "radian", // PNG_SCALE_RADIAN - "last", // - NULL - }; - - g_message( "sCAL: (%f, %f) %d (%s)", - width, height, unit, - ((unit >= 0 && unit < 3) ? vals[unit]:"???") - ); - } -*/ - -#if defined(PNG_sRGB_SUPPORTED) - { - int intent = 0; - if ( png_get_sRGB(pngPtr, infoPtr, &intent) ) { -// g_message("Found an sRGB png chunk"); - } - } -#endif // defined(PNG_sRGB_SUPPORTED) - -#if defined(PNG_cHRM_SUPPORTED) - { - double white_x = 0; - double white_y = 0; - double red_x = 0; - double red_y = 0; - double green_x = 0; - double green_y = 0; - double blue_x = 0; - double blue_y = 0; - - if ( png_get_cHRM(pngPtr, infoPtr, - &white_x, &white_y, - &red_x, &red_y, - &green_x, &green_y, - &blue_x, &blue_y) ) { -// g_message("Found a cHRM png chunk"); - } - } -#endif // defined(PNG_cHRM_SUPPORTED) - -#if defined(PNG_gAMA_SUPPORTED) - { - double file_gamma = 0; - if ( png_get_gAMA(pngPtr, infoPtr, &file_gamma) ) { -// g_message("Found a gAMA png chunk"); - } - } -#endif // defined(PNG_gAMA_SUPPORTED) - -#if defined(PNG_iCCP_SUPPORTED) - { - png_charp name = 0; - int compression_type = 0; -#if (PNG_LIBPNG_VER < 10500) - png_charp profile = 0; -#else - png_bytep profile = 0; -#endif - png_uint_32 proflen = 0; - if ( png_get_iCCP(pngPtr, infoPtr, &name, &compression_type, &profile, &proflen) ) { -// g_message("Found an iCCP chunk named [%s] with %d bytes and comp %d", name, proflen, compression_type); - } - } -#endif // defined(PNG_iCCP_SUPPORTED) - - } - } else { - g_message("Error when creating PNG read struct"); - } - - // now clean it up. - if (pngPtr && infoPtr) { - png_destroy_read_struct( &pngPtr, &infoPtr, 0 ); - pngPtr = 0; - infoPtr = 0; - } else if (pngPtr) { - png_destroy_read_struct( &pngPtr, 0, 0 ); - pngPtr = 0; - } - } else { - good = false; // Was not a png file - } - - return good; -} - -GdkPixbuf* pixbuf_new_from_file( const char *filename, time_t &modTime, gchar*& pixPath, GError **/*error*/ ) +GdkPixbuf* pixbuf_new_from_file(const char *filename, time_t &modTime, gchar*& pixPath) { GdkPixbuf* buf = NULL; - PushPull youme; - gint dpiX = 0; - gint dpiY = 0; modTime = 0; if ( pixPath ) { g_free(pixPath); pixPath = NULL; } - + //test correctness of filename if (!g_file_test (filename, G_FILE_TEST_EXISTS)){ return NULL; @@ -425,95 +149,43 @@ GdkPixbuf* pixbuf_new_from_file( const char *filename, time_t &modTime, gchar*& struct stat stdir; int val = g_stat(filename, &stdir); if (stdir.st_mode & S_IFDIR){ - //filename is not correct: it is a directory name and hence further code can not return valid results + g_warning("Linked image file %s is a directory", filename); return NULL; } - dump_fopen_call( filename, "pixbuf_new_from_file" ); - FILE* fp = fopen_utf8name( filename, "r" ); - if ( fp ) - { - { - // struct stat st; - // memset(&st, 0, sizeof(st)); - // int val = g_stat(filename, &st); - if ( !val ) { - modTime = stdir.st_mtime;//st.st_mtime; - pixPath = g_strdup(filename); - } + // we need to load the entire pixbuf into memory + gchar *data = NULL; + gsize len = 0; + + if (g_file_get_contents(filename, &data, &len, NULL)) { + if (!val) { + modTime = stdir.st_mtime; + pixPath = g_strdup(filename); } GdkPixbufLoader *loader = gdk_pixbuf_loader_new(); - if ( loader ) - { - GError *err = NULL; - - // short buffer - guchar scratch[1024]; - gboolean latter = FALSE; - - youme.fp = fp; - youme.scratch = scratch; - youme.size = sizeof(scratch); - youme.used = 0; - youme.offset = 0; - youme.loader = loader; - - while ( !feof(fp) ) - { - if ( youme.readMore() ) { - if ( youme.first ) { - //g_message( "First data chunk" ); - youme.first = FALSE; - if (readPngAndHeaders(youme, dpiX, dpiY)) - { - // TODO set the dpi to be read elsewhere - } - } else if ( !latter ) { - latter = TRUE; - } - // Now clear out the buffer so we can read more. - // (dumping out unused) - youme.clear(); - } - } - - gboolean ok = gdk_pixbuf_loader_close(loader, &err); - if ( ok ) { - buf = gdk_pixbuf_loader_get_pixbuf( loader ); - if ( buf ) { - g_object_ref(buf); - } - } else { - // do something - g_message("error loading pixbuf at close"); - } - - g_object_unref(loader); + gdk_pixbuf_loader_write(loader, (guchar *) data, len, NULL); + gdk_pixbuf_loader_close(loader, NULL); + + buf = gdk_pixbuf_loader_get_pixbuf(loader); + if (buf) { + g_object_ref(buf); + buf = sp_image_pixbuf_force_rgba(buf); + pixbuf_set_mime_data(buf, (guchar *) data, len, gdk_pixbuf_loader_get_format(loader)); } else { - g_message("error when creating pixbuf loader"); + g_free(data); + g_warning("Error loading pixbuf"); } - fclose( fp ); - fp = 0; + + // TODO: we could also read DPI, ICC profile, gamma correction, and other information + // from the file. This can be done by using format-specific libraries e.g. libpng. } else { - g_warning ("Unable to open linked file: %s", filename); + g_warning("Unable to open linked file: %s", filename); } return buf; } -GdkPixbuf* pixbuf_new_from_file( const char *filename, GError **error ) -{ - time_t modTime = 0; - gchar* pixPath = 0; - GdkPixbuf* result = pixbuf_new_from_file( filename, modTime, pixPath, error ); - if (pixPath) { - g_free(pixPath); - } - return result; -} - - } } @@ -594,6 +266,7 @@ static void sp_image_release( SPObject *object ) } if (image->pixbuf) { + g_object_set_data(G_OBJECT(image->pixbuf), "cairo_surface", NULL); g_object_unref (image->pixbuf); image->pixbuf = NULL; } @@ -775,7 +448,6 @@ static void sp_image_update( SPObject *object, SPCtx *ctx, unsigned int flags ) object->getRepr()->attribute("sodipodi:absref"), doc->getBase()); if (pixbuf) { - pixbuf = sp_image_pixbuf_force_rgba (pixbuf); // BLIP #if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2) if ( image->color_profile ) @@ -843,8 +515,6 @@ static void sp_image_update( SPObject *object, SPCtx *ctx, unsigned int flags ) #endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2) image->pixbuf = pixbuf; - // used here for the side-effect of converting to ARGB32 - ink_cairo_surface_get_for_pixbuf(image->pixbuf); } } } @@ -1103,13 +773,14 @@ GdkPixbuf *sp_image_repr_read_image( time_t& modTime, char*& pixPath, const gcha pixPath = 0; } - const gchar *filename = href; + gchar const *filename = href; + if (filename != NULL) { if (strncmp (filename,"file:",5) == 0) { gchar *fullname = g_filename_from_uri(filename, NULL, NULL); if (fullname) { - // TODO check this. Was doing a UTF-8 to filename conversion here. - pixbuf = Inkscape::IO::pixbuf_new_from_file (fullname, modTime, pixPath, NULL); + pixbuf = Inkscape::IO::pixbuf_new_from_file(fullname, modTime, pixPath); + g_free(fullname); if (pixbuf != NULL) { return pixbuf; } @@ -1135,7 +806,7 @@ GdkPixbuf *sp_image_repr_read_image( time_t& modTime, char*& pixPath, const gcha // different dir) or unset (when doc is not saved yet), so we check for base+href existence first, // and if it fails, we also try to use bare href regardless of its g_path_is_absolute if (g_file_test (fullname, G_FILE_TEST_EXISTS) && !g_file_test (fullname, G_FILE_TEST_IS_DIR)) { - pixbuf = Inkscape::IO::pixbuf_new_from_file( fullname, modTime, pixPath, NULL ); + pixbuf = Inkscape::IO::pixbuf_new_from_file(fullname, modTime, pixPath); g_free (fullname); if (pixbuf != NULL) { return pixbuf; @@ -1145,7 +816,7 @@ GdkPixbuf *sp_image_repr_read_image( time_t& modTime, char*& pixPath, const gcha /* try filename as absolute */ if (g_file_test (filename, G_FILE_TEST_EXISTS) && !g_file_test (filename, G_FILE_TEST_IS_DIR)) { - pixbuf = Inkscape::IO::pixbuf_new_from_file( filename, modTime, pixPath, NULL ); + pixbuf = Inkscape::IO::pixbuf_new_from_file(filename, modTime, pixPath); if (pixbuf != NULL) { return pixbuf; } @@ -1163,13 +834,13 @@ GdkPixbuf *sp_image_repr_read_image( time_t& modTime, char*& pixPath, const gcha g_warning ("xlink:href did not resolve to a valid image file, now trying sodipodi:absref=\"%s\"", absref); } - pixbuf = Inkscape::IO::pixbuf_new_from_file( filename, modTime, pixPath, NULL ); + pixbuf = Inkscape::IO::pixbuf_new_from_file(filename, modTime, pixPath); if (pixbuf != NULL) { return pixbuf; } } /* Nope: We do not find any valid pixmap file :-( */ - pixbuf = gdk_pixbuf_new_from_xpm_data ((const gchar **) brokenimage_xpm); + pixbuf = gdk_pixbuf_new_from_xpm_data((const gchar **) brokenimage_xpm); /* It should be included xpm, so if it still does not does load, */ /* our libraries are broken */ @@ -1342,82 +1013,57 @@ static GdkPixbuf *sp_image_repr_read_dataURI( const gchar * uri_data ) return pixbuf; } -static GdkPixbuf *sp_image_repr_read_b64( const gchar * uri_data ) +static GdkPixbuf *sp_image_repr_read_b64(gchar const *uri_data) { - GdkPixbuf * pixbuf = NULL; - - static const gchar B64[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; - + GdkPixbuf *pixbuf = NULL; GdkPixbufLoader *loader = gdk_pixbuf_loader_new(); - if (loader) { - bool eos = false; - bool failed = false; - const gchar* btr = uri_data; - gchar ud[4]; - guchar bd[57]; - - while (!eos) { - gint ell = 0; - for (gint j = 0; j < 19; j++) { - gint len = 0; - for (gint k = 0; k < 4; k++) { - while (isspace ((int) (*btr))) { - if ((*btr) == '\0') break; - btr++; - } - if (eos) { - ud[k] = 0; - continue; - } - if (((*btr) == '\0') || ((*btr) == '=')) { - eos = true; - ud[k] = 0; - continue; - } - ud[k] = 64; - for (gint b = 0; b < 64; b++) { /* There must a faster way to do this... ?? */ - if (B64[b] == (*btr)) { - ud[k] = (gchar) b; - break; - } - } - if (ud[k] == 64) { /* data corruption ?? */ - eos = true; - ud[k] = 0; - continue; - } - btr++; - len++; - } - guint32 bits = (guint32) ud[0]; - bits = (bits << 6) | (guint32) ud[1]; - bits = (bits << 6) | (guint32) ud[2]; - bits = (bits << 6) | (guint32) ud[3]; - bd[ell++] = (guchar) ((bits & 0xff0000) >> 16); - if (len > 2) { - bd[ell++] = (guchar) ((bits & 0xff00) >> 8); - } - if (len > 3) { - bd[ell++] = (guchar) (bits & 0xff); - } - } - if (!gdk_pixbuf_loader_write (loader, (const guchar *) bd, (size_t) ell, NULL)) { - failed = true; - break; - } - } + if (!loader) return NULL; - gdk_pixbuf_loader_close (loader, NULL); + gsize decoded_len = 0; + guchar *decoded = g_base64_decode(uri_data, &decoded_len); - if (!failed) { - pixbuf = gdk_pixbuf_loader_get_pixbuf (loader); - } + if (gdk_pixbuf_loader_write(loader, decoded, decoded_len, NULL)) { + gdk_pixbuf_loader_close(loader, NULL); + pixbuf = gdk_pixbuf_loader_get_pixbuf(loader); + g_object_ref(pixbuf); + pixbuf = sp_image_pixbuf_force_rgba(pixbuf); + pixbuf_set_mime_data(pixbuf, decoded, decoded_len, gdk_pixbuf_loader_get_format(loader)); + } else { + g_free(decoded); } + g_object_unref(loader); return pixbuf; } +// takes ownership of passed data +static void pixbuf_set_mime_data(GdkPixbuf *pb, guchar *data, gsize len, GdkPixbufFormat *fmt) +{ + cairo_surface_t *s = ink_cairo_surface_get_for_pixbuf(pb); + + gchar const *mimetype = NULL; + gchar *fmt_name = gdk_pixbuf_format_get_name(fmt); + Glib::ustring name = fmt_name; + g_free(fmt_name); + + if (name == "jpeg") { + mimetype = CAIRO_MIME_TYPE_JPEG; + } else if (name == "jpeg2000") { + mimetype = CAIRO_MIME_TYPE_JP2; + } else if (name == "png") { + mimetype = CAIRO_MIME_TYPE_PNG; + } + + if (mimetype != NULL) { + cairo_surface_set_mime_data(s, mimetype, data, len, g_free, data); + //g_message("Setting Cairo MIME data: %s", mimetype); + } else { + g_free(data); + //g_message("Not setting Cairo MIME data: unknown format %s", name.c_str()); + } +} + static void sp_image_set_curve( SPImage *image ) { //create a curve at the image's boundary for snapping @@ -1453,41 +1099,65 @@ SPCurve *sp_image_get_curve( SPImage *image ) return result; } -void sp_embed_image( Inkscape::XML::Node *image_node, GdkPixbuf *pb, Glib::ustring const &mime_in ) +void sp_embed_image(Inkscape::XML::Node *image_node, GdkPixbuf *pb) { - Glib::ustring format, mime; - if (mime_in == "image/jpeg") { - mime = mime_in; - format = "jpeg"; - } else { - mime = "image/png"; - format = "png"; + static gchar const *mimetypes[] = { + CAIRO_MIME_TYPE_JPEG, CAIRO_MIME_TYPE_JP2, CAIRO_MIME_TYPE_PNG, NULL }; + static guint mimetypes_len = g_strv_length(const_cast(mimetypes)); + + bool free_data = false; + + // check whether the pixbuf has MIME data + guchar *data = NULL; + gsize len = 0; + gchar const *data_mimetype = NULL; + + cairo_surface_t *s = reinterpret_cast(g_object_get_data(G_OBJECT(pb), "cairo_surface")); + if (s) { + for (guint i = 0; i < mimetypes_len; ++i) { + cairo_surface_get_mime_data(s, mimetypes[i], const_cast(&data), &len); + if (data != NULL) { + data_mimetype = mimetypes[i]; + break; + } + } } - Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - Glib::ustring quality = Glib::ustring::format(prefs->getInt("/dialogs/import/quality", 100)); + if (data == NULL) { + Inkscape::Preferences *prefs = Inkscape::Preferences::get(); + Glib::ustring quality = Glib::ustring::format(prefs->getInt("/dialogs/import/quality", 100)); - gchar *data = 0; - gsize length = 0; - gdk_pixbuf_save_to_buffer(pb, &data, &length, format.data(), NULL, "quality", quality.c_str(), NULL); + // if there is no supported MIME data, embed as PNG + data_mimetype = "image/png"; + ink_pixbuf_ensure_normal(pb); + gdk_pixbuf_save_to_buffer(pb, reinterpret_cast(&data), &len, "png", NULL, + "quality", quality.c_str(), NULL); + free_data = true; + } // Save base64 encoded data in image node // this formula taken from Glib docs - guint needed_size = length * 4 / 3 + length * 4 / (3 * 72) + 7; - needed_size += 5 + 8 + mime.size(); // 5 bytes for data:, 8 for ;base64, + guint needed_size = len * 4 / 3 + len * 4 / (3 * 72) + 7; + needed_size += 5 + 8 + strlen(data_mimetype); // 5 bytes for data: + 8 for ;base64, - gchar *buffer = (gchar *) g_malloc(needed_size), *buf_work = buffer; - buf_work += g_sprintf(buffer, "data:%s;base64,", mime.data()); + gchar *buffer = (gchar *) g_malloc(needed_size); + gchar *buf_work = buffer; + buf_work += g_sprintf(buffer, "data:%s;base64,", data_mimetype); gint state = 0; gint save = 0; gsize written = 0; - written += g_base64_encode_step((guchar*) data, length, TRUE, buf_work, &state, &save); + written += g_base64_encode_step(data, len, TRUE, buf_work, &state, &save); written += g_base64_encode_close(TRUE, buf_work + written, &state, &save); buf_work[written] = 0; // null terminate + // TODO: this is very wasteful memory-wise. + // It would be better to only keep the binary data around, + // and base64 encode on the fly when saving the XML. image_node->setAttribute("xlink:href", buffer); + g_free(buffer); + if (free_data) g_free(data); } void sp_image_refresh_if_outdated( SPImage* image ) diff --git a/src/sp-image.h b/src/sp-image.h index d6fc82a59..c197f6473 100644 --- a/src/sp-image.h +++ b/src/sp-image.h @@ -66,7 +66,7 @@ GType sp_image_get_type (void); /* Return duplicate of curve or NULL */ SPCurve *sp_image_get_curve (SPImage *image); -void sp_embed_image(Inkscape::XML::Node *imgnode, GdkPixbuf *pb, Glib::ustring const &mime); +void sp_embed_image(Inkscape::XML::Node *imgnode, GdkPixbuf *pb); void sp_image_refresh_if_outdated( SPImage* image ); #endif -- cgit v1.2.3 From e725513027a599a92254085120fa6c632882b6c9 Mon Sep 17 00:00:00 2001 From: "Johan B. C. Engelen" Date: Sat, 14 Sep 2013 12:53:32 +0200 Subject: fix windows build (bzr r12517) --- src/sp-image.cpp | 6 ++++-- src/xml/repr-io.cpp | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/sp-image.cpp b/src/sp-image.cpp index 724fa0ad8..0e692eb40 100644 --- a/src/sp-image.cpp +++ b/src/sp-image.cpp @@ -1115,7 +1115,9 @@ void sp_embed_image(Inkscape::XML::Node *image_node, GdkPixbuf *pb) cairo_surface_t *s = reinterpret_cast(g_object_get_data(G_OBJECT(pb), "cairo_surface")); if (s) { for (guint i = 0; i < mimetypes_len; ++i) { - cairo_surface_get_mime_data(s, mimetypes[i], const_cast(&data), &len); + unsigned long len_long = 0; + cairo_surface_get_mime_data(s, mimetypes[i], const_cast(&data), &len_long); + len = len_long; // this assumes that the added range of long is not needed. the code below assumes gsize range of values is sufficient. if (data != NULL) { data_mimetype = mimetypes[i]; break; @@ -1137,7 +1139,7 @@ void sp_embed_image(Inkscape::XML::Node *image_node, GdkPixbuf *pb) // Save base64 encoded data in image node // this formula taken from Glib docs - guint needed_size = len * 4 / 3 + len * 4 / (3 * 72) + 7; + gsize needed_size = len * 4 / 3 + len * 4 / (3 * 72) + 7; needed_size += 5 + 8 + strlen(data_mimetype); // 5 bytes for data: + 8 for ;base64, gchar *buffer = (gchar *) g_malloc(needed_size); diff --git a/src/xml/repr-io.cpp b/src/xml/repr-io.cpp index f5a558607..f7e75a83b 100644 --- a/src/xml/repr-io.cpp +++ b/src/xml/repr-io.cpp @@ -208,7 +208,7 @@ int XmlSource::setFile(char const *filename, bool load_entities=false) this->cachedData.erase(start, end - start); g_match_info_next (info, NULL); } - g_match_info_unref(info); + g_match_info_free(info); g_regex_unref(regex); } // Do this after loading cache, so reads don't return cache to fill cache. -- cgit v1.2.3 From 7debcf27e2e4b795a1a8d56155515ddf5fecf33d Mon Sep 17 00:00:00 2001 From: Alvin Penner Date: Sat, 14 Sep 2013 15:54:11 -0400 Subject: Path->Inset. remove redundant node on inner join. (Bug 1218333) Fixed bugs: - https://launchpad.net/bugs/1218333 (bzr r12518) --- src/livarot/PathStroke.cpp | 34 ++++++++++++++++++---------------- src/livarot/ShapeSweep.cpp | 3 ++- 2 files changed, 20 insertions(+), 17 deletions(-) diff --git a/src/livarot/PathStroke.cpp b/src/livarot/PathStroke.cpp index cdd5cae6d..50c335176 100644 --- a/src/livarot/PathStroke.cpp +++ b/src/livarot/PathStroke.cpp @@ -456,19 +456,20 @@ Path::DoLeftJoin (Shape * dest, double width, JoinType join, Geom::Point pos, } else {*/ leftStNo = dest->AddPoint (pos + width * pnor); leftEnNo = dest->AddPoint (pos + width * nnor); - int midNo = dest->AddPoint (pos); - int nEdge=dest->AddEdge (leftEnNo, midNo); - if ( dest->hasBackData() ) { - dest->ebData[nEdge].pathID=pathID; - dest->ebData[nEdge].pieceID=pieceID; - dest->ebData[nEdge].tSt=dest->ebData[nEdge].tEn=tID; - } - nEdge=dest->AddEdge (midNo, leftStNo); +// int midNo = dest->AddPoint (pos); +// int nEdge=dest->AddEdge (leftEnNo, midNo); + int nEdge=dest->AddEdge (leftEnNo, leftStNo); if ( dest->hasBackData() ) { dest->ebData[nEdge].pathID=pathID; dest->ebData[nEdge].pieceID=pieceID; dest->ebData[nEdge].tSt=dest->ebData[nEdge].tEn=tID; } +// nEdge=dest->AddEdge (midNo, leftStNo); +// if ( dest->hasBackData() ) { +// dest->ebData[nEdge].pathID=pathID; +// dest->ebData[nEdge].pieceID=pieceID; +// dest->ebData[nEdge].tSt=dest->ebData[nEdge].tEn=tID; +// } // } } else @@ -678,19 +679,20 @@ Path::DoRightJoin (Shape * dest, double width, JoinType join, Geom::Point pos, } else {*/ rightStNo = dest->AddPoint (pos - width*pnor); rightEnNo = dest->AddPoint (pos - width*nnor); - int midNo = dest->AddPoint (pos); - int nEdge=dest->AddEdge (rightStNo, midNo); +// int midNo = dest->AddPoint (pos); +// int nEdge=dest->AddEdge (rightStNo, midNo); + int nEdge=dest->AddEdge (rightStNo, rightEnNo); if ( dest->hasBackData() ) { dest->ebData[nEdge].pathID=pathID; dest->ebData[nEdge].pieceID=pieceID; dest->ebData[nEdge].tSt=dest->ebData[nEdge].tEn=tID; } - nEdge=dest->AddEdge (midNo, rightEnNo); - if ( dest->hasBackData() ) { - dest->ebData[nEdge].pathID=pathID; - dest->ebData[nEdge].pieceID=pieceID; - dest->ebData[nEdge].tSt=dest->ebData[nEdge].tEn=tID; - } +// nEdge=dest->AddEdge (midNo, rightEnNo); +// if ( dest->hasBackData() ) { +// dest->ebData[nEdge].pathID=pathID; +// dest->ebData[nEdge].pieceID=pieceID; +// dest->ebData[nEdge].tSt=dest->ebData[nEdge].tEn=tID; +// } // } } } diff --git a/src/livarot/ShapeSweep.cpp b/src/livarot/ShapeSweep.cpp index ff58b4a71..1954139fa 100644 --- a/src/livarot/ShapeSweep.cpp +++ b/src/livarot/ShapeSweep.cpp @@ -2672,7 +2672,8 @@ Shape::TesteAdjacency (Shape * a, int no, const Geom::Point atx, int nPt, double e = IHalfRound ((cross (diff,adir)) * a->eData[no].isqlength); if (-3 < e && e < 3) { - double rad = HalfRound (0.501); // when using single precision, 0.505 is better (0.5 would be the correct value, + double rad = HalfRound (1); +// double rad = HalfRound (0.501); // when using single precision, 0.505 is better (0.5 would be the correct value, // but it produces lots of bugs) diff1[0] = diff[0] - rad; diff1[1] = diff[1] - rad; -- cgit v1.2.3 From 09c1fee60bcd713fe66178021053d59e3f649660 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Sat, 14 Sep 2013 16:37:55 -0400 Subject: Fix bug with tool handles during document unit change. (bzr r12475.1.17) --- src/shape-editor.cpp | 6 ++++++ src/shape-editor.h | 3 +++ src/ui/dialog/document-properties.cpp | 9 +++++++++ 3 files changed, 18 insertions(+) diff --git a/src/shape-editor.cpp b/src/shape-editor.cpp index 71018d89b..59d43f24c 100644 --- a/src/shape-editor.cpp +++ b/src/shape-editor.cpp @@ -35,6 +35,8 @@ using Inkscape::createKnotHolder; +bool ShapeEditor::_blockSetItem = false; + ShapeEditor::ShapeEditor(SPDesktop *dt) { this->desktop = dt; this->knotholder = NULL; @@ -169,6 +171,10 @@ static Inkscape::XML::NodeEventVector shapeeditor_repr_events = { void ShapeEditor::set_item(SPItem *item, SubType type, bool keep_knotholder) { + if (_blockSetItem) { + return; + } + // this happens (and should only happen) when for an LPEItem having both knotholder and // nodepath the knotholder is adapted; in this case we don't want to delete the knotholder // since this freezes the handles diff --git a/src/shape-editor.h b/src/shape-editor.h index 206ff269b..9b3771fee 100644 --- a/src/shape-editor.h +++ b/src/shape-editor.h @@ -65,11 +65,14 @@ public: void shapeeditor_event_attr_changed(gchar const *name); bool knot_mouseover(); + + static void blockSetItem(bool b) {_blockSetItem = b;} private: bool has_knotholder (); void reset_item (SubType type, bool keep_knotholder = true); const SPItem *get_item (SubType type); + static bool _blockSetItem; SPDesktop *desktop; KnotHolder *knotholder; diff --git a/src/ui/dialog/document-properties.cpp b/src/ui/dialog/document-properties.cpp index 1b2761b13..0c39876ea 100644 --- a/src/ui/dialog/document-properties.cpp +++ b/src/ui/dialog/document-properties.cpp @@ -31,11 +31,13 @@ #include "inkscape.h" #include "io/sys.h" #include "preferences.h" +#include "shape-editor.h" #include "sp-namedview.h" #include "sp-object-repr.h" #include "sp-root.h" #include "sp-script.h" #include "svg/stringstream.h" +#include "tools-switch.h" #include "ui/widget/color-picker.h" #include "ui/widget/scalar-unit.h" #include "ui/dialog/filedialog.h" @@ -1658,9 +1660,16 @@ void DocumentProperties::onDocUnitChange() Inkscape::Util::Quantity height = doc->getHeight(); doc->setViewBox(Geom::Rect::from_xywh(0, 0, width.value(doc_unit), height.value(doc_unit))); + // TODO: Fix bug in nodes tool instead of switching away from it + if (tools_active(getDesktop()) == TOOLS_NODES) { + tools_switch(getDesktop(), TOOLS_SELECT); + } + // Scale and translate objects gdouble scale = Inkscape::Util::Quantity::convert(1, old_doc_unit, doc_unit); + ShapeEditor::blockSetItem(true); doc->getRoot()->scaleChildItemsRec(Geom::Scale(scale), Geom::Point(0, doc->getHeight().value("px"))); + ShapeEditor::blockSetItem(false); doc->setModifiedSinceSave(); -- cgit v1.2.3 From bb4246887ab6a0833cc4d2263b31f951ce314061 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sat, 14 Sep 2013 22:43:15 +0200 Subject: Modified SP_IS_ macros. (bzr r11608.1.122) --- src/arc-context.h | 2 +- src/box3d-context.h | 2 +- src/box3d-side.h | 2 +- src/box3d.h | 2 +- src/connector-context.h | 2 +- src/draw-context.h | 2 +- src/dropper-context.h | 2 +- src/event-context.h | 2 +- src/filters/blend.h | 2 +- src/filters/colormatrix.h | 2 +- src/filters/componenttransfer-funcnode.h | 8 ++++---- src/filters/componenttransfer.h | 2 +- src/filters/composite.h | 2 +- src/filters/convolvematrix.h | 2 +- src/filters/diffuselighting.h | 2 +- src/filters/displacementmap.h | 2 +- src/filters/distantlight.h | 2 +- src/filters/flood.h | 2 +- src/filters/gaussian-blur.h | 2 +- src/filters/image.h | 2 +- src/filters/merge.h | 2 +- src/filters/mergenode.h | 2 +- src/filters/morphology.h | 2 +- src/filters/offset.h | 2 +- src/filters/pointlight.h | 2 +- src/filters/specularlighting.h | 2 +- src/filters/spotlight.h | 2 +- src/filters/tile.h | 2 +- src/filters/turbulence.h | 2 +- src/flood-context.h | 2 +- src/gradient-context.h | 2 +- src/lpe-tool-context.h | 2 +- src/marker.h | 2 +- src/measure-context.h | 2 +- src/mesh-context.h | 2 +- src/pen-context.h | 2 +- src/pencil-context.h | 2 +- src/persp3d.h | 2 +- src/rect-context.h | 2 +- src/select-context.h | 2 +- src/sp-anchor.h | 2 +- src/sp-clippath.h | 2 +- src/sp-defs.h | 2 +- src/sp-desc.h | 2 +- src/sp-ellipse.h | 8 ++++---- src/sp-filter-primitive.h | 2 +- src/sp-filter.h | 2 +- src/sp-flowdiv.h | 10 +++++----- src/sp-flowregion.h | 4 ++-- src/sp-flowtext.h | 2 +- src/sp-font-face.h | 2 +- src/sp-font.h | 2 +- src/sp-glyph-kerning.h | 4 ++-- src/sp-glyph.h | 2 +- src/sp-gradient.h | 2 +- src/sp-guide.h | 2 +- src/sp-image.h | 2 +- src/sp-item-group.h | 2 +- src/sp-item.h | 2 +- src/sp-line.h | 2 +- src/sp-linear-gradient.h | 2 +- src/sp-lpe-item.h | 2 +- src/sp-mask.h | 2 +- src/sp-mesh-gradient.h | 2 +- src/sp-mesh-patch.h | 2 +- src/sp-mesh-row.h | 2 +- src/sp-metadata.h | 2 +- src/sp-missing-glyph.h | 2 +- src/sp-namedview.h | 2 +- src/sp-object-group.h | 2 +- src/sp-object.h | 2 +- src/sp-offset.h | 2 +- src/sp-paint-server.h | 2 +- src/sp-path.h | 2 +- src/sp-pattern.h | 2 +- src/sp-polygon.h | 2 +- src/sp-polyline.h | 2 +- src/sp-radial-gradient.h | 2 +- src/sp-rect.h | 2 +- src/sp-root.h | 2 +- src/sp-script.h | 2 +- src/sp-shape.h | 2 +- src/sp-spiral.h | 2 +- src/sp-star.h | 2 +- src/sp-stop.h | 2 +- src/sp-string.h | 2 +- src/sp-style-elem.h | 2 +- src/sp-switch.h | 2 +- src/sp-symbol.h | 2 +- src/sp-text.h | 2 +- src/sp-textpath.h | 2 +- src/sp-title.h | 2 +- src/sp-tref.h | 2 +- src/sp-tspan.h | 2 +- src/sp-use.h | 2 +- src/spiral-context.h | 2 +- src/spray-context.h | 2 +- src/text-context.h | 2 +- src/zoom-context.h | 2 +- 99 files changed, 111 insertions(+), 111 deletions(-) diff --git a/src/arc-context.h b/src/arc-context.h index 2fe6eff1e..ec2dbb2bb 100644 --- a/src/arc-context.h +++ b/src/arc-context.h @@ -24,7 +24,7 @@ #include "sp-ellipse.h" #define SP_ARC_CONTEXT(obj) ((SPArcContext*)obj) -#define SP_IS_ARC_CONTEXT(obj) (dynamic_cast(const SPEventContext*(obj))) +#define SP_IS_ARC_CONTEXT(obj) (dynamic_cast(const SPEventContext*(obj)) != NULL) class SPArcContext : public SPEventContext { public: diff --git a/src/box3d-context.h b/src/box3d-context.h index 164e3bde8..308acba3d 100644 --- a/src/box3d-context.h +++ b/src/box3d-context.h @@ -24,7 +24,7 @@ #include "box3d.h" #define SP_BOX3D_CONTEXT(obj) ((Box3DContext*)obj) -#define SP_IS_BOX3D_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj)) +#define SP_IS_BOX3D_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) class Box3DContext : public SPEventContext { public: diff --git a/src/box3d-side.h b/src/box3d-side.h index fcd7eb08c..7306a1b44 100644 --- a/src/box3d-side.h +++ b/src/box3d-side.h @@ -18,7 +18,7 @@ #define SP_BOX3D_SIDE(obj) ((Box3DSide*)obj) -#define SP_IS_BOX3D_SIDE(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_BOX3D_SIDE(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPBox3D; class Persp3D; diff --git a/src/box3d.h b/src/box3d.h index 53fd1852b..6df746c73 100644 --- a/src/box3d.h +++ b/src/box3d.h @@ -22,7 +22,7 @@ #define SP_TYPE_BOX3D (box3d_get_type ()) #define SP_BOX3D(obj) ((SPBox3D*)obj) -#define SP_IS_BOX3D(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_BOX3D(obj) (dynamic_cast((SPObject*)obj) != NULL) class Persp3D; class Persp3DReference; diff --git a/src/connector-context.h b/src/connector-context.h index 3e8c89f14..9b76fa5cd 100644 --- a/src/connector-context.h +++ b/src/connector-context.h @@ -21,7 +21,7 @@ #include #define SP_CONNECTOR_CONTEXT(obj) ((SPConnectorContext*)obj) -//#define SP_IS_CONNECTOR_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj)) +//#define SP_IS_CONNECTOR_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) struct SPKnot; class SPCurve; diff --git a/src/draw-context.h b/src/draw-context.h index be3d08637..a9ad5c118 100644 --- a/src/draw-context.h +++ b/src/draw-context.h @@ -23,7 +23,7 @@ /* Freehand context */ #define SP_DRAW_CONTEXT(obj) ((SPDrawContext*)obj) -#define SP_IS_DRAW_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj)) +#define SP_IS_DRAW_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) struct SPDrawAnchor; namespace Inkscape diff --git a/src/dropper-context.h b/src/dropper-context.h index 4007c391f..9c727902a 100644 --- a/src/dropper-context.h +++ b/src/dropper-context.h @@ -15,7 +15,7 @@ #include "event-context.h" #define SP_DROPPER_CONTEXT(obj) ((SPDropperContext*)obj) -#define SP_IS_DROPPER_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj)) +#define SP_IS_DROPPER_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) enum { SP_DROPPER_PICK_VISIBLE, diff --git a/src/event-context.h b/src/event-context.h index c2c9b023d..951d97160 100644 --- a/src/event-context.h +++ b/src/event-context.h @@ -34,7 +34,7 @@ namespace Inkscape { } #define SP_EVENT_CONTEXT(obj) ((SPEventContext*)obj) -#define SP_IS_EVENT_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj)) +#define SP_IS_EVENT_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) gboolean sp_event_context_snap_watchdog_callback(gpointer data); void sp_event_context_discard_delayed_snap_event(SPEventContext *ec); diff --git a/src/filters/blend.h b/src/filters/blend.h index f8b7bd2cb..779eed3e0 100644 --- a/src/filters/blend.h +++ b/src/filters/blend.h @@ -17,7 +17,7 @@ #include "display/nr-filter-blend.h" #define SP_FEBLEND(obj) ((SPFeBlend*)obj) -#define SP_IS_FEBLEND(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FEBLEND(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPFeBlend : public SPFilterPrimitive { public: diff --git a/src/filters/colormatrix.h b/src/filters/colormatrix.h index 4d11964dd..e109bbcdd 100644 --- a/src/filters/colormatrix.h +++ b/src/filters/colormatrix.h @@ -16,7 +16,7 @@ #include "display/nr-filter-colormatrix.h" #define SP_FECOLORMATRIX(obj) ((SPFeColorMatrix*)obj) -#define SP_IS_FECOLORMATRIX(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FECOLORMATRIX(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPFeColorMatrix : public SPFilterPrimitive { public: diff --git a/src/filters/componenttransfer-funcnode.h b/src/filters/componenttransfer-funcnode.h index 873baa196..10eead379 100644 --- a/src/filters/componenttransfer-funcnode.h +++ b/src/filters/componenttransfer-funcnode.h @@ -36,10 +36,10 @@ //#define SP_IS_FEFUNCB(obj) (obj != NULL && static_cast(obj)->typeHierarchy.count(typeid(SPFeFuncNode))) //#define SP_IS_FEFUNCA(obj) (obj != NULL && static_cast(obj)->typeHierarchy.count(typeid(SPFeFuncNode))) -#define SP_IS_FEFUNCR(obj) (dynamic_cast((SPObject*)obj)) -#define SP_IS_FEFUNCG(obj) (dynamic_cast((SPObject*)obj)) -#define SP_IS_FEFUNCB(obj) (dynamic_cast((SPObject*)obj)) -#define SP_IS_FEFUNCA(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FEFUNCR(obj) (dynamic_cast((SPObject*)obj) != NULL) +#define SP_IS_FEFUNCG(obj) (dynamic_cast((SPObject*)obj) != NULL) +#define SP_IS_FEFUNCB(obj) (dynamic_cast((SPObject*)obj) != NULL) +#define SP_IS_FEFUNCA(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPFeFuncNode : public SPObject { public: diff --git a/src/filters/componenttransfer.h b/src/filters/componenttransfer.h index 3aab5cf49..14149171c 100644 --- a/src/filters/componenttransfer.h +++ b/src/filters/componenttransfer.h @@ -14,7 +14,7 @@ #include "sp-filter-primitive.h" #define SP_FECOMPONENTTRANSFER(obj) ((SPFeComponentTransfer*)obj) -#define SP_IS_FECOMPONENTTRANSFER(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FECOMPONENTTRANSFER(obj) (dynamic_cast((SPObject*)obj) != NULL) namespace Inkscape { namespace Filters { diff --git a/src/filters/composite.h b/src/filters/composite.h index dc124e891..b3500ecaf 100644 --- a/src/filters/composite.h +++ b/src/filters/composite.h @@ -14,7 +14,7 @@ #include "sp-filter-primitive.h" #define SP_FECOMPOSITE(obj) ((SPFeComposite*)obj) -#define SP_IS_FECOMPOSITE(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FECOMPOSITE(obj) (dynamic_cast((SPObject*)obj) != NULL) enum FeCompositeOperator { // Default value is 'over', but let's distinquish specifying the diff --git a/src/filters/convolvematrix.h b/src/filters/convolvematrix.h index abcf52384..6cbd63998 100644 --- a/src/filters/convolvematrix.h +++ b/src/filters/convolvematrix.h @@ -19,7 +19,7 @@ #include "display/nr-filter-convolve-matrix.h" #define SP_FECONVOLVEMATRIX(obj) ((SPFeConvolveMatrix*)obj) -#define SP_IS_FECONVOLVEMATRIX(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FECONVOLVEMATRIX(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPFeConvolveMatrix : public SPFilterPrimitive { public: diff --git a/src/filters/diffuselighting.h b/src/filters/diffuselighting.h index e33584b4f..701128158 100644 --- a/src/filters/diffuselighting.h +++ b/src/filters/diffuselighting.h @@ -16,7 +16,7 @@ #include "number-opt-number.h" #define SP_FEDIFFUSELIGHTING(obj) ((SPFeDiffuseLighting*)obj) -#define SP_IS_FEDIFFUSELIGHTING(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FEDIFFUSELIGHTING(obj) (dynamic_cast((SPObject*)obj) != NULL) struct SVGICCColor; diff --git a/src/filters/displacementmap.h b/src/filters/displacementmap.h index 3100e66b7..66b0c8afc 100644 --- a/src/filters/displacementmap.h +++ b/src/filters/displacementmap.h @@ -15,7 +15,7 @@ #include "sp-filter-primitive.h" #define SP_FEDISPLACEMENTMAP(obj) ((SPFeDisplacementMap*)obj) -#define SP_IS_FEDISPLACEMENTMAP(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FEDISPLACEMENTMAP(obj) (dynamic_cast((SPObject*)obj) != NULL) enum FilterDisplacementMapChannelSelector { DISPLACEMENTMAP_CHANNEL_RED, diff --git a/src/filters/distantlight.h b/src/filters/distantlight.h index ad9c8f53c..bab49726e 100644 --- a/src/filters/distantlight.h +++ b/src/filters/distantlight.h @@ -18,7 +18,7 @@ #include "sp-object.h" #define SP_FEDISTANTLIGHT(obj) ((SPFeDistantLight*)obj) -#define SP_IS_FEDISTANTLIGHT(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FEDISTANTLIGHT(obj) (dynamic_cast((SPObject*)obj) != NULL) /* Distant light class */ class SPFeDistantLight : public SPObject { diff --git a/src/filters/flood.h b/src/filters/flood.h index 67369a794..d052dd8ff 100644 --- a/src/filters/flood.h +++ b/src/filters/flood.h @@ -16,7 +16,7 @@ #include "svg/svg-icc-color.h" #define SP_FEFLOOD(obj) ((SPFeFlood*)obj) -#define SP_IS_FEFLOOD(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FEFLOOD(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPFeFlood : public SPFilterPrimitive { public: diff --git a/src/filters/gaussian-blur.h b/src/filters/gaussian-blur.h index b0e725a50..7aa293b93 100644 --- a/src/filters/gaussian-blur.h +++ b/src/filters/gaussian-blur.h @@ -16,7 +16,7 @@ #include "number-opt-number.h" #define SP_GAUSSIANBLUR(obj) ((SPGaussianBlur*)obj) -#define SP_IS_GAUSSIANBLUR(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_GAUSSIANBLUR(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPGaussianBlur : public SPFilterPrimitive { public: diff --git a/src/filters/image.h b/src/filters/image.h index 8bbab2614..055e4e31a 100644 --- a/src/filters/image.h +++ b/src/filters/image.h @@ -19,7 +19,7 @@ #include "uri-references.h" #define SP_FEIMAGE(obj) ((SPFeImage*)obj) -#define SP_IS_FEIMAGE(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FEIMAGE(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPFeImage : public SPFilterPrimitive { public: diff --git a/src/filters/merge.h b/src/filters/merge.h index c7d2ce45b..55f0b0be7 100644 --- a/src/filters/merge.h +++ b/src/filters/merge.h @@ -13,7 +13,7 @@ #include "sp-filter-primitive.h" #define SP_FEMERGE(obj) ((SPFeMerge*)obj) -#define SP_IS_FEMERGE(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FEMERGE(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPFeMerge : public SPFilterPrimitive { public: diff --git a/src/filters/mergenode.h b/src/filters/mergenode.h index 9182780ca..3fd5e890b 100644 --- a/src/filters/mergenode.h +++ b/src/filters/mergenode.h @@ -18,7 +18,7 @@ #include "sp-object.h" #define SP_FEMERGENODE(obj) ((SPFeMergeNode*)obj) -#define SP_IS_FEMERGENODE(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FEMERGENODE(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPFeMergeNode : public SPObject { public: diff --git a/src/filters/morphology.h b/src/filters/morphology.h index 786d444f3..ebcdfc28f 100644 --- a/src/filters/morphology.h +++ b/src/filters/morphology.h @@ -17,7 +17,7 @@ #include "display/nr-filter-morphology.h" #define SP_FEMORPHOLOGY(obj) ((SPFeMorphology*)obj) -#define SP_IS_FEMORPHOLOGY(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FEMORPHOLOGY(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPFeMorphology : public SPFilterPrimitive { public: diff --git a/src/filters/offset.h b/src/filters/offset.h index 10bed3338..43407c3a9 100644 --- a/src/filters/offset.h +++ b/src/filters/offset.h @@ -15,7 +15,7 @@ #include "sp-filter-primitive.h" #define SP_FEOFFSET(obj) ((SPFeOffset*)obj) -#define SP_IS_FEOFFSET(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FEOFFSET(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPFeOffset : public SPFilterPrimitive { public: diff --git a/src/filters/pointlight.h b/src/filters/pointlight.h index 2379167b6..2d092bd1c 100644 --- a/src/filters/pointlight.h +++ b/src/filters/pointlight.h @@ -18,7 +18,7 @@ #include "sp-object.h" #define SP_FEPOINTLIGHT(obj) ((SPFePointLight*)obj) -#define SP_IS_FEPOINTLIGHT(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FEPOINTLIGHT(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPFePointLight : public SPObject { public: diff --git a/src/filters/specularlighting.h b/src/filters/specularlighting.h index 081d0e0ed..f99dbd9ce 100644 --- a/src/filters/specularlighting.h +++ b/src/filters/specularlighting.h @@ -18,7 +18,7 @@ #include "number-opt-number.h" #define SP_FESPECULARLIGHTING(obj) ((SPFeSpecularLighting*)obj) -#define SP_IS_FESPECULARLIGHTING(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FESPECULARLIGHTING(obj) (dynamic_cast((SPObject*)obj) != NULL) struct SVGICCColor; diff --git a/src/filters/spotlight.h b/src/filters/spotlight.h index b273f72b7..55717ac5d 100644 --- a/src/filters/spotlight.h +++ b/src/filters/spotlight.h @@ -18,7 +18,7 @@ #include "sp-object.h" #define SP_FESPOTLIGHT(obj) ((SPFeSpotLight*)obj) -#define SP_IS_FESPOTLIGHT(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FESPOTLIGHT(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPFeSpotLight : public SPObject { public: diff --git a/src/filters/tile.h b/src/filters/tile.h index 184858a3d..9b2199adc 100644 --- a/src/filters/tile.h +++ b/src/filters/tile.h @@ -15,7 +15,7 @@ #include "sp-filter-primitive.h" #define SP_FETILE(obj) ((SPFeTile*)obj) -#define SP_IS_FETILE(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FETILE(obj) (dynamic_cast((SPObject*)obj) != NULL) /* FeTile base class */ class SPFeTile : public SPFilterPrimitive { diff --git a/src/filters/turbulence.h b/src/filters/turbulence.h index d6046036a..d0bb6f878 100644 --- a/src/filters/turbulence.h +++ b/src/filters/turbulence.h @@ -18,7 +18,7 @@ #include "display/nr-filter-turbulence.h" #define SP_FETURBULENCE(obj) ((SPFeTurbulence*)obj) -#define SP_IS_FETURBULENCE(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FETURBULENCE(obj) (dynamic_cast((SPObject*)obj) != NULL) /* FeTurbulence base class */ diff --git a/src/flood-context.h b/src/flood-context.h index 37d43c4c7..26fc03a3f 100644 --- a/src/flood-context.h +++ b/src/flood-context.h @@ -17,7 +17,7 @@ #include "event-context.h" #define SP_FLOOD_CONTEXT(obj) ((SPFloodContext*)obj) -#define SP_IS_FLOOD_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj)) +#define SP_IS_FLOOD_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) #define FLOOD_COLOR_CHANNEL_R 1 diff --git a/src/gradient-context.h b/src/gradient-context.h index fb964f904..a49ea305a 100644 --- a/src/gradient-context.h +++ b/src/gradient-context.h @@ -20,7 +20,7 @@ #include "event-context.h" #define SP_GRADIENT_CONTEXT(obj) ((SPGradientContext*)obj) -#define SP_IS_GRADIENT_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj)) +#define SP_IS_GRADIENT_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) class SPGradientContext : public SPEventContext { public: diff --git a/src/lpe-tool-context.h b/src/lpe-tool-context.h index 0cfc89ebc..1097b12c8 100644 --- a/src/lpe-tool-context.h +++ b/src/lpe-tool-context.h @@ -18,7 +18,7 @@ #include "pen-context.h" #define SP_LPETOOL_CONTEXT(obj) ((SPLPEToolContext*)obj) -#define SP_IS_LPETOOL_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj)) +#define SP_IS_LPETOOL_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) /* This is the list of subtools from which the toolbar of the LPETool is built automatically */ extern const int num_subtools; diff --git a/src/marker.h b/src/marker.h index 0300d7199..3da12af08 100644 --- a/src/marker.h +++ b/src/marker.h @@ -20,7 +20,7 @@ #define SP_TYPE_MARKER (sp_marker_get_type ()) #define SP_MARKER(obj) ((SPMarker*)obj) -#define SP_IS_MARKER(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_MARKER(obj) (dynamic_cast((SPObject*)obj) != NULL) struct SPMarkerView; diff --git a/src/measure-context.h b/src/measure-context.h index 2449d5735..7dd8a59b4 100644 --- a/src/measure-context.h +++ b/src/measure-context.h @@ -15,7 +15,7 @@ #include "event-context.h" #define SP_MEASURE_CONTEXT(obj) ((SPMeasureContext*)obj) -#define SP_IS_MEASURE_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj)) +#define SP_IS_MEASURE_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) class SPMeasureContext : public SPEventContext { public: diff --git a/src/mesh-context.h b/src/mesh-context.h index 1d360268e..384aca0ff 100644 --- a/src/mesh-context.h +++ b/src/mesh-context.h @@ -22,7 +22,7 @@ #include "event-context.h" #define SP_MESH_CONTEXT(obj) ((SPMeshContext*)obj) -#define SP_IS_MESH_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj)) +#define SP_IS_MESH_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) class SPMeshContext : public SPEventContext { public: diff --git a/src/pen-context.h b/src/pen-context.h index 3c83f3b7f..0e318f66b 100644 --- a/src/pen-context.h +++ b/src/pen-context.h @@ -9,7 +9,7 @@ #include "live_effects/effect.h" #define SP_PEN_CONTEXT(obj) ((SPPenContext*)obj) -#define SP_IS_PEN_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj)) +#define SP_IS_PEN_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) struct SPCtrlLine; diff --git a/src/pencil-context.h b/src/pencil-context.h index a3e7a2ef0..ff13a5ac0 100644 --- a/src/pencil-context.h +++ b/src/pencil-context.h @@ -8,7 +8,7 @@ #include "draw-context.h" #define SP_PENCIL_CONTEXT(obj) ((SPPencilContext*)obj) -#define SP_IS_PENCIL_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj)) +#define SP_IS_PENCIL_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) enum PencilState { SP_PENCIL_CONTEXT_IDLE, diff --git a/src/persp3d.h b/src/persp3d.h index a1e8928f8..450d41d11 100644 --- a/src/persp3d.h +++ b/src/persp3d.h @@ -13,7 +13,7 @@ */ #define SP_PERSP3D(obj) ((Persp3D*)obj) -#define SP_IS_PERSP3D(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_PERSP3D(obj) (dynamic_cast((SPObject*)obj) != NULL) #include #include diff --git a/src/rect-context.h b/src/rect-context.h index f57a1266a..f381fcba2 100644 --- a/src/rect-context.h +++ b/src/rect-context.h @@ -22,7 +22,7 @@ #include "sp-rect.h" #define SP_RECT_CONTEXT(obj) ((SPRectContext*)obj) -#define SP_IS_RECT_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj)) +#define SP_IS_RECT_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) class SPRectContext : public SPEventContext { public: diff --git a/src/select-context.h b/src/select-context.h index 25b9997e6..3a601aa7a 100644 --- a/src/select-context.h +++ b/src/select-context.h @@ -16,7 +16,7 @@ #include #define SP_SELECT_CONTEXT(obj) ((SPSelectContext*)obj) -#define SP_IS_SELECT_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj)) +#define SP_IS_SELECT_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) struct SPCanvasItem; diff --git a/src/sp-anchor.h b/src/sp-anchor.h index b3d95d9c4..e1f7d708a 100644 --- a/src/sp-anchor.h +++ b/src/sp-anchor.h @@ -16,7 +16,7 @@ #include "sp-item-group.h" #define SP_ANCHOR(obj) ((SPAnchor*)obj) -#define SP_IS_ANCHOR(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_ANCHOR(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPAnchor : public SPGroup { public: diff --git a/src/sp-clippath.h b/src/sp-clippath.h index 707213611..e5b65b1b8 100644 --- a/src/sp-clippath.h +++ b/src/sp-clippath.h @@ -16,7 +16,7 @@ */ #define SP_CLIPPATH(obj) ((SPClipPath*)obj) -#define SP_IS_CLIPPATH(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_CLIPPATH(obj) (dynamic_cast((SPObject*)obj) != NULL) struct SPClipPathView; diff --git a/src/sp-defs.h b/src/sp-defs.h index 415aa4cd2..dbe0df280 100644 --- a/src/sp-defs.h +++ b/src/sp-defs.h @@ -16,7 +16,7 @@ #include "sp-object.h" #define SP_DEFS(obj) ((SPDefs*)obj) -#define SP_IS_DEFS(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_DEFS(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPDefs : public SPObject { public: diff --git a/src/sp-desc.h b/src/sp-desc.h index ac8fc564f..7a89aa7e6 100644 --- a/src/sp-desc.h +++ b/src/sp-desc.h @@ -15,7 +15,7 @@ #include "sp-object.h" #define SP_DESC(obj) ((SPDesc*)obj) -#define SP_IS_DESC(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_DESC(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPDesc : public SPObject { public: diff --git a/src/sp-ellipse.h b/src/sp-ellipse.h index 298a7afae..32cf58623 100644 --- a/src/sp-ellipse.h +++ b/src/sp-ellipse.h @@ -19,7 +19,7 @@ /* Common parent class */ #define SP_GENERICELLIPSE(obj) ((SPGenericEllipse*)obj) -#define SP_IS_GENERICELLIPSE(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_GENERICELLIPSE(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPGenericEllipse : public SPShape { public: @@ -48,7 +48,7 @@ void sp_genericellipse_normalize (SPGenericEllipse *ellipse); /* SVG element */ #define SP_ELLIPSE(obj) ((SPEllipse*)obj) -#define SP_IS_ELLIPSE(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_ELLIPSE(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPEllipse : public SPGenericEllipse { public: @@ -65,7 +65,7 @@ void sp_ellipse_position_set (SPEllipse * ellipse, gdouble x, gdouble y, gdouble /* SVG element */ #define SP_CIRCLE(obj) ((SPCircle*)obj) -#define SP_IS_CIRCLE(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_CIRCLE(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPCircle : public SPGenericEllipse { public: @@ -80,7 +80,7 @@ public: /* element */ #define SP_ARC(obj) ((SPArc*)obj) -#define SP_IS_ARC(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_ARC(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPArc : public SPGenericEllipse { public: diff --git a/src/sp-filter-primitive.h b/src/sp-filter-primitive.h index 1026937ff..e4dda2e06 100644 --- a/src/sp-filter-primitive.h +++ b/src/sp-filter-primitive.h @@ -18,7 +18,7 @@ #include "svg/svg-length.h" #define SP_FILTER_PRIMITIVE(obj) ((SPFilterPrimitive*)obj) -#define SP_IS_FILTER_PRIMITIVE(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FILTER_PRIMITIVE(obj) (dynamic_cast((SPObject*)obj) != NULL) namespace Inkscape { namespace Filters { diff --git a/src/sp-filter.h b/src/sp-filter.h index e1e56be2c..29f1fb9f2 100644 --- a/src/sp-filter.h +++ b/src/sp-filter.h @@ -22,7 +22,7 @@ #include #define SP_FILTER(obj) ((SPFilter*)obj) -#define SP_IS_FILTER(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FILTER(obj) (dynamic_cast((SPObject*)obj) != NULL) #define SP_FILTER_FILTER_UNITS(f) (SP_FILTER(f)->filterUnits) #define SP_FILTER_PRIMITIVE_UNITS(f) (SP_FILTER(f)->primitiveUnits) diff --git a/src/sp-flowdiv.h b/src/sp-flowdiv.h index 9980dc4da..756d211e9 100644 --- a/src/sp-flowdiv.h +++ b/src/sp-flowdiv.h @@ -8,19 +8,19 @@ #include "sp-item.h" #define SP_FLOWDIV(obj) ((SPFlowdiv*)obj) -#define SP_IS_FLOWDIV(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FLOWDIV(obj) (dynamic_cast((SPObject*)obj) != NULL) #define SP_FLOWTSPAN(obj) ((SPFlowtspan*)obj) -#define SP_IS_FLOWTSPAN(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FLOWTSPAN(obj) (dynamic_cast((SPObject*)obj) != NULL) #define SP_FLOWPARA(obj) ((SPFlowpara*)obj) -#define SP_IS_FLOWPARA(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FLOWPARA(obj) (dynamic_cast((SPObject*)obj) != NULL) #define SP_FLOWLINE(obj) ((SPFlowline*)obj) -#define SP_IS_FLOWLINE(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FLOWLINE(obj) (dynamic_cast((SPObject*)obj) != NULL) #define SP_FLOWREGIONBREAK(obj) ((SPFlowregionbreak*)obj) -#define SP_IS_FLOWREGIONBREAK(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FLOWREGIONBREAK(obj) (dynamic_cast((SPObject*)obj) != NULL) // these 3 are derivatives of SPItem to get the automatic style handling class SPFlowdiv : public SPItem { diff --git a/src/sp-flowregion.h b/src/sp-flowregion.h index 48d702494..2a17b1309 100644 --- a/src/sp-flowregion.h +++ b/src/sp-flowregion.h @@ -7,10 +7,10 @@ #include "sp-item.h" #define SP_FLOWREGION(obj) ((SPFlowregion*)obj) -#define SP_IS_FLOWREGION(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FLOWREGION(obj) (dynamic_cast((SPObject*)obj) != NULL) #define SP_FLOWREGIONEXCLUDE(obj) ((SPFlowregionExclude*)obj) -#define SP_IS_FLOWREGIONEXCLUDE(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FLOWREGIONEXCLUDE(obj) (dynamic_cast((SPObject*)obj) != NULL) class Path; class Shape; diff --git a/src/sp-flowtext.h b/src/sp-flowtext.h index 388d5a4b2..b1e2ccf8f 100644 --- a/src/sp-flowtext.h +++ b/src/sp-flowtext.h @@ -10,7 +10,7 @@ #include "libnrtype/Layout-TNG.h" #define SP_FLOWTEXT(obj) ((SPFlowtext*)obj) -#define SP_IS_FLOWTEXT(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FLOWTEXT(obj) (dynamic_cast((SPObject*)obj) != NULL) namespace Inkscape { diff --git a/src/sp-font-face.h b/src/sp-font-face.h index b119d1079..c44692871 100644 --- a/src/sp-font-face.h +++ b/src/sp-font-face.h @@ -25,7 +25,7 @@ #include "sp-object.h" #define SP_FONTFACE(obj) ((SPFontFace*)obj) -#define SP_IS_FONTFACE(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FONTFACE(obj) (dynamic_cast((SPObject*)obj) != NULL) enum FontFaceStyleType{ SP_FONTFACE_STYLE_ALL, diff --git a/src/sp-font.h b/src/sp-font.h index cbc63b69d..d90ee67f1 100644 --- a/src/sp-font.h +++ b/src/sp-font.h @@ -19,7 +19,7 @@ #include "sp-object.h" #define SP_FONT(obj) ((SPFont*)obj) -#define SP_IS_FONT(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_FONT(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPFont : public SPObject { public: diff --git a/src/sp-glyph-kerning.h b/src/sp-glyph-kerning.h index b579e5e2e..c8cf6a0b6 100644 --- a/src/sp-glyph-kerning.h +++ b/src/sp-glyph-kerning.h @@ -25,7 +25,7 @@ //#define SP_IS_HKERN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_HKERN)) #define SP_HKERN(obj) ((SPHkern*)obj) -#define SP_IS_HKERN(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_HKERN(obj) (dynamic_cast((SPObject*)obj) != NULL) //#define SP_VKERN(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SP_TYPE_VKERN, SPVkern)) //#define SP_VKERN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SP_TYPE_VKERN, SPGlyphKerningClass)) @@ -33,7 +33,7 @@ //#define SP_IS_VKERN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_VKERN)) #define SP_VKERN(obj) ((SPVkern*)obj) -#define SP_IS_VKERN(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_VKERN(obj) (dynamic_cast((SPObject*)obj) != NULL) // CPPIFY: These casting macros are buggy, as Vkern and Hkern aren't "real" classes. diff --git a/src/sp-glyph.h b/src/sp-glyph.h index 79ed256e9..7734efdb0 100644 --- a/src/sp-glyph.h +++ b/src/sp-glyph.h @@ -19,7 +19,7 @@ #include "sp-object.h" #define SP_GLYPH(obj) ((SPGlyph*)obj) -#define SP_IS_GLYPH(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_GLYPH(obj) (dynamic_cast((SPObject*)obj) != NULL) enum glyphArabicForm { GLYPH_ARABIC_FORM_INITIAL, diff --git a/src/sp-gradient.h b/src/sp-gradient.h index 2d402092a..157edf669 100644 --- a/src/sp-gradient.h +++ b/src/sp-gradient.h @@ -42,7 +42,7 @@ class SPGradientReference; class SPStop; #define SP_GRADIENT(obj) ((SPGradient*)obj) -#define SP_IS_GRADIENT(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_GRADIENT(obj) (dynamic_cast((SPObject*)obj) != NULL) enum SPGradientType { SP_GRADIENT_TYPE_UNKNOWN, diff --git a/src/sp-guide.h b/src/sp-guide.h index 9af56d12b..83a5e8349 100644 --- a/src/sp-guide.h +++ b/src/sp-guide.h @@ -24,7 +24,7 @@ struct SPCanvasGroup; class SPDesktop; #define SP_GUIDE(obj) ((SPGuide*)obj) -#define SP_IS_GUIDE(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_GUIDE(obj) (dynamic_cast((SPObject*)obj) != NULL) /* Represents the constraint on p that dot(g.direction, p) == g.position. */ class SPGuide : public SPObject { diff --git a/src/sp-image.h b/src/sp-image.h index 066a63863..d18a4ca6e 100644 --- a/src/sp-image.h +++ b/src/sp-image.h @@ -15,7 +15,7 @@ */ #define SP_IMAGE(obj) ((SPImage*)obj) -#define SP_IS_IMAGE(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_IMAGE(obj) (dynamic_cast((SPObject*)obj) != NULL) /* SPImage */ diff --git a/src/sp-item-group.h b/src/sp-item-group.h index f8d9014ab..ae77ed809 100644 --- a/src/sp-item-group.h +++ b/src/sp-item-group.h @@ -17,7 +17,7 @@ #include "sp-lpe-item.h" #define SP_GROUP(obj) ((SPGroup*)obj) -#define SP_IS_GROUP(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_GROUP(obj) (dynamic_cast((SPObject*)obj) != NULL) #define SP_IS_LAYER(obj) (SP_IS_GROUP(obj) && SP_GROUP(obj)->layerMode() == SPGroup::LAYER) diff --git a/src/sp-item.h b/src/sp-item.h index a5587f7f6..1523f9a62 100644 --- a/src/sp-item.h +++ b/src/sp-item.h @@ -100,7 +100,7 @@ public: }; #define SP_ITEM(obj) ((SPItem*)obj) -#define SP_IS_ITEM(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_ITEM(obj) (dynamic_cast((SPObject*)obj) != NULL) /** Abstract base class for all visible shapes. */ class SPItem : public SPObject { diff --git a/src/sp-line.h b/src/sp-line.h index 299fedc4c..66131f2c8 100644 --- a/src/sp-line.h +++ b/src/sp-line.h @@ -18,7 +18,7 @@ #include "sp-shape.h" #define SP_LINE(obj) ((SPLine*)obj) -#define SP_IS_LINE(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_LINE(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPLine : public SPShape { public: diff --git a/src/sp-linear-gradient.h b/src/sp-linear-gradient.h index 69052fe81..4f75d7ca8 100644 --- a/src/sp-linear-gradient.h +++ b/src/sp-linear-gradient.h @@ -9,7 +9,7 @@ #include "svg/svg-length.h" #define SP_LINEARGRADIENT(obj) ((SPLinearGradient*)obj) -#define SP_IS_LINEARGRADIENT(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_LINEARGRADIENT(obj) (dynamic_cast((SPObject*)obj) != NULL) /** Linear gradient. */ class SPLinearGradient : public SPGradient { diff --git a/src/sp-lpe-item.h b/src/sp-lpe-item.h index 3b0a7bb77..0aac8f057 100644 --- a/src/sp-lpe-item.h +++ b/src/sp-lpe-item.h @@ -19,7 +19,7 @@ #include #define SP_LPE_ITEM(obj) ((SPLPEItem*)obj) -#define SP_IS_LPE_ITEM(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_LPE_ITEM(obj) (dynamic_cast((SPObject*)obj) != NULL) class CLPEItem; class LivePathEffectObject; diff --git a/src/sp-mask.h b/src/sp-mask.h index a2e97d671..16f967419 100644 --- a/src/sp-mask.h +++ b/src/sp-mask.h @@ -19,7 +19,7 @@ #include "xml/node.h" #define SP_MASK(obj) ((SPMask*)obj) -#define SP_IS_MASK(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_MASK(obj) (dynamic_cast((SPObject*)obj) != NULL) struct SPMaskView; diff --git a/src/sp-mesh-gradient.h b/src/sp-mesh-gradient.h index a6ab29c09..fb59ad802 100644 --- a/src/sp-mesh-gradient.h +++ b/src/sp-mesh-gradient.h @@ -9,7 +9,7 @@ #include "sp-gradient.h" #define SP_MESHGRADIENT(obj) ((SPMeshGradient*)obj) -#define SP_IS_MESHGRADIENT(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_MESHGRADIENT(obj) (dynamic_cast((SPObject*)obj) != NULL) /** Mesh gradient. */ class SPMeshGradient : public SPGradient { diff --git a/src/sp-mesh-patch.h b/src/sp-mesh-patch.h index 34bbb00d8..fe9f2d071 100644 --- a/src/sp-mesh-patch.h +++ b/src/sp-mesh-patch.h @@ -18,7 +18,7 @@ #include "sp-object.h" #define SP_MESHPATCH(obj) ((SPMeshPatch*)obj) -#define SP_IS_MESHPATCH(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_MESHPATCH(obj) (dynamic_cast((SPObject*)obj) != NULL) /** Gradient MeshPatch. */ class SPMeshPatch : public SPObject { diff --git a/src/sp-mesh-row.h b/src/sp-mesh-row.h index 4f2e8842f..a9f8bfd31 100644 --- a/src/sp-mesh-row.h +++ b/src/sp-mesh-row.h @@ -15,7 +15,7 @@ #include "sp-object.h" #define SP_MESHROW(obj) ((SPMeshRow*)obj) -#define SP_IS_MESHROW(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_MESHROW(obj) (dynamic_cast((SPObject*)obj) != NULL) /** Gradient MeshRow. */ class SPMeshRow : public SPObject { diff --git a/src/sp-metadata.h b/src/sp-metadata.h index 752ced9e3..a667b214a 100644 --- a/src/sp-metadata.h +++ b/src/sp-metadata.h @@ -18,7 +18,7 @@ /* Metadata base class */ #define SP_METADATA(obj) ((SPMetadata*)obj) -#define SP_IS_METADATA(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_METADATA(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPMetadata : public SPObject { public: diff --git a/src/sp-missing-glyph.h b/src/sp-missing-glyph.h index 368f25943..291ea626f 100644 --- a/src/sp-missing-glyph.h +++ b/src/sp-missing-glyph.h @@ -19,7 +19,7 @@ #include "sp-object.h" #define SP_MISSING_GLYPH(obj) ((SPMissingGlyph*)obj) -#define SP_IS_MISSING_GLYPH(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_MISSING_GLYPH(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPMissingGlyph : public SPObject { public: diff --git a/src/sp-namedview.h b/src/sp-namedview.h index 2ab0d9f34..92a31b11b 100644 --- a/src/sp-namedview.h +++ b/src/sp-namedview.h @@ -15,7 +15,7 @@ */ #define SP_NAMEDVIEW(obj) ((SPNamedView*)obj) -#define SP_IS_NAMEDVIEW(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_NAMEDVIEW(obj) (dynamic_cast((SPObject*)obj) != NULL) #include "sp-object-group.h" #include "snap.h" diff --git a/src/sp-object-group.h b/src/sp-object-group.h index a34ef0721..552b321b1 100644 --- a/src/sp-object-group.h +++ b/src/sp-object-group.h @@ -17,7 +17,7 @@ #include "sp-object.h" #define SP_OBJECTGROUP(obj) ((SPObjectGroup*)obj) -#define SP_IS_OBJECTGROUP(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_OBJECTGROUP(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPObjectGroup : public SPObject { public: diff --git a/src/sp-object.h b/src/sp-object.h index 449049611..077633400 100644 --- a/src/sp-object.h +++ b/src/sp-object.h @@ -18,7 +18,7 @@ class SPObject; #define SP_OBJECT(obj) ((SPObject*)obj) -#define SP_IS_OBJECT(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_OBJECT(obj) (dynamic_cast((SPObject*)obj) != NULL) /* Async modification flags */ #define SP_OBJECT_MODIFIED_FLAG (1 << 0) diff --git a/src/sp-offset.h b/src/sp-offset.h index f18fd4071..9d173b66a 100644 --- a/src/sp-offset.h +++ b/src/sp-offset.h @@ -17,7 +17,7 @@ #include #define SP_OFFSET(obj) ((SPOffset*)obj) -#define SP_IS_OFFSET(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_OFFSET(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPUseReference; diff --git a/src/sp-paint-server.h b/src/sp-paint-server.h index 9bde0883f..4c77bdaa6 100644 --- a/src/sp-paint-server.h +++ b/src/sp-paint-server.h @@ -21,7 +21,7 @@ #include "uri-references.h" #define SP_PAINT_SERVER(obj) ((SPPaintServer*)obj) -#define SP_IS_PAINT_SERVER(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_PAINT_SERVER(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPPaintServer : public SPObject { public: diff --git a/src/sp-path.h b/src/sp-path.h index 89224b958..be3a1b03d 100644 --- a/src/sp-path.h +++ b/src/sp-path.h @@ -22,7 +22,7 @@ class SPCurve; #define SP_PATH(obj) ((SPPath*)obj) -#define SP_IS_PATH(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_PATH(obj) (dynamic_cast((SPObject*)obj) != NULL) /** * SVG implementation diff --git a/src/sp-pattern.h b/src/sp-pattern.h index 3e33528f8..c7a2a96c3 100644 --- a/src/sp-pattern.h +++ b/src/sp-pattern.h @@ -18,7 +18,7 @@ #include "sp-item.h" #define SP_PATTERN(obj) ((SPPattern*)obj) -#define SP_IS_PATTERN(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_PATTERN(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPPatternReference; diff --git a/src/sp-polygon.h b/src/sp-polygon.h index cb6c8a4f8..bac632a95 100644 --- a/src/sp-polygon.h +++ b/src/sp-polygon.h @@ -17,7 +17,7 @@ #define SP_POLYGON(obj) ((SPPolygon*)obj) -#define SP_IS_POLYGON(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_POLYGON(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPPolygon : public SPShape { public: diff --git a/src/sp-polyline.h b/src/sp-polyline.h index 91266d985..75c2217b5 100644 --- a/src/sp-polyline.h +++ b/src/sp-polyline.h @@ -4,7 +4,7 @@ #include "sp-shape.h" #define SP_POLYLINE(obj) ((SPPolyLine*)obj) -#define SP_IS_POLYLINE(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_POLYLINE(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPPolyLine : public SPShape { public: diff --git a/src/sp-radial-gradient.h b/src/sp-radial-gradient.h index 7514af2dc..e0be01b9b 100644 --- a/src/sp-radial-gradient.h +++ b/src/sp-radial-gradient.h @@ -10,7 +10,7 @@ #include "svg/svg-length.h" #define SP_RADIALGRADIENT(obj) ((SPRadialGradient*)obj) -#define SP_IS_RADIALGRADIENT(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_RADIALGRADIENT(obj) (dynamic_cast((SPObject*)obj) != NULL) /** Radial gradient. */ class SPRadialGradient : public SPGradient { diff --git a/src/sp-rect.h b/src/sp-rect.h index 12f94a744..04026e051 100644 --- a/src/sp-rect.h +++ b/src/sp-rect.h @@ -20,7 +20,7 @@ #define SP_RECT(obj) ((SPRect*)obj) -#define SP_IS_RECT(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_RECT(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPRect : public SPShape { public: diff --git a/src/sp-root.h b/src/sp-root.h index d9c96da50..6853a8c8a 100644 --- a/src/sp-root.h +++ b/src/sp-root.h @@ -20,7 +20,7 @@ #include "sp-item-group.h" #define SP_ROOT(obj) ((SPRoot*)obj) -#define SP_IS_ROOT(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_ROOT(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPDefs; diff --git a/src/sp-script.h b/src/sp-script.h index 62d6eba7a..f6ef9d5fd 100644 --- a/src/sp-script.h +++ b/src/sp-script.h @@ -15,7 +15,7 @@ #include "sp-item.h" #define SP_SCRIPT(obj) ((SPScript*)obj) -#define SP_IS_SCRIPT(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_SCRIPT(obj) (dynamic_cast((SPObject*)obj) != NULL) /* SPScript */ class SPScript : public SPObject { diff --git a/src/sp-shape.h b/src/sp-shape.h index 980bae934..806615606 100644 --- a/src/sp-shape.h +++ b/src/sp-shape.h @@ -23,7 +23,7 @@ #include #define SP_SHAPE(obj) ((SPShape*)obj) -#define SP_IS_SHAPE(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_SHAPE(obj) (dynamic_cast((SPObject*)obj) != NULL) #define SP_SHAPE_WRITE_PATH (1 << 2) diff --git a/src/sp-spiral.h b/src/sp-spiral.h index f6bce7b61..6066b6157 100644 --- a/src/sp-spiral.h +++ b/src/sp-spiral.h @@ -25,7 +25,7 @@ #define SP_SPIRAL(obj) ((SPSpiral*)obj) -#define SP_IS_SPIRAL(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_SPIRAL(obj) (dynamic_cast((SPObject*)obj) != NULL) /** * A spiral Shape. diff --git a/src/sp-star.h b/src/sp-star.h index 48f17f161..fc6de84e1 100644 --- a/src/sp-star.h +++ b/src/sp-star.h @@ -18,7 +18,7 @@ #define SP_STAR(obj) ((SPStar*)obj) -#define SP_IS_STAR(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_STAR(obj) (dynamic_cast((SPObject*)obj) != NULL) typedef enum { SP_STAR_POINT_KNOT1, diff --git a/src/sp-stop.h b/src/sp-stop.h index 17b156e31..b0bae50d1 100644 --- a/src/sp-stop.h +++ b/src/sp-stop.h @@ -17,7 +17,7 @@ class ustring; } #define SP_STOP(obj) ((SPStop*)obj) -#define SP_IS_STOP(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_STOP(obj) (dynamic_cast((SPObject*)obj) != NULL) /** Gradient stop. */ class SPStop : public SPObject { diff --git a/src/sp-string.h b/src/sp-string.h index 2c6a92001..d7634a719 100644 --- a/src/sp-string.h +++ b/src/sp-string.h @@ -11,7 +11,7 @@ #include "sp-object.h" #define SP_STRING(obj) ((SPString*)obj) -#define SP_IS_STRING(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_STRING(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPString : public SPObject { public: diff --git a/src/sp-style-elem.h b/src/sp-style-elem.h index cc080eb90..83fe2ea5e 100644 --- a/src/sp-style-elem.h +++ b/src/sp-style-elem.h @@ -5,7 +5,7 @@ #include "media.h" #define SP_STYLE_ELEM(obj) ((SPStyleElem*)obj) -#define SP_IS_STYLE_ELEM(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_STYLE_ELEM(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPStyleElem : public SPObject { public: diff --git a/src/sp-switch.h b/src/sp-switch.h index 24a2dbae6..3323617f9 100644 --- a/src/sp-switch.h +++ b/src/sp-switch.h @@ -18,7 +18,7 @@ #include #define SP_SWITCH(obj) ((SPSwitch*)obj) -#define SP_IS_SWITCH(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_SWITCH(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPSwitch : public SPGroup { public: diff --git a/src/sp-symbol.h b/src/sp-symbol.h index e0e98c62e..67e68d2e8 100644 --- a/src/sp-symbol.h +++ b/src/sp-symbol.h @@ -19,7 +19,7 @@ #define SP_TYPE_SYMBOL (sp_symbol_get_type ()) #define SP_SYMBOL(obj) ((SPSymbol*)obj) -#define SP_IS_SYMBOL(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_SYMBOL(obj) (dynamic_cast((SPObject*)obj) != NULL) #include <2geom/affine.h> #include "svg/svg-length.h" diff --git a/src/sp-text.h b/src/sp-text.h index 7722a4c7a..b23865855 100644 --- a/src/sp-text.h +++ b/src/sp-text.h @@ -22,7 +22,7 @@ #include "libnrtype/Layout-TNG.h" #define SP_TEXT(obj) ((SPText*)obj) -#define SP_IS_TEXT(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_TEXT(obj) (dynamic_cast((SPObject*)obj) != NULL) /* Text specific flags */ #define SP_TEXT_CONTENT_MODIFIED_FLAG SP_OBJECT_USER_MODIFIED_FLAG_A diff --git a/src/sp-textpath.h b/src/sp-textpath.h index 94672b36d..1191a59f6 100644 --- a/src/sp-textpath.h +++ b/src/sp-textpath.h @@ -10,7 +10,7 @@ class Path; #define SP_TEXTPATH(obj) ((SPTextPath*)obj) -#define SP_IS_TEXTPATH(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_TEXTPATH(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPTextPath : public SPItem { public: diff --git a/src/sp-title.h b/src/sp-title.h index 0660492ee..671527bc1 100644 --- a/src/sp-title.h +++ b/src/sp-title.h @@ -15,7 +15,7 @@ #include "sp-object.h" #define SP_TITLE(obj) ((SPTitle*)obj) -#define SP_IS_TITLE(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_TITLE(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPTitle : public SPObject { public: diff --git a/src/sp-tref.h b/src/sp-tref.h index 8be5afc18..f38a76e57 100644 --- a/src/sp-tref.h +++ b/src/sp-tref.h @@ -23,7 +23,7 @@ /* tref base class */ #define SP_TREF(obj) ((SPTRef*)obj) -#define SP_IS_TREF(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_TREF(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPTRef : public SPItem { public: diff --git a/src/sp-tspan.h b/src/sp-tspan.h index 75ef190c6..c86095273 100644 --- a/src/sp-tspan.h +++ b/src/sp-tspan.h @@ -10,7 +10,7 @@ #include "text-tag-attributes.h" #define SP_TSPAN(obj) ((SPTSpan*)obj) -#define SP_IS_TSPAN(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_TSPAN(obj) (dynamic_cast((SPObject*)obj) != NULL) enum { SP_TSPAN_ROLE_UNSPECIFIED, diff --git a/src/sp-use.h b/src/sp-use.h index a1817fc32..b90c98ad2 100644 --- a/src/sp-use.h +++ b/src/sp-use.h @@ -19,7 +19,7 @@ #include "sp-item.h" #define SP_USE(obj) ((SPUse*)obj) -#define SP_IS_USE(obj) (dynamic_cast((SPObject*)obj)) +#define SP_IS_USE(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPUseReference; diff --git a/src/spiral-context.h b/src/spiral-context.h index 9e3987eeb..21b109f07 100644 --- a/src/spiral-context.h +++ b/src/spiral-context.h @@ -24,7 +24,7 @@ #include "sp-spiral.h" #define SP_SPIRAL_CONTEXT(obj) ((SPSpiralContext*)obj) -#define SP_IS_SPIRAL_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj)) +#define SP_IS_SPIRAL_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) class SPSpiralContext : public SPEventContext { public: diff --git a/src/spray-context.h b/src/spray-context.h index 796f094cd..2b20ae13d 100644 --- a/src/spray-context.h +++ b/src/spray-context.h @@ -22,7 +22,7 @@ #include "event-context.h" #define SP_SPRAY_CONTEXT(obj) ((SPSprayContext*)obj) -#define SP_IS_SPRAY_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj)) +#define SP_IS_SPRAY_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) namespace Inkscape { namespace UI { diff --git a/src/text-context.h b/src/text-context.h index 8da7af7e5..196ecf576 100644 --- a/src/text-context.h +++ b/src/text-context.h @@ -24,7 +24,7 @@ #include "libnrtype/Layout-TNG.h" #define SP_TEXT_CONTEXT(obj) ((SPTextContext*)obj) -#define SP_IS_TEXT_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj)) +#define SP_IS_TEXT_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) struct SPCtrlLine; diff --git a/src/zoom-context.h b/src/zoom-context.h index b5d022e5e..70e9e04f5 100644 --- a/src/zoom-context.h +++ b/src/zoom-context.h @@ -16,7 +16,7 @@ #include "event-context.h" #define SP_ZOOM_CONTEXT(obj) ((SPZoomContext*)obj) -#define SP_IS_ZOOM_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj)) +#define SP_IS_ZOOM_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) class SPZoomContext : public SPEventContext { public: -- cgit v1.2.3 From 59766f13490d75264fa928c0b2e8260a995510cf Mon Sep 17 00:00:00 2001 From: Diederik van Lierop <> Date: Sat, 14 Sep 2013 22:58:56 +0200 Subject: Fixes bug 953992 (Imported pattern fill disappers while transforming) Fixed bugs: - https://launchpad.net/bugs/953992 (bzr r12519) --- src/sp-pattern.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/sp-pattern.cpp b/src/sp-pattern.cpp index 62811d51a..b8368a416 100644 --- a/src/sp-pattern.cpp +++ b/src/sp-pattern.cpp @@ -616,13 +616,13 @@ sp_pattern_create_pattern(SPPaintServer *ps, // viewBox to pattern server Geom::Affine vb2ps = Geom::identity(); - if (pat->viewBox_set) { - Geom::Rect vb = *pattern_viewBox(pat); - gdouble tmp_x = pattern_width (pat) / vb.width(); - gdouble tmp_y = pattern_height (pat) / vb.height(); + if (shown->viewBox_set) { + Geom::Rect vb = *pattern_viewBox(shown); + gdouble tmp_x = pattern_width (shown) / vb.width(); + gdouble tmp_y = pattern_height (shown) / vb.height(); // FIXME: preserveAspectRatio must be taken into account here too! - vb2ps = Geom::Affine(tmp_x, 0.0, 0.0, tmp_y, pattern_x(pat) - vb.left() * tmp_x, pattern_y(pat) - vb.top() * tmp_y); + vb2ps = Geom::Affine(tmp_x, 0.0, 0.0, tmp_y, pattern_x(shown) - vb.left() * tmp_x, pattern_y(shown) - vb.top() * tmp_y); } // We must determine the size and scaling of the pattern at the time it is displayed and render -- cgit v1.2.3 From 5cf6efefbfd06d723973b6517b442f0ee64416b7 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sun, 15 Sep 2013 02:43:49 +0200 Subject: Added runtime check in SP_-cast macros. (bzr r11608.1.123) --- src/arc-context.h | 2 +- src/box3d-context.h | 2 +- src/box3d-side.h | 2 +- src/box3d.h | 2 +- src/connector-context.h | 2 +- src/draw-context.h | 2 +- src/dropper-context.h | 2 +- src/event-context.h | 2 +- src/filters/blend.h | 2 +- src/filters/colormatrix.h | 2 +- src/filters/componenttransfer-funcnode.h | 2 +- src/filters/componenttransfer.h | 2 +- src/filters/composite.h | 2 +- src/filters/convolvematrix.h | 2 +- src/filters/diffuselighting.h | 2 +- src/filters/displacementmap.h | 2 +- src/filters/distantlight.h | 2 +- src/filters/flood.h | 2 +- src/filters/gaussian-blur.h | 2 +- src/filters/image.h | 2 +- src/filters/merge.h | 2 +- src/filters/mergenode.h | 2 +- src/filters/morphology.h | 2 +- src/filters/offset.h | 2 +- src/filters/pointlight.h | 2 +- src/filters/specularlighting.h | 2 +- src/filters/spotlight.h | 2 +- src/filters/tile.h | 2 +- src/filters/turbulence.h | 2 +- src/flood-context.h | 2 +- src/gradient-context.h | 2 +- src/lpe-tool-context.h | 2 +- src/marker.h | 2 +- src/measure-context.h | 2 +- src/mesh-context.h | 2 +- src/pen-context.h | 2 +- src/pencil-context.h | 2 +- src/persp3d.h | 2 +- src/rect-context.h | 2 +- src/select-context.h | 2 +- src/sp-anchor.h | 2 +- src/sp-clippath.h | 2 +- src/sp-defs.h | 2 +- src/sp-desc.h | 2 +- src/sp-ellipse.h | 8 ++++---- src/sp-filter-primitive.h | 2 +- src/sp-filter.h | 2 +- src/sp-flowdiv.h | 10 +++++----- src/sp-flowregion.h | 4 ++-- src/sp-flowtext.h | 2 +- src/sp-font-face.h | 2 +- src/sp-font.h | 2 +- src/sp-glyph-kerning.h | 4 ++-- src/sp-glyph.h | 2 +- src/sp-gradient.h | 2 +- src/sp-guide.h | 2 +- src/sp-image.h | 2 +- src/sp-item-group.h | 2 +- src/sp-item.h | 2 +- src/sp-line.h | 2 +- src/sp-linear-gradient.h | 2 +- src/sp-lpe-item.h | 2 +- src/sp-mask.h | 2 +- src/sp-mesh-gradient.h | 2 +- src/sp-mesh-patch.h | 2 +- src/sp-mesh-row.h | 2 +- src/sp-metadata.h | 2 +- src/sp-missing-glyph.h | 2 +- src/sp-namedview.h | 2 +- src/sp-object-group.h | 2 +- src/sp-object.h | 2 +- src/sp-offset.h | 2 +- src/sp-paint-server.h | 2 +- src/sp-path.h | 2 +- src/sp-pattern.h | 2 +- src/sp-polygon.h | 2 +- src/sp-polyline.h | 2 +- src/sp-radial-gradient.h | 2 +- src/sp-rect.h | 2 +- src/sp-root.h | 2 +- src/sp-script.h | 2 +- src/sp-shape.h | 2 +- src/sp-spiral.h | 2 +- src/sp-star.h | 2 +- src/sp-stop.h | 2 +- src/sp-string.h | 2 +- src/sp-style-elem.h | 2 +- src/sp-switch.h | 2 +- src/sp-symbol.h | 2 +- src/sp-text.h | 2 +- src/sp-textpath.h | 2 +- src/sp-title.h | 2 +- src/sp-tref.h | 2 +- src/sp-tspan.h | 2 +- src/sp-use.h | 2 +- src/spiral-context.h | 2 +- src/spray-context.h | 2 +- src/text-context.h | 2 +- src/ui/tool/node-tool.h | 2 +- src/zoom-context.h | 2 +- 100 files changed, 109 insertions(+), 109 deletions(-) diff --git a/src/arc-context.h b/src/arc-context.h index ec2dbb2bb..56eb02943 100644 --- a/src/arc-context.h +++ b/src/arc-context.h @@ -23,7 +23,7 @@ #include "sp-ellipse.h" -#define SP_ARC_CONTEXT(obj) ((SPArcContext*)obj) +#define SP_ARC_CONTEXT(obj) (dynamic_cast((SPEventContext*)obj)) #define SP_IS_ARC_CONTEXT(obj) (dynamic_cast(const SPEventContext*(obj)) != NULL) class SPArcContext : public SPEventContext { diff --git a/src/box3d-context.h b/src/box3d-context.h index 308acba3d..044d79d7d 100644 --- a/src/box3d-context.h +++ b/src/box3d-context.h @@ -23,7 +23,7 @@ #include "box3d.h" -#define SP_BOX3D_CONTEXT(obj) ((Box3DContext*)obj) +#define SP_BOX3D_CONTEXT(obj) (dynamic_cast((SPEventContext*)obj)) #define SP_IS_BOX3D_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) class Box3DContext : public SPEventContext { diff --git a/src/box3d-side.h b/src/box3d-side.h index 7306a1b44..04bd196c2 100644 --- a/src/box3d-side.h +++ b/src/box3d-side.h @@ -17,7 +17,7 @@ #include "axis-manip.h" -#define SP_BOX3D_SIDE(obj) ((Box3DSide*)obj) +#define SP_BOX3D_SIDE(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_BOX3D_SIDE(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPBox3D; diff --git a/src/box3d.h b/src/box3d.h index 6df746c73..18d99d60a 100644 --- a/src/box3d.h +++ b/src/box3d.h @@ -21,7 +21,7 @@ #include "axis-manip.h" #define SP_TYPE_BOX3D (box3d_get_type ()) -#define SP_BOX3D(obj) ((SPBox3D*)obj) +#define SP_BOX3D(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_BOX3D(obj) (dynamic_cast((SPObject*)obj) != NULL) class Persp3D; diff --git a/src/connector-context.h b/src/connector-context.h index 9b76fa5cd..1c4bfc34d 100644 --- a/src/connector-context.h +++ b/src/connector-context.h @@ -20,7 +20,7 @@ #include "libavoid/connector.h" #include -#define SP_CONNECTOR_CONTEXT(obj) ((SPConnectorContext*)obj) +#define SP_CONNECTOR_CONTEXT(obj) (dynamic_cast((SPEventContext*)obj)) //#define SP_IS_CONNECTOR_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) struct SPKnot; diff --git a/src/draw-context.h b/src/draw-context.h index a9ad5c118..534c706d6 100644 --- a/src/draw-context.h +++ b/src/draw-context.h @@ -22,7 +22,7 @@ /* Freehand context */ -#define SP_DRAW_CONTEXT(obj) ((SPDrawContext*)obj) +#define SP_DRAW_CONTEXT(obj) (dynamic_cast((SPEventContext*)obj)) #define SP_IS_DRAW_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) struct SPDrawAnchor; diff --git a/src/dropper-context.h b/src/dropper-context.h index 9c727902a..6e1015644 100644 --- a/src/dropper-context.h +++ b/src/dropper-context.h @@ -14,7 +14,7 @@ #include "event-context.h" -#define SP_DROPPER_CONTEXT(obj) ((SPDropperContext*)obj) +#define SP_DROPPER_CONTEXT(obj) (dynamic_cast((SPEventContext*)obj)) #define SP_IS_DROPPER_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) enum { diff --git a/src/event-context.h b/src/event-context.h index 951d97160..33bab5e3e 100644 --- a/src/event-context.h +++ b/src/event-context.h @@ -33,7 +33,7 @@ namespace Inkscape { } } -#define SP_EVENT_CONTEXT(obj) ((SPEventContext*)obj) +#define SP_EVENT_CONTEXT(obj) (dynamic_cast((SPEventContext*)obj)) #define SP_IS_EVENT_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) gboolean sp_event_context_snap_watchdog_callback(gpointer data); diff --git a/src/filters/blend.h b/src/filters/blend.h index 779eed3e0..d5af9fe7d 100644 --- a/src/filters/blend.h +++ b/src/filters/blend.h @@ -16,7 +16,7 @@ #include "sp-filter-primitive.h" #include "display/nr-filter-blend.h" -#define SP_FEBLEND(obj) ((SPFeBlend*)obj) +#define SP_FEBLEND(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FEBLEND(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPFeBlend : public SPFilterPrimitive { diff --git a/src/filters/colormatrix.h b/src/filters/colormatrix.h index e109bbcdd..2a1c403f1 100644 --- a/src/filters/colormatrix.h +++ b/src/filters/colormatrix.h @@ -15,7 +15,7 @@ #include "sp-filter-primitive.h" #include "display/nr-filter-colormatrix.h" -#define SP_FECOLORMATRIX(obj) ((SPFeColorMatrix*)obj) +#define SP_FECOLORMATRIX(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FECOLORMATRIX(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPFeColorMatrix : public SPFilterPrimitive { diff --git a/src/filters/componenttransfer-funcnode.h b/src/filters/componenttransfer-funcnode.h index 10eead379..a5f813e1e 100644 --- a/src/filters/componenttransfer-funcnode.h +++ b/src/filters/componenttransfer-funcnode.h @@ -29,7 +29,7 @@ //#define SP_IS_FEFUNCB(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), SP_TYPE_FEFUNCB)) //#define SP_IS_FEFUNCA(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), SP_TYPE_FEFUNCA)) -#define SP_FEFUNCNODE(obj) ((SPFeFuncNode*)obj) +#define SP_FEFUNCNODE(obj) (dynamic_cast((SPObject*)obj)) //#define SP_IS_FEFUNCR(obj) (obj != NULL && static_cast(obj)->typeHierarchy.count(typeid(SPFeFuncNode))) //#define SP_IS_FEFUNCG(obj) (obj != NULL && static_cast(obj)->typeHierarchy.count(typeid(SPFeFuncNode))) diff --git a/src/filters/componenttransfer.h b/src/filters/componenttransfer.h index 14149171c..8dbe91db1 100644 --- a/src/filters/componenttransfer.h +++ b/src/filters/componenttransfer.h @@ -13,7 +13,7 @@ #include "sp-filter-primitive.h" -#define SP_FECOMPONENTTRANSFER(obj) ((SPFeComponentTransfer*)obj) +#define SP_FECOMPONENTTRANSFER(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FECOMPONENTTRANSFER(obj) (dynamic_cast((SPObject*)obj) != NULL) namespace Inkscape { diff --git a/src/filters/composite.h b/src/filters/composite.h index b3500ecaf..b8c0178d1 100644 --- a/src/filters/composite.h +++ b/src/filters/composite.h @@ -13,7 +13,7 @@ #include "sp-filter-primitive.h" -#define SP_FECOMPOSITE(obj) ((SPFeComposite*)obj) +#define SP_FECOMPOSITE(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FECOMPOSITE(obj) (dynamic_cast((SPObject*)obj) != NULL) enum FeCompositeOperator { diff --git a/src/filters/convolvematrix.h b/src/filters/convolvematrix.h index 6cbd63998..9783eaa47 100644 --- a/src/filters/convolvematrix.h +++ b/src/filters/convolvematrix.h @@ -18,7 +18,7 @@ #include "number-opt-number.h" #include "display/nr-filter-convolve-matrix.h" -#define SP_FECONVOLVEMATRIX(obj) ((SPFeConvolveMatrix*)obj) +#define SP_FECONVOLVEMATRIX(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FECONVOLVEMATRIX(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPFeConvolveMatrix : public SPFilterPrimitive { diff --git a/src/filters/diffuselighting.h b/src/filters/diffuselighting.h index 701128158..f41c6c056 100644 --- a/src/filters/diffuselighting.h +++ b/src/filters/diffuselighting.h @@ -15,7 +15,7 @@ #include "sp-filter-primitive.h" #include "number-opt-number.h" -#define SP_FEDIFFUSELIGHTING(obj) ((SPFeDiffuseLighting*)obj) +#define SP_FEDIFFUSELIGHTING(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FEDIFFUSELIGHTING(obj) (dynamic_cast((SPObject*)obj) != NULL) struct SVGICCColor; diff --git a/src/filters/displacementmap.h b/src/filters/displacementmap.h index 66b0c8afc..85a6beaaa 100644 --- a/src/filters/displacementmap.h +++ b/src/filters/displacementmap.h @@ -14,7 +14,7 @@ #include "sp-filter-primitive.h" -#define SP_FEDISPLACEMENTMAP(obj) ((SPFeDisplacementMap*)obj) +#define SP_FEDISPLACEMENTMAP(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FEDISPLACEMENTMAP(obj) (dynamic_cast((SPObject*)obj) != NULL) enum FilterDisplacementMapChannelSelector { diff --git a/src/filters/distantlight.h b/src/filters/distantlight.h index bab49726e..0eebf768f 100644 --- a/src/filters/distantlight.h +++ b/src/filters/distantlight.h @@ -17,7 +17,7 @@ #include "sp-object.h" -#define SP_FEDISTANTLIGHT(obj) ((SPFeDistantLight*)obj) +#define SP_FEDISTANTLIGHT(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FEDISTANTLIGHT(obj) (dynamic_cast((SPObject*)obj) != NULL) /* Distant light class */ diff --git a/src/filters/flood.h b/src/filters/flood.h index d052dd8ff..75e332b73 100644 --- a/src/filters/flood.h +++ b/src/filters/flood.h @@ -15,7 +15,7 @@ #include "sp-filter-primitive.h" #include "svg/svg-icc-color.h" -#define SP_FEFLOOD(obj) ((SPFeFlood*)obj) +#define SP_FEFLOOD(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FEFLOOD(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPFeFlood : public SPFilterPrimitive { diff --git a/src/filters/gaussian-blur.h b/src/filters/gaussian-blur.h index 7aa293b93..00de8a95f 100644 --- a/src/filters/gaussian-blur.h +++ b/src/filters/gaussian-blur.h @@ -15,7 +15,7 @@ #include "sp-filter-primitive.h" #include "number-opt-number.h" -#define SP_GAUSSIANBLUR(obj) ((SPGaussianBlur*)obj) +#define SP_GAUSSIANBLUR(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_GAUSSIANBLUR(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPGaussianBlur : public SPFilterPrimitive { diff --git a/src/filters/image.h b/src/filters/image.h index 055e4e31a..452e08134 100644 --- a/src/filters/image.h +++ b/src/filters/image.h @@ -18,7 +18,7 @@ #include "sp-item.h" #include "uri-references.h" -#define SP_FEIMAGE(obj) ((SPFeImage*)obj) +#define SP_FEIMAGE(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FEIMAGE(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPFeImage : public SPFilterPrimitive { diff --git a/src/filters/merge.h b/src/filters/merge.h index 55f0b0be7..68257c38e 100644 --- a/src/filters/merge.h +++ b/src/filters/merge.h @@ -12,7 +12,7 @@ #include "sp-filter-primitive.h" -#define SP_FEMERGE(obj) ((SPFeMerge*)obj) +#define SP_FEMERGE(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FEMERGE(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPFeMerge : public SPFilterPrimitive { diff --git a/src/filters/mergenode.h b/src/filters/mergenode.h index 3fd5e890b..408b3bbb8 100644 --- a/src/filters/mergenode.h +++ b/src/filters/mergenode.h @@ -17,7 +17,7 @@ #include "sp-object.h" -#define SP_FEMERGENODE(obj) ((SPFeMergeNode*)obj) +#define SP_FEMERGENODE(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FEMERGENODE(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPFeMergeNode : public SPObject { diff --git a/src/filters/morphology.h b/src/filters/morphology.h index ebcdfc28f..f84a7271e 100644 --- a/src/filters/morphology.h +++ b/src/filters/morphology.h @@ -16,7 +16,7 @@ #include "number-opt-number.h" #include "display/nr-filter-morphology.h" -#define SP_FEMORPHOLOGY(obj) ((SPFeMorphology*)obj) +#define SP_FEMORPHOLOGY(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FEMORPHOLOGY(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPFeMorphology : public SPFilterPrimitive { diff --git a/src/filters/offset.h b/src/filters/offset.h index 43407c3a9..0d26f6f90 100644 --- a/src/filters/offset.h +++ b/src/filters/offset.h @@ -14,7 +14,7 @@ #include "sp-filter-primitive.h" -#define SP_FEOFFSET(obj) ((SPFeOffset*)obj) +#define SP_FEOFFSET(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FEOFFSET(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPFeOffset : public SPFilterPrimitive { diff --git a/src/filters/pointlight.h b/src/filters/pointlight.h index 2d092bd1c..3819d8ff5 100644 --- a/src/filters/pointlight.h +++ b/src/filters/pointlight.h @@ -17,7 +17,7 @@ #include "sp-object.h" -#define SP_FEPOINTLIGHT(obj) ((SPFePointLight*)obj) +#define SP_FEPOINTLIGHT(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FEPOINTLIGHT(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPFePointLight : public SPObject { diff --git a/src/filters/specularlighting.h b/src/filters/specularlighting.h index f99dbd9ce..1de32ec58 100644 --- a/src/filters/specularlighting.h +++ b/src/filters/specularlighting.h @@ -17,7 +17,7 @@ #include "sp-filter-primitive.h" #include "number-opt-number.h" -#define SP_FESPECULARLIGHTING(obj) ((SPFeSpecularLighting*)obj) +#define SP_FESPECULARLIGHTING(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FESPECULARLIGHTING(obj) (dynamic_cast((SPObject*)obj) != NULL) struct SVGICCColor; diff --git a/src/filters/spotlight.h b/src/filters/spotlight.h index 55717ac5d..8caf12858 100644 --- a/src/filters/spotlight.h +++ b/src/filters/spotlight.h @@ -17,7 +17,7 @@ #include "sp-object.h" -#define SP_FESPOTLIGHT(obj) ((SPFeSpotLight*)obj) +#define SP_FESPOTLIGHT(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FESPOTLIGHT(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPFeSpotLight : public SPObject { diff --git a/src/filters/tile.h b/src/filters/tile.h index 9b2199adc..cc1a006dd 100644 --- a/src/filters/tile.h +++ b/src/filters/tile.h @@ -14,7 +14,7 @@ #include "sp-filter-primitive.h" -#define SP_FETILE(obj) ((SPFeTile*)obj) +#define SP_FETILE(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FETILE(obj) (dynamic_cast((SPObject*)obj) != NULL) /* FeTile base class */ diff --git a/src/filters/turbulence.h b/src/filters/turbulence.h index d0bb6f878..89e6d4a19 100644 --- a/src/filters/turbulence.h +++ b/src/filters/turbulence.h @@ -17,7 +17,7 @@ #include "number-opt-number.h" #include "display/nr-filter-turbulence.h" -#define SP_FETURBULENCE(obj) ((SPFeTurbulence*)obj) +#define SP_FETURBULENCE(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FETURBULENCE(obj) (dynamic_cast((SPObject*)obj) != NULL) /* FeTurbulence base class */ diff --git a/src/flood-context.h b/src/flood-context.h index 26fc03a3f..48bf36f85 100644 --- a/src/flood-context.h +++ b/src/flood-context.h @@ -16,7 +16,7 @@ #include #include "event-context.h" -#define SP_FLOOD_CONTEXT(obj) ((SPFloodContext*)obj) +#define SP_FLOOD_CONTEXT(obj) (dynamic_cast((SPEventContext*)obj)) #define SP_IS_FLOOD_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) diff --git a/src/gradient-context.h b/src/gradient-context.h index a49ea305a..7a2918f3d 100644 --- a/src/gradient-context.h +++ b/src/gradient-context.h @@ -19,7 +19,7 @@ #include #include "event-context.h" -#define SP_GRADIENT_CONTEXT(obj) ((SPGradientContext*)obj) +#define SP_GRADIENT_CONTEXT(obj) (dynamic_cast((SPEventContext*)obj)) #define SP_IS_GRADIENT_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) class SPGradientContext : public SPEventContext { diff --git a/src/lpe-tool-context.h b/src/lpe-tool-context.h index 1097b12c8..0e9851cdb 100644 --- a/src/lpe-tool-context.h +++ b/src/lpe-tool-context.h @@ -17,7 +17,7 @@ #include "pen-context.h" -#define SP_LPETOOL_CONTEXT(obj) ((SPLPEToolContext*)obj) +#define SP_LPETOOL_CONTEXT(obj) (dynamic_cast((SPEventContext*)obj)) #define SP_IS_LPETOOL_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) /* This is the list of subtools from which the toolbar of the LPETool is built automatically */ diff --git a/src/marker.h b/src/marker.h index 3da12af08..aae4e020f 100644 --- a/src/marker.h +++ b/src/marker.h @@ -19,7 +19,7 @@ */ #define SP_TYPE_MARKER (sp_marker_get_type ()) -#define SP_MARKER(obj) ((SPMarker*)obj) +#define SP_MARKER(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_MARKER(obj) (dynamic_cast((SPObject*)obj) != NULL) struct SPMarkerView; diff --git a/src/measure-context.h b/src/measure-context.h index 7dd8a59b4..e42265045 100644 --- a/src/measure-context.h +++ b/src/measure-context.h @@ -14,7 +14,7 @@ #include "event-context.h" -#define SP_MEASURE_CONTEXT(obj) ((SPMeasureContext*)obj) +#define SP_MEASURE_CONTEXT(obj) (dynamic_cast((SPEventContext*)obj)) #define SP_IS_MEASURE_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) class SPMeasureContext : public SPEventContext { diff --git a/src/mesh-context.h b/src/mesh-context.h index 384aca0ff..531587654 100644 --- a/src/mesh-context.h +++ b/src/mesh-context.h @@ -21,7 +21,7 @@ #include #include "event-context.h" -#define SP_MESH_CONTEXT(obj) ((SPMeshContext*)obj) +#define SP_MESH_CONTEXT(obj) (dynamic_cast((SPEventContext*)obj)) #define SP_IS_MESH_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) class SPMeshContext : public SPEventContext { diff --git a/src/pen-context.h b/src/pen-context.h index 0e318f66b..c096865f1 100644 --- a/src/pen-context.h +++ b/src/pen-context.h @@ -8,7 +8,7 @@ #include "draw-context.h" #include "live_effects/effect.h" -#define SP_PEN_CONTEXT(obj) ((SPPenContext*)obj) +#define SP_PEN_CONTEXT(obj) (dynamic_cast((SPEventContext*)obj)) #define SP_IS_PEN_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) struct SPCtrlLine; diff --git a/src/pencil-context.h b/src/pencil-context.h index ff13a5ac0..b3ded0242 100644 --- a/src/pencil-context.h +++ b/src/pencil-context.h @@ -7,7 +7,7 @@ #include "draw-context.h" -#define SP_PENCIL_CONTEXT(obj) ((SPPencilContext*)obj) +#define SP_PENCIL_CONTEXT(obj) (dynamic_cast((SPEventContext*)obj)) #define SP_IS_PENCIL_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) enum PencilState { diff --git a/src/persp3d.h b/src/persp3d.h index 450d41d11..cb7e7f900 100644 --- a/src/persp3d.h +++ b/src/persp3d.h @@ -12,7 +12,7 @@ * Released under GNU GPL, read the file 'COPYING' for more information */ -#define SP_PERSP3D(obj) ((Persp3D*)obj) +#define SP_PERSP3D(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_PERSP3D(obj) (dynamic_cast((SPObject*)obj) != NULL) #include diff --git a/src/rect-context.h b/src/rect-context.h index f381fcba2..a85968b1c 100644 --- a/src/rect-context.h +++ b/src/rect-context.h @@ -21,7 +21,7 @@ #include "sp-rect.h" -#define SP_RECT_CONTEXT(obj) ((SPRectContext*)obj) +#define SP_RECT_CONTEXT(obj) (dynamic_cast((SPEventContext*)obj)) #define SP_IS_RECT_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) class SPRectContext : public SPEventContext { diff --git a/src/select-context.h b/src/select-context.h index 3a601aa7a..bcea8537a 100644 --- a/src/select-context.h +++ b/src/select-context.h @@ -15,7 +15,7 @@ #include "event-context.h" #include -#define SP_SELECT_CONTEXT(obj) ((SPSelectContext*)obj) +#define SP_SELECT_CONTEXT(obj) (dynamic_cast((SPEventContext*)obj)) #define SP_IS_SELECT_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) struct SPCanvasItem; diff --git a/src/sp-anchor.h b/src/sp-anchor.h index e1f7d708a..cada9665e 100644 --- a/src/sp-anchor.h +++ b/src/sp-anchor.h @@ -15,7 +15,7 @@ #include "sp-item-group.h" -#define SP_ANCHOR(obj) ((SPAnchor*)obj) +#define SP_ANCHOR(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_ANCHOR(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPAnchor : public SPGroup { diff --git a/src/sp-clippath.h b/src/sp-clippath.h index e5b65b1b8..ba7a90a57 100644 --- a/src/sp-clippath.h +++ b/src/sp-clippath.h @@ -15,7 +15,7 @@ * Released under GNU GPL, read the file 'COPYING' for more information */ -#define SP_CLIPPATH(obj) ((SPClipPath*)obj) +#define SP_CLIPPATH(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_CLIPPATH(obj) (dynamic_cast((SPObject*)obj) != NULL) struct SPClipPathView; diff --git a/src/sp-defs.h b/src/sp-defs.h index dbe0df280..6efdea1f3 100644 --- a/src/sp-defs.h +++ b/src/sp-defs.h @@ -15,7 +15,7 @@ #include "sp-object.h" -#define SP_DEFS(obj) ((SPDefs*)obj) +#define SP_DEFS(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_DEFS(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPDefs : public SPObject { diff --git a/src/sp-desc.h b/src/sp-desc.h index 7a89aa7e6..2bb42b333 100644 --- a/src/sp-desc.h +++ b/src/sp-desc.h @@ -14,7 +14,7 @@ #include "sp-object.h" -#define SP_DESC(obj) ((SPDesc*)obj) +#define SP_DESC(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_DESC(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPDesc : public SPObject { diff --git a/src/sp-ellipse.h b/src/sp-ellipse.h index 32cf58623..67e12006a 100644 --- a/src/sp-ellipse.h +++ b/src/sp-ellipse.h @@ -18,7 +18,7 @@ #include "sp-shape.h" /* Common parent class */ -#define SP_GENERICELLIPSE(obj) ((SPGenericEllipse*)obj) +#define SP_GENERICELLIPSE(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_GENERICELLIPSE(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPGenericEllipse : public SPShape { @@ -47,7 +47,7 @@ public: void sp_genericellipse_normalize (SPGenericEllipse *ellipse); /* SVG element */ -#define SP_ELLIPSE(obj) ((SPEllipse*)obj) +#define SP_ELLIPSE(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_ELLIPSE(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPEllipse : public SPGenericEllipse { @@ -64,7 +64,7 @@ public: void sp_ellipse_position_set (SPEllipse * ellipse, gdouble x, gdouble y, gdouble rx, gdouble ry); /* SVG element */ -#define SP_CIRCLE(obj) ((SPCircle*)obj) +#define SP_CIRCLE(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_CIRCLE(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPCircle : public SPGenericEllipse { @@ -79,7 +79,7 @@ public: }; /* element */ -#define SP_ARC(obj) ((SPArc*)obj) +#define SP_ARC(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_ARC(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPArc : public SPGenericEllipse { diff --git a/src/sp-filter-primitive.h b/src/sp-filter-primitive.h index e4dda2e06..040e2f31f 100644 --- a/src/sp-filter-primitive.h +++ b/src/sp-filter-primitive.h @@ -17,7 +17,7 @@ #include "sp-object.h" #include "svg/svg-length.h" -#define SP_FILTER_PRIMITIVE(obj) ((SPFilterPrimitive*)obj) +#define SP_FILTER_PRIMITIVE(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FILTER_PRIMITIVE(obj) (dynamic_cast((SPObject*)obj) != NULL) namespace Inkscape { diff --git a/src/sp-filter.h b/src/sp-filter.h index 29f1fb9f2..0d087c5bf 100644 --- a/src/sp-filter.h +++ b/src/sp-filter.h @@ -21,7 +21,7 @@ #include -#define SP_FILTER(obj) ((SPFilter*)obj) +#define SP_FILTER(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FILTER(obj) (dynamic_cast((SPObject*)obj) != NULL) #define SP_FILTER_FILTER_UNITS(f) (SP_FILTER(f)->filterUnits) diff --git a/src/sp-flowdiv.h b/src/sp-flowdiv.h index 756d211e9..d00cfc51b 100644 --- a/src/sp-flowdiv.h +++ b/src/sp-flowdiv.h @@ -7,19 +7,19 @@ #include "sp-object.h" #include "sp-item.h" -#define SP_FLOWDIV(obj) ((SPFlowdiv*)obj) +#define SP_FLOWDIV(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FLOWDIV(obj) (dynamic_cast((SPObject*)obj) != NULL) -#define SP_FLOWTSPAN(obj) ((SPFlowtspan*)obj) +#define SP_FLOWTSPAN(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FLOWTSPAN(obj) (dynamic_cast((SPObject*)obj) != NULL) -#define SP_FLOWPARA(obj) ((SPFlowpara*)obj) +#define SP_FLOWPARA(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FLOWPARA(obj) (dynamic_cast((SPObject*)obj) != NULL) -#define SP_FLOWLINE(obj) ((SPFlowline*)obj) +#define SP_FLOWLINE(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FLOWLINE(obj) (dynamic_cast((SPObject*)obj) != NULL) -#define SP_FLOWREGIONBREAK(obj) ((SPFlowregionbreak*)obj) +#define SP_FLOWREGIONBREAK(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FLOWREGIONBREAK(obj) (dynamic_cast((SPObject*)obj) != NULL) // these 3 are derivatives of SPItem to get the automatic style handling diff --git a/src/sp-flowregion.h b/src/sp-flowregion.h index 2a17b1309..59818651a 100644 --- a/src/sp-flowregion.h +++ b/src/sp-flowregion.h @@ -6,10 +6,10 @@ #include "sp-item.h" -#define SP_FLOWREGION(obj) ((SPFlowregion*)obj) +#define SP_FLOWREGION(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FLOWREGION(obj) (dynamic_cast((SPObject*)obj) != NULL) -#define SP_FLOWREGIONEXCLUDE(obj) ((SPFlowregionExclude*)obj) +#define SP_FLOWREGIONEXCLUDE(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FLOWREGIONEXCLUDE(obj) (dynamic_cast((SPObject*)obj) != NULL) class Path; diff --git a/src/sp-flowtext.h b/src/sp-flowtext.h index b1e2ccf8f..bd7c5990a 100644 --- a/src/sp-flowtext.h +++ b/src/sp-flowtext.h @@ -9,7 +9,7 @@ #include <2geom/forward.h> #include "libnrtype/Layout-TNG.h" -#define SP_FLOWTEXT(obj) ((SPFlowtext*)obj) +#define SP_FLOWTEXT(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FLOWTEXT(obj) (dynamic_cast((SPObject*)obj) != NULL) diff --git a/src/sp-font-face.h b/src/sp-font-face.h index c44692871..531dd5843 100644 --- a/src/sp-font-face.h +++ b/src/sp-font-face.h @@ -24,7 +24,7 @@ #include "sp-object.h" -#define SP_FONTFACE(obj) ((SPFontFace*)obj) +#define SP_FONTFACE(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FONTFACE(obj) (dynamic_cast((SPObject*)obj) != NULL) enum FontFaceStyleType{ diff --git a/src/sp-font.h b/src/sp-font.h index d90ee67f1..6e6f4eec2 100644 --- a/src/sp-font.h +++ b/src/sp-font.h @@ -18,7 +18,7 @@ #include "sp-object.h" -#define SP_FONT(obj) ((SPFont*)obj) +#define SP_FONT(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_FONT(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPFont : public SPObject { diff --git a/src/sp-glyph-kerning.h b/src/sp-glyph-kerning.h index c8cf6a0b6..5cae6b9dd 100644 --- a/src/sp-glyph-kerning.h +++ b/src/sp-glyph-kerning.h @@ -24,7 +24,7 @@ //#define SP_IS_HKERN(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_HKERN)) //#define SP_IS_HKERN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_HKERN)) -#define SP_HKERN(obj) ((SPHkern*)obj) +#define SP_HKERN(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_HKERN(obj) (dynamic_cast((SPObject*)obj) != NULL) //#define SP_VKERN(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SP_TYPE_VKERN, SPVkern)) @@ -32,7 +32,7 @@ //#define SP_IS_VKERN(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_VKERN)) //#define SP_IS_VKERN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_VKERN)) -#define SP_VKERN(obj) ((SPVkern*)obj) +#define SP_VKERN(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_VKERN(obj) (dynamic_cast((SPObject*)obj) != NULL) // CPPIFY: These casting macros are buggy, as Vkern and Hkern aren't "real" classes. diff --git a/src/sp-glyph.h b/src/sp-glyph.h index 7734efdb0..798d9ff2f 100644 --- a/src/sp-glyph.h +++ b/src/sp-glyph.h @@ -18,7 +18,7 @@ #include "sp-object.h" -#define SP_GLYPH(obj) ((SPGlyph*)obj) +#define SP_GLYPH(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_GLYPH(obj) (dynamic_cast((SPObject*)obj) != NULL) enum glyphArabicForm { diff --git a/src/sp-gradient.h b/src/sp-gradient.h index 157edf669..46eb41cdb 100644 --- a/src/sp-gradient.h +++ b/src/sp-gradient.h @@ -41,7 +41,7 @@ class SPGradientReference; class SPStop; -#define SP_GRADIENT(obj) ((SPGradient*)obj) +#define SP_GRADIENT(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_GRADIENT(obj) (dynamic_cast((SPObject*)obj) != NULL) enum SPGradientType { diff --git a/src/sp-guide.h b/src/sp-guide.h index 83a5e8349..fa4f0033b 100644 --- a/src/sp-guide.h +++ b/src/sp-guide.h @@ -23,7 +23,7 @@ struct SPCanvas; struct SPCanvasGroup; class SPDesktop; -#define SP_GUIDE(obj) ((SPGuide*)obj) +#define SP_GUIDE(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_GUIDE(obj) (dynamic_cast((SPObject*)obj) != NULL) /* Represents the constraint on p that dot(g.direction, p) == g.position. */ diff --git a/src/sp-image.h b/src/sp-image.h index d18a4ca6e..9a229e5f5 100644 --- a/src/sp-image.h +++ b/src/sp-image.h @@ -14,7 +14,7 @@ * Released under GNU GPL, read the file 'COPYING' for more information */ -#define SP_IMAGE(obj) ((SPImage*)obj) +#define SP_IMAGE(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_IMAGE(obj) (dynamic_cast((SPObject*)obj) != NULL) /* SPImage */ diff --git a/src/sp-item-group.h b/src/sp-item-group.h index ae77ed809..88ca9657a 100644 --- a/src/sp-item-group.h +++ b/src/sp-item-group.h @@ -16,7 +16,7 @@ #include #include "sp-lpe-item.h" -#define SP_GROUP(obj) ((SPGroup*)obj) +#define SP_GROUP(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_GROUP(obj) (dynamic_cast((SPObject*)obj) != NULL) #define SP_IS_LAYER(obj) (SP_IS_GROUP(obj) && SP_GROUP(obj)->layerMode() == SPGroup::LAYER) diff --git a/src/sp-item.h b/src/sp-item.h index 1523f9a62..8dfb4142a 100644 --- a/src/sp-item.h +++ b/src/sp-item.h @@ -99,7 +99,7 @@ public: Geom::Affine i2vp; }; -#define SP_ITEM(obj) ((SPItem*)obj) +#define SP_ITEM(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_ITEM(obj) (dynamic_cast((SPObject*)obj) != NULL) /** Abstract base class for all visible shapes. */ diff --git a/src/sp-line.h b/src/sp-line.h index 66131f2c8..ebdfc9f04 100644 --- a/src/sp-line.h +++ b/src/sp-line.h @@ -17,7 +17,7 @@ #include "svg/svg-length.h" #include "sp-shape.h" -#define SP_LINE(obj) ((SPLine*)obj) +#define SP_LINE(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_LINE(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPLine : public SPShape { diff --git a/src/sp-linear-gradient.h b/src/sp-linear-gradient.h index 4f75d7ca8..ac3fdb04a 100644 --- a/src/sp-linear-gradient.h +++ b/src/sp-linear-gradient.h @@ -8,7 +8,7 @@ #include "sp-gradient.h" #include "svg/svg-length.h" -#define SP_LINEARGRADIENT(obj) ((SPLinearGradient*)obj) +#define SP_LINEARGRADIENT(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_LINEARGRADIENT(obj) (dynamic_cast((SPObject*)obj) != NULL) /** Linear gradient. */ diff --git a/src/sp-lpe-item.h b/src/sp-lpe-item.h index 0aac8f057..925ff34d8 100644 --- a/src/sp-lpe-item.h +++ b/src/sp-lpe-item.h @@ -18,7 +18,7 @@ #include -#define SP_LPE_ITEM(obj) ((SPLPEItem*)obj) +#define SP_LPE_ITEM(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_LPE_ITEM(obj) (dynamic_cast((SPObject*)obj) != NULL) class CLPEItem; diff --git a/src/sp-mask.h b/src/sp-mask.h index 16f967419..e08d1e81e 100644 --- a/src/sp-mask.h +++ b/src/sp-mask.h @@ -18,7 +18,7 @@ #include "uri-references.h" #include "xml/node.h" -#define SP_MASK(obj) ((SPMask*)obj) +#define SP_MASK(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_MASK(obj) (dynamic_cast((SPObject*)obj) != NULL) struct SPMaskView; diff --git a/src/sp-mesh-gradient.h b/src/sp-mesh-gradient.h index fb59ad802..0b570c4dd 100644 --- a/src/sp-mesh-gradient.h +++ b/src/sp-mesh-gradient.h @@ -8,7 +8,7 @@ #include "svg/svg-length.h" #include "sp-gradient.h" -#define SP_MESHGRADIENT(obj) ((SPMeshGradient*)obj) +#define SP_MESHGRADIENT(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_MESHGRADIENT(obj) (dynamic_cast((SPObject*)obj) != NULL) /** Mesh gradient. */ diff --git a/src/sp-mesh-patch.h b/src/sp-mesh-patch.h index fe9f2d071..ddade6503 100644 --- a/src/sp-mesh-patch.h +++ b/src/sp-mesh-patch.h @@ -17,7 +17,7 @@ //#include "svg/svg-length.h" #include "sp-object.h" -#define SP_MESHPATCH(obj) ((SPMeshPatch*)obj) +#define SP_MESHPATCH(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_MESHPATCH(obj) (dynamic_cast((SPObject*)obj) != NULL) /** Gradient MeshPatch. */ diff --git a/src/sp-mesh-row.h b/src/sp-mesh-row.h index a9f8bfd31..e39bdc631 100644 --- a/src/sp-mesh-row.h +++ b/src/sp-mesh-row.h @@ -14,7 +14,7 @@ #include #include "sp-object.h" -#define SP_MESHROW(obj) ((SPMeshRow*)obj) +#define SP_MESHROW(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_MESHROW(obj) (dynamic_cast((SPObject*)obj) != NULL) /** Gradient MeshRow. */ diff --git a/src/sp-metadata.h b/src/sp-metadata.h index a667b214a..2a9d58e11 100644 --- a/src/sp-metadata.h +++ b/src/sp-metadata.h @@ -17,7 +17,7 @@ /* Metadata base class */ -#define SP_METADATA(obj) ((SPMetadata*)obj) +#define SP_METADATA(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_METADATA(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPMetadata : public SPObject { diff --git a/src/sp-missing-glyph.h b/src/sp-missing-glyph.h index 291ea626f..a72ed0e99 100644 --- a/src/sp-missing-glyph.h +++ b/src/sp-missing-glyph.h @@ -18,7 +18,7 @@ #include "sp-object.h" -#define SP_MISSING_GLYPH(obj) ((SPMissingGlyph*)obj) +#define SP_MISSING_GLYPH(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_MISSING_GLYPH(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPMissingGlyph : public SPObject { diff --git a/src/sp-namedview.h b/src/sp-namedview.h index 92a31b11b..30f962d9f 100644 --- a/src/sp-namedview.h +++ b/src/sp-namedview.h @@ -14,7 +14,7 @@ * Released under GNU GPL, read the file 'COPYING' for more information */ -#define SP_NAMEDVIEW(obj) ((SPNamedView*)obj) +#define SP_NAMEDVIEW(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_NAMEDVIEW(obj) (dynamic_cast((SPObject*)obj) != NULL) #include "sp-object-group.h" diff --git a/src/sp-object-group.h b/src/sp-object-group.h index 552b321b1..4df346228 100644 --- a/src/sp-object-group.h +++ b/src/sp-object-group.h @@ -16,7 +16,7 @@ #include "sp-object.h" -#define SP_OBJECTGROUP(obj) ((SPObjectGroup*)obj) +#define SP_OBJECTGROUP(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_OBJECTGROUP(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPObjectGroup : public SPObject { diff --git a/src/sp-object.h b/src/sp-object.h index 077633400..4e9a6c938 100644 --- a/src/sp-object.h +++ b/src/sp-object.h @@ -17,7 +17,7 @@ class SPObject; -#define SP_OBJECT(obj) ((SPObject*)obj) +#define SP_OBJECT(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_OBJECT(obj) (dynamic_cast((SPObject*)obj) != NULL) /* Async modification flags */ diff --git a/src/sp-offset.h b/src/sp-offset.h index 9d173b66a..7fe6a8a24 100644 --- a/src/sp-offset.h +++ b/src/sp-offset.h @@ -16,7 +16,7 @@ #include #include -#define SP_OFFSET(obj) ((SPOffset*)obj) +#define SP_OFFSET(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_OFFSET(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPUseReference; diff --git a/src/sp-paint-server.h b/src/sp-paint-server.h index 4c77bdaa6..89c4f6b1b 100644 --- a/src/sp-paint-server.h +++ b/src/sp-paint-server.h @@ -20,7 +20,7 @@ #include "sp-object.h" #include "uri-references.h" -#define SP_PAINT_SERVER(obj) ((SPPaintServer*)obj) +#define SP_PAINT_SERVER(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_PAINT_SERVER(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPPaintServer : public SPObject { diff --git a/src/sp-path.h b/src/sp-path.h index be3a1b03d..42c0f22c8 100644 --- a/src/sp-path.h +++ b/src/sp-path.h @@ -21,7 +21,7 @@ class SPCurve; -#define SP_PATH(obj) ((SPPath*)obj) +#define SP_PATH(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_PATH(obj) (dynamic_cast((SPObject*)obj) != NULL) /** diff --git a/src/sp-pattern.h b/src/sp-pattern.h index c7a2a96c3..4e3657ccf 100644 --- a/src/sp-pattern.h +++ b/src/sp-pattern.h @@ -17,7 +17,7 @@ #include "sp-item.h" -#define SP_PATTERN(obj) ((SPPattern*)obj) +#define SP_PATTERN(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_PATTERN(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPPatternReference; diff --git a/src/sp-polygon.h b/src/sp-polygon.h index bac632a95..f9c93ac8f 100644 --- a/src/sp-polygon.h +++ b/src/sp-polygon.h @@ -16,7 +16,7 @@ #include "sp-shape.h" -#define SP_POLYGON(obj) ((SPPolygon*)obj) +#define SP_POLYGON(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_POLYGON(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPPolygon : public SPShape { diff --git a/src/sp-polyline.h b/src/sp-polyline.h index 75c2217b5..f8b7e9b49 100644 --- a/src/sp-polyline.h +++ b/src/sp-polyline.h @@ -3,7 +3,7 @@ #include "sp-shape.h" -#define SP_POLYLINE(obj) ((SPPolyLine*)obj) +#define SP_POLYLINE(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_POLYLINE(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPPolyLine : public SPShape { diff --git a/src/sp-radial-gradient.h b/src/sp-radial-gradient.h index e0be01b9b..42ff109aa 100644 --- a/src/sp-radial-gradient.h +++ b/src/sp-radial-gradient.h @@ -9,7 +9,7 @@ #include "sp-gradient.h" #include "svg/svg-length.h" -#define SP_RADIALGRADIENT(obj) ((SPRadialGradient*)obj) +#define SP_RADIALGRADIENT(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_RADIALGRADIENT(obj) (dynamic_cast((SPObject*)obj) != NULL) /** Radial gradient. */ diff --git a/src/sp-rect.h b/src/sp-rect.h index 04026e051..28f74f9f9 100644 --- a/src/sp-rect.h +++ b/src/sp-rect.h @@ -19,7 +19,7 @@ #include <2geom/forward.h> -#define SP_RECT(obj) ((SPRect*)obj) +#define SP_RECT(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_RECT(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPRect : public SPShape { diff --git a/src/sp-root.h b/src/sp-root.h index 6853a8c8a..a9f64a53b 100644 --- a/src/sp-root.h +++ b/src/sp-root.h @@ -19,7 +19,7 @@ #include "enums.h" #include "sp-item-group.h" -#define SP_ROOT(obj) ((SPRoot*)obj) +#define SP_ROOT(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_ROOT(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPDefs; diff --git a/src/sp-script.h b/src/sp-script.h index f6ef9d5fd..95b56e79c 100644 --- a/src/sp-script.h +++ b/src/sp-script.h @@ -14,7 +14,7 @@ #include "sp-item.h" -#define SP_SCRIPT(obj) ((SPScript*)obj) +#define SP_SCRIPT(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_SCRIPT(obj) (dynamic_cast((SPObject*)obj) != NULL) /* SPScript */ diff --git a/src/sp-shape.h b/src/sp-shape.h index 806615606..bc51f3d45 100644 --- a/src/sp-shape.h +++ b/src/sp-shape.h @@ -22,7 +22,7 @@ #include #include -#define SP_SHAPE(obj) ((SPShape*)obj) +#define SP_SHAPE(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_SHAPE(obj) (dynamic_cast((SPObject*)obj) != NULL) #define SP_SHAPE_WRITE_PATH (1 << 2) diff --git a/src/sp-spiral.h b/src/sp-spiral.h index 6066b6157..1e9c2d2b4 100644 --- a/src/sp-spiral.h +++ b/src/sp-spiral.h @@ -24,7 +24,7 @@ #define SAMPLE_SIZE 8 ///< sample size per one bezier -#define SP_SPIRAL(obj) ((SPSpiral*)obj) +#define SP_SPIRAL(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_SPIRAL(obj) (dynamic_cast((SPObject*)obj) != NULL) /** diff --git a/src/sp-star.h b/src/sp-star.h index fc6de84e1..0f1280139 100644 --- a/src/sp-star.h +++ b/src/sp-star.h @@ -17,7 +17,7 @@ #include "sp-polygon.h" -#define SP_STAR(obj) ((SPStar*)obj) +#define SP_STAR(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_STAR(obj) (dynamic_cast((SPObject*)obj) != NULL) typedef enum { diff --git a/src/sp-stop.h b/src/sp-stop.h index b0bae50d1..b1996e054 100644 --- a/src/sp-stop.h +++ b/src/sp-stop.h @@ -16,7 +16,7 @@ namespace Glib { class ustring; } -#define SP_STOP(obj) ((SPStop*)obj) +#define SP_STOP(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_STOP(obj) (dynamic_cast((SPObject*)obj) != NULL) /** Gradient stop. */ diff --git a/src/sp-string.h b/src/sp-string.h index d7634a719..eabf76353 100644 --- a/src/sp-string.h +++ b/src/sp-string.h @@ -10,7 +10,7 @@ #include "sp-object.h" -#define SP_STRING(obj) ((SPString*)obj) +#define SP_STRING(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_STRING(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPString : public SPObject { diff --git a/src/sp-style-elem.h b/src/sp-style-elem.h index 83fe2ea5e..8e8a2b3a8 100644 --- a/src/sp-style-elem.h +++ b/src/sp-style-elem.h @@ -4,7 +4,7 @@ #include "sp-object.h" #include "media.h" -#define SP_STYLE_ELEM(obj) ((SPStyleElem*)obj) +#define SP_STYLE_ELEM(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_STYLE_ELEM(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPStyleElem : public SPObject { diff --git a/src/sp-switch.h b/src/sp-switch.h index 3323617f9..210cd0ddc 100644 --- a/src/sp-switch.h +++ b/src/sp-switch.h @@ -17,7 +17,7 @@ #include #include -#define SP_SWITCH(obj) ((SPSwitch*)obj) +#define SP_SWITCH(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_SWITCH(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPSwitch : public SPGroup { diff --git a/src/sp-symbol.h b/src/sp-symbol.h index 67e68d2e8..952ba00df 100644 --- a/src/sp-symbol.h +++ b/src/sp-symbol.h @@ -18,7 +18,7 @@ */ #define SP_TYPE_SYMBOL (sp_symbol_get_type ()) -#define SP_SYMBOL(obj) ((SPSymbol*)obj) +#define SP_SYMBOL(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_SYMBOL(obj) (dynamic_cast((SPObject*)obj) != NULL) #include <2geom/affine.h> diff --git a/src/sp-text.h b/src/sp-text.h index b23865855..12f773ded 100644 --- a/src/sp-text.h +++ b/src/sp-text.h @@ -21,7 +21,7 @@ #include "text-tag-attributes.h" #include "libnrtype/Layout-TNG.h" -#define SP_TEXT(obj) ((SPText*)obj) +#define SP_TEXT(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_TEXT(obj) (dynamic_cast((SPObject*)obj) != NULL) /* Text specific flags */ diff --git a/src/sp-textpath.h b/src/sp-textpath.h index 1191a59f6..075743d8e 100644 --- a/src/sp-textpath.h +++ b/src/sp-textpath.h @@ -9,7 +9,7 @@ class SPUsePath; class Path; -#define SP_TEXTPATH(obj) ((SPTextPath*)obj) +#define SP_TEXTPATH(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_TEXTPATH(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPTextPath : public SPItem { diff --git a/src/sp-title.h b/src/sp-title.h index 671527bc1..14faf4b0a 100644 --- a/src/sp-title.h +++ b/src/sp-title.h @@ -14,7 +14,7 @@ #include "sp-object.h" -#define SP_TITLE(obj) ((SPTitle*)obj) +#define SP_TITLE(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_TITLE(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPTitle : public SPObject { diff --git a/src/sp-tref.h b/src/sp-tref.h index f38a76e57..451c6cb58 100644 --- a/src/sp-tref.h +++ b/src/sp-tref.h @@ -22,7 +22,7 @@ /* tref base class */ -#define SP_TREF(obj) ((SPTRef*)obj) +#define SP_TREF(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_TREF(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPTRef : public SPItem { diff --git a/src/sp-tspan.h b/src/sp-tspan.h index c86095273..d1c6ec4bc 100644 --- a/src/sp-tspan.h +++ b/src/sp-tspan.h @@ -9,7 +9,7 @@ #include "sp-item.h" #include "text-tag-attributes.h" -#define SP_TSPAN(obj) ((SPTSpan*)obj) +#define SP_TSPAN(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_TSPAN(obj) (dynamic_cast((SPObject*)obj) != NULL) enum { diff --git a/src/sp-use.h b/src/sp-use.h index b90c98ad2..37ff2cf66 100644 --- a/src/sp-use.h +++ b/src/sp-use.h @@ -18,7 +18,7 @@ #include "svg/svg-length.h" #include "sp-item.h" -#define SP_USE(obj) ((SPUse*)obj) +#define SP_USE(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_USE(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPUseReference; diff --git a/src/spiral-context.h b/src/spiral-context.h index 21b109f07..d5bd15941 100644 --- a/src/spiral-context.h +++ b/src/spiral-context.h @@ -23,7 +23,7 @@ #include "sp-spiral.h" -#define SP_SPIRAL_CONTEXT(obj) ((SPSpiralContext*)obj) +#define SP_SPIRAL_CONTEXT(obj) (dynamic_cast((SPEventContext*)obj)) #define SP_IS_SPIRAL_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) class SPSpiralContext : public SPEventContext { diff --git a/src/spray-context.h b/src/spray-context.h index 2b20ae13d..4e1ab9dc0 100644 --- a/src/spray-context.h +++ b/src/spray-context.h @@ -21,7 +21,7 @@ #include <2geom/point.h> #include "event-context.h" -#define SP_SPRAY_CONTEXT(obj) ((SPSprayContext*)obj) +#define SP_SPRAY_CONTEXT(obj) (dynamic_cast((SPEventContext*)obj)) #define SP_IS_SPRAY_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) namespace Inkscape { diff --git a/src/text-context.h b/src/text-context.h index 196ecf576..95b812c2b 100644 --- a/src/text-context.h +++ b/src/text-context.h @@ -23,7 +23,7 @@ #include <2geom/point.h> #include "libnrtype/Layout-TNG.h" -#define SP_TEXT_CONTEXT(obj) ((SPTextContext*)obj) +#define SP_TEXT_CONTEXT(obj) (dynamic_cast((SPEventContext*)obj)) #define SP_IS_TEXT_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) struct SPCtrlLine; diff --git a/src/ui/tool/node-tool.h b/src/ui/tool/node-tool.h index 779cf98e6..ce022cec6 100644 --- a/src/ui/tool/node-tool.h +++ b/src/ui/tool/node-tool.h @@ -30,7 +30,7 @@ namespace Inkscape { } } -#define INK_NODE_TOOL(obj) ((InkNodeTool*)obj) +#define INK_NODE_TOOL(obj) (dynamic_cast((SPEventContext*)obj)) #define INK_IS_NODE_TOOL(obj) (dynamic_cast((const SPEventContext*)obj)) class InkNodeTool : public SPEventContext { diff --git a/src/zoom-context.h b/src/zoom-context.h index 70e9e04f5..3e98915af 100644 --- a/src/zoom-context.h +++ b/src/zoom-context.h @@ -15,7 +15,7 @@ #include "event-context.h" -#define SP_ZOOM_CONTEXT(obj) ((SPZoomContext*)obj) +#define SP_ZOOM_CONTEXT(obj) (dynamic_cast((SPEventContext*)obj)) #define SP_IS_ZOOM_CONTEXT(obj) (dynamic_cast((const SPEventContext*)obj) != NULL) class SPZoomContext : public SPEventContext { -- cgit v1.2.3 From e45029dbb88010c962443e9b81a92dbe932d186b Mon Sep 17 00:00:00 2001 From: Kris De Gussem Date: Sun, 15 Sep 2013 12:56:15 +0200 Subject: UI message uniformisation (bzr r12520) --- src/extension/internal/cairo-ps-out.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/extension/internal/cairo-ps-out.cpp b/src/extension/internal/cairo-ps-out.cpp index e06c9f30d..5f535dc64 100644 --- a/src/extension/internal/cairo-ps-out.cpp +++ b/src/extension/internal/cairo-ps-out.cpp @@ -340,7 +340,7 @@ CairoPsOutput::init (void) "<_option value=\"page\">" N_("Use document's page size") "" "<_option value=\"drawing\">" N_("Use exported object's size") "" "" - "0\n" + "0\n" "\n" "\n" ".ps\n" -- cgit v1.2.3 From aecd69b561e8f514f50bda8f47ec8380a6285948 Mon Sep 17 00:00:00 2001 From: Kris De Gussem Date: Sun, 15 Sep 2013 13:31:53 +0200 Subject: UI message uniformisation (bzr r12521) --- src/ui/dialog/inkscape-preferences.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ui/dialog/inkscape-preferences.cpp b/src/ui/dialog/inkscape-preferences.cpp index b06c1fd1f..e9cf2e753 100644 --- a/src/ui/dialog/inkscape-preferences.cpp +++ b/src/ui/dialog/inkscape-preferences.cpp @@ -884,7 +884,7 @@ void InkscapePreferences::initPageIO() int pathstringFormatValues[numPathstringFormat] = {0, 1, 2}; _svgoutput_pathformat.init("/options/svgoutput/pathstring_format", pathstringFormatLabels, pathstringFormatValues, numPathstringFormat, 2); - _page_svgoutput.add_line( true, _("Path string format"), _svgoutput_pathformat, "", _("Path data should be written: only with absolute coordinates, only with relative coordinates, or optimized for string length (mixed absolute and relative coordinates)"), false); + _page_svgoutput.add_line( true, _("Path string format:"), _svgoutput_pathformat, "", _("Path data should be written: only with absolute coordinates, only with relative coordinates, or optimized for string length (mixed absolute and relative coordinates)"), false); _svgoutput_forcerepeatcommands.init( _("Force repeat commands"), "/options/svgoutput/forcerepeatcommands", false); _page_svgoutput.add_line( true, "", _svgoutput_forcerepeatcommands, "", _("Force repeating of the same path command (for example, 'L 1,2 L 3,4' instead of 'L 1,2 3,4')"), false); -- cgit v1.2.3 From 3c042082512288ccc18a1b55d16eff3a84021771 Mon Sep 17 00:00:00 2001 From: Kris De Gussem Date: Sun, 15 Sep 2013 13:32:14 +0200 Subject: Dutch translation update (bzr r12522) --- po/nl.po | 7460 ++++++++++++++++++++++++++++++++------------------------------ 1 file changed, 3850 insertions(+), 3610 deletions(-) diff --git a/po/nl.po b/po/nl.po index 50a6fc389..8fda15b22 100644 --- a/po/nl.po +++ b/po/nl.po @@ -57,8 +57,8 @@ msgid "" msgstr "" "Project-Id-Version: inkscape 0.49\n" "Report-Msgid-Bugs-To: inkscape-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2013-05-12 14:52+0200\n" -"PO-Revision-Date: 2013-05-13 16:34+0100\n" +"POT-Creation-Date: 2013-08-22 14:40+0200\n" +"PO-Revision-Date: 2013-09-15 12:38+0100\n" "Last-Translator: Kris De Gussem \n" "Language-Team: Dutch\n" "MIME-Version: 1.0\n" @@ -991,8 +991,8 @@ msgid "Black Light" msgstr "Zwart licht" #: ../share/filters/filters.svg.h:1 -#: ../src/ui/dialog/clonetiler.cpp:831 -#: ../src/ui/dialog/clonetiler.cpp:982 +#: ../src/ui/dialog/clonetiler.cpp:832 +#: ../src/ui/dialog/clonetiler.cpp:983 #: ../src/extension/internal/bitmap/colorize.cpp:52 #: ../src/extension/internal/filter/bumps.h:101 #: ../src/extension/internal/filter/bumps.h:321 @@ -1024,7 +1024,7 @@ msgstr "Zwart licht" #: ../src/extension/internal/filter/paint.h:717 #: ../src/extension/internal/filter/shadows.h:73 #: ../src/extension/internal/filter/transparency.h:345 -#: ../src/ui/dialog/document-properties.cpp:150 +#: ../src/ui/dialog/document-properties.cpp:149 #: ../share/extensions/color_blackandwhite.inx.h:2 #: ../share/extensions/color_brighter.inx.h:2 #: ../share/extensions/color_custom.inx.h:15 @@ -3044,10 +3044,9 @@ msgstr "Scharlakenrood 3" #. Palette: ./Tango-Palette.gpl #: ../share/palettes/palettes.h:187 -#, fuzzy msgctxt "Palette" msgid "Snowy White" -msgstr "Wit" +msgstr "Sneeuwwit" #. Palette: ./Tango-Palette.gpl #: ../share/palettes/palettes.h:188 @@ -3087,10 +3086,9 @@ msgstr "Aluminium 6" #. Palette: ./Tango-Palette.gpl #: ../share/palettes/palettes.h:194 -#, fuzzy msgctxt "Palette" msgid "Jet Black" -msgstr "Zwart" +msgstr "Pikzwart" #: ../share/patterns/patterns.svg.h:1 msgid "Stripes 1:1" @@ -3266,8 +3264,8 @@ msgid "Defines the direction and magnitude of the extrusion" msgstr "Bepaalt de richting en mate van uitrekking" #: ../src/sp-flowtext.cpp:339 -#: ../src/sp-text.cpp:400 -#: ../src/text-context.cpp:1630 +#: ../src/sp-text.cpp:399 +#: ../src/text-context.cpp:1631 msgid " [truncated]" msgstr " [afgekort]" @@ -3285,44 +3283,44 @@ msgid_plural "Linked flowed text (%d characters%s)" msgstr[0] "Gekoppelde ingekaderde tekst (%d teken%s)" msgstr[1] "Gekoppelde ingekaderde tekst (%d tekens%s)" -#: ../src/arc-context.cpp:307 +#: ../src/arc-context.cpp:306 msgid "Ctrl: make circle or integer-ratio ellipse, snap arc/segment angle" msgstr "Ctrl: tekent een cirkel of een ellips met gehele verhoudingen, beperkt de boog-/segmenthoek" -#: ../src/arc-context.cpp:308 -#: ../src/rect-context.cpp:353 +#: ../src/arc-context.cpp:307 +#: ../src/rect-context.cpp:352 msgid "Shift: draw around the starting point" msgstr "Shift: tekent rond het startpunt" -#: ../src/arc-context.cpp:464 +#: ../src/arc-context.cpp:465 #, c-format msgid "Ellipse: %s × %s (constrained to ratio %d:%d); with Shift to draw around the starting point" msgstr "Ellips: %s × %s (verhouding %d:%d); gebruik Shift om rond het startpunt te tekenen" -#: ../src/arc-context.cpp:466 +#: ../src/arc-context.cpp:467 #, c-format msgid "Ellipse: %s × %s; with Ctrl to make square or integer-ratio ellipse; with Shift to draw around the starting point" msgstr "Ellips: %s × %s; gebruik Ctrl om een ellips met gehele verhoudingen te maken; gebruik Shift om rond het startpunt te tekenen" -#: ../src/arc-context.cpp:492 +#: ../src/arc-context.cpp:493 msgid "Create ellipse" msgstr "Ellips maken" -#: ../src/box3d-context.cpp:421 -#: ../src/box3d-context.cpp:428 -#: ../src/box3d-context.cpp:435 -#: ../src/box3d-context.cpp:442 -#: ../src/box3d-context.cpp:449 -#: ../src/box3d-context.cpp:456 +#: ../src/box3d-context.cpp:420 +#: ../src/box3d-context.cpp:427 +#: ../src/box3d-context.cpp:434 +#: ../src/box3d-context.cpp:441 +#: ../src/box3d-context.cpp:448 +#: ../src/box3d-context.cpp:455 msgid "Change perspective (angle of PLs)" msgstr "Perspectief wijzigen (hoek van perspectieflijnen)" #. status text -#: ../src/box3d-context.cpp:640 +#: ../src/box3d-context.cpp:639 msgid "3D Box; with Shift to extrude along the Z axis" msgstr "3D-kubus; gebruik Shift om over de z-as uit te trekken" -#: ../src/box3d-context.cpp:668 +#: ../src/box3d-context.cpp:667 msgid "Create 3D box" msgstr "3D-kubus maken" @@ -3346,16 +3344,17 @@ msgstr "" #: ../src/ui/dialog/filter-effects-dialog.cpp:518 #: ../src/ui/dialog/inkscape-preferences.cpp:332 #: ../src/ui/dialog/inkscape-preferences.cpp:641 -#: ../src/ui/dialog/inkscape-preferences.cpp:1255 -#: ../src/ui/dialog/inkscape-preferences.cpp:1412 -#: ../src/ui/dialog/inkscape-preferences.cpp:1810 +#: ../src/ui/dialog/inkscape-preferences.cpp:1259 +#: ../src/ui/dialog/inkscape-preferences.cpp:1423 +#: ../src/ui/dialog/inkscape-preferences.cpp:1821 #: ../src/ui/dialog/input.cpp:742 #: ../src/ui/dialog/input.cpp:743 #: ../src/ui/dialog/input.cpp:1571 #: ../src/ui/dialog/input.cpp:1625 -#: ../src/verbs.cpp:2288 +#: ../src/verbs.cpp:2345 #: ../src/widgets/gradient-toolbar.cpp:1128 -#: ../src/widgets/pencil-toolbar.cpp:189 +#: ../src/widgets/pencil-toolbar.cpp:184 +#: ../src/widgets/stroke-marker-selector.cpp:388 #: ../share/extensions/gcodetools_area.inx.h:48 #: ../share/extensions/gcodetools_dxf_points.inx.h:20 #: ../share/extensions/gcodetools_engraving.inx.h:26 @@ -3363,7 +3362,6 @@ msgstr "" #: ../share/extensions/gcodetools_lathe.inx.h:41 #: ../share/extensions/gcodetools_path_to_gcode.inx.h:30 #: ../share/extensions/grid_polar.inx.h:4 -#: ../share/extensions/guides_creator.inx.h:7 #: ../share/extensions/scour.inx.h:18 msgid "None" msgstr "Geen" @@ -3397,12 +3395,12 @@ msgid "Select at least one non-connector object." msgstr "Selecteer minstens één object dat geen verbindingsobject is." #: ../src/connector-context.cpp:1456 -#: ../src/widgets/connector-toolbar.cpp:330 +#: ../src/widgets/connector-toolbar.cpp:326 msgid "Make connectors avoid selected objects" msgstr "Verbindingen ontwijken geselecteerde objecten" #: ../src/connector-context.cpp:1457 -#: ../src/widgets/connector-toolbar.cpp:340 +#: ../src/widgets/connector-toolbar.cpp:336 msgid "Make connectors ignore selected objects" msgstr "Verbindingen negeren geselecteerde objecten" @@ -3416,636 +3414,636 @@ msgstr "De huidige laag is verborgen. Toon deze om er op te kunnen tekene msgid "Current layer is locked. Unlock it to be able to draw on it." msgstr "De huidige laag is vergrendeld. Ontgrendel deze om er op te kunnen tekenen." -#: ../src/desktop-events.cpp:228 +#: ../src/desktop-events.cpp:225 msgid "Create guide" msgstr "Hulplijn maken" -#: ../src/desktop-events.cpp:473 +#: ../src/desktop-events.cpp:470 msgid "Move guide" msgstr "Hulplijn verplaatsen" -#: ../src/desktop-events.cpp:480 -#: ../src/desktop-events.cpp:538 +#: ../src/desktop-events.cpp:477 +#: ../src/desktop-events.cpp:535 #: ../src/ui/dialog/guides.cpp:144 msgid "Delete guide" msgstr "Hulplijn verwijderen" -#: ../src/desktop-events.cpp:518 +#: ../src/desktop-events.cpp:515 #, c-format msgid "Guideline: %s" msgstr "Hulplijn: %s" -#: ../src/desktop.cpp:907 +#: ../src/desktop.cpp:826 msgid "No previous zoom." msgstr "Er is geen vorige zoom." -#: ../src/desktop.cpp:928 +#: ../src/desktop.cpp:847 msgid "No next zoom." msgstr "Er is geen volgende zoom." -#: ../src/ui/dialog/clonetiler.cpp:111 +#: ../src/ui/dialog/clonetiler.cpp:112 msgid "_Symmetry" msgstr "_Symmetrie" #. TRANSLATORS: "translation" means "shift" / "displacement" here. -#: ../src/ui/dialog/clonetiler.cpp:123 +#: ../src/ui/dialog/clonetiler.cpp:124 msgid "P1: simple translation" msgstr "P1: eenvoudige verplaatsing" -#: ../src/ui/dialog/clonetiler.cpp:124 +#: ../src/ui/dialog/clonetiler.cpp:125 msgid "P2: 180° rotation" msgstr "P2: 180° draaien" -#: ../src/ui/dialog/clonetiler.cpp:125 +#: ../src/ui/dialog/clonetiler.cpp:126 msgid "PM: reflection" msgstr "PM: spiegeling" #. TRANSLATORS: "glide reflection" is a reflection and a translation combined. #. For more info, see http://mathforum.org/sum95/suzanne/symsusan.html -#: ../src/ui/dialog/clonetiler.cpp:128 +#: ../src/ui/dialog/clonetiler.cpp:129 msgid "PG: glide reflection" msgstr "PG: schuifspiegeling" -#: ../src/ui/dialog/clonetiler.cpp:129 +#: ../src/ui/dialog/clonetiler.cpp:130 msgid "CM: reflection + glide reflection" msgstr "CM: spiegeling + schuifspiegeling" -#: ../src/ui/dialog/clonetiler.cpp:130 +#: ../src/ui/dialog/clonetiler.cpp:131 msgid "PMM: reflection + reflection" msgstr "PMM: spiegeling + spiegeling" -#: ../src/ui/dialog/clonetiler.cpp:131 +#: ../src/ui/dialog/clonetiler.cpp:132 msgid "PMG: reflection + 180° rotation" msgstr "PMG: spiegeling + 180° draaien" -#: ../src/ui/dialog/clonetiler.cpp:132 +#: ../src/ui/dialog/clonetiler.cpp:133 msgid "PGG: glide reflection + 180° rotation" msgstr "PGG: schuifspiegeling + 180° draaien" -#: ../src/ui/dialog/clonetiler.cpp:133 +#: ../src/ui/dialog/clonetiler.cpp:134 msgid "CMM: reflection + reflection + 180° rotation" msgstr "CMM: spiegeling + spiegeling + 180° draaien" -#: ../src/ui/dialog/clonetiler.cpp:134 +#: ../src/ui/dialog/clonetiler.cpp:135 msgid "P4: 90° rotation" msgstr "P4: 90° draaien" -#: ../src/ui/dialog/clonetiler.cpp:135 +#: ../src/ui/dialog/clonetiler.cpp:136 msgid "P4M: 90° rotation + 45° reflection" msgstr "P4M: 90° draaien + 45° spiegeling" -#: ../src/ui/dialog/clonetiler.cpp:136 +#: ../src/ui/dialog/clonetiler.cpp:137 msgid "P4G: 90° rotation + 90° reflection" msgstr "P4G: 90° draaien + 90° spiegeling" -#: ../src/ui/dialog/clonetiler.cpp:137 +#: ../src/ui/dialog/clonetiler.cpp:138 msgid "P3: 120° rotation" msgstr "P3: 120° draaien" -#: ../src/ui/dialog/clonetiler.cpp:138 +#: ../src/ui/dialog/clonetiler.cpp:139 msgid "P31M: reflection + 120° rotation, dense" msgstr "P31M: spiegeling + 120° draaien, dicht" -#: ../src/ui/dialog/clonetiler.cpp:139 +#: ../src/ui/dialog/clonetiler.cpp:140 msgid "P3M1: reflection + 120° rotation, sparse" msgstr "P3M1: spiegeling + 120° draaien, dun" -#: ../src/ui/dialog/clonetiler.cpp:140 +#: ../src/ui/dialog/clonetiler.cpp:141 msgid "P6: 60° rotation" msgstr "P6: 60° draaien" -#: ../src/ui/dialog/clonetiler.cpp:141 +#: ../src/ui/dialog/clonetiler.cpp:142 msgid "P6M: reflection + 60° rotation" msgstr "P6M: spiegeling + 60° draaien" -#: ../src/ui/dialog/clonetiler.cpp:161 +#: ../src/ui/dialog/clonetiler.cpp:162 msgid "Select one of the 17 symmetry groups for the tiling" msgstr "Selecteer één van de 17 symmetriegroepen voor het tegelen" -#: ../src/ui/dialog/clonetiler.cpp:179 +#: ../src/ui/dialog/clonetiler.cpp:180 msgid "S_hift" msgstr "Ver_plaatsing" #. TRANSLATORS: "shift" means: the tiles will be shifted (offset) horizontally by this amount -#: ../src/ui/dialog/clonetiler.cpp:189 +#: ../src/ui/dialog/clonetiler.cpp:190 #, no-c-format msgid "Shift X:" msgstr "X-verplaatsing:" -#: ../src/ui/dialog/clonetiler.cpp:197 +#: ../src/ui/dialog/clonetiler.cpp:198 #, no-c-format msgid "Horizontal shift per row (in % of tile width)" msgstr "Horizontale verplaatsing voor elke volgende rij (in % van de tegelbreedte)" -#: ../src/ui/dialog/clonetiler.cpp:205 +#: ../src/ui/dialog/clonetiler.cpp:206 #, no-c-format msgid "Horizontal shift per column (in % of tile width)" msgstr "Horizontale verplaatsing voor elke volgende kolom (in % van de tegelbreedte)" -#: ../src/ui/dialog/clonetiler.cpp:211 +#: ../src/ui/dialog/clonetiler.cpp:212 msgid "Randomize the horizontal shift by this percentage" msgstr "De horizontale positie binnen dit percentage willekeurig aanpassen" #. TRANSLATORS: "shift" means: the tiles will be shifted (offset) vertically by this amount -#: ../src/ui/dialog/clonetiler.cpp:221 +#: ../src/ui/dialog/clonetiler.cpp:222 #, no-c-format msgid "Shift Y:" msgstr "Y-verplaatsing:" -#: ../src/ui/dialog/clonetiler.cpp:229 +#: ../src/ui/dialog/clonetiler.cpp:230 #, no-c-format msgid "Vertical shift per row (in % of tile height)" msgstr "Verticale verplaatsing voor elke volgende rij (in % van de tegelhoogte)" -#: ../src/ui/dialog/clonetiler.cpp:237 +#: ../src/ui/dialog/clonetiler.cpp:238 #, no-c-format msgid "Vertical shift per column (in % of tile height)" msgstr "Verticale verplaatsing voor elke volgende kolom (in % van de tegelhoogte)" -#: ../src/ui/dialog/clonetiler.cpp:244 +#: ../src/ui/dialog/clonetiler.cpp:245 msgid "Randomize the vertical shift by this percentage" msgstr "De verticale positie binnen dit percentage willekeurig aanpassen" -#: ../src/ui/dialog/clonetiler.cpp:252 -#: ../src/ui/dialog/clonetiler.cpp:398 +#: ../src/ui/dialog/clonetiler.cpp:253 +#: ../src/ui/dialog/clonetiler.cpp:399 msgid "Exponent:" msgstr "Exponent:" -#: ../src/ui/dialog/clonetiler.cpp:259 +#: ../src/ui/dialog/clonetiler.cpp:260 msgid "Whether rows are spaced evenly (1), converge (<1) or diverge (>1)" msgstr "Of de rij-afstand gelijk blijft (1), afneemt (<1) of toeneemt (>1)" -#: ../src/ui/dialog/clonetiler.cpp:266 +#: ../src/ui/dialog/clonetiler.cpp:267 msgid "Whether columns are spaced evenly (1), converge (<1) or diverge (>1)" msgstr "Of de kolom-afstand gelijk blijft (1), afneemt (<1) of toeneemt (>1)" #. TRANSLATORS: "Alternate" is a verb here -#: ../src/ui/dialog/clonetiler.cpp:274 -#: ../src/ui/dialog/clonetiler.cpp:438 -#: ../src/ui/dialog/clonetiler.cpp:514 -#: ../src/ui/dialog/clonetiler.cpp:587 -#: ../src/ui/dialog/clonetiler.cpp:633 -#: ../src/ui/dialog/clonetiler.cpp:760 +#: ../src/ui/dialog/clonetiler.cpp:275 +#: ../src/ui/dialog/clonetiler.cpp:439 +#: ../src/ui/dialog/clonetiler.cpp:515 +#: ../src/ui/dialog/clonetiler.cpp:588 +#: ../src/ui/dialog/clonetiler.cpp:634 +#: ../src/ui/dialog/clonetiler.cpp:761 msgid "Alternate:" msgstr "Afwisselen:" -#: ../src/ui/dialog/clonetiler.cpp:280 +#: ../src/ui/dialog/clonetiler.cpp:281 msgid "Alternate the sign of shifts for each row" msgstr "De verplaatsingen voor elke rij om-en-om afwisselen" -#: ../src/ui/dialog/clonetiler.cpp:285 +#: ../src/ui/dialog/clonetiler.cpp:286 msgid "Alternate the sign of shifts for each column" msgstr "De verplaatsingen voor elke kolom om-en-om afwisselen" #. TRANSLATORS: "Cumulate" is a verb here -#: ../src/ui/dialog/clonetiler.cpp:292 -#: ../src/ui/dialog/clonetiler.cpp:456 -#: ../src/ui/dialog/clonetiler.cpp:532 +#: ../src/ui/dialog/clonetiler.cpp:293 +#: ../src/ui/dialog/clonetiler.cpp:457 +#: ../src/ui/dialog/clonetiler.cpp:533 msgid "Cumulate:" msgstr "Optellen:" -#: ../src/ui/dialog/clonetiler.cpp:298 +#: ../src/ui/dialog/clonetiler.cpp:299 msgid "Cumulate the shifts for each row" msgstr "De verplaatsingen voor elke rij optellen" -#: ../src/ui/dialog/clonetiler.cpp:303 +#: ../src/ui/dialog/clonetiler.cpp:304 msgid "Cumulate the shifts for each column" msgstr "De verplaatsingen voor elke kolom optellen" #. TRANSLATORS: "Cumulate" is a verb here -#: ../src/ui/dialog/clonetiler.cpp:310 +#: ../src/ui/dialog/clonetiler.cpp:311 msgid "Exclude tile:" msgstr "Tegel uitsluiten:" -#: ../src/ui/dialog/clonetiler.cpp:316 +#: ../src/ui/dialog/clonetiler.cpp:317 msgid "Exclude tile height in shift" msgstr "Tegelhoogte niet bij verplaatsing optellen" -#: ../src/ui/dialog/clonetiler.cpp:321 +#: ../src/ui/dialog/clonetiler.cpp:322 msgid "Exclude tile width in shift" msgstr "Tegelbreedte niet bij verplaatsing optellen" -#: ../src/ui/dialog/clonetiler.cpp:330 +#: ../src/ui/dialog/clonetiler.cpp:331 msgid "Sc_ale" msgstr "_Schalen" -#: ../src/ui/dialog/clonetiler.cpp:338 +#: ../src/ui/dialog/clonetiler.cpp:339 msgid "Scale X:" msgstr "X-vergroting:" -#: ../src/ui/dialog/clonetiler.cpp:346 +#: ../src/ui/dialog/clonetiler.cpp:347 #, no-c-format msgid "Horizontal scale per row (in % of tile width)" msgstr "Horizontale vergroting voor elke volgende rij (in % van de tegelbreedte)" -#: ../src/ui/dialog/clonetiler.cpp:354 +#: ../src/ui/dialog/clonetiler.cpp:355 #, no-c-format msgid "Horizontal scale per column (in % of tile width)" msgstr "Horizontale vergroting voor elke volgende kolom (in % van de tegelbreedte)" -#: ../src/ui/dialog/clonetiler.cpp:360 +#: ../src/ui/dialog/clonetiler.cpp:361 msgid "Randomize the horizontal scale by this percentage" msgstr "De horizontale afmeting binnen dit percentage willekeurig aanpassen" -#: ../src/ui/dialog/clonetiler.cpp:368 +#: ../src/ui/dialog/clonetiler.cpp:369 msgid "Scale Y:" msgstr "Y-vergroting:" -#: ../src/ui/dialog/clonetiler.cpp:376 +#: ../src/ui/dialog/clonetiler.cpp:377 #, no-c-format msgid "Vertical scale per row (in % of tile height)" msgstr "Verticale vergroting voor elke volgende rij (in % van de tegelhoogte)" -#: ../src/ui/dialog/clonetiler.cpp:384 +#: ../src/ui/dialog/clonetiler.cpp:385 #, no-c-format msgid "Vertical scale per column (in % of tile height)" msgstr "Verticale vergroting voor elke volgende kolom (in % van de tegelhoogte)" -#: ../src/ui/dialog/clonetiler.cpp:390 +#: ../src/ui/dialog/clonetiler.cpp:391 msgid "Randomize the vertical scale by this percentage" msgstr "De verticale afmeting binnen dit percentage willekeurig aanpassen" -#: ../src/ui/dialog/clonetiler.cpp:404 +#: ../src/ui/dialog/clonetiler.cpp:405 msgid "Whether row scaling is uniform (1), converge (<1) or diverge (>1)" msgstr "Soort rijvergroting: uniform (1), convergent (<1) of divergent (>1)" -#: ../src/ui/dialog/clonetiler.cpp:410 +#: ../src/ui/dialog/clonetiler.cpp:411 msgid "Whether column scaling is uniform (1), converge (<1) or diverge (>1)" msgstr "Soort kolomvergroting: uniform (1), convergent (<1) of divergent (>1)" -#: ../src/ui/dialog/clonetiler.cpp:418 +#: ../src/ui/dialog/clonetiler.cpp:419 msgid "Base:" msgstr "Grondtal:" -#: ../src/ui/dialog/clonetiler.cpp:424 -#: ../src/ui/dialog/clonetiler.cpp:430 +#: ../src/ui/dialog/clonetiler.cpp:425 +#: ../src/ui/dialog/clonetiler.cpp:431 msgid "Base for a logarithmic spiral: not used (0), converge (<1), or diverge (>1)" msgstr "Grondtal voor logaritmische spiraal: ongebruikt (0), convergent (<1) of divergent (>1)" -#: ../src/ui/dialog/clonetiler.cpp:444 +#: ../src/ui/dialog/clonetiler.cpp:445 msgid "Alternate the sign of scales for each row" msgstr "De vergroting voor elke rij om-en-om afwisselen" -#: ../src/ui/dialog/clonetiler.cpp:449 +#: ../src/ui/dialog/clonetiler.cpp:450 msgid "Alternate the sign of scales for each column" msgstr "De vergroting voor elke kolom om-en-om afwisselen" -#: ../src/ui/dialog/clonetiler.cpp:462 +#: ../src/ui/dialog/clonetiler.cpp:463 msgid "Cumulate the scales for each row" msgstr "De vergrotingen voor elke rij optellen" -#: ../src/ui/dialog/clonetiler.cpp:467 +#: ../src/ui/dialog/clonetiler.cpp:468 msgid "Cumulate the scales for each column" msgstr "De vergrotingen voor elke kolom optellen" -#: ../src/ui/dialog/clonetiler.cpp:476 +#: ../src/ui/dialog/clonetiler.cpp:477 msgid "_Rotation" msgstr "_Rotatie" -#: ../src/ui/dialog/clonetiler.cpp:484 +#: ../src/ui/dialog/clonetiler.cpp:485 msgid "Angle:" msgstr "Hoek:" -#: ../src/ui/dialog/clonetiler.cpp:492 +#: ../src/ui/dialog/clonetiler.cpp:493 #, no-c-format msgid "Rotate tiles by this angle for each row" msgstr "Voor elke volgende rij de tegels over deze hoek draaien" -#: ../src/ui/dialog/clonetiler.cpp:500 +#: ../src/ui/dialog/clonetiler.cpp:501 #, no-c-format msgid "Rotate tiles by this angle for each column" msgstr "Voor elke volgende kolom de tegels over deze hoek draaien" -#: ../src/ui/dialog/clonetiler.cpp:506 +#: ../src/ui/dialog/clonetiler.cpp:507 msgid "Randomize the rotation angle by this percentage" msgstr "De draaihoek binnen dit percentage willekeurig aanpassen" -#: ../src/ui/dialog/clonetiler.cpp:520 +#: ../src/ui/dialog/clonetiler.cpp:521 msgid "Alternate the rotation direction for each row" msgstr "De draairichting voor elke rij om-en-om afwisselen" -#: ../src/ui/dialog/clonetiler.cpp:525 +#: ../src/ui/dialog/clonetiler.cpp:526 msgid "Alternate the rotation direction for each column" msgstr "De draairichting voor elke kolom om-en-om afwisselen" -#: ../src/ui/dialog/clonetiler.cpp:538 +#: ../src/ui/dialog/clonetiler.cpp:539 msgid "Cumulate the rotation for each row" msgstr "De rotaties voor elke rij optellen" -#: ../src/ui/dialog/clonetiler.cpp:543 +#: ../src/ui/dialog/clonetiler.cpp:544 msgid "Cumulate the rotation for each column" msgstr "De rotaties voor elke kolom optellen" -#: ../src/ui/dialog/clonetiler.cpp:552 +#: ../src/ui/dialog/clonetiler.cpp:553 msgid "_Blur & opacity" msgstr "_Vervaging & ondoorzichtigheid" -#: ../src/ui/dialog/clonetiler.cpp:561 +#: ../src/ui/dialog/clonetiler.cpp:562 msgid "Blur:" msgstr "Vervaging:" -#: ../src/ui/dialog/clonetiler.cpp:567 +#: ../src/ui/dialog/clonetiler.cpp:568 msgid "Blur tiles by this percentage for each row" msgstr "De tegels elke volgende rij met dit percentage vervagen" -#: ../src/ui/dialog/clonetiler.cpp:573 +#: ../src/ui/dialog/clonetiler.cpp:574 msgid "Blur tiles by this percentage for each column" msgstr "De tegels elke volgende kolom met dit percentage vervagen" -#: ../src/ui/dialog/clonetiler.cpp:579 +#: ../src/ui/dialog/clonetiler.cpp:580 msgid "Randomize the tile blur by this percentage" msgstr "Tegels binnen dit percentage willekeurig vervagen" -#: ../src/ui/dialog/clonetiler.cpp:593 +#: ../src/ui/dialog/clonetiler.cpp:594 msgid "Alternate the sign of blur change for each row" msgstr "De vervaging voor elke rij om-en-om afwisselen" -#: ../src/ui/dialog/clonetiler.cpp:598 +#: ../src/ui/dialog/clonetiler.cpp:599 msgid "Alternate the sign of blur change for each column" msgstr "De vervaging voor elke kolom om-en-om afwisselen" -#: ../src/ui/dialog/clonetiler.cpp:607 +#: ../src/ui/dialog/clonetiler.cpp:608 msgid "Opacity:" msgstr "Ondoorzichtigheid:" -#: ../src/ui/dialog/clonetiler.cpp:613 +#: ../src/ui/dialog/clonetiler.cpp:614 msgid "Decrease tile opacity by this percentage for each row" msgstr "De ondoorzichtigheid elke volgende rij met dit percentage verminderen" -#: ../src/ui/dialog/clonetiler.cpp:619 +#: ../src/ui/dialog/clonetiler.cpp:620 msgid "Decrease tile opacity by this percentage for each column" msgstr "De ondoorzichtigheid elke volgende kolom met dit percentage verminderen" -#: ../src/ui/dialog/clonetiler.cpp:625 +#: ../src/ui/dialog/clonetiler.cpp:626 msgid "Randomize the tile opacity by this percentage" msgstr "De ondoorzichtigheid binnen dit percentage willekeurig aanpassen" -#: ../src/ui/dialog/clonetiler.cpp:639 +#: ../src/ui/dialog/clonetiler.cpp:640 msgid "Alternate the sign of opacity change for each row" msgstr "De doorzichtigheid voor elke rij om-en-om afwisselen" -#: ../src/ui/dialog/clonetiler.cpp:644 +#: ../src/ui/dialog/clonetiler.cpp:645 msgid "Alternate the sign of opacity change for each column" msgstr "De doorzichtigheid voor elke kolom om-en-om afwisselen" -#: ../src/ui/dialog/clonetiler.cpp:652 +#: ../src/ui/dialog/clonetiler.cpp:653 msgid "Co_lor" msgstr "_Kleur" -#: ../src/ui/dialog/clonetiler.cpp:662 +#: ../src/ui/dialog/clonetiler.cpp:663 msgid "Initial color: " msgstr "Beginkleur: " -#: ../src/ui/dialog/clonetiler.cpp:666 +#: ../src/ui/dialog/clonetiler.cpp:667 msgid "Initial color of tiled clones" msgstr "Beginkleur van getegelde klonen" -#: ../src/ui/dialog/clonetiler.cpp:666 +#: ../src/ui/dialog/clonetiler.cpp:667 msgid "Initial color for clones (works only if the original has unset fill or stroke)" msgstr "Beginkleur van klonen (werkt alleen als het origineel geen vulling of lijn heeft)" -#: ../src/ui/dialog/clonetiler.cpp:681 +#: ../src/ui/dialog/clonetiler.cpp:682 msgid "H:" msgstr "Tint:" -#: ../src/ui/dialog/clonetiler.cpp:687 +#: ../src/ui/dialog/clonetiler.cpp:688 msgid "Change the tile hue by this percentage for each row" msgstr "De tint elke volgende rij met dit percentage aanpassen" -#: ../src/ui/dialog/clonetiler.cpp:693 +#: ../src/ui/dialog/clonetiler.cpp:694 msgid "Change the tile hue by this percentage for each column" msgstr "De tint elke volgende kolom met dit percentage aanpassen" -#: ../src/ui/dialog/clonetiler.cpp:699 +#: ../src/ui/dialog/clonetiler.cpp:700 msgid "Randomize the tile hue by this percentage" msgstr "De tint binnen dit percentage willekeurig aanpassen" -#: ../src/ui/dialog/clonetiler.cpp:708 +#: ../src/ui/dialog/clonetiler.cpp:709 msgid "S:" msgstr "Verzadiging:" -#: ../src/ui/dialog/clonetiler.cpp:714 +#: ../src/ui/dialog/clonetiler.cpp:715 msgid "Change the color saturation by this percentage for each row" msgstr "De verzadiging elke volgende rij met dit percentage aanpassen" -#: ../src/ui/dialog/clonetiler.cpp:720 +#: ../src/ui/dialog/clonetiler.cpp:721 msgid "Change the color saturation by this percentage for each column" msgstr "De verzadiging elke volgende kolom met dit percentage aanpassen" -#: ../src/ui/dialog/clonetiler.cpp:726 +#: ../src/ui/dialog/clonetiler.cpp:727 msgid "Randomize the color saturation by this percentage" msgstr "De verzadiging binnen dit percentage willekeurig aanpassen" -#: ../src/ui/dialog/clonetiler.cpp:734 +#: ../src/ui/dialog/clonetiler.cpp:735 msgid "L:" msgstr "Helderheid:" -#: ../src/ui/dialog/clonetiler.cpp:740 +#: ../src/ui/dialog/clonetiler.cpp:741 msgid "Change the color lightness by this percentage for each row" msgstr "De helderheid elke volgende rij met dit percentage aanpassen" -#: ../src/ui/dialog/clonetiler.cpp:746 +#: ../src/ui/dialog/clonetiler.cpp:747 msgid "Change the color lightness by this percentage for each column" msgstr "De helderheid elke volgende kolom met dit percentage aanpassen" -#: ../src/ui/dialog/clonetiler.cpp:752 +#: ../src/ui/dialog/clonetiler.cpp:753 msgid "Randomize the color lightness by this percentage" msgstr "De helderheid binnen dit percentage willekeurig aanpassen" -#: ../src/ui/dialog/clonetiler.cpp:766 +#: ../src/ui/dialog/clonetiler.cpp:767 msgid "Alternate the sign of color changes for each row" msgstr "De kleurwijzigingen voor elke rij om-en-om afwisselen" -#: ../src/ui/dialog/clonetiler.cpp:771 +#: ../src/ui/dialog/clonetiler.cpp:772 msgid "Alternate the sign of color changes for each column" msgstr "De kleurwijzigingen voor elke kolom om-en-om afwisselen" -#: ../src/ui/dialog/clonetiler.cpp:779 +#: ../src/ui/dialog/clonetiler.cpp:780 msgid "_Trace" msgstr "_Overtrekken" -#: ../src/ui/dialog/clonetiler.cpp:791 +#: ../src/ui/dialog/clonetiler.cpp:792 msgid "Trace the drawing under the tiles" msgstr "De tekening onder de tegels gebruiken" -#: ../src/ui/dialog/clonetiler.cpp:795 +#: ../src/ui/dialog/clonetiler.cpp:796 msgid "For each clone, pick a value from the drawing in that clone's location and apply it to the clone" msgstr "Voor elke kloon een eigenschap van de tekening op dat punt gebruiken om die kloon te beïnvloeden." -#: ../src/ui/dialog/clonetiler.cpp:814 +#: ../src/ui/dialog/clonetiler.cpp:815 msgid "1. Pick from the drawing:" msgstr "1. Kies een eigenschap uit de tekening:" -#: ../src/ui/dialog/clonetiler.cpp:832 +#: ../src/ui/dialog/clonetiler.cpp:833 msgid "Pick the visible color and opacity" msgstr "Selecteer de zichtbare kleur en de ondoorzichtigheid" -#: ../src/ui/dialog/clonetiler.cpp:839 -#: ../src/ui/dialog/clonetiler.cpp:992 +#: ../src/ui/dialog/clonetiler.cpp:840 +#: ../src/ui/dialog/clonetiler.cpp:993 #: ../src/extension/internal/bitmap/opacity.cpp:38 #: ../src/extension/internal/filter/blurs.h:333 #: ../src/extension/internal/filter/transparency.h:279 -#: ../src/widgets/tweak-toolbar.cpp:352 +#: ../src/widgets/tweak-toolbar.cpp:348 #: ../share/extensions/interp_att_g.inx.h:16 msgid "Opacity" msgstr "Ondoorzichtigheid" -#: ../src/ui/dialog/clonetiler.cpp:840 +#: ../src/ui/dialog/clonetiler.cpp:841 msgid "Pick the total accumulated opacity" msgstr "Selecteer de gesommeerde ondoorzichtigheid" -#: ../src/ui/dialog/clonetiler.cpp:847 +#: ../src/ui/dialog/clonetiler.cpp:848 msgid "R" msgstr "R" -#: ../src/ui/dialog/clonetiler.cpp:848 +#: ../src/ui/dialog/clonetiler.cpp:849 msgid "Pick the Red component of the color" msgstr "Selecteer de roodcomponent van de kleur" -#: ../src/ui/dialog/clonetiler.cpp:855 +#: ../src/ui/dialog/clonetiler.cpp:856 msgid "G" msgstr "G" -#: ../src/ui/dialog/clonetiler.cpp:856 +#: ../src/ui/dialog/clonetiler.cpp:857 msgid "Pick the Green component of the color" msgstr "Selecteer de groencomponent van de kleur" -#: ../src/ui/dialog/clonetiler.cpp:863 +#: ../src/ui/dialog/clonetiler.cpp:864 msgid "B" msgstr "B" -#: ../src/ui/dialog/clonetiler.cpp:864 +#: ../src/ui/dialog/clonetiler.cpp:865 msgid "Pick the Blue component of the color" msgstr "Selecteer de blauwcomponent van de kleur" -#: ../src/ui/dialog/clonetiler.cpp:871 +#: ../src/ui/dialog/clonetiler.cpp:872 msgctxt "Clonetiler color hue" msgid "H" msgstr "T" -#: ../src/ui/dialog/clonetiler.cpp:872 +#: ../src/ui/dialog/clonetiler.cpp:873 msgid "Pick the hue of the color" msgstr "De tint van de kleur kiezen" -#: ../src/ui/dialog/clonetiler.cpp:879 +#: ../src/ui/dialog/clonetiler.cpp:880 msgctxt "Clonetiler color saturation" msgid "S" msgstr "V" -#: ../src/ui/dialog/clonetiler.cpp:880 +#: ../src/ui/dialog/clonetiler.cpp:881 msgid "Pick the saturation of the color" msgstr "De verzadiging van de kleur kiezen" -#: ../src/ui/dialog/clonetiler.cpp:887 +#: ../src/ui/dialog/clonetiler.cpp:888 msgctxt "Clonetiler color lightness" msgid "L" msgstr "L" -#: ../src/ui/dialog/clonetiler.cpp:888 +#: ../src/ui/dialog/clonetiler.cpp:889 msgid "Pick the lightness of the color" msgstr "De helderheid van de kleur kiezen" -#: ../src/ui/dialog/clonetiler.cpp:898 +#: ../src/ui/dialog/clonetiler.cpp:899 msgid "2. Tweak the picked value:" msgstr "2. De geselecteerde eigenschap fijnafstemmen:" -#: ../src/ui/dialog/clonetiler.cpp:915 +#: ../src/ui/dialog/clonetiler.cpp:916 msgid "Gamma-correct:" msgstr "Gammacorrectie:" -#: ../src/ui/dialog/clonetiler.cpp:919 +#: ../src/ui/dialog/clonetiler.cpp:920 msgid "Shift the mid-range of the picked value upwards (>0) or downwards (<0)" msgstr "Het middengebied van de gekozen eigenschap verhogen (>0) of verlagen (<0)" -#: ../src/ui/dialog/clonetiler.cpp:926 +#: ../src/ui/dialog/clonetiler.cpp:927 msgid "Randomize:" msgstr "Willekeur:" -#: ../src/ui/dialog/clonetiler.cpp:930 +#: ../src/ui/dialog/clonetiler.cpp:931 msgid "Randomize the picked value by this percentage" msgstr "De geselecteerde eigenschap binnen dit percentage willekeurig aanpassen" -#: ../src/ui/dialog/clonetiler.cpp:937 +#: ../src/ui/dialog/clonetiler.cpp:938 msgid "Invert:" msgstr "Omdraaien:" -#: ../src/ui/dialog/clonetiler.cpp:941 +#: ../src/ui/dialog/clonetiler.cpp:942 msgid "Invert the picked value" msgstr "Draai de geselecteerde eigenschap om" -#: ../src/ui/dialog/clonetiler.cpp:947 +#: ../src/ui/dialog/clonetiler.cpp:948 msgid "3. Apply the value to the clones':" msgstr "3. De relatie tussen de eigenschap en de klonen:" -#: ../src/ui/dialog/clonetiler.cpp:962 +#: ../src/ui/dialog/clonetiler.cpp:963 msgid "Presence" msgstr "Aanwezigheid" -#: ../src/ui/dialog/clonetiler.cpp:965 +#: ../src/ui/dialog/clonetiler.cpp:966 msgid "Each clone is created with the probability determined by the picked value in that point" msgstr "De kans dat een kloon op een plek wordt gemaakt is afhankelijk van de waarde van de geselecteerde eigenschap op dat punt." -#: ../src/ui/dialog/clonetiler.cpp:972 +#: ../src/ui/dialog/clonetiler.cpp:973 msgid "Size" msgstr "Afmeting" -#: ../src/ui/dialog/clonetiler.cpp:975 +#: ../src/ui/dialog/clonetiler.cpp:976 msgid "Each clone's size is determined by the picked value in that point" msgstr "De grootte van een kloon is afhankelijk van de waarde van de geselecteerde eigenschap op dat punt" -#: ../src/ui/dialog/clonetiler.cpp:985 +#: ../src/ui/dialog/clonetiler.cpp:986 msgid "Each clone is painted by the picked color (the original must have unset fill or stroke)" msgstr "Klonen worden getekend in de geselecteerde kleur (werkt alleen als de kleur van de lijnen of de vulling van het origineel verwijderd is)" -#: ../src/ui/dialog/clonetiler.cpp:995 +#: ../src/ui/dialog/clonetiler.cpp:996 msgid "Each clone's opacity is determined by the picked value in that point" msgstr "De ondoorzichtigheid van een kloon is afhankelijk van de waarde van de geselecteerde eigenschap op dat punt" -#: ../src/ui/dialog/clonetiler.cpp:1043 +#: ../src/ui/dialog/clonetiler.cpp:1044 msgid "How many rows in the tiling" msgstr "Hoeveel rijen er betegeld moeten worden" -#: ../src/ui/dialog/clonetiler.cpp:1073 +#: ../src/ui/dialog/clonetiler.cpp:1074 msgid "How many columns in the tiling" msgstr "Hoeveel kolommen er betegeld moeten worden" -#: ../src/ui/dialog/clonetiler.cpp:1117 +#: ../src/ui/dialog/clonetiler.cpp:1119 msgid "Width of the rectangle to be filled" msgstr "Breedte van de rechthoek die gevuld moet worden" -#: ../src/ui/dialog/clonetiler.cpp:1151 +#: ../src/ui/dialog/clonetiler.cpp:1152 msgid "Height of the rectangle to be filled" msgstr "Hoogte van de rechthoek die gevuld moet worden" -#: ../src/ui/dialog/clonetiler.cpp:1168 +#: ../src/ui/dialog/clonetiler.cpp:1169 msgid "Rows, columns: " msgstr "Rijen, kolommen: " -#: ../src/ui/dialog/clonetiler.cpp:1169 +#: ../src/ui/dialog/clonetiler.cpp:1170 msgid "Create the specified number of rows and columns" msgstr "Het opgegeven aantal rijen en kolommen aanmaken" -#: ../src/ui/dialog/clonetiler.cpp:1178 +#: ../src/ui/dialog/clonetiler.cpp:1179 msgid "Width, height: " msgstr "Breedte, hoogte: " -#: ../src/ui/dialog/clonetiler.cpp:1179 +#: ../src/ui/dialog/clonetiler.cpp:1180 msgid "Fill the specified width and height with the tiling" msgstr "Vul een gebied met opgegeven breedte en hoogte met de betegeling" -#: ../src/ui/dialog/clonetiler.cpp:1200 +#: ../src/ui/dialog/clonetiler.cpp:1201 msgid "Use saved size and position of the tile" msgstr "De opgeslagen grootte en positie van de tegel gebruiken" -#: ../src/ui/dialog/clonetiler.cpp:1203 +#: ../src/ui/dialog/clonetiler.cpp:1204 msgid "Pretend that the size and position of the tile are the same as the last time you tiled it (if any), instead of using the current size" msgstr "Doen alsof de grootte en positie van de tegel hetzelfde zijn als de laatste keer dat u er mee tegelde, in plaats van de huidige grootte en positie te gebruiken." -#: ../src/ui/dialog/clonetiler.cpp:1237 +#: ../src/ui/dialog/clonetiler.cpp:1238 msgid " _Create " msgstr " _Aanmaken " -#: ../src/ui/dialog/clonetiler.cpp:1239 +#: ../src/ui/dialog/clonetiler.cpp:1240 msgid "Create and tile the clones of the selection" msgstr "Maak klonen van de selectie en gebruik ze als betegeling" @@ -4054,302 +4052,302 @@ msgstr "Maak klonen van de selectie en gebruik ze als betegeling" #. diagrams on the left in the following screenshot: #. http://www.inkscape.org/screenshots/gallery/inkscape-0.42-CVS-tiles-unclump.png #. So unclumping is the process of spreading a number of objects out more evenly. -#: ../src/ui/dialog/clonetiler.cpp:1259 +#: ../src/ui/dialog/clonetiler.cpp:1260 msgid " _Unclump " msgstr " _Ontklonteren " -#: ../src/ui/dialog/clonetiler.cpp:1260 +#: ../src/ui/dialog/clonetiler.cpp:1261 msgid "Spread out clones to reduce clumping; can be applied repeatedly" msgstr "De klonen verspreiden om ze te ontklonteren; kan herhaaldelijk worden toegepast" -#: ../src/ui/dialog/clonetiler.cpp:1266 +#: ../src/ui/dialog/clonetiler.cpp:1267 msgid " Re_move " msgstr " Ver_wijderen " -#: ../src/ui/dialog/clonetiler.cpp:1267 +#: ../src/ui/dialog/clonetiler.cpp:1268 msgid "Remove existing tiled clones of the selected object (siblings only)" msgstr "Verwijder bestaande getegelde klonen van het geselecteerde object" -#: ../src/ui/dialog/clonetiler.cpp:1283 +#: ../src/ui/dialog/clonetiler.cpp:1284 msgid " R_eset " msgstr " _Beginwaarden " #. TRANSLATORS: "change" is a noun here -#: ../src/ui/dialog/clonetiler.cpp:1285 +#: ../src/ui/dialog/clonetiler.cpp:1286 msgid "Reset all shifts, scales, rotates, opacity and color changes in the dialog to zero" msgstr "Alle verplaatsingen, vergrotingen, rotaties en kleurveranderingen in het venster terugzetten op nul" -#: ../src/ui/dialog/clonetiler.cpp:1358 +#: ../src/ui/dialog/clonetiler.cpp:1359 msgid "Nothing selected." msgstr "Niets geselecteerd." -#: ../src/ui/dialog/clonetiler.cpp:1364 +#: ../src/ui/dialog/clonetiler.cpp:1365 msgid "More than one object selected." msgstr "Meer dan één object geselecteerd." -#: ../src/ui/dialog/clonetiler.cpp:1371 +#: ../src/ui/dialog/clonetiler.cpp:1372 #, c-format msgid "Object has %d tiled clones." msgstr "Het object heeft %d getegelde klonen." -#: ../src/ui/dialog/clonetiler.cpp:1376 +#: ../src/ui/dialog/clonetiler.cpp:1377 msgid "Object has no tiled clones." msgstr "Het object heeft geen getegelde klonen." -#: ../src/ui/dialog/clonetiler.cpp:2096 +#: ../src/ui/dialog/clonetiler.cpp:2097 msgid "Select one object whose tiled clones to unclump." msgstr "Selecteer één object wiens klonen ontklonterd moeten worden." -#: ../src/ui/dialog/clonetiler.cpp:2118 +#: ../src/ui/dialog/clonetiler.cpp:2119 msgid "Unclump tiled clones" msgstr "Getegelde klonen ontklonteren" -#: ../src/ui/dialog/clonetiler.cpp:2147 +#: ../src/ui/dialog/clonetiler.cpp:2148 msgid "Select one object whose tiled clones to remove." msgstr "Selecteer één object waarvan de getegelde klonen verwijderd moeten worden." -#: ../src/ui/dialog/clonetiler.cpp:2170 +#: ../src/ui/dialog/clonetiler.cpp:2171 msgid "Delete tiled clones" msgstr "Verwijder getegelde klonen" -#: ../src/ui/dialog/clonetiler.cpp:2217 -#: ../src/selection-chemistry.cpp:2499 +#: ../src/ui/dialog/clonetiler.cpp:2218 +#: ../src/selection-chemistry.cpp:2487 msgid "Select an object to clone." msgstr "Selecteer een object om te klonen." -#: ../src/ui/dialog/clonetiler.cpp:2223 +#: ../src/ui/dialog/clonetiler.cpp:2224 msgid "If you want to clone several objects, group them and clone the group." msgstr "Als u meerdere objecten wilt klonen, groepeer ze dan en kloon de groep." -#: ../src/ui/dialog/clonetiler.cpp:2232 +#: ../src/ui/dialog/clonetiler.cpp:2233 msgid "Creating tiled clones..." msgstr "Getegelde klonen maken..." -#: ../src/ui/dialog/clonetiler.cpp:2637 +#: ../src/ui/dialog/clonetiler.cpp:2638 msgid "Create tiled clones" msgstr "Tegelen met klonen" -#: ../src/ui/dialog/clonetiler.cpp:2870 +#: ../src/ui/dialog/clonetiler.cpp:2871 msgid "Per row:" msgstr "Per rij:" -#: ../src/ui/dialog/clonetiler.cpp:2888 +#: ../src/ui/dialog/clonetiler.cpp:2889 msgid "Per column:" msgstr "Per kolom:" -#: ../src/ui/dialog/clonetiler.cpp:2896 +#: ../src/ui/dialog/clonetiler.cpp:2897 msgid "Randomize:" msgstr "Willekeurig:" -#: ../src/ui/dialog/export.cpp:145 -#: ../src/verbs.cpp:2732 +#: ../src/ui/dialog/export.cpp:151 +#: ../src/verbs.cpp:2791 msgid "_Page" msgstr "_Pagina" -#: ../src/ui/dialog/export.cpp:145 -#: ../src/verbs.cpp:2736 +#: ../src/ui/dialog/export.cpp:151 +#: ../src/verbs.cpp:2795 msgid "_Drawing" msgstr "_Tekening" -#: ../src/ui/dialog/export.cpp:145 -#: ../src/verbs.cpp:2738 +#: ../src/ui/dialog/export.cpp:151 +#: ../src/verbs.cpp:2797 msgid "_Selection" msgstr "_Selectie" -#: ../src/ui/dialog/export.cpp:145 +#: ../src/ui/dialog/export.cpp:151 msgid "_Custom" msgstr "_Aangepast" -#: ../src/ui/dialog/export.cpp:161 -#: ../src/widgets/measure-toolbar.cpp:115 -#: ../src/widgets/measure-toolbar.cpp:123 -#: ../share/extensions/gears.inx.h:6 +#: ../src/ui/dialog/export.cpp:167 +#: ../src/widgets/measure-toolbar.cpp:116 +#: ../src/widgets/measure-toolbar.cpp:124 +#: ../share/extensions/render_gears.inx.h:6 msgid "Units:" msgstr "Eenheden:" -#: ../src/ui/dialog/export.cpp:163 +#: ../src/ui/dialog/export.cpp:169 msgid "_Export As..." msgstr "_Exporteren als..." -#: ../src/ui/dialog/export.cpp:166 +#: ../src/ui/dialog/export.cpp:172 msgid "B_atch export all selected objects" msgstr "Alle _geselecteerde objecten apart exporteren" -#: ../src/ui/dialog/export.cpp:166 +#: ../src/ui/dialog/export.cpp:172 msgid "Export each selected object into its own PNG file, using export hints if any (caution, overwrites without asking!)" msgstr "Elk geselecteerd object naar zijn eigen PNG-bestand exporteren, door gebruik te maken van eventuele exporthints (waarschuwing: overschrijft zonder te vragen!)" -#: ../src/ui/dialog/export.cpp:168 +#: ../src/ui/dialog/export.cpp:174 msgid "Hide a_ll except selected" msgstr "Alles _verbergen behalve het geselecteerde" -#: ../src/ui/dialog/export.cpp:168 +#: ../src/ui/dialog/export.cpp:174 msgid "In the exported image, hide all objects except those that are selected" msgstr "In de geëxporteerde afbeelding, alle objecten verbergen behalve degene die geselecteerd zijn " -#: ../src/ui/dialog/export.cpp:169 +#: ../src/ui/dialog/export.cpp:175 msgid "Close when complete" msgstr "Deze dialoog sluiten indien gedaan" -#: ../src/ui/dialog/export.cpp:169 +#: ../src/ui/dialog/export.cpp:175 msgid "Once the export completes, close this dialog" msgstr "Dialoog sluiten bij beëindigen exporteren" -#: ../src/ui/dialog/export.cpp:171 +#: ../src/ui/dialog/export.cpp:177 msgid "_Export" msgstr "_Exporteren" -#: ../src/ui/dialog/export.cpp:189 +#: ../src/ui/dialog/export.cpp:195 msgid "Export area" msgstr "Exportgebied" -#: ../src/ui/dialog/export.cpp:225 +#: ../src/ui/dialog/export.cpp:234 msgid "_x0:" msgstr "_Links:" -#: ../src/ui/dialog/export.cpp:229 +#: ../src/ui/dialog/export.cpp:238 msgid "x_1:" msgstr "_Rechts:" -#: ../src/ui/dialog/export.cpp:233 +#: ../src/ui/dialog/export.cpp:242 msgid "Wid_th:" msgstr "Bree_dte:" -#: ../src/ui/dialog/export.cpp:237 +#: ../src/ui/dialog/export.cpp:246 msgid "_y0:" msgstr "_Onder:" -#: ../src/ui/dialog/export.cpp:241 +#: ../src/ui/dialog/export.cpp:250 msgid "y_1:" msgstr "Bo_ven:" -#: ../src/ui/dialog/export.cpp:245 +#: ../src/ui/dialog/export.cpp:254 msgid "Hei_ght:" msgstr "_Hoogte:" -#: ../src/ui/dialog/export.cpp:260 +#: ../src/ui/dialog/export.cpp:269 msgid "Image size" msgstr "Afbeeldingsgrootte" -#: ../src/ui/dialog/export.cpp:278 +#: ../src/ui/dialog/export.cpp:287 #: ../src/live_effects/lpe-bendpath.cpp:54 #: ../src/live_effects/lpe-patternalongpath.cpp:62 -#: ../src/ui/dialog/transformation.cpp:75 -#: ../src/ui/widget/page-sizer.cpp:238 +#: ../src/ui/dialog/transformation.cpp:80 +#: ../src/ui/widget/page-sizer.cpp:236 msgid "_Width:" msgstr "B_reedte:" -#: ../src/ui/dialog/export.cpp:278 -#: ../src/ui/dialog/export.cpp:289 +#: ../src/ui/dialog/export.cpp:287 +#: ../src/ui/dialog/export.cpp:298 msgid "pixels at" msgstr "beeldpunten met" -#: ../src/ui/dialog/export.cpp:284 +#: ../src/ui/dialog/export.cpp:293 msgid "dp_i" msgstr "pp_i" -#: ../src/ui/dialog/export.cpp:289 -#: ../src/ui/dialog/transformation.cpp:77 -#: ../src/ui/widget/page-sizer.cpp:239 +#: ../src/ui/dialog/export.cpp:298 +#: ../src/ui/dialog/transformation.cpp:82 +#: ../src/ui/widget/page-sizer.cpp:237 msgid "_Height:" msgstr "_Hoogte:" -#: ../src/ui/dialog/export.cpp:297 -#: ../src/ui/dialog/inkscape-preferences.cpp:1425 -#: ../src/ui/dialog/inkscape-preferences.cpp:1428 -#: ../src/ui/dialog/inkscape-preferences.cpp:1440 +#: ../src/ui/dialog/export.cpp:306 +#: ../src/ui/dialog/inkscape-preferences.cpp:1436 +#: ../src/ui/dialog/inkscape-preferences.cpp:1439 +#: ../src/ui/dialog/inkscape-preferences.cpp:1451 msgid "dpi" msgstr "ppi" -#: ../src/ui/dialog/export.cpp:305 +#: ../src/ui/dialog/export.cpp:314 msgid "_Filename" msgstr "Bestands_naam" -#: ../src/ui/dialog/export.cpp:347 +#: ../src/ui/dialog/export.cpp:356 msgid "Export the bitmap file with these settings" msgstr "Naar een bitmapafbeelding exporteren met deze instellingen" -#: ../src/ui/dialog/export.cpp:601 +#: ../src/ui/dialog/export.cpp:607 #, c-format msgid "B_atch export %d selected object" msgid_plural "B_atch export %d selected objects" msgstr[0] "%d _geselecteerd object exporteren" msgstr[1] "%d _geselecteerde objecten achter elkaar exporteren" -#: ../src/ui/dialog/export.cpp:917 +#: ../src/ui/dialog/export.cpp:923 msgid "Export in progress" msgstr "Bezig met exporteren" -#: ../src/ui/dialog/export.cpp:1001 +#: ../src/ui/dialog/export.cpp:1013 msgid "No items selected." msgstr "Geen items geselecteerd." -#: ../src/ui/dialog/export.cpp:1005 -#: ../src/ui/dialog/export.cpp:1007 +#: ../src/ui/dialog/export.cpp:1017 +#: ../src/ui/dialog/export.cpp:1019 msgid "Exporting %1 files" msgstr "Exporteren van %1 bestanden" -#: ../src/ui/dialog/export.cpp:1047 -#: ../src/ui/dialog/export.cpp:1049 +#: ../src/ui/dialog/export.cpp:1059 +#: ../src/ui/dialog/export.cpp:1061 #, c-format msgid "Exporting file %s..." msgstr "Exporteren van bestand %s..." -#: ../src/ui/dialog/export.cpp:1058 -#: ../src/ui/dialog/export.cpp:1149 +#: ../src/ui/dialog/export.cpp:1070 +#: ../src/ui/dialog/export.cpp:1161 #, c-format msgid "Could not export to filename %s.\n" msgstr "Fout bij het exporteren naar bestand %s.\n" -#: ../src/ui/dialog/export.cpp:1061 +#: ../src/ui/dialog/export.cpp:1073 #, c-format msgid "Could not export to filename %s." msgstr "Fout bij het exporteren naar bestand %s." -#: ../src/ui/dialog/export.cpp:1076 +#: ../src/ui/dialog/export.cpp:1088 #, c-format msgid "Successfully exported %d files from %d selected items." msgstr "Succesvol %d bestanden van %d geselecteerde items geëxporteerd." -#: ../src/ui/dialog/export.cpp:1087 +#: ../src/ui/dialog/export.cpp:1099 msgid "You have to enter a filename." msgstr "U dient een bestandsnaam in te vullen." -#: ../src/ui/dialog/export.cpp:1088 +#: ../src/ui/dialog/export.cpp:1100 msgid "You have to enter a filename" msgstr "U dient een bestandsnaam in te vullen" -#: ../src/ui/dialog/export.cpp:1102 +#: ../src/ui/dialog/export.cpp:1114 msgid "The chosen area to be exported is invalid." msgstr "Het gekozen exporterengebied is ongeldig" -#: ../src/ui/dialog/export.cpp:1103 +#: ../src/ui/dialog/export.cpp:1115 msgid "The chosen area to be exported is invalid" msgstr "Het gekozen te exporteren gebied is ongeldig" -#: ../src/ui/dialog/export.cpp:1118 +#: ../src/ui/dialog/export.cpp:1130 #, c-format msgid "Directory %s does not exist or is not a directory.\n" msgstr "Map %s bestaat niet of is geen map.\n" #. TRANSLATORS: %1 will be the filename, %2 the width, and %3 the height of the image -#: ../src/ui/dialog/export.cpp:1132 -#: ../src/ui/dialog/export.cpp:1134 +#: ../src/ui/dialog/export.cpp:1144 +#: ../src/ui/dialog/export.cpp:1146 msgid "Exporting %1 (%2 x %3)" msgstr "Exporteren van %1 (%2 x %3)" -#: ../src/ui/dialog/export.cpp:1160 +#: ../src/ui/dialog/export.cpp:1172 #, c-format msgid "Drawing exported to %s." msgstr "Afbeelding geëxporteerd naar %s." -#: ../src/ui/dialog/export.cpp:1164 +#: ../src/ui/dialog/export.cpp:1176 msgid "Export aborted." msgstr "Export afgebroken." -#: ../src/ui/dialog/export.cpp:1282 -#: ../src/ui/dialog/export.cpp:1316 -#: ../src/shortcuts.cpp:336 +#: ../src/ui/dialog/export.cpp:1294 +#: ../src/ui/dialog/export.cpp:1328 +#: ../src/shortcuts.cpp:337 msgid "Select a filename for exporting" msgstr "Selecteer een bestandsnaam om naar te exporteren" @@ -4434,7 +4432,7 @@ msgid "_Font" msgstr "_Lettertype" #: ../src/ui/dialog/text-edit.cpp:72 -#: ../src/menus-skeleton.h:253 +#: ../src/menus-skeleton.h:248 #: ../src/ui/dialog/find.cpp:77 msgid "_Text" msgstr "_Tekst" @@ -4449,36 +4447,36 @@ msgstr "AaBbCcIiMmPpQqWw(12369)€£$!?.;/@" #. Align buttons #: ../src/ui/dialog/text-edit.cpp:97 -#: ../src/widgets/text-toolbar.cpp:1358 -#: ../src/widgets/text-toolbar.cpp:1359 +#: ../src/widgets/text-toolbar.cpp:1349 +#: ../src/widgets/text-toolbar.cpp:1350 msgid "Align left" msgstr "Links uitlijnen" #: ../src/ui/dialog/text-edit.cpp:98 -#: ../src/widgets/text-toolbar.cpp:1366 -#: ../src/widgets/text-toolbar.cpp:1367 +#: ../src/widgets/text-toolbar.cpp:1357 +#: ../src/widgets/text-toolbar.cpp:1358 msgid "Align center" msgstr "Centreren" #: ../src/ui/dialog/text-edit.cpp:99 -#: ../src/widgets/text-toolbar.cpp:1374 -#: ../src/widgets/text-toolbar.cpp:1375 +#: ../src/widgets/text-toolbar.cpp:1365 +#: ../src/widgets/text-toolbar.cpp:1366 msgid "Align right" msgstr "Rechts uitlijnen" #: ../src/ui/dialog/text-edit.cpp:100 -#: ../src/widgets/text-toolbar.cpp:1383 +#: ../src/widgets/text-toolbar.cpp:1374 msgid "Justify (only flowed text)" msgstr "Uitvullen (enkel ingekaderde tekst)" #. Direction buttons #: ../src/ui/dialog/text-edit.cpp:109 -#: ../src/widgets/text-toolbar.cpp:1418 +#: ../src/widgets/text-toolbar.cpp:1409 msgid "Horizontal text" msgstr "Horizontale tekst" #: ../src/ui/dialog/text-edit.cpp:110 -#: ../src/widgets/text-toolbar.cpp:1425 +#: ../src/widgets/text-toolbar.cpp:1416 msgid "Vertical text" msgstr "Verticale tekst" @@ -4488,13 +4486,12 @@ msgid "Spacing between lines (percent of font size)" msgstr "Ruimte tussen lijnen (percentage van lettertypegrootte)" #: ../src/ui/dialog/text-edit.cpp:147 -#, fuzzy msgid "Text path offset" -msgstr "Verplaatsing magenta" +msgstr "Verplaatsing tekstpad" #: ../src/ui/dialog/text-edit.cpp:588 #: ../src/ui/dialog/text-edit.cpp:662 -#: ../src/text-context.cpp:1518 +#: ../src/text-context.cpp:1519 msgid "Set text style" msgstr "Tekststijl instellen" @@ -4610,164 +4607,164 @@ msgstr "Item verwijderen" msgid "Change attribute" msgstr "Attribuut instellen" -#: ../src/display/canvas-axonomgrid.cpp:365 -#: ../src/display/canvas-grid.cpp:742 +#: ../src/display/canvas-axonomgrid.cpp:316 +#: ../src/display/canvas-grid.cpp:693 msgid "Grid _units:" msgstr "Raster_eenheid:" -#: ../src/display/canvas-axonomgrid.cpp:367 -#: ../src/display/canvas-grid.cpp:744 +#: ../src/display/canvas-axonomgrid.cpp:318 +#: ../src/display/canvas-grid.cpp:695 msgid "_Origin X:" msgstr "X-_oorsprong:" -#: ../src/display/canvas-axonomgrid.cpp:367 -#: ../src/display/canvas-grid.cpp:744 +#: ../src/display/canvas-axonomgrid.cpp:318 +#: ../src/display/canvas-grid.cpp:695 #: ../src/ui/dialog/inkscape-preferences.cpp:735 #: ../src/ui/dialog/inkscape-preferences.cpp:760 msgid "X coordinate of grid origin" msgstr "X-coördinaat vanaf de rasteroorsprong" -#: ../src/display/canvas-axonomgrid.cpp:369 -#: ../src/display/canvas-grid.cpp:746 +#: ../src/display/canvas-axonomgrid.cpp:320 +#: ../src/display/canvas-grid.cpp:697 msgid "O_rigin Y:" msgstr "Y-oo_rsprong:" -#: ../src/display/canvas-axonomgrid.cpp:369 -#: ../src/display/canvas-grid.cpp:746 +#: ../src/display/canvas-axonomgrid.cpp:320 +#: ../src/display/canvas-grid.cpp:697 #: ../src/ui/dialog/inkscape-preferences.cpp:736 #: ../src/ui/dialog/inkscape-preferences.cpp:761 msgid "Y coordinate of grid origin" msgstr "Y-coördinaat vanaf de rasteroorsprong" -#: ../src/display/canvas-axonomgrid.cpp:371 -#: ../src/display/canvas-grid.cpp:750 +#: ../src/display/canvas-axonomgrid.cpp:322 +#: ../src/display/canvas-grid.cpp:701 msgid "Spacing _Y:" msgstr "_Y-tussenafstand:" -#: ../src/display/canvas-axonomgrid.cpp:371 +#: ../src/display/canvas-axonomgrid.cpp:322 #: ../src/ui/dialog/inkscape-preferences.cpp:764 msgid "Base length of z-axis" msgstr "Basislengte van z-as" -#: ../src/display/canvas-axonomgrid.cpp:373 +#: ../src/display/canvas-axonomgrid.cpp:324 #: ../src/ui/dialog/inkscape-preferences.cpp:767 -#: ../src/widgets/box3d-toolbar.cpp:320 +#: ../src/widgets/box3d-toolbar.cpp:315 msgid "Angle X:" msgstr "X-hoek:" -#: ../src/display/canvas-axonomgrid.cpp:373 +#: ../src/display/canvas-axonomgrid.cpp:324 #: ../src/ui/dialog/inkscape-preferences.cpp:767 msgid "Angle of x-axis" msgstr "Hoek van de x-as" -#: ../src/display/canvas-axonomgrid.cpp:375 +#: ../src/display/canvas-axonomgrid.cpp:326 #: ../src/ui/dialog/inkscape-preferences.cpp:768 -#: ../src/widgets/box3d-toolbar.cpp:399 +#: ../src/widgets/box3d-toolbar.cpp:394 msgid "Angle Z:" msgstr "Z-hoek:" -#: ../src/display/canvas-axonomgrid.cpp:375 +#: ../src/display/canvas-axonomgrid.cpp:326 #: ../src/ui/dialog/inkscape-preferences.cpp:768 msgid "Angle of z-axis" msgstr "Hoek van de z-as" -#: ../src/display/canvas-axonomgrid.cpp:379 -#: ../src/display/canvas-grid.cpp:754 +#: ../src/display/canvas-axonomgrid.cpp:330 +#: ../src/display/canvas-grid.cpp:705 msgid "Minor grid line _color:" msgstr "Kleur _nevenrasterlijnen:" -#: ../src/display/canvas-axonomgrid.cpp:379 -#: ../src/display/canvas-grid.cpp:754 +#: ../src/display/canvas-axonomgrid.cpp:330 +#: ../src/display/canvas-grid.cpp:705 #: ../src/ui/dialog/inkscape-preferences.cpp:719 msgid "Minor grid line color" msgstr "Kleur nevenrasterlijnen" -#: ../src/display/canvas-axonomgrid.cpp:379 -#: ../src/display/canvas-grid.cpp:754 +#: ../src/display/canvas-axonomgrid.cpp:330 +#: ../src/display/canvas-grid.cpp:705 msgid "Color of the minor grid lines" msgstr "Kleur nevenrasterlijnen" -#: ../src/display/canvas-axonomgrid.cpp:384 -#: ../src/display/canvas-grid.cpp:759 +#: ../src/display/canvas-axonomgrid.cpp:335 +#: ../src/display/canvas-grid.cpp:710 msgid "Ma_jor grid line color:" msgstr "Kleur _hoofdrasterlijnen:" -#: ../src/display/canvas-axonomgrid.cpp:384 -#: ../src/display/canvas-grid.cpp:759 +#: ../src/display/canvas-axonomgrid.cpp:335 +#: ../src/display/canvas-grid.cpp:710 #: ../src/ui/dialog/inkscape-preferences.cpp:721 msgid "Major grid line color" msgstr "Kleur hoofdrasterlijnen" -#: ../src/display/canvas-axonomgrid.cpp:385 -#: ../src/display/canvas-grid.cpp:760 +#: ../src/display/canvas-axonomgrid.cpp:336 +#: ../src/display/canvas-grid.cpp:711 msgid "Color of the major (highlighted) grid lines" msgstr "Kleur van de (gemarkeerde) hoofdrasterlijnen" -#: ../src/display/canvas-axonomgrid.cpp:389 -#: ../src/display/canvas-grid.cpp:764 +#: ../src/display/canvas-axonomgrid.cpp:340 +#: ../src/display/canvas-grid.cpp:715 msgid "_Major grid line every:" msgstr "Hoofdr_asterlijn elke:" -#: ../src/display/canvas-axonomgrid.cpp:389 -#: ../src/display/canvas-grid.cpp:764 +#: ../src/display/canvas-axonomgrid.cpp:340 +#: ../src/display/canvas-grid.cpp:715 msgid "lines" msgstr "rasterlijnen" -#: ../src/display/canvas-grid.cpp:58 +#: ../src/display/canvas-grid.cpp:63 msgid "Rectangular grid" msgstr "Rechthoekig raster" -#: ../src/display/canvas-grid.cpp:59 +#: ../src/display/canvas-grid.cpp:64 msgid "Axonometric grid" msgstr "Axonometrisch raster" -#: ../src/display/canvas-grid.cpp:270 +#: ../src/display/canvas-grid.cpp:275 msgid "Create new grid" msgstr "Nieuw raster maken" -#: ../src/display/canvas-grid.cpp:336 +#: ../src/display/canvas-grid.cpp:341 msgid "_Enabled" msgstr "_Actief" -#: ../src/display/canvas-grid.cpp:337 +#: ../src/display/canvas-grid.cpp:342 msgid "Determines whether to snap to this grid or not. Can be 'on' for invisible grids." msgstr "Bepaalt of er aan dit raster gekleefd moet worden of niet. Kan ingeschakeld zijn voor onzichtbare rasters." -#: ../src/display/canvas-grid.cpp:341 +#: ../src/display/canvas-grid.cpp:346 msgid "Snap to visible _grid lines only" msgstr "Alleen aan zichtbare _rasterlijnen kleven" -#: ../src/display/canvas-grid.cpp:342 +#: ../src/display/canvas-grid.cpp:347 msgid "When zoomed out, not all grid lines will be displayed. Only the visible ones will be snapped to" msgstr "Bij uitzoomen worden niet alle rasterlijnen getoond. Er wordt alleen gekleefd aan de zichtbare rasterlijnen" -#: ../src/display/canvas-grid.cpp:346 +#: ../src/display/canvas-grid.cpp:351 msgid "_Visible" msgstr "_Zichtbaar" -#: ../src/display/canvas-grid.cpp:347 +#: ../src/display/canvas-grid.cpp:352 msgid "Determines whether the grid is displayed or not. Objects are still snapped to invisible grids." msgstr "Bepaalt of het raster weergegven moet worden of niet. Objecten worden ook aan onzichtbare rasters gekleefd." -#: ../src/display/canvas-grid.cpp:748 +#: ../src/display/canvas-grid.cpp:699 msgid "Spacing _X:" msgstr "_X-tussenafstand:" -#: ../src/display/canvas-grid.cpp:748 +#: ../src/display/canvas-grid.cpp:699 #: ../src/ui/dialog/inkscape-preferences.cpp:741 msgid "Distance between vertical grid lines" msgstr "Afstand tussen verticale rasterlijnen" -#: ../src/display/canvas-grid.cpp:750 +#: ../src/display/canvas-grid.cpp:701 #: ../src/ui/dialog/inkscape-preferences.cpp:742 msgid "Distance between horizontal grid lines" msgstr "Afstand tussen horizontale rasterlijnen" -#: ../src/display/canvas-grid.cpp:781 +#: ../src/display/canvas-grid.cpp:732 msgid "_Show dots instead of lines" msgstr "_Punten weergeven in plaats van lijnen" -#: ../src/display/canvas-grid.cpp:782 +#: ../src/display/canvas-grid.cpp:733 msgid "If set, displays dots at gridpoints instead of gridlines" msgstr "Indien aangevinkt, worden punten op de rasterkruispunten weergegeven in plaats van rasterlijnen." @@ -4920,12 +4917,12 @@ msgid "Bounding box side midpoint" msgstr "Midden rand omvattend vak" #: ../src/display/snap-indicator.cpp:194 -#: ../src/ui/tool/node.cpp:1310 +#: ../src/ui/tool/node.cpp:1316 msgid "Smooth node" msgstr "Afgevlakt knooppunt" #: ../src/display/snap-indicator.cpp:197 -#: ../src/ui/tool/node.cpp:1309 +#: ../src/ui/tool/node.cpp:1315 msgid "Cusp node" msgstr "Hoekig knooppunt" @@ -4990,7 +4987,7 @@ msgstr "Nieuw document %d" msgid "Memory document %1" msgstr "Omvang van document in het geheugen %1" -#: ../src/document.cpp:707 +#: ../src/document.cpp:713 #, c-format msgid "Unnamed document %d" msgstr "Naamloos document %d" @@ -5081,7 +5078,7 @@ msgstr "Wissen met de gom" msgid "Draw eraser stroke" msgstr "Wissen met de gom" -#: ../src/event-context.cpp:671 +#: ../src/event-context.cpp:668 msgid "Space+mouse move to pan canvas" msgstr "Spatie indrukken + muis verplaatsen om het canvas te verschuiven" @@ -5092,13 +5089,13 @@ msgstr "[Onveranderd]" #. Edit #: ../src/event-log.cpp:275 #: ../src/event-log.cpp:278 -#: ../src/verbs.cpp:2324 +#: ../src/verbs.cpp:2383 msgid "_Undo" msgstr "_Ongedaan maken" #: ../src/event-log.cpp:285 #: ../src/event-log.cpp:289 -#: ../src/verbs.cpp:2326 +#: ../src/verbs.cpp:2385 msgid "_Redo" msgstr "Opn_ieuw" @@ -5127,7 +5124,7 @@ msgid " (No preferences)" msgstr " (Geen voorkeuren)" #: ../src/extension/effect.h:70 -#: ../src/verbs.cpp:2097 +#: ../src/verbs.cpp:2156 msgid "Extensions" msgstr "Uitbreidingen" @@ -5146,81 +5143,81 @@ msgstr "" msgid "Show dialog on startup" msgstr "Dit venster tonen bij het opstarten" -#: ../src/extension/execution-env.cpp:136 +#: ../src/extension/execution-env.cpp:144 #, c-format msgid "'%s' working, please wait..." msgstr "'%s' werkt, even geduld..." #. static int i = 0; #. std::cout << "Checking module[" << i++ << "]: " << name << std::endl; -#: ../src/extension/extension.cpp:259 +#: ../src/extension/extension.cpp:263 msgid " This is caused by an improper .inx file for this extension. An improper .inx file could have been caused by a faulty installation of Inkscape." msgstr " Dit wordt veroorzaakt door een foutief .inx-bestand voor deze uitbreiding. Een foutief .inx-bestand kan worden veroorzaakt door een fout tijdens de installatie van Inkscape." -#: ../src/extension/extension.cpp:262 +#: ../src/extension/extension.cpp:266 msgid "an ID was not defined for it." msgstr "er geen ID voor gedefinieerd is." -#: ../src/extension/extension.cpp:266 +#: ../src/extension/extension.cpp:270 msgid "there was no name defined for it." msgstr "er geen naam voor gedefinieerd is." -#: ../src/extension/extension.cpp:270 +#: ../src/extension/extension.cpp:274 msgid "the XML description of it got lost." msgstr "de XML-beschrijving ervoor verdwenen is." -#: ../src/extension/extension.cpp:274 +#: ../src/extension/extension.cpp:278 msgid "no implementation was defined for the extension." msgstr "er geen implementatie is gedefinieerd voor deze uitbreiding." #. std::cout << "Failed: " << *(_deps[i]) << std::endl; -#: ../src/extension/extension.cpp:281 +#: ../src/extension/extension.cpp:285 msgid "a dependency was not met." msgstr "er niet voldaan was aan een afhankelijkheid." -#: ../src/extension/extension.cpp:301 +#: ../src/extension/extension.cpp:305 msgid "Extension \"" msgstr "Uitbreiding \"" -#: ../src/extension/extension.cpp:301 +#: ../src/extension/extension.cpp:305 msgid "\" failed to load because " msgstr "\" kon niet worden geladen omdat " -#: ../src/extension/extension.cpp:628 +#: ../src/extension/extension.cpp:654 #, c-format msgid "Could not create extension error log file '%s'" msgstr "Het fouten-logboekbestand '%s' voor uitbreidingen kon niet worden aangemaakt" -#: ../src/extension/extension.cpp:736 +#: ../src/extension/extension.cpp:762 #: ../share/extensions/webslicer_create_rect.inx.h:2 msgid "Name:" msgstr "Naam:" -#: ../src/extension/extension.cpp:737 +#: ../src/extension/extension.cpp:763 msgid "ID:" msgstr "ID:" -#: ../src/extension/extension.cpp:738 +#: ../src/extension/extension.cpp:764 msgid "State:" msgstr "Status:" -#: ../src/extension/extension.cpp:738 +#: ../src/extension/extension.cpp:764 msgid "Loaded" msgstr "Geladen" -#: ../src/extension/extension.cpp:738 +#: ../src/extension/extension.cpp:764 msgid "Unloaded" msgstr "Niet-geladen" -#: ../src/extension/extension.cpp:738 +#: ../src/extension/extension.cpp:764 msgid "Deactivated" msgstr "Uitgeschakeld" -#: ../src/extension/extension.cpp:778 +#: ../src/extension/extension.cpp:804 msgid "Currently there is no help available for this Extension. Please look on the Inkscape website or ask on the mailing lists if you have questions regarding this extension." msgstr "Er is momenteel geen help beschikbaar voor deze uitbreiding. Kijk aub. op de Inkscape website of vraag op de mailinglijsten indien je vragen hebt over deze uitbreiding." -#: ../src/extension/implementation/script.cpp:1033 +#: ../src/extension/implementation/script.cpp:1037 msgid "Inkscape has received additional data from the script executed. The script did not return an error, but this may indicate the results will not be as expected." msgstr "Inkscape heeft extra informatie ontvangen van het script dat was aangeroepen. Het script gaf geen foutmelding, maar dit zou kunnen betekenen dat de resultaten anders zijn dan verwacht." @@ -5241,13 +5238,13 @@ msgstr "Aanpassende drempelwaarde" #: ../src/extension/internal/bitmap/adaptiveThreshold.cpp:41 #: ../src/extension/internal/bitmap/raise.cpp:42 #: ../src/extension/internal/bitmap/sample.cpp:41 -#: ../src/extension/internal/bluredge.cpp:137 +#: ../src/extension/internal/bluredge.cpp:138 #: ../src/ui/dialog/object-attributes.cpp:68 #: ../src/ui/dialog/object-attributes.cpp:76 -#: ../src/widgets/calligraphy-toolbar.cpp:451 -#: ../src/widgets/erasor-toolbar.cpp:149 -#: ../src/widgets/spray-toolbar.cpp:132 -#: ../src/widgets/tweak-toolbar.cpp:146 +#: ../src/widgets/calligraphy-toolbar.cpp:447 +#: ../src/widgets/eraser-toolbar.cpp:145 +#: ../src/widgets/spray-toolbar.cpp:128 +#: ../src/widgets/tweak-toolbar.cpp:142 #: ../share/extensions/foldablebox.inx.h:2 msgid "Width:" msgstr "Breedte:" @@ -5322,9 +5319,9 @@ msgstr "Ruis toevoegen" #: ../src/extension/internal/filter/color.h:1585 #: ../src/extension/internal/filter/distort.h:69 #: ../src/extension/internal/filter/morphology.h:60 -#: ../src/rdf.cpp:241 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2613 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2692 +#: ../src/rdf.cpp:244 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2626 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2705 #: ../src/ui/dialog/object-attributes.cpp:49 #: ../share/extensions/jessyInk_effects.inx.h:5 #: ../share/extensions/jessyInk_export.inx.h:3 @@ -5376,7 +5373,7 @@ msgstr "Vervagen" #: ../src/extension/internal/bitmap/oilPaint.cpp:39 #: ../src/extension/internal/bitmap/sharpen.cpp:40 #: ../src/extension/internal/bitmap/unsharpmask.cpp:43 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2670 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2683 msgid "Radius:" msgstr "Straal:" @@ -5516,7 +5513,7 @@ msgstr "Palet verdraaien" #: ../src/extension/internal/bitmap/cycleColormap.cpp:39 #: ../src/extension/internal/bitmap/spread.cpp:39 #: ../src/extension/internal/bitmap/unsharpmask.cpp:45 -#: ../src/widgets/spray-toolbar.cpp:224 +#: ../src/widgets/spray-toolbar.cpp:220 msgid "Amount:" msgstr "Aantal:" @@ -5680,8 +5677,8 @@ msgid "Stylize selected bitmap(s) so that they appear to be painted with oils" msgstr "Geselecteerde bitmap(s) stileren, zodat ze eruit zien als een olieverfschilderij" #: ../src/extension/internal/bitmap/opacity.cpp:40 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2660 -#: ../src/widgets/dropper-toolbar.cpp:111 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2673 +#: ../src/widgets/dropper-toolbar.cpp:107 msgid "Opacity:" msgstr "Ondoorzichtigheid:" @@ -5816,23 +5813,23 @@ msgstr "Golflengte:" msgid "Alter selected bitmap(s) along sine wave" msgstr "Geselecteerde bitmap(s) vervormen met een sinusgolf" -#: ../src/extension/internal/bluredge.cpp:135 +#: ../src/extension/internal/bluredge.cpp:136 msgid "Inset/Outset Halo" msgstr "Halo versmallen/verbreden" -#: ../src/extension/internal/bluredge.cpp:137 +#: ../src/extension/internal/bluredge.cpp:138 msgid "Width in px of the halo" msgstr "Breedte van de halo in pixels" -#: ../src/extension/internal/bluredge.cpp:138 +#: ../src/extension/internal/bluredge.cpp:139 msgid "Number of steps:" msgstr "Aantal stappen:" -#: ../src/extension/internal/bluredge.cpp:138 +#: ../src/extension/internal/bluredge.cpp:139 msgid "Number of inset/outset copies of the object to make" msgstr "Het aantal te maken versmallings-/verbredingskopieën van het object" -#: ../src/extension/internal/bluredge.cpp:142 +#: ../src/extension/internal/bluredge.cpp:143 #: ../share/extensions/extrude.inx.h:5 #: ../share/extensions/generate_voronoi.inx.h:9 #: ../share/extensions/interp.inx.h:7 @@ -5843,98 +5840,103 @@ msgstr "Het aantal te maken versmallings-/verbredingskopieën van het object" msgid "Generate from Path" msgstr "Genereren uit pad" -#: ../src/extension/internal/cairo-ps-out.cpp:309 +#: ../src/extension/internal/cairo-ps-out.cpp:327 #: ../share/extensions/ps_input.inx.h:3 msgid "PostScript" msgstr "PostScript" -#: ../src/extension/internal/cairo-ps-out.cpp:311 -#: ../src/extension/internal/cairo-ps-out.cpp:351 +#: ../src/extension/internal/cairo-ps-out.cpp:329 +#: ../src/extension/internal/cairo-ps-out.cpp:370 msgid "Restrict to PS level:" msgstr "PS-niveau beperken tot:" -#: ../src/extension/internal/cairo-ps-out.cpp:312 -#: ../src/extension/internal/cairo-ps-out.cpp:352 +#: ../src/extension/internal/cairo-ps-out.cpp:330 +#: ../src/extension/internal/cairo-ps-out.cpp:371 msgid "PostScript level 3" msgstr "PostScript niveau 3" -#: ../src/extension/internal/cairo-ps-out.cpp:314 -#: ../src/extension/internal/cairo-ps-out.cpp:354 +#: ../src/extension/internal/cairo-ps-out.cpp:332 +#: ../src/extension/internal/cairo-ps-out.cpp:373 msgid "PostScript level 2" msgstr "PostScript niveau 2" -#: ../src/extension/internal/cairo-ps-out.cpp:317 -#: ../src/extension/internal/cairo-ps-out.cpp:357 +#: ../src/extension/internal/cairo-ps-out.cpp:335 +#: ../src/extension/internal/cairo-ps-out.cpp:376 #: ../src/extension/internal/cairo-renderer-pdf-out.cpp:250 -#: ../src/extension/internal/emf-win32-inout.cpp:2553 +#: ../src/extension/internal/emf-win32-inout.cpp:2557 msgid "Convert texts to paths" msgstr "Tekst naar paden omzetten" -#: ../src/extension/internal/cairo-ps-out.cpp:318 +#: ../src/extension/internal/cairo-ps-out.cpp:336 msgid "PS+LaTeX: Omit text in PS, and create LaTeX file" msgstr "PS+LaTeX: tekst in PS negeren en LaTeX-bestand maken" -#: ../src/extension/internal/cairo-ps-out.cpp:319 -#: ../src/extension/internal/cairo-ps-out.cpp:359 +#: ../src/extension/internal/cairo-ps-out.cpp:337 +#: ../src/extension/internal/cairo-ps-out.cpp:378 #: ../src/extension/internal/cairo-renderer-pdf-out.cpp:252 msgid "Rasterize filter effects" msgstr "SVG-filtereffecten rasteriseren" -#: ../src/extension/internal/cairo-ps-out.cpp:320 -#: ../src/extension/internal/cairo-ps-out.cpp:360 +#: ../src/extension/internal/cairo-ps-out.cpp:338 +#: ../src/extension/internal/cairo-ps-out.cpp:379 #: ../src/extension/internal/cairo-renderer-pdf-out.cpp:253 msgid "Resolution for rasterization (dpi):" msgstr "Resolutie voor rasteriseren (ppi):" # XXX Waar wordt dit gebruikt? -#: ../src/extension/internal/cairo-ps-out.cpp:321 -#: ../src/extension/internal/cairo-ps-out.cpp:361 +#: ../src/extension/internal/cairo-ps-out.cpp:339 +#: ../src/extension/internal/cairo-ps-out.cpp:380 msgid "Output page size" msgstr "Paginagrootte" # XXX Waar wordt dit gebruikt? -#: ../src/extension/internal/cairo-ps-out.cpp:322 -#: ../src/extension/internal/cairo-ps-out.cpp:362 +#: ../src/extension/internal/cairo-ps-out.cpp:340 +#: ../src/extension/internal/cairo-ps-out.cpp:381 #: ../src/extension/internal/cairo-renderer-pdf-out.cpp:255 msgid "Use document's page size" msgstr "Paginagrootte document gebruiken" -#: ../src/extension/internal/cairo-ps-out.cpp:323 -#: ../src/extension/internal/cairo-ps-out.cpp:363 +#: ../src/extension/internal/cairo-ps-out.cpp:341 +#: ../src/extension/internal/cairo-ps-out.cpp:382 #: ../src/extension/internal/cairo-renderer-pdf-out.cpp:256 msgid "Use exported object's size" msgstr "Objectgrootte gebruiken" -#: ../src/extension/internal/cairo-ps-out.cpp:325 -#: ../src/extension/internal/cairo-ps-out.cpp:365 +#: ../src/extension/internal/cairo-ps-out.cpp:343 +#: ../src/extension/internal/cairo-ps-out.cpp:384 +msgid "Bleed/margin (mm)" +msgstr "Overschot/marge (mm)" + +#: ../src/extension/internal/cairo-ps-out.cpp:344 +#: ../src/extension/internal/cairo-ps-out.cpp:385 #: ../src/extension/internal/cairo-renderer-pdf-out.cpp:259 msgid "Limit export to the object with ID:" msgstr "Export limiteren tot het object met ID:" -#: ../src/extension/internal/cairo-ps-out.cpp:329 +#: ../src/extension/internal/cairo-ps-out.cpp:348 #: ../share/extensions/ps_input.inx.h:2 msgid "PostScript (*.ps)" msgstr "PostScript (*.ps)" -#: ../src/extension/internal/cairo-ps-out.cpp:330 +#: ../src/extension/internal/cairo-ps-out.cpp:349 msgid "PostScript File" msgstr "Postscript-bestand" -#: ../src/extension/internal/cairo-ps-out.cpp:349 +#: ../src/extension/internal/cairo-ps-out.cpp:368 #: ../share/extensions/eps_input.inx.h:3 msgid "Encapsulated PostScript" msgstr "Encapsulated Postscript" -#: ../src/extension/internal/cairo-ps-out.cpp:358 +#: ../src/extension/internal/cairo-ps-out.cpp:377 msgid "EPS+LaTeX: Omit text in EPS, and create LaTeX file" msgstr "EPS+LaTeX: tekst in EPS negeren en LaTeX-bestand maken" -#: ../src/extension/internal/cairo-ps-out.cpp:369 +#: ../src/extension/internal/cairo-ps-out.cpp:389 #: ../share/extensions/eps_input.inx.h:2 msgid "Encapsulated PostScript (*.eps)" msgstr "Encapsulated Postscript (*.eps)" -#: ../src/extension/internal/cairo-ps-out.cpp:370 +#: ../src/extension/internal/cairo-ps-out.cpp:390 msgid "Encapsulated PostScript File" msgstr "Encapsulated Postscript File" @@ -6034,39 +6036,39 @@ msgstr "Corel DRAW Presentation uitwisselingsbestanden (*.cmx)" msgid "Open presentation exchange files saved in Corel DRAW" msgstr "Open Presentation uitwisselingsbestanden opgeslagen met Corel DRAW" -#: ../src/extension/internal/emf-win32-inout.cpp:2523 +#: ../src/extension/internal/emf-win32-inout.cpp:2527 msgid "EMF Input" msgstr "EMF-invoer" -#: ../src/extension/internal/emf-win32-inout.cpp:2528 +#: ../src/extension/internal/emf-win32-inout.cpp:2532 msgid "Enhanced Metafiles (*.emf)" msgstr "Enhanced Metafiles (*.emf)" -#: ../src/extension/internal/emf-win32-inout.cpp:2529 +#: ../src/extension/internal/emf-win32-inout.cpp:2533 msgid "Enhanced Metafiles" msgstr "Enhanced Metafiles" -#: ../src/extension/internal/emf-win32-inout.cpp:2537 +#: ../src/extension/internal/emf-win32-inout.cpp:2541 msgid "WMF Input" msgstr "WMF-invoer" -#: ../src/extension/internal/emf-win32-inout.cpp:2542 +#: ../src/extension/internal/emf-win32-inout.cpp:2546 msgid "Windows Metafiles (*.wmf)" msgstr "Windows Metafiles (*.wmf)" -#: ../src/extension/internal/emf-win32-inout.cpp:2543 +#: ../src/extension/internal/emf-win32-inout.cpp:2547 msgid "Windows Metafiles" msgstr "Windows Metafiles" -#: ../src/extension/internal/emf-win32-inout.cpp:2551 +#: ../src/extension/internal/emf-win32-inout.cpp:2555 msgid "EMF Output" msgstr "EMF-uitvoer" -#: ../src/extension/internal/emf-win32-inout.cpp:2557 +#: ../src/extension/internal/emf-win32-inout.cpp:2561 msgid "Enhanced Metafile (*.emf)" msgstr "Enhanced Metafile (*.emf)" -#: ../src/extension/internal/emf-win32-inout.cpp:2558 +#: ../src/extension/internal/emf-win32-inout.cpp:2562 msgid "Enhanced Metafile" msgstr "Enhanced Metafile" @@ -6335,7 +6337,7 @@ msgstr "Erosie::" #: ../src/extension/internal/filter/blurs.h:336 #: ../src/extension/internal/filter/color.h:1205 #: ../src/extension/internal/filter/color.h:1317 -#: ../src/ui/dialog/document-properties.cpp:108 +#: ../src/ui/dialog/document-properties.cpp:107 msgid "Background color" msgstr "Achtergrondkleur" @@ -6400,8 +6402,8 @@ msgstr "Bron reliëf" #: ../src/extension/internal/filter/color.h:821 #: ../src/extension/internal/filter/transparency.h:132 #: ../src/filter-enums.cpp:100 -#: ../src/flood-context.cpp:228 -#: ../src/widgets/sp-color-icc-selector.cpp:228 +#: ../src/flood-context.cpp:227 +#: ../src/widgets/sp-color-icc-selector.cpp:355 #: ../src/widgets/sp-color-scales.cpp:429 #: ../src/widgets/sp-color-scales.cpp:430 msgid "Red" @@ -6414,8 +6416,8 @@ msgstr "Rood" #: ../src/extension/internal/filter/color.h:822 #: ../src/extension/internal/filter/transparency.h:133 #: ../src/filter-enums.cpp:101 -#: ../src/flood-context.cpp:229 -#: ../src/widgets/sp-color-icc-selector.cpp:228 +#: ../src/flood-context.cpp:228 +#: ../src/widgets/sp-color-icc-selector.cpp:356 #: ../src/widgets/sp-color-scales.cpp:432 #: ../src/widgets/sp-color-scales.cpp:433 msgid "Green" @@ -6428,8 +6430,8 @@ msgstr "Groen" #: ../src/extension/internal/filter/color.h:823 #: ../src/extension/internal/filter/transparency.h:134 #: ../src/filter-enums.cpp:102 -#: ../src/flood-context.cpp:230 -#: ../src/widgets/sp-color-icc-selector.cpp:228 +#: ../src/flood-context.cpp:229 +#: ../src/widgets/sp-color-icc-selector.cpp:357 #: ../src/widgets/sp-color-scales.cpp:435 #: ../src/widgets/sp-color-scales.cpp:436 msgid "Blue" @@ -6455,7 +6457,7 @@ msgstr "Diffuus" #: ../src/extension/internal/filter/bumps.h:329 #: ../src/libgdl/gdl-dock-placeholder.c:175 #: ../src/libgdl/gdl-dock.c:199 -#: ../src/widgets/rect-toolbar.cpp:332 +#: ../src/widgets/rect-toolbar.cpp:334 #: ../share/extensions/interp_att_g.inx.h:11 msgid "Height" msgstr "Hoogte" @@ -6468,11 +6470,11 @@ msgstr "Hoogte" #: ../src/extension/internal/filter/paint.h:86 #: ../src/extension/internal/filter/paint.h:592 #: ../src/extension/internal/filter/paint.h:707 -#: ../src/flood-context.cpp:233 -#: ../src/widgets/sp-color-icc-selector.cpp:231 +#: ../src/flood-context.cpp:232 +#: ../src/widgets/sp-color-icc-selector.cpp:366 #: ../src/widgets/sp-color-scales.cpp:461 #: ../src/widgets/sp-color-scales.cpp:462 -#: ../src/widgets/tweak-toolbar.cpp:336 +#: ../src/widgets/tweak-toolbar.cpp:332 #: ../share/extensions/color_randomize.inx.h:5 msgid "Lightness" msgstr "Lichtheid" @@ -6495,7 +6497,6 @@ msgid "Distant" msgstr "Veraf" #: ../src/extension/internal/filter/bumps.h:106 -#: ../src/helper/units.cpp:38 #: ../src/ui/dialog/inkscape-preferences.cpp:451 msgid "Point" msgstr "Punt" @@ -6587,7 +6588,7 @@ msgstr "Achtergrond:" #: ../src/extension/internal/filter/bumps.h:322 #: ../src/extension/internal/filter/transparency.h:57 #: ../src/filter-enums.cpp:29 -#: ../src/selection-describer.cpp:55 +#: ../src/selection-describer.cpp:57 msgid "Image" msgstr "Afbeelding" @@ -6671,13 +6672,13 @@ msgstr "Kleur per kanaal" #: ../src/extension/internal/filter/color.h:156 #: ../src/extension/internal/filter/color.h:257 #: ../src/extension/internal/filter/paint.h:87 -#: ../src/flood-context.cpp:232 -#: ../src/ui/dialog/inkscape-preferences.cpp:937 -#: ../src/widgets/sp-color-icc-selector.cpp:230 -#: ../src/widgets/sp-color-icc-selector.cpp:231 +#: ../src/flood-context.cpp:231 +#: ../src/ui/dialog/inkscape-preferences.cpp:941 +#: ../src/widgets/sp-color-icc-selector.cpp:362 +#: ../src/widgets/sp-color-icc-selector.cpp:367 #: ../src/widgets/sp-color-scales.cpp:458 #: ../src/widgets/sp-color-scales.cpp:459 -#: ../src/widgets/tweak-toolbar.cpp:320 +#: ../src/widgets/tweak-toolbar.cpp:316 #: ../share/extensions/color_randomize.inx.h:4 msgid "Saturation" msgstr "Verzadiging" @@ -6685,7 +6686,7 @@ msgstr "Verzadiging" #: ../src/extension/internal/filter/color.h:160 #: ../src/extension/internal/filter/transparency.h:135 #: ../src/filter-enums.cpp:103 -#: ../src/flood-context.cpp:234 +#: ../src/flood-context.cpp:233 msgid "Alpha" msgstr "Alfa" @@ -6813,24 +6814,24 @@ msgid "Extract Channel" msgstr "Kanaal extraheren" #: ../src/extension/internal/filter/color.h:640 -#: ../src/widgets/sp-color-icc-selector.cpp:232 -#: ../src/widgets/sp-color-icc-selector.cpp:233 +#: ../src/widgets/sp-color-icc-selector.cpp:369 +#: ../src/widgets/sp-color-icc-selector.cpp:374 #: ../src/widgets/sp-color-scales.cpp:483 #: ../src/widgets/sp-color-scales.cpp:484 msgid "Cyan" msgstr "Cyaan" #: ../src/extension/internal/filter/color.h:641 -#: ../src/widgets/sp-color-icc-selector.cpp:232 -#: ../src/widgets/sp-color-icc-selector.cpp:233 +#: ../src/widgets/sp-color-icc-selector.cpp:370 +#: ../src/widgets/sp-color-icc-selector.cpp:375 #: ../src/widgets/sp-color-scales.cpp:486 #: ../src/widgets/sp-color-scales.cpp:487 msgid "Magenta" msgstr "Magenta" #: ../src/extension/internal/filter/color.h:642 -#: ../src/widgets/sp-color-icc-selector.cpp:232 -#: ../src/widgets/sp-color-icc-selector.cpp:233 +#: ../src/widgets/sp-color-icc-selector.cpp:371 +#: ../src/widgets/sp-color-icc-selector.cpp:376 #: ../src/widgets/sp-color-scales.cpp:489 #: ../src/widgets/sp-color-scales.cpp:490 msgid "Yellow" @@ -6857,15 +6858,15 @@ msgid "Fade to:" msgstr "Vervagen naar:" #: ../src/extension/internal/filter/color.h:744 -#: ../src/ui/widget/selected-style.cpp:254 -#: ../src/widgets/sp-color-icc-selector.cpp:232 +#: ../src/ui/widget/selected-style.cpp:257 +#: ../src/widgets/sp-color-icc-selector.cpp:372 #: ../src/widgets/sp-color-scales.cpp:492 #: ../src/widgets/sp-color-scales.cpp:493 msgid "Black" msgstr "Zwart" #: ../src/extension/internal/filter/color.h:745 -#: ../src/ui/widget/selected-style.cpp:250 +#: ../src/ui/widget/selected-style.cpp:253 msgid "White" msgstr "Wit" @@ -6888,7 +6889,7 @@ msgid "Customize greyscale components" msgstr "Grijswaarden aanpassen" #: ../src/extension/internal/filter/color.h:905 -#: ../src/ui/widget/selected-style.cpp:246 +#: ../src/ui/widget/selected-style.cpp:249 msgid "Invert" msgstr "Inverteren" @@ -6976,7 +6977,7 @@ msgstr "Verplaatsing rood" #: ../src/extension/internal/filter/color.h:1310 #: ../src/extension/internal/filter/color.h:1313 #: ../src/ui/dialog/input.cpp:1616 -#: ../src/ui/dialog/layers.cpp:915 +#: ../src/ui/dialog/layers.cpp:916 msgid "X" msgstr "X" @@ -7111,8 +7112,8 @@ msgstr "Uit" #: ../src/extension/internal/filter/distort.h:77 #: ../src/extension/internal/filter/textures.h:75 -#: ../src/ui/widget/selected-style.cpp:128 -#: ../src/ui/widget/style-swatch.cpp:127 +#: ../src/ui/widget/selected-style.cpp:131 +#: ../src/ui/widget/style-swatch.cpp:128 msgid "Stroke:" msgstr "Lijn:" @@ -7223,6 +7224,8 @@ msgid "Detect:" msgstr "Detecteren:" #: ../src/extension/internal/filter/image.h:52 +#: ../src/ui/dialog/template-load-tab.cpp:96 +#: ../src/ui/dialog/template-load-tab.cpp:131 msgid "All" msgstr "Alle" @@ -7263,9 +7266,9 @@ msgstr "Open" #: ../src/extension/internal/filter/morphology.h:65 #: ../src/libgdl/gdl-dock-placeholder.c:167 #: ../src/libgdl/gdl-dock.c:191 -#: ../src/widgets/rect-toolbar.cpp:315 -#: ../src/widgets/spray-toolbar.cpp:132 -#: ../src/widgets/tweak-toolbar.cpp:146 +#: ../src/widgets/rect-toolbar.cpp:317 +#: ../src/widgets/spray-toolbar.cpp:128 +#: ../src/widgets/tweak-toolbar.cpp:142 #: ../share/extensions/interp_att_g.inx.h:10 msgid "Width" msgstr "Breedte" @@ -7501,8 +7504,8 @@ msgid "Convert image to an engraving made of vertical and horizontal lines" msgstr "Afbeelding omzetten in gravure van verticale en horizontale lijnen" #: ../src/extension/internal/filter/paint.h:331 -#: ../src/ui/dialog/align-and-distribute.cpp:1048 -#: ../src/widgets/desktop-widget.cpp:1930 +#: ../src/ui/dialog/align-and-distribute.cpp:997 +#: ../src/widgets/desktop-widget.cpp:2004 msgid "Drawing" msgstr "Tekening" @@ -7510,7 +7513,7 @@ msgstr "Tekening" #: ../src/extension/internal/filter/paint.h:496 #: ../src/extension/internal/filter/paint.h:590 #: ../src/extension/internal/filter/paint.h:976 -#: ../src/splivarot.cpp:1988 +#: ../src/splivarot.cpp:2024 msgid "Simplify" msgstr "Vereenvoudigen" @@ -7781,7 +7784,7 @@ msgid "Blend" msgstr "Mengen" #: ../src/extension/internal/filter/transparency.h:55 -#: ../src/rdf.cpp:258 +#: ../src/rdf.cpp:261 msgid "Source:" msgstr "Bron:" @@ -7791,12 +7794,12 @@ msgid "Background" msgstr "Achtergrond" #: ../src/extension/internal/filter/transparency.h:59 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2610 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2623 #: ../src/ui/dialog/input.cpp:1088 -#: ../src/widgets/erasor-toolbar.cpp:127 -#: ../src/widgets/pencil-toolbar.cpp:161 -#: ../src/widgets/spray-toolbar.cpp:202 -#: ../src/widgets/tweak-toolbar.cpp:272 +#: ../src/widgets/eraser-toolbar.cpp:123 +#: ../src/widgets/pencil-toolbar.cpp:156 +#: ../src/widgets/spray-toolbar.cpp:198 +#: ../src/widgets/tweak-toolbar.cpp:268 #: ../share/extensions/extrude.inx.h:2 #: ../share/extensions/triangle.inx.h:8 msgid "Mode:" @@ -7884,41 +7887,40 @@ msgstr "GIMP-kleurverloop (*.ggr)" msgid "Gradients used in GIMP" msgstr "Kleurverlopen gebruikt in GIMP" -#: ../src/extension/internal/grid.cpp:201 -#: ../src/ui/widget/panel.cpp:113 +#: ../src/extension/internal/grid.cpp:209 +#: ../src/ui/widget/panel.cpp:117 msgid "Grid" msgstr "Raster" -#: ../src/extension/internal/grid.cpp:203 +#: ../src/extension/internal/grid.cpp:211 msgid "Line Width:" msgstr "Lijnbreedte:" -#: ../src/extension/internal/grid.cpp:204 +#: ../src/extension/internal/grid.cpp:212 msgid "Horizontal Spacing:" msgstr "Horizontale tussenruimte:" -#: ../src/extension/internal/grid.cpp:205 +#: ../src/extension/internal/grid.cpp:213 msgid "Vertical Spacing:" msgstr "Verticale tussenruimte:" -#: ../src/extension/internal/grid.cpp:206 +#: ../src/extension/internal/grid.cpp:214 msgid "Horizontal Offset:" msgstr "Horizontale inspringing:" -#: ../src/extension/internal/grid.cpp:207 +#: ../src/extension/internal/grid.cpp:215 msgid "Vertical Offset:" msgstr "Verticale inspringing:" -#: ../src/extension/internal/grid.cpp:211 +#: ../src/extension/internal/grid.cpp:219 #: ../share/extensions/draw_from_triangle.inx.h:58 #: ../share/extensions/eqtexsvg.inx.h:4 #: ../share/extensions/foldablebox.inx.h:9 #: ../share/extensions/funcplot.inx.h:38 -#: ../share/extensions/gears.inx.h:11 #: ../share/extensions/grid_cartesian.inx.h:23 #: ../share/extensions/grid_isometric.inx.h:11 #: ../share/extensions/grid_polar.inx.h:22 -#: ../share/extensions/guides_creator.inx.h:20 +#: ../share/extensions/guides_creator.inx.h:19 #: ../share/extensions/layout_nup.inx.h:35 #: ../share/extensions/lindenmayer.inx.h:34 #: ../share/extensions/param_curves.inx.h:30 @@ -7929,6 +7931,8 @@ msgstr "Verticale inspringing:" #: ../share/extensions/render_barcode.inx.h:5 #: ../share/extensions/render_barcode_datamatrix.inx.h:5 #: ../share/extensions/render_barcode_qrcode.inx.h:18 +#: ../share/extensions/render_gears.inx.h:11 +#: ../share/extensions/render_gear_rack.inx.h:5 #: ../share/extensions/rtree.inx.h:4 #: ../share/extensions/spirograph.inx.h:10 #: ../share/extensions/svgcalendar.inx.h:38 @@ -7937,14 +7941,14 @@ msgstr "Verticale inspringing:" msgid "Render" msgstr "Renderen" -#: ../src/extension/internal/grid.cpp:212 -#: ../src/ui/dialog/document-properties.cpp:148 +#: ../src/extension/internal/grid.cpp:220 +#: ../src/ui/dialog/document-properties.cpp:147 #: ../src/ui/dialog/inkscape-preferences.cpp:776 -#: ../src/widgets/toolbox.cpp:1822 +#: ../src/widgets/toolbox.cpp:1820 msgid "Grids" msgstr "Rasters" -#: ../src/extension/internal/grid.cpp:215 +#: ../src/extension/internal/grid.cpp:223 msgid "Draw a path which is a grid" msgstr "Een pad tekenen dat een raster is" @@ -7976,15 +7980,15 @@ msgstr "LaTeX PSTricks Bestand" msgid "LaTeX Print" msgstr "LaTeX print" -#: ../src/extension/internal/odf.cpp:2138 +#: ../src/extension/internal/odf.cpp:2148 msgid "OpenDocument Drawing Output" msgstr "OpenDocument-tekeninguitvoer" -#: ../src/extension/internal/odf.cpp:2143 +#: ../src/extension/internal/odf.cpp:2153 msgid "OpenDocument drawing (*.odg)" msgstr "OpenDocument-tekening (*.odg)" -#: ../src/extension/internal/odf.cpp:2144 +#: ../src/extension/internal/odf.cpp:2154 msgid "OpenDocument drawing file" msgstr "OpenDocument-tekeningbestand" @@ -8279,132 +8283,132 @@ msgstr "Het effect live voorvertonen op het canvas?" msgid "Format autodetect failed. The file is being opened as SVG." msgstr "Het automatisch detecteren van de bestandsindeling is mislukt. Het bestand wordt geopend als SVG." -#: ../src/file.cpp:153 +#: ../src/file.cpp:179 msgid "default.svg" msgstr "default.nl.svg" -#: ../src/file.cpp:284 +#: ../src/file.cpp:318 msgid "Broken links have been changed to point to existing files." msgstr "Verbroken links werden aangepast naar bestaande bestanden." -#: ../src/file.cpp:295 -#: ../src/file.cpp:1218 +#: ../src/file.cpp:329 +#: ../src/file.cpp:1253 #, c-format msgid "Failed to load the requested file %s" msgstr "Het laden van het gevraagde bestand %s is mislukt" -#: ../src/file.cpp:321 +#: ../src/file.cpp:355 msgid "Document not saved yet. Cannot revert." msgstr "Het bestand is nog niet opgeslagen. Kan het niet terugdraaien." -#: ../src/file.cpp:327 +#: ../src/file.cpp:361 #, c-format msgid "Changes will be lost! Are you sure you want to reload document %s?" msgstr "Wijzigingen zullen verloren gaan! Weet u zeker dat u bestand %s opnieuw wilt laden?" -#: ../src/file.cpp:356 +#: ../src/file.cpp:390 msgid "Document reverted." msgstr "Het bestand is teruggezet." -#: ../src/file.cpp:358 +#: ../src/file.cpp:392 msgid "Document not reverted." msgstr "Het bestand is niet teruggezet." -#: ../src/file.cpp:508 +#: ../src/file.cpp:542 msgid "Select file to open" msgstr "Selecteer een bestand om te openen" -#: ../src/file.cpp:592 +#: ../src/file.cpp:624 msgid "Clean up document" msgstr "Document schoonmaken" -#: ../src/file.cpp:597 +#: ../src/file.cpp:631 #, c-format msgid "Removed %i unused definition in <defs>." msgid_plural "Removed %i unused definitions in <defs>." msgstr[0] "In <defs> is %i ongebruikte definitie verwijderd." msgstr[1] "In <defs> zijn %i ongebruikte definities verwijderd." -#: ../src/file.cpp:602 +#: ../src/file.cpp:636 msgid "No unused definitions in <defs>." msgstr "Er zijn geen ongebruikte definities in <defs>." -#: ../src/file.cpp:633 +#: ../src/file.cpp:668 #, c-format msgid "No Inkscape extension found to save document (%s). This may have been caused by an unknown filename extension." msgstr "Er werd geen Inkscape-uitbreiding aangetroffen om het bestand (%s) op te slaan. Dit kan komen door een onbekende bestandsextensie." -#: ../src/file.cpp:634 -#: ../src/file.cpp:642 -#: ../src/file.cpp:650 -#: ../src/file.cpp:656 -#: ../src/file.cpp:661 +#: ../src/file.cpp:669 +#: ../src/file.cpp:677 +#: ../src/file.cpp:685 +#: ../src/file.cpp:691 +#: ../src/file.cpp:696 msgid "Document not saved." msgstr "Document is niet opgeslagen." -#: ../src/file.cpp:641 +#: ../src/file.cpp:676 #, c-format msgid "File %s is write protected. Please remove write protection and try again." msgstr "Bestand %s is schrijfbeveiligd. Verwijder aub de schrijfbeveiliging en probeer opnieuw." -#: ../src/file.cpp:649 +#: ../src/file.cpp:684 #, c-format msgid "File %s could not be saved." msgstr "Bestand %s kon niet worden opgeslagen." -#: ../src/file.cpp:679 -#: ../src/file.cpp:681 +#: ../src/file.cpp:714 +#: ../src/file.cpp:716 msgid "Document saved." msgstr "Document is opgeslagen." #. We are saving for the first time; create a unique default filename -#: ../src/file.cpp:829 -#: ../src/file.cpp:1381 +#: ../src/file.cpp:864 +#: ../src/file.cpp:1416 #, c-format msgid "drawing%s" msgstr "Tekening%s" -#: ../src/file.cpp:835 +#: ../src/file.cpp:870 #, c-format msgid "drawing-%d%s" msgstr "Tekening-%d%s" -#: ../src/file.cpp:839 +#: ../src/file.cpp:874 #, c-format msgid "%s" msgstr "%s" -#: ../src/file.cpp:854 +#: ../src/file.cpp:889 msgid "Select file to save a copy to" msgstr "Selecteer een bestand om een kopie naar op te slaan" -#: ../src/file.cpp:856 +#: ../src/file.cpp:891 msgid "Select file to save to" msgstr "Selecteer een bestand om in op te slaan" -#: ../src/file.cpp:962 -#: ../src/file.cpp:964 +#: ../src/file.cpp:997 +#: ../src/file.cpp:999 msgid "No changes need to be saved." msgstr "Er zijn geen wijzigingen die opgeslagen hoeven te worden." -#: ../src/file.cpp:983 +#: ../src/file.cpp:1018 msgid "Saving document..." msgstr "Opslaan van document..." -#: ../src/file.cpp:1215 +#: ../src/file.cpp:1250 #: ../src/ui/dialog/ocaldialogs.cpp:1244 msgid "Import" msgstr "Importeren" -#: ../src/file.cpp:1265 +#: ../src/file.cpp:1300 msgid "Select file to import" msgstr "Selecteer een bestand om te importeren" -#: ../src/file.cpp:1403 +#: ../src/file.cpp:1438 msgid "Select file to export to" msgstr "Selecteer een bestand om naar te exporteren" -#: ../src/file.cpp:1656 +#: ../src/file.cpp:1691 msgid "Import Clip Art" msgstr "Clipart importeren" @@ -8433,6 +8437,7 @@ msgid "Flood" msgstr "Vullen" #: ../src/filter-enums.cpp:30 +#: ../share/extensions/text_merge.inx.h:1 msgid "Merge" msgstr "Samenvoegen" @@ -8486,7 +8491,7 @@ msgstr "Luminantie naar alfa" #. File #: ../src/filter-enums.cpp:70 -#: ../src/verbs.cpp:2291 +#: ../src/verbs.cpp:2348 #: ../share/extensions/jessyInk_mouseHandler.inx.h:3 #: ../share/extensions/jessyInk_transitions.inx.h:7 msgid "Default" @@ -8497,7 +8502,7 @@ msgid "Arithmetic" msgstr "Aritmetisch" #: ../src/filter-enums.cpp:92 -#: ../src/selection-chemistry.cpp:516 +#: ../src/selection-chemistry.cpp:531 msgid "Duplicate" msgstr "Dupliceren" @@ -8529,77 +8534,77 @@ msgstr "Puntlicht" msgid "Spot Light" msgstr "Spotlicht" -#: ../src/flood-context.cpp:227 +#: ../src/flood-context.cpp:226 msgid "Visible Colors" msgstr "Zichtbare kleuren" -#: ../src/flood-context.cpp:231 -#: ../src/widgets/sp-color-icc-selector.cpp:230 -#: ../src/widgets/sp-color-icc-selector.cpp:231 +#: ../src/flood-context.cpp:230 +#: ../src/widgets/sp-color-icc-selector.cpp:361 +#: ../src/widgets/sp-color-icc-selector.cpp:365 #: ../src/widgets/sp-color-scales.cpp:455 #: ../src/widgets/sp-color-scales.cpp:456 -#: ../src/widgets/tweak-toolbar.cpp:304 +#: ../src/widgets/tweak-toolbar.cpp:300 #: ../share/extensions/color_randomize.inx.h:3 msgid "Hue" msgstr "Tint" -#: ../src/flood-context.cpp:245 +#: ../src/flood-context.cpp:244 msgctxt "Flood autogap" msgid "None" msgstr "Geen" -#: ../src/flood-context.cpp:246 +#: ../src/flood-context.cpp:245 msgctxt "Flood autogap" msgid "Small" msgstr "Klein" -#: ../src/flood-context.cpp:247 +#: ../src/flood-context.cpp:246 msgctxt "Flood autogap" msgid "Medium" msgstr "Middel" -#: ../src/flood-context.cpp:248 +#: ../src/flood-context.cpp:247 msgctxt "Flood autogap" msgid "Large" msgstr "Groot" -#: ../src/flood-context.cpp:470 +#: ../src/flood-context.cpp:469 msgid "Too much inset, the result is empty." msgstr "Te veel versmalling, het resultaat is leeg." -#: ../src/flood-context.cpp:511 +#: ../src/flood-context.cpp:510 #, c-format msgid "Area filled, path with %d node created and unioned with selection." msgid_plural "Area filled, path with %d nodes created and unioned with selection." msgstr[0] "Gebied is gevuld, pad met %d knooppunt is gemaakt en verenigd met selectie." msgstr[1] "Gebied is gevuld, pad met %d knooppunten is gemaakt en verenigd met selectie." -#: ../src/flood-context.cpp:517 +#: ../src/flood-context.cpp:516 #, c-format msgid "Area filled, path with %d node created." msgid_plural "Area filled, path with %d nodes created." msgstr[0] "Gebied is gevuld, pad met %d knooppunt is gemaakt." msgstr[1] "Gebied is gevuld, pad met %d knooppunten is gemaakt." -#: ../src/flood-context.cpp:785 -#: ../src/flood-context.cpp:1095 +#: ../src/flood-context.cpp:784 +#: ../src/flood-context.cpp:1094 msgid "Area is not bounded, cannot fill." msgstr "Gebied is niet gesloten, kan het niet vullen." -#: ../src/flood-context.cpp:1100 +#: ../src/flood-context.cpp:1099 msgid "Only the visible part of the bounded area was filled. If you want to fill all of the area, undo, zoom out, and fill again." msgstr "Enkel het zichtbare deel van een afgebakend gebied werd gevuld. Als u het hele gebied wilt vullen, ongedaan maken, uitzoomen en opnieuw vullen." -#: ../src/flood-context.cpp:1118 -#: ../src/flood-context.cpp:1277 +#: ../src/flood-context.cpp:1117 +#: ../src/flood-context.cpp:1276 msgid "Fill bounded area" msgstr "Afgebakend gebied vullen" -#: ../src/flood-context.cpp:1137 +#: ../src/flood-context.cpp:1136 msgid "Set style on object" msgstr "Stijl aan object geven" -#: ../src/flood-context.cpp:1196 +#: ../src/flood-context.cpp:1195 msgid "Draw over areas to add to fill, hold Alt for touch fill" msgstr "Sleep over gebieden om ze aan vulling toe te voegen; gebruik Alt voor aanraakvulling" @@ -8612,7 +8617,7 @@ msgid "Reverse gradient" msgstr "Kleurverloop omdraaien" #: ../src/gradient-chemistry.cpp:1608 -#: ../src/widgets/gradient-selector.cpp:227 +#: ../src/widgets/gradient-selector.cpp:228 msgid "Delete swatch" msgstr "Palet verwijderen" @@ -8713,7 +8718,7 @@ msgstr[1] "Geen (van %d) kleurverloophandvat geselecteerd op %d geselecte #: ../src/gradient-context.cpp:381 #: ../src/gradient-context.cpp:479 -#: ../src/ui/dialog/swatches.cpp:203 +#: ../src/ui/dialog/swatches.cpp:204 #: ../src/widgets/gradient-vector.cpp:814 msgid "Add gradient stop" msgstr "Kleurverloopovergang toevoegen" @@ -8823,307 +8828,114 @@ msgstr "Kleurverloopovergang(en) verplaatsen" msgid "Delete gradient stop(s)" msgstr "Kleurverloopovergang(en) verwijderen" -#: ../src/helper/units.cpp:37 -#: ../src/live_effects/lpe-ruler.cpp:42 -msgid "Unit" -msgstr "Eenheid" +#: ../src/inkscape.cpp:341 +msgid "Autosave failed! Cannot create directory %1." +msgstr "Auto-opslaan mislukt! Kan directory %1 niet maken." -#. Add the units menu. -#: ../src/helper/units.cpp:37 -#: ../src/widgets/lpe-toolbar.cpp:400 -#: ../src/widgets/node-toolbar.cpp:622 -#: ../src/widgets/paintbucket-toolbar.cpp:185 -#: ../src/widgets/rect-toolbar.cpp:376 -#: ../src/widgets/select-toolbar.cpp:538 -msgid "Units" -msgstr "Eenheden" +#: ../src/inkscape.cpp:350 +msgid "Autosave failed! Cannot open directory %1." +msgstr "Auto-opslaan mislukt! Kan directory %1 niet openen." -#: ../src/helper/units.cpp:38 -#: ../share/extensions/dxf_outlines.inx.h:9 -msgid "pt" -msgstr "pt" +#: ../src/inkscape.cpp:366 +msgid "Autosaving documents..." +msgstr "Auto-opslaan van document..." -#: ../src/helper/units.cpp:38 -#: ../share/extensions/perfectboundcover.inx.h:11 -msgid "Points" -msgstr "Punten" +#: ../src/inkscape.cpp:439 +msgid "Autosave failed! Could not find inkscape extension to save document." +msgstr "Auto-opslaan mislukt! Kon de inkscape-uitbreiding om document te bewaren niet vinden." -#: ../src/helper/units.cpp:38 -msgid "Pt" -msgstr "Pt" +#: ../src/inkscape.cpp:442 +#: ../src/inkscape.cpp:449 +#, c-format +msgid "Autosave failed! File %s could not be saved." +msgstr "Auto-opslaan mislukt! Bestand %s kon niet bewaard worden." -#: ../src/helper/units.cpp:39 -#: ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Pica" -msgstr "Pica" +#: ../src/inkscape.cpp:464 +msgid "Autosave complete." +msgstr "Auto-opslaan afgelopen." -#: ../src/helper/units.cpp:39 -#: ../share/extensions/dxf_outlines.inx.h:10 -msgid "pc" -msgstr "pc" +#: ../src/inkscape.cpp:712 +msgid "Untitled document" +msgstr "Naamloos document" -#: ../src/helper/units.cpp:39 -msgid "Picas" -msgstr "Pica's" +#. Show nice dialog box +#: ../src/inkscape.cpp:744 +msgid "Inkscape encountered an internal error and will close now.\n" +msgstr "Er is een interne fout opgetreden in Inkscape. Het programma wordt afgesloten.\n" -#: ../src/helper/units.cpp:39 -msgid "Pc" -msgstr "Pc" +#: ../src/inkscape.cpp:745 +msgid "Automatic backups of unsaved documents were done to the following locations:\n" +msgstr "Automatische reservekopieën van niet-opgeslagen documenten werden gemaakt op de volgende locaties:\n" -#: ../src/helper/units.cpp:40 -#: ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Pixel" -msgstr "Pixel" +#: ../src/inkscape.cpp:746 +msgid "Automatic backup of the following documents failed:\n" +msgstr "Het automatisch maken van een reservekopie is mislukt voor de volgende bestanden:\n" -#: ../src/helper/units.cpp:40 -#: ../share/extensions/dxf_outlines.inx.h:11 -#: ../share/extensions/gears.inx.h:7 -msgid "px" -msgstr "px" +#: ../src/interface.cpp:774 +msgctxt "Interface setup" +msgid "Default" +msgstr "Standaard" -#: ../src/helper/units.cpp:40 -msgid "Pixels" -msgstr "Pixels" +#: ../src/interface.cpp:774 +msgid "Default interface setup" +msgstr "Standaard interface" -#: ../src/helper/units.cpp:40 -msgid "Px" -msgstr "Px" +#: ../src/interface.cpp:775 +msgctxt "Interface setup" +msgid "Custom" +msgstr "Aangepast" -#. You can add new elements from this point forward -#: ../src/helper/units.cpp:42 -msgid "Percent" -msgstr "Procent" +#: ../src/interface.cpp:775 +msgid "Setup for custom task" +msgstr "Aangepaste interface" -#: ../src/helper/units.cpp:42 -#: ../src/ui/dialog/inkscape-preferences.cpp:1265 -msgid "%" -msgstr "%" +#: ../src/interface.cpp:776 +msgctxt "Interface setup" +msgid "Wide" +msgstr "Breedbeeld" -#: ../src/helper/units.cpp:42 -msgid "Percents" -msgstr "Procent" +#: ../src/interface.cpp:776 +msgid "Setup for widescreen work" +msgstr "Setup voor breedbeeldwerk" -#: ../src/helper/units.cpp:43 -#: ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Millimeter" -msgstr "Millimeter" +#: ../src/interface.cpp:888 +#, c-format +msgid "Verb \"%s\" Unknown" +msgstr "Werkwoord \"%s\" is onbekend" -#: ../src/helper/units.cpp:43 -#: ../share/extensions/dxf_outlines.inx.h:12 -#: ../share/extensions/gears.inx.h:9 -#: ../share/extensions/gcodetools_area.inx.h:46 -#: ../share/extensions/gcodetools_dxf_points.inx.h:18 -#: ../share/extensions/gcodetools_engraving.inx.h:24 -#: ../share/extensions/gcodetools_graffiti.inx.h:18 -#: ../share/extensions/gcodetools_lathe.inx.h:39 -#: ../share/extensions/gcodetools_orientation_points.inx.h:11 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:28 -msgid "mm" -msgstr "mm" +#: ../src/interface.cpp:927 +msgid "Open _Recent" +msgstr "_Recente bestanden" -#: ../src/helper/units.cpp:43 -msgid "Millimeters" -msgstr "Millimeter" +#: ../src/interface.cpp:1035 +#: ../src/interface.cpp:1121 +#: ../src/interface.cpp:1224 +#: ../src/ui/widget/selected-style.cpp:528 +msgid "Drop color" +msgstr "Kleur plakken" -#: ../src/helper/units.cpp:44 -#: ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Centimeter" -msgstr "Centimeter" +#: ../src/interface.cpp:1074 +#: ../src/interface.cpp:1184 +msgid "Drop color on gradient" +msgstr "Kleur plakken op kleurverloop" -#: ../src/helper/units.cpp:44 -#: ../share/extensions/dxf_outlines.inx.h:13 -msgid "cm" -msgstr "cm" - -#: ../src/helper/units.cpp:44 -msgid "Centimeters" -msgstr "Centimeter" - -#: ../src/helper/units.cpp:45 -msgid "Meter" -msgstr "Meter" - -#: ../src/helper/units.cpp:45 -#: ../share/extensions/dxf_outlines.inx.h:14 -msgid "m" -msgstr "m" - -#: ../src/helper/units.cpp:45 -msgid "Meters" -msgstr "Meter" - -#. no svg_unit -#: ../src/helper/units.cpp:46 -#: ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Inch" -msgstr "Duim" - -#: ../src/helper/units.cpp:46 -#: ../share/extensions/dxf_outlines.inx.h:15 -#: ../share/extensions/gears.inx.h:8 -#: ../share/extensions/gcodetools_area.inx.h:47 -#: ../share/extensions/gcodetools_dxf_points.inx.h:19 -#: ../share/extensions/gcodetools_engraving.inx.h:25 -#: ../share/extensions/gcodetools_graffiti.inx.h:19 -#: ../share/extensions/gcodetools_lathe.inx.h:40 -#: ../share/extensions/gcodetools_orientation_points.inx.h:12 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:29 -msgid "in" -msgstr "duim" - -#: ../src/helper/units.cpp:46 -msgid "Inches" -msgstr "Duim" - -#: ../src/helper/units.cpp:47 -msgid "Foot" -msgstr "voet" - -#: ../src/helper/units.cpp:47 -#: ../share/extensions/dxf_outlines.inx.h:16 -msgid "ft" -msgstr "voet" - -#: ../src/helper/units.cpp:47 -msgid "Feet" -msgstr "voet" - -#. Volatiles do not have default, so there are none here -#. TRANSLATORS: for info, see http://www.w3.org/TR/REC-CSS2/syndata.html#length-units -#: ../src/helper/units.cpp:50 -#: ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Em square" -msgstr "Em kwadraat" - -#: ../src/helper/units.cpp:50 -msgid "em" -msgstr "em" - -#: ../src/helper/units.cpp:50 -msgid "Em squares" -msgstr "Em kwadraat" - -#. TRANSLATORS: for info, see http://www.w3.org/TR/REC-CSS2/syndata.html#length-units -#: ../src/helper/units.cpp:52 -msgid "Ex square" -msgstr "Ex kwadraat" - -#: ../src/helper/units.cpp:52 -msgid "ex" -msgstr "ex" - -#: ../src/helper/units.cpp:52 -msgid "Ex squares" -msgstr "Ex kwadraat" - -#: ../src/inkscape.cpp:317 -msgid "Autosave failed! Cannot create directory %1." -msgstr "Auto-opslaan mislukt! Kan directory %1 niet maken." - -#: ../src/inkscape.cpp:326 -msgid "Autosave failed! Cannot open directory %1." -msgstr "Auto-opslaan mislukt! Kan directory %1 niet openen." - -#: ../src/inkscape.cpp:342 -msgid "Autosaving documents..." -msgstr "Auto-opslaan van document..." - -#: ../src/inkscape.cpp:415 -msgid "Autosave failed! Could not find inkscape extension to save document." -msgstr "Auto-opslaan mislukt! Kon de inkscape-uitbreiding om document te bewaren niet vinden." - -#: ../src/inkscape.cpp:418 -#: ../src/inkscape.cpp:425 -#, c-format -msgid "Autosave failed! File %s could not be saved." -msgstr "Auto-opslaan mislukt! Bestand %s kon niet bewaard worden." - -#: ../src/inkscape.cpp:440 -msgid "Autosave complete." -msgstr "Auto-opslaan afgelopen." - -#: ../src/inkscape.cpp:686 -msgid "Untitled document" -msgstr "Naamloos document" - -#. Show nice dialog box -#: ../src/inkscape.cpp:718 -msgid "Inkscape encountered an internal error and will close now.\n" -msgstr "Er is een interne fout opgetreden in Inkscape. Het programma wordt afgesloten.\n" - -#: ../src/inkscape.cpp:719 -msgid "Automatic backups of unsaved documents were done to the following locations:\n" -msgstr "Automatische reservekopieën van niet-opgeslagen documenten werden gemaakt op de volgende locaties:\n" - -#: ../src/inkscape.cpp:720 -msgid "Automatic backup of the following documents failed:\n" -msgstr "Het automatisch maken van een reservekopie is mislukt voor de volgende bestanden:\n" - -#: ../src/interface.cpp:865 -msgctxt "Interface setup" -msgid "Default" -msgstr "Standaard" - -#: ../src/interface.cpp:865 -msgid "Default interface setup" -msgstr "Standaard interface" - -#: ../src/interface.cpp:866 -msgctxt "Interface setup" -msgid "Custom" -msgstr "Aangepast" - -#: ../src/interface.cpp:866 -msgid "Setup for custom task" -msgstr "Aangepaste interface" - -#: ../src/interface.cpp:867 -msgctxt "Interface setup" -msgid "Wide" -msgstr "Breedbeeld" - -#: ../src/interface.cpp:867 -msgid "Setup for widescreen work" -msgstr "Setup voor breedbeeldwerk" - -#: ../src/interface.cpp:979 -#, c-format -msgid "Verb \"%s\" Unknown" -msgstr "Werkwoord \"%s\" is onbekend" - -#: ../src/interface.cpp:1021 -msgid "Open _Recent" -msgstr "_Recente bestanden" - -#: ../src/interface.cpp:1129 -#: ../src/interface.cpp:1215 -#: ../src/interface.cpp:1318 -#: ../src/ui/widget/selected-style.cpp:523 -msgid "Drop color" -msgstr "Kleur plakken" - -#: ../src/interface.cpp:1168 -#: ../src/interface.cpp:1278 -msgid "Drop color on gradient" -msgstr "Kleur plakken op kleurverloop" - -#: ../src/interface.cpp:1331 +#: ../src/interface.cpp:1237 msgid "Could not parse SVG data" msgstr "De SVG-gegevens konden niet worden verwerkt." -#: ../src/interface.cpp:1370 +#: ../src/interface.cpp:1276 msgid "Drop SVG" msgstr "SVG plakken" -#: ../src/interface.cpp:1383 +#: ../src/interface.cpp:1289 msgid "Drop Symbol" msgstr "Symbool plakken" -#: ../src/interface.cpp:1414 +#: ../src/interface.cpp:1320 msgid "Drop bitmap image" msgstr "Bitmap plakken" -#: ../src/interface.cpp:1506 +#: ../src/interface.cpp:1412 #, c-format msgid "" "A file named \"%s\" already exists. Do you want to replace it?\n" @@ -9134,169 +8946,169 @@ msgstr "" "\n" "Het bestand bestaat al in \"%s\". Door dit te vervangen, wordt de oude inhoud overschreven." -#: ../src/interface.cpp:1513 +#: ../src/interface.cpp:1419 #: ../share/extensions/web-set-att.inx.h:21 #: ../share/extensions/web-transmit-att.inx.h:19 msgid "Replace" msgstr "Vervangen" -#: ../src/interface.cpp:1584 +#: ../src/interface.cpp:1490 msgid "Go to parent" msgstr "Naar de ouder gaan" #. TRANSLATORS: #%1 is the id of the group e.g. , not a number. -#: ../src/interface.cpp:1625 +#: ../src/interface.cpp:1531 msgid "Enter group #%1" msgstr "Groep #%1 binnengaan" #. Item dialog -#: ../src/interface.cpp:1737 -#: ../src/verbs.cpp:2785 +#: ../src/interface.cpp:1643 +#: ../src/verbs.cpp:2842 msgid "_Object Properties..." msgstr "Object_eigenschappen..." -#: ../src/interface.cpp:1746 +#: ../src/interface.cpp:1652 msgid "_Select This" msgstr "Object _selecteren" -#: ../src/interface.cpp:1757 +#: ../src/interface.cpp:1663 msgid "Select Same" msgstr "Gelijkaardig selecteren" #. Select same fill and stroke -#: ../src/interface.cpp:1767 +#: ../src/interface.cpp:1673 msgid "Fill and Stroke" msgstr "Vulling en lijn" #. Select same fill color -#: ../src/interface.cpp:1774 +#: ../src/interface.cpp:1680 msgid "Fill Color" msgstr "Vulkleur" #. Select same stroke color -#: ../src/interface.cpp:1781 +#: ../src/interface.cpp:1687 msgid "Stroke Color" msgstr "Lijnkleur" #. Select same stroke style -#: ../src/interface.cpp:1788 +#: ../src/interface.cpp:1694 msgid "Stroke Style" msgstr "Lijnstijl" #. Select same stroke style -#: ../src/interface.cpp:1795 +#: ../src/interface.cpp:1701 msgid "Object type" msgstr "Objecttype" #. Move to layer -#: ../src/interface.cpp:1802 +#: ../src/interface.cpp:1708 msgid "_Move to layer ..." msgstr "N_aar laag verplaatsen..." #. Create link -#: ../src/interface.cpp:1812 +#: ../src/interface.cpp:1718 msgid "Create _Link" msgstr "Koppeling _maken" #. Set mask -#: ../src/interface.cpp:1835 +#: ../src/interface.cpp:1741 msgid "Set Mask" msgstr "Masker inschakelen" #. Release mask -#: ../src/interface.cpp:1846 +#: ../src/interface.cpp:1752 msgid "Release Mask" msgstr "Masker uitschakelen" #. Set Clip -#: ../src/interface.cpp:1857 +#: ../src/interface.cpp:1763 msgid "Set Cl_ip" msgstr "_Afsnijden instellen" #. Release Clip -#: ../src/interface.cpp:1868 +#: ../src/interface.cpp:1774 msgid "Release C_lip" msgstr "A_fsnijden opheffen" #. Group -#: ../src/interface.cpp:1879 -#: ../src/verbs.cpp:2424 +#: ../src/interface.cpp:1785 +#: ../src/verbs.cpp:2483 msgid "_Group" msgstr "_Groeperen" -#: ../src/interface.cpp:1950 +#: ../src/interface.cpp:1856 msgid "Create link" msgstr "Koppeling maken" #. Ungroup -#: ../src/interface.cpp:1981 -#: ../src/verbs.cpp:2426 +#: ../src/interface.cpp:1887 +#: ../src/verbs.cpp:2485 msgid "_Ungroup" msgstr "Groep op_heffen" #. Link dialog -#: ../src/interface.cpp:2006 +#: ../src/interface.cpp:1912 msgid "Link _Properties..." msgstr "_Linkeigenschappen..." #. Select item -#: ../src/interface.cpp:2012 +#: ../src/interface.cpp:1918 msgid "_Follow Link" msgstr "Koppeling vo_lgen" #. Reset transformations -#: ../src/interface.cpp:2018 +#: ../src/interface.cpp:1924 msgid "_Remove Link" msgstr "Koppeling ve_rwijderen" -#: ../src/interface.cpp:2049 +#: ../src/interface.cpp:1955 msgid "Remove link" msgstr "Koppeling ve_rwijderen" #. Image properties -#: ../src/interface.cpp:2060 +#: ../src/interface.cpp:1966 msgid "Image _Properties..." msgstr "_Afbeeldingseigenschappen..." #. Edit externally -#: ../src/interface.cpp:2066 +#: ../src/interface.cpp:1972 msgid "Edit Externally..." msgstr "Extern bewerken..." #. Trace Bitmap #. TRANSLATORS: "to trace" means "to convert a bitmap to vector graphics" (to vectorize) -#: ../src/interface.cpp:2075 -#: ../src/verbs.cpp:2487 +#: ../src/interface.cpp:1981 +#: ../src/verbs.cpp:2546 msgid "_Trace Bitmap..." msgstr "_Bitmap overtrekken..." -#: ../src/interface.cpp:2085 +#: ../src/interface.cpp:1991 msgctxt "Context menu" msgid "Embed Image" msgstr "Afbeelding invoegen" -#: ../src/interface.cpp:2096 +#: ../src/interface.cpp:2002 msgctxt "Context menu" msgid "Extract Image..." msgstr "Afbeelding extraheren..." #. Item dialog #. Fill and Stroke dialog -#: ../src/interface.cpp:2235 -#: ../src/interface.cpp:2255 -#: ../src/verbs.cpp:2748 +#: ../src/interface.cpp:2141 +#: ../src/interface.cpp:2161 +#: ../src/verbs.cpp:2807 msgid "_Fill and Stroke..." msgstr "V_ulling en lijn..." #. Edit Text dialog -#: ../src/interface.cpp:2261 -#: ../src/verbs.cpp:2765 +#: ../src/interface.cpp:2167 +#: ../src/verbs.cpp:2824 msgid "_Text and Font..." msgstr "_Tekst en lettertype..." #. Spellcheck dialog -#: ../src/interface.cpp:2267 -#: ../src/verbs.cpp:2773 +#: ../src/interface.cpp:2173 +#: ../src/verbs.cpp:2832 msgid "Check Spellin_g..." msgstr "Spellin_g controleren..." @@ -9360,7 +9172,8 @@ msgstr "Paneelitem die dit grijppunt 'beheert'" #. Name #: ../src/libgdl/gdl-dock-item.c:298 -#: ../src/widgets/text-toolbar.cpp:1430 +#: ../src/widgets/ruler.cpp:191 +#: ../src/widgets/text-toolbar.cpp:1421 #: ../share/extensions/gcodetools_graffiti.inx.h:9 #: ../share/extensions/gcodetools_orientation_points.inx.h:2 msgid "Orientation" @@ -9461,12 +9274,12 @@ msgid "If is set to 1, all the dock items bound to the master are locked; if it' msgstr "Indien ingesteld op 1, zijn alle paneelitems vergrendeld die gebonden zijn aan de meester; indien 0, is alles ontgrendeld; -1 geeft aan dat items verschillend ingesteld zijn" #: ../src/libgdl/gdl-dock-master.c:157 -#: ../src/libgdl/gdl-switcher.c:732 +#: ../src/libgdl/gdl-switcher.c:737 msgid "Switcher Style" msgstr "Stijl wisselen" #: ../src/libgdl/gdl-dock-master.c:158 -#: ../src/libgdl/gdl-switcher.c:733 +#: ../src/libgdl/gdl-switcher.c:738 msgid "Switcher buttons style" msgstr "Stijl knoppen wisselen" @@ -9481,10 +9294,10 @@ msgid "The new dock controller %p is automatic. Only manual dock objects should msgstr "De nieuwe dock-controller %p is automatisch. Enkel manuele dockobjecten mogen controller genoemd worden." #: ../src/libgdl/gdl-dock-notebook.c:132 -#: ../src/ui/dialog/align-and-distribute.cpp:1047 -#: ../src/ui/dialog/document-properties.cpp:146 +#: ../src/ui/dialog/align-and-distribute.cpp:996 +#: ../src/ui/dialog/document-properties.cpp:145 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1551 -#: ../src/widgets/desktop-widget.cpp:1926 +#: ../src/widgets/desktop-widget.cpp:2000 #: ../share/extensions/voronoi2svg.inx.h:9 msgid "Page" msgstr "Pagina" @@ -9494,9 +9307,9 @@ msgid "The index of the current page" msgstr "De index van de huidige pagina" #: ../src/libgdl/gdl-dock-object.c:125 -#: ../src/ui/dialog/inkscape-preferences.cpp:1475 -#: ../src/ui/widget/page-sizer.cpp:260 -#: ../src/widgets/gradient-selector.cpp:156 +#: ../src/ui/dialog/inkscape-preferences.cpp:1486 +#: ../src/ui/widget/page-sizer.cpp:258 +#: ../src/widgets/gradient-selector.cpp:157 #: ../src/widgets/sp-xmlview-attr-list.cpp:54 msgid "Name" msgstr "Naam" @@ -9558,6 +9371,7 @@ msgid "Attempt to bind to %p an already bound dock object %p (current master: %p msgstr "Poging tot binden aan %p van een reeds gebonden paneelobject %p (huidige meester: %p)" #: ../src/libgdl/gdl-dock-paned.c:130 +#: ../src/widgets/ruler.cpp:229 msgid "Position" msgstr "Positie" @@ -9824,7 +9638,7 @@ msgid "Power stroke" msgstr "Power stroke" #: ../src/live_effects/effect.cpp:124 -#: ../src/selection-chemistry.cpp:2790 +#: ../src/selection-chemistry.cpp:2778 msgid "Clone original path" msgstr "Origineel pad klonen" @@ -10248,7 +10062,7 @@ msgid "Beveled" msgstr "Afgeschuind" #: ../src/live_effects/lpe-powerstroke.cpp:221 -#: ../src/widgets/star-toolbar.cpp:546 +#: ../src/widgets/star-toolbar.cpp:542 msgid "Rounded" msgstr "Afgerond" @@ -10261,7 +10075,7 @@ msgid "Miter" msgstr "" #: ../src/live_effects/lpe-powerstroke.cpp:224 -#: ../src/widgets/pencil-toolbar.cpp:137 +#: ../src/widgets/pencil-toolbar.cpp:132 msgid "Spiro" msgstr "Spiraal" @@ -10310,7 +10124,7 @@ msgstr "Bepaalt de vorm van het padbegin" #. TRANSLATORS: The line join style specifies the shape to be used at the #. corners of paths. It can be "miter", "round" or "bevel". #: ../src/live_effects/lpe-powerstroke.cpp:238 -#: ../src/widgets/stroke-style.cpp:220 +#: ../src/widgets/stroke-style.cpp:223 msgid "Join:" msgstr "Hoekpunten:" @@ -10323,7 +10137,7 @@ msgid "Miter limit:" msgstr "Hoeklimiet:" #: ../src/live_effects/lpe-powerstroke.cpp:239 -#: ../src/widgets/stroke-style.cpp:271 +#: ../src/widgets/stroke-style.cpp:274 msgid "Maximum length of the miter (in units of stroke width)" msgstr "Maximale lengte (in lijnbreedtes) van de punt" @@ -10496,12 +10310,14 @@ msgstr "Relatieve positie ten opzichte van referentiepunt bepaalt globale richti #: ../src/live_effects/lpe-ruler.cpp:25 #: ../share/extensions/restack.inx.h:12 #: ../share/extensions/text_extract.inx.h:8 +#: ../share/extensions/text_merge.inx.h:8 msgid "Left" msgstr "Links" #: ../src/live_effects/lpe-ruler.cpp:26 #: ../share/extensions/restack.inx.h:14 #: ../share/extensions/text_extract.inx.h:10 +#: ../share/extensions/text_merge.inx.h:10 msgid "Right" msgstr "Rechts" @@ -10511,12 +10327,12 @@ msgid "Both" msgstr "Beide" #: ../src/live_effects/lpe-ruler.cpp:33 -#: ../src/widgets/arc-toolbar.cpp:341 +#: ../src/widgets/arc-toolbar.cpp:337 msgid "Start" msgstr "Begin" #: ../src/live_effects/lpe-ruler.cpp:34 -#: ../src/widgets/arc-toolbar.cpp:354 +#: ../src/widgets/arc-toolbar.cpp:350 msgid "End" msgstr "Einde" @@ -10536,6 +10352,11 @@ msgstr "Afstand tussen opeenvolgende markeringen" msgid "Unit:" msgstr "Eenheid:" +#: ../src/live_effects/lpe-ruler.cpp:42 +#: ../src/widgets/ruler.cpp:201 +msgid "Unit" +msgstr "Eenheid" + #: ../src/live_effects/lpe-ruler.cpp:43 msgid "Ma_jor length:" msgstr "Len_gte hoofdmarkering:" @@ -10675,7 +10496,7 @@ msgid "How many construction lines (tangents) to draw" msgstr "Hoeveel constructielijnen (raaklijnen) er getekend moeten worden" #: ../src/live_effects/lpe-sketch.cpp:58 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2667 #: ../share/extensions/render_alphabetsoup.inx.h:3 msgid "Scale:" msgstr "Schaal:" @@ -10784,12 +10605,12 @@ msgstr "Booleaanse parameter veranderen" msgid "Change enumeration parameter" msgstr "Opsommingsparameter veranderen" -#: ../src/live_effects/parameter/originalpath.cpp:62 +#: ../src/live_effects/parameter/originalpath.cpp:70 #: ../src/live_effects/parameter/path.cpp:194 msgid "Link to path" msgstr "Aan pad linken" -#: ../src/live_effects/parameter/originalpath.cpp:74 +#: ../src/live_effects/parameter/originalpath.cpp:82 msgid "Select original" msgstr "Origineel selecteren" @@ -10834,7 +10655,7 @@ msgstr "Willekeurige parameter veranderen" msgid "Change text parameter" msgstr "Tekstparameter veranderen" -#: ../src/live_effects/parameter/unit.cpp:78 +#: ../src/live_effects/parameter/unit.cpp:80 msgid "Change unit parameter" msgstr "Eenheidsparameter veranderen" @@ -10842,7 +10663,7 @@ msgstr "Eenheidsparameter veranderen" msgid "Change vector parameter" msgstr "Vectorparameter veranderen" -#: ../src/main-cmdlineact.cpp:49 +#: ../src/main-cmdlineact.cpp:50 #, c-format msgid "Unable to find verb ID '%s' specified on the command line.\n" msgstr "Niet in staat verb ID '%s' te vinden zoals opgegeven op de commandoregel.\n" @@ -10852,222 +10673,251 @@ msgstr "Niet in staat verb ID '%s' te vinden zoals opgegeven op de commandoregel msgid "Unable to find node ID: '%s'\n" msgstr "Kan node-ID '%s' niet vinden.\n" -#: ../src/main.cpp:274 +#: ../src/main.cpp:298 msgid "Print the Inkscape version number" msgstr "Het versienummer van Inkscape tonen" -#: ../src/main.cpp:279 +#: ../src/main.cpp:303 msgid "Do not use X server (only process files from console)" msgstr "X-server niet gebruiken (alleen bestanden van de terminal verwerken)" -#: ../src/main.cpp:284 +#: ../src/main.cpp:308 msgid "Try to use X server (even if $DISPLAY is not set)" msgstr "X-server proberen te gebruiken (zelfs als $DISPLAY geen waarde heeft)" -#: ../src/main.cpp:289 +#: ../src/main.cpp:313 msgid "Open specified document(s) (option string may be excluded)" msgstr "Gegeven document(en) openen (optie-tekenreeks hoeft niet te worden opgegeven)" -#: ../src/main.cpp:290 -#: ../src/main.cpp:295 -#: ../src/main.cpp:300 -#: ../src/main.cpp:372 -#: ../src/main.cpp:377 -#: ../src/main.cpp:382 -#: ../src/main.cpp:387 -#: ../src/main.cpp:398 +#: ../src/main.cpp:314 +#: ../src/main.cpp:319 +#: ../src/main.cpp:324 +#: ../src/main.cpp:396 +#: ../src/main.cpp:401 +#: ../src/main.cpp:406 +#: ../src/main.cpp:417 +#: ../src/main.cpp:434 msgid "FILENAME" msgstr "BESTANDSNAAM" -#: ../src/main.cpp:294 +#: ../src/main.cpp:318 msgid "Print document(s) to specified output file (use '| program' for pipe)" msgstr "Document(en) afdrukken naar het opgegeven bestand (gebruik '| programma' voor een pijp)" -#: ../src/main.cpp:299 +#: ../src/main.cpp:323 msgid "Export document to a PNG file" msgstr "Document exporteren naar PNG-bestand" -#: ../src/main.cpp:304 +#: ../src/main.cpp:328 msgid "Resolution for exporting to bitmap and for rasterization of filters in PS/EPS/PDF (default 90)" msgstr "Resolutie voor het exporteren van de bitmap en voor rasterisatie van filters in PS/EPS/PDF (standaard 90)" -#: ../src/main.cpp:305 +#: ../src/main.cpp:329 #: ../src/ui/widget/rendering-options.cpp:34 msgid "DPI" msgstr "PPI" -#: ../src/main.cpp:309 +#: ../src/main.cpp:333 msgid "Exported area in SVG user units (default is the page; 0,0 is lower-left corner)" msgstr "Geëxporteerde oppervlakte in SVG-eenheden (standaard de volledige pagina; 0,0 is de hoek linksonder)" -#: ../src/main.cpp:310 +#: ../src/main.cpp:334 msgid "x0:y0:x1:y1" msgstr "x0:y0:x1:y1" -#: ../src/main.cpp:314 +#: ../src/main.cpp:338 msgid "Exported area is the entire drawing (not page)" msgstr "Het geëxporteerde gebied is de volledige tekening (niet de pagina)" -#: ../src/main.cpp:319 +#: ../src/main.cpp:343 msgid "Exported area is the entire page" msgstr "Het geëxporteerde gebied is de volledige pagina" -#: ../src/main.cpp:324 +#: ../src/main.cpp:348 msgid "Only for PS/EPS/PDF, sets margin in mm around exported area (default 0)" msgstr "" -#: ../src/main.cpp:325 -#: ../src/main.cpp:367 +#: ../src/main.cpp:349 +#: ../src/main.cpp:391 msgid "VALUE" msgstr "WAARDE" -#: ../src/main.cpp:329 +#: ../src/main.cpp:353 msgid "Snap the bitmap export area outwards to the nearest integer values (in SVG user units)" msgstr "De grootte van het te exporteren bitmapgebied naar boven afronden op een geheel getal (in SVG-eenheden)" -#: ../src/main.cpp:334 +#: ../src/main.cpp:358 msgid "The width of exported bitmap in pixels (overrides export-dpi)" msgstr "De breedte van de gegenereerde bitmap in pixels (dit negeert de PPI)" -#: ../src/main.cpp:335 +#: ../src/main.cpp:359 msgid "WIDTH" msgstr "BREEDTE" -#: ../src/main.cpp:339 +#: ../src/main.cpp:363 msgid "The height of exported bitmap in pixels (overrides export-dpi)" msgstr "De hoogte van de gegenereerde bitmap in pixels (dit negeert de PPI)" -#: ../src/main.cpp:340 +#: ../src/main.cpp:364 msgid "HEIGHT" msgstr "HOOGTE" -#: ../src/main.cpp:344 +#: ../src/main.cpp:368 msgid "The ID of the object to export" msgstr "Het ID van het te exporteren object" -#: ../src/main.cpp:345 -#: ../src/main.cpp:443 -#: ../src/ui/dialog/inkscape-preferences.cpp:1478 +#: ../src/main.cpp:369 +#: ../src/main.cpp:479 +#: ../src/ui/dialog/inkscape-preferences.cpp:1489 msgid "ID" msgstr "ID" #. TRANSLATORS: this means: "Only export the object whose id is given in --export-id". #. See "man inkscape" for details. -#: ../src/main.cpp:351 +#: ../src/main.cpp:375 msgid "Export just the object with export-id, hide all others (only with export-id)" msgstr "Alleen het object met het gegeven ID exporteren; alle andere objecten verbergen (alleen samen met '--export-id')" -#: ../src/main.cpp:356 +#: ../src/main.cpp:380 msgid "Use stored filename and DPI hints when exporting (only with export-id)" msgstr "De opgeslagen bestandsnaam en PPI-hints gebruiken bij het exporteren (alleen samen met '--export-id')" -#: ../src/main.cpp:361 +#: ../src/main.cpp:385 msgid "Background color of exported bitmap (any SVG-supported color string)" msgstr "Achtergrondkleur van de geëxporteerde bitmap (kan iedere door SVG ondersteunde kleur zijn)" -#: ../src/main.cpp:362 +#: ../src/main.cpp:386 msgid "COLOR" msgstr "KLEUR" -#: ../src/main.cpp:366 +#: ../src/main.cpp:390 msgid "Background opacity of exported bitmap (either 0.0 to 1.0, or 1 to 255)" msgstr "Achtergrondondoorzichtigheid van de geëxporteerde bitmap (ofwel tussen 0.0 en 1.0, of tussen 1 en 255)" -#: ../src/main.cpp:371 +#: ../src/main.cpp:395 msgid "Export document to plain SVG file (no sodipodi or inkscape namespaces)" msgstr "Document exporteren naar gewoon SVG-bestand (geen sodipodi- of inkscapenaamruimte)" -#: ../src/main.cpp:376 +#: ../src/main.cpp:400 msgid "Export document to a PS file" msgstr "Document exporteren naar een PS-bestand" -#: ../src/main.cpp:381 +#: ../src/main.cpp:405 msgid "Export document to an EPS file" msgstr "Document exporteren naar een EPS-bestand" -#: ../src/main.cpp:386 +#: ../src/main.cpp:410 +msgid "Choose the PostScript Level used to export. Possible choices are 2 (the default) and 3" +msgstr "Kies het PostScript niveau voor export. Kies tussen 2 (standaard) en 3" + +#: ../src/main.cpp:412 +msgid "PS Level" +msgstr "PS-niveau" + +#: ../src/main.cpp:416 msgid "Export document to a PDF file" msgstr "Document exporteren naar een PDF-bestand" -#: ../src/main.cpp:391 +#. TRANSLATORS: "--export-pdf-version" is an Inkscape command line option; see "inkscape --help" +#: ../src/main.cpp:422 +msgid "Export PDF to given version. (hint: make sure to input the exact string found in the PDF export dialog, e.g. \"PDF 1.4\" which is PDF-a conformant)" +msgstr "PDF naar versie exporteren. (tip: geef de exacte tekst zoals weergegeven in het venster PDF exporteren, bv. \"PDF 1.4\" die PDF-a conform is)" + +#: ../src/main.cpp:423 +msgid "PDF_VERSION" +msgstr "PDF_VERSION" + +#: ../src/main.cpp:427 msgid "Export PDF/PS/EPS without text. Besides the PDF/PS/EPS, a LaTeX file is exported, putting the text on top of the PDF/PS/EPS file. Include the result in LaTeX like: \\input{latexfile.tex}" msgstr "PDF/PS/EPS zonder tekst exporteren. Behalve de PDF/PS/EPS wordt een LaTeX-bestand geëxporteerd dat de tekst op het PDF/PS/EPS-bestand plaatst. Voeg het resultaat in LaTeX in met: \\input{latexfile.tex}" -#: ../src/main.cpp:397 +#: ../src/main.cpp:433 msgid "Export document to an Enhanced Metafile (EMF) File" msgstr "Document exporteren naar een EMF-bestand (Enhanced Metafile)" -#: ../src/main.cpp:403 +#: ../src/main.cpp:439 msgid "Convert text object to paths on export (PS, EPS, PDF, SVG)" msgstr "Tekst omzetten naar paden bij het exporteren (PS, EPS, PDF, SVG)" -#: ../src/main.cpp:408 +#: ../src/main.cpp:444 msgid "Render filtered objects without filters, instead of rasterizing (PS, EPS, PDF)" msgstr "Gefilterde objecten renderen zonder filters in plaats van rasteriseren (PS, EPS, PDF)" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:414 +#: ../src/main.cpp:450 msgid "Query the X coordinate of the drawing or, if specified, of the object with --query-id" msgstr "De X-coördinaat van de tekening opvragen, of - indien opgegeven met --query-id - van het object" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:420 +#: ../src/main.cpp:456 msgid "Query the Y coordinate of the drawing or, if specified, of the object with --query-id" msgstr "De Y-coördinaat van de tekening opvragen, of - indien opgegeven met --query-id - van het object" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:426 +#: ../src/main.cpp:462 msgid "Query the width of the drawing or, if specified, of the object with --query-id" msgstr "De breedte van de tekening opvragen, of - indien opgegeven met --query-id - van het object" #. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:432 +#: ../src/main.cpp:468 msgid "Query the height of the drawing or, if specified, of the object with --query-id" msgstr "De hoogte van de tekening opvragen, of - indien opgegeven met --query-id - van het object" -#: ../src/main.cpp:437 +#: ../src/main.cpp:473 msgid "List id,x,y,w,h for all objects" msgstr "Lijst id,x,y,b,h van alle objecten" -#: ../src/main.cpp:442 +#: ../src/main.cpp:478 msgid "The ID of the object whose dimensions are queried" msgstr "Het ID van het object waarvan de informatie wordt opgevraagd" #. TRANSLATORS: this option makes Inkscape print the name (path) of the extension directory -#: ../src/main.cpp:448 +#: ../src/main.cpp:484 msgid "Print out the extension directory and exit" msgstr "De naam van de uitbreidingenmap tonen en stoppen" -#: ../src/main.cpp:453 +#: ../src/main.cpp:489 msgid "Remove unused definitions from the defs section(s) of the document" msgstr "Ongebruikte definities uit de 'defs'-onderdelen van het bestand verwijderen" -#: ../src/main.cpp:458 +#: ../src/main.cpp:495 +msgid "Enter a listening loop for D-Bus messages in console mode" +msgstr "Geef een loop op voor D-Bus boodschappen in consolemodus" + +#: ../src/main.cpp:500 +msgid "Specify the D-Bus bus name to listen for messages on (default is org.inkscape)" +msgstr "Geef de D-Bus naam op om naar te luisteren (standaard org.inkscape)" + +#: ../src/main.cpp:501 +msgid "BUS-NAME" +msgstr "BUS-NAME" + +#: ../src/main.cpp:506 msgid "List the IDs of all the verbs in Inkscape" msgstr "Lijst met ID's van alle verbs in Inkscape" -#: ../src/main.cpp:463 +#: ../src/main.cpp:511 msgid "Verb to call when Inkscape opens." msgstr "Verb om aan te roepen als Inkscape start." -#: ../src/main.cpp:464 +#: ../src/main.cpp:512 msgid "VERB-ID" msgstr "VERB-ID" -#: ../src/main.cpp:468 +#: ../src/main.cpp:516 msgid "Object ID to select when Inkscape opens." msgstr "Te selecteren object-ID wanneer Inkscape opent." -#: ../src/main.cpp:469 +#: ../src/main.cpp:517 msgid "OBJECT-ID" msgstr "OBJECT-ID" -#: ../src/main.cpp:473 +#: ../src/main.cpp:521 msgid "Start Inkscape in interactive shell mode." msgstr "Inkscape in interactieve commandomodus starten." -#: ../src/main.cpp:817 -#: ../src/main.cpp:1174 +#: ../src/main.cpp:868 +#: ../src/main.cpp:1256 msgid "" "[OPTIONS...] [FILE...]\n" "\n" @@ -11079,7 +10929,7 @@ msgstr "" #. ## Add a menu for clear() #: ../src/menus-skeleton.h:16 -#: ../src/ui/dialog/debug.cpp:79 +#: ../src/ui/dialog/debug.cpp:83 msgid "_File" msgstr "_Bestand" @@ -11090,13 +10940,13 @@ msgstr "_Nieuw" #. " \n" #. " \n" #: ../src/menus-skeleton.h:43 -#: ../src/verbs.cpp:2570 -#: ../src/verbs.cpp:2576 +#: ../src/verbs.cpp:2629 +#: ../src/verbs.cpp:2635 msgid "_Edit" msgstr "Be_werken" #: ../src/menus-skeleton.h:53 -#: ../src/verbs.cpp:2336 +#: ../src/verbs.cpp:2395 msgid "Paste Si_ze" msgstr "_Grootte plakken" @@ -11134,50 +10984,45 @@ msgstr "_Kleurweergavemodus" msgid "Sh_ow/Hide" msgstr "_Weergeven/verbergen" -#. " \n" #. Not quite ready to be in the menus. #. " \n" -#: ../src/menus-skeleton.h:158 +#: ../src/menus-skeleton.h:157 msgid "_Layer" msgstr "_Laag" -#: ../src/menus-skeleton.h:182 +#: ../src/menus-skeleton.h:181 msgid "_Object" msgstr "_Object" -#: ../src/menus-skeleton.h:190 +#: ../src/menus-skeleton.h:189 msgid "Cli_p" msgstr "Masker_pad" -#: ../src/menus-skeleton.h:194 +#: ../src/menus-skeleton.h:193 msgid "Mas_k" msgstr "Mas_ker" -#: ../src/menus-skeleton.h:198 +#: ../src/menus-skeleton.h:197 msgid "Patter_n" msgstr "Patroo_n" -#: ../src/menus-skeleton.h:202 -msgid "Symbo_l" -msgstr "_Symbool" - -#: ../src/menus-skeleton.h:226 +#: ../src/menus-skeleton.h:221 msgid "_Path" msgstr "_Paden" -#: ../src/menus-skeleton.h:271 +#: ../src/menus-skeleton.h:266 msgid "Filter_s" msgstr "_Filters" -#: ../src/menus-skeleton.h:277 +#: ../src/menus-skeleton.h:272 msgid "Exte_nsions" msgstr "_Uitbreidingen" -#: ../src/menus-skeleton.h:283 +#: ../src/menus-skeleton.h:278 msgid "_Help" msgstr "_Help" -#: ../src/menus-skeleton.h:287 +#: ../src/menus-skeleton.h:282 msgid "Tutorials" msgstr "_Handleidingen" @@ -11344,92 +11189,92 @@ msgstr "Opdelen" msgid "No path(s) to break apart in the selection." msgstr "Geen paden geselecteerd om in stukken te breken." -#: ../src/path-chemistry.cpp:303 +#: ../src/path-chemistry.cpp:301 msgid "Select object(s) to convert to path." msgstr "Selecteer object(en) om te converteren naar een pad." -#: ../src/path-chemistry.cpp:309 +#: ../src/path-chemistry.cpp:307 msgid "Converting objects to paths..." msgstr "Converteren van objecten naar paden..." -#: ../src/path-chemistry.cpp:331 +#: ../src/path-chemistry.cpp:329 msgid "Object to path" msgstr "Object naar pad" -#: ../src/path-chemistry.cpp:333 +#: ../src/path-chemistry.cpp:331 msgid "No objects to convert to path in the selection." msgstr "Geen objecten geselecteerd om te converteren naar een pad." -#: ../src/path-chemistry.cpp:610 +#: ../src/path-chemistry.cpp:608 msgid "Select path(s) to reverse." msgstr "Selecteer pad(en) om om te keren." -#: ../src/path-chemistry.cpp:619 +#: ../src/path-chemistry.cpp:617 msgid "Reversing paths..." msgstr "Omkeren van paden..." -#: ../src/path-chemistry.cpp:654 +#: ../src/path-chemistry.cpp:652 msgid "Reverse path" msgstr "Pad omkeren" -#: ../src/path-chemistry.cpp:656 +#: ../src/path-chemistry.cpp:654 msgid "No paths to reverse in the selection." msgstr "Geen pad(en) geselecteerd om om te keren." -#: ../src/pen-context.cpp:222 +#: ../src/pen-context.cpp:220 #: ../src/pencil-context.cpp:534 msgid "Drawing cancelled" msgstr "Tekenen is geannuleerd" -#: ../src/pen-context.cpp:460 +#: ../src/pen-context.cpp:458 #: ../src/pencil-context.cpp:259 msgid "Continuing selected path" msgstr "Huidig pad wordt voortgezet" -#: ../src/pen-context.cpp:470 +#: ../src/pen-context.cpp:468 #: ../src/pencil-context.cpp:267 msgid "Creating new path" msgstr "Maken van nieuw pad" -#: ../src/pen-context.cpp:472 +#: ../src/pen-context.cpp:470 #: ../src/pencil-context.cpp:270 msgid "Appending to selected path" msgstr "Toevoegen aan het geselecteerde pad" -#: ../src/pen-context.cpp:632 +#: ../src/pen-context.cpp:630 msgid "Click or click and drag to close and finish the path." msgstr "Klik of klik en sleep om een pad te sluiten." -#: ../src/pen-context.cpp:642 +#: ../src/pen-context.cpp:640 msgid "Click or click and drag to continue the path from this point." msgstr "Klik of klik en sleep om vanaf daar het pad voort te zetten." -#: ../src/pen-context.cpp:1237 +#: ../src/pen-context.cpp:1240 #, c-format msgid "Curve segment: angle %3.2f°, distance %s; with Ctrl to snap angle, Enter to finish the path" msgstr "Segment curve: hoek %3.2f°, afstand %s; gebruik Ctrl om in stappen te draaien, Enter om het pad af te maken" -#: ../src/pen-context.cpp:1238 +#: ../src/pen-context.cpp:1241 #, c-format msgid "Line segment: angle %3.2f°, distance %s; with Ctrl to snap angle, Enter to finish the path" msgstr "Segment lijn: hoek %3.2f°, afstand %s; gebruik Ctrl om in stappen te draaien, Enter om het pad af te maken" -#: ../src/pen-context.cpp:1255 +#: ../src/pen-context.cpp:1258 #, c-format msgid "Curve handle: angle %3.2f°, length %s; with Ctrl to snap angle" msgstr "Handvat curve: hoek %3.2f°, lengte %s; gebruik Ctrl om in stappen te draaien" -#: ../src/pen-context.cpp:1277 +#: ../src/pen-context.cpp:1280 #, c-format msgid "Curve handle, symmetric: angle %3.2f°, length %s; with Ctrl to snap angle, with Shift to move this handle only" msgstr "Symmetrisch handvat curve: hoek %3.2f°, lengte %s; gebruik Ctrl om in stappen te draaien, Shift om enkel dit handvat te verplaatsen" -#: ../src/pen-context.cpp:1278 +#: ../src/pen-context.cpp:1281 #, c-format msgid "Curve handle: angle %3.2f°, length %s; with Ctrl to snap angle, with Shift to move this handle only" msgstr "Handvat curve: hoek %3.2f°, lengte %s; gebruik Ctrl om in stappen te draaien, Shift om enkel dit handvat te verplaatsen" -#: ../src/pen-context.cpp:1324 +#: ../src/pen-context.cpp:1327 msgid "Drawing finished" msgstr "Tekenen is voltooid" @@ -11490,14 +11335,14 @@ msgstr "Vlekkenmakend" msgid "Tracing" msgstr "Overtrekkend" -#: ../src/preferences.cpp:132 +#: ../src/preferences.cpp:134 msgid "Inkscape will run with default settings, and new settings will not be saved. " msgstr "Inscape wordt gestart met de standaardinstellingen. Nieuwe instellingen worden niet bewaard." #. the creation failed #. _reportError(Glib::ustring::compose(_("Cannot create profile directory %1."), #. Glib::filename_to_utf8(_prefs_dir)), not_saved); -#: ../src/preferences.cpp:147 +#: ../src/preferences.cpp:149 #, c-format msgid "Cannot create profile directory %s." msgstr "Kan profielmap %s niet aanmaken." @@ -11505,7 +11350,7 @@ msgstr "Kan profielmap %s niet aanmaken." #. The profile dir is not actually a directory #. _reportError(Glib::ustring::compose(_("%1 is not a valid directory."), #. Glib::filename_to_utf8(_prefs_dir)), not_saved); -#: ../src/preferences.cpp:165 +#: ../src/preferences.cpp:167 #, c-format msgid "%s is not a valid directory." msgstr "%s is geen geldige maps." @@ -11513,27 +11358,27 @@ msgstr "%s is geen geldige maps." #. The write failed. #. _reportError(Glib::ustring::compose(_("Failed to create the preferences file %1."), #. Glib::filename_to_utf8(_prefs_filename)), not_saved); -#: ../src/preferences.cpp:176 +#: ../src/preferences.cpp:178 #, c-format msgid "Failed to create the preferences file %s." msgstr "Aanmaken van het voorkeurenbestand %s is mislukt." -#: ../src/preferences.cpp:212 +#: ../src/preferences.cpp:214 #, c-format msgid "The preferences file %s is not a regular file." msgstr "Het voorkeurenbestand %s is geen regulier bestand." -#: ../src/preferences.cpp:222 +#: ../src/preferences.cpp:224 #, c-format msgid "The preferences file %s could not be read." msgstr "Het voorkeurenbestand %s kon niet worden gelezen." -#: ../src/preferences.cpp:233 +#: ../src/preferences.cpp:235 #, c-format msgid "The preferences file %s is not a valid XML document." msgstr "Het voorkeurenbestand %s is geen geldig XML-document." -#: ../src/preferences.cpp:242 +#: ../src/preferences.cpp:244 #, c-format msgid "The file %s is not a valid Inkscape preferences file." msgstr "Het bestand %s is geen geldig Inkscape voorkeurenbestand." @@ -11563,180 +11408,180 @@ msgid "CC Attribution-NonCommercial-NoDerivs" msgstr "CC Attribution-NonCommercial-NoDerivs" #: ../src/rdf.cpp:205 -msgid "Public Domain" -msgstr "Publiek domein" +msgid "CC0 Public Domain Dedication" +msgstr "CC0 Publiek domein" #: ../src/rdf.cpp:210 msgid "FreeArt" -msgstr "Free Art-licentie" +msgstr "FreeArt" #: ../src/rdf.cpp:215 msgid "Open Font License" msgstr "Open Font-licentie" #. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/linking.html#AElementXLinkTitleAttribute -#: ../src/rdf.cpp:232 +#: ../src/rdf.cpp:235 #: ../src/ui/dialog/object-attributes.cpp:57 msgid "Title:" msgstr "Titel:" -#: ../src/rdf.cpp:233 -msgid "Name by which this document is formally known" -msgstr "De naam waaronder dit document officieel bekend is" +#: ../src/rdf.cpp:236 +msgid "A name given to the resource" +msgstr "Titel voor het document" -#: ../src/rdf.cpp:235 +#: ../src/rdf.cpp:238 msgid "Date:" msgstr "Datum:" -#: ../src/rdf.cpp:236 -msgid "Date associated with the creation of this document (YYYY-MM-DD)" -msgstr "Datum waarop dit document is aangemaakt (JJJJ-MM-DD)" +#: ../src/rdf.cpp:239 +msgid "A point or period of time associated with an event in the lifecycle of the resource" +msgstr "Datum of periode gelinkt aan een evenement in de geschiedenis van het document" -#: ../src/rdf.cpp:238 +#: ../src/rdf.cpp:241 #: ../share/extensions/webslicer_create_rect.inx.h:3 msgid "Format:" msgstr "Formaat:" -#: ../src/rdf.cpp:239 -msgid "The physical or digital manifestation of this document (MIME type)" -msgstr "De fysieke of digitale verschijningsvorm van dit document (MIME-type)" - #: ../src/rdf.cpp:242 -msgid "Type of document (DCMI Type)" -msgstr "Documenttype (DCMI-type)" +msgid "The file format, physical medium, or dimensions of the resource" +msgstr "Het bestandsformaat, fysiek medium of dimensies van het document" #: ../src/rdf.cpp:245 +msgid "The nature or genre of the resource" +msgstr "Aard of genre van het document" + +#: ../src/rdf.cpp:248 msgid "Creator:" msgstr "Maker:" -#: ../src/rdf.cpp:246 -msgid "Name of entity primarily responsible for making the content of this document" -msgstr "Naam van de instantie die verantwoordelijk is voor het maken van dit document" +#: ../src/rdf.cpp:249 +msgid "An entity primarily responsible for making the resource" +msgstr "Instantie die primair verantwoordelijk is voor het maken van het document" -#: ../src/rdf.cpp:248 +#: ../src/rdf.cpp:251 msgid "Rights:" msgstr "Rechten:" -#: ../src/rdf.cpp:249 -msgid "Name of entity with rights to the Intellectual Property of this document" -msgstr "Naam van instantie van wie dit document het intellectueel eigendom is" +#: ../src/rdf.cpp:252 +msgid "Information about rights held in and over the resource" +msgstr "Informatie over de rechten gebruikt in en van het document" -#: ../src/rdf.cpp:251 +#: ../src/rdf.cpp:254 msgid "Publisher:" msgstr "Uitgever:" -#: ../src/rdf.cpp:252 -msgid "Name of entity responsible for making this document available" -msgstr "Naam van de instantie die verantwoordelijk is voor publicatie van dit document" - #: ../src/rdf.cpp:255 +msgid "An entity responsible for making the resource available" +msgstr "Naam van de instantie die het document ter beschikking stelt" + +#: ../src/rdf.cpp:258 msgid "Identifier:" msgstr "Identificatie:" -#: ../src/rdf.cpp:256 -msgid "Unique URI to reference this document" -msgstr "Een unieke URI om aan dit document te refereren" - #: ../src/rdf.cpp:259 -msgid "Unique URI to reference the source of this document" -msgstr "Een unieke URI om aan de bron van dit document te refereren" +msgid "An unambiguous reference to the resource within a given context" +msgstr "Een eenduidige referentie naar het document in een gegeven context" -#: ../src/rdf.cpp:261 +#: ../src/rdf.cpp:262 +msgid "A related resource from which the described resource is derived" +msgstr "Een gerelateerd document waarvan dit document is afgeleid" + +#: ../src/rdf.cpp:264 msgid "Relation:" msgstr "Gerelateerd aan:" -#: ../src/rdf.cpp:262 -msgid "Unique URI to a related document" -msgstr "Een unieke URI naar een gerelateerd document" +#: ../src/rdf.cpp:265 +msgid "A related resource" +msgstr "Een gerelateerd document" -#: ../src/rdf.cpp:264 -#: ../src/ui/dialog/inkscape-preferences.cpp:1830 +#: ../src/rdf.cpp:267 +#: ../src/ui/dialog/inkscape-preferences.cpp:1841 msgid "Language:" msgstr "Taal:" -#: ../src/rdf.cpp:265 -msgid "Two-letter language tag with optional subtags for the language of this document (e.g. 'en-GB')" -msgstr "Een tweeletterige aanduiding (met optionele subaanduiding) van de taal van dit document (bijvoorbeeld 'nl-NL')" +#: ../src/rdf.cpp:268 +msgid "A language of the resource" +msgstr "Taal van het document" -#: ../src/rdf.cpp:267 +#: ../src/rdf.cpp:270 msgid "Keywords:" msgstr "Sleutelwoorden:" -#: ../src/rdf.cpp:268 -msgid "The topic of this document as comma-separated key words, phrases, or classifications" -msgstr "Het onderwerp van dit document als losse woorden of zinnetjes, gescheiden door komma's" +#: ../src/rdf.cpp:271 +msgid "The topic of the resource" +msgstr "Kernwoorden van het document" #. TRANSLATORS: "Coverage": the spatial or temporal characteristics of the content. #. For info, see Appendix D of http://www.w3.org/TR/1998/WD-rdf-schema-19980409/ -#: ../src/rdf.cpp:272 +#: ../src/rdf.cpp:275 msgid "Coverage:" msgstr "Dekking:" -#: ../src/rdf.cpp:273 -msgid "Extent or scope of this document" -msgstr "Dekking of lading van dit document" - #: ../src/rdf.cpp:276 +msgid "The spatial or temporal topic of the resource, the spatial applicability of the resource, or the jurisdiction under which the resource is relevant" +msgstr "Ruimtelijke of tijdelijke dekking van het document, toepasbaarheid van het document of de jurisdictie waaronder het document valt" + +#: ../src/rdf.cpp:279 msgid "Description:" msgstr "Beschrijving:" -#: ../src/rdf.cpp:277 -msgid "A short account of the content of this document" -msgstr "Een korte samenvatting van de inhoud van dit document" +#: ../src/rdf.cpp:280 +msgid "An account of the resource" +msgstr "Een korte samenvatting van de inhoud" #. FIXME: need to handle 1 agent per line of input -#: ../src/rdf.cpp:281 +#: ../src/rdf.cpp:284 msgid "Contributors:" msgstr "Met dank aan:" -#: ../src/rdf.cpp:282 -msgid "Names of entities responsible for making contributions to the content of this document" -msgstr "Naam van degenen die bijdragen hebben geleverd aan de inhoud van dit document" +#: ../src/rdf.cpp:285 +msgid "An entity responsible for making contributions to the resource" +msgstr "Instantie verantwoordelijk voor bijdragen aan het document" #. TRANSLATORS: URL to a page that defines the license for the document -#: ../src/rdf.cpp:286 +#: ../src/rdf.cpp:289 msgid "URI:" msgstr "URI:" #. TRANSLATORS: this is where you put a URL to a page that defines the license -#: ../src/rdf.cpp:288 +#: ../src/rdf.cpp:291 msgid "URI to this document's license's namespace definition" msgstr "URI naar de naamsruimtedefinitie van de licentie van dit document" #. TRANSLATORS: fragment of XML representing the license of the document -#: ../src/rdf.cpp:292 +#: ../src/rdf.cpp:295 msgid "Fragment:" msgstr "Onderdeel:" -#: ../src/rdf.cpp:293 +#: ../src/rdf.cpp:296 msgid "XML fragment for the RDF 'License' section" msgstr "XML-fragment voor het RDF 'licentie'-deel" -#: ../src/rect-context.cpp:352 +#: ../src/rect-context.cpp:351 msgid "Ctrl: make square or integer-ratio rect, lock a rounded corner circular" msgstr "Ctrl: tekent een vierkant of simpele rechthoek, vergrendelt de hoekafronding op cirkelvormig" -#: ../src/rect-context.cpp:505 +#: ../src/rect-context.cpp:506 #, c-format msgid "Rectangle: %s × %s (constrained to ratio %d:%d); with Shift to draw around the starting point" msgstr "Rechthoek: %s × %s (verhouding %d:%d); gebruik Shift om rond het startpunt te tekenen" -#: ../src/rect-context.cpp:508 +#: ../src/rect-context.cpp:509 #, c-format msgid "Rectangle: %s × %s (constrained to golden ratio 1.618 : 1); with Shift to draw around the starting point" msgstr "Rechthoek: %s × %s (gulden snede 1,618:1); gebruik Shift om rond het startpunt te tekenen" -#: ../src/rect-context.cpp:510 +#: ../src/rect-context.cpp:511 #, c-format msgid "Rectangle: %s × %s (constrained to golden ratio 1 : 1.618); with Shift to draw around the starting point" msgstr "Rechthoek: %s × %s (gulden snede 1:1,618); gebruik Shift om rond het startpunt te tekenen" -#: ../src/rect-context.cpp:514 +#: ../src/rect-context.cpp:515 #, c-format msgid "Rectangle: %s × %s; with Ctrl to make square or integer-ratio rectangle; with Shift to draw around the starting point" msgstr "Rechthoek: %s × %s; gebruik Ctrl om een vierkant of een rechthoek te maken; gebruik Shift om rond het startpunt te tekenen" -#: ../src/rect-context.cpp:539 +#: ../src/rect-context.cpp:540 msgid "Create rectangle" msgstr "Rechthoek maken" @@ -11744,19 +11589,19 @@ msgstr "Rechthoek maken" msgid "Fixup broken links" msgstr "" -#: ../src/select-context.cpp:181 +#: ../src/select-context.cpp:183 msgid "Click selection to toggle scale/rotation handles" msgstr "Klik op de selectie om te wisselen tussen draaien en vergroten/verkleinen" -#: ../src/select-context.cpp:182 +#: ../src/select-context.cpp:184 msgid "No objects selected. Click, Shift+click, Alt+scroll mouse on top of objects, or drag around objects to select." msgstr "Geen objecten geselecteerd. Klik, Shift+klik of Alt+scroll met de muis over objecten of sleep rond objecten om te selecteren." -#: ../src/select-context.cpp:241 +#: ../src/select-context.cpp:243 msgid "Move canceled." msgstr "Het verplaatsen is geannuleerd." -#: ../src/select-context.cpp:249 +#: ../src/select-context.cpp:251 msgid "Selection canceled." msgstr "Het selecteren is geannuleerd." @@ -11784,551 +11629,572 @@ msgstr "Alt: klik voor onderselectie; scroll muiswiel om de selectie te w msgid "Selected object is not a group. Cannot enter." msgstr "Het geselecteerde object is geen groep. Kan er niet in gaan." -#: ../src/selection-chemistry.cpp:377 +#: ../src/selection-chemistry.cpp:392 msgid "Delete text" msgstr "Tekst verwijderen" -#: ../src/selection-chemistry.cpp:385 +#: ../src/selection-chemistry.cpp:400 msgid "Nothing was deleted." msgstr "Er is niets verwijderd." -#: ../src/selection-chemistry.cpp:404 -#: ../src/text-context.cpp:1030 +#: ../src/selection-chemistry.cpp:419 +#: ../src/text-context.cpp:1031 #: ../src/ui/dialog/calligraphic-profile-rename.cpp:75 -#: ../src/ui/dialog/swatches.cpp:278 -#: ../src/widgets/erasor-toolbar.cpp:114 +#: ../src/ui/dialog/swatches.cpp:279 +#: ../src/widgets/eraser-toolbar.cpp:110 #: ../src/widgets/gradient-toolbar.cpp:1193 #: ../src/widgets/gradient-toolbar.cpp:1207 #: ../src/widgets/gradient-toolbar.cpp:1221 -#: ../src/widgets/node-toolbar.cpp:410 +#: ../src/widgets/node-toolbar.cpp:413 msgid "Delete" msgstr "Verwijderen" -#: ../src/selection-chemistry.cpp:432 +#: ../src/selection-chemistry.cpp:447 msgid "Select object(s) to duplicate." msgstr "Selecteer (een) object(en) om te dupliceren." -#: ../src/selection-chemistry.cpp:541 +#: ../src/selection-chemistry.cpp:556 msgid "Delete all" msgstr "Alles verwijderen" -#: ../src/selection-chemistry.cpp:737 +#: ../src/selection-chemistry.cpp:746 msgid "Select some objects to group." msgstr "Selecteer twee objecten of meer objecten om te groeperen." -#: ../src/selection-chemistry.cpp:752 -#: ../src/selection-describer.cpp:53 +#: ../src/selection-chemistry.cpp:761 +#: ../src/selection-describer.cpp:55 msgid "Group" msgstr "Groeperen" -#: ../src/selection-chemistry.cpp:766 +#: ../src/selection-chemistry.cpp:770 msgid "Select a group to ungroup." msgstr "Selecteer een groep om op te heffen" -#: ../src/selection-chemistry.cpp:807 +#: ../src/selection-chemistry.cpp:813 msgid "No groups to ungroup in the selection." msgstr "Geen groepen geselecteerd om op te heffen." -#: ../src/selection-chemistry.cpp:813 -#: ../src/sp-item-group.cpp:476 +#: ../src/selection-chemistry.cpp:819 +#: ../src/sp-item-group.cpp:479 msgid "Ungroup" msgstr "Groep opheffen" -#: ../src/selection-chemistry.cpp:899 +#: ../src/selection-chemistry.cpp:900 msgid "Select object(s) to raise." msgstr "Selecteer object(en) om naar boven te brengen." -#: ../src/selection-chemistry.cpp:905 -#: ../src/selection-chemistry.cpp:965 -#: ../src/selection-chemistry.cpp:998 -#: ../src/selection-chemistry.cpp:1062 +#: ../src/selection-chemistry.cpp:906 +#: ../src/selection-chemistry.cpp:962 +#: ../src/selection-chemistry.cpp:990 +#: ../src/selection-chemistry.cpp:1050 msgid "You cannot raise/lower objects from different groups or layers." msgstr "U kunt geen object uit verschillende groepen of lagen naar boven brengen of naar onder sturen." #. TRANSLATORS: "Raise" means "to raise an object" in the undo history -#: ../src/selection-chemistry.cpp:945 +#: ../src/selection-chemistry.cpp:946 msgctxt "Undo action" msgid "Raise" msgstr "Verhogen" -#: ../src/selection-chemistry.cpp:957 +#: ../src/selection-chemistry.cpp:954 msgid "Select object(s) to raise to top." msgstr "Selecteer objecten die u helemaal naar boven wilt brengen." -#: ../src/selection-chemistry.cpp:980 +#: ../src/selection-chemistry.cpp:977 msgid "Raise to top" msgstr "Bovenaan" -#: ../src/selection-chemistry.cpp:992 +#: ../src/selection-chemistry.cpp:984 msgid "Select object(s) to lower." msgstr "Selecteer objecten die u naar onderen wilt brengen." -#: ../src/selection-chemistry.cpp:1042 +#: ../src/selection-chemistry.cpp:1034 +#: ../src/widgets/ruler.cpp:209 msgid "Lower" msgstr "Omlaag" -#: ../src/selection-chemistry.cpp:1054 +#: ../src/selection-chemistry.cpp:1042 msgid "Select object(s) to lower to bottom." msgstr "Selecteer objecten die u naar helemaal naar onderen wilt sturen." -#: ../src/selection-chemistry.cpp:1089 +#: ../src/selection-chemistry.cpp:1077 msgid "Lower to bottom" msgstr "Onderaan" -#: ../src/selection-chemistry.cpp:1096 +#: ../src/selection-chemistry.cpp:1084 msgid "Nothing to undo." msgstr "Er is niets om ongedaan te maken." -#: ../src/selection-chemistry.cpp:1104 +#: ../src/selection-chemistry.cpp:1092 msgid "Nothing to redo." msgstr "Er is niets om opnieuw te doen." -#: ../src/selection-chemistry.cpp:1165 +#: ../src/selection-chemistry.cpp:1153 msgid "Paste" msgstr "Plakken" -#: ../src/selection-chemistry.cpp:1173 +#: ../src/selection-chemistry.cpp:1161 msgid "Paste style" msgstr "Stijl plakken" -#: ../src/selection-chemistry.cpp:1183 +#: ../src/selection-chemistry.cpp:1171 msgid "Paste live path effect" msgstr "Padeffect plakken" -#: ../src/selection-chemistry.cpp:1204 +#: ../src/selection-chemistry.cpp:1192 msgid "Select object(s) to remove live path effects from." msgstr "Selecteer object(en) om padeffect van te verwijderen." -#: ../src/selection-chemistry.cpp:1216 +#: ../src/selection-chemistry.cpp:1204 msgid "Remove live path effect" msgstr "Padeffect verwijderen" -#: ../src/selection-chemistry.cpp:1227 +#: ../src/selection-chemistry.cpp:1215 msgid "Select object(s) to remove filters from." msgstr "Selecteer object(en) om filters van te verwijderen." -#: ../src/selection-chemistry.cpp:1237 -#: ../src/ui/dialog/filter-effects-dialog.cpp:1448 +#: ../src/selection-chemistry.cpp:1225 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1461 msgid "Remove filter" msgstr "Verwijder filter" -#: ../src/selection-chemistry.cpp:1246 +#: ../src/selection-chemistry.cpp:1234 msgid "Paste size" msgstr "Grootte plakken" -#: ../src/selection-chemistry.cpp:1255 +#: ../src/selection-chemistry.cpp:1243 msgid "Paste size separately" msgstr "Grootte apart plakken" -#: ../src/selection-chemistry.cpp:1265 +#: ../src/selection-chemistry.cpp:1253 msgid "Select object(s) to move to the layer above." msgstr "Selecteer objecten om naar de bovenliggende laag te verplaatsen." -#: ../src/selection-chemistry.cpp:1291 +#: ../src/selection-chemistry.cpp:1279 msgid "Raise to next layer" msgstr "Verhoog naar de volgende laag" -#: ../src/selection-chemistry.cpp:1298 +#: ../src/selection-chemistry.cpp:1286 msgid "No more layers above." msgstr "Er zijn geen bovenliggende lagen." -#: ../src/selection-chemistry.cpp:1310 +#: ../src/selection-chemistry.cpp:1298 msgid "Select object(s) to move to the layer below." msgstr "Selecteer objecten om naar de onderliggende laag te verplaatsen." -#: ../src/selection-chemistry.cpp:1336 +#: ../src/selection-chemistry.cpp:1324 msgid "Lower to previous layer" msgstr "Verlaag naar de vorige laag" -#: ../src/selection-chemistry.cpp:1343 +#: ../src/selection-chemistry.cpp:1331 msgid "No more layers below." msgstr "Er zijn geen onderliggende lagen." -#: ../src/selection-chemistry.cpp:1355 +#: ../src/selection-chemistry.cpp:1343 msgid "Select object(s) to move." msgstr "Selecteer object(en) om te verplaatsen." -#: ../src/selection-chemistry.cpp:1372 -#: ../src/verbs.cpp:2513 +#: ../src/selection-chemistry.cpp:1360 +#: ../src/verbs.cpp:2572 msgid "Move selection to layer" msgstr "Selectie naar laag verplaatsen" -#: ../src/selection-chemistry.cpp:1596 +#: ../src/selection-chemistry.cpp:1584 msgid "Remove transform" msgstr "Transformatie verwijderen" -#: ../src/selection-chemistry.cpp:1699 +#: ../src/selection-chemistry.cpp:1687 msgid "Rotate 90° CCW" msgstr "90 graden draaien; TKI" -#: ../src/selection-chemistry.cpp:1699 +#: ../src/selection-chemistry.cpp:1687 msgid "Rotate 90° CW" msgstr "90 graden draaien; MKM" -#: ../src/selection-chemistry.cpp:1720 -#: ../src/seltrans.cpp:485 -#: ../src/ui/dialog/transformation.cpp:888 +#: ../src/selection-chemistry.cpp:1708 +#: ../src/seltrans.cpp:468 +#: ../src/ui/dialog/transformation.cpp:893 msgid "Rotate" msgstr "Roteren" -#: ../src/selection-chemistry.cpp:2099 +#: ../src/selection-chemistry.cpp:2087 msgid "Rotate by pixels" msgstr "Per pixel draaien" -#: ../src/selection-chemistry.cpp:2129 -#: ../src/seltrans.cpp:482 -#: ../src/ui/dialog/transformation.cpp:863 +#: ../src/selection-chemistry.cpp:2117 +#: ../src/seltrans.cpp:465 +#: ../src/ui/dialog/transformation.cpp:868 #: ../share/extensions/interp_att_g.inx.h:12 msgid "Scale" msgstr "Schalen" -#: ../src/selection-chemistry.cpp:2154 +#: ../src/selection-chemistry.cpp:2142 msgid "Scale by whole factor" msgstr "Met een hele factor schalen" -#: ../src/selection-chemistry.cpp:2169 +#: ../src/selection-chemistry.cpp:2157 msgid "Move vertically" msgstr "Verticaal verplaatsen" -#: ../src/selection-chemistry.cpp:2172 +#: ../src/selection-chemistry.cpp:2160 msgid "Move horizontally" msgstr "Horizontaal verplaatsen" -#: ../src/selection-chemistry.cpp:2175 -#: ../src/selection-chemistry.cpp:2201 -#: ../src/seltrans.cpp:479 -#: ../src/ui/dialog/transformation.cpp:802 +#: ../src/selection-chemistry.cpp:2163 +#: ../src/selection-chemistry.cpp:2189 +#: ../src/seltrans.cpp:462 +#: ../src/ui/dialog/transformation.cpp:807 msgid "Move" msgstr "Verplaatsen" -#: ../src/selection-chemistry.cpp:2195 +#: ../src/selection-chemistry.cpp:2183 msgid "Move vertically by pixels" msgstr "Verticaal verplaatsen per pixels" -#: ../src/selection-chemistry.cpp:2198 +#: ../src/selection-chemistry.cpp:2186 msgid "Move horizontally by pixels" msgstr "Horizontaal verplaatsen per pixels" -#: ../src/selection-chemistry.cpp:2330 +#: ../src/selection-chemistry.cpp:2318 msgid "The selection has no applied path effect." msgstr "De selectie bevat geen toegepast padeffect." -#: ../src/selection-chemistry.cpp:2533 +#: ../src/selection-chemistry.cpp:2521 msgctxt "Action" msgid "Clone" msgstr "Kloon" -#: ../src/selection-chemistry.cpp:2549 +#: ../src/selection-chemistry.cpp:2537 msgid "Select clones to relink." msgstr "Selecteer klonen om te herlinken." -#: ../src/selection-chemistry.cpp:2556 +#: ../src/selection-chemistry.cpp:2544 msgid "Copy an object to clipboard to relink clones to." msgstr "Een object naar het klembord kopiëren om klonen naar te herlinken" -#: ../src/selection-chemistry.cpp:2580 +#: ../src/selection-chemistry.cpp:2568 msgid "No clones to relink in the selection." msgstr "Geen klonen om te herlinken in de selectie" -#: ../src/selection-chemistry.cpp:2583 +#: ../src/selection-chemistry.cpp:2571 msgid "Relink clone" msgstr "Kloon herlinken" -#: ../src/selection-chemistry.cpp:2597 +#: ../src/selection-chemistry.cpp:2585 msgid "Select clones to unlink." msgstr "Selecteer klonen om te ontlinken." -#: ../src/selection-chemistry.cpp:2651 +#: ../src/selection-chemistry.cpp:2639 msgid "No clones to unlink in the selection." msgstr "Geen klonen geselecteerd om te ontkoppelen." -#: ../src/selection-chemistry.cpp:2655 +#: ../src/selection-chemistry.cpp:2643 msgid "Unlink clone" msgstr "Kloon ontkoppelen" -#: ../src/selection-chemistry.cpp:2668 +#: ../src/selection-chemistry.cpp:2656 msgid "Select a clone to go to its original. Select a linked offset to go to its source. Select a text on path to go to the path. Select a flowed text to go to its frame." msgstr "Selecteer een kloon om naar zijn origineel te gaan. Selecteer een gekoppelde offset om naar zijn bron te gaan. Selecteer tekst op een pad om naar het pad te gaan. Selecteer ingekaderde tekst om naar het vormende object te gaan." -#: ../src/selection-chemistry.cpp:2701 +#: ../src/selection-chemistry.cpp:2689 msgid "Cannot find the object to select (orphaned clone, offset, textpath, flowed text?)" msgstr "Het te selecteren object is onvindbaar (verweesde kloon, offset, tekstpad of ingekaderde tekst?)" -#: ../src/selection-chemistry.cpp:2707 +#: ../src/selection-chemistry.cpp:2695 msgid "The object you're trying to select is not visible (it is in <defs>)" msgstr "Het object dat u probeert te selecteren is niet zichtbaar (het staat in <defs>)" -#: ../src/selection-chemistry.cpp:2752 +#: ../src/selection-chemistry.cpp:2740 msgid "Select one path to clone." msgstr "Selecteer een pad om te klonen." -#: ../src/selection-chemistry.cpp:2756 +#: ../src/selection-chemistry.cpp:2744 msgid "Select one path to clone." msgstr "Selecteer een pad om te klonen." -#: ../src/selection-chemistry.cpp:2811 +#: ../src/selection-chemistry.cpp:2799 msgid "Select object(s) to convert to marker." msgstr "Selecteer eerst de objecten om te converteren naar een markering." -#: ../src/selection-chemistry.cpp:2879 +#: ../src/selection-chemistry.cpp:2867 msgid "Objects to marker" msgstr "Objecten naar markering" -#: ../src/selection-chemistry.cpp:2907 +#: ../src/selection-chemistry.cpp:2895 msgid "Select object(s) to convert to guides." msgstr "Selecteer eerst de objecten om te converteren naar hulplijnen." -#: ../src/selection-chemistry.cpp:2919 +#: ../src/selection-chemistry.cpp:2907 msgid "Objects to guides" msgstr "Objecten naar hulplijnen" -#: ../src/selection-chemistry.cpp:2938 +#: ../src/selection-chemistry.cpp:2926 msgid "Select groups to convert to symbols." msgstr "Selecteer groepen om naar symbolen te converteren." -#: ../src/selection-chemistry.cpp:2958 +#: ../src/selection-chemistry.cpp:2946 msgid "No groups converted to symbols." msgstr "Geen groepen naar symbolen geconverteerd." #. Group just disappears, nothing to select. -#: ../src/selection-chemistry.cpp:2965 +#: ../src/selection-chemistry.cpp:2953 msgid "Group to symbol" msgstr "Groep naar symbool" -#: ../src/selection-chemistry.cpp:3029 +#: ../src/selection-chemistry.cpp:3017 msgid "Select a symbol to extract objects from." msgstr "Selecteer een symbool om objecten uit te halen." -#: ../src/selection-chemistry.cpp:3038 +#: ../src/selection-chemistry.cpp:3026 msgid "Select only one symbol to convert to group." msgstr "Selecteer slechts één symbool om naar een groep te converteren." -#: ../src/selection-chemistry.cpp:3081 +#: ../src/selection-chemistry.cpp:3067 msgid "Group from symbol" msgstr "Groep van symbool" -#: ../src/selection-chemistry.cpp:3098 +#: ../src/selection-chemistry.cpp:3084 msgid "Select object(s) to convert to pattern." msgstr "Selecteer eerst de objecten om te converteren naar een patroon." -#: ../src/selection-chemistry.cpp:3186 +#: ../src/selection-chemistry.cpp:3172 msgid "Objects to pattern" msgstr "Objecten naar patroon" -#: ../src/selection-chemistry.cpp:3202 +#: ../src/selection-chemistry.cpp:3188 msgid "Select an object with pattern fill to extract objects from." msgstr "Selecteer objecten met patroonvulling om objecten uit te halen." -#: ../src/selection-chemistry.cpp:3255 +#: ../src/selection-chemistry.cpp:3241 msgid "No pattern fills in the selection." msgstr "Er zijn geen objecten met patroonvulling geselecteerd." -#: ../src/selection-chemistry.cpp:3258 +#: ../src/selection-chemistry.cpp:3244 msgid "Pattern to objects" msgstr "Patroon naar objecten" -#: ../src/selection-chemistry.cpp:3349 +#: ../src/selection-chemistry.cpp:3335 msgid "Select object(s) to make a bitmap copy." msgstr "Selecteer eerst de objecten om een bitmapkopie van te maken." -#: ../src/selection-chemistry.cpp:3353 +#: ../src/selection-chemistry.cpp:3339 msgid "Rendering bitmap..." msgstr "Renderen van bitmap..." -#: ../src/selection-chemistry.cpp:3530 +#: ../src/selection-chemistry.cpp:3516 msgid "Create bitmap" msgstr "Bitmap maken" -#: ../src/selection-chemistry.cpp:3562 +#: ../src/selection-chemistry.cpp:3548 msgid "Select object(s) to create clippath or mask from." msgstr "Selecteer de objecten om een afsnijpad/masker van te maken." -#: ../src/selection-chemistry.cpp:3565 +#: ../src/selection-chemistry.cpp:3551 msgid "Select mask object and object(s) to apply clippath or mask to." msgstr "Selecteer het maskerobject en de object(en) om het afsnijpad/masker op toe te passen." -#: ../src/selection-chemistry.cpp:3746 +#: ../src/selection-chemistry.cpp:3732 msgid "Set clipping path" msgstr "Afsnijpad inschakelen" -#: ../src/selection-chemistry.cpp:3748 +#: ../src/selection-chemistry.cpp:3734 msgid "Set mask" msgstr "Masker inschakelen" -#: ../src/selection-chemistry.cpp:3763 +#: ../src/selection-chemistry.cpp:3749 msgid "Select object(s) to remove clippath or mask from." msgstr "Selecteer object(en) om het afsnijpad/masker van uit te schakelen." -#: ../src/selection-chemistry.cpp:3874 +#: ../src/selection-chemistry.cpp:3860 msgid "Release clipping path" msgstr "Afsnijpad uitschakelen" -#: ../src/selection-chemistry.cpp:3876 +#: ../src/selection-chemistry.cpp:3862 msgid "Release mask" msgstr "Masker uitschakelen" -#: ../src/selection-chemistry.cpp:3895 +#: ../src/selection-chemistry.cpp:3881 msgid "Select object(s) to fit canvas to." msgstr "Selecteer object(en) voor aanpassing van het canvas" #. Fit Page -#: ../src/selection-chemistry.cpp:3915 -#: ../src/verbs.cpp:2839 +#: ../src/selection-chemistry.cpp:3901 +#: ../src/verbs.cpp:2896 msgid "Fit Page to Selection" msgstr "Pagina naar selectie schalen" -#: ../src/selection-chemistry.cpp:3944 -#: ../src/verbs.cpp:2841 +#: ../src/selection-chemistry.cpp:3930 +#: ../src/verbs.cpp:2898 msgid "Fit Page to Drawing" msgstr "Pagina naar tekening schalen" -#: ../src/selection-chemistry.cpp:3965 -#: ../src/verbs.cpp:2843 +#: ../src/selection-chemistry.cpp:3951 +#: ../src/verbs.cpp:2900 msgid "Fit Page to Selection or Drawing" msgstr "Pagina naar selectie of inhoud schalen" #. TRANSLATORS: "Link" means internet link (anchor) -#: ../src/selection-describer.cpp:45 +#: ../src/selection-describer.cpp:47 msgctxt "Web" msgid "Link" msgstr "Link" -#: ../src/selection-describer.cpp:47 +#: ../src/selection-describer.cpp:49 msgid "Circle" msgstr "Cirkel" #. Ellipse -#: ../src/selection-describer.cpp:49 -#: ../src/selection-describer.cpp:74 +#: ../src/selection-describer.cpp:51 +#: ../src/selection-describer.cpp:78 #: ../src/ui/dialog/inkscape-preferences.cpp:403 -#: ../src/widgets/pencil-toolbar.cpp:192 +#: ../src/widgets/pencil-toolbar.cpp:187 msgid "Ellipse" msgstr "Ellips" -#: ../src/selection-describer.cpp:51 +#: ../src/selection-describer.cpp:53 msgid "Flowed text" msgstr "Ingekaderde tekst" -#: ../src/selection-describer.cpp:57 +#: ../src/selection-describer.cpp:59 msgid "Line" msgstr "Lijn" -#: ../src/selection-describer.cpp:59 +#: ../src/selection-describer.cpp:61 msgid "Path" msgstr "Pad" -#: ../src/selection-describer.cpp:61 -#: ../src/widgets/star-toolbar.cpp:474 +#: ../src/selection-describer.cpp:63 +#: ../src/widgets/star-toolbar.cpp:470 msgid "Polygon" msgstr "Veelhoek" -#: ../src/selection-describer.cpp:63 +#: ../src/selection-describer.cpp:65 msgid "Polyline" msgstr "Veellijn" #. Rectangle -#: ../src/selection-describer.cpp:65 +#: ../src/selection-describer.cpp:67 #: ../src/ui/dialog/inkscape-preferences.cpp:393 msgid "Rectangle" msgstr "Rechthoek" #. 3D box -#: ../src/selection-describer.cpp:67 +#: ../src/selection-describer.cpp:69 #: ../src/ui/dialog/inkscape-preferences.cpp:398 msgid "3D Box" msgstr "3D-kubus" -#: ../src/selection-describer.cpp:69 +#: ../src/selection-describer.cpp:71 msgctxt "Object" msgid "Text" msgstr "Tekst" +#: ../src/selection-describer.cpp:74 +msgctxt "Object" +msgid "Symbol" +msgstr "Symbool" + #. TRANSLATORS: "Clone" is a noun, type of object -#: ../src/selection-describer.cpp:72 +#: ../src/selection-describer.cpp:76 msgctxt "Object" msgid "Clone" msgstr "Kloon" -#: ../src/selection-describer.cpp:76 +#: ../src/selection-describer.cpp:80 #: ../share/extensions/gcodetools_lathe.inx.h:9 msgid "Offset path" msgstr "Rand object" #. Spiral -#: ../src/selection-describer.cpp:78 +#: ../src/selection-describer.cpp:82 #: ../src/ui/dialog/inkscape-preferences.cpp:411 #: ../share/extensions/gcodetools_area.inx.h:11 msgid "Spiral" msgstr "Spiraal" #. Star -#: ../src/selection-describer.cpp:80 +#: ../src/selection-describer.cpp:84 #: ../src/ui/dialog/inkscape-preferences.cpp:407 -#: ../src/widgets/star-toolbar.cpp:481 +#: ../src/widgets/star-toolbar.cpp:477 msgid "Star" msgstr "Ster" -#: ../src/selection-describer.cpp:150 +#: ../src/selection-describer.cpp:153 msgid "root" msgstr "basis" -#: ../src/selection-describer.cpp:162 +#: ../src/selection-describer.cpp:155 +#: ../src/widgets/ege-paint-def.cpp:67 +#: ../src/widgets/ege-paint-def.cpp:91 +msgid "none" +msgstr "Niet" + +#: ../src/selection-describer.cpp:167 #, c-format msgid "layer %s" msgstr "laag %s" -#: ../src/selection-describer.cpp:164 +#: ../src/selection-describer.cpp:169 #, c-format msgid "layer %s" msgstr "laag %s" -#: ../src/selection-describer.cpp:173 +#: ../src/selection-describer.cpp:178 #, c-format msgid "%s" msgstr "%s" -#: ../src/selection-describer.cpp:182 +#: ../src/selection-describer.cpp:187 #, c-format msgid " in %s" msgstr " in %s" -#: ../src/selection-describer.cpp:184 +#: ../src/selection-describer.cpp:189 +#, c-format +msgid " hidden in definitions" +msgstr " verborgen in de definities" + +#: ../src/selection-describer.cpp:191 #, c-format msgid " in group %s (%s)" msgstr " in groep %s (%s)" -#: ../src/selection-describer.cpp:186 +#: ../src/selection-describer.cpp:193 #, c-format msgid " in %i parents (%s)" msgid_plural " in %i parents (%s)" msgstr[0] " in %i ouder (%s)" msgstr[1] " in %i ouders (%s)" -#: ../src/selection-describer.cpp:189 +#: ../src/selection-describer.cpp:196 #, c-format msgid " in %i layers" msgid_plural " in %i layers" msgstr[0] " in %i lagen" msgstr[1] " in %i lagen" -#: ../src/selection-describer.cpp:199 +#: ../src/selection-describer.cpp:206 msgid "Convert symbol to group to edit" msgstr "Symbool naar bewerkbare groep omzetten" -#: ../src/selection-describer.cpp:203 +#: ../src/selection-describer.cpp:210 +msgid "Remove from symbols tray to edit symbol" +msgstr "" + +#: ../src/selection-describer.cpp:214 msgid "Use Shift+D to look up original" msgstr "Gebruik Shift+D om het origineel te vinden" -#: ../src/selection-describer.cpp:207 +#: ../src/selection-describer.cpp:218 msgid "Use Shift+D to look up path" msgstr "Gebruik Shift+D om het pad te vinden" -#: ../src/selection-describer.cpp:211 +#: ../src/selection-describer.cpp:222 msgid "Use Shift+D to look up frame" msgstr "Gebruik Shift+D om het kaderobject te vinden" #. this is only used with 2 or more objects -#: ../src/selection-describer.cpp:226 +#: ../src/selection-describer.cpp:237 #: ../src/spray-context.cpp:203 #: ../src/tweak-context.cpp:189 #, c-format @@ -12338,7 +12204,7 @@ msgstr[0] "%i object geselecteerd" msgstr[1] "%i objecten geselecteerd" #. this is only used with 2 or more objects -#: ../src/selection-describer.cpp:231 +#: ../src/selection-describer.cpp:242 #, c-format msgid "%i object of type %s" msgid_plural "%i objects of type %s" @@ -12346,7 +12212,7 @@ msgstr[0] "%d object gevonden van type %s" msgstr[1] "%d objecten gevonden van type %s" #. this is only used with 2 or more objects -#: ../src/selection-describer.cpp:236 +#: ../src/selection-describer.cpp:247 #, c-format msgid "%i object of types %s, %s" msgid_plural "%i objects of types %s, %s" @@ -12354,7 +12220,7 @@ msgstr[0] "%d object gevonden van type %s, %s" msgstr[1] "%d objecten gevonden van type %s, %s" #. this is only used with 2 or more objects -#: ../src/selection-describer.cpp:241 +#: ../src/selection-describer.cpp:252 #, c-format msgid "%i object of types %s, %s, %s" msgid_plural "%i objects of types %s, %s, %s" @@ -12362,93 +12228,93 @@ msgstr[0] "%d object gevonden van type %s, %s, %s" msgstr[1] "%d objecten gevonden van type %s, %s, %s" #. this is only used with 2 or more objects -#: ../src/selection-describer.cpp:246 +#: ../src/selection-describer.cpp:257 #, c-format msgid "%i object of %i types" msgid_plural "%i objects of %i types" msgstr[0] "%d object gevonden van %i types" msgstr[1] "%d objecten gevonden van %i types" -#: ../src/selection-describer.cpp:256 +#: ../src/selection-describer.cpp:267 #, c-format msgid "; %d filtered object " msgid_plural "; %d filtered objects " msgstr[0] "; %d gefilterd object" msgstr[1] "; %d gefilterde objecten" -#: ../src/seltrans.cpp:488 -#: ../src/ui/dialog/transformation.cpp:946 +#: ../src/seltrans.cpp:471 +#: ../src/ui/dialog/transformation.cpp:981 msgid "Skew" msgstr "Scheeftrekken" -#: ../src/seltrans.cpp:500 +#: ../src/seltrans.cpp:483 msgid "Set center" msgstr "Centrum instellen" -#: ../src/seltrans.cpp:575 +#: ../src/seltrans.cpp:558 msgid "Stamp" msgstr "Stempel" -#: ../src/seltrans.cpp:604 -msgid "Squeeze or stretch selection; with Ctrl to scale uniformly; with Shift to scale around rotation center" -msgstr "Selectie samendrukken of uitrekken; Ctrl behoudt de verhoudingen; Shift vergroot/verkleint om het rotatiemiddelpunt" - -#: ../src/seltrans.cpp:605 -msgid "Scale selection; with Ctrl to scale uniformly; with Shift to scale around rotation center" -msgstr "Selectie vergroten of verkleinen; Ctrl behoudt de verhoudingen; Shift vergroot/verkleint om het rotatiemiddelpunt" - -#: ../src/seltrans.cpp:609 -msgid "Skew selection; with Ctrl to snap angle; with Shift to skew around the opposite side" -msgstr "Selectie scheeftrekken; Ctrl trekt in stappen, Shift trekt om de tegenoverliggende hoek" - -#: ../src/seltrans.cpp:610 -msgid "Rotate selection; with Ctrl to snap angle; with Shift to rotate around the opposite corner" -msgstr "Selectie draaien; Ctrl draait in stappen, Shift draait om de tegenoverliggende hoek" - -#: ../src/seltrans.cpp:623 -msgid "Center of rotation and skewing: drag to reposition; scaling with Shift also uses this center" -msgstr "Het centrum van draaien en scheeftrekken: sleep om te verplaatsen; vergroten/verkleinen met Shift gebruikt ook dit centrum." - -#: ../src/seltrans.cpp:773 +#: ../src/seltrans.cpp:711 msgid "Reset center" msgstr "Centrum herstellen" -#: ../src/seltrans.cpp:1017 -#: ../src/seltrans.cpp:1114 +#: ../src/seltrans.cpp:938 +#: ../src/seltrans.cpp:1035 #, c-format msgid "Scale: %0.2f%% x %0.2f%%; with Ctrl to lock ratio" msgstr "Vergroten/verkleinen: %0.2f%% x %0.2f%%; gebruik Ctrl om de verhouding te vergrendelen" #. TRANSLATORS: don't modify the first ";" #. (it will NOT be displayed as ";" - only the second one will be) -#: ../src/seltrans.cpp:1228 +#: ../src/seltrans.cpp:1167 #, c-format msgid "Skew: %0.2f°; with Ctrl to snap angle" msgstr "Scheeftrekken: %0.2f°; gebruik Ctrl om in stappen te trekken" #. TRANSLATORS: don't modify the first ";" #. (it will NOT be displayed as ";" - only the second one will be) -#: ../src/seltrans.cpp:1303 +#: ../src/seltrans.cpp:1242 #, c-format msgid "Rotate: %0.2f°; with Ctrl to snap angle" msgstr "Draaien: %0.2f°; gebruik Ctrl in stappen te draaien" -#: ../src/seltrans.cpp:1338 +#: ../src/seltrans.cpp:1279 #, c-format msgid "Move center to %s, %s" msgstr "Centrum verplaatsen naar %s, %s" -#: ../src/seltrans.cpp:1514 +#: ../src/seltrans.cpp:1433 #, c-format msgid "Move by %s, %s; with Ctrl to restrict to horizontal/vertical; with Shift to disable snapping" msgstr "Verplaatsen met %s, %s; gebruik Ctrl om het te beperken tot horizontaal en verticaal, gebruik Shift om magnetisch raster uit te zetten." -#: ../src/shortcuts.cpp:225 +#: ../src/seltrans-handles.cpp:9 +msgid "Squeeze or stretch selection; with Ctrl to scale uniformly; with Shift to scale around rotation center" +msgstr "Selectie samendrukken of uitrekken; Ctrl behoudt de verhoudingen; Shift vergroot/verkleint om het rotatiemiddelpunt" + +#: ../src/seltrans-handles.cpp:10 +msgid "Scale selection; with Ctrl to scale uniformly; with Shift to scale around rotation center" +msgstr "Selectie vergroten of verkleinen; Ctrl behoudt de verhoudingen; Shift vergroot/verkleint om het rotatiemiddelpunt" + +#: ../src/seltrans-handles.cpp:11 +msgid "Skew selection; with Ctrl to snap angle; with Shift to skew around the opposite side" +msgstr "Selectie scheeftrekken; Ctrl trekt in stappen, Shift trekt om de tegenoverliggende hoek" + +#: ../src/seltrans-handles.cpp:12 +msgid "Rotate selection; with Ctrl to snap angle; with Shift to rotate around the opposite corner" +msgstr "Selectie draaien; Ctrl draait in stappen, Shift draait om de tegenoverliggende hoek" + +#: ../src/seltrans-handles.cpp:13 +msgid "Center of rotation and skewing: drag to reposition; scaling with Shift also uses this center" +msgstr "Het centrum van draaien en scheeftrekken: sleep om te verplaatsen; vergroten/verkleinen met Shift gebruikt ook dit centrum." + +#: ../src/shortcuts.cpp:226 #, c-format msgid "Keyboard directory (%s) is unavailable." msgstr "Toetsenbordmap (%s) is niet beschikbaar." -#: ../src/shortcuts.cpp:369 +#: ../src/shortcuts.cpp:370 msgid "Select a file to import" msgstr "Selecteer een bestand om te importeren" @@ -12461,20 +12327,20 @@ msgstr "Koppeling naar %s" msgid "Link without URI" msgstr "Koppeling zonder URI" -#: ../src/sp-ellipse.cpp:452 -#: ../src/sp-ellipse.cpp:775 +#: ../src/sp-ellipse.cpp:457 +#: ../src/sp-ellipse.cpp:780 msgid "Ellipse" msgstr "Ellips" -#: ../src/sp-ellipse.cpp:566 +#: ../src/sp-ellipse.cpp:571 msgid "Circle" msgstr "Cirkel" -#: ../src/sp-ellipse.cpp:770 +#: ../src/sp-ellipse.cpp:775 msgid "Segment" msgstr "Segment" -#: ../src/sp-ellipse.cpp:772 +#: ../src/sp-ellipse.cpp:777 msgid "Arc" msgstr "Boog" @@ -12493,55 +12359,55 @@ msgstr "Gebied met tekstvormen" msgid "Flow excluded region" msgstr "Gebied zonder tekstvormen" -#: ../src/sp-guide.cpp:290 +#: ../src/sp-guide.cpp:289 msgid "Create Guides Around the Page" msgstr "Hulplijnen rond pagina maken" -#: ../src/sp-guide.cpp:302 -#: ../src/verbs.cpp:2410 +#: ../src/sp-guide.cpp:301 +#: ../src/verbs.cpp:2467 msgid "Delete All Guides" msgstr "Alle hulplijnen verwijderen" #. Guide has probably been deleted and no longer has an attached namedview. -#: ../src/sp-guide.cpp:462 +#: ../src/sp-guide.cpp:461 #, c-format msgid "Deleted" msgstr "Verwijderd" -#: ../src/sp-guide.cpp:471 +#: ../src/sp-guide.cpp:470 msgid "Shift+drag to rotate, Ctrl+drag to move origin, Del to delete" msgstr "Shift+sleep om te draaien, Ctrl+sleep om de oorsprong te verplaatsen, Del om te verwijderen" -#: ../src/sp-guide.cpp:475 +#: ../src/sp-guide.cpp:474 #, c-format msgid "vertical, at %s" msgstr "verticaal, op %s" -#: ../src/sp-guide.cpp:478 +#: ../src/sp-guide.cpp:477 #, c-format msgid "horizontal, at %s" msgstr "horizontaal, op %s" -#: ../src/sp-guide.cpp:483 +#: ../src/sp-guide.cpp:482 #, c-format msgid "at %d degrees, through (%s,%s)" msgstr "op %d graden, door (%s,%s)" -#: ../src/sp-image.cpp:1068 +#: ../src/sp-image.cpp:1069 msgid "embedded" msgstr "ingevoegd" -#: ../src/sp-image.cpp:1076 +#: ../src/sp-image.cpp:1077 #, c-format msgid "Image with bad reference: %s" msgstr "Afbeelding met ongeldige referentie: %s" -#: ../src/sp-image.cpp:1077 +#: ../src/sp-image.cpp:1078 #, c-format msgid "Image %d × %d: %s" msgstr "Afbeelding %d × %d: %s" -#: ../src/sp-item-group.cpp:718 +#: ../src/sp-item-group.cpp:721 #, c-format msgid "Group of %d object" msgid_plural "Group of %d objects" @@ -12549,7 +12415,7 @@ msgstr[0] "Groep van %d object" msgstr[1] "Groep van %d objecten" #: ../src/sp-item.cpp:977 -#: ../src/verbs.cpp:207 +#: ../src/verbs.cpp:213 msgid "Object" msgstr "Object" @@ -12651,16 +12517,16 @@ msgstr[0] "Veelhoek met %d hoek" msgstr[1] "Veelhoek met %d hoeken" #. TRANSLATORS: For description of font with no name. -#: ../src/sp-text.cpp:392 +#: ../src/sp-text.cpp:390 msgid "<no name found>" msgstr "<geen naam gevonden>" -#: ../src/sp-text.cpp:404 +#: ../src/sp-text.cpp:403 #, c-format msgid "Text on path%s (%s, %s)" msgstr "Tekst op een pad%s (%s, %s)" -#: ../src/sp-text.cpp:405 +#: ../src/sp-text.cpp:404 #, c-format msgid "Text%s (%s, %s)" msgstr "Tekst%s (%s, %s)" @@ -12682,31 +12548,31 @@ msgstr "Verweesde gekloonde tekst" msgid "Text span" msgstr "Tekstbreedte" -#: ../src/sp-use.cpp:303 -#, fuzzy, c-format +#: ../src/sp-use.cpp:299 +#, c-format msgid "'%s' Symbol" -msgstr "Kloon van symbool" +msgstr "" #. TRANSLATORS: Used for statusbar description for long chains: #. * "Clone of: Clone of: ... in Layer 1". -#: ../src/sp-use.cpp:311 +#: ../src/sp-use.cpp:307 msgid "..." msgstr "..." -#: ../src/sp-use.cpp:319 +#: ../src/sp-use.cpp:315 #, c-format msgid "Clone of: %s" msgstr "Kloon van %s" -#: ../src/sp-use.cpp:323 +#: ../src/sp-use.cpp:319 msgid "Orphaned clone" msgstr "Verweesde kloon" -#: ../src/spiral-context.cpp:304 +#: ../src/spiral-context.cpp:303 msgid "Ctrl: snap angle" msgstr "Ctrl: draait in stappen" -#: ../src/spiral-context.cpp:306 +#: ../src/spiral-context.cpp:305 msgid "Alt: lock spiral radius" msgstr "Alt: vergrendelt de spiraalstraal" @@ -12719,119 +12585,119 @@ msgstr "Spiraal: straal %s, hoek %5g°; gebruik Ctrl om in sta msgid "Create spiral" msgstr "Spiraal maken" -#: ../src/splivarot.cpp:68 -#: ../src/splivarot.cpp:74 +#: ../src/splivarot.cpp:69 +#: ../src/splivarot.cpp:75 msgid "Union" msgstr "Vereniging" -#: ../src/splivarot.cpp:80 +#: ../src/splivarot.cpp:81 msgid "Intersection" msgstr "Overlap" -#: ../src/splivarot.cpp:86 -#: ../src/splivarot.cpp:92 +#: ../src/splivarot.cpp:87 +#: ../src/splivarot.cpp:93 msgid "Difference" msgstr "Verschil" -#: ../src/splivarot.cpp:98 +#: ../src/splivarot.cpp:99 msgid "Exclusion" msgstr "Uitsluiten" -#: ../src/splivarot.cpp:103 +#: ../src/splivarot.cpp:104 msgid "Division" msgstr "Splitsen" -#: ../src/splivarot.cpp:108 +#: ../src/splivarot.cpp:109 msgid "Cut path" msgstr "Pad versnijden" -#: ../src/splivarot.cpp:123 +#: ../src/splivarot.cpp:134 msgid "Select at least 2 paths to perform a boolean operation." msgstr "Selecteer minstens twee paden om een booleaanse bewerking uit te voeren." -#: ../src/splivarot.cpp:127 +#: ../src/splivarot.cpp:138 msgid "Select at least 1 path to perform a boolean union." msgstr "Selecteer minstens één pad om een booleaanse vereniging uit te voeren." -#: ../src/splivarot.cpp:133 +#: ../src/splivarot.cpp:144 msgid "Select exactly 2 paths to perform difference, division, or path cut." msgstr "Selecteer precies twee paden om een verschil, uitsluiting, splitsing of padversnijding uit te voeren." -#: ../src/splivarot.cpp:149 -#: ../src/splivarot.cpp:164 +#: ../src/splivarot.cpp:160 +#: ../src/splivarot.cpp:175 msgid "Unable to determine the z-order of the objects selected for difference, XOR, division, or path cut." msgstr "Er kon niet worden bepaald welk object boven de andere lag om een verschil, uitsluiting, splitsing of pad-snijding uit te voeren." -#: ../src/splivarot.cpp:194 +#: ../src/splivarot.cpp:205 msgid "One of the objects is not a path, cannot perform boolean operation." msgstr "Een van de geselecteerde objecten is geen pad, de booleaansche bewerking kan niet worden uitgevoerd." -#: ../src/splivarot.cpp:918 +#: ../src/splivarot.cpp:954 msgid "Select stroked path(s) to convert stroke to path." msgstr "Selecteer paden waarvan de omlijning omgezet moet worden naar een pad." -#: ../src/splivarot.cpp:1271 +#: ../src/splivarot.cpp:1307 msgid "Convert stroke to path" msgstr "Omlijning omzetten naar pad" #. TRANSLATORS: "to outline" means "to convert stroke to path" -#: ../src/splivarot.cpp:1274 +#: ../src/splivarot.cpp:1310 msgid "No stroked paths in the selection." msgstr "Er zijn geen omlijnde paden geselecteerd." -#: ../src/splivarot.cpp:1345 +#: ../src/splivarot.cpp:1381 msgid "Selected object is not a path, cannot inset/outset." msgstr "Het geselecteerde object is geen pad, en kan dus niet versmalt/verbreed worden." -#: ../src/splivarot.cpp:1441 -#: ../src/splivarot.cpp:1506 +#: ../src/splivarot.cpp:1477 +#: ../src/splivarot.cpp:1542 msgid "Create linked offset" msgstr "Gekoppelde offset maken" -#: ../src/splivarot.cpp:1442 -#: ../src/splivarot.cpp:1507 +#: ../src/splivarot.cpp:1478 +#: ../src/splivarot.cpp:1543 msgid "Create dynamic offset" msgstr "Dynamische offset maken" -#: ../src/splivarot.cpp:1532 +#: ../src/splivarot.cpp:1568 msgid "Select path(s) to inset/outset." msgstr "Selecteer de paden om te versmallen/verbreden." -#: ../src/splivarot.cpp:1745 +#: ../src/splivarot.cpp:1781 msgid "Outset path" msgstr "Pad verbreden" -#: ../src/splivarot.cpp:1745 +#: ../src/splivarot.cpp:1781 msgid "Inset path" msgstr "Pad versmallen" -#: ../src/splivarot.cpp:1747 +#: ../src/splivarot.cpp:1783 msgid "No paths to inset/outset in the selection." msgstr "Er zijn geen paden geselecteerd om te vernauwen/verwijden." -#: ../src/splivarot.cpp:1909 +#: ../src/splivarot.cpp:1945 msgid "Simplifying paths (separately):" msgstr "Vereenvoudigen van paden (apart):" -#: ../src/splivarot.cpp:1911 +#: ../src/splivarot.cpp:1947 msgid "Simplifying paths:" msgstr "Vereenvoudigen van paden:" -#: ../src/splivarot.cpp:1948 +#: ../src/splivarot.cpp:1984 #, c-format msgid "%s %d of %d paths simplified..." msgstr "%s %d van %d paden vereenvoudigd..." -#: ../src/splivarot.cpp:1960 +#: ../src/splivarot.cpp:1996 #, c-format msgid "%d paths simplified." msgstr "%d paden zijn vereenvoudigd." -#: ../src/splivarot.cpp:1974 +#: ../src/splivarot.cpp:2010 msgid "Select path(s) to simplify." msgstr "Selecteer paden om te vereenvoudigen." -#: ../src/splivarot.cpp:1990 +#: ../src/splivarot.cpp:2026 msgid "No paths to simplify in the selection." msgstr "Er zijn geen paden geselecteerd om te vereenvoudigen." @@ -12861,12 +12727,12 @@ msgid "Nothing selected! Select objects to spray." msgstr "Niets geselecteerd! Selecteer objecten voor verstuiving." #: ../src/spray-context.cpp:745 -#: ../src/widgets/spray-toolbar.cpp:182 +#: ../src/widgets/spray-toolbar.cpp:178 msgid "Spray with copies" msgstr "Verstuiven met kopieën" #: ../src/spray-context.cpp:749 -#: ../src/widgets/spray-toolbar.cpp:189 +#: ../src/widgets/spray-toolbar.cpp:185 msgid "Spray with clones" msgstr "Verstuiven met klonen" @@ -12874,7 +12740,7 @@ msgstr "Verstuiven met klonen" msgid "Spray in single path" msgstr "Verstuiven in één richting" -#: ../src/star-context.cpp:320 +#: ../src/star-context.cpp:319 msgid "Ctrl: snap angle; keep rays radial" msgstr "Ctrl: in stappen draaien; stralen radiaal houden" @@ -12910,7 +12776,7 @@ msgid "The flowed text(s) must be visible in order to be put on a path." msgstr "Ingekaderde tekst moet zichtbaar zijn om deze op een pad te kunnen zetten." #: ../src/text-chemistry.cpp:183 -#: ../src/verbs.cpp:2430 +#: ../src/verbs.cpp:2489 msgid "Put text on path" msgstr "Tekst op een pad plaatsen" @@ -12923,7 +12789,7 @@ msgid "No texts-on-paths in the selection." msgstr "Geen tekst op een pad geselecteerd." #: ../src/text-chemistry.cpp:219 -#: ../src/verbs.cpp:2432 +#: ../src/verbs.cpp:2491 msgid "Remove text from path" msgstr "Tekst van een pad verwijderen" @@ -12968,141 +12834,141 @@ msgstr "Ingekaderde tekst omzetten naar tekst" msgid "No flowed text(s) to convert in the selection." msgstr "Er zijn geen ingekaderde tekst(en) geselecteerd om om te zetten." -#: ../src/text-context.cpp:426 +#: ../src/text-context.cpp:425 msgid "Click to edit the text, drag to select part of the text." msgstr "Klik om de tekst te bewerken, sleep om een deel van de tekst te selecteren." -#: ../src/text-context.cpp:428 +#: ../src/text-context.cpp:427 msgid "Click to edit the flowed text, drag to select part of the text." msgstr "Klik om de ingekaderde tekst te bewerken, sleep om een gedeelte te selecteren." -#: ../src/text-context.cpp:482 +#: ../src/text-context.cpp:481 msgid "Create text" msgstr "Tekst aanmaken" -#: ../src/text-context.cpp:507 +#: ../src/text-context.cpp:506 msgid "Non-printable character" msgstr "Niet-afdrukbaar teken" -#: ../src/text-context.cpp:522 +#: ../src/text-context.cpp:521 msgid "Insert Unicode character" msgstr "Unicodeteken invoegen" -#: ../src/text-context.cpp:557 +#: ../src/text-context.cpp:556 #, c-format msgid "Unicode (Enter to finish): %s: %s" msgstr "Unicode (Enter om te voltooien): %s: %s" -#: ../src/text-context.cpp:559 -#: ../src/text-context.cpp:868 +#: ../src/text-context.cpp:558 +#: ../src/text-context.cpp:869 msgid "Unicode (Enter to finish): " msgstr "Unicode (Enter om te voltooien): " -#: ../src/text-context.cpp:645 +#: ../src/text-context.cpp:646 #, c-format msgid "Flowed text frame: %s × %s" msgstr "Tekstkader: %s × %s" -#: ../src/text-context.cpp:702 +#: ../src/text-context.cpp:703 msgid "Type text; Enter to start new line." msgstr "Tik uw tekst; Enter begint een nieuwe regel." -#: ../src/text-context.cpp:713 +#: ../src/text-context.cpp:714 msgid "Flowed text is created." msgstr "Ingekaderde tekst is aangemaakt." -#: ../src/text-context.cpp:715 +#: ../src/text-context.cpp:716 msgid "Create flowed text" msgstr "Ingekaderde tekst maken" -#: ../src/text-context.cpp:717 +#: ../src/text-context.cpp:718 msgid "The frame is too small for the current font size. Flowed text not created." msgstr "Het kader is te klein voor de grootte van het huidige lettertype. Er is geen ingekaderde tekst aangemaakt." -#: ../src/text-context.cpp:853 +#: ../src/text-context.cpp:854 msgid "No-break space" msgstr "Harde spatie" -#: ../src/text-context.cpp:855 +#: ../src/text-context.cpp:856 msgid "Insert no-break space" msgstr "Harde spatie invoegen" -#: ../src/text-context.cpp:892 +#: ../src/text-context.cpp:893 msgid "Make bold" msgstr "Vet maken" -#: ../src/text-context.cpp:910 +#: ../src/text-context.cpp:911 msgid "Make italic" msgstr "Cursief maken" -#: ../src/text-context.cpp:949 +#: ../src/text-context.cpp:950 msgid "New line" msgstr "Nieuwe regel invoegen" -#: ../src/text-context.cpp:991 +#: ../src/text-context.cpp:992 msgid "Backspace" msgstr "Backspace" -#: ../src/text-context.cpp:1047 +#: ../src/text-context.cpp:1048 msgid "Kern to the left" msgstr "Overhang naar links" -#: ../src/text-context.cpp:1072 +#: ../src/text-context.cpp:1073 msgid "Kern to the right" msgstr "Overhang naar rechts" -#: ../src/text-context.cpp:1097 +#: ../src/text-context.cpp:1098 msgid "Kern up" msgstr "Overhang naar boven" -#: ../src/text-context.cpp:1122 +#: ../src/text-context.cpp:1123 msgid "Kern down" msgstr "Overhang naar beneden" -#: ../src/text-context.cpp:1198 +#: ../src/text-context.cpp:1199 msgid "Rotate counterclockwise" msgstr "Tegen de klok in draaien" -#: ../src/text-context.cpp:1219 +#: ../src/text-context.cpp:1220 msgid "Rotate clockwise" msgstr "Met de klok mee draaien" -#: ../src/text-context.cpp:1236 +#: ../src/text-context.cpp:1237 msgid "Contract line spacing" msgstr "Regelafstand verkleinen" -#: ../src/text-context.cpp:1243 +#: ../src/text-context.cpp:1244 msgid "Contract letter spacing" msgstr "Letterafstand verkleinen" -#: ../src/text-context.cpp:1261 +#: ../src/text-context.cpp:1262 msgid "Expand line spacing" msgstr "Regelafstand vergroten" -#: ../src/text-context.cpp:1268 +#: ../src/text-context.cpp:1269 msgid "Expand letter spacing" msgstr "Letterafstand vergroten" -#: ../src/text-context.cpp:1396 +#: ../src/text-context.cpp:1397 msgid "Paste text" msgstr "Tekst plakken" -#: ../src/text-context.cpp:1647 +#: ../src/text-context.cpp:1648 #, c-format msgid "Type or edit flowed text (%d characters%s); Enter to start new paragraph." msgstr "Tik of wijzig ingekaderde tekst (%d karakters%s); Enter begint een nieuwe paragraaf." -#: ../src/text-context.cpp:1649 +#: ../src/text-context.cpp:1650 #, c-format msgid "Type or edit text (%d characters%s); Enter to start new line." msgstr "Tik of wijzig tekst (%d karakters%s); Enter begint een nieuwe regel." -#: ../src/text-context.cpp:1657 +#: ../src/text-context.cpp:1658 #: ../src/tools-switch.cpp:201 msgid "Click to select or create text, drag to create flowed text; then type." msgstr "Klik om een tekst te beginnen of te selecteren, sleep om ingekaderde tekst te maken; begin vervolgens te tikken." -#: ../src/text-context.cpp:1759 +#: ../src/text-context.cpp:1760 msgid "Type text" msgstr "Tekst typen" @@ -13450,260 +13316,260 @@ msgstr "" "Vincent van Adrighem (V.vanAdrighem@dirck.mine.nu), 2003.\n" "Jeroen van der Vegt (jvdvegt@gmail.com), 2003, 2005, 2008." -#: ../src/ui/dialog/align-and-distribute.cpp:219 -#: ../src/ui/dialog/align-and-distribute.cpp:896 +#: ../src/ui/dialog/align-and-distribute.cpp:170 +#: ../src/ui/dialog/align-and-distribute.cpp:845 msgid "Align" msgstr "Uitlijnen" -#: ../src/ui/dialog/align-and-distribute.cpp:391 -#: ../src/ui/dialog/align-and-distribute.cpp:897 +#: ../src/ui/dialog/align-and-distribute.cpp:340 +#: ../src/ui/dialog/align-and-distribute.cpp:846 msgid "Distribute" msgstr "Verdelen" -#: ../src/ui/dialog/align-and-distribute.cpp:464 +#: ../src/ui/dialog/align-and-distribute.cpp:413 msgid "Minimum horizontal gap (in px units) between bounding boxes" msgstr "Minimum horizontale tussenruimte (in px) tussen omvattende vakken" # Hue - Tint. #. TRANSLATORS: "H:" stands for horizontal gap -#: ../src/ui/dialog/align-and-distribute.cpp:466 +#: ../src/ui/dialog/align-and-distribute.cpp:415 msgctxt "Gap" msgid "_H:" msgstr "_T:" -#: ../src/ui/dialog/align-and-distribute.cpp:474 +#: ../src/ui/dialog/align-and-distribute.cpp:423 msgid "Minimum vertical gap (in px units) between bounding boxes" msgstr "Minimum verticale tussenruimte (in px) tussen omvattende vakken" #. TRANSLATORS: Vertical gap -#: ../src/ui/dialog/align-and-distribute.cpp:476 +#: ../src/ui/dialog/align-and-distribute.cpp:425 msgctxt "Gap" msgid "_V:" msgstr "V:" -#: ../src/ui/dialog/align-and-distribute.cpp:512 -#: ../src/ui/dialog/align-and-distribute.cpp:899 -#: ../src/widgets/connector-toolbar.cpp:427 +#: ../src/ui/dialog/align-and-distribute.cpp:461 +#: ../src/ui/dialog/align-and-distribute.cpp:848 +#: ../src/widgets/connector-toolbar.cpp:423 msgid "Remove overlaps" msgstr "Overlappingen verwijderen" -#: ../src/ui/dialog/align-and-distribute.cpp:543 -#: ../src/widgets/connector-toolbar.cpp:256 +#: ../src/ui/dialog/align-and-distribute.cpp:492 +#: ../src/widgets/connector-toolbar.cpp:252 msgid "Arrange connector network" msgstr "Het verbindingennetwerk herschikken" -#: ../src/ui/dialog/align-and-distribute.cpp:636 +#: ../src/ui/dialog/align-and-distribute.cpp:585 msgid "Exchange Positions" msgstr "Posities uitwisselen" -#: ../src/ui/dialog/align-and-distribute.cpp:670 +#: ../src/ui/dialog/align-and-distribute.cpp:619 msgid "Unclump" msgstr "Ontklonteren" -#: ../src/ui/dialog/align-and-distribute.cpp:742 +#: ../src/ui/dialog/align-and-distribute.cpp:691 msgid "Randomize positions" msgstr "Posities willekeurig maken" -#: ../src/ui/dialog/align-and-distribute.cpp:845 +#: ../src/ui/dialog/align-and-distribute.cpp:794 msgid "Distribute text baselines" msgstr "Grondlijnen van tekst verdelen" -#: ../src/ui/dialog/align-and-distribute.cpp:868 +#: ../src/ui/dialog/align-and-distribute.cpp:817 msgid "Align text baselines" msgstr "Grondlijnen van tekst uitlijnen" -#: ../src/ui/dialog/align-and-distribute.cpp:898 +#: ../src/ui/dialog/align-and-distribute.cpp:847 msgid "Rearrange" msgstr "Ordenen" -#: ../src/ui/dialog/align-and-distribute.cpp:900 -#: ../src/widgets/toolbox.cpp:1724 +#: ../src/ui/dialog/align-and-distribute.cpp:849 +#: ../src/widgets/toolbox.cpp:1722 msgid "Nodes" msgstr "Knooppunten" -#: ../src/ui/dialog/align-and-distribute.cpp:914 +#: ../src/ui/dialog/align-and-distribute.cpp:863 msgid "Relative to: " msgstr "Relatief tov: " -#: ../src/ui/dialog/align-and-distribute.cpp:915 +#: ../src/ui/dialog/align-and-distribute.cpp:864 msgid "_Treat selection as group: " msgstr "_Selectie als groep behandelen: " #. Align -#: ../src/ui/dialog/align-and-distribute.cpp:921 -#: ../src/verbs.cpp:2861 -#: ../src/verbs.cpp:2862 +#: ../src/ui/dialog/align-and-distribute.cpp:870 +#: ../src/verbs.cpp:2928 +#: ../src/verbs.cpp:2929 msgid "Align right edges of objects to the left edge of the anchor" msgstr "Rechterzijden van de objecten uitlijnen op de linkerkant van het anker" -#: ../src/ui/dialog/align-and-distribute.cpp:924 -#: ../src/verbs.cpp:2863 -#: ../src/verbs.cpp:2864 +#: ../src/ui/dialog/align-and-distribute.cpp:873 +#: ../src/verbs.cpp:2930 +#: ../src/verbs.cpp:2931 msgid "Align left edges" msgstr "Linkerzijden uitlijnen" -#: ../src/ui/dialog/align-and-distribute.cpp:927 -#: ../src/verbs.cpp:2865 -#: ../src/verbs.cpp:2866 +#: ../src/ui/dialog/align-and-distribute.cpp:876 +#: ../src/verbs.cpp:2932 +#: ../src/verbs.cpp:2933 msgid "Center on vertical axis" msgstr "Centreren op horizontale as" -#: ../src/ui/dialog/align-and-distribute.cpp:930 -#: ../src/verbs.cpp:2867 -#: ../src/verbs.cpp:2868 +#: ../src/ui/dialog/align-and-distribute.cpp:879 +#: ../src/verbs.cpp:2934 +#: ../src/verbs.cpp:2935 msgid "Align right sides" msgstr "Rechterzijden uitlijnen" -#: ../src/ui/dialog/align-and-distribute.cpp:933 -#: ../src/verbs.cpp:2869 -#: ../src/verbs.cpp:2870 +#: ../src/ui/dialog/align-and-distribute.cpp:882 +#: ../src/verbs.cpp:2936 +#: ../src/verbs.cpp:2937 msgid "Align left edges of objects to the right edge of the anchor" msgstr "Linkerzijden van de objecten uitlijnen op de rechterzijde van het anker" -#: ../src/ui/dialog/align-and-distribute.cpp:936 -#: ../src/verbs.cpp:2871 -#: ../src/verbs.cpp:2872 +#: ../src/ui/dialog/align-and-distribute.cpp:885 +#: ../src/verbs.cpp:2938 +#: ../src/verbs.cpp:2939 msgid "Align bottom edges of objects to the top edge of the anchor" msgstr "Onderzijde van de objecten uitlijnen op de bovenzijde van het anker" -#: ../src/ui/dialog/align-and-distribute.cpp:939 -#: ../src/verbs.cpp:2873 -#: ../src/verbs.cpp:2874 +#: ../src/ui/dialog/align-and-distribute.cpp:888 +#: ../src/verbs.cpp:2940 +#: ../src/verbs.cpp:2941 msgid "Align top edges" msgstr "Bovenzijden uitlijnen" -#: ../src/ui/dialog/align-and-distribute.cpp:942 -#: ../src/verbs.cpp:2875 -#: ../src/verbs.cpp:2876 +#: ../src/ui/dialog/align-and-distribute.cpp:891 +#: ../src/verbs.cpp:2942 +#: ../src/verbs.cpp:2943 msgid "Center on horizontal axis" msgstr "Centreren om de horizontale as" -#: ../src/ui/dialog/align-and-distribute.cpp:945 -#: ../src/verbs.cpp:2877 -#: ../src/verbs.cpp:2878 +#: ../src/ui/dialog/align-and-distribute.cpp:894 +#: ../src/verbs.cpp:2944 +#: ../src/verbs.cpp:2945 msgid "Align bottom edges" msgstr "Onderzijden uitlijnen" -#: ../src/ui/dialog/align-and-distribute.cpp:948 -#: ../src/verbs.cpp:2879 -#: ../src/verbs.cpp:2880 +#: ../src/ui/dialog/align-and-distribute.cpp:897 +#: ../src/verbs.cpp:2946 +#: ../src/verbs.cpp:2947 msgid "Align top edges of objects to the bottom edge of the anchor" msgstr "Bovenzijde van de objecten uitlijnen op de onderzijde van het anker" -#: ../src/ui/dialog/align-and-distribute.cpp:953 +#: ../src/ui/dialog/align-and-distribute.cpp:902 msgid "Align baseline anchors of texts horizontally" msgstr "Grondlijnankers teksten horizontaal uitlijnen" -#: ../src/ui/dialog/align-and-distribute.cpp:956 +#: ../src/ui/dialog/align-and-distribute.cpp:905 msgid "Align baselines of texts" msgstr "Grondlijnen van teksten uitlijnen" -#: ../src/ui/dialog/align-and-distribute.cpp:961 +#: ../src/ui/dialog/align-and-distribute.cpp:910 msgid "Make horizontal gaps between objects equal" msgstr "Horizontale afstand tussen objecten gelijk maken" -#: ../src/ui/dialog/align-and-distribute.cpp:965 +#: ../src/ui/dialog/align-and-distribute.cpp:914 msgid "Distribute left edges equidistantly" msgstr "Afstand tussen de linkerzijden van de objecten gelijkmatig verdelen" -#: ../src/ui/dialog/align-and-distribute.cpp:968 +#: ../src/ui/dialog/align-and-distribute.cpp:917 msgid "Distribute centers equidistantly horizontally" msgstr "Objectmiddens gelijkmatig verdelen in horizontale richting" -#: ../src/ui/dialog/align-and-distribute.cpp:971 +#: ../src/ui/dialog/align-and-distribute.cpp:920 msgid "Distribute right edges equidistantly" msgstr "Afstand tussen de rechterzijden van de objecten gelijkmatig verdelen" -#: ../src/ui/dialog/align-and-distribute.cpp:975 +#: ../src/ui/dialog/align-and-distribute.cpp:924 msgid "Make vertical gaps between objects equal" msgstr "Verticale afstand tussen de objecten gelijk maken" -#: ../src/ui/dialog/align-and-distribute.cpp:979 +#: ../src/ui/dialog/align-and-distribute.cpp:928 msgid "Distribute top edges equidistantly" msgstr "Afstand tussen de bovenzijden van de objecten gelijkmatig verdelen" -#: ../src/ui/dialog/align-and-distribute.cpp:982 +#: ../src/ui/dialog/align-and-distribute.cpp:931 msgid "Distribute centers equidistantly vertically" msgstr "Objectmiddens gelijkmatig verdelen in verticale richting" -#: ../src/ui/dialog/align-and-distribute.cpp:985 +#: ../src/ui/dialog/align-and-distribute.cpp:934 msgid "Distribute bottom edges equidistantly" msgstr "Afstand tussen de onderzijden van de objecten gelijkmatig verdelen" -#: ../src/ui/dialog/align-and-distribute.cpp:990 +#: ../src/ui/dialog/align-and-distribute.cpp:939 msgid "Distribute baseline anchors of texts horizontally" msgstr "Geselecteerde teksten horizontaal verdelen" -#: ../src/ui/dialog/align-and-distribute.cpp:993 +#: ../src/ui/dialog/align-and-distribute.cpp:942 msgid "Distribute baselines of texts vertically" msgstr "Grondlijnen van geselecteerde teksten verticaal verdelen" -#: ../src/ui/dialog/align-and-distribute.cpp:999 -#: ../src/widgets/connector-toolbar.cpp:389 +#: ../src/ui/dialog/align-and-distribute.cpp:948 +#: ../src/widgets/connector-toolbar.cpp:385 msgid "Nicely arrange selected connector network" msgstr "Het geselecteerde verbindingennetwerk netjes schikken" -#: ../src/ui/dialog/align-and-distribute.cpp:1002 +#: ../src/ui/dialog/align-and-distribute.cpp:951 msgid "Exchange positions of selected objects - selection order" msgstr "Posities van geselecteerde objecten uitwisselen - volgens selectie" -#: ../src/ui/dialog/align-and-distribute.cpp:1005 +#: ../src/ui/dialog/align-and-distribute.cpp:954 msgid "Exchange positions of selected objects - stacking order" msgstr "Posities van geselecteerde objecten uitwisselen - volgens stapeling" -#: ../src/ui/dialog/align-and-distribute.cpp:1008 +#: ../src/ui/dialog/align-and-distribute.cpp:957 msgid "Exchange positions of selected objects - clockwise rotate" msgstr "Posities van geselecteerde objecten uitwisselen - met de klok draaien" -#: ../src/ui/dialog/align-and-distribute.cpp:1013 +#: ../src/ui/dialog/align-and-distribute.cpp:962 msgid "Randomize centers in both dimensions" msgstr "Objectmiddens in beide richtingen willekeurig verdelen" -#: ../src/ui/dialog/align-and-distribute.cpp:1016 +#: ../src/ui/dialog/align-and-distribute.cpp:965 msgid "Unclump objects: try to equalize edge-to-edge distances" msgstr "Objecten ontklonteren: rand-tot-rand afstanden gelijk proberen maken" -#: ../src/ui/dialog/align-and-distribute.cpp:1021 +#: ../src/ui/dialog/align-and-distribute.cpp:970 msgid "Move objects as little as possible so that their bounding boxes do not overlap" msgstr "Objecten zo min mogelijk verplaatsen opdat hun omvattende vakken niet overlappen" -#: ../src/ui/dialog/align-and-distribute.cpp:1029 +#: ../src/ui/dialog/align-and-distribute.cpp:978 msgid "Align selected nodes to a common horizontal line" msgstr "Geselecteerde knooppunten uitlijnen op een gemeenschappelijke horizontale lijn" -#: ../src/ui/dialog/align-and-distribute.cpp:1032 +#: ../src/ui/dialog/align-and-distribute.cpp:981 msgid "Align selected nodes to a common vertical line" msgstr "Geselecteerde knooppunten uitlijnen op een gemeenschappelijke verticale lijn" -#: ../src/ui/dialog/align-and-distribute.cpp:1035 +#: ../src/ui/dialog/align-and-distribute.cpp:984 msgid "Distribute selected nodes horizontally" msgstr "Geselecteerde knooppunten horizontaal verdelen" -#: ../src/ui/dialog/align-and-distribute.cpp:1038 +#: ../src/ui/dialog/align-and-distribute.cpp:987 msgid "Distribute selected nodes vertically" msgstr "Geselecteerde knooppunten verticaal verdelen" #. Rest of the widgetry -#: ../src/ui/dialog/align-and-distribute.cpp:1043 +#: ../src/ui/dialog/align-and-distribute.cpp:992 msgid "Last selected" msgstr "Laatst geselecteerde" -#: ../src/ui/dialog/align-and-distribute.cpp:1044 +#: ../src/ui/dialog/align-and-distribute.cpp:993 msgid "First selected" msgstr "Eerst geselecteerde" -#: ../src/ui/dialog/align-and-distribute.cpp:1045 +#: ../src/ui/dialog/align-and-distribute.cpp:994 msgid "Biggest object" msgstr "Grootste object" -#: ../src/ui/dialog/align-and-distribute.cpp:1046 +#: ../src/ui/dialog/align-and-distribute.cpp:995 msgid "Smallest object" msgstr "Kleinste object" -#: ../src/ui/dialog/align-and-distribute.cpp:1049 +#: ../src/ui/dialog/align-and-distribute.cpp:998 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1555 -#: ../src/verbs.cpp:169 -#: ../src/widgets/desktop-widget.cpp:1934 +#: ../src/verbs.cpp:175 +#: ../src/widgets/desktop-widget.cpp:2008 #: ../share/extensions/printing_marks.inx.h:18 msgid "Selection" msgstr "Selectie" @@ -13725,328 +13591,327 @@ msgstr "Opslaan" msgid "Add profile" msgstr "Kleurprofiel toevoegen" -#: ../src/ui/dialog/color-item.cpp:122 +#: ../src/ui/dialog/color-item.cpp:131 #, c-format msgid "Color: %s; Click to set fill, Shift+click to set stroke" msgstr "Kleur: %s; Klik om vulling in te stellen, Shift+klik om lijnkleur in te stellen" -#: ../src/ui/dialog/color-item.cpp:504 +#: ../src/ui/dialog/color-item.cpp:513 msgid "Change color definition" msgstr "Kleurdefinitie veranderen" -#: ../src/ui/dialog/color-item.cpp:678 +#: ../src/ui/dialog/color-item.cpp:687 msgid "Remove stroke color" msgstr "Lijnkleur verwijderen" -#: ../src/ui/dialog/color-item.cpp:678 +#: ../src/ui/dialog/color-item.cpp:687 msgid "Remove fill color" msgstr "Vulling verwijderen" -#: ../src/ui/dialog/color-item.cpp:683 +#: ../src/ui/dialog/color-item.cpp:692 msgid "Set stroke color to none" msgstr "Lijnkleur op geen instellen" -#: ../src/ui/dialog/color-item.cpp:683 +#: ../src/ui/dialog/color-item.cpp:692 msgid "Set fill color to none" msgstr "Vulling op geen instellen" -#: ../src/ui/dialog/color-item.cpp:699 +#: ../src/ui/dialog/color-item.cpp:708 msgid "Set stroke color from swatch" msgstr "Lijnkleur instellen uit palet" -#: ../src/ui/dialog/color-item.cpp:699 +#: ../src/ui/dialog/color-item.cpp:708 msgid "Set fill color from swatch" msgstr "Vulling instellen uit palet" -#: ../src/ui/dialog/debug.cpp:69 +#: ../src/ui/dialog/debug.cpp:73 msgid "Messages" msgstr "Berichten" -#: ../src/ui/dialog/debug.cpp:83 +#: ../src/ui/dialog/debug.cpp:87 #: ../src/ui/dialog/messages.cpp:47 -#: ../src/ui/dialog/scriptdialog.cpp:182 msgid "_Clear" msgstr "_Wissen" -#: ../src/ui/dialog/debug.cpp:87 +#: ../src/ui/dialog/debug.cpp:91 #: ../src/ui/dialog/messages.cpp:48 msgid "Capture log messages" msgstr "Logberichten bewaren" -#: ../src/ui/dialog/debug.cpp:91 +#: ../src/ui/dialog/debug.cpp:95 msgid "Release log messages" msgstr "Logberichten negeren" #: ../src/ui/dialog/document-metadata.cpp:88 -#: ../src/ui/dialog/document-properties.cpp:152 +#: ../src/ui/dialog/document-properties.cpp:151 msgid "Metadata" msgstr "Metadata" #: ../src/ui/dialog/document-metadata.cpp:89 -#: ../src/ui/dialog/document-properties.cpp:153 +#: ../src/ui/dialog/document-properties.cpp:152 msgid "License" msgstr "Licentie" #: ../src/ui/dialog/document-metadata.cpp:126 -#: ../src/ui/dialog/document-properties.cpp:960 +#: ../src/ui/dialog/document-properties.cpp:959 msgid "Dublin Core Entities" msgstr "Dublin Core-elementen" #: ../src/ui/dialog/document-metadata.cpp:168 -#: ../src/ui/dialog/document-properties.cpp:1022 +#: ../src/ui/dialog/document-properties.cpp:1021 msgid "License" msgstr "Licentie" #. --------------------------------------------------------------- -#: ../src/ui/dialog/document-properties.cpp:105 +#: ../src/ui/dialog/document-properties.cpp:104 msgid "Show page _border" msgstr "Pagina_rand weergeven" -#: ../src/ui/dialog/document-properties.cpp:105 +#: ../src/ui/dialog/document-properties.cpp:104 msgid "If set, rectangular page border is shown" msgstr "Indien aangevinkt, wordt de rechthoekige paginarand getoond" -#: ../src/ui/dialog/document-properties.cpp:106 +#: ../src/ui/dialog/document-properties.cpp:105 msgid "Border on _top of drawing" msgstr "Rand altijd boven de _tekening" -#: ../src/ui/dialog/document-properties.cpp:106 +#: ../src/ui/dialog/document-properties.cpp:105 msgid "If set, border is always on top of the drawing" msgstr "Indien aangevinkt, wordt de rand altijd boven de tekening getoond" -#: ../src/ui/dialog/document-properties.cpp:107 +#: ../src/ui/dialog/document-properties.cpp:106 msgid "_Show border shadow" msgstr "Paginascha_duw weergeven" -#: ../src/ui/dialog/document-properties.cpp:107 +#: ../src/ui/dialog/document-properties.cpp:106 msgid "If set, page border shows a shadow on its right and lower side" msgstr "Indien aangevinkt, heeft de paginarand onder en rechts een schaduw" -#: ../src/ui/dialog/document-properties.cpp:108 +#: ../src/ui/dialog/document-properties.cpp:107 msgid "Back_ground color:" msgstr "_Achtergrondkleur:" -#: ../src/ui/dialog/document-properties.cpp:108 +#: ../src/ui/dialog/document-properties.cpp:107 msgid "Color of the page background. Note: transparency setting ignored while editing but used when exporting to bitmap." msgstr "" -#: ../src/ui/dialog/document-properties.cpp:109 +#: ../src/ui/dialog/document-properties.cpp:108 msgid "Border _color:" msgstr "_Kleur paginarand:" -#: ../src/ui/dialog/document-properties.cpp:109 +#: ../src/ui/dialog/document-properties.cpp:108 msgid "Page border color" msgstr "Kleur paginarand" -#: ../src/ui/dialog/document-properties.cpp:109 +#: ../src/ui/dialog/document-properties.cpp:108 msgid "Color of the page border" msgstr "Kleur van de paginarand" -#: ../src/ui/dialog/document-properties.cpp:110 +#: ../src/ui/dialog/document-properties.cpp:109 msgid "Default _units:" msgstr "Standaardeen_heid:" #. --------------------------------------------------------------- #. General snap options -#: ../src/ui/dialog/document-properties.cpp:114 +#: ../src/ui/dialog/document-properties.cpp:113 msgid "Show _guides" msgstr "_Hulplijnen weergeven" -#: ../src/ui/dialog/document-properties.cpp:114 +#: ../src/ui/dialog/document-properties.cpp:113 msgid "Show or hide guides" msgstr "Hulplijnen weergeven of verbergen" -#: ../src/ui/dialog/document-properties.cpp:115 +#: ../src/ui/dialog/document-properties.cpp:114 msgid "Guide co_lor:" msgstr "K_leur hulplijnen:" -#: ../src/ui/dialog/document-properties.cpp:115 +#: ../src/ui/dialog/document-properties.cpp:114 msgid "Guideline color" msgstr "Kleur hulplijnen" -#: ../src/ui/dialog/document-properties.cpp:115 +#: ../src/ui/dialog/document-properties.cpp:114 msgid "Color of guidelines" msgstr "Kleur van de hulplijnen" -#: ../src/ui/dialog/document-properties.cpp:116 +#: ../src/ui/dialog/document-properties.cpp:115 msgid "_Highlight color:" msgstr "_Oplichtende kleur:" -#: ../src/ui/dialog/document-properties.cpp:116 +#: ../src/ui/dialog/document-properties.cpp:115 msgid "Highlighted guideline color" msgstr "Kleur van oplichtende hulplijn" -#: ../src/ui/dialog/document-properties.cpp:116 +#: ../src/ui/dialog/document-properties.cpp:115 msgid "Color of a guideline when it is under mouse" msgstr "Kleur van een hulplijn als de muis ernaar wijst" #. --------------------------------------------------------------- -#: ../src/ui/dialog/document-properties.cpp:118 +#: ../src/ui/dialog/document-properties.cpp:117 msgid "Snap _distance" msgstr "Kleefafstan_d" -#: ../src/ui/dialog/document-properties.cpp:118 +#: ../src/ui/dialog/document-properties.cpp:117 msgid "Snap only when _closer than:" msgstr "Alleen kleven indien _dichter dan:" -#: ../src/ui/dialog/document-properties.cpp:118 -#: ../src/ui/dialog/document-properties.cpp:123 -#: ../src/ui/dialog/document-properties.cpp:128 +#: ../src/ui/dialog/document-properties.cpp:117 +#: ../src/ui/dialog/document-properties.cpp:122 +#: ../src/ui/dialog/document-properties.cpp:127 msgid "Always snap" msgstr "Altijd kleven" -#: ../src/ui/dialog/document-properties.cpp:119 +#: ../src/ui/dialog/document-properties.cpp:118 msgid "Snapping distance, in screen pixels, for snapping to objects" msgstr "Kleefafstand, in schermpixels, voor kleven aan objecten" -#: ../src/ui/dialog/document-properties.cpp:119 +#: ../src/ui/dialog/document-properties.cpp:118 msgid "Always snap to objects, regardless of their distance" msgstr "Altijd aan objecten kleven, ongeacht hun afstand" -#: ../src/ui/dialog/document-properties.cpp:120 +#: ../src/ui/dialog/document-properties.cpp:119 msgid "If set, objects only snap to another object when it's within the range specified below" msgstr "Indien aangevinkt, kleven objecten alleen aan andere objecten als deze zich binnen de hier aangegeven afstand bevindt" #. Options for snapping to grids -#: ../src/ui/dialog/document-properties.cpp:123 +#: ../src/ui/dialog/document-properties.cpp:122 msgid "Snap d_istance" msgstr "Klee_fafstand" -#: ../src/ui/dialog/document-properties.cpp:123 +#: ../src/ui/dialog/document-properties.cpp:122 msgid "Snap only when c_loser than:" msgstr "Alleen kleven indien d_ichter dan:" -#: ../src/ui/dialog/document-properties.cpp:124 +#: ../src/ui/dialog/document-properties.cpp:123 msgid "Snapping distance, in screen pixels, for snapping to grid" msgstr "Kleefafstand, in schermpixels, voor kleven aan raster" -#: ../src/ui/dialog/document-properties.cpp:124 +#: ../src/ui/dialog/document-properties.cpp:123 msgid "Always snap to grids, regardless of the distance" msgstr "Altijd aan raster kleven, ongeacht de afstand" -#: ../src/ui/dialog/document-properties.cpp:125 +#: ../src/ui/dialog/document-properties.cpp:124 msgid "If set, objects only snap to a grid line when it's within the range specified below" msgstr "Indien aangevinkt, kleven objecten alleen aan een rasterlijn als deze zich binnen de hier aangegeven afstand bevindt" #. Options for snapping to guides -#: ../src/ui/dialog/document-properties.cpp:128 +#: ../src/ui/dialog/document-properties.cpp:127 msgid "Snap dist_ance" msgstr "Kleef_afstand" -#: ../src/ui/dialog/document-properties.cpp:128 +#: ../src/ui/dialog/document-properties.cpp:127 msgid "Snap only when close_r than:" msgstr "Alleen kleven indien di_chter dan:" -#: ../src/ui/dialog/document-properties.cpp:129 +#: ../src/ui/dialog/document-properties.cpp:128 msgid "Snapping distance, in screen pixels, for snapping to guides" msgstr "Kleefafstand, in schermpixels, voor kleven aan hulplijnen" -#: ../src/ui/dialog/document-properties.cpp:129 +#: ../src/ui/dialog/document-properties.cpp:128 msgid "Always snap to guides, regardless of the distance" msgstr "Altijd aan hulplijnen kleven, ongeacht de afstand" -#: ../src/ui/dialog/document-properties.cpp:130 +#: ../src/ui/dialog/document-properties.cpp:129 msgid "If set, objects only snap to a guide when it's within the range specified below" msgstr "Indien aangevinkt, kleven objecten alleen aan een hulplijn als deze zich binnen de hier aangegeven afstand bevindt" #. --------------------------------------------------------------- -#: ../src/ui/dialog/document-properties.cpp:133 +#: ../src/ui/dialog/document-properties.cpp:132 msgid "Snap to clip paths" msgstr "Aan afsnijpaden kleven" -#: ../src/ui/dialog/document-properties.cpp:133 +#: ../src/ui/dialog/document-properties.cpp:132 msgid "When snapping to paths, then also try snapping to clip paths" msgstr "Bij het kleven aan paden, ook aan afsnijpaden trachten te kleven" -#: ../src/ui/dialog/document-properties.cpp:134 +#: ../src/ui/dialog/document-properties.cpp:133 msgid "Snap to mask paths" msgstr "Aan maskerpaden kleven" -#: ../src/ui/dialog/document-properties.cpp:134 +#: ../src/ui/dialog/document-properties.cpp:133 msgid "When snapping to paths, then also try snapping to mask paths" msgstr "Bij het kleven aan paden, ook aan maskerpaden trachten te kleven" -#: ../src/ui/dialog/document-properties.cpp:135 +#: ../src/ui/dialog/document-properties.cpp:134 msgid "Snap perpendicularly" msgstr "Loodrecht kleven" -#: ../src/ui/dialog/document-properties.cpp:135 +#: ../src/ui/dialog/document-properties.cpp:134 msgid "When snapping to paths or guides, then also try snapping perpendicularly" msgstr "Bij het kleven aan paden of hulplijnen, ook loodrecht trachten te kleven" -#: ../src/ui/dialog/document-properties.cpp:136 +#: ../src/ui/dialog/document-properties.cpp:135 msgid "Snap tangentially" msgstr "Tangentiëel kleven" -#: ../src/ui/dialog/document-properties.cpp:136 +#: ../src/ui/dialog/document-properties.cpp:135 msgid "When snapping to paths or guides, then also try snapping tangentially" msgstr "Bij het kleven aan paden of hulplijnen, ook tangentiëel trachten te kleven" -#: ../src/ui/dialog/document-properties.cpp:139 +#: ../src/ui/dialog/document-properties.cpp:138 msgctxt "Grid" msgid "_New" msgstr "_Nieuw" -#: ../src/ui/dialog/document-properties.cpp:139 +#: ../src/ui/dialog/document-properties.cpp:138 msgid "Create new grid." msgstr "Nieuw raster maken." -#: ../src/ui/dialog/document-properties.cpp:140 +#: ../src/ui/dialog/document-properties.cpp:139 msgctxt "Grid" msgid "_Remove" msgstr "Ve_rwijderen" -#: ../src/ui/dialog/document-properties.cpp:140 +#: ../src/ui/dialog/document-properties.cpp:139 msgid "Remove selected grid." msgstr "Geselecteerd raster verwijderen." -#: ../src/ui/dialog/document-properties.cpp:147 -#: ../src/widgets/toolbox.cpp:1831 +#: ../src/ui/dialog/document-properties.cpp:146 +#: ../src/widgets/toolbox.cpp:1829 msgid "Guides" msgstr "Hulplijnen" -#: ../src/ui/dialog/document-properties.cpp:149 -#: ../src/verbs.cpp:2680 +#: ../src/ui/dialog/document-properties.cpp:148 +#: ../src/verbs.cpp:2739 msgid "Snap" msgstr "Kleven" -#: ../src/ui/dialog/document-properties.cpp:151 +#: ../src/ui/dialog/document-properties.cpp:150 msgid "Scripting" msgstr "Scripting" -#: ../src/ui/dialog/document-properties.cpp:311 +#: ../src/ui/dialog/document-properties.cpp:310 msgid "General" msgstr "Algemeen" -#: ../src/ui/dialog/document-properties.cpp:313 +#: ../src/ui/dialog/document-properties.cpp:312 msgid "Color" msgstr "Kleur" -#: ../src/ui/dialog/document-properties.cpp:315 +#: ../src/ui/dialog/document-properties.cpp:314 msgid "Border" msgstr "Omranding" -#: ../src/ui/dialog/document-properties.cpp:317 +#: ../src/ui/dialog/document-properties.cpp:316 msgid "Page Size" msgstr "Paginagrootte" -#: ../src/ui/dialog/document-properties.cpp:350 +#: ../src/ui/dialog/document-properties.cpp:349 msgid "Guides" msgstr "Hulplijnen" -#: ../src/ui/dialog/document-properties.cpp:368 +#: ../src/ui/dialog/document-properties.cpp:367 msgid "Snap to objects" msgstr "Kleven aan objecten" -#: ../src/ui/dialog/document-properties.cpp:370 +#: ../src/ui/dialog/document-properties.cpp:369 msgid "Snap to grids" msgstr "Kleven aan rasters" -#: ../src/ui/dialog/document-properties.cpp:372 +#: ../src/ui/dialog/document-properties.cpp:371 msgid "Snap to guides" msgstr "Kleven aan hulplijnen" -#: ../src/ui/dialog/document-properties.cpp:374 +#: ../src/ui/dialog/document-properties.cpp:373 msgid "Miscellaneous" msgstr "Diversen" @@ -14054,134 +13919,134 @@ msgstr "Diversen" #. Inkscape::GC::release(defsRepr); #. inform the document, so we can undo #. Color Management -#: ../src/ui/dialog/document-properties.cpp:487 -#: ../src/verbs.cpp:2855 +#: ../src/ui/dialog/document-properties.cpp:486 +#: ../src/verbs.cpp:2912 msgid "Link Color Profile" msgstr "Kleurprofiel linken" -#: ../src/ui/dialog/document-properties.cpp:588 +#: ../src/ui/dialog/document-properties.cpp:587 msgid "Remove linked color profile" msgstr "Gelinkt kleurprofiel verwijderen" -#: ../src/ui/dialog/document-properties.cpp:601 +#: ../src/ui/dialog/document-properties.cpp:600 msgid "Linked Color Profiles:" msgstr "Gelinkte kleurprofielen:" -#: ../src/ui/dialog/document-properties.cpp:603 +#: ../src/ui/dialog/document-properties.cpp:602 msgid "Available Color Profiles:" msgstr "Beschikbare kleurprofielen:" -#: ../src/ui/dialog/document-properties.cpp:605 +#: ../src/ui/dialog/document-properties.cpp:604 msgid "Link Profile" msgstr "Kleurprofiel linken" -#: ../src/ui/dialog/document-properties.cpp:608 +#: ../src/ui/dialog/document-properties.cpp:607 msgid "Unlink Profile" msgstr "Kleurprofiel ontlinken" -#: ../src/ui/dialog/document-properties.cpp:686 +#: ../src/ui/dialog/document-properties.cpp:685 msgid "Profile Name" msgstr "Naam profiel" -#: ../src/ui/dialog/document-properties.cpp:722 +#: ../src/ui/dialog/document-properties.cpp:721 msgid "External scripts" msgstr "Externe scripts" -#: ../src/ui/dialog/document-properties.cpp:723 +#: ../src/ui/dialog/document-properties.cpp:722 msgid "Embedded scripts" msgstr "Ingevoegde scripts" # zijn dit de uitbreidingen (Engels: external modules)? -#: ../src/ui/dialog/document-properties.cpp:728 +#: ../src/ui/dialog/document-properties.cpp:727 msgid "External script files:" msgstr "Externe scriptbestanden:" -#: ../src/ui/dialog/document-properties.cpp:730 +#: ../src/ui/dialog/document-properties.cpp:729 msgid "Add the current file name or browse for a file" msgstr "Deze bestandsnaam toevoegen of naar bestand browsen" -#: ../src/ui/dialog/document-properties.cpp:733 -#: ../src/ui/dialog/document-properties.cpp:811 -#: ../src/ui/widget/selected-style.cpp:334 +#: ../src/ui/dialog/document-properties.cpp:732 +#: ../src/ui/dialog/document-properties.cpp:810 +#: ../src/ui/widget/selected-style.cpp:339 msgid "Remove" msgstr "Verwijderen" -#: ../src/ui/dialog/document-properties.cpp:798 +#: ../src/ui/dialog/document-properties.cpp:797 msgid "Filename" msgstr "Bestand" # zijn dit de uitbreidingen (Engels: external modules)? -#: ../src/ui/dialog/document-properties.cpp:806 +#: ../src/ui/dialog/document-properties.cpp:805 msgid "Embedded script files:" msgstr "Ingevoegde scriptbestanden:" -#: ../src/ui/dialog/document-properties.cpp:808 +#: ../src/ui/dialog/document-properties.cpp:807 msgid "New" msgstr "Nieuw" -#: ../src/ui/dialog/document-properties.cpp:875 +#: ../src/ui/dialog/document-properties.cpp:874 msgid "Script id" msgstr "Script id" -#: ../src/ui/dialog/document-properties.cpp:881 +#: ../src/ui/dialog/document-properties.cpp:880 msgid "Content:" msgstr "Inhoud:" -#: ../src/ui/dialog/document-properties.cpp:998 +#: ../src/ui/dialog/document-properties.cpp:997 msgid "_Save as default" msgstr "_Instellen als standaard" -#: ../src/ui/dialog/document-properties.cpp:999 +#: ../src/ui/dialog/document-properties.cpp:998 msgid "Save this metadata as the default metadata" msgstr "Deze metadata als standaardwaarde bewaren" -#: ../src/ui/dialog/document-properties.cpp:1000 +#: ../src/ui/dialog/document-properties.cpp:999 msgid "Use _default" msgstr "_Standaard gebruiken" -#: ../src/ui/dialog/document-properties.cpp:1001 +#: ../src/ui/dialog/document-properties.cpp:1000 msgid "Use the previously saved default metadata here" msgstr "_Bewaarde standaardmetadata gebruiken" #. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1074 +#: ../src/ui/dialog/document-properties.cpp:1073 msgid "Add external script..." msgstr "Extern script toevoegen..." -#: ../src/ui/dialog/document-properties.cpp:1113 +#: ../src/ui/dialog/document-properties.cpp:1112 msgid "Select a script to load" msgstr "Selecteer een script om te laden" #. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1141 +#: ../src/ui/dialog/document-properties.cpp:1140 msgid "Add embedded script..." msgstr "Ingevoegd script toevoegen..." #. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1172 +#: ../src/ui/dialog/document-properties.cpp:1171 msgid "Remove external script" msgstr "Extern script verwijderen" #. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1206 +#: ../src/ui/dialog/document-properties.cpp:1205 msgid "Remove embedded script" msgstr "Ingevoegd script verwijderen" #. TODO repr->set_content(_EmbeddedContent.get_buffer()->get_text()); #. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1306 +#: ../src/ui/dialog/document-properties.cpp:1305 msgid "Edit embedded script" msgstr "Ingevoegd script bewerken" -#: ../src/ui/dialog/document-properties.cpp:1389 +#: ../src/ui/dialog/document-properties.cpp:1388 msgid "Creation" msgstr "Aanmaken" -#: ../src/ui/dialog/document-properties.cpp:1390 +#: ../src/ui/dialog/document-properties.cpp:1389 msgid "Defined grids" msgstr "Bestaande rasters" -#: ../src/ui/dialog/document-properties.cpp:1618 +#: ../src/ui/dialog/document-properties.cpp:1617 msgid "Remove grid" msgstr "Raster verwijderen" @@ -14190,8 +14055,8 @@ msgid "Information" msgstr "Informatie" #: ../src/ui/dialog/extension-editor.cpp:82 -#: ../src/verbs.cpp:284 -#: ../src/verbs.cpp:303 +#: ../src/verbs.cpp:290 +#: ../src/verbs.cpp:309 #: ../share/extensions/color_custom.inx.h:7 #: ../share/extensions/color_HSL_adjust.inx.h:11 #: ../share/extensions/color_randomize.inx.h:6 @@ -14264,36 +14129,36 @@ msgstr "Bestandsvoorbeeld tonen" #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:779 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:795 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:810 -#: ../src/ui/dialog/filedialogimpl-win32.cpp:291 -#: ../src/ui/dialog/filedialogimpl-win32.cpp:422 +#: ../src/ui/dialog/filedialogimpl-win32.cpp:289 +#: ../src/ui/dialog/filedialogimpl-win32.cpp:420 msgid "All Files" msgstr "Alle bestanden" #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:776 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:792 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:807 -#: ../src/ui/dialog/filedialogimpl-win32.cpp:292 +#: ../src/ui/dialog/filedialogimpl-win32.cpp:290 msgid "All Inkscape Files" msgstr "Alle Inkscapebestanden" #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:783 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:799 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:813 -#: ../src/ui/dialog/filedialogimpl-win32.cpp:293 +#: ../src/ui/dialog/filedialogimpl-win32.cpp:291 msgid "All Images" msgstr "Alle afbeeldingen" #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:786 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:802 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:816 -#: ../src/ui/dialog/filedialogimpl-win32.cpp:294 +#: ../src/ui/dialog/filedialogimpl-win32.cpp:292 msgid "All Vectors" msgstr "Alle vectoren" #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:789 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:805 #: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:819 -#: ../src/ui/dialog/filedialogimpl-win32.cpp:295 +#: ../src/ui/dialog/filedialogimpl-win32.cpp:293 msgid "All Bitmaps" msgstr "Alle bitmaps" @@ -14374,15 +14239,15 @@ msgstr "Antialias" msgid "Destination" msgstr "Doel" -#: ../src/ui/dialog/filedialogimpl-win32.cpp:423 +#: ../src/ui/dialog/filedialogimpl-win32.cpp:421 msgid "All Executable Files" msgstr "Alle uitvoerbare bestanden" -#: ../src/ui/dialog/filedialogimpl-win32.cpp:615 +#: ../src/ui/dialog/filedialogimpl-win32.cpp:613 msgid "Show Preview" msgstr "Voorbeeld tonen" -#: ../src/ui/dialog/filedialogimpl-win32.cpp:753 +#: ../src/ui/dialog/filedialogimpl-win32.cpp:751 msgid "No file selected" msgstr "Geen bestand geselecteerd" @@ -14495,275 +14360,275 @@ msgstr "_Dupliceren" msgid "_Filter" msgstr "_Filter" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1168 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1174 msgid "R_ename" msgstr "H_ernoemen" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1298 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1304 msgid "Rename filter" msgstr "Hernoem filter" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1335 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1348 msgid "Apply filter" msgstr "Filter toepassen" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1405 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1418 msgid "filter" msgstr "filter" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1412 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1425 msgid "Add filter" msgstr "Filter toevoegen" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1464 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1477 msgid "Duplicate filter" msgstr "Filter dupliceren" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1563 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1576 msgid "_Effect" msgstr "_Effect" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1573 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1586 msgid "Connections" msgstr "Verbindingen" -#: ../src/ui/dialog/filter-effects-dialog.cpp:1711 +#: ../src/ui/dialog/filter-effects-dialog.cpp:1724 msgid "Remove filter primitive" msgstr "Filtereffect verwijderen" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2299 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2312 msgid "Remove merge node" msgstr "Verwijder samenvoegingsknooppunt" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2419 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2432 msgid "Reorder filter primitive" msgstr "Filtereffect herordenen" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2499 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2512 msgid "Add Effect:" msgstr "Effect toevoegen:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2500 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2513 msgid "No effect selected" msgstr "Geen effect geselecteerd" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2501 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2514 msgid "No filter selected" msgstr "Geen filter geselecteerd" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2547 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2560 msgid "Effect parameters" msgstr "Effectparameters" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2548 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2561 msgid "Filter General Settings" msgstr "Algemene filterinstellingen" #. default x: #. default y: -#: ../src/ui/dialog/filter-effects-dialog.cpp:2606 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2619 msgid "Coordinates:" msgstr "Coördinaten:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2606 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2619 msgid "X coordinate of the left corners of filter effects region" msgstr "X-coördinaat van de linkerhoeken van het filtereffectgebied" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2606 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2619 msgid "Y coordinate of the upper corners of filter effects region" msgstr "Y-coördinaat van de linkerhoeken van het filtereffectgebied" #. default width: #. default height: -#: ../src/ui/dialog/filter-effects-dialog.cpp:2607 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2620 msgid "Dimensions:" msgstr "Dimensies:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2607 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2620 msgid "Width of filter effects region" msgstr "Breedte van filtereffectgebied" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2607 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2620 msgid "Height of filter effects region" msgstr "Hoogte van filtereffectgebied" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2613 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2626 msgid "Indicates the type of matrix operation. The keyword 'matrix' indicates that a full 5x4 matrix of values will be provided. The other keywords represent convenience shortcuts to allow commonly used color operations to be performed without specifying a complete matrix." msgstr "Geeft het type matrixbewerking aan. De optie 'matrix' geeft de mogelijkheid een volledige 5x4-matrix op te geven. De andere opties stellen veelgebruikte kleurbewerkingen voor zonder dat een volledige matrix opgegeven moet worden." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2614 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2627 msgid "Value(s):" msgstr "Waarde(n):" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2629 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2669 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2642 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2682 msgid "Operator:" msgstr "Operator:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2630 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 msgid "K1:" msgstr "K1:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2630 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2631 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2632 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2633 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2645 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2646 msgid "If the arithmetic operation is chosen, each result pixel is computed using the formula k1*i1*i2 + k2*i1 + k3*i2 + k4 where i1 and i2 are the pixel values of the first and second inputs respectively." msgstr "Als de rekenkundige bewerking is gekozen, wordt elke pixel berekend volgens de formule k1*i1*i2 + k2*i1 + k3*i2 + k4 waarbij i1 en i2 de pixelwaarden van respectievelijk de eerste en tweede invoer zijn." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2631 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 msgid "K2:" msgstr "K2:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2632 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2645 msgid "K3:" msgstr "K3:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2633 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2646 msgid "K4:" msgstr "K4:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 msgid "Size:" msgstr "Grootte:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 msgid "width of the convolve matrix" msgstr "Breedte van de convolutiematrix" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 msgid "height of the convolve matrix" msgstr "Hoogte van de convolutiematrix" #. default x: #. default y: -#: ../src/ui/dialog/filter-effects-dialog.cpp:2637 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2650 #: ../src/ui/dialog/object-attributes.cpp:48 msgid "Target:" msgstr "Doel:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2637 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2650 msgid "X coordinate of the target point in the convolve matrix. The convolution is applied to pixels around this point." msgstr "X-coördinaat van het doelpunt in de convolutiematrix. De convolutie wordt toegepast op pixels rondom dit punt." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2637 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2650 msgid "Y coordinate of the target point in the convolve matrix. The convolution is applied to pixels around this point." msgstr "Y-coördinaat van het doelpunt in de convolutiematrix. De convolutie wordt toegepast op pixels rondom dit punt." #. TRANSLATORS: for info on "Kernel", see http://en.wikipedia.org/wiki/Kernel_(matrix) -#: ../src/ui/dialog/filter-effects-dialog.cpp:2639 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2652 msgid "Kernel:" msgstr "Kernmatrix:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2639 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2652 msgid "This matrix describes the convolve operation that is applied to the input image in order to calculate the pixel colors at the output. Different arrangements of values in this matrix result in various possible visual effects. An identity matrix would lead to a motion blur effect (parallel to the matrix diagonal) while a matrix filled with a constant non-zero value would lead to a common blur effect." msgstr "Deze matrix beschrijft de convolutie die wordt toegepast op de afbeelding om de kleurwaarde van de pixels in het resultaat te berekenen. Verschillende waarden voor de getallen in deze matrix resulteren in verschillende visuele effecten. Een identiteitsmatrix resulteert in bewegingsonscherpte (parallel met de diagonaal) terwijl een matrix met een constante niet-nul waarde resulteert in algemene onscherpte." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2641 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 msgid "Divisor:" msgstr "Deler:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2641 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 msgid "After applying the kernelMatrix to the input image to yield a number, that number is divided by divisor to yield the final destination color value. A divisor that is the sum of all the matrix values tends to have an evening effect on the overall color intensity of the result." msgstr "Na toepassen van de kernmatrix op de afbeelding wordt de kleurwaarde gedeeld door de deler om de uiteindelijke kleurwaarde te bepalen. Een deler die gelijk is aan de som van de kleurwaarden geeft een avondeffect aan de algemene kleurintensiteit van het resultaat." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2642 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 msgid "Bias:" msgstr "Vertekening:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2642 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 msgid "This value is added to each component. This is useful to define a constant value as the zero response of the filter." msgstr "Deze waarde wordt opgeteld bij elke kleurcomponent. Dit is handig om een constante als nulwaarde van de filterrespons te definiëren." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2656 msgid "Edge Mode:" msgstr "Randgedrag:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2656 msgid "Determines how to extend the input image as necessary with color values so that the matrix operations can be applied when the kernel is positioned at or near the edge of the input image." msgstr "Bepaalt hoe de afbeelding wordt vergroot met extra pixels opdat matrixoperaties toegepast kunnen worden wanneer de kernmatrix zich op of nabij de rand van de afbeelding bevindt." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2657 msgid "Preserve Alpha" msgstr "Alfa behouden" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2657 msgid "If set, the alpha channel won't be altered by this filter primitive." msgstr "Indien aangevinkt, wordt het alfakanaal door dit filtereffect niet aangepast." #. default: white -#: ../src/ui/dialog/filter-effects-dialog.cpp:2647 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2660 msgid "Diffuse Color:" msgstr "Diffusiekleur:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2647 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2680 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2660 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2693 msgid "Defines the color of the light source" msgstr "Definieert de kleur van de lichtbron" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2648 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2681 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2661 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2694 msgid "Surface Scale:" msgstr "Textuurversterking:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2648 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2681 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2661 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2694 msgid "This value amplifies the heights of the bump map defined by the input alpha channel" msgstr "Deze waarde versterkt de hoogten in de textuurkaart gedefinieerd door het invoeralfakanaal" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2682 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2662 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2695 msgid "Constant:" msgstr "Constante:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2682 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2662 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2695 msgid "This constant affects the Phong lighting model." msgstr "Deze constante beïnvloedt het Phong-belichtingsmodel" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2650 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2684 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2663 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2697 msgid "Kernel Unit Length:" msgstr "Kerneleenheidslengte:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2667 msgid "This defines the intensity of the displacement effect." msgstr "Dit definieert de intensiteit van het verplaatsingseffect." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2668 msgid "X displacement:" msgstr "X-verplaatsing:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2668 msgid "Color component that controls the displacement in the X direction" msgstr "Kleurcomponent die de verplaatsing in horizontale richting bepaalt." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2656 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2669 msgid "Y displacement:" msgstr "Y-verplaatsing:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2656 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2669 msgid "Color component that controls the displacement in the Y direction" msgstr "Kleurcomponent die de verplaatsing in verticale richting bepaalt." #. default: black -#: ../src/ui/dialog/filter-effects-dialog.cpp:2659 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2672 msgid "Flood Color:" msgstr "Vulkleur:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2659 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2672 msgid "The whole filter region will be filled with this color." msgstr "Het hele filtereffectgebied zal worden gevuld met deze kleur." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2663 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 msgid "Standard Deviation:" msgstr "Standaarddeviatie:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2663 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 msgid "The standard deviation for the blur operation." msgstr "De standaarddeviatie voor de vervagingsbewerking." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2669 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2682 msgid "" "Erode: performs \"thinning\" of input image.\n" "Dilate: performs \"fattenning\" of input image." @@ -14771,133 +14636,133 @@ msgstr "" "Eroderen: maakt de afbeelding \"vlakker\".\n" "Aandikken: maakt de afbeelding \"dikker\"." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2673 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2686 msgid "Source of Image:" msgstr "Bron van afbeelding:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2689 msgid "Delta X:" msgstr "Horizontaal verschil:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2689 msgid "This is how far the input image gets shifted to the right" msgstr "Hoe ver de bronafbeelding naar rechts wordt verschoven." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2677 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2690 msgid "Delta Y:" msgstr "Verticaal verschil:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2677 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2690 msgid "This is how far the input image gets shifted downwards" msgstr "Hoe ver de bronafbeelding omlaag wordt verschoven." #. default: white -#: ../src/ui/dialog/filter-effects-dialog.cpp:2680 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2693 msgid "Specular Color:" msgstr "Lichtbronkleur:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2683 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2696 #: ../share/extensions/interp.inx.h:2 msgid "Exponent:" msgstr "Exponent:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2683 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2696 msgid "Exponent for specular term, larger is more \"shiny\"." msgstr "Exponent van de lichtbronkleur; groter is \"glimmender\"." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2692 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2705 msgid "Indicates whether the filter primitive should perform a noise or turbulence function." msgstr "Geeft aan of het filtereffect een ruis- of turbulentiefunctie toepast." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2693 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2706 msgid "Base Frequency:" msgstr "Basisfrequentie:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2694 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2707 msgid "Octaves:" msgstr "Octaven:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2695 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2708 msgid "Seed:" msgstr "Beginwaarde:" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2695 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2708 msgid "The starting number for the pseudo random number generator." msgstr "Het begingetal voor de toevalsgenerator" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2707 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2720 msgid "Add filter primitive" msgstr "Filtereffect toevoegen" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2724 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2737 msgid "The feBlend filter primitive provides 4 image blending modes: screen, multiply, darken and lighten." msgstr "Het feBlend-filtereffect kent vier mengmanieren voor afbeeldingen: scherm, vermenigvuldigen, donkerder en lichter." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2728 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2741 msgid "The feColorMatrix filter primitive applies a matrix transformation to color of each rendered pixel. This allows for effects like turning object to grayscale, modifying color saturation and changing color hue." msgstr "Het feColorMatrix-filtereffect past een matrixoperatie toe op de kleur van elke gerenderde pixel. Dit maakt effecten mogelijk zoals het omzetten van een object naar grijswaarden, het aanpassen van kleurverzadiging en het veranderen van de tint." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2732 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2745 msgid "The feComponentTransfer filter primitive manipulates the input's color components (red, green, blue, and alpha) according to particular transfer functions, allowing operations like brightness and contrast adjustment, color balance, and thresholding." msgstr "Het feComponentTransfer-filtereffect manipuleert de kleurcomponenten (rood, groen, blauw en alfa) van de invoer aan de hand van bepaalde transferfuncties, hetgeen bewerkingen zoals het aanpassen van helderheid en contrast, kleurbalans, en drempelwaarden mogelijk maakt." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2736 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2749 msgid "The feComposite filter primitive composites two images using one of the Porter-Duff blending modes or the arithmetic mode described in SVG standard. Porter-Duff blending modes are essentially logical operations between the corresponding pixel values of the images." msgstr "Het feComposite-filtereffect verenigt twee afbeeldingen met één van de Porter-Duff-mengmodi of de rekenkundige modus beschreven in de SVG-standaard. Porter-Duff-mengmodi zijn in essentie logische bewerkingen tussen de overeenkomende pixelwaarden van de afbeeldingen." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2740 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2753 msgid "The feConvolveMatrix lets you specify a Convolution to be applied on the image. Common effects created using convolution matrices are blur, sharpening, embossing and edge detection. Note that while gaussian blur can be created using this filter primitive, the special gaussian blur primitive is faster and resolution-independent." msgstr "Met het feConvolveMatrix-filtereffect kan een convolutie toegepast worden op de afbeelding. Gebruikelijke effecten die met convolutiematrices gemaakt worden zijn: vervaging, verscherping, reliëf, en randherkenning. Merk op dat hoewel gaussiaans vervagen mogelijk is met dit filtereffect, het speciale filtereffect hiervoor sneller en resolutie-onafhankelijk is." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2744 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2757 msgid "The feDiffuseLighting and feSpecularLighting filter primitives create \"embossed\" shadings. The input's alpha channel is used to provide depth information: higher opacity areas are raised toward the viewer and lower opacity areas recede away from the viewer." msgstr "De feDiffuseLighting- en feSpecularLighting-filtereffecten maken reliëfschaduwen. Het alfakanaal van de invoer wordt gebruikt voor de diepte-informatie: gebieden met grotere ondoorzichtigheid verrijzen ten opzichte van de kijker en gebieden met lagere ondoorzichtigheid wijken terug." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2748 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2761 msgid "The feDisplacementMap filter primitive displaces the pixels in the first input using the second input as a displacement map, that shows from how far the pixel should come from. Classical examples are whirl and pinch effects." msgstr "Het feDisplacementMap-filtereffect verplaatst de pixels in de eerste invoer, daarbij de tweede invoer gebruikend als een verplaatsingskaart die aangeeft van hoever elk pixel moet komen. Klassieke voorbeelden zijn draai- en boetseerefffecten" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2752 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2765 msgid "The feFlood filter primitive fills the region with a given color and opacity. It is usually used as an input to other filters to apply color to a graphic." msgstr "Het feFlood-filtereffect vult een regio met een opgegeven kleur en ondoorzichtigheid. Het wordt normaal gebruikt als invoer voor andere filters om een kleur toe te passen op een tekening." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2756 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2769 msgid "The feGaussianBlur filter primitive uniformly blurs its input. It is commonly used together with feOffset to create a drop shadow effect." msgstr "Het feGaussianBlur-filtereffect vervaagt de invoer uniform. Het wordt vaak samen met feOffset gebruikt om een schaduweffect te creëren." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2760 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2773 msgid "The feImage filter primitive fills the region with an external image or another part of the document." msgstr "Het feImage-filtereffect vult een regio met een externe afbeelding of een ander deel van het document." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2764 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2777 msgid "The feMerge filter primitive composites several temporary images inside the filter primitive to a single image. It uses normal alpha compositing for this. This is equivalent to using several feBlend primitives in 'normal' mode or several feComposite primitives in 'over' mode." msgstr "Het feMerge-filtereffect verenigt verschillende tijdelijke beelden in het filter tot één afbeelding. Hiervoor wordt normale alfamenging gebruikt. Dit is equivalent aan het gebruik van verschillende feBlend-filtereffecten in 'normale' modus of verschillende feComposite-filtereffecten in 'over'-modus." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2768 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2781 msgid "The feMorphology filter primitive provides erode and dilate effects. For single-color objects erode makes the object thinner and dilate makes it thicker." msgstr "Het feMorphology-filtereffect verschaft eroderings- en verdikkingseffecten. Voor objecten met één kleur maakt eroderen het object dunner en verdikken maakt het object dikker." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2772 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2785 msgid "The feOffset filter primitive offsets the image by an user-defined amount. For example, this is useful for drop shadows, where the shadow is in a slightly different position than the actual object." msgstr "Het feOffset-filtereffect verplaatst de afbeelding met een opgegeven hoeveelheid. Dit is handig om bijvoorbeeld schaduwen te maken, waarbij de schaduw en het actuele object zich op bijna dezelfde positie bevinden." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2776 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2789 msgid "The feDiffuseLighting and feSpecularLighting filter primitives create \"embossed\" shadings. The input's alpha channel is used to provide depth information: higher opacity areas are raised toward the viewer and lower opacity areas recede away from the viewer." msgstr "De feDiffuseLighting- en feSpecularLighting-filtereffecten maken \"reliëf\"schaduwen. Het alfakanaal van de invoer wordt gebruikt voor de diepte-informatie: gebieden met grotere ondoorzichtigheid verrijzen ten opzichte van de kijker en gebieden met lagere ondoorzichtigheid wijken terug." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2780 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2793 msgid "The feTile filter primitive tiles a region with its input graphic" msgstr "Het feTile-filtereffect maakt klonen van een regio in de bronafbeelding." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2784 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2797 msgid "The feTurbulence filter primitive renders Perlin noise. This kind of noise is useful in simulating several nature phenomena like clouds, fire and smoke and in generating complex textures like marble or granite." msgstr "Het feTurbulence-filtereffect genereert Perlin-ruis. Dit type ruis simuleert diverse natuurlijke fenomenen zoals wolken, vuur en rook, en genereert complexe texturen zoals marmer of graniet." -#: ../src/ui/dialog/filter-effects-dialog.cpp:2803 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2816 msgid "Duplicate filter primitive" msgstr "Filtereffect dupliceren" -#: ../src/ui/dialog/filter-effects-dialog.cpp:2856 +#: ../src/ui/dialog/filter-effects-dialog.cpp:2869 msgid "Set filter primitive attribute" msgstr "Eigenschap van filtereffect instellen" @@ -15084,7 +14949,7 @@ msgid "Search spirals" msgstr "Spiralen doorzoeken" #: ../src/ui/dialog/find.cpp:102 -#: ../src/widgets/toolbox.cpp:1732 +#: ../src/widgets/toolbox.cpp:1730 msgid "Paths" msgstr "Paden" @@ -15210,7 +15075,7 @@ msgstr "Selecteer een objecttype" msgid "Select a property" msgstr "Selecteer een eigenschap" -#: ../src/ui/dialog/font-substitution.cpp:83 +#: ../src/ui/dialog/font-substitution.cpp:87 msgid "" "\n" "Some fonts are not available and have been substituted." @@ -15218,19 +15083,19 @@ msgstr "" "\n" "Sommige lettertypen zijn niet beschikbaar en werden vervangen." -#: ../src/ui/dialog/font-substitution.cpp:86 +#: ../src/ui/dialog/font-substitution.cpp:90 msgid "Font substitution" msgstr "Lettertypevervanging" -#: ../src/ui/dialog/font-substitution.cpp:105 +#: ../src/ui/dialog/font-substitution.cpp:109 msgid "Select all the affected items" msgstr "Selecteer alle geaffecteerde objecten" -#: ../src/ui/dialog/font-substitution.cpp:110 +#: ../src/ui/dialog/font-substitution.cpp:114 msgid "Don't show this warning again" msgstr "Toon deze waarschuwing niet meer" -#: ../src/ui/dialog/font-substitution.cpp:251 +#: ../src/ui/dialog/font-substitution.cpp:255 msgid "Font '%1' substituted with '%2'" msgstr "Lettertype '%1' vervangen door '%2'" @@ -16061,25 +15926,25 @@ msgstr "Hulplijn ID: %s" msgid "Current: %s" msgstr "Huidig: %s" -#: ../src/ui/dialog/icon-preview.cpp:155 +#: ../src/ui/dialog/icon-preview.cpp:159 #, c-format msgid "%d x %d" msgstr "%d x %d" -#: ../src/ui/dialog/icon-preview.cpp:167 +#: ../src/ui/dialog/icon-preview.cpp:171 msgid "Magnified:" msgstr "Uitvergroot:" -#: ../src/ui/dialog/icon-preview.cpp:236 +#: ../src/ui/dialog/icon-preview.cpp:240 msgid "Actual Size:" msgstr "Huidige grootte:" -#: ../src/ui/dialog/icon-preview.cpp:241 +#: ../src/ui/dialog/icon-preview.cpp:245 msgctxt "Icon preview window" msgid "Sele_ction" msgstr "Sele_ctie" -#: ../src/ui/dialog/icon-preview.cpp:243 +#: ../src/ui/dialog/icon-preview.cpp:247 msgid "Selection only or whole document" msgstr "Alleen selectie of volledig document" @@ -16373,16 +16238,14 @@ msgid "Object paint style" msgstr "Verfstijl objecten" #. Zoom -#. dtw->zoom_status = gtk_spin_button_new_with_range (log(SP_DESKTOP_ZOOM_MIN)/log(2), log(SP_DESKTOP_ZOOM_MAX)/log(2), 0.1); #: ../src/ui/dialog/inkscape-preferences.cpp:376 -#: ../src/widgets/desktop-widget.cpp:636 -#: ../src/widgets/desktop-widget.cpp:639 +#: ../src/widgets/desktop-widget.cpp:635 msgid "Zoom" msgstr "Zoomen" #. Measure #: ../src/ui/dialog/inkscape-preferences.cpp:381 -#: ../src/verbs.cpp:2614 +#: ../src/verbs.cpp:2673 msgctxt "ContextVerb" msgid "Measure" msgstr "Meetlat" @@ -16429,7 +16292,7 @@ msgstr "Indien actief, zal ieder nieuw aangemaakt object selecteren (deselecteer #. Text #: ../src/ui/dialog/inkscape-preferences.cpp:439 -#: ../src/verbs.cpp:2606 +#: ../src/verbs.cpp:2665 msgctxt "ContextVerb" msgid "Text" msgstr "Tekst" @@ -16450,6 +16313,30 @@ msgstr "Waarschuwing lettertypevervanging weergeven" msgid "Show font substitution warning dialog when requested fonts are not available on the system" msgstr "Waarschuwing lettertypevervanging weergeven wanneer de gevraagde lettertypes niet beschikbaar zijn op het systeem" +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Pixel" +msgstr "Pixel" + +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Pica" +msgstr "Pica" + +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Millimeter" +msgstr "Millimeter" + +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Centimeter" +msgstr "Centimeter" + +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Inch" +msgstr "Duim" + +#: ../src/ui/dialog/inkscape-preferences.cpp:451 +msgid "Em square" +msgstr "Em kwadraat" + #. , _("Ex square"), _("Percent") #. , SP_CSS_UNIT_EX, SP_CSS_UNIT_PERCENT #: ../src/ui/dialog/inkscape-preferences.cpp:454 @@ -16489,8 +16376,8 @@ msgstr "Verfemmer" #. Gradient #: ../src/ui/dialog/inkscape-preferences.cpp:478 -#: ../src/widgets/gradient-selector.cpp:150 -#: ../src/widgets/gradient-selector.cpp:302 +#: ../src/widgets/gradient-selector.cpp:151 +#: ../src/widgets/gradient-selector.cpp:303 msgid "Gradient" msgstr "Kleurverloop" @@ -17216,9 +17103,9 @@ msgid "_Click/drag threshold:" msgstr "G_renswaarde klikken/slepen:" #: ../src/ui/dialog/inkscape-preferences.cpp:852 -#: ../src/ui/dialog/inkscape-preferences.cpp:1190 #: ../src/ui/dialog/inkscape-preferences.cpp:1194 -#: ../src/ui/dialog/inkscape-preferences.cpp:1204 +#: ../src/ui/dialog/inkscape-preferences.cpp:1198 +#: ../src/ui/dialog/inkscape-preferences.cpp:1208 msgid "pixels" msgstr "pixels" @@ -17287,151 +17174,164 @@ msgstr "Het aantal spaties dat gebruikt wordt voor het inspringen van geneste el msgid "Path data" msgstr "Data pad" -#: ../src/ui/dialog/inkscape-preferences.cpp:882 -msgid "Allow relative coordinates" -msgstr "Relatieve coördinaten toestaan" +#: ../src/ui/dialog/inkscape-preferences.cpp:883 +msgid "Absolute" +msgstr "Absoluut" + +#: ../src/ui/dialog/inkscape-preferences.cpp:883 +msgid "Relative" +msgstr "Relatief" #: ../src/ui/dialog/inkscape-preferences.cpp:883 -msgid "If set, relative coordinates may be used in path data" -msgstr "Indien aangevinkt, kunnen relatieve coördinaten gebruikt worden in paddata" +#: ../src/ui/dialog/inkscape-preferences.cpp:1173 +msgid "Optimized" +msgstr "Optimaliseren" + +#: ../src/ui/dialog/inkscape-preferences.cpp:887 +msgid "Path string format" +msgstr "Padstringformaat" -#: ../src/ui/dialog/inkscape-preferences.cpp:885 +#: ../src/ui/dialog/inkscape-preferences.cpp:887 +msgid "Path data should be written: only with absolute coordinates, only with relative coordinates, or optimized for string length (mixed absolute and relative coordinates)" +msgstr "Wijze waarop paddata geschreven worden: met alleen absolute coördinatie, met alleen relatieve coördinaten of geoptimaliseerd voor stringlengte (absolute en relatieve coördinaten gemengd)" + +#: ../src/ui/dialog/inkscape-preferences.cpp:889 msgid "Force repeat commands" msgstr "Herhaalcommando's forceren" -#: ../src/ui/dialog/inkscape-preferences.cpp:886 +#: ../src/ui/dialog/inkscape-preferences.cpp:890 msgid "Force repeating of the same path command (for example, 'L 1,2 L 3,4' instead of 'L 1,2 3,4')" msgstr "Herhaling van hetzelfde padcommando forceren (bijvoorbeeld 'L 1,2 L 3,4' in plaats van 'L 1,2 3,4')" -#: ../src/ui/dialog/inkscape-preferences.cpp:888 +#: ../src/ui/dialog/inkscape-preferences.cpp:892 msgid "Numbers" msgstr "Getallen" -#: ../src/ui/dialog/inkscape-preferences.cpp:891 +#: ../src/ui/dialog/inkscape-preferences.cpp:895 msgid "_Numeric precision:" msgstr "Numerieke _precisie:" -#: ../src/ui/dialog/inkscape-preferences.cpp:891 +#: ../src/ui/dialog/inkscape-preferences.cpp:895 msgid "Significant figures of the values written to the SVG file" msgstr "Significante cijfers van waarden weggeschreven in SVG-bestand" -#: ../src/ui/dialog/inkscape-preferences.cpp:894 +#: ../src/ui/dialog/inkscape-preferences.cpp:898 msgid "Minimum _exponent:" msgstr "Minimum _exponent:" -#: ../src/ui/dialog/inkscape-preferences.cpp:894 +#: ../src/ui/dialog/inkscape-preferences.cpp:898 msgid "The smallest number written to SVG is 10 to the power of this exponent; anything smaller is written as zero" msgstr "Het kleinste getal dat naar SVG weggeschreven wordt is 10 tot deze macht. Alles wat kleiner is, wordt weggeschreven als nul." #. Code to add controls for attribute checking options #. Add incorrect style properties options -#: ../src/ui/dialog/inkscape-preferences.cpp:899 +#: ../src/ui/dialog/inkscape-preferences.cpp:903 msgid "Improper Attributes Actions" msgstr "Bij foutieve attributen" -#: ../src/ui/dialog/inkscape-preferences.cpp:901 -#: ../src/ui/dialog/inkscape-preferences.cpp:909 -#: ../src/ui/dialog/inkscape-preferences.cpp:917 +#: ../src/ui/dialog/inkscape-preferences.cpp:905 +#: ../src/ui/dialog/inkscape-preferences.cpp:913 +#: ../src/ui/dialog/inkscape-preferences.cpp:921 msgid "Print warnings" msgstr "Waarschuwingen tonen" -#: ../src/ui/dialog/inkscape-preferences.cpp:902 +#: ../src/ui/dialog/inkscape-preferences.cpp:906 msgid "Print warning if invalid or non-useful attributes found. Database files located in inkscape_data_dir/attributes." msgstr "Waarschuwing tonen bij ongeldige of onbruikbare attributen. Databasebestanden staan in inkscape_data_dir/attributes." -#: ../src/ui/dialog/inkscape-preferences.cpp:903 +#: ../src/ui/dialog/inkscape-preferences.cpp:907 msgid "Remove attributes" msgstr "Attributen verwijderen" -#: ../src/ui/dialog/inkscape-preferences.cpp:904 +#: ../src/ui/dialog/inkscape-preferences.cpp:908 msgid "Delete invalid or non-useful attributes from element tag" msgstr "Ongeldige of onbruikbare attributen van tags verwijderen" #. Add incorrect style properties options -#: ../src/ui/dialog/inkscape-preferences.cpp:907 +#: ../src/ui/dialog/inkscape-preferences.cpp:911 msgid "Inappropriate Style Properties Actions" msgstr "Bij ongeschikte stijleigenschappen" -#: ../src/ui/dialog/inkscape-preferences.cpp:910 +#: ../src/ui/dialog/inkscape-preferences.cpp:914 msgid "Print warning if inappropriate style properties found (i.e. 'font-family' set on a ). Database files located in inkscape_data_dir/attributes." msgstr "Waarschuwing tonen bij ongeschikte stijleigenschappen (bv. 'font-family' op een ). Databasebestanden staan in inkscape_data_dir/attributes." -#: ../src/ui/dialog/inkscape-preferences.cpp:911 -#: ../src/ui/dialog/inkscape-preferences.cpp:919 +#: ../src/ui/dialog/inkscape-preferences.cpp:915 +#: ../src/ui/dialog/inkscape-preferences.cpp:923 msgid "Remove style properties" msgstr "Stijleigenschappen verwijderen" -#: ../src/ui/dialog/inkscape-preferences.cpp:912 +#: ../src/ui/dialog/inkscape-preferences.cpp:916 msgid "Delete inappropriate style properties" msgstr "Ongeschikte stijleigenschappen verwijderen" #. Add default or inherited style properties options -#: ../src/ui/dialog/inkscape-preferences.cpp:915 +#: ../src/ui/dialog/inkscape-preferences.cpp:919 msgid "Non-useful Style Properties Actions" msgstr "Bij niet bruikbare stijleigenschappen" -#: ../src/ui/dialog/inkscape-preferences.cpp:918 +#: ../src/ui/dialog/inkscape-preferences.cpp:922 msgid "Print warning if redundant style properties found (i.e. if a property has the default value and a different value is not inherited or if value is the same as would be inherited). Database files located in inkscape_data_dir/attributes." msgstr "Waarschuwing tonen bij redundante stijleigenschappen (bv. indien een eigenschap ingesteld is op de standaardwaarde, een andere waarde niet overgeërfd wordt of indien de waarde identiek is aan de overgeërfde waarde). Databasebestanden staan in inkscape_data_dir/attributes." -#: ../src/ui/dialog/inkscape-preferences.cpp:920 +#: ../src/ui/dialog/inkscape-preferences.cpp:924 msgid "Delete redundant style properties" msgstr "Redundante stijleigenschappen verwijderen" -#: ../src/ui/dialog/inkscape-preferences.cpp:922 +#: ../src/ui/dialog/inkscape-preferences.cpp:926 msgid "Check Attributes and Style Properties on" msgstr "Attributen en stijleigenschappen nakijken bij" -#: ../src/ui/dialog/inkscape-preferences.cpp:924 +#: ../src/ui/dialog/inkscape-preferences.cpp:928 msgid "Reading" msgstr "Lezen" -#: ../src/ui/dialog/inkscape-preferences.cpp:925 +#: ../src/ui/dialog/inkscape-preferences.cpp:929 msgid "Check attributes and style properties on reading in SVG files (including those internal to Inkscape which will slow down startup)" msgstr "Attributen en stijleigenschappen nakijken bij het lezen van SVG-bestanden (inclusief de interne Inkscapebestanden hetgeen het opstarten zal vertragen)" -#: ../src/ui/dialog/inkscape-preferences.cpp:926 +#: ../src/ui/dialog/inkscape-preferences.cpp:930 msgid "Editing" msgstr "Bewerken" -#: ../src/ui/dialog/inkscape-preferences.cpp:927 +#: ../src/ui/dialog/inkscape-preferences.cpp:931 msgid "Check attributes and style properties while editing SVG files (may slow down Inkscape, mostly useful for debugging)" msgstr "Attributen en stijleigenschappen nakijken bij het bewerken van SVG-bestanden (kan Inkscape vertragen, bruikbaar bij het debuggen)" -#: ../src/ui/dialog/inkscape-preferences.cpp:928 +#: ../src/ui/dialog/inkscape-preferences.cpp:932 msgid "Writing" msgstr "Bewaren" -#: ../src/ui/dialog/inkscape-preferences.cpp:929 +#: ../src/ui/dialog/inkscape-preferences.cpp:933 msgid "Check attributes and style properties on writing out SVG files" msgstr "Attributen en stijleigenschappen bewaren bij het bewaren van SVG-bestanden." -#: ../src/ui/dialog/inkscape-preferences.cpp:931 +#: ../src/ui/dialog/inkscape-preferences.cpp:935 msgid "SVG output" msgstr "SVG-uitvoer" #. TRANSLATORS: see http://www.newsandtech.com/issues/2004/03-04/pt/03-04_rendering.htm -#: ../src/ui/dialog/inkscape-preferences.cpp:937 +#: ../src/ui/dialog/inkscape-preferences.cpp:941 msgid "Perceptual" msgstr "Perceptueel" -#: ../src/ui/dialog/inkscape-preferences.cpp:937 +#: ../src/ui/dialog/inkscape-preferences.cpp:941 msgid "Relative Colorimetric" msgstr "Relatief colorimetrisch" -#: ../src/ui/dialog/inkscape-preferences.cpp:937 +#: ../src/ui/dialog/inkscape-preferences.cpp:941 msgid "Absolute Colorimetric" msgstr "Absoluut colorimetrisch" -#: ../src/ui/dialog/inkscape-preferences.cpp:941 +#: ../src/ui/dialog/inkscape-preferences.cpp:945 msgid "(Note: Color management has been disabled in this build)" msgstr "(Opmerking: kleurbeheer is niet beschikbaar in deze versie.)" -#: ../src/ui/dialog/inkscape-preferences.cpp:945 +#: ../src/ui/dialog/inkscape-preferences.cpp:949 msgid "Display adjustment" msgstr "Weergavebijstelling" -#: ../src/ui/dialog/inkscape-preferences.cpp:955 +#: ../src/ui/dialog/inkscape-preferences.cpp:959 #, c-format msgid "" "The ICC profile to use to calibrate display output.\n" @@ -17440,135 +17340,135 @@ msgstr "" "Te ICC-kleurprofiel gebruiken om schermuitvoer te kalibreren.\n" "Doorzochte mappen: %s" -#: ../src/ui/dialog/inkscape-preferences.cpp:956 +#: ../src/ui/dialog/inkscape-preferences.cpp:960 msgid "Display profile:" msgstr "Weergaveprofiel:" -#: ../src/ui/dialog/inkscape-preferences.cpp:961 +#: ../src/ui/dialog/inkscape-preferences.cpp:965 msgid "Retrieve profile from display" msgstr "Profiel uit weergaveapparaat ophalen" -#: ../src/ui/dialog/inkscape-preferences.cpp:964 +#: ../src/ui/dialog/inkscape-preferences.cpp:968 msgid "Retrieve profiles from those attached to displays via XICC" msgstr "Verkrijg profielen van die verbonden aan weergaveapparaten via XICC" -#: ../src/ui/dialog/inkscape-preferences.cpp:966 +#: ../src/ui/dialog/inkscape-preferences.cpp:970 msgid "Retrieve profiles from those attached to displays" msgstr "Verkrijg profielen van die verbonden aan weergaveapparaten" -#: ../src/ui/dialog/inkscape-preferences.cpp:971 +#: ../src/ui/dialog/inkscape-preferences.cpp:975 msgid "Display rendering intent:" msgstr "Rendermethode voor weergave:" -#: ../src/ui/dialog/inkscape-preferences.cpp:972 +#: ../src/ui/dialog/inkscape-preferences.cpp:976 msgid "The rendering intent to use to calibrate display output" msgstr "De rendermethode die gebruikt moet worden voor het kalibreren van de weergave" -#: ../src/ui/dialog/inkscape-preferences.cpp:974 +#: ../src/ui/dialog/inkscape-preferences.cpp:978 msgid "Proofing" msgstr "Visuele controle" -#: ../src/ui/dialog/inkscape-preferences.cpp:976 +#: ../src/ui/dialog/inkscape-preferences.cpp:980 msgid "Simulate output on screen" msgstr "Uitvoer op scherm simuleren" -#: ../src/ui/dialog/inkscape-preferences.cpp:978 +#: ../src/ui/dialog/inkscape-preferences.cpp:982 msgid "Simulates output of target device" msgstr "Simuleert de uitvoer van het doelapparaat" -#: ../src/ui/dialog/inkscape-preferences.cpp:980 +#: ../src/ui/dialog/inkscape-preferences.cpp:984 msgid "Mark out of gamut colors" msgstr "Kleuren die buiten bereik vallen markeren" -#: ../src/ui/dialog/inkscape-preferences.cpp:982 +#: ../src/ui/dialog/inkscape-preferences.cpp:986 msgid "Highlights colors that are out of gamut for the target device" msgstr "Markeert kleuren die buiten het bereik van het doelapparaat liggen" -#: ../src/ui/dialog/inkscape-preferences.cpp:994 +#: ../src/ui/dialog/inkscape-preferences.cpp:998 msgid "Out of gamut warning color:" msgstr "Buitenbereikwaarschuwingskleur:" -#: ../src/ui/dialog/inkscape-preferences.cpp:995 +#: ../src/ui/dialog/inkscape-preferences.cpp:999 msgid "Selects the color used for out of gamut warning" msgstr "Selecteert de kleur die voor de buitenbereikwaarschuwing gebruikt wordt" -#: ../src/ui/dialog/inkscape-preferences.cpp:997 +#: ../src/ui/dialog/inkscape-preferences.cpp:1001 msgid "Device profile:" msgstr "Apparaatprofiel:" -#: ../src/ui/dialog/inkscape-preferences.cpp:998 +#: ../src/ui/dialog/inkscape-preferences.cpp:1002 msgid "The ICC profile to use to simulate device output" msgstr "ICC-profiel om apparaatuitvoer mee te simuleren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1001 +#: ../src/ui/dialog/inkscape-preferences.cpp:1005 msgid "Device rendering intent:" msgstr "Rendermethode voor apparaat:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1002 +#: ../src/ui/dialog/inkscape-preferences.cpp:1006 msgid "The rendering intent to use to calibrate device output" msgstr "De te gebruiken rendermethode voor het kalibreren van de apparaatuitvoer" -#: ../src/ui/dialog/inkscape-preferences.cpp:1004 +#: ../src/ui/dialog/inkscape-preferences.cpp:1008 msgid "Black point compensation" msgstr "Zwartpuntcompensatie" -#: ../src/ui/dialog/inkscape-preferences.cpp:1006 +#: ../src/ui/dialog/inkscape-preferences.cpp:1010 msgid "Enables black point compensation" msgstr "Zwartpuntcompensatie inschakelen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1008 +#: ../src/ui/dialog/inkscape-preferences.cpp:1012 msgid "Preserve black" msgstr "Zwart behouden" -#: ../src/ui/dialog/inkscape-preferences.cpp:1015 +#: ../src/ui/dialog/inkscape-preferences.cpp:1019 msgid "(LittleCMS 1.15 or later required)" msgstr "(LittleCMS 1.15 of nieuwer is vereist)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1017 +#: ../src/ui/dialog/inkscape-preferences.cpp:1021 msgid "Preserve K channel in CMYK -> CMYK transforms" msgstr "K-kanaal behouden in CMYK->CMYK-transformaties" -#: ../src/ui/dialog/inkscape-preferences.cpp:1031 -#: ../src/widgets/sp-color-icc-selector.cpp:325 -#: ../src/widgets/sp-color-icc-selector.cpp:678 +#: ../src/ui/dialog/inkscape-preferences.cpp:1035 +#: ../src/widgets/sp-color-icc-selector.cpp:474 +#: ../src/widgets/sp-color-icc-selector.cpp:766 msgid "" msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1076 +#: ../src/ui/dialog/inkscape-preferences.cpp:1080 msgid "Color management" msgstr "Kleurbeheer" #. Autosave options -#: ../src/ui/dialog/inkscape-preferences.cpp:1079 +#: ../src/ui/dialog/inkscape-preferences.cpp:1083 msgid "Enable autosave (requires restart)" msgstr "Auto-opslaan inschakelen (vereist herstart)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1080 +#: ../src/ui/dialog/inkscape-preferences.cpp:1084 msgid "Automatically save the current document(s) at a given interval, thus minimizing loss in case of a crash" msgstr "Huidig(e) document(en) automatisch opslaan na een gegeven interval om verlies te beperken bij een crash" -#: ../src/ui/dialog/inkscape-preferences.cpp:1086 +#: ../src/ui/dialog/inkscape-preferences.cpp:1090 msgctxt "Filesystem" msgid "Autosave _directory:" msgstr "Map voor _auto-opslaan:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1086 +#: ../src/ui/dialog/inkscape-preferences.cpp:1090 msgid "The directory where autosaves will be written. This should be an absolute path (starts with / on UNIX or a drive letter such as C: on Windows). " msgstr "De map waar automatisch bewaarde bestanden staan. Dit zou een absoluut pad moeten zijn (start met / op UNIX en een schijfletter zoals C: op Windows)." -#: ../src/ui/dialog/inkscape-preferences.cpp:1088 +#: ../src/ui/dialog/inkscape-preferences.cpp:1092 msgid "_Interval (in minutes):" msgstr "I_nterval (in minuten):" -#: ../src/ui/dialog/inkscape-preferences.cpp:1088 +#: ../src/ui/dialog/inkscape-preferences.cpp:1092 msgid "Interval (in minutes) at which document will be autosaved" msgstr "Interval (in minuten) voor het automatisch opslaan van documenten" -#: ../src/ui/dialog/inkscape-preferences.cpp:1090 +#: ../src/ui/dialog/inkscape-preferences.cpp:1094 msgid "_Maximum number of autosaves:" msgstr "_Maximum aantal auto-bewaringen:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1090 +#: ../src/ui/dialog/inkscape-preferences.cpp:1094 msgid "Maximum number of autosaved files; use this to limit the storage space used" msgstr "Maximum aantal automatisch opgeslagen bestanden; gebruik deze instelling om de ingenomen opslagruimte te beperken" @@ -17584,244 +17484,240 @@ msgstr "Maximum aantal automatisch opgeslagen bestanden; gebruik deze instelling #. _autosave_autosave_interval.signal_changed().connect( sigc::ptr_fun(inkscape_autosave_init), TRUE ); #. #. ----------- -#: ../src/ui/dialog/inkscape-preferences.cpp:1105 +#: ../src/ui/dialog/inkscape-preferences.cpp:1109 msgid "Autosave" msgstr "Auto-opslaan" -#: ../src/ui/dialog/inkscape-preferences.cpp:1109 +#: ../src/ui/dialog/inkscape-preferences.cpp:1113 msgid "Open Clip Art Library _Server Name:" msgstr "'Open Clip Art Library' _servernaam:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1110 +#: ../src/ui/dialog/inkscape-preferences.cpp:1114 msgid "The server name of the Open Clip Art Library webdav server; it's used by the Import and Export to OCAL function" msgstr "De servernaam van de weddav-server van de 'Open Clip Art'-mediatheek: deze wordt gebruikt bij het importeren uit en exporteren naar OCAL" -#: ../src/ui/dialog/inkscape-preferences.cpp:1112 +#: ../src/ui/dialog/inkscape-preferences.cpp:1116 msgid "Open Clip Art Library _Username:" msgstr "'Open Clip Art Library' _gebruikersnaam:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1113 +#: ../src/ui/dialog/inkscape-preferences.cpp:1117 msgid "The username used to log into Open Clip Art Library" msgstr "De gebruikersnaam om in te loggen in de 'Open Clip Art'-mediatheek" -#: ../src/ui/dialog/inkscape-preferences.cpp:1115 +#: ../src/ui/dialog/inkscape-preferences.cpp:1119 msgid "Open Clip Art Library _Password:" msgstr "'Open Clip Art Library' _wachtwoord:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1116 +#: ../src/ui/dialog/inkscape-preferences.cpp:1120 msgid "The password used to log into Open Clip Art Library" msgstr "Het wachtwoord om in te loggen in de 'Open Clip Art'-mediatheek" -#: ../src/ui/dialog/inkscape-preferences.cpp:1117 +#: ../src/ui/dialog/inkscape-preferences.cpp:1121 msgid "Open Clip Art" msgstr "Open Clip Art" -#: ../src/ui/dialog/inkscape-preferences.cpp:1122 +#: ../src/ui/dialog/inkscape-preferences.cpp:1126 msgid "Behavior" msgstr "Gedrag" -#: ../src/ui/dialog/inkscape-preferences.cpp:1126 +#: ../src/ui/dialog/inkscape-preferences.cpp:1130 msgid "_Simplification threshold:" msgstr "_Grenswaarde voor vereenvoudiging:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1127 +#: ../src/ui/dialog/inkscape-preferences.cpp:1131 msgid "How strong is the Node tool's Simplify command by default. If you invoke this command several times in quick succession, it will act more and more aggressively; invoking it again after a pause restores the default threshold." msgstr "De standaardsterkte van de 'Vereenvoudigen'-opdracht. Als u deze opdracht enkele malen vlak na elkaar uitvoert, zal dat steeds meer effect hebben; uitvoeren na een korte pauze herstelt de standaard grenswaarde." -#: ../src/ui/dialog/inkscape-preferences.cpp:1129 +#: ../src/ui/dialog/inkscape-preferences.cpp:1133 msgid "Color stock markers the same color as object" msgstr "Kleur standaardmarkering is deze van object" -#: ../src/ui/dialog/inkscape-preferences.cpp:1130 +#: ../src/ui/dialog/inkscape-preferences.cpp:1134 msgid "Color custom markers the same color as object" msgstr "Kleur aangepaste markering is deze van object" -#: ../src/ui/dialog/inkscape-preferences.cpp:1131 -#: ../src/ui/dialog/inkscape-preferences.cpp:1341 +#: ../src/ui/dialog/inkscape-preferences.cpp:1135 +#: ../src/ui/dialog/inkscape-preferences.cpp:1345 msgid "Update marker color when object color changes" msgstr "Markeringskleur bijwerken bij verandering objectkleur" # De volgende zes strings beschrijven wat enkele toetsen doen. # Een kleine letter maakt duidelijker dat ze een voortzetting zijn. #. Selecting options -#: ../src/ui/dialog/inkscape-preferences.cpp:1134 +#: ../src/ui/dialog/inkscape-preferences.cpp:1138 msgid "Select in all layers" msgstr "In alle lagen selecteren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1135 +#: ../src/ui/dialog/inkscape-preferences.cpp:1139 msgid "Select only within current layer" msgstr "Alleen binnen de huidige laag selecteren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1136 +#: ../src/ui/dialog/inkscape-preferences.cpp:1140 msgid "Select in current layer and sublayers" msgstr "In huidige laag en onderliggende lagen selecteren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1137 +#: ../src/ui/dialog/inkscape-preferences.cpp:1141 msgid "Ignore hidden objects and layers" msgstr "Verborgen objecten en lagen negeren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1138 +#: ../src/ui/dialog/inkscape-preferences.cpp:1142 msgid "Ignore locked objects and layers" msgstr "Vergrendelde objecten en lagen negeren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1139 +#: ../src/ui/dialog/inkscape-preferences.cpp:1143 msgid "Deselect upon layer change" msgstr "Deselecteren bij veranderen van laag" -#: ../src/ui/dialog/inkscape-preferences.cpp:1142 +#: ../src/ui/dialog/inkscape-preferences.cpp:1146 msgid "Uncheck this to be able to keep the current objects selected when the current layer changes" msgstr "Deselecteer om geselecteerde objecten geselecteerd te houden als de huidige laag verandert" # Dit staat voor de vorige zes strings. -#: ../src/ui/dialog/inkscape-preferences.cpp:1144 +#: ../src/ui/dialog/inkscape-preferences.cpp:1148 msgid "Ctrl+A, Tab, Shift+Tab" msgstr "Ctrl+A, Tab, Shift+Tab" -#: ../src/ui/dialog/inkscape-preferences.cpp:1146 +#: ../src/ui/dialog/inkscape-preferences.cpp:1150 msgid "Make keyboard selection commands work on objects in all layers" msgstr "Toetsenbordselectiecommando's werken op objecten in alle lagen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1148 +#: ../src/ui/dialog/inkscape-preferences.cpp:1152 msgid "Make keyboard selection commands work on objects in current layer only" msgstr "Toetsenbordselectiecommando's werken alleen op objecten in de huidige laag" -#: ../src/ui/dialog/inkscape-preferences.cpp:1150 +#: ../src/ui/dialog/inkscape-preferences.cpp:1154 msgid "Make keyboard selection commands work on objects in current layer and all its sublayers" msgstr "Toetsenbordselectiecommando's werken op objecten in de huidige laag en alle onderliggende lagen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1152 +#: ../src/ui/dialog/inkscape-preferences.cpp:1156 msgid "Uncheck this to be able to select objects that are hidden (either by themselves or by being in a hidden layer)" msgstr "Deselecteer om objecten te kunnen selecteren die verborgen zijn (zelf verborgen of doordat ze in een verborgen laag zitten)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1154 +#: ../src/ui/dialog/inkscape-preferences.cpp:1158 msgid "Uncheck this to be able to select objects that are locked (either by themselves or by being in a locked layer)" msgstr "Deselecteer om objecten te kunnen selecteren die vergrendeld zijn (zelf vergrendeld of doordat ze in een vergrendelde laag zitten)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1156 +#: ../src/ui/dialog/inkscape-preferences.cpp:1160 msgid "Wrap when cycling objects in z-order" msgstr "In cycli gaan door objecten bij onderselectie" -#: ../src/ui/dialog/inkscape-preferences.cpp:1158 +#: ../src/ui/dialog/inkscape-preferences.cpp:1162 msgid "Alt+Scroll Wheel" msgstr "Alt+Scrollwiel" -#: ../src/ui/dialog/inkscape-preferences.cpp:1160 +#: ../src/ui/dialog/inkscape-preferences.cpp:1164 msgid "Wrap around at start and end when cycling objects in z-order" msgstr "Bij het bereiken van het onderste object terug naar het bovenste bij onderselectie" -#: ../src/ui/dialog/inkscape-preferences.cpp:1162 +#: ../src/ui/dialog/inkscape-preferences.cpp:1166 msgid "Selecting" msgstr "Selecteren" #. Transforms options -#: ../src/ui/dialog/inkscape-preferences.cpp:1165 -#: ../src/widgets/select-toolbar.cpp:572 +#: ../src/ui/dialog/inkscape-preferences.cpp:1169 +#: ../src/widgets/select-toolbar.cpp:576 msgid "Scale stroke width" msgstr "Lijndikte mee schalen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1166 +#: ../src/ui/dialog/inkscape-preferences.cpp:1170 msgid "Scale rounded corners in rectangles" msgstr "Afronding van hoeken mee schalen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1167 +#: ../src/ui/dialog/inkscape-preferences.cpp:1171 msgid "Transform gradients" msgstr "Kleurverlopen transformeren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1168 +#: ../src/ui/dialog/inkscape-preferences.cpp:1172 msgid "Transform patterns" msgstr "Patronen transformeren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1169 -msgid "Optimized" -msgstr "Optimaliseren" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1170 +#: ../src/ui/dialog/inkscape-preferences.cpp:1174 msgid "Preserved" msgstr "Behouden" -#: ../src/ui/dialog/inkscape-preferences.cpp:1173 -#: ../src/widgets/select-toolbar.cpp:573 +#: ../src/ui/dialog/inkscape-preferences.cpp:1177 +#: ../src/widgets/select-toolbar.cpp:577 msgid "When scaling objects, scale the stroke width by the same proportion" msgstr "Wanneer objecten worden vergroot of verkleind, de lijndikte evenveel mee vergroten of verkleinen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1175 -#: ../src/widgets/select-toolbar.cpp:584 +#: ../src/ui/dialog/inkscape-preferences.cpp:1179 +#: ../src/widgets/select-toolbar.cpp:588 msgid "When scaling rectangles, scale the radii of rounded corners" msgstr "Wanneer rechthoeken worden vergroot of verkleind, de straal van de hoek mee vergroten of verkleinen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1177 -#: ../src/widgets/select-toolbar.cpp:595 +#: ../src/ui/dialog/inkscape-preferences.cpp:1181 +#: ../src/widgets/select-toolbar.cpp:599 msgid "Move gradients (in fill or stroke) along with the objects" msgstr "Kleurverlopen (bij vulling of lijn) verplaatsen samen met de objecten" -#: ../src/ui/dialog/inkscape-preferences.cpp:1179 -#: ../src/widgets/select-toolbar.cpp:606 +#: ../src/ui/dialog/inkscape-preferences.cpp:1183 +#: ../src/widgets/select-toolbar.cpp:610 msgid "Move patterns (in fill or stroke) along with the objects" msgstr "Patronen (bij vulling of lijn) verplaatsen samen met de objecten" -#: ../src/ui/dialog/inkscape-preferences.cpp:1180 +#: ../src/ui/dialog/inkscape-preferences.cpp:1184 msgid "Store transformation" msgstr "Opslaan van transformaties" -#: ../src/ui/dialog/inkscape-preferences.cpp:1182 +#: ../src/ui/dialog/inkscape-preferences.cpp:1186 msgid "If possible, apply transformation to objects without adding a transform= attribute" msgstr "Pas, indien mogelijk, transformaties op objecten toe zonder een 'transform='-waarde toe te voegen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1184 +#: ../src/ui/dialog/inkscape-preferences.cpp:1188 msgid "Always store transformation as a transform= attribute on objects" msgstr "Transformaties altijd opslaan als een 'transform='-waarde bij objecten." -#: ../src/ui/dialog/inkscape-preferences.cpp:1186 +#: ../src/ui/dialog/inkscape-preferences.cpp:1190 msgid "Transforms" msgstr "Transformaties" -#: ../src/ui/dialog/inkscape-preferences.cpp:1190 +#: ../src/ui/dialog/inkscape-preferences.cpp:1194 msgid "Mouse _wheel scrolls by:" msgstr "_Muiswiel verschuift met:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1191 +#: ../src/ui/dialog/inkscape-preferences.cpp:1195 msgid "One mouse wheel notch scrolls by this distance in screen pixels (horizontally with Shift)" msgstr "Elke muiswielstap verschuift het beeld dit aantal pixels (houd Shift ingedrukt om horizontaal te verschuiven)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1192 +#: ../src/ui/dialog/inkscape-preferences.cpp:1196 msgid "Ctrl+arrows" msgstr "Ctrl+pijltjestoetsen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1194 +#: ../src/ui/dialog/inkscape-preferences.cpp:1198 msgid "Sc_roll by:" msgstr "_Verschuiven met:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1195 +#: ../src/ui/dialog/inkscape-preferences.cpp:1199 msgid "Pressing Ctrl+arrow key scrolls by this distance (in screen pixels)" msgstr "Ctrl en een pijltjestoets indrukken verschuift dit aantal pixels" -#: ../src/ui/dialog/inkscape-preferences.cpp:1197 +#: ../src/ui/dialog/inkscape-preferences.cpp:1201 msgid "_Acceleration:" msgstr "V_ersnelling:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1198 +#: ../src/ui/dialog/inkscape-preferences.cpp:1202 msgid "Pressing and holding Ctrl+arrow will gradually speed up scrolling (0 for no acceleration)" msgstr "Ctrl en een pijltjestoets ingedrukt houden zal versnellend verschuiven (0 voor geen versnelling)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1199 +#: ../src/ui/dialog/inkscape-preferences.cpp:1203 msgid "Autoscrolling" msgstr "Automatisch verschuiven" -#: ../src/ui/dialog/inkscape-preferences.cpp:1201 +#: ../src/ui/dialog/inkscape-preferences.cpp:1205 msgid "_Speed:" msgstr "_Snelheid:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1202 +#: ../src/ui/dialog/inkscape-preferences.cpp:1206 msgid "How fast the canvas autoscrolls when you drag beyond canvas edge (0 to turn autoscroll off)" msgstr "Hoe snel het canvas automatisch verschuift wanneer u voorbij de paginarand sleept (0 om dit uit te schakelen)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1204 +#: ../src/ui/dialog/inkscape-preferences.cpp:1208 #: ../src/ui/dialog/tracedialog.cpp:522 #: ../src/ui/dialog/tracedialog.cpp:721 msgid "_Threshold:" msgstr "_Grenswaarde:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1205 +#: ../src/ui/dialog/inkscape-preferences.cpp:1209 msgid "How far (in screen pixels) you need to be from the canvas edge to trigger autoscroll; positive is outside the canvas, negative is within the canvas" msgstr "Hoe ver de cursor van de canvasrand moet zijn verwijderd om het automatisch verschuiven te activeren; positieve getallen voor buiten het canvas, negatieve voor er binnen" @@ -17830,639 +17726,658 @@ msgstr "Hoe ver de cursor van de canvasrand moet zijn verwijderd om het automati #. _page_scrolling.add_line( false, "", _scroll_space, "", #. _("When on, pressing and holding Space and dragging with left mouse button pans canvas (as in Adobe Illustrator); when off, Space temporarily switches to Selector tool (default)")); #. -#: ../src/ui/dialog/inkscape-preferences.cpp:1211 +#: ../src/ui/dialog/inkscape-preferences.cpp:1215 msgid "Mouse wheel zooms by default" msgstr "Standaard zoom muiswiel" -#: ../src/ui/dialog/inkscape-preferences.cpp:1213 +#: ../src/ui/dialog/inkscape-preferences.cpp:1217 msgid "When on, mouse wheel zooms without Ctrl and scrolls canvas with Ctrl; when off, it zooms with Ctrl and scrolls without Ctrl" msgstr "Indien aangevinkt, zal de muis zoomen zonder Ctrl en het canvas scrollen met Ctrl; indien uitgeschakeld, zal de muis zoomen met Ctrl en scrollen zonder Ctrl" -#: ../src/ui/dialog/inkscape-preferences.cpp:1214 +#: ../src/ui/dialog/inkscape-preferences.cpp:1218 msgid "Scrolling" msgstr "Verschuiven" #. Snapping options -#: ../src/ui/dialog/inkscape-preferences.cpp:1217 +#: ../src/ui/dialog/inkscape-preferences.cpp:1221 msgid "Enable snap indicator" msgstr "Kleefindicator activeren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1219 +#: ../src/ui/dialog/inkscape-preferences.cpp:1223 msgid "After snapping, a symbol is drawn at the point that has snapped" msgstr "Na het kleven wordt er een symbool getekend op het punt waaraan gekleefd werd" -#: ../src/ui/dialog/inkscape-preferences.cpp:1222 +#: ../src/ui/dialog/inkscape-preferences.cpp:1226 msgid "_Delay (in ms):" msgstr "_Vertraging (ms):" -#: ../src/ui/dialog/inkscape-preferences.cpp:1223 +#: ../src/ui/dialog/inkscape-preferences.cpp:1227 msgid "Postpone snapping as long as the mouse is moving, and then wait an additional fraction of a second. This additional delay is specified here. When set to zero or to a very small number, snapping will be immediate." msgstr "Het kleven uitstellen zolang de muis beweegt en wacht een bepaalde fractie van een seconde. Deze extra vertraging wordt hier opgegeven. Indien ingesteld op nul of een zeer klein getal, vindt het kleven onmiddellijk plaats." -#: ../src/ui/dialog/inkscape-preferences.cpp:1225 +#: ../src/ui/dialog/inkscape-preferences.cpp:1229 msgid "Only snap the node closest to the pointer" msgstr "Enkel het knooppunt dichtst bij de cursor kleeft" -#: ../src/ui/dialog/inkscape-preferences.cpp:1227 +#: ../src/ui/dialog/inkscape-preferences.cpp:1231 msgid "Only try to snap the node that is initially closest to the mouse pointer" msgstr "Enkel het knooppunt dat initieel het dichtst bij de muiscursor is, proberen kleven" -#: ../src/ui/dialog/inkscape-preferences.cpp:1230 +#: ../src/ui/dialog/inkscape-preferences.cpp:1234 msgid "_Weight factor:" msgstr "W_egingsfactor:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1231 +#: ../src/ui/dialog/inkscape-preferences.cpp:1235 msgid "When multiple snap solutions are found, then Inkscape can either prefer the closest transformation (when set to 0), or prefer the node that was initially the closest to the pointer (when set to 1)" msgstr "Wanneer er meerdere mogelijkheden voor kleven zijn, dan kan Inkscape kiezen tussen de meest nabije transformatie (indien ingesteld op 0) of het knooppunt dat initeel het dichtst bij de muiscursor was (indien ingesteld op 1)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1233 +#: ../src/ui/dialog/inkscape-preferences.cpp:1237 msgid "Snap the mouse pointer when dragging a constrained knot" msgstr "De muis kleeft bij het slepen van een beperkt knooppunt" -#: ../src/ui/dialog/inkscape-preferences.cpp:1235 +#: ../src/ui/dialog/inkscape-preferences.cpp:1239 msgid "When dragging a knot along a constraint line, then snap the position of the mouse pointer instead of snapping the projection of the knot onto the constraint line" msgstr "Bij het verslepen van een beperkte lijn, de positie van de muis kleven in plaats van de projectie van het knooppunt op de beperkte lijn" -#: ../src/ui/dialog/inkscape-preferences.cpp:1237 +#: ../src/ui/dialog/inkscape-preferences.cpp:1241 msgid "Snapping" msgstr "Kleven" #. nudgedistance is limited to 1000 in select-context.cpp: use the same limit here -#: ../src/ui/dialog/inkscape-preferences.cpp:1242 +#: ../src/ui/dialog/inkscape-preferences.cpp:1246 msgid "_Arrow keys move by:" msgstr "P_ijltjestoetsen verschuiven met:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1243 +#: ../src/ui/dialog/inkscape-preferences.cpp:1247 msgid "Pressing an arrow key moves selected object(s) or node(s) by this distance" msgstr "Een pijltjestoets indrukken verplaatst de geselecteerde objecten of knooppunten met deze afstand" #. defaultscale is limited to 1000 in select-context.cpp: use the same limit here -#: ../src/ui/dialog/inkscape-preferences.cpp:1246 +#: ../src/ui/dialog/inkscape-preferences.cpp:1250 msgid "> and < _scale by:" msgstr "> en < _schalen met:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1247 +#: ../src/ui/dialog/inkscape-preferences.cpp:1251 msgid "Pressing > or < scales selection up or down by this increment" msgstr "Op > of < drukken vergroot of verkleint de selectie met deze waarde" -#: ../src/ui/dialog/inkscape-preferences.cpp:1249 +#: ../src/ui/dialog/inkscape-preferences.cpp:1253 msgid "_Inset/Outset by:" msgstr "_Vernauwen/verwijden met:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1250 +#: ../src/ui/dialog/inkscape-preferences.cpp:1254 msgid "Inset and Outset commands displace the path by this distance" msgstr "Vernauwing en verwijding verplaatsen het pad met deze afstand" -#: ../src/ui/dialog/inkscape-preferences.cpp:1251 +#: ../src/ui/dialog/inkscape-preferences.cpp:1255 msgid "Compass-like display of angles" msgstr "Hoeken weergeven als een kompas" -#: ../src/ui/dialog/inkscape-preferences.cpp:1253 +#: ../src/ui/dialog/inkscape-preferences.cpp:1257 msgid "When on, angles are displayed with 0 at north, 0 to 360 range, positive clockwise; otherwise with 0 at east, -180 to 180 range, positive counterclockwise" msgstr "Indien aangevinkt, dan wijst 0 naar het noorden, en lopen de hoeken van 0 tot 360 graden met de klok mee; indien uit, dan wijst 0 naar het oosten, en lopen de hoeken van -180 tot 180 graden, tegen de klok in" -#: ../src/ui/dialog/inkscape-preferences.cpp:1259 +#: ../src/ui/dialog/inkscape-preferences.cpp:1263 msgid "_Rotation snaps every:" msgstr "D_raaien in stappen van:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1259 +#: ../src/ui/dialog/inkscape-preferences.cpp:1263 msgid "degrees" msgstr "graden" -#: ../src/ui/dialog/inkscape-preferences.cpp:1260 +#: ../src/ui/dialog/inkscape-preferences.cpp:1264 msgid "Rotating with Ctrl pressed snaps every that much degrees; also, pressing [ or ] rotates by this amount" msgstr "Het aantal graden per stap wanneer Ctrl ingedrukt wordt tijdens het draaien; de toetsen [ en ] draaien ditzelfde aantal graden" -#: ../src/ui/dialog/inkscape-preferences.cpp:1261 +#: ../src/ui/dialog/inkscape-preferences.cpp:1265 msgid "Relative snapping of guideline angles" msgstr "Relatief kleven van hulplijnhoeken" -#: ../src/ui/dialog/inkscape-preferences.cpp:1263 +#: ../src/ui/dialog/inkscape-preferences.cpp:1267 msgid "When on, the snap angles when rotating a guideline will be relative to the original angle" msgstr "Indien aangevinkt, zijn de kleefhoeken bij het draaien van een hulplijn relatief tov de originele hoek" -#: ../src/ui/dialog/inkscape-preferences.cpp:1265 +#: ../src/ui/dialog/inkscape-preferences.cpp:1269 msgid "_Zoom in/out by:" msgstr "In- en uit_zoomen met:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1266 +#: ../src/ui/dialog/inkscape-preferences.cpp:1269 +msgid "%" +msgstr "%" + +#: ../src/ui/dialog/inkscape-preferences.cpp:1270 msgid "Zoom tool click, +/- keys, and middle click zoom in and out by this multiplier" msgstr "Deze factor wordt gebruikt bij een klik op het vergrootglas, door de +/- toetsen, en door de middelste muisknop" -#: ../src/ui/dialog/inkscape-preferences.cpp:1267 +#: ../src/ui/dialog/inkscape-preferences.cpp:1271 msgid "Steps" msgstr "Stappen" #. Clones options -#: ../src/ui/dialog/inkscape-preferences.cpp:1270 +#: ../src/ui/dialog/inkscape-preferences.cpp:1274 msgid "Move in parallel" msgstr "Parallel verplaatsen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1272 +#: ../src/ui/dialog/inkscape-preferences.cpp:1276 msgid "Stay unmoved" msgstr "Laten staan" -#: ../src/ui/dialog/inkscape-preferences.cpp:1274 +#: ../src/ui/dialog/inkscape-preferences.cpp:1278 msgid "Move according to transform" msgstr "Verplaatsen volgens transformatie" -#: ../src/ui/dialog/inkscape-preferences.cpp:1276 +#: ../src/ui/dialog/inkscape-preferences.cpp:1280 msgid "Are unlinked" msgstr "Ontkoppelen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1278 +#: ../src/ui/dialog/inkscape-preferences.cpp:1282 msgid "Are deleted" msgstr "Verwijderen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1281 +#: ../src/ui/dialog/inkscape-preferences.cpp:1285 msgid "Moving original: clones and linked offsets" msgstr "Verplaatsen origineel: klonen en gekoppelde offsets" -#: ../src/ui/dialog/inkscape-preferences.cpp:1283 +#: ../src/ui/dialog/inkscape-preferences.cpp:1287 msgid "Clones are translated by the same vector as their original" msgstr "Klonen worden op dezelfde manier verplaatst als het origineel" -#: ../src/ui/dialog/inkscape-preferences.cpp:1285 +#: ../src/ui/dialog/inkscape-preferences.cpp:1289 msgid "Clones preserve their positions when their original is moved" msgstr "Klonen blijven op hun plaats staan als het origineel wordt verplaatst" -#: ../src/ui/dialog/inkscape-preferences.cpp:1287 +#: ../src/ui/dialog/inkscape-preferences.cpp:1291 msgid "Each clone moves according to the value of its transform= attribute; for example, a rotated clone will move in a different direction than its original" msgstr "Elke kloon verplaatst volgens zijn eigen 'transform='-waarde. Een gedraaide kloon zal bijvoorbeeld in een andere richting verplaatsen dan zijn origineel." -#: ../src/ui/dialog/inkscape-preferences.cpp:1288 +#: ../src/ui/dialog/inkscape-preferences.cpp:1292 msgid "Deleting original: clones" msgstr "Verwijderen origineel: klonen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1290 +#: ../src/ui/dialog/inkscape-preferences.cpp:1294 msgid "Orphaned clones are converted to regular objects" msgstr "Verweesde klonen worden omgezet naar normale objecten" -#: ../src/ui/dialog/inkscape-preferences.cpp:1292 +#: ../src/ui/dialog/inkscape-preferences.cpp:1296 msgid "Orphaned clones are deleted along with their original" msgstr "Verweesde klonen worden verwijderd samen met hun origineel" -#: ../src/ui/dialog/inkscape-preferences.cpp:1294 +#: ../src/ui/dialog/inkscape-preferences.cpp:1298 msgid "Duplicating original+clones/linked offset" msgstr "Dupliceren van origineel en klonen/gekoppelde offset" -#: ../src/ui/dialog/inkscape-preferences.cpp:1296 +#: ../src/ui/dialog/inkscape-preferences.cpp:1300 msgid "Relink duplicated clones" msgstr "Gedupliceerde klonen herlinken" -#: ../src/ui/dialog/inkscape-preferences.cpp:1298 +#: ../src/ui/dialog/inkscape-preferences.cpp:1302 msgid "When duplicating a selection containing both a clone and its original (possibly in groups), relink the duplicated clone to the duplicated original instead of the old original" msgstr "De gedupliceerde kloon herlinken naar het gedupliceerde origineel in plaats van het oude origineel bij het dupliceren van een selectie met zowel een kloon en zijn origineel (mogelijk voorkomend in groepen)." #. TRANSLATORS: Heading for the Inkscape Preferences "Clones" Page -#: ../src/ui/dialog/inkscape-preferences.cpp:1301 +#: ../src/ui/dialog/inkscape-preferences.cpp:1305 msgid "Clones" msgstr "Klonen" #. Clip paths and masks options -#: ../src/ui/dialog/inkscape-preferences.cpp:1304 +#: ../src/ui/dialog/inkscape-preferences.cpp:1308 msgid "When applying, use the topmost selected object as clippath/mask" msgstr "Het bovenste object als afsnijpad/masker gebruiken" -#: ../src/ui/dialog/inkscape-preferences.cpp:1306 +#: ../src/ui/dialog/inkscape-preferences.cpp:1310 msgid "Uncheck this to use the bottom selected object as the clipping path or mask" msgstr "Vink uit om het onderste object als masker of maskerpad te gebruiken" -#: ../src/ui/dialog/inkscape-preferences.cpp:1307 +#: ../src/ui/dialog/inkscape-preferences.cpp:1311 msgid "Remove clippath/mask object after applying" msgstr "Het afsnijpad/masker verwijderen na gebruik" -#: ../src/ui/dialog/inkscape-preferences.cpp:1309 +#: ../src/ui/dialog/inkscape-preferences.cpp:1313 msgid "After applying, remove the object used as the clipping path or mask from the drawing" msgstr "Het object dat als afsnijpad of masker gebruikt is, verwijderen na gebruik" -#: ../src/ui/dialog/inkscape-preferences.cpp:1311 +#: ../src/ui/dialog/inkscape-preferences.cpp:1315 msgid "Before applying" msgstr "Voor toepassen afsnijpad/masker" -#: ../src/ui/dialog/inkscape-preferences.cpp:1313 +#: ../src/ui/dialog/inkscape-preferences.cpp:1317 msgid "Do not group clipped/masked objects" msgstr "Afgesneden/gemaskerde objecten niet groeperen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1314 +#: ../src/ui/dialog/inkscape-preferences.cpp:1318 msgid "Put every clipped/masked object in its own group" msgstr "Elk afgesneden/gemaskerd object in zijn eigen groep plaatsen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1315 +#: ../src/ui/dialog/inkscape-preferences.cpp:1319 msgid "Put all clipped/masked objects into one group" msgstr "Alle afgesneden/gemaskerde objecte in één groep plaatsen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1318 +#: ../src/ui/dialog/inkscape-preferences.cpp:1322 msgid "Apply clippath/mask to every object" msgstr "Afsnijding/masker op elk object toepassen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1321 +#: ../src/ui/dialog/inkscape-preferences.cpp:1325 msgid "Apply clippath/mask to groups containing single object" msgstr "Afsnijding/masker toepassen op één-object-groepen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1324 +#: ../src/ui/dialog/inkscape-preferences.cpp:1328 msgid "Apply clippath/mask to group containing all objects" msgstr "Afsnijding/masker toepassen op groep met alle objecten" -#: ../src/ui/dialog/inkscape-preferences.cpp:1326 +#: ../src/ui/dialog/inkscape-preferences.cpp:1330 msgid "After releasing" msgstr "Na toepassen afsnijpad/masker" -#: ../src/ui/dialog/inkscape-preferences.cpp:1328 +#: ../src/ui/dialog/inkscape-preferences.cpp:1332 msgid "Ungroup automatically created groups" msgstr "Automatisch aangemaakte groepen degroeperen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1330 +#: ../src/ui/dialog/inkscape-preferences.cpp:1334 msgid "Ungroup groups created when setting clip/mask" msgstr "Groepen gemaakt tijdens maskeren/afsnijden, degroeperen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1332 +#: ../src/ui/dialog/inkscape-preferences.cpp:1336 msgid "Clippaths and masks" msgstr "Maskers en maskerpaden" -#: ../src/ui/dialog/inkscape-preferences.cpp:1335 +#: ../src/ui/dialog/inkscape-preferences.cpp:1339 msgid "Stroke Style Markers" msgstr "Lijnstijl" -#: ../src/ui/dialog/inkscape-preferences.cpp:1337 -#: ../src/ui/dialog/inkscape-preferences.cpp:1339 +#: ../src/ui/dialog/inkscape-preferences.cpp:1341 +#: ../src/ui/dialog/inkscape-preferences.cpp:1343 msgid "Stroke color same as object, fill color either object fill color or marker fill color" msgstr "Lijnkleur identiek als object, vulkleur is ofwel deze van object of markering" -#: ../src/ui/dialog/inkscape-preferences.cpp:1343 +#: ../src/ui/dialog/inkscape-preferences.cpp:1347 msgid "Markers" msgstr "Markeringen" +#: ../src/ui/dialog/inkscape-preferences.cpp:1350 +msgid "Document cleanup" +msgstr "Document schoonmaken" + #: ../src/ui/dialog/inkscape-preferences.cpp:1351 +#: ../src/ui/dialog/inkscape-preferences.cpp:1353 +msgid "Remove unused swatches when doing a document cleanup" +msgstr "Ongebruikte paletten verwijderen bij het schoonmaken van een document" + +#. tooltip +#: ../src/ui/dialog/inkscape-preferences.cpp:1354 +msgid "Cleanup" +msgstr "Schoonmaken" + +#: ../src/ui/dialog/inkscape-preferences.cpp:1362 msgid "Number of _Threads:" msgstr "_Aantal threads:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1351 -#: ../src/ui/dialog/inkscape-preferences.cpp:1869 +#: ../src/ui/dialog/inkscape-preferences.cpp:1362 +#: ../src/ui/dialog/inkscape-preferences.cpp:1880 msgid "(requires restart)" msgstr "(vereist herstart)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1352 +#: ../src/ui/dialog/inkscape-preferences.cpp:1363 msgid "Configure number of processors/threads to use when rendering filters" msgstr "Het aantal te gebruiken processors/threads bij het renderen van filters" -#: ../src/ui/dialog/inkscape-preferences.cpp:1356 +#: ../src/ui/dialog/inkscape-preferences.cpp:1367 msgid "Rendering _cache size:" msgstr "_Cachegrootte voor renderen:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1356 +#: ../src/ui/dialog/inkscape-preferences.cpp:1367 msgctxt "mebibyte (2^20 bytes) abbreviation" msgid "MiB" msgstr "MiB" -#: ../src/ui/dialog/inkscape-preferences.cpp:1356 +#: ../src/ui/dialog/inkscape-preferences.cpp:1367 msgid "Set the amount of memory per document which can be used to store rendered parts of the drawing for later reuse; set to zero to disable caching" msgstr "De hoeveelheid geheugen voor het bewaren van gerenderde delen van de afbeelding voor hergebruik: stel in op nul om de cache uit te schakelen" #. blur quality #. filter quality -#: ../src/ui/dialog/inkscape-preferences.cpp:1359 -#: ../src/ui/dialog/inkscape-preferences.cpp:1383 +#: ../src/ui/dialog/inkscape-preferences.cpp:1370 +#: ../src/ui/dialog/inkscape-preferences.cpp:1394 msgid "Best quality (slowest)" msgstr "Beste kwaliteit (traagst)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1361 -#: ../src/ui/dialog/inkscape-preferences.cpp:1385 +#: ../src/ui/dialog/inkscape-preferences.cpp:1372 +#: ../src/ui/dialog/inkscape-preferences.cpp:1396 msgid "Better quality (slower)" msgstr "Betere kwaliteit (trager)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1363 -#: ../src/ui/dialog/inkscape-preferences.cpp:1387 +#: ../src/ui/dialog/inkscape-preferences.cpp:1374 +#: ../src/ui/dialog/inkscape-preferences.cpp:1398 msgid "Average quality" msgstr "Gemiddelde kwaliteit" -#: ../src/ui/dialog/inkscape-preferences.cpp:1365 -#: ../src/ui/dialog/inkscape-preferences.cpp:1389 +#: ../src/ui/dialog/inkscape-preferences.cpp:1376 +#: ../src/ui/dialog/inkscape-preferences.cpp:1400 msgid "Lower quality (faster)" msgstr "Lagere kwaliteit (sneller)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1367 -#: ../src/ui/dialog/inkscape-preferences.cpp:1391 +#: ../src/ui/dialog/inkscape-preferences.cpp:1378 +#: ../src/ui/dialog/inkscape-preferences.cpp:1402 msgid "Lowest quality (fastest)" msgstr "Laagste kwaliteit (snelst)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1370 +#: ../src/ui/dialog/inkscape-preferences.cpp:1381 msgid "Gaussian blur quality for display" msgstr "Kwaliteit gaussiaanse vervaging voor weergave" -#: ../src/ui/dialog/inkscape-preferences.cpp:1372 -#: ../src/ui/dialog/inkscape-preferences.cpp:1396 +#: ../src/ui/dialog/inkscape-preferences.cpp:1383 +#: ../src/ui/dialog/inkscape-preferences.cpp:1407 msgid "Best quality, but display may be very slow at high zooms (bitmap export always uses best quality)" msgstr "Beste kwaliteit, maar weergave kan heel langzaam zijn bij hoge zoom (bitmapexport gebruikt altijd beste kwaliteit)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1374 -#: ../src/ui/dialog/inkscape-preferences.cpp:1398 +#: ../src/ui/dialog/inkscape-preferences.cpp:1385 +#: ../src/ui/dialog/inkscape-preferences.cpp:1409 msgid "Better quality, but slower display" msgstr "Betere kwaliteit, maar langzamere weergave" -#: ../src/ui/dialog/inkscape-preferences.cpp:1376 -#: ../src/ui/dialog/inkscape-preferences.cpp:1400 +#: ../src/ui/dialog/inkscape-preferences.cpp:1387 +#: ../src/ui/dialog/inkscape-preferences.cpp:1411 msgid "Average quality, acceptable display speed" msgstr "Gemiddelde kwaliteit, acceptabele weergavesnelheid" -#: ../src/ui/dialog/inkscape-preferences.cpp:1378 -#: ../src/ui/dialog/inkscape-preferences.cpp:1402 +#: ../src/ui/dialog/inkscape-preferences.cpp:1389 +#: ../src/ui/dialog/inkscape-preferences.cpp:1413 msgid "Lower quality (some artifacts), but display is faster" msgstr "Lage kwaliteit (enkele weergavefouten), maar weergave is sneller" -#: ../src/ui/dialog/inkscape-preferences.cpp:1380 -#: ../src/ui/dialog/inkscape-preferences.cpp:1404 +#: ../src/ui/dialog/inkscape-preferences.cpp:1391 +#: ../src/ui/dialog/inkscape-preferences.cpp:1415 msgid "Lowest quality (considerable artifacts), but display is fastest" msgstr "Laagste kwaliteit (veel weergavefouten), maar weergave is het snelst" -#: ../src/ui/dialog/inkscape-preferences.cpp:1394 +#: ../src/ui/dialog/inkscape-preferences.cpp:1405 msgid "Filter effects quality for display" msgstr "Kwaliteit filtereffecten voor weergave" #. build custom preferences tab -#: ../src/ui/dialog/inkscape-preferences.cpp:1406 +#: ../src/ui/dialog/inkscape-preferences.cpp:1417 #: ../src/ui/dialog/print.cpp:224 msgid "Rendering" msgstr "Renderen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1412 +#: ../src/ui/dialog/inkscape-preferences.cpp:1423 msgid "2x2" msgstr "2x2" -#: ../src/ui/dialog/inkscape-preferences.cpp:1412 +#: ../src/ui/dialog/inkscape-preferences.cpp:1423 msgid "4x4" msgstr "4x4" -#: ../src/ui/dialog/inkscape-preferences.cpp:1412 +#: ../src/ui/dialog/inkscape-preferences.cpp:1423 msgid "8x8" msgstr "8x8" -#: ../src/ui/dialog/inkscape-preferences.cpp:1412 +#: ../src/ui/dialog/inkscape-preferences.cpp:1423 msgid "16x16" msgstr "16x16" -#: ../src/ui/dialog/inkscape-preferences.cpp:1416 +#: ../src/ui/dialog/inkscape-preferences.cpp:1427 msgid "Oversample bitmaps:" msgstr "Bitmaps oversampelen:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 +#: ../src/ui/dialog/inkscape-preferences.cpp:1430 msgid "Automatically reload bitmaps" msgstr "Bitmaps automatisch herladen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1421 +#: ../src/ui/dialog/inkscape-preferences.cpp:1432 msgid "Automatically reload linked images when file is changed on disk" msgstr "Gelinkte afbeeldingen automatisch herladen wanneer het bestand op de schijf gewijzigd is" -#: ../src/ui/dialog/inkscape-preferences.cpp:1423 +#: ../src/ui/dialog/inkscape-preferences.cpp:1434 msgid "_Bitmap editor:" msgstr "B_itmapeditor:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1425 +#: ../src/ui/dialog/inkscape-preferences.cpp:1436 msgid "Default export _resolution:" msgstr "Standaardresolutie voor _exporteren:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1426 +#: ../src/ui/dialog/inkscape-preferences.cpp:1437 msgid "Default bitmap resolution (in dots per inch) in the Export dialog" msgstr "Standaardresolutie voor bitmaps (in punten per duim) in het 'Bitmap exporteren'-dialoogvenster" -#: ../src/ui/dialog/inkscape-preferences.cpp:1428 +#: ../src/ui/dialog/inkscape-preferences.cpp:1439 msgid "Resolution for Create Bitmap _Copy:" msgstr "_Resolutie voor bitmapkopie:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1429 +#: ../src/ui/dialog/inkscape-preferences.cpp:1440 msgid "Resolution used by the Create Bitmap Copy command" msgstr "Resolutie gebruikt voor het commando Bitmapkopie Aanmaken:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1431 +#: ../src/ui/dialog/inkscape-preferences.cpp:1442 msgid "Always embed" msgstr "Altijd invoegen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1431 +#: ../src/ui/dialog/inkscape-preferences.cpp:1442 msgid "Always link" msgstr "Altijd linken" -#: ../src/ui/dialog/inkscape-preferences.cpp:1431 +#: ../src/ui/dialog/inkscape-preferences.cpp:1442 msgid "Ask" msgstr "Vragen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1434 +#: ../src/ui/dialog/inkscape-preferences.cpp:1445 msgid "Bitmap import:" msgstr "Bitmapeditor:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1437 +#: ../src/ui/dialog/inkscape-preferences.cpp:1448 msgid "Bitmap import quality:" msgstr "Importkwaliteit bitmap:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1440 +#: ../src/ui/dialog/inkscape-preferences.cpp:1451 msgid "Default _import resolution:" msgstr "Standaardresolutie voor _importeren:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1441 +#: ../src/ui/dialog/inkscape-preferences.cpp:1452 msgid "Default bitmap resolution (in dots per inch) for bitmap import" msgstr "Standaardresolutie (in punten per duim) voor het exporteren van bitmaps" -#: ../src/ui/dialog/inkscape-preferences.cpp:1442 +#: ../src/ui/dialog/inkscape-preferences.cpp:1453 msgid "Override file resolution" msgstr "Bestandsresolutie overschrijven" -#: ../src/ui/dialog/inkscape-preferences.cpp:1444 +#: ../src/ui/dialog/inkscape-preferences.cpp:1455 msgid "Use default bitmap resolution in favor of information from file" msgstr "Standaardresolutie voor bitmaps gebruiken in plaats van info uit bestand" -#: ../src/ui/dialog/inkscape-preferences.cpp:1446 +#: ../src/ui/dialog/inkscape-preferences.cpp:1457 msgid "Bitmaps" msgstr "Bitmaps" -#: ../src/ui/dialog/inkscape-preferences.cpp:1458 +#: ../src/ui/dialog/inkscape-preferences.cpp:1469 msgid "Select a file of predefined shortcuts to use. Any customized shortcuts you create will be added seperately to " msgstr "" -#: ../src/ui/dialog/inkscape-preferences.cpp:1461 +#: ../src/ui/dialog/inkscape-preferences.cpp:1472 msgid "Shortcut file:" msgstr "Bestand met sneltoetsen:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1464 +#: ../src/ui/dialog/inkscape-preferences.cpp:1475 +#: ../src/ui/dialog/template-load-tab.cpp:46 msgid "Search:" msgstr "Zoeken:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1476 +#: ../src/ui/dialog/inkscape-preferences.cpp:1487 msgid "Shortcut" msgstr "Sneltoets" -#: ../src/ui/dialog/inkscape-preferences.cpp:1477 -#: ../src/ui/widget/page-sizer.cpp:262 +#: ../src/ui/dialog/inkscape-preferences.cpp:1488 +#: ../src/ui/widget/page-sizer.cpp:260 msgid "Description" msgstr "Beschrijving" -#: ../src/ui/dialog/inkscape-preferences.cpp:1532 +#: ../src/ui/dialog/inkscape-preferences.cpp:1543 #: ../src/ui/dialog/svg-fonts-dialog.cpp:694 #: ../src/ui/dialog/tracedialog.cpp:813 -#: ../src/ui/widget/preferences-widget.cpp:745 +#: ../src/ui/widget/preferences-widget.cpp:749 msgid "Reset" msgstr "Beginwaarde" -#: ../src/ui/dialog/inkscape-preferences.cpp:1532 +#: ../src/ui/dialog/inkscape-preferences.cpp:1543 msgid "Remove all your customized keyboard shortcuts, and revert to the shortcuts in the shortcut file listed above" msgstr "Alle aangepaste sneltoetsen verwijderen en vervangen door de sneltoetsen in het hierboven geselecteerd sneltoetsbestand" -#: ../src/ui/dialog/inkscape-preferences.cpp:1536 +#: ../src/ui/dialog/inkscape-preferences.cpp:1547 msgid "Import ..." msgstr "Importeren..." -#: ../src/ui/dialog/inkscape-preferences.cpp:1536 +#: ../src/ui/dialog/inkscape-preferences.cpp:1547 msgid "Import custom keyboard shortcuts from a file" msgstr "Aangepaste sneltoetsen van een bestand importeren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1539 +#: ../src/ui/dialog/inkscape-preferences.cpp:1550 msgid "Export ..." msgstr "Exporteren..." -#: ../src/ui/dialog/inkscape-preferences.cpp:1539 +#: ../src/ui/dialog/inkscape-preferences.cpp:1550 msgid "Export custom keyboard shortcuts to a file" msgstr "Aangepaste sneltoetsen naar een bestand exporteren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1549 +#: ../src/ui/dialog/inkscape-preferences.cpp:1560 msgid "Keyboard Shortcuts" msgstr "Sneltoetsen" #. Find this group in the tree -#: ../src/ui/dialog/inkscape-preferences.cpp:1712 +#: ../src/ui/dialog/inkscape-preferences.cpp:1723 msgid "Misc" msgstr "Overig" -#: ../src/ui/dialog/inkscape-preferences.cpp:1831 +#: ../src/ui/dialog/inkscape-preferences.cpp:1842 msgid "Set the main spell check language" msgstr "De hoofdtaal voor spellingscontrole instellen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1834 +#: ../src/ui/dialog/inkscape-preferences.cpp:1845 msgid "Second language:" msgstr "Tweede taal:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1835 +#: ../src/ui/dialog/inkscape-preferences.cpp:1846 msgid "Set the second spell check language; checking will only stop on words unknown in ALL chosen languages" msgstr "De tweede taal voor spellingscontrole instellen; controle zal enkel stoppen bij niet-bekende woorden in ALLE gekozen talen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1838 +#: ../src/ui/dialog/inkscape-preferences.cpp:1849 msgid "Third language:" msgstr "Derde taal:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1839 +#: ../src/ui/dialog/inkscape-preferences.cpp:1850 msgid "Set the third spell check language; checking will only stop on words unknown in ALL chosen languages" msgstr "De derde taal voor spellingscontrole instellen; controle zal enkel stoppen bij niet-bekende woorden in ALLE gekozen talen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1841 +#: ../src/ui/dialog/inkscape-preferences.cpp:1852 msgid "Ignore words with digits" msgstr "Woorden met cijfers overslaan" -#: ../src/ui/dialog/inkscape-preferences.cpp:1843 +#: ../src/ui/dialog/inkscape-preferences.cpp:1854 msgid "Ignore words containing digits, such as \"R2D2\"" msgstr "Woorden met cijfers overslaan, bijvoorbeeld \"R2D2\"" -#: ../src/ui/dialog/inkscape-preferences.cpp:1845 +#: ../src/ui/dialog/inkscape-preferences.cpp:1856 msgid "Ignore words in ALL CAPITALS" msgstr "Woorden in HOOFDLETTERS overslaan" -#: ../src/ui/dialog/inkscape-preferences.cpp:1847 +#: ../src/ui/dialog/inkscape-preferences.cpp:1858 msgid "Ignore words in all capitals, such as \"IUPAC\"" msgstr "Woorden in hoofdletters overslaan, bijvoorbeeld \"IUPAC\"" -#: ../src/ui/dialog/inkscape-preferences.cpp:1849 +#: ../src/ui/dialog/inkscape-preferences.cpp:1860 msgid "Spellcheck" msgstr "Spellingscontrole" -#: ../src/ui/dialog/inkscape-preferences.cpp:1869 +#: ../src/ui/dialog/inkscape-preferences.cpp:1880 msgid "Latency _skew:" msgstr "_Aanpassing vertraging:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1870 +#: ../src/ui/dialog/inkscape-preferences.cpp:1881 msgid "Factor by which the event clock is skewed from the actual time (0.9766 on some systems)" msgstr "Factor waarmee de tijd van een gebeurtenis wordt aangepast ten opzichte van de actuele tijd (0,9766 op sommige systemen)" -#: ../src/ui/dialog/inkscape-preferences.cpp:1872 +#: ../src/ui/dialog/inkscape-preferences.cpp:1883 msgid "Pre-render named icons" msgstr "Pictogram met naam prerenderen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1874 +#: ../src/ui/dialog/inkscape-preferences.cpp:1885 msgid "When on, named icons will be rendered before displaying the ui. This is for working around bugs in GTK+ named icon notification" msgstr "Indien aangevinkt, worden pictogrammen met een naam gerenderd voor het tonen van de interface. Dit wordt gebruikt om bugs op te vangen bij GTK+ benoemde pictogrammeldingen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1882 +#: ../src/ui/dialog/inkscape-preferences.cpp:1893 msgid "System info" msgstr "Systeeminfo" -#: ../src/ui/dialog/inkscape-preferences.cpp:1886 +#: ../src/ui/dialog/inkscape-preferences.cpp:1897 msgid "User config: " msgstr "Gebruikersinstellingen: " -#: ../src/ui/dialog/inkscape-preferences.cpp:1886 +#: ../src/ui/dialog/inkscape-preferences.cpp:1897 msgid "Location of users configuration" msgstr "Locatie van de gebruikersinstellingen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1890 +#: ../src/ui/dialog/inkscape-preferences.cpp:1901 msgid "User preferences: " msgstr "Gebruikersvoorkeuren: " -#: ../src/ui/dialog/inkscape-preferences.cpp:1890 +#: ../src/ui/dialog/inkscape-preferences.cpp:1901 msgid "Location of the users preferences file" msgstr "Locatie van het bestand met de gebruikersvoorkeuren" -#: ../src/ui/dialog/inkscape-preferences.cpp:1894 +#: ../src/ui/dialog/inkscape-preferences.cpp:1905 msgid "User extensions: " msgstr "Uitbreidingen van de gebruiker: " -#: ../src/ui/dialog/inkscape-preferences.cpp:1894 +#: ../src/ui/dialog/inkscape-preferences.cpp:1905 msgid "Location of the users extensions" msgstr "Locatie van de uitbreidingen van de gebruiker" -#: ../src/ui/dialog/inkscape-preferences.cpp:1898 +#: ../src/ui/dialog/inkscape-preferences.cpp:1909 msgid "User cache: " msgstr "Cache gebruiker: " -#: ../src/ui/dialog/inkscape-preferences.cpp:1898 +#: ../src/ui/dialog/inkscape-preferences.cpp:1909 msgid "Location of users cache" msgstr "Locatie van de cache van de gebruiker" -#: ../src/ui/dialog/inkscape-preferences.cpp:1906 +#: ../src/ui/dialog/inkscape-preferences.cpp:1917 msgid "Temporary files: " msgstr "Tijdelijke bestanden: " -#: ../src/ui/dialog/inkscape-preferences.cpp:1906 +#: ../src/ui/dialog/inkscape-preferences.cpp:1917 msgid "Location of the temporary files used for autosave" msgstr "Locatie van de tijdelijke bestanden voor auto-opslaan" -#: ../src/ui/dialog/inkscape-preferences.cpp:1910 +#: ../src/ui/dialog/inkscape-preferences.cpp:1921 msgid "Inkscape data: " msgstr "Inkscape data: " -#: ../src/ui/dialog/inkscape-preferences.cpp:1910 +#: ../src/ui/dialog/inkscape-preferences.cpp:1921 msgid "Location of Inkscape data" msgstr "Locatie van Inkscapedata" -#: ../src/ui/dialog/inkscape-preferences.cpp:1914 +#: ../src/ui/dialog/inkscape-preferences.cpp:1925 msgid "Inkscape extensions: " msgstr "Inkscape-uitbreidingen:" -#: ../src/ui/dialog/inkscape-preferences.cpp:1914 +#: ../src/ui/dialog/inkscape-preferences.cpp:1925 msgid "Location of the Inkscape extensions" msgstr "Locatie van de Inkscape-uitbreidingen" -#: ../src/ui/dialog/inkscape-preferences.cpp:1923 +#: ../src/ui/dialog/inkscape-preferences.cpp:1934 msgid "System data: " msgstr "Systeemdata: " -#: ../src/ui/dialog/inkscape-preferences.cpp:1923 +#: ../src/ui/dialog/inkscape-preferences.cpp:1934 msgid "Locations of system data" msgstr "Locaties van de systeemdata" -#: ../src/ui/dialog/inkscape-preferences.cpp:1947 +#: ../src/ui/dialog/inkscape-preferences.cpp:1958 msgid "Icon theme: " msgstr "Pictogramthema: " -#: ../src/ui/dialog/inkscape-preferences.cpp:1947 +#: ../src/ui/dialog/inkscape-preferences.cpp:1958 msgid "Locations of icon themes" msgstr "Locaties van de pictogramthema's" -#: ../src/ui/dialog/inkscape-preferences.cpp:1949 +#: ../src/ui/dialog/inkscape-preferences.cpp:1960 msgid "System" msgstr "Systeem" @@ -18529,7 +18444,7 @@ msgid "_Use pressure-sensitive tablet (requires restart)" msgstr "Drukgevoelig _tekentablet gebruiken (vereist herstart)" #: ../src/ui/dialog/input.cpp:1082 -#: ../src/verbs.cpp:2297 +#: ../src/verbs.cpp:2354 msgid "_Save" msgstr "Op_slaan" @@ -18546,9 +18461,9 @@ msgid "A device can be 'Disabled', its co-ordinates mapped to the whole 'Screen' msgstr "Een invoerapparaat kan 'Inactief' zijn, zijn coördinaten naar het volledige 'Scherm' gemapt worden of naar een enkel 'Venster' (dat normaal in focus is)" #: ../src/ui/dialog/input.cpp:1616 -#: ../src/widgets/calligraphy-toolbar.cpp:599 -#: ../src/widgets/spray-toolbar.cpp:240 -#: ../src/widgets/tweak-toolbar.cpp:390 +#: ../src/widgets/calligraphy-toolbar.cpp:595 +#: ../src/widgets/spray-toolbar.cpp:236 +#: ../src/widgets/tweak-toolbar.cpp:386 msgid "Pressure" msgstr "Druk" @@ -18592,8 +18507,8 @@ msgstr "Laag hernoemen" #. TODO: find an unused layer number, forming name from _("Layer ") + "%d" #: ../src/ui/dialog/layer-properties.cpp:354 #: ../src/ui/dialog/layer-properties.cpp:410 -#: ../src/verbs.cpp:188 -#: ../src/verbs.cpp:2228 +#: ../src/verbs.cpp:194 +#: ../src/verbs.cpp:2285 msgid "Layer" msgstr "Laag" @@ -18602,7 +18517,7 @@ msgid "_Rename" msgstr "_Hernoemen" #: ../src/ui/dialog/layer-properties.cpp:368 -#: ../src/ui/dialog/layers.cpp:749 +#: ../src/ui/dialog/layers.cpp:750 msgid "Rename layer" msgstr "Laag hernoemen" @@ -18628,65 +18543,65 @@ msgid "Move to Layer" msgstr "" #: ../src/ui/dialog/layer-properties.cpp:411 -#: ../src/ui/dialog/transformation.cpp:109 +#: ../src/ui/dialog/transformation.cpp:114 msgid "_Move" msgstr "_Verplaatsen" -#: ../src/ui/dialog/layers.cpp:524 +#: ../src/ui/dialog/layers.cpp:525 #: ../src/ui/widget/layer-selector.cpp:613 msgid "Unhide layer" msgstr "Laag weergeven" -#: ../src/ui/dialog/layers.cpp:524 +#: ../src/ui/dialog/layers.cpp:525 #: ../src/ui/widget/layer-selector.cpp:613 msgid "Hide layer" msgstr "Laag verbergen" -#: ../src/ui/dialog/layers.cpp:535 +#: ../src/ui/dialog/layers.cpp:536 #: ../src/ui/widget/layer-selector.cpp:605 msgid "Lock layer" msgstr "Laag vergrendelen" -#: ../src/ui/dialog/layers.cpp:535 +#: ../src/ui/dialog/layers.cpp:536 #: ../src/ui/widget/layer-selector.cpp:605 msgid "Unlock layer" msgstr "Laag ontgrendelen" -#: ../src/ui/dialog/layers.cpp:623 -#: ../src/verbs.cpp:1343 +#: ../src/ui/dialog/layers.cpp:624 +#: ../src/verbs.cpp:1397 msgid "Toggle layer solo" msgstr "Laag als enige (on)zichtbaar maken" -#: ../src/ui/dialog/layers.cpp:626 -#: ../src/verbs.cpp:1367 +#: ../src/ui/dialog/layers.cpp:627 +#: ../src/verbs.cpp:1421 msgid "Lock other layers" msgstr "Andere lagen vergrendelen" -#: ../src/ui/dialog/layers.cpp:720 +#: ../src/ui/dialog/layers.cpp:721 msgid "Moved layer" msgstr "Laag verplaatst" -#: ../src/ui/dialog/layers.cpp:882 +#: ../src/ui/dialog/layers.cpp:883 msgctxt "Layers" msgid "New" msgstr "Nieuw" -#: ../src/ui/dialog/layers.cpp:887 +#: ../src/ui/dialog/layers.cpp:888 msgctxt "Layers" msgid "Bot" msgstr "Ond" -#: ../src/ui/dialog/layers.cpp:893 +#: ../src/ui/dialog/layers.cpp:894 msgctxt "Layers" msgid "Dn" msgstr "La" -#: ../src/ui/dialog/layers.cpp:899 +#: ../src/ui/dialog/layers.cpp:900 msgctxt "Layers" msgid "Up" msgstr "Ho" -#: ../src/ui/dialog/layers.cpp:905 +#: ../src/ui/dialog/layers.cpp:906 msgctxt "Layers" msgid "Top" msgstr "Bov" @@ -18814,6 +18729,49 @@ msgstr "Loggen begonnen." msgid "Log capture stopped." msgstr "Log aanleggen gestopt." +#: ../src/ui/dialog/new-from-template.cpp:24 +#, fuzzy +msgid "Create from template" +msgstr "Spiraal maken" + +#: ../src/ui/dialog/new-from-template.cpp:26 +msgid "New From Template" +msgstr "" + +#: ../src/ui/dialog/template-widget.cpp:29 +#, fuzzy +msgid "More info" +msgstr "Knooppunten verplaatsen" + +#: ../src/ui/dialog/template-widget.cpp:30 +#: ../src/ui/dialog/template-widget.cpp:31 +msgid " " +msgstr "" + +#: ../src/ui/dialog/template-widget.cpp:32 +#, fuzzy +msgid "no template selected" +msgstr "Geen items geselecteerd." + +#: ../src/ui/dialog/template-widget.cpp:98 +#, fuzzy +msgid "Path: " +msgstr "Pad" + +#: ../src/ui/dialog/template-widget.cpp:101 +#, fuzzy +msgid "Description: " +msgstr "Beschrijving:" + +#: ../src/ui/dialog/template-widget.cpp:103 +#, fuzzy +msgid "Keywords: " +msgstr "Sleutelwoorden:" + +#: ../src/ui/dialog/template-widget.cpp:110 +msgid "By: " +msgstr "" + #: ../src/ui/dialog/object-attributes.cpp:47 msgid "Href:" msgstr "Href:" @@ -18847,16 +18805,16 @@ msgstr "URL:" #: ../src/ui/dialog/object-attributes.cpp:66 #: ../src/ui/dialog/object-attributes.cpp:74 #: ../src/ui/dialog/tile.cpp:618 -#: ../src/widgets/desktop-widget.cpp:674 -#: ../src/widgets/node-toolbar.cpp:590 +#: ../src/widgets/desktop-widget.cpp:670 +#: ../src/widgets/node-toolbar.cpp:593 msgid "X:" msgstr "X:" #: ../src/ui/dialog/object-attributes.cpp:67 #: ../src/ui/dialog/object-attributes.cpp:75 #: ../src/ui/dialog/tile.cpp:619 -#: ../src/widgets/desktop-widget.cpp:684 -#: ../src/widgets/node-toolbar.cpp:608 +#: ../src/widgets/desktop-widget.cpp:680 +#: ../src/widgets/node-toolbar.cpp:611 msgid "Y:" msgstr "Y:" @@ -18884,8 +18842,8 @@ msgid "L_ock" msgstr "Ver_grendelen" #: ../src/ui/dialog/object-properties.cpp:74 -#: ../src/verbs.cpp:2568 -#: ../src/verbs.cpp:2574 +#: ../src/verbs.cpp:2627 +#: ../src/verbs.cpp:2633 msgid "_Set" msgstr "In_stellen" @@ -19033,36 +18991,6 @@ msgstr "SVG-document" msgid "Print" msgstr "Afdrukken" -#. ## Add a menu for clear() -#: ../src/ui/dialog/scriptdialog.cpp:178 -#: ../src/verbs.cpp:131 -msgid "File" -msgstr "Bestand" - -#: ../src/ui/dialog/scriptdialog.cpp:186 -msgid "_Execute Javascript" -msgstr "_Javascript uitvoeren" - -#: ../src/ui/dialog/scriptdialog.cpp:190 -msgid "_Execute Python" -msgstr "_Python uitvoeren" - -#: ../src/ui/dialog/scriptdialog.cpp:194 -msgid "_Execute Ruby" -msgstr "_Ruby uitvoeren" - -#: ../src/ui/dialog/scriptdialog.cpp:205 -msgid "Script" -msgstr "Script" - -#: ../src/ui/dialog/scriptdialog.cpp:215 -msgid "Output" -msgstr "Uitvoer" - -#: ../src/ui/dialog/scriptdialog.cpp:225 -msgid "Errors" -msgstr "Fouten" - #: ../src/ui/dialog/svg-fonts-dialog.cpp:138 msgid "Set SVG Font attribute" msgstr "SVG-lettertypekenmerk instellen" @@ -19223,57 +19151,63 @@ msgid "Preview Text:" msgstr "Voorbeeldtekst:" #. ******************* Symbol Sets ************************ -#: ../src/ui/dialog/symbols.cpp:120 +#: ../src/ui/dialog/symbols.cpp:128 msgid "Symbol set: " msgstr "Symbolenset:" #. Fill in later -#: ../src/ui/dialog/symbols.cpp:129 -#: ../src/ui/dialog/symbols.cpp:130 +#: ../src/ui/dialog/symbols.cpp:137 +#: ../src/ui/dialog/symbols.cpp:138 msgid "Current Document" msgstr "Huidig document" -#. ******************* Preview Scale ********************** -#: ../src/ui/dialog/symbols.cpp:182 -msgid "Preview scale: " -msgstr "Schaal voorvertoning: " +#: ../src/ui/dialog/symbols.cpp:205 +#, fuzzy +msgid "Add Symbol from the current document." +msgstr "Alleen huidige laag tonen" + +#: ../src/ui/dialog/symbols.cpp:214 +#, fuzzy +msgid "Remove Symbol from the current document." +msgstr "Selecteer een overgang voor het huidige kleurverloop" -#: ../src/ui/dialog/symbols.cpp:192 -msgid "Fit" -msgstr "Aanpassen" +#: ../src/ui/dialog/symbols.cpp:227 +msgid "Make Icons bigger by zooming in." +msgstr "" -#: ../src/ui/dialog/symbols.cpp:192 -msgid "Fit to width" -msgstr "Aanpassen aan breedte" +#: ../src/ui/dialog/symbols.cpp:236 +#, fuzzy +msgid "Make Icons smaller by zooming out." +msgstr "Lijnkleur bij uitzoomen" -#: ../src/ui/dialog/symbols.cpp:192 -msgid "Fit to height" -msgstr "Aanpassen aan hoogte" +#: ../src/ui/dialog/symbols.cpp:245 +msgid "Toggle 'fit' symbols in icon space." +msgstr "" -#. ******************* Preview Size *********************** -#: ../src/ui/dialog/symbols.cpp:212 -msgid "Preview size: " -msgstr "Grootte voorvertoning: " +#: ../src/ui/dialog/symbols.cpp:558 +#, fuzzy +msgid "Unnamed Symbols" +msgstr "Khmer symbolen" #. TRANSLATORS: An item in context menu on a colour in the swatches -#: ../src/ui/dialog/swatches.cpp:258 +#: ../src/ui/dialog/swatches.cpp:259 msgid "Set fill" msgstr "Vulling instellen" #. TRANSLATORS: An item in context menu on a colour in the swatches -#: ../src/ui/dialog/swatches.cpp:266 +#: ../src/ui/dialog/swatches.cpp:267 msgid "Set stroke" msgstr "Lijnkleur instellen" -#: ../src/ui/dialog/swatches.cpp:287 +#: ../src/ui/dialog/swatches.cpp:288 msgid "Edit..." msgstr "Bewerken..." -#: ../src/ui/dialog/swatches.cpp:299 +#: ../src/ui/dialog/swatches.cpp:300 msgid "Convert" msgstr "Converteren" -#: ../src/ui/dialog/swatches.cpp:543 +#: ../src/ui/dialog/swatches.cpp:544 #, c-format msgid "Palettes directory (%s) is unavailable." msgstr "De palettenmap (%s) is niet beschikbaar." @@ -19597,142 +19531,152 @@ msgstr "Het overtrekken afbreken" msgid "Execute the trace" msgstr "Het overtrekken starten" -#: ../src/ui/dialog/transformation.cpp:71 -#: ../src/ui/dialog/transformation.cpp:81 +#: ../src/ui/dialog/transformation.cpp:76 +#: ../src/ui/dialog/transformation.cpp:86 msgid "_Horizontal:" msgstr "_Horizontaal:" -#: ../src/ui/dialog/transformation.cpp:71 +#: ../src/ui/dialog/transformation.cpp:76 msgid "Horizontal displacement (relative) or position (absolute)" msgstr "Horizontale verplaatsing (relatief) of positie (absoluut)" -#: ../src/ui/dialog/transformation.cpp:73 -#: ../src/ui/dialog/transformation.cpp:83 +#: ../src/ui/dialog/transformation.cpp:78 +#: ../src/ui/dialog/transformation.cpp:88 msgid "_Vertical:" msgstr "_Verticaal:" -#: ../src/ui/dialog/transformation.cpp:73 +#: ../src/ui/dialog/transformation.cpp:78 msgid "Vertical displacement (relative) or position (absolute)" msgstr "Verticale verplaatsing (relatief) of positie (absoluut)" -#: ../src/ui/dialog/transformation.cpp:75 +#: ../src/ui/dialog/transformation.cpp:80 msgid "Horizontal size (absolute or percentage of current)" msgstr "Horizontale grootte (absoluut of procentueel van huidige)" -#: ../src/ui/dialog/transformation.cpp:77 +#: ../src/ui/dialog/transformation.cpp:82 msgid "Vertical size (absolute or percentage of current)" msgstr "Verticale grootte (absoluut of procentueel van huidige)" -#: ../src/ui/dialog/transformation.cpp:79 +#: ../src/ui/dialog/transformation.cpp:84 msgid "A_ngle:" msgstr "Hoe_k:" -#: ../src/ui/dialog/transformation.cpp:79 -#: ../src/ui/dialog/transformation.cpp:1064 +#: ../src/ui/dialog/transformation.cpp:84 +#: ../src/ui/dialog/transformation.cpp:1103 msgid "Rotation angle (positive = counterclockwise)" msgstr "Rotatiehoek (positief is met de klok mee)" -#: ../src/ui/dialog/transformation.cpp:81 +#: ../src/ui/dialog/transformation.cpp:86 msgid "Horizontal skew angle (positive = counterclockwise), or absolute displacement, or percentage displacement" msgstr "Horizontale rotatiehoek (positief is met de klok mee), absolute verplaatsing of percentage verplaatsing" -#: ../src/ui/dialog/transformation.cpp:83 +#: ../src/ui/dialog/transformation.cpp:88 msgid "Vertical skew angle (positive = counterclockwise), or absolute displacement, or percentage displacement" msgstr "Verticale rotatiehoek (positief is met de klok mee), absolute verplaatsing of percentage verplaatsing" -#: ../src/ui/dialog/transformation.cpp:86 +#: ../src/ui/dialog/transformation.cpp:91 msgid "Transformation matrix element A" msgstr "Transformatiematrix-element A" -#: ../src/ui/dialog/transformation.cpp:87 +#: ../src/ui/dialog/transformation.cpp:92 msgid "Transformation matrix element B" msgstr "Transformatiematrix-element B" -#: ../src/ui/dialog/transformation.cpp:88 +#: ../src/ui/dialog/transformation.cpp:93 msgid "Transformation matrix element C" msgstr "Transformatiematrix-element C" -#: ../src/ui/dialog/transformation.cpp:89 +#: ../src/ui/dialog/transformation.cpp:94 msgid "Transformation matrix element D" msgstr "Transformatiematrix-element D" -#: ../src/ui/dialog/transformation.cpp:90 +#: ../src/ui/dialog/transformation.cpp:95 msgid "Transformation matrix element E" msgstr "Transformatiematrix-element E" -#: ../src/ui/dialog/transformation.cpp:91 +#: ../src/ui/dialog/transformation.cpp:96 msgid "Transformation matrix element F" msgstr "Transformatiematrix-element F" -#: ../src/ui/dialog/transformation.cpp:96 +#: ../src/ui/dialog/transformation.cpp:101 msgid "Rela_tive move" msgstr "Rela_tieve verplaatsing" -#: ../src/ui/dialog/transformation.cpp:96 +#: ../src/ui/dialog/transformation.cpp:101 msgid "Add the specified relative displacement to the current position; otherwise, edit the current absolute position directly" msgstr "Tel de opgegeven relatieve verplaatsing op bij de huidige positie; anders, bewerk de huidige absolute positie direct" -#: ../src/ui/dialog/transformation.cpp:97 +#: ../src/ui/dialog/transformation.cpp:102 msgid "_Scale proportionally" msgstr "Proportioneel s_chalen" -#: ../src/ui/dialog/transformation.cpp:97 +#: ../src/ui/dialog/transformation.cpp:102 msgid "Preserve the width/height ratio of the scaled objects" msgstr "De breedte/hoogteverhouding van de geschaalde objecten behouden" -#: ../src/ui/dialog/transformation.cpp:98 +#: ../src/ui/dialog/transformation.cpp:103 msgid "Apply to each _object separately" msgstr "_Op ieder object apart toepassen" -#: ../src/ui/dialog/transformation.cpp:98 +#: ../src/ui/dialog/transformation.cpp:103 msgid "Apply the scale/rotate/skew to each selected object separately; otherwise, transform the selection as a whole" msgstr "De acties schalen/roteren/scheeftrekken op ieder geselecteerd object onafhankelijk toepassen; anders de hele selectie als een geheel transformeren" -#: ../src/ui/dialog/transformation.cpp:99 +#: ../src/ui/dialog/transformation.cpp:104 msgid "Edit c_urrent matrix" msgstr "_Huidige matrix bewerken" -#: ../src/ui/dialog/transformation.cpp:99 +#: ../src/ui/dialog/transformation.cpp:104 msgid "Edit the current transform= matrix; otherwise, post-multiply transform= by this matrix" msgstr "De huidige transformatiematrix bewerken; zoniet, navermenigvuldigen transformatiematrix met deze matrix" -#: ../src/ui/dialog/transformation.cpp:112 +#: ../src/ui/dialog/transformation.cpp:117 msgid "_Scale" msgstr "_Schalen" -#: ../src/ui/dialog/transformation.cpp:115 +#: ../src/ui/dialog/transformation.cpp:120 msgid "_Rotate" msgstr "_Roteren" -#: ../src/ui/dialog/transformation.cpp:118 +#: ../src/ui/dialog/transformation.cpp:123 msgid "Ske_w" msgstr "Scheef_trekken" -#: ../src/ui/dialog/transformation.cpp:121 +#: ../src/ui/dialog/transformation.cpp:126 msgid "Matri_x" msgstr "Matri_x" -#: ../src/ui/dialog/transformation.cpp:145 +#: ../src/ui/dialog/transformation.cpp:150 msgid "Reset the values on the current tab to defaults" msgstr "Op het huidige tabblad de standaarwaarden terugzetten" -#: ../src/ui/dialog/transformation.cpp:152 +#: ../src/ui/dialog/transformation.cpp:157 msgid "Apply transformation to selection" msgstr "Transformatie toepassen op selectie" -#: ../src/ui/dialog/transformation.cpp:327 +#: ../src/ui/dialog/transformation.cpp:332 msgid "Rotate in a counterclockwise direction" msgstr "Tegen de klok in draaien" -#: ../src/ui/dialog/transformation.cpp:333 +#: ../src/ui/dialog/transformation.cpp:338 msgid "Rotate in a clockwise direction" msgstr "Rotatie met de klok mee" +#: ../src/ui/dialog/transformation.cpp:907 +#: ../src/ui/dialog/transformation.cpp:918 +#: ../src/ui/dialog/transformation.cpp:932 +#: ../src/ui/dialog/transformation.cpp:951 +#: ../src/ui/dialog/transformation.cpp:962 #: ../src/ui/dialog/transformation.cpp:972 +#: ../src/ui/dialog/transformation.cpp:996 +msgid "Transform matrix is singular, not used." +msgstr "" + +#: ../src/ui/dialog/transformation.cpp:1011 msgid "Edit transformation matrix" msgstr "Transformatiematrix bewerken" -#: ../src/ui/dialog/transformation.cpp:1071 +#: ../src/ui/dialog/transformation.cpp:1110 msgid "Rotation angle (positive = clockwise)" msgstr "Rotatiehoek (positief is met de klok mee)" @@ -19764,96 +19708,96 @@ msgctxt "Path segment tip" msgid "Bezier segment: drag to shape the segment, doubleclick to insert node, click to select (more: Shift, Ctrl+Alt)" msgstr "Beziersegment: sleep om het segment te vervormen, dubbelklik om een knooppunt in te voegen, klik om te selecteren (toetscombinaties: Shift, Ctrl+Alt)" -#: ../src/ui/tool/multi-path-manipulator.cpp:322 +#: ../src/ui/tool/multi-path-manipulator.cpp:326 msgid "Retract handles" msgstr "Handvaten intrekken" -#: ../src/ui/tool/multi-path-manipulator.cpp:322 -#: ../src/ui/tool/node.cpp:271 +#: ../src/ui/tool/multi-path-manipulator.cpp:326 +#: ../src/ui/tool/node.cpp:270 msgid "Change node type" msgstr "Knooppunttype veranderen" -#: ../src/ui/tool/multi-path-manipulator.cpp:330 +#: ../src/ui/tool/multi-path-manipulator.cpp:334 msgid "Straighten segments" msgstr "Segmenten effenen" -#: ../src/ui/tool/multi-path-manipulator.cpp:332 +#: ../src/ui/tool/multi-path-manipulator.cpp:336 msgid "Make segments curves" msgstr "Van segmenten curven maken" -#: ../src/ui/tool/multi-path-manipulator.cpp:339 +#: ../src/ui/tool/multi-path-manipulator.cpp:343 msgid "Add nodes" msgstr "Knooppunten toevoegen" -#: ../src/ui/tool/multi-path-manipulator.cpp:344 +#: ../src/ui/tool/multi-path-manipulator.cpp:348 msgid "Add extremum nodes" msgstr "Knooppunten aan uiteinden toevoegen" -#: ../src/ui/tool/multi-path-manipulator.cpp:350 +#: ../src/ui/tool/multi-path-manipulator.cpp:354 msgid "Duplicate nodes" msgstr "Knooppunten dupliceren" -#: ../src/ui/tool/multi-path-manipulator.cpp:412 -#: ../src/widgets/node-toolbar.cpp:417 +#: ../src/ui/tool/multi-path-manipulator.cpp:416 +#: ../src/widgets/node-toolbar.cpp:420 msgid "Join nodes" msgstr "Knooppunten samenvoegen" -#: ../src/ui/tool/multi-path-manipulator.cpp:419 -#: ../src/widgets/node-toolbar.cpp:428 +#: ../src/ui/tool/multi-path-manipulator.cpp:423 +#: ../src/widgets/node-toolbar.cpp:431 msgid "Break nodes" msgstr "Knooppunten verbreken" -#: ../src/ui/tool/multi-path-manipulator.cpp:426 +#: ../src/ui/tool/multi-path-manipulator.cpp:430 msgid "Delete nodes" msgstr "Knooppunten verwijderen" -#: ../src/ui/tool/multi-path-manipulator.cpp:756 +#: ../src/ui/tool/multi-path-manipulator.cpp:760 msgid "Move nodes" msgstr "Knooppunten verplaatsen" -#: ../src/ui/tool/multi-path-manipulator.cpp:759 +#: ../src/ui/tool/multi-path-manipulator.cpp:763 msgid "Move nodes horizontally" msgstr "Knooppunten horizontaal verplaatsen" -#: ../src/ui/tool/multi-path-manipulator.cpp:763 +#: ../src/ui/tool/multi-path-manipulator.cpp:767 msgid "Move nodes vertically" msgstr "Knooppunten verticaal verplaatsen" -#: ../src/ui/tool/multi-path-manipulator.cpp:767 -#: ../src/ui/tool/multi-path-manipulator.cpp:770 +#: ../src/ui/tool/multi-path-manipulator.cpp:771 +#: ../src/ui/tool/multi-path-manipulator.cpp:774 msgid "Rotate nodes" msgstr "Knooppunten roteren" -#: ../src/ui/tool/multi-path-manipulator.cpp:774 -#: ../src/ui/tool/multi-path-manipulator.cpp:780 +#: ../src/ui/tool/multi-path-manipulator.cpp:778 +#: ../src/ui/tool/multi-path-manipulator.cpp:784 msgid "Scale nodes uniformly" msgstr "Knooppunten uniform schalen" -#: ../src/ui/tool/multi-path-manipulator.cpp:777 +#: ../src/ui/tool/multi-path-manipulator.cpp:781 msgid "Scale nodes" msgstr "Knooppunten schalen" -#: ../src/ui/tool/multi-path-manipulator.cpp:784 +#: ../src/ui/tool/multi-path-manipulator.cpp:788 msgid "Scale nodes horizontally" msgstr "Knooppunten horizontaal schalen" -#: ../src/ui/tool/multi-path-manipulator.cpp:788 +#: ../src/ui/tool/multi-path-manipulator.cpp:792 msgid "Scale nodes vertically" msgstr "Knooppunten verticaal schalen" -#: ../src/ui/tool/multi-path-manipulator.cpp:792 +#: ../src/ui/tool/multi-path-manipulator.cpp:796 msgid "Skew nodes horizontally" msgstr "Knooppunten horizontaal scheeftrekken" -#: ../src/ui/tool/multi-path-manipulator.cpp:796 +#: ../src/ui/tool/multi-path-manipulator.cpp:800 msgid "Skew nodes vertically" msgstr "Knooppunten verticaal scheeftrekken" -#: ../src/ui/tool/multi-path-manipulator.cpp:800 +#: ../src/ui/tool/multi-path-manipulator.cpp:804 msgid "Flip nodes horizontally" msgstr "Knooppunten horizontaal spiegelen" -#: ../src/ui/tool/multi-path-manipulator.cpp:803 +#: ../src/ui/tool/multi-path-manipulator.cpp:807 msgid "Flip nodes vertically" msgstr "Knooppunten verticaal spiegelen" @@ -19906,143 +19850,143 @@ msgctxt "Node tool tip" msgid "Drag to select objects to edit" msgstr "Sleep om te bewerken objecten te selecteren" -#: ../src/ui/tool/node.cpp:246 +#: ../src/ui/tool/node.cpp:245 msgid "Cusp node handle" msgstr "Handvat hoekig knooppunt" -#: ../src/ui/tool/node.cpp:247 +#: ../src/ui/tool/node.cpp:246 msgid "Smooth node handle" msgstr "Handvat glad knooppunt" -#: ../src/ui/tool/node.cpp:248 +#: ../src/ui/tool/node.cpp:247 msgid "Symmetric node handle" msgstr "Handvat symmetrisch knooppunt" -#: ../src/ui/tool/node.cpp:249 +#: ../src/ui/tool/node.cpp:248 msgid "Auto-smooth node handle" msgstr "Handvat automatisch glad knooppunt" -#: ../src/ui/tool/node.cpp:433 +#: ../src/ui/tool/node.cpp:432 msgctxt "Path handle tip" msgid "more: Shift, Ctrl, Alt" msgstr "meer: Shift, Ctrl, Alt" -#: ../src/ui/tool/node.cpp:435 +#: ../src/ui/tool/node.cpp:434 msgctxt "Path handle tip" msgid "more: Ctrl, Alt" msgstr "meer: Ctrl, Alt" -#: ../src/ui/tool/node.cpp:441 +#: ../src/ui/tool/node.cpp:440 #, c-format msgctxt "Path handle tip" msgid "Shift+Ctrl+Alt: preserve length and snap rotation angle to %g° increments while rotating both handles" msgstr "Shift+Ctrl+Alt: lengte behouden en draaihoek beperken tot stappen van %g° tijdens roteren van beide handvatten" -#: ../src/ui/tool/node.cpp:446 +#: ../src/ui/tool/node.cpp:445 #, c-format msgctxt "Path handle tip" msgid "Ctrl+Alt: preserve length and snap rotation angle to %g° increments" msgstr "Ctrl+Alt: lengte behouden en draaihoek beperken tot stappen van %g°" -#: ../src/ui/tool/node.cpp:452 +#: ../src/ui/tool/node.cpp:451 msgctxt "Path handle tip" msgid "Shift+Alt: preserve handle length and rotate both handles" msgstr "Shift+Alt: handvatlengte behouden en beide handvatten roteren" -#: ../src/ui/tool/node.cpp:455 +#: ../src/ui/tool/node.cpp:454 msgctxt "Path handle tip" msgid "Alt: preserve handle length while dragging" msgstr "Alt: handvatlengte behouden tijdens slepen" -#: ../src/ui/tool/node.cpp:462 +#: ../src/ui/tool/node.cpp:461 #, c-format msgctxt "Path handle tip" msgid "Shift+Ctrl: snap rotation angle to %g° increments and rotate both handles" msgstr "Shift+Ctrl: draaihoek beperken tot stappen van %g° en handvatten roteren" -#: ../src/ui/tool/node.cpp:466 +#: ../src/ui/tool/node.cpp:465 #, c-format msgctxt "Path handle tip" msgid "Ctrl: snap rotation angle to %g° increments, click to retract" msgstr "Ctrl: draaihoek beperken tot stappen van %g°, klik voor intrekken" -#: ../src/ui/tool/node.cpp:471 +#: ../src/ui/tool/node.cpp:470 msgctxt "Path hande tip" msgid "Shift: rotate both handles by the same angle" msgstr "Shift: beide handvatten met dezelfde hoek roteren" -#: ../src/ui/tool/node.cpp:478 +#: ../src/ui/tool/node.cpp:477 #, c-format msgctxt "Path handle tip" msgid "Auto node handle: drag to convert to smooth node (%s)" msgstr "Automatischknooppunthandvat: sleep om om te zetten naar een glad knooppunt (%s)" -#: ../src/ui/tool/node.cpp:481 +#: ../src/ui/tool/node.cpp:480 #, c-format msgctxt "Path handle tip" msgid "%s: drag to shape the segment (%s)" msgstr "%s: sleep om het segment te vervormen (%s)" -#: ../src/ui/tool/node.cpp:497 +#: ../src/ui/tool/node.cpp:500 #, c-format msgctxt "Path handle tip" msgid "Move handle by %s, %s; angle %.2f°, length %s" msgstr "Handvat verplaatsen met %s, %s; hoek %.2f°, lengte %s" -#: ../src/ui/tool/node.cpp:1263 +#: ../src/ui/tool/node.cpp:1266 msgctxt "Path node tip" msgid "Shift: drag out a handle, click to toggle selection" msgstr "Shift: sleep een handvat, klik voor verandering selectie" -#: ../src/ui/tool/node.cpp:1265 +#: ../src/ui/tool/node.cpp:1268 msgctxt "Path node tip" msgid "Shift: click to toggle selection" msgstr "Shift: klik voor verandering selectie" -#: ../src/ui/tool/node.cpp:1270 +#: ../src/ui/tool/node.cpp:1273 msgctxt "Path node tip" msgid "Ctrl+Alt: move along handle lines, click to delete node" msgstr "Ctrl+Alt: verplaatsen langs handvatlijnen, klik om knooppunt te verwijderen" -#: ../src/ui/tool/node.cpp:1273 +#: ../src/ui/tool/node.cpp:1276 msgctxt "Path node tip" msgid "Ctrl: move along axes, click to change node type" msgstr "Ctrl: verplaatsen langs assen, klik om knooppunttype te veranderen" -#: ../src/ui/tool/node.cpp:1277 +#: ../src/ui/tool/node.cpp:1280 msgctxt "Path node tip" msgid "Alt: sculpt nodes" msgstr "Alt: knooppunten boetseren" -#: ../src/ui/tool/node.cpp:1285 +#: ../src/ui/tool/node.cpp:1288 #, c-format msgctxt "Path node tip" msgid "%s: drag to shape the path (more: Shift, Ctrl, Alt)" msgstr "%s: sleep om het pad te vervormen (toetscombinatie: Shift, Ctrl, Alt)" -#: ../src/ui/tool/node.cpp:1288 +#: ../src/ui/tool/node.cpp:1291 #, c-format msgctxt "Path node tip" msgid "%s: drag to shape the path, click to toggle scale/rotation handles (more: Shift, Ctrl, Alt)" msgstr "%s: sleep om het pad te vervormen, klik om te schakelen tussen schalings- en rotatiehandvatten (toetscombinaties: Shift, Ctrl, Alt)" -#: ../src/ui/tool/node.cpp:1291 +#: ../src/ui/tool/node.cpp:1294 #, c-format msgctxt "Path node tip" msgid "%s: drag to shape the path, click to select only this node (more: Shift, Ctrl, Alt)" msgstr "%s: sleep om het pad te vervormen, klik om enkel dit knooppunt te selecteren (toetscombinaties: Shift, Ctrl, Alt)" -#: ../src/ui/tool/node.cpp:1299 +#: ../src/ui/tool/node.cpp:1305 #, c-format msgctxt "Path node tip" msgid "Move node by %s, %s" msgstr "Knooppunt verplaatsen met %s, %s" -#: ../src/ui/tool/node.cpp:1311 +#: ../src/ui/tool/node.cpp:1317 msgid "Symmetric node" msgstr "Symmetrisch knooppunt" -#: ../src/ui/tool/node.cpp:1312 +#: ../src/ui/tool/node.cpp:1318 msgid "Auto-smooth node" msgstr "Automatisch glad knooppunt" @@ -20056,7 +20000,7 @@ msgstr "Roteerhandvat" #. We need to call MPM's method because it could have been our last node #: ../src/ui/tool/path-manipulator.cpp:1374 -#: ../src/widgets/node-toolbar.cpp:406 +#: ../src/widgets/node-toolbar.cpp:409 msgid "Delete node" msgstr "Item verwijderen" @@ -20205,8 +20149,8 @@ msgid "MetadataLicence|Other" msgstr "Ander" #: ../src/ui/widget/object-composite-settings.cpp:67 -#: ../src/ui/widget/selected-style.cpp:1090 -#: ../src/ui/widget/selected-style.cpp:1091 +#: ../src/ui/widget/selected-style.cpp:1095 +#: ../src/ui/widget/selected-style.cpp:1096 msgid "Opacity (%)" msgstr "Ondoorzichtigheid (%)" @@ -20215,185 +20159,187 @@ msgid "Change blur" msgstr "Vervaging wijzigen" #: ../src/ui/widget/object-composite-settings.cpp:220 -#: ../src/ui/widget/selected-style.cpp:922 -#: ../src/ui/widget/selected-style.cpp:1216 +#: ../src/ui/widget/selected-style.cpp:927 +#: ../src/ui/widget/selected-style.cpp:1221 msgid "Change opacity" msgstr "Ondoorzichtigheid wijzigen" -#: ../src/ui/widget/page-sizer.cpp:237 +#: ../src/ui/widget/page-sizer.cpp:235 msgid "U_nits:" msgstr "Ee_nheden:" -#: ../src/ui/widget/page-sizer.cpp:238 +#: ../src/ui/widget/page-sizer.cpp:236 msgid "Width of paper" msgstr "Breedte van het papier" -#: ../src/ui/widget/page-sizer.cpp:239 +#: ../src/ui/widget/page-sizer.cpp:237 msgid "Height of paper" msgstr "Hoogte van het papier" -#: ../src/ui/widget/page-sizer.cpp:240 +#: ../src/ui/widget/page-sizer.cpp:238 msgid "T_op margin:" msgstr "_Bovenmarge" -#: ../src/ui/widget/page-sizer.cpp:240 +#: ../src/ui/widget/page-sizer.cpp:238 msgid "Top margin" msgstr "Bovenmarge" -#: ../src/ui/widget/page-sizer.cpp:241 +#: ../src/ui/widget/page-sizer.cpp:239 msgid "L_eft:" msgstr "_Links:" -#: ../src/ui/widget/page-sizer.cpp:241 +#: ../src/ui/widget/page-sizer.cpp:239 +#: ../share/extensions/guides_creator.inx.h:17 msgid "Left margin" msgstr "Linkermarge" -#: ../src/ui/widget/page-sizer.cpp:242 +#: ../src/ui/widget/page-sizer.cpp:240 msgid "Ri_ght:" msgstr "_Rechts:" -#: ../src/ui/widget/page-sizer.cpp:242 +#: ../src/ui/widget/page-sizer.cpp:240 +#: ../share/extensions/guides_creator.inx.h:18 msgid "Right margin" msgstr "Rechtermarge" -#: ../src/ui/widget/page-sizer.cpp:243 +#: ../src/ui/widget/page-sizer.cpp:241 msgid "Botto_m:" msgstr "_Onder:" -#: ../src/ui/widget/page-sizer.cpp:243 +#: ../src/ui/widget/page-sizer.cpp:241 msgid "Bottom margin" msgstr "Ondermarge" -#: ../src/ui/widget/page-sizer.cpp:303 +#: ../src/ui/widget/page-sizer.cpp:296 #: ../share/extensions/hpgl_output.inx.h:7 msgid "Orientation:" msgstr "Oriëntatie:" -#: ../src/ui/widget/page-sizer.cpp:306 +#: ../src/ui/widget/page-sizer.cpp:299 msgid "_Landscape" msgstr "_Liggend" -#: ../src/ui/widget/page-sizer.cpp:311 +#: ../src/ui/widget/page-sizer.cpp:304 msgid "_Portrait" msgstr "_Staand" #. ## Set up custom size frame -#: ../src/ui/widget/page-sizer.cpp:329 +#: ../src/ui/widget/page-sizer.cpp:322 msgid "Custom size" msgstr "Aangepaste grootte" -#: ../src/ui/widget/page-sizer.cpp:374 +#: ../src/ui/widget/page-sizer.cpp:367 msgid "Resi_ze page to content..." msgstr "_Pagina schalen naar inhoud..." -#: ../src/ui/widget/page-sizer.cpp:426 +#: ../src/ui/widget/page-sizer.cpp:419 msgid "_Resize page to drawing or selection" msgstr "Pagina _schalen naar tekening of selectie" -#: ../src/ui/widget/page-sizer.cpp:427 +#: ../src/ui/widget/page-sizer.cpp:420 msgid "Resize the page to fit the current selection, or the entire drawing if there is no selection" msgstr "De afmetingen van de pagina zodanig aanpassen dat de huidige selectie er precies op past, of de volledige tekening als er niets geselecteerd is" # XXX Waar wordt dit gebruikt? -#: ../src/ui/widget/page-sizer.cpp:492 +#: ../src/ui/widget/page-sizer.cpp:485 msgid "Set page size" msgstr "Paginagrootte instellen" -#: ../src/ui/widget/panel.cpp:112 +#: ../src/ui/widget/panel.cpp:116 msgid "List" msgstr "Lijst" -#: ../src/ui/widget/panel.cpp:135 +#: ../src/ui/widget/panel.cpp:139 msgctxt "Swatches" msgid "Size" msgstr "Grootte" -#: ../src/ui/widget/panel.cpp:139 +#: ../src/ui/widget/panel.cpp:143 msgctxt "Swatches height" msgid "Tiny" msgstr "Klein" -#: ../src/ui/widget/panel.cpp:140 +#: ../src/ui/widget/panel.cpp:144 msgctxt "Swatches height" msgid "Small" msgstr "Klein" -#: ../src/ui/widget/panel.cpp:141 +#: ../src/ui/widget/panel.cpp:145 msgctxt "Swatches height" msgid "Medium" msgstr "Middel" -#: ../src/ui/widget/panel.cpp:142 +#: ../src/ui/widget/panel.cpp:146 msgctxt "Swatches height" msgid "Large" msgstr "Groot" -#: ../src/ui/widget/panel.cpp:143 +#: ../src/ui/widget/panel.cpp:147 msgctxt "Swatches height" msgid "Huge" msgstr "Groot" -#: ../src/ui/widget/panel.cpp:165 +#: ../src/ui/widget/panel.cpp:169 msgctxt "Swatches" msgid "Width" msgstr "Breedte" -#: ../src/ui/widget/panel.cpp:169 +#: ../src/ui/widget/panel.cpp:173 msgctxt "Swatches width" msgid "Narrower" msgstr "Smaller" -#: ../src/ui/widget/panel.cpp:170 +#: ../src/ui/widget/panel.cpp:174 msgctxt "Swatches width" msgid "Narrow" msgstr "Smal" -#: ../src/ui/widget/panel.cpp:171 +#: ../src/ui/widget/panel.cpp:175 msgctxt "Swatches width" msgid "Medium" msgstr "Middel" -#: ../src/ui/widget/panel.cpp:172 +#: ../src/ui/widget/panel.cpp:176 msgctxt "Swatches width" msgid "Wide" msgstr "Breed" -#: ../src/ui/widget/panel.cpp:173 +#: ../src/ui/widget/panel.cpp:177 msgctxt "Swatches width" msgid "Wider" msgstr "Breed" -#: ../src/ui/widget/panel.cpp:203 +#: ../src/ui/widget/panel.cpp:207 msgctxt "Swatches" msgid "Border" msgstr "Rand" -#: ../src/ui/widget/panel.cpp:207 +#: ../src/ui/widget/panel.cpp:211 msgctxt "Swatches border" msgid "None" msgstr "Geen" -#: ../src/ui/widget/panel.cpp:208 +#: ../src/ui/widget/panel.cpp:212 msgctxt "Swatches border" msgid "Solid" msgstr "Massief" -#: ../src/ui/widget/panel.cpp:209 +#: ../src/ui/widget/panel.cpp:213 msgctxt "Swatches border" msgid "Wide" msgstr "Breed" #. TRANSLATORS: "Wrap" indicates how colour swatches are displayed -#: ../src/ui/widget/panel.cpp:240 +#: ../src/ui/widget/panel.cpp:244 msgctxt "Swatches" msgid "Wrap" msgstr "Terugloop" -#: ../src/ui/widget/preferences-widget.cpp:798 +#: ../src/ui/widget/preferences-widget.cpp:802 msgid "_Browse..." msgstr "_Bladeren..." -#: ../src/ui/widget/preferences-widget.cpp:884 +#: ../src/ui/widget/preferences-widget.cpp:888 msgid "Select a bitmap editor" msgstr "Selecteer een bitmapeditor" @@ -20431,362 +20377,362 @@ msgstr "Renderen d.m.v. Cairo-vectorbewerkingen. Het bestand is meestal kleiner msgid "Render everything as bitmap. The resulting image is usually larger in file size and cannot be arbitrarily scaled without quality loss, but all objects will be rendered exactly as displayed." msgstr "Alles als bitmap renderen. Het bestand is meestal groter en kan niet geschaald worden zonder kwaliteitsverlies, maar alle objecten worden precies gerenderd zoals ze weergegeven worden." -#: ../src/ui/widget/selected-style.cpp:127 -#: ../src/ui/widget/style-swatch.cpp:126 +#: ../src/ui/widget/selected-style.cpp:130 +#: ../src/ui/widget/style-swatch.cpp:127 msgid "Fill:" msgstr "Vulling:" -#: ../src/ui/widget/selected-style.cpp:129 +#: ../src/ui/widget/selected-style.cpp:132 msgid "O:" msgstr "O:" -#: ../src/ui/widget/selected-style.cpp:174 +#: ../src/ui/widget/selected-style.cpp:177 msgid "N/A" msgstr "---" -#: ../src/ui/widget/selected-style.cpp:177 -#: ../src/ui/widget/selected-style.cpp:1083 -#: ../src/ui/widget/selected-style.cpp:1084 +#: ../src/ui/widget/selected-style.cpp:180 +#: ../src/ui/widget/selected-style.cpp:1088 +#: ../src/ui/widget/selected-style.cpp:1089 #: ../src/widgets/gradient-toolbar.cpp:176 msgid "Nothing selected" msgstr "Niets geselecteerd" -#: ../src/ui/widget/selected-style.cpp:179 -#: ../src/ui/widget/style-swatch.cpp:319 +#: ../src/ui/widget/selected-style.cpp:182 +#: ../src/ui/widget/style-swatch.cpp:320 msgctxt "Fill and stroke" msgid "None" msgstr "Geen" -#: ../src/ui/widget/selected-style.cpp:182 -#: ../src/ui/widget/style-swatch.cpp:321 +#: ../src/ui/widget/selected-style.cpp:185 +#: ../src/ui/widget/style-swatch.cpp:322 msgctxt "Fill and stroke" msgid "No fill" msgstr "Geen vulling" -#: ../src/ui/widget/selected-style.cpp:182 -#: ../src/ui/widget/style-swatch.cpp:321 +#: ../src/ui/widget/selected-style.cpp:185 +#: ../src/ui/widget/style-swatch.cpp:322 msgctxt "Fill and stroke" msgid "No stroke" msgstr "Geen lijn" -#: ../src/ui/widget/selected-style.cpp:184 -#: ../src/ui/widget/style-swatch.cpp:300 -#: ../src/widgets/paint-selector.cpp:239 +#: ../src/ui/widget/selected-style.cpp:187 +#: ../src/ui/widget/style-swatch.cpp:301 +#: ../src/widgets/paint-selector.cpp:242 msgid "Pattern" msgstr "Patroon" -#: ../src/ui/widget/selected-style.cpp:187 -#: ../src/ui/widget/style-swatch.cpp:302 +#: ../src/ui/widget/selected-style.cpp:190 +#: ../src/ui/widget/style-swatch.cpp:303 msgid "Pattern fill" msgstr "Patroonvulling" -#: ../src/ui/widget/selected-style.cpp:187 -#: ../src/ui/widget/style-swatch.cpp:302 +#: ../src/ui/widget/selected-style.cpp:190 +#: ../src/ui/widget/style-swatch.cpp:303 msgid "Pattern stroke" msgstr "Patroonlijn" -#: ../src/ui/widget/selected-style.cpp:189 +#: ../src/ui/widget/selected-style.cpp:192 msgid "L" msgstr "L" -#: ../src/ui/widget/selected-style.cpp:192 -#: ../src/ui/widget/style-swatch.cpp:294 +#: ../src/ui/widget/selected-style.cpp:195 +#: ../src/ui/widget/style-swatch.cpp:295 msgid "Linear gradient fill" msgstr "Lineair vulkleurverloop" -#: ../src/ui/widget/selected-style.cpp:192 -#: ../src/ui/widget/style-swatch.cpp:294 +#: ../src/ui/widget/selected-style.cpp:195 +#: ../src/ui/widget/style-swatch.cpp:295 msgid "Linear gradient stroke" msgstr "Lineair lijnkleurverloop" -#: ../src/ui/widget/selected-style.cpp:199 +#: ../src/ui/widget/selected-style.cpp:202 msgid "R" msgstr "R" -#: ../src/ui/widget/selected-style.cpp:202 -#: ../src/ui/widget/style-swatch.cpp:298 +#: ../src/ui/widget/selected-style.cpp:205 +#: ../src/ui/widget/style-swatch.cpp:299 msgid "Radial gradient fill" msgstr "Radiaal vulkleurverloop" -#: ../src/ui/widget/selected-style.cpp:202 -#: ../src/ui/widget/style-swatch.cpp:298 +#: ../src/ui/widget/selected-style.cpp:205 +#: ../src/ui/widget/style-swatch.cpp:299 msgid "Radial gradient stroke" msgstr "Radiaal lijnkleurverloop" -#: ../src/ui/widget/selected-style.cpp:209 +#: ../src/ui/widget/selected-style.cpp:212 msgid "Different" msgstr "Verschillend" -#: ../src/ui/widget/selected-style.cpp:212 +#: ../src/ui/widget/selected-style.cpp:215 msgid "Different fills" msgstr "Verschillende vullingen" -#: ../src/ui/widget/selected-style.cpp:212 +#: ../src/ui/widget/selected-style.cpp:215 msgid "Different strokes" msgstr "Verschillende lijnen" -#: ../src/ui/widget/selected-style.cpp:214 -#: ../src/ui/widget/style-swatch.cpp:324 +#: ../src/ui/widget/selected-style.cpp:217 +#: ../src/ui/widget/style-swatch.cpp:325 msgid "Unset" msgstr "Uitgezet" #. TRANSLATORS COMMENT: unset is a verb here -#: ../src/ui/widget/selected-style.cpp:217 -#: ../src/ui/widget/selected-style.cpp:275 -#: ../src/ui/widget/selected-style.cpp:554 -#: ../src/ui/widget/style-swatch.cpp:326 -#: ../src/widgets/fill-style.cpp:708 +#: ../src/ui/widget/selected-style.cpp:220 +#: ../src/ui/widget/selected-style.cpp:278 +#: ../src/ui/widget/selected-style.cpp:559 +#: ../src/ui/widget/style-swatch.cpp:327 +#: ../src/widgets/fill-style.cpp:712 msgid "Unset fill" msgstr "Vulling uitzetten" -#: ../src/ui/widget/selected-style.cpp:217 -#: ../src/ui/widget/selected-style.cpp:275 -#: ../src/ui/widget/selected-style.cpp:570 -#: ../src/ui/widget/style-swatch.cpp:326 -#: ../src/widgets/fill-style.cpp:708 +#: ../src/ui/widget/selected-style.cpp:220 +#: ../src/ui/widget/selected-style.cpp:278 +#: ../src/ui/widget/selected-style.cpp:575 +#: ../src/ui/widget/style-swatch.cpp:327 +#: ../src/widgets/fill-style.cpp:712 msgid "Unset stroke" msgstr "Omlijning uitzetten" -#: ../src/ui/widget/selected-style.cpp:220 +#: ../src/ui/widget/selected-style.cpp:223 msgid "Flat color fill" msgstr "Egale vulkleur" -#: ../src/ui/widget/selected-style.cpp:220 +#: ../src/ui/widget/selected-style.cpp:223 msgid "Flat color stroke" msgstr "Egale lijnkleur" #. TRANSLATOR COMMENT: A means "Averaged" -#: ../src/ui/widget/selected-style.cpp:223 +#: ../src/ui/widget/selected-style.cpp:226 msgid "a" msgstr "g" -#: ../src/ui/widget/selected-style.cpp:226 +#: ../src/ui/widget/selected-style.cpp:229 msgid "Fill is averaged over selected objects" msgstr "Vulling is het gemiddelde van de geselecteerde objecten" -#: ../src/ui/widget/selected-style.cpp:226 +#: ../src/ui/widget/selected-style.cpp:229 msgid "Stroke is averaged over selected objects" msgstr "Lijn is het gemiddelde van de geselecteerde objecten" #. TRANSLATOR COMMENT: M means "Multiple" -#: ../src/ui/widget/selected-style.cpp:229 +#: ../src/ui/widget/selected-style.cpp:232 msgid "m" msgstr "m" -#: ../src/ui/widget/selected-style.cpp:232 +#: ../src/ui/widget/selected-style.cpp:235 msgid "Multiple selected objects have the same fill" msgstr "Meerdere geselecteerde objecten hebben dezelfde vulling" -#: ../src/ui/widget/selected-style.cpp:232 +#: ../src/ui/widget/selected-style.cpp:235 msgid "Multiple selected objects have the same stroke" msgstr "Meerdere geselecteerde objecten hebben dezelfde lijn" -#: ../src/ui/widget/selected-style.cpp:234 +#: ../src/ui/widget/selected-style.cpp:237 msgid "Edit fill..." msgstr "Vulling bewerken..." -#: ../src/ui/widget/selected-style.cpp:234 +#: ../src/ui/widget/selected-style.cpp:237 msgid "Edit stroke..." msgstr "Lijn bewerken..." -#: ../src/ui/widget/selected-style.cpp:238 +#: ../src/ui/widget/selected-style.cpp:241 msgid "Last set color" msgstr "Laatst gebruikte kleur" -#: ../src/ui/widget/selected-style.cpp:242 +#: ../src/ui/widget/selected-style.cpp:245 msgid "Last selected color" msgstr "Laatst geselecteerde kleur" -#: ../src/ui/widget/selected-style.cpp:258 +#: ../src/ui/widget/selected-style.cpp:261 msgid "Copy color" msgstr "Kleur kopiëren" -#: ../src/ui/widget/selected-style.cpp:262 +#: ../src/ui/widget/selected-style.cpp:265 msgid "Paste color" msgstr "Kleur plakken" -#: ../src/ui/widget/selected-style.cpp:266 -#: ../src/ui/widget/selected-style.cpp:847 +#: ../src/ui/widget/selected-style.cpp:269 +#: ../src/ui/widget/selected-style.cpp:852 msgid "Swap fill and stroke" msgstr "Kleur vulling en lijn verwisselen" -#: ../src/ui/widget/selected-style.cpp:270 -#: ../src/ui/widget/selected-style.cpp:579 -#: ../src/ui/widget/selected-style.cpp:588 +#: ../src/ui/widget/selected-style.cpp:273 +#: ../src/ui/widget/selected-style.cpp:584 +#: ../src/ui/widget/selected-style.cpp:593 msgid "Make fill opaque" msgstr "Vulling ondoorzichtig maken" -#: ../src/ui/widget/selected-style.cpp:270 +#: ../src/ui/widget/selected-style.cpp:273 msgid "Make stroke opaque" msgstr "Lijn ondoorzichtig maken" -#: ../src/ui/widget/selected-style.cpp:279 -#: ../src/ui/widget/selected-style.cpp:536 -#: ../src/widgets/fill-style.cpp:506 +#: ../src/ui/widget/selected-style.cpp:282 +#: ../src/ui/widget/selected-style.cpp:541 +#: ../src/widgets/fill-style.cpp:510 msgid "Remove fill" msgstr "Vulling verwijderen" -#: ../src/ui/widget/selected-style.cpp:279 -#: ../src/ui/widget/selected-style.cpp:545 -#: ../src/widgets/fill-style.cpp:506 +#: ../src/ui/widget/selected-style.cpp:282 +#: ../src/ui/widget/selected-style.cpp:550 +#: ../src/widgets/fill-style.cpp:510 msgid "Remove stroke" msgstr "Lijn verwijderen" -#: ../src/ui/widget/selected-style.cpp:600 +#: ../src/ui/widget/selected-style.cpp:605 msgid "Apply last set color to fill" msgstr "De laatst gebruikte kleur voor de vulling gebruiken" -#: ../src/ui/widget/selected-style.cpp:612 +#: ../src/ui/widget/selected-style.cpp:617 msgid "Apply last set color to stroke" msgstr "De laatst gebruikte kleur voor de lijn gebruiken" -#: ../src/ui/widget/selected-style.cpp:623 +#: ../src/ui/widget/selected-style.cpp:628 msgid "Apply last selected color to fill" msgstr "De laatst gekozen kleur voor de vulling gebruiken" -#: ../src/ui/widget/selected-style.cpp:634 +#: ../src/ui/widget/selected-style.cpp:639 msgid "Apply last selected color to stroke" msgstr "De laatst gekozen kleur voor de lijn gebruiken" -#: ../src/ui/widget/selected-style.cpp:660 +#: ../src/ui/widget/selected-style.cpp:665 msgid "Invert fill" msgstr "Vulling inverteren" -#: ../src/ui/widget/selected-style.cpp:684 +#: ../src/ui/widget/selected-style.cpp:689 msgid "Invert stroke" msgstr "Lijn inverteren" -#: ../src/ui/widget/selected-style.cpp:696 +#: ../src/ui/widget/selected-style.cpp:701 msgid "White fill" msgstr "Witte vulling" -#: ../src/ui/widget/selected-style.cpp:708 +#: ../src/ui/widget/selected-style.cpp:713 msgid "White stroke" msgstr "Witte lijn" -#: ../src/ui/widget/selected-style.cpp:720 +#: ../src/ui/widget/selected-style.cpp:725 msgid "Black fill" msgstr "Zwarte vulling" -#: ../src/ui/widget/selected-style.cpp:732 +#: ../src/ui/widget/selected-style.cpp:737 msgid "Black stroke" msgstr "Zwarte lijn" -#: ../src/ui/widget/selected-style.cpp:775 +#: ../src/ui/widget/selected-style.cpp:780 msgid "Paste fill" msgstr "Vulling plakken" -#: ../src/ui/widget/selected-style.cpp:793 +#: ../src/ui/widget/selected-style.cpp:798 msgid "Paste stroke" msgstr "Lijn plakken" -#: ../src/ui/widget/selected-style.cpp:949 +#: ../src/ui/widget/selected-style.cpp:954 msgid "Change stroke width" msgstr "Lijndikte aanpassen" -#: ../src/ui/widget/selected-style.cpp:1044 +#: ../src/ui/widget/selected-style.cpp:1049 msgid ", drag to adjust" msgstr ", sleep om aan te passen" -#: ../src/ui/widget/selected-style.cpp:1129 +#: ../src/ui/widget/selected-style.cpp:1134 #, c-format msgid "Stroke width: %.5g%s%s" msgstr "Lijndikte: %.5g%s%s" -#: ../src/ui/widget/selected-style.cpp:1133 +#: ../src/ui/widget/selected-style.cpp:1138 msgid " (averaged)" msgstr " (gemiddeld)" -#: ../src/ui/widget/selected-style.cpp:1161 +#: ../src/ui/widget/selected-style.cpp:1166 msgid "0 (transparent)" msgstr "0 (transparant)" -#: ../src/ui/widget/selected-style.cpp:1185 +#: ../src/ui/widget/selected-style.cpp:1190 msgid "100% (opaque)" msgstr "100% (ondoorzichtig)" -#: ../src/ui/widget/selected-style.cpp:1352 +#: ../src/ui/widget/selected-style.cpp:1357 msgid "Adjust alpha" msgstr "Alfa aanpassen" -#: ../src/ui/widget/selected-style.cpp:1354 +#: ../src/ui/widget/selected-style.cpp:1359 #, c-format msgid "Adjusting alpha: was %.3g, now %.3g (diff %.3g); with Ctrl to adjust lightness, with Shift to adjust saturation, without modifiers to adjust hue" msgstr "Alfa is aangepast: was %.3g, is nu %.3g (verschil %.3g); gebruik Shift om lichtheid, Shift om verzadiging en geen toets om tint aan te passen" -#: ../src/ui/widget/selected-style.cpp:1358 +#: ../src/ui/widget/selected-style.cpp:1363 msgid "Adjust saturation" msgstr "Verzadiging aanpassen" -#: ../src/ui/widget/selected-style.cpp:1360 +#: ../src/ui/widget/selected-style.cpp:1365 #, c-format msgid "Adjusting saturation: was %.3g, now %.3g (diff %.3g); with Ctrl to adjust lightness, with Alt to adjust alpha, without modifiers to adjust hue" msgstr "Verzadiging is aangepast: was %.3g, is nu %.3g (verschil %.3g); gebruik Ctrl om lichtheid, Alt om alfa en geen toets om tint aan te passen" -#: ../src/ui/widget/selected-style.cpp:1364 +#: ../src/ui/widget/selected-style.cpp:1369 msgid "Adjust lightness" msgstr "Lichtheid aanpassen" -#: ../src/ui/widget/selected-style.cpp:1366 +#: ../src/ui/widget/selected-style.cpp:1371 #, c-format msgid "Adjusting lightness: was %.3g, now %.3g (diff %.3g); with Shift to adjust saturation, with Alt to adjust alpha, without modifiers to adjust hue" msgstr "Lichtheid is aangepast: was %.3g, is nu %.3g (verschil %.3g); gebruik Shift om verzadiging, Alt om alfa en geen toets om tint aan te passen" -#: ../src/ui/widget/selected-style.cpp:1370 +#: ../src/ui/widget/selected-style.cpp:1375 msgid "Adjust hue" msgstr "Tint aanpassen" -#: ../src/ui/widget/selected-style.cpp:1372 +#: ../src/ui/widget/selected-style.cpp:1377 #, c-format msgid "Adjusting hue: was %.3g, now %.3g (diff %.3g); with Shift to adjust saturation, with Alt to adjust alpha, with Ctrl to adjust lightness" msgstr "Tint is aangepast: was %.3g, is nu %.3g (verschil %.3g); gebruik Shift om verzadiging, Alt om alfa en Ctrl om lichtheid aan te passen" -#: ../src/ui/widget/selected-style.cpp:1492 -#: ../src/ui/widget/selected-style.cpp:1506 +#: ../src/ui/widget/selected-style.cpp:1497 +#: ../src/ui/widget/selected-style.cpp:1511 msgid "Adjust stroke width" msgstr "Lijndikte aanpassen" -#: ../src/ui/widget/selected-style.cpp:1493 +#: ../src/ui/widget/selected-style.cpp:1498 #, c-format msgid "Adjusting stroke width: was %.3g, now %.3g (diff %.3g)" msgstr "Lijndikte aangepast: was %.3g, nu %.3g (verschil %.3g)" #. TRANSLATORS: "Link" means to _link_ two sliders together -#: ../src/ui/widget/spin-scale.cpp:137 +#: ../src/ui/widget/spin-scale.cpp:138 #: ../src/ui/widget/spin-slider.cpp:156 msgctxt "Sliders" msgid "Link" msgstr "Link" -#: ../src/ui/widget/style-swatch.cpp:292 +#: ../src/ui/widget/style-swatch.cpp:293 msgid "L Gradient" msgstr "L-verloop" -#: ../src/ui/widget/style-swatch.cpp:296 +#: ../src/ui/widget/style-swatch.cpp:297 msgid "R Gradient" msgstr "R-verloop" -#: ../src/ui/widget/style-swatch.cpp:312 +#: ../src/ui/widget/style-swatch.cpp:313 #, c-format msgid "Fill: %06x/%.3g" msgstr "Vulkleur: %06x/%.3g" -#: ../src/ui/widget/style-swatch.cpp:314 +#: ../src/ui/widget/style-swatch.cpp:315 #, c-format msgid "Stroke: %06x/%.3g" msgstr "Lijnkleur: %06x/%.3g" -#: ../src/ui/widget/style-swatch.cpp:346 +#: ../src/ui/widget/style-swatch.cpp:347 #, c-format msgid "Stroke width: %.5g%s" msgstr "Lijndikte: %.5g%s" -#: ../src/ui/widget/style-swatch.cpp:362 +#: ../src/ui/widget/style-swatch.cpp:363 #, c-format msgid "O: %2.0f" msgstr "O: %2.0f" -#: ../src/ui/widget/style-swatch.cpp:367 +#: ../src/ui/widget/style-swatch.cpp:368 #, c-format msgid "Opacity: %2.1f %%" msgstr "Ondoorzichtigheid: %2.1f %%" @@ -20826,27 +20772,31 @@ msgid_plural "shared by %d boxes; drag with Shift to separate sele msgstr[0] "gedeeld met %d kubus; sleep met Shift om de geselecteerde kubus(sen) te scheiden" msgstr[1] "gedeeld met %d kubussen; sleep met Shift om de geselecteerde kubus(sen) te scheiden" -#: ../src/verbs.cpp:150 -#: ../src/widgets/calligraphy-toolbar.cpp:647 +#: ../src/verbs.cpp:137 +msgid "File" +msgstr "Bestand" + +#: ../src/verbs.cpp:156 +#: ../src/widgets/calligraphy-toolbar.cpp:643 msgid "Edit" msgstr "Bewerken" -#: ../src/verbs.cpp:226 +#: ../src/verbs.cpp:232 msgid "Context" msgstr "" -#: ../src/verbs.cpp:245 -#: ../src/verbs.cpp:2162 +#: ../src/verbs.cpp:251 +#: ../src/verbs.cpp:2219 #: ../share/extensions/jessyInk_view.inx.h:1 #: ../share/extensions/polyhedron_3d.inx.h:26 msgid "View" msgstr "Zicht" -#: ../src/verbs.cpp:265 +#: ../src/verbs.cpp:271 msgid "Dialog" msgstr "Dialoog" -#: ../src/verbs.cpp:322 +#: ../src/verbs.cpp:328 #: ../share/extensions/lorem_ipsum.inx.h:8 #: ../share/extensions/replace_font.inx.h:11 #: ../share/extensions/split.inx.h:10 @@ -20854,6 +20804,7 @@ msgstr "Dialoog" #: ../share/extensions/text_extract.inx.h:14 #: ../share/extensions/text_flipcase.inx.h:2 #: ../share/extensions/text_lowercase.inx.h:2 +#: ../share/extensions/text_merge.inx.h:16 #: ../share/extensions/text_randomcase.inx.h:2 #: ../share/extensions/text_sentencecase.inx.h:2 #: ../share/extensions/text_titlecase.inx.h:2 @@ -20861,2674 +20812,2726 @@ msgstr "Dialoog" msgid "Text" msgstr "Tekst" -#: ../src/verbs.cpp:1169 +#: ../src/verbs.cpp:1223 msgid "Switch to next layer" msgstr "Verplaats naar de volgende laag" -#: ../src/verbs.cpp:1170 +#: ../src/verbs.cpp:1224 msgid "Switched to next layer." msgstr "Verplaatst naar de volgende laag." -#: ../src/verbs.cpp:1172 +#: ../src/verbs.cpp:1226 msgid "Cannot go past last layer." msgstr "Kan niet verder dan de laatste laag gaan." -#: ../src/verbs.cpp:1181 +#: ../src/verbs.cpp:1235 msgid "Switch to previous layer" msgstr "Verplaats naar de vorige laag" -#: ../src/verbs.cpp:1182 +#: ../src/verbs.cpp:1236 msgid "Switched to previous layer." msgstr "Verplaatst naar de vorige laag." -#: ../src/verbs.cpp:1184 +#: ../src/verbs.cpp:1238 msgid "Cannot go before first layer." msgstr "Kan niet verder dan de eerste laag gaan." -#: ../src/verbs.cpp:1205 -#: ../src/verbs.cpp:1302 -#: ../src/verbs.cpp:1334 -#: ../src/verbs.cpp:1340 -#: ../src/verbs.cpp:1364 -#: ../src/verbs.cpp:1379 +#: ../src/verbs.cpp:1259 +#: ../src/verbs.cpp:1356 +#: ../src/verbs.cpp:1388 +#: ../src/verbs.cpp:1394 +#: ../src/verbs.cpp:1418 +#: ../src/verbs.cpp:1433 msgid "No current layer." msgstr "Geen huidige laag." -#: ../src/verbs.cpp:1234 -#: ../src/verbs.cpp:1238 +#: ../src/verbs.cpp:1288 +#: ../src/verbs.cpp:1292 #, c-format msgid "Raised layer %s." msgstr "Laag %s is naar boven gebracht." -#: ../src/verbs.cpp:1235 +#: ../src/verbs.cpp:1289 msgid "Layer to top" msgstr "Laag bovenaan" -#: ../src/verbs.cpp:1239 +#: ../src/verbs.cpp:1293 msgid "Raise layer" msgstr "Laag omhoog" -#: ../src/verbs.cpp:1242 -#: ../src/verbs.cpp:1246 +#: ../src/verbs.cpp:1296 +#: ../src/verbs.cpp:1300 #, c-format msgid "Lowered layer %s." msgstr "Laag %s is omlaag gebracht." -#: ../src/verbs.cpp:1243 +#: ../src/verbs.cpp:1297 msgid "Layer to bottom" msgstr "Laag onderaan" -#: ../src/verbs.cpp:1247 +#: ../src/verbs.cpp:1301 msgid "Lower layer" msgstr "Laag omlaag" -#: ../src/verbs.cpp:1256 +#: ../src/verbs.cpp:1310 msgid "Cannot move layer any further." msgstr "Laag kan niet verder worden verplaatst." -#: ../src/verbs.cpp:1270 -#: ../src/verbs.cpp:1289 +#: ../src/verbs.cpp:1324 +#: ../src/verbs.cpp:1343 #, c-format msgid "%s copy" msgstr "%s kopiëren" -#: ../src/verbs.cpp:1297 +#: ../src/verbs.cpp:1351 msgid "Duplicate layer" msgstr "Laag dupliceren" #. TRANSLATORS: this means "The layer has been duplicated." -#: ../src/verbs.cpp:1300 +#: ../src/verbs.cpp:1354 msgid "Duplicated layer." msgstr "De laag is gedupliceerd." -#: ../src/verbs.cpp:1329 +#: ../src/verbs.cpp:1383 msgid "Delete layer" msgstr "Laag verwijderen" #. TRANSLATORS: this means "The layer has been deleted." -#: ../src/verbs.cpp:1332 +#: ../src/verbs.cpp:1386 msgid "Deleted layer." msgstr "De laag is verwijderd." -#: ../src/verbs.cpp:1349 +#: ../src/verbs.cpp:1403 msgid "Show all layers" msgstr "Alle lagen tonen" -#: ../src/verbs.cpp:1354 +#: ../src/verbs.cpp:1408 msgid "Hide all layers" msgstr "Alle lagen verbergen" -#: ../src/verbs.cpp:1359 +#: ../src/verbs.cpp:1413 msgid "Lock all layers" msgstr "Alle lagen vergrendelen" -#: ../src/verbs.cpp:1373 +#: ../src/verbs.cpp:1427 msgid "Unlock all layers" msgstr "Alle lagen ontgrendelen" -#: ../src/verbs.cpp:1447 +#: ../src/verbs.cpp:1511 msgid "Flip horizontally" msgstr "Horizontaal spiegelen" -#: ../src/verbs.cpp:1452 +#: ../src/verbs.cpp:1516 msgid "Flip vertically" msgstr "Verticaal spiegelen" #. TRANSLATORS: If you have translated the tutorial-basic.en.svgz file to your language, #. then translate this string as "tutorial-basic.LANG.svgz" (where LANG is your language #. code); otherwise leave as "tutorial-basic.svg". -#: ../src/verbs.cpp:2045 +#: ../src/verbs.cpp:2104 msgid "tutorial-basic.svg" msgstr "tutorial-basic.nl.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2049 +#: ../src/verbs.cpp:2108 msgid "tutorial-shapes.svg" msgstr "tutorial-shapes.nl.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2053 +#: ../src/verbs.cpp:2112 msgid "tutorial-advanced.svg" msgstr "tutorial-advanced.nl.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2057 +#: ../src/verbs.cpp:2116 msgid "tutorial-tracing.svg" msgstr "tutorial-tracing.nl.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2061 +#: ../src/verbs.cpp:2120 msgid "tutorial-calligraphy.svg" msgstr "tutorial-calligraphy.nl.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2065 +#: ../src/verbs.cpp:2124 msgid "tutorial-interpolate.svg" msgstr "tutorial-interpolate.nl.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2069 +#: ../src/verbs.cpp:2128 msgid "tutorial-elements.svg" msgstr "tutorial-elements.nl.svg" #. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2073 +#: ../src/verbs.cpp:2132 msgid "tutorial-tips.svg" msgstr "tutorial-tips.nl.svg" -#: ../src/verbs.cpp:2261 -#: ../src/verbs.cpp:2847 +#: ../src/verbs.cpp:2318 +#: ../src/verbs.cpp:2904 msgid "Unlock all objects in the current layer" msgstr "Alle objecten in de huidige laag ontgrendelen" -#: ../src/verbs.cpp:2265 -#: ../src/verbs.cpp:2849 +#: ../src/verbs.cpp:2322 +#: ../src/verbs.cpp:2906 msgid "Unlock all objects in all layers" msgstr "Alle objecten in alle lagen ontgrendelen" -#: ../src/verbs.cpp:2269 -#: ../src/verbs.cpp:2851 +#: ../src/verbs.cpp:2326 +#: ../src/verbs.cpp:2908 msgid "Unhide all objects in the current layer" msgstr "Alle objecten in de huidige laag weergeven" -#: ../src/verbs.cpp:2273 -#: ../src/verbs.cpp:2853 +#: ../src/verbs.cpp:2330 +#: ../src/verbs.cpp:2910 msgid "Unhide all objects in all layers" msgstr "Alle objecten in alle lagen weergeven" -#: ../src/verbs.cpp:2288 +#: ../src/verbs.cpp:2345 msgid "Does nothing" msgstr "Doet niets" -#: ../src/verbs.cpp:2291 +#: ../src/verbs.cpp:2348 msgid "Create new document from the default template" msgstr "Een nieuw document aanmaken volgens het standaardsjabloon" -#: ../src/verbs.cpp:2293 +#: ../src/verbs.cpp:2350 msgid "_Open..." msgstr "_Openen..." -#: ../src/verbs.cpp:2294 +#: ../src/verbs.cpp:2351 msgid "Open an existing document" msgstr "Een bestaand document openen" -#: ../src/verbs.cpp:2295 +#: ../src/verbs.cpp:2352 msgid "Re_vert" msgstr "_Terugdraaien" -#: ../src/verbs.cpp:2296 +#: ../src/verbs.cpp:2353 msgid "Revert to the last saved version of document (changes will be lost)" msgstr "Terugkeren naar de laatst opgeslagen versie van het document (huidige veranderingen gaan verloren)" -#: ../src/verbs.cpp:2297 +#: ../src/verbs.cpp:2354 msgid "Save document" msgstr "Het document opslaan" -#: ../src/verbs.cpp:2299 +#: ../src/verbs.cpp:2356 msgid "Save _As..." msgstr "Opslaan _als..." -#: ../src/verbs.cpp:2300 +#: ../src/verbs.cpp:2357 msgid "Save document under a new name" msgstr "Het document opslaan onder een nieuwe naam" -#: ../src/verbs.cpp:2301 +#: ../src/verbs.cpp:2358 msgid "Save a Cop_y..." msgstr "Kopie opslaan _als..." -#: ../src/verbs.cpp:2302 +#: ../src/verbs.cpp:2359 msgid "Save a copy of the document under a new name" msgstr "Een kopie van het document opslaan onder een nieuwe naam" -#: ../src/verbs.cpp:2303 +#: ../src/verbs.cpp:2360 msgid "_Print..." msgstr "Af_drukken..." -#: ../src/verbs.cpp:2303 +#: ../src/verbs.cpp:2360 msgid "Print document" msgstr "Het document afdrukken" #. TRANSLATORS: "Vacuum Defs" means "Clean up defs" (so as to remove unused definitions) -#: ../src/verbs.cpp:2306 +#: ../src/verbs.cpp:2363 msgid "Clean _up document" msgstr "Document o_pschonen" -#: ../src/verbs.cpp:2306 +#: ../src/verbs.cpp:2363 msgid "Remove unused definitions (such as gradients or clipping paths) from the <defs> of the document" msgstr "Ongebruikte definities (zoals kleurverlopen of hulplijnen) uit het <defs>-onderdeel van het bestand verwijderen" -#: ../src/verbs.cpp:2308 +#: ../src/verbs.cpp:2365 msgid "_Import..." msgstr "_Importeren..." -#: ../src/verbs.cpp:2309 +#: ../src/verbs.cpp:2366 msgid "Import a bitmap or SVG image into this document" msgstr "Bitmap of SVG-afbeelding in het document importeren" -#: ../src/verbs.cpp:2310 +#: ../src/verbs.cpp:2367 msgid "_Export Bitmap..." msgstr "_Bitmap exporteren..." -#: ../src/verbs.cpp:2311 +#: ../src/verbs.cpp:2368 msgid "Export this document or a selection as a bitmap image" msgstr "Document of selectie als bitmapafbeelding exporteren" -#: ../src/verbs.cpp:2312 +#: ../src/verbs.cpp:2369 msgid "Import Clip Art..." msgstr "Clipart importeren..." -#: ../src/verbs.cpp:2313 +#: ../src/verbs.cpp:2370 msgid "Import clipart from Open Clip Art Library" msgstr "Clipart uit Open Clip Art bibliotheek importeren" #. new FileVerb(SP_VERB_FILE_EXPORT_TO_OCAL, "FileExportToOCAL", N_("Export To Open Clip Art Library"), N_("Export this document to Open Clip Art Library"), INKSCAPE_ICON_DOCUMENT_EXPORT_OCAL), -#: ../src/verbs.cpp:2315 +#: ../src/verbs.cpp:2372 msgid "N_ext Window" msgstr "V_olgende venster" -#: ../src/verbs.cpp:2316 +#: ../src/verbs.cpp:2373 msgid "Switch to the next document window" msgstr "Naar het volgende documentvenster gaan" -#: ../src/verbs.cpp:2317 +#: ../src/verbs.cpp:2374 msgid "P_revious Window" msgstr "Vor_ige venster" -#: ../src/verbs.cpp:2318 +#: ../src/verbs.cpp:2375 msgid "Switch to the previous document window" msgstr "Naar het vorige documentvenster gaan" -#: ../src/verbs.cpp:2319 +#: ../src/verbs.cpp:2376 msgid "_Close" msgstr "Sl_uiten" -#: ../src/verbs.cpp:2320 +#: ../src/verbs.cpp:2377 msgid "Close this document window" msgstr "Dit documentvenster sluiten" -#: ../src/verbs.cpp:2321 +#: ../src/verbs.cpp:2378 msgid "_Quit" msgstr "A_fsluiten" -#: ../src/verbs.cpp:2321 +#: ../src/verbs.cpp:2378 msgid "Quit Inkscape" msgstr "Inkscape afsluiten" -#: ../src/verbs.cpp:2324 +#: ../src/verbs.cpp:2379 +#, fuzzy +msgid "_Templates..." +msgstr "_Paletten..." + +#: ../src/verbs.cpp:2380 +#, fuzzy +msgid "Create new project from template" +msgstr "Een nieuw document aanmaken volgens het standaardsjabloon" + +#: ../src/verbs.cpp:2383 msgid "Undo last action" msgstr "De laatste bewerking ongedaan maken" -#: ../src/verbs.cpp:2327 +#: ../src/verbs.cpp:2386 msgid "Do again the last undone action" msgstr "De laatst ongedaan gemaakte bewerking opnieuw doen" -#: ../src/verbs.cpp:2328 +#: ../src/verbs.cpp:2387 msgid "Cu_t" msgstr "K_nippen" -#: ../src/verbs.cpp:2329 +#: ../src/verbs.cpp:2388 msgid "Cut selection to clipboard" msgstr "Selectie knippen en op het klembord plaatsen" -#: ../src/verbs.cpp:2330 +#: ../src/verbs.cpp:2389 msgid "_Copy" msgstr "_Kopiëren" -#: ../src/verbs.cpp:2331 +#: ../src/verbs.cpp:2390 msgid "Copy selection to clipboard" msgstr "Selectie naar het klembord kopiëren" -#: ../src/verbs.cpp:2332 +#: ../src/verbs.cpp:2391 msgid "_Paste" msgstr "_Plakken" -#: ../src/verbs.cpp:2333 +#: ../src/verbs.cpp:2392 msgid "Paste objects from clipboard to mouse point, or paste text" msgstr "Objecten vanaf het klembord naar de cursor plakken, of tekst plakken" -#: ../src/verbs.cpp:2334 +#: ../src/verbs.cpp:2393 msgid "Paste _Style" msgstr "_Stijl plakken" -#: ../src/verbs.cpp:2335 +#: ../src/verbs.cpp:2394 msgid "Apply the style of the copied object to selection" msgstr "De stijl van het gekopieerde object op de huidige selectie toepassen" -#: ../src/verbs.cpp:2337 +#: ../src/verbs.cpp:2396 msgid "Scale selection to match the size of the copied object" msgstr "De huidige selectie aan de grootte van het gekopieerde object aanpassen" -#: ../src/verbs.cpp:2338 +#: ../src/verbs.cpp:2397 msgid "Paste _Width" msgstr "_Breedte plakken" -#: ../src/verbs.cpp:2339 +#: ../src/verbs.cpp:2398 msgid "Scale selection horizontally to match the width of the copied object" msgstr "De huidige selectie aan de breedte van het gekopieerde object aanpassen" -#: ../src/verbs.cpp:2340 +#: ../src/verbs.cpp:2399 msgid "Paste _Height" msgstr "_Hoogte plakken" -#: ../src/verbs.cpp:2341 +#: ../src/verbs.cpp:2400 msgid "Scale selection vertically to match the height of the copied object" msgstr "De huidige selectie aan de hoogte van het gekopieerde object aanpassen" -#: ../src/verbs.cpp:2342 +#: ../src/verbs.cpp:2401 msgid "Paste Size Separately" msgstr "Grootte apart plakken" -#: ../src/verbs.cpp:2343 +#: ../src/verbs.cpp:2402 msgid "Scale each selected object to match the size of the copied object" msgstr "Elk geselecteerd object aan de grootte van het gekopieerde object aanpassen" -#: ../src/verbs.cpp:2344 +#: ../src/verbs.cpp:2403 msgid "Paste Width Separately" msgstr "Breedte apart plakken" -#: ../src/verbs.cpp:2345 +#: ../src/verbs.cpp:2404 msgid "Scale each selected object horizontally to match the width of the copied object" msgstr "Elk geselecteerd object aan de breedte van het gekopieerde object aanpassen" -#: ../src/verbs.cpp:2346 +#: ../src/verbs.cpp:2405 msgid "Paste Height Separately" msgstr "Hoogte apart plakken" -#: ../src/verbs.cpp:2347 +#: ../src/verbs.cpp:2406 msgid "Scale each selected object vertically to match the height of the copied object" msgstr "Elk geselecteerd object aan de hoogte van het gekopieerde object aanpassen" -#: ../src/verbs.cpp:2348 +#: ../src/verbs.cpp:2407 msgid "Paste _In Place" msgstr "_Op positie plakken" -#: ../src/verbs.cpp:2349 +#: ../src/verbs.cpp:2408 msgid "Paste objects from clipboard to the original location" msgstr "Objecten van het klembord naar hun originele locatie plakken" -#: ../src/verbs.cpp:2350 +#: ../src/verbs.cpp:2409 msgid "Paste Path _Effect" msgstr "Pad_effect plakken" -#: ../src/verbs.cpp:2351 +#: ../src/verbs.cpp:2410 msgid "Apply the path effect of the copied object to selection" msgstr "Het padeffect van het gekopieerde object op de huidige selectie toepassen" -#: ../src/verbs.cpp:2352 +#: ../src/verbs.cpp:2411 msgid "Remove Path _Effect" msgstr "Padeffect _verwijderen" -#: ../src/verbs.cpp:2353 +#: ../src/verbs.cpp:2412 msgid "Remove any path effects from selected objects" msgstr "Alle padeffecten van geselecteerde objecten verwijderen" -#: ../src/verbs.cpp:2354 +#: ../src/verbs.cpp:2413 msgid "_Remove Filters" msgstr "_Filters verwijderen" -#: ../src/verbs.cpp:2355 +#: ../src/verbs.cpp:2414 msgid "Remove any filters from selected objects" msgstr "Alle filters van geselecteerde objecten verwijderen" -#: ../src/verbs.cpp:2356 +#: ../src/verbs.cpp:2415 msgid "_Delete" msgstr "_Verwijderen" -#: ../src/verbs.cpp:2357 +#: ../src/verbs.cpp:2416 msgid "Delete selection" msgstr "Selectie verwijderen" -#: ../src/verbs.cpp:2358 +#: ../src/verbs.cpp:2417 msgid "Duplic_ate" msgstr "_Dupliceren" -#: ../src/verbs.cpp:2359 +#: ../src/verbs.cpp:2418 msgid "Duplicate selected objects" msgstr "Geselecteerde objecten verdubbelen" -#: ../src/verbs.cpp:2360 +#: ../src/verbs.cpp:2419 msgid "Create Clo_ne" msgstr "_Klonen" -#: ../src/verbs.cpp:2361 +#: ../src/verbs.cpp:2420 msgid "Create a clone (a copy linked to the original) of selected object" msgstr "Een kloon (een aan het origineel gekoppelde kopie) maken van het geselecteerde object" -#: ../src/verbs.cpp:2362 +#: ../src/verbs.cpp:2421 msgid "Unlin_k Clone" msgstr "Kloon o_ntkoppelen" -#: ../src/verbs.cpp:2363 +#: ../src/verbs.cpp:2422 msgid "Cut the selected clones' links to the originals, turning them into standalone objects" msgstr "De koppeling tussen de geselecteerde klonen en de originelen verwijderen, zodat ze op zichzelf staande objecten worden" -#: ../src/verbs.cpp:2364 +#: ../src/verbs.cpp:2423 msgid "Relink to Copied" msgstr "Herlinken aan kopie" -#: ../src/verbs.cpp:2365 +#: ../src/verbs.cpp:2424 msgid "Relink the selected clones to the object currently on the clipboard" msgstr "De geselecteerde klonen herlinken naar het object op het klembord" -#: ../src/verbs.cpp:2366 +#: ../src/verbs.cpp:2425 msgid "Select _Original" msgstr "_Origineel selecteren" -#: ../src/verbs.cpp:2367 +#: ../src/verbs.cpp:2426 msgid "Select the object to which the selected clone is linked" msgstr "Het object waaraan de kloon gekoppeld is selecteren" -#: ../src/verbs.cpp:2368 +#: ../src/verbs.cpp:2427 msgid "Clone original path (LPE)" msgstr "Origineel pad klonen (LPE)" -#: ../src/verbs.cpp:2369 +#: ../src/verbs.cpp:2428 msgid "Creates a new path, applies the Clone original LPE, and refers it to the selected path" msgstr "Maakt een nieuw pad, past de Origineel pad klonen LPE toe en linkt het aan het geselecteerde pad" -#: ../src/verbs.cpp:2370 +#: ../src/verbs.cpp:2429 msgid "Objects to _Marker" msgstr "Objecten naar _markering" -#: ../src/verbs.cpp:2371 +#: ../src/verbs.cpp:2430 msgid "Convert selection to a line marker" msgstr "Selectie converteren naar een lijnmarkering" -#: ../src/verbs.cpp:2372 +#: ../src/verbs.cpp:2431 msgid "Objects to Gu_ides" msgstr "Objecten naar hulpl_ijnen" -#: ../src/verbs.cpp:2373 +#: ../src/verbs.cpp:2432 msgid "Convert selected objects to a collection of guidelines aligned with their edges" msgstr "De geselecteerde objecten converteren naar een set hulplijnen die hun randen aangeven" -#: ../src/verbs.cpp:2374 +#: ../src/verbs.cpp:2433 msgid "Objects to Patter_n" msgstr "Objecten naar patroo_n" -#: ../src/verbs.cpp:2375 +#: ../src/verbs.cpp:2434 msgid "Convert selection to a rectangle with tiled pattern fill" msgstr "Selectie converteren naar een rechthoek gevuld met een getegeld patroon" -#: ../src/verbs.cpp:2376 +#: ../src/verbs.cpp:2435 msgid "Pattern to _Objects" msgstr "Patroon naar _objecten" -#: ../src/verbs.cpp:2377 +#: ../src/verbs.cpp:2436 msgid "Extract objects from a tiled pattern fill" msgstr "Objecten uit een getegeld patroon extraheren" -#: ../src/verbs.cpp:2378 +#: ../src/verbs.cpp:2437 msgid "Group to Symbol" msgstr "Groep naar symbool" -#: ../src/verbs.cpp:2379 +#: ../src/verbs.cpp:2438 msgid "Convert group to a symbol" msgstr "Groep naar symbool omzetten" -#: ../src/verbs.cpp:2380 +#: ../src/verbs.cpp:2439 msgid "Symbol to Group" msgstr "Symbool naar groep" -#: ../src/verbs.cpp:2381 +#: ../src/verbs.cpp:2440 msgid "Extract group from a symbol" msgstr "Groep extraheren uit symbool" -#: ../src/verbs.cpp:2382 +#: ../src/verbs.cpp:2441 msgid "Clea_r All" msgstr "Alles verwijderen" -#: ../src/verbs.cpp:2383 +#: ../src/verbs.cpp:2442 msgid "Delete all objects from document" msgstr "Alle objecten uit het document verwijderen" -#: ../src/verbs.cpp:2384 +#: ../src/verbs.cpp:2443 msgid "Select Al_l" msgstr "_Alles selecteren" -#: ../src/verbs.cpp:2385 +#: ../src/verbs.cpp:2444 msgid "Select all objects or all nodes" msgstr "Alle objecten of alle knooppunten selecteren" -#: ../src/verbs.cpp:2386 +#: ../src/verbs.cpp:2445 msgid "Select All in All La_yers" msgstr "Alles selecteren in alle _lagen" -#: ../src/verbs.cpp:2387 +#: ../src/verbs.cpp:2446 msgid "Select all objects in all visible and unlocked layers" msgstr "Alle objecten in alle zichtbare en niet vergrendelde lagen selecteren" -#: ../src/verbs.cpp:2388 +#: ../src/verbs.cpp:2447 msgid "Fill _and Stroke" msgstr "_Vulling en lijn" -#: ../src/verbs.cpp:2389 +#: ../src/verbs.cpp:2448 msgid "Select all objects with the same fill and stroke as the selected objects" msgstr "Alle objecten met identieke vulling en lijn als de selectie selecteren" -#: ../src/verbs.cpp:2390 +#: ../src/verbs.cpp:2449 msgid "_Fill Color" msgstr "V_ulkleur" -#: ../src/verbs.cpp:2391 +#: ../src/verbs.cpp:2450 msgid "Select all objects with the same fill as the selected objects" msgstr "Alle objecten met identieke vulling als de selectie selecteren" -#: ../src/verbs.cpp:2392 +#: ../src/verbs.cpp:2451 msgid "_Stroke Color" msgstr "Lijn_kleur" -#: ../src/verbs.cpp:2393 +#: ../src/verbs.cpp:2452 msgid "Select all objects with the same stroke as the selected objects" msgstr "Alle objecten met identieke lijn als de selectie selecteren" -#: ../src/verbs.cpp:2394 +#: ../src/verbs.cpp:2453 msgid "Stroke St_yle" msgstr "Lijn_stijl" -#: ../src/verbs.cpp:2395 +#: ../src/verbs.cpp:2454 msgid "Select all objects with the same stroke style (width, dash, markers) as the selected objects" msgstr "Alle objecten met dezelfde lijnstijl (breedte, streepjes, markering) als de selectie selecteren" -#: ../src/verbs.cpp:2396 +#: ../src/verbs.cpp:2455 msgid "_Object Type" msgstr "_Objecttype" -#: ../src/verbs.cpp:2397 +#: ../src/verbs.cpp:2456 msgid "Select all objects with the same object type (rect, arc, text, path, bitmap etc) as the selected objects" msgstr "Alle objecten met hetzelfde objecttype (rechthoef, boog, tekst, pad, bitmap, etc.) als de selectie selecteren" -#: ../src/verbs.cpp:2398 +#: ../src/verbs.cpp:2457 msgid "In_vert Selection" msgstr "Selectie _omkeren" -#: ../src/verbs.cpp:2399 +#: ../src/verbs.cpp:2458 msgid "Invert selection (unselect what is selected and select everything else)" msgstr "Selectie omkeren (alleen dat selecteren wat nu niet geselecteerd is)" -#: ../src/verbs.cpp:2400 +#: ../src/verbs.cpp:2459 msgid "Invert in All Layers" msgstr "Omkeren in alle lagen" -#: ../src/verbs.cpp:2401 +#: ../src/verbs.cpp:2460 msgid "Invert selection in all visible and unlocked layers" msgstr "Selectie omkeren in alle zichtbare en niet vergrendelde lagen" -#: ../src/verbs.cpp:2402 +#: ../src/verbs.cpp:2461 msgid "Select Next" msgstr "Volgende selecteren" -#: ../src/verbs.cpp:2403 +#: ../src/verbs.cpp:2462 msgid "Select next object or node" msgstr "Volgend object of knooppunt selecteren" -#: ../src/verbs.cpp:2404 +#: ../src/verbs.cpp:2463 msgid "Select Previous" msgstr "Vorige selecteren" -#: ../src/verbs.cpp:2405 +#: ../src/verbs.cpp:2464 msgid "Select previous object or node" msgstr "Vorig object of knoopppunt selecteren" -#: ../src/verbs.cpp:2406 +#: ../src/verbs.cpp:2465 msgid "D_eselect" msgstr "S_electie opheffen" -#: ../src/verbs.cpp:2407 +#: ../src/verbs.cpp:2466 msgid "Deselect any selected objects or nodes" msgstr "Alles deselecteren" -#: ../src/verbs.cpp:2408 -msgid "Create _Guides Around the Page" -msgstr "_Hulplijnen rond pagina" - -#: ../src/verbs.cpp:2409 -#: ../src/verbs.cpp:2411 +#: ../src/verbs.cpp:2468 +#: ../src/verbs.cpp:2470 msgid "Create four guides aligned with the page borders" msgstr "Vier hulplijnen maken op de paginaranden" -#: ../src/verbs.cpp:2412 +#: ../src/verbs.cpp:2469 +msgid "Create _Guides Around the Page" +msgstr "_Hulplijnen rond pagina" + +#: ../src/verbs.cpp:2471 msgid "Next path effect parameter" msgstr "Volgende padeffectparameter" -#: ../src/verbs.cpp:2413 +#: ../src/verbs.cpp:2472 msgid "Show next editable path effect parameter" msgstr "Volgende bewerkbare padeffectparameter tonen" #. Selection -#: ../src/verbs.cpp:2416 +#: ../src/verbs.cpp:2475 msgid "Raise to _Top" msgstr "_Bovenaan" -#: ../src/verbs.cpp:2417 +#: ../src/verbs.cpp:2476 msgid "Raise selection to top" msgstr "Selectie boven alle andere objecten plaatsen" -#: ../src/verbs.cpp:2418 +#: ../src/verbs.cpp:2477 msgid "Lower to _Bottom" msgstr "_Onderaan" -#: ../src/verbs.cpp:2419 +#: ../src/verbs.cpp:2478 msgid "Lower selection to bottom" msgstr "Selectie onder alle andere objecten plaatsen" -#: ../src/verbs.cpp:2420 +#: ../src/verbs.cpp:2479 msgid "_Raise" msgstr "Om_hoog" -#: ../src/verbs.cpp:2421 +#: ../src/verbs.cpp:2480 msgid "Raise selection one step" msgstr "Selectie één niveau omhoog halen" -#: ../src/verbs.cpp:2422 +#: ../src/verbs.cpp:2481 msgid "_Lower" msgstr "Om_laag" -#: ../src/verbs.cpp:2423 +#: ../src/verbs.cpp:2482 msgid "Lower selection one step" msgstr "Selectie één niveau omlaag brengen" -#: ../src/verbs.cpp:2425 +#: ../src/verbs.cpp:2484 msgid "Group selected objects" msgstr "Geselecteerde objecten groeperen" -#: ../src/verbs.cpp:2427 +#: ../src/verbs.cpp:2486 msgid "Ungroup selected groups" msgstr "Geselecteerde groepen opheffen" -#: ../src/verbs.cpp:2429 +#: ../src/verbs.cpp:2488 msgid "_Put on Path" msgstr "Op pad _plaatsen" -#: ../src/verbs.cpp:2431 +#: ../src/verbs.cpp:2490 msgid "_Remove from Path" msgstr "Van pad _verwijderen" -#: ../src/verbs.cpp:2433 +#: ../src/verbs.cpp:2492 msgid "Remove Manual _Kerns" msgstr "Teken_spatiëring herstellen" #. TRANSLATORS: "glyph": An image used in the visual representation of characters; #. roughly speaking, how a character looks. A font is a set of glyphs. -#: ../src/verbs.cpp:2436 +#: ../src/verbs.cpp:2495 msgid "Remove all manual kerns and glyph rotations from a text object" msgstr "Tekenspatiëring en karakterrotaties van het tekstobject herstellen" -#: ../src/verbs.cpp:2438 +#: ../src/verbs.cpp:2497 msgid "_Union" msgstr "_Vereniging" -#: ../src/verbs.cpp:2439 +#: ../src/verbs.cpp:2498 msgid "Create union of selected paths" msgstr "Geselecteerde paden verenigen" -#: ../src/verbs.cpp:2440 +#: ../src/verbs.cpp:2499 msgid "_Intersection" msgstr "_Overlap" -#: ../src/verbs.cpp:2441 +#: ../src/verbs.cpp:2500 msgid "Create intersection of selected paths" msgstr "Intersectie van geselecteerde paden maken" -#: ../src/verbs.cpp:2442 +#: ../src/verbs.cpp:2501 msgid "_Difference" msgstr "_Verschil" -#: ../src/verbs.cpp:2443 +#: ../src/verbs.cpp:2502 msgid "Create difference of selected paths (bottom minus top)" msgstr "Verschil van geselecteerde maken (onderste min bovenste)" -#: ../src/verbs.cpp:2444 +#: ../src/verbs.cpp:2503 msgid "E_xclusion" msgstr "_Uitsluiting" -#: ../src/verbs.cpp:2445 +#: ../src/verbs.cpp:2504 msgid "Create exclusive OR of selected paths (those parts that belong to only one path)" msgstr "Geselecteerde paden reduceren tot de niet-overlappende gebieden" -#: ../src/verbs.cpp:2446 +#: ../src/verbs.cpp:2505 msgid "Di_vision" msgstr "_Splitsing" -#: ../src/verbs.cpp:2447 +#: ../src/verbs.cpp:2506 msgid "Cut the bottom path into pieces" msgstr "Het onderste pad in stukken snijden" #. TRANSLATORS: "to cut a path" is not the same as "to break a path apart" - see the #. Advanced tutorial for more info -#: ../src/verbs.cpp:2450 +#: ../src/verbs.cpp:2509 msgid "Cut _Path" msgstr "_Pad versnijden" -#: ../src/verbs.cpp:2451 +#: ../src/verbs.cpp:2510 msgid "Cut the bottom path's stroke into pieces, removing fill" msgstr "De lijn van het onderste pad in stukken snijden en vulling verwijderen" #. TRANSLATORS: "outset": expand a shape by offsetting the object's path, #. i.e. by displacing it perpendicular to the path in each point. #. See also the Advanced Tutorial for explanation. -#: ../src/verbs.cpp:2455 +#: ../src/verbs.cpp:2514 msgid "Outs_et" msgstr "Ver_wijden" -#: ../src/verbs.cpp:2456 +#: ../src/verbs.cpp:2515 msgid "Outset selected paths" msgstr "Geselecteerde paden verwijden" -#: ../src/verbs.cpp:2458 +#: ../src/verbs.cpp:2517 msgid "O_utset Path by 1 px" msgstr "Pad met 1 pixel ver_wijden" -#: ../src/verbs.cpp:2459 +#: ../src/verbs.cpp:2518 msgid "Outset selected paths by 1 px" msgstr "Geselecteerde paden met 1 pixel verwijden" -#: ../src/verbs.cpp:2461 +#: ../src/verbs.cpp:2520 msgid "O_utset Path by 10 px" msgstr "Pad met 10 pixels ver_wijden" -#: ../src/verbs.cpp:2462 +#: ../src/verbs.cpp:2521 msgid "Outset selected paths by 10 px" msgstr "Geselecteerde paden met 10 pixels verwijden" #. TRANSLATORS: "inset": contract a shape by offsetting the object's path, #. i.e. by displacing it perpendicular to the path in each point. #. See also the Advanced Tutorial for explanation. -#: ../src/verbs.cpp:2466 +#: ../src/verbs.cpp:2525 msgid "I_nset" msgstr "Ver_nauwen" -#: ../src/verbs.cpp:2467 +#: ../src/verbs.cpp:2526 msgid "Inset selected paths" msgstr "Geselecteerde paden vernauwen" -#: ../src/verbs.cpp:2469 +#: ../src/verbs.cpp:2528 msgid "I_nset Path by 1 px" msgstr "Pad met 1 pixel ver_nauwen" -#: ../src/verbs.cpp:2470 +#: ../src/verbs.cpp:2529 msgid "Inset selected paths by 1 px" msgstr "Geselecteerde paden met 1 pixel vernauwen" -#: ../src/verbs.cpp:2472 +#: ../src/verbs.cpp:2531 msgid "I_nset Path by 10 px" msgstr "Pad met 10 pixels ver_nauwen" -#: ../src/verbs.cpp:2473 +#: ../src/verbs.cpp:2532 msgid "Inset selected paths by 10 px" msgstr "Geselecteerde paden met 10 pixels vernauwen" -#: ../src/verbs.cpp:2475 +#: ../src/verbs.cpp:2534 msgid "D_ynamic Offset" msgstr "D_ynamische offset" -#: ../src/verbs.cpp:2475 +#: ../src/verbs.cpp:2534 msgid "Create a dynamic offset object" msgstr "Een 'dynamische offset'-object aanmaken" -#: ../src/verbs.cpp:2477 +#: ../src/verbs.cpp:2536 msgid "_Linked Offset" msgstr "_Gekoppelde offset" -#: ../src/verbs.cpp:2478 +#: ../src/verbs.cpp:2537 msgid "Create a dynamic offset object linked to the original path" msgstr "Een 'dynamische offset'-object aanmaken, gekoppeld aan het originele pad" -#: ../src/verbs.cpp:2480 +#: ../src/verbs.cpp:2539 msgid "_Stroke to Path" msgstr "_Lijn naar pad" # Werkt ook voor meerdere objecten, vandaar meervoud. -#: ../src/verbs.cpp:2481 +#: ../src/verbs.cpp:2540 msgid "Convert selected object's stroke to paths" msgstr "Lijn van geselecteerde objecten omzetten naar paden" -#: ../src/verbs.cpp:2482 +#: ../src/verbs.cpp:2541 msgid "Si_mplify" msgstr "_Vereenvoudigen" -#: ../src/verbs.cpp:2483 +#: ../src/verbs.cpp:2542 msgid "Simplify selected paths (remove extra nodes)" msgstr "Geselecteerde paden vereenvoudigen (overbodige knooppunten verwijderen)" -#: ../src/verbs.cpp:2484 +#: ../src/verbs.cpp:2543 msgid "_Reverse" msgstr "_Omdraaien" -#: ../src/verbs.cpp:2485 +#: ../src/verbs.cpp:2544 msgid "Reverse the direction of selected paths (useful for flipping markers)" msgstr "De richting van geselecteerde paden omkeren (handig voor het omdraaien van markeringen)" -#: ../src/verbs.cpp:2488 +#: ../src/verbs.cpp:2547 msgid "Create one or more paths from a bitmap by tracing it" msgstr "Door overtrekken één of meer paden aanmaken uit een bitmap" -#: ../src/verbs.cpp:2489 +#: ../src/verbs.cpp:2548 msgid "Make a _Bitmap Copy" msgstr "Als _bitmap kopiëren" -#: ../src/verbs.cpp:2490 +#: ../src/verbs.cpp:2549 msgid "Export selection to a bitmap and insert it into document" msgstr "Selectie omzetten naar een bitmap en in het document plaatsen" -#: ../src/verbs.cpp:2491 +#: ../src/verbs.cpp:2550 msgid "_Combine" msgstr "_Combineren" -#: ../src/verbs.cpp:2492 +#: ../src/verbs.cpp:2551 msgid "Combine several paths into one" msgstr "Verschillende paden combineren tot één pad" #. TRANSLATORS: "to cut a path" is not the same as "to break a path apart" - see the #. Advanced tutorial for more info -#: ../src/verbs.cpp:2495 +#: ../src/verbs.cpp:2554 msgid "Break _Apart" msgstr "Op_delen" -#: ../src/verbs.cpp:2496 +#: ../src/verbs.cpp:2555 msgid "Break selected paths into subpaths" msgstr "Geselecteerde paden in subpaden opdelen" -#: ../src/verbs.cpp:2497 +#: ../src/verbs.cpp:2556 msgid "Ro_ws and Columns..." msgstr "_Rijen en kolommen..." -#: ../src/verbs.cpp:2498 +#: ../src/verbs.cpp:2557 msgid "Arrange selected objects in a table" msgstr "Geselecteerde objecten in een tabel rangschikken" #. Layer -#: ../src/verbs.cpp:2500 +#: ../src/verbs.cpp:2559 msgid "_Add Layer..." msgstr "_Nieuwe laag..." -#: ../src/verbs.cpp:2501 +#: ../src/verbs.cpp:2560 msgid "Create a new layer" msgstr "Een nieuwe laag maken" -#: ../src/verbs.cpp:2502 +#: ../src/verbs.cpp:2561 msgid "Re_name Layer..." msgstr "Laag hernoe_men..." -#: ../src/verbs.cpp:2503 +#: ../src/verbs.cpp:2562 msgid "Rename the current layer" msgstr "Huidige laag hernoemen" -#: ../src/verbs.cpp:2504 +#: ../src/verbs.cpp:2563 msgid "Switch to Layer Abov_e" msgstr "_Wisselen naar de laag erboven" -#: ../src/verbs.cpp:2505 +#: ../src/verbs.cpp:2564 msgid "Switch to the layer above the current" msgstr "Wisselen naar de laag in het document die boven de huidige ligt" -#: ../src/verbs.cpp:2506 +#: ../src/verbs.cpp:2565 msgid "Switch to Layer Belo_w" msgstr "W_isselen naar de laag eronder" -#: ../src/verbs.cpp:2507 +#: ../src/verbs.cpp:2566 msgid "Switch to the layer below the current" msgstr "Wisselen naar de laag in het document die onder de huidige ligt" -#: ../src/verbs.cpp:2508 +#: ../src/verbs.cpp:2567 msgid "Move Selection to Layer Abo_ve" msgstr "_Selectie omhoog verplaatsen" -#: ../src/verbs.cpp:2509 +#: ../src/verbs.cpp:2568 msgid "Move selection to the layer above the current" msgstr "De geselecteerde objecten naar de laag boven de huidige verplaatsen" -#: ../src/verbs.cpp:2510 +#: ../src/verbs.cpp:2569 msgid "Move Selection to Layer Bel_ow" msgstr "S_electie omlaag verplaatsen" -#: ../src/verbs.cpp:2511 +#: ../src/verbs.cpp:2570 msgid "Move selection to the layer below the current" msgstr "De geselecteerde objecten naar de laag onder de huidige verplaatsen" -#: ../src/verbs.cpp:2512 +#: ../src/verbs.cpp:2571 msgid "Move Selection to Layer..." msgstr "Selectie naar laag verplaatsen..." -#: ../src/verbs.cpp:2514 +#: ../src/verbs.cpp:2573 msgid "Layer to _Top" msgstr "Laag _bovenaan" -#: ../src/verbs.cpp:2515 +#: ../src/verbs.cpp:2574 msgid "Raise the current layer to the top" msgstr "Huidige laag boven alle andere plaatsen" -#: ../src/verbs.cpp:2516 +#: ../src/verbs.cpp:2575 msgid "Layer to _Bottom" msgstr "Laag _onderaan" -#: ../src/verbs.cpp:2517 +#: ../src/verbs.cpp:2576 msgid "Lower the current layer to the bottom" msgstr "Huidige laag onder alle andere plaatsen" -#: ../src/verbs.cpp:2518 +#: ../src/verbs.cpp:2577 msgid "_Raise Layer" msgstr "Laag om_hoog" -#: ../src/verbs.cpp:2519 +#: ../src/verbs.cpp:2578 msgid "Raise the current layer" msgstr "Huidige laag één niveau omhoog brengen" -#: ../src/verbs.cpp:2520 +#: ../src/verbs.cpp:2579 msgid "_Lower Layer" msgstr "Laag om_laag" -#: ../src/verbs.cpp:2521 +#: ../src/verbs.cpp:2580 msgid "Lower the current layer" msgstr "Huidige laag één niveau omlaag brengen" -#: ../src/verbs.cpp:2522 +#: ../src/verbs.cpp:2581 msgid "D_uplicate Current Layer" msgstr "Huidige laag _dupliceren" -#: ../src/verbs.cpp:2523 +#: ../src/verbs.cpp:2582 msgid "Duplicate an existing layer" msgstr "Een bestaande laag dupliceren" -#: ../src/verbs.cpp:2524 +#: ../src/verbs.cpp:2583 msgid "_Delete Current Layer" msgstr "Laag _verwijderen" -#: ../src/verbs.cpp:2525 +#: ../src/verbs.cpp:2584 msgid "Delete the current layer" msgstr "Huidige laag verwijderen" -#: ../src/verbs.cpp:2526 +#: ../src/verbs.cpp:2585 msgid "_Show/hide other layers" msgstr "Andere lagen _tonen/verbergen" -#: ../src/verbs.cpp:2527 +#: ../src/verbs.cpp:2586 msgid "Solo the current layer" msgstr "Alleen huidige laag tonen" -#: ../src/verbs.cpp:2528 +#: ../src/verbs.cpp:2587 msgid "_Show all layers" msgstr "Alle lagen t_onen" -#: ../src/verbs.cpp:2529 +#: ../src/verbs.cpp:2588 msgid "Show all the layers" msgstr "Alle lagen tonen" -#: ../src/verbs.cpp:2530 +#: ../src/verbs.cpp:2589 msgid "_Hide all layers" msgstr "Alle lagen ver_bergen" -#: ../src/verbs.cpp:2531 +#: ../src/verbs.cpp:2590 msgid "Hide all the layers" msgstr "Alle lagen verbergen" -#: ../src/verbs.cpp:2532 +#: ../src/verbs.cpp:2591 msgid "_Lock all layers" msgstr "Alle lagen ver_grendelen" -#: ../src/verbs.cpp:2533 +#: ../src/verbs.cpp:2592 msgid "Lock all the layers" msgstr "Alle lagen vergrendelen" -#: ../src/verbs.cpp:2534 +#: ../src/verbs.cpp:2593 msgid "Lock/Unlock _other layers" msgstr "_Andere lagen vergrendelen/ontgrendelen" -#: ../src/verbs.cpp:2535 +#: ../src/verbs.cpp:2594 msgid "Lock all the other layers" msgstr "Andere lagen vergrendelen" -#: ../src/verbs.cpp:2536 +#: ../src/verbs.cpp:2595 msgid "_Unlock all layers" msgstr "Alle lagen _ontgrendelen" -#: ../src/verbs.cpp:2537 +#: ../src/verbs.cpp:2596 msgid "Unlock all the layers" msgstr "Alle lagen ontgrendelen" -#: ../src/verbs.cpp:2538 +#: ../src/verbs.cpp:2597 msgid "_Lock/Unlock Current Layer" msgstr "_Vergrendelen/ontgrendel huidige laag" -#: ../src/verbs.cpp:2539 +#: ../src/verbs.cpp:2598 msgid "Toggle lock on current layer" msgstr "Vergrendeling huidige laag aanpassen" -#: ../src/verbs.cpp:2540 +#: ../src/verbs.cpp:2599 msgid "_Show/hide Current Layer" msgstr "_Huidige laag tonen/verbergen" -#: ../src/verbs.cpp:2541 +#: ../src/verbs.cpp:2600 msgid "Toggle visibility of current layer" msgstr "Zichtbaarheid huidige laag aanpassen" #. Object -#: ../src/verbs.cpp:2544 +#: ../src/verbs.cpp:2603 msgid "Rotate _90° CW" msgstr "_90° rechtsom draaien" #. This is shared between tooltips and statusbar, so they #. must use UTF-8, not HTML entities for special characters. -#: ../src/verbs.cpp:2547 +#: ../src/verbs.cpp:2606 msgid "Rotate selection 90° clockwise" msgstr "Geselecteerde objecten 90° rechtsom draaien" -#: ../src/verbs.cpp:2548 +#: ../src/verbs.cpp:2607 msgid "Rotate 9_0° CCW" msgstr "9_0° linksom draaien" #. This is shared between tooltips and statusbar, so they #. must use UTF-8, not HTML entities for special characters. -#: ../src/verbs.cpp:2551 +#: ../src/verbs.cpp:2610 msgid "Rotate selection 90° counter-clockwise" msgstr "Geselecteerde objecten 90° linksom draaien" -#: ../src/verbs.cpp:2552 +#: ../src/verbs.cpp:2611 msgid "Remove _Transformations" msgstr "_Transformaties verwijderen" -#: ../src/verbs.cpp:2553 +#: ../src/verbs.cpp:2612 msgid "Remove transformations from object" msgstr "Transformaties verwijderen van het object" -#: ../src/verbs.cpp:2554 +#: ../src/verbs.cpp:2613 msgid "_Object to Path" msgstr "_Object naar pad" -#: ../src/verbs.cpp:2555 +#: ../src/verbs.cpp:2614 msgid "Convert selected object to path" msgstr "Geselecteerd object omzetten naar pad" -#: ../src/verbs.cpp:2556 +#: ../src/verbs.cpp:2615 msgid "_Flow into Frame" msgstr "_Inkaderen" -#: ../src/verbs.cpp:2557 +#: ../src/verbs.cpp:2616 msgid "Put text into a frame (path or shape), creating a flowed text linked to the frame object" msgstr "Tekst in een kader plaatsen (pad of vorm), zodat een ingekaderde tekst ontstaat die gekoppeld is aan het kader" -#: ../src/verbs.cpp:2558 +#: ../src/verbs.cpp:2617 msgid "_Unflow" msgstr "_Uit kader halen" -#: ../src/verbs.cpp:2559 +#: ../src/verbs.cpp:2618 msgid "Remove text from frame (creates a single-line text object)" msgstr "Tekst niet langer in het kader plaatsen (resulteert in een tekstobject met één regel)" -#: ../src/verbs.cpp:2560 +#: ../src/verbs.cpp:2619 msgid "_Convert to Text" msgstr "_Omzetten naar tekst" -#: ../src/verbs.cpp:2561 +#: ../src/verbs.cpp:2620 msgid "Convert flowed text to regular text object (preserves appearance)" msgstr "Ingekaderde tekst omzetten naar een gewoon tekstobject (met behoud van uiterlijk)" -#: ../src/verbs.cpp:2563 +#: ../src/verbs.cpp:2622 msgid "Flip _Horizontal" msgstr "_Horizontaal spiegelen" -#: ../src/verbs.cpp:2563 +#: ../src/verbs.cpp:2622 msgid "Flip selected objects horizontally" msgstr "Geselecteerde objecten horizontaal spiegelen" -#: ../src/verbs.cpp:2566 +#: ../src/verbs.cpp:2625 msgid "Flip _Vertical" msgstr "_Verticaal spiegelen" -#: ../src/verbs.cpp:2566 +#: ../src/verbs.cpp:2625 msgid "Flip selected objects vertically" msgstr "Geselecteerde objecten verticaal spiegelen" -#: ../src/verbs.cpp:2569 +#: ../src/verbs.cpp:2628 msgid "Apply mask to selection (using the topmost object as mask)" msgstr "Masker toepassen op selectie (met bovenste object als masker)" -#: ../src/verbs.cpp:2571 +#: ../src/verbs.cpp:2630 msgid "Edit mask" msgstr "Masker bewerken" -#: ../src/verbs.cpp:2572 -#: ../src/verbs.cpp:2578 +#: ../src/verbs.cpp:2631 +#: ../src/verbs.cpp:2637 msgid "_Release" msgstr "_Uitschakelen" -#: ../src/verbs.cpp:2573 +#: ../src/verbs.cpp:2632 msgid "Remove mask from selection" msgstr "Masker uitschakelen" -#: ../src/verbs.cpp:2575 +#: ../src/verbs.cpp:2634 msgid "Apply clipping path to selection (using the topmost object as clipping path)" msgstr "Maskerpad toepassen op selectie (met bovenste object als maskerpad)" -#: ../src/verbs.cpp:2577 +#: ../src/verbs.cpp:2636 msgid "Edit clipping path" msgstr "Maskerpad bewerken" -#: ../src/verbs.cpp:2579 +#: ../src/verbs.cpp:2638 msgid "Remove clipping path from selection" msgstr "Maskerpad uitschakelen" #. Tools -#: ../src/verbs.cpp:2582 +#: ../src/verbs.cpp:2641 msgctxt "ContextVerb" msgid "Select" msgstr "Selecteren" -#: ../src/verbs.cpp:2583 +#: ../src/verbs.cpp:2642 msgid "Select and transform objects" msgstr "Objecten selecteren of vervormen" -#: ../src/verbs.cpp:2584 +#: ../src/verbs.cpp:2643 msgctxt "ContextVerb" msgid "Node Edit" msgstr "Knooppunt wijzigen" -#: ../src/verbs.cpp:2585 +#: ../src/verbs.cpp:2644 msgid "Edit paths by nodes" msgstr "Paden aanpassen via hun knooppunten" -#: ../src/verbs.cpp:2586 +#: ../src/verbs.cpp:2645 msgctxt "ContextVerb" msgid "Tweak" msgstr "Boetseren" -#: ../src/verbs.cpp:2587 +#: ../src/verbs.cpp:2646 msgid "Tweak objects by sculpting or painting" msgstr "Objecten aanpassen door boetseren of verven" -#: ../src/verbs.cpp:2588 +#: ../src/verbs.cpp:2647 msgctxt "ContextVerb" msgid "Spray" msgstr "Verstuiven" -#: ../src/verbs.cpp:2589 +#: ../src/verbs.cpp:2648 msgid "Spray objects by sculpting or painting" msgstr "Object verstuiven door boetseren of verven" -#: ../src/verbs.cpp:2590 +#: ../src/verbs.cpp:2649 msgctxt "ContextVerb" msgid "Rectangle" msgstr "Rechthoek" -#: ../src/verbs.cpp:2591 +#: ../src/verbs.cpp:2650 msgid "Create rectangles and squares" msgstr "Rechthoeken of vierkanten maken" -#: ../src/verbs.cpp:2592 +#: ../src/verbs.cpp:2651 msgctxt "ContextVerb" msgid "3D Box" msgstr "3D-kubus" -#: ../src/verbs.cpp:2593 +#: ../src/verbs.cpp:2652 msgid "Create 3D boxes" msgstr "3D-kubussen maken" -#: ../src/verbs.cpp:2594 +#: ../src/verbs.cpp:2653 msgctxt "ContextVerb" msgid "Ellipse" msgstr "Ellips" -#: ../src/verbs.cpp:2595 +#: ../src/verbs.cpp:2654 msgid "Create circles, ellipses, and arcs" msgstr "Cirkels, ellipsen of bogen maken" -#: ../src/verbs.cpp:2596 +#: ../src/verbs.cpp:2655 msgctxt "ContextVerb" msgid "Star" msgstr "Ster" -#: ../src/verbs.cpp:2597 +#: ../src/verbs.cpp:2656 msgid "Create stars and polygons" msgstr "Sterren of veelhoeken maken" -#: ../src/verbs.cpp:2598 +#: ../src/verbs.cpp:2657 msgctxt "ContextVerb" msgid "Spiral" msgstr "Spiraal" -#: ../src/verbs.cpp:2599 +#: ../src/verbs.cpp:2658 msgid "Create spirals" msgstr "Spiralen maken" -#: ../src/verbs.cpp:2600 +#: ../src/verbs.cpp:2659 msgctxt "ContextVerb" msgid "Pencil" msgstr "Potlood" -#: ../src/verbs.cpp:2601 +#: ../src/verbs.cpp:2660 msgid "Draw freehand lines" msgstr "Lijnen tekenen uit de losse hand" -#: ../src/verbs.cpp:2602 +#: ../src/verbs.cpp:2661 msgctxt "ContextVerb" msgid "Pen" msgstr "Pen" -#: ../src/verbs.cpp:2603 +#: ../src/verbs.cpp:2662 msgid "Draw Bezier curves and straight lines" msgstr "Rechten of Bezierkrommes trekken" -#: ../src/verbs.cpp:2604 +#: ../src/verbs.cpp:2663 msgctxt "ContextVerb" msgid "Calligraphy" msgstr "Kalligrafie" -#: ../src/verbs.cpp:2605 +#: ../src/verbs.cpp:2664 msgid "Draw calligraphic or brush strokes" msgstr "Kalligrafische lijnen of penseelstreken tekenen" -#: ../src/verbs.cpp:2607 +#: ../src/verbs.cpp:2666 msgid "Create and edit text objects" msgstr "Tekstobjecten maken en aanpassen" -#: ../src/verbs.cpp:2608 +#: ../src/verbs.cpp:2667 msgctxt "ContextVerb" msgid "Gradient" msgstr "Kleurverloop" -#: ../src/verbs.cpp:2609 +#: ../src/verbs.cpp:2668 msgid "Create and edit gradients" msgstr "Kleurverlopen maken en aanpassen" -#: ../src/verbs.cpp:2610 +#: ../src/verbs.cpp:2669 msgctxt "ContextVerb" msgid "Mesh" msgstr "Mesh" -#: ../src/verbs.cpp:2611 +#: ../src/verbs.cpp:2670 msgid "Create and edit meshes" msgstr "Meshes maken en bewerken" -#: ../src/verbs.cpp:2612 +#: ../src/verbs.cpp:2671 msgctxt "ContextVerb" msgid "Zoom" msgstr "Zoomen" -#: ../src/verbs.cpp:2613 +#: ../src/verbs.cpp:2672 msgid "Zoom in or out" msgstr "In- of uitzoomen" -#: ../src/verbs.cpp:2615 +#: ../src/verbs.cpp:2674 msgid "Measurement tool" msgstr "Meetlat" -#: ../src/verbs.cpp:2616 +#: ../src/verbs.cpp:2675 msgctxt "ContextVerb" msgid "Dropper" msgstr "Pipet" -#: ../src/verbs.cpp:2617 +#: ../src/verbs.cpp:2676 #: ../src/widgets/sp-color-notebook.cpp:411 msgid "Pick colors from image" msgstr "Kleur uitkiezen in de afbeelding" -#: ../src/verbs.cpp:2618 +#: ../src/verbs.cpp:2677 msgctxt "ContextVerb" msgid "Connector" msgstr "Verbinding" -#: ../src/verbs.cpp:2619 +#: ../src/verbs.cpp:2678 msgid "Create diagram connectors" msgstr "Diagramverbindingen maken" -#: ../src/verbs.cpp:2620 +#: ../src/verbs.cpp:2679 msgctxt "ContextVerb" msgid "Paint Bucket" msgstr "Verfemmer" -#: ../src/verbs.cpp:2621 +#: ../src/verbs.cpp:2680 msgid "Fill bounded areas" msgstr "Afgebakende gebieden vullen" -#: ../src/verbs.cpp:2622 +#: ../src/verbs.cpp:2681 msgctxt "ContextVerb" msgid "LPE Edit" msgstr "Padeffect wijzigen" -#: ../src/verbs.cpp:2623 +#: ../src/verbs.cpp:2682 msgid "Edit Path Effect parameters" msgstr "Wijzig padeffectparameters" -#: ../src/verbs.cpp:2624 +#: ../src/verbs.cpp:2683 msgctxt "ContextVerb" msgid "Eraser" msgstr "Gom" -#: ../src/verbs.cpp:2625 +#: ../src/verbs.cpp:2684 msgid "Erase existing paths" msgstr "Bestaande pagen verwijderen" -#: ../src/verbs.cpp:2626 +#: ../src/verbs.cpp:2685 msgctxt "ContextVerb" msgid "LPE Tool" msgstr "Padeffecten" -#: ../src/verbs.cpp:2627 +#: ../src/verbs.cpp:2686 msgid "Do geometric constructions" msgstr "Geometrische constructies maken" #. Tool prefs -#: ../src/verbs.cpp:2629 +#: ../src/verbs.cpp:2688 msgid "Selector Preferences" msgstr "Selectievoorkeuren" -#: ../src/verbs.cpp:2630 +#: ../src/verbs.cpp:2689 msgid "Open Preferences for the Selector tool" msgstr "Voorkeuren voor het selectiegereedschap openen" -#: ../src/verbs.cpp:2631 +#: ../src/verbs.cpp:2690 msgid "Node Tool Preferences" msgstr "Knooppuntvoorkeuren" -#: ../src/verbs.cpp:2632 +#: ../src/verbs.cpp:2691 msgid "Open Preferences for the Node tool" msgstr "Voorkeuren voor het knooppuntengereedschap openen" -#: ../src/verbs.cpp:2633 +#: ../src/verbs.cpp:2692 msgid "Tweak Tool Preferences" msgstr "Boetseervoorkeuren" -#: ../src/verbs.cpp:2634 +#: ../src/verbs.cpp:2693 msgid "Open Preferences for the Tweak tool" msgstr "Voorkeuren voor het boetseergereedschap openen" -#: ../src/verbs.cpp:2635 +#: ../src/verbs.cpp:2694 msgid "Spray Tool Preferences" msgstr "Verstuifvoorkeuren" -#: ../src/verbs.cpp:2636 +#: ../src/verbs.cpp:2695 msgid "Open Preferences for the Spray tool" msgstr "Voorkeuren voor het verstuifgereedschap openen" -#: ../src/verbs.cpp:2637 +#: ../src/verbs.cpp:2696 msgid "Rectangle Preferences" msgstr "Voorkeuren voor rechthoeken" -#: ../src/verbs.cpp:2638 +#: ../src/verbs.cpp:2697 msgid "Open Preferences for the Rectangle tool" msgstr "Voorkeuren voor het rechthoekgereedschap openen" -#: ../src/verbs.cpp:2639 +#: ../src/verbs.cpp:2698 msgid "3D Box Preferences" msgstr "Voorkeuren voor 3D-kubus" -#: ../src/verbs.cpp:2640 +#: ../src/verbs.cpp:2699 msgid "Open Preferences for the 3D Box tool" msgstr "Voorkeuren voor het 3D-kubusgereedschap openen" -#: ../src/verbs.cpp:2641 +#: ../src/verbs.cpp:2700 msgid "Ellipse Preferences" msgstr "Voorkeuren voor ellipsen" -#: ../src/verbs.cpp:2642 +#: ../src/verbs.cpp:2701 msgid "Open Preferences for the Ellipse tool" msgstr "Voorkeuren voor het ellipsgereedschap openen" -#: ../src/verbs.cpp:2643 +#: ../src/verbs.cpp:2702 msgid "Star Preferences" msgstr "Voorkeuren voor sterren" -#: ../src/verbs.cpp:2644 +#: ../src/verbs.cpp:2703 msgid "Open Preferences for the Star tool" msgstr "Voorkeuren voor het stergereedschap openen" -#: ../src/verbs.cpp:2645 +#: ../src/verbs.cpp:2704 msgid "Spiral Preferences" msgstr "Voorkeuren voor spiralen" -#: ../src/verbs.cpp:2646 +#: ../src/verbs.cpp:2705 msgid "Open Preferences for the Spiral tool" msgstr "Voorkeuren voor het spiraalgereedschap openen" -#: ../src/verbs.cpp:2647 +#: ../src/verbs.cpp:2706 msgid "Pencil Preferences" msgstr "Potloodvoorkeuren" -#: ../src/verbs.cpp:2648 +#: ../src/verbs.cpp:2707 msgid "Open Preferences for the Pencil tool" msgstr "Voorkeuren voor het potloodgereedschap openen" -#: ../src/verbs.cpp:2649 +#: ../src/verbs.cpp:2708 msgid "Pen Preferences" msgstr "Penvoorkeuren" -#: ../src/verbs.cpp:2650 +#: ../src/verbs.cpp:2709 msgid "Open Preferences for the Pen tool" msgstr "Voorkeuren voor het pengereedschap openen" -#: ../src/verbs.cpp:2651 +#: ../src/verbs.cpp:2710 msgid "Calligraphic Preferences" msgstr "Kalligrafievoorkeuren" -#: ../src/verbs.cpp:2652 +#: ../src/verbs.cpp:2711 msgid "Open Preferences for the Calligraphy tool" msgstr "Voorkeuren voor het kalligrafiegereedschap openen" -#: ../src/verbs.cpp:2653 +#: ../src/verbs.cpp:2712 msgid "Text Preferences" msgstr "Tekstvoorkeuren" -#: ../src/verbs.cpp:2654 +#: ../src/verbs.cpp:2713 msgid "Open Preferences for the Text tool" msgstr "Voorkeuren voor het tekstgereedschap openen" -#: ../src/verbs.cpp:2655 +#: ../src/verbs.cpp:2714 msgid "Gradient Preferences" msgstr "Kleurverloopvoorkeuren" -#: ../src/verbs.cpp:2656 +#: ../src/verbs.cpp:2715 msgid "Open Preferences for the Gradient tool" msgstr "Voorkeuren voor het kleurverloopgereedschap openen" -#: ../src/verbs.cpp:2657 +#: ../src/verbs.cpp:2716 msgid "Mesh Preferences" msgstr "Meshvoorkeuren" -#: ../src/verbs.cpp:2658 +#: ../src/verbs.cpp:2717 msgid "Open Preferences for the Mesh tool" msgstr "Voorkeuren voor het meshgereedschap openen" -#: ../src/verbs.cpp:2659 +#: ../src/verbs.cpp:2718 msgid "Zoom Preferences" msgstr "Zoomvoorkeuren" -#: ../src/verbs.cpp:2660 +#: ../src/verbs.cpp:2719 msgid "Open Preferences for the Zoom tool" msgstr "Voorkeuren voor het zoomgereedschap openen" -#: ../src/verbs.cpp:2661 +#: ../src/verbs.cpp:2720 msgid "Measure Preferences" msgstr "Meetlatvoorkeuren" -#: ../src/verbs.cpp:2662 +#: ../src/verbs.cpp:2721 msgid "Open Preferences for the Measure tool" msgstr "Voorkeuren voor de meetlat openen" -#: ../src/verbs.cpp:2663 +#: ../src/verbs.cpp:2722 msgid "Dropper Preferences" msgstr "Pipetvoorkeuren" -#: ../src/verbs.cpp:2664 +#: ../src/verbs.cpp:2723 msgid "Open Preferences for the Dropper tool" msgstr "Voorkeuren voor het pipetgereedschap openen" -#: ../src/verbs.cpp:2665 +#: ../src/verbs.cpp:2724 msgid "Connector Preferences" msgstr "Voorkeuren voor verbindingen" -#: ../src/verbs.cpp:2666 +#: ../src/verbs.cpp:2725 msgid "Open Preferences for the Connector tool" msgstr "Voorkeuren voor het verbindingsgereedschap openen" -#: ../src/verbs.cpp:2667 +#: ../src/verbs.cpp:2726 msgid "Paint Bucket Preferences" msgstr "Verfemmervoorkeuren" -#: ../src/verbs.cpp:2668 +#: ../src/verbs.cpp:2727 msgid "Open Preferences for the Paint Bucket tool" msgstr "Voorkeuren voor het verfemmergereedschap openen" -#: ../src/verbs.cpp:2669 +#: ../src/verbs.cpp:2728 msgid "Eraser Preferences" msgstr "Gomvoorkeuren" -#: ../src/verbs.cpp:2670 +#: ../src/verbs.cpp:2729 msgid "Open Preferences for the Eraser tool" msgstr "Voorkeuren voor de gom openen" -#: ../src/verbs.cpp:2671 +#: ../src/verbs.cpp:2730 msgid "LPE Tool Preferences" msgstr "Padeffectvoorkeuren" -#: ../src/verbs.cpp:2672 +#: ../src/verbs.cpp:2731 msgid "Open Preferences for the LPETool tool" msgstr "Voorkeuren voor het padeffectengereedschap openen" #. Zoom/View -#: ../src/verbs.cpp:2674 +#: ../src/verbs.cpp:2733 msgid "Zoom In" msgstr "_Inzoomen" -#: ../src/verbs.cpp:2674 +#: ../src/verbs.cpp:2733 msgid "Zoom in" msgstr "Inzoomen" -#: ../src/verbs.cpp:2675 +#: ../src/verbs.cpp:2734 msgid "Zoom Out" msgstr "_Uitzoomen" -#: ../src/verbs.cpp:2675 +#: ../src/verbs.cpp:2734 msgid "Zoom out" msgstr "Uitzoomen" -#: ../src/verbs.cpp:2676 +#: ../src/verbs.cpp:2735 msgid "_Rulers" msgstr "_Linialen" -#: ../src/verbs.cpp:2676 +#: ../src/verbs.cpp:2735 msgid "Show or hide the canvas rulers" msgstr "Linialen van het canvas weergeven of verbergen" -#: ../src/verbs.cpp:2677 +#: ../src/verbs.cpp:2736 msgid "Scroll_bars" msgstr "Schuif_balken" -#: ../src/verbs.cpp:2677 +#: ../src/verbs.cpp:2736 msgid "Show or hide the canvas scrollbars" msgstr "Schuifbalken weergeven of verbergen" -#: ../src/verbs.cpp:2678 +#: ../src/verbs.cpp:2737 msgid "_Grid" msgstr "_Raster" -#: ../src/verbs.cpp:2678 +#: ../src/verbs.cpp:2737 msgid "Show or hide the grid" msgstr "Raster weergeven of verbergen" -#: ../src/verbs.cpp:2679 +#: ../src/verbs.cpp:2738 msgid "G_uides" msgstr "_Hulplijnen" -#: ../src/verbs.cpp:2679 +#: ../src/verbs.cpp:2738 msgid "Show or hide guides (drag from a ruler to create a guide)" msgstr "Hulplijnen weergeven of verbergen (sleep vanaf een liniaal om een hulplijn te maken" -#: ../src/verbs.cpp:2680 +#: ../src/verbs.cpp:2739 msgid "Enable snapping" msgstr "Kleven activeren" -#: ../src/verbs.cpp:2681 +#: ../src/verbs.cpp:2740 msgid "_Commands Bar" msgstr "_Opdrachtenbalk" -#: ../src/verbs.cpp:2681 +#: ../src/verbs.cpp:2740 msgid "Show or hide the Commands bar (under the menu)" msgstr "Opdrachtenbalk weergeven of verbergen (onder de menubalk)" -#: ../src/verbs.cpp:2682 +#: ../src/verbs.cpp:2741 msgid "Sn_ap Controls Bar" msgstr "Klee_findicatoren" -#: ../src/verbs.cpp:2682 +#: ../src/verbs.cpp:2741 msgid "Show or hide the snapping controls" msgstr "Balk met kleefinstellingen weergeven of verbergen" -#: ../src/verbs.cpp:2683 +#: ../src/verbs.cpp:2742 msgid "T_ool Controls Bar" msgstr "G_ereedschapsdetails" -#: ../src/verbs.cpp:2683 +#: ../src/verbs.cpp:2742 msgid "Show or hide the Tool Controls bar" msgstr "Gereedschapsdetailsbalk weergeven of verbergen" -#: ../src/verbs.cpp:2684 +#: ../src/verbs.cpp:2743 msgid "_Toolbox" msgstr "_Gereedschappen" -#: ../src/verbs.cpp:2684 +#: ../src/verbs.cpp:2743 msgid "Show or hide the main toolbox (on the left)" msgstr "Gereedschappenbalk weergeven of verbergen (aan de linkerzijde)" -#: ../src/verbs.cpp:2685 +#: ../src/verbs.cpp:2744 msgid "_Palette" msgstr "_Palet" -#: ../src/verbs.cpp:2685 +#: ../src/verbs.cpp:2744 msgid "Show or hide the color palette" msgstr "Paletbalk weergeven of verbergen (onderaan)" -#: ../src/verbs.cpp:2686 +#: ../src/verbs.cpp:2745 msgid "_Statusbar" msgstr "_Statusbalk" -#: ../src/verbs.cpp:2686 +#: ../src/verbs.cpp:2745 msgid "Show or hide the statusbar (at the bottom of the window)" msgstr "Statusbalk weergeven of verbergen (onderaan)" -#: ../src/verbs.cpp:2687 +#: ../src/verbs.cpp:2746 msgid "Nex_t Zoom" msgstr "V_olgende zoomniveau" -#: ../src/verbs.cpp:2687 +#: ../src/verbs.cpp:2746 msgid "Next zoom (from the history of zooms)" msgstr "Volgende zoomniveau (uit de zoomgeschiedenis)" -#: ../src/verbs.cpp:2689 +#: ../src/verbs.cpp:2748 msgid "Pre_vious Zoom" msgstr "Vo_rige zoomniveau" -#: ../src/verbs.cpp:2689 +#: ../src/verbs.cpp:2748 msgid "Previous zoom (from the history of zooms)" msgstr "Vorige zoomniveau (uit de zoomgeschiedenis)" -#: ../src/verbs.cpp:2691 +#: ../src/verbs.cpp:2750 msgid "Zoom 1:_1" msgstr "Zoom 1:_1" -#: ../src/verbs.cpp:2691 +#: ../src/verbs.cpp:2750 msgid "Zoom to 1:1" msgstr "Ware grootte" -#: ../src/verbs.cpp:2693 +#: ../src/verbs.cpp:2752 msgid "Zoom 1:_2" msgstr "Zoom 1:_2" -#: ../src/verbs.cpp:2693 +#: ../src/verbs.cpp:2752 msgid "Zoom to 1:2" msgstr "Halve grootte" -#: ../src/verbs.cpp:2695 +#: ../src/verbs.cpp:2754 msgid "_Zoom 2:1" msgstr "_Zoom 2:1" -#: ../src/verbs.cpp:2695 +#: ../src/verbs.cpp:2754 msgid "Zoom to 2:1" msgstr "Dubbele grootte" -#: ../src/verbs.cpp:2698 +#: ../src/verbs.cpp:2757 msgid "_Fullscreen" msgstr "_Volledig scherm" -#: ../src/verbs.cpp:2698 -#: ../src/verbs.cpp:2700 +#: ../src/verbs.cpp:2757 +#: ../src/verbs.cpp:2759 msgid "Stretch this document window to full screen" msgstr "Dit documentvenster vergroten tot de volledige schermgrootte" -#: ../src/verbs.cpp:2700 +#: ../src/verbs.cpp:2759 msgid "Fullscreen & Focus Mode" msgstr "Volledig scherm en focus modus" -#: ../src/verbs.cpp:2703 +#: ../src/verbs.cpp:2762 msgid "Toggle _Focus Mode" msgstr "_Focus modus aan/uitzetten" -#: ../src/verbs.cpp:2703 +#: ../src/verbs.cpp:2762 msgid "Remove excess toolbars to focus on drawing" msgstr "Overtollige balken verwijderen om op het tekenen te focussen" -#: ../src/verbs.cpp:2705 +#: ../src/verbs.cpp:2764 msgid "Duplic_ate Window" msgstr "Venster _dupliceren" -#: ../src/verbs.cpp:2705 +#: ../src/verbs.cpp:2764 msgid "Open a new window with the same document" msgstr "Een nieuw venster met hetzelfde document openen" -#: ../src/verbs.cpp:2707 +#: ../src/verbs.cpp:2766 msgid "_New View Preview" msgstr "_Nieuw voorbeeld weergeven" -#: ../src/verbs.cpp:2708 +#: ../src/verbs.cpp:2767 msgid "New View Preview" msgstr "Nieuw voorbeeld weergeven" #. "view_new_preview" -#: ../src/verbs.cpp:2710 -#: ../src/verbs.cpp:2718 +#: ../src/verbs.cpp:2769 +#: ../src/verbs.cpp:2777 msgid "_Normal" msgstr "_Normaal" -#: ../src/verbs.cpp:2711 +#: ../src/verbs.cpp:2770 msgid "Switch to normal display mode" msgstr "Naar normale weergavemodus overschakelen" -#: ../src/verbs.cpp:2712 +#: ../src/verbs.cpp:2771 msgid "No _Filters" msgstr "Geen _filters" -#: ../src/verbs.cpp:2713 +#: ../src/verbs.cpp:2772 msgid "Switch to normal display without filters" msgstr "Naar normale weergavemodus zonder filters overschakelen" -#: ../src/verbs.cpp:2714 +#: ../src/verbs.cpp:2773 msgid "_Outline" msgstr "_Contour" -#: ../src/verbs.cpp:2715 +#: ../src/verbs.cpp:2774 msgid "Switch to outline (wireframe) display mode" msgstr "Naar contourmodus voor weergave (draadmodel) overschakelen" #. new ZoomVerb(SP_VERB_VIEW_COLOR_MODE_PRINT_COLORS_PREVIEW, "ViewColorModePrintColorsPreview", N_("_Print Colors Preview"), #. N_("Switch to print colors preview mode"), NULL), -#: ../src/verbs.cpp:2716 -#: ../src/verbs.cpp:2724 +#: ../src/verbs.cpp:2775 +#: ../src/verbs.cpp:2783 msgid "_Toggle" msgstr "_Schakelen" -#: ../src/verbs.cpp:2717 +#: ../src/verbs.cpp:2776 msgid "Toggle between normal and outline display modes" msgstr "Tussen normale en contourweergavemodus schakelen" -#: ../src/verbs.cpp:2719 +#: ../src/verbs.cpp:2778 msgid "Switch to normal color display mode" msgstr "Naar normale kleurweergavemodus schakelen" -#: ../src/verbs.cpp:2720 +#: ../src/verbs.cpp:2779 msgid "_Grayscale" msgstr "_Grijstinten" -#: ../src/verbs.cpp:2721 +#: ../src/verbs.cpp:2780 msgid "Switch to grayscale display mode" msgstr "Naar weergavemodus grijswaarden schakelen" -#: ../src/verbs.cpp:2725 +#: ../src/verbs.cpp:2784 msgid "Toggle between normal and grayscale color display modes" msgstr "Tussen kleurweergavenmodi normaal en grijswaarden schakelen" -#: ../src/verbs.cpp:2727 +#: ../src/verbs.cpp:2786 msgid "Color-managed view" msgstr "Kleurmanagementmodus" -#: ../src/verbs.cpp:2728 +#: ../src/verbs.cpp:2787 msgid "Toggle color-managed display for this document window" msgstr "Kleurmanagementweergave veranderen voor dit documentvenster" -#: ../src/verbs.cpp:2730 +#: ../src/verbs.cpp:2789 msgid "Ico_n Preview..." msgstr "_Pictogramvoorbeeld..." -#: ../src/verbs.cpp:2731 +#: ../src/verbs.cpp:2790 msgid "Open a window to preview objects at different icon resolutions" msgstr "Van objecten pictogramvoorbeelden tonen in verschillende resoluties" -#: ../src/verbs.cpp:2733 +#: ../src/verbs.cpp:2792 msgid "Zoom to fit page in window" msgstr "De hele pagina in het scherm laten passen" -#: ../src/verbs.cpp:2734 +#: ../src/verbs.cpp:2793 msgid "Page _Width" msgstr "Pagina_breedte" -#: ../src/verbs.cpp:2735 +#: ../src/verbs.cpp:2794 msgid "Zoom to fit page width in window" msgstr "De paginabreedte in het scherm laten passen" -#: ../src/verbs.cpp:2737 +#: ../src/verbs.cpp:2796 msgid "Zoom to fit drawing in window" msgstr "De hele tekening in het scherm laten passen" -#: ../src/verbs.cpp:2739 +#: ../src/verbs.cpp:2798 msgid "Zoom to fit selection in window" msgstr "Selectie in het scherm laten passen" #. Dialogs -#: ../src/verbs.cpp:2742 +#: ../src/verbs.cpp:2801 msgid "P_references..." msgstr "Voo_rkeuren..." -#: ../src/verbs.cpp:2743 +#: ../src/verbs.cpp:2802 msgid "Edit global Inkscape preferences" msgstr "Algemene Inkscapevoorkeuren instellen" -#: ../src/verbs.cpp:2744 +#: ../src/verbs.cpp:2803 msgid "_Document Properties..." msgstr "Document_eigenschappen..." -#: ../src/verbs.cpp:2745 +#: ../src/verbs.cpp:2804 msgid "Edit properties of this document (to be saved with the document)" msgstr "Documenteigenschappen instellen (worden opgeslagen in dit document)" -#: ../src/verbs.cpp:2746 +#: ../src/verbs.cpp:2805 msgid "Document _Metadata..." msgstr "Document_metagegevens..." -#: ../src/verbs.cpp:2747 +#: ../src/verbs.cpp:2806 msgid "Edit document metadata (to be saved with the document)" msgstr "Documentmetagegevens bewerken (worden opgeslagen in dit document)" -#: ../src/verbs.cpp:2749 +#: ../src/verbs.cpp:2808 msgid "Edit objects' colors, gradients, arrowheads, and other fill and stroke properties..." msgstr "Kleuren, kleurverlopen, pijlen en andere lijn- en vullingseigenschappen van objecten bewerken..." -#: ../src/verbs.cpp:2750 +#: ../src/verbs.cpp:2809 msgid "Gl_yphs..." msgstr "T_ekens..." -#: ../src/verbs.cpp:2751 +#: ../src/verbs.cpp:2810 msgid "Select characters from a glyphs palette" msgstr "Karakters van een tekenpalet kiezen" #. TRANSLATORS: "Swatches" means: color samples -#: ../src/verbs.cpp:2753 +#: ../src/verbs.cpp:2812 msgid "S_watches..." msgstr "_Paletten..." -#: ../src/verbs.cpp:2754 +#: ../src/verbs.cpp:2813 msgid "Select colors from a swatches palette" msgstr "Kleuren kiezen van een palet" -#: ../src/verbs.cpp:2755 +#: ../src/verbs.cpp:2814 msgid "S_ymbols..." msgstr "_Symbolen..." -#: ../src/verbs.cpp:2756 +#: ../src/verbs.cpp:2815 msgid "Select symbol from a symbols palette" msgstr "Symbool selecteren van symboolpalet" -#: ../src/verbs.cpp:2757 +#: ../src/verbs.cpp:2816 msgid "Transfor_m..." msgstr "_Transformeren..." -#: ../src/verbs.cpp:2758 +#: ../src/verbs.cpp:2817 msgid "Precisely control objects' transformations" msgstr "Transformaties op een object gedetailleerd instellen" -#: ../src/verbs.cpp:2759 +#: ../src/verbs.cpp:2818 msgid "_Align and Distribute..." msgstr "_Uitlijnen en verdelen..." -#: ../src/verbs.cpp:2760 +#: ../src/verbs.cpp:2819 msgid "Align and distribute objects" msgstr "Objecten uitlijnen en verdelen" -#: ../src/verbs.cpp:2761 +#: ../src/verbs.cpp:2820 msgid "_Spray options..." msgstr "_Verstuifopties..." -#: ../src/verbs.cpp:2762 +#: ../src/verbs.cpp:2821 msgid "Some options for the spray" msgstr "Enkele opties voor de verstuiver" -#: ../src/verbs.cpp:2763 +#: ../src/verbs.cpp:2822 msgid "Undo _History..." msgstr "Gesc_hiedenis..." -#: ../src/verbs.cpp:2764 +#: ../src/verbs.cpp:2823 msgid "Undo History" msgstr "Geschiedenis" -#: ../src/verbs.cpp:2766 +#: ../src/verbs.cpp:2825 msgid "View and select font family, font size and other text properties" msgstr "Lettertype, lettergrootte, letterstijl en andere teksteigenschappen tonen en instellen" -#: ../src/verbs.cpp:2767 +#: ../src/verbs.cpp:2826 msgid "_XML Editor..." msgstr "_XML-editor..." -#: ../src/verbs.cpp:2768 +#: ../src/verbs.cpp:2827 msgid "View and edit the XML tree of the document" msgstr "De XML-boom van het document bekijken en bewerken" -#: ../src/verbs.cpp:2769 +#: ../src/verbs.cpp:2828 msgid "_Find/Replace..." msgstr "_Zoeken/vervangen..." -#: ../src/verbs.cpp:2770 +#: ../src/verbs.cpp:2829 msgid "Find objects in document" msgstr "Objecten in het document zoeken" -#: ../src/verbs.cpp:2771 +#: ../src/verbs.cpp:2830 msgid "Find and _Replace Text..." msgstr "Tekst zoeken en _vervangen..." -#: ../src/verbs.cpp:2772 +#: ../src/verbs.cpp:2831 msgid "Find and replace text in document" msgstr "Tekst zoeken en vervangen in het document" -#: ../src/verbs.cpp:2774 +#: ../src/verbs.cpp:2833 msgid "Check spelling of text in document" msgstr "De spelling van de tekst in het document controleren" -#: ../src/verbs.cpp:2775 +#: ../src/verbs.cpp:2834 msgid "_Messages..." msgstr "_Berichten..." -#: ../src/verbs.cpp:2776 +#: ../src/verbs.cpp:2835 msgid "View debug messages" msgstr "Debug-meldingen bekijken" -#: ../src/verbs.cpp:2777 -msgid "S_cripts..." -msgstr "S_cripts..." - -#: ../src/verbs.cpp:2778 -msgid "Run scripts" -msgstr "Scripts uitvoeren" - -#: ../src/verbs.cpp:2779 +#: ../src/verbs.cpp:2836 msgid "Show/Hide D_ialogs" msgstr "_Dialogen weergeven/verbergen" -#: ../src/verbs.cpp:2780 +#: ../src/verbs.cpp:2837 msgid "Show or hide all open dialogs" msgstr "Alle actieve dialogen verbergen of weergeven" -#: ../src/verbs.cpp:2781 +#: ../src/verbs.cpp:2838 msgid "Create Tiled Clones..." msgstr "_Tegelen met klonen..." -#: ../src/verbs.cpp:2782 +#: ../src/verbs.cpp:2839 msgid "Create multiple clones of selected object, arranging them into a pattern or scattering" msgstr "Van het geselecteerde object meerdere klonen maken en deze rangschikken of verstrooien" -#: ../src/verbs.cpp:2783 +#: ../src/verbs.cpp:2840 msgid "_Object attributes..." msgstr "Object_eigenschappen..." -#: ../src/verbs.cpp:2784 +#: ../src/verbs.cpp:2841 msgid "Edit the object attributes..." msgstr "Objectattributen bewerken..." -#: ../src/verbs.cpp:2786 +#: ../src/verbs.cpp:2843 msgid "Edit the ID, locked and visible status, and other object properties" msgstr "Object-ID, vergrendelings- en zichtbaarheidsstatus, en andere objecteigenschappen bewerken" -#: ../src/verbs.cpp:2787 +#: ../src/verbs.cpp:2844 msgid "_Input Devices..." msgstr "_Invoerapparaten..." -#: ../src/verbs.cpp:2788 +#: ../src/verbs.cpp:2845 msgid "Configure extended input devices, such as a graphics tablet" msgstr "Extra invoerapparaten instellen, zoals een tekentablet" -#: ../src/verbs.cpp:2789 +#: ../src/verbs.cpp:2846 msgid "_Extensions..." msgstr "_Uitbreidingen..." -#: ../src/verbs.cpp:2790 +#: ../src/verbs.cpp:2847 msgid "Query information about extensions" msgstr "Informatie over uitbreidingen opvragen" -#: ../src/verbs.cpp:2791 +#: ../src/verbs.cpp:2848 msgid "Layer_s..." msgstr "L_agen..." -#: ../src/verbs.cpp:2792 +#: ../src/verbs.cpp:2849 msgid "View Layers" msgstr "Informatie over de aanwezige lagen tonen" -#: ../src/verbs.cpp:2793 +#: ../src/verbs.cpp:2850 msgid "Path E_ffects ..." msgstr "P_adeffecten..." -#: ../src/verbs.cpp:2794 +#: ../src/verbs.cpp:2851 msgid "Manage, edit, and apply path effects" msgstr "Padeffecten beheren, wijzigen en toepassen" -#: ../src/verbs.cpp:2795 +#: ../src/verbs.cpp:2852 msgid "Filter _Editor..." msgstr "Filter _editor..." -#: ../src/verbs.cpp:2796 +#: ../src/verbs.cpp:2853 msgid "Manage, edit, and apply SVG filters" msgstr "SVG-filters beheren, wijzigen en toepassen" -#: ../src/verbs.cpp:2797 +#: ../src/verbs.cpp:2854 msgid "SVG Font Editor..." msgstr "SVG-lettertypen editor..." -#: ../src/verbs.cpp:2798 +#: ../src/verbs.cpp:2855 msgid "Edit SVG fonts" msgstr "SVG-lettertypen bewerken" -#: ../src/verbs.cpp:2799 +#: ../src/verbs.cpp:2856 msgid "Print Colors..." msgstr "Afdrukkleuren..." -#: ../src/verbs.cpp:2800 +#: ../src/verbs.cpp:2857 msgid "Select which color separations to render in Print Colors Preview rendermode" msgstr "Selecteer welke kleuren gerenderd worden in de weergavemodus Afdrukvoorbeeld kleuren" -#: ../src/verbs.cpp:2801 +#: ../src/verbs.cpp:2858 msgid "_Export PNG Image..." msgstr "PNG-afbeelding _exporteren..." -#: ../src/verbs.cpp:2802 +#: ../src/verbs.cpp:2859 msgid "Export this document or a selection as a PNG image" msgstr "Document of selectie als PNG-afbeelding exporteren" #. Help -#: ../src/verbs.cpp:2804 +#: ../src/verbs.cpp:2861 msgid "About E_xtensions" msgstr "Over _uitbreidingen" -#: ../src/verbs.cpp:2805 +#: ../src/verbs.cpp:2862 msgid "Information on Inkscape extensions" msgstr "Informatie over Inkscape-uitbreidingen tonen" -#: ../src/verbs.cpp:2806 +#: ../src/verbs.cpp:2863 msgid "About _Memory" msgstr "_Geheugengebruik" -#: ../src/verbs.cpp:2807 +#: ../src/verbs.cpp:2864 msgid "Memory usage information" msgstr "Informatie over geheugengebruik tonen" -#: ../src/verbs.cpp:2808 +#: ../src/verbs.cpp:2865 msgid "_About Inkscape" msgstr "_Over Inkscape" -#: ../src/verbs.cpp:2809 +#: ../src/verbs.cpp:2866 msgid "Inkscape version, authors, license" msgstr "Inkscapeversie, -auteurs, en -licentie tonen" #. new HelpVerb(SP_VERB_SHOW_LICENSE, "ShowLicense", N_("_License"), #. N_("Distribution terms"), /*"show_license"*/"inkscape_options"), #. Tutorials -#: ../src/verbs.cpp:2814 +#: ../src/verbs.cpp:2871 msgid "Inkscape: _Basic" msgstr "Inkscape: _Basis" -#: ../src/verbs.cpp:2815 +#: ../src/verbs.cpp:2872 msgid "Getting started with Inkscape" msgstr "Aan de slag met Inkscape" #. "tutorial_basic" -#: ../src/verbs.cpp:2816 +#: ../src/verbs.cpp:2873 msgid "Inkscape: _Shapes" msgstr "Inkscape: _Vormen" -#: ../src/verbs.cpp:2817 +#: ../src/verbs.cpp:2874 msgid "Using shape tools to create and edit shapes" msgstr "Het gebruik van het vormgereedschap om vormen te maken en te wijzigen" -#: ../src/verbs.cpp:2818 +#: ../src/verbs.cpp:2875 msgid "Inkscape: _Advanced" msgstr "Inkscape: _Geavanceerd" -#: ../src/verbs.cpp:2819 +#: ../src/verbs.cpp:2876 msgid "Advanced Inkscape topics" msgstr "Geavanceerde Inkscape-onderwerpen" #. "tutorial_advanced" #. TRANSLATORS: "to trace" means "to convert a bitmap to vector graphics" (to vectorize) -#: ../src/verbs.cpp:2821 +#: ../src/verbs.cpp:2878 msgid "Inkscape: T_racing" msgstr "Inkscape: _Overtrekken" -#: ../src/verbs.cpp:2822 +#: ../src/verbs.cpp:2879 msgid "Using bitmap tracing" msgstr "Bitmaps 'overtrekken' om een lijntekening te krijgen" #. "tutorial_tracing" -#: ../src/verbs.cpp:2823 +#: ../src/verbs.cpp:2880 msgid "Inkscape: _Calligraphy" msgstr "Inkscape: _Kalligrafie" -#: ../src/verbs.cpp:2824 +#: ../src/verbs.cpp:2881 msgid "Using the Calligraphy pen tool" msgstr "Het gebruik van het kalligrafiegereedschap" -#: ../src/verbs.cpp:2825 +#: ../src/verbs.cpp:2882 msgid "Inkscape: _Interpolate" msgstr "Inkscape: _Interpoleren" -#: ../src/verbs.cpp:2826 +#: ../src/verbs.cpp:2883 msgid "Using the interpolate extension" msgstr "Het gebruik van de extensie interpoleren" #. "tutorial_interpolate" -#: ../src/verbs.cpp:2827 +#: ../src/verbs.cpp:2884 msgid "_Elements of Design" msgstr "Ont_werpbeginselen" -#: ../src/verbs.cpp:2828 +#: ../src/verbs.cpp:2885 msgid "Principles of design in the tutorial form" msgstr "Beginselen van een ontwerp in de vorm van een handleiding" #. "tutorial_design" -#: ../src/verbs.cpp:2829 +#: ../src/verbs.cpp:2886 msgid "_Tips and Tricks" msgstr "_Tips en trucs" -#: ../src/verbs.cpp:2830 +#: ../src/verbs.cpp:2887 msgid "Miscellaneous tips and tricks" msgstr "Verschillende tips en trucs" #. "tutorial_tips" #. Effect -- renamed Extension -#: ../src/verbs.cpp:2833 +#: ../src/verbs.cpp:2890 msgid "Previous Exte_nsion" msgstr "_Vorige uitbreiding" -#: ../src/verbs.cpp:2834 +#: ../src/verbs.cpp:2891 msgid "Repeat the last extension with the same settings" msgstr "De laatste uitbreiding met dezelfde instellingen herhalen" -#: ../src/verbs.cpp:2835 +#: ../src/verbs.cpp:2892 msgid "_Previous Extension Settings..." msgstr "_Instellingen van de vorige uitbreiding..." -#: ../src/verbs.cpp:2836 +#: ../src/verbs.cpp:2893 msgid "Repeat the last extension with new settings" msgstr "De laatste uitbreiding met nieuwe instellingen herhalen" -#: ../src/verbs.cpp:2840 +#: ../src/verbs.cpp:2897 msgid "Fit the page to the current selection" msgstr "Paginaformaat aan selectie aanpassen" -#: ../src/verbs.cpp:2842 +#: ../src/verbs.cpp:2899 msgid "Fit the page to the drawing" msgstr "Paginaformaat aan tekening aanpassen" -#: ../src/verbs.cpp:2844 +#: ../src/verbs.cpp:2901 msgid "Fit the page to the current selection or the drawing if there is no selection" msgstr "Paginaformaat aanpassen aan huidige selectie of tekening aan als er geen selectie is" #. LockAndHide -#: ../src/verbs.cpp:2846 +#: ../src/verbs.cpp:2903 msgid "Unlock All" msgstr "Alles ontgrendelen" -#: ../src/verbs.cpp:2848 +#: ../src/verbs.cpp:2905 msgid "Unlock All in All Layers" msgstr "Alles ontgrendelen in alle lagen" -#: ../src/verbs.cpp:2850 +#: ../src/verbs.cpp:2907 msgid "Unhide All" msgstr "Alles tonen" -#: ../src/verbs.cpp:2852 +#: ../src/verbs.cpp:2909 msgid "Unhide All in All Layers" msgstr "Alles tonen in alle lagen" -#: ../src/verbs.cpp:2856 +#: ../src/verbs.cpp:2913 msgid "Link an ICC color profile" msgstr "Een ICC-kleurprofiel linken" -#: ../src/verbs.cpp:2857 +#: ../src/verbs.cpp:2914 msgid "Remove Color Profile" msgstr "Kleurprofiel verwijderen" -#: ../src/verbs.cpp:2858 +#: ../src/verbs.cpp:2915 msgid "Remove a linked ICC color profile" msgstr "Een gelinkt ICC-kleurprofiel verwijderen" -#: ../src/verbs.cpp:2881 -#: ../src/verbs.cpp:2882 +#: ../src/verbs.cpp:2918 +#, fuzzy +msgid "Add External Script" +msgstr "Extern script toevoegen..." + +#: ../src/verbs.cpp:2918 +#, fuzzy +msgid "Add an external script" +msgstr "Extern script toevoegen..." + +#: ../src/verbs.cpp:2920 +#, fuzzy +msgid "Add Embedded Script" +msgstr "Ingevoegd script toevoegen..." + +#: ../src/verbs.cpp:2920 +#, fuzzy +msgid "Add an embedded script" +msgstr "Ingevoegd script toevoegen..." + +#: ../src/verbs.cpp:2922 +#, fuzzy +msgid "Edit Embedded Script" +msgstr "Ingevoegd script bewerken" + +#: ../src/verbs.cpp:2922 +#, fuzzy +msgid "Edit an embedded script" +msgstr "Ingevoegd script bewerken" + +#: ../src/verbs.cpp:2924 +#, fuzzy +msgid "Remove External Script" +msgstr "Extern script verwijderen" + +#: ../src/verbs.cpp:2924 +#, fuzzy +msgid "Remove an external script" +msgstr "Extern script verwijderen" + +#: ../src/verbs.cpp:2926 +#, fuzzy +msgid "Remove Embedded Script" +msgstr "Ingevoegd script verwijderen" + +#: ../src/verbs.cpp:2926 +#, fuzzy +msgid "Remove an embedded script" +msgstr "Ingevoegd script verwijderen" + +#: ../src/verbs.cpp:2948 +#: ../src/verbs.cpp:2949 msgid "Center on horizontal and vertical axis" msgstr "Centreren op horizontale en verticale as" -#: ../src/widgets/arc-toolbar.cpp:146 +#: ../src/widgets/arc-toolbar.cpp:142 msgid "Arc: Change start/end" msgstr "Boog: Begin/einde veranderen" -#: ../src/widgets/arc-toolbar.cpp:212 +#: ../src/widgets/arc-toolbar.cpp:208 msgid "Arc: Change open/closed" msgstr "Boog: Open/gesloten veranderen" -#: ../src/widgets/arc-toolbar.cpp:303 -#: ../src/widgets/arc-toolbar.cpp:332 -#: ../src/widgets/rect-toolbar.cpp:259 -#: ../src/widgets/rect-toolbar.cpp:297 -#: ../src/widgets/spiral-toolbar.cpp:229 -#: ../src/widgets/spiral-toolbar.cpp:253 -#: ../src/widgets/star-toolbar.cpp:395 -#: ../src/widgets/star-toolbar.cpp:456 +#: ../src/widgets/arc-toolbar.cpp:299 +#: ../src/widgets/arc-toolbar.cpp:328 +#: ../src/widgets/rect-toolbar.cpp:261 +#: ../src/widgets/rect-toolbar.cpp:299 +#: ../src/widgets/spiral-toolbar.cpp:225 +#: ../src/widgets/spiral-toolbar.cpp:249 +#: ../src/widgets/star-toolbar.cpp:391 +#: ../src/widgets/star-toolbar.cpp:452 msgid "New:" msgstr "Nieuw:" #. FIXME: implement averaging of all parameters for multiple selected #. gtk_label_set_markup(GTK_LABEL(l), _("Average:")); -#: ../src/widgets/arc-toolbar.cpp:306 -#: ../src/widgets/arc-toolbar.cpp:317 -#: ../src/widgets/rect-toolbar.cpp:267 -#: ../src/widgets/rect-toolbar.cpp:285 -#: ../src/widgets/spiral-toolbar.cpp:231 -#: ../src/widgets/spiral-toolbar.cpp:242 -#: ../src/widgets/star-toolbar.cpp:397 +#: ../src/widgets/arc-toolbar.cpp:302 +#: ../src/widgets/arc-toolbar.cpp:313 +#: ../src/widgets/rect-toolbar.cpp:269 +#: ../src/widgets/rect-toolbar.cpp:287 +#: ../src/widgets/spiral-toolbar.cpp:227 +#: ../src/widgets/spiral-toolbar.cpp:238 +#: ../src/widgets/star-toolbar.cpp:393 msgid "Change:" msgstr "Wijzigen:" -#: ../src/widgets/arc-toolbar.cpp:341 +#: ../src/widgets/arc-toolbar.cpp:337 msgid "Start:" msgstr "Begin:" -#: ../src/widgets/arc-toolbar.cpp:342 +#: ../src/widgets/arc-toolbar.cpp:338 msgid "The angle (in degrees) from the horizontal to the arc's start point" msgstr "De hoek (in graden) tussen een horizontale lijn en het begin van de boog" -#: ../src/widgets/arc-toolbar.cpp:354 +#: ../src/widgets/arc-toolbar.cpp:350 msgid "End:" msgstr "Einde:" -#: ../src/widgets/arc-toolbar.cpp:355 +#: ../src/widgets/arc-toolbar.cpp:351 msgid "The angle (in degrees) from the horizontal to the arc's end point" msgstr "De hoek (in graden) tussen een horizontale lijn en het einde van de boog" -#: ../src/widgets/arc-toolbar.cpp:371 +#: ../src/widgets/arc-toolbar.cpp:367 msgid "Closed arc" msgstr "Gesloten boog" -#: ../src/widgets/arc-toolbar.cpp:372 +#: ../src/widgets/arc-toolbar.cpp:368 msgid "Switch to segment (closed shape with two radii)" msgstr "Omschakelen naar segment (gesloten vorm met twee stralen)" -#: ../src/widgets/arc-toolbar.cpp:378 +#: ../src/widgets/arc-toolbar.cpp:374 msgid "Open Arc" msgstr "Open boog" -#: ../src/widgets/arc-toolbar.cpp:379 +#: ../src/widgets/arc-toolbar.cpp:375 msgid "Switch to arc (unclosed shape)" msgstr "Omschakelen naar boog (open vorm)" -#: ../src/widgets/arc-toolbar.cpp:402 +#: ../src/widgets/arc-toolbar.cpp:398 msgid "Make whole" msgstr "Ellips herstellen" -#: ../src/widgets/arc-toolbar.cpp:403 +#: ../src/widgets/arc-toolbar.cpp:399 msgid "Make the shape a whole ellipse, not arc or segment" msgstr "Van de figuur een hele ellips maken, geen boog of segment" #. TODO: use the correct axis here, too -#: ../src/widgets/box3d-toolbar.cpp:253 +#: ../src/widgets/box3d-toolbar.cpp:248 msgid "3D Box: Change perspective (angle of infinite axis)" msgstr "3D-kubus: Perspectief veranderen (hoek van oneindige as)" -#: ../src/widgets/box3d-toolbar.cpp:320 +#: ../src/widgets/box3d-toolbar.cpp:315 msgid "Angle in X direction" msgstr "Hoek in X-richting" #. Translators: PL is short for 'perspective line' -#: ../src/widgets/box3d-toolbar.cpp:322 +#: ../src/widgets/box3d-toolbar.cpp:317 msgid "Angle of PLs in X direction" msgstr "Hoek van perspectieflijn in X-richting" #. Translators: VP is short for 'vanishing point' -#: ../src/widgets/box3d-toolbar.cpp:344 +#: ../src/widgets/box3d-toolbar.cpp:339 msgid "State of VP in X direction" msgstr "Toestand van verdwijnpunt in X-richting" -#: ../src/widgets/box3d-toolbar.cpp:345 +#: ../src/widgets/box3d-toolbar.cpp:340 msgid "Toggle VP in X direction between 'finite' and 'infinite' (=parallel)" msgstr "Verdwijnpunt in X-richting omschakelen tussen 'eindig ' en 'oneindig' (=parallel)" -#: ../src/widgets/box3d-toolbar.cpp:360 +#: ../src/widgets/box3d-toolbar.cpp:355 msgid "Angle in Y direction" msgstr "Hoek in Y-richting" -#: ../src/widgets/box3d-toolbar.cpp:360 +#: ../src/widgets/box3d-toolbar.cpp:355 msgid "Angle Y:" msgstr "Y-hoek:" #. Translators: PL is short for 'perspective line' -#: ../src/widgets/box3d-toolbar.cpp:362 +#: ../src/widgets/box3d-toolbar.cpp:357 msgid "Angle of PLs in Y direction" msgstr "Hoek van perspectieflijn in Y-richting" #. Translators: VP is short for 'vanishing point' -#: ../src/widgets/box3d-toolbar.cpp:383 +#: ../src/widgets/box3d-toolbar.cpp:378 msgid "State of VP in Y direction" msgstr "Toestand van verdwijnpunt in Y-richting" -#: ../src/widgets/box3d-toolbar.cpp:384 +#: ../src/widgets/box3d-toolbar.cpp:379 msgid "Toggle VP in Y direction between 'finite' and 'infinite' (=parallel)" msgstr "Verdwijnpunt in Y-richting omschakelen tussen 'eindig' en 'oneindig' (=parallel)" -#: ../src/widgets/box3d-toolbar.cpp:399 +#: ../src/widgets/box3d-toolbar.cpp:394 msgid "Angle in Z direction" msgstr "Hoek in Z-richting" #. Translators: PL is short for 'perspective line' -#: ../src/widgets/box3d-toolbar.cpp:401 +#: ../src/widgets/box3d-toolbar.cpp:396 msgid "Angle of PLs in Z direction" msgstr "Hoek van perspectieflijn in Z-richting" #. Translators: VP is short for 'vanishing point' -#: ../src/widgets/box3d-toolbar.cpp:422 +#: ../src/widgets/box3d-toolbar.cpp:417 msgid "State of VP in Z direction" msgstr "Toestand van verdwijnpunt in Z-richting" -#: ../src/widgets/box3d-toolbar.cpp:423 +#: ../src/widgets/box3d-toolbar.cpp:418 msgid "Toggle VP in Z direction between 'finite' and 'infinite' (=parallel)" msgstr "Verdwijnpunt in Z-richting omschakelen tussen 'eindig ' en 'oneindig' (=parallel)" #. gint preset_index = ege_select_one_action_get_active( sel ); -#: ../src/widgets/calligraphy-toolbar.cpp:239 -#: ../src/widgets/calligraphy-toolbar.cpp:283 -#: ../src/widgets/calligraphy-toolbar.cpp:288 +#: ../src/widgets/calligraphy-toolbar.cpp:235 +#: ../src/widgets/calligraphy-toolbar.cpp:279 +#: ../src/widgets/calligraphy-toolbar.cpp:284 msgid "No preset" msgstr "Geen voorkeur" #. Width -#: ../src/widgets/calligraphy-toolbar.cpp:448 -#: ../src/widgets/erasor-toolbar.cpp:146 +#: ../src/widgets/calligraphy-toolbar.cpp:444 +#: ../src/widgets/eraser-toolbar.cpp:142 msgid "(hairline)" msgstr "(haarlijn)" #. Mean #. Rotation #. Scale -#: ../src/widgets/calligraphy-toolbar.cpp:448 -#: ../src/widgets/calligraphy-toolbar.cpp:481 -#: ../src/widgets/erasor-toolbar.cpp:146 -#: ../src/widgets/pencil-toolbar.cpp:303 -#: ../src/widgets/spray-toolbar.cpp:129 -#: ../src/widgets/spray-toolbar.cpp:145 -#: ../src/widgets/spray-toolbar.cpp:161 -#: ../src/widgets/spray-toolbar.cpp:221 -#: ../src/widgets/spray-toolbar.cpp:251 -#: ../src/widgets/spray-toolbar.cpp:269 -#: ../src/widgets/tweak-toolbar.cpp:143 -#: ../src/widgets/tweak-toolbar.cpp:160 -#: ../src/widgets/tweak-toolbar.cpp:368 +#: ../src/widgets/calligraphy-toolbar.cpp:444 +#: ../src/widgets/calligraphy-toolbar.cpp:477 +#: ../src/widgets/eraser-toolbar.cpp:142 +#: ../src/widgets/pencil-toolbar.cpp:298 +#: ../src/widgets/spray-toolbar.cpp:125 +#: ../src/widgets/spray-toolbar.cpp:141 +#: ../src/widgets/spray-toolbar.cpp:157 +#: ../src/widgets/spray-toolbar.cpp:217 +#: ../src/widgets/spray-toolbar.cpp:247 +#: ../src/widgets/spray-toolbar.cpp:265 +#: ../src/widgets/tweak-toolbar.cpp:139 +#: ../src/widgets/tweak-toolbar.cpp:156 +#: ../src/widgets/tweak-toolbar.cpp:364 msgid "(default)" msgstr "(standaard)" -#: ../src/widgets/calligraphy-toolbar.cpp:448 -#: ../src/widgets/erasor-toolbar.cpp:146 +#: ../src/widgets/calligraphy-toolbar.cpp:444 +#: ../src/widgets/eraser-toolbar.cpp:142 msgid "(broad stroke)" msgstr "(dikke lijn)" -#: ../src/widgets/calligraphy-toolbar.cpp:451 -#: ../src/widgets/erasor-toolbar.cpp:149 +#: ../src/widgets/calligraphy-toolbar.cpp:447 +#: ../src/widgets/eraser-toolbar.cpp:145 msgid "Pen Width" msgstr "Penbreedte" -#: ../src/widgets/calligraphy-toolbar.cpp:452 +#: ../src/widgets/calligraphy-toolbar.cpp:448 msgid "The width of the calligraphic pen (relative to the visible canvas area)" msgstr "De breedte van de kalligrafische pen (ten opzichte van het canvas)" #. Thinning -#: ../src/widgets/calligraphy-toolbar.cpp:465 +#: ../src/widgets/calligraphy-toolbar.cpp:461 msgid "(speed blows up stroke)" msgstr "(snelheid verbreedt de lijn)" -#: ../src/widgets/calligraphy-toolbar.cpp:465 +#: ../src/widgets/calligraphy-toolbar.cpp:461 msgid "(slight widening)" msgstr "(lichte verbreding)" -#: ../src/widgets/calligraphy-toolbar.cpp:465 +#: ../src/widgets/calligraphy-toolbar.cpp:461 msgid "(constant width)" msgstr "(constante breedte)" -#: ../src/widgets/calligraphy-toolbar.cpp:465 +#: ../src/widgets/calligraphy-toolbar.cpp:461 msgid "(slight thinning, default)" msgstr "(lichte versmalling, standaard)" -#: ../src/widgets/calligraphy-toolbar.cpp:465 +#: ../src/widgets/calligraphy-toolbar.cpp:461 msgid "(speed deflates stroke)" msgstr "(snelheid versmalt de lijn)" -#: ../src/widgets/calligraphy-toolbar.cpp:468 +#: ../src/widgets/calligraphy-toolbar.cpp:464 msgid "Stroke Thinning" msgstr "Lijnversmalling" -#: ../src/widgets/calligraphy-toolbar.cpp:468 +#: ../src/widgets/calligraphy-toolbar.cpp:464 msgid "Thinning:" msgstr "Versmalling:" -#: ../src/widgets/calligraphy-toolbar.cpp:469 +#: ../src/widgets/calligraphy-toolbar.cpp:465 msgid "How much velocity thins the stroke (> 0 makes fast strokes thinner, < 0 makes them broader, 0 makes width independent of velocity)" msgstr "De invloed van snelheid op de dikte van de lijn (>0 maakte snelle lijnen dunner, <0 maakt ze dikker, 0 maakt de dikte onafhankelijk van de snelheid)" #. Angle -#: ../src/widgets/calligraphy-toolbar.cpp:481 +#: ../src/widgets/calligraphy-toolbar.cpp:477 msgid "(left edge up)" msgstr "(rand links omhoog)" -#: ../src/widgets/calligraphy-toolbar.cpp:481 +#: ../src/widgets/calligraphy-toolbar.cpp:477 msgid "(horizontal)" msgstr "(horizontaal)" -#: ../src/widgets/calligraphy-toolbar.cpp:481 +#: ../src/widgets/calligraphy-toolbar.cpp:477 msgid "(right edge up)" msgstr "(rand rechts omhoog)" -#: ../src/widgets/calligraphy-toolbar.cpp:484 +#: ../src/widgets/calligraphy-toolbar.cpp:480 msgid "Pen Angle" msgstr "Hoek pen" -#: ../src/widgets/calligraphy-toolbar.cpp:484 +#: ../src/widgets/calligraphy-toolbar.cpp:480 #: ../share/extensions/motion.inx.h:3 #: ../share/extensions/restack.inx.h:10 msgid "Angle:" msgstr "Hoek:" -#: ../src/widgets/calligraphy-toolbar.cpp:485 +#: ../src/widgets/calligraphy-toolbar.cpp:481 msgid "The angle of the pen's nib (in degrees; 0 = horizontal; has no effect if fixation = 0)" msgstr "De hoek van de punt van de pen (in graden; 0 = horizontaal. Heeft geen invloed als de fixatie 0 is)." #. Fixation -#: ../src/widgets/calligraphy-toolbar.cpp:499 +#: ../src/widgets/calligraphy-toolbar.cpp:495 msgid "(perpendicular to stroke, \"brush\")" msgstr "(loodrecht op lijn, \"penseel\")" -#: ../src/widgets/calligraphy-toolbar.cpp:499 +#: ../src/widgets/calligraphy-toolbar.cpp:495 msgid "(almost fixed, default)" msgstr "(bijna vast, standaard)" -#: ../src/widgets/calligraphy-toolbar.cpp:499 +#: ../src/widgets/calligraphy-toolbar.cpp:495 msgid "(fixed by Angle, \"pen\")" msgstr "(vaste hoek, \"pen\")" -#: ../src/widgets/calligraphy-toolbar.cpp:502 +#: ../src/widgets/calligraphy-toolbar.cpp:498 msgid "Fixation" msgstr "Fixatie" -#: ../src/widgets/calligraphy-toolbar.cpp:502 +#: ../src/widgets/calligraphy-toolbar.cpp:498 msgid "Fixation:" msgstr "Fixatie:" -#: ../src/widgets/calligraphy-toolbar.cpp:503 +#: ../src/widgets/calligraphy-toolbar.cpp:499 msgid "Angle behavior (0 = nib always perpendicular to stroke direction, 100 = fixed angle)" msgstr "Hoekgedrag van de pen (0 = altijd loodrecht op de tekenrichting, 100 = vaste hoek)" #. Cap Rounding -#: ../src/widgets/calligraphy-toolbar.cpp:515 +#: ../src/widgets/calligraphy-toolbar.cpp:511 msgid "(blunt caps, default)" msgstr "(stomp uiteinde, standaard)" -#: ../src/widgets/calligraphy-toolbar.cpp:515 +#: ../src/widgets/calligraphy-toolbar.cpp:511 msgid "(slightly bulging)" msgstr "(licht uitpuilend)" -#: ../src/widgets/calligraphy-toolbar.cpp:515 +#: ../src/widgets/calligraphy-toolbar.cpp:511 msgid "(approximately round)" msgstr "(ongeveer rond)" -#: ../src/widgets/calligraphy-toolbar.cpp:515 +#: ../src/widgets/calligraphy-toolbar.cpp:511 msgid "(long protruding caps)" msgstr "(lang uitstekend uiteinde)" -#: ../src/widgets/calligraphy-toolbar.cpp:519 +#: ../src/widgets/calligraphy-toolbar.cpp:515 msgid "Cap rounding" msgstr "Ronding van uiteinde" -#: ../src/widgets/calligraphy-toolbar.cpp:519 +#: ../src/widgets/calligraphy-toolbar.cpp:515 msgid "Caps:" msgstr "Uiteinden:" -#: ../src/widgets/calligraphy-toolbar.cpp:520 +#: ../src/widgets/calligraphy-toolbar.cpp:516 msgid "Increase to make caps at the ends of strokes protrude more (0 = no caps, 1 = round caps)" msgstr "Verhoog dit om afronding op het einde van lijnen meer uitgesproken te maken (0 = geen afronding, 1 = rond uiteinde)" #. Tremor -#: ../src/widgets/calligraphy-toolbar.cpp:532 +#: ../src/widgets/calligraphy-toolbar.cpp:528 msgid "(smooth line)" msgstr "(afgevlakte lijn)" -#: ../src/widgets/calligraphy-toolbar.cpp:532 +#: ../src/widgets/calligraphy-toolbar.cpp:528 msgid "(slight tremor)" msgstr "(lichte beving)" -#: ../src/widgets/calligraphy-toolbar.cpp:532 +#: ../src/widgets/calligraphy-toolbar.cpp:528 msgid "(noticeable tremor)" msgstr "(zichtbare beving)" -#: ../src/widgets/calligraphy-toolbar.cpp:532 +#: ../src/widgets/calligraphy-toolbar.cpp:528 msgid "(maximum tremor)" msgstr "(maximale beving)" -#: ../src/widgets/calligraphy-toolbar.cpp:535 +#: ../src/widgets/calligraphy-toolbar.cpp:531 msgid "Stroke Tremor" msgstr "Lijnbeving" -#: ../src/widgets/calligraphy-toolbar.cpp:535 +#: ../src/widgets/calligraphy-toolbar.cpp:531 msgid "Tremor:" msgstr "Beving:" -#: ../src/widgets/calligraphy-toolbar.cpp:536 +#: ../src/widgets/calligraphy-toolbar.cpp:532 msgid "Increase to make strokes rugged and trembling" msgstr "Verhoog dit om lijnen ruw en bevend te maken" #. Wiggle -#: ../src/widgets/calligraphy-toolbar.cpp:550 +#: ../src/widgets/calligraphy-toolbar.cpp:546 msgid "(no wiggle)" msgstr "(zonder wegglijden)" -#: ../src/widgets/calligraphy-toolbar.cpp:550 +#: ../src/widgets/calligraphy-toolbar.cpp:546 msgid "(slight deviation)" msgstr "(lichte uitwijkingen)" -#: ../src/widgets/calligraphy-toolbar.cpp:550 +#: ../src/widgets/calligraphy-toolbar.cpp:546 msgid "(wild waves and curls)" msgstr "(wilde golven en krullen)" -#: ../src/widgets/calligraphy-toolbar.cpp:553 +#: ../src/widgets/calligraphy-toolbar.cpp:549 msgid "Pen Wiggle" msgstr "Wegglijden van de pen" -#: ../src/widgets/calligraphy-toolbar.cpp:553 +#: ../src/widgets/calligraphy-toolbar.cpp:549 msgid "Wiggle:" msgstr "Wegglijden:" -#: ../src/widgets/calligraphy-toolbar.cpp:554 +#: ../src/widgets/calligraphy-toolbar.cpp:550 msgid "Increase to make the pen waver and wiggle" msgstr "Verhoog dit om de pen onvast te maken en te laten wegglijden" #. Mass -#: ../src/widgets/calligraphy-toolbar.cpp:567 +#: ../src/widgets/calligraphy-toolbar.cpp:563 msgid "(no inertia)" msgstr "(geen traagheid)" -#: ../src/widgets/calligraphy-toolbar.cpp:567 +#: ../src/widgets/calligraphy-toolbar.cpp:563 msgid "(slight smoothing, default)" msgstr "(lichte vertraging, standaard)" -#: ../src/widgets/calligraphy-toolbar.cpp:567 +#: ../src/widgets/calligraphy-toolbar.cpp:563 msgid "(noticeable lagging)" msgstr "(merkbare vertraging)" -#: ../src/widgets/calligraphy-toolbar.cpp:567 +#: ../src/widgets/calligraphy-toolbar.cpp:563 msgid "(maximum inertia)" msgstr "(maximale traagheid)" -#: ../src/widgets/calligraphy-toolbar.cpp:570 +#: ../src/widgets/calligraphy-toolbar.cpp:566 msgid "Pen Mass" msgstr "Penmassa" -#: ../src/widgets/calligraphy-toolbar.cpp:570 +#: ../src/widgets/calligraphy-toolbar.cpp:566 msgid "Mass:" msgstr "Massa:" -#: ../src/widgets/calligraphy-toolbar.cpp:571 +#: ../src/widgets/calligraphy-toolbar.cpp:567 msgid "Increase to make the pen drag behind, as if slowed by inertia" msgstr "Verhoog dit om de pen langzamer te laten reageren, alsof vertraagd door inertie" -#: ../src/widgets/calligraphy-toolbar.cpp:586 +#: ../src/widgets/calligraphy-toolbar.cpp:582 msgid "Trace Background" msgstr "Achtergrond volgen" -#: ../src/widgets/calligraphy-toolbar.cpp:587 +#: ../src/widgets/calligraphy-toolbar.cpp:583 msgid "Trace the lightness of the background by the width of the pen (white - minimum width, black - maximum width)" msgstr "De lichtheid van de achtergrond bepaalt de breedte van de pen (wit = minimum breedte, zwart = maximum breedte)" -#: ../src/widgets/calligraphy-toolbar.cpp:600 +#: ../src/widgets/calligraphy-toolbar.cpp:596 msgid "Use the pressure of the input device to alter the width of the pen" msgstr "De op het invoerapparaat uitgeoefende druk gebruiken om de penbreedte te variëren" -#: ../src/widgets/calligraphy-toolbar.cpp:612 +#: ../src/widgets/calligraphy-toolbar.cpp:608 msgid "Tilt" msgstr "Helling" -#: ../src/widgets/calligraphy-toolbar.cpp:613 +#: ../src/widgets/calligraphy-toolbar.cpp:609 msgid "Use the tilt of the input device to alter the angle of the pen's nib" msgstr "De helling waaronder het invoerapparaat wordt gehouden, gebruiken om de penhoek te variëren" -#: ../src/widgets/calligraphy-toolbar.cpp:628 +#: ../src/widgets/calligraphy-toolbar.cpp:624 msgid "Choose a preset" msgstr "Kies een voorkeur" -#: ../src/widgets/calligraphy-toolbar.cpp:643 +#: ../src/widgets/calligraphy-toolbar.cpp:639 msgid "Add/Edit Profile" msgstr "Profiel toevoegen/bewerken" -#: ../src/widgets/calligraphy-toolbar.cpp:644 +#: ../src/widgets/calligraphy-toolbar.cpp:640 msgid "Add or edit calligraphic profile" msgstr "Kalligrafisch profiel toevoegen of bewerken" -#: ../src/widgets/connector-toolbar.cpp:136 +#: ../src/widgets/connector-toolbar.cpp:132 msgid "Set connector type: orthogonal" msgstr "Type verbinding instellen: orthogonaal" -#: ../src/widgets/connector-toolbar.cpp:136 +#: ../src/widgets/connector-toolbar.cpp:132 msgid "Set connector type: polyline" msgstr "Type verbinding instellen: veellijn" -#: ../src/widgets/connector-toolbar.cpp:185 +#: ../src/widgets/connector-toolbar.cpp:181 msgid "Change connector curvature" msgstr "Kromming verbinding aanpassen" -#: ../src/widgets/connector-toolbar.cpp:236 +#: ../src/widgets/connector-toolbar.cpp:232 msgid "Change connector spacing" msgstr "Verbindingsafstanden aanpassen" -#: ../src/widgets/connector-toolbar.cpp:329 +#: ../src/widgets/connector-toolbar.cpp:325 msgid "Avoid" msgstr "Vermijden" -#: ../src/widgets/connector-toolbar.cpp:339 +#: ../src/widgets/connector-toolbar.cpp:335 msgid "Ignore" msgstr "Negeren" -#: ../src/widgets/connector-toolbar.cpp:350 +#: ../src/widgets/connector-toolbar.cpp:346 msgid "Orthogonal" msgstr "Orthogonaal" -#: ../src/widgets/connector-toolbar.cpp:351 +#: ../src/widgets/connector-toolbar.cpp:347 msgid "Make connector orthogonal or polyline" msgstr "Verbinding orthogonaal maken" -#: ../src/widgets/connector-toolbar.cpp:365 +#: ../src/widgets/connector-toolbar.cpp:361 msgid "Connector Curvature" msgstr "Kromming verbinding" -#: ../src/widgets/connector-toolbar.cpp:365 +#: ../src/widgets/connector-toolbar.cpp:361 msgid "Curvature:" msgstr "Kromming:" -#: ../src/widgets/connector-toolbar.cpp:366 +#: ../src/widgets/connector-toolbar.cpp:362 msgid "The amount of connectors curvature" msgstr "Mate van kromming van verbindingen" -#: ../src/widgets/connector-toolbar.cpp:376 +#: ../src/widgets/connector-toolbar.cpp:372 msgid "Connector Spacing" msgstr "Verbindingsafstanden" -#: ../src/widgets/connector-toolbar.cpp:376 +#: ../src/widgets/connector-toolbar.cpp:372 msgid "Spacing:" msgstr "Afstand:" -#: ../src/widgets/connector-toolbar.cpp:377 +#: ../src/widgets/connector-toolbar.cpp:373 msgid "The amount of space left around objects by auto-routing connectors" msgstr "Vrij te laten ruimte rond objecten bij het automatisch routeren van verbindingen" -#: ../src/widgets/connector-toolbar.cpp:388 +#: ../src/widgets/connector-toolbar.cpp:384 msgid "Graph" msgstr "Diagram" -#: ../src/widgets/connector-toolbar.cpp:398 +#: ../src/widgets/connector-toolbar.cpp:394 msgid "Connector Length" msgstr "Verbindingslengte" -#: ../src/widgets/connector-toolbar.cpp:398 +#: ../src/widgets/connector-toolbar.cpp:394 msgid "Length:" msgstr "Lengte:" -#: ../src/widgets/connector-toolbar.cpp:399 +#: ../src/widgets/connector-toolbar.cpp:395 msgid "Ideal length for connectors when layout is applied" msgstr "Ideale lengte van verbindingen bij herschikken" -#: ../src/widgets/connector-toolbar.cpp:411 +#: ../src/widgets/connector-toolbar.cpp:407 msgid "Downwards" msgstr "Omlaag" -#: ../src/widgets/connector-toolbar.cpp:412 +#: ../src/widgets/connector-toolbar.cpp:408 msgid "Make connectors with end-markers (arrows) point downwards" msgstr "Eindmarkeringen (pijlen) van verbindingen wijzen omlaag" -#: ../src/widgets/connector-toolbar.cpp:428 +#: ../src/widgets/connector-toolbar.cpp:424 msgid "Do not allow overlapping shapes" msgstr "Geen overlappende vormen toestaan" @@ -23540,84 +23543,88 @@ msgstr "Streepjespatroon" msgid "Pattern offset" msgstr "Patroonverplaatsing" -#: ../src/widgets/desktop-widget.cpp:462 +#: ../src/widgets/desktop-widget.cpp:465 msgid "Zoom drawing if window size changes" msgstr "In- of uitzoomen wanneer venstergrootte verandert" -#: ../src/widgets/desktop-widget.cpp:673 +#: ../src/widgets/desktop-widget.cpp:669 msgid "Cursor coordinates" msgstr "Cursorcoördinaten" +#: ../src/widgets/desktop-widget.cpp:695 +msgid "Z:" +msgstr "Z:" + #. display the initial welcome message in the statusbar -#: ../src/widgets/desktop-widget.cpp:742 +#: ../src/widgets/desktop-widget.cpp:738 msgid "Welcome to Inkscape! Use shape or freehand tools to create objects; use selector (arrow) to move or transform them." msgstr "Welkom bij Inkscape! Gebruik vorm- of tekengereedschappen om objecten te maken, gebruik aanwijsgereedschap om ze te verplaatsen of te vervormen." -#: ../src/widgets/desktop-widget.cpp:836 +#: ../src/widgets/desktop-widget.cpp:832 msgid "grayscale" msgstr "grijstinten" -#: ../src/widgets/desktop-widget.cpp:837 +#: ../src/widgets/desktop-widget.cpp:833 msgid ", grayscale" msgstr ", grijstinten" -#: ../src/widgets/desktop-widget.cpp:838 +#: ../src/widgets/desktop-widget.cpp:834 msgid "print colors preview" msgstr "" -#: ../src/widgets/desktop-widget.cpp:839 +#: ../src/widgets/desktop-widget.cpp:835 msgid ", print colors preview" msgstr "" -#: ../src/widgets/desktop-widget.cpp:840 +#: ../src/widgets/desktop-widget.cpp:836 msgid "outline" msgstr "contour" -#: ../src/widgets/desktop-widget.cpp:841 +#: ../src/widgets/desktop-widget.cpp:837 msgid "no filters" msgstr "geen filters" -#: ../src/widgets/desktop-widget.cpp:868 +#: ../src/widgets/desktop-widget.cpp:864 #, c-format msgid "%s%s: %d (%s%s) - Inkscape" msgstr "%s%s: %d (%s%s) - Inkscape" +#: ../src/widgets/desktop-widget.cpp:866 #: ../src/widgets/desktop-widget.cpp:870 -#: ../src/widgets/desktop-widget.cpp:874 #, c-format msgid "%s%s: %d (%s) - Inkscape" msgstr "%s%s: %d (%s) - Inkscape" -#: ../src/widgets/desktop-widget.cpp:876 +#: ../src/widgets/desktop-widget.cpp:872 #, c-format msgid "%s%s: %d - Inkscape" msgstr "%s%s: %d - Inkscape" -#: ../src/widgets/desktop-widget.cpp:882 +#: ../src/widgets/desktop-widget.cpp:878 #, c-format msgid "%s%s (%s%s) - Inkscape" msgstr "%s%s (%s%s) - Inkscape" +#: ../src/widgets/desktop-widget.cpp:880 #: ../src/widgets/desktop-widget.cpp:884 -#: ../src/widgets/desktop-widget.cpp:888 #, c-format msgid "%s%s (%s) - Inkscape" msgstr "%s%s (%s) - Inkscape" -#: ../src/widgets/desktop-widget.cpp:890 +#: ../src/widgets/desktop-widget.cpp:886 #, c-format msgid "%s%s - Inkscape" msgstr "%s%s - Inkscape" -#: ../src/widgets/desktop-widget.cpp:1059 +#: ../src/widgets/desktop-widget.cpp:1055 msgid "Color-managed display is enabled in this window" msgstr "Kleurmanagementweergave is actiefvoor dit venster" -#: ../src/widgets/desktop-widget.cpp:1061 +#: ../src/widgets/desktop-widget.cpp:1057 msgid "Color-managed display is disabled in this window" msgstr "Kleurmanagementweergave is inactief voor dit venster" -#: ../src/widgets/desktop-widget.cpp:1116 +#: ../src/widgets/desktop-widget.cpp:1112 #, c-format msgid "" "Save changes to document \"%s\" before closing?\n" @@ -23628,12 +23635,12 @@ msgstr "" "\n" "Als u afsluit zonder opslaan, gaan de wijzigingen verloren." -#: ../src/widgets/desktop-widget.cpp:1126 -#: ../src/widgets/desktop-widget.cpp:1185 +#: ../src/widgets/desktop-widget.cpp:1122 +#: ../src/widgets/desktop-widget.cpp:1181 msgid "Close _without saving" msgstr "Sluiten _zonder opslaan" -#: ../src/widgets/desktop-widget.cpp:1175 +#: ../src/widgets/desktop-widget.cpp:1171 #, c-format msgid "" "The file \"%s\" was saved with a format that may cause data loss!\n" @@ -23644,129 +23651,124 @@ msgstr "" "\n" "Wilt u dit bestand opslaan in het Inkscape SVG-formaat?" -#: ../src/widgets/desktop-widget.cpp:1187 +#: ../src/widgets/desktop-widget.cpp:1183 msgid "_Save as Inkscape SVG" msgstr "Op_slaan als Inkscape SVG" -#: ../src/widgets/desktop-widget.cpp:1397 +#: ../src/widgets/desktop-widget.cpp:1393 msgid "Note:" msgstr "Nota:" -#: ../src/widgets/dropper-toolbar.cpp:118 +#: ../src/widgets/dropper-toolbar.cpp:114 msgid "Pick opacity" msgstr "Kies ondoorzichtigheid" -#: ../src/widgets/dropper-toolbar.cpp:119 +#: ../src/widgets/dropper-toolbar.cpp:115 msgid "Pick both the color and the alpha (transparency) under cursor; otherwise, pick only the visible color premultiplied by alpha" msgstr "Zowel kleur als alfa (transparantie) onder de cursor nemen; zoniet, alleen de zichtbare kleur voorvermenigvuldigd met alfa nemen" -#: ../src/widgets/dropper-toolbar.cpp:122 +#: ../src/widgets/dropper-toolbar.cpp:118 msgid "Pick" msgstr "Kiezen" -#: ../src/widgets/dropper-toolbar.cpp:131 +#: ../src/widgets/dropper-toolbar.cpp:127 msgid "Assign opacity" msgstr "Ondoorzichtigheid wijzigen" -#: ../src/widgets/dropper-toolbar.cpp:132 +#: ../src/widgets/dropper-toolbar.cpp:128 msgid "If alpha was picked, assign it to selection as fill or stroke transparency" msgstr "Als alfa gekozen is, deze op de selectie toepassen als transparantie van vulling of omlijning" -#: ../src/widgets/dropper-toolbar.cpp:135 +#: ../src/widgets/dropper-toolbar.cpp:131 msgid "Assign" msgstr "Toekennen" -#: ../src/widgets/ege-paint-def.cpp:67 -#: ../src/widgets/ege-paint-def.cpp:91 -msgid "none" -msgstr "Niet" - #: ../src/widgets/ege-paint-def.cpp:88 msgid "remove" msgstr "verwijderen" -#: ../src/widgets/erasor-toolbar.cpp:115 +#: ../src/widgets/eraser-toolbar.cpp:111 msgid "Delete objects touched by the eraser" msgstr "Objecten aangeraakt met de gom verwijderen" -#: ../src/widgets/erasor-toolbar.cpp:121 +#: ../src/widgets/eraser-toolbar.cpp:117 msgid "Cut" msgstr "Knippen" -#: ../src/widgets/erasor-toolbar.cpp:122 +#: ../src/widgets/eraser-toolbar.cpp:118 msgid "Cut out from objects" msgstr "Van objecten uitsnijden" -#: ../src/widgets/erasor-toolbar.cpp:150 +#: ../src/widgets/eraser-toolbar.cpp:146 msgid "The width of the eraser pen (relative to the visible canvas area)" msgstr "De breedte van de gom (relatief tov het zichtbare canvasoppervlak)" -#: ../src/widgets/fill-style.cpp:358 +#: ../src/widgets/fill-style.cpp:362 msgid "Change fill rule" msgstr "Vulregel veranderen" -#: ../src/widgets/fill-style.cpp:443 -#: ../src/widgets/fill-style.cpp:522 +#: ../src/widgets/fill-style.cpp:447 +#: ../src/widgets/fill-style.cpp:526 msgid "Set fill color" msgstr "Vulkleur instellen" -#: ../src/widgets/fill-style.cpp:443 -#: ../src/widgets/fill-style.cpp:522 +#: ../src/widgets/fill-style.cpp:447 +#: ../src/widgets/fill-style.cpp:526 msgid "Set stroke color" msgstr "Lijnkleur instellen" -#: ../src/widgets/fill-style.cpp:621 +#: ../src/widgets/fill-style.cpp:625 msgid "Set gradient on fill" msgstr "Kleurverloop instellen voor vulling" -#: ../src/widgets/fill-style.cpp:621 +#: ../src/widgets/fill-style.cpp:625 msgid "Set gradient on stroke" msgstr "Kleurverloop instellen op lijn" -#: ../src/widgets/fill-style.cpp:681 +#: ../src/widgets/fill-style.cpp:685 msgid "Set pattern on fill" msgstr "Patroon instellen voor vulling" -#: ../src/widgets/fill-style.cpp:682 +#: ../src/widgets/fill-style.cpp:686 msgid "Set pattern on stroke" msgstr "Patroon instellen op lijn" -#: ../src/widgets/font-selector.cpp:135 -#: ../src/widgets/text-toolbar.cpp:966 -#: ../src/widgets/text-toolbar.cpp:1284 +#: ../src/widgets/font-selector.cpp:134 +#: ../src/widgets/text-toolbar.cpp:962 +#: ../src/widgets/text-toolbar.cpp:1275 msgid "Font size" msgstr "Lettergrootte" #. Family frame -#: ../src/widgets/font-selector.cpp:149 +#: ../src/widgets/font-selector.cpp:148 msgid "Font family" msgstr "Lettertypefamilie" #. Style frame -#: ../src/widgets/font-selector.cpp:192 +#: ../src/widgets/font-selector.cpp:191 msgctxt "Font selector" msgid "Style" msgstr "Stijl" -#: ../src/widgets/font-selector.cpp:243 +#: ../src/widgets/font-selector.cpp:242 #: ../share/extensions/dots.inx.h:3 msgid "Font size:" msgstr "Lettergrootte:" -#: ../src/widgets/gradient-selector.cpp:207 +#: ../src/widgets/gradient-selector.cpp:208 msgid "Create a duplicate gradient" msgstr "Duplicaat van kleurverloop maken" -#: ../src/widgets/gradient-selector.cpp:217 +#: ../src/widgets/gradient-selector.cpp:218 msgid "Edit gradient" msgstr "Kleurverloop bewerken" -#: ../src/widgets/gradient-selector.cpp:288 -#: ../src/widgets/paint-selector.cpp:241 +#: ../src/widgets/gradient-selector.cpp:289 +#: ../src/widgets/paint-selector.cpp:244 msgid "Swatch" msgstr "Palet" -#: ../src/widgets/gradient-selector.cpp:338 +#: ../src/widgets/gradient-selector.cpp:339 msgid "Rename gradient" msgstr "Kleurverloop hernoemen" @@ -23927,7 +23929,8 @@ msgid "Link gradients to change all related gradients" msgstr "Kleurverlopen linken om alle gerelateerde kleurverlopen te veranderen" #: ../src/widgets/gradient-vector.cpp:332 -#: ../src/widgets/paint-selector.cpp:919 +#: ../src/widgets/paint-selector.cpp:922 +#: ../src/widgets/stroke-marker-selector.cpp:154 msgid "No document selected" msgstr "Geen document geselecteerd" @@ -23965,81 +23968,90 @@ msgstr "Kleurverloopeditor" msgid "Change gradient stop color" msgstr "Overgangskleur aanpassen" -#: ../src/widgets/lpe-toolbar.cpp:249 +#: ../src/widgets/lpe-toolbar.cpp:252 msgid "Closed" msgstr "Gesloten" -#: ../src/widgets/lpe-toolbar.cpp:251 +#: ../src/widgets/lpe-toolbar.cpp:254 msgid "Open start" msgstr "Open begin" -#: ../src/widgets/lpe-toolbar.cpp:253 +#: ../src/widgets/lpe-toolbar.cpp:256 msgid "Open end" msgstr "Open einde" -#: ../src/widgets/lpe-toolbar.cpp:255 +#: ../src/widgets/lpe-toolbar.cpp:258 msgid "Open both" msgstr "Beide open" -#: ../src/widgets/lpe-toolbar.cpp:314 +#: ../src/widgets/lpe-toolbar.cpp:317 msgid "All inactive" msgstr "Allemaal inactief" -#: ../src/widgets/lpe-toolbar.cpp:315 +#: ../src/widgets/lpe-toolbar.cpp:318 msgid "No geometric tool is active" msgstr "Geen enkel geometrisch gereedschap is actief" -#: ../src/widgets/lpe-toolbar.cpp:348 +#: ../src/widgets/lpe-toolbar.cpp:351 msgid "Show limiting bounding box" msgstr "Het beperkend omvattend vak tonen" -#: ../src/widgets/lpe-toolbar.cpp:349 +#: ../src/widgets/lpe-toolbar.cpp:352 msgid "Show bounding box (used to cut infinite lines)" msgstr "Het omvattend vak tonen (om oneindige lijnen af te snijden)" -#: ../src/widgets/lpe-toolbar.cpp:360 +#: ../src/widgets/lpe-toolbar.cpp:363 msgid "Get limiting bounding box from selection" msgstr "Het beperkend omvattend vak verkrijgen van selectie" -#: ../src/widgets/lpe-toolbar.cpp:361 +#: ../src/widgets/lpe-toolbar.cpp:364 msgid "Set limiting bounding box (used to cut infinite lines) to the bounding box of current selection" msgstr "Het beperkend omvattend vak (om oneindige lijnen af te snijden) instellen op het omvattend vak van de huidige selectie" -#: ../src/widgets/lpe-toolbar.cpp:373 +#: ../src/widgets/lpe-toolbar.cpp:376 msgid "Choose a line segment type" msgstr "Segmenttype veranderen" -#: ../src/widgets/lpe-toolbar.cpp:389 +#: ../src/widgets/lpe-toolbar.cpp:392 msgid "Display measuring info" msgstr "Meetinfo weergeven" -#: ../src/widgets/lpe-toolbar.cpp:390 +#: ../src/widgets/lpe-toolbar.cpp:393 msgid "Display measuring info for selected items" msgstr "Meetinfo weergeven voor geselecteerde items" -#: ../src/widgets/lpe-toolbar.cpp:410 +#. Add the units menu. +#: ../src/widgets/lpe-toolbar.cpp:403 +#: ../src/widgets/node-toolbar.cpp:625 +#: ../src/widgets/paintbucket-toolbar.cpp:186 +#: ../src/widgets/rect-toolbar.cpp:378 +#: ../src/widgets/select-toolbar.cpp:542 +msgid "Units" +msgstr "Eenheden" + +#: ../src/widgets/lpe-toolbar.cpp:413 msgid "Open LPE dialog" msgstr "Padeffectenvenster openen" -#: ../src/widgets/lpe-toolbar.cpp:411 +#: ../src/widgets/lpe-toolbar.cpp:414 msgid "Open LPE dialog (to adapt parameters numerically)" msgstr "Padeffectenvenster openen (om parameters numeriek aan te passen)" -#: ../src/widgets/measure-toolbar.cpp:102 -#: ../src/widgets/text-toolbar.cpp:1287 +#: ../src/widgets/measure-toolbar.cpp:103 +#: ../src/widgets/text-toolbar.cpp:1278 msgid "Font Size" msgstr "Lettertypegrootte" -#: ../src/widgets/measure-toolbar.cpp:102 +#: ../src/widgets/measure-toolbar.cpp:103 msgid "Font Size:" msgstr "Lettertypegrootte:" -#: ../src/widgets/measure-toolbar.cpp:103 +#: ../src/widgets/measure-toolbar.cpp:104 msgid "The font size to be used in the measurement labels" msgstr "Lettertypegrootte voor de meetlabels" -#: ../src/widgets/measure-toolbar.cpp:115 -#: ../src/widgets/measure-toolbar.cpp:123 +#: ../src/widgets/measure-toolbar.cpp:116 +#: ../src/widgets/measure-toolbar.cpp:124 msgid "The units to be used for the measurements" msgstr "Lettertypegrootte voor de meetlabels" @@ -24060,6 +24072,7 @@ msgid "Create conical gradient" msgstr "Conisch gradiënt maken" #: ../src/widgets/mesh-toolbar.cpp:263 +#: ../share/extensions/guides_creator.inx.h:5 msgid "Rows" msgstr "Rijen" @@ -24073,6 +24086,7 @@ msgid "Number of rows in new mesh" msgstr "Aantal rijen in nieuw mesh" #: ../src/widgets/mesh-toolbar.cpp:279 +#: ../share/extensions/guides_creator.inx.h:4 msgid "Columns" msgstr "Kolommen" @@ -24101,7 +24115,7 @@ msgid "Edit stroke mesh" msgstr "Lijn mesh bewerken" #: ../src/widgets/mesh-toolbar.cpp:317 -#: ../src/widgets/node-toolbar.cpp:530 +#: ../src/widgets/node-toolbar.cpp:533 msgid "Show Handles" msgstr "Handvatten tonen" @@ -24109,196 +24123,196 @@ msgstr "Handvatten tonen" msgid "Show side and tensor handles" msgstr "Zijde- en tensorhandvatten tonen" -#: ../src/widgets/node-toolbar.cpp:350 +#: ../src/widgets/node-toolbar.cpp:353 msgid "Insert node" msgstr "Knooppunt invoegen" -#: ../src/widgets/node-toolbar.cpp:351 +#: ../src/widgets/node-toolbar.cpp:354 msgid "Insert new nodes into selected segments" msgstr "Nieuwe knooppunten invoegen in geselecteerde segmenten" -#: ../src/widgets/node-toolbar.cpp:354 +#: ../src/widgets/node-toolbar.cpp:357 msgid "Insert" msgstr "Invoegen" -#: ../src/widgets/node-toolbar.cpp:365 +#: ../src/widgets/node-toolbar.cpp:368 msgid "Insert node at min X" msgstr "" -#: ../src/widgets/node-toolbar.cpp:366 +#: ../src/widgets/node-toolbar.cpp:369 msgid "Insert new nodes at min X into selected segments" msgstr "" -#: ../src/widgets/node-toolbar.cpp:369 +#: ../src/widgets/node-toolbar.cpp:372 msgid "Insert min X" msgstr "" -#: ../src/widgets/node-toolbar.cpp:375 +#: ../src/widgets/node-toolbar.cpp:378 msgid "Insert node at max X" msgstr "" -#: ../src/widgets/node-toolbar.cpp:376 +#: ../src/widgets/node-toolbar.cpp:379 msgid "Insert new nodes at max X into selected segments" msgstr "" -#: ../src/widgets/node-toolbar.cpp:379 +#: ../src/widgets/node-toolbar.cpp:382 msgid "Insert max X" msgstr "" -#: ../src/widgets/node-toolbar.cpp:385 +#: ../src/widgets/node-toolbar.cpp:388 msgid "Insert node at min Y" msgstr "" -#: ../src/widgets/node-toolbar.cpp:386 +#: ../src/widgets/node-toolbar.cpp:389 msgid "Insert new nodes at min Y into selected segments" msgstr "" -#: ../src/widgets/node-toolbar.cpp:389 +#: ../src/widgets/node-toolbar.cpp:392 msgid "Insert min Y" msgstr "" -#: ../src/widgets/node-toolbar.cpp:395 +#: ../src/widgets/node-toolbar.cpp:398 msgid "Insert node at max Y" msgstr "" -#: ../src/widgets/node-toolbar.cpp:396 +#: ../src/widgets/node-toolbar.cpp:399 msgid "Insert new nodes at max Y into selected segments" msgstr "" -#: ../src/widgets/node-toolbar.cpp:399 +#: ../src/widgets/node-toolbar.cpp:402 msgid "Insert max Y" msgstr "" -#: ../src/widgets/node-toolbar.cpp:407 +#: ../src/widgets/node-toolbar.cpp:410 msgid "Delete selected nodes" msgstr "Geselecteerde knooppunten verwijderen" -#: ../src/widgets/node-toolbar.cpp:418 +#: ../src/widgets/node-toolbar.cpp:421 msgid "Join selected nodes" msgstr "Geselecteerde knooppunten verbinden" -#: ../src/widgets/node-toolbar.cpp:421 +#: ../src/widgets/node-toolbar.cpp:424 msgid "Join" msgstr "Verbinden" -#: ../src/widgets/node-toolbar.cpp:429 +#: ../src/widgets/node-toolbar.cpp:432 msgid "Break path at selected nodes" msgstr "Het pad op geselecteerde knooppunten verbreken" -#: ../src/widgets/node-toolbar.cpp:439 +#: ../src/widgets/node-toolbar.cpp:442 msgid "Join with segment" msgstr "Verbinden met segment" -#: ../src/widgets/node-toolbar.cpp:440 +#: ../src/widgets/node-toolbar.cpp:443 msgid "Join selected endnodes with a new segment" msgstr "Geselecteerde eindpunten verbinden met een nieuw segment" -#: ../src/widgets/node-toolbar.cpp:449 +#: ../src/widgets/node-toolbar.cpp:452 msgid "Delete segment" msgstr "Segment verwijderen" -#: ../src/widgets/node-toolbar.cpp:450 +#: ../src/widgets/node-toolbar.cpp:453 msgid "Delete segment between two non-endpoint nodes" msgstr "Het pad tussen twee niet-eindpunten verwijderen" -#: ../src/widgets/node-toolbar.cpp:459 +#: ../src/widgets/node-toolbar.cpp:462 msgid "Node Cusp" msgstr "Hoekig knooppunt" -#: ../src/widgets/node-toolbar.cpp:460 +#: ../src/widgets/node-toolbar.cpp:463 msgid "Make selected nodes corner" msgstr "Geselecteerde knooppunten hoekig maken" -#: ../src/widgets/node-toolbar.cpp:469 +#: ../src/widgets/node-toolbar.cpp:472 msgid "Node Smooth" msgstr "Glad knooppunt" -#: ../src/widgets/node-toolbar.cpp:470 +#: ../src/widgets/node-toolbar.cpp:473 msgid "Make selected nodes smooth" msgstr "Geselecteerde knooppunten glad maken" -#: ../src/widgets/node-toolbar.cpp:479 +#: ../src/widgets/node-toolbar.cpp:482 msgid "Node Symmetric" msgstr "Symmetrisch knooppunt" -#: ../src/widgets/node-toolbar.cpp:480 +#: ../src/widgets/node-toolbar.cpp:483 msgid "Make selected nodes symmetric" msgstr "Geselecteerde knooppunten symmetrisch maken" -#: ../src/widgets/node-toolbar.cpp:489 +#: ../src/widgets/node-toolbar.cpp:492 msgid "Node Auto" msgstr "Automatisch knooppunt" -#: ../src/widgets/node-toolbar.cpp:490 +#: ../src/widgets/node-toolbar.cpp:493 msgid "Make selected nodes auto-smooth" msgstr "Geselecteerde knooppunten automatisch glad maken" -#: ../src/widgets/node-toolbar.cpp:499 +#: ../src/widgets/node-toolbar.cpp:502 msgid "Node Line" msgstr "Recht knooppunt" -#: ../src/widgets/node-toolbar.cpp:500 +#: ../src/widgets/node-toolbar.cpp:503 msgid "Make selected segments lines" msgstr "Van geselecteerde segmenten rechte lijnen maken" -#: ../src/widgets/node-toolbar.cpp:509 +#: ../src/widgets/node-toolbar.cpp:512 msgid "Node Curve" msgstr "Krom knooppunt" -#: ../src/widgets/node-toolbar.cpp:510 +#: ../src/widgets/node-toolbar.cpp:513 msgid "Make selected segments curves" msgstr "Van geselecteerde segmenten krommes maken" -#: ../src/widgets/node-toolbar.cpp:519 +#: ../src/widgets/node-toolbar.cpp:522 msgid "Show Transform Handles" msgstr "Transformatiehandvatten tonen" -#: ../src/widgets/node-toolbar.cpp:520 +#: ../src/widgets/node-toolbar.cpp:523 msgid "Show transformation handles for selected nodes" msgstr "Transformatiehandvatten tonen voor geselecteerde knooppunten" -#: ../src/widgets/node-toolbar.cpp:531 +#: ../src/widgets/node-toolbar.cpp:534 msgid "Show Bezier handles of selected nodes" msgstr "Bezierhandvatten van geselecteerde knooppunten tonen" -#: ../src/widgets/node-toolbar.cpp:541 +#: ../src/widgets/node-toolbar.cpp:544 msgid "Show Outline" msgstr "Contour tonen" -#: ../src/widgets/node-toolbar.cpp:542 +#: ../src/widgets/node-toolbar.cpp:545 msgid "Show path outline (without path effects)" msgstr "Padindicator tonen (zonder padeffecten)" -#: ../src/widgets/node-toolbar.cpp:564 +#: ../src/widgets/node-toolbar.cpp:567 msgid "Edit clipping paths" msgstr "Afsnijpaden bewerken" -#: ../src/widgets/node-toolbar.cpp:565 +#: ../src/widgets/node-toolbar.cpp:568 msgid "Show clipping path(s) of selected object(s)" msgstr "Afsnijdingspad(en) van geselecteerde object(en) tonen" -#: ../src/widgets/node-toolbar.cpp:575 +#: ../src/widgets/node-toolbar.cpp:578 msgid "Edit masks" msgstr "Maskers bewerken" -#: ../src/widgets/node-toolbar.cpp:576 +#: ../src/widgets/node-toolbar.cpp:579 msgid "Show mask(s) of selected object(s)" msgstr "Masker(s) van geselecteerde object(en) tonen" -#: ../src/widgets/node-toolbar.cpp:590 +#: ../src/widgets/node-toolbar.cpp:593 msgid "X coordinate:" msgstr "X-coördinaat:" # Er wordt altijd maar één coördinaat getoond, dus enkelvoud is beter. -#: ../src/widgets/node-toolbar.cpp:590 +#: ../src/widgets/node-toolbar.cpp:593 msgid "X coordinate of selected node(s)" msgstr "X-coördinaat van geselecteerd knooppunt" -#: ../src/widgets/node-toolbar.cpp:608 +#: ../src/widgets/node-toolbar.cpp:611 msgid "Y coordinate:" msgstr "Y-coördinaat:" -#: ../src/widgets/node-toolbar.cpp:608 +#: ../src/widgets/node-toolbar.cpp:611 msgid "Y coordinate of selected node(s)" msgstr "Y-coördinaat van geselecteerd knooppunt" @@ -24318,570 +24332,608 @@ msgstr "Vullingsdrempel" msgid "The maximum allowed difference between the clicked pixel and the neighboring pixels to be counted in the fill" msgstr "Het maximaal toegestane verschil tussen de aangeklikte pixel en de naastliggende pixels geteld in de vulling" -#: ../src/widgets/paintbucket-toolbar.cpp:193 +#: ../src/widgets/paintbucket-toolbar.cpp:194 msgid "Grow/shrink by" msgstr "Verdikken/verdunnen met" -#: ../src/widgets/paintbucket-toolbar.cpp:193 +#: ../src/widgets/paintbucket-toolbar.cpp:194 msgid "Grow/shrink by:" msgstr "Verdikken/verdunnen met:" -#: ../src/widgets/paintbucket-toolbar.cpp:194 +#: ../src/widgets/paintbucket-toolbar.cpp:195 msgid "The amount to grow (positive) or shrink (negative) the created fill path" msgstr "Mate waarmee het vullingspad verdikt (positief) of verdunt (negatief)" -#: ../src/widgets/paintbucket-toolbar.cpp:219 +#: ../src/widgets/paintbucket-toolbar.cpp:220 msgid "Close gaps" msgstr "Gaten opvullen" -#: ../src/widgets/paintbucket-toolbar.cpp:220 +#: ../src/widgets/paintbucket-toolbar.cpp:221 msgid "Close gaps:" msgstr "Gaten opvullen:" -#: ../src/widgets/paintbucket-toolbar.cpp:231 -#: ../src/widgets/pencil-toolbar.cpp:326 -#: ../src/widgets/spiral-toolbar.cpp:304 -#: ../src/widgets/star-toolbar.cpp:576 +#: ../src/widgets/paintbucket-toolbar.cpp:232 +#: ../src/widgets/pencil-toolbar.cpp:321 +#: ../src/widgets/spiral-toolbar.cpp:300 +#: ../src/widgets/star-toolbar.cpp:572 msgid "Defaults" msgstr "Standaardwaarden" -#: ../src/widgets/paintbucket-toolbar.cpp:232 +#: ../src/widgets/paintbucket-toolbar.cpp:233 msgid "Reset paint bucket parameters to defaults (use Inkscape Preferences > Tools to change defaults)" msgstr "Herinitialiseer afgebakende gebieden vullen naar standaardwaarden (gebruik Inkscapevoorkeuren > Gereedschappen om de standaardwaarden te veranderen)" -#: ../src/widgets/paint-selector.cpp:231 +#: ../src/widgets/paint-selector.cpp:234 msgid "No paint" msgstr "Geen opvulling" -#: ../src/widgets/paint-selector.cpp:233 +#: ../src/widgets/paint-selector.cpp:236 msgid "Flat color" msgstr "Egale kleur" -#: ../src/widgets/paint-selector.cpp:235 +#: ../src/widgets/paint-selector.cpp:238 msgid "Linear gradient" msgstr "Lineair kleurverloop" -#: ../src/widgets/paint-selector.cpp:237 +#: ../src/widgets/paint-selector.cpp:240 msgid "Radial gradient" msgstr "Radiaal kleurverloop" -#: ../src/widgets/paint-selector.cpp:243 +#: ../src/widgets/paint-selector.cpp:246 msgid "Unset paint (make it undefined so it can be inherited)" msgstr "Vulling uitzetten (ongedefinieerd maken zodat het overgenomen kan worden)" #. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/painting.html#FillRuleProperty -#: ../src/widgets/paint-selector.cpp:260 +#: ../src/widgets/paint-selector.cpp:263 msgid "Any path self-intersections or subpaths create holes in the fill (fill-rule: evenodd)" msgstr "Wanneer een pad zichzelf snijdt, ontstaat een gat (vulregel: evenoneven)" #. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/painting.html#FillRuleProperty -#: ../src/widgets/paint-selector.cpp:271 +#: ../src/widgets/paint-selector.cpp:274 msgid "Fill is solid unless a subpath is counterdirectional (fill-rule: nonzero)" msgstr "Vulling is zonder gaten totdat een subpad tegen de richting ingaat (vulregel: nietnul)" -#: ../src/widgets/paint-selector.cpp:587 +#: ../src/widgets/paint-selector.cpp:590 msgid "No objects" msgstr "Geen objecten" -#: ../src/widgets/paint-selector.cpp:598 +#: ../src/widgets/paint-selector.cpp:601 msgid "Multiple styles" msgstr "Meerdere stijlen" -#: ../src/widgets/paint-selector.cpp:609 +#: ../src/widgets/paint-selector.cpp:612 msgid "Paint is undefined" msgstr "Vulling is niet gedefinieerd" -#: ../src/widgets/paint-selector.cpp:620 +#: ../src/widgets/paint-selector.cpp:623 msgid "No paint" msgstr "Geen opvulling" -#: ../src/widgets/paint-selector.cpp:691 +#: ../src/widgets/paint-selector.cpp:694 msgid "Flat color" msgstr "Egale kleur" #. sp_gradient_selector_set_mode(SP_GRADIENT_SELECTOR(gsel), SP_GRADIENT_SELECTOR_MODE_LINEAR); -#: ../src/widgets/paint-selector.cpp:755 +#: ../src/widgets/paint-selector.cpp:758 msgid "Linear gradient" msgstr "Lineair kleurverloop" -#: ../src/widgets/paint-selector.cpp:758 +#: ../src/widgets/paint-selector.cpp:761 msgid "Radial gradient" msgstr "Radiaal kleurverloop" -#: ../src/widgets/paint-selector.cpp:1052 +#: ../src/widgets/paint-selector.cpp:1055 msgid "Use the Node tool to adjust position, scale, and rotation of the pattern on canvas. Use Object > Pattern > Objects to Pattern to create a new pattern from selection." msgstr "Gebruik het knooppunten-gereedschap om positie, schaal en rotatie van het patroon aan te passen. Gebruik Object > Patroon > Objecten naar patroon om een nieuw patroon te maken uit de selectie." -#: ../src/widgets/paint-selector.cpp:1065 +#: ../src/widgets/paint-selector.cpp:1068 msgid "Pattern fill" msgstr "Patroonvulling" -#: ../src/widgets/paint-selector.cpp:1161 +#: ../src/widgets/paint-selector.cpp:1162 msgid "Swatch fill" msgstr "Vulling uit palet" -#: ../src/widgets/pencil-toolbar.cpp:130 +#: ../src/widgets/pencil-toolbar.cpp:125 msgid "Bezier" msgstr "Bezier" -#: ../src/widgets/pencil-toolbar.cpp:131 +#: ../src/widgets/pencil-toolbar.cpp:126 msgid "Create regular Bezier path" msgstr "Regulier Bezierpad aanmaken" -#: ../src/widgets/pencil-toolbar.cpp:138 +#: ../src/widgets/pencil-toolbar.cpp:133 msgid "Create Spiro path" msgstr "Spiraal maken" -#: ../src/widgets/pencil-toolbar.cpp:145 +#: ../src/widgets/pencil-toolbar.cpp:140 msgid "Zigzag" msgstr "Zigzag" -#: ../src/widgets/pencil-toolbar.cpp:146 +#: ../src/widgets/pencil-toolbar.cpp:141 msgid "Create a sequence of straight line segments" msgstr "Een sequentie van rechte lijnstukken maken" -#: ../src/widgets/pencil-toolbar.cpp:152 +#: ../src/widgets/pencil-toolbar.cpp:147 msgid "Paraxial" msgstr "Loodrecht" -#: ../src/widgets/pencil-toolbar.cpp:153 +#: ../src/widgets/pencil-toolbar.cpp:148 msgid "Create a sequence of paraxial line segments" msgstr "Een sequentie van onderling loodrechte lijnstukken maken" -#: ../src/widgets/pencil-toolbar.cpp:161 +#: ../src/widgets/pencil-toolbar.cpp:156 msgid "Mode of new lines drawn by this tool" msgstr "Modus van nieuwe lijnen getekend door dit gereedschap" -#: ../src/widgets/pencil-toolbar.cpp:190 +#: ../src/widgets/pencil-toolbar.cpp:185 msgid "Triangle in" msgstr "Aflopende driehoek" -#: ../src/widgets/pencil-toolbar.cpp:191 +#: ../src/widgets/pencil-toolbar.cpp:186 msgid "Triangle out" msgstr "Oplopende driehoek" -#: ../src/widgets/pencil-toolbar.cpp:193 +#: ../src/widgets/pencil-toolbar.cpp:188 msgid "From clipboard" msgstr "Van klembord" -#: ../src/widgets/pencil-toolbar.cpp:218 -#: ../src/widgets/pencil-toolbar.cpp:219 +#: ../src/widgets/pencil-toolbar.cpp:213 +#: ../src/widgets/pencil-toolbar.cpp:214 msgid "Shape:" msgstr "Vorm:" -#: ../src/widgets/pencil-toolbar.cpp:218 +#: ../src/widgets/pencil-toolbar.cpp:213 msgid "Shape of new paths drawn by this tool" msgstr "Vorm van nieuwe paden getekend met dit gereedschap" -#: ../src/widgets/pencil-toolbar.cpp:303 +#: ../src/widgets/pencil-toolbar.cpp:298 msgid "(many nodes, rough)" msgstr "(veel knooppunten, ruw)" -#: ../src/widgets/pencil-toolbar.cpp:303 +#: ../src/widgets/pencil-toolbar.cpp:298 msgid "(few nodes, smooth)" msgstr "(weinig knooppunten, glad)" -#: ../src/widgets/pencil-toolbar.cpp:306 +#: ../src/widgets/pencil-toolbar.cpp:301 msgid "Smoothing:" msgstr "Afvlakking:" -#: ../src/widgets/pencil-toolbar.cpp:306 +#: ../src/widgets/pencil-toolbar.cpp:301 msgid "Smoothing: " msgstr "Afvlakking: " -#: ../src/widgets/pencil-toolbar.cpp:307 +#: ../src/widgets/pencil-toolbar.cpp:302 msgid "How much smoothing (simplifying) is applied to the line" msgstr "Hoeveel afvlakking (vereenvoudiging) er toegepast wordt op de lijn" -#: ../src/widgets/pencil-toolbar.cpp:327 +#: ../src/widgets/pencil-toolbar.cpp:322 msgid "Reset pencil parameters to defaults (use Inkscape Preferences > Tools to change defaults)" msgstr "Instellingen potlood terugzetten naar de standaardwaarden (gebruik Inkscapevoorkeuren > Gereedschappen om de standaardwaarden te veranderen)" -#: ../src/widgets/rect-toolbar.cpp:128 +#: ../src/widgets/rect-toolbar.cpp:130 msgid "Change rectangle" msgstr "Rechthoek aanpassen" -#: ../src/widgets/rect-toolbar.cpp:315 +#: ../src/widgets/rect-toolbar.cpp:317 msgid "W:" msgstr "B:" -#: ../src/widgets/rect-toolbar.cpp:315 +#: ../src/widgets/rect-toolbar.cpp:317 msgid "Width of rectangle" msgstr "Breedte van de rechthoek" -#: ../src/widgets/rect-toolbar.cpp:332 +#: ../src/widgets/rect-toolbar.cpp:334 msgid "H:" msgstr "H:" -#: ../src/widgets/rect-toolbar.cpp:332 +#: ../src/widgets/rect-toolbar.cpp:334 msgid "Height of rectangle" msgstr "Hoogte van de rechthoek" -#: ../src/widgets/rect-toolbar.cpp:346 -#: ../src/widgets/rect-toolbar.cpp:361 +#: ../src/widgets/rect-toolbar.cpp:348 +#: ../src/widgets/rect-toolbar.cpp:363 msgid "not rounded" msgstr "zonder afronding" -#: ../src/widgets/rect-toolbar.cpp:349 +#: ../src/widgets/rect-toolbar.cpp:351 msgid "Horizontal radius" msgstr "Horizontale straal" -#: ../src/widgets/rect-toolbar.cpp:349 +#: ../src/widgets/rect-toolbar.cpp:351 msgid "Rx:" msgstr "Rx:" -#: ../src/widgets/rect-toolbar.cpp:349 +#: ../src/widgets/rect-toolbar.cpp:351 msgid "Horizontal radius of rounded corners" msgstr "Horizontale straal van afgeronde hoeken" -#: ../src/widgets/rect-toolbar.cpp:364 +#: ../src/widgets/rect-toolbar.cpp:366 msgid "Vertical radius" msgstr "Verticale straal" -#: ../src/widgets/rect-toolbar.cpp:364 +#: ../src/widgets/rect-toolbar.cpp:366 msgid "Ry:" msgstr "Ry:" -#: ../src/widgets/rect-toolbar.cpp:364 +#: ../src/widgets/rect-toolbar.cpp:366 msgid "Vertical radius of rounded corners" msgstr "Verticale straal van afgeronde hoeken" -#: ../src/widgets/rect-toolbar.cpp:383 +#: ../src/widgets/rect-toolbar.cpp:385 msgid "Not rounded" msgstr "Niet afgerond" -#: ../src/widgets/rect-toolbar.cpp:384 +#: ../src/widgets/rect-toolbar.cpp:386 msgid "Make corners sharp" msgstr "De hoeken weer scherp maken" -#: ../src/widgets/select-toolbar.cpp:263 +#: ../src/widgets/ruler.cpp:192 +#, fuzzy +msgid "The orientation of the ruler" +msgstr "Oriëntatie van het paneelitem" + +#: ../src/widgets/ruler.cpp:202 +#, fuzzy +msgid "Unit of the ruler" +msgstr "Breedte van het patroon" + +#: ../src/widgets/ruler.cpp:210 +#, fuzzy +msgid "Lower limit of ruler" +msgstr "Verlaag naar de vorige laag" + +#: ../src/widgets/ruler.cpp:219 +#, fuzzy +msgid "Upper" +msgstr "Verschijnen" + +#: ../src/widgets/ruler.cpp:220 +msgid "Upper limit of ruler" +msgstr "" + +#: ../src/widgets/ruler.cpp:230 +#, fuzzy +msgid "Position of mark on the ruler" +msgstr "Locaties van de pictogramthema's" + +#: ../src/widgets/ruler.cpp:239 +#, fuzzy +msgid "Max Size" +msgstr "Gemaximaliseerd" + +#: ../src/widgets/ruler.cpp:240 +msgid "Maximum size of the ruler" +msgstr "" + +#: ../src/widgets/select-toolbar.cpp:267 msgid "Transform by toolbar" msgstr "Transformeren met behulp van de gereedschappenbalk" -#: ../src/widgets/select-toolbar.cpp:341 +#: ../src/widgets/select-toolbar.cpp:345 msgid "Now stroke width is scaled when objects are scaled." msgstr "De lijndikte wordt nu meegeschaald wanneer objecten geschaald worden." -#: ../src/widgets/select-toolbar.cpp:343 +#: ../src/widgets/select-toolbar.cpp:347 msgid "Now stroke width is not scaled when objects are scaled." msgstr "De lijndikte wordt nu niet geschaald wanneer objecten geschaald worden." -#: ../src/widgets/select-toolbar.cpp:354 +#: ../src/widgets/select-toolbar.cpp:358 msgid "Now rounded rectangle corners are scaled when rectangles are scaled." msgstr "Afgeronde hoeken worden nu meegeschaald wanneer rechthoeken worden geschaald." -#: ../src/widgets/select-toolbar.cpp:356 +#: ../src/widgets/select-toolbar.cpp:360 msgid "Now rounded rectangle corners are not scaled when rectangles are scaled." msgstr "Afgeronde hoeken worden nu niet geschaald wanneer rechthoeken worden geschaald." -#: ../src/widgets/select-toolbar.cpp:367 +#: ../src/widgets/select-toolbar.cpp:371 msgid "Now gradients are transformed along with their objects when those are transformed (moved, scaled, rotated, or skewed)." msgstr "Kleurverlopen worden nu meeveranderd wanneer hun objecten worden veranderd (verplaatst, geschaald, gedraaid, of scheefgetrokken)." -#: ../src/widgets/select-toolbar.cpp:369 +#: ../src/widgets/select-toolbar.cpp:373 msgid "Now gradients remain fixed when objects are transformed (moved, scaled, rotated, or skewed)." msgstr "Kleurverlopen blijven nu gefixeerd wanneer hun objecten worden veranderd (verplaatst, geschaald, gedraaid, of scheefgetrokken)." -#: ../src/widgets/select-toolbar.cpp:380 +#: ../src/widgets/select-toolbar.cpp:384 msgid "Now patterns are transformed along with their objects when those are transformed (moved, scaled, rotated, or skewed)." msgstr "Patronen worden nu meeveranderd wanneer hun objecten worden veranderd (verplaatst, geschaald, gedraaid, of scheefgetrokken)." -#: ../src/widgets/select-toolbar.cpp:382 +#: ../src/widgets/select-toolbar.cpp:386 msgid "Now patterns remain fixed when objects are transformed (moved, scaled, rotated, or skewed)." msgstr "Patronen blijven nu gefixeerd wanneer hun objecten worden veranderd (verplaatst, geschaald, gedraaid, of scheefgetrokken)." #. four spinbuttons -#: ../src/widgets/select-toolbar.cpp:500 +#: ../src/widgets/select-toolbar.cpp:504 msgctxt "Select toolbar" msgid "X position" msgstr "X-Positie" -#: ../src/widgets/select-toolbar.cpp:500 +#: ../src/widgets/select-toolbar.cpp:504 msgctxt "Select toolbar" msgid "X:" msgstr "X:" -#: ../src/widgets/select-toolbar.cpp:502 +#: ../src/widgets/select-toolbar.cpp:506 msgid "Horizontal coordinate of selection" msgstr "Horizontale coördinaat van de selectie" -#: ../src/widgets/select-toolbar.cpp:506 +#: ../src/widgets/select-toolbar.cpp:510 msgctxt "Select toolbar" msgid "Y position" msgstr "Y-Positie" -#: ../src/widgets/select-toolbar.cpp:506 +#: ../src/widgets/select-toolbar.cpp:510 msgctxt "Select toolbar" msgid "Y:" msgstr "Y:" -#: ../src/widgets/select-toolbar.cpp:508 +#: ../src/widgets/select-toolbar.cpp:512 msgid "Vertical coordinate of selection" msgstr "Verticale coördinaat van de selectie" -#: ../src/widgets/select-toolbar.cpp:512 +#: ../src/widgets/select-toolbar.cpp:516 msgctxt "Select toolbar" msgid "Width" msgstr "Breedte" -#: ../src/widgets/select-toolbar.cpp:512 +#: ../src/widgets/select-toolbar.cpp:516 msgctxt "Select toolbar" msgid "W:" msgstr "B:" -#: ../src/widgets/select-toolbar.cpp:514 +#: ../src/widgets/select-toolbar.cpp:518 msgid "Width of selection" msgstr "Breedte van de selectie" -#: ../src/widgets/select-toolbar.cpp:521 +#: ../src/widgets/select-toolbar.cpp:525 msgid "Lock width and height" msgstr "Verhouding tussen breedte en hoogte vastzetten" -#: ../src/widgets/select-toolbar.cpp:522 +#: ../src/widgets/select-toolbar.cpp:526 msgid "When locked, change both width and height by the same proportion" msgstr "Indien vastgezet, breedte en hoogte in dezelfde mate aanpassen" -#: ../src/widgets/select-toolbar.cpp:531 +#: ../src/widgets/select-toolbar.cpp:535 msgctxt "Select toolbar" msgid "Height" msgstr "Hoogte" -#: ../src/widgets/select-toolbar.cpp:531 +#: ../src/widgets/select-toolbar.cpp:535 msgctxt "Select toolbar" msgid "H:" msgstr "H:" -#: ../src/widgets/select-toolbar.cpp:533 +#: ../src/widgets/select-toolbar.cpp:537 msgid "Height of selection" msgstr "Hoogte van de selectie" -#: ../src/widgets/select-toolbar.cpp:583 +#: ../src/widgets/select-toolbar.cpp:587 msgid "Scale rounded corners" msgstr "Afgeronde hoeken schalen" -#: ../src/widgets/select-toolbar.cpp:594 +#: ../src/widgets/select-toolbar.cpp:598 msgid "Move gradients" msgstr "Kleurverlopen verplaatsen" -#: ../src/widgets/select-toolbar.cpp:605 +#: ../src/widgets/select-toolbar.cpp:609 msgid "Move patterns" msgstr "Patronen verplaatsen" -#: ../src/widgets/spiral-toolbar.cpp:115 +#: ../src/widgets/spiral-toolbar.cpp:111 msgid "Change spiral" msgstr "Spiraal aanpassen" -#: ../src/widgets/spiral-toolbar.cpp:261 +#: ../src/widgets/spiral-toolbar.cpp:257 msgid "just a curve" msgstr "gewoon een kromme" -#: ../src/widgets/spiral-toolbar.cpp:261 +#: ../src/widgets/spiral-toolbar.cpp:257 msgid "one full revolution" msgstr "één hele omwenteling" -#: ../src/widgets/spiral-toolbar.cpp:264 +#: ../src/widgets/spiral-toolbar.cpp:260 msgid "Number of turns" msgstr "Aantal stappen" -#: ../src/widgets/spiral-toolbar.cpp:264 +#: ../src/widgets/spiral-toolbar.cpp:260 msgid "Turns:" msgstr "Omwentelingen:" -#: ../src/widgets/spiral-toolbar.cpp:264 +#: ../src/widgets/spiral-toolbar.cpp:260 msgid "Number of revolutions" msgstr "Aantal omwentelingen" -#: ../src/widgets/spiral-toolbar.cpp:275 +#: ../src/widgets/spiral-toolbar.cpp:271 msgid "circle" msgstr "cirkel" -#: ../src/widgets/spiral-toolbar.cpp:275 +#: ../src/widgets/spiral-toolbar.cpp:271 msgid "edge is much denser" msgstr "rand is veel dichter" -#: ../src/widgets/spiral-toolbar.cpp:275 +#: ../src/widgets/spiral-toolbar.cpp:271 msgid "edge is denser" msgstr "rand is dichter" -#: ../src/widgets/spiral-toolbar.cpp:275 +#: ../src/widgets/spiral-toolbar.cpp:271 msgid "even" msgstr "gelijkmatig" -#: ../src/widgets/spiral-toolbar.cpp:275 +#: ../src/widgets/spiral-toolbar.cpp:271 msgid "center is denser" msgstr "centrum is dichter" -#: ../src/widgets/spiral-toolbar.cpp:275 +#: ../src/widgets/spiral-toolbar.cpp:271 msgid "center is much denser" msgstr "centrum is veel dichter" -#: ../src/widgets/spiral-toolbar.cpp:278 +#: ../src/widgets/spiral-toolbar.cpp:274 msgid "Divergence" msgstr "Uitwaaiering" -#: ../src/widgets/spiral-toolbar.cpp:278 +#: ../src/widgets/spiral-toolbar.cpp:274 msgid "Divergence:" msgstr "Uitwaaiering:" -#: ../src/widgets/spiral-toolbar.cpp:278 +#: ../src/widgets/spiral-toolbar.cpp:274 msgid "How much denser/sparser are outer revolutions; 1 = uniform" msgstr "Hoeveel de buitenste omwentelingen uitwaaieren; 1=gelijkmatig" -#: ../src/widgets/spiral-toolbar.cpp:289 +#: ../src/widgets/spiral-toolbar.cpp:285 msgid "starts from center" msgstr "begint in centrum" -#: ../src/widgets/spiral-toolbar.cpp:289 +#: ../src/widgets/spiral-toolbar.cpp:285 msgid "starts mid-way" msgstr "begint halfweg" -#: ../src/widgets/spiral-toolbar.cpp:289 +#: ../src/widgets/spiral-toolbar.cpp:285 msgid "starts near edge" msgstr "begint bij rand" -#: ../src/widgets/spiral-toolbar.cpp:292 +#: ../src/widgets/spiral-toolbar.cpp:288 msgid "Inner radius" msgstr "Binnenstraal" -#: ../src/widgets/spiral-toolbar.cpp:292 +#: ../src/widgets/spiral-toolbar.cpp:288 msgid "Inner radius:" msgstr "Binnenstraal:" -#: ../src/widgets/spiral-toolbar.cpp:292 +#: ../src/widgets/spiral-toolbar.cpp:288 msgid "Radius of the innermost revolution (relative to the spiral size)" msgstr "Straal van de binnenste omwenteling (ten opzichte van de spiraalgrootte)" -#: ../src/widgets/spiral-toolbar.cpp:305 -#: ../src/widgets/star-toolbar.cpp:577 +#: ../src/widgets/spiral-toolbar.cpp:301 +#: ../src/widgets/star-toolbar.cpp:573 msgid "Reset shape parameters to defaults (use Inkscape Preferences > Tools to change defaults)" msgstr "Zet de instellingen van de vorm terug naar de standaard instellingen (gebruik Bestand -> Inkscapevoorkeuren -> Gereedschappen om de standaard instellingen te wijzigen)" #. Width -#: ../src/widgets/spray-toolbar.cpp:129 +#: ../src/widgets/spray-toolbar.cpp:125 msgid "(narrow spray)" msgstr "(smalle verstuiving)" -#: ../src/widgets/spray-toolbar.cpp:129 +#: ../src/widgets/spray-toolbar.cpp:125 msgid "(broad spray)" msgstr "(brede verstuiving)" -#: ../src/widgets/spray-toolbar.cpp:132 +#: ../src/widgets/spray-toolbar.cpp:128 msgid "The width of the spray area (relative to the visible canvas area)" msgstr "De breedte van het verstuivingsgebied (relatief tov het canvas)" -#: ../src/widgets/spray-toolbar.cpp:145 +#: ../src/widgets/spray-toolbar.cpp:141 msgid "(maximum mean)" msgstr "(maximum gemiddelde)" -#: ../src/widgets/spray-toolbar.cpp:148 +#: ../src/widgets/spray-toolbar.cpp:144 msgid "Focus" msgstr "Focus" -#: ../src/widgets/spray-toolbar.cpp:148 +#: ../src/widgets/spray-toolbar.cpp:144 msgid "Focus:" msgstr "Focus:" -#: ../src/widgets/spray-toolbar.cpp:148 +#: ../src/widgets/spray-toolbar.cpp:144 msgid "0 to spray a spot; increase to enlarge the ring radius" msgstr "0 voor puntverstuiving; verhoog om de straal te vergroten." #. Standard_deviation -#: ../src/widgets/spray-toolbar.cpp:161 +#: ../src/widgets/spray-toolbar.cpp:157 msgid "(minimum scatter)" msgstr "(minimum spreiding)" -#: ../src/widgets/spray-toolbar.cpp:161 +#: ../src/widgets/spray-toolbar.cpp:157 msgid "(maximum scatter)" msgstr "(maximum spreiding)" -#: ../src/widgets/spray-toolbar.cpp:164 +#: ../src/widgets/spray-toolbar.cpp:160 msgctxt "Spray tool" msgid "Scatter" msgstr "Verspreiden" -#: ../src/widgets/spray-toolbar.cpp:164 +#: ../src/widgets/spray-toolbar.cpp:160 msgctxt "Spray tool" msgid "Scatter:" msgstr "Verspreiding:" -#: ../src/widgets/spray-toolbar.cpp:164 +#: ../src/widgets/spray-toolbar.cpp:160 msgid "Increase to scatter sprayed objects" msgstr "Verhoog om verstoven objecten te verspreiden" -#: ../src/widgets/spray-toolbar.cpp:183 +#: ../src/widgets/spray-toolbar.cpp:179 msgid "Spray copies of the initial selection" msgstr "Kopieën van de initiële selectie verstuiven" -#: ../src/widgets/spray-toolbar.cpp:190 +#: ../src/widgets/spray-toolbar.cpp:186 msgid "Spray clones of the initial selection" msgstr "Klonen van de initiële selectie verstuiven" -#: ../src/widgets/spray-toolbar.cpp:196 +#: ../src/widgets/spray-toolbar.cpp:192 msgid "Spray single path" msgstr "Verstuiven in één richting" -#: ../src/widgets/spray-toolbar.cpp:197 +#: ../src/widgets/spray-toolbar.cpp:193 msgid "Spray objects in a single path" msgstr "Objecten in één richting verstuiven" -#: ../src/widgets/spray-toolbar.cpp:201 -#: ../src/widgets/tweak-toolbar.cpp:271 +#: ../src/widgets/spray-toolbar.cpp:197 +#: ../src/widgets/tweak-toolbar.cpp:267 msgid "Mode" msgstr "Modus" #. Population -#: ../src/widgets/spray-toolbar.cpp:221 +#: ../src/widgets/spray-toolbar.cpp:217 msgid "(low population)" msgstr "(klein aantal)" -#: ../src/widgets/spray-toolbar.cpp:221 +#: ../src/widgets/spray-toolbar.cpp:217 msgid "(high population)" msgstr "(groot aantal)" -#: ../src/widgets/spray-toolbar.cpp:224 +#: ../src/widgets/spray-toolbar.cpp:220 msgid "Amount" msgstr "Hoeveelheid" -#: ../src/widgets/spray-toolbar.cpp:225 +#: ../src/widgets/spray-toolbar.cpp:221 msgid "Adjusts the number of items sprayed per click" msgstr "Het aantal verstoven objecten per klik" -#: ../src/widgets/spray-toolbar.cpp:241 +#: ../src/widgets/spray-toolbar.cpp:237 msgid "Use the pressure of the input device to alter the amount of sprayed objects" msgstr "De druk op het invoerapparaat gebruiken om het aantal verstoven objecten aan te passen" -#: ../src/widgets/spray-toolbar.cpp:251 +#: ../src/widgets/spray-toolbar.cpp:247 msgid "(high rotation variation)" msgstr "(grote variatie draaihoek)" -#: ../src/widgets/spray-toolbar.cpp:254 +#: ../src/widgets/spray-toolbar.cpp:250 msgid "Rotation" msgstr "Draaihoek" -#: ../src/widgets/spray-toolbar.cpp:254 +#: ../src/widgets/spray-toolbar.cpp:250 msgid "Rotation:" msgstr "Draaihoek:" -#: ../src/widgets/spray-toolbar.cpp:256 +#: ../src/widgets/spray-toolbar.cpp:252 #, no-c-format msgid "Variation of the rotation of the sprayed objects; 0% for the same rotation than the original object" msgstr "Variatie van de rotatie van de verstoven objecten; 0% voor dezelfde rotatie als het originele object" -#: ../src/widgets/spray-toolbar.cpp:269 +#: ../src/widgets/spray-toolbar.cpp:265 msgid "(high scale variation)" msgstr "(grote variatie schaal)" -#: ../src/widgets/spray-toolbar.cpp:272 +#: ../src/widgets/spray-toolbar.cpp:268 msgctxt "Spray tool" msgid "Scale" msgstr "Schaal" -#: ../src/widgets/spray-toolbar.cpp:272 +#: ../src/widgets/spray-toolbar.cpp:268 msgctxt "Spray tool" msgid "Scale:" msgstr "Schaal:" -#: ../src/widgets/spray-toolbar.cpp:274 +#: ../src/widgets/spray-toolbar.cpp:270 #, no-c-format msgid "Variation in the scale of the sprayed objects; 0% for the same scale than the original object" msgstr "Variatie van de schaal van de verstoven objecten; 0% voor de schaal van het originele object" @@ -24890,83 +24942,93 @@ msgstr "Variatie van de schaal van de verstoven objecten; 0% voor de schaal van msgid "Set attribute" msgstr "Attribuut instellen" -#: ../src/widgets/sp-color-icc-selector.cpp:107 +#: ../src/widgets/sp-color-icc-selector.cpp:257 msgid "CMS" msgstr "KBS" -#: ../src/widgets/sp-color-icc-selector.cpp:214 +#: ../src/widgets/sp-color-icc-selector.cpp:355 #: ../src/widgets/sp-color-scales.cpp:428 msgid "_R:" msgstr "_R:" -#: ../src/widgets/sp-color-icc-selector.cpp:214 -#: ../src/widgets/sp-color-icc-selector.cpp:215 +#. TYPE_RGB_16 +#: ../src/widgets/sp-color-icc-selector.cpp:356 #: ../src/widgets/sp-color-scales.cpp:431 msgid "_G:" msgstr "_G:" -#: ../src/widgets/sp-color-icc-selector.cpp:214 +#: ../src/widgets/sp-color-icc-selector.cpp:357 #: ../src/widgets/sp-color-scales.cpp:434 msgid "_B:" msgstr "_B:" +#: ../src/widgets/sp-color-icc-selector.cpp:359 +#, fuzzy +msgid "G:" +msgstr "_G:" + +#: ../src/widgets/sp-color-icc-selector.cpp:359 +msgid "Gray" +msgstr "Grijs" + # Hue - Tint. -#: ../src/widgets/sp-color-icc-selector.cpp:216 -#: ../src/widgets/sp-color-icc-selector.cpp:217 +#. TYPE_GRAY_16 +#: ../src/widgets/sp-color-icc-selector.cpp:361 +#: ../src/widgets/sp-color-icc-selector.cpp:365 #: ../src/widgets/sp-color-scales.cpp:454 msgid "_H:" msgstr "_T:" # Saturation - Verzadiging. -#: ../src/widgets/sp-color-icc-selector.cpp:216 -#: ../src/widgets/sp-color-icc-selector.cpp:217 +#. TYPE_HSV_16 +#: ../src/widgets/sp-color-icc-selector.cpp:362 +#: ../src/widgets/sp-color-icc-selector.cpp:367 #: ../src/widgets/sp-color-scales.cpp:457 msgid "_S:" msgstr "_V:" # Lightness - Helderheid. -#: ../src/widgets/sp-color-icc-selector.cpp:217 +#. TYPE_HLS_16 +#: ../src/widgets/sp-color-icc-selector.cpp:366 #: ../src/widgets/sp-color-scales.cpp:460 msgid "_L:" msgstr "_L:" -#: ../src/widgets/sp-color-icc-selector.cpp:218 -#: ../src/widgets/sp-color-icc-selector.cpp:219 +#: ../src/widgets/sp-color-icc-selector.cpp:369 +#: ../src/widgets/sp-color-icc-selector.cpp:374 #: ../src/widgets/sp-color-scales.cpp:482 msgid "_C:" msgstr "_C:" -#: ../src/widgets/sp-color-icc-selector.cpp:218 -#: ../src/widgets/sp-color-icc-selector.cpp:219 +#. TYPE_CMYK_16 +#. TYPE_CMY_16 +#: ../src/widgets/sp-color-icc-selector.cpp:370 +#: ../src/widgets/sp-color-icc-selector.cpp:375 #: ../src/widgets/sp-color-scales.cpp:485 msgid "_M:" msgstr "_M:" -#: ../src/widgets/sp-color-icc-selector.cpp:218 -#: ../src/widgets/sp-color-icc-selector.cpp:219 +#: ../src/widgets/sp-color-icc-selector.cpp:371 +#: ../src/widgets/sp-color-icc-selector.cpp:376 #: ../src/widgets/sp-color-scales.cpp:488 msgid "_Y:" msgstr "_Y:" -#: ../src/widgets/sp-color-icc-selector.cpp:218 +#: ../src/widgets/sp-color-icc-selector.cpp:372 #: ../src/widgets/sp-color-scales.cpp:491 msgid "_K:" msgstr "_K:" -#: ../src/widgets/sp-color-icc-selector.cpp:229 -msgid "Gray" -msgstr "Grijs" - -#: ../src/widgets/sp-color-icc-selector.cpp:298 +#: ../src/widgets/sp-color-icc-selector.cpp:455 msgid "Fix" msgstr "Corrigeren" -#: ../src/widgets/sp-color-icc-selector.cpp:301 +#: ../src/widgets/sp-color-icc-selector.cpp:458 msgid "Fix RGB fallback to match icc-color() value." msgstr "RGB-standaardwaarde aanpassen aan waarde van icc-color()." #. Label -#: ../src/widgets/sp-color-icc-selector.cpp:439 +#: ../src/widgets/sp-color-icc-selector.cpp:561 #: ../src/widgets/sp-color-scales.cpp:437 #: ../src/widgets/sp-color-scales.cpp:463 #: ../src/widgets/sp-color-scales.cpp:494 @@ -24974,8 +25036,8 @@ msgstr "RGB-standaardwaarde aanpassen aan waarde van icc-color()." msgid "_A:" msgstr "_A:" -#: ../src/widgets/sp-color-icc-selector.cpp:458 -#: ../src/widgets/sp-color-icc-selector.cpp:480 +#: ../src/widgets/sp-color-icc-selector.cpp:572 +#: ../src/widgets/sp-color-icc-selector.cpp:585 #: ../src/widgets/sp-color-scales.cpp:438 #: ../src/widgets/sp-color-scales.cpp:439 #: ../src/widgets/sp-color-scales.cpp:464 @@ -25033,183 +25095,183 @@ msgstr "Waarde" msgid "Type text in a text node" msgstr "Tekst tikken in een tekstobject" -#: ../src/widgets/star-toolbar.cpp:114 +#: ../src/widgets/star-toolbar.cpp:110 msgid "Star: Change number of corners" msgstr "Ster: aantal hoeken veranderen" -#: ../src/widgets/star-toolbar.cpp:167 +#: ../src/widgets/star-toolbar.cpp:163 msgid "Star: Change spoke ratio" msgstr "Ster: spaakverhouding veranderen" -#: ../src/widgets/star-toolbar.cpp:212 +#: ../src/widgets/star-toolbar.cpp:208 msgid "Make polygon" msgstr "Veelhoek maken" -#: ../src/widgets/star-toolbar.cpp:212 +#: ../src/widgets/star-toolbar.cpp:208 msgid "Make star" msgstr "Ster maken" -#: ../src/widgets/star-toolbar.cpp:251 +#: ../src/widgets/star-toolbar.cpp:247 msgid "Star: Change rounding" msgstr "Ster: afronding veranderen" -#: ../src/widgets/star-toolbar.cpp:291 +#: ../src/widgets/star-toolbar.cpp:287 msgid "Star: Change randomization" msgstr "Ster: willekeurigheid veranderen" -#: ../src/widgets/star-toolbar.cpp:475 +#: ../src/widgets/star-toolbar.cpp:471 msgid "Regular polygon (with one handle) instead of a star" msgstr "Regelmatige veelhoek (met één handvat) in plaats van een ster" -#: ../src/widgets/star-toolbar.cpp:482 +#: ../src/widgets/star-toolbar.cpp:478 msgid "Star instead of a regular polygon (with one handle)" msgstr "Ster in plaats van regelmatige veelhoek (met één handvat)" -#: ../src/widgets/star-toolbar.cpp:503 +#: ../src/widgets/star-toolbar.cpp:499 msgid "triangle/tri-star" msgstr "driehoek/driepuntige ster" -#: ../src/widgets/star-toolbar.cpp:503 +#: ../src/widgets/star-toolbar.cpp:499 msgid "square/quad-star" msgstr "vierkant/vierpuntige ster" -#: ../src/widgets/star-toolbar.cpp:503 +#: ../src/widgets/star-toolbar.cpp:499 msgid "pentagon/five-pointed star" msgstr "vijfhoek/vijfpuntige ster" -#: ../src/widgets/star-toolbar.cpp:503 +#: ../src/widgets/star-toolbar.cpp:499 msgid "hexagon/six-pointed star" msgstr "zeshoek/zespuntige ster" -#: ../src/widgets/star-toolbar.cpp:506 +#: ../src/widgets/star-toolbar.cpp:502 msgid "Corners" msgstr "Hoeken" -#: ../src/widgets/star-toolbar.cpp:506 +#: ../src/widgets/star-toolbar.cpp:502 msgid "Corners:" msgstr "Hoeken:" -#: ../src/widgets/star-toolbar.cpp:506 +#: ../src/widgets/star-toolbar.cpp:502 msgid "Number of corners of a polygon or star" msgstr "Aantal hoeken van een veelhoek of ster" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "thin-ray star" msgstr "dunstralige ster" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "pentagram" msgstr "pentagram" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "hexagram" msgstr "hexagram" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "heptagram" msgstr "heptagram" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "octagram" msgstr "octagram" -#: ../src/widgets/star-toolbar.cpp:519 +#: ../src/widgets/star-toolbar.cpp:515 msgid "regular polygon" msgstr "regelmatige veelhoek" -#: ../src/widgets/star-toolbar.cpp:522 +#: ../src/widgets/star-toolbar.cpp:518 msgid "Spoke ratio" msgstr "Spaakverhouding" -#: ../src/widgets/star-toolbar.cpp:522 +#: ../src/widgets/star-toolbar.cpp:518 msgid "Spoke ratio:" msgstr "Spaakverhouding:" #. TRANSLATORS: Tip radius of a star is the distance from the center to the farthest handle. #. Base radius is the same for the closest handle. -#: ../src/widgets/star-toolbar.cpp:525 +#: ../src/widgets/star-toolbar.cpp:521 msgid "Base radius to tip radius ratio" msgstr "Verhouding tussen de straal en de lengte van een spaak" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "stretched" msgstr "uitgerekt" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "twisted" msgstr "gewrongen" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "slightly pinched" msgstr "licht afgeknepen" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "NOT rounded" msgstr "NIET afgerond" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "slightly rounded" msgstr "licht afgerond" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "visibly rounded" msgstr "zichtbaar afgerond" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "well rounded" msgstr "goed afgerond" -#: ../src/widgets/star-toolbar.cpp:543 +#: ../src/widgets/star-toolbar.cpp:539 msgid "amply rounded" msgstr "flink afgerond" -#: ../src/widgets/star-toolbar.cpp:543 -#: ../src/widgets/star-toolbar.cpp:558 +#: ../src/widgets/star-toolbar.cpp:539 +#: ../src/widgets/star-toolbar.cpp:554 msgid "blown up" msgstr "opgeblazen" # Het gaat hier om een hoeveelheid. -#: ../src/widgets/star-toolbar.cpp:546 +#: ../src/widgets/star-toolbar.cpp:542 msgid "Rounded:" msgstr "Afronding:" -#: ../src/widgets/star-toolbar.cpp:546 +#: ../src/widgets/star-toolbar.cpp:542 msgid "How much rounded are the corners (0 for sharp)" msgstr "Hoe hoeken worden afgerond (0 voor scherpe hoeken)" -#: ../src/widgets/star-toolbar.cpp:558 +#: ../src/widgets/star-toolbar.cpp:554 msgid "NOT randomized" msgstr "GEEN willekeur" -#: ../src/widgets/star-toolbar.cpp:558 +#: ../src/widgets/star-toolbar.cpp:554 msgid "slightly irregular" msgstr "licht onregelmatig" -#: ../src/widgets/star-toolbar.cpp:558 +#: ../src/widgets/star-toolbar.cpp:554 msgid "visibly randomized" msgstr "zichtbaar onregelmatig" -#: ../src/widgets/star-toolbar.cpp:558 +#: ../src/widgets/star-toolbar.cpp:554 msgid "strongly randomized" msgstr "sterk onregelmatig" -#: ../src/widgets/star-toolbar.cpp:561 +#: ../src/widgets/star-toolbar.cpp:557 msgid "Randomized" msgstr "Willekeur" -#: ../src/widgets/star-toolbar.cpp:561 +#: ../src/widgets/star-toolbar.cpp:557 msgid "Randomized:" msgstr "Willekeur:" -#: ../src/widgets/star-toolbar.cpp:561 +#: ../src/widgets/star-toolbar.cpp:557 msgid "Scatter randomly the corners and angles" msgstr "Punten en hoeken willekeurig uitspreiden" -#: ../src/widgets/stroke-style.cpp:185 +#: ../src/widgets/stroke-style.cpp:188 msgid "Stroke width" msgstr "Lijnbreedte" -#: ../src/widgets/stroke-style.cpp:187 +#: ../src/widgets/stroke-style.cpp:190 msgctxt "Stroke width" msgid "_Width:" msgstr "_Breedte:" @@ -25217,92 +25279,88 @@ msgstr "_Breedte:" #. TRANSLATORS: Miter join: joining lines with a sharp (pointed) corner. #. For an example, draw a triangle with a large stroke width and modify the #. "Join" option (in the Fill and Stroke dialog). -#: ../src/widgets/stroke-style.cpp:232 +#: ../src/widgets/stroke-style.cpp:235 msgid "Miter join" msgstr "Scherpe hoek" #. TRANSLATORS: Round join: joining lines with a rounded corner. #. For an example, draw a triangle with a large stroke width and modify the #. "Join" option (in the Fill and Stroke dialog). -#: ../src/widgets/stroke-style.cpp:240 +#: ../src/widgets/stroke-style.cpp:243 msgid "Round join" msgstr "Afgeronde hoek" #. TRANSLATORS: Bevel join: joining lines with a blunted (flattened) corner. #. For an example, draw a triangle with a large stroke width and modify the #. "Join" option (in the Fill and Stroke dialog). -#: ../src/widgets/stroke-style.cpp:248 +#: ../src/widgets/stroke-style.cpp:251 msgid "Bevel join" msgstr "Schuine hoek" -#: ../src/widgets/stroke-style.cpp:273 +#: ../src/widgets/stroke-style.cpp:276 msgid "Miter _limit:" msgstr "_Hoeklimiet:" #. Cap type #. TRANSLATORS: cap type specifies the shape for the ends of lines #. spw_label(t, _("_Cap:"), 0, i); -#: ../src/widgets/stroke-style.cpp:289 +#: ../src/widgets/stroke-style.cpp:292 msgid "Cap:" msgstr "Uiteinde:" #. TRANSLATORS: Butt cap: the line shape does not extend beyond the end point #. of the line; the ends of the line are square -#: ../src/widgets/stroke-style.cpp:300 +#: ../src/widgets/stroke-style.cpp:303 msgid "Butt cap" msgstr "Afgekapt uiteinde" #. TRANSLATORS: Round cap: the line shape extends beyond the end point of the #. line; the ends of the line are rounded -#: ../src/widgets/stroke-style.cpp:307 +#: ../src/widgets/stroke-style.cpp:310 msgid "Round cap" msgstr "Rond uiteinde" #. TRANSLATORS: Square cap: the line shape extends beyond the end point of the #. line; the ends of the line are square -#: ../src/widgets/stroke-style.cpp:314 +#: ../src/widgets/stroke-style.cpp:317 msgid "Square cap" msgstr "Vierkant uiteinde" #. Dash -#: ../src/widgets/stroke-style.cpp:319 +#: ../src/widgets/stroke-style.cpp:322 msgid "Dashes:" msgstr "Streepjes:" -#: ../src/widgets/stroke-style.cpp:346 -msgid "_Start Markers:" -msgstr "_Beginmarkering:" +#. Drop down marker selectors +#. TRANSLATORS: Path markers are an SVG feature that allows you to attach arbitrary shapes +#. (arrowheads, bullets, faces, whatever) to the start, end, or middle nodes of a path. +#: ../src/widgets/stroke-style.cpp:348 +#, fuzzy +msgid "Markers:" +msgstr "Markeringen" -#: ../src/widgets/stroke-style.cpp:347 +#: ../src/widgets/stroke-style.cpp:354 msgid "Start Markers are drawn on the first node of a path or shape" msgstr "Beginmarkeringen worden getekend bij het eerste knooppunt van een pad of vorm" -#: ../src/widgets/stroke-style.cpp:365 -msgid "_Mid Markers:" -msgstr "_Middenmarkering:" - -#: ../src/widgets/stroke-style.cpp:366 +#: ../src/widgets/stroke-style.cpp:363 msgid "Mid Markers are drawn on every node of a path or shape except the first and last nodes" msgstr "Middennmarkeringen worden getekend bij elk knooppunt van een pad of vorm behalve het eerste en laatste knooppunt" -#: ../src/widgets/stroke-style.cpp:384 -msgid "_End Markers:" -msgstr "_Eindmarkering:" - -#: ../src/widgets/stroke-style.cpp:385 +#: ../src/widgets/stroke-style.cpp:372 msgid "End Markers are drawn on the last node of a path or shape" msgstr "Eindmarkeringen worden getekend bij het laatste knooppunt van een pad of vorm" -#: ../src/widgets/stroke-style.cpp:512 +#: ../src/widgets/stroke-style.cpp:490 msgid "Set markers" msgstr "Markeringen instellen" -#: ../src/widgets/stroke-style.cpp:1100 -#: ../src/widgets/stroke-style.cpp:1185 +#: ../src/widgets/stroke-style.cpp:1020 +#: ../src/widgets/stroke-style.cpp:1105 msgid "Set stroke style" msgstr "Lijnstijl instellen" -#: ../src/widgets/stroke-style.cpp:1273 +#: ../src/widgets/stroke-style.cpp:1193 msgid "Set marker color" msgstr "Markeringskleur instellen" @@ -25310,617 +25368,617 @@ msgstr "Markeringskleur instellen" msgid "Change swatch color" msgstr "Paletkleur aanpassen" -#: ../src/widgets/text-toolbar.cpp:178 +#: ../src/widgets/text-toolbar.cpp:174 msgid "Text: Change font family" msgstr "Tekst: lettertypefamilie veranderen" -#: ../src/widgets/text-toolbar.cpp:242 +#: ../src/widgets/text-toolbar.cpp:238 msgid "Text: Change font size" msgstr "Tekst: lettertypegrootte veranderen" -#: ../src/widgets/text-toolbar.cpp:280 +#: ../src/widgets/text-toolbar.cpp:276 msgid "Text: Change font style" msgstr "Tekst: lettertypestijl veranderen" -#: ../src/widgets/text-toolbar.cpp:358 +#: ../src/widgets/text-toolbar.cpp:354 msgid "Text: Change superscript or subscript" msgstr "Tekst: superscript en subscript veranderen" -#: ../src/widgets/text-toolbar.cpp:503 +#: ../src/widgets/text-toolbar.cpp:499 msgid "Text: Change alignment" msgstr "Tekst: uitlijning veranderen" -#: ../src/widgets/text-toolbar.cpp:546 +#: ../src/widgets/text-toolbar.cpp:542 msgid "Text: Change line-height" msgstr "Tekst: lijnhoogte veranderen" -#: ../src/widgets/text-toolbar.cpp:595 +#: ../src/widgets/text-toolbar.cpp:591 msgid "Text: Change word-spacing" msgstr "Tekst: woordafstand veranderen" -#: ../src/widgets/text-toolbar.cpp:636 +#: ../src/widgets/text-toolbar.cpp:632 msgid "Text: Change letter-spacing" msgstr "Tekst: letterafstand veranderen" -#: ../src/widgets/text-toolbar.cpp:676 +#: ../src/widgets/text-toolbar.cpp:672 msgid "Text: Change dx (kern)" msgstr "Tekst: dx veranderen (kerning)" -#: ../src/widgets/text-toolbar.cpp:710 +#: ../src/widgets/text-toolbar.cpp:706 msgid "Text: Change dy" msgstr "Tekst: dy veranderen" -#: ../src/widgets/text-toolbar.cpp:745 +#: ../src/widgets/text-toolbar.cpp:741 msgid "Text: Change rotate" msgstr "Tekst: draaiing veranderen" -#: ../src/widgets/text-toolbar.cpp:793 +#: ../src/widgets/text-toolbar.cpp:789 msgid "Text: Change orientation" msgstr "Tekst: oriëntatie veranderen" -#: ../src/widgets/text-toolbar.cpp:1235 +#: ../src/widgets/text-toolbar.cpp:1226 msgid "Font Family" msgstr "Lettertypefamilie" -#: ../src/widgets/text-toolbar.cpp:1236 +#: ../src/widgets/text-toolbar.cpp:1227 msgid "Select Font Family (Alt-X to access)" msgstr "Selecteer lettertypefamilie (Alt+X voor dialoog)" #. Focus widget #. Enable entry completion -#: ../src/widgets/text-toolbar.cpp:1246 +#: ../src/widgets/text-toolbar.cpp:1237 msgid "Select all text with this font-family" msgstr "" -#: ../src/widgets/text-toolbar.cpp:1250 +#: ../src/widgets/text-toolbar.cpp:1241 msgid "Font not found on system" msgstr "Lettertype niet aanwezig op systeem" -#: ../src/widgets/text-toolbar.cpp:1309 +#: ../src/widgets/text-toolbar.cpp:1300 msgid "Font Style" msgstr "Lettertypestijl" -#: ../src/widgets/text-toolbar.cpp:1310 +#: ../src/widgets/text-toolbar.cpp:1301 msgid "Font style" msgstr "Lettertypestijl" #. Name -#: ../src/widgets/text-toolbar.cpp:1327 +#: ../src/widgets/text-toolbar.cpp:1318 msgid "Toggle Superscript" msgstr "Superscript" #. Label -#: ../src/widgets/text-toolbar.cpp:1328 +#: ../src/widgets/text-toolbar.cpp:1319 msgid "Toggle superscript" msgstr "Superscript" #. Name -#: ../src/widgets/text-toolbar.cpp:1340 +#: ../src/widgets/text-toolbar.cpp:1331 msgid "Toggle Subscript" msgstr "Subscript" #. Label -#: ../src/widgets/text-toolbar.cpp:1341 +#: ../src/widgets/text-toolbar.cpp:1332 msgid "Toggle subscript" msgstr "Subscript" -#: ../src/widgets/text-toolbar.cpp:1382 +#: ../src/widgets/text-toolbar.cpp:1373 msgid "Justify" msgstr "Uitgevuld" #. Name -#: ../src/widgets/text-toolbar.cpp:1389 +#: ../src/widgets/text-toolbar.cpp:1380 msgid "Alignment" msgstr "Uitlijning" #. Label -#: ../src/widgets/text-toolbar.cpp:1390 +#: ../src/widgets/text-toolbar.cpp:1381 msgid "Text alignment" msgstr "Tekstuitlijning" -#: ../src/widgets/text-toolbar.cpp:1417 +#: ../src/widgets/text-toolbar.cpp:1408 msgid "Horizontal" msgstr "Horizontaal" -#: ../src/widgets/text-toolbar.cpp:1424 +#: ../src/widgets/text-toolbar.cpp:1415 msgid "Vertical" msgstr "Verticaal" #. Label -#: ../src/widgets/text-toolbar.cpp:1431 +#: ../src/widgets/text-toolbar.cpp:1422 msgid "Text orientation" msgstr "Tekstoriëntatie" #. Drop down menu -#: ../src/widgets/text-toolbar.cpp:1454 +#: ../src/widgets/text-toolbar.cpp:1445 msgid "Smaller spacing" msgstr "Kleinere afstand" -#: ../src/widgets/text-toolbar.cpp:1454 -#: ../src/widgets/text-toolbar.cpp:1485 -#: ../src/widgets/text-toolbar.cpp:1516 +#: ../src/widgets/text-toolbar.cpp:1445 +#: ../src/widgets/text-toolbar.cpp:1475 +#: ../src/widgets/text-toolbar.cpp:1505 msgctxt "Text tool" msgid "Normal" msgstr "Normal" -#: ../src/widgets/text-toolbar.cpp:1454 +#: ../src/widgets/text-toolbar.cpp:1445 msgid "Larger spacing" msgstr "Grotere afstand" #. name -#: ../src/widgets/text-toolbar.cpp:1459 +#: ../src/widgets/text-toolbar.cpp:1450 msgid "Line Height" msgstr "Lijnhoogte" #. label -#: ../src/widgets/text-toolbar.cpp:1460 +#: ../src/widgets/text-toolbar.cpp:1451 msgid "Line:" msgstr "Lijn:" #. short label -#: ../src/widgets/text-toolbar.cpp:1461 +#: ../src/widgets/text-toolbar.cpp:1452 msgid "Spacing between lines (times font size)" msgstr "Ruimte tussen lijnen (maal lettertypegrootte)" #. Drop down menu -#: ../src/widgets/text-toolbar.cpp:1485 -#: ../src/widgets/text-toolbar.cpp:1516 +#: ../src/widgets/text-toolbar.cpp:1475 +#: ../src/widgets/text-toolbar.cpp:1505 msgid "Negative spacing" msgstr "Negatieve afstand" -#: ../src/widgets/text-toolbar.cpp:1485 -#: ../src/widgets/text-toolbar.cpp:1516 +#: ../src/widgets/text-toolbar.cpp:1475 +#: ../src/widgets/text-toolbar.cpp:1505 msgid "Positive spacing" msgstr "Positieve afstand" #. name -#: ../src/widgets/text-toolbar.cpp:1490 +#: ../src/widgets/text-toolbar.cpp:1480 msgid "Word spacing" msgstr "Woordafstand" #. label -#: ../src/widgets/text-toolbar.cpp:1491 +#: ../src/widgets/text-toolbar.cpp:1481 msgid "Word:" msgstr "Woord:" #. short label -#: ../src/widgets/text-toolbar.cpp:1492 +#: ../src/widgets/text-toolbar.cpp:1482 msgid "Spacing between words (px)" msgstr "Ruimte tussen woorden (px)" #. name -#: ../src/widgets/text-toolbar.cpp:1521 +#: ../src/widgets/text-toolbar.cpp:1510 msgid "Letter spacing" msgstr "Letterafstand" #. label -#: ../src/widgets/text-toolbar.cpp:1522 +#: ../src/widgets/text-toolbar.cpp:1511 msgid "Letter:" msgstr "Letter:" #. short label -#: ../src/widgets/text-toolbar.cpp:1523 +#: ../src/widgets/text-toolbar.cpp:1512 msgid "Spacing between letters (px)" msgstr "Ruimte tussen letters (px)" #. name -#: ../src/widgets/text-toolbar.cpp:1552 +#: ../src/widgets/text-toolbar.cpp:1540 msgid "Kerning" msgstr "Overhang" #. label -#: ../src/widgets/text-toolbar.cpp:1553 +#: ../src/widgets/text-toolbar.cpp:1541 msgid "Kern:" msgstr "Overhang:" #. short label -#: ../src/widgets/text-toolbar.cpp:1554 +#: ../src/widgets/text-toolbar.cpp:1542 msgid "Horizontal kerning (px)" msgstr "Horizontale overhang (px)" #. name -#: ../src/widgets/text-toolbar.cpp:1583 +#: ../src/widgets/text-toolbar.cpp:1570 msgid "Vertical Shift" msgstr "Verticale verplaatsing" #. label -#: ../src/widgets/text-toolbar.cpp:1584 +#: ../src/widgets/text-toolbar.cpp:1571 msgid "Vert:" msgstr "Vert:" #. short label -#: ../src/widgets/text-toolbar.cpp:1585 +#: ../src/widgets/text-toolbar.cpp:1572 msgid "Vertical shift (px)" msgstr "Verticale verplaatsing (px)" #. name -#: ../src/widgets/text-toolbar.cpp:1614 +#: ../src/widgets/text-toolbar.cpp:1600 msgid "Letter rotation" msgstr "Letterrotatie" #. label -#: ../src/widgets/text-toolbar.cpp:1615 +#: ../src/widgets/text-toolbar.cpp:1601 msgid "Rot:" msgstr "Rot:" #. short label -#: ../src/widgets/text-toolbar.cpp:1616 +#: ../src/widgets/text-toolbar.cpp:1602 msgid "Character rotation (degrees)" msgstr "Karakterrotatie (graden)" -#: ../src/widgets/toolbox.cpp:177 +#: ../src/widgets/toolbox.cpp:179 msgid "Color/opacity used for color tweaking" msgstr "Kleur en ondoorzichtigheid die gebruikt worden in verfmodi" -#: ../src/widgets/toolbox.cpp:185 +#: ../src/widgets/toolbox.cpp:187 msgid "Style of new stars" msgstr "Stijl van nieuwe sterren" -#: ../src/widgets/toolbox.cpp:187 +#: ../src/widgets/toolbox.cpp:189 msgid "Style of new rectangles" msgstr "Stijl van nieuwe rechthoeken" -#: ../src/widgets/toolbox.cpp:189 +#: ../src/widgets/toolbox.cpp:191 msgid "Style of new 3D boxes" msgstr "Stijl van nieuwe 3D-kubussen" -#: ../src/widgets/toolbox.cpp:191 +#: ../src/widgets/toolbox.cpp:193 msgid "Style of new ellipses" msgstr "Stijl van nieuwe ellipsen" -#: ../src/widgets/toolbox.cpp:193 +#: ../src/widgets/toolbox.cpp:195 msgid "Style of new spirals" msgstr "Stijl van nieuwe spiralen" -#: ../src/widgets/toolbox.cpp:195 +#: ../src/widgets/toolbox.cpp:197 msgid "Style of new paths created by Pencil" msgstr "Stijl van nieuwe paden getekend met het potlood" -#: ../src/widgets/toolbox.cpp:197 +#: ../src/widgets/toolbox.cpp:199 msgid "Style of new paths created by Pen" msgstr "Stijl van nieuwe paden getrokken met pen" -#: ../src/widgets/toolbox.cpp:199 +#: ../src/widgets/toolbox.cpp:201 msgid "Style of new calligraphic strokes" msgstr "Stijl van nieuwe kalligrafische lijnen" -#: ../src/widgets/toolbox.cpp:201 #: ../src/widgets/toolbox.cpp:203 +#: ../src/widgets/toolbox.cpp:205 msgid "TBD" msgstr "Te bepalen" -#: ../src/widgets/toolbox.cpp:215 +#: ../src/widgets/toolbox.cpp:217 msgid "Style of Paint Bucket fill objects" msgstr "Stijl van nieuwe verfemmerobjecten" -#: ../src/widgets/toolbox.cpp:1678 +#: ../src/widgets/toolbox.cpp:1676 msgid "Bounding box" msgstr "Omvattend vak" -#: ../src/widgets/toolbox.cpp:1678 +#: ../src/widgets/toolbox.cpp:1676 msgid "Snap bounding boxes" msgstr "Omvattende vakken kleven" -#: ../src/widgets/toolbox.cpp:1687 +#: ../src/widgets/toolbox.cpp:1685 msgid "Bounding box edges" msgstr "Randen van omvattend vak" -#: ../src/widgets/toolbox.cpp:1687 +#: ../src/widgets/toolbox.cpp:1685 msgid "Snap to edges of a bounding box" msgstr "Aan randen van omvattend vak kleven" -#: ../src/widgets/toolbox.cpp:1696 +#: ../src/widgets/toolbox.cpp:1694 msgid "Bounding box corners" msgstr "Hoeken van omvattend vak" -#: ../src/widgets/toolbox.cpp:1696 +#: ../src/widgets/toolbox.cpp:1694 msgid "Snap bounding box corners" msgstr "Aan hoeken van omvattend vak kleven" -#: ../src/widgets/toolbox.cpp:1705 +#: ../src/widgets/toolbox.cpp:1703 msgid "BBox Edge Midpoints" msgstr "Midden randen omvattend vak" -#: ../src/widgets/toolbox.cpp:1705 +#: ../src/widgets/toolbox.cpp:1703 msgid "Snap midpoints of bounding box edges" msgstr "Middens van de randen van omvattende vakken kleven" -#: ../src/widgets/toolbox.cpp:1715 +#: ../src/widgets/toolbox.cpp:1713 msgid "BBox Centers" msgstr "Middelpunt omvattend vak" -#: ../src/widgets/toolbox.cpp:1715 +#: ../src/widgets/toolbox.cpp:1713 msgid "Snapping centers of bounding boxes" msgstr "Middelpunten van omvattende vakken kleven" -#: ../src/widgets/toolbox.cpp:1724 +#: ../src/widgets/toolbox.cpp:1722 msgid "Snap nodes, paths, and handles" msgstr "Knooppunten, paden en handvatten kleven" -#: ../src/widgets/toolbox.cpp:1732 +#: ../src/widgets/toolbox.cpp:1730 msgid "Snap to paths" msgstr "Aan paden kleven" -#: ../src/widgets/toolbox.cpp:1741 +#: ../src/widgets/toolbox.cpp:1739 msgid "Path intersections" msgstr "Kruispunten van paden" -#: ../src/widgets/toolbox.cpp:1741 +#: ../src/widgets/toolbox.cpp:1739 msgid "Snap to path intersections" msgstr "Aan kruispunten van paden kleven" -#: ../src/widgets/toolbox.cpp:1750 +#: ../src/widgets/toolbox.cpp:1748 msgid "To nodes" msgstr "Aan knooppunten" -#: ../src/widgets/toolbox.cpp:1750 +#: ../src/widgets/toolbox.cpp:1748 msgid "Snap cusp nodes, incl. rectangle corners" msgstr "Hoekige knooppunte, inclusief hoeken van rechthoeken, kleven" -#: ../src/widgets/toolbox.cpp:1759 +#: ../src/widgets/toolbox.cpp:1757 msgid "Smooth nodes" msgstr "Afgevlakte knooppunten" -#: ../src/widgets/toolbox.cpp:1759 +#: ../src/widgets/toolbox.cpp:1757 msgid "Snap smooth nodes, incl. quadrant points of ellipses" msgstr "Afgevlakte knooppunten, inclusief kwadrantpunten van ellipsen, kleven" -#: ../src/widgets/toolbox.cpp:1768 +#: ../src/widgets/toolbox.cpp:1766 msgid "Line Midpoints" msgstr "Midden lijnsegment" -#: ../src/widgets/toolbox.cpp:1768 +#: ../src/widgets/toolbox.cpp:1766 msgid "Snap midpoints of line segments" msgstr "Middens van lijnsegmenten kleven" -#: ../src/widgets/toolbox.cpp:1777 +#: ../src/widgets/toolbox.cpp:1775 msgid "Others" msgstr "Andere" -#: ../src/widgets/toolbox.cpp:1777 +#: ../src/widgets/toolbox.cpp:1775 msgid "Snap other points (centers, guide origins, gradient handles, etc.)" msgstr "Kleven van andere punten (middelpunten, oorsprong hulplijn, kleurverloophandvatten, etc.)" -#: ../src/widgets/toolbox.cpp:1785 +#: ../src/widgets/toolbox.cpp:1783 msgid "Object Centers" msgstr "Objectmiddelpunten" -#: ../src/widgets/toolbox.cpp:1785 +#: ../src/widgets/toolbox.cpp:1783 msgid "Snap centers of objects" msgstr "Middelpunten van objecten kleven" -#: ../src/widgets/toolbox.cpp:1794 +#: ../src/widgets/toolbox.cpp:1792 msgid "Rotation Centers" msgstr "Rotatiemiddelpunt" -#: ../src/widgets/toolbox.cpp:1794 +#: ../src/widgets/toolbox.cpp:1792 msgid "Snap an item's rotation center" msgstr "Rotatiecentra kleven" -#: ../src/widgets/toolbox.cpp:1803 +#: ../src/widgets/toolbox.cpp:1801 msgid "Text baseline" msgstr "Grondlijn tekst" -#: ../src/widgets/toolbox.cpp:1803 +#: ../src/widgets/toolbox.cpp:1801 msgid "Snap text anchors and baselines" msgstr "Tekstankers en basislijnen kleven" -#: ../src/widgets/toolbox.cpp:1813 +#: ../src/widgets/toolbox.cpp:1811 msgid "Page border" msgstr "Paginarand" -#: ../src/widgets/toolbox.cpp:1813 +#: ../src/widgets/toolbox.cpp:1811 msgid "Snap to the page border" msgstr "Aan paginarand kleven" -#: ../src/widgets/toolbox.cpp:1822 +#: ../src/widgets/toolbox.cpp:1820 msgid "Snap to grids" msgstr "Aan rasters kleven" -#: ../src/widgets/toolbox.cpp:1831 +#: ../src/widgets/toolbox.cpp:1829 msgid "Snap guides" msgstr "Hulplijnen kleven" #. Width -#: ../src/widgets/tweak-toolbar.cpp:143 +#: ../src/widgets/tweak-toolbar.cpp:139 msgid "(pinch tweak)" msgstr "(precieze boetsering)" -#: ../src/widgets/tweak-toolbar.cpp:143 +#: ../src/widgets/tweak-toolbar.cpp:139 msgid "(broad tweak)" msgstr "(brede boetsering)" -#: ../src/widgets/tweak-toolbar.cpp:146 +#: ../src/widgets/tweak-toolbar.cpp:142 msgid "The width of the tweak area (relative to the visible canvas area)" msgstr "De grootte van het boetseergebied (ten opzichte van het zichtbare canvas)" #. Force -#: ../src/widgets/tweak-toolbar.cpp:160 +#: ../src/widgets/tweak-toolbar.cpp:156 msgid "(minimum force)" msgstr "(minimale kracht)" -#: ../src/widgets/tweak-toolbar.cpp:160 +#: ../src/widgets/tweak-toolbar.cpp:156 msgid "(maximum force)" msgstr "(maximale kracht)" -#: ../src/widgets/tweak-toolbar.cpp:163 +#: ../src/widgets/tweak-toolbar.cpp:159 msgid "Force" msgstr "Kracht" -#: ../src/widgets/tweak-toolbar.cpp:163 +#: ../src/widgets/tweak-toolbar.cpp:159 msgid "Force:" msgstr "Kracht:" -#: ../src/widgets/tweak-toolbar.cpp:163 +#: ../src/widgets/tweak-toolbar.cpp:159 msgid "The force of the tweak action" msgstr "De kracht van de boetseeracties" -#: ../src/widgets/tweak-toolbar.cpp:181 +#: ../src/widgets/tweak-toolbar.cpp:177 msgid "Move mode" msgstr "Modus verplaatsen" -#: ../src/widgets/tweak-toolbar.cpp:182 +#: ../src/widgets/tweak-toolbar.cpp:178 msgid "Move objects in any direction" msgstr "Objecten in elke richting verplaatsen" -#: ../src/widgets/tweak-toolbar.cpp:188 +#: ../src/widgets/tweak-toolbar.cpp:184 msgid "Move in/out mode" msgstr "Modus naar/van cursor verplaatsen" -#: ../src/widgets/tweak-toolbar.cpp:189 +#: ../src/widgets/tweak-toolbar.cpp:185 msgid "Move objects towards cursor; with Shift from cursor" msgstr "Objecten naar cursor verplaatsen; met Shift van de cursor weg" -#: ../src/widgets/tweak-toolbar.cpp:195 +#: ../src/widgets/tweak-toolbar.cpp:191 msgid "Move jitter mode" msgstr "Modus random verplaatsen" -#: ../src/widgets/tweak-toolbar.cpp:196 +#: ../src/widgets/tweak-toolbar.cpp:192 msgid "Move objects in random directions" msgstr "Objecten in random richting verplaatsen" -#: ../src/widgets/tweak-toolbar.cpp:202 +#: ../src/widgets/tweak-toolbar.cpp:198 msgid "Scale mode" msgstr "Modus schalen" -#: ../src/widgets/tweak-toolbar.cpp:203 +#: ../src/widgets/tweak-toolbar.cpp:199 msgid "Shrink objects, with Shift enlarge" msgstr "Objecten verkleinen, met Shift vergroten" -#: ../src/widgets/tweak-toolbar.cpp:209 +#: ../src/widgets/tweak-toolbar.cpp:205 msgid "Rotate mode" msgstr "Modus roteren" -#: ../src/widgets/tweak-toolbar.cpp:210 +#: ../src/widgets/tweak-toolbar.cpp:206 msgid "Rotate objects, with Shift counterclockwise" msgstr "Objecten roteren, met Shift tegen de richting van de klok in" -#: ../src/widgets/tweak-toolbar.cpp:216 +#: ../src/widgets/tweak-toolbar.cpp:212 msgid "Duplicate/delete mode" msgstr "Modus dupliceren/verwijderen" -#: ../src/widgets/tweak-toolbar.cpp:217 +#: ../src/widgets/tweak-toolbar.cpp:213 msgid "Duplicate objects, with Shift delete" msgstr "Objecten dupliceren, met Shift verwijderen" -#: ../src/widgets/tweak-toolbar.cpp:223 +#: ../src/widgets/tweak-toolbar.cpp:219 msgid "Push mode" msgstr "Modus duwen" -#: ../src/widgets/tweak-toolbar.cpp:224 +#: ../src/widgets/tweak-toolbar.cpp:220 msgid "Push parts of paths in any direction" msgstr "Delen van paden in gewenste richting duwen" -#: ../src/widgets/tweak-toolbar.cpp:230 +#: ../src/widgets/tweak-toolbar.cpp:226 msgid "Shrink/grow mode" msgstr "Modus verdunnen/verdikken" -#: ../src/widgets/tweak-toolbar.cpp:231 +#: ../src/widgets/tweak-toolbar.cpp:227 msgid "Shrink (inset) parts of paths; with Shift grow (outset)" msgstr "Delen van paden verdunnen; met Shift verdikken" -#: ../src/widgets/tweak-toolbar.cpp:237 +#: ../src/widgets/tweak-toolbar.cpp:233 msgid "Attract/repel mode" msgstr "Modus aantrekken/afstoten" -#: ../src/widgets/tweak-toolbar.cpp:238 +#: ../src/widgets/tweak-toolbar.cpp:234 msgid "Attract parts of paths towards cursor; with Shift from cursor" msgstr "Delen van paden naar de cursor toe aantrekken; met Shift om van de cursor af te stoten" -#: ../src/widgets/tweak-toolbar.cpp:244 +#: ../src/widgets/tweak-toolbar.cpp:240 msgid "Roughen mode" msgstr "Verruwingsmodus" -#: ../src/widgets/tweak-toolbar.cpp:245 +#: ../src/widgets/tweak-toolbar.cpp:241 msgid "Roughen parts of paths" msgstr "Delen van paden verruwen" -#: ../src/widgets/tweak-toolbar.cpp:251 +#: ../src/widgets/tweak-toolbar.cpp:247 msgid "Color paint mode" msgstr "Verfmodus" -#: ../src/widgets/tweak-toolbar.cpp:252 +#: ../src/widgets/tweak-toolbar.cpp:248 msgid "Paint the tool's color upon selected objects" msgstr "Gekozen kleur over aangewezen objecten verven" -#: ../src/widgets/tweak-toolbar.cpp:258 +#: ../src/widgets/tweak-toolbar.cpp:254 msgid "Color jitter mode" msgstr "Verkleuringsmodus" -#: ../src/widgets/tweak-toolbar.cpp:259 +#: ../src/widgets/tweak-toolbar.cpp:255 msgid "Jitter the colors of selected objects" msgstr "Kleur van de aangewezen objecten veranderen door slepen" -#: ../src/widgets/tweak-toolbar.cpp:265 +#: ../src/widgets/tweak-toolbar.cpp:261 msgid "Blur mode" msgstr "_Mengmodus:" -#: ../src/widgets/tweak-toolbar.cpp:266 +#: ../src/widgets/tweak-toolbar.cpp:262 msgid "Blur selected objects more; with Shift, blur less" msgstr "Geselecteerde objecten meer vervagen; minder vervagen met Shift" -#: ../src/widgets/tweak-toolbar.cpp:293 +#: ../src/widgets/tweak-toolbar.cpp:289 msgid "Channels:" msgstr "Kanalen:" -#: ../src/widgets/tweak-toolbar.cpp:305 +#: ../src/widgets/tweak-toolbar.cpp:301 msgid "In color mode, act on objects' hue" msgstr "Op de tint van het object inwerken (in verfmodi)" #. TRANSLATORS: "H" here stands for hue -#: ../src/widgets/tweak-toolbar.cpp:309 +#: ../src/widgets/tweak-toolbar.cpp:305 msgid "H" msgstr "T" -#: ../src/widgets/tweak-toolbar.cpp:321 +#: ../src/widgets/tweak-toolbar.cpp:317 msgid "In color mode, act on objects' saturation" msgstr "Op de verzadiging van het object inwerken (in verfmodi)" #. TRANSLATORS: "S" here stands for Saturation -#: ../src/widgets/tweak-toolbar.cpp:325 +#: ../src/widgets/tweak-toolbar.cpp:321 msgid "S" msgstr "V" -#: ../src/widgets/tweak-toolbar.cpp:337 +#: ../src/widgets/tweak-toolbar.cpp:333 msgid "In color mode, act on objects' lightness" msgstr "Op de lichtheid van het object inwerken (in verfmodi)" #. TRANSLATORS: "L" here stands for Lightness -#: ../src/widgets/tweak-toolbar.cpp:341 +#: ../src/widgets/tweak-toolbar.cpp:337 msgid "L" msgstr "L" -#: ../src/widgets/tweak-toolbar.cpp:353 +#: ../src/widgets/tweak-toolbar.cpp:349 msgid "In color mode, act on objects' opacity" msgstr "Op de ondoorzichtigheid van het object inwerken (in verfmodi)" #. TRANSLATORS: "O" here stands for Opacity -#: ../src/widgets/tweak-toolbar.cpp:357 +#: ../src/widgets/tweak-toolbar.cpp:353 msgid "O" msgstr "O" #. Fidelity -#: ../src/widgets/tweak-toolbar.cpp:368 +#: ../src/widgets/tweak-toolbar.cpp:364 msgid "(rough, simplified)" msgstr "(ruw, vereenvoudigd)" -#: ../src/widgets/tweak-toolbar.cpp:368 +#: ../src/widgets/tweak-toolbar.cpp:364 msgid "(fine, but many nodes)" msgstr "(fijn, maar veel knooppunten)" -#: ../src/widgets/tweak-toolbar.cpp:371 +#: ../src/widgets/tweak-toolbar.cpp:367 msgid "Fidelity" msgstr "Kwaliteit" -#: ../src/widgets/tweak-toolbar.cpp:371 +#: ../src/widgets/tweak-toolbar.cpp:367 msgid "Fidelity:" msgstr "Kwaliteit:" -#: ../src/widgets/tweak-toolbar.cpp:372 +#: ../src/widgets/tweak-toolbar.cpp:368 msgid "Low fidelity simplifies paths; high fidelity preserves path features but may generate a lot of new nodes" msgstr "Een lage kwaliteit vereenvoudigt paden; een hoge kwaliteit behoudt de padeigenschappen maar kan een groot aantal nieuwe knooppunten genereren" -#: ../src/widgets/tweak-toolbar.cpp:391 +#: ../src/widgets/tweak-toolbar.cpp:387 msgid "Use the pressure of the input device to alter the force of tweak action" msgstr "De op het invoerapparaat uitgeoefende druk gebruiken om de boetseerkracht te variëren" @@ -25973,6 +26031,11 @@ msgstr "Semiperimeter (px): " msgid "Area (px^2): " msgstr "Oppervlak (px^2): " +#: ../share/extensions/dxf_input.py:504 +#, python-format +msgid "%d ENTITIES of type POLYLINE encountered and ignored. Please try to convert to Release 13 format using QCad." +msgstr "" + #: ../share/extensions/dxf_outlines.py:49 msgid "Failed to import the numpy or numpy.linalg modules. These modules are required by this extension. Please install them and try again." msgstr "Laden van de numpy of numpy.linalg modules mislukt. Deze modules zijn nodig voor deze uitbreiding. Installeer deze alstublief en probeer opnieuw." @@ -26249,6 +26312,14 @@ msgstr "Deze uitbreiding vereist ten minste één niet lege laag." msgid "The sliced bitmaps have been saved as:" msgstr "De versneden bitmaps werden bewaard als:" +#: ../share/extensions/hpgl_input.py:59 +msgid "No HPGL data found." +msgstr "" + +#: ../share/extensions/hpgl_input.py:111 +msgid "The HPGL data contained unknown (unsupported) commands, there is a possibility that the drawing is missing some content." +msgstr "" + #: ../share/extensions/inkex.py:133 #, python-format msgid "" @@ -27353,6 +27424,55 @@ msgstr "Selectie verwijderen" msgid "Layer match name" msgstr "Naam van de laag:" +#: ../share/extensions/dxf_outlines.inx.h:9 +msgid "pt" +msgstr "pt" + +#: ../share/extensions/dxf_outlines.inx.h:10 +msgid "pc" +msgstr "pc" + +#: ../share/extensions/dxf_outlines.inx.h:11 +#: ../share/extensions/render_gears.inx.h:7 +msgid "px" +msgstr "px" + +#: ../share/extensions/dxf_outlines.inx.h:12 +#: ../share/extensions/gcodetools_area.inx.h:46 +#: ../share/extensions/gcodetools_dxf_points.inx.h:18 +#: ../share/extensions/gcodetools_engraving.inx.h:24 +#: ../share/extensions/gcodetools_graffiti.inx.h:18 +#: ../share/extensions/gcodetools_lathe.inx.h:39 +#: ../share/extensions/gcodetools_orientation_points.inx.h:11 +#: ../share/extensions/gcodetools_path_to_gcode.inx.h:28 +#: ../share/extensions/render_gears.inx.h:9 +msgid "mm" +msgstr "mm" + +#: ../share/extensions/dxf_outlines.inx.h:13 +msgid "cm" +msgstr "cm" + +#: ../share/extensions/dxf_outlines.inx.h:14 +msgid "m" +msgstr "m" + +#: ../share/extensions/dxf_outlines.inx.h:15 +#: ../share/extensions/gcodetools_area.inx.h:47 +#: ../share/extensions/gcodetools_dxf_points.inx.h:19 +#: ../share/extensions/gcodetools_engraving.inx.h:25 +#: ../share/extensions/gcodetools_graffiti.inx.h:19 +#: ../share/extensions/gcodetools_lathe.inx.h:40 +#: ../share/extensions/gcodetools_orientation_points.inx.h:12 +#: ../share/extensions/gcodetools_path_to_gcode.inx.h:29 +#: ../share/extensions/render_gears.inx.h:8 +msgid "in" +msgstr "duim" + +#: ../share/extensions/dxf_outlines.inx.h:16 +msgid "ft" +msgstr "voet" + #: ../share/extensions/dxf_outlines.inx.h:17 msgid "Latin 1" msgstr "Latijn 1" @@ -27699,30 +27819,6 @@ msgstr "Assen tekenen" msgid "Add x-axis endpoints" msgstr "Eindpunten x-as toevoegen" -#: ../share/extensions/gears.inx.h:1 -msgid "Gear" -msgstr "Tandwiel" - -#: ../share/extensions/gears.inx.h:2 -msgid "Number of teeth:" -msgstr "Aantal tanden:" - -#: ../share/extensions/gears.inx.h:3 -msgid "Circular pitch (tooth size):" -msgstr "" - -#: ../share/extensions/gears.inx.h:4 -msgid "Pressure angle (degrees):" -msgstr "Drukhoek (graden):" - -#: ../share/extensions/gears.inx.h:5 -msgid "Diameter of center hole (0 for none):" -msgstr "Diameter van het centraal gat (0 voro geen):" - -#: ../share/extensions/gears.inx.h:10 -msgid "Unit of measurement for both circular pitch and center diameter." -msgstr "" - #: ../share/extensions/gcodetools_about.inx.h:1 msgid "About" msgstr "Over" @@ -28611,73 +28707,67 @@ msgid "Guides creator" msgstr "Hulplijngenerator" #: ../share/extensions/guides_creator.inx.h:2 -msgid "Preset:" -msgstr "Methode:" +#, fuzzy +msgid "Regular guides" +msgstr "Rechthoekig raster" -# Puntjes worden door programma al toegevoegd. #: ../share/extensions/guides_creator.inx.h:3 -msgid "Custom..." -msgstr "Aangepast" - -#: ../share/extensions/guides_creator.inx.h:4 -msgid "Golden ratio" -msgstr "Gulden snede" - -#: ../share/extensions/guides_creator.inx.h:5 -msgid "Rule-of-third" -msgstr "Regel van derden" +#, fuzzy +msgid "Guides preset" +msgstr "Hulplijngenerator" #: ../share/extensions/guides_creator.inx.h:6 -msgid "Vertical guide each:" -msgstr "Verticale hulplijn elke:" +msgid "Start from edges" +msgstr "Aan randen beginnen" + +#: ../share/extensions/guides_creator.inx.h:7 +msgid "Delete existing guides" +msgstr "Bestaande hulplijnen verwijderen" #: ../share/extensions/guides_creator.inx.h:8 -msgid "1/2" -msgstr "1/2" +#, fuzzy +msgid "Diagonal guides" +msgstr "Hulplijnen kleven" #: ../share/extensions/guides_creator.inx.h:9 -msgid "1/3" -msgstr "1/3" +#, fuzzy +msgid "Upper left corner" +msgstr "paginahoek" #: ../share/extensions/guides_creator.inx.h:10 -msgid "1/4" -msgstr "1/4" +#, fuzzy +msgid "Upper right corner" +msgstr "paginahoek" #: ../share/extensions/guides_creator.inx.h:11 -msgid "1/5" -msgstr "1/5" +#, fuzzy +msgid "Lower left corner" +msgstr "Huidige laag één niveau omlaag brengen" #: ../share/extensions/guides_creator.inx.h:12 -msgid "1/6" -msgstr "1/6" +#, fuzzy +msgid "Lower right corner" +msgstr "Huidige laag één niveau omlaag brengen" #: ../share/extensions/guides_creator.inx.h:13 -msgid "1/7" -msgstr "1/7" +#, fuzzy +msgid "Margins" +msgstr "Marge vak" #: ../share/extensions/guides_creator.inx.h:14 -msgid "1/8" -msgstr "1/8" +#, fuzzy +msgid "Margins preset" +msgstr "Marge hulplijn" #: ../share/extensions/guides_creator.inx.h:15 -msgid "1/9" -msgstr "1/9" +#, fuzzy +msgid "Header margin" +msgstr "Marges" #: ../share/extensions/guides_creator.inx.h:16 -msgid "1/10" -msgstr "1/10" - -#: ../share/extensions/guides_creator.inx.h:17 -msgid "Horizontal guide each:" -msgstr "Horizontale hulplijn elke:" - -#: ../share/extensions/guides_creator.inx.h:18 -msgid "Start from edges" -msgstr "Aan randen beginnen" - -#: ../share/extensions/guides_creator.inx.h:19 -msgid "Delete existing guides" -msgstr "Bestaande hulplijnen verwijderen" +#, fuzzy +msgid "Footer margin" +msgstr "Bovenmarge" #: ../share/extensions/guillotine.inx.h:1 msgid "Guillotine" @@ -30019,6 +30109,10 @@ msgstr "Pagina's per duim (PPI)" msgid "Caliper (inches)" msgstr "Dikte (duim)" +#: ../share/extensions/perfectboundcover.inx.h:11 +msgid "Points" +msgstr "Punten" + #: ../share/extensions/perfectboundcover.inx.h:12 msgid "Bond Weight #" msgstr "Gewichtsnummer" @@ -30458,6 +30552,51 @@ msgstr "H (Ong. 30%)" msgid "Square size (px):" msgstr "Puntgrootte (px):" +#: ../share/extensions/render_gears.inx.h:1 +#: ../share/extensions/render_gear_rack.inx.h:6 +msgid "Gear" +msgstr "Tandwiel" + +#: ../share/extensions/render_gears.inx.h:2 +msgid "Number of teeth:" +msgstr "Aantal tanden:" + +#: ../share/extensions/render_gears.inx.h:3 +msgid "Circular pitch (tooth size):" +msgstr "" + +#: ../share/extensions/render_gears.inx.h:4 +msgid "Pressure angle (degrees):" +msgstr "Drukhoek (graden):" + +#: ../share/extensions/render_gears.inx.h:5 +msgid "Diameter of center hole (0 for none):" +msgstr "Diameter van het centraal gat (0 voro geen):" + +#: ../share/extensions/render_gears.inx.h:10 +msgid "Unit of measurement for both circular pitch and center diameter." +msgstr "" + +#: ../share/extensions/render_gear_rack.inx.h:1 +#, fuzzy +msgid "Rack Gear" +msgstr "Tandwiel" + +#: ../share/extensions/render_gear_rack.inx.h:2 +#, fuzzy +msgid "Rack Length:" +msgstr "Lengte:" + +#: ../share/extensions/render_gear_rack.inx.h:3 +#, fuzzy +msgid "Tooth Spacing:" +msgstr "Horizontale tussenruimte:" + +#: ../share/extensions/render_gear_rack.inx.h:4 +#, fuzzy +msgid "Contact Angle:" +msgstr "Contactdriehoek" + #: ../share/extensions/replace_font.inx.h:1 msgid "Replace font" msgstr "Lettertype vervangen" @@ -30540,6 +30679,7 @@ msgstr "Horizontaal punt:" #: ../share/extensions/restack.inx.h:13 #: ../share/extensions/text_extract.inx.h:9 +#: ../share/extensions/text_merge.inx.h:9 msgid "Middle" msgstr "Midden" @@ -30549,11 +30689,13 @@ msgstr "Verticaal punt:" #: ../share/extensions/restack.inx.h:16 #: ../share/extensions/text_extract.inx.h:12 +#: ../share/extensions/text_merge.inx.h:12 msgid "Top" msgstr "Boven" #: ../share/extensions/restack.inx.h:17 #: ../share/extensions/text_extract.inx.h:13 +#: ../share/extensions/text_merge.inx.h:13 msgid "Bottom" msgstr "Onderaan" @@ -31085,30 +31227,37 @@ msgid "Extract" msgstr "Extraheren" #: ../share/extensions/text_extract.inx.h:2 +#: ../share/extensions/text_merge.inx.h:2 msgid "Text direction:" msgstr "Tekstrichting:" #: ../share/extensions/text_extract.inx.h:3 +#: ../share/extensions/text_merge.inx.h:3 msgid "Left to right" msgstr "Links naar rechts" #: ../share/extensions/text_extract.inx.h:4 +#: ../share/extensions/text_merge.inx.h:4 msgid "Bottom to top" msgstr "Onder naar boven" #: ../share/extensions/text_extract.inx.h:5 +#: ../share/extensions/text_merge.inx.h:5 msgid "Right to left" msgstr "Rechts naar links" #: ../share/extensions/text_extract.inx.h:6 +#: ../share/extensions/text_merge.inx.h:6 msgid "Top to bottom" msgstr "Boven naar onder" #: ../share/extensions/text_extract.inx.h:7 +#: ../share/extensions/text_merge.inx.h:7 msgid "Horizontal point:" msgstr "Horizontaal punt:" #: ../share/extensions/text_extract.inx.h:11 +#: ../share/extensions/text_merge.inx.h:11 msgid "Vertical point:" msgstr "Verticaal punt:" @@ -31129,6 +31278,16 @@ msgstr "Hoofdlettergebruik" msgid "lowercase" msgstr "kleine letters" +#: ../share/extensions/text_merge.inx.h:14 +#, fuzzy +msgid "Flow text" +msgstr "Ingekaderde tekst" + +#: ../share/extensions/text_merge.inx.h:15 +#, fuzzy +msgid "Keep style" +msgstr "Tekststijl instellen" + #: ../share/extensions/text_randomcase.inx.h:1 msgid "rANdOm CasE" msgstr "wiLLeKeURige hOofDleTteRs" @@ -31643,33 +31802,114 @@ msgstr "Een populair bestandsformaat voor clipart" msgid "XAML Input" msgstr "XAML-invoer" -#~ msgid "Crop:" -#~ msgstr "Afsnijden:" -#~ msgid "Red:" -#~ msgstr "Rood:" -#~ msgid "Green:" -#~ msgstr "Groen:" -#~ msgid "Blue:" -#~ msgstr "Blauw:" -#~ msgid "Lightness:" -#~ msgstr "Lichtheid:" -#~ msgid "Alpha:" -#~ msgstr "Alfa:" -#~ msgid "Level:" -#~ msgstr "Niveau:" -#~ msgid "Contrast:" -#~ msgstr "Contrast:" -#~ msgid "Colors:" -#~ msgstr "Kleuren:" -#~ msgid "Simplify:" -#~ msgstr "Vereenvoudigen:" -#~ msgid "Blur:" -#~ msgstr "Vervaging:" -#~ msgid "Select only one group to convert to symbol." -#~ msgstr "Selecteer slechts één groep om naar symbool te converteren." -#~ msgid "Select original (Shift+D) to convert to symbol." +#~ msgid "Pt" +#~ msgstr "Pt" +#~ msgid "Picas" +#~ msgstr "Pica's" +#~ msgid "Pc" +#~ msgstr "Pc" +#~ msgid "Pixels" +#~ msgstr "Pixels" +#~ msgid "Px" +#~ msgstr "Px" +#~ msgid "Percent" +#~ msgstr "Procent" +#~ msgid "Percents" +#~ msgstr "Procent" +#~ msgid "Millimeters" +#~ msgstr "Millimeter" +#~ msgid "Centimeters" +#~ msgstr "Centimeter" +#~ msgid "Meter" +#~ msgstr "Meter" +#~ msgid "Meters" +#~ msgstr "Meter" +#~ msgid "Inches" +#~ msgstr "Duim" +#~ msgid "Foot" +#~ msgstr "voet" +#~ msgid "Feet" +#~ msgstr "voet" +#~ msgid "em" +#~ msgstr "em" +#~ msgid "Em squares" +#~ msgstr "Em kwadraat" +#~ msgid "Ex square" +#~ msgstr "Ex kwadraat" +#~ msgid "ex" +#~ msgstr "ex" +#~ msgid "Ex squares" +#~ msgstr "Ex kwadraat" +#~ msgid "Name by which this document is formally known" +#~ msgstr "De naam waaronder dit document officieel bekend is" +#~ msgid "Date associated with the creation of this document (YYYY-MM-DD)" +#~ msgstr "Datum waarop dit document is aangemaakt (JJJJ-MM-DD)" +#~ msgid "The physical or digital manifestation of this document (MIME type)" +#~ msgstr "" +#~ "De fysieke of digitale verschijningsvorm van dit document (MIME-type)" +#~ msgid "Type of document (DCMI Type)" +#~ msgstr "Documenttype (DCMI-type)" +#~ msgid "" +#~ "Name of entity with rights to the Intellectual Property of this document" +#~ msgstr "" +#~ "Naam van instantie van wie dit document het intellectueel eigendom is" +#~ msgid "Unique URI to reference this document" +#~ msgstr "Een unieke URI om aan dit document te refereren" +#~ msgid "Unique URI to reference the source of this document" +#~ msgstr "Een unieke URI om aan de bron van dit document te refereren" +#~ msgid "Unique URI to a related document" +#~ msgstr "Een unieke URI naar een gerelateerd document" +#~ msgid "" +#~ "Two-letter language tag with optional subtags for the language of this " +#~ "document (e.g. 'en-GB')" +#~ msgstr "" +#~ "Een tweeletterige aanduiding (met optionele subaanduiding) van de taal " +#~ "van dit document (bijvoorbeeld 'nl-NL')" +#~ msgid "" +#~ "The topic of this document as comma-separated key words, phrases, or " +#~ "classifications" +#~ msgstr "" +#~ "Het onderwerp van dit document als losse woorden of zinnetjes, gescheiden " +#~ "door komma's" +#~ msgid "Extent or scope of this document" +#~ msgstr "Dekking of lading van dit document" +#~ msgid "Allow relative coordinates" +#~ msgstr "Relatieve coördinaten toestaan" +#~ msgid "If set, relative coordinates may be used in path data" #~ msgstr "" -#~ "Selecteer origineel (Shift+D) om naar symbool te converteren." -#~ msgid "Z:" -#~ msgstr "Z:" +#~ "Indien aangevinkt, kunnen relatieve coördinaten gebruikt worden in paddata" +#~ msgid "_Execute Javascript" +#~ msgstr "_Javascript uitvoeren" +#~ msgid "_Execute Python" +#~ msgstr "_Python uitvoeren" +#~ msgid "_Execute Ruby" +#~ msgstr "_Ruby uitvoeren" +#~ msgid "Script" +#~ msgstr "Script" +#~ msgid "Output" +#~ msgstr "Uitvoer" +#~ msgid "Errors" +#~ msgstr "Fouten" +#~ msgid "Preview scale: " +#~ msgstr "Schaal voorvertoning: " +#~ msgid "Fit" +#~ msgstr "Aanpassen" +#~ msgid "Fit to width" +#~ msgstr "Aanpassen aan breedte" +#~ msgid "Fit to height" +#~ msgstr "Aanpassen aan hoogte" +#~ msgid "Preview size: " +#~ msgstr "Grootte voorvertoning: " +#~ msgid "S_cripts..." +#~ msgstr "S_cripts..." +#~ msgid "Run scripts" +#~ msgstr "Scripts uitvoeren" +#~ msgid "_Start Markers:" +#~ msgstr "_Beginmarkering:" +#~ msgid "_Mid Markers:" +#~ msgstr "_Middenmarkering:" +#~ msgid "_End Markers:" +#~ msgstr "_Eindmarkering:" +#~ msgid "Preset:" +#~ msgstr "Methode:" -- cgit v1.2.3 From 803e249e999ab90caf2e3d61cc6782aa7dd3caba Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Sun, 15 Sep 2013 15:00:40 -0400 Subject: Fix document unit change for transformed flow text and transformed text on path. (bzr r12475.1.18) --- src/sp-flowtext.cpp | 8 +++++++- src/sp-flowtext.h | 6 ++++++ src/sp-item-group.cpp | 25 +++++++++++++++++-------- 3 files changed, 30 insertions(+), 9 deletions(-) diff --git a/src/sp-flowtext.cpp b/src/sp-flowtext.cpp index 304d749c2..4fc922a82 100644 --- a/src/sp-flowtext.cpp +++ b/src/sp-flowtext.cpp @@ -86,6 +86,8 @@ sp_flowtext_init(SPFlowtext *group) { group->par_indent = 0; new (&group->layout) Inkscape::Text::Layout(); + + group->_optimizeScaledText = false; } static void @@ -706,9 +708,13 @@ SPItem *create_flowtext_with_internal_frame (SPDesktop *desktop, Geom::Point p0, static Geom::Affine sp_flowtext_set_transform (SPItem *item, Geom::Affine const &xform) { - if (!xform.isNonzeroUniformScale()) { + SPFlowtext *ft = SP_FLOWTEXT(item); + if ((ft->_optimizeScaledText && !xform.withoutTranslation().isNonzeroUniformScale()) + || (!ft->_optimizeScaledText && !xform.isNonzeroUniformScale())) { + ft->_optimizeScaledText = false; return xform; } + ft->_optimizeScaledText = false; SPText *text = reinterpret_cast(item); diff --git a/src/sp-flowtext.h b/src/sp-flowtext.h index 944503a1e..6857f5760 100644 --- a/src/sp-flowtext.h +++ b/src/sp-flowtext.h @@ -43,6 +43,12 @@ struct SPFlowtext : public SPItem { double par_indent; + bool _optimizeScaledText; + + /** Optimize scaled flow text on next set_transform. */ + void optimizeScaledText() + {_optimizeScaledText = true;} + private: /** Recursively walks the xml tree adding tags and their contents. */ void _buildLayoutInput(SPObject *root, Shape const *exclusion_shape, std::list *shapes, SPObject **pending_line_break_object); diff --git a/src/sp-item-group.cpp b/src/sp-item-group.cpp index be62764c3..1b8af43e1 100644 --- a/src/sp-item-group.cpp +++ b/src/sp-item-group.cpp @@ -51,8 +51,8 @@ #include "sp-defs.h" #include "verbs.h" #include "layer-model.h" -#include "selection-chemistry.h" #include "sp-textpath.h" +#include "sp-flowtext.h" using Inkscape::DocumentUndo; @@ -585,18 +585,27 @@ void SPGroup::scaleChildItemsRec(Geom::Scale const &sc, Geom::Point const &p) old_center = item->getCenter(); } - if (SP_IS_TEXT_TEXTPATH(item) && item->transform.isIdentity()) { - if (item->transform.isIdentity()) { - SP_TEXT(item)->optimizeTextpathText(); - } else { - // TODO: transformed text on textpath - } + if (SP_IS_TEXT_TEXTPATH(item)) { + SP_TEXT(item)->optimizeTextpathText(); + } else if (SP_IS_FLOWTEXT(item)) { + SP_FLOWTEXT(item)->optimizeScaledText(); } else if (SP_IS_BOX3D(item)) { // Force recalculation from perspective box3d_position_set(SP_BOX3D(item)); } - if (SP_IS_USE(item)) { + if ((SP_IS_TEXT_TEXTPATH(item) || SP_IS_FLOWTEXT(item)) && !item->transform.isIdentity()) { + // Save and reset current transform + Geom::Affine tmp(item->transform); + item->transform = Geom::Affine(); + // Apply scale + item->set_i2d_affine(item->i2dt_affine() * sc); + item->doWriteTransform(item->getRepr(), item->transform, NULL, true); + // Scale translation and restore original transform + tmp[4] *= sc[0]; + tmp[5] *= sc[1]; + item->doWriteTransform(item->getRepr(), tmp, NULL, true); + } else if (SP_IS_USE(item)) { // calculate the matrix we need to apply to the clone // to cancel its induced transform from its original Geom::Affine move = final.inverse() * item->transform * final; -- cgit v1.2.3 From d3b5c51c6781c24933d941f26abe5a4b5cd9ccdb Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Sun, 15 Sep 2013 15:23:28 -0400 Subject: Fix document unit change for disconnected connectors. (bzr r12475.1.19) --- src/sp-item-group.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/sp-item-group.cpp b/src/sp-item-group.cpp index 1b8af43e1..e355c6cea 100644 --- a/src/sp-item-group.cpp +++ b/src/sp-item-group.cpp @@ -585,6 +585,7 @@ void SPGroup::scaleChildItemsRec(Geom::Scale const &sc, Geom::Point const &p) old_center = item->getCenter(); } + gchar const *conn_type = NULL; if (SP_IS_TEXT_TEXTPATH(item)) { SP_TEXT(item)->optimizeTextpathText(); } else if (SP_IS_FLOWTEXT(item)) { @@ -592,6 +593,12 @@ void SPGroup::scaleChildItemsRec(Geom::Scale const &sc, Geom::Point const &p) } else if (SP_IS_BOX3D(item)) { // Force recalculation from perspective box3d_position_set(SP_BOX3D(item)); + } else if (item->getAttribute("inkscape:connector-type") != NULL + && (item->getAttribute("inkscape:connection-start") == NULL + || item->getAttribute("inkscape:connection-end") == NULL)) { + // Remove and store connector type for transform if disconnected + conn_type = item->getAttribute("inkscape:connector-type"); + item->removeAttribute("inkscape:connector-type"); } if ((SP_IS_TEXT_TEXTPATH(item) || SP_IS_FLOWTEXT(item)) && !item->transform.isIdentity()) { @@ -615,6 +622,10 @@ void SPGroup::scaleChildItemsRec(Geom::Scale const &sc, Geom::Point const &p) item->doWriteTransform(item->getRepr(), item->transform, NULL, true); } + if (conn_type != NULL) { + item->setAttribute("inkscape:connector-type", conn_type); + } + if (item->isCenterSet() && !(final.isTranslation() || final.isIdentity())) { item->setCenter(old_center * final); item->updateRepr(); -- cgit v1.2.3 From 54482403aebd77dc3fadcc5cc99740defda51aeb Mon Sep 17 00:00:00 2001 From: Diederik van Lierop <> Date: Sun, 15 Sep 2013 21:27:42 +0200 Subject: Scale rendering of pattern fill of text when chaning zoom level; partial fix for blocker bug #1005892; this reinstates a line that was commented out in rev. 12488 Fixed bugs: - https://launchpad.net/bugs/1005892 (bzr r12523) --- src/display/drawing-text.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/display/drawing-text.cpp b/src/display/drawing-text.cpp index 234006983..55d54b770 100644 --- a/src/display/drawing-text.cpp +++ b/src/display/drawing-text.cpp @@ -441,7 +441,7 @@ unsigned DrawingText::_renderItem(DrawingContext &ct, Geom::IntRect const &/*are } Inkscape::DrawingContext::Save save(ct); -// ct.transform(_ctm); // Seems to work fine without this line, which was in the original. + ct.transform(_ctm); // For one thing, this is needed to scale a fill-pattern when zooming in if (has_fill) { _nrstyle.applyFill(ct); ct.fillPreserve(); -- cgit v1.2.3 From 25e63ea5e5cd74220b51d3946808573bd3b4b3bf Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Sun, 15 Sep 2013 15:52:57 -0400 Subject: Improved code readability. (bzr r12475.1.21) --- src/extension/internal/emf-inout.cpp | 4 ++-- src/extension/internal/emf-print.cpp | 2 +- src/extension/internal/wmf-inout.cpp | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/extension/internal/emf-inout.cpp b/src/extension/internal/emf-inout.cpp index b185d3348..ab8a1ab64 100644 --- a/src/extension/internal/emf-inout.cpp +++ b/src/extension/internal/emf-inout.cpp @@ -1799,8 +1799,8 @@ std::cout << "BEFORE DRAW" d->MMX = d->MM100InX / 100.0; d->MMY = d->MM100InY / 100.0; - d->PixelsOutX = d->MMX * Inkscape::Util::Quantity::convert(1, "mm", "px"); - d->PixelsOutY = d->MMY * Inkscape::Util::Quantity::convert(1, "mm", "px"); + d->PixelsOutX = Inkscape::Util::Quantity::convert(d->MMX, "mm", "px"); + d->PixelsOutY = Inkscape::Util::Quantity::convert(d->MMY, "mm", "px"); // Upper left corner, from header rclBounds, in device units, usually both 0, but not always d->ulCornerInX = pEmr->rclBounds.left; diff --git a/src/extension/internal/emf-print.cpp b/src/extension/internal/emf-print.cpp index bb5625ef3..7fb24a317 100644 --- a/src/extension/internal/emf-print.cpp +++ b/src/extension/internal/emf-print.cpp @@ -242,7 +242,7 @@ unsigned int PrintEmf::begin(Inkscape::Extension::Print *mod, SPDocument *doc) g_error("Fatal programming error in PrintEmf::begin at textcomment_set 1"); } - snprintf(buff, sizeof(buff) - 1, "Drawing=%.1lfx%.1lfpx, %.1lfx%.1lfmm", _width, _height, dwInchesX * Inkscape::Util::Quantity::convert(1, "in", "mm"), dwInchesY * Inkscape::Util::Quantity::convert(1, "in", "mm")); + snprintf(buff, sizeof(buff) - 1, "Drawing=%.1lfx%.1lfpx, %.1lfx%.1lfmm", _width, _height, Inkscape::Util::Quantity::convert(dwInchesX, "in", "mm"), Inkscape::Util::Quantity::convert(dwInchesY, "in", "mm")); rec = textcomment_set(buff); if (!rec || emf_append((PU_ENHMETARECORD)rec, et, U_REC_FREE)) { g_error("Fatal programming error in PrintEmf::begin at textcomment_set 1"); diff --git a/src/extension/internal/wmf-inout.cpp b/src/extension/internal/wmf-inout.cpp index 451d94c0e..373138187 100644 --- a/src/extension/internal/wmf-inout.cpp +++ b/src/extension/internal/wmf-inout.cpp @@ -1742,8 +1742,8 @@ int Wmf::myMetaFileProc(const char *contents, unsigned int length, PWMF_CALLBACK tmp_outdef << " version=\"1.0\"\n"; tmp_outdef << - " width=\"" << d->PixelsOutX/ Inkscape::Util::Quantity::convert(1, "mm", "px") << "mm\"\n" << - " height=\"" << d->PixelsOutY/ Inkscape::Util::Quantity::convert(1, "mm", "px") << "mm\">\n"; + " width=\"" << Inkscape::Util::Quantity::convert(d->PixelsOutX, "px", "mm") << "mm\"\n" << + " height=\"" << Inkscape::Util::Quantity::convert(d->PixelsOutY, "px", "mm") << "mm\">\n"; *(d->outdef) += tmp_outdef.str().c_str(); *(d->outdef) += ""; // temporary end of header -- cgit v1.2.3 From 5dc7ab56d1f8bf9b51367702e13788f8eea00aaf Mon Sep 17 00:00:00 2001 From: Slagvi Public Date: Sun, 15 Sep 2013 21:58:27 +0200 Subject: Removed search templates case sensitivity (bzr r12481.1.4) --- src/ui/dialog/template-load-tab.cpp | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/src/ui/dialog/template-load-tab.cpp b/src/ui/dialog/template-load-tab.cpp index 11511d7fc..ababd4ca3 100644 --- a/src/ui/dialog/template-load-tab.cpp +++ b/src/ui/dialog/template-load-tab.cpp @@ -156,7 +156,7 @@ void TemplateLoadTab::_refreshTemplatesList() case LIST_KEYWORD: { for (std::map::iterator it = _tdata.begin() ; it != _tdata.end() ; ++it) { - if (it->second.keywords.count(_current_keyword) != 0){ + if (it->second.keywords.count(_current_keyword.lowercase()) != 0){ Gtk::TreeModel::iterator iter = _tlist_store->append(); Gtk::TreeModel::Row row = *iter; row[_columns.textValue] = it->first; @@ -167,11 +167,11 @@ void TemplateLoadTab::_refreshTemplatesList() case USER_SPECIFIED : { for (std::map::iterator it = _tdata.begin() ; it != _tdata.end() ; ++it) { - if (it->second.keywords.count(_current_keyword) != 0 || - it->second.display_name.find(_current_keyword) != Glib::ustring::npos || - it->second.author.find(_current_keyword) != Glib::ustring::npos || - it->second.short_description.find(_current_keyword) != Glib::ustring::npos || - it->second.long_description.find(_current_keyword) != Glib::ustring::npos ) + if (it->second.keywords.count(_current_keyword.lowercase()) != 0 || + it->second.display_name.lowercase().find(_current_keyword.lowercase()) != Glib::ustring::npos || + it->second.author.lowercase().find(_current_keyword.lowercase()) != Glib::ustring::npos || + it->second.short_description.lowercase().find(_current_keyword.lowercase()) != Glib::ustring::npos || + it->second.long_description.lowercase().find(_current_keyword.lowercase()) != Glib::ustring::npos ) { Gtk::TreeModel::iterator iter = _tlist_store->append(); Gtk::TreeModel::Row row = *iter; @@ -192,7 +192,6 @@ void TemplateLoadTab::_loadTemplates() // system templates dir _getTemplatesFromDir(INKSCAPE_TEMPLATESDIR + _loading_path); - // procedural templates _getProceduralTemplates(); } @@ -305,8 +304,8 @@ void TemplateLoadTab::_getDataFromNode(Inkscape::XML::Node *dataNode, TemplateDa pos = tplKeywords.size(); Glib::ustring keyword = dgettext("Document template keyword", tplKeywords.substr(0, pos).data()); - data.keywords.insert(keyword); - _keywords.insert(keyword); + data.keywords.insert(keyword.lowercase()); + _keywords.insert(keyword.lowercase()); if (pos == tplKeywords.size()) break; -- cgit v1.2.3 From 523f92bd16b0d52ae108929dd6568b890bcdb573 Mon Sep 17 00:00:00 2001 From: Slagvi Public Date: Sun, 15 Sep 2013 22:01:39 +0200 Subject: Added auto installing empty_page extension (bzr r12481.1.5) --- share/extensions/Makefile.am | 2 ++ 1 file changed, 2 insertions(+) diff --git a/share/extensions/Makefile.am b/share/extensions/Makefile.am index d9597b33f..3e5455b2e 100644 --- a/share/extensions/Makefile.am +++ b/share/extensions/Makefile.am @@ -54,6 +54,7 @@ extensions = \ edge3d.py \ embedimage.py \ embed_raster_in_svg.pl \ + empty_page.py \ eqtexsvg.py \ export_gimp_palette.py \ extractimage.py \ @@ -236,6 +237,7 @@ modules = \ edge3d.inx \ embedimage.inx \ embedselectedimages.inx \ + empty_page.inx \ eps_input.inx \ eqtexsvg.inx \ export_gimp_palette.inx \ -- cgit v1.2.3 From 96ada89a33df01376c60261f4046be52d7db185e Mon Sep 17 00:00:00 2001 From: Alvin Penner Date: Sun, 15 Sep 2013 16:09:57 -0400 Subject: Path->Inset trial 2. revert rev 12279. (fix Bug 1218333) Fixed bugs: - https://launchpad.net/bugs/1218333 (bzr r12524) --- src/livarot/ShapeSweep.cpp | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/src/livarot/ShapeSweep.cpp b/src/livarot/ShapeSweep.cpp index 1954139fa..b04b36bfd 100644 --- a/src/livarot/ShapeSweep.cpp +++ b/src/livarot/ShapeSweep.cpp @@ -2672,8 +2672,7 @@ Shape::TesteAdjacency (Shape * a, int no, const Geom::Point atx, int nPt, double e = IHalfRound ((cross (diff,adir)) * a->eData[no].isqlength); if (-3 < e && e < 3) { - double rad = HalfRound (1); -// double rad = HalfRound (0.501); // when using single precision, 0.505 is better (0.5 would be the correct value, + double rad = HalfRound (0.501); // when using single precision, 0.505 is better (0.5 would be the correct value, // but it produces lots of bugs) diff1[0] = diff[0] - rad; diff1[1] = diff[1] - rad; @@ -2741,8 +2740,7 @@ Shape::CheckAdjacencies (int lastPointNo, int lastChgtPt, Shape * /*shapeHead*/, if (TesteAdjacency (lS, lB, getPoint(n).x, n, false) == false) break; - if (getPoint(lS->swsData[lB].leftRnd).x[0] > getPoint(n).x[0] + HalfRound (1)) // LP Bug 614577 - lS->swsData[lB].leftRnd = n; + lS->swsData[lB].leftRnd = n; } for (int n = rgtN + 1; n < lastPointNo; n++) { @@ -2768,8 +2766,7 @@ Shape::CheckAdjacencies (int lastPointNo, int lastChgtPt, Shape * /*shapeHead*/, if (TesteAdjacency (rS, rB, getPoint(n).x, n, false) == false) break; - if (getPoint(rS->swsData[rB].leftRnd).x[0] > getPoint(n).x[0] + HalfRound (1)) // LP Bug 614577 - rS->swsData[rB].leftRnd = n; + rS->swsData[rB].leftRnd = n; } for (int n = rgtN + 1; n < lastPointNo; n++) { -- cgit v1.2.3 From fbaf8db2eb5c15ac84348f9e9de3303c78860f62 Mon Sep 17 00:00:00 2001 From: Slagvi Public Date: Sun, 15 Sep 2013 22:36:28 +0200 Subject: Fixed available undo after new template creation. (bzr r12481.1.6) --- src/ui/dialog/template-widget.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/ui/dialog/template-widget.cpp b/src/ui/dialog/template-widget.cpp index 21ea709f2..6ead7ef8d 100644 --- a/src/ui/dialog/template-widget.cpp +++ b/src/ui/dialog/template-widget.cpp @@ -24,6 +24,9 @@ #include "inkscape.h" #include "desktop.h" +#include "desktop-handles.h" +#include "document.h" +#include "document-undo.h" namespace Inkscape { namespace UI { @@ -66,6 +69,7 @@ void TemplateWidget::create() if (_current_template.is_procedural){ SPDesktop *desc = sp_file_new_default(); _current_template.tpl_effect->effect(desc); + DocumentUndo::clearUndo(sp_desktop_document(desc)); } else { sp_file_new(_current_template.path); -- cgit v1.2.3 From bd94128f84bc367d11815c53347eb8d5b5557c5e Mon Sep 17 00:00:00 2001 From: Slagvi Public Date: Sun, 15 Sep 2013 23:18:47 +0200 Subject: Fix procedural templates "modified" status. (bzr r12481.1.7) --- po/inkscape.pot | 32027 ------------------------------------ src/ui/dialog/template-widget.cpp | 1 + 2 files changed, 1 insertion(+), 32027 deletions(-) delete mode 100644 po/inkscape.pot diff --git a/po/inkscape.pot b/po/inkscape.pot deleted file mode 100644 index bc6a53be2..000000000 --- a/po/inkscape.pot +++ /dev/null @@ -1,32027 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -#: ../share/filters/filters.svg.h:1 -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: inkscape-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2013-06-27 21:15+0200\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" -"Language: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n" - -#: ../inkscape.desktop.in.h:1 -msgid "Inkscape" -msgstr "" - -#: ../inkscape.desktop.in.h:2 -msgid "Vector Graphics Editor" -msgstr "" - -#: ../inkscape.desktop.in.h:3 -msgid "Inkscape Vector Graphics Editor" -msgstr "" - -#: ../inkscape.desktop.in.h:4 -msgid "Create and edit Scalable Vector Graphics images" -msgstr "" - -#: ../inkscape.desktop.in.h:5 -msgid "New Drawing" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Smart Jelly" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -#: ../src/extension/internal/filter/bevels.h:63 -#: ../src/extension/internal/filter/bevels.h:144 -#: ../src/extension/internal/filter/bevels.h:228 -msgid "Bevels" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Same as Matte jelly but with more controls" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Metal Casting" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Smooth drop-like bevel with metallic finish" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Apparition" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -#: ../src/extension/internal/filter/blurs.h:63 -#: ../src/extension/internal/filter/blurs.h:132 -#: ../src/extension/internal/filter/blurs.h:201 -#: ../src/extension/internal/filter/blurs.h:267 -#: ../src/extension/internal/filter/blurs.h:351 -msgid "Blurs" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Edges are partly feathered out" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Jigsaw Piece" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Low, sharp bevel" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Rubber Stamp" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -#: ../src/extension/internal/filter/overlays.h:80 -msgid "Overlays" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Random whiteouts inside" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Ink Bleed" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Protrusions" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Inky splotches underneath the object" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Fire" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Edges of object are on fire" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Bloom" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Soft, cushion-like bevel with matte highlights" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Ridged Border" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Ridged border with inner bevel" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Ripple" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -#: ../src/extension/internal/filter/distort.h:96 -#: ../src/extension/internal/filter/distort.h:205 -msgid "Distort" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Horizontal rippling of edges" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Speckle" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Fill object with sparse translucent specks" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Oil Slick" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Rainbow-colored semitransparent oily splotches" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Frost" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Flake-like white splotches" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Leopard Fur" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Materials" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Leopard spots (loses object's own color)" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Zebra" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Irregular vertical dark stripes (loses object's own color)" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Clouds" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Airy, fluffy, sparse white clouds" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -#: ../src/extension/internal/bitmap/sharpen.cpp:38 -msgid "Sharpen" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -#: ../src/extension/internal/filter/image.h:62 -msgid "Image Effects" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Sharpen edges and boundaries within the object, force=0.15" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Sharpen More" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Sharpen edges and boundaries within the object, force=0.3" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Oil painting" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -#: ../src/extension/internal/filter/paint.h:113 -#: ../src/extension/internal/filter/paint.h:244 -#: ../src/extension/internal/filter/paint.h:363 -#: ../src/extension/internal/filter/paint.h:507 -#: ../src/extension/internal/filter/paint.h:602 -#: ../src/extension/internal/filter/paint.h:725 -#: ../src/extension/internal/filter/paint.h:877 -#: ../src/extension/internal/filter/paint.h:981 -msgid "Image Paint and Draw" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Simulate oil painting style" -msgstr "" - -#. Pencil -#: ../share/filters/filters.svg.h:1 -#: ../src/ui/dialog/inkscape-preferences.cpp:415 -msgid "Pencil" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Detect color edges and retrace them in grayscale" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Blueprint" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Detect color edges and retrace them in blue" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Age" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Imitate aged photograph" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Organic" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Textures" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Bulging, knotty, slick 3D surface" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Barbed Wire" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Gray bevelled wires with drop shadows" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Swiss Cheese" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Random inner-bevel holes" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Blue Cheese" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Marble-like bluish speckles" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Button" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Soft bevel, slightly depressed middle" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Inset" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -#: ../src/extension/internal/filter/shadows.h:81 -msgid "Shadows and Glows" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Shadowy outer bevel" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Dripping" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Random paint streaks downwards" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Jam Spread" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Glossy clumpy jam spread" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Pixel Smear" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Van Gogh painting effect for bitmaps" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Cracked Glass" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Under a cracked glass" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Bubbly Bumps" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -#: ../src/extension/internal/filter/bumps.h:142 -#: ../src/extension/internal/filter/bumps.h:362 -msgid "Bumps" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Flexible bubbles effect with some displacement" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Glowing Bubble" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Ridges" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Bubble effect with refraction and glow" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Neon" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Neon light effect" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Molten Metal" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Melting parts of object together, with a glossy bevel and a glow" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Pressed Steel" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Pressed metal with a rolled edge" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Matte Bevel" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Soft, pastel-colored, blurry bevel" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Thin Membrane" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Thin like a soap membrane" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Matte Ridge" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Soft pastel ridge" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Glowing Metal" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Glowing metal texture" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Leaves" -msgstr "" - -#: ../share/filters/filters.svg.h:1 ../share/extensions/pathscatter.inx.h:1 -msgid "Scatter" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Leaves on the ground in Fall, or living foliage" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -#: ../src/extension/internal/filter/paint.h:339 -msgid "Translucent" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Illuminated translucent plastic or glass effect" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Iridescent Beeswax" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Waxy texture which keeps its iridescence through color fill change" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Eroded Metal" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Eroded metal texture with ridges, grooves, holes and bumps" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Cracked Lava" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "A volcanic texture, a little like leather" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Bark" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Bark texture, vertical; use with deep colors" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Lizard Skin" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Stylized reptile skin texture" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Stone Wall" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Stone wall texture to use with not too saturated colors" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Silk Carpet" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Silk carpet texture, horizontal stripes" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Refractive Gel A" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Gel effect with light refraction" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Refractive Gel B" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Gel effect with strong refraction" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Metallized Paint" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "" -"Metallized effect with a soft lighting, slightly translucent at the edges" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Dragee" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Gel Ridge with a pearlescent look" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Raised Border" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Strongly raised border around a flat surface" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Metallized Ridge" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Gel Ridge metallized at its top" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Fat Oil" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Fat oil with some adjustable turbulence" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Black Hole" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -#: ../src/extension/internal/filter/morphology.h:76 -#: ../src/extension/internal/filter/morphology.h:203 -#: ../src/filter-enums.cpp:31 -msgid "Morphology" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Creates a black light inside and outside" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Cubes" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Scattered cubes; adjust the Morphology primitive to vary size" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Peel Off" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Peeling painting on a wall" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Gold Splatter" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Splattered cast metal, with golden highlights" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Gold Paste" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Fat pasted cast metal, with golden highlights" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Crumpled Plastic" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Crumpled matte plastic, with melted edge" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Enamel Jewelry" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Slightly cracked enameled texture" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Rough Paper" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Aquarelle paper effect which can be used for pictures as for objects" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Rough and Glossy" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "" -"Crumpled glossy paper effect which can be used for pictures as for objects" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "In and Out" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Inner colorized shadow, outer black shadow" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Air Spray" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Convert to small scattered particles with some thickness" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Warm Inside" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Blurred colorized contour, filled inside" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Cool Outside" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Blurred colorized contour, empty inside" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Electronic Microscopy" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "" -"Bevel, crude light, discoloration and glow like in electronic microscopy" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Tartan" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Checkered tartan pattern" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Shaken Liquid" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Colorizable filling with flow inside like transparency" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Soft Focus Lens" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Glowing image content without blurring it" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Stained Glass" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Illuminated stained glass effect" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Dark Glass" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Illuminated glass effect with light coming from beneath" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "HSL Bumps Alpha" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Same as HSL Bumps but with transparent highlights" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Bubbly Bumps Alpha" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Same as Bubbly Bumps but with transparent highlights" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Torn Edges" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "" -"Displace the outside of shapes and pictures without altering their content" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Roughen Inside" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Roughen all inside shapes" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Evanescent" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "" -"Blur the contents of objects, preserving the outline and adding progressive " -"transparency at edges" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Chalk and Sponge" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Low turbulence gives sponge look and high turbulence chalk" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "People" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Colorized blotches, like a crowd of people" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Scotland" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Colorized mountain tops out of the fog" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Garden of Delights" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "" -"Phantasmagorical turbulent wisps, like Hieronymus Bosch's Garden of Delights" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Cutout Glow" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "In and out glow with a possible offset and colorizable flood" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Dark Emboss" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Emboss effect : 3D relief where white is replaced by black" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Bubbly Bumps Matte" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Same as Bubbly Bumps but with a diffuse light instead of a specular one" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Blotting Paper" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Inkblot on blotting paper" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Wax Print" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Wax print on tissue texture" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Watercolor" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Cloudy watercolor effect" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Felt" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "" -"Felt like texture with color turbulence and slightly darker at the edges" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Ink Paint" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Ink paint on paper with some turbulent color shift" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Tinted Rainbow" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Smooth rainbow colors melted along the edges and colorizable" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Melted Rainbow" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Smooth rainbow colors slightly melted along the edges" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Flex Metal" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Bright, polished uneven metal casting, colorizable" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Wavy Tartan" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Tartan pattern with a wavy displacement and bevel around the edges" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "3D Marble" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "3D warped marble texture" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "3D Wood" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "3D warped, fibered wood texture" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "3D Mother of Pearl" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "3D warped, iridescent pearly shell texture" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Tiger Fur" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Tiger fur pattern with folds and bevel around the edges" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Black Light" -msgstr "" - -#: ../share/filters/filters.svg.h:1 ../src/ui/dialog/clonetiler.cpp:831 -#: ../src/ui/dialog/clonetiler.cpp:982 -#: ../src/extension/internal/bitmap/colorize.cpp:52 -#: ../src/extension/internal/filter/bumps.h:101 -#: ../src/extension/internal/filter/bumps.h:321 -#: ../src/extension/internal/filter/bumps.h:328 -#: ../src/extension/internal/filter/color.h:82 -#: ../src/extension/internal/filter/color.h:164 -#: ../src/extension/internal/filter/color.h:171 -#: ../src/extension/internal/filter/color.h:262 -#: ../src/extension/internal/filter/color.h:340 -#: ../src/extension/internal/filter/color.h:347 -#: ../src/extension/internal/filter/color.h:437 -#: ../src/extension/internal/filter/color.h:532 -#: ../src/extension/internal/filter/color.h:654 -#: ../src/extension/internal/filter/color.h:751 -#: ../src/extension/internal/filter/color.h:830 -#: ../src/extension/internal/filter/color.h:921 -#: ../src/extension/internal/filter/color.h:1049 -#: ../src/extension/internal/filter/color.h:1119 -#: ../src/extension/internal/filter/color.h:1212 -#: ../src/extension/internal/filter/color.h:1324 -#: ../src/extension/internal/filter/color.h:1429 -#: ../src/extension/internal/filter/color.h:1505 -#: ../src/extension/internal/filter/color.h:1609 -#: ../src/extension/internal/filter/color.h:1616 -#: ../src/extension/internal/filter/morphology.h:194 -#: ../src/extension/internal/filter/overlays.h:73 -#: ../src/extension/internal/filter/paint.h:99 -#: ../src/extension/internal/filter/paint.h:713 -#: ../src/extension/internal/filter/paint.h:717 -#: ../src/extension/internal/filter/shadows.h:73 -#: ../src/extension/internal/filter/transparency.h:345 -#: ../src/ui/dialog/document-properties.cpp:150 -#: ../share/extensions/color_blackandwhite.inx.h:2 -#: ../share/extensions/color_brighter.inx.h:2 -#: ../share/extensions/color_custom.inx.h:15 -#: ../share/extensions/color_darker.inx.h:2 -#: ../share/extensions/color_desaturate.inx.h:2 -#: ../share/extensions/color_grayscale.inx.h:2 -#: ../share/extensions/color_HSL_adjust.inx.h:20 -#: ../share/extensions/color_lesshue.inx.h:2 -#: ../share/extensions/color_lesslight.inx.h:2 -#: ../share/extensions/color_lesssaturation.inx.h:2 -#: ../share/extensions/color_morehue.inx.h:2 -#: ../share/extensions/color_morelight.inx.h:2 -#: ../share/extensions/color_moresaturation.inx.h:2 -#: ../share/extensions/color_negative.inx.h:2 -#: ../share/extensions/color_randomize.inx.h:8 -#: ../share/extensions/color_removeblue.inx.h:2 -#: ../share/extensions/color_removegreen.inx.h:2 -#: ../share/extensions/color_removered.inx.h:2 -#: ../share/extensions/color_replace.inx.h:6 -#: ../share/extensions/color_rgbbarrel.inx.h:2 -#: ../share/extensions/interp_att_g.inx.h:19 -msgid "Color" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Light areas turn to black" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Film Grain" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Adds a small scale graininess" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Plaster Color" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Colored plaster emboss effect" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Velvet Bumps" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Gives Smooth Bumps velvet like" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Comics Cream" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Non realistic 3D shaders" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Comics shader with creamy waves transparency" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Chewing Gum" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "" -"Creates colorizable blotches which smoothly flow over the edges of the lines " -"at their crossings" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Dark And Glow" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Darkens the edge with an inner blur and adds a flexible glow" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Warped Rainbow" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Smooth rainbow colors warped along the edges and colorizable" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Rough and Dilate" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Create a turbulent contour around" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Old Postcard" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Slightly posterize and draw edges like on old printed postcards" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Dots Transparency" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Gives a pointillist HSL sensitive transparency" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Canvas Transparency" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Gives a canvas like HSL sensitive transparency." -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Smear Transparency" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "" -"Paint objects with a transparent turbulence which turns around color edges" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Thick Paint" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Thick painting effect with turbulence" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Burst" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Burst balloon texture crumpled and with holes" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Embossed Leather" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "" -"Combine a HSL edges detection bump with a leathery or woody and colorizable " -"texture" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Carnaval" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "White splotches evocating carnaval masks" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Plastify" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "" -"HSL edges detection bump with a wavy reflective surface effect and variable " -"crumple" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Plaster" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "" -"Combine a HSL edges detection bump with a matte and crumpled surface effect" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Rough Transparency" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Adds a turbulent transparency which displaces pixels at the same time" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Gouache" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Partly opaque water color effect with bleed" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Alpha Engraving" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Gives a transparent engraving effect with rough line and filling" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Alpha Draw Liquid" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Gives a transparent fluid drawing effect with rough line and filling" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Liquid Drawing" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Gives a fluid and wavy expressionist drawing effect to images" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Marbled Ink" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Marbled transparency effect which conforms to image detected edges" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Thick Acrylic" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Thick acrylic paint texture with high texture depth" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Alpha Engraving B" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "" -"Gives a controllable roughness engraving effect to bitmaps and materials" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Lapping" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Something like a water noise" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Monochrome Transparency" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -#: ../src/extension/internal/filter/transparency.h:70 -#: ../src/extension/internal/filter/transparency.h:141 -#: ../src/extension/internal/filter/transparency.h:215 -#: ../src/extension/internal/filter/transparency.h:288 -#: ../src/extension/internal/filter/transparency.h:350 -msgid "Fill and Transparency" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Convert to a colorizable transparent positive or negative" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Saturation Map" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "" -"Creates an approximative semi-transparent and colorizable image of the " -"saturation levels" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Riddled" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Riddle the surface and add bump to images" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Wrinkled Varnish" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Thick glossy and translucent paint texture with high depth" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Canvas Bumps" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Canvas texture with an HSL sensitive height map" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Canvas Bumps Matte" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Same as Canvas Bumps but with a diffuse light instead of a specular one" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Canvas Bumps Alpha" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Same as Canvas Bumps but with transparent highlights" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Bright Metal" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Bright metallic effect for any color" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Deep Colors Plastic" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Transparent plastic with deep colors" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Melted Jelly Matte" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Matte bevel with blurred edges" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Melted Jelly" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Glossy bevel with blurred edges" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Combined Lighting" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -#: ../src/extension/internal/filter/bevels.h:231 -msgid "Basic specular bevel to use for building textures" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Tinfoil" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Metallic foil effect combining two lighting types and variable crumple" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Soft Colors" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Adds a colorizable edges glow inside objects and pictures" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Relief Print" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Bumps effect with a bevel, color flood and complex lighting" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Growing Cells" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Random rounded living cells like fill" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Fluorescence" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Oversaturate colors which can be fluorescent in real world" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Pixellize" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Pixel tools" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Reduce or remove antialiasing around shapes" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Set Resolution" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Set filter resolution" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Basic Diffuse Bump" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Matte emboss effect" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Basic Specular Bump" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Specular emboss effect" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Basic Two Lights Bump" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Two types of lighting emboss effect" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Linen Canvas" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Painting canvas emboss effect" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Plasticine" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Matte modeling paste emboss effect" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Rough Canvas Painting" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Paper Bump" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Paper like emboss effect" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Jelly Bump" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Convert pictures to thick jelly" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Blend Opposites" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Blend an image with its hue opposite" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Hue to White" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Fades hue progressively to white" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -#: ../src/extension/internal/bitmap/swirl.cpp:37 -msgid "Swirl" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "" -"Paint objects with a transparent turbulence which wraps around color edges" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Pointillism" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Gives a turbulent pointillist HSL sensitive transparency" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Silhouette Marbled" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Basic noise transparency texture" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Fill Background" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Adds a colorizable opaque background" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Flatten Transparency" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Adds a white opaque background" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Fill Area" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Fills object bounding box with color" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Blur Double" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "" -"Overlays two copies with different blur amounts and modifiable blend and " -"composite" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Image Drawing Basic" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Enhance and redraw color edges in 1 bit black and white" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Poster Draw" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Enhance and redraw edges around posterized areas" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Cross Noise Poster" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Overlay with a small scale screen like noise" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Cross Noise Poster B" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Adds a small scale screen like noise locally" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Poster Color Fun" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Poster Rough" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Adds roughness to one of the two channels of the Poster paint filter" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Alpha Monochrome Cracked" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Basic noise fill texture; adjust color in Flood" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Alpha Turbulent" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Colorize Turbulent" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Cross Noise B" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Adds a small scale crossy graininess" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Cross Noise" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Adds a small scale screen like graininess" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Duotone Turbulent" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Light Eraser Cracked" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Poster Turbulent" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Tartan Smart" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Highly configurable checkered tartan pattern" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Light Contour" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Uses vertical specular light to draw lines" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Liquid" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Colorizable filling with liquid transparency" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Aluminium" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Aluminium effect with sharp brushed reflections" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Comics" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Comics cartoon drawing effect" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Comics Draft" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Draft painted cartoon shading with a glassy look" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Comics Fading" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Cartoon paint style with some fading at the edges" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Brushed Metal" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Satiny metal surface effect" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Opaline" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Contouring version of smooth shader" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Chrome" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Bright chrome effect" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Deep Chrome" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Dark chrome effect" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Emboss Shader" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Combination of satiny and emboss effect" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Sharp Metal" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Chrome effect with darkened edges" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Brush Draw" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Chrome Emboss" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Embossed chrome effect" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Contour Emboss" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Satiny and embossed contour effect" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Sharp Deco" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Unrealistic reflections with sharp edges" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Deep Metal" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Deep and dark metal shading" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Aluminium Emboss" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Satiny aluminium effect with embossing" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Refractive Glass" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Double reflection through glass with some refraction" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Frosted Glass" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Satiny glass effect" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Bump Engraving" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Carving emboss effect" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Chromolitho Alternate" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Old chromolithographic effect" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Convoluted Bump" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Convoluted emboss effect" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Emergence" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Cut out, add inner shadow and colorize some parts of an image" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Litho" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Create a two colors lithographic effect" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Paint Channels" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Colorize separately the three color channels" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Posterized Light Eraser" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Create a semi transparent posterized image" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Trichrome" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Like Duochrome but with three colors" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Simulate CMY" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Render Cyan, Magenta and Yellow channels with a colorizable background" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Contouring table" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Blurred multiple contours for objects" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Posterized Blur" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Converts blurred contour to posterized steps" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Contouring discrete" -msgstr "" - -#: ../share/filters/filters.svg.h:1 -msgid "Sharp multiple contour for objects" -msgstr "" - -#. Palette: ./inkscape.gpl -#: ../share/palettes/palettes.h:2 -msgctxt "Palette" -msgid "Black" -msgstr "" - -#. Palette: ./inkscape.gpl -#: ../share/palettes/palettes.h:3 -#, no-c-format -msgctxt "Palette" -msgid "90% Gray" -msgstr "" - -#. Palette: ./inkscape.gpl -#: ../share/palettes/palettes.h:4 -#, no-c-format -msgctxt "Palette" -msgid "80% Gray" -msgstr "" - -#. Palette: ./inkscape.gpl -#: ../share/palettes/palettes.h:5 -#, no-c-format -msgctxt "Palette" -msgid "70% Gray" -msgstr "" - -#. Palette: ./inkscape.gpl -#: ../share/palettes/palettes.h:6 -#, no-c-format -msgctxt "Palette" -msgid "60% Gray" -msgstr "" - -#. Palette: ./inkscape.gpl -#: ../share/palettes/palettes.h:7 -#, no-c-format -msgctxt "Palette" -msgid "50% Gray" -msgstr "" - -#. Palette: ./inkscape.gpl -#: ../share/palettes/palettes.h:8 -#, no-c-format -msgctxt "Palette" -msgid "40% Gray" -msgstr "" - -#. Palette: ./inkscape.gpl -#: ../share/palettes/palettes.h:9 -#, no-c-format -msgctxt "Palette" -msgid "30% Gray" -msgstr "" - -#. Palette: ./inkscape.gpl -#: ../share/palettes/palettes.h:10 -#, no-c-format -msgctxt "Palette" -msgid "20% Gray" -msgstr "" - -#. Palette: ./inkscape.gpl -#: ../share/palettes/palettes.h:11 -#, no-c-format -msgctxt "Palette" -msgid "10% Gray" -msgstr "" - -#. Palette: ./inkscape.gpl -#: ../share/palettes/palettes.h:12 -#, no-c-format -msgctxt "Palette" -msgid "7.5% Gray" -msgstr "" - -#. Palette: ./inkscape.gpl -#: ../share/palettes/palettes.h:13 -#, no-c-format -msgctxt "Palette" -msgid "5% Gray" -msgstr "" - -#. Palette: ./inkscape.gpl -#: ../share/palettes/palettes.h:14 -#, no-c-format -msgctxt "Palette" -msgid "2.5% Gray" -msgstr "" - -#. Palette: ./inkscape.gpl -#: ../share/palettes/palettes.h:15 -msgctxt "Palette" -msgid "White" -msgstr "" - -#. Palette: ./inkscape.gpl -#: ../share/palettes/palettes.h:16 -msgctxt "Palette" -msgid "Maroon (#800000)" -msgstr "" - -#. Palette: ./inkscape.gpl -#: ../share/palettes/palettes.h:17 -msgctxt "Palette" -msgid "Red (#FF0000)" -msgstr "" - -#. Palette: ./inkscape.gpl -#: ../share/palettes/palettes.h:18 -msgctxt "Palette" -msgid "Olive (#808000)" -msgstr "" - -#. Palette: ./inkscape.gpl -#: ../share/palettes/palettes.h:19 -msgctxt "Palette" -msgid "Yellow (#FFFF00)" -msgstr "" - -#. Palette: ./inkscape.gpl -#: ../share/palettes/palettes.h:20 -msgctxt "Palette" -msgid "Green (#008000)" -msgstr "" - -#. Palette: ./inkscape.gpl -#: ../share/palettes/palettes.h:21 -msgctxt "Palette" -msgid "Lime (#00FF00)" -msgstr "" - -#. Palette: ./inkscape.gpl -#: ../share/palettes/palettes.h:22 -msgctxt "Palette" -msgid "Teal (#008080)" -msgstr "" - -#. Palette: ./inkscape.gpl -#: ../share/palettes/palettes.h:23 -msgctxt "Palette" -msgid "Aqua (#00FFFF)" -msgstr "" - -#. Palette: ./inkscape.gpl -#: ../share/palettes/palettes.h:24 -msgctxt "Palette" -msgid "Navy (#000080)" -msgstr "" - -#. Palette: ./inkscape.gpl -#: ../share/palettes/palettes.h:25 -msgctxt "Palette" -msgid "Blue (#0000FF)" -msgstr "" - -#. Palette: ./inkscape.gpl -#: ../share/palettes/palettes.h:26 -msgctxt "Palette" -msgid "Purple (#800080)" -msgstr "" - -#. Palette: ./inkscape.gpl -#: ../share/palettes/palettes.h:27 -msgctxt "Palette" -msgid "Fuchsia (#FF00FF)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:28 -msgctxt "Palette" -msgid "black (#000000)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:29 -msgctxt "Palette" -msgid "dimgray (#696969)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:30 -msgctxt "Palette" -msgid "gray (#808080)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:31 -msgctxt "Palette" -msgid "darkgray (#A9A9A9)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:32 -msgctxt "Palette" -msgid "silver (#C0C0C0)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:33 -msgctxt "Palette" -msgid "lightgray (#D3D3D3)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:34 -msgctxt "Palette" -msgid "gainsboro (#DCDCDC)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:35 -msgctxt "Palette" -msgid "whitesmoke (#F5F5F5)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:36 -msgctxt "Palette" -msgid "white (#FFFFFF)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:37 -msgctxt "Palette" -msgid "rosybrown (#BC8F8F)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:38 -msgctxt "Palette" -msgid "indianred (#CD5C5C)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:39 -msgctxt "Palette" -msgid "brown (#A52A2A)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:40 -msgctxt "Palette" -msgid "firebrick (#B22222)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:41 -msgctxt "Palette" -msgid "lightcoral (#F08080)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:42 -msgctxt "Palette" -msgid "maroon (#800000)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:43 -msgctxt "Palette" -msgid "darkred (#8B0000)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:44 -msgctxt "Palette" -msgid "red (#FF0000)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:45 -msgctxt "Palette" -msgid "snow (#FFFAFA)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:46 -msgctxt "Palette" -msgid "mistyrose (#FFE4E1)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:47 -msgctxt "Palette" -msgid "salmon (#FA8072)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:48 -msgctxt "Palette" -msgid "tomato (#FF6347)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:49 -msgctxt "Palette" -msgid "darksalmon (#E9967A)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:50 -msgctxt "Palette" -msgid "coral (#FF7F50)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:51 -msgctxt "Palette" -msgid "orangered (#FF4500)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:52 -msgctxt "Palette" -msgid "lightsalmon (#FFA07A)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:53 -msgctxt "Palette" -msgid "sienna (#A0522D)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:54 -msgctxt "Palette" -msgid "seashell (#FFF5EE)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:55 -msgctxt "Palette" -msgid "chocolate (#D2691E)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:56 -msgctxt "Palette" -msgid "saddlebrown (#8B4513)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:57 -msgctxt "Palette" -msgid "sandybrown (#F4A460)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:58 -msgctxt "Palette" -msgid "peachpuff (#FFDAB9)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:59 -msgctxt "Palette" -msgid "peru (#CD853F)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:60 -msgctxt "Palette" -msgid "linen (#FAF0E6)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:61 -msgctxt "Palette" -msgid "bisque (#FFE4C4)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:62 -msgctxt "Palette" -msgid "darkorange (#FF8C00)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:63 -msgctxt "Palette" -msgid "burlywood (#DEB887)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:64 -msgctxt "Palette" -msgid "tan (#D2B48C)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:65 -msgctxt "Palette" -msgid "antiquewhite (#FAEBD7)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:66 -msgctxt "Palette" -msgid "navajowhite (#FFDEAD)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:67 -msgctxt "Palette" -msgid "blanchedalmond (#FFEBCD)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:68 -msgctxt "Palette" -msgid "papayawhip (#FFEFD5)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:69 -msgctxt "Palette" -msgid "moccasin (#FFE4B5)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:70 -msgctxt "Palette" -msgid "orange (#FFA500)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:71 -msgctxt "Palette" -msgid "wheat (#F5DEB3)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:72 -msgctxt "Palette" -msgid "oldlace (#FDF5E6)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:73 -msgctxt "Palette" -msgid "floralwhite (#FFFAF0)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:74 -msgctxt "Palette" -msgid "darkgoldenrod (#B8860B)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:75 -msgctxt "Palette" -msgid "goldenrod (#DAA520)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:76 -msgctxt "Palette" -msgid "cornsilk (#FFF8DC)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:77 -msgctxt "Palette" -msgid "gold (#FFD700)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:78 -msgctxt "Palette" -msgid "khaki (#F0E68C)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:79 -msgctxt "Palette" -msgid "lemonchiffon (#FFFACD)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:80 -msgctxt "Palette" -msgid "palegoldenrod (#EEE8AA)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:81 -msgctxt "Palette" -msgid "darkkhaki (#BDB76B)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:82 -msgctxt "Palette" -msgid "beige (#F5F5DC)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:83 -msgctxt "Palette" -msgid "lightgoldenrodyellow (#FAFAD2)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:84 -msgctxt "Palette" -msgid "olive (#808000)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:85 -msgctxt "Palette" -msgid "yellow (#FFFF00)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:86 -msgctxt "Palette" -msgid "lightyellow (#FFFFE0)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:87 -msgctxt "Palette" -msgid "ivory (#FFFFF0)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:88 -msgctxt "Palette" -msgid "olivedrab (#6B8E23)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:89 -msgctxt "Palette" -msgid "yellowgreen (#9ACD32)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:90 -msgctxt "Palette" -msgid "darkolivegreen (#556B2F)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:91 -msgctxt "Palette" -msgid "greenyellow (#ADFF2F)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:92 -msgctxt "Palette" -msgid "chartreuse (#7FFF00)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:93 -msgctxt "Palette" -msgid "lawngreen (#7CFC00)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:94 -msgctxt "Palette" -msgid "darkseagreen (#8FBC8F)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:95 -msgctxt "Palette" -msgid "forestgreen (#228B22)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:96 -msgctxt "Palette" -msgid "limegreen (#32CD32)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:97 -msgctxt "Palette" -msgid "lightgreen (#90EE90)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:98 -msgctxt "Palette" -msgid "palegreen (#98FB98)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:99 -msgctxt "Palette" -msgid "darkgreen (#006400)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:100 -msgctxt "Palette" -msgid "green (#008000)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:101 -msgctxt "Palette" -msgid "lime (#00FF00)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:102 -msgctxt "Palette" -msgid "honeydew (#F0FFF0)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:103 -msgctxt "Palette" -msgid "seagreen (#2E8B57)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:104 -msgctxt "Palette" -msgid "mediumseagreen (#3CB371)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:105 -msgctxt "Palette" -msgid "springgreen (#00FF7F)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:106 -msgctxt "Palette" -msgid "mintcream (#F5FFFA)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:107 -msgctxt "Palette" -msgid "mediumspringgreen (#00FA9A)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:108 -msgctxt "Palette" -msgid "mediumaquamarine (#66CDAA)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:109 -msgctxt "Palette" -msgid "aquamarine (#7FFFD4)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:110 -msgctxt "Palette" -msgid "turquoise (#40E0D0)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:111 -msgctxt "Palette" -msgid "lightseagreen (#20B2AA)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:112 -msgctxt "Palette" -msgid "mediumturquoise (#48D1CC)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:113 -msgctxt "Palette" -msgid "darkslategray (#2F4F4F)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:114 -msgctxt "Palette" -msgid "paleturquoise (#AFEEEE)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:115 -msgctxt "Palette" -msgid "teal (#008080)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:116 -msgctxt "Palette" -msgid "darkcyan (#008B8B)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:117 -msgctxt "Palette" -msgid "cyan (#00FFFF)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:118 -msgctxt "Palette" -msgid "lightcyan (#E0FFFF)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:119 -msgctxt "Palette" -msgid "azure (#F0FFFF)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:120 -msgctxt "Palette" -msgid "darkturquoise (#00CED1)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:121 -msgctxt "Palette" -msgid "cadetblue (#5F9EA0)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:122 -msgctxt "Palette" -msgid "powderblue (#B0E0E6)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:123 -msgctxt "Palette" -msgid "lightblue (#ADD8E6)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:124 -msgctxt "Palette" -msgid "deepskyblue (#00BFFF)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:125 -msgctxt "Palette" -msgid "skyblue (#87CEEB)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:126 -msgctxt "Palette" -msgid "lightskyblue (#87CEFA)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:127 -msgctxt "Palette" -msgid "steelblue (#4682B4)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:128 -msgctxt "Palette" -msgid "aliceblue (#F0F8FF)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:129 -msgctxt "Palette" -msgid "dodgerblue (#1E90FF)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:130 -msgctxt "Palette" -msgid "slategray (#708090)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:131 -msgctxt "Palette" -msgid "lightslategray (#778899)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:132 -msgctxt "Palette" -msgid "lightsteelblue (#B0C4DE)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:133 -msgctxt "Palette" -msgid "cornflowerblue (#6495ED)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:134 -msgctxt "Palette" -msgid "royalblue (#4169E1)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:135 -msgctxt "Palette" -msgid "midnightblue (#191970)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:136 -msgctxt "Palette" -msgid "lavender (#E6E6FA)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:137 -msgctxt "Palette" -msgid "navy (#000080)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:138 -msgctxt "Palette" -msgid "darkblue (#00008B)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:139 -msgctxt "Palette" -msgid "mediumblue (#0000CD)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:140 -msgctxt "Palette" -msgid "blue (#0000FF)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:141 -msgctxt "Palette" -msgid "ghostwhite (#F8F8FF)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:142 -msgctxt "Palette" -msgid "slateblue (#6A5ACD)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:143 -msgctxt "Palette" -msgid "darkslateblue (#483D8B)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:144 -msgctxt "Palette" -msgid "mediumslateblue (#7B68EE)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:145 -msgctxt "Palette" -msgid "mediumpurple (#9370DB)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:146 -msgctxt "Palette" -msgid "blueviolet (#8A2BE2)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:147 -msgctxt "Palette" -msgid "indigo (#4B0082)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:148 -msgctxt "Palette" -msgid "darkorchid (#9932CC)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:149 -msgctxt "Palette" -msgid "darkviolet (#9400D3)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:150 -msgctxt "Palette" -msgid "mediumorchid (#BA55D3)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:151 -msgctxt "Palette" -msgid "thistle (#D8BFD8)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:152 -msgctxt "Palette" -msgid "plum (#DDA0DD)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:153 -msgctxt "Palette" -msgid "violet (#EE82EE)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:154 -msgctxt "Palette" -msgid "purple (#800080)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:155 -msgctxt "Palette" -msgid "darkmagenta (#8B008B)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:156 -msgctxt "Palette" -msgid "magenta (#FF00FF)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:157 -msgctxt "Palette" -msgid "orchid (#DA70D6)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:158 -msgctxt "Palette" -msgid "mediumvioletred (#C71585)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:159 -msgctxt "Palette" -msgid "deeppink (#FF1493)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:160 -msgctxt "Palette" -msgid "hotpink (#FF69B4)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:161 -msgctxt "Palette" -msgid "lavenderblush (#FFF0F5)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:162 -msgctxt "Palette" -msgid "palevioletred (#DB7093)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:163 -msgctxt "Palette" -msgid "crimson (#DC143C)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:164 -msgctxt "Palette" -msgid "pink (#FFC0CB)" -msgstr "" - -#. Palette: ./svg.gpl -#: ../share/palettes/palettes.h:165 -msgctxt "Palette" -msgid "lightpink (#FFB6C1)" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:166 -msgctxt "Palette" -msgid "Butter 1" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:167 -msgctxt "Palette" -msgid "Butter 2" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:168 -msgctxt "Palette" -msgid "Butter 3" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:169 -msgctxt "Palette" -msgid "Chameleon 1" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:170 -msgctxt "Palette" -msgid "Chameleon 2" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:171 -msgctxt "Palette" -msgid "Chameleon 3" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:172 -msgctxt "Palette" -msgid "Orange 1" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:173 -msgctxt "Palette" -msgid "Orange 2" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:174 -msgctxt "Palette" -msgid "Orange 3" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:175 -msgctxt "Palette" -msgid "Sky Blue 1" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:176 -msgctxt "Palette" -msgid "Sky Blue 2" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:177 -msgctxt "Palette" -msgid "Sky Blue 3" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:178 -msgctxt "Palette" -msgid "Plum 1" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:179 -msgctxt "Palette" -msgid "Plum 2" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:180 -msgctxt "Palette" -msgid "Plum 3" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:181 -msgctxt "Palette" -msgid "Chocolate 1" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:182 -msgctxt "Palette" -msgid "Chocolate 2" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:183 -msgctxt "Palette" -msgid "Chocolate 3" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:184 -msgctxt "Palette" -msgid "Scarlet Red 1" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:185 -msgctxt "Palette" -msgid "Scarlet Red 2" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:186 -msgctxt "Palette" -msgid "Scarlet Red 3" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:187 -msgctxt "Palette" -msgid "Snowy White" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:188 -msgctxt "Palette" -msgid "Aluminium 1" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:189 -msgctxt "Palette" -msgid "Aluminium 2" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:190 -msgctxt "Palette" -msgid "Aluminium 3" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:191 -msgctxt "Palette" -msgid "Aluminium 4" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:192 -msgctxt "Palette" -msgid "Aluminium 5" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:193 -msgctxt "Palette" -msgid "Aluminium 6" -msgstr "" - -#. Palette: ./Tango-Palette.gpl -#: ../share/palettes/palettes.h:194 -msgctxt "Palette" -msgid "Jet Black" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Stripes 1:1" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Stripes 1:1 white" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Stripes 1:1.5" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Stripes 1:1.5 white" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Stripes 1:2" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Stripes 1:2 white" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Stripes 1:3" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Stripes 1:3 white" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Stripes 1:4" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Stripes 1:4 white" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Stripes 1:5" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Stripes 1:5 white" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Stripes 1:8" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Stripes 1:8 white" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Stripes 1:10" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Stripes 1:10 white" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Stripes 1:16" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Stripes 1:16 white" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Stripes 1:32" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Stripes 1:32 white" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Stripes 1:64" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Stripes 2:1" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Stripes 2:1 white" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Stripes 4:1" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Stripes 4:1 white" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Checkerboard" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Checkerboard white" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Packed circles" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Polka dots, small" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Polka dots, small white" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Polka dots, medium" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Polka dots, medium white" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Polka dots, large" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Polka dots, large white" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Wavy" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Wavy white" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Camouflage" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Ermine" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Sand (bitmap)" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Cloth (bitmap)" -msgstr "" - -#: ../share/patterns/patterns.svg.h:1 -msgid "Old paint (bitmap)" -msgstr "" - -#: ../src/live_effects/lpe-extrude.cpp:30 -msgid "Direction" -msgstr "" - -#: ../src/live_effects/lpe-extrude.cpp:30 -msgid "Defines the direction and magnitude of the extrusion" -msgstr "" - -#: ../src/sp-flowtext.cpp:339 ../src/sp-text.cpp:400 -#: ../src/text-context.cpp:1630 -msgid " [truncated]" -msgstr "" - -#: ../src/sp-flowtext.cpp:342 -#, c-format -msgid "Flowed text (%d character%s)" -msgid_plural "Flowed text (%d characters%s)" -msgstr[0] "" -msgstr[1] "" - -#: ../src/sp-flowtext.cpp:344 -#, c-format -msgid "Linked flowed text (%d character%s)" -msgid_plural "Linked flowed text (%d characters%s)" -msgstr[0] "" -msgstr[1] "" - -#: ../src/arc-context.cpp:307 -msgid "" -"Ctrl: make circle or integer-ratio ellipse, snap arc/segment angle" -msgstr "" - -#: ../src/arc-context.cpp:308 ../src/rect-context.cpp:353 -msgid "Shift: draw around the starting point" -msgstr "" - -#: ../src/arc-context.cpp:464 -#, c-format -msgid "" -"Ellipse: %s × %s (constrained to ratio %d:%d); with Shift " -"to draw around the starting point" -msgstr "" - -#: ../src/arc-context.cpp:466 -#, c-format -msgid "" -"Ellipse: %s × %s; with Ctrl to make square or integer-" -"ratio ellipse; with Shift to draw around the starting point" -msgstr "" - -#: ../src/arc-context.cpp:492 -msgid "Create ellipse" -msgstr "" - -#: ../src/box3d-context.cpp:421 ../src/box3d-context.cpp:428 -#: ../src/box3d-context.cpp:435 ../src/box3d-context.cpp:442 -#: ../src/box3d-context.cpp:449 ../src/box3d-context.cpp:456 -msgid "Change perspective (angle of PLs)" -msgstr "" - -#. status text -#: ../src/box3d-context.cpp:640 -msgid "3D Box; with Shift to extrude along the Z axis" -msgstr "" - -#: ../src/box3d-context.cpp:668 -msgid "Create 3D box" -msgstr "" - -#: ../src/box3d.cpp:292 -msgid "3D Box" -msgstr "" - -#: ../src/color-profile.cpp:895 -#, c-format -msgid "Color profiles directory (%s) is unavailable." -msgstr "" - -#: ../src/color-profile.cpp:954 ../src/color-profile.cpp:971 -msgid "(invalid UTF-8 string)" -msgstr "" - -#: ../src/color-profile.cpp:956 ../src/filter-enums.cpp:94 -#: ../src/live_effects/lpe-ruler.cpp:32 -#: ../src/ui/dialog/filter-effects-dialog.cpp:518 -#: ../src/ui/dialog/inkscape-preferences.cpp:332 -#: ../src/ui/dialog/inkscape-preferences.cpp:641 -#: ../src/ui/dialog/inkscape-preferences.cpp:1255 -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 -#: ../src/ui/dialog/inkscape-preferences.cpp:1817 -#: ../src/ui/dialog/input.cpp:742 ../src/ui/dialog/input.cpp:743 -#: ../src/ui/dialog/input.cpp:1571 ../src/ui/dialog/input.cpp:1625 -#: ../src/verbs.cpp:2293 ../src/widgets/gradient-toolbar.cpp:1128 -#: ../src/widgets/pencil-toolbar.cpp:189 -#: ../share/extensions/gcodetools_area.inx.h:48 -#: ../share/extensions/gcodetools_dxf_points.inx.h:20 -#: ../share/extensions/gcodetools_engraving.inx.h:26 -#: ../share/extensions/gcodetools_graffiti.inx.h:37 -#: ../share/extensions/gcodetools_lathe.inx.h:41 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:30 -#: ../share/extensions/grid_polar.inx.h:4 -#: ../share/extensions/guides_creator.inx.h:7 -#: ../share/extensions/scour.inx.h:18 -msgid "None" -msgstr "" - -#: ../src/connector-context.cpp:585 -msgid "Creating new connector" -msgstr "" - -#: ../src/connector-context.cpp:840 -msgid "Connector endpoint drag cancelled." -msgstr "" - -#: ../src/connector-context.cpp:887 -msgid "Reroute connector" -msgstr "" - -#: ../src/connector-context.cpp:1052 -msgid "Create connector" -msgstr "" - -#: ../src/connector-context.cpp:1075 -msgid "Finishing connector" -msgstr "" - -#: ../src/connector-context.cpp:1311 -msgid "Connector endpoint: drag to reroute or connect to new shapes" -msgstr "" - -#: ../src/connector-context.cpp:1451 -msgid "Select at least one non-connector object." -msgstr "" - -#: ../src/connector-context.cpp:1456 ../src/widgets/connector-toolbar.cpp:330 -msgid "Make connectors avoid selected objects" -msgstr "" - -#: ../src/connector-context.cpp:1457 ../src/widgets/connector-toolbar.cpp:340 -msgid "Make connectors ignore selected objects" -msgstr "" - -#: ../src/context-fns.cpp:36 ../src/context-fns.cpp:65 -msgid "Current layer is hidden. Unhide it to be able to draw on it." -msgstr "" - -#: ../src/context-fns.cpp:42 ../src/context-fns.cpp:71 -msgid "Current layer is locked. Unlock it to be able to draw on it." -msgstr "" - -#: ../src/desktop-events.cpp:228 -msgid "Create guide" -msgstr "" - -#: ../src/desktop-events.cpp:473 -msgid "Move guide" -msgstr "" - -#: ../src/desktop-events.cpp:480 ../src/desktop-events.cpp:538 -#: ../src/ui/dialog/guides.cpp:144 -msgid "Delete guide" -msgstr "" - -#: ../src/desktop-events.cpp:518 -#, c-format -msgid "Guideline: %s" -msgstr "" - -#: ../src/desktop.cpp:911 -msgid "No previous zoom." -msgstr "" - -#: ../src/desktop.cpp:932 -msgid "No next zoom." -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:111 -msgid "_Symmetry" -msgstr "" - -#. TRANSLATORS: "translation" means "shift" / "displacement" here. -#: ../src/ui/dialog/clonetiler.cpp:123 -msgid "P1: simple translation" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:124 -msgid "P2: 180° rotation" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:125 -msgid "PM: reflection" -msgstr "" - -#. TRANSLATORS: "glide reflection" is a reflection and a translation combined. -#. For more info, see http://mathforum.org/sum95/suzanne/symsusan.html -#: ../src/ui/dialog/clonetiler.cpp:128 -msgid "PG: glide reflection" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:129 -msgid "CM: reflection + glide reflection" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:130 -msgid "PMM: reflection + reflection" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:131 -msgid "PMG: reflection + 180° rotation" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:132 -msgid "PGG: glide reflection + 180° rotation" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:133 -msgid "CMM: reflection + reflection + 180° rotation" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:134 -msgid "P4: 90° rotation" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:135 -msgid "P4M: 90° rotation + 45° reflection" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:136 -msgid "P4G: 90° rotation + 90° reflection" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:137 -msgid "P3: 120° rotation" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:138 -msgid "P31M: reflection + 120° rotation, dense" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:139 -msgid "P3M1: reflection + 120° rotation, sparse" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:140 -msgid "P6: 60° rotation" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:141 -msgid "P6M: reflection + 60° rotation" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:161 -msgid "Select one of the 17 symmetry groups for the tiling" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:179 -msgid "S_hift" -msgstr "" - -#. TRANSLATORS: "shift" means: the tiles will be shifted (offset) horizontally by this amount -#: ../src/ui/dialog/clonetiler.cpp:189 -#, no-c-format -msgid "Shift X:" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:197 -#, no-c-format -msgid "Horizontal shift per row (in % of tile width)" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:205 -#, no-c-format -msgid "Horizontal shift per column (in % of tile width)" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:211 -msgid "Randomize the horizontal shift by this percentage" -msgstr "" - -#. TRANSLATORS: "shift" means: the tiles will be shifted (offset) vertically by this amount -#: ../src/ui/dialog/clonetiler.cpp:221 -#, no-c-format -msgid "Shift Y:" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:229 -#, no-c-format -msgid "Vertical shift per row (in % of tile height)" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:237 -#, no-c-format -msgid "Vertical shift per column (in % of tile height)" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:244 -msgid "Randomize the vertical shift by this percentage" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:252 ../src/ui/dialog/clonetiler.cpp:398 -msgid "Exponent:" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:259 -msgid "Whether rows are spaced evenly (1), converge (<1) or diverge (>1)" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:266 -msgid "Whether columns are spaced evenly (1), converge (<1) or diverge (>1)" -msgstr "" - -#. TRANSLATORS: "Alternate" is a verb here -#: ../src/ui/dialog/clonetiler.cpp:274 ../src/ui/dialog/clonetiler.cpp:438 -#: ../src/ui/dialog/clonetiler.cpp:514 ../src/ui/dialog/clonetiler.cpp:587 -#: ../src/ui/dialog/clonetiler.cpp:633 ../src/ui/dialog/clonetiler.cpp:760 -msgid "Alternate:" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:280 -msgid "Alternate the sign of shifts for each row" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:285 -msgid "Alternate the sign of shifts for each column" -msgstr "" - -#. TRANSLATORS: "Cumulate" is a verb here -#: ../src/ui/dialog/clonetiler.cpp:292 ../src/ui/dialog/clonetiler.cpp:456 -#: ../src/ui/dialog/clonetiler.cpp:532 -msgid "Cumulate:" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:298 -msgid "Cumulate the shifts for each row" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:303 -msgid "Cumulate the shifts for each column" -msgstr "" - -#. TRANSLATORS: "Cumulate" is a verb here -#: ../src/ui/dialog/clonetiler.cpp:310 -msgid "Exclude tile:" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:316 -msgid "Exclude tile height in shift" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:321 -msgid "Exclude tile width in shift" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:330 -msgid "Sc_ale" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:338 -msgid "Scale X:" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:346 -#, no-c-format -msgid "Horizontal scale per row (in % of tile width)" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:354 -#, no-c-format -msgid "Horizontal scale per column (in % of tile width)" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:360 -msgid "Randomize the horizontal scale by this percentage" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:368 -msgid "Scale Y:" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:376 -#, no-c-format -msgid "Vertical scale per row (in % of tile height)" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:384 -#, no-c-format -msgid "Vertical scale per column (in % of tile height)" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:390 -msgid "Randomize the vertical scale by this percentage" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:404 -msgid "Whether row scaling is uniform (1), converge (<1) or diverge (>1)" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:410 -msgid "Whether column scaling is uniform (1), converge (<1) or diverge (>1)" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:418 -msgid "Base:" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:424 ../src/ui/dialog/clonetiler.cpp:430 -msgid "" -"Base for a logarithmic spiral: not used (0), converge (<1), or diverge (>1)" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:444 -msgid "Alternate the sign of scales for each row" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:449 -msgid "Alternate the sign of scales for each column" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:462 -msgid "Cumulate the scales for each row" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:467 -msgid "Cumulate the scales for each column" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:476 -msgid "_Rotation" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:484 -msgid "Angle:" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:492 -#, no-c-format -msgid "Rotate tiles by this angle for each row" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:500 -#, no-c-format -msgid "Rotate tiles by this angle for each column" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:506 -msgid "Randomize the rotation angle by this percentage" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:520 -msgid "Alternate the rotation direction for each row" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:525 -msgid "Alternate the rotation direction for each column" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:538 -msgid "Cumulate the rotation for each row" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:543 -msgid "Cumulate the rotation for each column" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:552 -msgid "_Blur & opacity" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:561 -msgid "Blur:" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:567 -msgid "Blur tiles by this percentage for each row" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:573 -msgid "Blur tiles by this percentage for each column" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:579 -msgid "Randomize the tile blur by this percentage" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:593 -msgid "Alternate the sign of blur change for each row" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:598 -msgid "Alternate the sign of blur change for each column" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:607 -msgid "Opacity:" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:613 -msgid "Decrease tile opacity by this percentage for each row" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:619 -msgid "Decrease tile opacity by this percentage for each column" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:625 -msgid "Randomize the tile opacity by this percentage" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:639 -msgid "Alternate the sign of opacity change for each row" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:644 -msgid "Alternate the sign of opacity change for each column" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:652 -msgid "Co_lor" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:662 -msgid "Initial color: " -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:666 -msgid "Initial color of tiled clones" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:666 -msgid "" -"Initial color for clones (works only if the original has unset fill or " -"stroke)" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:681 -msgid "H:" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:687 -msgid "Change the tile hue by this percentage for each row" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:693 -msgid "Change the tile hue by this percentage for each column" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:699 -msgid "Randomize the tile hue by this percentage" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:708 -msgid "S:" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:714 -msgid "Change the color saturation by this percentage for each row" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:720 -msgid "Change the color saturation by this percentage for each column" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:726 -msgid "Randomize the color saturation by this percentage" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:734 -msgid "L:" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:740 -msgid "Change the color lightness by this percentage for each row" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:746 -msgid "Change the color lightness by this percentage for each column" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:752 -msgid "Randomize the color lightness by this percentage" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:766 -msgid "Alternate the sign of color changes for each row" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:771 -msgid "Alternate the sign of color changes for each column" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:779 -msgid "_Trace" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:791 -msgid "Trace the drawing under the tiles" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:795 -msgid "" -"For each clone, pick a value from the drawing in that clone's location and " -"apply it to the clone" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:814 -msgid "1. Pick from the drawing:" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:832 -msgid "Pick the visible color and opacity" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:839 ../src/ui/dialog/clonetiler.cpp:992 -#: ../src/extension/internal/bitmap/opacity.cpp:38 -#: ../src/extension/internal/filter/blurs.h:333 -#: ../src/extension/internal/filter/transparency.h:279 -#: ../src/widgets/tweak-toolbar.cpp:352 -#: ../share/extensions/interp_att_g.inx.h:16 -msgid "Opacity" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:840 -msgid "Pick the total accumulated opacity" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:847 -msgid "R" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:848 -msgid "Pick the Red component of the color" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:855 -msgid "G" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:856 -msgid "Pick the Green component of the color" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:863 -msgid "B" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:864 -msgid "Pick the Blue component of the color" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:871 -msgctxt "Clonetiler color hue" -msgid "H" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:872 -msgid "Pick the hue of the color" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:879 -msgctxt "Clonetiler color saturation" -msgid "S" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:880 -msgid "Pick the saturation of the color" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:887 -msgctxt "Clonetiler color lightness" -msgid "L" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:888 -msgid "Pick the lightness of the color" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:898 -msgid "2. Tweak the picked value:" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:915 -msgid "Gamma-correct:" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:919 -msgid "Shift the mid-range of the picked value upwards (>0) or downwards (<0)" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:926 -msgid "Randomize:" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:930 -msgid "Randomize the picked value by this percentage" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:937 -msgid "Invert:" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:941 -msgid "Invert the picked value" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:947 -msgid "3. Apply the value to the clones':" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:962 -msgid "Presence" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:965 -msgid "" -"Each clone is created with the probability determined by the picked value in " -"that point" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:972 -msgid "Size" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:975 -msgid "Each clone's size is determined by the picked value in that point" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:985 -msgid "" -"Each clone is painted by the picked color (the original must have unset fill " -"or stroke)" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:995 -msgid "Each clone's opacity is determined by the picked value in that point" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:1043 -msgid "How many rows in the tiling" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:1073 -msgid "How many columns in the tiling" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:1117 -msgid "Width of the rectangle to be filled" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:1151 -msgid "Height of the rectangle to be filled" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:1168 -msgid "Rows, columns: " -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:1169 -msgid "Create the specified number of rows and columns" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:1178 -msgid "Width, height: " -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:1179 -msgid "Fill the specified width and height with the tiling" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:1200 -msgid "Use saved size and position of the tile" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:1203 -msgid "" -"Pretend that the size and position of the tile are the same as the last time " -"you tiled it (if any), instead of using the current size" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:1237 -msgid " _Create " -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:1239 -msgid "Create and tile the clones of the selection" -msgstr "" - -#. TRANSLATORS: if a group of objects are "clumped" together, then they -#. are unevenly spread in the given amount of space - as shown in the -#. diagrams on the left in the following screenshot: -#. http://www.inkscape.org/screenshots/gallery/inkscape-0.42-CVS-tiles-unclump.png -#. So unclumping is the process of spreading a number of objects out more evenly. -#: ../src/ui/dialog/clonetiler.cpp:1259 -msgid " _Unclump " -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:1260 -msgid "Spread out clones to reduce clumping; can be applied repeatedly" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:1266 -msgid " Re_move " -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:1267 -msgid "Remove existing tiled clones of the selected object (siblings only)" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:1283 -msgid " R_eset " -msgstr "" - -#. TRANSLATORS: "change" is a noun here -#: ../src/ui/dialog/clonetiler.cpp:1285 -msgid "" -"Reset all shifts, scales, rotates, opacity and color changes in the dialog " -"to zero" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:1358 -msgid "Nothing selected." -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:1364 -msgid "More than one object selected." -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:1371 -#, c-format -msgid "Object has %d tiled clones." -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:1376 -msgid "Object has no tiled clones." -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:2096 -msgid "Select one object whose tiled clones to unclump." -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:2118 -msgid "Unclump tiled clones" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:2147 -msgid "Select one object whose tiled clones to remove." -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:2170 -msgid "Delete tiled clones" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:2217 ../src/selection-chemistry.cpp:2501 -msgid "Select an object to clone." -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:2223 -msgid "" -"If you want to clone several objects, group them and clone the " -"group." -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:2232 -msgid "Creating tiled clones..." -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:2637 -msgid "Create tiled clones" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:2870 -msgid "Per row:" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:2888 -msgid "Per column:" -msgstr "" - -#: ../src/ui/dialog/clonetiler.cpp:2896 -msgid "Randomize:" -msgstr "" - -#: ../src/ui/dialog/export.cpp:150 ../src/verbs.cpp:2737 -msgid "_Page" -msgstr "" - -#: ../src/ui/dialog/export.cpp:150 ../src/verbs.cpp:2741 -msgid "_Drawing" -msgstr "" - -#: ../src/ui/dialog/export.cpp:150 ../src/verbs.cpp:2743 -msgid "_Selection" -msgstr "" - -#: ../src/ui/dialog/export.cpp:150 -msgid "_Custom" -msgstr "" - -#: ../src/ui/dialog/export.cpp:166 ../src/widgets/measure-toolbar.cpp:115 -#: ../src/widgets/measure-toolbar.cpp:123 -#: ../share/extensions/render_gears.inx.h:6 -msgid "Units:" -msgstr "" - -#: ../src/ui/dialog/export.cpp:168 -msgid "_Export As..." -msgstr "" - -#: ../src/ui/dialog/export.cpp:171 -msgid "B_atch export all selected objects" -msgstr "" - -#: ../src/ui/dialog/export.cpp:171 -msgid "" -"Export each selected object into its own PNG file, using export hints if any " -"(caution, overwrites without asking!)" -msgstr "" - -#: ../src/ui/dialog/export.cpp:173 -msgid "Hide a_ll except selected" -msgstr "" - -#: ../src/ui/dialog/export.cpp:173 -msgid "In the exported image, hide all objects except those that are selected" -msgstr "" - -#: ../src/ui/dialog/export.cpp:174 -msgid "Close when complete" -msgstr "" - -#: ../src/ui/dialog/export.cpp:174 -msgid "Once the export completes, close this dialog" -msgstr "" - -#: ../src/ui/dialog/export.cpp:176 -msgid "_Export" -msgstr "" - -#: ../src/ui/dialog/export.cpp:194 -msgid "Export area" -msgstr "" - -#: ../src/ui/dialog/export.cpp:230 -msgid "_x0:" -msgstr "" - -#: ../src/ui/dialog/export.cpp:234 -msgid "x_1:" -msgstr "" - -#: ../src/ui/dialog/export.cpp:238 -msgid "Wid_th:" -msgstr "" - -#: ../src/ui/dialog/export.cpp:242 -msgid "_y0:" -msgstr "" - -#: ../src/ui/dialog/export.cpp:246 -msgid "y_1:" -msgstr "" - -#: ../src/ui/dialog/export.cpp:250 -msgid "Hei_ght:" -msgstr "" - -#: ../src/ui/dialog/export.cpp:265 -msgid "Image size" -msgstr "" - -#: ../src/ui/dialog/export.cpp:283 ../src/live_effects/lpe-bendpath.cpp:54 -#: ../src/live_effects/lpe-patternalongpath.cpp:62 -#: ../src/ui/dialog/transformation.cpp:79 ../src/ui/widget/page-sizer.cpp:238 -msgid "_Width:" -msgstr "" - -#: ../src/ui/dialog/export.cpp:283 ../src/ui/dialog/export.cpp:294 -msgid "pixels at" -msgstr "" - -#: ../src/ui/dialog/export.cpp:289 -msgid "dp_i" -msgstr "" - -#: ../src/ui/dialog/export.cpp:294 ../src/ui/dialog/transformation.cpp:81 -#: ../src/ui/widget/page-sizer.cpp:239 -msgid "_Height:" -msgstr "" - -#: ../src/ui/dialog/export.cpp:302 -#: ../src/ui/dialog/inkscape-preferences.cpp:1432 -#: ../src/ui/dialog/inkscape-preferences.cpp:1435 -#: ../src/ui/dialog/inkscape-preferences.cpp:1447 -msgid "dpi" -msgstr "" - -#: ../src/ui/dialog/export.cpp:310 -msgid "_Filename" -msgstr "" - -#: ../src/ui/dialog/export.cpp:352 -msgid "Export the bitmap file with these settings" -msgstr "" - -#: ../src/ui/dialog/export.cpp:606 -#, c-format -msgid "B_atch export %d selected object" -msgid_plural "B_atch export %d selected objects" -msgstr[0] "" -msgstr[1] "" - -#: ../src/ui/dialog/export.cpp:922 -msgid "Export in progress" -msgstr "" - -#: ../src/ui/dialog/export.cpp:1006 -msgid "No items selected." -msgstr "" - -#: ../src/ui/dialog/export.cpp:1010 ../src/ui/dialog/export.cpp:1012 -msgid "Exporting %1 files" -msgstr "" - -#: ../src/ui/dialog/export.cpp:1052 ../src/ui/dialog/export.cpp:1054 -#, c-format -msgid "Exporting file %s..." -msgstr "" - -#: ../src/ui/dialog/export.cpp:1063 ../src/ui/dialog/export.cpp:1154 -#, c-format -msgid "Could not export to filename %s.\n" -msgstr "" - -#: ../src/ui/dialog/export.cpp:1066 -#, c-format -msgid "Could not export to filename %s." -msgstr "" - -#: ../src/ui/dialog/export.cpp:1081 -#, c-format -msgid "Successfully exported %d files from %d selected items." -msgstr "" - -#: ../src/ui/dialog/export.cpp:1092 -msgid "You have to enter a filename." -msgstr "" - -#: ../src/ui/dialog/export.cpp:1093 -msgid "You have to enter a filename" -msgstr "" - -#: ../src/ui/dialog/export.cpp:1107 -msgid "The chosen area to be exported is invalid." -msgstr "" - -#: ../src/ui/dialog/export.cpp:1108 -msgid "The chosen area to be exported is invalid" -msgstr "" - -#: ../src/ui/dialog/export.cpp:1123 -#, c-format -msgid "Directory %s does not exist or is not a directory.\n" -msgstr "" - -#. TRANSLATORS: %1 will be the filename, %2 the width, and %3 the height of the image -#: ../src/ui/dialog/export.cpp:1137 ../src/ui/dialog/export.cpp:1139 -msgid "Exporting %1 (%2 x %3)" -msgstr "" - -#: ../src/ui/dialog/export.cpp:1165 -#, c-format -msgid "Drawing exported to %s." -msgstr "" - -#: ../src/ui/dialog/export.cpp:1169 -msgid "Export aborted." -msgstr "" - -#: ../src/ui/dialog/export.cpp:1287 ../src/ui/dialog/export.cpp:1321 -#: ../src/shortcuts.cpp:336 -msgid "Select a filename for exporting" -msgstr "" - -#: ../src/ui/dialog/spellcheck.cpp:73 -msgid "_Accept" -msgstr "" - -#: ../src/ui/dialog/spellcheck.cpp:74 -msgid "_Ignore once" -msgstr "" - -#: ../src/ui/dialog/spellcheck.cpp:75 -msgid "_Ignore" -msgstr "" - -#: ../src/ui/dialog/spellcheck.cpp:76 -msgid "A_dd" -msgstr "" - -#: ../src/ui/dialog/spellcheck.cpp:78 -msgid "_Stop" -msgstr "" - -#: ../src/ui/dialog/spellcheck.cpp:79 -msgid "_Start" -msgstr "" - -#: ../src/ui/dialog/spellcheck.cpp:109 -msgid "Suggestions:" -msgstr "" - -#: ../src/ui/dialog/spellcheck.cpp:124 -msgid "Accept the chosen suggestion" -msgstr "" - -#: ../src/ui/dialog/spellcheck.cpp:125 -msgid "Ignore this word only once" -msgstr "" - -#: ../src/ui/dialog/spellcheck.cpp:126 -msgid "Ignore this word in this session" -msgstr "" - -#: ../src/ui/dialog/spellcheck.cpp:127 -msgid "Add this word to the chosen dictionary" -msgstr "" - -#: ../src/ui/dialog/spellcheck.cpp:141 -msgid "Stop the check" -msgstr "" - -#: ../src/ui/dialog/spellcheck.cpp:142 -msgid "Start the check" -msgstr "" - -#: ../src/ui/dialog/spellcheck.cpp:460 -#, c-format -msgid "Finished, %d words added to dictionary" -msgstr "" - -#: ../src/ui/dialog/spellcheck.cpp:462 -#, c-format -msgid "Finished, nothing suspicious found" -msgstr "" - -#: ../src/ui/dialog/spellcheck.cpp:578 -#, c-format -msgid "Not in dictionary (%s): %s" -msgstr "" - -#: ../src/ui/dialog/spellcheck.cpp:725 -msgid "Checking..." -msgstr "" - -#: ../src/ui/dialog/spellcheck.cpp:794 -msgid "Fix spelling" -msgstr "" - -#: ../src/ui/dialog/text-edit.cpp:70 ../src/ui/dialog/svg-fonts-dialog.cpp:908 -msgid "_Font" -msgstr "" - -#: ../src/ui/dialog/text-edit.cpp:72 ../src/menus-skeleton.h:249 -#: ../src/ui/dialog/find.cpp:77 -msgid "_Text" -msgstr "" - -#: ../src/ui/dialog/text-edit.cpp:73 -msgid "Set as _default" -msgstr "" - -#: ../src/ui/dialog/text-edit.cpp:87 -msgid "AaBbCcIiPpQq12369$€¢?.;/()" -msgstr "" - -#. Align buttons -#: ../src/ui/dialog/text-edit.cpp:97 ../src/widgets/text-toolbar.cpp:1358 -#: ../src/widgets/text-toolbar.cpp:1359 -msgid "Align left" -msgstr "" - -#: ../src/ui/dialog/text-edit.cpp:98 ../src/widgets/text-toolbar.cpp:1366 -#: ../src/widgets/text-toolbar.cpp:1367 -msgid "Align center" -msgstr "" - -#: ../src/ui/dialog/text-edit.cpp:99 ../src/widgets/text-toolbar.cpp:1374 -#: ../src/widgets/text-toolbar.cpp:1375 -msgid "Align right" -msgstr "" - -#: ../src/ui/dialog/text-edit.cpp:100 ../src/widgets/text-toolbar.cpp:1383 -msgid "Justify (only flowed text)" -msgstr "" - -#. Direction buttons -#: ../src/ui/dialog/text-edit.cpp:109 ../src/widgets/text-toolbar.cpp:1418 -msgid "Horizontal text" -msgstr "" - -#: ../src/ui/dialog/text-edit.cpp:110 ../src/widgets/text-toolbar.cpp:1425 -msgid "Vertical text" -msgstr "" - -#: ../src/ui/dialog/text-edit.cpp:130 ../src/ui/dialog/text-edit.cpp:131 -msgid "Spacing between lines (percent of font size)" -msgstr "" - -#: ../src/ui/dialog/text-edit.cpp:147 -msgid "Text path offset" -msgstr "" - -#: ../src/ui/dialog/text-edit.cpp:588 ../src/ui/dialog/text-edit.cpp:662 -#: ../src/text-context.cpp:1518 -msgid "Set text style" -msgstr "" - -#: ../src/ui/dialog/xml-tree.cpp:70 ../src/ui/dialog/xml-tree.cpp:123 -msgid "New element node" -msgstr "" - -#: ../src/ui/dialog/xml-tree.cpp:71 ../src/ui/dialog/xml-tree.cpp:129 -msgid "New text node" -msgstr "" - -#: ../src/ui/dialog/xml-tree.cpp:72 ../src/ui/dialog/xml-tree.cpp:143 -msgid "nodeAsInXMLdialogTooltip|Delete node" -msgstr "" - -#: ../src/ui/dialog/xml-tree.cpp:73 ../src/ui/dialog/xml-tree.cpp:135 -#: ../src/ui/dialog/xml-tree.cpp:974 -msgid "Duplicate node" -msgstr "" - -#: ../src/ui/dialog/xml-tree.cpp:79 ../src/ui/dialog/xml-tree.cpp:188 -#: ../src/ui/dialog/xml-tree.cpp:1010 -msgid "Delete attribute" -msgstr "" - -#: ../src/ui/dialog/xml-tree.cpp:87 -msgid "Set" -msgstr "" - -#: ../src/ui/dialog/xml-tree.cpp:118 -msgid "Drag to reorder nodes" -msgstr "" - -#: ../src/ui/dialog/xml-tree.cpp:149 ../src/ui/dialog/xml-tree.cpp:150 -#: ../src/ui/dialog/xml-tree.cpp:1131 -msgid "Unindent node" -msgstr "" - -#: ../src/ui/dialog/xml-tree.cpp:154 ../src/ui/dialog/xml-tree.cpp:155 -#: ../src/ui/dialog/xml-tree.cpp:1109 -msgid "Indent node" -msgstr "" - -#: ../src/ui/dialog/xml-tree.cpp:159 ../src/ui/dialog/xml-tree.cpp:160 -#: ../src/ui/dialog/xml-tree.cpp:1060 -msgid "Raise node" -msgstr "" - -#: ../src/ui/dialog/xml-tree.cpp:164 ../src/ui/dialog/xml-tree.cpp:165 -#: ../src/ui/dialog/xml-tree.cpp:1078 -msgid "Lower node" -msgstr "" - -#: ../src/ui/dialog/xml-tree.cpp:205 -msgid "Attribute name" -msgstr "" - -#: ../src/ui/dialog/xml-tree.cpp:220 -msgid "Attribute value" -msgstr "" - -#: ../src/ui/dialog/xml-tree.cpp:308 -msgid "Click to select nodes, drag to rearrange." -msgstr "" - -#: ../src/ui/dialog/xml-tree.cpp:319 -msgid "Click attribute to edit." -msgstr "" - -#: ../src/ui/dialog/xml-tree.cpp:323 -#, c-format -msgid "" -"Attribute %s selected. Press Ctrl+Enter when done editing to " -"commit changes." -msgstr "" - -#: ../src/ui/dialog/xml-tree.cpp:563 -msgid "Drag XML subtree" -msgstr "" - -#: ../src/ui/dialog/xml-tree.cpp:865 -msgid "New element node..." -msgstr "" - -#: ../src/ui/dialog/xml-tree.cpp:903 -msgid "Cancel" -msgstr "" - -#: ../src/ui/dialog/xml-tree.cpp:909 -msgid "Create" -msgstr "" - -#: ../src/ui/dialog/xml-tree.cpp:940 -msgid "Create new element node" -msgstr "" - -#: ../src/ui/dialog/xml-tree.cpp:956 -msgid "Create new text node" -msgstr "" - -#: ../src/ui/dialog/xml-tree.cpp:991 -msgid "nodeAsInXMLinHistoryDialog|Delete node" -msgstr "" - -#: ../src/ui/dialog/xml-tree.cpp:1034 -msgid "Change attribute" -msgstr "" - -#: ../src/display/canvas-axonomgrid.cpp:369 ../src/display/canvas-grid.cpp:746 -msgid "Grid _units:" -msgstr "" - -#: ../src/display/canvas-axonomgrid.cpp:371 ../src/display/canvas-grid.cpp:748 -msgid "_Origin X:" -msgstr "" - -#: ../src/display/canvas-axonomgrid.cpp:371 ../src/display/canvas-grid.cpp:748 -#: ../src/ui/dialog/inkscape-preferences.cpp:735 -#: ../src/ui/dialog/inkscape-preferences.cpp:760 -msgid "X coordinate of grid origin" -msgstr "" - -#: ../src/display/canvas-axonomgrid.cpp:373 ../src/display/canvas-grid.cpp:750 -msgid "O_rigin Y:" -msgstr "" - -#: ../src/display/canvas-axonomgrid.cpp:373 ../src/display/canvas-grid.cpp:750 -#: ../src/ui/dialog/inkscape-preferences.cpp:736 -#: ../src/ui/dialog/inkscape-preferences.cpp:761 -msgid "Y coordinate of grid origin" -msgstr "" - -#: ../src/display/canvas-axonomgrid.cpp:375 ../src/display/canvas-grid.cpp:754 -msgid "Spacing _Y:" -msgstr "" - -#: ../src/display/canvas-axonomgrid.cpp:375 -#: ../src/ui/dialog/inkscape-preferences.cpp:764 -msgid "Base length of z-axis" -msgstr "" - -#: ../src/display/canvas-axonomgrid.cpp:377 -#: ../src/ui/dialog/inkscape-preferences.cpp:767 -#: ../src/widgets/box3d-toolbar.cpp:320 -msgid "Angle X:" -msgstr "" - -#: ../src/display/canvas-axonomgrid.cpp:377 -#: ../src/ui/dialog/inkscape-preferences.cpp:767 -msgid "Angle of x-axis" -msgstr "" - -#: ../src/display/canvas-axonomgrid.cpp:379 -#: ../src/ui/dialog/inkscape-preferences.cpp:768 -#: ../src/widgets/box3d-toolbar.cpp:399 -msgid "Angle Z:" -msgstr "" - -#: ../src/display/canvas-axonomgrid.cpp:379 -#: ../src/ui/dialog/inkscape-preferences.cpp:768 -msgid "Angle of z-axis" -msgstr "" - -#: ../src/display/canvas-axonomgrid.cpp:383 ../src/display/canvas-grid.cpp:758 -msgid "Minor grid line _color:" -msgstr "" - -#: ../src/display/canvas-axonomgrid.cpp:383 ../src/display/canvas-grid.cpp:758 -#: ../src/ui/dialog/inkscape-preferences.cpp:719 -msgid "Minor grid line color" -msgstr "" - -#: ../src/display/canvas-axonomgrid.cpp:383 ../src/display/canvas-grid.cpp:758 -msgid "Color of the minor grid lines" -msgstr "" - -#: ../src/display/canvas-axonomgrid.cpp:388 ../src/display/canvas-grid.cpp:763 -msgid "Ma_jor grid line color:" -msgstr "" - -#: ../src/display/canvas-axonomgrid.cpp:388 ../src/display/canvas-grid.cpp:763 -#: ../src/ui/dialog/inkscape-preferences.cpp:721 -msgid "Major grid line color" -msgstr "" - -#: ../src/display/canvas-axonomgrid.cpp:389 ../src/display/canvas-grid.cpp:764 -msgid "Color of the major (highlighted) grid lines" -msgstr "" - -#: ../src/display/canvas-axonomgrid.cpp:393 ../src/display/canvas-grid.cpp:768 -msgid "_Major grid line every:" -msgstr "" - -#: ../src/display/canvas-axonomgrid.cpp:393 ../src/display/canvas-grid.cpp:768 -msgid "lines" -msgstr "" - -#: ../src/display/canvas-grid.cpp:62 -msgid "Rectangular grid" -msgstr "" - -#: ../src/display/canvas-grid.cpp:63 -msgid "Axonometric grid" -msgstr "" - -#: ../src/display/canvas-grid.cpp:274 -msgid "Create new grid" -msgstr "" - -#: ../src/display/canvas-grid.cpp:340 -msgid "_Enabled" -msgstr "" - -#: ../src/display/canvas-grid.cpp:341 -msgid "" -"Determines whether to snap to this grid or not. Can be 'on' for invisible " -"grids." -msgstr "" - -#: ../src/display/canvas-grid.cpp:345 -msgid "Snap to visible _grid lines only" -msgstr "" - -#: ../src/display/canvas-grid.cpp:346 -msgid "" -"When zoomed out, not all grid lines will be displayed. Only the visible ones " -"will be snapped to" -msgstr "" - -#: ../src/display/canvas-grid.cpp:350 -msgid "_Visible" -msgstr "" - -#: ../src/display/canvas-grid.cpp:351 -msgid "" -"Determines whether the grid is displayed or not. Objects are still snapped " -"to invisible grids." -msgstr "" - -#: ../src/display/canvas-grid.cpp:752 -msgid "Spacing _X:" -msgstr "" - -#: ../src/display/canvas-grid.cpp:752 -#: ../src/ui/dialog/inkscape-preferences.cpp:741 -msgid "Distance between vertical grid lines" -msgstr "" - -#: ../src/display/canvas-grid.cpp:754 -#: ../src/ui/dialog/inkscape-preferences.cpp:742 -msgid "Distance between horizontal grid lines" -msgstr "" - -#: ../src/display/canvas-grid.cpp:785 -msgid "_Show dots instead of lines" -msgstr "" - -#: ../src/display/canvas-grid.cpp:786 -msgid "If set, displays dots at gridpoints instead of gridlines" -msgstr "" - -#. TRANSLATORS: undefined target for snapping -#: ../src/display/snap-indicator.cpp:72 ../src/display/snap-indicator.cpp:75 -#: ../src/display/snap-indicator.cpp:179 ../src/display/snap-indicator.cpp:182 -msgid "UNDEFINED" -msgstr "" - -#: ../src/display/snap-indicator.cpp:78 -msgid "grid line" -msgstr "" - -#: ../src/display/snap-indicator.cpp:81 -msgid "grid intersection" -msgstr "" - -#: ../src/display/snap-indicator.cpp:84 -msgid "grid line (perpendicular)" -msgstr "" - -#: ../src/display/snap-indicator.cpp:87 -msgid "guide" -msgstr "" - -#: ../src/display/snap-indicator.cpp:90 -msgid "guide intersection" -msgstr "" - -#: ../src/display/snap-indicator.cpp:93 -msgid "guide origin" -msgstr "" - -#: ../src/display/snap-indicator.cpp:96 -msgid "guide (perpendicular)" -msgstr "" - -#: ../src/display/snap-indicator.cpp:99 -msgid "grid-guide intersection" -msgstr "" - -#: ../src/display/snap-indicator.cpp:102 -msgid "cusp node" -msgstr "" - -#: ../src/display/snap-indicator.cpp:105 -msgid "smooth node" -msgstr "" - -#: ../src/display/snap-indicator.cpp:108 -msgid "path" -msgstr "" - -#: ../src/display/snap-indicator.cpp:111 -msgid "path (perpendicular)" -msgstr "" - -#: ../src/display/snap-indicator.cpp:114 -msgid "path (tangential)" -msgstr "" - -#: ../src/display/snap-indicator.cpp:117 -msgid "path intersection" -msgstr "" - -#: ../src/display/snap-indicator.cpp:120 -msgid "guide-path intersection" -msgstr "" - -#: ../src/display/snap-indicator.cpp:123 -msgid "clip-path" -msgstr "" - -#: ../src/display/snap-indicator.cpp:126 -msgid "mask-path" -msgstr "" - -#: ../src/display/snap-indicator.cpp:129 -msgid "bounding box corner" -msgstr "" - -#: ../src/display/snap-indicator.cpp:132 -msgid "bounding box side" -msgstr "" - -#: ../src/display/snap-indicator.cpp:135 -msgid "page border" -msgstr "" - -#: ../src/display/snap-indicator.cpp:138 -msgid "line midpoint" -msgstr "" - -#: ../src/display/snap-indicator.cpp:141 -msgid "object midpoint" -msgstr "" - -#: ../src/display/snap-indicator.cpp:144 -msgid "object rotation center" -msgstr "" - -#: ../src/display/snap-indicator.cpp:147 -msgid "bounding box side midpoint" -msgstr "" - -#: ../src/display/snap-indicator.cpp:150 -msgid "bounding box midpoint" -msgstr "" - -#: ../src/display/snap-indicator.cpp:153 -msgid "page corner" -msgstr "" - -#: ../src/display/snap-indicator.cpp:156 -msgid "quadrant point" -msgstr "" - -#: ../src/display/snap-indicator.cpp:160 -msgid "corner" -msgstr "" - -#: ../src/display/snap-indicator.cpp:163 -msgid "text anchor" -msgstr "" - -#: ../src/display/snap-indicator.cpp:166 -msgid "text baseline" -msgstr "" - -#: ../src/display/snap-indicator.cpp:169 -msgid "constrained angle" -msgstr "" - -#: ../src/display/snap-indicator.cpp:172 -msgid "constraint" -msgstr "" - -#: ../src/display/snap-indicator.cpp:185 -msgid "Bounding box corner" -msgstr "" - -#: ../src/display/snap-indicator.cpp:188 -msgid "Bounding box midpoint" -msgstr "" - -#: ../src/display/snap-indicator.cpp:191 -msgid "Bounding box side midpoint" -msgstr "" - -#: ../src/display/snap-indicator.cpp:194 ../src/ui/tool/node.cpp:1310 -msgid "Smooth node" -msgstr "" - -#: ../src/display/snap-indicator.cpp:197 ../src/ui/tool/node.cpp:1309 -msgid "Cusp node" -msgstr "" - -#: ../src/display/snap-indicator.cpp:200 -msgid "Line midpoint" -msgstr "" - -#: ../src/display/snap-indicator.cpp:203 -msgid "Object midpoint" -msgstr "" - -#: ../src/display/snap-indicator.cpp:206 -msgid "Object rotation center" -msgstr "" - -#: ../src/display/snap-indicator.cpp:210 -msgid "Handle" -msgstr "" - -#: ../src/display/snap-indicator.cpp:213 -msgid "Path intersection" -msgstr "" - -#: ../src/display/snap-indicator.cpp:216 -msgid "Guide" -msgstr "" - -#: ../src/display/snap-indicator.cpp:219 -msgid "Guide origin" -msgstr "" - -#: ../src/display/snap-indicator.cpp:222 -msgid "Convex hull corner" -msgstr "" - -#: ../src/display/snap-indicator.cpp:225 -msgid "Quadrant point" -msgstr "" - -#: ../src/display/snap-indicator.cpp:229 -msgid "Corner" -msgstr "" - -#: ../src/display/snap-indicator.cpp:232 -msgid "Text anchor" -msgstr "" - -#: ../src/display/snap-indicator.cpp:235 -msgid "Multiple of grid spacing" -msgstr "" - -#: ../src/display/snap-indicator.cpp:266 -msgid " to " -msgstr "" - -#: ../src/document.cpp:491 -#, c-format -msgid "New document %d" -msgstr "" - -#: ../src/document.cpp:517 -msgid "Memory document %1" -msgstr "" - -#: ../src/document.cpp:707 -#, c-format -msgid "Unnamed document %d" -msgstr "" - -#. We hit green anchor, closing Green-Blue-Red -#: ../src/draw-context.cpp:537 -msgid "Path is closed." -msgstr "" - -#. We hit bot start and end of single curve, closing paths -#: ../src/draw-context.cpp:552 -msgid "Closing path." -msgstr "" - -#: ../src/draw-context.cpp:653 -msgid "Draw path" -msgstr "" - -#: ../src/draw-context.cpp:810 -msgid "Creating single dot" -msgstr "" - -#: ../src/draw-context.cpp:811 -msgid "Create single dot" -msgstr "" - -#. alpha of color under cursor, to show in the statusbar -#. locale-sensitive printf is OK, since this goes to the UI, not into SVG -#: ../src/dropper-context.cpp:324 -#, c-format -msgid " alpha %.3g" -msgstr "" - -#. where the color is picked, to show in the statusbar -#: ../src/dropper-context.cpp:326 -#, c-format -msgid ", averaged with radius %d" -msgstr "" - -#: ../src/dropper-context.cpp:326 -#, c-format -msgid " under cursor" -msgstr "" - -#. message, to show in the statusbar -#: ../src/dropper-context.cpp:328 -msgid "Release mouse to set color." -msgstr "" - -#: ../src/dropper-context.cpp:328 ../src/tools-switch.cpp:231 -msgid "" -"Click to set fill, Shift+click to set stroke; drag to " -"average color in area; with Alt to pick inverse color; Ctrl+C " -"to copy the color under mouse to clipboard" -msgstr "" - -#: ../src/dropper-context.cpp:376 -msgid "Set picked color" -msgstr "" - -#: ../src/dyna-draw-context.cpp:591 -msgid "" -"Guide path selected; start drawing along the guide with Ctrl" -msgstr "" - -#: ../src/dyna-draw-context.cpp:593 -msgid "Select a guide path to track with Ctrl" -msgstr "" - -#: ../src/dyna-draw-context.cpp:728 -msgid "Tracking: connection to guide path lost!" -msgstr "" - -#: ../src/dyna-draw-context.cpp:728 -msgid "Tracking a guide path" -msgstr "" - -#: ../src/dyna-draw-context.cpp:731 -msgid "Drawing a calligraphic stroke" -msgstr "" - -#: ../src/dyna-draw-context.cpp:1020 -msgid "Draw calligraphic stroke" -msgstr "" - -#: ../src/eraser-context.cpp:504 -msgid "Drawing an eraser stroke" -msgstr "" - -#: ../src/eraser-context.cpp:810 -msgid "Draw eraser stroke" -msgstr "" - -#: ../src/event-context.cpp:668 -msgid "Space+mouse move to pan canvas" -msgstr "" - -#: ../src/event-log.cpp:37 -msgid "[Unchanged]" -msgstr "" - -#. Edit -#: ../src/event-log.cpp:275 ../src/event-log.cpp:278 ../src/verbs.cpp:2329 -msgid "_Undo" -msgstr "" - -#: ../src/event-log.cpp:285 ../src/event-log.cpp:289 ../src/verbs.cpp:2331 -msgid "_Redo" -msgstr "" - -#: ../src/extension/dependency.cpp:235 -msgid "Dependency:" -msgstr "" - -#: ../src/extension/dependency.cpp:236 -msgid " type: " -msgstr "" - -#: ../src/extension/dependency.cpp:237 -msgid " location: " -msgstr "" - -#: ../src/extension/dependency.cpp:238 -msgid " string: " -msgstr "" - -#: ../src/extension/dependency.cpp:241 -msgid " description: " -msgstr "" - -#: ../src/extension/effect.cpp:41 -msgid " (No preferences)" -msgstr "" - -#: ../src/extension/effect.h:70 ../src/verbs.cpp:2102 -msgid "Extensions" -msgstr "" - -#. This is some filler text, needs to change before relase -#: ../src/extension/error-file.cpp:52 -msgid "" -"One or more extensions failed to load\n" -"\n" -"The failed extensions have been skipped. Inkscape will continue to run " -"normally but those extensions will be unavailable. For details to " -"troubleshoot this problem, please refer to the error log located at: " -msgstr "" - -#: ../src/extension/error-file.cpp:66 -msgid "Show dialog on startup" -msgstr "" - -#: ../src/extension/execution-env.cpp:144 -#, c-format -msgid "'%s' working, please wait..." -msgstr "" - -#. static int i = 0; -#. std::cout << "Checking module[" << i++ << "]: " << name << std::endl; -#: ../src/extension/extension.cpp:263 -msgid "" -" This is caused by an improper .inx file for this extension. An improper ." -"inx file could have been caused by a faulty installation of Inkscape." -msgstr "" - -#: ../src/extension/extension.cpp:266 -msgid "an ID was not defined for it." -msgstr "" - -#: ../src/extension/extension.cpp:270 -msgid "there was no name defined for it." -msgstr "" - -#: ../src/extension/extension.cpp:274 -msgid "the XML description of it got lost." -msgstr "" - -#: ../src/extension/extension.cpp:278 -msgid "no implementation was defined for the extension." -msgstr "" - -#. std::cout << "Failed: " << *(_deps[i]) << std::endl; -#: ../src/extension/extension.cpp:285 -msgid "a dependency was not met." -msgstr "" - -#: ../src/extension/extension.cpp:305 -msgid "Extension \"" -msgstr "" - -#: ../src/extension/extension.cpp:305 -msgid "\" failed to load because " -msgstr "" - -#: ../src/extension/extension.cpp:654 -#, c-format -msgid "Could not create extension error log file '%s'" -msgstr "" - -#: ../src/extension/extension.cpp:762 -#: ../share/extensions/webslicer_create_rect.inx.h:2 -msgid "Name:" -msgstr "" - -#: ../src/extension/extension.cpp:763 -msgid "ID:" -msgstr "" - -#: ../src/extension/extension.cpp:764 -msgid "State:" -msgstr "" - -#: ../src/extension/extension.cpp:764 -msgid "Loaded" -msgstr "" - -#: ../src/extension/extension.cpp:764 -msgid "Unloaded" -msgstr "" - -#: ../src/extension/extension.cpp:764 -msgid "Deactivated" -msgstr "" - -#: ../src/extension/extension.cpp:804 -msgid "" -"Currently there is no help available for this Extension. Please look on the " -"Inkscape website or ask on the mailing lists if you have questions regarding " -"this extension." -msgstr "" - -#: ../src/extension/implementation/script.cpp:1037 -msgid "" -"Inkscape has received additional data from the script executed. The script " -"did not return an error, but this may indicate the results will not be as " -"expected." -msgstr "" - -#: ../src/extension/init.cpp:298 -msgid "Null external module directory name. Modules will not be loaded." -msgstr "" - -#: ../src/extension/init.cpp:312 -#: ../src/extension/internal/filter/filter-file.cpp:59 -#, c-format -msgid "" -"Modules directory (%s) is unavailable. External modules in that directory " -"will not be loaded." -msgstr "" - -#: ../src/extension/internal/bitmap/adaptiveThreshold.cpp:39 -msgid "Adaptive Threshold" -msgstr "" - -#: ../src/extension/internal/bitmap/adaptiveThreshold.cpp:41 -#: ../src/extension/internal/bitmap/raise.cpp:42 -#: ../src/extension/internal/bitmap/sample.cpp:41 -#: ../src/extension/internal/bluredge.cpp:137 -#: ../src/ui/dialog/object-attributes.cpp:68 -#: ../src/ui/dialog/object-attributes.cpp:76 -#: ../src/widgets/calligraphy-toolbar.cpp:451 -#: ../src/widgets/erasor-toolbar.cpp:149 ../src/widgets/spray-toolbar.cpp:132 -#: ../src/widgets/tweak-toolbar.cpp:146 -#: ../share/extensions/foldablebox.inx.h:2 -msgid "Width:" -msgstr "" - -#: ../src/extension/internal/bitmap/adaptiveThreshold.cpp:42 -#: ../src/extension/internal/bitmap/raise.cpp:43 -#: ../src/extension/internal/bitmap/sample.cpp:42 -#: ../src/ui/dialog/object-attributes.cpp:69 -#: ../src/ui/dialog/object-attributes.cpp:77 -#: ../share/extensions/foldablebox.inx.h:3 -msgid "Height:" -msgstr "" - -#. Label -#: ../src/extension/internal/bitmap/adaptiveThreshold.cpp:43 -#: ../src/widgets/gradient-toolbar.cpp:1172 -#: ../src/widgets/gradient-vector.cpp:926 -#: ../share/extensions/printing_marks.inx.h:12 -msgid "Offset:" -msgstr "" - -#: ../src/extension/internal/bitmap/adaptiveThreshold.cpp:47 -#: ../src/extension/internal/bitmap/addNoise.cpp:58 -#: ../src/extension/internal/bitmap/blur.cpp:45 -#: ../src/extension/internal/bitmap/channel.cpp:64 -#: ../src/extension/internal/bitmap/charcoal.cpp:45 -#: ../src/extension/internal/bitmap/colorize.cpp:56 -#: ../src/extension/internal/bitmap/contrast.cpp:46 -#: ../src/extension/internal/bitmap/crop.cpp:75 -#: ../src/extension/internal/bitmap/cycleColormap.cpp:43 -#: ../src/extension/internal/bitmap/despeckle.cpp:41 -#: ../src/extension/internal/bitmap/edge.cpp:43 -#: ../src/extension/internal/bitmap/emboss.cpp:45 -#: ../src/extension/internal/bitmap/enhance.cpp:40 -#: ../src/extension/internal/bitmap/equalize.cpp:40 -#: ../src/extension/internal/bitmap/gaussianBlur.cpp:45 -#: ../src/extension/internal/bitmap/implode.cpp:43 -#: ../src/extension/internal/bitmap/level.cpp:49 -#: ../src/extension/internal/bitmap/levelChannel.cpp:71 -#: ../src/extension/internal/bitmap/medianFilter.cpp:43 -#: ../src/extension/internal/bitmap/modulate.cpp:48 -#: ../src/extension/internal/bitmap/negate.cpp:41 -#: ../src/extension/internal/bitmap/normalize.cpp:41 -#: ../src/extension/internal/bitmap/oilPaint.cpp:43 -#: ../src/extension/internal/bitmap/opacity.cpp:44 -#: ../src/extension/internal/bitmap/raise.cpp:48 -#: ../src/extension/internal/bitmap/reduceNoise.cpp:46 -#: ../src/extension/internal/bitmap/sample.cpp:46 -#: ../src/extension/internal/bitmap/shade.cpp:48 -#: ../src/extension/internal/bitmap/sharpen.cpp:45 -#: ../src/extension/internal/bitmap/solarize.cpp:45 -#: ../src/extension/internal/bitmap/spread.cpp:43 -#: ../src/extension/internal/bitmap/swirl.cpp:43 -#: ../src/extension/internal/bitmap/threshold.cpp:44 -#: ../src/extension/internal/bitmap/unsharpmask.cpp:50 -#: ../src/extension/internal/bitmap/wave.cpp:45 -msgid "Raster" -msgstr "" - -#: ../src/extension/internal/bitmap/adaptiveThreshold.cpp:49 -msgid "Apply adaptive thresholding to selected bitmap(s)" -msgstr "" - -#: ../src/extension/internal/bitmap/addNoise.cpp:45 -msgid "Add Noise" -msgstr "" - -#. _settings->add_checkbutton(false, SP_ATTR_STITCHTILES, _("Stitch Tiles"), "stitch", "noStitch"); -#: ../src/extension/internal/bitmap/addNoise.cpp:47 -#: ../src/extension/internal/filter/color.h:426 -#: ../src/extension/internal/filter/color.h:1497 -#: ../src/extension/internal/filter/color.h:1585 -#: ../src/extension/internal/filter/distort.h:69 -#: ../src/extension/internal/filter/morphology.h:60 ../src/rdf.cpp:241 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2613 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2692 -#: ../src/ui/dialog/object-attributes.cpp:49 -#: ../share/extensions/jessyInk_effects.inx.h:5 -#: ../share/extensions/jessyInk_export.inx.h:3 -#: ../share/extensions/jessyInk_transitions.inx.h:5 -#: ../share/extensions/webslicer_create_rect.inx.h:14 -msgid "Type:" -msgstr "" - -#: ../src/extension/internal/bitmap/addNoise.cpp:48 -msgid "Uniform Noise" -msgstr "" - -#: ../src/extension/internal/bitmap/addNoise.cpp:49 -msgid "Gaussian Noise" -msgstr "" - -#: ../src/extension/internal/bitmap/addNoise.cpp:50 -msgid "Multiplicative Gaussian Noise" -msgstr "" - -#: ../src/extension/internal/bitmap/addNoise.cpp:51 -msgid "Impulse Noise" -msgstr "" - -#: ../src/extension/internal/bitmap/addNoise.cpp:52 -msgid "Laplacian Noise" -msgstr "" - -#: ../src/extension/internal/bitmap/addNoise.cpp:53 -msgid "Poisson Noise" -msgstr "" - -#: ../src/extension/internal/bitmap/addNoise.cpp:60 -msgid "Add random noise to selected bitmap(s)" -msgstr "" - -#: ../src/extension/internal/bitmap/blur.cpp:38 -#: ../src/extension/internal/filter/blurs.h:54 -#: ../src/extension/internal/filter/paint.h:710 -#: ../src/extension/internal/filter/transparency.h:343 -msgid "Blur" -msgstr "" - -#: ../src/extension/internal/bitmap/blur.cpp:40 -#: ../src/extension/internal/bitmap/charcoal.cpp:40 -#: ../src/extension/internal/bitmap/edge.cpp:39 -#: ../src/extension/internal/bitmap/emboss.cpp:40 -#: ../src/extension/internal/bitmap/medianFilter.cpp:39 -#: ../src/extension/internal/bitmap/oilPaint.cpp:39 -#: ../src/extension/internal/bitmap/sharpen.cpp:40 -#: ../src/extension/internal/bitmap/unsharpmask.cpp:43 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2670 -msgid "Radius:" -msgstr "" - -#: ../src/extension/internal/bitmap/blur.cpp:41 -#: ../src/extension/internal/bitmap/charcoal.cpp:41 -#: ../src/extension/internal/bitmap/emboss.cpp:41 -#: ../src/extension/internal/bitmap/gaussianBlur.cpp:41 -#: ../src/extension/internal/bitmap/sharpen.cpp:41 -#: ../src/extension/internal/bitmap/unsharpmask.cpp:44 -msgid "Sigma:" -msgstr "" - -#: ../src/extension/internal/bitmap/blur.cpp:47 -msgid "Blur selected bitmap(s)" -msgstr "" - -#: ../src/extension/internal/bitmap/channel.cpp:48 -msgid "Channel" -msgstr "" - -#: ../src/extension/internal/bitmap/channel.cpp:50 -msgid "Layer:" -msgstr "" - -#: ../src/extension/internal/bitmap/channel.cpp:51 -#: ../src/extension/internal/bitmap/levelChannel.cpp:55 -msgid "Red Channel" -msgstr "" - -#: ../src/extension/internal/bitmap/channel.cpp:52 -#: ../src/extension/internal/bitmap/levelChannel.cpp:56 -msgid "Green Channel" -msgstr "" - -#: ../src/extension/internal/bitmap/channel.cpp:53 -#: ../src/extension/internal/bitmap/levelChannel.cpp:57 -msgid "Blue Channel" -msgstr "" - -#: ../src/extension/internal/bitmap/channel.cpp:54 -#: ../src/extension/internal/bitmap/levelChannel.cpp:58 -msgid "Cyan Channel" -msgstr "" - -#: ../src/extension/internal/bitmap/channel.cpp:55 -#: ../src/extension/internal/bitmap/levelChannel.cpp:59 -msgid "Magenta Channel" -msgstr "" - -#: ../src/extension/internal/bitmap/channel.cpp:56 -#: ../src/extension/internal/bitmap/levelChannel.cpp:60 -msgid "Yellow Channel" -msgstr "" - -#: ../src/extension/internal/bitmap/channel.cpp:57 -#: ../src/extension/internal/bitmap/levelChannel.cpp:61 -msgid "Black Channel" -msgstr "" - -#: ../src/extension/internal/bitmap/channel.cpp:58 -#: ../src/extension/internal/bitmap/levelChannel.cpp:62 -msgid "Opacity Channel" -msgstr "" - -#: ../src/extension/internal/bitmap/channel.cpp:59 -#: ../src/extension/internal/bitmap/levelChannel.cpp:63 -msgid "Matte Channel" -msgstr "" - -#: ../src/extension/internal/bitmap/channel.cpp:66 -msgid "Extract specific channel from image" -msgstr "" - -#: ../src/extension/internal/bitmap/charcoal.cpp:38 -msgid "Charcoal" -msgstr "" - -#: ../src/extension/internal/bitmap/charcoal.cpp:47 -msgid "Apply charcoal stylization to selected bitmap(s)" -msgstr "" - -#: ../src/extension/internal/bitmap/colorize.cpp:50 -#: ../src/extension/internal/filter/color.h:317 -msgid "Colorize" -msgstr "" - -#: ../src/extension/internal/bitmap/colorize.cpp:58 -msgid "Colorize selected bitmap(s) with specified color, using given opacity" -msgstr "" - -#: ../src/extension/internal/bitmap/contrast.cpp:40 -#: ../src/extension/internal/filter/color.h:1114 -msgid "Contrast" -msgstr "" - -#: ../src/extension/internal/bitmap/contrast.cpp:42 -msgid "Adjust:" -msgstr "" - -#: ../src/extension/internal/bitmap/contrast.cpp:48 -msgid "Increase or decrease contrast in bitmap(s)" -msgstr "" - -#: ../src/extension/internal/bitmap/crop.cpp:66 -#: ../src/extension/internal/filter/bumps.h:86 -#: ../src/extension/internal/filter/bumps.h:315 -msgid "Crop" -msgstr "" - -#: ../src/extension/internal/bitmap/crop.cpp:68 -msgid "Top (px):" -msgstr "" - -#: ../src/extension/internal/bitmap/crop.cpp:69 -msgid "Bottom (px):" -msgstr "" - -#: ../src/extension/internal/bitmap/crop.cpp:70 -msgid "Left (px):" -msgstr "" - -#: ../src/extension/internal/bitmap/crop.cpp:71 -msgid "Right (px):" -msgstr "" - -#: ../src/extension/internal/bitmap/crop.cpp:77 -msgid "Crop selected bitmap(s)." -msgstr "" - -#: ../src/extension/internal/bitmap/cycleColormap.cpp:37 -msgid "Cycle Colormap" -msgstr "" - -#: ../src/extension/internal/bitmap/cycleColormap.cpp:39 -#: ../src/extension/internal/bitmap/spread.cpp:39 -#: ../src/extension/internal/bitmap/unsharpmask.cpp:45 -#: ../src/widgets/spray-toolbar.cpp:224 -msgid "Amount:" -msgstr "" - -#: ../src/extension/internal/bitmap/cycleColormap.cpp:45 -msgid "Cycle colormap(s) of selected bitmap(s)" -msgstr "" - -#: ../src/extension/internal/bitmap/despeckle.cpp:36 -msgid "Despeckle" -msgstr "" - -#: ../src/extension/internal/bitmap/despeckle.cpp:43 -msgid "Reduce speckle noise of selected bitmap(s)" -msgstr "" - -#: ../src/extension/internal/bitmap/edge.cpp:37 -msgid "Edge" -msgstr "" - -#: ../src/extension/internal/bitmap/edge.cpp:45 -msgid "Highlight edges of selected bitmap(s)" -msgstr "" - -#: ../src/extension/internal/bitmap/emboss.cpp:38 -msgid "Emboss" -msgstr "" - -#: ../src/extension/internal/bitmap/emboss.cpp:47 -msgid "Emboss selected bitmap(s); highlight edges with 3D effect" -msgstr "" - -#: ../src/extension/internal/bitmap/enhance.cpp:35 -msgid "Enhance" -msgstr "" - -#: ../src/extension/internal/bitmap/enhance.cpp:42 -msgid "Enhance selected bitmap(s); minimize noise" -msgstr "" - -#: ../src/extension/internal/bitmap/equalize.cpp:35 -msgid "Equalize" -msgstr "" - -#: ../src/extension/internal/bitmap/equalize.cpp:42 -msgid "Equalize selected bitmap(s); histogram equalization" -msgstr "" - -#: ../src/extension/internal/bitmap/gaussianBlur.cpp:38 -#: ../src/filter-enums.cpp:28 -msgid "Gaussian Blur" -msgstr "" - -#: ../src/extension/internal/bitmap/gaussianBlur.cpp:40 -#: ../src/extension/internal/bitmap/implode.cpp:39 -#: ../src/extension/internal/bitmap/solarize.cpp:41 -msgid "Factor:" -msgstr "" - -#: ../src/extension/internal/bitmap/gaussianBlur.cpp:47 -msgid "Gaussian blur selected bitmap(s)" -msgstr "" - -#: ../src/extension/internal/bitmap/implode.cpp:37 -msgid "Implode" -msgstr "" - -#: ../src/extension/internal/bitmap/implode.cpp:45 -msgid "Implode selected bitmap(s)" -msgstr "" - -#: ../src/extension/internal/bitmap/level.cpp:41 -#: ../src/extension/internal/filter/color.h:742 -#: ../src/extension/internal/filter/image.h:56 -#: ../src/extension/internal/filter/morphology.h:66 -#: ../src/extension/internal/filter/paint.h:345 -msgid "Level" -msgstr "" - -#: ../src/extension/internal/bitmap/level.cpp:43 -#: ../src/extension/internal/bitmap/levelChannel.cpp:65 -msgid "Black Point:" -msgstr "" - -#: ../src/extension/internal/bitmap/level.cpp:44 -#: ../src/extension/internal/bitmap/levelChannel.cpp:66 -msgid "White Point:" -msgstr "" - -#: ../src/extension/internal/bitmap/level.cpp:45 -#: ../src/extension/internal/bitmap/levelChannel.cpp:67 -msgid "Gamma Correction:" -msgstr "" - -#: ../src/extension/internal/bitmap/level.cpp:51 -msgid "" -"Level selected bitmap(s) by scaling values falling between the given ranges " -"to the full color range" -msgstr "" - -#: ../src/extension/internal/bitmap/levelChannel.cpp:52 -msgid "Level (with Channel)" -msgstr "" - -#: ../src/extension/internal/bitmap/levelChannel.cpp:54 -#: ../src/extension/internal/filter/color.h:636 -msgid "Channel:" -msgstr "" - -#: ../src/extension/internal/bitmap/levelChannel.cpp:73 -msgid "" -"Level the specified channel of selected bitmap(s) by scaling values falling " -"between the given ranges to the full color range" -msgstr "" - -#: ../src/extension/internal/bitmap/medianFilter.cpp:37 -msgid "Median" -msgstr "" - -#: ../src/extension/internal/bitmap/medianFilter.cpp:45 -msgid "" -"Replace each pixel component with the median color in a circular neighborhood" -msgstr "" - -#: ../src/extension/internal/bitmap/modulate.cpp:40 -msgid "HSB Adjust" -msgstr "" - -#: ../src/extension/internal/bitmap/modulate.cpp:42 -msgid "Hue:" -msgstr "" - -#: ../src/extension/internal/bitmap/modulate.cpp:43 -msgid "Saturation:" -msgstr "" - -#: ../src/extension/internal/bitmap/modulate.cpp:44 -msgid "Brightness:" -msgstr "" - -#: ../src/extension/internal/bitmap/modulate.cpp:50 -msgid "" -"Adjust the amount of hue, saturation, and brightness in selected bitmap(s)" -msgstr "" - -#: ../src/extension/internal/bitmap/negate.cpp:36 -msgid "Negate" -msgstr "" - -#: ../src/extension/internal/bitmap/negate.cpp:43 -msgid "Negate (take inverse) selected bitmap(s)" -msgstr "" - -#: ../src/extension/internal/bitmap/normalize.cpp:36 -msgid "Normalize" -msgstr "" - -#: ../src/extension/internal/bitmap/normalize.cpp:43 -msgid "" -"Normalize selected bitmap(s), expanding color range to the full possible " -"range of color" -msgstr "" - -#: ../src/extension/internal/bitmap/oilPaint.cpp:37 -msgid "Oil Paint" -msgstr "" - -#: ../src/extension/internal/bitmap/oilPaint.cpp:45 -msgid "Stylize selected bitmap(s) so that they appear to be painted with oils" -msgstr "" - -#: ../src/extension/internal/bitmap/opacity.cpp:40 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2660 -#: ../src/widgets/dropper-toolbar.cpp:111 -msgid "Opacity:" -msgstr "" - -#: ../src/extension/internal/bitmap/opacity.cpp:46 -msgid "Modify opacity channel(s) of selected bitmap(s)." -msgstr "" - -#: ../src/extension/internal/bitmap/raise.cpp:40 -msgid "Raise" -msgstr "" - -#: ../src/extension/internal/bitmap/raise.cpp:44 -msgid "Raised" -msgstr "" - -#: ../src/extension/internal/bitmap/raise.cpp:50 -msgid "" -"Alter lightness the edges of selected bitmap(s) to create a raised appearance" -msgstr "" - -#: ../src/extension/internal/bitmap/reduceNoise.cpp:40 -msgid "Reduce Noise" -msgstr "" - -#: ../src/extension/internal/bitmap/reduceNoise.cpp:42 -#: ../share/extensions/jessyInk_effects.inx.h:3 -#: ../share/extensions/jessyInk_view.inx.h:3 -#: ../share/extensions/lindenmayer.inx.h:5 -msgid "Order:" -msgstr "" - -#: ../src/extension/internal/bitmap/reduceNoise.cpp:48 -msgid "" -"Reduce noise in selected bitmap(s) using a noise peak elimination filter" -msgstr "" - -#: ../src/extension/internal/bitmap/sample.cpp:39 -msgid "Resample" -msgstr "" - -#: ../src/extension/internal/bitmap/sample.cpp:48 -msgid "" -"Alter the resolution of selected image by resizing it to the given pixel size" -msgstr "" - -#: ../src/extension/internal/bitmap/shade.cpp:40 -msgid "Shade" -msgstr "" - -#: ../src/extension/internal/bitmap/shade.cpp:42 -msgid "Azimuth:" -msgstr "" - -#: ../src/extension/internal/bitmap/shade.cpp:43 -msgid "Elevation:" -msgstr "" - -#: ../src/extension/internal/bitmap/shade.cpp:44 -msgid "Colored Shading" -msgstr "" - -#: ../src/extension/internal/bitmap/shade.cpp:50 -msgid "Shade selected bitmap(s) simulating distant light source" -msgstr "" - -#: ../src/extension/internal/bitmap/sharpen.cpp:47 -msgid "Sharpen selected bitmap(s)" -msgstr "" - -#: ../src/extension/internal/bitmap/solarize.cpp:39 -#: ../src/extension/internal/filter/color.h:1494 -#: ../src/extension/internal/filter/color.h:1498 -msgid "Solarize" -msgstr "" - -#: ../src/extension/internal/bitmap/solarize.cpp:47 -msgid "Solarize selected bitmap(s), like overexposing photographic film" -msgstr "" - -#: ../src/extension/internal/bitmap/spread.cpp:37 -msgid "Dither" -msgstr "" - -#: ../src/extension/internal/bitmap/spread.cpp:45 -msgid "" -"Randomly scatter pixels in selected bitmap(s), within the given radius of " -"the original position" -msgstr "" - -#: ../src/extension/internal/bitmap/swirl.cpp:39 -msgid "Degrees:" -msgstr "" - -#: ../src/extension/internal/bitmap/swirl.cpp:45 -msgid "Swirl selected bitmap(s) around center point" -msgstr "" - -#. TRANSLATORS: see http://docs.gimp.org/en/gimp-tool-threshold.html -#: ../src/extension/internal/bitmap/threshold.cpp:38 -msgid "Threshold" -msgstr "" - -#: ../src/extension/internal/bitmap/threshold.cpp:40 -#: ../src/extension/internal/bitmap/unsharpmask.cpp:46 -#: ../src/widgets/paintbucket-toolbar.cpp:166 -msgid "Threshold:" -msgstr "" - -#: ../src/extension/internal/bitmap/threshold.cpp:46 -msgid "Threshold selected bitmap(s)" -msgstr "" - -#: ../src/extension/internal/bitmap/unsharpmask.cpp:41 -msgid "Unsharp Mask" -msgstr "" - -#: ../src/extension/internal/bitmap/unsharpmask.cpp:52 -msgid "Sharpen selected bitmap(s) using unsharp mask algorithms" -msgstr "" - -#: ../src/extension/internal/bitmap/wave.cpp:38 -msgid "Wave" -msgstr "" - -#: ../src/extension/internal/bitmap/wave.cpp:40 -msgid "Amplitude:" -msgstr "" - -#: ../src/extension/internal/bitmap/wave.cpp:41 -msgid "Wavelength:" -msgstr "" - -#: ../src/extension/internal/bitmap/wave.cpp:47 -msgid "Alter selected bitmap(s) along sine wave" -msgstr "" - -#: ../src/extension/internal/bluredge.cpp:135 -msgid "Inset/Outset Halo" -msgstr "" - -#: ../src/extension/internal/bluredge.cpp:137 -msgid "Width in px of the halo" -msgstr "" - -#: ../src/extension/internal/bluredge.cpp:138 -msgid "Number of steps:" -msgstr "" - -#: ../src/extension/internal/bluredge.cpp:138 -msgid "Number of inset/outset copies of the object to make" -msgstr "" - -#: ../src/extension/internal/bluredge.cpp:142 -#: ../share/extensions/extrude.inx.h:5 -#: ../share/extensions/generate_voronoi.inx.h:9 -#: ../share/extensions/interp.inx.h:7 ../share/extensions/motion.inx.h:4 -#: ../share/extensions/pathalongpath.inx.h:18 -#: ../share/extensions/pathscatter.inx.h:20 -#: ../share/extensions/voronoi2svg.inx.h:13 -msgid "Generate from Path" -msgstr "" - -#: ../src/extension/internal/cairo-ps-out.cpp:327 -#: ../share/extensions/ps_input.inx.h:3 -msgid "PostScript" -msgstr "" - -#: ../src/extension/internal/cairo-ps-out.cpp:329 -#: ../src/extension/internal/cairo-ps-out.cpp:370 -msgid "Restrict to PS level:" -msgstr "" - -#: ../src/extension/internal/cairo-ps-out.cpp:330 -#: ../src/extension/internal/cairo-ps-out.cpp:371 -msgid "PostScript level 3" -msgstr "" - -#: ../src/extension/internal/cairo-ps-out.cpp:332 -#: ../src/extension/internal/cairo-ps-out.cpp:373 -msgid "PostScript level 2" -msgstr "" - -#: ../src/extension/internal/cairo-ps-out.cpp:335 -#: ../src/extension/internal/cairo-ps-out.cpp:376 -#: ../src/extension/internal/cairo-renderer-pdf-out.cpp:250 -#: ../src/extension/internal/emf-win32-inout.cpp:2553 -msgid "Convert texts to paths" -msgstr "" - -#: ../src/extension/internal/cairo-ps-out.cpp:336 -msgid "PS+LaTeX: Omit text in PS, and create LaTeX file" -msgstr "" - -#: ../src/extension/internal/cairo-ps-out.cpp:337 -#: ../src/extension/internal/cairo-ps-out.cpp:378 -#: ../src/extension/internal/cairo-renderer-pdf-out.cpp:252 -msgid "Rasterize filter effects" -msgstr "" - -#: ../src/extension/internal/cairo-ps-out.cpp:338 -#: ../src/extension/internal/cairo-ps-out.cpp:379 -#: ../src/extension/internal/cairo-renderer-pdf-out.cpp:253 -msgid "Resolution for rasterization (dpi):" -msgstr "" - -#: ../src/extension/internal/cairo-ps-out.cpp:339 -#: ../src/extension/internal/cairo-ps-out.cpp:380 -msgid "Output page size" -msgstr "" - -#: ../src/extension/internal/cairo-ps-out.cpp:340 -#: ../src/extension/internal/cairo-ps-out.cpp:381 -#: ../src/extension/internal/cairo-renderer-pdf-out.cpp:255 -msgid "Use document's page size" -msgstr "" - -#: ../src/extension/internal/cairo-ps-out.cpp:341 -#: ../src/extension/internal/cairo-ps-out.cpp:382 -#: ../src/extension/internal/cairo-renderer-pdf-out.cpp:256 -msgid "Use exported object's size" -msgstr "" - -#: ../src/extension/internal/cairo-ps-out.cpp:343 -#: ../src/extension/internal/cairo-ps-out.cpp:384 -msgid "Bleed/margin (mm)" -msgstr "" - -#: ../src/extension/internal/cairo-ps-out.cpp:344 -#: ../src/extension/internal/cairo-ps-out.cpp:385 -#: ../src/extension/internal/cairo-renderer-pdf-out.cpp:259 -msgid "Limit export to the object with ID:" -msgstr "" - -#: ../src/extension/internal/cairo-ps-out.cpp:348 -#: ../share/extensions/ps_input.inx.h:2 -msgid "PostScript (*.ps)" -msgstr "" - -#: ../src/extension/internal/cairo-ps-out.cpp:349 -msgid "PostScript File" -msgstr "" - -#: ../src/extension/internal/cairo-ps-out.cpp:368 -#: ../share/extensions/eps_input.inx.h:3 -msgid "Encapsulated PostScript" -msgstr "" - -#: ../src/extension/internal/cairo-ps-out.cpp:377 -msgid "EPS+LaTeX: Omit text in EPS, and create LaTeX file" -msgstr "" - -#: ../src/extension/internal/cairo-ps-out.cpp:389 -#: ../share/extensions/eps_input.inx.h:2 -msgid "Encapsulated PostScript (*.eps)" -msgstr "" - -#: ../src/extension/internal/cairo-ps-out.cpp:390 -msgid "Encapsulated PostScript File" -msgstr "" - -#: ../src/extension/internal/cairo-renderer-pdf-out.cpp:244 -msgid "Restrict to PDF version:" -msgstr "" - -#: ../src/extension/internal/cairo-renderer-pdf-out.cpp:246 -msgid "PDF 1.5" -msgstr "" - -#: ../src/extension/internal/cairo-renderer-pdf-out.cpp:248 -msgid "PDF 1.4" -msgstr "" - -#: ../src/extension/internal/cairo-renderer-pdf-out.cpp:251 -msgid "PDF+LaTeX: Omit text in PDF, and create LaTeX file" -msgstr "" - -#: ../src/extension/internal/cairo-renderer-pdf-out.cpp:254 -msgid "Output page size:" -msgstr "" - -#: ../src/extension/internal/cairo-renderer-pdf-out.cpp:258 -msgid "Bleed/margin (mm):" -msgstr "" - -#: ../src/extension/internal/cdr-input.cpp:100 -#: ../src/extension/internal/pdf-input-cairo.cpp:70 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:86 -#: ../src/extension/internal/vsd-input.cpp:100 -msgid "Select page:" -msgstr "" - -#. Display total number of pages -#: ../src/extension/internal/cdr-input.cpp:112 -#: ../src/extension/internal/pdf-input-cairo.cpp:88 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:105 -#: ../src/extension/internal/vsd-input.cpp:112 -#, c-format -msgid "out of %i" -msgstr "" - -#: ../src/extension/internal/cdr-input.cpp:143 -#: ../src/extension/internal/vsd-input.cpp:143 -msgid "Page Selector" -msgstr "" - -#: ../src/extension/internal/cdr-input.cpp:267 -msgid "Corel DRAW Input" -msgstr "" - -#: ../src/extension/internal/cdr-input.cpp:272 -msgid "Corel DRAW 7-X4 files (*.cdr)" -msgstr "" - -#: ../src/extension/internal/cdr-input.cpp:273 -msgid "Open files saved in Corel DRAW 7-X4" -msgstr "" - -#: ../src/extension/internal/cdr-input.cpp:280 -msgid "Corel DRAW templates input" -msgstr "" - -#: ../src/extension/internal/cdr-input.cpp:285 -msgid "Corel DRAW 7-13 template files (*.cdt)" -msgstr "" - -#: ../src/extension/internal/cdr-input.cpp:286 -msgid "Open files saved in Corel DRAW 7-13" -msgstr "" - -#: ../src/extension/internal/cdr-input.cpp:293 -msgid "Corel DRAW Compressed Exchange files input" -msgstr "" - -#: ../src/extension/internal/cdr-input.cpp:298 -msgid "Corel DRAW Compressed Exchange files (*.ccx)" -msgstr "" - -#: ../src/extension/internal/cdr-input.cpp:299 -msgid "Open compressed exchange files saved in Corel DRAW" -msgstr "" - -#: ../src/extension/internal/cdr-input.cpp:306 -msgid "Corel DRAW Presentation Exchange files input" -msgstr "" - -#: ../src/extension/internal/cdr-input.cpp:311 -msgid "Corel DRAW Presentation Exchange files (*.cmx)" -msgstr "" - -#: ../src/extension/internal/cdr-input.cpp:312 -msgid "Open presentation exchange files saved in Corel DRAW" -msgstr "" - -#: ../src/extension/internal/emf-win32-inout.cpp:2523 -msgid "EMF Input" -msgstr "" - -#: ../src/extension/internal/emf-win32-inout.cpp:2528 -msgid "Enhanced Metafiles (*.emf)" -msgstr "" - -#: ../src/extension/internal/emf-win32-inout.cpp:2529 -msgid "Enhanced Metafiles" -msgstr "" - -#: ../src/extension/internal/emf-win32-inout.cpp:2537 -msgid "WMF Input" -msgstr "" - -#: ../src/extension/internal/emf-win32-inout.cpp:2542 -msgid "Windows Metafiles (*.wmf)" -msgstr "" - -#: ../src/extension/internal/emf-win32-inout.cpp:2543 -msgid "Windows Metafiles" -msgstr "" - -#: ../src/extension/internal/emf-win32-inout.cpp:2551 -msgid "EMF Output" -msgstr "" - -#: ../src/extension/internal/emf-win32-inout.cpp:2557 -msgid "Enhanced Metafile (*.emf)" -msgstr "" - -#: ../src/extension/internal/emf-win32-inout.cpp:2558 -msgid "Enhanced Metafile" -msgstr "" - -#: ../src/extension/internal/filter/bevels.h:53 -msgid "Diffuse Light" -msgstr "" - -#: ../src/extension/internal/filter/bevels.h:55 -#: ../src/extension/internal/filter/bevels.h:135 -#: ../src/extension/internal/filter/bevels.h:219 -#: ../src/extension/internal/filter/paint.h:89 -#: ../src/extension/internal/filter/paint.h:340 -msgid "Smoothness" -msgstr "" - -#: ../src/extension/internal/filter/bevels.h:56 -#: ../src/extension/internal/filter/bevels.h:137 -#: ../src/extension/internal/filter/bevels.h:221 -msgid "Elevation (°)" -msgstr "" - -#: ../src/extension/internal/filter/bevels.h:57 -#: ../src/extension/internal/filter/bevels.h:138 -#: ../src/extension/internal/filter/bevels.h:222 -msgid "Azimuth (°)" -msgstr "" - -#: ../src/extension/internal/filter/bevels.h:58 -#: ../src/extension/internal/filter/bevels.h:139 -#: ../src/extension/internal/filter/bevels.h:223 -msgid "Lighting color" -msgstr "" - -#: ../src/extension/internal/filter/bevels.h:62 -#: ../src/extension/internal/filter/bevels.h:143 -#: ../src/extension/internal/filter/bevels.h:227 -#: ../src/extension/internal/filter/blurs.h:62 -#: ../src/extension/internal/filter/blurs.h:131 -#: ../src/extension/internal/filter/blurs.h:200 -#: ../src/extension/internal/filter/blurs.h:266 -#: ../src/extension/internal/filter/blurs.h:350 -#: ../src/extension/internal/filter/bumps.h:141 -#: ../src/extension/internal/filter/bumps.h:361 -#: ../src/extension/internal/filter/color.h:81 -#: ../src/extension/internal/filter/color.h:170 -#: ../src/extension/internal/filter/color.h:261 -#: ../src/extension/internal/filter/color.h:346 -#: ../src/extension/internal/filter/color.h:436 -#: ../src/extension/internal/filter/color.h:531 -#: ../src/extension/internal/filter/color.h:653 -#: ../src/extension/internal/filter/color.h:750 -#: ../src/extension/internal/filter/color.h:829 -#: ../src/extension/internal/filter/color.h:920 -#: ../src/extension/internal/filter/color.h:1048 -#: ../src/extension/internal/filter/color.h:1118 -#: ../src/extension/internal/filter/color.h:1211 -#: ../src/extension/internal/filter/color.h:1323 -#: ../src/extension/internal/filter/color.h:1428 -#: ../src/extension/internal/filter/color.h:1504 -#: ../src/extension/internal/filter/color.h:1615 -#: ../src/extension/internal/filter/distort.h:95 -#: ../src/extension/internal/filter/distort.h:204 -#: ../src/extension/internal/filter/filter-file.cpp:151 -#: ../src/extension/internal/filter/filter.cpp:214 -#: ../src/extension/internal/filter/image.h:61 -#: ../src/extension/internal/filter/morphology.h:75 -#: ../src/extension/internal/filter/morphology.h:202 -#: ../src/extension/internal/filter/overlays.h:79 -#: ../src/extension/internal/filter/paint.h:112 -#: ../src/extension/internal/filter/paint.h:243 -#: ../src/extension/internal/filter/paint.h:362 -#: ../src/extension/internal/filter/paint.h:506 -#: ../src/extension/internal/filter/paint.h:601 -#: ../src/extension/internal/filter/paint.h:724 -#: ../src/extension/internal/filter/paint.h:876 -#: ../src/extension/internal/filter/paint.h:980 -#: ../src/extension/internal/filter/protrusions.h:54 -#: ../src/extension/internal/filter/shadows.h:80 -#: ../src/extension/internal/filter/textures.h:90 -#: ../src/extension/internal/filter/transparency.h:69 -#: ../src/extension/internal/filter/transparency.h:140 -#: ../src/extension/internal/filter/transparency.h:214 -#: ../src/extension/internal/filter/transparency.h:287 -#: ../src/extension/internal/filter/transparency.h:349 -msgid "Filters" -msgstr "" - -#: ../src/extension/internal/filter/bevels.h:66 -msgid "Basic diffuse bevel to use for building textures" -msgstr "" - -#: ../src/extension/internal/filter/bevels.h:133 -msgid "Matte Jelly" -msgstr "" - -#: ../src/extension/internal/filter/bevels.h:136 -#: ../src/extension/internal/filter/bevels.h:220 -#: ../src/extension/internal/filter/blurs.h:187 -#: ../src/extension/internal/filter/color.h:74 -msgid "Brightness" -msgstr "" - -#: ../src/extension/internal/filter/bevels.h:147 -msgid "Bulging, matte jelly covering" -msgstr "" - -#: ../src/extension/internal/filter/bevels.h:217 -msgid "Specular Light" -msgstr "" - -#: ../src/extension/internal/filter/blurs.h:56 -#: ../src/extension/internal/filter/blurs.h:189 -#: ../src/extension/internal/filter/blurs.h:329 -#: ../src/extension/internal/filter/distort.h:73 -msgid "Horizontal blur" -msgstr "" - -#: ../src/extension/internal/filter/blurs.h:57 -#: ../src/extension/internal/filter/blurs.h:190 -#: ../src/extension/internal/filter/blurs.h:330 -#: ../src/extension/internal/filter/distort.h:74 -msgid "Vertical blur" -msgstr "" - -#: ../src/extension/internal/filter/blurs.h:58 -msgid "Blur content only" -msgstr "" - -#: ../src/extension/internal/filter/blurs.h:66 -msgid "Simple vertical and horizontal blur effect" -msgstr "" - -#: ../src/extension/internal/filter/blurs.h:125 -msgid "Clean Edges" -msgstr "" - -#: ../src/extension/internal/filter/blurs.h:127 -#: ../src/extension/internal/filter/blurs.h:262 -#: ../src/extension/internal/filter/paint.h:237 -#: ../src/extension/internal/filter/paint.h:336 -#: ../src/extension/internal/filter/paint.h:341 -msgid "Strength" -msgstr "" - -#: ../src/extension/internal/filter/blurs.h:135 -msgid "" -"Removes or decreases glows and jaggeries around objects edges after applying " -"some filters" -msgstr "" - -#: ../src/extension/internal/filter/blurs.h:185 -msgid "Cross Blur" -msgstr "" - -#: ../src/extension/internal/filter/blurs.h:188 -msgid "Fading" -msgstr "" - -#: ../src/extension/internal/filter/blurs.h:191 -#: ../src/extension/internal/filter/textures.h:74 -msgid "Blend:" -msgstr "" - -#: ../src/extension/internal/filter/blurs.h:192 -#: ../src/extension/internal/filter/blurs.h:339 -#: ../src/extension/internal/filter/bumps.h:131 -#: ../src/extension/internal/filter/bumps.h:337 -#: ../src/extension/internal/filter/bumps.h:344 -#: ../src/extension/internal/filter/color.h:329 -#: ../src/extension/internal/filter/color.h:336 -#: ../src/extension/internal/filter/color.h:1423 -#: ../src/extension/internal/filter/color.h:1596 -#: ../src/extension/internal/filter/color.h:1602 -#: ../src/extension/internal/filter/paint.h:705 -#: ../src/extension/internal/filter/transparency.h:63 -#: ../src/filter-enums.cpp:54 -msgid "Darken" -msgstr "" - -#: ../src/extension/internal/filter/blurs.h:193 -#: ../src/extension/internal/filter/blurs.h:340 -#: ../src/extension/internal/filter/bumps.h:132 -#: ../src/extension/internal/filter/bumps.h:335 -#: ../src/extension/internal/filter/bumps.h:342 -#: ../src/extension/internal/filter/color.h:327 -#: ../src/extension/internal/filter/color.h:332 -#: ../src/extension/internal/filter/color.h:647 -#: ../src/extension/internal/filter/color.h:1415 -#: ../src/extension/internal/filter/color.h:1420 -#: ../src/extension/internal/filter/color.h:1594 -#: ../src/extension/internal/filter/paint.h:703 -#: ../src/extension/internal/filter/transparency.h:62 -#: ../src/filter-enums.cpp:53 ../src/ui/dialog/input.cpp:382 -msgid "Screen" -msgstr "" - -#: ../src/extension/internal/filter/blurs.h:194 -#: ../src/extension/internal/filter/blurs.h:341 -#: ../src/extension/internal/filter/bumps.h:133 -#: ../src/extension/internal/filter/bumps.h:338 -#: ../src/extension/internal/filter/bumps.h:345 -#: ../src/extension/internal/filter/color.h:325 -#: ../src/extension/internal/filter/color.h:333 -#: ../src/extension/internal/filter/color.h:645 -#: ../src/extension/internal/filter/color.h:1414 -#: ../src/extension/internal/filter/color.h:1421 -#: ../src/extension/internal/filter/color.h:1595 -#: ../src/extension/internal/filter/color.h:1601 -#: ../src/extension/internal/filter/paint.h:701 -#: ../src/extension/internal/filter/transparency.h:60 -#: ../src/filter-enums.cpp:52 -msgid "Multiply" -msgstr "" - -#: ../src/extension/internal/filter/blurs.h:195 -#: ../src/extension/internal/filter/blurs.h:342 -#: ../src/extension/internal/filter/bumps.h:134 -#: ../src/extension/internal/filter/bumps.h:339 -#: ../src/extension/internal/filter/bumps.h:346 -#: ../src/extension/internal/filter/color.h:328 -#: ../src/extension/internal/filter/color.h:335 -#: ../src/extension/internal/filter/color.h:1422 -#: ../src/extension/internal/filter/color.h:1593 -#: ../src/extension/internal/filter/paint.h:704 -#: ../src/extension/internal/filter/transparency.h:64 -#: ../src/filter-enums.cpp:55 -msgid "Lighten" -msgstr "" - -#: ../src/extension/internal/filter/blurs.h:204 -msgid "Combine vertical and horizontal blur" -msgstr "" - -#: ../src/extension/internal/filter/blurs.h:260 -msgid "Feather" -msgstr "" - -#: ../src/extension/internal/filter/blurs.h:270 -msgid "Blurred mask on the edge without altering the contents" -msgstr "" - -#: ../src/extension/internal/filter/blurs.h:325 -msgid "Out of Focus" -msgstr "" - -#: ../src/extension/internal/filter/blurs.h:331 -#: ../src/extension/internal/filter/distort.h:75 -#: ../src/extension/internal/filter/morphology.h:67 -#: ../src/extension/internal/filter/paint.h:235 -#: ../src/extension/internal/filter/paint.h:342 -#: ../src/extension/internal/filter/paint.h:346 -msgid "Dilatation" -msgstr "" - -#: ../src/extension/internal/filter/blurs.h:332 -#: ../src/extension/internal/filter/distort.h:76 -#: ../src/extension/internal/filter/morphology.h:68 -#: ../src/extension/internal/filter/paint.h:98 -#: ../src/extension/internal/filter/paint.h:236 -#: ../src/extension/internal/filter/paint.h:343 -#: ../src/extension/internal/filter/paint.h:347 -#: ../src/extension/internal/filter/transparency.h:208 -#: ../src/extension/internal/filter/transparency.h:282 -msgid "Erosion" -msgstr "" - -#: ../src/extension/internal/filter/blurs.h:336 -#: ../src/extension/internal/filter/color.h:1205 -#: ../src/extension/internal/filter/color.h:1317 -#: ../src/ui/dialog/document-properties.cpp:108 -msgid "Background color" -msgstr "" - -#: ../src/extension/internal/filter/blurs.h:337 -#: ../src/extension/internal/filter/bumps.h:129 -msgid "Blend type:" -msgstr "" - -#: ../src/extension/internal/filter/blurs.h:338 -#: ../src/extension/internal/filter/bumps.h:130 -#: ../src/extension/internal/filter/bumps.h:336 -#: ../src/extension/internal/filter/bumps.h:343 -#: ../src/extension/internal/filter/color.h:326 -#: ../src/extension/internal/filter/color.h:334 -#: ../src/extension/internal/filter/color.h:646 -#: ../src/extension/internal/filter/color.h:1413 -#: ../src/extension/internal/filter/color.h:1419 -#: ../src/extension/internal/filter/color.h:1586 -#: ../src/extension/internal/filter/color.h:1600 -#: ../src/extension/internal/filter/distort.h:78 -#: ../src/extension/internal/filter/paint.h:702 -#: ../src/extension/internal/filter/textures.h:77 -#: ../src/extension/internal/filter/transparency.h:61 -#: ../src/filter-enums.cpp:51 ../src/ui/dialog/inkscape-preferences.cpp:642 -msgid "Normal" -msgstr "" - -#: ../src/extension/internal/filter/blurs.h:344 -msgid "Blend to background" -msgstr "" - -#: ../src/extension/internal/filter/blurs.h:354 -msgid "Blur eroded by white or transparency" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:80 -msgid "Bump" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:84 -#: ../src/extension/internal/filter/bumps.h:313 -msgid "Image simplification" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:85 -#: ../src/extension/internal/filter/bumps.h:314 -msgid "Bump simplification" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:87 -#: ../src/extension/internal/filter/bumps.h:316 -msgid "Bump source" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:88 -#: ../src/extension/internal/filter/bumps.h:317 -#: ../src/extension/internal/filter/color.h:157 -#: ../src/extension/internal/filter/color.h:637 -#: ../src/extension/internal/filter/color.h:821 -#: ../src/extension/internal/filter/transparency.h:132 -#: ../src/filter-enums.cpp:100 ../src/flood-context.cpp:228 -#: ../src/widgets/sp-color-icc-selector.cpp:355 -#: ../src/widgets/sp-color-scales.cpp:429 -#: ../src/widgets/sp-color-scales.cpp:430 -msgid "Red" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:89 -#: ../src/extension/internal/filter/bumps.h:318 -#: ../src/extension/internal/filter/color.h:158 -#: ../src/extension/internal/filter/color.h:638 -#: ../src/extension/internal/filter/color.h:822 -#: ../src/extension/internal/filter/transparency.h:133 -#: ../src/filter-enums.cpp:101 ../src/flood-context.cpp:229 -#: ../src/widgets/sp-color-icc-selector.cpp:356 -#: ../src/widgets/sp-color-scales.cpp:432 -#: ../src/widgets/sp-color-scales.cpp:433 -msgid "Green" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:90 -#: ../src/extension/internal/filter/bumps.h:319 -#: ../src/extension/internal/filter/color.h:159 -#: ../src/extension/internal/filter/color.h:639 -#: ../src/extension/internal/filter/color.h:823 -#: ../src/extension/internal/filter/transparency.h:134 -#: ../src/filter-enums.cpp:102 ../src/flood-context.cpp:230 -#: ../src/widgets/sp-color-icc-selector.cpp:357 -#: ../src/widgets/sp-color-scales.cpp:435 -#: ../src/widgets/sp-color-scales.cpp:436 -msgid "Blue" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:91 -msgid "Bump from background" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:94 -msgid "Lighting type:" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:95 -msgid "Specular" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:96 -msgid "Diffuse" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:98 -#: ../src/extension/internal/filter/bumps.h:329 -#: ../src/libgdl/gdl-dock-placeholder.c:175 ../src/libgdl/gdl-dock.c:199 -#: ../src/widgets/rect-toolbar.cpp:332 -#: ../share/extensions/interp_att_g.inx.h:11 -msgid "Height" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:99 -#: ../src/extension/internal/filter/bumps.h:330 -#: ../src/extension/internal/filter/color.h:76 -#: ../src/extension/internal/filter/color.h:824 -#: ../src/extension/internal/filter/color.h:1113 -#: ../src/extension/internal/filter/paint.h:86 -#: ../src/extension/internal/filter/paint.h:592 -#: ../src/extension/internal/filter/paint.h:707 ../src/flood-context.cpp:233 -#: ../src/widgets/sp-color-icc-selector.cpp:366 -#: ../src/widgets/sp-color-scales.cpp:461 -#: ../src/widgets/sp-color-scales.cpp:462 ../src/widgets/tweak-toolbar.cpp:336 -#: ../share/extensions/color_randomize.inx.h:5 -msgid "Lightness" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:100 -#: ../src/extension/internal/filter/bumps.h:331 -msgid "Precision" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:103 -msgid "Light source" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:104 -msgid "Light source:" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:105 -msgid "Distant" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:106 ../src/helper/units.cpp:38 -#: ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Point" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:107 -msgid "Spot" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:109 -msgid "Distant light options" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:110 -#: ../src/extension/internal/filter/bumps.h:332 -#: ../src/ui/dialog/filter-effects-dialog.cpp:1001 -msgid "Azimuth" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:111 -#: ../src/extension/internal/filter/bumps.h:333 -#: ../src/ui/dialog/filter-effects-dialog.cpp:1002 -msgid "Elevation" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:112 -msgid "Point light options" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:113 -#: ../src/extension/internal/filter/bumps.h:117 -msgid "X location" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:114 -#: ../src/extension/internal/filter/bumps.h:118 -msgid "Y location" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:115 -#: ../src/extension/internal/filter/bumps.h:119 -msgid "Z location" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:116 -msgid "Spot light options" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:120 -msgid "X target" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:121 -msgid "Y target" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:122 -msgid "Z target" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:123 -msgid "Specular exponent" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:124 -msgid "Cone angle" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:127 -msgid "Image color" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:128 -msgid "Color bump" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:145 -msgid "All purposes bump filter" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:309 -msgid "Wax Bump" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:320 -msgid "Background:" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:322 -#: ../src/extension/internal/filter/transparency.h:57 -#: ../src/filter-enums.cpp:29 ../src/selection-describer.cpp:56 -msgid "Image" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:323 -msgid "Blurred image" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:325 -msgid "Background opacity" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:327 -#: ../src/extension/internal/filter/color.h:1040 -msgid "Lighting" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:334 -msgid "Lighting blend:" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:341 -msgid "Highlight blend:" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:350 -msgid "Bump color" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:351 -msgid "Revert bump" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:352 -msgid "Transparency type:" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:353 -#: ../src/extension/internal/filter/morphology.h:176 -#: ../src/filter-enums.cpp:74 -msgid "Atop" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:354 -#: ../src/extension/internal/filter/distort.h:70 -#: ../src/extension/internal/filter/morphology.h:174 -#: ../src/filter-enums.cpp:72 -msgid "In" -msgstr "" - -#: ../src/extension/internal/filter/bumps.h:365 -msgid "Turns an image to jelly" -msgstr "" - -#: ../src/extension/internal/filter/color.h:72 -msgid "Brilliance" -msgstr "" - -#: ../src/extension/internal/filter/color.h:75 -#: ../src/extension/internal/filter/color.h:1417 -msgid "Over-saturation" -msgstr "" - -#: ../src/extension/internal/filter/color.h:77 -#: ../src/extension/internal/filter/color.h:161 -#: ../src/extension/internal/filter/overlays.h:70 -#: ../src/extension/internal/filter/paint.h:85 -#: ../src/extension/internal/filter/paint.h:502 -#: ../src/extension/internal/filter/transparency.h:136 -#: ../src/extension/internal/filter/transparency.h:210 -msgid "Inverted" -msgstr "" - -#: ../src/extension/internal/filter/color.h:85 -msgid "Brightness filter" -msgstr "" - -#: ../src/extension/internal/filter/color.h:152 -msgid "Channel Painting" -msgstr "" - -#: ../src/extension/internal/filter/color.h:156 -#: ../src/extension/internal/filter/color.h:257 -#: ../src/extension/internal/filter/paint.h:87 ../src/flood-context.cpp:232 -#: ../src/ui/dialog/inkscape-preferences.cpp:937 -#: ../src/widgets/sp-color-icc-selector.cpp:362 -#: ../src/widgets/sp-color-icc-selector.cpp:367 -#: ../src/widgets/sp-color-scales.cpp:458 -#: ../src/widgets/sp-color-scales.cpp:459 ../src/widgets/tweak-toolbar.cpp:320 -#: ../share/extensions/color_randomize.inx.h:4 -msgid "Saturation" -msgstr "" - -#: ../src/extension/internal/filter/color.h:160 -#: ../src/extension/internal/filter/transparency.h:135 -#: ../src/filter-enums.cpp:103 ../src/flood-context.cpp:234 -msgid "Alpha" -msgstr "" - -#: ../src/extension/internal/filter/color.h:174 -msgid "Replace RGB by any color" -msgstr "" - -#: ../src/extension/internal/filter/color.h:254 -msgid "Color Shift" -msgstr "" - -#: ../src/extension/internal/filter/color.h:256 -msgid "Shift (°)" -msgstr "" - -#: ../src/extension/internal/filter/color.h:265 -msgid "Rotate and desaturate hue" -msgstr "" - -#: ../src/extension/internal/filter/color.h:321 -msgid "Harsh light" -msgstr "" - -#: ../src/extension/internal/filter/color.h:322 -msgid "Normal light" -msgstr "" - -#: ../src/extension/internal/filter/color.h:323 -msgid "Duotone" -msgstr "" - -#: ../src/extension/internal/filter/color.h:324 -#: ../src/extension/internal/filter/color.h:1412 -msgid "Blend 1:" -msgstr "" - -#: ../src/extension/internal/filter/color.h:331 -#: ../src/extension/internal/filter/color.h:1418 -msgid "Blend 2:" -msgstr "" - -#: ../src/extension/internal/filter/color.h:350 -msgid "Blend image or object with a flood color" -msgstr "" - -#: ../src/extension/internal/filter/color.h:424 ../src/filter-enums.cpp:22 -msgid "Component Transfer" -msgstr "" - -#: ../src/extension/internal/filter/color.h:427 ../src/filter-enums.cpp:82 -msgid "Identity" -msgstr "" - -#: ../src/extension/internal/filter/color.h:428 -#: ../src/extension/internal/filter/paint.h:498 ../src/filter-enums.cpp:83 -msgid "Table" -msgstr "" - -#: ../src/extension/internal/filter/color.h:429 -#: ../src/extension/internal/filter/paint.h:499 ../src/filter-enums.cpp:84 -msgid "Discrete" -msgstr "" - -#: ../src/extension/internal/filter/color.h:430 ../src/filter-enums.cpp:85 -#: ../src/live_effects/lpe-powerstroke.cpp:188 -msgid "Linear" -msgstr "" - -#: ../src/extension/internal/filter/color.h:431 ../src/filter-enums.cpp:86 -msgid "Gamma" -msgstr "" - -#: ../src/extension/internal/filter/color.h:440 -msgid "Basic component transfer structure" -msgstr "" - -#: ../src/extension/internal/filter/color.h:509 -msgid "Duochrome" -msgstr "" - -#: ../src/extension/internal/filter/color.h:513 -msgid "Fluorescence level" -msgstr "" - -#: ../src/extension/internal/filter/color.h:514 -msgid "Swap:" -msgstr "" - -#: ../src/extension/internal/filter/color.h:515 -msgid "No swap" -msgstr "" - -#: ../src/extension/internal/filter/color.h:516 -msgid "Color and alpha" -msgstr "" - -#: ../src/extension/internal/filter/color.h:517 -msgid "Color only" -msgstr "" - -#: ../src/extension/internal/filter/color.h:518 -msgid "Alpha only" -msgstr "" - -#: ../src/extension/internal/filter/color.h:522 -msgid "Color 1" -msgstr "" - -#: ../src/extension/internal/filter/color.h:525 -msgid "Color 2" -msgstr "" - -#: ../src/extension/internal/filter/color.h:535 -msgid "Convert luminance values to a duochrome palette" -msgstr "" - -#: ../src/extension/internal/filter/color.h:634 -msgid "Extract Channel" -msgstr "" - -#: ../src/extension/internal/filter/color.h:640 -#: ../src/widgets/sp-color-icc-selector.cpp:369 -#: ../src/widgets/sp-color-icc-selector.cpp:374 -#: ../src/widgets/sp-color-scales.cpp:483 -#: ../src/widgets/sp-color-scales.cpp:484 -msgid "Cyan" -msgstr "" - -#: ../src/extension/internal/filter/color.h:641 -#: ../src/widgets/sp-color-icc-selector.cpp:370 -#: ../src/widgets/sp-color-icc-selector.cpp:375 -#: ../src/widgets/sp-color-scales.cpp:486 -#: ../src/widgets/sp-color-scales.cpp:487 -msgid "Magenta" -msgstr "" - -#: ../src/extension/internal/filter/color.h:642 -#: ../src/widgets/sp-color-icc-selector.cpp:371 -#: ../src/widgets/sp-color-icc-selector.cpp:376 -#: ../src/widgets/sp-color-scales.cpp:489 -#: ../src/widgets/sp-color-scales.cpp:490 -msgid "Yellow" -msgstr "" - -#: ../src/extension/internal/filter/color.h:644 -msgid "Background blend mode:" -msgstr "" - -#: ../src/extension/internal/filter/color.h:649 -msgid "Channel to alpha" -msgstr "" - -#: ../src/extension/internal/filter/color.h:657 -msgid "Extract color channel as a transparent image" -msgstr "" - -#: ../src/extension/internal/filter/color.h:740 -msgid "Fade to Black or White" -msgstr "" - -#: ../src/extension/internal/filter/color.h:743 -msgid "Fade to:" -msgstr "" - -#: ../src/extension/internal/filter/color.h:744 -#: ../src/ui/widget/selected-style.cpp:254 -#: ../src/widgets/sp-color-icc-selector.cpp:372 -#: ../src/widgets/sp-color-scales.cpp:492 -#: ../src/widgets/sp-color-scales.cpp:493 -msgid "Black" -msgstr "" - -#: ../src/extension/internal/filter/color.h:745 -#: ../src/ui/widget/selected-style.cpp:250 -msgid "White" -msgstr "" - -#: ../src/extension/internal/filter/color.h:754 -msgid "Fade to black or white" -msgstr "" - -#: ../src/extension/internal/filter/color.h:819 -msgid "Greyscale" -msgstr "" - -#: ../src/extension/internal/filter/color.h:825 -#: ../src/extension/internal/filter/paint.h:83 -#: ../src/extension/internal/filter/paint.h:239 -msgid "Transparent" -msgstr "" - -#: ../src/extension/internal/filter/color.h:833 -msgid "Customize greyscale components" -msgstr "" - -#: ../src/extension/internal/filter/color.h:905 -#: ../src/ui/widget/selected-style.cpp:246 -msgid "Invert" -msgstr "" - -#: ../src/extension/internal/filter/color.h:907 -msgid "Invert channels:" -msgstr "" - -#: ../src/extension/internal/filter/color.h:908 -msgid "No inversion" -msgstr "" - -#: ../src/extension/internal/filter/color.h:909 -msgid "Red and blue" -msgstr "" - -#: ../src/extension/internal/filter/color.h:910 -msgid "Red and green" -msgstr "" - -#: ../src/extension/internal/filter/color.h:911 -msgid "Green and blue" -msgstr "" - -#: ../src/extension/internal/filter/color.h:913 -msgid "Light transparency" -msgstr "" - -#: ../src/extension/internal/filter/color.h:914 -msgid "Invert hue" -msgstr "" - -#: ../src/extension/internal/filter/color.h:915 -msgid "Invert lightness" -msgstr "" - -#: ../src/extension/internal/filter/color.h:916 -msgid "Invert transparency" -msgstr "" - -#: ../src/extension/internal/filter/color.h:924 -msgid "Manage hue, lightness and transparency inversions" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1042 -msgid "Lights" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1043 -msgid "Shadows" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1044 -#: ../src/extension/internal/filter/paint.h:356 ../src/filter-enums.cpp:32 -#: ../src/live_effects/effect.cpp:97 ../src/live_effects/lpe-offset.cpp:31 -#: ../src/widgets/gradient-toolbar.cpp:1172 -msgid "Offset" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1052 -msgid "Modify lights and shadows separately" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1111 -msgid "Lightness-Contrast" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1122 -msgid "Modify lightness and contrast separately" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1190 -msgid "Nudge RGB" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1194 -msgid "Red offset" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1195 -#: ../src/extension/internal/filter/color.h:1198 -#: ../src/extension/internal/filter/color.h:1201 -#: ../src/extension/internal/filter/color.h:1307 -#: ../src/extension/internal/filter/color.h:1310 -#: ../src/extension/internal/filter/color.h:1313 -#: ../src/ui/dialog/input.cpp:1616 ../src/ui/dialog/layers.cpp:915 -msgid "X" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1196 -#: ../src/extension/internal/filter/color.h:1199 -#: ../src/extension/internal/filter/color.h:1202 -#: ../src/extension/internal/filter/color.h:1308 -#: ../src/extension/internal/filter/color.h:1311 -#: ../src/extension/internal/filter/color.h:1314 -#: ../src/ui/dialog/input.cpp:1616 -msgid "Y" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1197 -msgid "Green offset" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1200 -msgid "Blue offset" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1215 -msgid "" -"Nudge RGB channels separately and blend them to different types of " -"backgrounds" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1302 -msgid "Nudge CMY" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1306 -msgid "Cyan offset" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1309 -msgid "Magenta offset" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1312 -msgid "Yellow offset" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1327 -msgid "" -"Nudge CMY channels separately and blend them to different types of " -"backgrounds" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1408 -msgid "Quadritone fantasy" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1410 -msgid "Hue distribution (°)" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1411 -#: ../share/extensions/svgcalendar.inx.h:19 -msgid "Colors" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1432 -msgid "Replace hue by two colors" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1496 -msgid "Hue rotation (°)" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1499 -msgid "Moonarize" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1508 -msgid "Classic photographic solarization effect" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1581 -msgid "Tritone" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1587 -msgid "Enhance hue" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1588 -msgid "Phosphorescence" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1589 -msgid "Colored nights" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1590 -msgid "Hue to background" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1592 -msgid "Global blend:" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1598 -msgid "Glow" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1599 -msgid "Glow blend:" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1604 -msgid "Local light" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1605 -msgid "Global light" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1608 -msgid "Hue distribution (°):" -msgstr "" - -#: ../src/extension/internal/filter/color.h:1619 -msgid "" -"Create a custom tritone palette with additional glow, blend modes and hue " -"moving" -msgstr "" - -#: ../src/extension/internal/filter/distort.h:67 -msgid "Felt Feather" -msgstr "" - -#: ../src/extension/internal/filter/distort.h:71 -#: ../src/extension/internal/filter/morphology.h:175 -#: ../src/filter-enums.cpp:73 -msgid "Out" -msgstr "" - -#: ../src/extension/internal/filter/distort.h:77 -#: ../src/extension/internal/filter/textures.h:75 -#: ../src/ui/widget/selected-style.cpp:128 -#: ../src/ui/widget/style-swatch.cpp:127 -msgid "Stroke:" -msgstr "" - -#: ../src/extension/internal/filter/distort.h:79 -#: ../src/extension/internal/filter/textures.h:76 -msgid "Wide" -msgstr "" - -#: ../src/extension/internal/filter/distort.h:80 -#: ../src/extension/internal/filter/textures.h:78 -msgid "Narrow" -msgstr "" - -#: ../src/extension/internal/filter/distort.h:81 -msgid "No fill" -msgstr "" - -#: ../src/extension/internal/filter/distort.h:83 -msgid "Turbulence:" -msgstr "" - -#: ../src/extension/internal/filter/distort.h:84 -#: ../src/extension/internal/filter/distort.h:193 -#: ../src/extension/internal/filter/overlays.h:61 -#: ../src/extension/internal/filter/paint.h:692 -msgid "Fractal noise" -msgstr "" - -#: ../src/extension/internal/filter/distort.h:85 -#: ../src/extension/internal/filter/distort.h:194 -#: ../src/extension/internal/filter/overlays.h:62 -#: ../src/extension/internal/filter/paint.h:693 ../src/filter-enums.cpp:35 -#: ../src/filter-enums.cpp:117 -msgid "Turbulence" -msgstr "" - -#: ../src/extension/internal/filter/distort.h:87 -#: ../src/extension/internal/filter/distort.h:196 -#: ../src/extension/internal/filter/paint.h:93 -#: ../src/extension/internal/filter/paint.h:695 -msgid "Horizontal frequency" -msgstr "" - -#: ../src/extension/internal/filter/distort.h:88 -#: ../src/extension/internal/filter/distort.h:197 -#: ../src/extension/internal/filter/paint.h:94 -#: ../src/extension/internal/filter/paint.h:696 -msgid "Vertical frequency" -msgstr "" - -#: ../src/extension/internal/filter/distort.h:89 -#: ../src/extension/internal/filter/distort.h:198 -#: ../src/extension/internal/filter/paint.h:95 -#: ../src/extension/internal/filter/paint.h:697 -msgid "Complexity" -msgstr "" - -#: ../src/extension/internal/filter/distort.h:90 -#: ../src/extension/internal/filter/distort.h:199 -#: ../src/extension/internal/filter/paint.h:96 -#: ../src/extension/internal/filter/paint.h:698 -msgid "Variation" -msgstr "" - -#: ../src/extension/internal/filter/distort.h:91 -#: ../src/extension/internal/filter/distort.h:200 -msgid "Intensity" -msgstr "" - -#: ../src/extension/internal/filter/distort.h:99 -msgid "Blur and displace edges of shapes and pictures" -msgstr "" - -#: ../src/extension/internal/filter/distort.h:190 -msgid "Roughen" -msgstr "" - -#: ../src/extension/internal/filter/distort.h:192 -#: ../src/extension/internal/filter/overlays.h:60 -#: ../src/extension/internal/filter/paint.h:691 -#: ../src/extension/internal/filter/textures.h:64 -msgid "Turbulence type:" -msgstr "" - -#: ../src/extension/internal/filter/distort.h:208 -msgid "Small-scale roughening to edges and content" -msgstr "" - -#: ../src/extension/internal/filter/filter-file.cpp:34 -msgid "Bundled" -msgstr "" - -#: ../src/extension/internal/filter/filter-file.cpp:35 -msgid "Personal" -msgstr "" - -#: ../src/extension/internal/filter/filter-file.cpp:47 -msgid "Null external module directory name. Filters will not be loaded." -msgstr "" - -#: ../src/extension/internal/filter/image.h:49 -msgid "Edge Detect" -msgstr "" - -#: ../src/extension/internal/filter/image.h:51 -msgid "Detect:" -msgstr "" - -#: ../src/extension/internal/filter/image.h:52 -msgid "All" -msgstr "" - -#: ../src/extension/internal/filter/image.h:53 -msgid "Vertical lines" -msgstr "" - -#: ../src/extension/internal/filter/image.h:54 -msgid "Horizontal lines" -msgstr "" - -#: ../src/extension/internal/filter/image.h:57 -msgid "Invert colors" -msgstr "" - -#: ../src/extension/internal/filter/image.h:65 -msgid "Detect color edges in object" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:58 -msgid "Cross-smooth" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:61 -#: ../src/extension/internal/filter/shadows.h:66 -msgid "Inner" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:62 -#: ../src/extension/internal/filter/shadows.h:65 -msgid "Outer" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:63 -msgid "Open" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:65 -#: ../src/libgdl/gdl-dock-placeholder.c:167 ../src/libgdl/gdl-dock.c:191 -#: ../src/widgets/rect-toolbar.cpp:315 ../src/widgets/spray-toolbar.cpp:132 -#: ../src/widgets/tweak-toolbar.cpp:146 -#: ../share/extensions/interp_att_g.inx.h:10 -msgid "Width" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:69 -#: ../src/extension/internal/filter/morphology.h:190 -msgid "Antialiasing" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:70 -msgid "Blur content" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:79 -msgid "Smooth edges and angles of shapes" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:166 -msgid "Outline" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:170 -msgid "Fill image" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:171 -msgid "Hide image" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:172 -msgid "Composite type:" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:173 -#: ../src/filter-enums.cpp:71 -msgid "Over" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:177 -#: ../src/filter-enums.cpp:75 -msgid "XOR" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:179 -#: ../src/ui/dialog/layer-properties.cpp:185 -msgid "Position:" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:180 -msgid "Inside" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:181 -msgid "Outside" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:182 -msgid "Overlayed" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:184 -msgid "Width 1" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:185 -msgid "Dilatation 1" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:186 -msgid "Erosion 1" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:187 -msgid "Width 2" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:188 -msgid "Dilatation 2" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:189 -msgid "Erosion 2" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:191 -msgid "Smooth" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:195 -msgid "Fill opacity:" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:196 -msgid "Stroke opacity:" -msgstr "" - -#: ../src/extension/internal/filter/morphology.h:206 -msgid "Adds a colorizable outline" -msgstr "" - -#: ../src/extension/internal/filter/overlays.h:56 -msgid "Noise Fill" -msgstr "" - -#: ../src/extension/internal/filter/overlays.h:59 -#: ../src/extension/internal/filter/paint.h:690 -#: ../src/extension/internal/filter/shadows.h:60 ../src/ui/dialog/find.cpp:87 -#: ../src/ui/dialog/tracedialog.cpp:747 -#: ../share/extensions/color_custom.inx.h:2 -#: ../share/extensions/color_HSL_adjust.inx.h:2 -#: ../share/extensions/color_randomize.inx.h:2 -#: ../share/extensions/dots.inx.h:2 ../share/extensions/dxf_input.inx.h:2 -#: ../share/extensions/dxf_outlines.inx.h:2 -#: ../share/extensions/gcodetools_area.inx.h:29 -#: ../share/extensions/gcodetools_engraving.inx.h:7 -#: ../share/extensions/gcodetools_graffiti.inx.h:21 -#: ../share/extensions/gcodetools_lathe.inx.h:22 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:11 -#: ../share/extensions/generate_voronoi.inx.h:2 -#: ../share/extensions/gimp_xcf.inx.h:2 -#: ../share/extensions/interp_att_g.inx.h:2 -#: ../share/extensions/jessyInk_uninstall.inx.h:2 -#: ../share/extensions/lorem_ipsum.inx.h:2 -#: ../share/extensions/pathalongpath.inx.h:2 -#: ../share/extensions/pathscatter.inx.h:2 -#: ../share/extensions/radiusrand.inx.h:2 ../share/extensions/scour.inx.h:2 -#: ../share/extensions/split.inx.h:2 ../share/extensions/voronoi2svg.inx.h:2 -#: ../share/extensions/webslicer_create_group.inx.h:2 -#: ../share/extensions/webslicer_export.inx.h:2 -#: ../share/extensions/web-set-att.inx.h:2 -#: ../share/extensions/web-transmit-att.inx.h:2 -msgid "Options" -msgstr "" - -#: ../src/extension/internal/filter/overlays.h:64 -msgid "Horizontal frequency:" -msgstr "" - -#: ../src/extension/internal/filter/overlays.h:65 -msgid "Vertical frequency:" -msgstr "" - -#: ../src/extension/internal/filter/overlays.h:66 -#: ../src/extension/internal/filter/textures.h:69 -msgid "Complexity:" -msgstr "" - -#: ../src/extension/internal/filter/overlays.h:67 -#: ../src/extension/internal/filter/textures.h:70 -msgid "Variation:" -msgstr "" - -#: ../src/extension/internal/filter/overlays.h:68 -msgid "Dilatation:" -msgstr "" - -#: ../src/extension/internal/filter/overlays.h:69 -msgid "Erosion:" -msgstr "" - -#: ../src/extension/internal/filter/overlays.h:72 -msgid "Noise color" -msgstr "" - -#: ../src/extension/internal/filter/overlays.h:83 -msgid "Basic noise fill and transparency texture" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:71 -msgid "Chromolitho" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:75 -#: ../share/extensions/jessyInk_keyBindings.inx.h:16 -msgid "Drawing mode" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:76 -msgid "Drawing blend:" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:84 -msgid "Dented" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:88 -#: ../src/extension/internal/filter/paint.h:699 -msgid "Noise reduction" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:91 -msgid "Grain" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:92 -msgid "Grain mode" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:97 -#: ../src/extension/internal/filter/transparency.h:207 -#: ../src/extension/internal/filter/transparency.h:281 -msgid "Expansion" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:100 -msgid "Grain blend:" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:116 -msgid "Chromo effect with customizable edge drawing and graininess" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:232 -msgid "Cross Engraving" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:234 -#: ../src/extension/internal/filter/paint.h:337 -msgid "Clean-up" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:238 -#: ../share/extensions/measure.inx.h:11 -msgid "Length" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:247 -msgid "Convert image to an engraving made of vertical and horizontal lines" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:331 -#: ../src/ui/dialog/align-and-distribute.cpp:1048 -#: ../src/widgets/desktop-widget.cpp:2000 -msgid "Drawing" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:335 -#: ../src/extension/internal/filter/paint.h:496 -#: ../src/extension/internal/filter/paint.h:590 -#: ../src/extension/internal/filter/paint.h:976 ../src/splivarot.cpp:1988 -msgid "Simplify" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:338 -#: ../src/extension/internal/filter/paint.h:709 -msgid "Erase" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:344 -msgid "Melt" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:350 -#: ../src/extension/internal/filter/paint.h:712 -msgid "Fill color" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:351 -#: ../src/extension/internal/filter/paint.h:714 -msgid "Image on fill" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:354 -msgid "Stroke color" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:355 -msgid "Image on stroke" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:366 -msgid "Convert images to duochrome drawings" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:494 -msgid "Electrize" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:497 -#: ../src/extension/internal/filter/paint.h:852 -msgid "Effect type:" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:501 -#: ../src/extension/internal/filter/paint.h:860 -#: ../src/extension/internal/filter/paint.h:975 -msgid "Levels" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:510 -msgid "Electro solarization effects" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:584 -msgid "Neon Draw" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:586 -msgid "Line type:" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:587 -msgid "Smoothed" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:588 -msgid "Contrasted" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:591 -msgid "Line width" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:593 -#: ../src/extension/internal/filter/paint.h:861 -#: ../src/ui/widget/filter-effect-chooser.cpp:25 -msgid "Blend mode:" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:605 -msgid "Posterize and draw smooth lines around color shapes" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:687 -msgid "Point Engraving" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:700 -msgid "Noise blend:" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:708 -msgid "Grain lightness" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:716 -msgid "Points color" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:718 -msgid "Image on points" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:728 -msgid "Convert image to a transparent point engraving" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:850 -msgid "Poster Paint" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:856 -msgid "Transfer type:" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:857 -msgid "Poster" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:858 -msgid "Painting" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:868 -msgid "Simplify (primary)" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:869 -msgid "Simplify (secondary)" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:870 -msgid "Pre-saturation" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:871 -msgid "Post-saturation" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:872 -msgid "Simulate antialiasing" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:880 -msgid "Poster and painting effects" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:973 -msgid "Posterize Basic" -msgstr "" - -#: ../src/extension/internal/filter/paint.h:984 -msgid "Simple posterizing effect" -msgstr "" - -#: ../src/extension/internal/filter/protrusions.h:48 -msgid "Snow crest" -msgstr "" - -#: ../src/extension/internal/filter/protrusions.h:50 -msgid "Drift Size" -msgstr "" - -#: ../src/extension/internal/filter/protrusions.h:58 -msgid "Snow has fallen on object" -msgstr "" - -#: ../src/extension/internal/filter/shadows.h:57 -msgid "Drop Shadow" -msgstr "" - -#: ../src/extension/internal/filter/shadows.h:61 -msgid "Blur radius (px)" -msgstr "" - -#: ../src/extension/internal/filter/shadows.h:62 -msgid "Horizontal offset (px)" -msgstr "" - -#: ../src/extension/internal/filter/shadows.h:63 -msgid "Vertical offset (px)" -msgstr "" - -#: ../src/extension/internal/filter/shadows.h:64 -msgid "Shadow type:" -msgstr "" - -#: ../src/extension/internal/filter/shadows.h:67 -msgid "Outer cutout" -msgstr "" - -#: ../src/extension/internal/filter/shadows.h:68 -msgid "Inner cutout" -msgstr "" - -#: ../src/extension/internal/filter/shadows.h:69 -msgid "Shadow only" -msgstr "" - -#: ../src/extension/internal/filter/shadows.h:72 -msgid "Blur color" -msgstr "" - -#: ../src/extension/internal/filter/shadows.h:74 -msgid "Use object's color" -msgstr "" - -#: ../src/extension/internal/filter/shadows.h:84 -msgid "Colorizable Drop shadow" -msgstr "" - -#: ../src/extension/internal/filter/textures.h:62 -msgid "Ink Blot" -msgstr "" - -#: ../src/extension/internal/filter/textures.h:68 -msgid "Frequency:" -msgstr "" - -#: ../src/extension/internal/filter/textures.h:71 -msgid "Horizontal inlay:" -msgstr "" - -#: ../src/extension/internal/filter/textures.h:72 -msgid "Vertical inlay:" -msgstr "" - -#: ../src/extension/internal/filter/textures.h:73 -msgid "Displacement:" -msgstr "" - -#: ../src/extension/internal/filter/textures.h:79 -msgid "Overlapping" -msgstr "" - -#: ../src/extension/internal/filter/textures.h:80 -msgid "External" -msgstr "" - -#: ../src/extension/internal/filter/textures.h:81 -#: ../share/extensions/markers_strokepaint.inx.h:8 -msgid "Custom" -msgstr "" - -#: ../src/extension/internal/filter/textures.h:83 -msgid "Custom stroke options" -msgstr "" - -#: ../src/extension/internal/filter/textures.h:84 -msgid "k1:" -msgstr "" - -#: ../src/extension/internal/filter/textures.h:85 -msgid "k2:" -msgstr "" - -#: ../src/extension/internal/filter/textures.h:86 -msgid "k3:" -msgstr "" - -#: ../src/extension/internal/filter/textures.h:94 -msgid "Inkblot on tissue or rough paper" -msgstr "" - -#: ../src/extension/internal/filter/transparency.h:53 -#: ../src/filter-enums.cpp:20 -msgid "Blend" -msgstr "" - -#: ../src/extension/internal/filter/transparency.h:55 ../src/rdf.cpp:258 -msgid "Source:" -msgstr "" - -#: ../src/extension/internal/filter/transparency.h:56 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1605 -msgid "Background" -msgstr "" - -#: ../src/extension/internal/filter/transparency.h:59 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2610 -#: ../src/ui/dialog/input.cpp:1088 ../src/widgets/erasor-toolbar.cpp:127 -#: ../src/widgets/pencil-toolbar.cpp:161 ../src/widgets/spray-toolbar.cpp:202 -#: ../src/widgets/tweak-toolbar.cpp:272 ../share/extensions/extrude.inx.h:2 -#: ../share/extensions/triangle.inx.h:8 -msgid "Mode:" -msgstr "" - -#: ../src/extension/internal/filter/transparency.h:73 -msgid "Blend objects with background images or with themselves" -msgstr "" - -#: ../src/extension/internal/filter/transparency.h:130 -msgid "Channel Transparency" -msgstr "" - -#: ../src/extension/internal/filter/transparency.h:144 -msgid "Replace RGB with transparency" -msgstr "" - -#: ../src/extension/internal/filter/transparency.h:205 -msgid "Light Eraser" -msgstr "" - -#: ../src/extension/internal/filter/transparency.h:209 -#: ../src/extension/internal/filter/transparency.h:283 -msgid "Global opacity" -msgstr "" - -#: ../src/extension/internal/filter/transparency.h:218 -msgid "Make the lightest parts of the object progressively transparent" -msgstr "" - -#: ../src/extension/internal/filter/transparency.h:291 -msgid "Set opacity and strength of opacity boundaries" -msgstr "" - -#: ../src/extension/internal/filter/transparency.h:341 -msgid "Silhouette" -msgstr "" - -#: ../src/extension/internal/filter/transparency.h:344 -msgid "Cutout" -msgstr "" - -#: ../src/extension/internal/filter/transparency.h:353 -msgid "Repaint anything visible monochrome" -msgstr "" - -#: ../src/extension/internal/gdkpixbuf-input.cpp:189 -#, c-format -msgid "%s bitmap image import" -msgstr "" - -#: ../src/extension/internal/gdkpixbuf-input.cpp:195 -msgid "Link or embed image:" -msgstr "" - -#: ../src/extension/internal/gdkpixbuf-input.cpp:196 -msgid "Embed" -msgstr "" - -#: ../src/extension/internal/gdkpixbuf-input.cpp:197 -msgid "Link" -msgstr "" - -#: ../src/extension/internal/gdkpixbuf-input.cpp:199 -msgid "" -"Embed results in stand-alone, larger SVG files. Link references a file " -"outside this SVG document and all files must be moved together." -msgstr "" - -#: ../src/extension/internal/gdkpixbuf-input.cpp:200 -msgid "Hide the dialog next time and always apply the same action." -msgstr "" - -#: ../src/extension/internal/gdkpixbuf-input.cpp:200 -msgid "Don't ask again" -msgstr "" - -#: ../src/extension/internal/gimpgrad.cpp:272 -msgid "GIMP Gradients" -msgstr "" - -#: ../src/extension/internal/gimpgrad.cpp:277 -msgid "GIMP Gradient (*.ggr)" -msgstr "" - -#: ../src/extension/internal/gimpgrad.cpp:278 -msgid "Gradients used in GIMP" -msgstr "" - -#: ../src/extension/internal/grid.cpp:209 ../src/ui/widget/panel.cpp:117 -msgid "Grid" -msgstr "" - -#: ../src/extension/internal/grid.cpp:211 -msgid "Line Width:" -msgstr "" - -#: ../src/extension/internal/grid.cpp:212 -msgid "Horizontal Spacing:" -msgstr "" - -#: ../src/extension/internal/grid.cpp:213 -msgid "Vertical Spacing:" -msgstr "" - -#: ../src/extension/internal/grid.cpp:214 -msgid "Horizontal Offset:" -msgstr "" - -#: ../src/extension/internal/grid.cpp:215 -msgid "Vertical Offset:" -msgstr "" - -#: ../src/extension/internal/grid.cpp:219 -#: ../share/extensions/draw_from_triangle.inx.h:58 -#: ../share/extensions/eqtexsvg.inx.h:4 -#: ../share/extensions/foldablebox.inx.h:9 -#: ../share/extensions/funcplot.inx.h:38 -#: ../share/extensions/grid_cartesian.inx.h:23 -#: ../share/extensions/grid_isometric.inx.h:11 -#: ../share/extensions/grid_polar.inx.h:22 -#: ../share/extensions/guides_creator.inx.h:20 -#: ../share/extensions/layout_nup.inx.h:35 -#: ../share/extensions/lindenmayer.inx.h:34 -#: ../share/extensions/param_curves.inx.h:30 -#: ../share/extensions/perfectboundcover.inx.h:19 -#: ../share/extensions/polyhedron_3d.inx.h:56 -#: ../share/extensions/printing_marks.inx.h:20 -#: ../share/extensions/render_alphabetsoup.inx.h:5 -#: ../share/extensions/render_barcode.inx.h:5 -#: ../share/extensions/render_barcode_datamatrix.inx.h:5 -#: ../share/extensions/render_barcode_qrcode.inx.h:18 -#: ../share/extensions/render_gears.inx.h:11 -#: ../share/extensions/render_gear_rack.inx.h:5 -#: ../share/extensions/rtree.inx.h:4 ../share/extensions/spirograph.inx.h:10 -#: ../share/extensions/svgcalendar.inx.h:38 -#: ../share/extensions/triangle.inx.h:14 -#: ../share/extensions/wireframe_sphere.inx.h:8 -msgid "Render" -msgstr "" - -#: ../src/extension/internal/grid.cpp:220 -#: ../src/ui/dialog/document-properties.cpp:148 -#: ../src/ui/dialog/inkscape-preferences.cpp:776 -#: ../src/widgets/toolbox.cpp:1826 -msgid "Grids" -msgstr "" - -#: ../src/extension/internal/grid.cpp:223 -msgid "Draw a path which is a grid" -msgstr "" - -#: ../src/extension/internal/javafx-out.cpp:966 -msgid "JavaFX Output" -msgstr "" - -#: ../src/extension/internal/javafx-out.cpp:971 -msgid "JavaFX (*.fx)" -msgstr "" - -#: ../src/extension/internal/javafx-out.cpp:972 -msgid "JavaFX Raytracer File" -msgstr "" - -#: ../src/extension/internal/latex-pstricks-out.cpp:95 -msgid "LaTeX Output" -msgstr "" - -#: ../src/extension/internal/latex-pstricks-out.cpp:100 -msgid "LaTeX With PSTricks macros (*.tex)" -msgstr "" - -#: ../src/extension/internal/latex-pstricks-out.cpp:101 -msgid "LaTeX PSTricks File" -msgstr "" - -#: ../src/extension/internal/latex-pstricks.cpp:334 -msgid "LaTeX Print" -msgstr "" - -#: ../src/extension/internal/odf.cpp:2148 -msgid "OpenDocument Drawing Output" -msgstr "" - -#: ../src/extension/internal/odf.cpp:2153 -msgid "OpenDocument drawing (*.odg)" -msgstr "" - -#: ../src/extension/internal/odf.cpp:2154 -msgid "OpenDocument drawing file" -msgstr "" - -#. TRANSLATORS: The following are document crop settings for PDF import -#. more info: http://www.acrobatusers.com/tech_corners/javascript_corner/tips/2006/page_bounds/ -#: ../src/extension/internal/pdf-input-cairo.cpp:52 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:70 -msgid "media box" -msgstr "" - -#: ../src/extension/internal/pdf-input-cairo.cpp:53 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:71 -msgid "crop box" -msgstr "" - -#: ../src/extension/internal/pdf-input-cairo.cpp:54 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:72 -msgid "trim box" -msgstr "" - -#: ../src/extension/internal/pdf-input-cairo.cpp:55 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:73 -msgid "bleed box" -msgstr "" - -#: ../src/extension/internal/pdf-input-cairo.cpp:56 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:74 -msgid "art box" -msgstr "" - -#. Crop settings -#: ../src/extension/internal/pdf-input-cairo.cpp:94 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:111 -msgid "Clip to:" -msgstr "" - -#: ../src/extension/internal/pdf-input-cairo.cpp:105 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:122 -msgid "Page settings" -msgstr "" - -#: ../src/extension/internal/pdf-input-cairo.cpp:106 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:123 -msgid "Precision of approximating gradient meshes:" -msgstr "" - -#: ../src/extension/internal/pdf-input-cairo.cpp:107 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:124 -msgid "" -"Note: setting the precision too high may result in a large SVG file " -"and slow performance." -msgstr "" - -#: ../src/extension/internal/pdf-input-cairo.cpp:117 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:134 -msgid "rough" -msgstr "" - -#. Text options -#: ../src/extension/internal/pdf-input-cairo.cpp:121 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:138 -msgid "Text handling:" -msgstr "" - -#: ../src/extension/internal/pdf-input-cairo.cpp:123 -#: ../src/extension/internal/pdf-input-cairo.cpp:124 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:140 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:141 -msgid "Import text as text" -msgstr "" - -#: ../src/extension/internal/pdf-input-cairo.cpp:125 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:142 -msgid "Replace PDF fonts by closest-named installed fonts" -msgstr "" - -#: ../src/extension/internal/pdf-input-cairo.cpp:128 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:145 -msgid "Embed images" -msgstr "" - -#: ../src/extension/internal/pdf-input-cairo.cpp:130 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:147 -msgid "Import settings" -msgstr "" - -#: ../src/extension/internal/pdf-input-cairo.cpp:238 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:255 -msgid "PDF Import Settings" -msgstr "" - -#: ../src/extension/internal/pdf-input-cairo.cpp:370 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:400 -msgctxt "PDF input precision" -msgid "rough" -msgstr "" - -#: ../src/extension/internal/pdf-input-cairo.cpp:371 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:401 -msgctxt "PDF input precision" -msgid "medium" -msgstr "" - -#: ../src/extension/internal/pdf-input-cairo.cpp:372 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:402 -msgctxt "PDF input precision" -msgid "fine" -msgstr "" - -#: ../src/extension/internal/pdf-input-cairo.cpp:373 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:403 -msgctxt "PDF input precision" -msgid "very fine" -msgstr "" - -#: ../src/extension/internal/pdf-input-cairo.cpp:646 -#: ../src/extension/internal/pdfinput/pdf-input.cpp:762 -msgid "PDF Input" -msgstr "" - -#: ../src/extension/internal/pdf-input-cairo.cpp:651 -msgid "Adobe PDF via poppler-cairo (*.pdf)" -msgstr "" - -#: ../src/extension/internal/pdf-input-cairo.cpp:652 -msgid "PDF Document" -msgstr "" - -#: ../src/extension/internal/pdfinput/pdf-input.cpp:767 -msgid "Adobe PDF (*.pdf)" -msgstr "" - -#: ../src/extension/internal/pdfinput/pdf-input.cpp:768 -msgid "Adobe Portable Document Format" -msgstr "" - -#: ../src/extension/internal/pdfinput/pdf-input.cpp:775 -msgid "AI Input" -msgstr "" - -#: ../src/extension/internal/pdfinput/pdf-input.cpp:780 -msgid "Adobe Illustrator 9.0 and above (*.ai)" -msgstr "" - -#: ../src/extension/internal/pdfinput/pdf-input.cpp:781 -msgid "Open files saved in Adobe Illustrator 9.0 and newer versions" -msgstr "" - -#: ../src/extension/internal/pov-out.cpp:715 -msgid "PovRay Output" -msgstr "" - -#: ../src/extension/internal/pov-out.cpp:720 -msgid "PovRay (*.pov) (paths and shapes only)" -msgstr "" - -#: ../src/extension/internal/pov-out.cpp:721 -msgid "PovRay Raytracer File" -msgstr "" - -#: ../src/extension/internal/svg.cpp:89 -msgid "SVG Input" -msgstr "" - -#: ../src/extension/internal/svg.cpp:94 -msgid "Scalable Vector Graphic (*.svg)" -msgstr "" - -#: ../src/extension/internal/svg.cpp:95 -msgid "Inkscape native file format and W3C standard" -msgstr "" - -#: ../src/extension/internal/svg.cpp:103 -msgid "SVG Output Inkscape" -msgstr "" - -#: ../src/extension/internal/svg.cpp:108 -msgid "Inkscape SVG (*.svg)" -msgstr "" - -#: ../src/extension/internal/svg.cpp:109 -msgid "SVG format with Inkscape extensions" -msgstr "" - -#: ../src/extension/internal/svg.cpp:117 -msgid "SVG Output" -msgstr "" - -#: ../src/extension/internal/svg.cpp:122 -msgid "Plain SVG (*.svg)" -msgstr "" - -#: ../src/extension/internal/svg.cpp:123 -msgid "Scalable Vector Graphics format as defined by the W3C" -msgstr "" - -#: ../src/extension/internal/svgz.cpp:46 -msgid "SVGZ Input" -msgstr "" - -#: ../src/extension/internal/svgz.cpp:52 ../src/extension/internal/svgz.cpp:66 -msgid "Compressed Inkscape SVG (*.svgz)" -msgstr "" - -#: ../src/extension/internal/svgz.cpp:53 -msgid "SVG file format compressed with GZip" -msgstr "" - -#: ../src/extension/internal/svgz.cpp:61 ../src/extension/internal/svgz.cpp:75 -msgid "SVGZ Output" -msgstr "" - -#: ../src/extension/internal/svgz.cpp:67 -msgid "Inkscape's native file format compressed with GZip" -msgstr "" - -#: ../src/extension/internal/svgz.cpp:80 -msgid "Compressed plain SVG (*.svgz)" -msgstr "" - -#: ../src/extension/internal/svgz.cpp:81 -msgid "Scalable Vector Graphics format compressed with GZip" -msgstr "" - -#: ../src/extension/internal/vsd-input.cpp:267 -msgid "VSD Input" -msgstr "" - -#: ../src/extension/internal/vsd-input.cpp:272 -msgid "Microsoft Visio Diagram (*.vsd)" -msgstr "" - -#: ../src/extension/internal/vsd-input.cpp:273 -msgid "File format used by Microsoft Visio 6 and later" -msgstr "" - -#: ../src/extension/internal/vsd-input.cpp:280 -msgid "VDX Input" -msgstr "" - -#: ../src/extension/internal/vsd-input.cpp:285 -msgid "Microsoft Visio XML Diagram (*.vdx)" -msgstr "" - -#: ../src/extension/internal/vsd-input.cpp:286 -msgid "File format used by Microsoft Visio 2010 and later" -msgstr "" - -#: ../src/extension/internal/vsd-input.cpp:293 -msgid "VSDM Input" -msgstr "" - -#: ../src/extension/internal/vsd-input.cpp:298 -msgid "Microsoft Visio 2013 drawing (*.vsdm)" -msgstr "" - -#: ../src/extension/internal/vsd-input.cpp:299 -#: ../src/extension/internal/vsd-input.cpp:312 -msgid "File format used by Microsoft Visio 2013 and later" -msgstr "" - -#: ../src/extension/internal/vsd-input.cpp:306 -msgid "VSDX Input" -msgstr "" - -#: ../src/extension/internal/vsd-input.cpp:311 -msgid "Microsoft Visio 2013 drawing (*.vsdx)" -msgstr "" - -#: ../src/extension/internal/wpg-input.cpp:121 -msgid "WPG Input" -msgstr "" - -#: ../src/extension/internal/wpg-input.cpp:126 -msgid "WordPerfect Graphics (*.wpg)" -msgstr "" - -#: ../src/extension/internal/wpg-input.cpp:127 -msgid "Vector graphics format used by Corel WordPerfect" -msgstr "" - -#: ../src/extension/prefdialog.cpp:269 -msgid "Live preview" -msgstr "" - -#: ../src/extension/prefdialog.cpp:269 -msgid "Is the effect previewed live on canvas?" -msgstr "" - -#: ../src/extension/system.cpp:125 ../src/extension/system.cpp:127 -msgid "Format autodetect failed. The file is being opened as SVG." -msgstr "" - -#: ../src/file.cpp:153 -msgid "default.svg" -msgstr "" - -#: ../src/file.cpp:284 -msgid "Broken links have been changed to point to existing files." -msgstr "" - -#: ../src/file.cpp:295 ../src/file.cpp:1218 -#, c-format -msgid "Failed to load the requested file %s" -msgstr "" - -#: ../src/file.cpp:321 -msgid "Document not saved yet. Cannot revert." -msgstr "" - -#: ../src/file.cpp:327 -#, c-format -msgid "Changes will be lost! Are you sure you want to reload document %s?" -msgstr "" - -#: ../src/file.cpp:356 -msgid "Document reverted." -msgstr "" - -#: ../src/file.cpp:358 -msgid "Document not reverted." -msgstr "" - -#: ../src/file.cpp:508 -msgid "Select file to open" -msgstr "" - -#: ../src/file.cpp:592 -msgid "Clean up document" -msgstr "" - -#: ../src/file.cpp:597 -#, c-format -msgid "Removed %i unused definition in <defs>." -msgid_plural "Removed %i unused definitions in <defs>." -msgstr[0] "" -msgstr[1] "" - -#: ../src/file.cpp:602 -msgid "No unused definitions in <defs>." -msgstr "" - -#: ../src/file.cpp:633 -#, c-format -msgid "" -"No Inkscape extension found to save document (%s). This may have been " -"caused by an unknown filename extension." -msgstr "" - -#: ../src/file.cpp:634 ../src/file.cpp:642 ../src/file.cpp:650 -#: ../src/file.cpp:656 ../src/file.cpp:661 -msgid "Document not saved." -msgstr "" - -#: ../src/file.cpp:641 -#, c-format -msgid "" -"File %s is write protected. Please remove write protection and try again." -msgstr "" - -#: ../src/file.cpp:649 -#, c-format -msgid "File %s could not be saved." -msgstr "" - -#: ../src/file.cpp:679 ../src/file.cpp:681 -msgid "Document saved." -msgstr "" - -#. We are saving for the first time; create a unique default filename -#: ../src/file.cpp:829 ../src/file.cpp:1381 -#, c-format -msgid "drawing%s" -msgstr "" - -#: ../src/file.cpp:835 -#, c-format -msgid "drawing-%d%s" -msgstr "" - -#: ../src/file.cpp:839 -#, c-format -msgid "%s" -msgstr "" - -#: ../src/file.cpp:854 -msgid "Select file to save a copy to" -msgstr "" - -#: ../src/file.cpp:856 -msgid "Select file to save to" -msgstr "" - -#: ../src/file.cpp:962 ../src/file.cpp:964 -msgid "No changes need to be saved." -msgstr "" - -#: ../src/file.cpp:983 -msgid "Saving document..." -msgstr "" - -#: ../src/file.cpp:1215 ../src/ui/dialog/ocaldialogs.cpp:1244 -msgid "Import" -msgstr "" - -#: ../src/file.cpp:1265 -msgid "Select file to import" -msgstr "" - -#: ../src/file.cpp:1403 -msgid "Select file to export to" -msgstr "" - -#: ../src/file.cpp:1656 -msgid "Import Clip Art" -msgstr "" - -#: ../src/filter-enums.cpp:21 -msgid "Color Matrix" -msgstr "" - -#: ../src/filter-enums.cpp:23 -msgid "Composite" -msgstr "" - -#: ../src/filter-enums.cpp:24 -msgid "Convolve Matrix" -msgstr "" - -#: ../src/filter-enums.cpp:25 -msgid "Diffuse Lighting" -msgstr "" - -#: ../src/filter-enums.cpp:26 -msgid "Displacement Map" -msgstr "" - -#: ../src/filter-enums.cpp:27 -msgid "Flood" -msgstr "" - -#: ../src/filter-enums.cpp:30 -msgid "Merge" -msgstr "" - -#: ../src/filter-enums.cpp:33 -msgid "Specular Lighting" -msgstr "" - -#: ../src/filter-enums.cpp:34 -msgid "Tile" -msgstr "" - -#: ../src/filter-enums.cpp:40 -msgid "Source Graphic" -msgstr "" - -#: ../src/filter-enums.cpp:41 -msgid "Source Alpha" -msgstr "" - -#: ../src/filter-enums.cpp:42 -msgid "Background Image" -msgstr "" - -#: ../src/filter-enums.cpp:43 -msgid "Background Alpha" -msgstr "" - -#: ../src/filter-enums.cpp:44 -msgid "Fill Paint" -msgstr "" - -#: ../src/filter-enums.cpp:45 -msgid "Stroke Paint" -msgstr "" - -#: ../src/filter-enums.cpp:61 -msgid "Matrix" -msgstr "" - -#: ../src/filter-enums.cpp:62 -msgid "Saturate" -msgstr "" - -#: ../src/filter-enums.cpp:63 -msgid "Hue Rotate" -msgstr "" - -#: ../src/filter-enums.cpp:64 -msgid "Luminance to Alpha" -msgstr "" - -#. File -#: ../src/filter-enums.cpp:70 ../src/verbs.cpp:2296 -#: ../share/extensions/jessyInk_mouseHandler.inx.h:3 -#: ../share/extensions/jessyInk_transitions.inx.h:7 -msgid "Default" -msgstr "" - -#: ../src/filter-enums.cpp:76 -msgid "Arithmetic" -msgstr "" - -#: ../src/filter-enums.cpp:92 ../src/selection-chemistry.cpp:516 -msgid "Duplicate" -msgstr "" - -#: ../src/filter-enums.cpp:93 -msgid "Wrap" -msgstr "" - -#: ../src/filter-enums.cpp:109 -msgid "Erode" -msgstr "" - -#: ../src/filter-enums.cpp:110 -msgid "Dilate" -msgstr "" - -#: ../src/filter-enums.cpp:116 -msgid "Fractal Noise" -msgstr "" - -#: ../src/filter-enums.cpp:123 -msgid "Distant Light" -msgstr "" - -#: ../src/filter-enums.cpp:124 -msgid "Point Light" -msgstr "" - -#: ../src/filter-enums.cpp:125 -msgid "Spot Light" -msgstr "" - -#: ../src/flood-context.cpp:227 -msgid "Visible Colors" -msgstr "" - -#: ../src/flood-context.cpp:231 ../src/widgets/sp-color-icc-selector.cpp:361 -#: ../src/widgets/sp-color-icc-selector.cpp:365 -#: ../src/widgets/sp-color-scales.cpp:455 -#: ../src/widgets/sp-color-scales.cpp:456 ../src/widgets/tweak-toolbar.cpp:304 -#: ../share/extensions/color_randomize.inx.h:3 -msgid "Hue" -msgstr "" - -#: ../src/flood-context.cpp:245 -msgctxt "Flood autogap" -msgid "None" -msgstr "" - -#: ../src/flood-context.cpp:246 -msgctxt "Flood autogap" -msgid "Small" -msgstr "" - -#: ../src/flood-context.cpp:247 -msgctxt "Flood autogap" -msgid "Medium" -msgstr "" - -#: ../src/flood-context.cpp:248 -msgctxt "Flood autogap" -msgid "Large" -msgstr "" - -#: ../src/flood-context.cpp:470 -msgid "Too much inset, the result is empty." -msgstr "" - -#: ../src/flood-context.cpp:511 -#, c-format -msgid "" -"Area filled, path with %d node created and unioned with selection." -msgid_plural "" -"Area filled, path with %d nodes created and unioned with selection." -msgstr[0] "" -msgstr[1] "" - -#: ../src/flood-context.cpp:517 -#, c-format -msgid "Area filled, path with %d node created." -msgid_plural "Area filled, path with %d nodes created." -msgstr[0] "" -msgstr[1] "" - -#: ../src/flood-context.cpp:785 ../src/flood-context.cpp:1095 -msgid "Area is not bounded, cannot fill." -msgstr "" - -#: ../src/flood-context.cpp:1100 -msgid "" -"Only the visible part of the bounded area was filled. If you want to " -"fill all of the area, undo, zoom out, and fill again." -msgstr "" - -#: ../src/flood-context.cpp:1118 ../src/flood-context.cpp:1277 -msgid "Fill bounded area" -msgstr "" - -#: ../src/flood-context.cpp:1137 -msgid "Set style on object" -msgstr "" - -#: ../src/flood-context.cpp:1196 -msgid "Draw over areas to add to fill, hold Alt for touch fill" -msgstr "" - -#: ../src/gradient-chemistry.cpp:1568 -msgid "Invert gradient colors" -msgstr "" - -#: ../src/gradient-chemistry.cpp:1594 -msgid "Reverse gradient" -msgstr "" - -#: ../src/gradient-chemistry.cpp:1608 ../src/widgets/gradient-selector.cpp:227 -msgid "Delete swatch" -msgstr "" - -#: ../src/gradient-context.cpp:110 ../src/gradient-drag.cpp:96 -msgid "Linear gradient start" -msgstr "" - -#. POINT_LG_BEGIN -#: ../src/gradient-context.cpp:111 ../src/gradient-drag.cpp:97 -msgid "Linear gradient end" -msgstr "" - -#: ../src/gradient-context.cpp:112 ../src/gradient-drag.cpp:98 -msgid "Linear gradient mid stop" -msgstr "" - -#: ../src/gradient-context.cpp:113 ../src/gradient-drag.cpp:99 -msgid "Radial gradient center" -msgstr "" - -#: ../src/gradient-context.cpp:114 ../src/gradient-context.cpp:115 -#: ../src/gradient-drag.cpp:100 ../src/gradient-drag.cpp:101 -msgid "Radial gradient radius" -msgstr "" - -#: ../src/gradient-context.cpp:116 ../src/gradient-drag.cpp:102 -msgid "Radial gradient focus" -msgstr "" - -#. POINT_RG_FOCUS -#: ../src/gradient-context.cpp:117 ../src/gradient-context.cpp:118 -#: ../src/gradient-drag.cpp:103 ../src/gradient-drag.cpp:104 -msgid "Radial gradient mid stop" -msgstr "" - -#. TRANSLATORS: %s will be substituted with the point name (see previous messages); This is part of a compound message -#: ../src/gradient-context.cpp:143 ../src/mesh-context.cpp:139 -#, c-format -msgid "%s selected" -msgstr "" - -#. TRANSLATORS: Mind the space in front. This is part of a compound message -#: ../src/gradient-context.cpp:145 ../src/gradient-context.cpp:154 -#, c-format -msgid " out of %d gradient handle" -msgid_plural " out of %d gradient handles" -msgstr[0] "" -msgstr[1] "" - -#. TRANSLATORS: Mind the space in front. (Refers to gradient handles selected). This is part of a compound message -#: ../src/gradient-context.cpp:146 ../src/gradient-context.cpp:155 -#: ../src/gradient-context.cpp:162 ../src/mesh-context.cpp:142 -#: ../src/mesh-context.cpp:153 ../src/mesh-context.cpp:161 -#, c-format -msgid " on %d selected object" -msgid_plural " on %d selected objects" -msgstr[0] "" -msgstr[1] "" - -#. TRANSLATORS: This is a part of a compound message (out of two more indicating: grandint handle count & object count) -#: ../src/gradient-context.cpp:152 ../src/mesh-context.cpp:149 -#, c-format -msgid "" -"One handle merging %d stop (drag with Shift to separate) selected" -msgid_plural "" -"One handle merging %d stops (drag with Shift to separate) selected" -msgstr[0] "" -msgstr[1] "" - -#. TRANSLATORS: The plural refers to number of selected gradient handles. This is part of a compound message (part two indicates selected object count) -#: ../src/gradient-context.cpp:160 -#, c-format -msgid "%d gradient handle selected out of %d" -msgid_plural "%d gradient handles selected out of %d" -msgstr[0] "" -msgstr[1] "" - -#. TRANSLATORS: The plural refers to number of selected objects -#: ../src/gradient-context.cpp:167 -#, c-format -msgid "No gradient handles selected out of %d on %d selected object" -msgid_plural "" -"No gradient handles selected out of %d on %d selected objects" -msgstr[0] "" -msgstr[1] "" - -#: ../src/gradient-context.cpp:381 ../src/gradient-context.cpp:479 -#: ../src/ui/dialog/swatches.cpp:203 ../src/widgets/gradient-vector.cpp:814 -msgid "Add gradient stop" -msgstr "" - -#: ../src/gradient-context.cpp:454 -msgid "Simplify gradient" -msgstr "" - -#: ../src/gradient-context.cpp:533 -msgid "Create default gradient" -msgstr "" - -#: ../src/gradient-context.cpp:590 ../src/mesh-context.cpp:597 -msgid "Draw around handles to select them" -msgstr "" - -#: ../src/gradient-context.cpp:706 -msgid "Ctrl: snap gradient angle" -msgstr "" - -#: ../src/gradient-context.cpp:707 -msgid "Shift: draw gradient around the starting point" -msgstr "" - -#: ../src/gradient-context.cpp:930 ../src/mesh-context.cpp:997 -#, c-format -msgid "Gradient for %d object; with Ctrl to snap angle" -msgid_plural "Gradient for %d objects; with Ctrl to snap angle" -msgstr[0] "" -msgstr[1] "" - -#: ../src/gradient-context.cpp:934 ../src/mesh-context.cpp:1001 -msgid "Select objects on which to create gradient." -msgstr "" - -#: ../src/gradient-drag.cpp:105 ../src/mesh-context.cpp:112 -msgid "Mesh gradient corner" -msgstr "" - -#: ../src/gradient-drag.cpp:106 ../src/mesh-context.cpp:113 -msgid "Mesh gradient handle" -msgstr "" - -#: ../src/gradient-drag.cpp:107 ../src/mesh-context.cpp:114 -msgid "Mesh gradient tensor" -msgstr "" - -#: ../src/gradient-drag.cpp:566 -msgid "Added patch row or column" -msgstr "" - -#: ../src/gradient-drag.cpp:792 -msgid "Merge gradient handles" -msgstr "" - -#: ../src/gradient-drag.cpp:1101 -msgid "Move gradient handle" -msgstr "" - -#: ../src/gradient-drag.cpp:1160 ../src/widgets/gradient-vector.cpp:847 -msgid "Delete gradient stop" -msgstr "" - -#: ../src/gradient-drag.cpp:1423 -#, c-format -msgid "" -"%s %d for: %s%s; drag with Ctrl to snap offset; click with Ctrl" -"+Alt to delete stop" -msgstr "" - -#: ../src/gradient-drag.cpp:1427 ../src/gradient-drag.cpp:1434 -msgid " (stroke)" -msgstr "" - -#: ../src/gradient-drag.cpp:1431 -#, c-format -msgid "" -"%s for: %s%s; drag with Ctrl to snap angle, with Ctrl+Alt to " -"preserve angle, with Ctrl+Shift to scale around center" -msgstr "" - -#: ../src/gradient-drag.cpp:1439 -#, c-format -msgid "" -"Radial gradient center and focus; drag with Shift to " -"separate focus" -msgstr "" - -#: ../src/gradient-drag.cpp:1442 -#, c-format -msgid "" -"Gradient point shared by %d gradient; drag with Shift to " -"separate" -msgid_plural "" -"Gradient point shared by %d gradients; drag with Shift to " -"separate" -msgstr[0] "" -msgstr[1] "" - -#: ../src/gradient-drag.cpp:2370 -msgid "Move gradient handle(s)" -msgstr "" - -#: ../src/gradient-drag.cpp:2406 -msgid "Move gradient mid stop(s)" -msgstr "" - -#: ../src/gradient-drag.cpp:2695 -msgid "Delete gradient stop(s)" -msgstr "" - -#: ../src/helper/units.cpp:37 ../src/live_effects/lpe-ruler.cpp:42 -msgid "Unit" -msgstr "" - -#. Add the units menu. -#: ../src/helper/units.cpp:37 ../src/widgets/lpe-toolbar.cpp:400 -#: ../src/widgets/node-toolbar.cpp:622 -#: ../src/widgets/paintbucket-toolbar.cpp:185 -#: ../src/widgets/rect-toolbar.cpp:376 ../src/widgets/select-toolbar.cpp:538 -msgid "Units" -msgstr "" - -#: ../src/helper/units.cpp:38 ../share/extensions/dxf_outlines.inx.h:9 -msgid "pt" -msgstr "" - -#: ../src/helper/units.cpp:38 ../share/extensions/perfectboundcover.inx.h:11 -msgid "Points" -msgstr "" - -#: ../src/helper/units.cpp:38 -msgid "Pt" -msgstr "" - -#: ../src/helper/units.cpp:39 ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Pica" -msgstr "" - -#: ../src/helper/units.cpp:39 ../share/extensions/dxf_outlines.inx.h:10 -msgid "pc" -msgstr "" - -#: ../src/helper/units.cpp:39 -msgid "Picas" -msgstr "" - -#: ../src/helper/units.cpp:39 -msgid "Pc" -msgstr "" - -#: ../src/helper/units.cpp:40 ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Pixel" -msgstr "" - -#: ../src/helper/units.cpp:40 ../share/extensions/dxf_outlines.inx.h:11 -#: ../share/extensions/render_gears.inx.h:7 -msgid "px" -msgstr "" - -#: ../src/helper/units.cpp:40 -msgid "Pixels" -msgstr "" - -#: ../src/helper/units.cpp:40 -msgid "Px" -msgstr "" - -#. You can add new elements from this point forward -#: ../src/helper/units.cpp:42 -msgid "Percent" -msgstr "" - -#: ../src/helper/units.cpp:42 ../src/ui/dialog/inkscape-preferences.cpp:1265 -msgid "%" -msgstr "" - -#: ../src/helper/units.cpp:42 -msgid "Percents" -msgstr "" - -#: ../src/helper/units.cpp:43 ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Millimeter" -msgstr "" - -#: ../src/helper/units.cpp:43 ../share/extensions/dxf_outlines.inx.h:12 -#: ../share/extensions/gcodetools_area.inx.h:46 -#: ../share/extensions/gcodetools_dxf_points.inx.h:18 -#: ../share/extensions/gcodetools_engraving.inx.h:24 -#: ../share/extensions/gcodetools_graffiti.inx.h:18 -#: ../share/extensions/gcodetools_lathe.inx.h:39 -#: ../share/extensions/gcodetools_orientation_points.inx.h:11 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:28 -#: ../share/extensions/render_gears.inx.h:9 -msgid "mm" -msgstr "" - -#: ../src/helper/units.cpp:43 -msgid "Millimeters" -msgstr "" - -#: ../src/helper/units.cpp:44 ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Centimeter" -msgstr "" - -#: ../src/helper/units.cpp:44 ../share/extensions/dxf_outlines.inx.h:13 -msgid "cm" -msgstr "" - -#: ../src/helper/units.cpp:44 -msgid "Centimeters" -msgstr "" - -#: ../src/helper/units.cpp:45 -msgid "Meter" -msgstr "" - -#: ../src/helper/units.cpp:45 ../share/extensions/dxf_outlines.inx.h:14 -msgid "m" -msgstr "" - -#: ../src/helper/units.cpp:45 -msgid "Meters" -msgstr "" - -#. no svg_unit -#: ../src/helper/units.cpp:46 ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Inch" -msgstr "" - -#: ../src/helper/units.cpp:46 ../share/extensions/dxf_outlines.inx.h:15 -#: ../share/extensions/gcodetools_area.inx.h:47 -#: ../share/extensions/gcodetools_dxf_points.inx.h:19 -#: ../share/extensions/gcodetools_engraving.inx.h:25 -#: ../share/extensions/gcodetools_graffiti.inx.h:19 -#: ../share/extensions/gcodetools_lathe.inx.h:40 -#: ../share/extensions/gcodetools_orientation_points.inx.h:12 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:29 -#: ../share/extensions/render_gears.inx.h:8 -msgid "in" -msgstr "" - -#: ../src/helper/units.cpp:46 -msgid "Inches" -msgstr "" - -#: ../src/helper/units.cpp:47 -msgid "Foot" -msgstr "" - -#: ../src/helper/units.cpp:47 ../share/extensions/dxf_outlines.inx.h:16 -msgid "ft" -msgstr "" - -#: ../src/helper/units.cpp:47 -msgid "Feet" -msgstr "" - -#. Volatiles do not have default, so there are none here -#. TRANSLATORS: for info, see http://www.w3.org/TR/REC-CSS2/syndata.html#length-units -#: ../src/helper/units.cpp:50 ../src/ui/dialog/inkscape-preferences.cpp:451 -msgid "Em square" -msgstr "" - -#: ../src/helper/units.cpp:50 -msgid "em" -msgstr "" - -#: ../src/helper/units.cpp:50 -msgid "Em squares" -msgstr "" - -#. TRANSLATORS: for info, see http://www.w3.org/TR/REC-CSS2/syndata.html#length-units -#: ../src/helper/units.cpp:52 -msgid "Ex square" -msgstr "" - -#: ../src/helper/units.cpp:52 -msgid "ex" -msgstr "" - -#: ../src/helper/units.cpp:52 -msgid "Ex squares" -msgstr "" - -#: ../src/inkscape.cpp:322 -msgid "Autosave failed! Cannot create directory %1." -msgstr "" - -#: ../src/inkscape.cpp:331 -msgid "Autosave failed! Cannot open directory %1." -msgstr "" - -#: ../src/inkscape.cpp:347 -msgid "Autosaving documents..." -msgstr "" - -#: ../src/inkscape.cpp:420 -msgid "Autosave failed! Could not find inkscape extension to save document." -msgstr "" - -#: ../src/inkscape.cpp:423 ../src/inkscape.cpp:430 -#, c-format -msgid "Autosave failed! File %s could not be saved." -msgstr "" - -#: ../src/inkscape.cpp:445 -msgid "Autosave complete." -msgstr "" - -#: ../src/inkscape.cpp:691 -msgid "Untitled document" -msgstr "" - -#. Show nice dialog box -#: ../src/inkscape.cpp:723 -msgid "Inkscape encountered an internal error and will close now.\n" -msgstr "" - -#: ../src/inkscape.cpp:724 -msgid "" -"Automatic backups of unsaved documents were done to the following " -"locations:\n" -msgstr "" - -#: ../src/inkscape.cpp:725 -msgid "Automatic backup of the following documents failed:\n" -msgstr "" - -#: ../src/interface.cpp:865 -msgctxt "Interface setup" -msgid "Default" -msgstr "" - -#: ../src/interface.cpp:865 -msgid "Default interface setup" -msgstr "" - -#: ../src/interface.cpp:866 -msgctxt "Interface setup" -msgid "Custom" -msgstr "" - -#: ../src/interface.cpp:866 -msgid "Setup for custom task" -msgstr "" - -#: ../src/interface.cpp:867 -msgctxt "Interface setup" -msgid "Wide" -msgstr "" - -#: ../src/interface.cpp:867 -msgid "Setup for widescreen work" -msgstr "" - -#: ../src/interface.cpp:979 -#, c-format -msgid "Verb \"%s\" Unknown" -msgstr "" - -#: ../src/interface.cpp:1021 -msgid "Open _Recent" -msgstr "" - -#: ../src/interface.cpp:1129 ../src/interface.cpp:1215 -#: ../src/interface.cpp:1318 ../src/ui/widget/selected-style.cpp:523 -msgid "Drop color" -msgstr "" - -#: ../src/interface.cpp:1168 ../src/interface.cpp:1278 -msgid "Drop color on gradient" -msgstr "" - -#: ../src/interface.cpp:1331 -msgid "Could not parse SVG data" -msgstr "" - -#: ../src/interface.cpp:1370 -msgid "Drop SVG" -msgstr "" - -#: ../src/interface.cpp:1383 -msgid "Drop Symbol" -msgstr "" - -#: ../src/interface.cpp:1414 -msgid "Drop bitmap image" -msgstr "" - -#: ../src/interface.cpp:1506 -#, c-format -msgid "" -"A file named \"%s\" already exists. Do " -"you want to replace it?\n" -"\n" -"The file already exists in \"%s\". Replacing it will overwrite its contents." -msgstr "" - -#: ../src/interface.cpp:1513 ../share/extensions/web-set-att.inx.h:21 -#: ../share/extensions/web-transmit-att.inx.h:19 -msgid "Replace" -msgstr "" - -#: ../src/interface.cpp:1584 -msgid "Go to parent" -msgstr "" - -#. TRANSLATORS: #%1 is the id of the group e.g. , not a number. -#: ../src/interface.cpp:1625 -msgid "Enter group #%1" -msgstr "" - -#. Item dialog -#: ../src/interface.cpp:1737 ../src/verbs.cpp:2790 -msgid "_Object Properties..." -msgstr "" - -#: ../src/interface.cpp:1746 -msgid "_Select This" -msgstr "" - -#: ../src/interface.cpp:1757 -msgid "Select Same" -msgstr "" - -#. Select same fill and stroke -#: ../src/interface.cpp:1767 -msgid "Fill and Stroke" -msgstr "" - -#. Select same fill color -#: ../src/interface.cpp:1774 -msgid "Fill Color" -msgstr "" - -#. Select same stroke color -#: ../src/interface.cpp:1781 -msgid "Stroke Color" -msgstr "" - -#. Select same stroke style -#: ../src/interface.cpp:1788 -msgid "Stroke Style" -msgstr "" - -#. Select same stroke style -#: ../src/interface.cpp:1795 -msgid "Object type" -msgstr "" - -#. Move to layer -#: ../src/interface.cpp:1802 -msgid "_Move to layer ..." -msgstr "" - -#. Create link -#: ../src/interface.cpp:1812 -msgid "Create _Link" -msgstr "" - -#. Set mask -#: ../src/interface.cpp:1835 -msgid "Set Mask" -msgstr "" - -#. Release mask -#: ../src/interface.cpp:1846 -msgid "Release Mask" -msgstr "" - -#. Set Clip -#: ../src/interface.cpp:1857 -msgid "Set Cl_ip" -msgstr "" - -#. Release Clip -#: ../src/interface.cpp:1868 -msgid "Release C_lip" -msgstr "" - -#. Group -#: ../src/interface.cpp:1879 ../src/verbs.cpp:2429 -msgid "_Group" -msgstr "" - -#: ../src/interface.cpp:1950 -msgid "Create link" -msgstr "" - -#. Ungroup -#: ../src/interface.cpp:1981 ../src/verbs.cpp:2431 -msgid "_Ungroup" -msgstr "" - -#. Link dialog -#: ../src/interface.cpp:2006 -msgid "Link _Properties..." -msgstr "" - -#. Select item -#: ../src/interface.cpp:2012 -msgid "_Follow Link" -msgstr "" - -#. Reset transformations -#: ../src/interface.cpp:2018 -msgid "_Remove Link" -msgstr "" - -#: ../src/interface.cpp:2049 -msgid "Remove link" -msgstr "" - -#. Image properties -#: ../src/interface.cpp:2060 -msgid "Image _Properties..." -msgstr "" - -#. Edit externally -#: ../src/interface.cpp:2066 -msgid "Edit Externally..." -msgstr "" - -#. Trace Bitmap -#. TRANSLATORS: "to trace" means "to convert a bitmap to vector graphics" (to vectorize) -#: ../src/interface.cpp:2075 ../src/verbs.cpp:2492 -msgid "_Trace Bitmap..." -msgstr "" - -#: ../src/interface.cpp:2085 -msgctxt "Context menu" -msgid "Embed Image" -msgstr "" - -#: ../src/interface.cpp:2096 -msgctxt "Context menu" -msgid "Extract Image..." -msgstr "" - -#. Item dialog -#. Fill and Stroke dialog -#: ../src/interface.cpp:2235 ../src/interface.cpp:2255 ../src/verbs.cpp:2753 -msgid "_Fill and Stroke..." -msgstr "" - -#. Edit Text dialog -#: ../src/interface.cpp:2261 ../src/verbs.cpp:2770 -msgid "_Text and Font..." -msgstr "" - -#. Spellcheck dialog -#: ../src/interface.cpp:2267 ../src/verbs.cpp:2778 -msgid "Check Spellin_g..." -msgstr "" - -#: ../src/knot.cpp:443 -msgid "Node or handle drag canceled." -msgstr "" - -#: ../src/knotholder.cpp:157 -msgid "Change handle" -msgstr "" - -#: ../src/knotholder.cpp:236 -msgid "Move handle" -msgstr "" - -#. TRANSLATORS: This refers to the pattern that's inside the object -#: ../src/knotholder.cpp:257 -msgid "Move the pattern fill inside the object" -msgstr "" - -#: ../src/knotholder.cpp:261 -msgid "Scale the pattern fill; uniformly if with Ctrl" -msgstr "" - -#: ../src/knotholder.cpp:265 -msgid "Rotate the pattern fill; with Ctrl to snap angle" -msgstr "" - -#: ../src/libgdl/gdl-dock-bar.c:105 -msgid "Master" -msgstr "" - -#: ../src/libgdl/gdl-dock-bar.c:106 -msgid "GdlDockMaster object which the dockbar widget is attached to" -msgstr "" - -#: ../src/libgdl/gdl-dock-bar.c:113 -msgid "Dockbar style" -msgstr "" - -#: ../src/libgdl/gdl-dock-bar.c:114 -msgid "Dockbar style to show items on it" -msgstr "" - -#: ../src/libgdl/gdl-dock-item-grip.c:399 -msgid "Iconify this dock" -msgstr "" - -#: ../src/libgdl/gdl-dock-item-grip.c:401 -msgid "Close this dock" -msgstr "" - -#: ../src/libgdl/gdl-dock-item-grip.c:721 -#: ../src/libgdl/gdl-dock-tablabel.c:125 -msgid "Controlling dock item" -msgstr "" - -#: ../src/libgdl/gdl-dock-item-grip.c:722 -msgid "Dockitem which 'owns' this grip" -msgstr "" - -#. Name -#: ../src/libgdl/gdl-dock-item.c:298 ../src/widgets/text-toolbar.cpp:1430 -#: ../share/extensions/gcodetools_graffiti.inx.h:9 -#: ../share/extensions/gcodetools_orientation_points.inx.h:2 -msgid "Orientation" -msgstr "" - -#: ../src/libgdl/gdl-dock-item.c:299 -msgid "Orientation of the docking item" -msgstr "" - -#: ../src/libgdl/gdl-dock-item.c:314 -msgid "Resizable" -msgstr "" - -#: ../src/libgdl/gdl-dock-item.c:315 -msgid "If set, the dock item can be resized when docked in a GtkPanel widget" -msgstr "" - -#: ../src/libgdl/gdl-dock-item.c:322 -msgid "Item behavior" -msgstr "" - -#: ../src/libgdl/gdl-dock-item.c:323 -msgid "" -"General behavior for the dock item (i.e. whether it can float, if it's " -"locked, etc.)" -msgstr "" - -#: ../src/libgdl/gdl-dock-item.c:331 ../src/libgdl/gdl-dock-master.c:148 -msgid "Locked" -msgstr "" - -#: ../src/libgdl/gdl-dock-item.c:332 -msgid "" -"If set, the dock item cannot be dragged around and it doesn't show a grip" -msgstr "" - -#: ../src/libgdl/gdl-dock-item.c:340 -msgid "Preferred width" -msgstr "" - -#: ../src/libgdl/gdl-dock-item.c:341 -msgid "Preferred width for the dock item" -msgstr "" - -#: ../src/libgdl/gdl-dock-item.c:347 -msgid "Preferred height" -msgstr "" - -#: ../src/libgdl/gdl-dock-item.c:348 -msgid "Preferred height for the dock item" -msgstr "" - -#: ../src/libgdl/gdl-dock-item.c:716 -#, c-format -msgid "" -"You can't add a dock object (%p of type %s) inside a %s. Use a GdlDock or " -"some other compound dock object." -msgstr "" - -#: ../src/libgdl/gdl-dock-item.c:723 -#, c-format -msgid "" -"Attempting to add a widget with type %s to a %s, but it can only contain one " -"widget at a time; it already contains a widget of type %s" -msgstr "" - -#: ../src/libgdl/gdl-dock-item.c:1471 ../src/libgdl/gdl-dock-item.c:1521 -#, c-format -msgid "Unsupported docking strategy %s in dock object of type %s" -msgstr "" - -#. UnLock menuitem -#: ../src/libgdl/gdl-dock-item.c:1629 -msgid "UnLock" -msgstr "" - -#. Hide menuitem. -#: ../src/libgdl/gdl-dock-item.c:1636 -msgid "Hide" -msgstr "" - -#. Lock menuitem -#: ../src/libgdl/gdl-dock-item.c:1641 -msgid "Lock" -msgstr "" - -#: ../src/libgdl/gdl-dock-item.c:1904 -#, c-format -msgid "Attempt to bind an unbound item %p" -msgstr "" - -#: ../src/libgdl/gdl-dock-master.c:141 ../src/libgdl/gdl-dock.c:184 -msgid "Default title" -msgstr "" - -#: ../src/libgdl/gdl-dock-master.c:142 -msgid "Default title for newly created floating docks" -msgstr "" - -#: ../src/libgdl/gdl-dock-master.c:149 -msgid "" -"If is set to 1, all the dock items bound to the master are locked; if it's " -"0, all are unlocked; -1 indicates inconsistency among the items" -msgstr "" - -#: ../src/libgdl/gdl-dock-master.c:157 ../src/libgdl/gdl-switcher.c:732 -msgid "Switcher Style" -msgstr "" - -#: ../src/libgdl/gdl-dock-master.c:158 ../src/libgdl/gdl-switcher.c:733 -msgid "Switcher buttons style" -msgstr "" - -#: ../src/libgdl/gdl-dock-master.c:783 -#, c-format -msgid "" -"master %p: unable to add object %p[%s] to the hash. There already is an " -"item with that name (%p)." -msgstr "" - -#: ../src/libgdl/gdl-dock-master.c:955 -#, c-format -msgid "" -"The new dock controller %p is automatic. Only manual dock objects should be " -"named controller." -msgstr "" - -#: ../src/libgdl/gdl-dock-notebook.c:132 -#: ../src/ui/dialog/align-and-distribute.cpp:1047 -#: ../src/ui/dialog/document-properties.cpp:146 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1551 -#: ../src/widgets/desktop-widget.cpp:1996 -#: ../share/extensions/voronoi2svg.inx.h:9 -msgid "Page" -msgstr "" - -#: ../src/libgdl/gdl-dock-notebook.c:133 -msgid "The index of the current page" -msgstr "" - -#: ../src/libgdl/gdl-dock-object.c:125 -#: ../src/ui/dialog/inkscape-preferences.cpp:1482 -#: ../src/ui/widget/page-sizer.cpp:260 -#: ../src/widgets/gradient-selector.cpp:156 -#: ../src/widgets/sp-xmlview-attr-list.cpp:54 -msgid "Name" -msgstr "" - -#: ../src/libgdl/gdl-dock-object.c:126 -msgid "Unique name for identifying the dock object" -msgstr "" - -#: ../src/libgdl/gdl-dock-object.c:133 -msgid "Long name" -msgstr "" - -#: ../src/libgdl/gdl-dock-object.c:134 -msgid "Human readable name for the dock object" -msgstr "" - -#: ../src/libgdl/gdl-dock-object.c:140 -msgid "Stock Icon" -msgstr "" - -#: ../src/libgdl/gdl-dock-object.c:141 -msgid "Stock icon for the dock object" -msgstr "" - -#: ../src/libgdl/gdl-dock-object.c:147 -msgid "Pixbuf Icon" -msgstr "" - -#: ../src/libgdl/gdl-dock-object.c:148 -msgid "Pixbuf icon for the dock object" -msgstr "" - -#: ../src/libgdl/gdl-dock-object.c:153 -msgid "Dock master" -msgstr "" - -#: ../src/libgdl/gdl-dock-object.c:154 -msgid "Dock master this dock object is bound to" -msgstr "" - -#: ../src/libgdl/gdl-dock-object.c:463 -#, c-format -msgid "" -"Call to gdl_dock_object_dock in a dock object %p (object type is %s) which " -"hasn't implemented this method" -msgstr "" - -#: ../src/libgdl/gdl-dock-object.c:602 -#, c-format -msgid "" -"Dock operation requested in a non-bound object %p. The application might " -"crash" -msgstr "" - -#: ../src/libgdl/gdl-dock-object.c:609 -#, c-format -msgid "Cannot dock %p to %p because they belong to different masters" -msgstr "" - -#: ../src/libgdl/gdl-dock-object.c:651 -#, c-format -msgid "" -"Attempt to bind to %p an already bound dock object %p (current master: %p)" -msgstr "" - -#: ../src/libgdl/gdl-dock-paned.c:130 -msgid "Position" -msgstr "" - -#: ../src/libgdl/gdl-dock-paned.c:131 -msgid "Position of the divider in pixels" -msgstr "" - -#: ../src/libgdl/gdl-dock-placeholder.c:141 -msgid "Sticky" -msgstr "" - -#: ../src/libgdl/gdl-dock-placeholder.c:142 -msgid "" -"Whether the placeholder will stick to its host or move up the hierarchy when " -"the host is redocked" -msgstr "" - -#: ../src/libgdl/gdl-dock-placeholder.c:149 -msgid "Host" -msgstr "" - -#: ../src/libgdl/gdl-dock-placeholder.c:150 -msgid "The dock object this placeholder is attached to" -msgstr "" - -#: ../src/libgdl/gdl-dock-placeholder.c:157 -msgid "Next placement" -msgstr "" - -#: ../src/libgdl/gdl-dock-placeholder.c:158 -msgid "" -"The position an item will be docked to our host if a request is made to dock " -"to us" -msgstr "" - -#: ../src/libgdl/gdl-dock-placeholder.c:168 -msgid "Width for the widget when it's attached to the placeholder" -msgstr "" - -#: ../src/libgdl/gdl-dock-placeholder.c:176 -msgid "Height for the widget when it's attached to the placeholder" -msgstr "" - -#: ../src/libgdl/gdl-dock-placeholder.c:182 -msgid "Floating Toplevel" -msgstr "" - -#: ../src/libgdl/gdl-dock-placeholder.c:183 -msgid "Whether the placeholder is standing in for a floating toplevel dock" -msgstr "" - -#: ../src/libgdl/gdl-dock-placeholder.c:189 -msgid "X Coordinate" -msgstr "" - -#: ../src/libgdl/gdl-dock-placeholder.c:190 -msgid "X coordinate for dock when floating" -msgstr "" - -#: ../src/libgdl/gdl-dock-placeholder.c:196 -msgid "Y Coordinate" -msgstr "" - -#: ../src/libgdl/gdl-dock-placeholder.c:197 -msgid "Y coordinate for dock when floating" -msgstr "" - -#: ../src/libgdl/gdl-dock-placeholder.c:499 -msgid "Attempt to dock a dock object to an unbound placeholder" -msgstr "" - -#: ../src/libgdl/gdl-dock-placeholder.c:611 -#, c-format -msgid "Got a detach signal from an object (%p) who is not our host %p" -msgstr "" - -#: ../src/libgdl/gdl-dock-placeholder.c:636 -#, c-format -msgid "" -"Something weird happened while getting the child placement for %p from " -"parent %p" -msgstr "" - -#: ../src/libgdl/gdl-dock-tablabel.c:126 -msgid "Dockitem which 'owns' this tablabel" -msgstr "" - -#: ../src/libgdl/gdl-dock.c:176 ../src/ui/dialog/inkscape-preferences.cpp:631 -#: ../src/ui/dialog/inkscape-preferences.cpp:674 -msgid "Floating" -msgstr "" - -#: ../src/libgdl/gdl-dock.c:177 -msgid "Whether the dock is floating in its own window" -msgstr "" - -#: ../src/libgdl/gdl-dock.c:185 -msgid "Default title for the newly created floating docks" -msgstr "" - -#: ../src/libgdl/gdl-dock.c:192 -msgid "Width for the dock when it's of floating type" -msgstr "" - -#: ../src/libgdl/gdl-dock.c:200 -msgid "Height for the dock when it's of floating type" -msgstr "" - -#: ../src/libgdl/gdl-dock.c:207 -msgid "Float X" -msgstr "" - -#: ../src/libgdl/gdl-dock.c:208 -msgid "X coordinate for a floating dock" -msgstr "" - -#: ../src/libgdl/gdl-dock.c:215 -msgid "Float Y" -msgstr "" - -#: ../src/libgdl/gdl-dock.c:216 -msgid "Y coordinate for a floating dock" -msgstr "" - -#: ../src/libgdl/gdl-dock.c:478 -#, c-format -msgid "Dock #%d" -msgstr "" - -#: ../src/libnrtype/FontFactory.cpp:965 -msgid "Ignoring font without family that will crash Pango" -msgstr "" - -#: ../src/live_effects/effect.cpp:86 -msgid "doEffect stack test" -msgstr "" - -#: ../src/live_effects/effect.cpp:87 -msgid "Angle bisector" -msgstr "" - -#. TRANSLATORS: boolean operations -#: ../src/live_effects/effect.cpp:89 -msgid "Boolops" -msgstr "" - -#: ../src/live_effects/effect.cpp:90 -msgid "Circle (by center and radius)" -msgstr "" - -#: ../src/live_effects/effect.cpp:91 -msgid "Circle by 3 points" -msgstr "" - -#: ../src/live_effects/effect.cpp:92 -msgid "Dynamic stroke" -msgstr "" - -#: ../src/live_effects/effect.cpp:93 ../share/extensions/extrude.inx.h:1 -msgid "Extrude" -msgstr "" - -#: ../src/live_effects/effect.cpp:94 -msgid "Lattice Deformation" -msgstr "" - -#: ../src/live_effects/effect.cpp:95 -msgid "Line Segment" -msgstr "" - -#: ../src/live_effects/effect.cpp:96 -msgid "Mirror symmetry" -msgstr "" - -#: ../src/live_effects/effect.cpp:98 -msgid "Parallel" -msgstr "" - -#: ../src/live_effects/effect.cpp:99 -msgid "Path length" -msgstr "" - -#: ../src/live_effects/effect.cpp:100 -msgid "Perpendicular bisector" -msgstr "" - -#: ../src/live_effects/effect.cpp:101 -msgid "Perspective path" -msgstr "" - -#: ../src/live_effects/effect.cpp:102 -msgid "Rotate copies" -msgstr "" - -#: ../src/live_effects/effect.cpp:103 -msgid "Recursive skeleton" -msgstr "" - -#: ../src/live_effects/effect.cpp:104 -msgid "Tangent to curve" -msgstr "" - -#: ../src/live_effects/effect.cpp:105 -msgid "Text label" -msgstr "" - -#. 0.46 -#: ../src/live_effects/effect.cpp:108 -msgid "Bend" -msgstr "" - -#: ../src/live_effects/effect.cpp:109 -msgid "Gears" -msgstr "" - -#: ../src/live_effects/effect.cpp:110 -msgid "Pattern Along Path" -msgstr "" - -#. for historic reasons, this effect is called skeletal(strokes) in Inkscape:SVG -#: ../src/live_effects/effect.cpp:111 -msgid "Stitch Sub-Paths" -msgstr "" - -#. 0.47 -#: ../src/live_effects/effect.cpp:113 -msgid "VonKoch" -msgstr "" - -#: ../src/live_effects/effect.cpp:114 -msgid "Knot" -msgstr "" - -#: ../src/live_effects/effect.cpp:115 -msgid "Construct grid" -msgstr "" - -#: ../src/live_effects/effect.cpp:116 -msgid "Spiro spline" -msgstr "" - -#: ../src/live_effects/effect.cpp:117 -msgid "Envelope Deformation" -msgstr "" - -#: ../src/live_effects/effect.cpp:118 -msgid "Interpolate Sub-Paths" -msgstr "" - -#: ../src/live_effects/effect.cpp:119 -msgid "Hatches (rough)" -msgstr "" - -#: ../src/live_effects/effect.cpp:120 -msgid "Sketch" -msgstr "" - -#: ../src/live_effects/effect.cpp:121 -msgid "Ruler" -msgstr "" - -#. 0.49 -#: ../src/live_effects/effect.cpp:123 -msgid "Power stroke" -msgstr "" - -#: ../src/live_effects/effect.cpp:124 ../src/selection-chemistry.cpp:2792 -msgid "Clone original path" -msgstr "" - -#: ../src/live_effects/effect.cpp:286 -msgid "Is visible?" -msgstr "" - -#: ../src/live_effects/effect.cpp:286 -msgid "" -"If unchecked, the effect remains applied to the object but is temporarily " -"disabled on canvas" -msgstr "" - -#: ../src/live_effects/effect.cpp:307 -msgid "No effect" -msgstr "" - -#: ../src/live_effects/effect.cpp:354 -#, c-format -msgid "Please specify a parameter path for the LPE '%s' with %d mouse clicks" -msgstr "" - -#: ../src/live_effects/effect.cpp:632 -#, c-format -msgid "Editing parameter %s." -msgstr "" - -#: ../src/live_effects/effect.cpp:637 -msgid "None of the applied path effect's parameters can be edited on-canvas." -msgstr "" - -#: ../src/live_effects/lpe-bendpath.cpp:53 -msgid "Bend path:" -msgstr "" - -#: ../src/live_effects/lpe-bendpath.cpp:53 -msgid "Path along which to bend the original path" -msgstr "" - -#: ../src/live_effects/lpe-bendpath.cpp:54 -msgid "Width of the path" -msgstr "" - -#: ../src/live_effects/lpe-bendpath.cpp:55 -msgid "W_idth in units of length" -msgstr "" - -#: ../src/live_effects/lpe-bendpath.cpp:55 -msgid "Scale the width of the path in units of its length" -msgstr "" - -#: ../src/live_effects/lpe-bendpath.cpp:56 -msgid "_Original path is vertical" -msgstr "" - -#: ../src/live_effects/lpe-bendpath.cpp:56 -msgid "Rotates the original 90 degrees, before bending it along the bend path" -msgstr "" - -#: ../src/live_effects/lpe-clone-original.cpp:18 -msgid "Linked path:" -msgstr "" - -#: ../src/live_effects/lpe-clone-original.cpp:18 -msgid "Path from which to take the original path data" -msgstr "" - -#: ../src/live_effects/lpe-constructgrid.cpp:27 -msgid "Size _X:" -msgstr "" - -#: ../src/live_effects/lpe-constructgrid.cpp:27 -msgid "The size of the grid in X direction." -msgstr "" - -#: ../src/live_effects/lpe-constructgrid.cpp:28 -msgid "Size _Y:" -msgstr "" - -#: ../src/live_effects/lpe-constructgrid.cpp:28 -msgid "The size of the grid in Y direction." -msgstr "" - -#: ../src/live_effects/lpe-curvestitch.cpp:41 -msgid "Stitch path:" -msgstr "" - -#: ../src/live_effects/lpe-curvestitch.cpp:41 -msgid "The path that will be used as stitch." -msgstr "" - -#: ../src/live_effects/lpe-curvestitch.cpp:42 -msgid "N_umber of paths:" -msgstr "" - -#: ../src/live_effects/lpe-curvestitch.cpp:42 -msgid "The number of paths that will be generated." -msgstr "" - -#: ../src/live_effects/lpe-curvestitch.cpp:43 -msgid "Sta_rt edge variance:" -msgstr "" - -#: ../src/live_effects/lpe-curvestitch.cpp:43 -msgid "" -"The amount of random jitter to move the start points of the stitches inside " -"& outside the guide path" -msgstr "" - -#: ../src/live_effects/lpe-curvestitch.cpp:44 -msgid "Sta_rt spacing variance:" -msgstr "" - -#: ../src/live_effects/lpe-curvestitch.cpp:44 -msgid "" -"The amount of random shifting to move the start points of the stitches back " -"& forth along the guide path" -msgstr "" - -#: ../src/live_effects/lpe-curvestitch.cpp:45 -msgid "End ed_ge variance:" -msgstr "" - -#: ../src/live_effects/lpe-curvestitch.cpp:45 -msgid "" -"The amount of randomness that moves the end points of the stitches inside & " -"outside the guide path" -msgstr "" - -#: ../src/live_effects/lpe-curvestitch.cpp:46 -msgid "End spa_cing variance:" -msgstr "" - -#: ../src/live_effects/lpe-curvestitch.cpp:46 -msgid "" -"The amount of random shifting to move the end points of the stitches back & " -"forth along the guide path" -msgstr "" - -#: ../src/live_effects/lpe-curvestitch.cpp:47 -msgid "Scale _width:" -msgstr "" - -#: ../src/live_effects/lpe-curvestitch.cpp:47 -msgid "Scale the width of the stitch path" -msgstr "" - -#: ../src/live_effects/lpe-curvestitch.cpp:48 -msgid "Scale _width relative to length" -msgstr "" - -#: ../src/live_effects/lpe-curvestitch.cpp:48 -msgid "Scale the width of the stitch path relative to its length" -msgstr "" - -#: ../src/live_effects/lpe-envelope.cpp:31 -msgid "Top bend path:" -msgstr "" - -#: ../src/live_effects/lpe-envelope.cpp:31 -msgid "Top path along which to bend the original path" -msgstr "" - -#: ../src/live_effects/lpe-envelope.cpp:32 -msgid "Right bend path:" -msgstr "" - -#: ../src/live_effects/lpe-envelope.cpp:32 -msgid "Right path along which to bend the original path" -msgstr "" - -#: ../src/live_effects/lpe-envelope.cpp:33 -msgid "Bottom bend path:" -msgstr "" - -#: ../src/live_effects/lpe-envelope.cpp:33 -msgid "Bottom path along which to bend the original path" -msgstr "" - -#: ../src/live_effects/lpe-envelope.cpp:34 -msgid "Left bend path:" -msgstr "" - -#: ../src/live_effects/lpe-envelope.cpp:34 -msgid "Left path along which to bend the original path" -msgstr "" - -#: ../src/live_effects/lpe-envelope.cpp:35 -msgid "E_nable left & right paths" -msgstr "" - -#: ../src/live_effects/lpe-envelope.cpp:35 -msgid "Enable the left and right deformation paths" -msgstr "" - -#: ../src/live_effects/lpe-envelope.cpp:36 -msgid "_Enable top & bottom paths" -msgstr "" - -#: ../src/live_effects/lpe-envelope.cpp:36 -msgid "Enable the top and bottom deformation paths" -msgstr "" - -#: ../src/live_effects/lpe-gears.cpp:214 -msgid "_Teeth:" -msgstr "" - -#: ../src/live_effects/lpe-gears.cpp:214 -msgid "The number of teeth" -msgstr "" - -#: ../src/live_effects/lpe-gears.cpp:215 -msgid "_Phi:" -msgstr "" - -#: ../src/live_effects/lpe-gears.cpp:215 -msgid "" -"Tooth pressure angle (typically 20-25 deg). The ratio of teeth not in " -"contact." -msgstr "" - -#: ../src/live_effects/lpe-interpolate.cpp:31 -msgid "Trajectory:" -msgstr "" - -#: ../src/live_effects/lpe-interpolate.cpp:31 -msgid "Path along which intermediate steps are created." -msgstr "" - -#: ../src/live_effects/lpe-interpolate.cpp:32 -msgid "Steps_:" -msgstr "" - -#: ../src/live_effects/lpe-interpolate.cpp:32 -msgid "Determines the number of steps from start to end path." -msgstr "" - -#: ../src/live_effects/lpe-interpolate.cpp:33 -msgid "E_quidistant spacing" -msgstr "" - -#: ../src/live_effects/lpe-interpolate.cpp:33 -msgid "" -"If true, the spacing between intermediates is constant along the length of " -"the path. If false, the distance depends on the location of the nodes of the " -"trajectory path." -msgstr "" - -#. initialise your parameters here: -#: ../src/live_effects/lpe-knot.cpp:347 -msgid "Fi_xed width:" -msgstr "" - -#: ../src/live_effects/lpe-knot.cpp:347 -msgid "Size of hidden region of lower string" -msgstr "" - -#: ../src/live_effects/lpe-knot.cpp:348 -msgid "_In units of stroke width" -msgstr "" - -#: ../src/live_effects/lpe-knot.cpp:348 -msgid "Consider 'Interruption width' as a ratio of stroke width" -msgstr "" - -#: ../src/live_effects/lpe-knot.cpp:349 -msgid "St_roke width" -msgstr "" - -#: ../src/live_effects/lpe-knot.cpp:349 -msgid "Add the stroke width to the interruption size" -msgstr "" - -#: ../src/live_effects/lpe-knot.cpp:350 -msgid "_Crossing path stroke width" -msgstr "" - -#: ../src/live_effects/lpe-knot.cpp:350 -msgid "Add crossed stroke width to the interruption size" -msgstr "" - -#: ../src/live_effects/lpe-knot.cpp:351 -msgid "S_witcher size:" -msgstr "" - -#: ../src/live_effects/lpe-knot.cpp:351 -msgid "Orientation indicator/switcher size" -msgstr "" - -#: ../src/live_effects/lpe-knot.cpp:352 -msgid "Crossing Signs" -msgstr "" - -#: ../src/live_effects/lpe-knot.cpp:352 -msgid "Crossings signs" -msgstr "" - -#: ../src/live_effects/lpe-knot.cpp:617 -msgid "Drag to select a crossing, click to flip it" -msgstr "" - -#. / @todo Is this the right verb? -#: ../src/live_effects/lpe-knot.cpp:655 -msgid "Change knot crossing" -msgstr "" - -#: ../src/live_effects/lpe-offset.cpp:31 -msgid "Handle to control the distance of the offset from the curve" -msgstr "" - -#: ../src/live_effects/lpe-patternalongpath.cpp:50 -#: ../share/extensions/pathalongpath.inx.h:10 -msgid "Single" -msgstr "" - -#: ../src/live_effects/lpe-patternalongpath.cpp:51 -#: ../share/extensions/pathalongpath.inx.h:11 -msgid "Single, stretched" -msgstr "" - -#: ../src/live_effects/lpe-patternalongpath.cpp:52 -#: ../share/extensions/pathalongpath.inx.h:12 -msgid "Repeated" -msgstr "" - -#: ../src/live_effects/lpe-patternalongpath.cpp:53 -#: ../share/extensions/pathalongpath.inx.h:13 -msgid "Repeated, stretched" -msgstr "" - -#: ../src/live_effects/lpe-patternalongpath.cpp:59 -msgid "Pattern source:" -msgstr "" - -#: ../src/live_effects/lpe-patternalongpath.cpp:59 -msgid "Path to put along the skeleton path" -msgstr "" - -#: ../src/live_effects/lpe-patternalongpath.cpp:60 -msgid "Pattern copies:" -msgstr "" - -#: ../src/live_effects/lpe-patternalongpath.cpp:60 -msgid "How many pattern copies to place along the skeleton path" -msgstr "" - -#: ../src/live_effects/lpe-patternalongpath.cpp:62 -msgid "Width of the pattern" -msgstr "" - -#: ../src/live_effects/lpe-patternalongpath.cpp:63 -msgid "Wid_th in units of length" -msgstr "" - -#: ../src/live_effects/lpe-patternalongpath.cpp:64 -msgid "Scale the width of the pattern in units of its length" -msgstr "" - -#: ../src/live_effects/lpe-patternalongpath.cpp:66 -msgid "Spa_cing:" -msgstr "" - -#: ../src/live_effects/lpe-patternalongpath.cpp:68 -#, no-c-format -msgid "" -"Space between copies of the pattern. Negative values allowed, but are " -"limited to -90% of pattern width." -msgstr "" - -#: ../src/live_effects/lpe-patternalongpath.cpp:70 -msgid "No_rmal offset:" -msgstr "" - -#: ../src/live_effects/lpe-patternalongpath.cpp:71 -msgid "Tan_gential offset:" -msgstr "" - -#: ../src/live_effects/lpe-patternalongpath.cpp:72 -msgid "Offsets in _unit of pattern size" -msgstr "" - -#: ../src/live_effects/lpe-patternalongpath.cpp:73 -msgid "" -"Spacing, tangential and normal offset are expressed as a ratio of width/" -"height" -msgstr "" - -#: ../src/live_effects/lpe-patternalongpath.cpp:75 -msgid "Pattern is _vertical" -msgstr "" - -#: ../src/live_effects/lpe-patternalongpath.cpp:75 -msgid "Rotate pattern 90 deg before applying" -msgstr "" - -#: ../src/live_effects/lpe-patternalongpath.cpp:77 -msgid "_Fuse nearby ends:" -msgstr "" - -#: ../src/live_effects/lpe-patternalongpath.cpp:77 -msgid "Fuse ends closer than this number. 0 means don't fuse." -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:189 -msgid "CubicBezierFit" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:190 -msgid "CubicBezierJohan" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:191 -msgid "SpiroInterpolator" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:203 -msgid "Butt" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:204 -msgid "Square" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:205 -#: ../share/extensions/gcodetools_prepare_path_for_plasma.inx.h:13 -msgid "Round" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:206 -msgid "Peak" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:207 -msgid "Zero width" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:220 -msgid "Beveled" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:221 -#: ../src/widgets/star-toolbar.cpp:546 -msgid "Rounded" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:222 -msgid "Extrapolated" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:223 -msgid "Miter" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:224 -#: ../src/widgets/pencil-toolbar.cpp:137 -msgid "Spiro" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:226 -msgid "Extrapolated arc" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:233 -msgid "Offset points" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:234 -msgid "Sort points" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:234 -msgid "Sort offset points according to their time value along the curve" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:235 -msgid "Interpolator type:" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:235 -msgid "" -"Determines which kind of interpolator will be used to interpolate between " -"stroke width along the path" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:236 -#: ../share/extensions/fractalize.inx.h:3 -msgid "Smoothness:" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:236 -msgid "" -"Sets the smoothness for the CubicBezierJohan interpolator; 0 = linear " -"interpolation, 1 = smooth" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:237 -msgid "Start cap:" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:237 -msgid "Determines the shape of the path's start" -msgstr "" - -#. Join type -#. TRANSLATORS: The line join style specifies the shape to be used at the -#. corners of paths. It can be "miter", "round" or "bevel". -#: ../src/live_effects/lpe-powerstroke.cpp:238 -#: ../src/widgets/stroke-style.cpp:220 -msgid "Join:" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:238 -msgid "Determines the shape of the path's corners" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:239 -msgid "Miter limit:" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:239 -#: ../src/widgets/stroke-style.cpp:271 -msgid "Maximum length of the miter (in units of stroke width)" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:240 -msgid "End cap:" -msgstr "" - -#: ../src/live_effects/lpe-powerstroke.cpp:240 -msgid "Determines the shape of the path's end" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:225 -msgid "Frequency randomness:" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:225 -msgid "Variation of distance between hatches, in %." -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:226 -msgid "Growth:" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:226 -msgid "Growth of distance between hatches." -msgstr "" - -#. FIXME: top/bottom names are inverted in the UI/svg and in the code!! -#: ../src/live_effects/lpe-rough-hatches.cpp:228 -msgid "Half-turns smoothness: 1st side, in:" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:228 -msgid "" -"Set smoothness/sharpness of path when reaching a 'bottom' half-turn. " -"0=sharp, 1=default" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:229 -msgid "1st side, out:" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:229 -msgid "" -"Set smoothness/sharpness of path when leaving a 'bottom' half-turn. 0=sharp, " -"1=default" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:230 -msgid "2nd side, in:" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:230 -msgid "" -"Set smoothness/sharpness of path when reaching a 'top' half-turn. 0=sharp, " -"1=default" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:231 -msgid "2nd side, out:" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:231 -msgid "" -"Set smoothness/sharpness of path when leaving a 'top' half-turn. 0=sharp, " -"1=default" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:232 -msgid "Magnitude jitter: 1st side:" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:232 -msgid "Randomly moves 'bottom' half-turns to produce magnitude variations." -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:233 -#: ../src/live_effects/lpe-rough-hatches.cpp:235 -#: ../src/live_effects/lpe-rough-hatches.cpp:237 -msgid "2nd side:" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:233 -msgid "Randomly moves 'top' half-turns to produce magnitude variations." -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:234 -msgid "Parallelism jitter: 1st side:" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:234 -msgid "" -"Add direction randomness by moving 'bottom' half-turns tangentially to the " -"boundary." -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:235 -msgid "" -"Add direction randomness by randomly moving 'top' half-turns tangentially to " -"the boundary." -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:236 -msgid "Variance: 1st side:" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:236 -msgid "Randomness of 'bottom' half-turns smoothness" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:237 -msgid "Randomness of 'top' half-turns smoothness" -msgstr "" - -#. -#: ../src/live_effects/lpe-rough-hatches.cpp:239 -msgid "Generate thick/thin path" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:239 -msgid "Simulate a stroke of varying width" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:240 -msgid "Bend hatches" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:240 -msgid "Add a global bend to the hatches (slower)" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:241 -msgid "Thickness: at 1st side:" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:241 -msgid "Width at 'bottom' half-turns" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:242 -msgid "at 2nd side:" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:242 -msgid "Width at 'top' half-turns" -msgstr "" - -#. -#: ../src/live_effects/lpe-rough-hatches.cpp:244 -msgid "from 2nd to 1st side:" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:244 -msgid "Width from 'top' to 'bottom'" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:245 -msgid "from 1st to 2nd side:" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:245 -msgid "Width from 'bottom' to 'top'" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:247 -msgid "Hatches width and dir" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:247 -msgid "Defines hatches frequency and direction" -msgstr "" - -#. -#: ../src/live_effects/lpe-rough-hatches.cpp:249 -msgid "Global bending" -msgstr "" - -#: ../src/live_effects/lpe-rough-hatches.cpp:249 -msgid "" -"Relative position to a reference point defines global bending direction and " -"amount" -msgstr "" - -#: ../src/live_effects/lpe-ruler.cpp:25 ../share/extensions/restack.inx.h:12 -#: ../share/extensions/text_extract.inx.h:8 -msgid "Left" -msgstr "" - -#: ../src/live_effects/lpe-ruler.cpp:26 ../share/extensions/restack.inx.h:14 -#: ../share/extensions/text_extract.inx.h:10 -msgid "Right" -msgstr "" - -#: ../src/live_effects/lpe-ruler.cpp:27 ../src/live_effects/lpe-ruler.cpp:35 -msgid "Both" -msgstr "" - -#: ../src/live_effects/lpe-ruler.cpp:33 ../src/widgets/arc-toolbar.cpp:341 -msgid "Start" -msgstr "" - -#: ../src/live_effects/lpe-ruler.cpp:34 ../src/widgets/arc-toolbar.cpp:354 -msgid "End" -msgstr "" - -#: ../src/live_effects/lpe-ruler.cpp:41 -msgid "_Mark distance:" -msgstr "" - -#: ../src/live_effects/lpe-ruler.cpp:41 -msgid "Distance between successive ruler marks" -msgstr "" - -#: ../src/live_effects/lpe-ruler.cpp:42 -#: ../share/extensions/foldablebox.inx.h:7 -#: ../share/extensions/interp_att_g.inx.h:9 -#: ../share/extensions/layout_nup.inx.h:3 -#: ../share/extensions/printing_marks.inx.h:11 -msgid "Unit:" -msgstr "" - -#: ../src/live_effects/lpe-ruler.cpp:43 -msgid "Ma_jor length:" -msgstr "" - -#: ../src/live_effects/lpe-ruler.cpp:43 -msgid "Length of major ruler marks" -msgstr "" - -#: ../src/live_effects/lpe-ruler.cpp:44 -msgid "Mino_r length:" -msgstr "" - -#: ../src/live_effects/lpe-ruler.cpp:44 -msgid "Length of minor ruler marks" -msgstr "" - -#: ../src/live_effects/lpe-ruler.cpp:45 -msgid "Major steps_:" -msgstr "" - -#: ../src/live_effects/lpe-ruler.cpp:45 -msgid "Draw a major mark every ... steps" -msgstr "" - -#: ../src/live_effects/lpe-ruler.cpp:46 -msgid "Shift marks _by:" -msgstr "" - -#: ../src/live_effects/lpe-ruler.cpp:46 -msgid "Shift marks by this many steps" -msgstr "" - -#: ../src/live_effects/lpe-ruler.cpp:47 -msgid "Mark direction:" -msgstr "" - -#: ../src/live_effects/lpe-ruler.cpp:47 -msgid "Direction of marks (when viewing along the path from start to end)" -msgstr "" - -#: ../src/live_effects/lpe-ruler.cpp:48 -msgid "_Offset:" -msgstr "" - -#: ../src/live_effects/lpe-ruler.cpp:48 -msgid "Offset of first mark" -msgstr "" - -#: ../src/live_effects/lpe-ruler.cpp:49 -msgid "Border marks:" -msgstr "" - -#: ../src/live_effects/lpe-ruler.cpp:49 -msgid "Choose whether to draw marks at the beginning and end of the path" -msgstr "" - -#. initialise your parameters here: -#. testpointA(_("Test Point A"), _("Test A"), "ptA", &wr, this, Geom::Point(100,100)), -#: ../src/live_effects/lpe-sketch.cpp:38 -msgid "Strokes:" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:38 -msgid "Draw that many approximating strokes" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:39 -msgid "Max stroke length:" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:40 -msgid "Maximum length of approximating strokes" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:41 -msgid "Stroke length variation:" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:42 -msgid "Random variation of stroke length (relative to maximum length)" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:43 -msgid "Max. overlap:" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:44 -msgid "How much successive strokes should overlap (relative to maximum length)" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:45 -msgid "Overlap variation:" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:46 -msgid "Random variation of overlap (relative to maximum overlap)" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:47 -msgid "Max. end tolerance:" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:48 -msgid "" -"Maximum distance between ends of original and approximating paths (relative " -"to maximum length)" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:49 -msgid "Average offset:" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:50 -msgid "Average distance each stroke is away from the original path" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:51 -msgid "Max. tremble:" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:52 -msgid "Maximum tremble magnitude" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:53 -msgid "Tremble frequency:" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:54 -msgid "Average number of tremble periods in a stroke" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:56 -msgid "Construction lines:" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:57 -msgid "How many construction lines (tangents) to draw" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:58 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 -#: ../share/extensions/render_alphabetsoup.inx.h:3 -msgid "Scale:" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:59 -msgid "" -"Scale factor relating curvature and length of construction lines (try " -"5*offset)" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:60 -msgid "Max. length:" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:60 -msgid "Maximum length of construction lines" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:61 -msgid "Length variation:" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:61 -msgid "Random variation of the length of construction lines" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:62 -msgid "Placement randomness:" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:62 -msgid "0: evenly distributed construction lines, 1: purely random placement" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:64 -msgid "k_min:" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:64 -msgid "min curvature" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:65 -msgid "k_max:" -msgstr "" - -#: ../src/live_effects/lpe-sketch.cpp:65 -msgid "max curvature" -msgstr "" - -#: ../src/live_effects/lpe-vonkoch.cpp:47 -msgid "N_r of generations:" -msgstr "" - -#: ../src/live_effects/lpe-vonkoch.cpp:47 -msgid "Depth of the recursion --- keep low!!" -msgstr "" - -#: ../src/live_effects/lpe-vonkoch.cpp:48 -msgid "Generating path:" -msgstr "" - -#: ../src/live_effects/lpe-vonkoch.cpp:48 -msgid "Path whose segments define the iterated transforms" -msgstr "" - -#: ../src/live_effects/lpe-vonkoch.cpp:49 -msgid "_Use uniform transforms only" -msgstr "" - -#: ../src/live_effects/lpe-vonkoch.cpp:49 -msgid "" -"2 consecutive segments are used to reverse/preserve orientation only " -"(otherwise, they define a general transform)." -msgstr "" - -#: ../src/live_effects/lpe-vonkoch.cpp:50 -msgid "Dra_w all generations" -msgstr "" - -#: ../src/live_effects/lpe-vonkoch.cpp:50 -msgid "If unchecked, draw only the last generation" -msgstr "" - -#. ,draw_boxes(_("Display boxes"), _("Display boxes instead of paths only"), "draw_boxes", &wr, this, true) -#: ../src/live_effects/lpe-vonkoch.cpp:52 -msgid "Reference segment:" -msgstr "" - -#: ../src/live_effects/lpe-vonkoch.cpp:52 -msgid "The reference segment. Defaults to the horizontal midline of the bbox." -msgstr "" - -#. refA(_("Ref Start"), _("Left side middle of the reference box"), "refA", &wr, this), -#. refB(_("Ref End"), _("Right side middle of the reference box"), "refB", &wr, this), -#. FIXME: a path is used here instead of 2 points to work around path/point param incompatibility bug. -#: ../src/live_effects/lpe-vonkoch.cpp:56 -msgid "_Max complexity:" -msgstr "" - -#: ../src/live_effects/lpe-vonkoch.cpp:56 -msgid "Disable effect if the output is too complex" -msgstr "" - -#: ../src/live_effects/parameter/bool.cpp:67 -msgid "Change bool parameter" -msgstr "" - -#: ../src/live_effects/parameter/enum.h:47 -msgid "Change enumeration parameter" -msgstr "" - -#: ../src/live_effects/parameter/originalpath.cpp:70 -#: ../src/live_effects/parameter/path.cpp:194 -msgid "Link to path" -msgstr "" - -#: ../src/live_effects/parameter/originalpath.cpp:82 -msgid "Select original" -msgstr "" - -#: ../src/live_effects/parameter/parameter.cpp:141 -msgid "Change scalar parameter" -msgstr "" - -#: ../src/live_effects/parameter/path.cpp:164 -msgid "Edit on-canvas" -msgstr "" - -#: ../src/live_effects/parameter/path.cpp:174 -msgid "Copy path" -msgstr "" - -#: ../src/live_effects/parameter/path.cpp:184 -msgid "Paste path" -msgstr "" - -#: ../src/live_effects/parameter/path.cpp:437 -msgid "Paste path parameter" -msgstr "" - -#: ../src/live_effects/parameter/path.cpp:469 -msgid "Link path parameter to path" -msgstr "" - -#: ../src/live_effects/parameter/point.cpp:89 -msgid "Change point parameter" -msgstr "" - -#: ../src/live_effects/parameter/powerstrokepointarray.cpp:226 -#: ../src/live_effects/parameter/powerstrokepointarray.cpp:238 -msgid "" -"Stroke width control point: drag to alter the stroke width. Ctrl" -"+click adds a control point, Ctrl+Alt+click deletes it." -msgstr "" - -#: ../src/live_effects/parameter/random.cpp:134 -msgid "Change random parameter" -msgstr "" - -#: ../src/live_effects/parameter/text.cpp:100 -msgid "Change text parameter" -msgstr "" - -#: ../src/live_effects/parameter/unit.cpp:78 -msgid "Change unit parameter" -msgstr "" - -#: ../src/live_effects/parameter/vector.cpp:99 -msgid "Change vector parameter" -msgstr "" - -#: ../src/main-cmdlineact.cpp:49 -#, c-format -msgid "Unable to find verb ID '%s' specified on the command line.\n" -msgstr "" - -#: ../src/main-cmdlineact.cpp:61 -#, c-format -msgid "Unable to find node ID: '%s'\n" -msgstr "" - -#: ../src/main.cpp:280 -msgid "Print the Inkscape version number" -msgstr "" - -#: ../src/main.cpp:285 -msgid "Do not use X server (only process files from console)" -msgstr "" - -#: ../src/main.cpp:290 -msgid "Try to use X server (even if $DISPLAY is not set)" -msgstr "" - -#: ../src/main.cpp:295 -msgid "Open specified document(s) (option string may be excluded)" -msgstr "" - -#: ../src/main.cpp:296 ../src/main.cpp:301 ../src/main.cpp:306 -#: ../src/main.cpp:378 ../src/main.cpp:383 ../src/main.cpp:388 -#: ../src/main.cpp:399 ../src/main.cpp:416 -msgid "FILENAME" -msgstr "" - -#: ../src/main.cpp:300 -msgid "Print document(s) to specified output file (use '| program' for pipe)" -msgstr "" - -#: ../src/main.cpp:305 -msgid "Export document to a PNG file" -msgstr "" - -#: ../src/main.cpp:310 -msgid "" -"Resolution for exporting to bitmap and for rasterization of filters in PS/" -"EPS/PDF (default 90)" -msgstr "" - -#: ../src/main.cpp:311 ../src/ui/widget/rendering-options.cpp:34 -msgid "DPI" -msgstr "" - -#: ../src/main.cpp:315 -msgid "" -"Exported area in SVG user units (default is the page; 0,0 is lower-left " -"corner)" -msgstr "" - -#: ../src/main.cpp:316 -msgid "x0:y0:x1:y1" -msgstr "" - -#: ../src/main.cpp:320 -msgid "Exported area is the entire drawing (not page)" -msgstr "" - -#: ../src/main.cpp:325 -msgid "Exported area is the entire page" -msgstr "" - -#: ../src/main.cpp:330 -msgid "Only for PS/EPS/PDF, sets margin in mm around exported area (default 0)" -msgstr "" - -#: ../src/main.cpp:331 ../src/main.cpp:373 -msgid "VALUE" -msgstr "" - -#: ../src/main.cpp:335 -msgid "" -"Snap the bitmap export area outwards to the nearest integer values (in SVG " -"user units)" -msgstr "" - -#: ../src/main.cpp:340 -msgid "The width of exported bitmap in pixels (overrides export-dpi)" -msgstr "" - -#: ../src/main.cpp:341 -msgid "WIDTH" -msgstr "" - -#: ../src/main.cpp:345 -msgid "The height of exported bitmap in pixels (overrides export-dpi)" -msgstr "" - -#: ../src/main.cpp:346 -msgid "HEIGHT" -msgstr "" - -#: ../src/main.cpp:350 -msgid "The ID of the object to export" -msgstr "" - -#: ../src/main.cpp:351 ../src/main.cpp:461 -#: ../src/ui/dialog/inkscape-preferences.cpp:1485 -msgid "ID" -msgstr "" - -#. TRANSLATORS: this means: "Only export the object whose id is given in --export-id". -#. See "man inkscape" for details. -#: ../src/main.cpp:357 -msgid "" -"Export just the object with export-id, hide all others (only with export-id)" -msgstr "" - -#: ../src/main.cpp:362 -msgid "Use stored filename and DPI hints when exporting (only with export-id)" -msgstr "" - -#: ../src/main.cpp:367 -msgid "Background color of exported bitmap (any SVG-supported color string)" -msgstr "" - -#: ../src/main.cpp:368 -msgid "COLOR" -msgstr "" - -#: ../src/main.cpp:372 -msgid "Background opacity of exported bitmap (either 0.0 to 1.0, or 1 to 255)" -msgstr "" - -#: ../src/main.cpp:377 -msgid "Export document to plain SVG file (no sodipodi or inkscape namespaces)" -msgstr "" - -#: ../src/main.cpp:382 -msgid "Export document to a PS file" -msgstr "" - -#: ../src/main.cpp:387 -msgid "Export document to an EPS file" -msgstr "" - -#: ../src/main.cpp:392 -msgid "" -"Choose the PostScript Level used to export. Possible choices are 2 (the " -"default) and 3" -msgstr "" - -#: ../src/main.cpp:394 -msgid "PS Level" -msgstr "" - -#: ../src/main.cpp:398 -msgid "Export document to a PDF file" -msgstr "" - -#. TRANSLATORS: "--export-pdf-version" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:404 -msgid "" -"Export PDF to given version. (hint: make sure to input the exact string " -"found in the PDF export dialog, e.g. \"PDF 1.4\" which is PDF-a conformant)" -msgstr "" - -#: ../src/main.cpp:405 -msgid "PDF_VERSION" -msgstr "" - -#: ../src/main.cpp:409 -msgid "" -"Export PDF/PS/EPS without text. Besides the PDF/PS/EPS, a LaTeX file is " -"exported, putting the text on top of the PDF/PS/EPS file. Include the result " -"in LaTeX like: \\input{latexfile.tex}" -msgstr "" - -#: ../src/main.cpp:415 -msgid "Export document to an Enhanced Metafile (EMF) File" -msgstr "" - -#: ../src/main.cpp:421 -msgid "Convert text object to paths on export (PS, EPS, PDF, SVG)" -msgstr "" - -#: ../src/main.cpp:426 -msgid "" -"Render filtered objects without filters, instead of rasterizing (PS, EPS, " -"PDF)" -msgstr "" - -#. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:432 -msgid "" -"Query the X coordinate of the drawing or, if specified, of the object with --" -"query-id" -msgstr "" - -#. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:438 -msgid "" -"Query the Y coordinate of the drawing or, if specified, of the object with --" -"query-id" -msgstr "" - -#. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:444 -msgid "" -"Query the width of the drawing or, if specified, of the object with --query-" -"id" -msgstr "" - -#. TRANSLATORS: "--query-id" is an Inkscape command line option; see "inkscape --help" -#: ../src/main.cpp:450 -msgid "" -"Query the height of the drawing or, if specified, of the object with --query-" -"id" -msgstr "" - -#: ../src/main.cpp:455 -msgid "List id,x,y,w,h for all objects" -msgstr "" - -#: ../src/main.cpp:460 -msgid "The ID of the object whose dimensions are queried" -msgstr "" - -#. TRANSLATORS: this option makes Inkscape print the name (path) of the extension directory -#: ../src/main.cpp:466 -msgid "Print out the extension directory and exit" -msgstr "" - -#: ../src/main.cpp:471 -msgid "Remove unused definitions from the defs section(s) of the document" -msgstr "" - -#: ../src/main.cpp:476 -msgid "List the IDs of all the verbs in Inkscape" -msgstr "" - -#: ../src/main.cpp:481 -msgid "Verb to call when Inkscape opens." -msgstr "" - -#: ../src/main.cpp:482 -msgid "VERB-ID" -msgstr "" - -#: ../src/main.cpp:486 -msgid "Object ID to select when Inkscape opens." -msgstr "" - -#: ../src/main.cpp:487 -msgid "OBJECT-ID" -msgstr "" - -#: ../src/main.cpp:491 -msgid "Start Inkscape in interactive shell mode." -msgstr "" - -#: ../src/main.cpp:835 ../src/main.cpp:1192 -msgid "" -"[OPTIONS...] [FILE...]\n" -"\n" -"Available options:" -msgstr "" - -#. ## Add a menu for clear() -#: ../src/menus-skeleton.h:16 ../src/ui/dialog/debug.cpp:83 -msgid "_File" -msgstr "" - -#: ../src/menus-skeleton.h:17 -msgid "_New" -msgstr "" - -#. " \n" -#. " \n" -#: ../src/menus-skeleton.h:43 ../src/verbs.cpp:2575 ../src/verbs.cpp:2581 -msgid "_Edit" -msgstr "" - -#: ../src/menus-skeleton.h:53 ../src/verbs.cpp:2341 -msgid "Paste Si_ze" -msgstr "" - -#: ../src/menus-skeleton.h:65 -msgid "Clo_ne" -msgstr "" - -#: ../src/menus-skeleton.h:79 -msgid "Select Sa_me" -msgstr "" - -#: ../src/menus-skeleton.h:97 -msgid "_View" -msgstr "" - -#: ../src/menus-skeleton.h:98 -msgid "_Zoom" -msgstr "" - -#: ../src/menus-skeleton.h:114 -msgid "_Display mode" -msgstr "" - -#. Better location in menu needs to be found -#. " \n" -#. " \n" -#: ../src/menus-skeleton.h:123 -msgid "_Color display mode" -msgstr "" - -#. Better location in menu needs to be found -#. " \n" -#. " \n" -#: ../src/menus-skeleton.h:137 -msgid "Sh_ow/Hide" -msgstr "" - -#. " \n" -#. Not quite ready to be in the menus. -#. " \n" -#: ../src/menus-skeleton.h:158 -msgid "_Layer" -msgstr "" - -#: ../src/menus-skeleton.h:182 -msgid "_Object" -msgstr "" - -#: ../src/menus-skeleton.h:190 -msgid "Cli_p" -msgstr "" - -#: ../src/menus-skeleton.h:194 -msgid "Mas_k" -msgstr "" - -#: ../src/menus-skeleton.h:198 -msgid "Patter_n" -msgstr "" - -#: ../src/menus-skeleton.h:222 -msgid "_Path" -msgstr "" - -#: ../src/menus-skeleton.h:267 -msgid "Filter_s" -msgstr "" - -#: ../src/menus-skeleton.h:273 -msgid "Exte_nsions" -msgstr "" - -#: ../src/menus-skeleton.h:279 -msgid "_Help" -msgstr "" - -#: ../src/menus-skeleton.h:283 -msgid "Tutorials" -msgstr "" - -#. TRANSLATORS: Mind the space in front. This is part of a compound message -#: ../src/mesh-context.cpp:141 ../src/mesh-context.cpp:152 -#, c-format -msgid " out of %d mesh handle" -msgid_plural " out of %d mesh handles" -msgstr[0] "" -msgstr[1] "" - -#: ../src/mesh-context.cpp:159 -#, c-format -msgid "%d mesh handle selected out of %d" -msgid_plural "%d mesh handles selected out of %d" -msgstr[0] "" -msgstr[1] "" - -#. TRANSLATORS: The plural refers to number of selected objects -#: ../src/mesh-context.cpp:166 -#, c-format -msgid "No mesh handles selected out of %d on %d selected object" -msgid_plural "No mesh handles selected out of %d on %d selected objects" -msgstr[0] "" -msgstr[1] "" - -#: ../src/mesh-context.cpp:336 -msgid "Split mesh row/column" -msgstr "" - -#: ../src/mesh-context.cpp:422 -msgid "Toggled mesh path type." -msgstr "" - -#: ../src/mesh-context.cpp:426 -msgid "Approximated arc for mesh side." -msgstr "" - -#: ../src/mesh-context.cpp:430 -msgid "Toggled mesh tensors." -msgstr "" - -#: ../src/mesh-context.cpp:434 -msgid "Smoothed mesh corner color." -msgstr "" - -#: ../src/mesh-context.cpp:438 -msgid "Picked mesh corner color." -msgstr "" - -#: ../src/mesh-context.cpp:523 -msgid "Create default mesh" -msgstr "" - -#: ../src/mesh-context.cpp:743 -msgid "FIXMECtrl: snap mesh angle" -msgstr "" - -#: ../src/mesh-context.cpp:744 -msgid "FIXMEShift: draw mesh around the starting point" -msgstr "" - -#: ../src/object-edit.cpp:439 -msgid "" -"Adjust the horizontal rounding radius; with Ctrl to make the " -"vertical radius the same" -msgstr "" - -#: ../src/object-edit.cpp:444 -msgid "" -"Adjust the vertical rounding radius; with Ctrl to make the " -"horizontal radius the same" -msgstr "" - -#: ../src/object-edit.cpp:449 ../src/object-edit.cpp:454 -msgid "" -"Adjust the width and height of the rectangle; with Ctrl to " -"lock ratio or stretch in one dimension only" -msgstr "" - -#: ../src/object-edit.cpp:689 ../src/object-edit.cpp:693 -#: ../src/object-edit.cpp:697 ../src/object-edit.cpp:701 -msgid "" -"Resize box in X/Y direction; with Shift along the Z axis; with " -"Ctrl to constrain to the directions of edges or diagonals" -msgstr "" - -#: ../src/object-edit.cpp:705 ../src/object-edit.cpp:709 -#: ../src/object-edit.cpp:713 ../src/object-edit.cpp:717 -msgid "" -"Resize box along the Z axis; with Shift in X/Y direction; with " -"Ctrl to constrain to the directions of edges or diagonals" -msgstr "" - -#: ../src/object-edit.cpp:721 -msgid "Move the box in perspective" -msgstr "" - -#: ../src/object-edit.cpp:952 -msgid "Adjust ellipse width, with Ctrl to make circle" -msgstr "" - -#: ../src/object-edit.cpp:956 -msgid "Adjust ellipse height, with Ctrl to make circle" -msgstr "" - -#: ../src/object-edit.cpp:960 -msgid "" -"Position the start point of the arc or segment; with Ctrl to " -"snap angle; drag inside the ellipse for arc, outside for " -"segment" -msgstr "" - -#: ../src/object-edit.cpp:965 -msgid "" -"Position the end point of the arc or segment; with Ctrl to " -"snap angle; drag inside the ellipse for arc, outside for " -"segment" -msgstr "" - -#: ../src/object-edit.cpp:1105 -msgid "" -"Adjust the tip radius of the star or polygon; with Shift to " -"round; with Alt to randomize" -msgstr "" - -#: ../src/object-edit.cpp:1113 -msgid "" -"Adjust the base radius of the star; with Ctrl to keep star " -"rays radial (no skew); with Shift to round; with Alt to " -"randomize" -msgstr "" - -#: ../src/object-edit.cpp:1303 -msgid "" -"Roll/unroll the spiral from inside; with Ctrl to snap angle; " -"with Alt to converge/diverge" -msgstr "" - -#: ../src/object-edit.cpp:1307 -msgid "" -"Roll/unroll the spiral from outside; with Ctrl to snap angle; " -"with Shift to scale/rotate; with Alt to lock radius" -msgstr "" - -#: ../src/object-edit.cpp:1352 -msgid "Adjust the offset distance" -msgstr "" - -#: ../src/object-edit.cpp:1388 -msgid "Drag to resize the flowed text frame" -msgstr "" - -#: ../src/path-chemistry.cpp:53 -msgid "Select object(s) to combine." -msgstr "" - -#: ../src/path-chemistry.cpp:57 -msgid "Combining paths..." -msgstr "" - -#: ../src/path-chemistry.cpp:175 -msgid "Combine" -msgstr "" - -#: ../src/path-chemistry.cpp:182 -msgid "No path(s) to combine in the selection." -msgstr "" - -#: ../src/path-chemistry.cpp:194 -msgid "Select path(s) to break apart." -msgstr "" - -#: ../src/path-chemistry.cpp:198 -msgid "Breaking apart paths..." -msgstr "" - -#: ../src/path-chemistry.cpp:289 -msgid "Break apart" -msgstr "" - -#: ../src/path-chemistry.cpp:291 -msgid "No path(s) to break apart in the selection." -msgstr "" - -#: ../src/path-chemistry.cpp:303 -msgid "Select object(s) to convert to path." -msgstr "" - -#: ../src/path-chemistry.cpp:309 -msgid "Converting objects to paths..." -msgstr "" - -#: ../src/path-chemistry.cpp:331 -msgid "Object to path" -msgstr "" - -#: ../src/path-chemistry.cpp:333 -msgid "No objects to convert to path in the selection." -msgstr "" - -#: ../src/path-chemistry.cpp:610 -msgid "Select path(s) to reverse." -msgstr "" - -#: ../src/path-chemistry.cpp:619 -msgid "Reversing paths..." -msgstr "" - -#: ../src/path-chemistry.cpp:654 -msgid "Reverse path" -msgstr "" - -#: ../src/path-chemistry.cpp:656 -msgid "No paths to reverse in the selection." -msgstr "" - -#: ../src/pen-context.cpp:222 ../src/pencil-context.cpp:534 -msgid "Drawing cancelled" -msgstr "" - -#: ../src/pen-context.cpp:460 ../src/pencil-context.cpp:259 -msgid "Continuing selected path" -msgstr "" - -#: ../src/pen-context.cpp:470 ../src/pencil-context.cpp:267 -msgid "Creating new path" -msgstr "" - -#: ../src/pen-context.cpp:472 ../src/pencil-context.cpp:270 -msgid "Appending to selected path" -msgstr "" - -#: ../src/pen-context.cpp:632 -msgid "Click or click and drag to close and finish the path." -msgstr "" - -#: ../src/pen-context.cpp:642 -msgid "" -"Click or click and drag to continue the path from this point." -msgstr "" - -#: ../src/pen-context.cpp:1237 -#, c-format -msgid "" -"Curve segment: angle %3.2f°, distance %s; with Ctrl to " -"snap angle, Enter to finish the path" -msgstr "" - -#: ../src/pen-context.cpp:1238 -#, c-format -msgid "" -"Line segment: angle %3.2f°, distance %s; with Ctrl to " -"snap angle, Enter to finish the path" -msgstr "" - -#: ../src/pen-context.cpp:1255 -#, c-format -msgid "" -"Curve handle: angle %3.2f°, length %s; with Ctrl to snap " -"angle" -msgstr "" - -#: ../src/pen-context.cpp:1277 -#, c-format -msgid "" -"Curve handle, symmetric: angle %3.2f°, length %s; with Ctrl to snap angle, with Shift to move this handle only" -msgstr "" - -#: ../src/pen-context.cpp:1278 -#, c-format -msgid "" -"Curve handle: angle %3.2f°, length %s; with Ctrl to snap " -"angle, with Shift to move this handle only" -msgstr "" - -#: ../src/pen-context.cpp:1324 -msgid "Drawing finished" -msgstr "" - -#: ../src/pencil-context.cpp:375 -msgid "Release here to close and finish the path." -msgstr "" - -#: ../src/pencil-context.cpp:381 -msgid "Drawing a freehand path" -msgstr "" - -#: ../src/pencil-context.cpp:386 -msgid "Drag to continue the path from this point." -msgstr "" - -#. Write curves to object -#: ../src/pencil-context.cpp:478 -msgid "Finishing freehand" -msgstr "" - -#: ../src/pencil-context.cpp:584 -msgid "" -"Sketch mode: holding Alt interpolates between sketched paths. " -"Release Alt to finalize." -msgstr "" - -#: ../src/pencil-context.cpp:612 -msgid "Finishing freehand sketch" -msgstr "" - -#: ../src/persp3d.cpp:318 -msgid "Toggle vanishing point" -msgstr "" - -#: ../src/persp3d.cpp:329 -msgid "Toggle multiple vanishing points" -msgstr "" - -#: ../src/preferences-skeleton.h:101 -msgid "Dip pen" -msgstr "" - -#: ../src/preferences-skeleton.h:102 -msgid "Marker" -msgstr "" - -#: ../src/preferences-skeleton.h:103 -msgid "Brush" -msgstr "" - -#: ../src/preferences-skeleton.h:104 -msgid "Wiggly" -msgstr "" - -#: ../src/preferences-skeleton.h:105 -msgid "Splotchy" -msgstr "" - -#: ../src/preferences-skeleton.h:106 -msgid "Tracing" -msgstr "" - -#: ../src/preferences.cpp:132 -msgid "" -"Inkscape will run with default settings, and new settings will not be saved. " -msgstr "" - -#. the creation failed -#. _reportError(Glib::ustring::compose(_("Cannot create profile directory %1."), -#. Glib::filename_to_utf8(_prefs_dir)), not_saved); -#: ../src/preferences.cpp:147 -#, c-format -msgid "Cannot create profile directory %s." -msgstr "" - -#. The profile dir is not actually a directory -#. _reportError(Glib::ustring::compose(_("%1 is not a valid directory."), -#. Glib::filename_to_utf8(_prefs_dir)), not_saved); -#: ../src/preferences.cpp:165 -#, c-format -msgid "%s is not a valid directory." -msgstr "" - -#. The write failed. -#. _reportError(Glib::ustring::compose(_("Failed to create the preferences file %1."), -#. Glib::filename_to_utf8(_prefs_filename)), not_saved); -#: ../src/preferences.cpp:176 -#, c-format -msgid "Failed to create the preferences file %s." -msgstr "" - -#: ../src/preferences.cpp:212 -#, c-format -msgid "The preferences file %s is not a regular file." -msgstr "" - -#: ../src/preferences.cpp:222 -#, c-format -msgid "The preferences file %s could not be read." -msgstr "" - -#: ../src/preferences.cpp:233 -#, c-format -msgid "The preferences file %s is not a valid XML document." -msgstr "" - -#: ../src/preferences.cpp:242 -#, c-format -msgid "The file %s is not a valid Inkscape preferences file." -msgstr "" - -#: ../src/rdf.cpp:175 -msgid "CC Attribution" -msgstr "" - -#: ../src/rdf.cpp:180 -msgid "CC Attribution-ShareAlike" -msgstr "" - -#: ../src/rdf.cpp:185 -msgid "CC Attribution-NoDerivs" -msgstr "" - -#: ../src/rdf.cpp:190 -msgid "CC Attribution-NonCommercial" -msgstr "" - -#: ../src/rdf.cpp:195 -msgid "CC Attribution-NonCommercial-ShareAlike" -msgstr "" - -#: ../src/rdf.cpp:200 -msgid "CC Attribution-NonCommercial-NoDerivs" -msgstr "" - -#: ../src/rdf.cpp:205 -msgid "CC0 Public Domain Dedication" -msgstr "" - -#: ../src/rdf.cpp:210 -msgid "FreeArt" -msgstr "" - -#: ../src/rdf.cpp:215 -msgid "Open Font License" -msgstr "" - -#. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/linking.html#AElementXLinkTitleAttribute -#: ../src/rdf.cpp:232 ../src/ui/dialog/object-attributes.cpp:57 -msgid "Title:" -msgstr "" - -#: ../src/rdf.cpp:233 -msgid "Name by which this document is formally known" -msgstr "" - -#: ../src/rdf.cpp:235 -msgid "Date:" -msgstr "" - -#: ../src/rdf.cpp:236 -msgid "Date associated with the creation of this document (YYYY-MM-DD)" -msgstr "" - -#: ../src/rdf.cpp:238 ../share/extensions/webslicer_create_rect.inx.h:3 -msgid "Format:" -msgstr "" - -#: ../src/rdf.cpp:239 -msgid "The physical or digital manifestation of this document (MIME type)" -msgstr "" - -#: ../src/rdf.cpp:242 -msgid "Type of document (DCMI Type)" -msgstr "" - -#: ../src/rdf.cpp:245 -msgid "Creator:" -msgstr "" - -#: ../src/rdf.cpp:246 -msgid "" -"Name of entity primarily responsible for making the content of this document" -msgstr "" - -#: ../src/rdf.cpp:248 -msgid "Rights:" -msgstr "" - -#: ../src/rdf.cpp:249 -msgid "" -"Name of entity with rights to the Intellectual Property of this document" -msgstr "" - -#: ../src/rdf.cpp:251 -msgid "Publisher:" -msgstr "" - -#: ../src/rdf.cpp:252 -msgid "Name of entity responsible for making this document available" -msgstr "" - -#: ../src/rdf.cpp:255 -msgid "Identifier:" -msgstr "" - -#: ../src/rdf.cpp:256 -msgid "Unique URI to reference this document" -msgstr "" - -#: ../src/rdf.cpp:259 -msgid "Unique URI to reference the source of this document" -msgstr "" - -#: ../src/rdf.cpp:261 -msgid "Relation:" -msgstr "" - -#: ../src/rdf.cpp:262 -msgid "Unique URI to a related document" -msgstr "" - -#: ../src/rdf.cpp:264 ../src/ui/dialog/inkscape-preferences.cpp:1837 -msgid "Language:" -msgstr "" - -#: ../src/rdf.cpp:265 -msgid "" -"Two-letter language tag with optional subtags for the language of this " -"document (e.g. 'en-GB')" -msgstr "" - -#: ../src/rdf.cpp:267 -msgid "Keywords:" -msgstr "" - -#: ../src/rdf.cpp:268 -msgid "" -"The topic of this document as comma-separated key words, phrases, or " -"classifications" -msgstr "" - -#. TRANSLATORS: "Coverage": the spatial or temporal characteristics of the content. -#. For info, see Appendix D of http://www.w3.org/TR/1998/WD-rdf-schema-19980409/ -#: ../src/rdf.cpp:272 -msgid "Coverage:" -msgstr "" - -#: ../src/rdf.cpp:273 -msgid "Extent or scope of this document" -msgstr "" - -#: ../src/rdf.cpp:276 -msgid "Description:" -msgstr "" - -#: ../src/rdf.cpp:277 -msgid "A short account of the content of this document" -msgstr "" - -#. FIXME: need to handle 1 agent per line of input -#: ../src/rdf.cpp:281 -msgid "Contributors:" -msgstr "" - -#: ../src/rdf.cpp:282 -msgid "" -"Names of entities responsible for making contributions to the content of " -"this document" -msgstr "" - -#. TRANSLATORS: URL to a page that defines the license for the document -#: ../src/rdf.cpp:286 -msgid "URI:" -msgstr "" - -#. TRANSLATORS: this is where you put a URL to a page that defines the license -#: ../src/rdf.cpp:288 -msgid "URI to this document's license's namespace definition" -msgstr "" - -#. TRANSLATORS: fragment of XML representing the license of the document -#: ../src/rdf.cpp:292 -msgid "Fragment:" -msgstr "" - -#: ../src/rdf.cpp:293 -msgid "XML fragment for the RDF 'License' section" -msgstr "" - -#: ../src/rect-context.cpp:352 -msgid "" -"Ctrl: make square or integer-ratio rect, lock a rounded corner " -"circular" -msgstr "" - -#: ../src/rect-context.cpp:505 -#, c-format -msgid "" -"Rectangle: %s × %s (constrained to ratio %d:%d); with Shift to draw around the starting point" -msgstr "" - -#: ../src/rect-context.cpp:508 -#, c-format -msgid "" -"Rectangle: %s × %s (constrained to golden ratio 1.618 : 1); with " -"Shift to draw around the starting point" -msgstr "" - -#: ../src/rect-context.cpp:510 -#, c-format -msgid "" -"Rectangle: %s × %s (constrained to golden ratio 1 : 1.618); with " -"Shift to draw around the starting point" -msgstr "" - -#: ../src/rect-context.cpp:514 -#, c-format -msgid "" -"Rectangle: %s × %s; with Ctrl to make square or integer-" -"ratio rectangle; with Shift to draw around the starting point" -msgstr "" - -#: ../src/rect-context.cpp:539 -msgid "Create rectangle" -msgstr "" - -#: ../src/resource-manager.cpp:332 -msgid "Fixup broken links" -msgstr "" - -#: ../src/select-context.cpp:181 -msgid "Click selection to toggle scale/rotation handles" -msgstr "" - -#: ../src/select-context.cpp:182 -msgid "" -"No objects selected. Click, Shift+click, Alt+scroll mouse on top of objects, " -"or drag around objects to select." -msgstr "" - -#: ../src/select-context.cpp:241 -msgid "Move canceled." -msgstr "" - -#: ../src/select-context.cpp:249 -msgid "Selection canceled." -msgstr "" - -#: ../src/select-context.cpp:626 -msgid "" -"Draw over objects to select them; release Alt to switch to " -"rubberband selection" -msgstr "" - -#: ../src/select-context.cpp:628 -msgid "" -"Drag around objects to select them; press Alt to switch to " -"touch selection" -msgstr "" - -#: ../src/select-context.cpp:900 -msgid "Ctrl: click to select in groups; drag to move hor/vert" -msgstr "" - -#: ../src/select-context.cpp:901 -msgid "Shift: click to toggle select; drag for rubberband selection" -msgstr "" - -#: ../src/select-context.cpp:902 -msgid "" -"Alt: click to select under; scroll mouse-wheel to cycle-select; drag " -"to move selected or select by touch" -msgstr "" - -#: ../src/select-context.cpp:1073 -msgid "Selected object is not a group. Cannot enter." -msgstr "" - -#: ../src/selection-chemistry.cpp:377 -msgid "Delete text" -msgstr "" - -#: ../src/selection-chemistry.cpp:385 -msgid "Nothing was deleted." -msgstr "" - -#: ../src/selection-chemistry.cpp:404 ../src/text-context.cpp:1030 -#: ../src/ui/dialog/calligraphic-profile-rename.cpp:75 -#: ../src/ui/dialog/swatches.cpp:278 ../src/widgets/erasor-toolbar.cpp:114 -#: ../src/widgets/gradient-toolbar.cpp:1193 -#: ../src/widgets/gradient-toolbar.cpp:1207 -#: ../src/widgets/gradient-toolbar.cpp:1221 -#: ../src/widgets/node-toolbar.cpp:410 -msgid "Delete" -msgstr "" - -#: ../src/selection-chemistry.cpp:432 -msgid "Select object(s) to duplicate." -msgstr "" - -#: ../src/selection-chemistry.cpp:541 -msgid "Delete all" -msgstr "" - -#: ../src/selection-chemistry.cpp:737 -msgid "Select some objects to group." -msgstr "" - -#: ../src/selection-chemistry.cpp:752 ../src/selection-describer.cpp:54 -msgid "Group" -msgstr "" - -#: ../src/selection-chemistry.cpp:766 -msgid "Select a group to ungroup." -msgstr "" - -#: ../src/selection-chemistry.cpp:809 -msgid "No groups to ungroup in the selection." -msgstr "" - -#: ../src/selection-chemistry.cpp:815 ../src/sp-item-group.cpp:479 -msgid "Ungroup" -msgstr "" - -#: ../src/selection-chemistry.cpp:901 -msgid "Select object(s) to raise." -msgstr "" - -#: ../src/selection-chemistry.cpp:907 ../src/selection-chemistry.cpp:967 -#: ../src/selection-chemistry.cpp:1000 ../src/selection-chemistry.cpp:1064 -msgid "" -"You cannot raise/lower objects from different groups or layers." -msgstr "" - -#. TRANSLATORS: "Raise" means "to raise an object" in the undo history -#: ../src/selection-chemistry.cpp:947 -msgctxt "Undo action" -msgid "Raise" -msgstr "" - -#: ../src/selection-chemistry.cpp:959 -msgid "Select object(s) to raise to top." -msgstr "" - -#: ../src/selection-chemistry.cpp:982 -msgid "Raise to top" -msgstr "" - -#: ../src/selection-chemistry.cpp:994 -msgid "Select object(s) to lower." -msgstr "" - -#: ../src/selection-chemistry.cpp:1044 -msgid "Lower" -msgstr "" - -#: ../src/selection-chemistry.cpp:1056 -msgid "Select object(s) to lower to bottom." -msgstr "" - -#: ../src/selection-chemistry.cpp:1091 -msgid "Lower to bottom" -msgstr "" - -#: ../src/selection-chemistry.cpp:1098 -msgid "Nothing to undo." -msgstr "" - -#: ../src/selection-chemistry.cpp:1106 -msgid "Nothing to redo." -msgstr "" - -#: ../src/selection-chemistry.cpp:1167 -msgid "Paste" -msgstr "" - -#: ../src/selection-chemistry.cpp:1175 -msgid "Paste style" -msgstr "" - -#: ../src/selection-chemistry.cpp:1185 -msgid "Paste live path effect" -msgstr "" - -#: ../src/selection-chemistry.cpp:1206 -msgid "Select object(s) to remove live path effects from." -msgstr "" - -#: ../src/selection-chemistry.cpp:1218 -msgid "Remove live path effect" -msgstr "" - -#: ../src/selection-chemistry.cpp:1229 -msgid "Select object(s) to remove filters from." -msgstr "" - -#: ../src/selection-chemistry.cpp:1239 -#: ../src/ui/dialog/filter-effects-dialog.cpp:1448 -msgid "Remove filter" -msgstr "" - -#: ../src/selection-chemistry.cpp:1248 -msgid "Paste size" -msgstr "" - -#: ../src/selection-chemistry.cpp:1257 -msgid "Paste size separately" -msgstr "" - -#: ../src/selection-chemistry.cpp:1267 -msgid "Select object(s) to move to the layer above." -msgstr "" - -#: ../src/selection-chemistry.cpp:1293 -msgid "Raise to next layer" -msgstr "" - -#: ../src/selection-chemistry.cpp:1300 -msgid "No more layers above." -msgstr "" - -#: ../src/selection-chemistry.cpp:1312 -msgid "Select object(s) to move to the layer below." -msgstr "" - -#: ../src/selection-chemistry.cpp:1338 -msgid "Lower to previous layer" -msgstr "" - -#: ../src/selection-chemistry.cpp:1345 -msgid "No more layers below." -msgstr "" - -#: ../src/selection-chemistry.cpp:1357 -msgid "Select object(s) to move." -msgstr "" - -#: ../src/selection-chemistry.cpp:1374 ../src/verbs.cpp:2518 -msgid "Move selection to layer" -msgstr "" - -#: ../src/selection-chemistry.cpp:1598 -msgid "Remove transform" -msgstr "" - -#: ../src/selection-chemistry.cpp:1701 -msgid "Rotate 90° CCW" -msgstr "" - -#: ../src/selection-chemistry.cpp:1701 -msgid "Rotate 90° CW" -msgstr "" - -#: ../src/selection-chemistry.cpp:1722 ../src/seltrans.cpp:485 -#: ../src/ui/dialog/transformation.cpp:892 -msgid "Rotate" -msgstr "" - -#: ../src/selection-chemistry.cpp:2101 -msgid "Rotate by pixels" -msgstr "" - -#: ../src/selection-chemistry.cpp:2131 ../src/seltrans.cpp:482 -#: ../src/ui/dialog/transformation.cpp:867 -#: ../share/extensions/interp_att_g.inx.h:12 -msgid "Scale" -msgstr "" - -#: ../src/selection-chemistry.cpp:2156 -msgid "Scale by whole factor" -msgstr "" - -#: ../src/selection-chemistry.cpp:2171 -msgid "Move vertically" -msgstr "" - -#: ../src/selection-chemistry.cpp:2174 -msgid "Move horizontally" -msgstr "" - -#: ../src/selection-chemistry.cpp:2177 ../src/selection-chemistry.cpp:2203 -#: ../src/seltrans.cpp:479 ../src/ui/dialog/transformation.cpp:806 -msgid "Move" -msgstr "" - -#: ../src/selection-chemistry.cpp:2197 -msgid "Move vertically by pixels" -msgstr "" - -#: ../src/selection-chemistry.cpp:2200 -msgid "Move horizontally by pixels" -msgstr "" - -#: ../src/selection-chemistry.cpp:2332 -msgid "The selection has no applied path effect." -msgstr "" - -#: ../src/selection-chemistry.cpp:2535 -msgctxt "Action" -msgid "Clone" -msgstr "" - -#: ../src/selection-chemistry.cpp:2551 -msgid "Select clones to relink." -msgstr "" - -#: ../src/selection-chemistry.cpp:2558 -msgid "Copy an object to clipboard to relink clones to." -msgstr "" - -#: ../src/selection-chemistry.cpp:2582 -msgid "No clones to relink in the selection." -msgstr "" - -#: ../src/selection-chemistry.cpp:2585 -msgid "Relink clone" -msgstr "" - -#: ../src/selection-chemistry.cpp:2599 -msgid "Select clones to unlink." -msgstr "" - -#: ../src/selection-chemistry.cpp:2653 -msgid "No clones to unlink in the selection." -msgstr "" - -#: ../src/selection-chemistry.cpp:2657 -msgid "Unlink clone" -msgstr "" - -#: ../src/selection-chemistry.cpp:2670 -msgid "" -"Select a clone to go to its original. Select a linked offset " -"to go to its source. Select a text on path to go to the path. Select " -"a flowed text to go to its frame." -msgstr "" - -#: ../src/selection-chemistry.cpp:2703 -msgid "" -"Cannot find the object to select (orphaned clone, offset, textpath, " -"flowed text?)" -msgstr "" - -#: ../src/selection-chemistry.cpp:2709 -msgid "" -"The object you're trying to select is not visible (it is in <" -"defs>)" -msgstr "" - -#: ../src/selection-chemistry.cpp:2754 -msgid "Select one path to clone." -msgstr "" - -#: ../src/selection-chemistry.cpp:2758 -msgid "Select one path to clone." -msgstr "" - -#: ../src/selection-chemistry.cpp:2813 -msgid "Select object(s) to convert to marker." -msgstr "" - -#: ../src/selection-chemistry.cpp:2881 -msgid "Objects to marker" -msgstr "" - -#: ../src/selection-chemistry.cpp:2909 -msgid "Select object(s) to convert to guides." -msgstr "" - -#: ../src/selection-chemistry.cpp:2921 -msgid "Objects to guides" -msgstr "" - -#: ../src/selection-chemistry.cpp:2940 -msgid "Select groups to convert to symbols." -msgstr "" - -#: ../src/selection-chemistry.cpp:2960 -msgid "No groups converted to symbols." -msgstr "" - -#. Group just disappears, nothing to select. -#: ../src/selection-chemistry.cpp:2967 -msgid "Group to symbol" -msgstr "" - -#: ../src/selection-chemistry.cpp:3031 -msgid "Select a symbol to extract objects from." -msgstr "" - -#: ../src/selection-chemistry.cpp:3040 -msgid "Select only one symbol to convert to group." -msgstr "" - -#: ../src/selection-chemistry.cpp:3081 -msgid "Group from symbol" -msgstr "" - -#: ../src/selection-chemistry.cpp:3098 -msgid "Select object(s) to convert to pattern." -msgstr "" - -#: ../src/selection-chemistry.cpp:3186 -msgid "Objects to pattern" -msgstr "" - -#: ../src/selection-chemistry.cpp:3202 -msgid "Select an object with pattern fill to extract objects from." -msgstr "" - -#: ../src/selection-chemistry.cpp:3255 -msgid "No pattern fills in the selection." -msgstr "" - -#: ../src/selection-chemistry.cpp:3258 -msgid "Pattern to objects" -msgstr "" - -#: ../src/selection-chemistry.cpp:3349 -msgid "Select object(s) to make a bitmap copy." -msgstr "" - -#: ../src/selection-chemistry.cpp:3353 -msgid "Rendering bitmap..." -msgstr "" - -#: ../src/selection-chemistry.cpp:3530 -msgid "Create bitmap" -msgstr "" - -#: ../src/selection-chemistry.cpp:3562 -msgid "Select object(s) to create clippath or mask from." -msgstr "" - -#: ../src/selection-chemistry.cpp:3565 -msgid "Select mask object and object(s) to apply clippath or mask to." -msgstr "" - -#: ../src/selection-chemistry.cpp:3746 -msgid "Set clipping path" -msgstr "" - -#: ../src/selection-chemistry.cpp:3748 -msgid "Set mask" -msgstr "" - -#: ../src/selection-chemistry.cpp:3763 -msgid "Select object(s) to remove clippath or mask from." -msgstr "" - -#: ../src/selection-chemistry.cpp:3874 -msgid "Release clipping path" -msgstr "" - -#: ../src/selection-chemistry.cpp:3876 -msgid "Release mask" -msgstr "" - -#: ../src/selection-chemistry.cpp:3895 -msgid "Select object(s) to fit canvas to." -msgstr "" - -#. Fit Page -#: ../src/selection-chemistry.cpp:3915 ../src/verbs.cpp:2844 -msgid "Fit Page to Selection" -msgstr "" - -#: ../src/selection-chemistry.cpp:3944 ../src/verbs.cpp:2846 -msgid "Fit Page to Drawing" -msgstr "" - -#: ../src/selection-chemistry.cpp:3965 ../src/verbs.cpp:2848 -msgid "Fit Page to Selection or Drawing" -msgstr "" - -#. TRANSLATORS: "Link" means internet link (anchor) -#: ../src/selection-describer.cpp:46 -msgctxt "Web" -msgid "Link" -msgstr "" - -#: ../src/selection-describer.cpp:48 -msgid "Circle" -msgstr "" - -#. Ellipse -#: ../src/selection-describer.cpp:50 ../src/selection-describer.cpp:77 -#: ../src/ui/dialog/inkscape-preferences.cpp:403 -#: ../src/widgets/pencil-toolbar.cpp:192 -msgid "Ellipse" -msgstr "" - -#: ../src/selection-describer.cpp:52 -msgid "Flowed text" -msgstr "" - -#: ../src/selection-describer.cpp:58 -msgid "Line" -msgstr "" - -#: ../src/selection-describer.cpp:60 -msgid "Path" -msgstr "" - -#: ../src/selection-describer.cpp:62 ../src/widgets/star-toolbar.cpp:474 -msgid "Polygon" -msgstr "" - -#: ../src/selection-describer.cpp:64 -msgid "Polyline" -msgstr "" - -#. Rectangle -#: ../src/selection-describer.cpp:66 -#: ../src/ui/dialog/inkscape-preferences.cpp:393 -msgid "Rectangle" -msgstr "" - -#. 3D box -#: ../src/selection-describer.cpp:68 -#: ../src/ui/dialog/inkscape-preferences.cpp:398 -msgid "3D Box" -msgstr "" - -#: ../src/selection-describer.cpp:70 -msgctxt "Object" -msgid "Text" -msgstr "" - -#: ../src/selection-describer.cpp:73 -msgctxt "Object" -msgid "Symbol" -msgstr "" - -#. TRANSLATORS: "Clone" is a noun, type of object -#: ../src/selection-describer.cpp:75 -msgctxt "Object" -msgid "Clone" -msgstr "" - -#: ../src/selection-describer.cpp:79 -#: ../share/extensions/gcodetools_lathe.inx.h:9 -msgid "Offset path" -msgstr "" - -#. Spiral -#: ../src/selection-describer.cpp:81 -#: ../src/ui/dialog/inkscape-preferences.cpp:411 -#: ../share/extensions/gcodetools_area.inx.h:11 -msgid "Spiral" -msgstr "" - -#. Star -#: ../src/selection-describer.cpp:83 -#: ../src/ui/dialog/inkscape-preferences.cpp:407 -#: ../src/widgets/star-toolbar.cpp:481 -msgid "Star" -msgstr "" - -#: ../src/selection-describer.cpp:153 -msgid "root" -msgstr "" - -#: ../src/selection-describer.cpp:155 ../src/widgets/ege-paint-def.cpp:67 -#: ../src/widgets/ege-paint-def.cpp:91 -msgid "none" -msgstr "" - -#: ../src/selection-describer.cpp:167 -#, c-format -msgid "layer %s" -msgstr "" - -#: ../src/selection-describer.cpp:169 -#, c-format -msgid "layer %s" -msgstr "" - -#: ../src/selection-describer.cpp:178 -#, c-format -msgid "%s" -msgstr "" - -#: ../src/selection-describer.cpp:187 -#, c-format -msgid " in %s" -msgstr "" - -#: ../src/selection-describer.cpp:189 -#, c-format -msgid " hidden in definitions" -msgstr "" - -#: ../src/selection-describer.cpp:191 -#, c-format -msgid " in group %s (%s)" -msgstr "" - -#: ../src/selection-describer.cpp:193 -#, c-format -msgid " in %i parents (%s)" -msgid_plural " in %i parents (%s)" -msgstr[0] "" -msgstr[1] "" - -#: ../src/selection-describer.cpp:196 -#, c-format -msgid " in %i layers" -msgid_plural " in %i layers" -msgstr[0] "" -msgstr[1] "" - -#: ../src/selection-describer.cpp:206 -msgid "Convert symbol to group to edit" -msgstr "" - -#: ../src/selection-describer.cpp:210 -msgid "Remove from symbols tray to edit symbol" -msgstr "" - -#: ../src/selection-describer.cpp:214 -msgid "Use Shift+D to look up original" -msgstr "" - -#: ../src/selection-describer.cpp:218 -msgid "Use Shift+D to look up path" -msgstr "" - -#: ../src/selection-describer.cpp:222 -msgid "Use Shift+D to look up frame" -msgstr "" - -#. this is only used with 2 or more objects -#: ../src/selection-describer.cpp:237 ../src/spray-context.cpp:203 -#: ../src/tweak-context.cpp:189 -#, c-format -msgid "%i object selected" -msgid_plural "%i objects selected" -msgstr[0] "" -msgstr[1] "" - -#. this is only used with 2 or more objects -#: ../src/selection-describer.cpp:242 -#, c-format -msgid "%i object of type %s" -msgid_plural "%i objects of type %s" -msgstr[0] "" -msgstr[1] "" - -#. this is only used with 2 or more objects -#: ../src/selection-describer.cpp:247 -#, c-format -msgid "%i object of types %s, %s" -msgid_plural "%i objects of types %s, %s" -msgstr[0] "" -msgstr[1] "" - -#. this is only used with 2 or more objects -#: ../src/selection-describer.cpp:252 -#, c-format -msgid "%i object of types %s, %s, %s" -msgid_plural "%i objects of types %s, %s, %s" -msgstr[0] "" -msgstr[1] "" - -#. this is only used with 2 or more objects -#: ../src/selection-describer.cpp:257 -#, c-format -msgid "%i object of %i types" -msgid_plural "%i objects of %i types" -msgstr[0] "" -msgstr[1] "" - -#: ../src/selection-describer.cpp:267 -#, c-format -msgid "; %d filtered object " -msgid_plural "; %d filtered objects " -msgstr[0] "" -msgstr[1] "" - -#: ../src/seltrans.cpp:488 ../src/ui/dialog/transformation.cpp:950 -msgid "Skew" -msgstr "" - -#: ../src/seltrans.cpp:500 -msgid "Set center" -msgstr "" - -#: ../src/seltrans.cpp:575 -msgid "Stamp" -msgstr "" - -#: ../src/seltrans.cpp:604 -msgid "" -"Squeeze or stretch selection; with Ctrl to scale uniformly; " -"with Shift to scale around rotation center" -msgstr "" - -#: ../src/seltrans.cpp:605 -msgid "" -"Scale selection; with Ctrl to scale uniformly; with Shift to scale around rotation center" -msgstr "" - -#: ../src/seltrans.cpp:609 -msgid "" -"Skew selection; with Ctrl to snap angle; with Shift to " -"skew around the opposite side" -msgstr "" - -#: ../src/seltrans.cpp:610 -msgid "" -"Rotate selection; with Ctrl to snap angle; with Shift " -"to rotate around the opposite corner" -msgstr "" - -#: ../src/seltrans.cpp:623 -msgid "" -"Center of rotation and skewing: drag to reposition; scaling with " -"Shift also uses this center" -msgstr "" - -#: ../src/seltrans.cpp:773 -msgid "Reset center" -msgstr "" - -#: ../src/seltrans.cpp:1017 ../src/seltrans.cpp:1114 -#, c-format -msgid "Scale: %0.2f%% x %0.2f%%; with Ctrl to lock ratio" -msgstr "" - -#. TRANSLATORS: don't modify the first ";" -#. (it will NOT be displayed as ";" - only the second one will be) -#: ../src/seltrans.cpp:1228 -#, c-format -msgid "Skew: %0.2f°; with Ctrl to snap angle" -msgstr "" - -#. TRANSLATORS: don't modify the first ";" -#. (it will NOT be displayed as ";" - only the second one will be) -#: ../src/seltrans.cpp:1303 -#, c-format -msgid "Rotate: %0.2f°; with Ctrl to snap angle" -msgstr "" - -#: ../src/seltrans.cpp:1338 -#, c-format -msgid "Move center to %s, %s" -msgstr "" - -#: ../src/seltrans.cpp:1514 -#, c-format -msgid "" -"Move by %s, %s; with Ctrl to restrict to horizontal/vertical; " -"with Shift to disable snapping" -msgstr "" - -#: ../src/shortcuts.cpp:225 -#, c-format -msgid "Keyboard directory (%s) is unavailable." -msgstr "" - -#: ../src/shortcuts.cpp:369 -msgid "Select a file to import" -msgstr "" - -#: ../src/sp-anchor.cpp:151 -#, c-format -msgid "Link to %s" -msgstr "" - -#: ../src/sp-anchor.cpp:155 -msgid "Link without URI" -msgstr "" - -#: ../src/sp-ellipse.cpp:452 ../src/sp-ellipse.cpp:775 -msgid "Ellipse" -msgstr "" - -#: ../src/sp-ellipse.cpp:566 -msgid "Circle" -msgstr "" - -#: ../src/sp-ellipse.cpp:770 -msgid "Segment" -msgstr "" - -#: ../src/sp-ellipse.cpp:772 -msgid "Arc" -msgstr "" - -#. TRANSLATORS: "Flow region" is an area where text is allowed to flow -#: ../src/sp-flowregion.cpp:232 -#, c-format -msgid "Flow region" -msgstr "" - -#. TRANSLATORS: A region "cut out of" a flow region; text is not allowed to flow inside the -#. * flow excluded region. flowRegionExclude in SVG 1.2: see -#. * http://www.w3.org/TR/2004/WD-SVG12-20041027/flow.html#flowRegion-elem and -#. * http://www.w3.org/TR/2004/WD-SVG12-20041027/flow.html#flowRegionExclude-elem. -#: ../src/sp-flowregion.cpp:420 -#, c-format -msgid "Flow excluded region" -msgstr "" - -#: ../src/sp-guide.cpp:290 -msgid "Create Guides Around the Page" -msgstr "" - -#: ../src/sp-guide.cpp:302 ../src/verbs.cpp:2415 -msgid "Delete All Guides" -msgstr "" - -#. Guide has probably been deleted and no longer has an attached namedview. -#: ../src/sp-guide.cpp:462 -#, c-format -msgid "Deleted" -msgstr "" - -#: ../src/sp-guide.cpp:471 -msgid "" -"Shift+drag to rotate, Ctrl+drag to move origin, Del to " -"delete" -msgstr "" - -#: ../src/sp-guide.cpp:475 -#, c-format -msgid "vertical, at %s" -msgstr "" - -#: ../src/sp-guide.cpp:478 -#, c-format -msgid "horizontal, at %s" -msgstr "" - -#: ../src/sp-guide.cpp:483 -#, c-format -msgid "at %d degrees, through (%s,%s)" -msgstr "" - -#: ../src/sp-image.cpp:1068 -msgid "embedded" -msgstr "" - -#: ../src/sp-image.cpp:1076 -#, c-format -msgid "Image with bad reference: %s" -msgstr "" - -#: ../src/sp-image.cpp:1077 -#, c-format -msgid "Image %d × %d: %s" -msgstr "" - -#: ../src/sp-item-group.cpp:721 -#, c-format -msgid "Group of %d object" -msgid_plural "Group of %d objects" -msgstr[0] "" -msgstr[1] "" - -#: ../src/sp-item.cpp:977 ../src/verbs.cpp:212 -msgid "Object" -msgstr "" - -#: ../src/sp-item.cpp:990 -#, c-format -msgid "%s; clipped" -msgstr "" - -#: ../src/sp-item.cpp:995 -#, c-format -msgid "%s; masked" -msgstr "" - -#: ../src/sp-item.cpp:1003 -#, c-format -msgid "%s; filtered (%s)" -msgstr "" - -#: ../src/sp-item.cpp:1005 -#, c-format -msgid "%s; filtered" -msgstr "" - -#: ../src/sp-line.cpp:166 -msgid "Line" -msgstr "" - -#: ../src/sp-lpe-item.cpp:316 -msgid "An exception occurred during execution of the Path Effect." -msgstr "" - -#. TRANSLATORS COMMENT: %s is either "outset" or "inset" depending on sign -#: ../src/sp-offset.cpp:393 -#, c-format -msgid "Linked offset, %s by %f pt" -msgstr "" - -#: ../src/sp-offset.cpp:394 ../src/sp-offset.cpp:398 -msgid "outset" -msgstr "" - -#: ../src/sp-offset.cpp:394 ../src/sp-offset.cpp:398 -msgid "inset" -msgstr "" - -#. TRANSLATORS COMMENT: %s is either "outset" or "inset" depending on sign -#: ../src/sp-offset.cpp:397 -#, c-format -msgid "Dynamic offset, %s by %f pt" -msgstr "" - -#: ../src/sp-path.cpp:124 -#, c-format -msgid "Path (%i node, path effect: %s)" -msgid_plural "Path (%i nodes, path effect: %s)" -msgstr[0] "" -msgstr[1] "" - -#: ../src/sp-path.cpp:127 -#, c-format -msgid "Path (%i node)" -msgid_plural "Path (%i nodes)" -msgstr[0] "" -msgstr[1] "" - -#: ../src/sp-polygon.cpp:197 -msgid "Polygon" -msgstr "" - -#: ../src/sp-polyline.cpp:140 -msgid "Polyline" -msgstr "" - -#: ../src/sp-rect.cpp:195 -msgid "Rectangle" -msgstr "" - -#. TRANSLATORS: since turn count isn't an integer, please adjust the -#. string as needed to deal with an localized plural forms. -#: ../src/sp-spiral.cpp:279 -#, c-format -msgid "Spiral with %3f turns" -msgstr "" - -#: ../src/sp-star.cpp:275 -#, c-format -msgid "Star with %d vertex" -msgid_plural "Star with %d vertices" -msgstr[0] "" -msgstr[1] "" - -#: ../src/sp-star.cpp:279 -#, c-format -msgid "Polygon with %d vertex" -msgid_plural "Polygon with %d vertices" -msgstr[0] "" -msgstr[1] "" - -#. TRANSLATORS: For description of font with no name. -#: ../src/sp-text.cpp:392 -msgid "<no name found>" -msgstr "" - -#: ../src/sp-text.cpp:404 -#, c-format -msgid "Text on path%s (%s, %s)" -msgstr "" - -#: ../src/sp-text.cpp:405 -#, c-format -msgid "Text%s (%s, %s)" -msgstr "" - -#: ../src/sp-tref.cpp:341 -#, c-format -msgid "Cloned character data%s%s" -msgstr "" - -#: ../src/sp-tref.cpp:342 -msgid " from " -msgstr "" - -#: ../src/sp-tref.cpp:348 -msgid "Orphaned cloned character data" -msgstr "" - -#: ../src/sp-tspan.cpp:252 -msgid "Text span" -msgstr "" - -#: ../src/sp-use.cpp:303 -#, c-format -msgid "'%s' Symbol" -msgstr "" - -#. TRANSLATORS: Used for statusbar description for long chains: -#. * "Clone of: Clone of: ... in Layer 1". -#: ../src/sp-use.cpp:311 -msgid "..." -msgstr "" - -#: ../src/sp-use.cpp:319 -#, c-format -msgid "Clone of: %s" -msgstr "" - -#: ../src/sp-use.cpp:323 -msgid "Orphaned clone" -msgstr "" - -#: ../src/spiral-context.cpp:304 -msgid "Ctrl: snap angle" -msgstr "" - -#: ../src/spiral-context.cpp:306 -msgid "Alt: lock spiral radius" -msgstr "" - -#: ../src/spiral-context.cpp:442 -#, c-format -msgid "" -"Spiral: radius %s, angle %5g°; with Ctrl to snap angle" -msgstr "" - -#: ../src/spiral-context.cpp:468 -msgid "Create spiral" -msgstr "" - -#: ../src/splivarot.cpp:68 ../src/splivarot.cpp:74 -msgid "Union" -msgstr "" - -#: ../src/splivarot.cpp:80 -msgid "Intersection" -msgstr "" - -#: ../src/splivarot.cpp:86 ../src/splivarot.cpp:92 -msgid "Difference" -msgstr "" - -#: ../src/splivarot.cpp:98 -msgid "Exclusion" -msgstr "" - -#: ../src/splivarot.cpp:103 -msgid "Division" -msgstr "" - -#: ../src/splivarot.cpp:108 -msgid "Cut path" -msgstr "" - -#: ../src/splivarot.cpp:123 -msgid "Select at least 2 paths to perform a boolean operation." -msgstr "" - -#: ../src/splivarot.cpp:127 -msgid "Select at least 1 path to perform a boolean union." -msgstr "" - -#: ../src/splivarot.cpp:133 -msgid "" -"Select exactly 2 paths to perform difference, division, or path cut." -msgstr "" - -#: ../src/splivarot.cpp:149 ../src/splivarot.cpp:164 -msgid "" -"Unable to determine the z-order of the objects selected for " -"difference, XOR, division, or path cut." -msgstr "" - -#: ../src/splivarot.cpp:194 -msgid "" -"One of the objects is not a path, cannot perform boolean operation." -msgstr "" - -#: ../src/splivarot.cpp:918 -msgid "Select stroked path(s) to convert stroke to path." -msgstr "" - -#: ../src/splivarot.cpp:1271 -msgid "Convert stroke to path" -msgstr "" - -#. TRANSLATORS: "to outline" means "to convert stroke to path" -#: ../src/splivarot.cpp:1274 -msgid "No stroked paths in the selection." -msgstr "" - -#: ../src/splivarot.cpp:1345 -msgid "Selected object is not a path, cannot inset/outset." -msgstr "" - -#: ../src/splivarot.cpp:1441 ../src/splivarot.cpp:1506 -msgid "Create linked offset" -msgstr "" - -#: ../src/splivarot.cpp:1442 ../src/splivarot.cpp:1507 -msgid "Create dynamic offset" -msgstr "" - -#: ../src/splivarot.cpp:1532 -msgid "Select path(s) to inset/outset." -msgstr "" - -#: ../src/splivarot.cpp:1745 -msgid "Outset path" -msgstr "" - -#: ../src/splivarot.cpp:1745 -msgid "Inset path" -msgstr "" - -#: ../src/splivarot.cpp:1747 -msgid "No paths to inset/outset in the selection." -msgstr "" - -#: ../src/splivarot.cpp:1909 -msgid "Simplifying paths (separately):" -msgstr "" - -#: ../src/splivarot.cpp:1911 -msgid "Simplifying paths:" -msgstr "" - -#: ../src/splivarot.cpp:1948 -#, c-format -msgid "%s %d of %d paths simplified..." -msgstr "" - -#: ../src/splivarot.cpp:1960 -#, c-format -msgid "%d paths simplified." -msgstr "" - -#: ../src/splivarot.cpp:1974 -msgid "Select path(s) to simplify." -msgstr "" - -#: ../src/splivarot.cpp:1990 -msgid "No paths to simplify in the selection." -msgstr "" - -#: ../src/spray-context.cpp:205 ../src/tweak-context.cpp:191 -#, c-format -msgid "Nothing selected" -msgstr "" - -#: ../src/spray-context.cpp:211 -#, c-format -msgid "" -"%s. Drag, click or click and scroll to spray copies of the initial " -"selection." -msgstr "" - -#: ../src/spray-context.cpp:214 -#, c-format -msgid "" -"%s. Drag, click or click and scroll to spray clones of the initial " -"selection." -msgstr "" - -#: ../src/spray-context.cpp:217 -#, c-format -msgid "" -"%s. Drag, click or click and scroll to spray in a single path of the " -"initial selection." -msgstr "" - -#: ../src/spray-context.cpp:670 -msgid "Nothing selected! Select objects to spray." -msgstr "" - -#: ../src/spray-context.cpp:745 ../src/widgets/spray-toolbar.cpp:182 -msgid "Spray with copies" -msgstr "" - -#: ../src/spray-context.cpp:749 ../src/widgets/spray-toolbar.cpp:189 -msgid "Spray with clones" -msgstr "" - -#: ../src/spray-context.cpp:753 -msgid "Spray in single path" -msgstr "" - -#: ../src/star-context.cpp:320 -msgid "Ctrl: snap angle; keep rays radial" -msgstr "" - -#: ../src/star-context.cpp:456 -#, c-format -msgid "" -"Polygon: radius %s, angle %5g°; with Ctrl to snap angle" -msgstr "" - -#: ../src/star-context.cpp:457 -#, c-format -msgid "Star: radius %s, angle %5g°; with Ctrl to snap angle" -msgstr "" - -#: ../src/star-context.cpp:490 -msgid "Create star" -msgstr "" - -#: ../src/text-chemistry.cpp:94 -msgid "Select a text and a path to put text on path." -msgstr "" - -#: ../src/text-chemistry.cpp:99 -msgid "" -"This text object is already put on a path. Remove it from the path " -"first. Use Shift+D to look up its path." -msgstr "" - -#. rect is the only SPShape which is not yet, and thus SVG forbids us from putting text on it -#: ../src/text-chemistry.cpp:105 -msgid "" -"You cannot put text on a rectangle in this version. Convert rectangle to " -"path first." -msgstr "" - -#: ../src/text-chemistry.cpp:115 -msgid "The flowed text(s) must be visible in order to be put on a path." -msgstr "" - -#: ../src/text-chemistry.cpp:183 ../src/verbs.cpp:2435 -msgid "Put text on path" -msgstr "" - -#: ../src/text-chemistry.cpp:195 -msgid "Select a text on path to remove it from path." -msgstr "" - -#: ../src/text-chemistry.cpp:216 -msgid "No texts-on-paths in the selection." -msgstr "" - -#: ../src/text-chemistry.cpp:219 ../src/verbs.cpp:2437 -msgid "Remove text from path" -msgstr "" - -#: ../src/text-chemistry.cpp:259 ../src/text-chemistry.cpp:280 -msgid "Select text(s) to remove kerns from." -msgstr "" - -#: ../src/text-chemistry.cpp:283 -msgid "Remove manual kerns" -msgstr "" - -#: ../src/text-chemistry.cpp:303 -msgid "" -"Select a text and one or more paths or shapes to flow text " -"into frame." -msgstr "" - -#: ../src/text-chemistry.cpp:371 -msgid "Flow text into shape" -msgstr "" - -#: ../src/text-chemistry.cpp:393 -msgid "Select a flowed text to unflow it." -msgstr "" - -#: ../src/text-chemistry.cpp:467 -msgid "Unflow flowed text" -msgstr "" - -#: ../src/text-chemistry.cpp:479 -msgid "Select flowed text(s) to convert." -msgstr "" - -#: ../src/text-chemistry.cpp:497 -msgid "The flowed text(s) must be visible in order to be converted." -msgstr "" - -#: ../src/text-chemistry.cpp:525 -msgid "Convert flowed text to text" -msgstr "" - -#: ../src/text-chemistry.cpp:530 -msgid "No flowed text(s) to convert in the selection." -msgstr "" - -#: ../src/text-context.cpp:426 -msgid "Click to edit the text, drag to select part of the text." -msgstr "" - -#: ../src/text-context.cpp:428 -msgid "" -"Click to edit the flowed text, drag to select part of the text." -msgstr "" - -#: ../src/text-context.cpp:482 -msgid "Create text" -msgstr "" - -#: ../src/text-context.cpp:507 -msgid "Non-printable character" -msgstr "" - -#: ../src/text-context.cpp:522 -msgid "Insert Unicode character" -msgstr "" - -#: ../src/text-context.cpp:557 -#, c-format -msgid "Unicode (Enter to finish): %s: %s" -msgstr "" - -#: ../src/text-context.cpp:559 ../src/text-context.cpp:868 -msgid "Unicode (Enter to finish): " -msgstr "" - -#: ../src/text-context.cpp:645 -#, c-format -msgid "Flowed text frame: %s × %s" -msgstr "" - -#: ../src/text-context.cpp:702 -msgid "Type text; Enter to start new line." -msgstr "" - -#: ../src/text-context.cpp:713 -msgid "Flowed text is created." -msgstr "" - -#: ../src/text-context.cpp:715 -msgid "Create flowed text" -msgstr "" - -#: ../src/text-context.cpp:717 -msgid "" -"The frame is too small for the current font size. Flowed text not " -"created." -msgstr "" - -#: ../src/text-context.cpp:853 -msgid "No-break space" -msgstr "" - -#: ../src/text-context.cpp:855 -msgid "Insert no-break space" -msgstr "" - -#: ../src/text-context.cpp:892 -msgid "Make bold" -msgstr "" - -#: ../src/text-context.cpp:910 -msgid "Make italic" -msgstr "" - -#: ../src/text-context.cpp:949 -msgid "New line" -msgstr "" - -#: ../src/text-context.cpp:991 -msgid "Backspace" -msgstr "" - -#: ../src/text-context.cpp:1047 -msgid "Kern to the left" -msgstr "" - -#: ../src/text-context.cpp:1072 -msgid "Kern to the right" -msgstr "" - -#: ../src/text-context.cpp:1097 -msgid "Kern up" -msgstr "" - -#: ../src/text-context.cpp:1122 -msgid "Kern down" -msgstr "" - -#: ../src/text-context.cpp:1198 -msgid "Rotate counterclockwise" -msgstr "" - -#: ../src/text-context.cpp:1219 -msgid "Rotate clockwise" -msgstr "" - -#: ../src/text-context.cpp:1236 -msgid "Contract line spacing" -msgstr "" - -#: ../src/text-context.cpp:1243 -msgid "Contract letter spacing" -msgstr "" - -#: ../src/text-context.cpp:1261 -msgid "Expand line spacing" -msgstr "" - -#: ../src/text-context.cpp:1268 -msgid "Expand letter spacing" -msgstr "" - -#: ../src/text-context.cpp:1396 -msgid "Paste text" -msgstr "" - -#: ../src/text-context.cpp:1647 -#, c-format -msgid "" -"Type or edit flowed text (%d characters%s); Enter to start new " -"paragraph." -msgstr "" - -#: ../src/text-context.cpp:1649 -#, c-format -msgid "Type or edit text (%d characters%s); Enter to start new line." -msgstr "" - -#: ../src/text-context.cpp:1657 ../src/tools-switch.cpp:201 -msgid "" -"Click to select or create text, drag to create flowed text; " -"then type." -msgstr "" - -#: ../src/text-context.cpp:1759 -msgid "Type text" -msgstr "" - -#: ../src/text-editing.cpp:44 -msgid "You cannot edit cloned character data." -msgstr "" - -#: ../src/tools-switch.cpp:141 -msgid "To tweak a path by pushing, select it and drag over it." -msgstr "" - -#: ../src/tools-switch.cpp:147 -msgid "" -"Drag, click or click and scroll to spray the selected " -"objects." -msgstr "" - -#: ../src/tools-switch.cpp:153 -msgid "" -"Drag to create a rectangle. Drag controls to round corners and " -"resize. Click to select." -msgstr "" - -#: ../src/tools-switch.cpp:159 -msgid "" -"Drag to create a 3D box. Drag controls to resize in " -"perspective. Click to select (with Ctrl+Alt for single faces)." -msgstr "" - -#: ../src/tools-switch.cpp:165 -msgid "" -"Drag to create an ellipse. Drag controls to make an arc or " -"segment. Click to select." -msgstr "" - -#: ../src/tools-switch.cpp:171 -msgid "" -"Drag to create a star. Drag controls to edit the star shape. " -"Click to select." -msgstr "" - -#: ../src/tools-switch.cpp:177 -msgid "" -"Drag to create a spiral. Drag controls to edit the spiral " -"shape. Click to select." -msgstr "" - -#: ../src/tools-switch.cpp:183 -msgid "" -"Drag to create a freehand line. Shift appends to selected " -"path, Alt activates sketch mode." -msgstr "" - -#: ../src/tools-switch.cpp:189 -msgid "" -"Click or click and drag to start a path; with Shift to " -"append to selected path. Ctrl+click to create single dots (straight " -"line modes only)." -msgstr "" - -#: ../src/tools-switch.cpp:195 -msgid "" -"Drag to draw a calligraphic stroke; with Ctrl to track a guide " -"path. Arrow keys adjust width (left/right) and angle (up/down)." -msgstr "" - -#: ../src/tools-switch.cpp:207 -msgid "" -"Drag or double click to create a gradient on selected objects, " -"drag handles to adjust gradients." -msgstr "" - -#: ../src/tools-switch.cpp:213 -msgid "" -"Drag or double click to create a mesh on selected objects, " -"drag handles to adjust meshes." -msgstr "" - -#: ../src/tools-switch.cpp:219 -msgid "" -"Click or drag around an area to zoom in, Shift+click to " -"zoom out." -msgstr "" - -#: ../src/tools-switch.cpp:225 -msgid "Drag to measure the dimensions of objects." -msgstr "" - -#: ../src/tools-switch.cpp:237 -msgid "Click and drag between shapes to create a connector." -msgstr "" - -#: ../src/tools-switch.cpp:243 -msgid "" -"Click to paint a bounded area, Shift+click to union the new " -"fill with the current selection, Ctrl+click to change the clicked " -"object's fill and stroke to the current setting." -msgstr "" - -#: ../src/tools-switch.cpp:249 -msgid "Drag to erase." -msgstr "" - -#: ../src/tools-switch.cpp:255 -msgid "Choose a subtool from the toolbar" -msgstr "" - -#: ../src/trace/potrace/inkscape-potrace.cpp:512 -#: ../src/trace/potrace/inkscape-potrace.cpp:575 -msgid "Trace: %1. %2 nodes" -msgstr "" - -#: ../src/trace/trace.cpp:58 ../src/trace/trace.cpp:123 -#: ../src/trace/trace.cpp:131 ../src/trace/trace.cpp:224 -msgid "Select an image to trace" -msgstr "" - -#: ../src/trace/trace.cpp:93 -msgid "Select only one image to trace" -msgstr "" - -#: ../src/trace/trace.cpp:111 -msgid "Select one image and one or more shapes above it" -msgstr "" - -#: ../src/trace/trace.cpp:215 -msgid "Trace: No active desktop" -msgstr "" - -#: ../src/trace/trace.cpp:312 -msgid "Invalid SIOX result" -msgstr "" - -#: ../src/trace/trace.cpp:396 -msgid "Trace: No active document" -msgstr "" - -#: ../src/trace/trace.cpp:419 -msgid "Trace: Image has no bitmap data" -msgstr "" - -#: ../src/trace/trace.cpp:426 -msgid "Trace: Starting trace..." -msgstr "" - -#. ## inform the document, so we can undo -#: ../src/trace/trace.cpp:529 -msgid "Trace bitmap" -msgstr "" - -#: ../src/trace/trace.cpp:533 -#, c-format -msgid "Trace: Done. %ld nodes created" -msgstr "" - -#: ../src/tweak-context.cpp:196 -#, c-format -msgid "%s. Drag to move." -msgstr "" - -#: ../src/tweak-context.cpp:200 -#, c-format -msgid "%s. Drag or click to move in; with Shift to move out." -msgstr "" - -#: ../src/tweak-context.cpp:208 -#, c-format -msgid "%s. Drag or click to move randomly." -msgstr "" - -#: ../src/tweak-context.cpp:212 -#, c-format -msgid "%s. Drag or click to scale down; with Shift to scale up." -msgstr "" - -#: ../src/tweak-context.cpp:220 -#, c-format -msgid "" -"%s. Drag or click to rotate clockwise; with Shift, " -"counterclockwise." -msgstr "" - -#: ../src/tweak-context.cpp:228 -#, c-format -msgid "%s. Drag or click to duplicate; with Shift, delete." -msgstr "" - -#: ../src/tweak-context.cpp:236 -#, c-format -msgid "%s. Drag to push paths." -msgstr "" - -#: ../src/tweak-context.cpp:240 -#, c-format -msgid "%s. Drag or click to inset paths; with Shift to outset." -msgstr "" - -#: ../src/tweak-context.cpp:248 -#, c-format -msgid "%s. Drag or click to attract paths; with Shift to repel." -msgstr "" - -#: ../src/tweak-context.cpp:256 -#, c-format -msgid "%s. Drag or click to roughen paths." -msgstr "" - -#: ../src/tweak-context.cpp:260 -#, c-format -msgid "%s. Drag or click to paint objects with color." -msgstr "" - -#: ../src/tweak-context.cpp:264 -#, c-format -msgid "%s. Drag or click to randomize colors." -msgstr "" - -#: ../src/tweak-context.cpp:268 -#, c-format -msgid "" -"%s. Drag or click to increase blur; with Shift to decrease." -msgstr "" - -#: ../src/tweak-context.cpp:1234 -msgid "Nothing selected! Select objects to tweak." -msgstr "" - -#: ../src/tweak-context.cpp:1268 -msgid "Move tweak" -msgstr "" - -#: ../src/tweak-context.cpp:1272 -msgid "Move in/out tweak" -msgstr "" - -#: ../src/tweak-context.cpp:1276 -msgid "Move jitter tweak" -msgstr "" - -#: ../src/tweak-context.cpp:1280 -msgid "Scale tweak" -msgstr "" - -#: ../src/tweak-context.cpp:1284 -msgid "Rotate tweak" -msgstr "" - -#: ../src/tweak-context.cpp:1288 -msgid "Duplicate/delete tweak" -msgstr "" - -#: ../src/tweak-context.cpp:1292 -msgid "Push path tweak" -msgstr "" - -#: ../src/tweak-context.cpp:1296 -msgid "Shrink/grow path tweak" -msgstr "" - -#: ../src/tweak-context.cpp:1300 -msgid "Attract/repel path tweak" -msgstr "" - -#: ../src/tweak-context.cpp:1304 -msgid "Roughen path tweak" -msgstr "" - -#: ../src/tweak-context.cpp:1308 -msgid "Color paint tweak" -msgstr "" - -#: ../src/tweak-context.cpp:1312 -msgid "Color jitter tweak" -msgstr "" - -#: ../src/tweak-context.cpp:1316 -msgid "Blur tweak" -msgstr "" - -#. check whether something is selected -#: ../src/ui/clipboard.cpp:262 -msgid "Nothing was copied." -msgstr "" - -#: ../src/ui/clipboard.cpp:375 ../src/ui/clipboard.cpp:584 -#: ../src/ui/clipboard.cpp:607 -msgid "Nothing on the clipboard." -msgstr "" - -#: ../src/ui/clipboard.cpp:433 -msgid "Select object(s) to paste style to." -msgstr "" - -#: ../src/ui/clipboard.cpp:444 ../src/ui/clipboard.cpp:461 -msgid "No style on the clipboard." -msgstr "" - -#: ../src/ui/clipboard.cpp:486 -msgid "Select object(s) to paste size to." -msgstr "" - -#: ../src/ui/clipboard.cpp:493 -msgid "No size on the clipboard." -msgstr "" - -#: ../src/ui/clipboard.cpp:546 -msgid "Select object(s) to paste live path effect to." -msgstr "" - -#. no_effect: -#: ../src/ui/clipboard.cpp:571 -msgid "No effect on the clipboard." -msgstr "" - -#: ../src/ui/clipboard.cpp:590 ../src/ui/clipboard.cpp:618 -msgid "Clipboard does not contain a path." -msgstr "" - -#. * -#. * Constructor -#. -#: ../src/ui/dialog/aboutbox.cpp:79 -msgid "About Inkscape" -msgstr "" - -#: ../src/ui/dialog/aboutbox.cpp:90 -msgid "_Splash" -msgstr "" - -#: ../src/ui/dialog/aboutbox.cpp:94 -msgid "_Authors" -msgstr "" - -#: ../src/ui/dialog/aboutbox.cpp:96 -msgid "_Translators" -msgstr "" - -#: ../src/ui/dialog/aboutbox.cpp:98 -msgid "_License" -msgstr "" - -#. TRANSLATORS: This is the filename of the `About Inkscape' picture in -#. the `screens' directory. Thus the translation of "about.svg" should be -#. the filename of its translated version, e.g. about.zh.svg for Chinese. -#. -#. N.B. about.svg changes once per release. (We should probably rename -#. the original to about-0.40.svg etc. as soon as we have a translation. -#. If we do so, then add an item to release-checklist saying that the -#. string here should be changed.) -#. FIXME? INKSCAPE_SCREENSDIR and "about.svg" are in UTF-8, not the -#. native filename encoding... and the filename passed to sp_document_new -#. should be in UTF-*8.. -#: ../src/ui/dialog/aboutbox.cpp:165 -msgid "about.svg" -msgstr "" - -#. TRANSLATORS: Put here your name (and other national contributors') -#. one per line in the form of: name surname (email). Use \n for newline. -#: ../src/ui/dialog/aboutbox.cpp:415 -msgid "translator-credits" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:219 -#: ../src/ui/dialog/align-and-distribute.cpp:896 -msgid "Align" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:391 -#: ../src/ui/dialog/align-and-distribute.cpp:897 -msgid "Distribute" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:464 -msgid "Minimum horizontal gap (in px units) between bounding boxes" -msgstr "" - -#. TRANSLATORS: "H:" stands for horizontal gap -#: ../src/ui/dialog/align-and-distribute.cpp:466 -msgctxt "Gap" -msgid "_H:" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:474 -msgid "Minimum vertical gap (in px units) between bounding boxes" -msgstr "" - -#. TRANSLATORS: Vertical gap -#: ../src/ui/dialog/align-and-distribute.cpp:476 -msgctxt "Gap" -msgid "_V:" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:512 -#: ../src/ui/dialog/align-and-distribute.cpp:899 -#: ../src/widgets/connector-toolbar.cpp:427 -msgid "Remove overlaps" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:543 -#: ../src/widgets/connector-toolbar.cpp:256 -msgid "Arrange connector network" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:636 -msgid "Exchange Positions" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:670 -msgid "Unclump" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:742 -msgid "Randomize positions" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:845 -msgid "Distribute text baselines" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:868 -msgid "Align text baselines" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:898 -msgid "Rearrange" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:900 -#: ../src/widgets/toolbox.cpp:1728 -msgid "Nodes" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:914 -msgid "Relative to: " -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:915 -msgid "_Treat selection as group: " -msgstr "" - -#. Align -#: ../src/ui/dialog/align-and-distribute.cpp:921 ../src/verbs.cpp:2866 -#: ../src/verbs.cpp:2867 -msgid "Align right edges of objects to the left edge of the anchor" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:924 ../src/verbs.cpp:2868 -#: ../src/verbs.cpp:2869 -msgid "Align left edges" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:927 ../src/verbs.cpp:2870 -#: ../src/verbs.cpp:2871 -msgid "Center on vertical axis" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:930 ../src/verbs.cpp:2872 -#: ../src/verbs.cpp:2873 -msgid "Align right sides" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:933 ../src/verbs.cpp:2874 -#: ../src/verbs.cpp:2875 -msgid "Align left edges of objects to the right edge of the anchor" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:936 ../src/verbs.cpp:2876 -#: ../src/verbs.cpp:2877 -msgid "Align bottom edges of objects to the top edge of the anchor" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:939 ../src/verbs.cpp:2878 -#: ../src/verbs.cpp:2879 -msgid "Align top edges" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:942 ../src/verbs.cpp:2880 -#: ../src/verbs.cpp:2881 -msgid "Center on horizontal axis" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:945 ../src/verbs.cpp:2882 -#: ../src/verbs.cpp:2883 -msgid "Align bottom edges" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:948 ../src/verbs.cpp:2884 -#: ../src/verbs.cpp:2885 -msgid "Align top edges of objects to the bottom edge of the anchor" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:953 -msgid "Align baseline anchors of texts horizontally" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:956 -msgid "Align baselines of texts" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:961 -msgid "Make horizontal gaps between objects equal" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:965 -msgid "Distribute left edges equidistantly" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:968 -msgid "Distribute centers equidistantly horizontally" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:971 -msgid "Distribute right edges equidistantly" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:975 -msgid "Make vertical gaps between objects equal" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:979 -msgid "Distribute top edges equidistantly" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:982 -msgid "Distribute centers equidistantly vertically" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:985 -msgid "Distribute bottom edges equidistantly" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:990 -msgid "Distribute baseline anchors of texts horizontally" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:993 -msgid "Distribute baselines of texts vertically" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:999 -#: ../src/widgets/connector-toolbar.cpp:389 -msgid "Nicely arrange selected connector network" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:1002 -msgid "Exchange positions of selected objects - selection order" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:1005 -msgid "Exchange positions of selected objects - stacking order" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:1008 -msgid "Exchange positions of selected objects - clockwise rotate" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:1013 -msgid "Randomize centers in both dimensions" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:1016 -msgid "Unclump objects: try to equalize edge-to-edge distances" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:1021 -msgid "" -"Move objects as little as possible so that their bounding boxes do not " -"overlap" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:1029 -msgid "Align selected nodes to a common horizontal line" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:1032 -msgid "Align selected nodes to a common vertical line" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:1035 -msgid "Distribute selected nodes horizontally" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:1038 -msgid "Distribute selected nodes vertically" -msgstr "" - -#. Rest of the widgetry -#: ../src/ui/dialog/align-and-distribute.cpp:1043 -msgid "Last selected" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:1044 -msgid "First selected" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:1045 -msgid "Biggest object" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:1046 -msgid "Smallest object" -msgstr "" - -#: ../src/ui/dialog/align-and-distribute.cpp:1049 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1555 ../src/verbs.cpp:174 -#: ../src/widgets/desktop-widget.cpp:2004 -#: ../share/extensions/printing_marks.inx.h:18 -msgid "Selection" -msgstr "" - -#: ../src/ui/dialog/calligraphic-profile-rename.cpp:40 -#: ../src/ui/dialog/calligraphic-profile-rename.cpp:138 -msgid "Edit profile" -msgstr "" - -#: ../src/ui/dialog/calligraphic-profile-rename.cpp:53 -msgid "Profile name:" -msgstr "" - -#: ../src/ui/dialog/calligraphic-profile-rename.cpp:80 -msgid "Save" -msgstr "" - -#: ../src/ui/dialog/calligraphic-profile-rename.cpp:134 -msgid "Add profile" -msgstr "" - -#: ../src/ui/dialog/color-item.cpp:131 -#, c-format -msgid "" -"Color: %s; Click to set fill, Shift+click to set stroke" -msgstr "" - -#: ../src/ui/dialog/color-item.cpp:513 -msgid "Change color definition" -msgstr "" - -#: ../src/ui/dialog/color-item.cpp:687 -msgid "Remove stroke color" -msgstr "" - -#: ../src/ui/dialog/color-item.cpp:687 -msgid "Remove fill color" -msgstr "" - -#: ../src/ui/dialog/color-item.cpp:692 -msgid "Set stroke color to none" -msgstr "" - -#: ../src/ui/dialog/color-item.cpp:692 -msgid "Set fill color to none" -msgstr "" - -#: ../src/ui/dialog/color-item.cpp:708 -msgid "Set stroke color from swatch" -msgstr "" - -#: ../src/ui/dialog/color-item.cpp:708 -msgid "Set fill color from swatch" -msgstr "" - -#: ../src/ui/dialog/debug.cpp:73 -msgid "Messages" -msgstr "" - -#: ../src/ui/dialog/debug.cpp:87 ../src/ui/dialog/messages.cpp:47 -#: ../src/ui/dialog/scriptdialog.cpp:182 -msgid "_Clear" -msgstr "" - -#: ../src/ui/dialog/debug.cpp:91 ../src/ui/dialog/messages.cpp:48 -msgid "Capture log messages" -msgstr "" - -#: ../src/ui/dialog/debug.cpp:95 -msgid "Release log messages" -msgstr "" - -#: ../src/ui/dialog/document-metadata.cpp:88 -#: ../src/ui/dialog/document-properties.cpp:152 -msgid "Metadata" -msgstr "" - -#: ../src/ui/dialog/document-metadata.cpp:89 -#: ../src/ui/dialog/document-properties.cpp:153 -msgid "License" -msgstr "" - -#: ../src/ui/dialog/document-metadata.cpp:126 -#: ../src/ui/dialog/document-properties.cpp:960 -msgid "Dublin Core Entities" -msgstr "" - -#: ../src/ui/dialog/document-metadata.cpp:168 -#: ../src/ui/dialog/document-properties.cpp:1022 -msgid "License" -msgstr "" - -#. --------------------------------------------------------------- -#: ../src/ui/dialog/document-properties.cpp:105 -msgid "Show page _border" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:105 -msgid "If set, rectangular page border is shown" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:106 -msgid "Border on _top of drawing" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:106 -msgid "If set, border is always on top of the drawing" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:107 -msgid "_Show border shadow" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:107 -msgid "If set, page border shows a shadow on its right and lower side" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:108 -msgid "Back_ground color:" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:108 -msgid "" -"Color of the page background. Note: transparency setting ignored while " -"editing but used when exporting to bitmap." -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:109 -msgid "Border _color:" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:109 -msgid "Page border color" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:109 -msgid "Color of the page border" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:110 -msgid "Default _units:" -msgstr "" - -#. --------------------------------------------------------------- -#. General snap options -#: ../src/ui/dialog/document-properties.cpp:114 -msgid "Show _guides" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:114 -msgid "Show or hide guides" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:115 -msgid "Guide co_lor:" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:115 -msgid "Guideline color" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:115 -msgid "Color of guidelines" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:116 -msgid "_Highlight color:" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:116 -msgid "Highlighted guideline color" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:116 -msgid "Color of a guideline when it is under mouse" -msgstr "" - -#. --------------------------------------------------------------- -#: ../src/ui/dialog/document-properties.cpp:118 -msgid "Snap _distance" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:118 -msgid "Snap only when _closer than:" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:118 -#: ../src/ui/dialog/document-properties.cpp:123 -#: ../src/ui/dialog/document-properties.cpp:128 -msgid "Always snap" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:119 -msgid "Snapping distance, in screen pixels, for snapping to objects" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:119 -msgid "Always snap to objects, regardless of their distance" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:120 -msgid "" -"If set, objects only snap to another object when it's within the range " -"specified below" -msgstr "" - -#. Options for snapping to grids -#: ../src/ui/dialog/document-properties.cpp:123 -msgid "Snap d_istance" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:123 -msgid "Snap only when c_loser than:" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:124 -msgid "Snapping distance, in screen pixels, for snapping to grid" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:124 -msgid "Always snap to grids, regardless of the distance" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:125 -msgid "" -"If set, objects only snap to a grid line when it's within the range " -"specified below" -msgstr "" - -#. Options for snapping to guides -#: ../src/ui/dialog/document-properties.cpp:128 -msgid "Snap dist_ance" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:128 -msgid "Snap only when close_r than:" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:129 -msgid "Snapping distance, in screen pixels, for snapping to guides" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:129 -msgid "Always snap to guides, regardless of the distance" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:130 -msgid "" -"If set, objects only snap to a guide when it's within the range specified " -"below" -msgstr "" - -#. --------------------------------------------------------------- -#: ../src/ui/dialog/document-properties.cpp:133 -msgid "Snap to clip paths" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:133 -msgid "When snapping to paths, then also try snapping to clip paths" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:134 -msgid "Snap to mask paths" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:134 -msgid "When snapping to paths, then also try snapping to mask paths" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:135 -msgid "Snap perpendicularly" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:135 -msgid "" -"When snapping to paths or guides, then also try snapping perpendicularly" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:136 -msgid "Snap tangentially" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:136 -msgid "When snapping to paths or guides, then also try snapping tangentially" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:139 -msgctxt "Grid" -msgid "_New" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:139 -msgid "Create new grid." -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:140 -msgctxt "Grid" -msgid "_Remove" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:140 -msgid "Remove selected grid." -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:147 -#: ../src/widgets/toolbox.cpp:1835 -msgid "Guides" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:149 ../src/verbs.cpp:2685 -msgid "Snap" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:151 -msgid "Scripting" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:311 -msgid "General" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:313 -msgid "Color" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:315 -msgid "Border" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:317 -msgid "Page Size" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:350 -msgid "Guides" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:368 -msgid "Snap to objects" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:370 -msgid "Snap to grids" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:372 -msgid "Snap to guides" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:374 -msgid "Miscellaneous" -msgstr "" - -#. TODO check if this next line was sometimes needed. It being there caused an assertion. -#. Inkscape::GC::release(defsRepr); -#. inform the document, so we can undo -#. Color Management -#: ../src/ui/dialog/document-properties.cpp:487 ../src/verbs.cpp:2860 -msgid "Link Color Profile" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:588 -msgid "Remove linked color profile" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:601 -msgid "Linked Color Profiles:" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:603 -msgid "Available Color Profiles:" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:605 -msgid "Link Profile" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:608 -msgid "Unlink Profile" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:686 -msgid "Profile Name" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:722 -msgid "External scripts" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:723 -msgid "Embedded scripts" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:728 -msgid "External script files:" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:730 -msgid "Add the current file name or browse for a file" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:733 -#: ../src/ui/dialog/document-properties.cpp:811 -#: ../src/ui/widget/selected-style.cpp:334 -msgid "Remove" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:798 -msgid "Filename" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:806 -msgid "Embedded script files:" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:808 -msgid "New" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:875 -msgid "Script id" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:881 -msgid "Content:" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:998 -msgid "_Save as default" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:999 -msgid "Save this metadata as the default metadata" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:1000 -msgid "Use _default" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:1001 -msgid "Use the previously saved default metadata here" -msgstr "" - -#. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1074 -msgid "Add external script..." -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:1113 -msgid "Select a script to load" -msgstr "" - -#. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1141 -msgid "Add embedded script..." -msgstr "" - -#. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1172 -msgid "Remove external script" -msgstr "" - -#. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1206 -msgid "Remove embedded script" -msgstr "" - -#. TODO repr->set_content(_EmbeddedContent.get_buffer()->get_text()); -#. inform the document, so we can undo -#: ../src/ui/dialog/document-properties.cpp:1306 -msgid "Edit embedded script" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:1389 -msgid "Creation" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:1390 -msgid "Defined grids" -msgstr "" - -#: ../src/ui/dialog/document-properties.cpp:1618 -msgid "Remove grid" -msgstr "" - -#: ../src/ui/dialog/extension-editor.cpp:81 -msgid "Information" -msgstr "" - -#: ../src/ui/dialog/extension-editor.cpp:82 ../src/verbs.cpp:289 -#: ../src/verbs.cpp:308 ../share/extensions/color_custom.inx.h:7 -#: ../share/extensions/color_HSL_adjust.inx.h:11 -#: ../share/extensions/color_randomize.inx.h:6 -#: ../share/extensions/dots.inx.h:7 -#: ../share/extensions/draw_from_triangle.inx.h:35 -#: ../share/extensions/dxf_input.inx.h:10 -#: ../share/extensions/dxf_outlines.inx.h:24 -#: ../share/extensions/gcodetools_about.inx.h:3 -#: ../share/extensions/gcodetools_area.inx.h:53 -#: ../share/extensions/gcodetools_check_for_updates.inx.h:3 -#: ../share/extensions/gcodetools_dxf_points.inx.h:25 -#: ../share/extensions/gcodetools_engraving.inx.h:31 -#: ../share/extensions/gcodetools_graffiti.inx.h:42 -#: ../share/extensions/gcodetools_lathe.inx.h:46 -#: ../share/extensions/gcodetools_orientation_points.inx.h:14 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:35 -#: ../share/extensions/gcodetools_prepare_path_for_plasma.inx.h:17 -#: ../share/extensions/gcodetools_tools_library.inx.h:12 -#: ../share/extensions/generate_voronoi.inx.h:5 -#: ../share/extensions/gimp_xcf.inx.h:6 -#: ../share/extensions/interp_att_g.inx.h:27 -#: ../share/extensions/jessyInk_autoTexts.inx.h:8 -#: ../share/extensions/jessyInk_effects.inx.h:13 -#: ../share/extensions/jessyInk_export.inx.h:7 -#: ../share/extensions/jessyInk_install.inx.h:2 -#: ../share/extensions/jessyInk_keyBindings.inx.h:44 -#: ../share/extensions/jessyInk_masterSlide.inx.h:5 -#: ../share/extensions/jessyInk_mouseHandler.inx.h:6 -#: ../share/extensions/jessyInk_summary.inx.h:2 -#: ../share/extensions/jessyInk_transitions.inx.h:12 -#: ../share/extensions/jessyInk_uninstall.inx.h:10 -#: ../share/extensions/jessyInk_video.inx.h:2 -#: ../share/extensions/jessyInk_view.inx.h:7 -#: ../share/extensions/layout_nup.inx.h:24 -#: ../share/extensions/lindenmayer.inx.h:13 -#: ../share/extensions/lorem_ipsum.inx.h:6 -#: ../share/extensions/measure.inx.h:15 -#: ../share/extensions/pathalongpath.inx.h:16 -#: ../share/extensions/pathscatter.inx.h:18 -#: ../share/extensions/radiusrand.inx.h:8 ../share/extensions/split.inx.h:8 -#: ../share/extensions/voronoi2svg.inx.h:11 -#: ../share/extensions/webslicer_create_group.inx.h:11 -#: ../share/extensions/webslicer_export.inx.h:6 -#: ../share/extensions/web-set-att.inx.h:25 -#: ../share/extensions/web-transmit-att.inx.h:23 -msgid "Help" -msgstr "" - -#: ../src/ui/dialog/extension-editor.cpp:83 -msgid "Parameters" -msgstr "" - -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:398 -msgid "No preview" -msgstr "" - -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:504 -msgid "too large for preview" -msgstr "" - -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:594 -msgid "Enable preview" -msgstr "" - -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:751 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:764 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:768 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:771 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:779 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:795 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:810 -#: ../src/ui/dialog/filedialogimpl-win32.cpp:289 -#: ../src/ui/dialog/filedialogimpl-win32.cpp:420 -msgid "All Files" -msgstr "" - -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:776 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:792 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:807 -#: ../src/ui/dialog/filedialogimpl-win32.cpp:290 -msgid "All Inkscape Files" -msgstr "" - -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:783 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:799 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:813 -#: ../src/ui/dialog/filedialogimpl-win32.cpp:291 -msgid "All Images" -msgstr "" - -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:786 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:802 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:816 -#: ../src/ui/dialog/filedialogimpl-win32.cpp:292 -msgid "All Vectors" -msgstr "" - -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:789 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:805 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:819 -#: ../src/ui/dialog/filedialogimpl-win32.cpp:293 -msgid "All Bitmaps" -msgstr "" - -#. ###### File options -#. ###### Do we want the .xxx extension automatically added? -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1048 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1616 -msgid "Append filename extension automatically" -msgstr "" - -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1226 -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1480 -msgid "Guess from extension" -msgstr "" - -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1501 -msgid "Left edge of source" -msgstr "" - -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1502 -msgid "Top edge of source" -msgstr "" - -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1503 -msgid "Right edge of source" -msgstr "" - -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1504 -msgid "Bottom edge of source" -msgstr "" - -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1505 -msgid "Source width" -msgstr "" - -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1506 -msgid "Source height" -msgstr "" - -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1507 -msgid "Destination width" -msgstr "" - -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1508 -msgid "Destination height" -msgstr "" - -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1509 -msgid "Resolution (dots per inch)" -msgstr "" - -#. ######################################### -#. ## EXTRA WIDGET -- SOURCE SIDE -#. ######################################### -#. ##### Export options buttons/spinners, etc -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1547 -msgid "Document" -msgstr "" - -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1559 -msgctxt "Export dialog" -msgid "Custom" -msgstr "" - -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1579 -msgid "Source" -msgstr "" - -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1599 -msgid "Cairo" -msgstr "" - -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1602 -msgid "Antialias" -msgstr "" - -#: ../src/ui/dialog/filedialogimpl-gtkmm.cpp:1628 -msgid "Destination" -msgstr "" - -#: ../src/ui/dialog/filedialogimpl-win32.cpp:421 -msgid "All Executable Files" -msgstr "" - -#: ../src/ui/dialog/filedialogimpl-win32.cpp:613 -msgid "Show Preview" -msgstr "" - -#: ../src/ui/dialog/filedialogimpl-win32.cpp:751 -msgid "No file selected" -msgstr "" - -#: ../src/ui/dialog/fill-and-stroke.cpp:62 -msgid "_Fill" -msgstr "" - -#: ../src/ui/dialog/fill-and-stroke.cpp:63 -msgid "Stroke _paint" -msgstr "" - -#: ../src/ui/dialog/fill-and-stroke.cpp:64 -msgid "Stroke st_yle" -msgstr "" - -#. TRANSLATORS: this dialog is accessible via menu Filters - Filter editor -#: ../src/ui/dialog/filter-effects-dialog.cpp:515 -msgid "" -"This matrix determines a linear transform on color space. Each line affects " -"one of the color components. Each column determines how much of each color " -"component from the input is passed to the output. The last column does not " -"depend on input colors, so can be used to adjust a constant component value." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:625 -msgid "Image File" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:628 -msgid "Selected SVG Element" -msgstr "" - -#. TODO: any image, not just svg -#: ../src/ui/dialog/filter-effects-dialog.cpp:698 -msgid "Select an image to be used as feImage input" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:790 -msgid "This SVG filter effect does not require any parameters." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:796 -msgid "This SVG filter effect is not yet implemented in Inkscape." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:984 -msgid "Light Source:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:1001 -msgid "Direction angle for the light source on the XY plane, in degrees" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:1002 -msgid "Direction angle for the light source on the YZ plane, in degrees" -msgstr "" - -#. default x: -#. default y: -#. default z: -#: ../src/ui/dialog/filter-effects-dialog.cpp:1005 -#: ../src/ui/dialog/filter-effects-dialog.cpp:1008 -msgid "Location:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:1005 -#: ../src/ui/dialog/filter-effects-dialog.cpp:1008 -#: ../src/ui/dialog/filter-effects-dialog.cpp:1011 -msgid "X coordinate" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:1005 -#: ../src/ui/dialog/filter-effects-dialog.cpp:1008 -#: ../src/ui/dialog/filter-effects-dialog.cpp:1011 -msgid "Y coordinate" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:1005 -#: ../src/ui/dialog/filter-effects-dialog.cpp:1008 -#: ../src/ui/dialog/filter-effects-dialog.cpp:1011 -msgid "Z coordinate" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:1011 -msgid "Points At" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:1012 -msgid "Specular Exponent" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:1012 -msgid "Exponent value controlling the focus for the light source" -msgstr "" - -#. TODO: here I have used 100 degrees as default value. But spec says that if not specified, no limiting cone is applied. So, there should be a way for the user to set a "no limiting cone" option. -#: ../src/ui/dialog/filter-effects-dialog.cpp:1014 -msgid "Cone Angle" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:1014 -msgid "" -"This is the angle between the spot light axis (i.e. the axis between the " -"light source and the point to which it is pointing at) and the spot light " -"cone. No light is projected outside this cone." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:1077 -msgid "New light source" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:1118 -msgid "_Duplicate" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:1152 -msgid "_Filter" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:1168 -msgid "R_ename" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:1298 -msgid "Rename filter" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:1335 -msgid "Apply filter" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:1405 -msgid "filter" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:1412 -msgid "Add filter" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:1464 -msgid "Duplicate filter" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:1563 -msgid "_Effect" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:1573 -msgid "Connections" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:1711 -msgid "Remove filter primitive" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2299 -msgid "Remove merge node" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2419 -msgid "Reorder filter primitive" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2499 -msgid "Add Effect:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2500 -msgid "No effect selected" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2501 -msgid "No filter selected" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2547 -msgid "Effect parameters" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2548 -msgid "Filter General Settings" -msgstr "" - -#. default x: -#. default y: -#: ../src/ui/dialog/filter-effects-dialog.cpp:2606 -msgid "Coordinates:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2606 -msgid "X coordinate of the left corners of filter effects region" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2606 -msgid "Y coordinate of the upper corners of filter effects region" -msgstr "" - -#. default width: -#. default height: -#: ../src/ui/dialog/filter-effects-dialog.cpp:2607 -msgid "Dimensions:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2607 -msgid "Width of filter effects region" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2607 -msgid "Height of filter effects region" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2613 -msgid "" -"Indicates the type of matrix operation. The keyword 'matrix' indicates that " -"a full 5x4 matrix of values will be provided. The other keywords represent " -"convenience shortcuts to allow commonly used color operations to be " -"performed without specifying a complete matrix." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2614 -msgid "Value(s):" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2629 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2669 -msgid "Operator:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2630 -msgid "K1:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2630 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2631 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2632 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2633 -msgid "" -"If the arithmetic operation is chosen, each result pixel is computed using " -"the formula k1*i1*i2 + k2*i1 + k3*i2 + k4 where i1 and i2 are the pixel " -"values of the first and second inputs respectively." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2631 -msgid "K2:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2632 -msgid "K3:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2633 -msgid "K4:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 -msgid "Size:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 -msgid "width of the convolve matrix" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2636 -msgid "height of the convolve matrix" -msgstr "" - -#. default x: -#. default y: -#: ../src/ui/dialog/filter-effects-dialog.cpp:2637 -#: ../src/ui/dialog/object-attributes.cpp:48 -msgid "Target:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2637 -msgid "" -"X coordinate of the target point in the convolve matrix. The convolution is " -"applied to pixels around this point." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2637 -msgid "" -"Y coordinate of the target point in the convolve matrix. The convolution is " -"applied to pixels around this point." -msgstr "" - -#. TRANSLATORS: for info on "Kernel", see http://en.wikipedia.org/wiki/Kernel_(matrix) -#: ../src/ui/dialog/filter-effects-dialog.cpp:2639 -msgid "Kernel:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2639 -msgid "" -"This matrix describes the convolve operation that is applied to the input " -"image in order to calculate the pixel colors at the output. Different " -"arrangements of values in this matrix result in various possible visual " -"effects. An identity matrix would lead to a motion blur effect (parallel to " -"the matrix diagonal) while a matrix filled with a constant non-zero value " -"would lead to a common blur effect." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2641 -msgid "Divisor:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2641 -msgid "" -"After applying the kernelMatrix to the input image to yield a number, that " -"number is divided by divisor to yield the final destination color value. A " -"divisor that is the sum of all the matrix values tends to have an evening " -"effect on the overall color intensity of the result." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2642 -msgid "Bias:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2642 -msgid "" -"This value is added to each component. This is useful to define a constant " -"value as the zero response of the filter." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 -msgid "Edge Mode:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2643 -msgid "" -"Determines how to extend the input image as necessary with color values so " -"that the matrix operations can be applied when the kernel is positioned at " -"or near the edge of the input image." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 -msgid "Preserve Alpha" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2644 -msgid "If set, the alpha channel won't be altered by this filter primitive." -msgstr "" - -#. default: white -#: ../src/ui/dialog/filter-effects-dialog.cpp:2647 -msgid "Diffuse Color:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2647 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2680 -msgid "Defines the color of the light source" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2648 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2681 -msgid "Surface Scale:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2648 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2681 -msgid "" -"This value amplifies the heights of the bump map defined by the input alpha " -"channel" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2682 -msgid "Constant:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2649 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2682 -msgid "This constant affects the Phong lighting model." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2650 -#: ../src/ui/dialog/filter-effects-dialog.cpp:2684 -msgid "Kernel Unit Length:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2654 -msgid "This defines the intensity of the displacement effect." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 -msgid "X displacement:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2655 -msgid "Color component that controls the displacement in the X direction" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2656 -msgid "Y displacement:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2656 -msgid "Color component that controls the displacement in the Y direction" -msgstr "" - -#. default: black -#: ../src/ui/dialog/filter-effects-dialog.cpp:2659 -msgid "Flood Color:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2659 -msgid "The whole filter region will be filled with this color." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2663 -msgid "Standard Deviation:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2663 -msgid "The standard deviation for the blur operation." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2669 -msgid "" -"Erode: performs \"thinning\" of input image.\n" -"Dilate: performs \"fattenning\" of input image." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2673 -msgid "Source of Image:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 -msgid "Delta X:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2676 -msgid "This is how far the input image gets shifted to the right" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2677 -msgid "Delta Y:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2677 -msgid "This is how far the input image gets shifted downwards" -msgstr "" - -#. default: white -#: ../src/ui/dialog/filter-effects-dialog.cpp:2680 -msgid "Specular Color:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2683 -#: ../share/extensions/interp.inx.h:2 -msgid "Exponent:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2683 -msgid "Exponent for specular term, larger is more \"shiny\"." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2692 -msgid "" -"Indicates whether the filter primitive should perform a noise or turbulence " -"function." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2693 -msgid "Base Frequency:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2694 -msgid "Octaves:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2695 -msgid "Seed:" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2695 -msgid "The starting number for the pseudo random number generator." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2707 -msgid "Add filter primitive" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2724 -msgid "" -"The feBlend filter primitive provides 4 image blending modes: screen, " -"multiply, darken and lighten." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2728 -msgid "" -"The feColorMatrix filter primitive applies a matrix transformation to " -"color of each rendered pixel. This allows for effects like turning object to " -"grayscale, modifying color saturation and changing color hue." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2732 -msgid "" -"The feComponentTransfer filter primitive manipulates the input's " -"color components (red, green, blue, and alpha) according to particular " -"transfer functions, allowing operations like brightness and contrast " -"adjustment, color balance, and thresholding." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2736 -msgid "" -"The feComposite filter primitive composites two images using one of " -"the Porter-Duff blending modes or the arithmetic mode described in SVG " -"standard. Porter-Duff blending modes are essentially logical operations " -"between the corresponding pixel values of the images." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2740 -msgid "" -"The feConvolveMatrix lets you specify a Convolution to be applied on " -"the image. Common effects created using convolution matrices are blur, " -"sharpening, embossing and edge detection. Note that while gaussian blur can " -"be created using this filter primitive, the special gaussian blur primitive " -"is faster and resolution-independent." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2744 -msgid "" -"The feDiffuseLighting and feSpecularLighting filter primitives create " -"\"embossed\" shadings. The input's alpha channel is used to provide depth " -"information: higher opacity areas are raised toward the viewer and lower " -"opacity areas recede away from the viewer." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2748 -msgid "" -"The feDisplacementMap filter primitive displaces the pixels in the " -"first input using the second input as a displacement map, that shows from " -"how far the pixel should come from. Classical examples are whirl and pinch " -"effects." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2752 -msgid "" -"The feFlood filter primitive fills the region with a given color and " -"opacity. It is usually used as an input to other filters to apply color to " -"a graphic." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2756 -msgid "" -"The feGaussianBlur filter primitive uniformly blurs its input. It is " -"commonly used together with feOffset to create a drop shadow effect." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2760 -msgid "" -"The feImage filter primitive fills the region with an external image " -"or another part of the document." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2764 -msgid "" -"The feMerge filter primitive composites several temporary images " -"inside the filter primitive to a single image. It uses normal alpha " -"compositing for this. This is equivalent to using several feBlend primitives " -"in 'normal' mode or several feComposite primitives in 'over' mode." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2768 -msgid "" -"The feMorphology filter primitive provides erode and dilate effects. " -"For single-color objects erode makes the object thinner and dilate makes it " -"thicker." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2772 -msgid "" -"The feOffset filter primitive offsets the image by an user-defined " -"amount. For example, this is useful for drop shadows, where the shadow is in " -"a slightly different position than the actual object." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2776 -msgid "" -"The feDiffuseLighting and feSpecularLighting filter primitives " -"create \"embossed\" shadings. The input's alpha channel is used to provide " -"depth information: higher opacity areas are raised toward the viewer and " -"lower opacity areas recede away from the viewer." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2780 -msgid "" -"The feTile filter primitive tiles a region with its input graphic" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2784 -msgid "" -"The feTurbulence filter primitive renders Perlin noise. This kind of " -"noise is useful in simulating several nature phenomena like clouds, fire and " -"smoke and in generating complex textures like marble or granite." -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2803 -msgid "Duplicate filter primitive" -msgstr "" - -#: ../src/ui/dialog/filter-effects-dialog.cpp:2856 -msgid "Set filter primitive attribute" -msgstr "" - -#: ../src/ui/dialog/find.cpp:71 -msgid "F_ind:" -msgstr "" - -#: ../src/ui/dialog/find.cpp:71 -msgid "Find objects by their content or properties (exact or partial match)" -msgstr "" - -#: ../src/ui/dialog/find.cpp:72 -msgid "R_eplace:" -msgstr "" - -#: ../src/ui/dialog/find.cpp:72 -msgid "Replace match with this value" -msgstr "" - -#: ../src/ui/dialog/find.cpp:74 -msgid "_All" -msgstr "" - -#: ../src/ui/dialog/find.cpp:74 -msgid "Search in all layers" -msgstr "" - -#: ../src/ui/dialog/find.cpp:75 -msgid "Current _layer" -msgstr "" - -#: ../src/ui/dialog/find.cpp:75 -msgid "Limit search to the current layer" -msgstr "" - -#: ../src/ui/dialog/find.cpp:76 -msgid "Sele_ction" -msgstr "" - -#: ../src/ui/dialog/find.cpp:76 -msgid "Limit search to the current selection" -msgstr "" - -#: ../src/ui/dialog/find.cpp:77 -msgid "Search in text objects" -msgstr "" - -#: ../src/ui/dialog/find.cpp:78 -msgid "_Properties" -msgstr "" - -#: ../src/ui/dialog/find.cpp:78 -msgid "Search in object properties, styles, attributes and IDs" -msgstr "" - -#: ../src/ui/dialog/find.cpp:80 -msgid "Search in" -msgstr "" - -#: ../src/ui/dialog/find.cpp:81 -msgid "Scope" -msgstr "" - -#: ../src/ui/dialog/find.cpp:83 -msgid "Case sensiti_ve" -msgstr "" - -#: ../src/ui/dialog/find.cpp:83 -msgid "Match upper/lower case" -msgstr "" - -#: ../src/ui/dialog/find.cpp:84 -msgid "E_xact match" -msgstr "" - -#: ../src/ui/dialog/find.cpp:84 -msgid "Match whole objects only" -msgstr "" - -#: ../src/ui/dialog/find.cpp:85 -msgid "Include _hidden" -msgstr "" - -#: ../src/ui/dialog/find.cpp:85 -msgid "Include hidden objects in search" -msgstr "" - -#: ../src/ui/dialog/find.cpp:86 -msgid "Include loc_ked" -msgstr "" - -#: ../src/ui/dialog/find.cpp:86 -msgid "Include locked objects in search" -msgstr "" - -#: ../src/ui/dialog/find.cpp:88 -msgid "General" -msgstr "" - -#: ../src/ui/dialog/find.cpp:90 -msgid "_ID" -msgstr "" - -#: ../src/ui/dialog/find.cpp:90 -msgid "Search id name" -msgstr "" - -#: ../src/ui/dialog/find.cpp:91 -msgid "Attribute _name" -msgstr "" - -#: ../src/ui/dialog/find.cpp:91 -msgid "Search attribute name" -msgstr "" - -#: ../src/ui/dialog/find.cpp:92 -msgid "Attri_bute value" -msgstr "" - -#: ../src/ui/dialog/find.cpp:92 -msgid "Search attribute value" -msgstr "" - -#: ../src/ui/dialog/find.cpp:93 -msgid "_Style" -msgstr "" - -#: ../src/ui/dialog/find.cpp:93 -msgid "Search style" -msgstr "" - -#: ../src/ui/dialog/find.cpp:94 -msgid "F_ont" -msgstr "" - -#: ../src/ui/dialog/find.cpp:94 -msgid "Search fonts" -msgstr "" - -#: ../src/ui/dialog/find.cpp:95 -msgid "Properties" -msgstr "" - -#: ../src/ui/dialog/find.cpp:97 -msgid "All types" -msgstr "" - -#: ../src/ui/dialog/find.cpp:97 -msgid "Search all object types" -msgstr "" - -#: ../src/ui/dialog/find.cpp:98 -msgid "Rectangles" -msgstr "" - -#: ../src/ui/dialog/find.cpp:98 -msgid "Search rectangles" -msgstr "" - -#: ../src/ui/dialog/find.cpp:99 -msgid "Ellipses" -msgstr "" - -#: ../src/ui/dialog/find.cpp:99 -msgid "Search ellipses, arcs, circles" -msgstr "" - -#: ../src/ui/dialog/find.cpp:100 -msgid "Stars" -msgstr "" - -#: ../src/ui/dialog/find.cpp:100 -msgid "Search stars and polygons" -msgstr "" - -#: ../src/ui/dialog/find.cpp:101 -msgid "Spirals" -msgstr "" - -#: ../src/ui/dialog/find.cpp:101 -msgid "Search spirals" -msgstr "" - -#: ../src/ui/dialog/find.cpp:102 ../src/widgets/toolbox.cpp:1736 -msgid "Paths" -msgstr "" - -#: ../src/ui/dialog/find.cpp:102 -msgid "Search paths, lines, polylines" -msgstr "" - -#: ../src/ui/dialog/find.cpp:103 -msgid "Texts" -msgstr "" - -#: ../src/ui/dialog/find.cpp:103 -msgid "Search text objects" -msgstr "" - -#: ../src/ui/dialog/find.cpp:104 -msgid "Groups" -msgstr "" - -#: ../src/ui/dialog/find.cpp:104 -msgid "Search groups" -msgstr "" - -#. TRANSLATORS: "Clones" is a noun indicating type of object to find -#: ../src/ui/dialog/find.cpp:107 -msgctxt "Find dialog" -msgid "Clones" -msgstr "" - -#: ../src/ui/dialog/find.cpp:107 -msgid "Search clones" -msgstr "" - -#: ../src/ui/dialog/find.cpp:109 ../share/extensions/embedimage.inx.h:3 -#: ../share/extensions/extractimage.inx.h:5 -msgid "Images" -msgstr "" - -#: ../src/ui/dialog/find.cpp:109 -msgid "Search images" -msgstr "" - -#: ../src/ui/dialog/find.cpp:110 -msgid "Offsets" -msgstr "" - -#: ../src/ui/dialog/find.cpp:110 -msgid "Search offset objects" -msgstr "" - -#: ../src/ui/dialog/find.cpp:111 -msgid "Object types" -msgstr "" - -#: ../src/ui/dialog/find.cpp:114 -msgid "_Find" -msgstr "" - -#: ../src/ui/dialog/find.cpp:114 -msgid "Select all objects matching the selection criteria" -msgstr "" - -#: ../src/ui/dialog/find.cpp:115 -msgid "_Replace All" -msgstr "" - -#: ../src/ui/dialog/find.cpp:115 -msgid "Replace all matches" -msgstr "" - -#: ../src/ui/dialog/find.cpp:775 -msgid "Nothing to replace" -msgstr "" - -#. TRANSLATORS: "%s" is replaced with "exact" or "partial" when this string is displayed -#: ../src/ui/dialog/find.cpp:816 -#, c-format -msgid "%d object found (out of %d), %s match." -msgid_plural "%d objects found (out of %d), %s match." -msgstr[0] "" -msgstr[1] "" - -#: ../src/ui/dialog/find.cpp:819 -msgid "exact" -msgstr "" - -#: ../src/ui/dialog/find.cpp:819 -msgid "partial" -msgstr "" - -#. TRANSLATORS: "%1" is replaced with the number of matches -#: ../src/ui/dialog/find.cpp:822 -msgid "%1 match replaced" -msgid_plural "%1 matches replaced" -msgstr[0] "" -msgstr[1] "" - -#. TRANSLATORS: "%1" is replaced with the number of matches -#: ../src/ui/dialog/find.cpp:826 -msgid "%1 object found" -msgid_plural "%1 objects found" -msgstr[0] "" -msgstr[1] "" - -#: ../src/ui/dialog/find.cpp:837 -msgid "Replace text or property" -msgstr "" - -#: ../src/ui/dialog/find.cpp:841 -msgid "Nothing found" -msgstr "" - -#: ../src/ui/dialog/find.cpp:846 -msgid "No objects found" -msgstr "" - -#: ../src/ui/dialog/find.cpp:867 -msgid "Select an object type" -msgstr "" - -#: ../src/ui/dialog/find.cpp:885 -msgid "Select a property" -msgstr "" - -#: ../src/ui/dialog/font-substitution.cpp:87 -msgid "" -"\n" -"Some fonts are not available and have been substituted." -msgstr "" - -#: ../src/ui/dialog/font-substitution.cpp:90 -msgid "Font substitution" -msgstr "" - -#: ../src/ui/dialog/font-substitution.cpp:109 -msgid "Select all the affected items" -msgstr "" - -#: ../src/ui/dialog/font-substitution.cpp:114 -msgid "Don't show this warning again" -msgstr "" - -#: ../src/ui/dialog/font-substitution.cpp:255 -msgid "Font '%1' substituted with '%2'" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:60 ../src/ui/dialog/glyphs.cpp:152 -msgid "all" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:61 -msgid "common" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:62 -msgid "inherited" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:63 ../src/ui/dialog/glyphs.cpp:165 -msgid "Arabic" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:64 ../src/ui/dialog/glyphs.cpp:163 -msgid "Armenian" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:65 ../src/ui/dialog/glyphs.cpp:172 -msgid "Bengali" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:66 ../src/ui/dialog/glyphs.cpp:254 -msgid "Bopomofo" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:67 ../src/ui/dialog/glyphs.cpp:189 -msgid "Cherokee" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:68 ../src/ui/dialog/glyphs.cpp:242 -msgid "Coptic" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:69 ../src/ui/dialog/glyphs.cpp:161 -msgid "Cyrillic" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:70 -msgid "Deseret" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:71 ../src/ui/dialog/glyphs.cpp:171 -msgid "Devanagari" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:72 ../src/ui/dialog/glyphs.cpp:187 -msgid "Ethiopic" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:73 ../src/ui/dialog/glyphs.cpp:185 -msgid "Georgian" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:74 -msgid "Gothic" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:75 -msgid "Greek" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:76 ../src/ui/dialog/glyphs.cpp:174 -msgid "Gujarati" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:77 ../src/ui/dialog/glyphs.cpp:173 -msgid "Gurmukhi" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:78 -msgid "Han" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:79 -msgid "Hangul" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:80 ../src/ui/dialog/glyphs.cpp:164 -msgid "Hebrew" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:81 ../src/ui/dialog/glyphs.cpp:252 -msgid "Hiragana" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:82 ../src/ui/dialog/glyphs.cpp:178 -msgid "Kannada" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:83 ../src/ui/dialog/glyphs.cpp:253 -msgid "Katakana" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:84 ../src/ui/dialog/glyphs.cpp:197 -msgid "Khmer" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:85 ../src/ui/dialog/glyphs.cpp:182 -msgid "Lao" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:86 -msgid "Latin" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:87 ../src/ui/dialog/glyphs.cpp:179 -msgid "Malayalam" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:88 ../src/ui/dialog/glyphs.cpp:198 -msgid "Mongolian" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:89 ../src/ui/dialog/glyphs.cpp:184 -msgid "Myanmar" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:90 ../src/ui/dialog/glyphs.cpp:191 -msgid "Ogham" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:91 -msgid "Old Italic" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:92 ../src/ui/dialog/glyphs.cpp:175 -msgid "Oriya" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:93 ../src/ui/dialog/glyphs.cpp:192 -msgid "Runic" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:94 ../src/ui/dialog/glyphs.cpp:180 -msgid "Sinhala" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:95 ../src/ui/dialog/glyphs.cpp:166 -msgid "Syriac" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:96 ../src/ui/dialog/glyphs.cpp:176 -msgid "Tamil" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:97 ../src/ui/dialog/glyphs.cpp:177 -msgid "Telugu" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:98 ../src/ui/dialog/glyphs.cpp:168 -msgid "Thaana" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:99 ../src/ui/dialog/glyphs.cpp:181 -msgid "Thai" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:100 ../src/ui/dialog/glyphs.cpp:183 -msgid "Tibetan" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:101 -msgid "Canadian Aboriginal" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:102 -msgid "Yi" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:103 ../src/ui/dialog/glyphs.cpp:193 -msgid "Tagalog" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:104 ../src/ui/dialog/glyphs.cpp:194 -msgid "Hanunoo" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:105 ../src/ui/dialog/glyphs.cpp:195 -msgid "Buhid" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:106 ../src/ui/dialog/glyphs.cpp:196 -msgid "Tagbanwa" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:107 -msgid "Braille" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:108 -msgid "Cypriot" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:109 ../src/ui/dialog/glyphs.cpp:200 -msgid "Limbu" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:110 -msgid "Osmanya" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:111 -msgid "Shavian" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:112 -msgid "Linear B" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:113 ../src/ui/dialog/glyphs.cpp:201 -msgid "Tai Le" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:114 -msgid "Ugaritic" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:115 ../src/ui/dialog/glyphs.cpp:202 -msgid "New Tai Lue" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:116 ../src/ui/dialog/glyphs.cpp:204 -msgid "Buginese" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:117 ../src/ui/dialog/glyphs.cpp:240 -msgid "Glagolitic" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:118 ../src/ui/dialog/glyphs.cpp:244 -msgid "Tifinagh" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:119 ../src/ui/dialog/glyphs.cpp:273 -msgid "Syloti Nagri" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:120 -msgid "Old Persian" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:121 -msgid "Kharoshthi" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:122 -msgid "unassigned" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:123 ../src/ui/dialog/glyphs.cpp:206 -msgid "Balinese" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:124 -msgid "Cuneiform" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:125 -msgid "Phoenician" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:126 ../src/ui/dialog/glyphs.cpp:275 -msgid "Phags-pa" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:127 -msgid "N'Ko" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:128 ../src/ui/dialog/glyphs.cpp:278 -msgid "Kayah Li" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:129 ../src/ui/dialog/glyphs.cpp:208 -msgid "Lepcha" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:130 ../src/ui/dialog/glyphs.cpp:279 -msgid "Rejang" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:131 ../src/ui/dialog/glyphs.cpp:207 -msgid "Sundanese" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:132 ../src/ui/dialog/glyphs.cpp:276 -msgid "Saurashtra" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:133 ../src/ui/dialog/glyphs.cpp:282 -msgid "Cham" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:134 ../src/ui/dialog/glyphs.cpp:209 -msgid "Ol Chiki" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:135 ../src/ui/dialog/glyphs.cpp:268 -msgid "Vai" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:136 -msgid "Carian" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:137 -msgid "Lycian" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:138 -msgid "Lydian" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:153 -msgid "Basic Latin" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:154 -msgid "Latin-1 Supplement" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:155 -msgid "Latin Extended-A" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:156 -msgid "Latin Extended-B" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:157 -msgid "IPA Extensions" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:158 -msgid "Spacing Modifier Letters" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:159 -msgid "Combining Diacritical Marks" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:160 -msgid "Greek and Coptic" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:162 -msgid "Cyrillic Supplement" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:167 -msgid "Arabic Supplement" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:169 -msgid "NKo" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:170 -msgid "Samaritan" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:186 -msgid "Hangul Jamo" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:188 -msgid "Ethiopic Supplement" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:190 -msgid "Unified Canadian Aboriginal Syllabics" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:199 -msgid "Unified Canadian Aboriginal Syllabics Extended" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:203 -msgid "Khmer Symbols" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:205 -msgid "Tai Tham" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:210 -msgid "Vedic Extensions" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:211 -msgid "Phonetic Extensions" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:212 -msgid "Phonetic Extensions Supplement" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:213 -msgid "Combining Diacritical Marks Supplement" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:214 -msgid "Latin Extended Additional" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:215 -msgid "Greek Extended" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:216 -msgid "General Punctuation" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:217 -msgid "Superscripts and Subscripts" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:218 -msgid "Currency Symbols" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:219 -msgid "Combining Diacritical Marks for Symbols" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:220 -msgid "Letterlike Symbols" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:221 -msgid "Number Forms" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:222 -msgid "Arrows" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:223 -msgid "Mathematical Operators" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:224 -msgid "Miscellaneous Technical" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:225 -msgid "Control Pictures" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:226 -msgid "Optical Character Recognition" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:227 -msgid "Enclosed Alphanumerics" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:228 -msgid "Box Drawing" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:229 -msgid "Block Elements" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:230 -msgid "Geometric Shapes" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:231 -msgid "Miscellaneous Symbols" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:232 -msgid "Dingbats" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:233 -msgid "Miscellaneous Mathematical Symbols-A" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:234 -msgid "Supplemental Arrows-A" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:235 -msgid "Braille Patterns" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:236 -msgid "Supplemental Arrows-B" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:237 -msgid "Miscellaneous Mathematical Symbols-B" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:238 -msgid "Supplemental Mathematical Operators" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:239 -msgid "Miscellaneous Symbols and Arrows" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:241 -msgid "Latin Extended-C" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:243 -msgid "Georgian Supplement" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:245 -msgid "Ethiopic Extended" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:246 -msgid "Cyrillic Extended-A" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:247 -msgid "Supplemental Punctuation" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:248 -msgid "CJK Radicals Supplement" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:249 -msgid "Kangxi Radicals" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:250 -msgid "Ideographic Description Characters" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:251 -msgid "CJK Symbols and Punctuation" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:255 -msgid "Hangul Compatibility Jamo" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:256 -msgid "Kanbun" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:257 -msgid "Bopomofo Extended" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:258 -msgid "CJK Strokes" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:259 -msgid "Katakana Phonetic Extensions" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:260 -msgid "Enclosed CJK Letters and Months" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:261 -msgid "CJK Compatibility" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:262 -msgid "CJK Unified Ideographs Extension A" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:263 -msgid "Yijing Hexagram Symbols" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:264 -msgid "CJK Unified Ideographs" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:265 -msgid "Yi Syllables" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:266 -msgid "Yi Radicals" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:267 -msgid "Lisu" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:269 -msgid "Cyrillic Extended-B" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:270 -msgid "Bamum" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:271 -msgid "Modifier Tone Letters" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:272 -msgid "Latin Extended-D" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:274 -msgid "Common Indic Number Forms" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:277 -msgid "Devanagari Extended" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:280 -msgid "Hangul Jamo Extended-A" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:281 -msgid "Javanese" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:283 -msgid "Myanmar Extended-A" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:284 -msgid "Tai Viet" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:285 -msgid "Meetei Mayek" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:286 -msgid "Hangul Syllables" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:287 -msgid "Hangul Jamo Extended-B" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:288 -msgid "High Surrogates" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:289 -msgid "High Private Use Surrogates" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:290 -msgid "Low Surrogates" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:291 -msgid "Private Use Area" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:292 -msgid "CJK Compatibility Ideographs" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:293 -msgid "Alphabetic Presentation Forms" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:294 -msgid "Arabic Presentation Forms-A" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:295 -msgid "Variation Selectors" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:296 -msgid "Vertical Forms" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:297 -msgid "Combining Half Marks" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:298 -msgid "CJK Compatibility Forms" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:299 -msgid "Small Form Variants" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:300 -msgid "Arabic Presentation Forms-B" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:301 -msgid "Halfwidth and Fullwidth Forms" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:302 -msgid "Specials" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:377 -msgid "Script: " -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:414 -msgid "Range: " -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:497 -msgid "Append" -msgstr "" - -#: ../src/ui/dialog/glyphs.cpp:618 -msgid "Append text" -msgstr "" - -#: ../src/ui/dialog/guides.cpp:47 -msgid "Rela_tive change" -msgstr "" - -#: ../src/ui/dialog/guides.cpp:47 -msgid "Move and/or rotate the guide relative to current settings" -msgstr "" - -#: ../src/ui/dialog/guides.cpp:48 -msgctxt "Guides" -msgid "_X:" -msgstr "" - -#: ../src/ui/dialog/guides.cpp:49 -msgctxt "Guides" -msgid "_Y:" -msgstr "" - -#: ../src/ui/dialog/guides.cpp:50 ../src/ui/dialog/object-properties.cpp:62 -msgid "_Label:" -msgstr "" - -#: ../src/ui/dialog/guides.cpp:50 -msgid "Optionally give this guideline a name" -msgstr "" - -#: ../src/ui/dialog/guides.cpp:51 -msgid "_Angle:" -msgstr "" - -#: ../src/ui/dialog/guides.cpp:131 -msgid "Set guide properties" -msgstr "" - -#: ../src/ui/dialog/guides.cpp:170 -msgid "Guideline" -msgstr "" - -#: ../src/ui/dialog/guides.cpp:323 -#, c-format -msgid "Guideline ID: %s" -msgstr "" - -#: ../src/ui/dialog/guides.cpp:329 -#, c-format -msgid "Current: %s" -msgstr "" - -#: ../src/ui/dialog/icon-preview.cpp:159 -#, c-format -msgid "%d x %d" -msgstr "" - -#: ../src/ui/dialog/icon-preview.cpp:171 -msgid "Magnified:" -msgstr "" - -#: ../src/ui/dialog/icon-preview.cpp:240 -msgid "Actual Size:" -msgstr "" - -#: ../src/ui/dialog/icon-preview.cpp:245 -msgctxt "Icon preview window" -msgid "Sele_ction" -msgstr "" - -#: ../src/ui/dialog/icon-preview.cpp:247 -msgid "Selection only or whole document" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:181 -msgid "Show selection cue" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:182 -msgid "" -"Whether selected objects display a selection cue (the same as in selector)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:188 -msgid "Enable gradient editing" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:189 -msgid "Whether selected objects display gradient editing controls" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:194 -msgid "Conversion to guides uses edges instead of bounding box" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:195 -msgid "" -"Converting an object to guides places these along the object's true edges " -"(imitating the object's shape), not along the bounding box" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:202 -msgid "Ctrl+click _dot size:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:202 -msgid "times current stroke width" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:203 -msgid "Size of dots created with Ctrl+click (relative to current stroke width)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:218 -msgid "No objects selected to take the style from." -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:227 -msgid "" -"More than one object selected. Cannot take style from multiple " -"objects." -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:260 -msgid "Style of new objects" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:262 -msgid "Last used style" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:264 -msgid "Apply the style you last set on an object" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:269 -msgid "This tool's own style:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:273 -msgid "" -"Each tool may store its own style to apply to the newly created objects. Use " -"the button below to set it." -msgstr "" - -#. style swatch -#: ../src/ui/dialog/inkscape-preferences.cpp:277 -msgid "Take from selection" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:282 -msgid "This tool's style of new objects" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:289 -msgid "Remember the style of the (first) selected object as this tool's style" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:294 -msgid "Tools" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:297 -msgid "Bounding box to use" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:298 -msgid "Visual bounding box" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:300 -msgid "This bounding box includes stroke width, markers, filter margins, etc." -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:301 -msgid "Geometric bounding box" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:303 -msgid "This bounding box includes only the bare path" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:305 -msgid "Conversion to guides" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:306 -msgid "Keep objects after conversion to guides" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:308 -msgid "" -"When converting an object to guides, don't delete the object after the " -"conversion" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:309 -msgid "Treat groups as a single object" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:311 -msgid "" -"Treat groups as a single object during conversion to guides rather than " -"converting each child separately" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:313 -msgid "Average all sketches" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:314 -msgid "Width is in absolute units" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:315 -msgid "Select new path" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:316 -msgid "Don't attach connectors to text objects" -msgstr "" - -#. Selector -#: ../src/ui/dialog/inkscape-preferences.cpp:319 -msgid "Selector" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:324 -msgid "When transforming, show" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:325 -msgid "Objects" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:327 -msgid "Show the actual objects when moving or transforming" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:328 -msgid "Box outline" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:330 -msgid "Show only a box outline of the objects when moving or transforming" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:331 -msgid "Per-object selection cue" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:334 -msgid "No per-object selection indication" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:335 -msgid "Mark" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:337 -msgid "Each selected object has a diamond mark in the top left corner" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:338 -msgid "Box" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:340 -msgid "Each selected object displays its bounding box" -msgstr "" - -#. Node -#: ../src/ui/dialog/inkscape-preferences.cpp:343 -msgid "Node" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:346 -msgid "Path outline" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:347 -msgid "Path outline color" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:348 -msgid "Selects the color used for showing the path outline" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:349 -msgid "Always show outline" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:350 -msgid "Show outlines for all paths, not only invisible paths" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:351 -msgid "Update outline when dragging nodes" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:352 -msgid "" -"Update the outline when dragging or transforming nodes; if this is off, the " -"outline will only update when completing a drag" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:353 -msgid "Update paths when dragging nodes" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:354 -msgid "" -"Update paths when dragging or transforming nodes; if this is off, paths will " -"only be updated when completing a drag" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:355 -msgid "Show path direction on outlines" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:356 -msgid "" -"Visualize the direction of selected paths by drawing small arrows in the " -"middle of each outline segment" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:357 -msgid "Show temporary path outline" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:358 -msgid "When hovering over a path, briefly flash its outline" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:359 -msgid "Show temporary outline for selected paths" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:360 -msgid "Show temporary outline even when a path is selected for editing" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:362 -msgid "_Flash time:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:362 -msgid "" -"Specifies how long the path outline will be visible after a mouse-over (in " -"milliseconds); specify 0 to have the outline shown until mouse leaves the " -"path" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:363 -msgid "Editing preferences" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:364 -msgid "Show transform handles for single nodes" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:365 -msgid "Show transform handles even when only a single node is selected" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:366 -msgid "Deleting nodes preserves shape" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:367 -msgid "" -"Move handles next to deleted nodes to resemble original shape; hold Ctrl to " -"get the other behavior" -msgstr "" - -#. Tweak -#: ../src/ui/dialog/inkscape-preferences.cpp:370 -msgid "Tweak" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:371 -msgid "Object paint style" -msgstr "" - -#. Zoom -#: ../src/ui/dialog/inkscape-preferences.cpp:376 -#: ../src/widgets/desktop-widget.cpp:631 -msgid "Zoom" -msgstr "" - -#. Measure -#: ../src/ui/dialog/inkscape-preferences.cpp:381 ../src/verbs.cpp:2619 -msgctxt "ContextVerb" -msgid "Measure" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:383 -msgid "Ignore first and last points" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:384 -msgid "" -"The start and end of the measurement tool's control line will not be " -"considered for calculating lengths. Only lengths between actual curve " -"intersections will be displayed." -msgstr "" - -#. Shapes -#: ../src/ui/dialog/inkscape-preferences.cpp:387 -msgid "Shapes" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:419 -msgid "Sketch mode" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:421 -msgid "" -"If on, the sketch result will be the normal average of all sketches made, " -"instead of averaging the old result with the new sketch" -msgstr "" - -#. Pen -#: ../src/ui/dialog/inkscape-preferences.cpp:424 -#: ../src/ui/dialog/input.cpp:1485 -msgid "Pen" -msgstr "" - -#. Calligraphy -#: ../src/ui/dialog/inkscape-preferences.cpp:430 -msgid "Calligraphy" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:434 -msgid "" -"If on, pen width is in absolute units (px) independent of zoom; otherwise " -"pen width depends on zoom so that it looks the same at any zoom" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:436 -msgid "" -"If on, each newly created object will be selected (deselecting previous " -"selection)" -msgstr "" - -#. Text -#: ../src/ui/dialog/inkscape-preferences.cpp:439 ../src/verbs.cpp:2611 -msgctxt "ContextVerb" -msgid "Text" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:444 -msgid "Show font samples in the drop-down list" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:445 -msgid "" -"Show font samples alongside font names in the drop-down list in Text bar" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:447 -msgid "Show font substitution warning dialog" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:448 -msgid "" -"Show font substitution warning dialog when requested fonts are not available " -"on the system" -msgstr "" - -#. , _("Ex square"), _("Percent") -#. , SP_CSS_UNIT_EX, SP_CSS_UNIT_PERCENT -#: ../src/ui/dialog/inkscape-preferences.cpp:454 -msgid "Text units" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:456 -msgid "Text size unit type:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:457 -msgid "Set the type of unit used in the text toolbar and text dialogs" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:458 -msgid "Always output text size in pixels (px)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:459 -msgid "" -"Always convert the text size units above into pixels (px) before saving to " -"file" -msgstr "" - -#. Spray -#: ../src/ui/dialog/inkscape-preferences.cpp:464 -msgid "Spray" -msgstr "" - -#. Eraser -#: ../src/ui/dialog/inkscape-preferences.cpp:469 -msgid "Eraser" -msgstr "" - -#. Paint Bucket -#: ../src/ui/dialog/inkscape-preferences.cpp:473 -msgid "Paint Bucket" -msgstr "" - -#. Gradient -#: ../src/ui/dialog/inkscape-preferences.cpp:478 -#: ../src/widgets/gradient-selector.cpp:150 -#: ../src/widgets/gradient-selector.cpp:302 -msgid "Gradient" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:480 -msgid "Prevent sharing of gradient definitions" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:482 -msgid "" -"When on, shared gradient definitions are automatically forked on change; " -"uncheck to allow sharing of gradient definitions so that editing one object " -"may affect other objects using the same gradient" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:483 -msgid "Use legacy Gradient Editor" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:485 -msgid "" -"When on, the Gradient Edit button in the Fill & Stroke dialog will show the " -"legacy Gradient Editor dialog, when off the Gradient Tool will be used" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:488 -msgid "Linear gradient _angle:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:489 -msgid "" -"Default angle of new linear gradients in degrees (clockwise from horizontal)" -msgstr "" - -#. Dropper -#: ../src/ui/dialog/inkscape-preferences.cpp:493 -msgid "Dropper" -msgstr "" - -#. Connector -#: ../src/ui/dialog/inkscape-preferences.cpp:498 -msgid "Connector" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:501 -msgid "If on, connector attachment points will not be shown for text objects" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:511 -msgid "Interface" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:514 -msgid "System default" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:514 -msgid "Albanian (sq)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:514 -msgid "Amharic (am)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:514 -msgid "Arabic (ar)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:514 -msgid "Armenian (hy)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:514 -msgid "Azerbaijani (az)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:514 -msgid "Basque (eu)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:514 -msgid "Belarusian (be)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:515 -msgid "Bulgarian (bg)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:515 -msgid "Bengali (bn)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:515 -msgid "Bengali/Bangladesh (bn_BD)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:515 -msgid "Breton (br)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:515 -msgid "Catalan (ca)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:515 -msgid "Valencian Catalan (ca@valencia)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:515 -msgid "Chinese/China (zh_CN)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:516 -msgid "Chinese/Taiwan (zh_TW)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:516 -msgid "Croatian (hr)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:516 -msgid "Czech (cs)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:517 -msgid "Danish (da)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:517 -msgid "Dutch (nl)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:517 -msgid "Dzongkha (dz)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:517 -msgid "German (de)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:517 -msgid "Greek (el)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:517 -msgid "English (en)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:517 -msgid "English/Australia (en_AU)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:518 -msgid "English/Canada (en_CA)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:518 -msgid "English/Great Britain (en_GB)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:518 -msgid "Pig Latin (en_US@piglatin)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:519 -msgid "Esperanto (eo)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:519 -msgid "Estonian (et)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:519 -msgid "Farsi (fa)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:519 -msgid "Finnish (fi)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:520 -msgid "French (fr)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:520 -msgid "Irish (ga)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:520 -msgid "Galician (gl)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:520 -msgid "Hebrew (he)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:520 -msgid "Hungarian (hu)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:521 -msgid "Indonesian (id)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:521 -msgid "Italian (it)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:521 -msgid "Japanese (ja)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:521 -msgid "Khmer (km)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:521 -msgid "Kinyarwanda (rw)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:521 -msgid "Korean (ko)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:521 -msgid "Lithuanian (lt)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:521 -msgid "Latvian (lv)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:521 -msgid "Macedonian (mk)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:522 -msgid "Mongolian (mn)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:522 -msgid "Nepali (ne)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:522 -msgid "Norwegian Bokmål (nb)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:522 -msgid "Norwegian Nynorsk (nn)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:522 -msgid "Panjabi (pa)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:523 -msgid "Polish (pl)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:523 -msgid "Portuguese (pt)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:523 -msgid "Portuguese/Brazil (pt_BR)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:523 -msgid "Romanian (ro)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:523 -msgid "Russian (ru)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:524 -msgid "Serbian (sr)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:524 -msgid "Serbian in Latin script (sr@latin)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:524 -msgid "Slovak (sk)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:524 -msgid "Slovenian (sl)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:524 -msgid "Spanish (es)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:524 -msgid "Spanish/Mexico (es_MX)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:525 -msgid "Swedish (sv)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:525 -msgid "Telugu (te_IN)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:525 -msgid "Thai (th)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:525 -msgid "Turkish (tr)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:525 -msgid "Ukrainian (uk)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:525 -msgid "Vietnamese (vi)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:557 -msgid "Language (requires restart):" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:558 -msgid "Set the language for menus and number formats" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:561 -#: ../src/ui/dialog/inkscape-preferences.cpp:646 -msgid "Large" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:561 -#: ../src/ui/dialog/inkscape-preferences.cpp:646 -msgid "Small" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:561 -msgid "Smaller" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:565 -msgid "Toolbox icon size:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:566 -msgid "Set the size for the tool icons (requires restart)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:569 -msgid "Control bar icon size:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:570 -msgid "" -"Set the size for the icons in tools' control bars to use (requires restart)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:573 -msgid "Secondary toolbar icon size:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:574 -msgid "" -"Set the size for the icons in secondary toolbars to use (requires restart)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:577 -msgid "Work-around color sliders not drawing" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:579 -msgid "" -"When on, will attempt to work around bugs in certain GTK themes drawing " -"color sliders" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:584 -msgid "Clear list" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:587 -msgid "Maximum documents in Open _Recent:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:588 -msgid "" -"Set the maximum length of the Open Recent list in the File menu, or clear " -"the list" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:591 -msgid "_Zoom correction factor (in %):" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:592 -msgid "" -"Adjust the slider until the length of the ruler on your screen matches its " -"real length. This information is used when zooming to 1:1, 1:2, etc., to " -"display objects in their true sizes" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:595 -msgid "Enable dynamic relayout for incomplete sections" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:597 -msgid "" -"When on, will allow dynamic layout of components that are not completely " -"finished being refactored" -msgstr "" - -#. show infobox -#: ../src/ui/dialog/inkscape-preferences.cpp:600 -msgid "Show filter primitives infobox (requires restart)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:602 -msgid "" -"Show icons and descriptions for the filter primitives available at the " -"filter effects dialog" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:605 -#: ../src/ui/dialog/inkscape-preferences.cpp:613 -msgid "Icons only" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:605 -#: ../src/ui/dialog/inkscape-preferences.cpp:613 -msgid "Text only" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:605 -#: ../src/ui/dialog/inkscape-preferences.cpp:613 -msgid "Icons and text" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:610 -msgid "Dockbar style (requires restart):" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:611 -msgid "" -"Selects whether the vertical bars on the dockbar will show text labels, " -"icons, or both" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:618 -msgid "Switcher style (requires restart):" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:619 -msgid "" -"Selects whether the dockbar switcher will show text labels, icons, or both" -msgstr "" - -#. Windows -#: ../src/ui/dialog/inkscape-preferences.cpp:623 -msgid "Save and restore window geometry for each document" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:624 -msgid "Remember and use last window's geometry" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:625 -msgid "Don't save window geometry" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:627 -msgid "Save and restore dialogs status" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:628 -#: ../src/ui/dialog/inkscape-preferences.cpp:664 -msgid "Don't save dialogs status" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:630 -#: ../src/ui/dialog/inkscape-preferences.cpp:672 -msgid "Dockable" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:634 -msgid "Native open/save dialogs" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:635 -msgid "GTK open/save dialogs" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:637 -msgid "Dialogs are hidden in taskbar" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:638 -msgid "Save and restore documents viewport" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:639 -msgid "Zoom when window is resized" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:640 -msgid "Show close button on dialogs" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:643 -msgid "Aggressive" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:646 -msgid "Maximized" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:650 -msgid "Default window size:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:651 -msgid "Set the default window size" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:654 -msgid "Saving window geometry (size and position)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:656 -msgid "Let the window manager determine placement of all windows" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:658 -msgid "" -"Remember and use the last window's geometry (saves geometry to user " -"preferences)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:660 -msgid "" -"Save and restore window geometry for each document (saves geometry in the " -"document)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:662 -msgid "Saving dialogs status" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:666 -msgid "" -"Save and restore dialogs status (the last open windows dialogs are saved " -"when it closes)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:670 -msgid "Dialog behavior (requires restart)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:676 -msgid "Desktop integration" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:678 -msgid "Use Windows like open and save dialogs" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:680 -msgid "Use GTK open and save dialogs " -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:684 -msgid "Dialogs on top:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:687 -msgid "Dialogs are treated as regular windows" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:689 -msgid "Dialogs stay on top of document windows" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:691 -msgid "Same as Normal but may work better with some window managers" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:694 -msgid "Dialog Transparency" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:696 -msgid "_Opacity when focused:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:698 -msgid "Opacity when _unfocused:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:700 -msgid "_Time of opacity change animation:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:703 -msgid "Miscellaneous" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:706 -msgid "Whether dialog windows are to be hidden in the window manager taskbar" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:709 -msgid "" -"Zoom drawing when document window is resized, to keep the same area visible " -"(this is the default which can be changed in any window using the button " -"above the right scrollbar)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:711 -msgid "" -"Save documents viewport (zoom and panning position). Useful to turn off when " -"sharing version controlled files." -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:713 -msgid "Whether dialog windows have a close button (requires restart)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:714 -msgid "Windows" -msgstr "" - -#. Grids -#: ../src/ui/dialog/inkscape-preferences.cpp:717 -msgid "Line color when zooming out" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:720 -msgid "The gridlines will be shown in minor grid line color" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:722 -msgid "The gridlines will be shown in major grid line color" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:724 -msgid "Default grid settings" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:730 -#: ../src/ui/dialog/inkscape-preferences.cpp:755 -msgid "Grid units:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:735 -#: ../src/ui/dialog/inkscape-preferences.cpp:760 -msgid "Origin X:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:736 -#: ../src/ui/dialog/inkscape-preferences.cpp:761 -msgid "Origin Y:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:741 -msgid "Spacing X:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:742 -#: ../src/ui/dialog/inkscape-preferences.cpp:764 -msgid "Spacing Y:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:744 -#: ../src/ui/dialog/inkscape-preferences.cpp:745 -#: ../src/ui/dialog/inkscape-preferences.cpp:769 -#: ../src/ui/dialog/inkscape-preferences.cpp:770 -msgid "Minor grid line color:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:745 -#: ../src/ui/dialog/inkscape-preferences.cpp:770 -msgid "Color used for normal grid lines" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:746 -#: ../src/ui/dialog/inkscape-preferences.cpp:747 -#: ../src/ui/dialog/inkscape-preferences.cpp:771 -#: ../src/ui/dialog/inkscape-preferences.cpp:772 -msgid "Major grid line color:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:747 -#: ../src/ui/dialog/inkscape-preferences.cpp:772 -msgid "Color used for major (highlighted) grid lines" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:749 -#: ../src/ui/dialog/inkscape-preferences.cpp:774 -msgid "Major grid line every:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:750 -msgid "Show dots instead of lines" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:751 -msgid "If set, display dots at gridpoints instead of gridlines" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:832 -msgid "Input/Output" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:835 -msgid "Use current directory for \"Save As ...\"" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:837 -msgid "" -"When this option is on, the \"Save as...\" and \"Save a Copy\" dialogs will " -"always open in the directory where the currently open document is; when it's " -"off, each will open in the directory where you last saved a file using it" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:839 -msgid "Add label comments to printing output" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:841 -msgid "" -"When on, a comment will be added to the raw print output, marking the " -"rendered output for an object with its label" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:843 -msgid "Add default metadata to new documents" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:845 -msgid "" -"Add default metadata to new documents. Default metadata can be set from " -"Document Properties->Metadata." -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:849 -msgid "_Grab sensitivity:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:849 -msgid "pixels (requires restart)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:850 -msgid "" -"How close on the screen you need to be to an object to be able to grab it " -"with mouse (in screen pixels)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:852 -msgid "_Click/drag threshold:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:852 -#: ../src/ui/dialog/inkscape-preferences.cpp:1190 -#: ../src/ui/dialog/inkscape-preferences.cpp:1194 -#: ../src/ui/dialog/inkscape-preferences.cpp:1204 -msgid "pixels" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:853 -msgid "" -"Maximum mouse drag (in screen pixels) which is considered a click, not a drag" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:856 -msgid "_Handle size:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:857 -msgid "Set the relative size of node handles" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:859 -msgid "Use pressure-sensitive tablet (requires restart)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:861 -msgid "" -"Use the capabilities of a tablet or other pressure-sensitive device. Disable " -"this only if you have problems with the tablet (you can still use it as a " -"mouse)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:863 -msgid "Switch tool based on tablet device (requires restart)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:865 -msgid "" -"Change tool as different devices are used on the tablet (pen, eraser, mouse)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:866 -msgid "Input devices" -msgstr "" - -#. SVG output options -#: ../src/ui/dialog/inkscape-preferences.cpp:869 -msgid "Use named colors" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:870 -msgid "" -"If set, write the CSS name of the color when available (e.g. 'red' or " -"'magenta') instead of the numeric value" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:872 -msgid "XML formatting" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:874 -msgid "Inline attributes" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:875 -msgid "Put attributes on the same line as the element tag" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:878 -msgid "_Indent, spaces:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:878 -msgid "" -"The number of spaces to use for indenting nested elements; set to 0 for no " -"indentation" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:880 -msgid "Path data" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:882 -msgid "Allow relative coordinates" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:883 -msgid "If set, relative coordinates may be used in path data" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:885 -msgid "Force repeat commands" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:886 -msgid "" -"Force repeating of the same path command (for example, 'L 1,2 L 3,4' instead " -"of 'L 1,2 3,4')" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:888 -msgid "Numbers" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:891 -msgid "_Numeric precision:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:891 -msgid "Significant figures of the values written to the SVG file" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:894 -msgid "Minimum _exponent:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:894 -msgid "" -"The smallest number written to SVG is 10 to the power of this exponent; " -"anything smaller is written as zero" -msgstr "" - -#. Code to add controls for attribute checking options -#. Add incorrect style properties options -#: ../src/ui/dialog/inkscape-preferences.cpp:899 -msgid "Improper Attributes Actions" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:901 -#: ../src/ui/dialog/inkscape-preferences.cpp:909 -#: ../src/ui/dialog/inkscape-preferences.cpp:917 -msgid "Print warnings" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:902 -msgid "" -"Print warning if invalid or non-useful attributes found. Database files " -"located in inkscape_data_dir/attributes." -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:903 -msgid "Remove attributes" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:904 -msgid "Delete invalid or non-useful attributes from element tag" -msgstr "" - -#. Add incorrect style properties options -#: ../src/ui/dialog/inkscape-preferences.cpp:907 -msgid "Inappropriate Style Properties Actions" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:910 -msgid "" -"Print warning if inappropriate style properties found (i.e. 'font-family' " -"set on a ). Database files located in inkscape_data_dir/attributes." -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:911 -#: ../src/ui/dialog/inkscape-preferences.cpp:919 -msgid "Remove style properties" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:912 -msgid "Delete inappropriate style properties" -msgstr "" - -#. Add default or inherited style properties options -#: ../src/ui/dialog/inkscape-preferences.cpp:915 -msgid "Non-useful Style Properties Actions" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:918 -msgid "" -"Print warning if redundant style properties found (i.e. if a property has " -"the default value and a different value is not inherited or if value is the " -"same as would be inherited). Database files located in inkscape_data_dir/" -"attributes." -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:920 -msgid "Delete redundant style properties" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:922 -msgid "Check Attributes and Style Properties on" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:924 -msgid "Reading" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:925 -msgid "" -"Check attributes and style properties on reading in SVG files (including " -"those internal to Inkscape which will slow down startup)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:926 -msgid "Editing" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:927 -msgid "" -"Check attributes and style properties while editing SVG files (may slow down " -"Inkscape, mostly useful for debugging)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:928 -msgid "Writing" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:929 -msgid "Check attributes and style properties on writing out SVG files" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:931 -msgid "SVG output" -msgstr "" - -#. TRANSLATORS: see http://www.newsandtech.com/issues/2004/03-04/pt/03-04_rendering.htm -#: ../src/ui/dialog/inkscape-preferences.cpp:937 -msgid "Perceptual" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:937 -msgid "Relative Colorimetric" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:937 -msgid "Absolute Colorimetric" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:941 -msgid "(Note: Color management has been disabled in this build)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:945 -msgid "Display adjustment" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:955 -#, c-format -msgid "" -"The ICC profile to use to calibrate display output.\n" -"Searched directories:%s" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:956 -msgid "Display profile:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:961 -msgid "Retrieve profile from display" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:964 -msgid "Retrieve profiles from those attached to displays via XICC" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:966 -msgid "Retrieve profiles from those attached to displays" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:971 -msgid "Display rendering intent:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:972 -msgid "The rendering intent to use to calibrate display output" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:974 -msgid "Proofing" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:976 -msgid "Simulate output on screen" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:978 -msgid "Simulates output of target device" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:980 -msgid "Mark out of gamut colors" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:982 -msgid "Highlights colors that are out of gamut for the target device" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:994 -msgid "Out of gamut warning color:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:995 -msgid "Selects the color used for out of gamut warning" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:997 -msgid "Device profile:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:998 -msgid "The ICC profile to use to simulate device output" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1001 -msgid "Device rendering intent:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1002 -msgid "The rendering intent to use to calibrate device output" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1004 -msgid "Black point compensation" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1006 -msgid "Enables black point compensation" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1008 -msgid "Preserve black" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1015 -msgid "(LittleCMS 1.15 or later required)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1017 -msgid "Preserve K channel in CMYK -> CMYK transforms" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1031 -#: ../src/widgets/sp-color-icc-selector.cpp:474 -#: ../src/widgets/sp-color-icc-selector.cpp:766 -msgid "" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1076 -msgid "Color management" -msgstr "" - -#. Autosave options -#: ../src/ui/dialog/inkscape-preferences.cpp:1079 -msgid "Enable autosave (requires restart)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1080 -msgid "" -"Automatically save the current document(s) at a given interval, thus " -"minimizing loss in case of a crash" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1086 -msgctxt "Filesystem" -msgid "Autosave _directory:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1086 -msgid "" -"The directory where autosaves will be written. This should be an absolute " -"path (starts with / on UNIX or a drive letter such as C: on Windows). " -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1088 -msgid "_Interval (in minutes):" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1088 -msgid "Interval (in minutes) at which document will be autosaved" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1090 -msgid "_Maximum number of autosaves:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1090 -msgid "" -"Maximum number of autosaved files; use this to limit the storage space used" -msgstr "" - -#. When changing the interval or enabling/disabling the autosave function, -#. * update our running configuration -#. * -#. * FIXME! -#. * the inkscape_autosave_init should be called AFTER the values have been changed -#. * (which cannot be guaranteed from here) - use a PrefObserver somewhere -#. -#. -#. _autosave_autosave_enable.signal_toggled().connect( sigc::ptr_fun(inkscape_autosave_init), TRUE ); -#. _autosave_autosave_interval.signal_changed().connect( sigc::ptr_fun(inkscape_autosave_init), TRUE ); -#. -#. ----------- -#: ../src/ui/dialog/inkscape-preferences.cpp:1105 -msgid "Autosave" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1109 -msgid "Open Clip Art Library _Server Name:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1110 -msgid "" -"The server name of the Open Clip Art Library webdav server; it's used by the " -"Import and Export to OCAL function" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1112 -msgid "Open Clip Art Library _Username:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1113 -msgid "The username used to log into Open Clip Art Library" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1115 -msgid "Open Clip Art Library _Password:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1116 -msgid "The password used to log into Open Clip Art Library" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1117 -msgid "Open Clip Art" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1122 -msgid "Behavior" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1126 -msgid "_Simplification threshold:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1127 -msgid "" -"How strong is the Node tool's Simplify command by default. If you invoke " -"this command several times in quick succession, it will act more and more " -"aggressively; invoking it again after a pause restores the default threshold." -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1129 -msgid "Color stock markers the same color as object" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1130 -msgid "Color custom markers the same color as object" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1131 -#: ../src/ui/dialog/inkscape-preferences.cpp:1341 -msgid "Update marker color when object color changes" -msgstr "" - -#. Selecting options -#: ../src/ui/dialog/inkscape-preferences.cpp:1134 -msgid "Select in all layers" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1135 -msgid "Select only within current layer" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1136 -msgid "Select in current layer and sublayers" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1137 -msgid "Ignore hidden objects and layers" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1138 -msgid "Ignore locked objects and layers" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1139 -msgid "Deselect upon layer change" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1142 -msgid "" -"Uncheck this to be able to keep the current objects selected when the " -"current layer changes" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1144 -msgid "Ctrl+A, Tab, Shift+Tab" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1146 -msgid "Make keyboard selection commands work on objects in all layers" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1148 -msgid "Make keyboard selection commands work on objects in current layer only" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1150 -msgid "" -"Make keyboard selection commands work on objects in current layer and all " -"its sublayers" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1152 -msgid "" -"Uncheck this to be able to select objects that are hidden (either by " -"themselves or by being in a hidden layer)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1154 -msgid "" -"Uncheck this to be able to select objects that are locked (either by " -"themselves or by being in a locked layer)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1156 -msgid "Wrap when cycling objects in z-order" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1158 -msgid "Alt+Scroll Wheel" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1160 -msgid "Wrap around at start and end when cycling objects in z-order" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1162 -msgid "Selecting" -msgstr "" - -#. Transforms options -#: ../src/ui/dialog/inkscape-preferences.cpp:1165 -#: ../src/widgets/select-toolbar.cpp:572 -msgid "Scale stroke width" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1166 -msgid "Scale rounded corners in rectangles" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1167 -msgid "Transform gradients" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1168 -msgid "Transform patterns" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1169 -msgid "Optimized" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1170 -msgid "Preserved" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1173 -#: ../src/widgets/select-toolbar.cpp:573 -msgid "When scaling objects, scale the stroke width by the same proportion" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1175 -#: ../src/widgets/select-toolbar.cpp:584 -msgid "When scaling rectangles, scale the radii of rounded corners" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1177 -#: ../src/widgets/select-toolbar.cpp:595 -msgid "Move gradients (in fill or stroke) along with the objects" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1179 -#: ../src/widgets/select-toolbar.cpp:606 -msgid "Move patterns (in fill or stroke) along with the objects" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1180 -msgid "Store transformation" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1182 -msgid "" -"If possible, apply transformation to objects without adding a transform= " -"attribute" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1184 -msgid "Always store transformation as a transform= attribute on objects" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1186 -msgid "Transforms" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1190 -msgid "Mouse _wheel scrolls by:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1191 -msgid "" -"One mouse wheel notch scrolls by this distance in screen pixels " -"(horizontally with Shift)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1192 -msgid "Ctrl+arrows" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1194 -msgid "Sc_roll by:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1195 -msgid "Pressing Ctrl+arrow key scrolls by this distance (in screen pixels)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1197 -msgid "_Acceleration:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1198 -msgid "" -"Pressing and holding Ctrl+arrow will gradually speed up scrolling (0 for no " -"acceleration)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1199 -msgid "Autoscrolling" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1201 -msgid "_Speed:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1202 -msgid "" -"How fast the canvas autoscrolls when you drag beyond canvas edge (0 to turn " -"autoscroll off)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1204 -#: ../src/ui/dialog/tracedialog.cpp:522 ../src/ui/dialog/tracedialog.cpp:721 -msgid "_Threshold:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1205 -msgid "" -"How far (in screen pixels) you need to be from the canvas edge to trigger " -"autoscroll; positive is outside the canvas, negative is within the canvas" -msgstr "" - -#. -#. _scroll_space.init ( _("Left mouse button pans when Space is pressed"), "/options/spacepans/value", false); -#. _page_scrolling.add_line( false, "", _scroll_space, "", -#. _("When on, pressing and holding Space and dragging with left mouse button pans canvas (as in Adobe Illustrator); when off, Space temporarily switches to Selector tool (default)")); -#. -#: ../src/ui/dialog/inkscape-preferences.cpp:1211 -msgid "Mouse wheel zooms by default" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1213 -msgid "" -"When on, mouse wheel zooms without Ctrl and scrolls canvas with Ctrl; when " -"off, it zooms with Ctrl and scrolls without Ctrl" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1214 -msgid "Scrolling" -msgstr "" - -#. Snapping options -#: ../src/ui/dialog/inkscape-preferences.cpp:1217 -msgid "Enable snap indicator" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1219 -msgid "After snapping, a symbol is drawn at the point that has snapped" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1222 -msgid "_Delay (in ms):" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1223 -msgid "" -"Postpone snapping as long as the mouse is moving, and then wait an " -"additional fraction of a second. This additional delay is specified here. " -"When set to zero or to a very small number, snapping will be immediate." -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1225 -msgid "Only snap the node closest to the pointer" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1227 -msgid "" -"Only try to snap the node that is initially closest to the mouse pointer" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1230 -msgid "_Weight factor:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1231 -msgid "" -"When multiple snap solutions are found, then Inkscape can either prefer the " -"closest transformation (when set to 0), or prefer the node that was " -"initially the closest to the pointer (when set to 1)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1233 -msgid "Snap the mouse pointer when dragging a constrained knot" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1235 -msgid "" -"When dragging a knot along a constraint line, then snap the position of the " -"mouse pointer instead of snapping the projection of the knot onto the " -"constraint line" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1237 -msgid "Snapping" -msgstr "" - -#. nudgedistance is limited to 1000 in select-context.cpp: use the same limit here -#: ../src/ui/dialog/inkscape-preferences.cpp:1242 -msgid "_Arrow keys move by:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1243 -msgid "" -"Pressing an arrow key moves selected object(s) or node(s) by this distance" -msgstr "" - -#. defaultscale is limited to 1000 in select-context.cpp: use the same limit here -#: ../src/ui/dialog/inkscape-preferences.cpp:1246 -msgid "> and < _scale by:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1247 -msgid "Pressing > or < scales selection up or down by this increment" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1249 -msgid "_Inset/Outset by:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1250 -msgid "Inset and Outset commands displace the path by this distance" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1251 -msgid "Compass-like display of angles" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1253 -msgid "" -"When on, angles are displayed with 0 at north, 0 to 360 range, positive " -"clockwise; otherwise with 0 at east, -180 to 180 range, positive " -"counterclockwise" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1259 -msgid "_Rotation snaps every:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1259 -msgid "degrees" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1260 -msgid "" -"Rotating with Ctrl pressed snaps every that much degrees; also, pressing " -"[ or ] rotates by this amount" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1261 -msgid "Relative snapping of guideline angles" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1263 -msgid "" -"When on, the snap angles when rotating a guideline will be relative to the " -"original angle" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1265 -msgid "_Zoom in/out by:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1266 -msgid "" -"Zoom tool click, +/- keys, and middle click zoom in and out by this " -"multiplier" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1267 -msgid "Steps" -msgstr "" - -#. Clones options -#: ../src/ui/dialog/inkscape-preferences.cpp:1270 -msgid "Move in parallel" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1272 -msgid "Stay unmoved" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1274 -msgid "Move according to transform" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1276 -msgid "Are unlinked" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1278 -msgid "Are deleted" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1281 -msgid "Moving original: clones and linked offsets" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1283 -msgid "Clones are translated by the same vector as their original" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1285 -msgid "Clones preserve their positions when their original is moved" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1287 -msgid "" -"Each clone moves according to the value of its transform= attribute; for " -"example, a rotated clone will move in a different direction than its original" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1288 -msgid "Deleting original: clones" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1290 -msgid "Orphaned clones are converted to regular objects" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1292 -msgid "Orphaned clones are deleted along with their original" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1294 -msgid "Duplicating original+clones/linked offset" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1296 -msgid "Relink duplicated clones" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1298 -msgid "" -"When duplicating a selection containing both a clone and its original " -"(possibly in groups), relink the duplicated clone to the duplicated original " -"instead of the old original" -msgstr "" - -#. TRANSLATORS: Heading for the Inkscape Preferences "Clones" Page -#: ../src/ui/dialog/inkscape-preferences.cpp:1301 -msgid "Clones" -msgstr "" - -#. Clip paths and masks options -#: ../src/ui/dialog/inkscape-preferences.cpp:1304 -msgid "When applying, use the topmost selected object as clippath/mask" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1306 -msgid "" -"Uncheck this to use the bottom selected object as the clipping path or mask" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1307 -msgid "Remove clippath/mask object after applying" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1309 -msgid "" -"After applying, remove the object used as the clipping path or mask from the " -"drawing" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1311 -msgid "Before applying" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1313 -msgid "Do not group clipped/masked objects" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1314 -msgid "Put every clipped/masked object in its own group" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1315 -msgid "Put all clipped/masked objects into one group" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1318 -msgid "Apply clippath/mask to every object" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1321 -msgid "Apply clippath/mask to groups containing single object" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1324 -msgid "Apply clippath/mask to group containing all objects" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1326 -msgid "After releasing" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1328 -msgid "Ungroup automatically created groups" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1330 -msgid "Ungroup groups created when setting clip/mask" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1332 -msgid "Clippaths and masks" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1335 -msgid "Stroke Style Markers" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1337 -#: ../src/ui/dialog/inkscape-preferences.cpp:1339 -msgid "" -"Stroke color same as object, fill color either object fill color or marker " -"fill color" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1343 -msgid "Markers" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1346 -msgid "Document cleanup" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1347 -#: ../src/ui/dialog/inkscape-preferences.cpp:1349 -msgid "Remove unused swatches when doing a document cleanup" -msgstr "" - -#. tooltip -#: ../src/ui/dialog/inkscape-preferences.cpp:1350 -msgid "Cleanup" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1358 -msgid "Number of _Threads:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1358 -#: ../src/ui/dialog/inkscape-preferences.cpp:1876 -msgid "(requires restart)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1359 -msgid "Configure number of processors/threads to use when rendering filters" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1363 -msgid "Rendering _cache size:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1363 -msgctxt "mebibyte (2^20 bytes) abbreviation" -msgid "MiB" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1363 -msgid "" -"Set the amount of memory per document which can be used to store rendered " -"parts of the drawing for later reuse; set to zero to disable caching" -msgstr "" - -#. blur quality -#. filter quality -#: ../src/ui/dialog/inkscape-preferences.cpp:1366 -#: ../src/ui/dialog/inkscape-preferences.cpp:1390 -msgid "Best quality (slowest)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1368 -#: ../src/ui/dialog/inkscape-preferences.cpp:1392 -msgid "Better quality (slower)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1370 -#: ../src/ui/dialog/inkscape-preferences.cpp:1394 -msgid "Average quality" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1372 -#: ../src/ui/dialog/inkscape-preferences.cpp:1396 -msgid "Lower quality (faster)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1374 -#: ../src/ui/dialog/inkscape-preferences.cpp:1398 -msgid "Lowest quality (fastest)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1377 -msgid "Gaussian blur quality for display" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1379 -#: ../src/ui/dialog/inkscape-preferences.cpp:1403 -msgid "" -"Best quality, but display may be very slow at high zooms (bitmap export " -"always uses best quality)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1381 -#: ../src/ui/dialog/inkscape-preferences.cpp:1405 -msgid "Better quality, but slower display" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1383 -#: ../src/ui/dialog/inkscape-preferences.cpp:1407 -msgid "Average quality, acceptable display speed" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1385 -#: ../src/ui/dialog/inkscape-preferences.cpp:1409 -msgid "Lower quality (some artifacts), but display is faster" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1387 -#: ../src/ui/dialog/inkscape-preferences.cpp:1411 -msgid "Lowest quality (considerable artifacts), but display is fastest" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1401 -msgid "Filter effects quality for display" -msgstr "" - -#. build custom preferences tab -#: ../src/ui/dialog/inkscape-preferences.cpp:1413 -#: ../src/ui/dialog/print.cpp:224 -msgid "Rendering" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 -msgid "2x2" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 -msgid "4x4" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 -msgid "8x8" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1419 -msgid "16x16" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1423 -msgid "Oversample bitmaps:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1426 -msgid "Automatically reload bitmaps" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1428 -msgid "Automatically reload linked images when file is changed on disk" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1430 -msgid "_Bitmap editor:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1432 -msgid "Default export _resolution:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1433 -msgid "Default bitmap resolution (in dots per inch) in the Export dialog" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1435 -msgid "Resolution for Create Bitmap _Copy:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1436 -msgid "Resolution used by the Create Bitmap Copy command" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1438 -msgid "Always embed" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1438 -msgid "Always link" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1438 -msgid "Ask" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1441 -msgid "Bitmap import:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1444 -msgid "Bitmap import quality:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1447 -msgid "Default _import resolution:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1448 -msgid "Default bitmap resolution (in dots per inch) for bitmap import" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1449 -msgid "Override file resolution" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1451 -msgid "Use default bitmap resolution in favor of information from file" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1453 -msgid "Bitmaps" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1465 -msgid "" -"Select a file of predefined shortcuts to use. Any customized shortcuts you " -"create will be added seperately to " -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1468 -msgid "Shortcut file:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1471 -msgid "Search:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1483 -msgid "Shortcut" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1484 -#: ../src/ui/widget/page-sizer.cpp:262 -msgid "Description" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1539 -#: ../src/ui/dialog/svg-fonts-dialog.cpp:694 -#: ../src/ui/dialog/tracedialog.cpp:813 -#: ../src/ui/widget/preferences-widget.cpp:749 -msgid "Reset" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1539 -msgid "" -"Remove all your customized keyboard shortcuts, and revert to the shortcuts " -"in the shortcut file listed above" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1543 -msgid "Import ..." -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1543 -msgid "Import custom keyboard shortcuts from a file" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1546 -msgid "Export ..." -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1546 -msgid "Export custom keyboard shortcuts to a file" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1556 -msgid "Keyboard Shortcuts" -msgstr "" - -#. Find this group in the tree -#: ../src/ui/dialog/inkscape-preferences.cpp:1719 -msgid "Misc" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1838 -msgid "Set the main spell check language" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1841 -msgid "Second language:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1842 -msgid "" -"Set the second spell check language; checking will only stop on words " -"unknown in ALL chosen languages" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1845 -msgid "Third language:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1846 -msgid "" -"Set the third spell check language; checking will only stop on words unknown " -"in ALL chosen languages" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1848 -msgid "Ignore words with digits" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1850 -msgid "Ignore words containing digits, such as \"R2D2\"" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1852 -msgid "Ignore words in ALL CAPITALS" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1854 -msgid "Ignore words in all capitals, such as \"IUPAC\"" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1856 -msgid "Spellcheck" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1876 -msgid "Latency _skew:" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1877 -msgid "" -"Factor by which the event clock is skewed from the actual time (0.9766 on " -"some systems)" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1879 -msgid "Pre-render named icons" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1881 -msgid "" -"When on, named icons will be rendered before displaying the ui. This is for " -"working around bugs in GTK+ named icon notification" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1889 -msgid "System info" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1893 -msgid "User config: " -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1893 -msgid "Location of users configuration" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1897 -msgid "User preferences: " -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1897 -msgid "Location of the users preferences file" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1901 -msgid "User extensions: " -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1901 -msgid "Location of the users extensions" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1905 -msgid "User cache: " -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1905 -msgid "Location of users cache" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1913 -msgid "Temporary files: " -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1913 -msgid "Location of the temporary files used for autosave" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1917 -msgid "Inkscape data: " -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1917 -msgid "Location of Inkscape data" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1921 -msgid "Inkscape extensions: " -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1921 -msgid "Location of the Inkscape extensions" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1930 -msgid "System data: " -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1930 -msgid "Locations of system data" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1954 -msgid "Icon theme: " -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1954 -msgid "Locations of icon themes" -msgstr "" - -#: ../src/ui/dialog/inkscape-preferences.cpp:1956 -msgid "System" -msgstr "" - -#: ../src/ui/dialog/input.cpp:360 ../src/ui/dialog/input.cpp:381 -#: ../src/ui/dialog/input.cpp:1641 -msgid "Disabled" -msgstr "" - -#: ../src/ui/dialog/input.cpp:361 -msgctxt "Input device" -msgid "Screen" -msgstr "" - -#: ../src/ui/dialog/input.cpp:362 ../src/ui/dialog/input.cpp:383 -msgid "Window" -msgstr "" - -#: ../src/ui/dialog/input.cpp:618 -msgid "Test Area" -msgstr "" - -#: ../src/ui/dialog/input.cpp:619 -msgid "Axis" -msgstr "" - -#: ../src/ui/dialog/input.cpp:708 ../share/extensions/svgcalendar.inx.h:2 -msgid "Configuration" -msgstr "" - -#: ../src/ui/dialog/input.cpp:709 -msgid "Hardware" -msgstr "" - -#: ../src/ui/dialog/input.cpp:732 -msgid "Link:" -msgstr "" - -#: ../src/ui/dialog/input.cpp:758 -msgid "Axes count:" -msgstr "" - -#: ../src/ui/dialog/input.cpp:788 -msgid "axis:" -msgstr "" - -#: ../src/ui/dialog/input.cpp:812 -msgid "Button count:" -msgstr "" - -#: ../src/ui/dialog/input.cpp:1010 -msgid "Tablet" -msgstr "" - -#: ../src/ui/dialog/input.cpp:1039 ../src/ui/dialog/input.cpp:1931 -msgid "pad" -msgstr "" - -#: ../src/ui/dialog/input.cpp:1081 -msgid "_Use pressure-sensitive tablet (requires restart)" -msgstr "" - -#: ../src/ui/dialog/input.cpp:1082 ../src/verbs.cpp:2302 -msgid "_Save" -msgstr "" - -#: ../src/ui/dialog/input.cpp:1086 -msgid "Axes" -msgstr "" - -#: ../src/ui/dialog/input.cpp:1087 -msgid "Keys" -msgstr "" - -#: ../src/ui/dialog/input.cpp:1170 -msgid "" -"A device can be 'Disabled', its co-ordinates mapped to the whole 'Screen', " -"or to a single (usually focused) 'Window'" -msgstr "" - -#: ../src/ui/dialog/input.cpp:1616 ../src/widgets/calligraphy-toolbar.cpp:599 -#: ../src/widgets/spray-toolbar.cpp:240 ../src/widgets/tweak-toolbar.cpp:390 -msgid "Pressure" -msgstr "" - -#: ../src/ui/dialog/input.cpp:1616 -msgid "X tilt" -msgstr "" - -#: ../src/ui/dialog/input.cpp:1616 -msgid "Y tilt" -msgstr "" - -#: ../src/ui/dialog/input.cpp:1616 -#: ../src/widgets/sp-color-wheel-selector.cpp:59 -msgid "Wheel" -msgstr "" - -#: ../src/ui/dialog/layer-properties.cpp:55 -msgid "Layer name:" -msgstr "" - -#: ../src/ui/dialog/layer-properties.cpp:136 -msgid "Add layer" -msgstr "" - -#: ../src/ui/dialog/layer-properties.cpp:176 -msgid "Above current" -msgstr "" - -#: ../src/ui/dialog/layer-properties.cpp:180 -msgid "Below current" -msgstr "" - -#: ../src/ui/dialog/layer-properties.cpp:183 -msgid "As sublayer of current" -msgstr "" - -#: ../src/ui/dialog/layer-properties.cpp:352 -msgid "Rename Layer" -msgstr "" - -#. TODO: find an unused layer number, forming name from _("Layer ") + "%d" -#: ../src/ui/dialog/layer-properties.cpp:354 -#: ../src/ui/dialog/layer-properties.cpp:410 ../src/verbs.cpp:193 -#: ../src/verbs.cpp:2233 -msgid "Layer" -msgstr "" - -#: ../src/ui/dialog/layer-properties.cpp:355 -msgid "_Rename" -msgstr "" - -#: ../src/ui/dialog/layer-properties.cpp:368 ../src/ui/dialog/layers.cpp:749 -msgid "Rename layer" -msgstr "" - -#. TRANSLATORS: This means "The layer has been renamed" -#: ../src/ui/dialog/layer-properties.cpp:370 -msgid "Renamed layer" -msgstr "" - -#: ../src/ui/dialog/layer-properties.cpp:374 -msgid "Add Layer" -msgstr "" - -#: ../src/ui/dialog/layer-properties.cpp:380 -msgid "_Add" -msgstr "" - -#: ../src/ui/dialog/layer-properties.cpp:404 -msgid "New layer created." -msgstr "" - -#: ../src/ui/dialog/layer-properties.cpp:408 -msgid "Move to Layer" -msgstr "" - -#: ../src/ui/dialog/layer-properties.cpp:411 -#: ../src/ui/dialog/transformation.cpp:113 -msgid "_Move" -msgstr "" - -#: ../src/ui/dialog/layers.cpp:524 ../src/ui/widget/layer-selector.cpp:613 -msgid "Unhide layer" -msgstr "" - -#: ../src/ui/dialog/layers.cpp:524 ../src/ui/widget/layer-selector.cpp:613 -msgid "Hide layer" -msgstr "" - -#: ../src/ui/dialog/layers.cpp:535 ../src/ui/widget/layer-selector.cpp:605 -msgid "Lock layer" -msgstr "" - -#: ../src/ui/dialog/layers.cpp:535 ../src/ui/widget/layer-selector.cpp:605 -msgid "Unlock layer" -msgstr "" - -#: ../src/ui/dialog/layers.cpp:623 ../src/verbs.cpp:1348 -msgid "Toggle layer solo" -msgstr "" - -#: ../src/ui/dialog/layers.cpp:626 ../src/verbs.cpp:1372 -msgid "Lock other layers" -msgstr "" - -#: ../src/ui/dialog/layers.cpp:720 -msgid "Moved layer" -msgstr "" - -#: ../src/ui/dialog/layers.cpp:882 -msgctxt "Layers" -msgid "New" -msgstr "" - -#: ../src/ui/dialog/layers.cpp:887 -msgctxt "Layers" -msgid "Bot" -msgstr "" - -#: ../src/ui/dialog/layers.cpp:893 -msgctxt "Layers" -msgid "Dn" -msgstr "" - -#: ../src/ui/dialog/layers.cpp:899 -msgctxt "Layers" -msgid "Up" -msgstr "" - -#: ../src/ui/dialog/layers.cpp:905 -msgctxt "Layers" -msgid "Top" -msgstr "" - -#: ../src/ui/dialog/livepatheffect-editor.cpp:109 -msgid "Add path effect" -msgstr "" - -#: ../src/ui/dialog/livepatheffect-editor.cpp:113 -msgid "Delete current path effect" -msgstr "" - -#: ../src/ui/dialog/livepatheffect-editor.cpp:117 -msgid "Raise the current path effect" -msgstr "" - -#: ../src/ui/dialog/livepatheffect-editor.cpp:121 -msgid "Lower the current path effect" -msgstr "" - -#: ../src/ui/dialog/livepatheffect-editor.cpp:289 -msgid "Unknown effect is applied" -msgstr "" - -#: ../src/ui/dialog/livepatheffect-editor.cpp:292 -msgid "Click button to add an effect" -msgstr "" - -#: ../src/ui/dialog/livepatheffect-editor.cpp:305 -msgid "Click add button to convert clone" -msgstr "" - -#: ../src/ui/dialog/livepatheffect-editor.cpp:310 -#: ../src/ui/dialog/livepatheffect-editor.cpp:314 -#: ../src/ui/dialog/livepatheffect-editor.cpp:322 -msgid "Select a path or shape" -msgstr "" - -#: ../src/ui/dialog/livepatheffect-editor.cpp:318 -msgid "Only one item can be selected" -msgstr "" - -#: ../src/ui/dialog/livepatheffect-editor.cpp:350 -msgid "Unknown effect" -msgstr "" - -#: ../src/ui/dialog/livepatheffect-editor.cpp:426 -msgid "Create and apply path effect" -msgstr "" - -#: ../src/ui/dialog/livepatheffect-editor.cpp:461 -msgid "Create and apply Clone original path effect" -msgstr "" - -#: ../src/ui/dialog/livepatheffect-editor.cpp:481 -msgid "Remove path effect" -msgstr "" - -#: ../src/ui/dialog/livepatheffect-editor.cpp:498 -msgid "Move path effect up" -msgstr "" - -#: ../src/ui/dialog/livepatheffect-editor.cpp:514 -msgid "Move path effect down" -msgstr "" - -#: ../src/ui/dialog/livepatheffect-editor.cpp:553 -msgid "Activate path effect" -msgstr "" - -#: ../src/ui/dialog/livepatheffect-editor.cpp:553 -msgid "Deactivate path effect" -msgstr "" - -#: ../src/ui/dialog/livepatheffect-add.cpp:32 -msgid "Add Path Effect" -msgstr "" - -#: ../src/ui/dialog/memory.cpp:96 -msgid "Heap" -msgstr "" - -#: ../src/ui/dialog/memory.cpp:97 -msgid "In Use" -msgstr "" - -#. TRANSLATORS: "Slack" refers to memory which is in the heap but currently unused. -#. More typical usage is to call this memory "free" rather than "slack". -#: ../src/ui/dialog/memory.cpp:100 -msgid "Slack" -msgstr "" - -#: ../src/ui/dialog/memory.cpp:101 -msgid "Total" -msgstr "" - -#: ../src/ui/dialog/memory.cpp:141 ../src/ui/dialog/memory.cpp:147 -#: ../src/ui/dialog/memory.cpp:154 ../src/ui/dialog/memory.cpp:186 -msgid "Unknown" -msgstr "" - -#: ../src/ui/dialog/memory.cpp:167 -msgid "Combined" -msgstr "" - -#: ../src/ui/dialog/memory.cpp:209 -msgid "Recalculate" -msgstr "" - -#: ../src/ui/dialog/messages.cpp:47 -msgid "Clear log messages" -msgstr "" - -#: ../src/ui/dialog/messages.cpp:81 -msgid "Ready." -msgstr "" - -#: ../src/ui/dialog/messages.cpp:174 -msgid "Log capture started." -msgstr "" - -#: ../src/ui/dialog/messages.cpp:203 -msgid "Log capture stopped." -msgstr "" - -#: ../src/ui/dialog/object-attributes.cpp:47 -msgid "Href:" -msgstr "" - -#. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/linking.html#AElementXLinkRoleAttribute -#. Identifies the type of the related resource with an absolute URI -#: ../src/ui/dialog/object-attributes.cpp:52 -msgid "Role:" -msgstr "" - -#. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/linking.html#AElementXLinkArcRoleAttribute -#. For situations where the nature/role alone isn't enough, this offers an additional URI defining the purpose of the link. -#: ../src/ui/dialog/object-attributes.cpp:55 -msgid "Arcrole:" -msgstr "" - -#: ../src/ui/dialog/object-attributes.cpp:58 -#: ../share/extensions/polyhedron_3d.inx.h:47 -msgid "Show:" -msgstr "" - -#. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/linking.html#AElementXLinkActuateAttribute -#: ../src/ui/dialog/object-attributes.cpp:60 -msgid "Actuate:" -msgstr "" - -#: ../src/ui/dialog/object-attributes.cpp:65 -msgid "URL:" -msgstr "" - -#: ../src/ui/dialog/object-attributes.cpp:66 -#: ../src/ui/dialog/object-attributes.cpp:74 ../src/ui/dialog/tile.cpp:618 -#: ../src/widgets/desktop-widget.cpp:666 ../src/widgets/node-toolbar.cpp:590 -msgid "X:" -msgstr "" - -#: ../src/ui/dialog/object-attributes.cpp:67 -#: ../src/ui/dialog/object-attributes.cpp:75 ../src/ui/dialog/tile.cpp:619 -#: ../src/widgets/desktop-widget.cpp:676 ../src/widgets/node-toolbar.cpp:608 -msgid "Y:" -msgstr "" - -#: ../src/ui/dialog/object-properties.cpp:61 -#: ../src/ui/dialog/object-properties.cpp:362 -#: ../src/ui/dialog/object-properties.cpp:419 -#: ../src/ui/dialog/object-properties.cpp:426 -msgid "_ID:" -msgstr "" - -#: ../src/ui/dialog/object-properties.cpp:63 -msgid "_Title:" -msgstr "" - -#: ../src/ui/dialog/object-properties.cpp:64 -msgid "_Description:" -msgstr "" - -#: ../src/ui/dialog/object-properties.cpp:72 -msgid "_Hide" -msgstr "" - -#: ../src/ui/dialog/object-properties.cpp:73 -msgid "L_ock" -msgstr "" - -#: ../src/ui/dialog/object-properties.cpp:74 ../src/verbs.cpp:2573 -#: ../src/verbs.cpp:2579 -msgid "_Set" -msgstr "" - -#: ../src/ui/dialog/object-properties.cpp:75 -msgid "_Interactivity" -msgstr "" - -#. Create the entry box for the object id -#: ../src/ui/dialog/object-properties.cpp:153 -msgid "" -"The id= attribute (only letters, digits, and the characters .-_: allowed)" -msgstr "" - -#. Create the entry box for the object label -#: ../src/ui/dialog/object-properties.cpp:186 -msgid "A freeform label for the object" -msgstr "" - -#. Hide -#: ../src/ui/dialog/object-properties.cpp:257 -msgid "Check to make the object invisible" -msgstr "" - -#. Lock -#. TRANSLATORS: "Lock" is a verb here -#: ../src/ui/dialog/object-properties.cpp:273 -msgid "Check to make the object insensitive (not selectable by mouse)" -msgstr "" - -#: ../src/ui/dialog/object-properties.cpp:349 -#: ../src/ui/dialog/object-properties.cpp:354 -msgid "Ref" -msgstr "" - -#: ../src/ui/dialog/object-properties.cpp:421 -msgid "Id invalid! " -msgstr "" - -#: ../src/ui/dialog/object-properties.cpp:423 -msgid "Id exists! " -msgstr "" - -#: ../src/ui/dialog/object-properties.cpp:429 -msgid "Set object ID" -msgstr "" - -#: ../src/ui/dialog/object-properties.cpp:443 -msgid "Set object label" -msgstr "" - -#: ../src/ui/dialog/object-properties.cpp:449 -msgid "Set object title" -msgstr "" - -#: ../src/ui/dialog/object-properties.cpp:457 -msgid "Set object description" -msgstr "" - -#: ../src/ui/dialog/object-properties.cpp:475 -msgid "Lock object" -msgstr "" - -#: ../src/ui/dialog/object-properties.cpp:475 -msgid "Unlock object" -msgstr "" - -#: ../src/ui/dialog/object-properties.cpp:492 -msgid "Hide object" -msgstr "" - -#: ../src/ui/dialog/object-properties.cpp:492 -msgid "Unhide object" -msgstr "" - -#: ../src/ui/dialog/ocaldialogs.cpp:713 -msgid "Clipart found" -msgstr "" - -#: ../src/ui/dialog/ocaldialogs.cpp:762 -msgid "Downloading image..." -msgstr "" - -#: ../src/ui/dialog/ocaldialogs.cpp:910 -msgid "Could not download image" -msgstr "" - -#: ../src/ui/dialog/ocaldialogs.cpp:920 -msgid "Clipart downloaded successfully" -msgstr "" - -#: ../src/ui/dialog/ocaldialogs.cpp:934 -msgid "Could not download thumbnail file" -msgstr "" - -#: ../src/ui/dialog/ocaldialogs.cpp:1009 -msgid "No description" -msgstr "" - -#: ../src/ui/dialog/ocaldialogs.cpp:1077 -msgid "Searching clipart..." -msgstr "" - -#: ../src/ui/dialog/ocaldialogs.cpp:1097 ../src/ui/dialog/ocaldialogs.cpp:1118 -msgid "Could not connect to the Open Clip Art Library" -msgstr "" - -#: ../src/ui/dialog/ocaldialogs.cpp:1143 -msgid "Could not parse search results" -msgstr "" - -#: ../src/ui/dialog/ocaldialogs.cpp:1177 -msgid "No clipart named %1 was found." -msgstr "" - -#: ../src/ui/dialog/ocaldialogs.cpp:1179 -msgid "" -"Please make sure all keywords are spelled correctly, or try again with " -"different keywords." -msgstr "" - -#: ../src/ui/dialog/ocaldialogs.cpp:1231 -msgid "Search" -msgstr "" - -#: ../src/ui/dialog/ocaldialogs.cpp:1243 -msgid "Close" -msgstr "" - -#: ../src/ui/dialog/print.cpp:104 -msgid "Could not open temporary PNG for bitmap printing" -msgstr "" - -#: ../src/ui/dialog/print.cpp:147 -msgid "Could not set up Document" -msgstr "" - -#: ../src/ui/dialog/print.cpp:151 -msgid "Failed to set CairoRenderContext" -msgstr "" - -#. set up dialog title, based on document name -#: ../src/ui/dialog/print.cpp:189 -msgid "SVG Document" -msgstr "" - -#: ../src/ui/dialog/print.cpp:190 -msgid "Print" -msgstr "" - -#. ## Add a menu for clear() -#: ../src/ui/dialog/scriptdialog.cpp:178 ../src/verbs.cpp:136 -msgid "File" -msgstr "" - -#: ../src/ui/dialog/scriptdialog.cpp:186 -msgid "_Execute Javascript" -msgstr "" - -#: ../src/ui/dialog/scriptdialog.cpp:190 -msgid "_Execute Python" -msgstr "" - -#: ../src/ui/dialog/scriptdialog.cpp:194 -msgid "_Execute Ruby" -msgstr "" - -#: ../src/ui/dialog/scriptdialog.cpp:205 -msgid "Script" -msgstr "" - -#: ../src/ui/dialog/scriptdialog.cpp:215 -msgid "Output" -msgstr "" - -#: ../src/ui/dialog/scriptdialog.cpp:225 -msgid "Errors" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:138 -msgid "Set SVG Font attribute" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:196 -msgid "Adjust kerning value" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:386 -msgid "Family Name:" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:396 -msgid "Set width:" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:455 -msgid "glyph" -msgstr "" - -#. SPGlyph* glyph = -#: ../src/ui/dialog/svg-fonts-dialog.cpp:487 -msgid "Add glyph" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:521 -#: ../src/ui/dialog/svg-fonts-dialog.cpp:561 -msgid "Select a path to define the curves of a glyph" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:529 -#: ../src/ui/dialog/svg-fonts-dialog.cpp:569 -msgid "The selected object does not have a path description." -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:536 -msgid "No glyph selected in the SVGFonts dialog." -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:545 -#: ../src/ui/dialog/svg-fonts-dialog.cpp:582 -msgid "Set glyph curves" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:602 -msgid "Reset missing-glyph" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:618 -msgid "Edit glyph name" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:632 -msgid "Set glyph unicode" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:644 -msgid "Remove font" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:661 -msgid "Remove glyph" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:678 -msgid "Remove kerning pair" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:688 -msgid "Missing Glyph:" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:692 -msgid "From selection..." -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:705 -msgid "Glyph name" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:706 -msgid "Matching string" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:709 -msgid "Add Glyph" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:716 -msgid "Get curves from selection..." -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:765 -msgid "Add kerning pair" -msgstr "" - -#. Kerning Setup: -#: ../src/ui/dialog/svg-fonts-dialog.cpp:773 -msgid "Kerning Setup" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:775 -msgid "1st Glyph:" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:777 -msgid "2nd Glyph:" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:780 -msgid "Add pair" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:792 -msgid "First Unicode range" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:793 -msgid "Second Unicode range" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:800 -msgid "Kerning value:" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:858 -msgid "Set font family" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:867 -msgid "font" -msgstr "" - -#. select_font(font); -#: ../src/ui/dialog/svg-fonts-dialog.cpp:882 -msgid "Add font" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:916 -msgid "_Global Settings" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:917 -msgid "_Glyphs" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:918 -msgid "_Kerning" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:925 -#: ../src/ui/dialog/svg-fonts-dialog.cpp:926 -msgid "Sample Text" -msgstr "" - -#: ../src/ui/dialog/svg-fonts-dialog.cpp:930 -msgid "Preview Text:" -msgstr "" - -#. ******************* Symbol Sets ************************ -#: ../src/ui/dialog/symbols.cpp:127 -msgid "Symbol set: " -msgstr "" - -#. Fill in later -#: ../src/ui/dialog/symbols.cpp:136 ../src/ui/dialog/symbols.cpp:137 -msgid "Current Document" -msgstr "" - -#: ../src/ui/dialog/symbols.cpp:204 -msgid "Add Symbol from the current document." -msgstr "" - -#: ../src/ui/dialog/symbols.cpp:213 -msgid "Remove Symbol from the current document." -msgstr "" - -#: ../src/ui/dialog/symbols.cpp:226 -msgid "Make Icons bigger by zooming in." -msgstr "" - -#: ../src/ui/dialog/symbols.cpp:235 -msgid "Make Icons smaller by zooming out." -msgstr "" - -#: ../src/ui/dialog/symbols.cpp:244 -msgid "Toggle 'fit' symbols in icon space." -msgstr "" - -#: ../src/ui/dialog/symbols.cpp:557 -msgid "Unnamed Symbols" -msgstr "" - -#. TRANSLATORS: An item in context menu on a colour in the swatches -#: ../src/ui/dialog/swatches.cpp:258 -msgid "Set fill" -msgstr "" - -#. TRANSLATORS: An item in context menu on a colour in the swatches -#: ../src/ui/dialog/swatches.cpp:266 -msgid "Set stroke" -msgstr "" - -#: ../src/ui/dialog/swatches.cpp:287 -msgid "Edit..." -msgstr "" - -#: ../src/ui/dialog/swatches.cpp:299 -msgid "Convert" -msgstr "" - -#: ../src/ui/dialog/swatches.cpp:543 -#, c-format -msgid "Palettes directory (%s) is unavailable." -msgstr "" - -#: ../src/ui/dialog/tile.cpp:349 -msgid "Arrange in a grid" -msgstr "" - -#: ../src/ui/dialog/tile.cpp:618 -msgid "Horizontal spacing between columns." -msgstr "" - -#: ../src/ui/dialog/tile.cpp:619 -msgid "Vertical spacing between rows." -msgstr "" - -#: ../src/ui/dialog/tile.cpp:666 -msgid "_Rows:" -msgstr "" - -#: ../src/ui/dialog/tile.cpp:675 -msgid "Number of rows" -msgstr "" - -#: ../src/ui/dialog/tile.cpp:679 -msgid "Equal _height" -msgstr "" - -#: ../src/ui/dialog/tile.cpp:690 -msgid "If not set, each row has the height of the tallest object in it" -msgstr "" - -#. #### Radio buttons to control vertical alignment #### -#. #### Radio buttons to control horizontal alignment #### -#: ../src/ui/dialog/tile.cpp:696 ../src/ui/dialog/tile.cpp:768 -msgid "Align:" -msgstr "" - -#. #### Number of columns #### -#: ../src/ui/dialog/tile.cpp:738 -msgid "_Columns:" -msgstr "" - -#: ../src/ui/dialog/tile.cpp:747 -msgid "Number of columns" -msgstr "" - -#: ../src/ui/dialog/tile.cpp:751 -msgid "Equal _width" -msgstr "" - -#: ../src/ui/dialog/tile.cpp:761 -msgid "If not set, each column has the width of the widest object in it" -msgstr "" - -#. #### Radio buttons to control spacing manually or to fit selection bbox #### -#: ../src/ui/dialog/tile.cpp:807 -msgid "_Fit into selection box" -msgstr "" - -#: ../src/ui/dialog/tile.cpp:814 -msgid "_Set spacing:" -msgstr "" - -#. ## The OK button -#: ../src/ui/dialog/tile.cpp:876 -msgctxt "Rows and columns dialog" -msgid "_Arrange" -msgstr "" - -#: ../src/ui/dialog/tile.cpp:878 -msgid "Arrange selected objects" -msgstr "" - -#. #### begin left panel -#. ### begin notebook -#. ## begin mode page -#. # begin single scan -#. brightness -#: ../src/ui/dialog/tracedialog.cpp:508 -msgid "_Brightness cutoff" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:512 -msgid "Trace by a given brightness level" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:519 -msgid "Brightness cutoff for black/white" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:529 -msgid "Single scan: creates a path" -msgstr "" - -#. canny edge detection -#. TRANSLATORS: "Canny" is the name of the inventor of this edge detection method -#: ../src/ui/dialog/tracedialog.cpp:534 -msgid "_Edge detection" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:538 -msgid "Trace with optimal edge detection by J. Canny's algorithm" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:556 -msgid "Brightness cutoff for adjacent pixels (determines edge thickness)" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:559 -msgid "T_hreshold:" -msgstr "" - -#. quantization -#. TRANSLATORS: Color Quantization: the process of reducing the number -#. of colors in an image by selecting an optimized set of representative -#. colors and then re-applying this reduced set to the original image. -#: ../src/ui/dialog/tracedialog.cpp:571 -msgid "Color _quantization" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:575 -msgid "Trace along the boundaries of reduced colors" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:583 -msgid "The number of reduced colors" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:586 -msgid "_Colors:" -msgstr "" - -#. swap black and white -#: ../src/ui/dialog/tracedialog.cpp:594 -msgid "_Invert image" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:599 -msgid "Invert black and white regions" -msgstr "" - -#. # end single scan -#. # begin multiple scan -#: ../src/ui/dialog/tracedialog.cpp:609 -msgid "B_rightness steps" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:613 -msgid "Trace the given number of brightness levels" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:621 -msgid "Sc_ans:" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:625 -msgid "The desired number of scans" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:630 -msgid "Co_lors" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:634 -msgid "Trace the given number of reduced colors" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:639 -msgid "_Grays" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:643 -msgid "Same as Colors, but the result is converted to grayscale" -msgstr "" - -#. TRANSLATORS: "Smooth" is a verb here -#: ../src/ui/dialog/tracedialog.cpp:649 -msgid "S_mooth" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:653 -msgid "Apply Gaussian blur to the bitmap before tracing" -msgstr "" - -#. TRANSLATORS: "Stack" is a verb here -#: ../src/ui/dialog/tracedialog.cpp:657 -msgid "Stac_k scans" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:661 -msgid "" -"Stack scans on top of one another (no gaps) instead of tiling (usually with " -"gaps)" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:665 -msgid "Remo_ve background" -msgstr "" - -#. TRANSLATORS: "Layer" refers to one of the stacked paths in the multiscan -#: ../src/ui/dialog/tracedialog.cpp:670 -msgid "Remove bottom (background) layer when done" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:675 -msgid "Multiple scans: creates a group of paths" -msgstr "" - -#. # end multiple scan -#. ## end mode page -#: ../src/ui/dialog/tracedialog.cpp:684 -msgid "_Mode" -msgstr "" - -#. ## begin option page -#. # potrace parameters -#: ../src/ui/dialog/tracedialog.cpp:690 -msgid "Suppress _speckles" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:692 -msgid "Ignore small spots (speckles) in the bitmap" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:700 -msgid "Speckles of up to this many pixels will be suppressed" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:703 -msgid "S_ize:" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:708 -msgid "Smooth _corners" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:710 -msgid "Smooth out sharp corners of the trace" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:719 -msgid "Increase this to smooth corners more" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:726 -msgid "Optimize p_aths" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:729 -msgid "Try to optimize paths by joining adjacent Bezier curve segments" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:737 -msgid "" -"Increase this to reduce the number of nodes in the trace by more aggressive " -"optimization" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:739 -msgid "To_lerance:" -msgstr "" - -#. ## end option page -#: ../src/ui/dialog/tracedialog.cpp:753 -msgid "O_ptions" -msgstr "" - -#. ### credits -#: ../src/ui/dialog/tracedialog.cpp:757 -msgid "" -"Inkscape bitmap tracing\n" -"is based on Potrace,\n" -"created by Peter Selinger\n" -"\n" -"http://potrace.sourceforge.net" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:760 -msgid "Credits" -msgstr "" - -#. #### begin right panel -#. ## SIOX -#: ../src/ui/dialog/tracedialog.cpp:774 -msgid "SIOX _foreground selection" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:777 -msgid "Cover the area you want to select as the foreground" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:782 -msgid "Live Preview" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:788 -msgid "_Update" -msgstr "" - -#. I guess it's correct to call the "intermediate bitmap" a preview of the trace -#: ../src/ui/dialog/tracedialog.cpp:796 -msgid "" -"Preview the intermediate bitmap with the current settings, without actual " -"tracing" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:800 -msgid "Preview" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:814 -msgid "Reset all settings to defaults" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:819 -msgid "Abort a trace in progress" -msgstr "" - -#: ../src/ui/dialog/tracedialog.cpp:823 -msgid "Execute the trace" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:75 -#: ../src/ui/dialog/transformation.cpp:85 -msgid "_Horizontal:" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:75 -msgid "Horizontal displacement (relative) or position (absolute)" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:77 -#: ../src/ui/dialog/transformation.cpp:87 -msgid "_Vertical:" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:77 -msgid "Vertical displacement (relative) or position (absolute)" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:79 -msgid "Horizontal size (absolute or percentage of current)" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:81 -msgid "Vertical size (absolute or percentage of current)" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:83 -msgid "A_ngle:" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:83 -#: ../src/ui/dialog/transformation.cpp:1068 -msgid "Rotation angle (positive = counterclockwise)" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:85 -msgid "" -"Horizontal skew angle (positive = counterclockwise), or absolute " -"displacement, or percentage displacement" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:87 -msgid "" -"Vertical skew angle (positive = counterclockwise), or absolute displacement, " -"or percentage displacement" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:90 -msgid "Transformation matrix element A" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:91 -msgid "Transformation matrix element B" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:92 -msgid "Transformation matrix element C" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:93 -msgid "Transformation matrix element D" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:94 -msgid "Transformation matrix element E" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:95 -msgid "Transformation matrix element F" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:100 -msgid "Rela_tive move" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:100 -msgid "" -"Add the specified relative displacement to the current position; otherwise, " -"edit the current absolute position directly" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:101 -msgid "_Scale proportionally" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:101 -msgid "Preserve the width/height ratio of the scaled objects" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:102 -msgid "Apply to each _object separately" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:102 -msgid "" -"Apply the scale/rotate/skew to each selected object separately; otherwise, " -"transform the selection as a whole" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:103 -msgid "Edit c_urrent matrix" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:103 -msgid "" -"Edit the current transform= matrix; otherwise, post-multiply transform= by " -"this matrix" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:116 -msgid "_Scale" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:119 -msgid "_Rotate" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:122 -msgid "Ske_w" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:125 -msgid "Matri_x" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:149 -msgid "Reset the values on the current tab to defaults" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:156 -msgid "Apply transformation to selection" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:331 -msgid "Rotate in a counterclockwise direction" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:337 -msgid "Rotate in a clockwise direction" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:976 -msgid "Edit transformation matrix" -msgstr "" - -#: ../src/ui/dialog/transformation.cpp:1075 -msgid "Rotation angle (positive = clockwise)" -msgstr "" - -#: ../src/ui/tool/curve-drag-point.cpp:100 -msgid "Drag curve" -msgstr "" - -#: ../src/ui/tool/curve-drag-point.cpp:157 -msgid "Add node" -msgstr "" - -#: ../src/ui/tool/curve-drag-point.cpp:167 -msgctxt "Path segment tip" -msgid "Shift: click to toggle segment selection" -msgstr "" - -#: ../src/ui/tool/curve-drag-point.cpp:171 -msgctxt "Path segment tip" -msgid "Ctrl+Alt: click to insert a node" -msgstr "" - -#: ../src/ui/tool/curve-drag-point.cpp:175 -msgctxt "Path segment tip" -msgid "" -"Linear segment: drag to convert to a Bezier segment, doubleclick to " -"insert node, click to select (more: Shift, Ctrl+Alt)" -msgstr "" - -#: ../src/ui/tool/curve-drag-point.cpp:179 -msgctxt "Path segment tip" -msgid "" -"Bezier segment: drag to shape the segment, doubleclick to insert " -"node, click to select (more: Shift, Ctrl+Alt)" -msgstr "" - -#: ../src/ui/tool/multi-path-manipulator.cpp:322 -msgid "Retract handles" -msgstr "" - -#: ../src/ui/tool/multi-path-manipulator.cpp:322 ../src/ui/tool/node.cpp:271 -msgid "Change node type" -msgstr "" - -#: ../src/ui/tool/multi-path-manipulator.cpp:330 -msgid "Straighten segments" -msgstr "" - -#: ../src/ui/tool/multi-path-manipulator.cpp:332 -msgid "Make segments curves" -msgstr "" - -#: ../src/ui/tool/multi-path-manipulator.cpp:339 -msgid "Add nodes" -msgstr "" - -#: ../src/ui/tool/multi-path-manipulator.cpp:344 -msgid "Add extremum nodes" -msgstr "" - -#: ../src/ui/tool/multi-path-manipulator.cpp:350 -msgid "Duplicate nodes" -msgstr "" - -#: ../src/ui/tool/multi-path-manipulator.cpp:412 -#: ../src/widgets/node-toolbar.cpp:417 -msgid "Join nodes" -msgstr "" - -#: ../src/ui/tool/multi-path-manipulator.cpp:419 -#: ../src/widgets/node-toolbar.cpp:428 -msgid "Break nodes" -msgstr "" - -#: ../src/ui/tool/multi-path-manipulator.cpp:426 -msgid "Delete nodes" -msgstr "" - -#: ../src/ui/tool/multi-path-manipulator.cpp:756 -msgid "Move nodes" -msgstr "" - -#: ../src/ui/tool/multi-path-manipulator.cpp:759 -msgid "Move nodes horizontally" -msgstr "" - -#: ../src/ui/tool/multi-path-manipulator.cpp:763 -msgid "Move nodes vertically" -msgstr "" - -#: ../src/ui/tool/multi-path-manipulator.cpp:767 -#: ../src/ui/tool/multi-path-manipulator.cpp:770 -msgid "Rotate nodes" -msgstr "" - -#: ../src/ui/tool/multi-path-manipulator.cpp:774 -#: ../src/ui/tool/multi-path-manipulator.cpp:780 -msgid "Scale nodes uniformly" -msgstr "" - -#: ../src/ui/tool/multi-path-manipulator.cpp:777 -msgid "Scale nodes" -msgstr "" - -#: ../src/ui/tool/multi-path-manipulator.cpp:784 -msgid "Scale nodes horizontally" -msgstr "" - -#: ../src/ui/tool/multi-path-manipulator.cpp:788 -msgid "Scale nodes vertically" -msgstr "" - -#: ../src/ui/tool/multi-path-manipulator.cpp:792 -msgid "Skew nodes horizontally" -msgstr "" - -#: ../src/ui/tool/multi-path-manipulator.cpp:796 -msgid "Skew nodes vertically" -msgstr "" - -#: ../src/ui/tool/multi-path-manipulator.cpp:800 -msgid "Flip nodes horizontally" -msgstr "" - -#: ../src/ui/tool/multi-path-manipulator.cpp:803 -msgid "Flip nodes vertically" -msgstr "" - -#: ../src/ui/tool/node-tool.cpp:555 -msgctxt "Node tool tip" -msgid "" -"Shift: drag to add nodes to the selection, click to toggle object " -"selection" -msgstr "" - -#: ../src/ui/tool/node-tool.cpp:559 -msgctxt "Node tool tip" -msgid "Shift: drag to add nodes to the selection" -msgstr "" - -#: ../src/ui/tool/node-tool.cpp:568 -#, c-format -msgid "%u of %u node selected." -msgid_plural "%u of %u nodes selected." -msgstr[0] "" -msgstr[1] "" - -#: ../src/ui/tool/node-tool.cpp:573 -#, c-format -msgctxt "Node tool tip" -msgid "%s Drag to select nodes, click to edit only this object (more: Shift)" -msgstr "" - -#: ../src/ui/tool/node-tool.cpp:579 -#, c-format -msgctxt "Node tool tip" -msgid "%s Drag to select nodes, click clear the selection" -msgstr "" - -#: ../src/ui/tool/node-tool.cpp:588 -msgctxt "Node tool tip" -msgid "Drag to select nodes, click to edit only this object" -msgstr "" - -#: ../src/ui/tool/node-tool.cpp:591 -msgctxt "Node tool tip" -msgid "Drag to select nodes, click to clear the selection" -msgstr "" - -#: ../src/ui/tool/node-tool.cpp:596 -msgctxt "Node tool tip" -msgid "Drag to select objects to edit, click to edit this object (more: Shift)" -msgstr "" - -#: ../src/ui/tool/node-tool.cpp:599 -msgctxt "Node tool tip" -msgid "Drag to select objects to edit" -msgstr "" - -#: ../src/ui/tool/node.cpp:246 -msgid "Cusp node handle" -msgstr "" - -#: ../src/ui/tool/node.cpp:247 -msgid "Smooth node handle" -msgstr "" - -#: ../src/ui/tool/node.cpp:248 -msgid "Symmetric node handle" -msgstr "" - -#: ../src/ui/tool/node.cpp:249 -msgid "Auto-smooth node handle" -msgstr "" - -#: ../src/ui/tool/node.cpp:433 -msgctxt "Path handle tip" -msgid "more: Shift, Ctrl, Alt" -msgstr "" - -#: ../src/ui/tool/node.cpp:435 -msgctxt "Path handle tip" -msgid "more: Ctrl, Alt" -msgstr "" - -#: ../src/ui/tool/node.cpp:441 -#, c-format -msgctxt "Path handle tip" -msgid "" -"Shift+Ctrl+Alt: preserve length and snap rotation angle to %g° " -"increments while rotating both handles" -msgstr "" - -#: ../src/ui/tool/node.cpp:446 -#, c-format -msgctxt "Path handle tip" -msgid "" -"Ctrl+Alt: preserve length and snap rotation angle to %g° increments" -msgstr "" - -#: ../src/ui/tool/node.cpp:452 -msgctxt "Path handle tip" -msgid "Shift+Alt: preserve handle length and rotate both handles" -msgstr "" - -#: ../src/ui/tool/node.cpp:455 -msgctxt "Path handle tip" -msgid "Alt: preserve handle length while dragging" -msgstr "" - -#: ../src/ui/tool/node.cpp:462 -#, c-format -msgctxt "Path handle tip" -msgid "" -"Shift+Ctrl: snap rotation angle to %g° increments and rotate both " -"handles" -msgstr "" - -#: ../src/ui/tool/node.cpp:466 -#, c-format -msgctxt "Path handle tip" -msgid "Ctrl: snap rotation angle to %g° increments, click to retract" -msgstr "" - -#: ../src/ui/tool/node.cpp:471 -msgctxt "Path hande tip" -msgid "Shift: rotate both handles by the same angle" -msgstr "" - -#: ../src/ui/tool/node.cpp:478 -#, c-format -msgctxt "Path handle tip" -msgid "Auto node handle: drag to convert to smooth node (%s)" -msgstr "" - -#: ../src/ui/tool/node.cpp:481 -#, c-format -msgctxt "Path handle tip" -msgid "%s: drag to shape the segment (%s)" -msgstr "" - -#: ../src/ui/tool/node.cpp:497 -#, c-format -msgctxt "Path handle tip" -msgid "Move handle by %s, %s; angle %.2f°, length %s" -msgstr "" - -#: ../src/ui/tool/node.cpp:1263 -msgctxt "Path node tip" -msgid "Shift: drag out a handle, click to toggle selection" -msgstr "" - -#: ../src/ui/tool/node.cpp:1265 -msgctxt "Path node tip" -msgid "Shift: click to toggle selection" -msgstr "" - -#: ../src/ui/tool/node.cpp:1270 -msgctxt "Path node tip" -msgid "Ctrl+Alt: move along handle lines, click to delete node" -msgstr "" - -#: ../src/ui/tool/node.cpp:1273 -msgctxt "Path node tip" -msgid "Ctrl: move along axes, click to change node type" -msgstr "" - -#: ../src/ui/tool/node.cpp:1277 -msgctxt "Path node tip" -msgid "Alt: sculpt nodes" -msgstr "" - -#: ../src/ui/tool/node.cpp:1285 -#, c-format -msgctxt "Path node tip" -msgid "%s: drag to shape the path (more: Shift, Ctrl, Alt)" -msgstr "" - -#: ../src/ui/tool/node.cpp:1288 -#, c-format -msgctxt "Path node tip" -msgid "" -"%s: drag to shape the path, click to toggle scale/rotation handles " -"(more: Shift, Ctrl, Alt)" -msgstr "" - -#: ../src/ui/tool/node.cpp:1291 -#, c-format -msgctxt "Path node tip" -msgid "" -"%s: drag to shape the path, click to select only this node (more: " -"Shift, Ctrl, Alt)" -msgstr "" - -#: ../src/ui/tool/node.cpp:1299 -#, c-format -msgctxt "Path node tip" -msgid "Move node by %s, %s" -msgstr "" - -#: ../src/ui/tool/node.cpp:1311 -msgid "Symmetric node" -msgstr "" - -#: ../src/ui/tool/node.cpp:1312 -msgid "Auto-smooth node" -msgstr "" - -#: ../src/ui/tool/path-manipulator.cpp:816 -msgid "Scale handle" -msgstr "" - -#: ../src/ui/tool/path-manipulator.cpp:840 -msgid "Rotate handle" -msgstr "" - -#. We need to call MPM's method because it could have been our last node -#: ../src/ui/tool/path-manipulator.cpp:1374 -#: ../src/widgets/node-toolbar.cpp:406 -msgid "Delete node" -msgstr "" - -#: ../src/ui/tool/path-manipulator.cpp:1382 -msgid "Cycle node type" -msgstr "" - -#: ../src/ui/tool/path-manipulator.cpp:1397 -msgid "Drag handle" -msgstr "" - -#: ../src/ui/tool/path-manipulator.cpp:1406 -msgid "Retract handle" -msgstr "" - -#: ../src/ui/tool/transform-handle-set.cpp:194 -msgctxt "Transform handle tip" -msgid "Shift+Ctrl: scale uniformly about the rotation center" -msgstr "" - -#: ../src/ui/tool/transform-handle-set.cpp:196 -msgctxt "Transform handle tip" -msgid "Ctrl: scale uniformly" -msgstr "" - -#: ../src/ui/tool/transform-handle-set.cpp:201 -msgctxt "Transform handle tip" -msgid "" -"Shift+Alt: scale using an integer ratio about the rotation center" -msgstr "" - -#: ../src/ui/tool/transform-handle-set.cpp:203 -msgctxt "Transform handle tip" -msgid "Shift: scale from the rotation center" -msgstr "" - -#: ../src/ui/tool/transform-handle-set.cpp:206 -msgctxt "Transform handle tip" -msgid "Alt: scale using an integer ratio" -msgstr "" - -#: ../src/ui/tool/transform-handle-set.cpp:208 -msgctxt "Transform handle tip" -msgid "Scale handle: drag to scale the selection" -msgstr "" - -#: ../src/ui/tool/transform-handle-set.cpp:213 -#, c-format -msgctxt "Transform handle tip" -msgid "Scale by %.2f%% x %.2f%%" -msgstr "" - -#: ../src/ui/tool/transform-handle-set.cpp:437 -#, c-format -msgctxt "Transform handle tip" -msgid "" -"Shift+Ctrl: rotate around the opposite corner and snap angle to %f° " -"increments" -msgstr "" - -#: ../src/ui/tool/transform-handle-set.cpp:440 -msgctxt "Transform handle tip" -msgid "Shift: rotate around the opposite corner" -msgstr "" - -#: ../src/ui/tool/transform-handle-set.cpp:444 -#, c-format -msgctxt "Transform handle tip" -msgid "Ctrl: snap angle to %f° increments" -msgstr "" - -#: ../src/ui/tool/transform-handle-set.cpp:446 -msgctxt "Transform handle tip" -msgid "" -"Rotation handle: drag to rotate the selection around the rotation " -"center" -msgstr "" - -#. event -#: ../src/ui/tool/transform-handle-set.cpp:451 -#, c-format -msgctxt "Transform handle tip" -msgid "Rotate by %.2f°" -msgstr "" - -#: ../src/ui/tool/transform-handle-set.cpp:577 -#, c-format -msgctxt "Transform handle tip" -msgid "" -"Shift+Ctrl: skew about the rotation center with snapping to %f° " -"increments" -msgstr "" - -#: ../src/ui/tool/transform-handle-set.cpp:580 -msgctxt "Transform handle tip" -msgid "Shift: skew about the rotation center" -msgstr "" - -#: ../src/ui/tool/transform-handle-set.cpp:584 -#, c-format -msgctxt "Transform handle tip" -msgid "Ctrl: snap skew angle to %f° increments" -msgstr "" - -#: ../src/ui/tool/transform-handle-set.cpp:587 -msgctxt "Transform handle tip" -msgid "" -"Skew handle: drag to skew (shear) selection about the opposite handle" -msgstr "" - -#: ../src/ui/tool/transform-handle-set.cpp:593 -#, c-format -msgctxt "Transform handle tip" -msgid "Skew horizontally by %.2f°" -msgstr "" - -#: ../src/ui/tool/transform-handle-set.cpp:596 -#, c-format -msgctxt "Transform handle tip" -msgid "Skew vertically by %.2f°" -msgstr "" - -#: ../src/ui/tool/transform-handle-set.cpp:655 -msgctxt "Transform handle tip" -msgid "Rotation center: drag to change the origin of transforms" -msgstr "" - -#: ../src/ui/widget/filter-effect-chooser.cpp:27 -msgid "Blur (%)" -msgstr "" - -#: ../src/ui/widget/layer-selector.cpp:118 -msgid "Toggle current layer visibility" -msgstr "" - -#: ../src/ui/widget/layer-selector.cpp:139 -msgid "Lock or unlock current layer" -msgstr "" - -#: ../src/ui/widget/layer-selector.cpp:142 -msgid "Current layer" -msgstr "" - -#: ../src/ui/widget/layer-selector.cpp:583 -msgid "(root)" -msgstr "" - -#: ../src/ui/widget/licensor.cpp:40 -msgid "Proprietary" -msgstr "" - -#: ../src/ui/widget/licensor.cpp:43 -msgid "MetadataLicence|Other" -msgstr "" - -#: ../src/ui/widget/object-composite-settings.cpp:67 -#: ../src/ui/widget/selected-style.cpp:1090 -#: ../src/ui/widget/selected-style.cpp:1091 -msgid "Opacity (%)" -msgstr "" - -#: ../src/ui/widget/object-composite-settings.cpp:180 -msgid "Change blur" -msgstr "" - -#: ../src/ui/widget/object-composite-settings.cpp:220 -#: ../src/ui/widget/selected-style.cpp:922 -#: ../src/ui/widget/selected-style.cpp:1216 -msgid "Change opacity" -msgstr "" - -#: ../src/ui/widget/page-sizer.cpp:237 -msgid "U_nits:" -msgstr "" - -#: ../src/ui/widget/page-sizer.cpp:238 -msgid "Width of paper" -msgstr "" - -#: ../src/ui/widget/page-sizer.cpp:239 -msgid "Height of paper" -msgstr "" - -#: ../src/ui/widget/page-sizer.cpp:240 -msgid "T_op margin:" -msgstr "" - -#: ../src/ui/widget/page-sizer.cpp:240 -msgid "Top margin" -msgstr "" - -#: ../src/ui/widget/page-sizer.cpp:241 -msgid "L_eft:" -msgstr "" - -#: ../src/ui/widget/page-sizer.cpp:241 -msgid "Left margin" -msgstr "" - -#: ../src/ui/widget/page-sizer.cpp:242 -msgid "Ri_ght:" -msgstr "" - -#: ../src/ui/widget/page-sizer.cpp:242 -msgid "Right margin" -msgstr "" - -#: ../src/ui/widget/page-sizer.cpp:243 -msgid "Botto_m:" -msgstr "" - -#: ../src/ui/widget/page-sizer.cpp:243 -msgid "Bottom margin" -msgstr "" - -#: ../src/ui/widget/page-sizer.cpp:303 ../share/extensions/hpgl_output.inx.h:7 -msgid "Orientation:" -msgstr "" - -#: ../src/ui/widget/page-sizer.cpp:306 -msgid "_Landscape" -msgstr "" - -#: ../src/ui/widget/page-sizer.cpp:311 -msgid "_Portrait" -msgstr "" - -#. ## Set up custom size frame -#: ../src/ui/widget/page-sizer.cpp:329 -msgid "Custom size" -msgstr "" - -#: ../src/ui/widget/page-sizer.cpp:374 -msgid "Resi_ze page to content..." -msgstr "" - -#: ../src/ui/widget/page-sizer.cpp:426 -msgid "_Resize page to drawing or selection" -msgstr "" - -#: ../src/ui/widget/page-sizer.cpp:427 -msgid "" -"Resize the page to fit the current selection, or the entire drawing if there " -"is no selection" -msgstr "" - -#: ../src/ui/widget/page-sizer.cpp:492 -msgid "Set page size" -msgstr "" - -#: ../src/ui/widget/panel.cpp:116 -msgid "List" -msgstr "" - -#: ../src/ui/widget/panel.cpp:139 -msgctxt "Swatches" -msgid "Size" -msgstr "" - -#: ../src/ui/widget/panel.cpp:143 -msgctxt "Swatches height" -msgid "Tiny" -msgstr "" - -#: ../src/ui/widget/panel.cpp:144 -msgctxt "Swatches height" -msgid "Small" -msgstr "" - -#: ../src/ui/widget/panel.cpp:145 -msgctxt "Swatches height" -msgid "Medium" -msgstr "" - -#: ../src/ui/widget/panel.cpp:146 -msgctxt "Swatches height" -msgid "Large" -msgstr "" - -#: ../src/ui/widget/panel.cpp:147 -msgctxt "Swatches height" -msgid "Huge" -msgstr "" - -#: ../src/ui/widget/panel.cpp:169 -msgctxt "Swatches" -msgid "Width" -msgstr "" - -#: ../src/ui/widget/panel.cpp:173 -msgctxt "Swatches width" -msgid "Narrower" -msgstr "" - -#: ../src/ui/widget/panel.cpp:174 -msgctxt "Swatches width" -msgid "Narrow" -msgstr "" - -#: ../src/ui/widget/panel.cpp:175 -msgctxt "Swatches width" -msgid "Medium" -msgstr "" - -#: ../src/ui/widget/panel.cpp:176 -msgctxt "Swatches width" -msgid "Wide" -msgstr "" - -#: ../src/ui/widget/panel.cpp:177 -msgctxt "Swatches width" -msgid "Wider" -msgstr "" - -#: ../src/ui/widget/panel.cpp:207 -msgctxt "Swatches" -msgid "Border" -msgstr "" - -#: ../src/ui/widget/panel.cpp:211 -msgctxt "Swatches border" -msgid "None" -msgstr "" - -#: ../src/ui/widget/panel.cpp:212 -msgctxt "Swatches border" -msgid "Solid" -msgstr "" - -#: ../src/ui/widget/panel.cpp:213 -msgctxt "Swatches border" -msgid "Wide" -msgstr "" - -#. TRANSLATORS: "Wrap" indicates how colour swatches are displayed -#: ../src/ui/widget/panel.cpp:244 -msgctxt "Swatches" -msgid "Wrap" -msgstr "" - -#: ../src/ui/widget/preferences-widget.cpp:802 -msgid "_Browse..." -msgstr "" - -#: ../src/ui/widget/preferences-widget.cpp:888 -msgid "Select a bitmap editor" -msgstr "" - -#: ../src/ui/widget/random.cpp:84 -msgid "" -"Reseed the random number generator; this creates a different sequence of " -"random numbers." -msgstr "" - -#: ../src/ui/widget/rendering-options.cpp:30 -msgid "Backend" -msgstr "" - -#: ../src/ui/widget/rendering-options.cpp:31 -msgid "Vector" -msgstr "" - -#: ../src/ui/widget/rendering-options.cpp:32 -msgid "Bitmap" -msgstr "" - -#: ../src/ui/widget/rendering-options.cpp:33 -msgid "Bitmap options" -msgstr "" - -#: ../src/ui/widget/rendering-options.cpp:35 -msgid "Preferred resolution of rendering, in dots per inch." -msgstr "" - -#: ../src/ui/widget/rendering-options.cpp:43 -msgid "" -"Render using Cairo vector operations. The resulting image is usually " -"smaller in file size and can be arbitrarily scaled, but some filter effects " -"will not be correctly rendered." -msgstr "" - -#: ../src/ui/widget/rendering-options.cpp:48 -msgid "" -"Render everything as bitmap. The resulting image is usually larger in file " -"size and cannot be arbitrarily scaled without quality loss, but all objects " -"will be rendered exactly as displayed." -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:127 -#: ../src/ui/widget/style-swatch.cpp:126 -msgid "Fill:" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:129 -msgid "O:" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:174 -msgid "N/A" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:177 -#: ../src/ui/widget/selected-style.cpp:1083 -#: ../src/ui/widget/selected-style.cpp:1084 -#: ../src/widgets/gradient-toolbar.cpp:176 -msgid "Nothing selected" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:179 -#: ../src/ui/widget/style-swatch.cpp:319 -msgctxt "Fill and stroke" -msgid "None" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:182 -#: ../src/ui/widget/style-swatch.cpp:321 -msgctxt "Fill and stroke" -msgid "No fill" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:182 -#: ../src/ui/widget/style-swatch.cpp:321 -msgctxt "Fill and stroke" -msgid "No stroke" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:184 -#: ../src/ui/widget/style-swatch.cpp:300 ../src/widgets/paint-selector.cpp:242 -msgid "Pattern" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:187 -#: ../src/ui/widget/style-swatch.cpp:302 -msgid "Pattern fill" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:187 -#: ../src/ui/widget/style-swatch.cpp:302 -msgid "Pattern stroke" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:189 -msgid "L" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:192 -#: ../src/ui/widget/style-swatch.cpp:294 -msgid "Linear gradient fill" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:192 -#: ../src/ui/widget/style-swatch.cpp:294 -msgid "Linear gradient stroke" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:199 -msgid "R" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:202 -#: ../src/ui/widget/style-swatch.cpp:298 -msgid "Radial gradient fill" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:202 -#: ../src/ui/widget/style-swatch.cpp:298 -msgid "Radial gradient stroke" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:209 -msgid "Different" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:212 -msgid "Different fills" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:212 -msgid "Different strokes" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:214 -#: ../src/ui/widget/style-swatch.cpp:324 -msgid "Unset" -msgstr "" - -#. TRANSLATORS COMMENT: unset is a verb here -#: ../src/ui/widget/selected-style.cpp:217 -#: ../src/ui/widget/selected-style.cpp:275 -#: ../src/ui/widget/selected-style.cpp:554 -#: ../src/ui/widget/style-swatch.cpp:326 ../src/widgets/fill-style.cpp:712 -msgid "Unset fill" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:217 -#: ../src/ui/widget/selected-style.cpp:275 -#: ../src/ui/widget/selected-style.cpp:570 -#: ../src/ui/widget/style-swatch.cpp:326 ../src/widgets/fill-style.cpp:712 -msgid "Unset stroke" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:220 -msgid "Flat color fill" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:220 -msgid "Flat color stroke" -msgstr "" - -#. TRANSLATOR COMMENT: A means "Averaged" -#: ../src/ui/widget/selected-style.cpp:223 -msgid "a" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:226 -msgid "Fill is averaged over selected objects" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:226 -msgid "Stroke is averaged over selected objects" -msgstr "" - -#. TRANSLATOR COMMENT: M means "Multiple" -#: ../src/ui/widget/selected-style.cpp:229 -msgid "m" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:232 -msgid "Multiple selected objects have the same fill" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:232 -msgid "Multiple selected objects have the same stroke" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:234 -msgid "Edit fill..." -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:234 -msgid "Edit stroke..." -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:238 -msgid "Last set color" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:242 -msgid "Last selected color" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:258 -msgid "Copy color" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:262 -msgid "Paste color" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:266 -#: ../src/ui/widget/selected-style.cpp:847 -msgid "Swap fill and stroke" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:270 -#: ../src/ui/widget/selected-style.cpp:579 -#: ../src/ui/widget/selected-style.cpp:588 -msgid "Make fill opaque" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:270 -msgid "Make stroke opaque" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:279 -#: ../src/ui/widget/selected-style.cpp:536 ../src/widgets/fill-style.cpp:510 -msgid "Remove fill" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:279 -#: ../src/ui/widget/selected-style.cpp:545 ../src/widgets/fill-style.cpp:510 -msgid "Remove stroke" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:600 -msgid "Apply last set color to fill" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:612 -msgid "Apply last set color to stroke" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:623 -msgid "Apply last selected color to fill" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:634 -msgid "Apply last selected color to stroke" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:660 -msgid "Invert fill" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:684 -msgid "Invert stroke" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:696 -msgid "White fill" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:708 -msgid "White stroke" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:720 -msgid "Black fill" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:732 -msgid "Black stroke" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:775 -msgid "Paste fill" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:793 -msgid "Paste stroke" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:949 -msgid "Change stroke width" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:1044 -msgid ", drag to adjust" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:1129 -#, c-format -msgid "Stroke width: %.5g%s%s" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:1133 -msgid " (averaged)" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:1161 -msgid "0 (transparent)" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:1185 -msgid "100% (opaque)" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:1352 -msgid "Adjust alpha" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:1354 -#, c-format -msgid "" -"Adjusting alpha: was %.3g, now %.3g (diff %.3g); with Ctrl to adjust lightness, with Shift to adjust saturation, without " -"modifiers to adjust hue" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:1358 -msgid "Adjust saturation" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:1360 -#, c-format -msgid "" -"Adjusting saturation: was %.3g, now %.3g (diff %.3g); with " -"Ctrl to adjust lightness, with Alt to adjust alpha, without " -"modifiers to adjust hue" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:1364 -msgid "Adjust lightness" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:1366 -#, c-format -msgid "" -"Adjusting lightness: was %.3g, now %.3g (diff %.3g); with " -"Shift to adjust saturation, with Alt to adjust alpha, without " -"modifiers to adjust hue" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:1370 -msgid "Adjust hue" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:1372 -#, c-format -msgid "" -"Adjusting hue: was %.3g, now %.3g (diff %.3g); with Shift to adjust saturation, with Alt to adjust alpha, with Ctrl " -"to adjust lightness" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:1492 -#: ../src/ui/widget/selected-style.cpp:1506 -msgid "Adjust stroke width" -msgstr "" - -#: ../src/ui/widget/selected-style.cpp:1493 -#, c-format -msgid "Adjusting stroke width: was %.3g, now %.3g (diff %.3g)" -msgstr "" - -#. TRANSLATORS: "Link" means to _link_ two sliders together -#: ../src/ui/widget/spin-scale.cpp:138 ../src/ui/widget/spin-slider.cpp:156 -msgctxt "Sliders" -msgid "Link" -msgstr "" - -#: ../src/ui/widget/style-swatch.cpp:292 -msgid "L Gradient" -msgstr "" - -#: ../src/ui/widget/style-swatch.cpp:296 -msgid "R Gradient" -msgstr "" - -#: ../src/ui/widget/style-swatch.cpp:312 -#, c-format -msgid "Fill: %06x/%.3g" -msgstr "" - -#: ../src/ui/widget/style-swatch.cpp:314 -#, c-format -msgid "Stroke: %06x/%.3g" -msgstr "" - -#: ../src/ui/widget/style-swatch.cpp:346 -#, c-format -msgid "Stroke width: %.5g%s" -msgstr "" - -#: ../src/ui/widget/style-swatch.cpp:362 -#, c-format -msgid "O: %2.0f" -msgstr "" - -#: ../src/ui/widget/style-swatch.cpp:367 -#, c-format -msgid "Opacity: %2.1f %%" -msgstr "" - -#: ../src/vanishing-point.cpp:132 -msgid "Split vanishing points" -msgstr "" - -#: ../src/vanishing-point.cpp:177 -msgid "Merge vanishing points" -msgstr "" - -#: ../src/vanishing-point.cpp:243 -msgid "3D box: Move vanishing point" -msgstr "" - -#: ../src/vanishing-point.cpp:326 -#, c-format -msgid "Finite vanishing point shared by %d box" -msgid_plural "" -"Finite vanishing point shared by %d boxes; drag with Shift to separate selected box(es)" -msgstr[0] "" -msgstr[1] "" - -#. This won't make sense any more when infinite VPs are not shown on the canvas, -#. but currently we update the status message anyway -#: ../src/vanishing-point.cpp:333 -#, c-format -msgid "Infinite vanishing point shared by %d box" -msgid_plural "" -"Infinite vanishing point shared by %d boxes; drag with " -"Shift to separate selected box(es)" -msgstr[0] "" -msgstr[1] "" - -#: ../src/vanishing-point.cpp:341 -#, c-format -msgid "" -"shared by %d box; drag with Shift to separate selected box(es)" -msgid_plural "" -"shared by %d boxes; drag with Shift to separate selected box" -"(es)" -msgstr[0] "" -msgstr[1] "" - -#: ../src/verbs.cpp:155 ../src/widgets/calligraphy-toolbar.cpp:647 -msgid "Edit" -msgstr "" - -#: ../src/verbs.cpp:231 -msgid "Context" -msgstr "" - -#: ../src/verbs.cpp:250 ../src/verbs.cpp:2167 -#: ../share/extensions/jessyInk_view.inx.h:1 -#: ../share/extensions/polyhedron_3d.inx.h:26 -msgid "View" -msgstr "" - -#: ../src/verbs.cpp:270 -msgid "Dialog" -msgstr "" - -#: ../src/verbs.cpp:327 ../share/extensions/lorem_ipsum.inx.h:8 -#: ../share/extensions/replace_font.inx.h:11 -#: ../share/extensions/split.inx.h:10 ../share/extensions/text_braille.inx.h:2 -#: ../share/extensions/text_extract.inx.h:14 -#: ../share/extensions/text_flipcase.inx.h:2 -#: ../share/extensions/text_lowercase.inx.h:2 -#: ../share/extensions/text_randomcase.inx.h:2 -#: ../share/extensions/text_sentencecase.inx.h:2 -#: ../share/extensions/text_titlecase.inx.h:2 -#: ../share/extensions/text_uppercase.inx.h:2 -msgid "Text" -msgstr "" - -#: ../src/verbs.cpp:1174 -msgid "Switch to next layer" -msgstr "" - -#: ../src/verbs.cpp:1175 -msgid "Switched to next layer." -msgstr "" - -#: ../src/verbs.cpp:1177 -msgid "Cannot go past last layer." -msgstr "" - -#: ../src/verbs.cpp:1186 -msgid "Switch to previous layer" -msgstr "" - -#: ../src/verbs.cpp:1187 -msgid "Switched to previous layer." -msgstr "" - -#: ../src/verbs.cpp:1189 -msgid "Cannot go before first layer." -msgstr "" - -#: ../src/verbs.cpp:1210 ../src/verbs.cpp:1307 ../src/verbs.cpp:1339 -#: ../src/verbs.cpp:1345 ../src/verbs.cpp:1369 ../src/verbs.cpp:1384 -msgid "No current layer." -msgstr "" - -#: ../src/verbs.cpp:1239 ../src/verbs.cpp:1243 -#, c-format -msgid "Raised layer %s." -msgstr "" - -#: ../src/verbs.cpp:1240 -msgid "Layer to top" -msgstr "" - -#: ../src/verbs.cpp:1244 -msgid "Raise layer" -msgstr "" - -#: ../src/verbs.cpp:1247 ../src/verbs.cpp:1251 -#, c-format -msgid "Lowered layer %s." -msgstr "" - -#: ../src/verbs.cpp:1248 -msgid "Layer to bottom" -msgstr "" - -#: ../src/verbs.cpp:1252 -msgid "Lower layer" -msgstr "" - -#: ../src/verbs.cpp:1261 -msgid "Cannot move layer any further." -msgstr "" - -#: ../src/verbs.cpp:1275 ../src/verbs.cpp:1294 -#, c-format -msgid "%s copy" -msgstr "" - -#: ../src/verbs.cpp:1302 -msgid "Duplicate layer" -msgstr "" - -#. TRANSLATORS: this means "The layer has been duplicated." -#: ../src/verbs.cpp:1305 -msgid "Duplicated layer." -msgstr "" - -#: ../src/verbs.cpp:1334 -msgid "Delete layer" -msgstr "" - -#. TRANSLATORS: this means "The layer has been deleted." -#: ../src/verbs.cpp:1337 -msgid "Deleted layer." -msgstr "" - -#: ../src/verbs.cpp:1354 -msgid "Show all layers" -msgstr "" - -#: ../src/verbs.cpp:1359 -msgid "Hide all layers" -msgstr "" - -#: ../src/verbs.cpp:1364 -msgid "Lock all layers" -msgstr "" - -#: ../src/verbs.cpp:1378 -msgid "Unlock all layers" -msgstr "" - -#: ../src/verbs.cpp:1452 -msgid "Flip horizontally" -msgstr "" - -#: ../src/verbs.cpp:1457 -msgid "Flip vertically" -msgstr "" - -#. TRANSLATORS: If you have translated the tutorial-basic.en.svgz file to your language, -#. then translate this string as "tutorial-basic.LANG.svgz" (where LANG is your language -#. code); otherwise leave as "tutorial-basic.svg". -#: ../src/verbs.cpp:2050 -msgid "tutorial-basic.svg" -msgstr "" - -#. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2054 -msgid "tutorial-shapes.svg" -msgstr "" - -#. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2058 -msgid "tutorial-advanced.svg" -msgstr "" - -#. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2062 -msgid "tutorial-tracing.svg" -msgstr "" - -#. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2066 -msgid "tutorial-calligraphy.svg" -msgstr "" - -#. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2070 -msgid "tutorial-interpolate.svg" -msgstr "" - -#. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2074 -msgid "tutorial-elements.svg" -msgstr "" - -#. TRANSLATORS: See "tutorial-basic.svg" comment. -#: ../src/verbs.cpp:2078 -msgid "tutorial-tips.svg" -msgstr "" - -#: ../src/verbs.cpp:2266 ../src/verbs.cpp:2852 -msgid "Unlock all objects in the current layer" -msgstr "" - -#: ../src/verbs.cpp:2270 ../src/verbs.cpp:2854 -msgid "Unlock all objects in all layers" -msgstr "" - -#: ../src/verbs.cpp:2274 ../src/verbs.cpp:2856 -msgid "Unhide all objects in the current layer" -msgstr "" - -#: ../src/verbs.cpp:2278 ../src/verbs.cpp:2858 -msgid "Unhide all objects in all layers" -msgstr "" - -#: ../src/verbs.cpp:2293 -msgid "Does nothing" -msgstr "" - -#: ../src/verbs.cpp:2296 -msgid "Create new document from the default template" -msgstr "" - -#: ../src/verbs.cpp:2298 -msgid "_Open..." -msgstr "" - -#: ../src/verbs.cpp:2299 -msgid "Open an existing document" -msgstr "" - -#: ../src/verbs.cpp:2300 -msgid "Re_vert" -msgstr "" - -#: ../src/verbs.cpp:2301 -msgid "Revert to the last saved version of document (changes will be lost)" -msgstr "" - -#: ../src/verbs.cpp:2302 -msgid "Save document" -msgstr "" - -#: ../src/verbs.cpp:2304 -msgid "Save _As..." -msgstr "" - -#: ../src/verbs.cpp:2305 -msgid "Save document under a new name" -msgstr "" - -#: ../src/verbs.cpp:2306 -msgid "Save a Cop_y..." -msgstr "" - -#: ../src/verbs.cpp:2307 -msgid "Save a copy of the document under a new name" -msgstr "" - -#: ../src/verbs.cpp:2308 -msgid "_Print..." -msgstr "" - -#: ../src/verbs.cpp:2308 -msgid "Print document" -msgstr "" - -#. TRANSLATORS: "Vacuum Defs" means "Clean up defs" (so as to remove unused definitions) -#: ../src/verbs.cpp:2311 -msgid "Clean _up document" -msgstr "" - -#: ../src/verbs.cpp:2311 -msgid "" -"Remove unused definitions (such as gradients or clipping paths) from the <" -"defs> of the document" -msgstr "" - -#: ../src/verbs.cpp:2313 -msgid "_Import..." -msgstr "" - -#: ../src/verbs.cpp:2314 -msgid "Import a bitmap or SVG image into this document" -msgstr "" - -#: ../src/verbs.cpp:2315 -msgid "_Export Bitmap..." -msgstr "" - -#: ../src/verbs.cpp:2316 -msgid "Export this document or a selection as a bitmap image" -msgstr "" - -#: ../src/verbs.cpp:2317 -msgid "Import Clip Art..." -msgstr "" - -#: ../src/verbs.cpp:2318 -msgid "Import clipart from Open Clip Art Library" -msgstr "" - -#. new FileVerb(SP_VERB_FILE_EXPORT_TO_OCAL, "FileExportToOCAL", N_("Export To Open Clip Art Library"), N_("Export this document to Open Clip Art Library"), INKSCAPE_ICON_DOCUMENT_EXPORT_OCAL), -#: ../src/verbs.cpp:2320 -msgid "N_ext Window" -msgstr "" - -#: ../src/verbs.cpp:2321 -msgid "Switch to the next document window" -msgstr "" - -#: ../src/verbs.cpp:2322 -msgid "P_revious Window" -msgstr "" - -#: ../src/verbs.cpp:2323 -msgid "Switch to the previous document window" -msgstr "" - -#: ../src/verbs.cpp:2324 -msgid "_Close" -msgstr "" - -#: ../src/verbs.cpp:2325 -msgid "Close this document window" -msgstr "" - -#: ../src/verbs.cpp:2326 -msgid "_Quit" -msgstr "" - -#: ../src/verbs.cpp:2326 -msgid "Quit Inkscape" -msgstr "" - -#: ../src/verbs.cpp:2329 -msgid "Undo last action" -msgstr "" - -#: ../src/verbs.cpp:2332 -msgid "Do again the last undone action" -msgstr "" - -#: ../src/verbs.cpp:2333 -msgid "Cu_t" -msgstr "" - -#: ../src/verbs.cpp:2334 -msgid "Cut selection to clipboard" -msgstr "" - -#: ../src/verbs.cpp:2335 -msgid "_Copy" -msgstr "" - -#: ../src/verbs.cpp:2336 -msgid "Copy selection to clipboard" -msgstr "" - -#: ../src/verbs.cpp:2337 -msgid "_Paste" -msgstr "" - -#: ../src/verbs.cpp:2338 -msgid "Paste objects from clipboard to mouse point, or paste text" -msgstr "" - -#: ../src/verbs.cpp:2339 -msgid "Paste _Style" -msgstr "" - -#: ../src/verbs.cpp:2340 -msgid "Apply the style of the copied object to selection" -msgstr "" - -#: ../src/verbs.cpp:2342 -msgid "Scale selection to match the size of the copied object" -msgstr "" - -#: ../src/verbs.cpp:2343 -msgid "Paste _Width" -msgstr "" - -#: ../src/verbs.cpp:2344 -msgid "Scale selection horizontally to match the width of the copied object" -msgstr "" - -#: ../src/verbs.cpp:2345 -msgid "Paste _Height" -msgstr "" - -#: ../src/verbs.cpp:2346 -msgid "Scale selection vertically to match the height of the copied object" -msgstr "" - -#: ../src/verbs.cpp:2347 -msgid "Paste Size Separately" -msgstr "" - -#: ../src/verbs.cpp:2348 -msgid "Scale each selected object to match the size of the copied object" -msgstr "" - -#: ../src/verbs.cpp:2349 -msgid "Paste Width Separately" -msgstr "" - -#: ../src/verbs.cpp:2350 -msgid "" -"Scale each selected object horizontally to match the width of the copied " -"object" -msgstr "" - -#: ../src/verbs.cpp:2351 -msgid "Paste Height Separately" -msgstr "" - -#: ../src/verbs.cpp:2352 -msgid "" -"Scale each selected object vertically to match the height of the copied " -"object" -msgstr "" - -#: ../src/verbs.cpp:2353 -msgid "Paste _In Place" -msgstr "" - -#: ../src/verbs.cpp:2354 -msgid "Paste objects from clipboard to the original location" -msgstr "" - -#: ../src/verbs.cpp:2355 -msgid "Paste Path _Effect" -msgstr "" - -#: ../src/verbs.cpp:2356 -msgid "Apply the path effect of the copied object to selection" -msgstr "" - -#: ../src/verbs.cpp:2357 -msgid "Remove Path _Effect" -msgstr "" - -#: ../src/verbs.cpp:2358 -msgid "Remove any path effects from selected objects" -msgstr "" - -#: ../src/verbs.cpp:2359 -msgid "_Remove Filters" -msgstr "" - -#: ../src/verbs.cpp:2360 -msgid "Remove any filters from selected objects" -msgstr "" - -#: ../src/verbs.cpp:2361 -msgid "_Delete" -msgstr "" - -#: ../src/verbs.cpp:2362 -msgid "Delete selection" -msgstr "" - -#: ../src/verbs.cpp:2363 -msgid "Duplic_ate" -msgstr "" - -#: ../src/verbs.cpp:2364 -msgid "Duplicate selected objects" -msgstr "" - -#: ../src/verbs.cpp:2365 -msgid "Create Clo_ne" -msgstr "" - -#: ../src/verbs.cpp:2366 -msgid "Create a clone (a copy linked to the original) of selected object" -msgstr "" - -#: ../src/verbs.cpp:2367 -msgid "Unlin_k Clone" -msgstr "" - -#: ../src/verbs.cpp:2368 -msgid "" -"Cut the selected clones' links to the originals, turning them into " -"standalone objects" -msgstr "" - -#: ../src/verbs.cpp:2369 -msgid "Relink to Copied" -msgstr "" - -#: ../src/verbs.cpp:2370 -msgid "Relink the selected clones to the object currently on the clipboard" -msgstr "" - -#: ../src/verbs.cpp:2371 -msgid "Select _Original" -msgstr "" - -#: ../src/verbs.cpp:2372 -msgid "Select the object to which the selected clone is linked" -msgstr "" - -#: ../src/verbs.cpp:2373 -msgid "Clone original path (LPE)" -msgstr "" - -#: ../src/verbs.cpp:2374 -msgid "" -"Creates a new path, applies the Clone original LPE, and refers it to the " -"selected path" -msgstr "" - -#: ../src/verbs.cpp:2375 -msgid "Objects to _Marker" -msgstr "" - -#: ../src/verbs.cpp:2376 -msgid "Convert selection to a line marker" -msgstr "" - -#: ../src/verbs.cpp:2377 -msgid "Objects to Gu_ides" -msgstr "" - -#: ../src/verbs.cpp:2378 -msgid "" -"Convert selected objects to a collection of guidelines aligned with their " -"edges" -msgstr "" - -#: ../src/verbs.cpp:2379 -msgid "Objects to Patter_n" -msgstr "" - -#: ../src/verbs.cpp:2380 -msgid "Convert selection to a rectangle with tiled pattern fill" -msgstr "" - -#: ../src/verbs.cpp:2381 -msgid "Pattern to _Objects" -msgstr "" - -#: ../src/verbs.cpp:2382 -msgid "Extract objects from a tiled pattern fill" -msgstr "" - -#: ../src/verbs.cpp:2383 -msgid "Group to Symbol" -msgstr "" - -#: ../src/verbs.cpp:2384 -msgid "Convert group to a symbol" -msgstr "" - -#: ../src/verbs.cpp:2385 -msgid "Symbol to Group" -msgstr "" - -#: ../src/verbs.cpp:2386 -msgid "Extract group from a symbol" -msgstr "" - -#: ../src/verbs.cpp:2387 -msgid "Clea_r All" -msgstr "" - -#: ../src/verbs.cpp:2388 -msgid "Delete all objects from document" -msgstr "" - -#: ../src/verbs.cpp:2389 -msgid "Select Al_l" -msgstr "" - -#: ../src/verbs.cpp:2390 -msgid "Select all objects or all nodes" -msgstr "" - -#: ../src/verbs.cpp:2391 -msgid "Select All in All La_yers" -msgstr "" - -#: ../src/verbs.cpp:2392 -msgid "Select all objects in all visible and unlocked layers" -msgstr "" - -#: ../src/verbs.cpp:2393 -msgid "Fill _and Stroke" -msgstr "" - -#: ../src/verbs.cpp:2394 -msgid "" -"Select all objects with the same fill and stroke as the selected objects" -msgstr "" - -#: ../src/verbs.cpp:2395 -msgid "_Fill Color" -msgstr "" - -#: ../src/verbs.cpp:2396 -msgid "Select all objects with the same fill as the selected objects" -msgstr "" - -#: ../src/verbs.cpp:2397 -msgid "_Stroke Color" -msgstr "" - -#: ../src/verbs.cpp:2398 -msgid "Select all objects with the same stroke as the selected objects" -msgstr "" - -#: ../src/verbs.cpp:2399 -msgid "Stroke St_yle" -msgstr "" - -#: ../src/verbs.cpp:2400 -msgid "" -"Select all objects with the same stroke style (width, dash, markers) as the " -"selected objects" -msgstr "" - -#: ../src/verbs.cpp:2401 -msgid "_Object Type" -msgstr "" - -#: ../src/verbs.cpp:2402 -msgid "" -"Select all objects with the same object type (rect, arc, text, path, bitmap " -"etc) as the selected objects" -msgstr "" - -#: ../src/verbs.cpp:2403 -msgid "In_vert Selection" -msgstr "" - -#: ../src/verbs.cpp:2404 -msgid "Invert selection (unselect what is selected and select everything else)" -msgstr "" - -#: ../src/verbs.cpp:2405 -msgid "Invert in All Layers" -msgstr "" - -#: ../src/verbs.cpp:2406 -msgid "Invert selection in all visible and unlocked layers" -msgstr "" - -#: ../src/verbs.cpp:2407 -msgid "Select Next" -msgstr "" - -#: ../src/verbs.cpp:2408 -msgid "Select next object or node" -msgstr "" - -#: ../src/verbs.cpp:2409 -msgid "Select Previous" -msgstr "" - -#: ../src/verbs.cpp:2410 -msgid "Select previous object or node" -msgstr "" - -#: ../src/verbs.cpp:2411 -msgid "D_eselect" -msgstr "" - -#: ../src/verbs.cpp:2412 -msgid "Deselect any selected objects or nodes" -msgstr "" - -#: ../src/verbs.cpp:2413 -msgid "Create _Guides Around the Page" -msgstr "" - -#: ../src/verbs.cpp:2414 ../src/verbs.cpp:2416 -msgid "Create four guides aligned with the page borders" -msgstr "" - -#: ../src/verbs.cpp:2417 -msgid "Next path effect parameter" -msgstr "" - -#: ../src/verbs.cpp:2418 -msgid "Show next editable path effect parameter" -msgstr "" - -#. Selection -#: ../src/verbs.cpp:2421 -msgid "Raise to _Top" -msgstr "" - -#: ../src/verbs.cpp:2422 -msgid "Raise selection to top" -msgstr "" - -#: ../src/verbs.cpp:2423 -msgid "Lower to _Bottom" -msgstr "" - -#: ../src/verbs.cpp:2424 -msgid "Lower selection to bottom" -msgstr "" - -#: ../src/verbs.cpp:2425 -msgid "_Raise" -msgstr "" - -#: ../src/verbs.cpp:2426 -msgid "Raise selection one step" -msgstr "" - -#: ../src/verbs.cpp:2427 -msgid "_Lower" -msgstr "" - -#: ../src/verbs.cpp:2428 -msgid "Lower selection one step" -msgstr "" - -#: ../src/verbs.cpp:2430 -msgid "Group selected objects" -msgstr "" - -#: ../src/verbs.cpp:2432 -msgid "Ungroup selected groups" -msgstr "" - -#: ../src/verbs.cpp:2434 -msgid "_Put on Path" -msgstr "" - -#: ../src/verbs.cpp:2436 -msgid "_Remove from Path" -msgstr "" - -#: ../src/verbs.cpp:2438 -msgid "Remove Manual _Kerns" -msgstr "" - -#. TRANSLATORS: "glyph": An image used in the visual representation of characters; -#. roughly speaking, how a character looks. A font is a set of glyphs. -#: ../src/verbs.cpp:2441 -msgid "Remove all manual kerns and glyph rotations from a text object" -msgstr "" - -#: ../src/verbs.cpp:2443 -msgid "_Union" -msgstr "" - -#: ../src/verbs.cpp:2444 -msgid "Create union of selected paths" -msgstr "" - -#: ../src/verbs.cpp:2445 -msgid "_Intersection" -msgstr "" - -#: ../src/verbs.cpp:2446 -msgid "Create intersection of selected paths" -msgstr "" - -#: ../src/verbs.cpp:2447 -msgid "_Difference" -msgstr "" - -#: ../src/verbs.cpp:2448 -msgid "Create difference of selected paths (bottom minus top)" -msgstr "" - -#: ../src/verbs.cpp:2449 -msgid "E_xclusion" -msgstr "" - -#: ../src/verbs.cpp:2450 -msgid "" -"Create exclusive OR of selected paths (those parts that belong to only one " -"path)" -msgstr "" - -#: ../src/verbs.cpp:2451 -msgid "Di_vision" -msgstr "" - -#: ../src/verbs.cpp:2452 -msgid "Cut the bottom path into pieces" -msgstr "" - -#. TRANSLATORS: "to cut a path" is not the same as "to break a path apart" - see the -#. Advanced tutorial for more info -#: ../src/verbs.cpp:2455 -msgid "Cut _Path" -msgstr "" - -#: ../src/verbs.cpp:2456 -msgid "Cut the bottom path's stroke into pieces, removing fill" -msgstr "" - -#. TRANSLATORS: "outset": expand a shape by offsetting the object's path, -#. i.e. by displacing it perpendicular to the path in each point. -#. See also the Advanced Tutorial for explanation. -#: ../src/verbs.cpp:2460 -msgid "Outs_et" -msgstr "" - -#: ../src/verbs.cpp:2461 -msgid "Outset selected paths" -msgstr "" - -#: ../src/verbs.cpp:2463 -msgid "O_utset Path by 1 px" -msgstr "" - -#: ../src/verbs.cpp:2464 -msgid "Outset selected paths by 1 px" -msgstr "" - -#: ../src/verbs.cpp:2466 -msgid "O_utset Path by 10 px" -msgstr "" - -#: ../src/verbs.cpp:2467 -msgid "Outset selected paths by 10 px" -msgstr "" - -#. TRANSLATORS: "inset": contract a shape by offsetting the object's path, -#. i.e. by displacing it perpendicular to the path in each point. -#. See also the Advanced Tutorial for explanation. -#: ../src/verbs.cpp:2471 -msgid "I_nset" -msgstr "" - -#: ../src/verbs.cpp:2472 -msgid "Inset selected paths" -msgstr "" - -#: ../src/verbs.cpp:2474 -msgid "I_nset Path by 1 px" -msgstr "" - -#: ../src/verbs.cpp:2475 -msgid "Inset selected paths by 1 px" -msgstr "" - -#: ../src/verbs.cpp:2477 -msgid "I_nset Path by 10 px" -msgstr "" - -#: ../src/verbs.cpp:2478 -msgid "Inset selected paths by 10 px" -msgstr "" - -#: ../src/verbs.cpp:2480 -msgid "D_ynamic Offset" -msgstr "" - -#: ../src/verbs.cpp:2480 -msgid "Create a dynamic offset object" -msgstr "" - -#: ../src/verbs.cpp:2482 -msgid "_Linked Offset" -msgstr "" - -#: ../src/verbs.cpp:2483 -msgid "Create a dynamic offset object linked to the original path" -msgstr "" - -#: ../src/verbs.cpp:2485 -msgid "_Stroke to Path" -msgstr "" - -#: ../src/verbs.cpp:2486 -msgid "Convert selected object's stroke to paths" -msgstr "" - -#: ../src/verbs.cpp:2487 -msgid "Si_mplify" -msgstr "" - -#: ../src/verbs.cpp:2488 -msgid "Simplify selected paths (remove extra nodes)" -msgstr "" - -#: ../src/verbs.cpp:2489 -msgid "_Reverse" -msgstr "" - -#: ../src/verbs.cpp:2490 -msgid "Reverse the direction of selected paths (useful for flipping markers)" -msgstr "" - -#: ../src/verbs.cpp:2493 -msgid "Create one or more paths from a bitmap by tracing it" -msgstr "" - -#: ../src/verbs.cpp:2494 -msgid "Make a _Bitmap Copy" -msgstr "" - -#: ../src/verbs.cpp:2495 -msgid "Export selection to a bitmap and insert it into document" -msgstr "" - -#: ../src/verbs.cpp:2496 -msgid "_Combine" -msgstr "" - -#: ../src/verbs.cpp:2497 -msgid "Combine several paths into one" -msgstr "" - -#. TRANSLATORS: "to cut a path" is not the same as "to break a path apart" - see the -#. Advanced tutorial for more info -#: ../src/verbs.cpp:2500 -msgid "Break _Apart" -msgstr "" - -#: ../src/verbs.cpp:2501 -msgid "Break selected paths into subpaths" -msgstr "" - -#: ../src/verbs.cpp:2502 -msgid "Ro_ws and Columns..." -msgstr "" - -#: ../src/verbs.cpp:2503 -msgid "Arrange selected objects in a table" -msgstr "" - -#. Layer -#: ../src/verbs.cpp:2505 -msgid "_Add Layer..." -msgstr "" - -#: ../src/verbs.cpp:2506 -msgid "Create a new layer" -msgstr "" - -#: ../src/verbs.cpp:2507 -msgid "Re_name Layer..." -msgstr "" - -#: ../src/verbs.cpp:2508 -msgid "Rename the current layer" -msgstr "" - -#: ../src/verbs.cpp:2509 -msgid "Switch to Layer Abov_e" -msgstr "" - -#: ../src/verbs.cpp:2510 -msgid "Switch to the layer above the current" -msgstr "" - -#: ../src/verbs.cpp:2511 -msgid "Switch to Layer Belo_w" -msgstr "" - -#: ../src/verbs.cpp:2512 -msgid "Switch to the layer below the current" -msgstr "" - -#: ../src/verbs.cpp:2513 -msgid "Move Selection to Layer Abo_ve" -msgstr "" - -#: ../src/verbs.cpp:2514 -msgid "Move selection to the layer above the current" -msgstr "" - -#: ../src/verbs.cpp:2515 -msgid "Move Selection to Layer Bel_ow" -msgstr "" - -#: ../src/verbs.cpp:2516 -msgid "Move selection to the layer below the current" -msgstr "" - -#: ../src/verbs.cpp:2517 -msgid "Move Selection to Layer..." -msgstr "" - -#: ../src/verbs.cpp:2519 -msgid "Layer to _Top" -msgstr "" - -#: ../src/verbs.cpp:2520 -msgid "Raise the current layer to the top" -msgstr "" - -#: ../src/verbs.cpp:2521 -msgid "Layer to _Bottom" -msgstr "" - -#: ../src/verbs.cpp:2522 -msgid "Lower the current layer to the bottom" -msgstr "" - -#: ../src/verbs.cpp:2523 -msgid "_Raise Layer" -msgstr "" - -#: ../src/verbs.cpp:2524 -msgid "Raise the current layer" -msgstr "" - -#: ../src/verbs.cpp:2525 -msgid "_Lower Layer" -msgstr "" - -#: ../src/verbs.cpp:2526 -msgid "Lower the current layer" -msgstr "" - -#: ../src/verbs.cpp:2527 -msgid "D_uplicate Current Layer" -msgstr "" - -#: ../src/verbs.cpp:2528 -msgid "Duplicate an existing layer" -msgstr "" - -#: ../src/verbs.cpp:2529 -msgid "_Delete Current Layer" -msgstr "" - -#: ../src/verbs.cpp:2530 -msgid "Delete the current layer" -msgstr "" - -#: ../src/verbs.cpp:2531 -msgid "_Show/hide other layers" -msgstr "" - -#: ../src/verbs.cpp:2532 -msgid "Solo the current layer" -msgstr "" - -#: ../src/verbs.cpp:2533 -msgid "_Show all layers" -msgstr "" - -#: ../src/verbs.cpp:2534 -msgid "Show all the layers" -msgstr "" - -#: ../src/verbs.cpp:2535 -msgid "_Hide all layers" -msgstr "" - -#: ../src/verbs.cpp:2536 -msgid "Hide all the layers" -msgstr "" - -#: ../src/verbs.cpp:2537 -msgid "_Lock all layers" -msgstr "" - -#: ../src/verbs.cpp:2538 -msgid "Lock all the layers" -msgstr "" - -#: ../src/verbs.cpp:2539 -msgid "Lock/Unlock _other layers" -msgstr "" - -#: ../src/verbs.cpp:2540 -msgid "Lock all the other layers" -msgstr "" - -#: ../src/verbs.cpp:2541 -msgid "_Unlock all layers" -msgstr "" - -#: ../src/verbs.cpp:2542 -msgid "Unlock all the layers" -msgstr "" - -#: ../src/verbs.cpp:2543 -msgid "_Lock/Unlock Current Layer" -msgstr "" - -#: ../src/verbs.cpp:2544 -msgid "Toggle lock on current layer" -msgstr "" - -#: ../src/verbs.cpp:2545 -msgid "_Show/hide Current Layer" -msgstr "" - -#: ../src/verbs.cpp:2546 -msgid "Toggle visibility of current layer" -msgstr "" - -#. Object -#: ../src/verbs.cpp:2549 -msgid "Rotate _90° CW" -msgstr "" - -#. This is shared between tooltips and statusbar, so they -#. must use UTF-8, not HTML entities for special characters. -#: ../src/verbs.cpp:2552 -msgid "Rotate selection 90° clockwise" -msgstr "" - -#: ../src/verbs.cpp:2553 -msgid "Rotate 9_0° CCW" -msgstr "" - -#. This is shared between tooltips and statusbar, so they -#. must use UTF-8, not HTML entities for special characters. -#: ../src/verbs.cpp:2556 -msgid "Rotate selection 90° counter-clockwise" -msgstr "" - -#: ../src/verbs.cpp:2557 -msgid "Remove _Transformations" -msgstr "" - -#: ../src/verbs.cpp:2558 -msgid "Remove transformations from object" -msgstr "" - -#: ../src/verbs.cpp:2559 -msgid "_Object to Path" -msgstr "" - -#: ../src/verbs.cpp:2560 -msgid "Convert selected object to path" -msgstr "" - -#: ../src/verbs.cpp:2561 -msgid "_Flow into Frame" -msgstr "" - -#: ../src/verbs.cpp:2562 -msgid "" -"Put text into a frame (path or shape), creating a flowed text linked to the " -"frame object" -msgstr "" - -#: ../src/verbs.cpp:2563 -msgid "_Unflow" -msgstr "" - -#: ../src/verbs.cpp:2564 -msgid "Remove text from frame (creates a single-line text object)" -msgstr "" - -#: ../src/verbs.cpp:2565 -msgid "_Convert to Text" -msgstr "" - -#: ../src/verbs.cpp:2566 -msgid "Convert flowed text to regular text object (preserves appearance)" -msgstr "" - -#: ../src/verbs.cpp:2568 -msgid "Flip _Horizontal" -msgstr "" - -#: ../src/verbs.cpp:2568 -msgid "Flip selected objects horizontally" -msgstr "" - -#: ../src/verbs.cpp:2571 -msgid "Flip _Vertical" -msgstr "" - -#: ../src/verbs.cpp:2571 -msgid "Flip selected objects vertically" -msgstr "" - -#: ../src/verbs.cpp:2574 -msgid "Apply mask to selection (using the topmost object as mask)" -msgstr "" - -#: ../src/verbs.cpp:2576 -msgid "Edit mask" -msgstr "" - -#: ../src/verbs.cpp:2577 ../src/verbs.cpp:2583 -msgid "_Release" -msgstr "" - -#: ../src/verbs.cpp:2578 -msgid "Remove mask from selection" -msgstr "" - -#: ../src/verbs.cpp:2580 -msgid "" -"Apply clipping path to selection (using the topmost object as clipping path)" -msgstr "" - -#: ../src/verbs.cpp:2582 -msgid "Edit clipping path" -msgstr "" - -#: ../src/verbs.cpp:2584 -msgid "Remove clipping path from selection" -msgstr "" - -#. Tools -#: ../src/verbs.cpp:2587 -msgctxt "ContextVerb" -msgid "Select" -msgstr "" - -#: ../src/verbs.cpp:2588 -msgid "Select and transform objects" -msgstr "" - -#: ../src/verbs.cpp:2589 -msgctxt "ContextVerb" -msgid "Node Edit" -msgstr "" - -#: ../src/verbs.cpp:2590 -msgid "Edit paths by nodes" -msgstr "" - -#: ../src/verbs.cpp:2591 -msgctxt "ContextVerb" -msgid "Tweak" -msgstr "" - -#: ../src/verbs.cpp:2592 -msgid "Tweak objects by sculpting or painting" -msgstr "" - -#: ../src/verbs.cpp:2593 -msgctxt "ContextVerb" -msgid "Spray" -msgstr "" - -#: ../src/verbs.cpp:2594 -msgid "Spray objects by sculpting or painting" -msgstr "" - -#: ../src/verbs.cpp:2595 -msgctxt "ContextVerb" -msgid "Rectangle" -msgstr "" - -#: ../src/verbs.cpp:2596 -msgid "Create rectangles and squares" -msgstr "" - -#: ../src/verbs.cpp:2597 -msgctxt "ContextVerb" -msgid "3D Box" -msgstr "" - -#: ../src/verbs.cpp:2598 -msgid "Create 3D boxes" -msgstr "" - -#: ../src/verbs.cpp:2599 -msgctxt "ContextVerb" -msgid "Ellipse" -msgstr "" - -#: ../src/verbs.cpp:2600 -msgid "Create circles, ellipses, and arcs" -msgstr "" - -#: ../src/verbs.cpp:2601 -msgctxt "ContextVerb" -msgid "Star" -msgstr "" - -#: ../src/verbs.cpp:2602 -msgid "Create stars and polygons" -msgstr "" - -#: ../src/verbs.cpp:2603 -msgctxt "ContextVerb" -msgid "Spiral" -msgstr "" - -#: ../src/verbs.cpp:2604 -msgid "Create spirals" -msgstr "" - -#: ../src/verbs.cpp:2605 -msgctxt "ContextVerb" -msgid "Pencil" -msgstr "" - -#: ../src/verbs.cpp:2606 -msgid "Draw freehand lines" -msgstr "" - -#: ../src/verbs.cpp:2607 -msgctxt "ContextVerb" -msgid "Pen" -msgstr "" - -#: ../src/verbs.cpp:2608 -msgid "Draw Bezier curves and straight lines" -msgstr "" - -#: ../src/verbs.cpp:2609 -msgctxt "ContextVerb" -msgid "Calligraphy" -msgstr "" - -#: ../src/verbs.cpp:2610 -msgid "Draw calligraphic or brush strokes" -msgstr "" - -#: ../src/verbs.cpp:2612 -msgid "Create and edit text objects" -msgstr "" - -#: ../src/verbs.cpp:2613 -msgctxt "ContextVerb" -msgid "Gradient" -msgstr "" - -#: ../src/verbs.cpp:2614 -msgid "Create and edit gradients" -msgstr "" - -#: ../src/verbs.cpp:2615 -msgctxt "ContextVerb" -msgid "Mesh" -msgstr "" - -#: ../src/verbs.cpp:2616 -msgid "Create and edit meshes" -msgstr "" - -#: ../src/verbs.cpp:2617 -msgctxt "ContextVerb" -msgid "Zoom" -msgstr "" - -#: ../src/verbs.cpp:2618 -msgid "Zoom in or out" -msgstr "" - -#: ../src/verbs.cpp:2620 -msgid "Measurement tool" -msgstr "" - -#: ../src/verbs.cpp:2621 -msgctxt "ContextVerb" -msgid "Dropper" -msgstr "" - -#: ../src/verbs.cpp:2622 ../src/widgets/sp-color-notebook.cpp:411 -msgid "Pick colors from image" -msgstr "" - -#: ../src/verbs.cpp:2623 -msgctxt "ContextVerb" -msgid "Connector" -msgstr "" - -#: ../src/verbs.cpp:2624 -msgid "Create diagram connectors" -msgstr "" - -#: ../src/verbs.cpp:2625 -msgctxt "ContextVerb" -msgid "Paint Bucket" -msgstr "" - -#: ../src/verbs.cpp:2626 -msgid "Fill bounded areas" -msgstr "" - -#: ../src/verbs.cpp:2627 -msgctxt "ContextVerb" -msgid "LPE Edit" -msgstr "" - -#: ../src/verbs.cpp:2628 -msgid "Edit Path Effect parameters" -msgstr "" - -#: ../src/verbs.cpp:2629 -msgctxt "ContextVerb" -msgid "Eraser" -msgstr "" - -#: ../src/verbs.cpp:2630 -msgid "Erase existing paths" -msgstr "" - -#: ../src/verbs.cpp:2631 -msgctxt "ContextVerb" -msgid "LPE Tool" -msgstr "" - -#: ../src/verbs.cpp:2632 -msgid "Do geometric constructions" -msgstr "" - -#. Tool prefs -#: ../src/verbs.cpp:2634 -msgid "Selector Preferences" -msgstr "" - -#: ../src/verbs.cpp:2635 -msgid "Open Preferences for the Selector tool" -msgstr "" - -#: ../src/verbs.cpp:2636 -msgid "Node Tool Preferences" -msgstr "" - -#: ../src/verbs.cpp:2637 -msgid "Open Preferences for the Node tool" -msgstr "" - -#: ../src/verbs.cpp:2638 -msgid "Tweak Tool Preferences" -msgstr "" - -#: ../src/verbs.cpp:2639 -msgid "Open Preferences for the Tweak tool" -msgstr "" - -#: ../src/verbs.cpp:2640 -msgid "Spray Tool Preferences" -msgstr "" - -#: ../src/verbs.cpp:2641 -msgid "Open Preferences for the Spray tool" -msgstr "" - -#: ../src/verbs.cpp:2642 -msgid "Rectangle Preferences" -msgstr "" - -#: ../src/verbs.cpp:2643 -msgid "Open Preferences for the Rectangle tool" -msgstr "" - -#: ../src/verbs.cpp:2644 -msgid "3D Box Preferences" -msgstr "" - -#: ../src/verbs.cpp:2645 -msgid "Open Preferences for the 3D Box tool" -msgstr "" - -#: ../src/verbs.cpp:2646 -msgid "Ellipse Preferences" -msgstr "" - -#: ../src/verbs.cpp:2647 -msgid "Open Preferences for the Ellipse tool" -msgstr "" - -#: ../src/verbs.cpp:2648 -msgid "Star Preferences" -msgstr "" - -#: ../src/verbs.cpp:2649 -msgid "Open Preferences for the Star tool" -msgstr "" - -#: ../src/verbs.cpp:2650 -msgid "Spiral Preferences" -msgstr "" - -#: ../src/verbs.cpp:2651 -msgid "Open Preferences for the Spiral tool" -msgstr "" - -#: ../src/verbs.cpp:2652 -msgid "Pencil Preferences" -msgstr "" - -#: ../src/verbs.cpp:2653 -msgid "Open Preferences for the Pencil tool" -msgstr "" - -#: ../src/verbs.cpp:2654 -msgid "Pen Preferences" -msgstr "" - -#: ../src/verbs.cpp:2655 -msgid "Open Preferences for the Pen tool" -msgstr "" - -#: ../src/verbs.cpp:2656 -msgid "Calligraphic Preferences" -msgstr "" - -#: ../src/verbs.cpp:2657 -msgid "Open Preferences for the Calligraphy tool" -msgstr "" - -#: ../src/verbs.cpp:2658 -msgid "Text Preferences" -msgstr "" - -#: ../src/verbs.cpp:2659 -msgid "Open Preferences for the Text tool" -msgstr "" - -#: ../src/verbs.cpp:2660 -msgid "Gradient Preferences" -msgstr "" - -#: ../src/verbs.cpp:2661 -msgid "Open Preferences for the Gradient tool" -msgstr "" - -#: ../src/verbs.cpp:2662 -msgid "Mesh Preferences" -msgstr "" - -#: ../src/verbs.cpp:2663 -msgid "Open Preferences for the Mesh tool" -msgstr "" - -#: ../src/verbs.cpp:2664 -msgid "Zoom Preferences" -msgstr "" - -#: ../src/verbs.cpp:2665 -msgid "Open Preferences for the Zoom tool" -msgstr "" - -#: ../src/verbs.cpp:2666 -msgid "Measure Preferences" -msgstr "" - -#: ../src/verbs.cpp:2667 -msgid "Open Preferences for the Measure tool" -msgstr "" - -#: ../src/verbs.cpp:2668 -msgid "Dropper Preferences" -msgstr "" - -#: ../src/verbs.cpp:2669 -msgid "Open Preferences for the Dropper tool" -msgstr "" - -#: ../src/verbs.cpp:2670 -msgid "Connector Preferences" -msgstr "" - -#: ../src/verbs.cpp:2671 -msgid "Open Preferences for the Connector tool" -msgstr "" - -#: ../src/verbs.cpp:2672 -msgid "Paint Bucket Preferences" -msgstr "" - -#: ../src/verbs.cpp:2673 -msgid "Open Preferences for the Paint Bucket tool" -msgstr "" - -#: ../src/verbs.cpp:2674 -msgid "Eraser Preferences" -msgstr "" - -#: ../src/verbs.cpp:2675 -msgid "Open Preferences for the Eraser tool" -msgstr "" - -#: ../src/verbs.cpp:2676 -msgid "LPE Tool Preferences" -msgstr "" - -#: ../src/verbs.cpp:2677 -msgid "Open Preferences for the LPETool tool" -msgstr "" - -#. Zoom/View -#: ../src/verbs.cpp:2679 -msgid "Zoom In" -msgstr "" - -#: ../src/verbs.cpp:2679 -msgid "Zoom in" -msgstr "" - -#: ../src/verbs.cpp:2680 -msgid "Zoom Out" -msgstr "" - -#: ../src/verbs.cpp:2680 -msgid "Zoom out" -msgstr "" - -#: ../src/verbs.cpp:2681 -msgid "_Rulers" -msgstr "" - -#: ../src/verbs.cpp:2681 -msgid "Show or hide the canvas rulers" -msgstr "" - -#: ../src/verbs.cpp:2682 -msgid "Scroll_bars" -msgstr "" - -#: ../src/verbs.cpp:2682 -msgid "Show or hide the canvas scrollbars" -msgstr "" - -#: ../src/verbs.cpp:2683 -msgid "_Grid" -msgstr "" - -#: ../src/verbs.cpp:2683 -msgid "Show or hide the grid" -msgstr "" - -#: ../src/verbs.cpp:2684 -msgid "G_uides" -msgstr "" - -#: ../src/verbs.cpp:2684 -msgid "Show or hide guides (drag from a ruler to create a guide)" -msgstr "" - -#: ../src/verbs.cpp:2685 -msgid "Enable snapping" -msgstr "" - -#: ../src/verbs.cpp:2686 -msgid "_Commands Bar" -msgstr "" - -#: ../src/verbs.cpp:2686 -msgid "Show or hide the Commands bar (under the menu)" -msgstr "" - -#: ../src/verbs.cpp:2687 -msgid "Sn_ap Controls Bar" -msgstr "" - -#: ../src/verbs.cpp:2687 -msgid "Show or hide the snapping controls" -msgstr "" - -#: ../src/verbs.cpp:2688 -msgid "T_ool Controls Bar" -msgstr "" - -#: ../src/verbs.cpp:2688 -msgid "Show or hide the Tool Controls bar" -msgstr "" - -#: ../src/verbs.cpp:2689 -msgid "_Toolbox" -msgstr "" - -#: ../src/verbs.cpp:2689 -msgid "Show or hide the main toolbox (on the left)" -msgstr "" - -#: ../src/verbs.cpp:2690 -msgid "_Palette" -msgstr "" - -#: ../src/verbs.cpp:2690 -msgid "Show or hide the color palette" -msgstr "" - -#: ../src/verbs.cpp:2691 -msgid "_Statusbar" -msgstr "" - -#: ../src/verbs.cpp:2691 -msgid "Show or hide the statusbar (at the bottom of the window)" -msgstr "" - -#: ../src/verbs.cpp:2692 -msgid "Nex_t Zoom" -msgstr "" - -#: ../src/verbs.cpp:2692 -msgid "Next zoom (from the history of zooms)" -msgstr "" - -#: ../src/verbs.cpp:2694 -msgid "Pre_vious Zoom" -msgstr "" - -#: ../src/verbs.cpp:2694 -msgid "Previous zoom (from the history of zooms)" -msgstr "" - -#: ../src/verbs.cpp:2696 -msgid "Zoom 1:_1" -msgstr "" - -#: ../src/verbs.cpp:2696 -msgid "Zoom to 1:1" -msgstr "" - -#: ../src/verbs.cpp:2698 -msgid "Zoom 1:_2" -msgstr "" - -#: ../src/verbs.cpp:2698 -msgid "Zoom to 1:2" -msgstr "" - -#: ../src/verbs.cpp:2700 -msgid "_Zoom 2:1" -msgstr "" - -#: ../src/verbs.cpp:2700 -msgid "Zoom to 2:1" -msgstr "" - -#: ../src/verbs.cpp:2703 -msgid "_Fullscreen" -msgstr "" - -#: ../src/verbs.cpp:2703 ../src/verbs.cpp:2705 -msgid "Stretch this document window to full screen" -msgstr "" - -#: ../src/verbs.cpp:2705 -msgid "Fullscreen & Focus Mode" -msgstr "" - -#: ../src/verbs.cpp:2708 -msgid "Toggle _Focus Mode" -msgstr "" - -#: ../src/verbs.cpp:2708 -msgid "Remove excess toolbars to focus on drawing" -msgstr "" - -#: ../src/verbs.cpp:2710 -msgid "Duplic_ate Window" -msgstr "" - -#: ../src/verbs.cpp:2710 -msgid "Open a new window with the same document" -msgstr "" - -#: ../src/verbs.cpp:2712 -msgid "_New View Preview" -msgstr "" - -#: ../src/verbs.cpp:2713 -msgid "New View Preview" -msgstr "" - -#. "view_new_preview" -#: ../src/verbs.cpp:2715 ../src/verbs.cpp:2723 -msgid "_Normal" -msgstr "" - -#: ../src/verbs.cpp:2716 -msgid "Switch to normal display mode" -msgstr "" - -#: ../src/verbs.cpp:2717 -msgid "No _Filters" -msgstr "" - -#: ../src/verbs.cpp:2718 -msgid "Switch to normal display without filters" -msgstr "" - -#: ../src/verbs.cpp:2719 -msgid "_Outline" -msgstr "" - -#: ../src/verbs.cpp:2720 -msgid "Switch to outline (wireframe) display mode" -msgstr "" - -#. new ZoomVerb(SP_VERB_VIEW_COLOR_MODE_PRINT_COLORS_PREVIEW, "ViewColorModePrintColorsPreview", N_("_Print Colors Preview"), -#. N_("Switch to print colors preview mode"), NULL), -#: ../src/verbs.cpp:2721 ../src/verbs.cpp:2729 -msgid "_Toggle" -msgstr "" - -#: ../src/verbs.cpp:2722 -msgid "Toggle between normal and outline display modes" -msgstr "" - -#: ../src/verbs.cpp:2724 -msgid "Switch to normal color display mode" -msgstr "" - -#: ../src/verbs.cpp:2725 -msgid "_Grayscale" -msgstr "" - -#: ../src/verbs.cpp:2726 -msgid "Switch to grayscale display mode" -msgstr "" - -#: ../src/verbs.cpp:2730 -msgid "Toggle between normal and grayscale color display modes" -msgstr "" - -#: ../src/verbs.cpp:2732 -msgid "Color-managed view" -msgstr "" - -#: ../src/verbs.cpp:2733 -msgid "Toggle color-managed display for this document window" -msgstr "" - -#: ../src/verbs.cpp:2735 -msgid "Ico_n Preview..." -msgstr "" - -#: ../src/verbs.cpp:2736 -msgid "Open a window to preview objects at different icon resolutions" -msgstr "" - -#: ../src/verbs.cpp:2738 -msgid "Zoom to fit page in window" -msgstr "" - -#: ../src/verbs.cpp:2739 -msgid "Page _Width" -msgstr "" - -#: ../src/verbs.cpp:2740 -msgid "Zoom to fit page width in window" -msgstr "" - -#: ../src/verbs.cpp:2742 -msgid "Zoom to fit drawing in window" -msgstr "" - -#: ../src/verbs.cpp:2744 -msgid "Zoom to fit selection in window" -msgstr "" - -#. Dialogs -#: ../src/verbs.cpp:2747 -msgid "P_references..." -msgstr "" - -#: ../src/verbs.cpp:2748 -msgid "Edit global Inkscape preferences" -msgstr "" - -#: ../src/verbs.cpp:2749 -msgid "_Document Properties..." -msgstr "" - -#: ../src/verbs.cpp:2750 -msgid "Edit properties of this document (to be saved with the document)" -msgstr "" - -#: ../src/verbs.cpp:2751 -msgid "Document _Metadata..." -msgstr "" - -#: ../src/verbs.cpp:2752 -msgid "Edit document metadata (to be saved with the document)" -msgstr "" - -#: ../src/verbs.cpp:2754 -msgid "" -"Edit objects' colors, gradients, arrowheads, and other fill and stroke " -"properties..." -msgstr "" - -#: ../src/verbs.cpp:2755 -msgid "Gl_yphs..." -msgstr "" - -#: ../src/verbs.cpp:2756 -msgid "Select characters from a glyphs palette" -msgstr "" - -#. TRANSLATORS: "Swatches" means: color samples -#: ../src/verbs.cpp:2758 -msgid "S_watches..." -msgstr "" - -#: ../src/verbs.cpp:2759 -msgid "Select colors from a swatches palette" -msgstr "" - -#: ../src/verbs.cpp:2760 -msgid "S_ymbols..." -msgstr "" - -#: ../src/verbs.cpp:2761 -msgid "Select symbol from a symbols palette" -msgstr "" - -#: ../src/verbs.cpp:2762 -msgid "Transfor_m..." -msgstr "" - -#: ../src/verbs.cpp:2763 -msgid "Precisely control objects' transformations" -msgstr "" - -#: ../src/verbs.cpp:2764 -msgid "_Align and Distribute..." -msgstr "" - -#: ../src/verbs.cpp:2765 -msgid "Align and distribute objects" -msgstr "" - -#: ../src/verbs.cpp:2766 -msgid "_Spray options..." -msgstr "" - -#: ../src/verbs.cpp:2767 -msgid "Some options for the spray" -msgstr "" - -#: ../src/verbs.cpp:2768 -msgid "Undo _History..." -msgstr "" - -#: ../src/verbs.cpp:2769 -msgid "Undo History" -msgstr "" - -#: ../src/verbs.cpp:2771 -msgid "View and select font family, font size and other text properties" -msgstr "" - -#: ../src/verbs.cpp:2772 -msgid "_XML Editor..." -msgstr "" - -#: ../src/verbs.cpp:2773 -msgid "View and edit the XML tree of the document" -msgstr "" - -#: ../src/verbs.cpp:2774 -msgid "_Find/Replace..." -msgstr "" - -#: ../src/verbs.cpp:2775 -msgid "Find objects in document" -msgstr "" - -#: ../src/verbs.cpp:2776 -msgid "Find and _Replace Text..." -msgstr "" - -#: ../src/verbs.cpp:2777 -msgid "Find and replace text in document" -msgstr "" - -#: ../src/verbs.cpp:2779 -msgid "Check spelling of text in document" -msgstr "" - -#: ../src/verbs.cpp:2780 -msgid "_Messages..." -msgstr "" - -#: ../src/verbs.cpp:2781 -msgid "View debug messages" -msgstr "" - -#: ../src/verbs.cpp:2782 -msgid "S_cripts..." -msgstr "" - -#: ../src/verbs.cpp:2783 -msgid "Run scripts" -msgstr "" - -#: ../src/verbs.cpp:2784 -msgid "Show/Hide D_ialogs" -msgstr "" - -#: ../src/verbs.cpp:2785 -msgid "Show or hide all open dialogs" -msgstr "" - -#: ../src/verbs.cpp:2786 -msgid "Create Tiled Clones..." -msgstr "" - -#: ../src/verbs.cpp:2787 -msgid "" -"Create multiple clones of selected object, arranging them into a pattern or " -"scattering" -msgstr "" - -#: ../src/verbs.cpp:2788 -msgid "_Object attributes..." -msgstr "" - -#: ../src/verbs.cpp:2789 -msgid "Edit the object attributes..." -msgstr "" - -#: ../src/verbs.cpp:2791 -msgid "Edit the ID, locked and visible status, and other object properties" -msgstr "" - -#: ../src/verbs.cpp:2792 -msgid "_Input Devices..." -msgstr "" - -#: ../src/verbs.cpp:2793 -msgid "Configure extended input devices, such as a graphics tablet" -msgstr "" - -#: ../src/verbs.cpp:2794 -msgid "_Extensions..." -msgstr "" - -#: ../src/verbs.cpp:2795 -msgid "Query information about extensions" -msgstr "" - -#: ../src/verbs.cpp:2796 -msgid "Layer_s..." -msgstr "" - -#: ../src/verbs.cpp:2797 -msgid "View Layers" -msgstr "" - -#: ../src/verbs.cpp:2798 -msgid "Path E_ffects ..." -msgstr "" - -#: ../src/verbs.cpp:2799 -msgid "Manage, edit, and apply path effects" -msgstr "" - -#: ../src/verbs.cpp:2800 -msgid "Filter _Editor..." -msgstr "" - -#: ../src/verbs.cpp:2801 -msgid "Manage, edit, and apply SVG filters" -msgstr "" - -#: ../src/verbs.cpp:2802 -msgid "SVG Font Editor..." -msgstr "" - -#: ../src/verbs.cpp:2803 -msgid "Edit SVG fonts" -msgstr "" - -#: ../src/verbs.cpp:2804 -msgid "Print Colors..." -msgstr "" - -#: ../src/verbs.cpp:2805 -msgid "" -"Select which color separations to render in Print Colors Preview rendermode" -msgstr "" - -#: ../src/verbs.cpp:2806 -msgid "_Export PNG Image..." -msgstr "" - -#: ../src/verbs.cpp:2807 -msgid "Export this document or a selection as a PNG image" -msgstr "" - -#. Help -#: ../src/verbs.cpp:2809 -msgid "About E_xtensions" -msgstr "" - -#: ../src/verbs.cpp:2810 -msgid "Information on Inkscape extensions" -msgstr "" - -#: ../src/verbs.cpp:2811 -msgid "About _Memory" -msgstr "" - -#: ../src/verbs.cpp:2812 -msgid "Memory usage information" -msgstr "" - -#: ../src/verbs.cpp:2813 -msgid "_About Inkscape" -msgstr "" - -#: ../src/verbs.cpp:2814 -msgid "Inkscape version, authors, license" -msgstr "" - -#. new HelpVerb(SP_VERB_SHOW_LICENSE, "ShowLicense", N_("_License"), -#. N_("Distribution terms"), /*"show_license"*/"inkscape_options"), -#. Tutorials -#: ../src/verbs.cpp:2819 -msgid "Inkscape: _Basic" -msgstr "" - -#: ../src/verbs.cpp:2820 -msgid "Getting started with Inkscape" -msgstr "" - -#. "tutorial_basic" -#: ../src/verbs.cpp:2821 -msgid "Inkscape: _Shapes" -msgstr "" - -#: ../src/verbs.cpp:2822 -msgid "Using shape tools to create and edit shapes" -msgstr "" - -#: ../src/verbs.cpp:2823 -msgid "Inkscape: _Advanced" -msgstr "" - -#: ../src/verbs.cpp:2824 -msgid "Advanced Inkscape topics" -msgstr "" - -#. "tutorial_advanced" -#. TRANSLATORS: "to trace" means "to convert a bitmap to vector graphics" (to vectorize) -#: ../src/verbs.cpp:2826 -msgid "Inkscape: T_racing" -msgstr "" - -#: ../src/verbs.cpp:2827 -msgid "Using bitmap tracing" -msgstr "" - -#. "tutorial_tracing" -#: ../src/verbs.cpp:2828 -msgid "Inkscape: _Calligraphy" -msgstr "" - -#: ../src/verbs.cpp:2829 -msgid "Using the Calligraphy pen tool" -msgstr "" - -#: ../src/verbs.cpp:2830 -msgid "Inkscape: _Interpolate" -msgstr "" - -#: ../src/verbs.cpp:2831 -msgid "Using the interpolate extension" -msgstr "" - -#. "tutorial_interpolate" -#: ../src/verbs.cpp:2832 -msgid "_Elements of Design" -msgstr "" - -#: ../src/verbs.cpp:2833 -msgid "Principles of design in the tutorial form" -msgstr "" - -#. "tutorial_design" -#: ../src/verbs.cpp:2834 -msgid "_Tips and Tricks" -msgstr "" - -#: ../src/verbs.cpp:2835 -msgid "Miscellaneous tips and tricks" -msgstr "" - -#. "tutorial_tips" -#. Effect -- renamed Extension -#: ../src/verbs.cpp:2838 -msgid "Previous Exte_nsion" -msgstr "" - -#: ../src/verbs.cpp:2839 -msgid "Repeat the last extension with the same settings" -msgstr "" - -#: ../src/verbs.cpp:2840 -msgid "_Previous Extension Settings..." -msgstr "" - -#: ../src/verbs.cpp:2841 -msgid "Repeat the last extension with new settings" -msgstr "" - -#: ../src/verbs.cpp:2845 -msgid "Fit the page to the current selection" -msgstr "" - -#: ../src/verbs.cpp:2847 -msgid "Fit the page to the drawing" -msgstr "" - -#: ../src/verbs.cpp:2849 -msgid "" -"Fit the page to the current selection or the drawing if there is no selection" -msgstr "" - -#. LockAndHide -#: ../src/verbs.cpp:2851 -msgid "Unlock All" -msgstr "" - -#: ../src/verbs.cpp:2853 -msgid "Unlock All in All Layers" -msgstr "" - -#: ../src/verbs.cpp:2855 -msgid "Unhide All" -msgstr "" - -#: ../src/verbs.cpp:2857 -msgid "Unhide All in All Layers" -msgstr "" - -#: ../src/verbs.cpp:2861 -msgid "Link an ICC color profile" -msgstr "" - -#: ../src/verbs.cpp:2862 -msgid "Remove Color Profile" -msgstr "" - -#: ../src/verbs.cpp:2863 -msgid "Remove a linked ICC color profile" -msgstr "" - -#: ../src/verbs.cpp:2886 ../src/verbs.cpp:2887 -msgid "Center on horizontal and vertical axis" -msgstr "" - -#: ../src/widgets/arc-toolbar.cpp:146 -msgid "Arc: Change start/end" -msgstr "" - -#: ../src/widgets/arc-toolbar.cpp:212 -msgid "Arc: Change open/closed" -msgstr "" - -#: ../src/widgets/arc-toolbar.cpp:303 ../src/widgets/arc-toolbar.cpp:332 -#: ../src/widgets/rect-toolbar.cpp:259 ../src/widgets/rect-toolbar.cpp:297 -#: ../src/widgets/spiral-toolbar.cpp:229 ../src/widgets/spiral-toolbar.cpp:253 -#: ../src/widgets/star-toolbar.cpp:395 ../src/widgets/star-toolbar.cpp:456 -msgid "New:" -msgstr "" - -#. FIXME: implement averaging of all parameters for multiple selected -#. gtk_label_set_markup(GTK_LABEL(l), _("Average:")); -#: ../src/widgets/arc-toolbar.cpp:306 ../src/widgets/arc-toolbar.cpp:317 -#: ../src/widgets/rect-toolbar.cpp:267 ../src/widgets/rect-toolbar.cpp:285 -#: ../src/widgets/spiral-toolbar.cpp:231 ../src/widgets/spiral-toolbar.cpp:242 -#: ../src/widgets/star-toolbar.cpp:397 -msgid "Change:" -msgstr "" - -#: ../src/widgets/arc-toolbar.cpp:341 -msgid "Start:" -msgstr "" - -#: ../src/widgets/arc-toolbar.cpp:342 -msgid "The angle (in degrees) from the horizontal to the arc's start point" -msgstr "" - -#: ../src/widgets/arc-toolbar.cpp:354 -msgid "End:" -msgstr "" - -#: ../src/widgets/arc-toolbar.cpp:355 -msgid "The angle (in degrees) from the horizontal to the arc's end point" -msgstr "" - -#: ../src/widgets/arc-toolbar.cpp:371 -msgid "Closed arc" -msgstr "" - -#: ../src/widgets/arc-toolbar.cpp:372 -msgid "Switch to segment (closed shape with two radii)" -msgstr "" - -#: ../src/widgets/arc-toolbar.cpp:378 -msgid "Open Arc" -msgstr "" - -#: ../src/widgets/arc-toolbar.cpp:379 -msgid "Switch to arc (unclosed shape)" -msgstr "" - -#: ../src/widgets/arc-toolbar.cpp:402 -msgid "Make whole" -msgstr "" - -#: ../src/widgets/arc-toolbar.cpp:403 -msgid "Make the shape a whole ellipse, not arc or segment" -msgstr "" - -#. TODO: use the correct axis here, too -#: ../src/widgets/box3d-toolbar.cpp:253 -msgid "3D Box: Change perspective (angle of infinite axis)" -msgstr "" - -#: ../src/widgets/box3d-toolbar.cpp:320 -msgid "Angle in X direction" -msgstr "" - -#. Translators: PL is short for 'perspective line' -#: ../src/widgets/box3d-toolbar.cpp:322 -msgid "Angle of PLs in X direction" -msgstr "" - -#. Translators: VP is short for 'vanishing point' -#: ../src/widgets/box3d-toolbar.cpp:344 -msgid "State of VP in X direction" -msgstr "" - -#: ../src/widgets/box3d-toolbar.cpp:345 -msgid "Toggle VP in X direction between 'finite' and 'infinite' (=parallel)" -msgstr "" - -#: ../src/widgets/box3d-toolbar.cpp:360 -msgid "Angle in Y direction" -msgstr "" - -#: ../src/widgets/box3d-toolbar.cpp:360 -msgid "Angle Y:" -msgstr "" - -#. Translators: PL is short for 'perspective line' -#: ../src/widgets/box3d-toolbar.cpp:362 -msgid "Angle of PLs in Y direction" -msgstr "" - -#. Translators: VP is short for 'vanishing point' -#: ../src/widgets/box3d-toolbar.cpp:383 -msgid "State of VP in Y direction" -msgstr "" - -#: ../src/widgets/box3d-toolbar.cpp:384 -msgid "Toggle VP in Y direction between 'finite' and 'infinite' (=parallel)" -msgstr "" - -#: ../src/widgets/box3d-toolbar.cpp:399 -msgid "Angle in Z direction" -msgstr "" - -#. Translators: PL is short for 'perspective line' -#: ../src/widgets/box3d-toolbar.cpp:401 -msgid "Angle of PLs in Z direction" -msgstr "" - -#. Translators: VP is short for 'vanishing point' -#: ../src/widgets/box3d-toolbar.cpp:422 -msgid "State of VP in Z direction" -msgstr "" - -#: ../src/widgets/box3d-toolbar.cpp:423 -msgid "Toggle VP in Z direction between 'finite' and 'infinite' (=parallel)" -msgstr "" - -#. gint preset_index = ege_select_one_action_get_active( sel ); -#: ../src/widgets/calligraphy-toolbar.cpp:239 -#: ../src/widgets/calligraphy-toolbar.cpp:283 -#: ../src/widgets/calligraphy-toolbar.cpp:288 -msgid "No preset" -msgstr "" - -#. Width -#: ../src/widgets/calligraphy-toolbar.cpp:448 -#: ../src/widgets/erasor-toolbar.cpp:146 -msgid "(hairline)" -msgstr "" - -#. Mean -#. Rotation -#. Scale -#: ../src/widgets/calligraphy-toolbar.cpp:448 -#: ../src/widgets/calligraphy-toolbar.cpp:481 -#: ../src/widgets/erasor-toolbar.cpp:146 ../src/widgets/pencil-toolbar.cpp:303 -#: ../src/widgets/spray-toolbar.cpp:129 ../src/widgets/spray-toolbar.cpp:145 -#: ../src/widgets/spray-toolbar.cpp:161 ../src/widgets/spray-toolbar.cpp:221 -#: ../src/widgets/spray-toolbar.cpp:251 ../src/widgets/spray-toolbar.cpp:269 -#: ../src/widgets/tweak-toolbar.cpp:143 ../src/widgets/tweak-toolbar.cpp:160 -#: ../src/widgets/tweak-toolbar.cpp:368 -msgid "(default)" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:448 -#: ../src/widgets/erasor-toolbar.cpp:146 -msgid "(broad stroke)" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:451 -#: ../src/widgets/erasor-toolbar.cpp:149 -msgid "Pen Width" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:452 -msgid "The width of the calligraphic pen (relative to the visible canvas area)" -msgstr "" - -#. Thinning -#: ../src/widgets/calligraphy-toolbar.cpp:465 -msgid "(speed blows up stroke)" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:465 -msgid "(slight widening)" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:465 -msgid "(constant width)" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:465 -msgid "(slight thinning, default)" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:465 -msgid "(speed deflates stroke)" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:468 -msgid "Stroke Thinning" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:468 -msgid "Thinning:" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:469 -msgid "" -"How much velocity thins the stroke (> 0 makes fast strokes thinner, < 0 " -"makes them broader, 0 makes width independent of velocity)" -msgstr "" - -#. Angle -#: ../src/widgets/calligraphy-toolbar.cpp:481 -msgid "(left edge up)" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:481 -msgid "(horizontal)" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:481 -msgid "(right edge up)" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:484 -msgid "Pen Angle" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:484 -#: ../share/extensions/motion.inx.h:3 ../share/extensions/restack.inx.h:10 -msgid "Angle:" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:485 -msgid "" -"The angle of the pen's nib (in degrees; 0 = horizontal; has no effect if " -"fixation = 0)" -msgstr "" - -#. Fixation -#: ../src/widgets/calligraphy-toolbar.cpp:499 -msgid "(perpendicular to stroke, \"brush\")" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:499 -msgid "(almost fixed, default)" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:499 -msgid "(fixed by Angle, \"pen\")" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:502 -msgid "Fixation" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:502 -msgid "Fixation:" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:503 -msgid "" -"Angle behavior (0 = nib always perpendicular to stroke direction, 100 = " -"fixed angle)" -msgstr "" - -#. Cap Rounding -#: ../src/widgets/calligraphy-toolbar.cpp:515 -msgid "(blunt caps, default)" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:515 -msgid "(slightly bulging)" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:515 -msgid "(approximately round)" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:515 -msgid "(long protruding caps)" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:519 -msgid "Cap rounding" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:519 -msgid "Caps:" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:520 -msgid "" -"Increase to make caps at the ends of strokes protrude more (0 = no caps, 1 = " -"round caps)" -msgstr "" - -#. Tremor -#: ../src/widgets/calligraphy-toolbar.cpp:532 -msgid "(smooth line)" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:532 -msgid "(slight tremor)" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:532 -msgid "(noticeable tremor)" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:532 -msgid "(maximum tremor)" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:535 -msgid "Stroke Tremor" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:535 -msgid "Tremor:" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:536 -msgid "Increase to make strokes rugged and trembling" -msgstr "" - -#. Wiggle -#: ../src/widgets/calligraphy-toolbar.cpp:550 -msgid "(no wiggle)" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:550 -msgid "(slight deviation)" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:550 -msgid "(wild waves and curls)" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:553 -msgid "Pen Wiggle" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:553 -msgid "Wiggle:" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:554 -msgid "Increase to make the pen waver and wiggle" -msgstr "" - -#. Mass -#: ../src/widgets/calligraphy-toolbar.cpp:567 -msgid "(no inertia)" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:567 -msgid "(slight smoothing, default)" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:567 -msgid "(noticeable lagging)" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:567 -msgid "(maximum inertia)" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:570 -msgid "Pen Mass" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:570 -msgid "Mass:" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:571 -msgid "Increase to make the pen drag behind, as if slowed by inertia" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:586 -msgid "Trace Background" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:587 -msgid "" -"Trace the lightness of the background by the width of the pen (white - " -"minimum width, black - maximum width)" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:600 -msgid "Use the pressure of the input device to alter the width of the pen" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:612 -msgid "Tilt" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:613 -msgid "Use the tilt of the input device to alter the angle of the pen's nib" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:628 -msgid "Choose a preset" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:643 -msgid "Add/Edit Profile" -msgstr "" - -#: ../src/widgets/calligraphy-toolbar.cpp:644 -msgid "Add or edit calligraphic profile" -msgstr "" - -#: ../src/widgets/connector-toolbar.cpp:136 -msgid "Set connector type: orthogonal" -msgstr "" - -#: ../src/widgets/connector-toolbar.cpp:136 -msgid "Set connector type: polyline" -msgstr "" - -#: ../src/widgets/connector-toolbar.cpp:185 -msgid "Change connector curvature" -msgstr "" - -#: ../src/widgets/connector-toolbar.cpp:236 -msgid "Change connector spacing" -msgstr "" - -#: ../src/widgets/connector-toolbar.cpp:329 -msgid "Avoid" -msgstr "" - -#: ../src/widgets/connector-toolbar.cpp:339 -msgid "Ignore" -msgstr "" - -#: ../src/widgets/connector-toolbar.cpp:350 -msgid "Orthogonal" -msgstr "" - -#: ../src/widgets/connector-toolbar.cpp:351 -msgid "Make connector orthogonal or polyline" -msgstr "" - -#: ../src/widgets/connector-toolbar.cpp:365 -msgid "Connector Curvature" -msgstr "" - -#: ../src/widgets/connector-toolbar.cpp:365 -msgid "Curvature:" -msgstr "" - -#: ../src/widgets/connector-toolbar.cpp:366 -msgid "The amount of connectors curvature" -msgstr "" - -#: ../src/widgets/connector-toolbar.cpp:376 -msgid "Connector Spacing" -msgstr "" - -#: ../src/widgets/connector-toolbar.cpp:376 -msgid "Spacing:" -msgstr "" - -#: ../src/widgets/connector-toolbar.cpp:377 -msgid "The amount of space left around objects by auto-routing connectors" -msgstr "" - -#: ../src/widgets/connector-toolbar.cpp:388 -msgid "Graph" -msgstr "" - -#: ../src/widgets/connector-toolbar.cpp:398 -msgid "Connector Length" -msgstr "" - -#: ../src/widgets/connector-toolbar.cpp:398 -msgid "Length:" -msgstr "" - -#: ../src/widgets/connector-toolbar.cpp:399 -msgid "Ideal length for connectors when layout is applied" -msgstr "" - -#: ../src/widgets/connector-toolbar.cpp:411 -msgid "Downwards" -msgstr "" - -#: ../src/widgets/connector-toolbar.cpp:412 -msgid "Make connectors with end-markers (arrows) point downwards" -msgstr "" - -#: ../src/widgets/connector-toolbar.cpp:428 -msgid "Do not allow overlapping shapes" -msgstr "" - -#: ../src/widgets/dash-selector.cpp:58 -msgid "Dash pattern" -msgstr "" - -#: ../src/widgets/dash-selector.cpp:75 -msgid "Pattern offset" -msgstr "" - -#: ../src/widgets/desktop-widget.cpp:461 -msgid "Zoom drawing if window size changes" -msgstr "" - -#: ../src/widgets/desktop-widget.cpp:665 -msgid "Cursor coordinates" -msgstr "" - -#: ../src/widgets/desktop-widget.cpp:691 -msgid "Z:" -msgstr "" - -#. display the initial welcome message in the statusbar -#: ../src/widgets/desktop-widget.cpp:734 -msgid "" -"Welcome to Inkscape! Use shape or freehand tools to create objects; " -"use selector (arrow) to move or transform them." -msgstr "" - -#: ../src/widgets/desktop-widget.cpp:828 -msgid "grayscale" -msgstr "" - -#: ../src/widgets/desktop-widget.cpp:829 -msgid ", grayscale" -msgstr "" - -#: ../src/widgets/desktop-widget.cpp:830 -msgid "print colors preview" -msgstr "" - -#: ../src/widgets/desktop-widget.cpp:831 -msgid ", print colors preview" -msgstr "" - -#: ../src/widgets/desktop-widget.cpp:832 -msgid "outline" -msgstr "" - -#: ../src/widgets/desktop-widget.cpp:833 -msgid "no filters" -msgstr "" - -#: ../src/widgets/desktop-widget.cpp:860 -#, c-format -msgid "%s%s: %d (%s%s) - Inkscape" -msgstr "" - -#: ../src/widgets/desktop-widget.cpp:862 ../src/widgets/desktop-widget.cpp:866 -#, c-format -msgid "%s%s: %d (%s) - Inkscape" -msgstr "" - -#: ../src/widgets/desktop-widget.cpp:868 -#, c-format -msgid "%s%s: %d - Inkscape" -msgstr "" - -#: ../src/widgets/desktop-widget.cpp:874 -#, c-format -msgid "%s%s (%s%s) - Inkscape" -msgstr "" - -#: ../src/widgets/desktop-widget.cpp:876 ../src/widgets/desktop-widget.cpp:880 -#, c-format -msgid "%s%s (%s) - Inkscape" -msgstr "" - -#: ../src/widgets/desktop-widget.cpp:882 -#, c-format -msgid "%s%s - Inkscape" -msgstr "" - -#: ../src/widgets/desktop-widget.cpp:1051 -msgid "Color-managed display is enabled in this window" -msgstr "" - -#: ../src/widgets/desktop-widget.cpp:1053 -msgid "Color-managed display is disabled in this window" -msgstr "" - -#: ../src/widgets/desktop-widget.cpp:1108 -#, c-format -msgid "" -"Save changes to document \"%s\" before " -"closing?\n" -"\n" -"If you close without saving, your changes will be discarded." -msgstr "" - -#: ../src/widgets/desktop-widget.cpp:1118 -#: ../src/widgets/desktop-widget.cpp:1177 -msgid "Close _without saving" -msgstr "" - -#: ../src/widgets/desktop-widget.cpp:1167 -#, c-format -msgid "" -"The file \"%s\" was saved with a " -"format that may cause data loss!\n" -"\n" -"Do you want to save this file as Inkscape SVG?" -msgstr "" - -#: ../src/widgets/desktop-widget.cpp:1179 -msgid "_Save as Inkscape SVG" -msgstr "" - -#: ../src/widgets/desktop-widget.cpp:1389 -msgid "Note:" -msgstr "" - -#: ../src/widgets/dropper-toolbar.cpp:118 -msgid "Pick opacity" -msgstr "" - -#: ../src/widgets/dropper-toolbar.cpp:119 -msgid "" -"Pick both the color and the alpha (transparency) under cursor; otherwise, " -"pick only the visible color premultiplied by alpha" -msgstr "" - -#: ../src/widgets/dropper-toolbar.cpp:122 -msgid "Pick" -msgstr "" - -#: ../src/widgets/dropper-toolbar.cpp:131 -msgid "Assign opacity" -msgstr "" - -#: ../src/widgets/dropper-toolbar.cpp:132 -msgid "" -"If alpha was picked, assign it to selection as fill or stroke transparency" -msgstr "" - -#: ../src/widgets/dropper-toolbar.cpp:135 -msgid "Assign" -msgstr "" - -#: ../src/widgets/ege-paint-def.cpp:88 -msgid "remove" -msgstr "" - -#: ../src/widgets/erasor-toolbar.cpp:115 -msgid "Delete objects touched by the eraser" -msgstr "" - -#: ../src/widgets/erasor-toolbar.cpp:121 -msgid "Cut" -msgstr "" - -#: ../src/widgets/erasor-toolbar.cpp:122 -msgid "Cut out from objects" -msgstr "" - -#: ../src/widgets/erasor-toolbar.cpp:150 -msgid "The width of the eraser pen (relative to the visible canvas area)" -msgstr "" - -#: ../src/widgets/fill-style.cpp:362 -msgid "Change fill rule" -msgstr "" - -#: ../src/widgets/fill-style.cpp:447 ../src/widgets/fill-style.cpp:526 -msgid "Set fill color" -msgstr "" - -#: ../src/widgets/fill-style.cpp:447 ../src/widgets/fill-style.cpp:526 -msgid "Set stroke color" -msgstr "" - -#: ../src/widgets/fill-style.cpp:625 -msgid "Set gradient on fill" -msgstr "" - -#: ../src/widgets/fill-style.cpp:625 -msgid "Set gradient on stroke" -msgstr "" - -#: ../src/widgets/fill-style.cpp:685 -msgid "Set pattern on fill" -msgstr "" - -#: ../src/widgets/fill-style.cpp:686 -msgid "Set pattern on stroke" -msgstr "" - -#: ../src/widgets/font-selector.cpp:135 ../src/widgets/text-toolbar.cpp:966 -#: ../src/widgets/text-toolbar.cpp:1284 -msgid "Font size" -msgstr "" - -#. Family frame -#: ../src/widgets/font-selector.cpp:149 -msgid "Font family" -msgstr "" - -#. Style frame -#: ../src/widgets/font-selector.cpp:192 -msgctxt "Font selector" -msgid "Style" -msgstr "" - -#: ../src/widgets/font-selector.cpp:243 ../share/extensions/dots.inx.h:3 -msgid "Font size:" -msgstr "" - -#: ../src/widgets/gradient-selector.cpp:207 -msgid "Create a duplicate gradient" -msgstr "" - -#: ../src/widgets/gradient-selector.cpp:217 -msgid "Edit gradient" -msgstr "" - -#: ../src/widgets/gradient-selector.cpp:288 -#: ../src/widgets/paint-selector.cpp:244 -msgid "Swatch" -msgstr "" - -#: ../src/widgets/gradient-selector.cpp:338 -msgid "Rename gradient" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:170 -#: ../src/widgets/gradient-toolbar.cpp:183 -#: ../src/widgets/gradient-toolbar.cpp:775 -#: ../src/widgets/gradient-toolbar.cpp:1110 -#: ../src/widgets/gradient-toolbar.cpp:1157 -msgid "No gradient" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:189 -msgid "Multiple gradients" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:695 -msgid "Multiple stops" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:793 -#: ../src/widgets/gradient-vector.cpp:629 -msgid "No stops in gradient" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:946 -msgid "Assign gradient to object" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:968 -msgid "Set gradient repeat" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1006 -#: ../src/widgets/gradient-vector.cpp:740 -msgid "Change gradient stop offset" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1050 -msgid "linear" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1050 -msgid "Create linear gradient" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1054 -msgid "radial" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1054 -msgid "Create radial (elliptic or circular) gradient" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1057 -#: ../src/widgets/mesh-toolbar.cpp:211 -msgid "New:" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1080 -#: ../src/widgets/mesh-toolbar.cpp:234 -msgid "fill" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1080 -#: ../src/widgets/mesh-toolbar.cpp:234 -msgid "Create gradient in the fill" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1084 -#: ../src/widgets/mesh-toolbar.cpp:238 -msgid "stroke" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1084 -#: ../src/widgets/mesh-toolbar.cpp:238 -msgid "Create gradient in the stroke" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1087 -#: ../src/widgets/mesh-toolbar.cpp:241 -msgid "on:" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1112 -msgid "Select" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1112 -msgid "Choose a gradient" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1113 -msgid "Select:" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1131 -msgid "Reflected" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1134 -msgid "Direct" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1136 -msgid "Repeat" -msgstr "" - -#. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/pservers.html#LinearGradientSpreadMethodAttribute -#: ../src/widgets/gradient-toolbar.cpp:1138 -msgid "" -"Whether to fill with flat color beyond the ends of the gradient vector " -"(spreadMethod=\"pad\"), or repeat the gradient in the same direction " -"(spreadMethod=\"repeat\"), or repeat the gradient in alternating opposite " -"directions (spreadMethod=\"reflect\")" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1143 -msgid "Repeat:" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1159 -msgid "Stops" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1159 -msgid "Select a stop for the current gradient" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1160 -msgid "Stops:" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1172 -msgid "Offset of selected stop" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1189 -#: ../src/widgets/gradient-toolbar.cpp:1190 -msgid "Insert new stop" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1203 -#: ../src/widgets/gradient-toolbar.cpp:1204 -#: ../src/widgets/gradient-vector.cpp:908 -msgid "Delete stop" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1217 -msgid "Reverse" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1218 -msgid "Reverse the direction of the gradient" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1232 -msgid "Link gradients" -msgstr "" - -#: ../src/widgets/gradient-toolbar.cpp:1233 -msgid "Link gradients to change all related gradients" -msgstr "" - -#: ../src/widgets/gradient-vector.cpp:332 -#: ../src/widgets/paint-selector.cpp:922 -msgid "No document selected" -msgstr "" - -#: ../src/widgets/gradient-vector.cpp:336 -msgid "No gradients in document" -msgstr "" - -#: ../src/widgets/gradient-vector.cpp:340 -msgid "No gradient selected" -msgstr "" - -#. TRANSLATORS: "Stop" means: a "phase" of a gradient -#: ../src/widgets/gradient-vector.cpp:903 -msgid "Add stop" -msgstr "" - -#: ../src/widgets/gradient-vector.cpp:906 -msgid "Add another control stop to gradient" -msgstr "" - -#: ../src/widgets/gradient-vector.cpp:911 -msgid "Delete current control stop from gradient" -msgstr "" - -#. TRANSLATORS: "Stop" means: a "phase" of a gradient -#: ../src/widgets/gradient-vector.cpp:979 -msgid "Stop Color" -msgstr "" - -#: ../src/widgets/gradient-vector.cpp:1007 -msgid "Gradient editor" -msgstr "" - -#: ../src/widgets/gradient-vector.cpp:1307 -msgid "Change gradient stop color" -msgstr "" - -#: ../src/widgets/lpe-toolbar.cpp:249 -msgid "Closed" -msgstr "" - -#: ../src/widgets/lpe-toolbar.cpp:251 -msgid "Open start" -msgstr "" - -#: ../src/widgets/lpe-toolbar.cpp:253 -msgid "Open end" -msgstr "" - -#: ../src/widgets/lpe-toolbar.cpp:255 -msgid "Open both" -msgstr "" - -#: ../src/widgets/lpe-toolbar.cpp:314 -msgid "All inactive" -msgstr "" - -#: ../src/widgets/lpe-toolbar.cpp:315 -msgid "No geometric tool is active" -msgstr "" - -#: ../src/widgets/lpe-toolbar.cpp:348 -msgid "Show limiting bounding box" -msgstr "" - -#: ../src/widgets/lpe-toolbar.cpp:349 -msgid "Show bounding box (used to cut infinite lines)" -msgstr "" - -#: ../src/widgets/lpe-toolbar.cpp:360 -msgid "Get limiting bounding box from selection" -msgstr "" - -#: ../src/widgets/lpe-toolbar.cpp:361 -msgid "" -"Set limiting bounding box (used to cut infinite lines) to the bounding box " -"of current selection" -msgstr "" - -#: ../src/widgets/lpe-toolbar.cpp:373 -msgid "Choose a line segment type" -msgstr "" - -#: ../src/widgets/lpe-toolbar.cpp:389 -msgid "Display measuring info" -msgstr "" - -#: ../src/widgets/lpe-toolbar.cpp:390 -msgid "Display measuring info for selected items" -msgstr "" - -#: ../src/widgets/lpe-toolbar.cpp:410 -msgid "Open LPE dialog" -msgstr "" - -#: ../src/widgets/lpe-toolbar.cpp:411 -msgid "Open LPE dialog (to adapt parameters numerically)" -msgstr "" - -#: ../src/widgets/measure-toolbar.cpp:102 ../src/widgets/text-toolbar.cpp:1287 -msgid "Font Size" -msgstr "" - -#: ../src/widgets/measure-toolbar.cpp:102 -msgid "Font Size:" -msgstr "" - -#: ../src/widgets/measure-toolbar.cpp:103 -msgid "The font size to be used in the measurement labels" -msgstr "" - -#: ../src/widgets/measure-toolbar.cpp:115 -#: ../src/widgets/measure-toolbar.cpp:123 -msgid "The units to be used for the measurements" -msgstr "" - -#: ../src/widgets/mesh-toolbar.cpp:204 -msgid "normal" -msgstr "" - -#: ../src/widgets/mesh-toolbar.cpp:204 -msgid "Create mesh gradient" -msgstr "" - -#: ../src/widgets/mesh-toolbar.cpp:208 -msgid "conical" -msgstr "" - -#: ../src/widgets/mesh-toolbar.cpp:208 -msgid "Create conical gradient" -msgstr "" - -#: ../src/widgets/mesh-toolbar.cpp:263 -msgid "Rows" -msgstr "" - -#: ../src/widgets/mesh-toolbar.cpp:263 ../share/extensions/layout_nup.inx.h:12 -msgid "Rows:" -msgstr "" - -#: ../src/widgets/mesh-toolbar.cpp:263 -msgid "Number of rows in new mesh" -msgstr "" - -#: ../src/widgets/mesh-toolbar.cpp:279 -msgid "Columns" -msgstr "" - -#: ../src/widgets/mesh-toolbar.cpp:279 -msgid "Columns:" -msgstr "" - -#: ../src/widgets/mesh-toolbar.cpp:279 -msgid "Number of columns in new mesh" -msgstr "" - -#: ../src/widgets/mesh-toolbar.cpp:293 -msgid "Edit Fill" -msgstr "" - -#: ../src/widgets/mesh-toolbar.cpp:294 -msgid "Edit fill mesh" -msgstr "" - -#: ../src/widgets/mesh-toolbar.cpp:305 -msgid "Edit Stroke" -msgstr "" - -#: ../src/widgets/mesh-toolbar.cpp:306 -msgid "Edit stroke mesh" -msgstr "" - -#: ../src/widgets/mesh-toolbar.cpp:317 ../src/widgets/node-toolbar.cpp:530 -msgid "Show Handles" -msgstr "" - -#: ../src/widgets/mesh-toolbar.cpp:318 -msgid "Show side and tensor handles" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:350 -msgid "Insert node" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:351 -msgid "Insert new nodes into selected segments" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:354 -msgid "Insert" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:365 -msgid "Insert node at min X" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:366 -msgid "Insert new nodes at min X into selected segments" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:369 -msgid "Insert min X" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:375 -msgid "Insert node at max X" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:376 -msgid "Insert new nodes at max X into selected segments" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:379 -msgid "Insert max X" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:385 -msgid "Insert node at min Y" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:386 -msgid "Insert new nodes at min Y into selected segments" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:389 -msgid "Insert min Y" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:395 -msgid "Insert node at max Y" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:396 -msgid "Insert new nodes at max Y into selected segments" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:399 -msgid "Insert max Y" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:407 -msgid "Delete selected nodes" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:418 -msgid "Join selected nodes" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:421 -msgid "Join" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:429 -msgid "Break path at selected nodes" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:439 -msgid "Join with segment" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:440 -msgid "Join selected endnodes with a new segment" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:449 -msgid "Delete segment" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:450 -msgid "Delete segment between two non-endpoint nodes" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:459 -msgid "Node Cusp" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:460 -msgid "Make selected nodes corner" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:469 -msgid "Node Smooth" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:470 -msgid "Make selected nodes smooth" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:479 -msgid "Node Symmetric" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:480 -msgid "Make selected nodes symmetric" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:489 -msgid "Node Auto" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:490 -msgid "Make selected nodes auto-smooth" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:499 -msgid "Node Line" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:500 -msgid "Make selected segments lines" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:509 -msgid "Node Curve" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:510 -msgid "Make selected segments curves" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:519 -msgid "Show Transform Handles" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:520 -msgid "Show transformation handles for selected nodes" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:531 -msgid "Show Bezier handles of selected nodes" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:541 -msgid "Show Outline" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:542 -msgid "Show path outline (without path effects)" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:564 -msgid "Edit clipping paths" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:565 -msgid "Show clipping path(s) of selected object(s)" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:575 -msgid "Edit masks" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:576 -msgid "Show mask(s) of selected object(s)" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:590 -msgid "X coordinate:" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:590 -msgid "X coordinate of selected node(s)" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:608 -msgid "Y coordinate:" -msgstr "" - -#: ../src/widgets/node-toolbar.cpp:608 -msgid "Y coordinate of selected node(s)" -msgstr "" - -#: ../src/widgets/paintbucket-toolbar.cpp:153 -msgid "Fill by" -msgstr "" - -#: ../src/widgets/paintbucket-toolbar.cpp:154 -msgid "Fill by:" -msgstr "" - -#: ../src/widgets/paintbucket-toolbar.cpp:166 -msgid "Fill Threshold" -msgstr "" - -#: ../src/widgets/paintbucket-toolbar.cpp:167 -msgid "" -"The maximum allowed difference between the clicked pixel and the neighboring " -"pixels to be counted in the fill" -msgstr "" - -#: ../src/widgets/paintbucket-toolbar.cpp:193 -msgid "Grow/shrink by" -msgstr "" - -#: ../src/widgets/paintbucket-toolbar.cpp:193 -msgid "Grow/shrink by:" -msgstr "" - -#: ../src/widgets/paintbucket-toolbar.cpp:194 -msgid "" -"The amount to grow (positive) or shrink (negative) the created fill path" -msgstr "" - -#: ../src/widgets/paintbucket-toolbar.cpp:219 -msgid "Close gaps" -msgstr "" - -#: ../src/widgets/paintbucket-toolbar.cpp:220 -msgid "Close gaps:" -msgstr "" - -#: ../src/widgets/paintbucket-toolbar.cpp:231 -#: ../src/widgets/pencil-toolbar.cpp:326 ../src/widgets/spiral-toolbar.cpp:304 -#: ../src/widgets/star-toolbar.cpp:576 -msgid "Defaults" -msgstr "" - -#: ../src/widgets/paintbucket-toolbar.cpp:232 -msgid "" -"Reset paint bucket parameters to defaults (use Inkscape Preferences > Tools " -"to change defaults)" -msgstr "" - -#: ../src/widgets/paint-selector.cpp:234 -msgid "No paint" -msgstr "" - -#: ../src/widgets/paint-selector.cpp:236 -msgid "Flat color" -msgstr "" - -#: ../src/widgets/paint-selector.cpp:238 -msgid "Linear gradient" -msgstr "" - -#: ../src/widgets/paint-selector.cpp:240 -msgid "Radial gradient" -msgstr "" - -#: ../src/widgets/paint-selector.cpp:246 -msgid "Unset paint (make it undefined so it can be inherited)" -msgstr "" - -#. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/painting.html#FillRuleProperty -#: ../src/widgets/paint-selector.cpp:263 -msgid "" -"Any path self-intersections or subpaths create holes in the fill (fill-rule: " -"evenodd)" -msgstr "" - -#. TRANSLATORS: for info, see http://www.w3.org/TR/2000/CR-SVG-20000802/painting.html#FillRuleProperty -#: ../src/widgets/paint-selector.cpp:274 -msgid "" -"Fill is solid unless a subpath is counterdirectional (fill-rule: nonzero)" -msgstr "" - -#: ../src/widgets/paint-selector.cpp:590 -msgid "No objects" -msgstr "" - -#: ../src/widgets/paint-selector.cpp:601 -msgid "Multiple styles" -msgstr "" - -#: ../src/widgets/paint-selector.cpp:612 -msgid "Paint is undefined" -msgstr "" - -#: ../src/widgets/paint-selector.cpp:623 -msgid "No paint" -msgstr "" - -#: ../src/widgets/paint-selector.cpp:694 -msgid "Flat color" -msgstr "" - -#. sp_gradient_selector_set_mode(SP_GRADIENT_SELECTOR(gsel), SP_GRADIENT_SELECTOR_MODE_LINEAR); -#: ../src/widgets/paint-selector.cpp:758 -msgid "Linear gradient" -msgstr "" - -#: ../src/widgets/paint-selector.cpp:761 -msgid "Radial gradient" -msgstr "" - -#: ../src/widgets/paint-selector.cpp:1055 -msgid "" -"Use the Node tool to adjust position, scale, and rotation of the " -"pattern on canvas. Use Object > Pattern > Objects to Pattern to " -"create a new pattern from selection." -msgstr "" - -#: ../src/widgets/paint-selector.cpp:1068 -msgid "Pattern fill" -msgstr "" - -#: ../src/widgets/paint-selector.cpp:1164 -msgid "Swatch fill" -msgstr "" - -#: ../src/widgets/pencil-toolbar.cpp:130 -msgid "Bezier" -msgstr "" - -#: ../src/widgets/pencil-toolbar.cpp:131 -msgid "Create regular Bezier path" -msgstr "" - -#: ../src/widgets/pencil-toolbar.cpp:138 -msgid "Create Spiro path" -msgstr "" - -#: ../src/widgets/pencil-toolbar.cpp:145 -msgid "Zigzag" -msgstr "" - -#: ../src/widgets/pencil-toolbar.cpp:146 -msgid "Create a sequence of straight line segments" -msgstr "" - -#: ../src/widgets/pencil-toolbar.cpp:152 -msgid "Paraxial" -msgstr "" - -#: ../src/widgets/pencil-toolbar.cpp:153 -msgid "Create a sequence of paraxial line segments" -msgstr "" - -#: ../src/widgets/pencil-toolbar.cpp:161 -msgid "Mode of new lines drawn by this tool" -msgstr "" - -#: ../src/widgets/pencil-toolbar.cpp:190 -msgid "Triangle in" -msgstr "" - -#: ../src/widgets/pencil-toolbar.cpp:191 -msgid "Triangle out" -msgstr "" - -#: ../src/widgets/pencil-toolbar.cpp:193 -msgid "From clipboard" -msgstr "" - -#: ../src/widgets/pencil-toolbar.cpp:218 ../src/widgets/pencil-toolbar.cpp:219 -msgid "Shape:" -msgstr "" - -#: ../src/widgets/pencil-toolbar.cpp:218 -msgid "Shape of new paths drawn by this tool" -msgstr "" - -#: ../src/widgets/pencil-toolbar.cpp:303 -msgid "(many nodes, rough)" -msgstr "" - -#: ../src/widgets/pencil-toolbar.cpp:303 -msgid "(few nodes, smooth)" -msgstr "" - -#: ../src/widgets/pencil-toolbar.cpp:306 -msgid "Smoothing:" -msgstr "" - -#: ../src/widgets/pencil-toolbar.cpp:306 -msgid "Smoothing: " -msgstr "" - -#: ../src/widgets/pencil-toolbar.cpp:307 -msgid "How much smoothing (simplifying) is applied to the line" -msgstr "" - -#: ../src/widgets/pencil-toolbar.cpp:327 -msgid "" -"Reset pencil parameters to defaults (use Inkscape Preferences > Tools to " -"change defaults)" -msgstr "" - -#: ../src/widgets/rect-toolbar.cpp:128 -msgid "Change rectangle" -msgstr "" - -#: ../src/widgets/rect-toolbar.cpp:315 -msgid "W:" -msgstr "" - -#: ../src/widgets/rect-toolbar.cpp:315 -msgid "Width of rectangle" -msgstr "" - -#: ../src/widgets/rect-toolbar.cpp:332 -msgid "H:" -msgstr "" - -#: ../src/widgets/rect-toolbar.cpp:332 -msgid "Height of rectangle" -msgstr "" - -#: ../src/widgets/rect-toolbar.cpp:346 ../src/widgets/rect-toolbar.cpp:361 -msgid "not rounded" -msgstr "" - -#: ../src/widgets/rect-toolbar.cpp:349 -msgid "Horizontal radius" -msgstr "" - -#: ../src/widgets/rect-toolbar.cpp:349 -msgid "Rx:" -msgstr "" - -#: ../src/widgets/rect-toolbar.cpp:349 -msgid "Horizontal radius of rounded corners" -msgstr "" - -#: ../src/widgets/rect-toolbar.cpp:364 -msgid "Vertical radius" -msgstr "" - -#: ../src/widgets/rect-toolbar.cpp:364 -msgid "Ry:" -msgstr "" - -#: ../src/widgets/rect-toolbar.cpp:364 -msgid "Vertical radius of rounded corners" -msgstr "" - -#: ../src/widgets/rect-toolbar.cpp:383 -msgid "Not rounded" -msgstr "" - -#: ../src/widgets/rect-toolbar.cpp:384 -msgid "Make corners sharp" -msgstr "" - -#: ../src/widgets/select-toolbar.cpp:263 -msgid "Transform by toolbar" -msgstr "" - -#: ../src/widgets/select-toolbar.cpp:341 -msgid "Now stroke width is scaled when objects are scaled." -msgstr "" - -#: ../src/widgets/select-toolbar.cpp:343 -msgid "Now stroke width is not scaled when objects are scaled." -msgstr "" - -#: ../src/widgets/select-toolbar.cpp:354 -msgid "" -"Now rounded rectangle corners are scaled when rectangles are " -"scaled." -msgstr "" - -#: ../src/widgets/select-toolbar.cpp:356 -msgid "" -"Now rounded rectangle corners are not scaled when rectangles " -"are scaled." -msgstr "" - -#: ../src/widgets/select-toolbar.cpp:367 -msgid "" -"Now gradients are transformed along with their objects when " -"those are transformed (moved, scaled, rotated, or skewed)." -msgstr "" - -#: ../src/widgets/select-toolbar.cpp:369 -msgid "" -"Now gradients remain fixed when objects are transformed " -"(moved, scaled, rotated, or skewed)." -msgstr "" - -#: ../src/widgets/select-toolbar.cpp:380 -msgid "" -"Now patterns are transformed along with their objects when " -"those are transformed (moved, scaled, rotated, or skewed)." -msgstr "" - -#: ../src/widgets/select-toolbar.cpp:382 -msgid "" -"Now patterns remain fixed when objects are transformed (moved, " -"scaled, rotated, or skewed)." -msgstr "" - -#. four spinbuttons -#: ../src/widgets/select-toolbar.cpp:500 -msgctxt "Select toolbar" -msgid "X position" -msgstr "" - -#: ../src/widgets/select-toolbar.cpp:500 -msgctxt "Select toolbar" -msgid "X:" -msgstr "" - -#: ../src/widgets/select-toolbar.cpp:502 -msgid "Horizontal coordinate of selection" -msgstr "" - -#: ../src/widgets/select-toolbar.cpp:506 -msgctxt "Select toolbar" -msgid "Y position" -msgstr "" - -#: ../src/widgets/select-toolbar.cpp:506 -msgctxt "Select toolbar" -msgid "Y:" -msgstr "" - -#: ../src/widgets/select-toolbar.cpp:508 -msgid "Vertical coordinate of selection" -msgstr "" - -#: ../src/widgets/select-toolbar.cpp:512 -msgctxt "Select toolbar" -msgid "Width" -msgstr "" - -#: ../src/widgets/select-toolbar.cpp:512 -msgctxt "Select toolbar" -msgid "W:" -msgstr "" - -#: ../src/widgets/select-toolbar.cpp:514 -msgid "Width of selection" -msgstr "" - -#: ../src/widgets/select-toolbar.cpp:521 -msgid "Lock width and height" -msgstr "" - -#: ../src/widgets/select-toolbar.cpp:522 -msgid "When locked, change both width and height by the same proportion" -msgstr "" - -#: ../src/widgets/select-toolbar.cpp:531 -msgctxt "Select toolbar" -msgid "Height" -msgstr "" - -#: ../src/widgets/select-toolbar.cpp:531 -msgctxt "Select toolbar" -msgid "H:" -msgstr "" - -#: ../src/widgets/select-toolbar.cpp:533 -msgid "Height of selection" -msgstr "" - -#: ../src/widgets/select-toolbar.cpp:583 -msgid "Scale rounded corners" -msgstr "" - -#: ../src/widgets/select-toolbar.cpp:594 -msgid "Move gradients" -msgstr "" - -#: ../src/widgets/select-toolbar.cpp:605 -msgid "Move patterns" -msgstr "" - -#: ../src/widgets/spiral-toolbar.cpp:115 -msgid "Change spiral" -msgstr "" - -#: ../src/widgets/spiral-toolbar.cpp:261 -msgid "just a curve" -msgstr "" - -#: ../src/widgets/spiral-toolbar.cpp:261 -msgid "one full revolution" -msgstr "" - -#: ../src/widgets/spiral-toolbar.cpp:264 -msgid "Number of turns" -msgstr "" - -#: ../src/widgets/spiral-toolbar.cpp:264 -msgid "Turns:" -msgstr "" - -#: ../src/widgets/spiral-toolbar.cpp:264 -msgid "Number of revolutions" -msgstr "" - -#: ../src/widgets/spiral-toolbar.cpp:275 -msgid "circle" -msgstr "" - -#: ../src/widgets/spiral-toolbar.cpp:275 -msgid "edge is much denser" -msgstr "" - -#: ../src/widgets/spiral-toolbar.cpp:275 -msgid "edge is denser" -msgstr "" - -#: ../src/widgets/spiral-toolbar.cpp:275 -msgid "even" -msgstr "" - -#: ../src/widgets/spiral-toolbar.cpp:275 -msgid "center is denser" -msgstr "" - -#: ../src/widgets/spiral-toolbar.cpp:275 -msgid "center is much denser" -msgstr "" - -#: ../src/widgets/spiral-toolbar.cpp:278 -msgid "Divergence" -msgstr "" - -#: ../src/widgets/spiral-toolbar.cpp:278 -msgid "Divergence:" -msgstr "" - -#: ../src/widgets/spiral-toolbar.cpp:278 -msgid "How much denser/sparser are outer revolutions; 1 = uniform" -msgstr "" - -#: ../src/widgets/spiral-toolbar.cpp:289 -msgid "starts from center" -msgstr "" - -#: ../src/widgets/spiral-toolbar.cpp:289 -msgid "starts mid-way" -msgstr "" - -#: ../src/widgets/spiral-toolbar.cpp:289 -msgid "starts near edge" -msgstr "" - -#: ../src/widgets/spiral-toolbar.cpp:292 -msgid "Inner radius" -msgstr "" - -#: ../src/widgets/spiral-toolbar.cpp:292 -msgid "Inner radius:" -msgstr "" - -#: ../src/widgets/spiral-toolbar.cpp:292 -msgid "Radius of the innermost revolution (relative to the spiral size)" -msgstr "" - -#: ../src/widgets/spiral-toolbar.cpp:305 ../src/widgets/star-toolbar.cpp:577 -msgid "" -"Reset shape parameters to defaults (use Inkscape Preferences > Tools to " -"change defaults)" -msgstr "" - -#. Width -#: ../src/widgets/spray-toolbar.cpp:129 -msgid "(narrow spray)" -msgstr "" - -#: ../src/widgets/spray-toolbar.cpp:129 -msgid "(broad spray)" -msgstr "" - -#: ../src/widgets/spray-toolbar.cpp:132 -msgid "The width of the spray area (relative to the visible canvas area)" -msgstr "" - -#: ../src/widgets/spray-toolbar.cpp:145 -msgid "(maximum mean)" -msgstr "" - -#: ../src/widgets/spray-toolbar.cpp:148 -msgid "Focus" -msgstr "" - -#: ../src/widgets/spray-toolbar.cpp:148 -msgid "Focus:" -msgstr "" - -#: ../src/widgets/spray-toolbar.cpp:148 -msgid "0 to spray a spot; increase to enlarge the ring radius" -msgstr "" - -#. Standard_deviation -#: ../src/widgets/spray-toolbar.cpp:161 -msgid "(minimum scatter)" -msgstr "" - -#: ../src/widgets/spray-toolbar.cpp:161 -msgid "(maximum scatter)" -msgstr "" - -#: ../src/widgets/spray-toolbar.cpp:164 -msgctxt "Spray tool" -msgid "Scatter" -msgstr "" - -#: ../src/widgets/spray-toolbar.cpp:164 -msgctxt "Spray tool" -msgid "Scatter:" -msgstr "" - -#: ../src/widgets/spray-toolbar.cpp:164 -msgid "Increase to scatter sprayed objects" -msgstr "" - -#: ../src/widgets/spray-toolbar.cpp:183 -msgid "Spray copies of the initial selection" -msgstr "" - -#: ../src/widgets/spray-toolbar.cpp:190 -msgid "Spray clones of the initial selection" -msgstr "" - -#: ../src/widgets/spray-toolbar.cpp:196 -msgid "Spray single path" -msgstr "" - -#: ../src/widgets/spray-toolbar.cpp:197 -msgid "Spray objects in a single path" -msgstr "" - -#: ../src/widgets/spray-toolbar.cpp:201 ../src/widgets/tweak-toolbar.cpp:271 -msgid "Mode" -msgstr "" - -#. Population -#: ../src/widgets/spray-toolbar.cpp:221 -msgid "(low population)" -msgstr "" - -#: ../src/widgets/spray-toolbar.cpp:221 -msgid "(high population)" -msgstr "" - -#: ../src/widgets/spray-toolbar.cpp:224 -msgid "Amount" -msgstr "" - -#: ../src/widgets/spray-toolbar.cpp:225 -msgid "Adjusts the number of items sprayed per click" -msgstr "" - -#: ../src/widgets/spray-toolbar.cpp:241 -msgid "" -"Use the pressure of the input device to alter the amount of sprayed objects" -msgstr "" - -#: ../src/widgets/spray-toolbar.cpp:251 -msgid "(high rotation variation)" -msgstr "" - -#: ../src/widgets/spray-toolbar.cpp:254 -msgid "Rotation" -msgstr "" - -#: ../src/widgets/spray-toolbar.cpp:254 -msgid "Rotation:" -msgstr "" - -#: ../src/widgets/spray-toolbar.cpp:256 -#, no-c-format -msgid "" -"Variation of the rotation of the sprayed objects; 0% for the same rotation " -"than the original object" -msgstr "" - -#: ../src/widgets/spray-toolbar.cpp:269 -msgid "(high scale variation)" -msgstr "" - -#: ../src/widgets/spray-toolbar.cpp:272 -msgctxt "Spray tool" -msgid "Scale" -msgstr "" - -#: ../src/widgets/spray-toolbar.cpp:272 -msgctxt "Spray tool" -msgid "Scale:" -msgstr "" - -#: ../src/widgets/spray-toolbar.cpp:274 -#, no-c-format -msgid "" -"Variation in the scale of the sprayed objects; 0% for the same scale than " -"the original object" -msgstr "" - -#: ../src/widgets/sp-attribute-widget.cpp:299 -msgid "Set attribute" -msgstr "" - -#: ../src/widgets/sp-color-icc-selector.cpp:257 -msgid "CMS" -msgstr "" - -#: ../src/widgets/sp-color-icc-selector.cpp:355 -#: ../src/widgets/sp-color-scales.cpp:428 -msgid "_R:" -msgstr "" - -#. TYPE_RGB_16 -#: ../src/widgets/sp-color-icc-selector.cpp:356 -#: ../src/widgets/sp-color-scales.cpp:431 -msgid "_G:" -msgstr "" - -#: ../src/widgets/sp-color-icc-selector.cpp:357 -#: ../src/widgets/sp-color-scales.cpp:434 -msgid "_B:" -msgstr "" - -#: ../src/widgets/sp-color-icc-selector.cpp:359 -msgid "G:" -msgstr "" - -#: ../src/widgets/sp-color-icc-selector.cpp:359 -msgid "Gray" -msgstr "" - -#. TYPE_GRAY_16 -#: ../src/widgets/sp-color-icc-selector.cpp:361 -#: ../src/widgets/sp-color-icc-selector.cpp:365 -#: ../src/widgets/sp-color-scales.cpp:454 -msgid "_H:" -msgstr "" - -#. TYPE_HSV_16 -#: ../src/widgets/sp-color-icc-selector.cpp:362 -#: ../src/widgets/sp-color-icc-selector.cpp:367 -#: ../src/widgets/sp-color-scales.cpp:457 -msgid "_S:" -msgstr "" - -#. TYPE_HLS_16 -#: ../src/widgets/sp-color-icc-selector.cpp:366 -#: ../src/widgets/sp-color-scales.cpp:460 -msgid "_L:" -msgstr "" - -#: ../src/widgets/sp-color-icc-selector.cpp:369 -#: ../src/widgets/sp-color-icc-selector.cpp:374 -#: ../src/widgets/sp-color-scales.cpp:482 -msgid "_C:" -msgstr "" - -#. TYPE_CMYK_16 -#. TYPE_CMY_16 -#: ../src/widgets/sp-color-icc-selector.cpp:370 -#: ../src/widgets/sp-color-icc-selector.cpp:375 -#: ../src/widgets/sp-color-scales.cpp:485 -msgid "_M:" -msgstr "" - -#: ../src/widgets/sp-color-icc-selector.cpp:371 -#: ../src/widgets/sp-color-icc-selector.cpp:376 -#: ../src/widgets/sp-color-scales.cpp:488 -msgid "_Y:" -msgstr "" - -#: ../src/widgets/sp-color-icc-selector.cpp:372 -#: ../src/widgets/sp-color-scales.cpp:491 -msgid "_K:" -msgstr "" - -#: ../src/widgets/sp-color-icc-selector.cpp:455 -msgid "Fix" -msgstr "" - -#: ../src/widgets/sp-color-icc-selector.cpp:458 -msgid "Fix RGB fallback to match icc-color() value." -msgstr "" - -#. Label -#: ../src/widgets/sp-color-icc-selector.cpp:561 -#: ../src/widgets/sp-color-scales.cpp:437 -#: ../src/widgets/sp-color-scales.cpp:463 -#: ../src/widgets/sp-color-scales.cpp:494 -#: ../src/widgets/sp-color-wheel-selector.cpp:140 -msgid "_A:" -msgstr "" - -#: ../src/widgets/sp-color-icc-selector.cpp:572 -#: ../src/widgets/sp-color-icc-selector.cpp:585 -#: ../src/widgets/sp-color-scales.cpp:438 -#: ../src/widgets/sp-color-scales.cpp:439 -#: ../src/widgets/sp-color-scales.cpp:464 -#: ../src/widgets/sp-color-scales.cpp:465 -#: ../src/widgets/sp-color-scales.cpp:495 -#: ../src/widgets/sp-color-scales.cpp:496 -#: ../src/widgets/sp-color-wheel-selector.cpp:161 -#: ../src/widgets/sp-color-wheel-selector.cpp:185 -msgid "Alpha (opacity)" -msgstr "" - -#: ../src/widgets/sp-color-notebook.cpp:385 -msgid "Color Managed" -msgstr "" - -#: ../src/widgets/sp-color-notebook.cpp:392 -msgid "Out of gamut!" -msgstr "" - -#: ../src/widgets/sp-color-notebook.cpp:399 -msgid "Too much ink!" -msgstr "" - -#. Create RGBA entry and color preview -#: ../src/widgets/sp-color-notebook.cpp:416 -msgid "RGBA_:" -msgstr "" - -#: ../src/widgets/sp-color-notebook.cpp:424 -msgid "Hexadecimal RGBA value of the color" -msgstr "" - -#: ../src/widgets/sp-color-scales.cpp:80 -msgid "RGB" -msgstr "" - -#: ../src/widgets/sp-color-scales.cpp:80 -msgid "HSL" -msgstr "" - -#: ../src/widgets/sp-color-scales.cpp:80 -msgid "CMYK" -msgstr "" - -#: ../src/widgets/sp-color-selector.cpp:64 -msgid "Unnamed" -msgstr "" - -#: ../src/widgets/sp-xmlview-attr-list.cpp:64 -msgid "Value" -msgstr "" - -#: ../src/widgets/sp-xmlview-content.cpp:179 -msgid "Type text in a text node" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:114 -msgid "Star: Change number of corners" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:167 -msgid "Star: Change spoke ratio" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:212 -msgid "Make polygon" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:212 -msgid "Make star" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:251 -msgid "Star: Change rounding" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:291 -msgid "Star: Change randomization" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:475 -msgid "Regular polygon (with one handle) instead of a star" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:482 -msgid "Star instead of a regular polygon (with one handle)" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:503 -msgid "triangle/tri-star" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:503 -msgid "square/quad-star" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:503 -msgid "pentagon/five-pointed star" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:503 -msgid "hexagon/six-pointed star" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:506 -msgid "Corners" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:506 -msgid "Corners:" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:506 -msgid "Number of corners of a polygon or star" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:519 -msgid "thin-ray star" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:519 -msgid "pentagram" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:519 -msgid "hexagram" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:519 -msgid "heptagram" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:519 -msgid "octagram" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:519 -msgid "regular polygon" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:522 -msgid "Spoke ratio" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:522 -msgid "Spoke ratio:" -msgstr "" - -#. TRANSLATORS: Tip radius of a star is the distance from the center to the farthest handle. -#. Base radius is the same for the closest handle. -#: ../src/widgets/star-toolbar.cpp:525 -msgid "Base radius to tip radius ratio" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:543 -msgid "stretched" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:543 -msgid "twisted" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:543 -msgid "slightly pinched" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:543 -msgid "NOT rounded" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:543 -msgid "slightly rounded" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:543 -msgid "visibly rounded" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:543 -msgid "well rounded" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:543 -msgid "amply rounded" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:543 ../src/widgets/star-toolbar.cpp:558 -msgid "blown up" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:546 -msgid "Rounded:" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:546 -msgid "How much rounded are the corners (0 for sharp)" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:558 -msgid "NOT randomized" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:558 -msgid "slightly irregular" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:558 -msgid "visibly randomized" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:558 -msgid "strongly randomized" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:561 -msgid "Randomized" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:561 -msgid "Randomized:" -msgstr "" - -#: ../src/widgets/star-toolbar.cpp:561 -msgid "Scatter randomly the corners and angles" -msgstr "" - -#: ../src/widgets/stroke-style.cpp:185 -msgid "Stroke width" -msgstr "" - -#: ../src/widgets/stroke-style.cpp:187 -msgctxt "Stroke width" -msgid "_Width:" -msgstr "" - -#. TRANSLATORS: Miter join: joining lines with a sharp (pointed) corner. -#. For an example, draw a triangle with a large stroke width and modify the -#. "Join" option (in the Fill and Stroke dialog). -#: ../src/widgets/stroke-style.cpp:232 -msgid "Miter join" -msgstr "" - -#. TRANSLATORS: Round join: joining lines with a rounded corner. -#. For an example, draw a triangle with a large stroke width and modify the -#. "Join" option (in the Fill and Stroke dialog). -#: ../src/widgets/stroke-style.cpp:240 -msgid "Round join" -msgstr "" - -#. TRANSLATORS: Bevel join: joining lines with a blunted (flattened) corner. -#. For an example, draw a triangle with a large stroke width and modify the -#. "Join" option (in the Fill and Stroke dialog). -#: ../src/widgets/stroke-style.cpp:248 -msgid "Bevel join" -msgstr "" - -#: ../src/widgets/stroke-style.cpp:273 -msgid "Miter _limit:" -msgstr "" - -#. Cap type -#. TRANSLATORS: cap type specifies the shape for the ends of lines -#. spw_label(t, _("_Cap:"), 0, i); -#: ../src/widgets/stroke-style.cpp:289 -msgid "Cap:" -msgstr "" - -#. TRANSLATORS: Butt cap: the line shape does not extend beyond the end point -#. of the line; the ends of the line are square -#: ../src/widgets/stroke-style.cpp:300 -msgid "Butt cap" -msgstr "" - -#. TRANSLATORS: Round cap: the line shape extends beyond the end point of the -#. line; the ends of the line are rounded -#: ../src/widgets/stroke-style.cpp:307 -msgid "Round cap" -msgstr "" - -#. TRANSLATORS: Square cap: the line shape extends beyond the end point of the -#. line; the ends of the line are square -#: ../src/widgets/stroke-style.cpp:314 -msgid "Square cap" -msgstr "" - -#. Dash -#: ../src/widgets/stroke-style.cpp:319 -msgid "Dashes:" -msgstr "" - -#. Drop down marker selectors -#. TRANSLATORS: Path markers are an SVG feature that allows you to attach arbitrary shapes -#. (arrowheads, bullets, faces, whatever) to the start, end, or middle nodes of a path. -#: ../src/widgets/stroke-style.cpp:345 -msgid "Markers:" -msgstr "" - -#: ../src/widgets/stroke-style.cpp:351 -msgid "Start Markers are drawn on the first node of a path or shape" -msgstr "" - -#: ../src/widgets/stroke-style.cpp:360 -msgid "" -"Mid Markers are drawn on every node of a path or shape except the first and " -"last nodes" -msgstr "" - -#: ../src/widgets/stroke-style.cpp:369 -msgid "End Markers are drawn on the last node of a path or shape" -msgstr "" - -#: ../src/widgets/stroke-style.cpp:487 -msgid "Set markers" -msgstr "" - -#: ../src/widgets/stroke-style.cpp:1075 ../src/widgets/stroke-style.cpp:1160 -msgid "Set stroke style" -msgstr "" - -#: ../src/widgets/stroke-style.cpp:1248 -msgid "Set marker color" -msgstr "" - -#: ../src/widgets/swatch-selector.cpp:137 -msgid "Change swatch color" -msgstr "" - -#: ../src/widgets/text-toolbar.cpp:178 -msgid "Text: Change font family" -msgstr "" - -#: ../src/widgets/text-toolbar.cpp:242 -msgid "Text: Change font size" -msgstr "" - -#: ../src/widgets/text-toolbar.cpp:280 -msgid "Text: Change font style" -msgstr "" - -#: ../src/widgets/text-toolbar.cpp:358 -msgid "Text: Change superscript or subscript" -msgstr "" - -#: ../src/widgets/text-toolbar.cpp:503 -msgid "Text: Change alignment" -msgstr "" - -#: ../src/widgets/text-toolbar.cpp:546 -msgid "Text: Change line-height" -msgstr "" - -#: ../src/widgets/text-toolbar.cpp:595 -msgid "Text: Change word-spacing" -msgstr "" - -#: ../src/widgets/text-toolbar.cpp:636 -msgid "Text: Change letter-spacing" -msgstr "" - -#: ../src/widgets/text-toolbar.cpp:676 -msgid "Text: Change dx (kern)" -msgstr "" - -#: ../src/widgets/text-toolbar.cpp:710 -msgid "Text: Change dy" -msgstr "" - -#: ../src/widgets/text-toolbar.cpp:745 -msgid "Text: Change rotate" -msgstr "" - -#: ../src/widgets/text-toolbar.cpp:793 -msgid "Text: Change orientation" -msgstr "" - -#: ../src/widgets/text-toolbar.cpp:1235 -msgid "Font Family" -msgstr "" - -#: ../src/widgets/text-toolbar.cpp:1236 -msgid "Select Font Family (Alt-X to access)" -msgstr "" - -#. Focus widget -#. Enable entry completion -#: ../src/widgets/text-toolbar.cpp:1246 -msgid "Select all text with this font-family" -msgstr "" - -#: ../src/widgets/text-toolbar.cpp:1250 -msgid "Font not found on system" -msgstr "" - -#: ../src/widgets/text-toolbar.cpp:1309 -msgid "Font Style" -msgstr "" - -#: ../src/widgets/text-toolbar.cpp:1310 -msgid "Font style" -msgstr "" - -#. Name -#: ../src/widgets/text-toolbar.cpp:1327 -msgid "Toggle Superscript" -msgstr "" - -#. Label -#: ../src/widgets/text-toolbar.cpp:1328 -msgid "Toggle superscript" -msgstr "" - -#. Name -#: ../src/widgets/text-toolbar.cpp:1340 -msgid "Toggle Subscript" -msgstr "" - -#. Label -#: ../src/widgets/text-toolbar.cpp:1341 -msgid "Toggle subscript" -msgstr "" - -#: ../src/widgets/text-toolbar.cpp:1382 -msgid "Justify" -msgstr "" - -#. Name -#: ../src/widgets/text-toolbar.cpp:1389 -msgid "Alignment" -msgstr "" - -#. Label -#: ../src/widgets/text-toolbar.cpp:1390 -msgid "Text alignment" -msgstr "" - -#: ../src/widgets/text-toolbar.cpp:1417 -msgid "Horizontal" -msgstr "" - -#: ../src/widgets/text-toolbar.cpp:1424 -msgid "Vertical" -msgstr "" - -#. Label -#: ../src/widgets/text-toolbar.cpp:1431 -msgid "Text orientation" -msgstr "" - -#. Drop down menu -#: ../src/widgets/text-toolbar.cpp:1454 -msgid "Smaller spacing" -msgstr "" - -#: ../src/widgets/text-toolbar.cpp:1454 ../src/widgets/text-toolbar.cpp:1485 -#: ../src/widgets/text-toolbar.cpp:1516 -msgctxt "Text tool" -msgid "Normal" -msgstr "" - -#: ../src/widgets/text-toolbar.cpp:1454 -msgid "Larger spacing" -msgstr "" - -#. name -#: ../src/widgets/text-toolbar.cpp:1459 -msgid "Line Height" -msgstr "" - -#. label -#: ../src/widgets/text-toolbar.cpp:1460 -msgid "Line:" -msgstr "" - -#. short label -#: ../src/widgets/text-toolbar.cpp:1461 -msgid "Spacing between lines (times font size)" -msgstr "" - -#. Drop down menu -#: ../src/widgets/text-toolbar.cpp:1485 ../src/widgets/text-toolbar.cpp:1516 -msgid "Negative spacing" -msgstr "" - -#: ../src/widgets/text-toolbar.cpp:1485 ../src/widgets/text-toolbar.cpp:1516 -msgid "Positive spacing" -msgstr "" - -#. name -#: ../src/widgets/text-toolbar.cpp:1490 -msgid "Word spacing" -msgstr "" - -#. label -#: ../src/widgets/text-toolbar.cpp:1491 -msgid "Word:" -msgstr "" - -#. short label -#: ../src/widgets/text-toolbar.cpp:1492 -msgid "Spacing between words (px)" -msgstr "" - -#. name -#: ../src/widgets/text-toolbar.cpp:1521 -msgid "Letter spacing" -msgstr "" - -#. label -#: ../src/widgets/text-toolbar.cpp:1522 -msgid "Letter:" -msgstr "" - -#. short label -#: ../src/widgets/text-toolbar.cpp:1523 -msgid "Spacing between letters (px)" -msgstr "" - -#. name -#: ../src/widgets/text-toolbar.cpp:1552 -msgid "Kerning" -msgstr "" - -#. label -#: ../src/widgets/text-toolbar.cpp:1553 -msgid "Kern:" -msgstr "" - -#. short label -#: ../src/widgets/text-toolbar.cpp:1554 -msgid "Horizontal kerning (px)" -msgstr "" - -#. name -#: ../src/widgets/text-toolbar.cpp:1583 -msgid "Vertical Shift" -msgstr "" - -#. label -#: ../src/widgets/text-toolbar.cpp:1584 -msgid "Vert:" -msgstr "" - -#. short label -#: ../src/widgets/text-toolbar.cpp:1585 -msgid "Vertical shift (px)" -msgstr "" - -#. name -#: ../src/widgets/text-toolbar.cpp:1614 -msgid "Letter rotation" -msgstr "" - -#. label -#: ../src/widgets/text-toolbar.cpp:1615 -msgid "Rot:" -msgstr "" - -#. short label -#: ../src/widgets/text-toolbar.cpp:1616 -msgid "Character rotation (degrees)" -msgstr "" - -#: ../src/widgets/toolbox.cpp:181 -msgid "Color/opacity used for color tweaking" -msgstr "" - -#: ../src/widgets/toolbox.cpp:189 -msgid "Style of new stars" -msgstr "" - -#: ../src/widgets/toolbox.cpp:191 -msgid "Style of new rectangles" -msgstr "" - -#: ../src/widgets/toolbox.cpp:193 -msgid "Style of new 3D boxes" -msgstr "" - -#: ../src/widgets/toolbox.cpp:195 -msgid "Style of new ellipses" -msgstr "" - -#: ../src/widgets/toolbox.cpp:197 -msgid "Style of new spirals" -msgstr "" - -#: ../src/widgets/toolbox.cpp:199 -msgid "Style of new paths created by Pencil" -msgstr "" - -#: ../src/widgets/toolbox.cpp:201 -msgid "Style of new paths created by Pen" -msgstr "" - -#: ../src/widgets/toolbox.cpp:203 -msgid "Style of new calligraphic strokes" -msgstr "" - -#: ../src/widgets/toolbox.cpp:205 ../src/widgets/toolbox.cpp:207 -msgid "TBD" -msgstr "" - -#: ../src/widgets/toolbox.cpp:219 -msgid "Style of Paint Bucket fill objects" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1682 -msgid "Bounding box" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1682 -msgid "Snap bounding boxes" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1691 -msgid "Bounding box edges" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1691 -msgid "Snap to edges of a bounding box" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1700 -msgid "Bounding box corners" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1700 -msgid "Snap bounding box corners" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1709 -msgid "BBox Edge Midpoints" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1709 -msgid "Snap midpoints of bounding box edges" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1719 -msgid "BBox Centers" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1719 -msgid "Snapping centers of bounding boxes" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1728 -msgid "Snap nodes, paths, and handles" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1736 -msgid "Snap to paths" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1745 -msgid "Path intersections" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1745 -msgid "Snap to path intersections" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1754 -msgid "To nodes" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1754 -msgid "Snap cusp nodes, incl. rectangle corners" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1763 -msgid "Smooth nodes" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1763 -msgid "Snap smooth nodes, incl. quadrant points of ellipses" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1772 -msgid "Line Midpoints" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1772 -msgid "Snap midpoints of line segments" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1781 -msgid "Others" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1781 -msgid "Snap other points (centers, guide origins, gradient handles, etc.)" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1789 -msgid "Object Centers" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1789 -msgid "Snap centers of objects" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1798 -msgid "Rotation Centers" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1798 -msgid "Snap an item's rotation center" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1807 -msgid "Text baseline" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1807 -msgid "Snap text anchors and baselines" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1817 -msgid "Page border" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1817 -msgid "Snap to the page border" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1826 -msgid "Snap to grids" -msgstr "" - -#: ../src/widgets/toolbox.cpp:1835 -msgid "Snap guides" -msgstr "" - -#. Width -#: ../src/widgets/tweak-toolbar.cpp:143 -msgid "(pinch tweak)" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:143 -msgid "(broad tweak)" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:146 -msgid "The width of the tweak area (relative to the visible canvas area)" -msgstr "" - -#. Force -#: ../src/widgets/tweak-toolbar.cpp:160 -msgid "(minimum force)" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:160 -msgid "(maximum force)" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:163 -msgid "Force" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:163 -msgid "Force:" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:163 -msgid "The force of the tweak action" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:181 -msgid "Move mode" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:182 -msgid "Move objects in any direction" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:188 -msgid "Move in/out mode" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:189 -msgid "Move objects towards cursor; with Shift from cursor" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:195 -msgid "Move jitter mode" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:196 -msgid "Move objects in random directions" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:202 -msgid "Scale mode" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:203 -msgid "Shrink objects, with Shift enlarge" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:209 -msgid "Rotate mode" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:210 -msgid "Rotate objects, with Shift counterclockwise" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:216 -msgid "Duplicate/delete mode" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:217 -msgid "Duplicate objects, with Shift delete" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:223 -msgid "Push mode" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:224 -msgid "Push parts of paths in any direction" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:230 -msgid "Shrink/grow mode" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:231 -msgid "Shrink (inset) parts of paths; with Shift grow (outset)" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:237 -msgid "Attract/repel mode" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:238 -msgid "Attract parts of paths towards cursor; with Shift from cursor" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:244 -msgid "Roughen mode" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:245 -msgid "Roughen parts of paths" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:251 -msgid "Color paint mode" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:252 -msgid "Paint the tool's color upon selected objects" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:258 -msgid "Color jitter mode" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:259 -msgid "Jitter the colors of selected objects" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:265 -msgid "Blur mode" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:266 -msgid "Blur selected objects more; with Shift, blur less" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:293 -msgid "Channels:" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:305 -msgid "In color mode, act on objects' hue" -msgstr "" - -#. TRANSLATORS: "H" here stands for hue -#: ../src/widgets/tweak-toolbar.cpp:309 -msgid "H" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:321 -msgid "In color mode, act on objects' saturation" -msgstr "" - -#. TRANSLATORS: "S" here stands for Saturation -#: ../src/widgets/tweak-toolbar.cpp:325 -msgid "S" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:337 -msgid "In color mode, act on objects' lightness" -msgstr "" - -#. TRANSLATORS: "L" here stands for Lightness -#: ../src/widgets/tweak-toolbar.cpp:341 -msgid "L" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:353 -msgid "In color mode, act on objects' opacity" -msgstr "" - -#. TRANSLATORS: "O" here stands for Opacity -#: ../src/widgets/tweak-toolbar.cpp:357 -msgid "O" -msgstr "" - -#. Fidelity -#: ../src/widgets/tweak-toolbar.cpp:368 -msgid "(rough, simplified)" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:368 -msgid "(fine, but many nodes)" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:371 -msgid "Fidelity" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:371 -msgid "Fidelity:" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:372 -msgid "" -"Low fidelity simplifies paths; high fidelity preserves path features but may " -"generate a lot of new nodes" -msgstr "" - -#: ../src/widgets/tweak-toolbar.cpp:391 -msgid "Use the pressure of the input device to alter the force of tweak action" -msgstr "" - -#: ../share/extensions/convert2dashes.py:93 -msgid "" -"The selected object is not a path.\n" -"Try using the procedure Path->Object to Path." -msgstr "" - -#: ../share/extensions/dimension.py:108 -msgid "Please select an object." -msgstr "" - -#: ../share/extensions/dimension.py:133 -msgid "Unable to process this object. Try changing it into a path first." -msgstr "" - -#. report to the Inkscape console using errormsg -#: ../share/extensions/draw_from_triangle.py:178 -msgid "Side Length 'a' (px): " -msgstr "" - -#: ../share/extensions/draw_from_triangle.py:179 -msgid "Side Length 'b' (px): " -msgstr "" - -#: ../share/extensions/draw_from_triangle.py:180 -msgid "Side Length 'c' (px): " -msgstr "" - -#: ../share/extensions/draw_from_triangle.py:181 -msgid "Angle 'A' (radians): " -msgstr "" - -#: ../share/extensions/draw_from_triangle.py:182 -msgid "Angle 'B' (radians): " -msgstr "" - -#: ../share/extensions/draw_from_triangle.py:183 -msgid "Angle 'C' (radians): " -msgstr "" - -#: ../share/extensions/draw_from_triangle.py:184 -msgid "Semiperimeter (px): " -msgstr "" - -#: ../share/extensions/draw_from_triangle.py:185 -msgid "Area (px^2): " -msgstr "" - -#: ../share/extensions/dxf_outlines.py:49 -msgid "" -"Failed to import the numpy or numpy.linalg modules. These modules are " -"required by this extension. Please install them and try again." -msgstr "" - -#: ../share/extensions/dxf_outlines.py:300 -msgid "" -"Error: Field 'Layer match name' must be filled when using 'By name match' " -"option" -msgstr "" - -#: ../share/extensions/dxf_outlines.py:341 -#, python-format -msgid "Warning: Layer '%s' not found!" -msgstr "" - -#: ../share/extensions/embedimage.py:84 -msgid "" -"No xlink:href or sodipodi:absref attributes found, or they do not point to " -"an existing file! Unable to embed image." -msgstr "" - -#: ../share/extensions/embedimage.py:86 -#, python-format -msgid "Sorry we could not locate %s" -msgstr "" - -#: ../share/extensions/embedimage.py:111 -#, python-format -msgid "" -"%s is not of type image/png, image/jpeg, image/bmp, image/gif, image/tiff, " -"or image/x-icon" -msgstr "" - -#: ../share/extensions/export_gimp_palette.py:16 -msgid "" -"The export_gpl.py module requires PyXML. Please download the latest version " -"from http://pyxml.sourceforge.net/." -msgstr "" - -#: ../share/extensions/extractimage.py:68 -#, python-format -msgid "Image extracted to: %s" -msgstr "" - -#: ../share/extensions/extractimage.py:75 -msgid "Unable to find image data." -msgstr "" - -#: ../share/extensions/extrude.py:43 -msgid "Need at least 2 paths selected" -msgstr "" - -#: ../share/extensions/funcplot.py:48 -msgid "x-interval cannot be zero. Please modify 'Start X' or 'End X'" -msgstr "" - -#: ../share/extensions/funcplot.py:60 -msgid "y-interval cannot be zero. Please modify 'Y top' or 'Y bottom'" -msgstr "" - -#: ../share/extensions/funcplot.py:315 -msgid "Please select a rectangle" -msgstr "" - -#: ../share/extensions/gcodetools.py:3321 -#: ../share/extensions/gcodetools.py:4526 -#: ../share/extensions/gcodetools.py:4699 -#: ../share/extensions/gcodetools.py:6232 -#: ../share/extensions/gcodetools.py:6427 -msgid "No paths are selected! Trying to work on all available paths." -msgstr "" - -#: ../share/extensions/gcodetools.py:3324 -msgid "Noting is selected. Please select something." -msgstr "" - -#: ../share/extensions/gcodetools.py:3864 -msgid "" -"Directory does not exist! Please specify existing directory at Preferences " -"tab!" -msgstr "" - -#: ../share/extensions/gcodetools.py:3894 -#, python-format -msgid "" -"Can not write to specified file!\n" -"%s" -msgstr "" - -#: ../share/extensions/gcodetools.py:4040 -#, python-format -msgid "" -"Orientation points for '%s' layer have not been found! Please add " -"orientation points using Orientation tab!" -msgstr "" - -#: ../share/extensions/gcodetools.py:4047 -#, python-format -msgid "There are more than one orientation point groups in '%s' layer" -msgstr "" - -#: ../share/extensions/gcodetools.py:4078 -#: ../share/extensions/gcodetools.py:4080 -msgid "" -"Orientation points are wrong! (if there are two orientation points they " -"should not be the same. If there are three orientation points they should " -"not be in a straight line.)" -msgstr "" - -#: ../share/extensions/gcodetools.py:4250 -#, python-format -msgid "" -"Warning! Found bad orientation points in '%s' layer. Resulting Gcode could " -"be corrupt!" -msgstr "" - -#: ../share/extensions/gcodetools.py:4263 -#, python-format -msgid "" -"Warning! Found bad graffiti reference point in '%s' layer. Resulting Gcode " -"could be corrupt!" -msgstr "" - -#. xgettext:no-pango-format -#: ../share/extensions/gcodetools.py:4284 -msgid "" -"This extension works with Paths and Dynamic Offsets and groups of them only! " -"All other objects will be ignored!\n" -"Solution 1: press Path->Object to path or Shift+Ctrl+C.\n" -"Solution 2: Path->Dynamic offset or Ctrl+J.\n" -"Solution 3: export all contours to PostScript level 2 (File->Save As->.ps) " -"and File->Import this file." -msgstr "" - -#: ../share/extensions/gcodetools.py:4290 -msgid "" -"Document has no layers! Add at least one layer using layers panel (Ctrl+Shift" -"+L)" -msgstr "" - -#: ../share/extensions/gcodetools.py:4294 -msgid "" -"Warning! There are some paths in the root of the document, but not in any " -"layer! Using bottom-most layer for them." -msgstr "" - -#: ../share/extensions/gcodetools.py:4371 -#, python-format -msgid "" -"Warning! Tool's and default tool's parameter's (%s) types are not the same " -"( type('%s') != type('%s') )." -msgstr "" - -#: ../share/extensions/gcodetools.py:4374 -#, python-format -msgid "Warning! Tool has parameter that default tool has not ( '%s': '%s' )." -msgstr "" - -#: ../share/extensions/gcodetools.py:4388 -#, python-format -msgid "Layer '%s' contains more than one tool!" -msgstr "" - -#: ../share/extensions/gcodetools.py:4391 -#, python-format -msgid "" -"Can not find tool for '%s' layer! Please add one with Tools library tab!" -msgstr "" - -#: ../share/extensions/gcodetools.py:4553 -#: ../share/extensions/gcodetools.py:4708 -msgid "" -"Warning: One or more paths do not have 'd' parameter, try to Ungroup (Ctrl" -"+Shift+G) and Object to Path (Ctrl+Shift+C)!" -msgstr "" - -#: ../share/extensions/gcodetools.py:4667 -msgid "" -"Noting is selected. Please select something to convert to drill point " -"(dxfpoint) or clear point sign." -msgstr "" - -#: ../share/extensions/gcodetools.py:4750 -#: ../share/extensions/gcodetools.py:4996 -msgid "This extension requires at least one selected path." -msgstr "" - -#: ../share/extensions/gcodetools.py:4756 -#: ../share/extensions/gcodetools.py:5002 -#, python-format -msgid "Tool diameter must be > 0 but tool's diameter on '%s' layer is not!" -msgstr "" - -#: ../share/extensions/gcodetools.py:4767 -#: ../share/extensions/gcodetools.py:4956 -#: ../share/extensions/gcodetools.py:5011 -msgid "Warning: omitting non-path" -msgstr "" - -#: ../share/extensions/gcodetools.py:5511 -msgid "Please select at least one path to engrave and run again." -msgstr "" - -#: ../share/extensions/gcodetools.py:5519 -msgid "Unknown unit selected. mm assumed" -msgstr "" - -#: ../share/extensions/gcodetools.py:5540 -#, python-format -msgid "Tool '%s' has no shape. 45 degree cone assumed!" -msgstr "" - -#: ../share/extensions/gcodetools.py:5611 -#: ../share/extensions/gcodetools.py:5616 -msgid "csp_normalised_normal error. See log." -msgstr "" - -#: ../share/extensions/gcodetools.py:5804 -msgid "No need to engrave sharp angles." -msgstr "" - -#: ../share/extensions/gcodetools.py:5848 -msgid "" -"Active layer already has orientation points! Remove them or select another " -"layer!" -msgstr "" - -#: ../share/extensions/gcodetools.py:5893 -msgid "Active layer already has a tool! Remove it or select another layer!" -msgstr "" - -#: ../share/extensions/gcodetools.py:6008 -msgid "Selection is empty! Will compute whole drawing." -msgstr "" - -#: ../share/extensions/gcodetools.py:6062 -msgid "" -"Tutorials, manuals and support can be found at\n" -"English support forum:\n" -"\thttp://www.cnc-club.ru/gcodetools\n" -"and Russian support forum:\n" -"\thttp://www.cnc-club.ru/gcodetoolsru" -msgstr "" - -#: ../share/extensions/gcodetools.py:6107 -msgid "Lathe X and Z axis remap should be 'X', 'Y' or 'Z'. Exiting..." -msgstr "" - -#: ../share/extensions/gcodetools.py:6110 -msgid "Lathe X and Z axis remap should be the same. Exiting..." -msgstr "" - -#: ../share/extensions/gcodetools.py:6662 -#, python-format -msgid "" -"Select one of the action tabs - Path to Gcode, Area, Engraving, DXF points, " -"Orientation, Offset, Lathe or Tools library.\n" -" Current active tab id is %s" -msgstr "" - -#: ../share/extensions/gcodetools.py:6668 -msgid "" -"Orientation points have not been defined! A default set of orientation " -"points has been automatically added." -msgstr "" - -#: ../share/extensions/gcodetools.py:6672 -msgid "" -"Cutting tool has not been defined! A default tool has been automatically " -"added." -msgstr "" - -#: ../share/extensions/generate_voronoi.py:35 -msgid "" -"Failed to import the subprocess module. Please report this as a bug at: " -"https://bugs.launchpad.net/inkscape." -msgstr "" - -#: ../share/extensions/generate_voronoi.py:36 -msgid "Python version is: " -msgstr "" - -#: ../share/extensions/generate_voronoi.py:94 -msgid "Please select an object" -msgstr "" - -#: ../share/extensions/gimp_xcf.py:39 -msgid "Gimp must be installed and set in your path variable." -msgstr "" - -#: ../share/extensions/gimp_xcf.py:43 -msgid "An error occurred while processing the XCF file." -msgstr "" - -#: ../share/extensions/gimp_xcf.py:171 -msgid "This extension requires at least one non empty layer." -msgstr "" - -#: ../share/extensions/guillotine.py:250 -msgid "The sliced bitmaps have been saved as:" -msgstr "" - -#: ../share/extensions/inkex.py:133 -#, python-format -msgid "" -"The fantastic lxml wrapper for libxml2 is required by inkex.py and therefore " -"this extension. Please download and install the latest version from http://" -"cheeseshop.python.org/pypi/lxml/, or install it through your package manager " -"by a command like: sudo apt-get install python-lxml\n" -"\n" -"Technical details:\n" -"%s" -msgstr "" - -#: ../share/extensions/inkex.py:282 -#, python-format -msgid "No matching node for expression: %s" -msgstr "" - -#: ../share/extensions/interp_att_g.py:167 -msgid "There is no selection to interpolate" -msgstr "" - -#: ../share/extensions/jessyInk_autoTexts.py:45 -#: ../share/extensions/jessyInk_effects.py:50 -#: ../share/extensions/jessyInk_export.py:96 -#: ../share/extensions/jessyInk_keyBindings.py:188 -#: ../share/extensions/jessyInk_masterSlide.py:46 -#: ../share/extensions/jessyInk_mouseHandler.py:48 -#: ../share/extensions/jessyInk_summary.py:64 -#: ../share/extensions/jessyInk_transitions.py:50 -#: ../share/extensions/jessyInk_video.py:49 -#: ../share/extensions/jessyInk_view.py:67 -msgid "" -"The JessyInk script is not installed in this SVG file or has a different " -"version than the JessyInk extensions. Please select \"install/update...\" " -"from the \"JessyInk\" sub-menu of the \"Extensions\" menu to install or " -"update the JessyInk script.\n" -"\n" -msgstr "" - -#: ../share/extensions/jessyInk_autoTexts.py:48 -msgid "" -"To assign an effect, please select an object.\n" -"\n" -msgstr "" - -#: ../share/extensions/jessyInk_autoTexts.py:54 -msgid "" -"Node with id '{0}' is not a suitable text node and was therefore ignored.\n" -"\n" -msgstr "" - -#: ../share/extensions/jessyInk_effects.py:53 -msgid "" -"No object selected. Please select the object you want to assign an effect to " -"and then press apply.\n" -msgstr "" - -#: ../share/extensions/jessyInk_export.py:82 -msgid "Could not find Inkscape command.\n" -msgstr "" - -#: ../share/extensions/jessyInk_masterSlide.py:56 -msgid "Layer not found. Removed current master slide selection.\n" -msgstr "" - -#: ../share/extensions/jessyInk_masterSlide.py:58 -msgid "" -"More than one layer with this name found. Removed current master slide " -"selection.\n" -msgstr "" - -#: ../share/extensions/jessyInk_summary.py:69 -msgid "JessyInk script version {0} installed." -msgstr "" - -#: ../share/extensions/jessyInk_summary.py:71 -msgid "JessyInk script installed." -msgstr "" - -#: ../share/extensions/jessyInk_summary.py:83 -msgid "" -"\n" -"Master slide:" -msgstr "" - -#: ../share/extensions/jessyInk_summary.py:89 -msgid "" -"\n" -"Slide {0!s}:" -msgstr "" - -#: ../share/extensions/jessyInk_summary.py:94 -msgid "{0}Layer name: {1}" -msgstr "" - -#: ../share/extensions/jessyInk_summary.py:102 -msgid "{0}Transition in: {1} ({2!s} s)" -msgstr "" - -#: ../share/extensions/jessyInk_summary.py:104 -msgid "{0}Transition in: {1}" -msgstr "" - -#: ../share/extensions/jessyInk_summary.py:111 -msgid "{0}Transition out: {1} ({2!s} s)" -msgstr "" - -#: ../share/extensions/jessyInk_summary.py:113 -msgid "{0}Transition out: {1}" -msgstr "" - -#: ../share/extensions/jessyInk_summary.py:120 -msgid "" -"\n" -"{0}Auto-texts:" -msgstr "" - -#: ../share/extensions/jessyInk_summary.py:123 -msgid "{0}\t\"{1}\" (object id \"{2}\") will be replaced by \"{3}\"." -msgstr "" - -#: ../share/extensions/jessyInk_summary.py:168 -msgid "" -"\n" -"{0}Initial effect (order number {1}):" -msgstr "" - -#: ../share/extensions/jessyInk_summary.py:170 -msgid "" -"\n" -"{0}Effect {1!s} (order number {2}):" -msgstr "" - -#: ../share/extensions/jessyInk_summary.py:174 -msgid "{0}\tView will be set according to object \"{1}\"" -msgstr "" - -#: ../share/extensions/jessyInk_summary.py:176 -msgid "{0}\tObject \"{1}\"" -msgstr "" - -#: ../share/extensions/jessyInk_summary.py:179 -msgid " will appear" -msgstr "" - -#: ../share/extensions/jessyInk_summary.py:181 -msgid " will disappear" -msgstr "" - -#: ../share/extensions/jessyInk_summary.py:184 -msgid " using effect \"{0}\"" -msgstr "" - -#: ../share/extensions/jessyInk_summary.py:187 -msgid " in {0!s} s" -msgstr "" - -#: ../share/extensions/jessyInk_transitions.py:55 -msgid "Layer not found.\n" -msgstr "" - -#: ../share/extensions/jessyInk_transitions.py:57 -msgid "More than one layer with this name found.\n" -msgstr "" - -#: ../share/extensions/jessyInk_transitions.py:70 -msgid "Please enter a layer name.\n" -msgstr "" - -#: ../share/extensions/jessyInk_video.py:54 -#: ../share/extensions/jessyInk_video.py:59 -msgid "" -"Could not obtain the selected layer for inclusion of the video element.\n" -"\n" -msgstr "" - -#: ../share/extensions/jessyInk_view.py:75 -msgid "More than one object selected. Please select only one object.\n" -msgstr "" - -#: ../share/extensions/jessyInk_view.py:79 -msgid "" -"No object selected. Please select the object you want to assign a view to " -"and then press apply.\n" -msgstr "" - -#: ../share/extensions/markers_strokepaint.py:83 -#, python-format -msgid "No style attribute found for id: %s" -msgstr "" - -#: ../share/extensions/markers_strokepaint.py:137 -#, python-format -msgid "unable to locate marker: %s" -msgstr "" - -#: ../share/extensions/pathalongpath.py:208 -#: ../share/extensions/pathscatter.py:228 -#: ../share/extensions/perspective.py:53 -msgid "This extension requires two selected paths." -msgstr "" - -#: ../share/extensions/pathalongpath.py:234 -msgid "" -"The total length of the pattern is too small :\n" -"Please choose a larger object or set 'Space between copies' > 0" -msgstr "" - -#: ../share/extensions/pathalongpath.py:277 -msgid "" -"The 'stretch' option requires that the pattern must have non-zero width :\n" -"Please edit the pattern width." -msgstr "" - -#: ../share/extensions/pathmodifier.py:237 -#, python-format -msgid "Please first convert objects to paths! (Got [%s].)" -msgstr "" - -#: ../share/extensions/perspective.py:45 -msgid "" -"Failed to import the numpy or numpy.linalg modules. These modules are " -"required by this extension. Please install them and try again. On a Debian-" -"like system this can be done with the command, sudo apt-get install python-" -"numpy." -msgstr "" - -#: ../share/extensions/perspective.py:60 -#: ../share/extensions/summersnight.py:51 -#, python-format -msgid "" -"The first selected object is of type '%s'.\n" -"Try using the procedure Path->Object to Path." -msgstr "" - -#: ../share/extensions/perspective.py:67 -#: ../share/extensions/summersnight.py:59 -msgid "" -"This extension requires that the second selected path be four nodes long." -msgstr "" - -#: ../share/extensions/perspective.py:93 -#: ../share/extensions/summersnight.py:92 -msgid "" -"The second selected object is a group, not a path.\n" -"Try using the procedure Object->Ungroup." -msgstr "" - -#: ../share/extensions/perspective.py:95 -#: ../share/extensions/summersnight.py:94 -msgid "" -"The second selected object is not a path.\n" -"Try using the procedure Path->Object to Path." -msgstr "" - -#: ../share/extensions/perspective.py:98 -#: ../share/extensions/summersnight.py:97 -msgid "" -"The first selected object is not a path.\n" -"Try using the procedure Path->Object to Path." -msgstr "" - -#: ../share/extensions/polyhedron_3d.py:65 -msgid "" -"Failed to import the numpy module. This module is required by this " -"extension. Please install it and try again. On a Debian-like system this " -"can be done with the command 'sudo apt-get install python-numpy'." -msgstr "" - -#: ../share/extensions/polyhedron_3d.py:336 -msgid "No face data found in specified file." -msgstr "" - -#: ../share/extensions/polyhedron_3d.py:337 -msgid "Try selecting \"Edge Specified\" in the Model File tab.\n" -msgstr "" - -#: ../share/extensions/polyhedron_3d.py:343 -msgid "No edge data found in specified file." -msgstr "" - -#: ../share/extensions/polyhedron_3d.py:344 -msgid "Try selecting \"Face Specified\" in the Model File tab.\n" -msgstr "" - -#. we cannot generate a list of faces from the edges without a lot of computation -#: ../share/extensions/polyhedron_3d.py:519 -msgid "" -"Face Data Not Found. Ensure file contains face data, and check the file is " -"imported as \"Face-Specified\" under the \"Model File\" tab.\n" -msgstr "" - -#: ../share/extensions/polyhedron_3d.py:521 -msgid "Internal Error. No view type selected\n" -msgstr "" - -#: ../share/extensions/print_win32_vector.py:41 -msgid "sorry, this will run only on Windows, exiting..." -msgstr "" - -#: ../share/extensions/print_win32_vector.py:179 -msgid "Failed to open default printer" -msgstr "" - -#: ../share/extensions/render_barcode_datamatrix.py:202 -msgid "Unrecognised DataMatrix size" -msgstr "" - -#. we have an invalid bit value -#: ../share/extensions/render_barcode_datamatrix.py:643 -msgid "Invalid bit value, this is a bug!" -msgstr "" - -#. abort if converting blank text -#: ../share/extensions/render_barcode_datamatrix.py:677 -msgid "Please enter an input string" -msgstr "" - -#. abort if converting blank text -#: ../share/extensions/render_barcode_qrcode.py:1053 -msgid "Please enter an input text" -msgstr "" - -#: ../share/extensions/replace_font.py:133 -msgid "" -"Couldn't find anything using that font, please ensure the spelling and " -"spacing is correct." -msgstr "" - -#: ../share/extensions/replace_font.py:140 -#: ../share/extensions/svg_and_media_zip_output.py:193 -msgid "Didn't find any fonts in this document/selection." -msgstr "" - -#: ../share/extensions/replace_font.py:143 -#: ../share/extensions/svg_and_media_zip_output.py:196 -#, python-format -msgid "Found the following font only: %s" -msgstr "" - -#: ../share/extensions/replace_font.py:145 -#: ../share/extensions/svg_and_media_zip_output.py:198 -#, python-format -msgid "" -"Found the following fonts:\n" -"%s" -msgstr "" - -#: ../share/extensions/replace_font.py:196 -msgid "There was nothing selected" -msgstr "" - -#: ../share/extensions/replace_font.py:244 -msgid "Please enter a search string in the find box." -msgstr "" - -#: ../share/extensions/replace_font.py:248 -msgid "Please enter a replacement font in the replace with box." -msgstr "" - -#: ../share/extensions/replace_font.py:253 -msgid "Please enter a replacement font in the replace all box." -msgstr "" - -#: ../share/extensions/summersnight.py:44 -msgid "" -"This extension requires two selected paths. \n" -"The second path must be exactly four nodes long." -msgstr "" - -#: ../share/extensions/svg_and_media_zip_output.py:128 -#, python-format -msgid "Could not locate file: %s" -msgstr "" - -#: ../share/extensions/svgcalendar.py:266 -#: ../share/extensions/svgcalendar.py:288 -msgid "You must select a correct system encoding." -msgstr "" - -#: ../share/extensions/uniconv-ext.py:56 -#: ../share/extensions/uniconv_output.py:122 -msgid "You need to install the UniConvertor software.\n" -msgstr "" - -#: ../share/extensions/voronoi2svg.py:215 -msgid "Please select objects!" -msgstr "" - -#: ../share/extensions/web-set-att.py:58 -#: ../share/extensions/web-transmit-att.py:54 -msgid "You must select at least two elements." -msgstr "" - -#: ../share/extensions/webslicer_create_group.py:57 -msgid "" -"You must create and select some \"Slicer rectangles\" before trying to group." -msgstr "" - -#: ../share/extensions/webslicer_create_group.py:72 -msgid "" -"You must to select some \"Slicer rectangles\" or other \"Layout groups\"." -msgstr "" - -#: ../share/extensions/webslicer_create_group.py:76 -#, python-format -msgid "Oops... The element \"%s\" is not in the Web Slicer layer" -msgstr "" - -#: ../share/extensions/webslicer_export.py:57 -msgid "You must give a directory to export the slices." -msgstr "" - -#: ../share/extensions/webslicer_export.py:69 -#, python-format -msgid "Can't create \"%s\"." -msgstr "" - -#: ../share/extensions/webslicer_export.py:70 -#, python-format -msgid "Error: %s" -msgstr "" - -#: ../share/extensions/webslicer_export.py:73 -#, python-format -msgid "The directory \"%s\" does not exists." -msgstr "" - -#: ../share/extensions/webslicer_export.py:102 -#, python-format -msgid "You have more than one element with \"%s\" html-id." -msgstr "" - -#: ../share/extensions/webslicer_export.py:332 -msgid "You must install the ImageMagick to get JPG and GIF." -msgstr "" - -#. PARAMETER PROCESSING -#. lines of longitude are odd : abort -#: ../share/extensions/wireframe_sphere.py:116 -msgid "Please enter an even number of lines of longitude." -msgstr "" - -#. vim: expandtab shiftwidth=4 tabstop=8 softtabstop=4 fileencoding=utf-8 textwidth=99 -#: ../share/extensions/addnodes.inx.h:1 -msgid "Add Nodes" -msgstr "" - -#: ../share/extensions/addnodes.inx.h:2 -msgid "Division method:" -msgstr "" - -#: ../share/extensions/addnodes.inx.h:3 -msgid "By max. segment length" -msgstr "" - -#: ../share/extensions/addnodes.inx.h:4 -msgid "By number of segments" -msgstr "" - -#: ../share/extensions/addnodes.inx.h:5 -msgid "Maximum segment length (px):" -msgstr "" - -#: ../share/extensions/addnodes.inx.h:6 -msgid "Number of segments:" -msgstr "" - -#: ../share/extensions/addnodes.inx.h:7 -#: ../share/extensions/convert2dashes.inx.h:2 -#: ../share/extensions/edge3d.inx.h:9 ../share/extensions/flatten.inx.h:3 -#: ../share/extensions/fractalize.inx.h:4 -#: ../share/extensions/interp_att_g.inx.h:29 -#: ../share/extensions/markers_strokepaint.inx.h:13 -#: ../share/extensions/perspective.inx.h:2 -#: ../share/extensions/pixelsnap.inx.h:3 -#: ../share/extensions/radiusrand.inx.h:10 -#: ../share/extensions/rubberstretch.inx.h:6 -#: ../share/extensions/straightseg.inx.h:4 -#: ../share/extensions/summersnight.inx.h:2 ../share/extensions/whirl.inx.h:4 -msgid "Modify Path" -msgstr "" - -#: ../share/extensions/ai_input.inx.h:1 -msgid "AI 8.0 Input" -msgstr "" - -#: ../share/extensions/ai_input.inx.h:2 -msgid "Adobe Illustrator 8.0 and below (*.ai)" -msgstr "" - -#: ../share/extensions/ai_input.inx.h:3 -msgid "Open files saved with Adobe Illustrator 8.0 or older" -msgstr "" - -#: ../share/extensions/aisvg.inx.h:1 -msgid "AI SVG Input" -msgstr "" - -#: ../share/extensions/aisvg.inx.h:2 -msgid "Adobe Illustrator SVG (*.ai.svg)" -msgstr "" - -#: ../share/extensions/aisvg.inx.h:3 -msgid "Cleans the cruft out of Adobe Illustrator SVGs before opening" -msgstr "" - -#: ../share/extensions/ccx_input.inx.h:1 -msgid "Corel DRAW Compressed Exchange files input (UC)" -msgstr "" - -#: ../share/extensions/ccx_input.inx.h:2 -msgid "Corel DRAW Compressed Exchange files (UC) (.ccx)" -msgstr "" - -#: ../share/extensions/ccx_input.inx.h:3 -msgid "Open compressed exchange files saved in Corel DRAW (UC)" -msgstr "" - -#: ../share/extensions/cdr_input.inx.h:1 -msgid "Corel DRAW Input (UC)" -msgstr "" - -#: ../share/extensions/cdr_input.inx.h:2 -msgid "Corel DRAW 7-X4 files (UC) (*.cdr)" -msgstr "" - -#: ../share/extensions/cdr_input.inx.h:3 -msgid "Open files saved in Corel DRAW 7-X4 (UC)" -msgstr "" - -#: ../share/extensions/cdt_input.inx.h:1 -msgid "Corel DRAW templates input (UC)" -msgstr "" - -#: ../share/extensions/cdt_input.inx.h:2 -msgid "Corel DRAW 7-13 template files (UC) (.cdt)" -msgstr "" - -#: ../share/extensions/cdt_input.inx.h:3 -msgid "Open files saved in Corel DRAW 7-13 (UC)" -msgstr "" - -#: ../share/extensions/cgm_input.inx.h:1 -msgid "Computer Graphics Metafile files input" -msgstr "" - -#: ../share/extensions/cgm_input.inx.h:2 -msgid "Computer Graphics Metafile files (.cgm)" -msgstr "" - -#: ../share/extensions/cgm_input.inx.h:3 -msgid "Open Computer Graphics Metafile files" -msgstr "" - -#: ../share/extensions/cmx_input.inx.h:1 -msgid "Corel DRAW Presentation Exchange files input (UC)" -msgstr "" - -#: ../share/extensions/cmx_input.inx.h:2 -msgid "Corel DRAW Presentation Exchange files (UC) (.cmx)" -msgstr "" - -#: ../share/extensions/cmx_input.inx.h:3 -msgid "Open presentation exchange files saved in Corel DRAW (UC)" -msgstr "" - -#: ../share/extensions/color_blackandwhite.inx.h:1 -msgid "Black and White" -msgstr "" - -#: ../share/extensions/color_brighter.inx.h:1 -msgid "Brighter" -msgstr "" - -#: ../share/extensions/color_custom.inx.h:1 -msgctxt "Custom color extension" -msgid "Custom" -msgstr "" - -#: ../share/extensions/color_custom.inx.h:3 -msgid "Red Function:" -msgstr "" - -#: ../share/extensions/color_custom.inx.h:4 -msgid "Green Function:" -msgstr "" - -#: ../share/extensions/color_custom.inx.h:5 -msgid "Blue Function:" -msgstr "" - -#: ../share/extensions/color_custom.inx.h:6 -msgid "Input (r,g,b) Color Range:" -msgstr "" - -#: ../share/extensions/color_custom.inx.h:8 -msgid "" -"Allows you to evaluate different functions for each channel.\n" -"r, g and b are the normalized values of the red, green and blue channels. " -"The resulting RGB values are automatically clamped.\n" -" \n" -"Example (half the red, swap green and blue):\n" -" Red Function: r*0.5 \n" -" Green Function: b \n" -" Blue Function: g" -msgstr "" - -#: ../share/extensions/color_darker.inx.h:1 -msgid "Darker" -msgstr "" - -#: ../share/extensions/color_desaturate.inx.h:1 -msgid "Desaturate" -msgstr "" - -#: ../share/extensions/color_grayscale.inx.h:1 -#: ../share/extensions/webslicer_create_rect.inx.h:15 -msgid "Grayscale" -msgstr "" - -#: ../share/extensions/color_HSL_adjust.inx.h:1 -msgid "HSL Adjust" -msgstr "" - -#: ../share/extensions/color_HSL_adjust.inx.h:3 -msgid "Hue (°)" -msgstr "" - -#: ../share/extensions/color_HSL_adjust.inx.h:4 -msgid "Random hue" -msgstr "" - -#: ../share/extensions/color_HSL_adjust.inx.h:6 -#, no-c-format -msgid "Saturation (%)" -msgstr "" - -#: ../share/extensions/color_HSL_adjust.inx.h:7 -msgid "Random saturation" -msgstr "" - -#: ../share/extensions/color_HSL_adjust.inx.h:9 -#, no-c-format -msgid "Lightness (%)" -msgstr "" - -#: ../share/extensions/color_HSL_adjust.inx.h:10 -msgid "Random lightness" -msgstr "" - -#: ../share/extensions/color_HSL_adjust.inx.h:13 -#, no-c-format -msgid "" -"Adjusts hue, saturation and lightness in the HSL representation of the " -"selected objects's color.\n" -"Options:\n" -" * Hue: rotate by degrees (wraps around).\n" -" * Saturation: add/subtract % (min=-100, max=100).\n" -" * Lightness: add/subtract % (min=-100, max=100).\n" -" * Random Hue/Saturation/Lightness: randomize the parameter's value.\n" -" " -msgstr "" - -#: ../share/extensions/color_lesshue.inx.h:1 -msgid "Less Hue" -msgstr "" - -#: ../share/extensions/color_lesslight.inx.h:1 -msgid "Less Light" -msgstr "" - -#: ../share/extensions/color_lesssaturation.inx.h:1 -msgid "Less Saturation" -msgstr "" - -#: ../share/extensions/color_morehue.inx.h:1 -msgid "More Hue" -msgstr "" - -#: ../share/extensions/color_morelight.inx.h:1 -msgid "More Light" -msgstr "" - -#: ../share/extensions/color_moresaturation.inx.h:1 -msgid "More Saturation" -msgstr "" - -#: ../share/extensions/color_negative.inx.h:1 -msgid "Negative" -msgstr "" - -#: ../share/extensions/color_randomize.inx.h:1 -#: ../share/extensions/render_alphabetsoup.inx.h:4 -msgid "Randomize" -msgstr "" - -#: ../share/extensions/color_randomize.inx.h:7 -msgid "" -"Converts to HSL, randomizes hue and/or saturation and/or lightness and " -"converts it back to RGB." -msgstr "" - -#: ../share/extensions/color_removeblue.inx.h:1 -msgid "Remove Blue" -msgstr "" - -#: ../share/extensions/color_removegreen.inx.h:1 -msgid "Remove Green" -msgstr "" - -#: ../share/extensions/color_removered.inx.h:1 -msgid "Remove Red" -msgstr "" - -#: ../share/extensions/color_replace.inx.h:1 -msgid "Replace color" -msgstr "" - -#: ../share/extensions/color_replace.inx.h:2 -msgid "Replace color (RRGGBB hex):" -msgstr "" - -#: ../share/extensions/color_replace.inx.h:3 -msgid "Color to replace" -msgstr "" - -#: ../share/extensions/color_replace.inx.h:4 -msgid "By color (RRGGBB hex):" -msgstr "" - -#: ../share/extensions/color_replace.inx.h:5 -msgid "New color" -msgstr "" - -#: ../share/extensions/color_rgbbarrel.inx.h:1 -msgid "RGB Barrel" -msgstr "" - -#: ../share/extensions/convert2dashes.inx.h:1 -msgid "Convert to Dashes" -msgstr "" - -#: ../share/extensions/dia.inx.h:1 -msgid "Dia Input" -msgstr "" - -#: ../share/extensions/dia.inx.h:2 -msgid "" -"The dia2svg.sh script should be installed with your Inkscape distribution. " -"If you do not have it, there is likely to be something wrong with your " -"Inkscape installation." -msgstr "" - -#: ../share/extensions/dia.inx.h:3 -msgid "" -"In order to import Dia files, Dia itself must be installed. You can get Dia " -"at http://live.gnome.org/Dia" -msgstr "" - -#: ../share/extensions/dia.inx.h:4 -msgid "Dia Diagram (*.dia)" -msgstr "" - -#: ../share/extensions/dia.inx.h:5 -msgid "A diagram created with the program Dia" -msgstr "" - -#: ../share/extensions/dimension.inx.h:1 -msgid "Dimensions" -msgstr "" - -#: ../share/extensions/dimension.inx.h:2 -msgid "X Offset:" -msgstr "" - -#: ../share/extensions/dimension.inx.h:3 -msgid "Y Offset:" -msgstr "" - -#: ../share/extensions/dimension.inx.h:4 -msgid "Bounding box type :" -msgstr "" - -#: ../share/extensions/dimension.inx.h:5 -msgid "Geometric" -msgstr "" - -#: ../share/extensions/dimension.inx.h:6 -msgid "Visual" -msgstr "" - -#: ../share/extensions/dimension.inx.h:7 ../share/extensions/dots.inx.h:13 -#: ../share/extensions/handles.inx.h:2 ../share/extensions/measure.inx.h:24 -msgid "Visualize Path" -msgstr "" - -#: ../share/extensions/dots.inx.h:1 -msgid "Number Nodes" -msgstr "" - -#: ../share/extensions/dots.inx.h:4 -msgid "Dot size:" -msgstr "" - -#: ../share/extensions/dots.inx.h:5 -msgid "Starting dot number:" -msgstr "" - -#: ../share/extensions/dots.inx.h:6 -msgid "Step:" -msgstr "" - -#: ../share/extensions/dots.inx.h:8 -msgid "" -"This extension replaces the selection's nodes with numbered dots according " -"to the following options:\n" -" * Font size: size of the node number labels (20px, 12pt...).\n" -" * Dot size: diameter of the dots placed at path nodes (10px, 2mm...).\n" -" * Starting dot number: first number in the sequence, assigned to the " -"first node of the path.\n" -" * Step: numbering step between two nodes." -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:1 -msgid "Draw From Triangle" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:2 -msgid "Common Objects" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:3 -msgid "Circumcircle" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:4 -msgid "Circumcentre" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:5 -msgid "Incircle" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:6 -msgid "Incentre" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:7 -msgid "Contact Triangle" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:8 -msgid "Excircles" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:9 -msgid "Excentres" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:10 -msgid "Extouch Triangle" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:11 -msgid "Excentral Triangle" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:12 -msgid "Orthocentre" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:13 -msgid "Orthic Triangle" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:14 -msgid "Altitudes" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:15 -msgid "Angle Bisectors" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:16 -msgid "Centroid" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:17 -msgid "Nine-Point Centre" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:18 -msgid "Nine-Point Circle" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:19 -msgid "Symmedians" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:20 -msgid "Symmedian Point" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:21 -msgid "Symmedial Triangle" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:22 -msgid "Gergonne Point" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:23 -msgid "Nagel Point" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:24 -msgid "Custom Points and Options" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:25 -msgid "Custom Point Specified By:" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:26 -msgid "Point At:" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:27 -msgid "Draw Marker At This Point" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:28 -msgid "Draw Circle Around This Point" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:29 -#: ../share/extensions/wireframe_sphere.inx.h:6 -msgid "Radius (px):" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:30 -msgid "Draw Isogonal Conjugate" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:31 -msgid "Draw Isotomic Conjugate" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:32 -msgid "Report this triangle's properties" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:33 -msgid "Trilinear Coordinates" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:34 -msgid "Triangle Function" -msgstr "" - -#: ../share/extensions/draw_from_triangle.inx.h:36 -msgid "" -"This extension draws constructions about a triangle defined by the first 3 " -"nodes of a selected path. You may select one of preset objects or create " -"your own ones.\n" -" \n" -"All units are the Inkscape's pixel unit. Angles are all in radians.\n" -"You can specify a point by trilinear coordinates or by a triangle centre " -"function.\n" -"Enter as functions of the side length or angles.\n" -"Trilinear elements should be separated by a colon: ':'.\n" -"Side lengths are represented as 's_a', 's_b' and 's_c'.\n" -"Angles corresponding to these are 'a_a', 'a_b', and 'a_c'.\n" -"You can also use the semi-perimeter and area of the triangle as constants. " -"Write 'area' or 'semiperim' for these.\n" -"\n" -"You can use any standard Python math function:\n" -"ceil(x); fabs(x); floor(x); fmod(x,y); frexp(x); ldexp(x,i); \n" -"modf(x); exp(x); log(x [, base]); log10(x); pow(x,y); sqrt(x); \n" -"acos(x); asin(x); atan(x); atan2(y,x); hypot(x,y); \n" -"cos(x); sin(x); tan(x); degrees(x); radians(x); \n" -"cosh(x); sinh(x); tanh(x)\n" -"\n" -"Also available are the inverse trigonometric functions:\n" -"sec(x); csc(x); cot(x)\n" -"\n" -"You can specify the radius of a circle around a custom point using a " -"formula, which may also contain the side lengths, angles, etc. You can also " -"plot the isogonal and isotomic conjugate of the point. Be aware that this " -"may cause a divide-by-zero error for certain points.\n" -" " -msgstr "" - -#: ../share/extensions/dxf_input.inx.h:1 -msgid "DXF Input" -msgstr "" - -#: ../share/extensions/dxf_input.inx.h:3 -msgid "Use automatic scaling to size A4" -msgstr "" - -#: ../share/extensions/dxf_input.inx.h:4 -msgid "Or, use manual scale factor:" -msgstr "" - -#: ../share/extensions/dxf_input.inx.h:5 -msgid "Manual x-axis origin (mm):" -msgstr "" - -#: ../share/extensions/dxf_input.inx.h:6 -msgid "Manual y-axis origin (mm):" -msgstr "" - -#: ../share/extensions/dxf_input.inx.h:7 -msgid "Gcodetools compatible point import" -msgstr "" - -#: ../share/extensions/dxf_input.inx.h:8 -#: ../share/extensions/render_barcode_qrcode.inx.h:16 -msgid "Character encoding:" -msgstr "" - -#: ../share/extensions/dxf_input.inx.h:9 -msgid "Text Font:" -msgstr "" - -#: ../share/extensions/dxf_input.inx.h:11 -msgid "" -"- AutoCAD Release 13 and newer.\n" -"- assume dxf drawing is in mm.\n" -"- assume svg drawing is in pixels, at 90 dpi.\n" -"- scale factor and origin apply only to manual scaling.\n" -"- layers are preserved only on File->Open, not Import.\n" -"- limited support for BLOCKS, use AutoCAD Explode Blocks instead, if needed." -msgstr "" - -#: ../share/extensions/dxf_input.inx.h:17 -msgid "AutoCAD DXF R13 (*.dxf)" -msgstr "" - -#: ../share/extensions/dxf_input.inx.h:18 -msgid "Import AutoCAD's Document Exchange Format" -msgstr "" - -#: ../share/extensions/dxf_outlines.inx.h:1 -msgid "Desktop Cutting Plotter" -msgstr "" - -#: ../share/extensions/dxf_outlines.inx.h:3 -msgid "use ROBO-Master type of spline output" -msgstr "" - -#: ../share/extensions/dxf_outlines.inx.h:4 -msgid "use LWPOLYLINE type of line output" -msgstr "" - -#: ../share/extensions/dxf_outlines.inx.h:5 -msgid "Base unit" -msgstr "" - -#: ../share/extensions/dxf_outlines.inx.h:6 -msgid "Character Encoding" -msgstr "" - -#: ../share/extensions/dxf_outlines.inx.h:7 -msgid "Layer export selection" -msgstr "" - -#: ../share/extensions/dxf_outlines.inx.h:8 -msgid "Layer match name" -msgstr "" - -#: ../share/extensions/dxf_outlines.inx.h:17 -msgid "Latin 1" -msgstr "" - -#: ../share/extensions/dxf_outlines.inx.h:18 -msgid "CP 1250" -msgstr "" - -#: ../share/extensions/dxf_outlines.inx.h:19 -msgid "CP 1252" -msgstr "" - -#: ../share/extensions/dxf_outlines.inx.h:20 -msgid "UTF 8" -msgstr "" - -#: ../share/extensions/dxf_outlines.inx.h:21 -msgid "All (default)" -msgstr "" - -#: ../share/extensions/dxf_outlines.inx.h:22 -msgid "Visible only" -msgstr "" - -#: ../share/extensions/dxf_outlines.inx.h:23 -msgid "By name match" -msgstr "" - -#: ../share/extensions/dxf_outlines.inx.h:25 -msgid "" -"- AutoCAD Release 14 DXF format.\n" -"- The base unit parameter specifies in what unit the coordinates are output " -"(90 px = 1 in).\n" -"- Supported element types\n" -" - paths (lines and splines)\n" -" - rectangles\n" -" - clones (the crossreference to the original is lost)\n" -"- ROBO-Master spline output is a specialized spline readable only by ROBO-" -"Master and AutoDesk viewers, not Inkscape.\n" -"- LWPOLYLINE output is a multiply-connected polyline, disable it to use a " -"legacy version of the LINE output.\n" -"- You can choose to export all layers, only visible ones or by name match " -"(case insensitive and use comma ',' as separator)" -msgstr "" - -#: ../share/extensions/dxf_outlines.inx.h:34 -msgid "Desktop Cutting Plotter (AutoCAD DXF R14) (*.dxf)" -msgstr "" - -#: ../share/extensions/dxf_output.inx.h:1 -msgid "DXF Output" -msgstr "" - -#: ../share/extensions/dxf_output.inx.h:2 -msgid "pstoedit must be installed to run; see http://www.pstoedit.net/pstoedit" -msgstr "" - -#: ../share/extensions/dxf_output.inx.h:3 -msgid "AutoCAD DXF R12 (*.dxf)" -msgstr "" - -#: ../share/extensions/dxf_output.inx.h:4 -msgid "DXF file written by pstoedit" -msgstr "" - -#: ../share/extensions/edge3d.inx.h:1 -msgid "Edge 3D" -msgstr "" - -#: ../share/extensions/edge3d.inx.h:2 -msgid "Illumination Angle:" -msgstr "" - -#: ../share/extensions/edge3d.inx.h:3 -msgid "Shades:" -msgstr "" - -#: ../share/extensions/edge3d.inx.h:4 -msgid "Only black and white:" -msgstr "" - -#: ../share/extensions/edge3d.inx.h:5 -msgid "Stroke width:" -msgstr "" - -#: ../share/extensions/edge3d.inx.h:6 -msgid "Blur stdDeviation:" -msgstr "" - -#: ../share/extensions/edge3d.inx.h:7 -msgid "Blur width:" -msgstr "" - -#: ../share/extensions/edge3d.inx.h:8 -msgid "Blur height:" -msgstr "" - -#: ../share/extensions/embedimage.inx.h:1 -msgid "Embed Images" -msgstr "" - -#: ../share/extensions/embedimage.inx.h:2 -#: ../share/extensions/embedselectedimages.inx.h:2 -msgid "Embed only selected images" -msgstr "" - -#: ../share/extensions/embedselectedimages.inx.h:1 -msgid "Embed Selected Images" -msgstr "" - -#: ../share/extensions/eps_input.inx.h:1 -msgid "EPS Input" -msgstr "" - -#: ../share/extensions/eqtexsvg.inx.h:1 -msgid "LaTeX" -msgstr "" - -#: ../share/extensions/eqtexsvg.inx.h:2 -msgid "LaTeX input: " -msgstr "" - -#: ../share/extensions/eqtexsvg.inx.h:3 -msgid "Additional packages (comma-separated): " -msgstr "" - -#: ../share/extensions/export_gimp_palette.inx.h:1 -msgid "Export as GIMP Palette" -msgstr "" - -#: ../share/extensions/export_gimp_palette.inx.h:2 -msgid "GIMP Palette (*.gpl)" -msgstr "" - -#: ../share/extensions/export_gimp_palette.inx.h:3 -msgid "Exports the colors of this document as GIMP Palette" -msgstr "" - -#: ../share/extensions/extractimage.inx.h:1 -msgid "Extract Image" -msgstr "" - -#: ../share/extensions/extractimage.inx.h:2 -msgid "Path to save image:" -msgstr "" - -#: ../share/extensions/extractimage.inx.h:3 -msgid "" -"* Don't type the file extension, it is appended automatically.\n" -"* A relative path (or a filename without path) is relative to the user's " -"home directory." -msgstr "" - -#: ../share/extensions/extrude.inx.h:3 -msgid "Lines" -msgstr "" - -#: ../share/extensions/extrude.inx.h:4 -msgid "Polygons" -msgstr "" - -#: ../share/extensions/fig_input.inx.h:1 -msgid "XFIG Input" -msgstr "" - -#: ../share/extensions/fig_input.inx.h:2 -msgid "XFIG Graphics File (*.fig)" -msgstr "" - -#: ../share/extensions/fig_input.inx.h:3 -msgid "Open files saved with XFIG" -msgstr "" - -#: ../share/extensions/flatten.inx.h:1 -msgid "Flatten Beziers" -msgstr "" - -#: ../share/extensions/flatten.inx.h:2 -msgid "Flatness:" -msgstr "" - -#: ../share/extensions/foldablebox.inx.h:1 -msgid "Foldable Box" -msgstr "" - -#: ../share/extensions/foldablebox.inx.h:4 -msgid "Depth:" -msgstr "" - -#: ../share/extensions/foldablebox.inx.h:5 -msgid "Paper Thickness:" -msgstr "" - -#: ../share/extensions/foldablebox.inx.h:6 -msgid "Tab Proportion:" -msgstr "" - -#: ../share/extensions/foldablebox.inx.h:8 -msgid "Add Guide Lines" -msgstr "" - -#: ../share/extensions/fractalize.inx.h:1 -msgid "Fractalize" -msgstr "" - -#: ../share/extensions/fractalize.inx.h:2 -msgid "Subdivisions:" -msgstr "" - -#: ../share/extensions/funcplot.inx.h:1 -msgid "Function Plotter" -msgstr "" - -#: ../share/extensions/funcplot.inx.h:2 -msgid "Range and sampling" -msgstr "" - -#: ../share/extensions/funcplot.inx.h:3 -msgid "Start X value:" -msgstr "" - -#: ../share/extensions/funcplot.inx.h:4 -msgid "End X value:" -msgstr "" - -#: ../share/extensions/funcplot.inx.h:5 -msgid "Multiply X range by 2*pi" -msgstr "" - -#: ../share/extensions/funcplot.inx.h:6 -msgid "Y value of rectangle's bottom:" -msgstr "" - -#: ../share/extensions/funcplot.inx.h:7 -msgid "Y value of rectangle's top:" -msgstr "" - -#: ../share/extensions/funcplot.inx.h:8 -msgid "Number of samples:" -msgstr "" - -#: ../share/extensions/funcplot.inx.h:9 -#: ../share/extensions/param_curves.inx.h:11 -msgid "Isotropic scaling" -msgstr "" - -#: ../share/extensions/funcplot.inx.h:10 -msgid "Use polar coordinates" -msgstr "" - -#: ../share/extensions/funcplot.inx.h:11 -#: ../share/extensions/param_curves.inx.h:12 -msgid "" -"When set, Isotropic scaling uses smallest of width/xrange or height/yrange" -msgstr "" - -#: ../share/extensions/funcplot.inx.h:12 -#: ../share/extensions/param_curves.inx.h:13 -msgid "Use" -msgstr "" - -#: ../share/extensions/funcplot.inx.h:13 -msgid "" -"Select a rectangle before calling the extension,\n" -"it will determine X and Y scales. If you wish to fill the area, then add x-" -"axis endpoints.\n" -"\n" -"With polar coordinates:\n" -" Start and end X values define the angle range in radians.\n" -" X scale is set so that left and right edges of rectangle are at +/-1.\n" -" Isotropic scaling is disabled.\n" -" First derivative is always determined numerically." -msgstr "" - -#: ../share/extensions/funcplot.inx.h:21 -#: ../share/extensions/param_curves.inx.h:16 -msgid "Functions" -msgstr "" - -#: ../share/extensions/funcplot.inx.h:22 -#: ../share/extensions/param_curves.inx.h:17 -msgid "" -"Standard Python math functions are available:\n" -"\n" -"ceil(x); fabs(x); floor(x); fmod(x,y); frexp(x); ldexp(x,i); \n" -"modf(x); exp(x); log(x [, base]); log10(x); pow(x,y); sqrt(x); \n" -"acos(x); asin(x); atan(x); atan2(y,x); hypot(x,y); \n" -"cos(x); sin(x); tan(x); degrees(x); radians(x); \n" -"cosh(x); sinh(x); tanh(x).\n" -"\n" -"The constants pi and e are also available." -msgstr "" - -#: ../share/extensions/funcplot.inx.h:31 -msgid "Function:" -msgstr "" - -#: ../share/extensions/funcplot.inx.h:32 -msgid "Calculate first derivative numerically" -msgstr "" - -#: ../share/extensions/funcplot.inx.h:33 -msgid "First derivative:" -msgstr "" - -#: ../share/extensions/funcplot.inx.h:34 -msgid "Clip with rectangle" -msgstr "" - -#: ../share/extensions/funcplot.inx.h:35 -#: ../share/extensions/param_curves.inx.h:28 -msgid "Remove rectangle" -msgstr "" - -#: ../share/extensions/funcplot.inx.h:36 -#: ../share/extensions/param_curves.inx.h:29 -msgid "Draw Axes" -msgstr "" - -#: ../share/extensions/funcplot.inx.h:37 -msgid "Add x-axis endpoints" -msgstr "" - -#: ../share/extensions/gcodetools_about.inx.h:1 -msgid "About" -msgstr "" - -#: ../share/extensions/gcodetools_about.inx.h:2 -msgid "" -"Gcodetools was developed to make simple Gcode from Inkscape's paths. Gcode " -"is a special format which is used in most of CNC machines. So Gcodetools " -"allows you to use Inkscape as CAM program. It can be use with a lot of " -"machine types: Mills Lathes Laser and Plasma cutters and engravers Mill " -"engravers Plotters etc. To get more info visit developers page at http://www." -"cnc-club.ru/gcodetools" -msgstr "" - -#: ../share/extensions/gcodetools_about.inx.h:4 -#: ../share/extensions/gcodetools_area.inx.h:54 -#: ../share/extensions/gcodetools_check_for_updates.inx.h:4 -#: ../share/extensions/gcodetools_dxf_points.inx.h:26 -#: ../share/extensions/gcodetools_engraving.inx.h:32 -#: ../share/extensions/gcodetools_graffiti.inx.h:43 -#: ../share/extensions/gcodetools_lathe.inx.h:47 -#: ../share/extensions/gcodetools_orientation_points.inx.h:15 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:36 -#: ../share/extensions/gcodetools_prepare_path_for_plasma.inx.h:18 -#: ../share/extensions/gcodetools_tools_library.inx.h:13 -msgid "" -"Gcodetools plug-in: converts paths to Gcode (using circular interpolation), " -"makes offset paths and engraves sharp corners using cone cutters. This plug-" -"in calculates Gcode for paths using circular interpolation or linear motion " -"when needed. Tutorials, manuals and support can be found at English support " -"forum: http://www.cnc-club.ru/gcodetools and Russian support forum: http://" -"www.cnc-club.ru/gcodetoolsru Credits: Nick Drobchenko, Vladimir Kalyaev, " -"John Brooker, Henry Nicolas, Chris Lusby Taylor. Gcodetools ver. 1.7" -msgstr "" - -#: ../share/extensions/gcodetools_about.inx.h:5 -#: ../share/extensions/gcodetools_area.inx.h:55 -#: ../share/extensions/gcodetools_check_for_updates.inx.h:5 -#: ../share/extensions/gcodetools_dxf_points.inx.h:27 -#: ../share/extensions/gcodetools_engraving.inx.h:33 -#: ../share/extensions/gcodetools_graffiti.inx.h:44 -#: ../share/extensions/gcodetools_lathe.inx.h:48 -#: ../share/extensions/gcodetools_orientation_points.inx.h:16 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:37 -#: ../share/extensions/gcodetools_prepare_path_for_plasma.inx.h:19 -#: ../share/extensions/gcodetools_tools_library.inx.h:14 -msgid "Gcodetools" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:1 -msgid "Area" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:2 -msgid "Maximum area cutting curves:" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:3 -msgid "Area width:" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:4 -msgid "Area tool overlap (0..0.9):" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:5 -msgid "" -"\"Create area offset\": creates several Inkscape path offsets to fill " -"original path's area up to \"Area radius\" value. Outlines start from \"1/2 D" -"\" up to \"Area width\" total width with \"D\" steps where D is taken from " -"the nearest tool definition (\"Tool diameter\" value). Only one offset will " -"be created if the \"Area width\" is equal to \"1/2 D\"." -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:6 -msgid "Fill area" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:7 -msgid "Area fill angle" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:8 -msgid "Area fill shift" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:9 -msgid "Filling method" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:10 -msgid "Zig zag" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:12 -msgid "Area artifacts" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:13 -msgid "Artifact diameter:" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:14 -msgid "Action:" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:15 -msgid "mark with an arrow" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:16 -msgid "mark with style" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:17 -msgid "delete" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:18 -msgid "" -"Usage: 1. Select all Area Offsets (gray outlines) 2. Object/Ungroup (Shift" -"+Ctrl+G) 3. Press Apply Suspected small objects will be marked out by " -"colored arrows." -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:19 -#: ../share/extensions/gcodetools_lathe.inx.h:12 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:1 -msgid "Path to Gcode" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:20 -#: ../share/extensions/gcodetools_lathe.inx.h:13 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:2 -msgid "Biarc interpolation tolerance:" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:21 -#: ../share/extensions/gcodetools_lathe.inx.h:14 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:3 -msgid "Maximum splitting depth:" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:22 -#: ../share/extensions/gcodetools_lathe.inx.h:15 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:4 -msgid "Cutting order:" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:23 -#: ../share/extensions/gcodetools_lathe.inx.h:16 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:5 -msgid "Depth function:" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:24 -#: ../share/extensions/gcodetools_lathe.inx.h:17 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:6 -msgid "Sort paths to reduse rapid distance" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:25 -#: ../share/extensions/gcodetools_lathe.inx.h:18 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:7 -msgid "Subpath by subpath" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:26 -#: ../share/extensions/gcodetools_lathe.inx.h:19 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:8 -msgid "Path by path" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:27 -#: ../share/extensions/gcodetools_lathe.inx.h:20 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:9 -msgid "Pass by Pass" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:28 -#: ../share/extensions/gcodetools_lathe.inx.h:21 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:10 -msgid "" -"Biarc interpolation tolerance is the maximum distance between path and its " -"approximation. The segment will be split into two segments if the distance " -"between path's segment and its approximation exceeds biarc interpolation " -"tolerance. For depth function c=color intensity from 0.0 (white) to 1.0 " -"(black), d is the depth defined by orientation points, s - surface defined " -"by orientation points." -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:30 -#: ../share/extensions/gcodetools_engraving.inx.h:8 -#: ../share/extensions/gcodetools_graffiti.inx.h:22 -#: ../share/extensions/gcodetools_lathe.inx.h:23 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:12 -msgid "Scale along Z axis:" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:31 -#: ../share/extensions/gcodetools_engraving.inx.h:9 -#: ../share/extensions/gcodetools_graffiti.inx.h:23 -#: ../share/extensions/gcodetools_lathe.inx.h:24 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:13 -msgid "Offset along Z axis:" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:32 -#: ../share/extensions/gcodetools_engraving.inx.h:10 -#: ../share/extensions/gcodetools_graffiti.inx.h:24 -#: ../share/extensions/gcodetools_lathe.inx.h:25 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:14 -msgid "Select all paths if nothing is selected" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:33 -#: ../share/extensions/gcodetools_engraving.inx.h:11 -#: ../share/extensions/gcodetools_graffiti.inx.h:25 -#: ../share/extensions/gcodetools_lathe.inx.h:26 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:15 -msgid "Minimum arc radius:" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:34 -#: ../share/extensions/gcodetools_engraving.inx.h:12 -#: ../share/extensions/gcodetools_graffiti.inx.h:26 -#: ../share/extensions/gcodetools_lathe.inx.h:27 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:16 -msgid "Comment Gcode:" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:35 -#: ../share/extensions/gcodetools_engraving.inx.h:13 -#: ../share/extensions/gcodetools_graffiti.inx.h:27 -#: ../share/extensions/gcodetools_lathe.inx.h:28 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:17 -msgid "Get additional comments from object's properties" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:36 -#: ../share/extensions/gcodetools_dxf_points.inx.h:8 -#: ../share/extensions/gcodetools_engraving.inx.h:14 -#: ../share/extensions/gcodetools_graffiti.inx.h:28 -#: ../share/extensions/gcodetools_lathe.inx.h:29 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:18 -msgid "Preferences" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:37 -#: ../share/extensions/gcodetools_dxf_points.inx.h:9 -#: ../share/extensions/gcodetools_engraving.inx.h:15 -#: ../share/extensions/gcodetools_graffiti.inx.h:29 -#: ../share/extensions/gcodetools_lathe.inx.h:30 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:19 -msgid "File:" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:38 -#: ../share/extensions/gcodetools_dxf_points.inx.h:10 -#: ../share/extensions/gcodetools_engraving.inx.h:16 -#: ../share/extensions/gcodetools_graffiti.inx.h:30 -#: ../share/extensions/gcodetools_lathe.inx.h:31 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:20 -msgid "Add numeric suffix to filename" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:39 -#: ../share/extensions/gcodetools_dxf_points.inx.h:11 -#: ../share/extensions/gcodetools_engraving.inx.h:17 -#: ../share/extensions/gcodetools_graffiti.inx.h:31 -#: ../share/extensions/gcodetools_lathe.inx.h:32 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:21 -msgid "Directory:" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:40 -#: ../share/extensions/gcodetools_dxf_points.inx.h:12 -#: ../share/extensions/gcodetools_engraving.inx.h:18 -#: ../share/extensions/gcodetools_graffiti.inx.h:32 -#: ../share/extensions/gcodetools_lathe.inx.h:33 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:22 -msgid "Z safe height for G00 move over blank:" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:41 -#: ../share/extensions/gcodetools_dxf_points.inx.h:13 -#: ../share/extensions/gcodetools_engraving.inx.h:19 -#: ../share/extensions/gcodetools_graffiti.inx.h:13 -#: ../share/extensions/gcodetools_lathe.inx.h:34 -#: ../share/extensions/gcodetools_orientation_points.inx.h:6 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:23 -msgid "Units (mm or in):" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:42 -#: ../share/extensions/gcodetools_dxf_points.inx.h:14 -#: ../share/extensions/gcodetools_engraving.inx.h:20 -#: ../share/extensions/gcodetools_graffiti.inx.h:33 -#: ../share/extensions/gcodetools_lathe.inx.h:35 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:24 -msgid "Post-processor:" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:43 -#: ../share/extensions/gcodetools_dxf_points.inx.h:15 -#: ../share/extensions/gcodetools_engraving.inx.h:21 -#: ../share/extensions/gcodetools_graffiti.inx.h:34 -#: ../share/extensions/gcodetools_lathe.inx.h:36 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:25 -msgid "Additional post-processor:" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:44 -#: ../share/extensions/gcodetools_dxf_points.inx.h:16 -#: ../share/extensions/gcodetools_engraving.inx.h:22 -#: ../share/extensions/gcodetools_graffiti.inx.h:35 -#: ../share/extensions/gcodetools_lathe.inx.h:37 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:26 -msgid "Generate log file" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:45 -#: ../share/extensions/gcodetools_dxf_points.inx.h:17 -#: ../share/extensions/gcodetools_engraving.inx.h:23 -#: ../share/extensions/gcodetools_graffiti.inx.h:36 -#: ../share/extensions/gcodetools_lathe.inx.h:38 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:27 -msgid "Full path to log file:" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:49 -#: ../share/extensions/gcodetools_dxf_points.inx.h:21 -#: ../share/extensions/gcodetools_engraving.inx.h:27 -#: ../share/extensions/gcodetools_graffiti.inx.h:38 -#: ../share/extensions/gcodetools_lathe.inx.h:42 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:31 -msgid "Parameterize Gcode" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:50 -#: ../share/extensions/gcodetools_dxf_points.inx.h:22 -#: ../share/extensions/gcodetools_engraving.inx.h:28 -#: ../share/extensions/gcodetools_graffiti.inx.h:39 -#: ../share/extensions/gcodetools_lathe.inx.h:43 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:32 -msgid "Flip y axis and parameterize Gcode" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:51 -#: ../share/extensions/gcodetools_dxf_points.inx.h:23 -#: ../share/extensions/gcodetools_engraving.inx.h:29 -#: ../share/extensions/gcodetools_graffiti.inx.h:40 -#: ../share/extensions/gcodetools_lathe.inx.h:44 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:33 -msgid "Round all values to 4 digits" -msgstr "" - -#: ../share/extensions/gcodetools_area.inx.h:52 -#: ../share/extensions/gcodetools_dxf_points.inx.h:24 -#: ../share/extensions/gcodetools_engraving.inx.h:30 -#: ../share/extensions/gcodetools_graffiti.inx.h:41 -#: ../share/extensions/gcodetools_lathe.inx.h:45 -#: ../share/extensions/gcodetools_path_to_gcode.inx.h:34 -msgid "Fast pre-penetrate" -msgstr "" - -#: ../share/extensions/gcodetools_check_for_updates.inx.h:1 -msgid "Check for updates" -msgstr "" - -#: ../share/extensions/gcodetools_check_for_updates.inx.h:2 -msgid "Check for Gcodetools latest stable version and try to get the updates." -msgstr "" - -#: ../share/extensions/gcodetools_dxf_points.inx.h:1 -msgid "DXF Points" -msgstr "" - -#: ../share/extensions/gcodetools_dxf_points.inx.h:2 -msgid "DXF points" -msgstr "" - -#: ../share/extensions/gcodetools_dxf_points.inx.h:3 -msgid "Convert selection:" -msgstr "" - -#: ../share/extensions/gcodetools_dxf_points.inx.h:4 -msgid "" -"Convert selected objects to drill points (as dxf_import plugin does). Also " -"you can save original shape. Only the start point of each curve will be " -"used. Also you can manually select object, open XML editor (Shift+Ctrl+X) " -"and add or remove XML tag 'dxfpoint' with any value." -msgstr "" - -#: ../share/extensions/gcodetools_dxf_points.inx.h:5 -msgid "set as dxfpoint and save shape" -msgstr "" - -#: ../share/extensions/gcodetools_dxf_points.inx.h:6 -msgid "set as dxfpoint and draw arrow" -msgstr "" - -#: ../share/extensions/gcodetools_dxf_points.inx.h:7 -msgid "clear dxfpoint sign" -msgstr "" - -#: ../share/extensions/gcodetools_engraving.inx.h:1 -msgid "Engraving" -msgstr "" - -#: ../share/extensions/gcodetools_engraving.inx.h:2 -msgid "Smooth convex corners between this value and 180 degrees:" -msgstr "" - -#: ../share/extensions/gcodetools_engraving.inx.h:3 -msgid "Maximum distance for engraving (mm/inch):" -msgstr "" - -#: ../share/extensions/gcodetools_engraving.inx.h:4 -msgid "Accuracy factor (2 low to 10 high):" -msgstr "" - -#: ../share/extensions/gcodetools_engraving.inx.h:5 -msgid "Draw additional graphics to see engraving path" -msgstr "" - -#: ../share/extensions/gcodetools_engraving.inx.h:6 -msgid "" -"This function creates path to engrave letters or any shape with sharp " -"angles. Cutter's depth as a function of radius is defined by the tool. Depth " -"may be any Python expression. For instance: cone....(45 " -"degrees)......................: w cone....(height/diameter=10/3)..: 10*w/3 " -"sphere..(radius r)...........................: math.sqrt(max(0,r**2-w**2)) " -"ellipse.(minor axis r, major 4r).....: math.sqrt(max(0,r**2-w**2))*4" -msgstr "" - -#: ../share/extensions/gcodetools_graffiti.inx.h:1 -msgid "Graffiti" -msgstr "" - -#: ../share/extensions/gcodetools_graffiti.inx.h:2 -msgid "Maximum segment length:" -msgstr "" - -#: ../share/extensions/gcodetools_graffiti.inx.h:3 -msgid "Minimal connector radius:" -msgstr "" - -#: ../share/extensions/gcodetools_graffiti.inx.h:4 -msgid "Start position (x;y):" -msgstr "" - -#: ../share/extensions/gcodetools_graffiti.inx.h:5 -msgid "Create preview" -msgstr "" - -#: ../share/extensions/gcodetools_graffiti.inx.h:6 -msgid "Create linearization preview" -msgstr "" - -#: ../share/extensions/gcodetools_graffiti.inx.h:7 -msgid "Preview's size (px):" -msgstr "" - -#: ../share/extensions/gcodetools_graffiti.inx.h:8 -msgid "Preview's paint emmit (pts/s):" -msgstr "" - -#: ../share/extensions/gcodetools_graffiti.inx.h:10 -#: ../share/extensions/gcodetools_orientation_points.inx.h:3 -msgid "Orientation type:" -msgstr "" - -#: ../share/extensions/gcodetools_graffiti.inx.h:11 -#: ../share/extensions/gcodetools_orientation_points.inx.h:4 -msgid "Z surface:" -msgstr "" - -#: ../share/extensions/gcodetools_graffiti.inx.h:12 -#: ../share/extensions/gcodetools_orientation_points.inx.h:5 -msgid "Z depth:" -msgstr "" - -#: ../share/extensions/gcodetools_graffiti.inx.h:14 -#: ../share/extensions/gcodetools_orientation_points.inx.h:7 -msgid "2-points mode (move and rotate, maintained aspect ratio X/Y)" -msgstr "" - -#: ../share/extensions/gcodetools_graffiti.inx.h:15 -#: ../share/extensions/gcodetools_orientation_points.inx.h:8 -msgid "3-points mode (move, rotate and mirror, different X/Y scale)" -msgstr "" - -#: ../share/extensions/gcodetools_graffiti.inx.h:16 -#: ../share/extensions/gcodetools_orientation_points.inx.h:9 -msgid "graffiti points" -msgstr "" - -#: ../share/extensions/gcodetools_graffiti.inx.h:17 -#: ../share/extensions/gcodetools_orientation_points.inx.h:10 -msgid "in-out reference point" -msgstr "" - -#: ../share/extensions/gcodetools_graffiti.inx.h:20 -#: ../share/extensions/gcodetools_orientation_points.inx.h:13 -msgid "" -"Orientation points are used to calculate transformation (offset,scale,mirror," -"rotation in XY plane) of the path. 3-points mode only: do not put all three " -"into one line (use 2-points mode instead). You can modify Z surface, Z depth " -"values later using text tool (3rd coordinates). If there are no orientation " -"points inside current layer they are taken from the upper layer. Do not " -"ungroup orientation points! You can select them using double click to enter " -"the group or by Ctrl+Click. Now press apply to create control points " -"(independent set for each layer)." -msgstr "" - -#: ../share/extensions/gcodetools_lathe.inx.h:1 -msgid "Lathe" -msgstr "" - -#: ../share/extensions/gcodetools_lathe.inx.h:2 -msgid "Lathe width:" -msgstr "" - -#: ../share/extensions/gcodetools_lathe.inx.h:3 -msgid "Fine cut width:" -msgstr "" - -#: ../share/extensions/gcodetools_lathe.inx.h:4 -msgid "Fine cut count:" -msgstr "" - -#: ../share/extensions/gcodetools_lathe.inx.h:5 -msgid "Create fine cut using:" -msgstr "" - -#: ../share/extensions/gcodetools_lathe.inx.h:6 -msgid "Lathe X axis remap:" -msgstr "" - -#: ../share/extensions/gcodetools_lathe.inx.h:7 -msgid "Lathe Z axis remap:" -msgstr "" - -#: ../share/extensions/gcodetools_lathe.inx.h:8 -msgid "Move path" -msgstr "" - -#: ../share/extensions/gcodetools_lathe.inx.h:10 -msgid "Lathe modify path" -msgstr "" - -#: ../share/extensions/gcodetools_lathe.inx.h:11 -msgid "" -"This function modifies path so it will be able to be cut with the " -"rectangular cutter." -msgstr "" - -#: ../share/extensions/gcodetools_orientation_points.inx.h:1 -msgid "Orientation points" -msgstr "" - -#: ../share/extensions/gcodetools_prepare_path_for_plasma.inx.h:1 -msgid "Prepare path for plasma" -msgstr "" - -#: ../share/extensions/gcodetools_prepare_path_for_plasma.inx.h:2 -msgid "Prepare path for plasma or laser cuters" -msgstr "" - -#: ../share/extensions/gcodetools_prepare_path_for_plasma.inx.h:3 -msgid "Create in-out paths" -msgstr "" - -#: ../share/extensions/gcodetools_prepare_path_for_plasma.inx.h:4 -msgid "In-out path length:" -msgstr "" - -#: ../share/extensions/gcodetools_prepare_path_for_plasma.inx.h:5 -msgid "In-out path max distance to reference point:" -msgstr "" - -#: ../share/extensions/gcodetools_prepare_path_for_plasma.inx.h:6 -msgid "In-out path type:" -msgstr "" - -#: ../share/extensions/gcodetools_prepare_path_for_plasma.inx.h:7 -msgid "In-out path radius for round path:" -msgstr "" - -#: ../share/extensions/gcodetools_prepare_path_for_plasma.inx.h:8 -msgid "Replace original path" -msgstr "" - -#: ../share/extensions/gcodetools_prepare_path_for_plasma.inx.h:9 -msgid "Do not add in-out reference points" -msgstr "" - -#: ../share/extensions/gcodetools_prepare_path_for_plasma.inx.h:10 -msgid "Prepare corners" -msgstr "" - -#: ../share/extensions/gcodetools_prepare_path_for_plasma.inx.h:11 -msgid "Stepout distance for corners:" -msgstr "" - -#: ../share/extensions/gcodetools_prepare_path_for_plasma.inx.h:12 -msgid "Maximum angle for corner (0-180 deg):" -msgstr "" - -#: ../share/extensions/gcodetools_prepare_path_for_plasma.inx.h:14 -msgid "Perpendicular" -msgstr "" - -#: ../share/extensions/gcodetools_prepare_path_for_plasma.inx.h:15 -msgid "Tangent" -msgstr "" - -#: ../share/extensions/gcodetools_prepare_path_for_plasma.inx.h:16 -msgid "-------------------------------------------------" -msgstr "" - -#: ../share/extensions/gcodetools_tools_library.inx.h:1 -msgid "Tools library" -msgstr "" - -#: ../share/extensions/gcodetools_tools_library.inx.h:2 -msgid "Tools type:" -msgstr "" - -#: ../share/extensions/gcodetools_tools_library.inx.h:3 -msgid "default" -msgstr "" - -#: ../share/extensions/gcodetools_tools_library.inx.h:4 -msgid "cylinder" -msgstr "" - -#: ../share/extensions/gcodetools_tools_library.inx.h:5 -msgid "cone" -msgstr "" - -#: ../share/extensions/gcodetools_tools_library.inx.h:6 -msgid "plasma" -msgstr "" - -#: ../share/extensions/gcodetools_tools_library.inx.h:7 -msgid "tangent knife" -msgstr "" - -#: ../share/extensions/gcodetools_tools_library.inx.h:8 -msgid "lathe cutter" -msgstr "" - -#: ../share/extensions/gcodetools_tools_library.inx.h:9 -msgid "graffiti" -msgstr "" - -#: ../share/extensions/gcodetools_tools_library.inx.h:10 -msgid "Just check tools" -msgstr "" - -#: ../share/extensions/gcodetools_tools_library.inx.h:11 -msgid "" -"Selected tool type fills appropriate default values. You can change these " -"values using the Text tool later on. The topmost (z order) tool in the " -"active layer is used. If there is no tool inside the current layer it is " -"taken from the upper layer. Press Apply to create new tool." -msgstr "" - -#: ../share/extensions/generate_voronoi.inx.h:1 -msgid "Voronoi Pattern" -msgstr "" - -#: ../share/extensions/generate_voronoi.inx.h:3 -msgid "Average size of cell (px):" -msgstr "" - -#: ../share/extensions/generate_voronoi.inx.h:4 -msgid "Size of Border (px):" -msgstr "" - -#: ../share/extensions/generate_voronoi.inx.h:6 -msgid "" -"Generate a random pattern of Voronoi cells. The pattern will be accessible " -"in the Fill and Stroke dialog. You must select an object or a group.\n" -"\n" -"If border is zero, the pattern will be discontinuous at the edges. Use a " -"positive border, preferably greater than the cell size, to produce a smooth " -"join of the pattern at the edges. Use a negative border to reduce the size " -"of the pattern and get an empty border." -msgstr "" - -#: ../share/extensions/gimp_xcf.inx.h:1 -msgid "GIMP XCF" -msgstr "" - -#: ../share/extensions/gimp_xcf.inx.h:3 -msgid "Save Guides" -msgstr "" - -#: ../share/extensions/gimp_xcf.inx.h:4 -msgid "Save Grid" -msgstr "" - -#: ../share/extensions/gimp_xcf.inx.h:5 -msgid "Save Background" -msgstr "" - -#: ../share/extensions/gimp_xcf.inx.h:7 -msgid "" -"This extension exports the document to Gimp XCF format according to the " -"following options:\n" -" * Save Guides: convert all guides to Gimp guides.\n" -" * Save Grid: convert the first rectangular grid to a Gimp grid (note " -"that the default Inkscape grid is very narrow when shown in Gimp).\n" -" * Save Background: add the document background to each converted layer.\n" -"\n" -"Each first level layer is converted to a Gimp layer. Sublayers are " -"concatenated and converted with their first level parent layer into a single " -"Gimp layer." -msgstr "" - -#: ../share/extensions/gimp_xcf.inx.h:13 -msgid "GIMP XCF maintaining layers (*.xcf)" -msgstr "" - -#: ../share/extensions/grid_cartesian.inx.h:1 -msgid "Cartesian Grid" -msgstr "" - -#: ../share/extensions/grid_cartesian.inx.h:2 -#: ../share/extensions/grid_isometric.inx.h:10 -msgid "Border Thickness (px):" -msgstr "" - -#: ../share/extensions/grid_cartesian.inx.h:3 -msgid "X Axis" -msgstr "" - -#: ../share/extensions/grid_cartesian.inx.h:4 -msgid "Major X Divisions:" -msgstr "" - -#: ../share/extensions/grid_cartesian.inx.h:5 -msgid "Major X Division Spacing (px):" -msgstr "" - -#: ../share/extensions/grid_cartesian.inx.h:6 -msgid "Subdivisions per Major X Division:" -msgstr "" - -#: ../share/extensions/grid_cartesian.inx.h:7 -msgid "Logarithmic X Subdiv. (Base given by entry above)" -msgstr "" - -#: ../share/extensions/grid_cartesian.inx.h:8 -msgid "Subsubdivs. per X Subdivision:" -msgstr "" - -#: ../share/extensions/grid_cartesian.inx.h:9 -msgid "Halve X Subsubdiv. Frequency after 'n' Subdivs. (log only):" -msgstr "" - -#: ../share/extensions/grid_cartesian.inx.h:10 -msgid "Major X Division Thickness (px):" -msgstr "" - -#: ../share/extensions/grid_cartesian.inx.h:11 -msgid "Minor X Division Thickness (px):" -msgstr "" - -#: ../share/extensions/grid_cartesian.inx.h:12 -msgid "Subminor X Division Thickness (px):" -msgstr "" - -#: ../share/extensions/grid_cartesian.inx.h:13 -msgid "Y Axis" -msgstr "" - -#: ../share/extensions/grid_cartesian.inx.h:14 -msgid "Major Y Divisions:" -msgstr "" - -#: ../share/extensions/grid_cartesian.inx.h:15 -msgid "Major Y Division Spacing (px):" -msgstr "" - -#: ../share/extensions/grid_cartesian.inx.h:16 -msgid "Subdivisions per Major Y Division:" -msgstr "" - -#: ../share/extensions/grid_cartesian.inx.h:17 -msgid "Logarithmic Y Subdiv. (Base given by entry above)" -msgstr "" - -#: ../share/extensions/grid_cartesian.inx.h:18 -msgid "Subsubdivs. per Y Subdivision:" -msgstr "" - -#: ../share/extensions/grid_cartesian.inx.h:19 -msgid "Halve Y Subsubdiv. Frequency after 'n' Subdivs. (log only):" -msgstr "" - -#: ../share/extensions/grid_cartesian.inx.h:20 -msgid "Major Y Division Thickness (px):" -msgstr "" - -#: ../share/extensions/grid_cartesian.inx.h:21 -msgid "Minor Y Division Thickness (px):" -msgstr "" - -#: ../share/extensions/grid_cartesian.inx.h:22 -msgid "Subminor Y Division Thickness (px):" -msgstr "" - -#: ../share/extensions/grid_isometric.inx.h:1 -msgid "Isometric Grid" -msgstr "" - -#: ../share/extensions/grid_isometric.inx.h:2 -msgid "X Divisions [x2]:" -msgstr "" - -#: ../share/extensions/grid_isometric.inx.h:3 -msgid "Y Divisions [x2] [> 1/2 X Div]:" -msgstr "" - -#: ../share/extensions/grid_isometric.inx.h:4 -msgid "Division Spacing (px):" -msgstr "" - -#: ../share/extensions/grid_isometric.inx.h:5 -msgid "Subdivisions per Major Division:" -msgstr "" - -#: ../share/extensions/grid_isometric.inx.h:6 -msgid "Subsubdivs per Subdivision:" -msgstr "" - -#: ../share/extensions/grid_isometric.inx.h:7 -msgid "Major Division Thickness (px):" -msgstr "" - -#: ../share/extensions/grid_isometric.inx.h:8 -msgid "Minor Division Thickness (px):" -msgstr "" - -#: ../share/extensions/grid_isometric.inx.h:9 -msgid "Subminor Division Thickness (px):" -msgstr "" - -#: ../share/extensions/grid_polar.inx.h:1 -msgid "Polar Grid" -msgstr "" - -#: ../share/extensions/grid_polar.inx.h:2 -msgid "Centre Dot Diameter (px):" -msgstr "" - -#: ../share/extensions/grid_polar.inx.h:3 -msgid "Circumferential Labels:" -msgstr "" - -#: ../share/extensions/grid_polar.inx.h:5 -msgid "Degrees" -msgstr "" - -#: ../share/extensions/grid_polar.inx.h:6 -msgid "Circumferential Label Size (px):" -msgstr "" - -#: ../share/extensions/grid_polar.inx.h:7 -msgid "Circumferential Label Outset (px):" -msgstr "" - -#: ../share/extensions/grid_polar.inx.h:8 -msgid "Circular Divisions" -msgstr "" - -#: ../share/extensions/grid_polar.inx.h:9 -msgid "Major Circular Divisions:" -msgstr "" - -#: ../share/extensions/grid_polar.inx.h:10 -msgid "Major Circular Division Spacing (px):" -msgstr "" - -#: ../share/extensions/grid_polar.inx.h:11 -msgid "Subdivisions per Major Circular Division:" -msgstr "" - -#: ../share/extensions/grid_polar.inx.h:12 -msgid "Logarithmic Subdiv. (Base given by entry above)" -msgstr "" - -#: ../share/extensions/grid_polar.inx.h:13 -msgid "Major Circular Division Thickness (px):" -msgstr "" - -#: ../share/extensions/grid_polar.inx.h:14 -msgid "Minor Circular Division Thickness (px):" -msgstr "" - -#: ../share/extensions/grid_polar.inx.h:15 -msgid "Angular Divisions" -msgstr "" - -#: ../share/extensions/grid_polar.inx.h:16 -msgid "Angle Divisions:" -msgstr "" - -#: ../share/extensions/grid_polar.inx.h:17 -msgid "Angle Divisions at Centre:" -msgstr "" - -#: ../share/extensions/grid_polar.inx.h:18 -msgid "Subdivisions per Major Angular Division:" -msgstr "" - -#: ../share/extensions/grid_polar.inx.h:19 -msgid "Minor Angle Division End 'n' Divs. Before Centre:" -msgstr "" - -#: ../share/extensions/grid_polar.inx.h:20 -msgid "Major Angular Division Thickness (px):" -msgstr "" - -#: ../share/extensions/grid_polar.inx.h:21 -msgid "Minor Angular Division Thickness (px):" -msgstr "" - -#: ../share/extensions/guides_creator.inx.h:1 -msgid "Guides creator" -msgstr "" - -#: ../share/extensions/guides_creator.inx.h:2 -msgid "Preset:" -msgstr "" - -#: ../share/extensions/guides_creator.inx.h:3 -msgid "Custom..." -msgstr "" - -#: ../share/extensions/guides_creator.inx.h:4 -msgid "Golden ratio" -msgstr "" - -#: ../share/extensions/guides_creator.inx.h:5 -msgid "Rule-of-third" -msgstr "" - -#: ../share/extensions/guides_creator.inx.h:6 -msgid "Vertical guide each:" -msgstr "" - -#: ../share/extensions/guides_creator.inx.h:8 -msgid "1/2" -msgstr "" - -#: ../share/extensions/guides_creator.inx.h:9 -msgid "1/3" -msgstr "" - -#: ../share/extensions/guides_creator.inx.h:10 -msgid "1/4" -msgstr "" - -#: ../share/extensions/guides_creator.inx.h:11 -msgid "1/5" -msgstr "" - -#: ../share/extensions/guides_creator.inx.h:12 -msgid "1/6" -msgstr "" - -#: ../share/extensions/guides_creator.inx.h:13 -msgid "1/7" -msgstr "" - -#: ../share/extensions/guides_creator.inx.h:14 -msgid "1/8" -msgstr "" - -#: ../share/extensions/guides_creator.inx.h:15 -msgid "1/9" -msgstr "" - -#: ../share/extensions/guides_creator.inx.h:16 -msgid "1/10" -msgstr "" - -#: ../share/extensions/guides_creator.inx.h:17 -msgid "Horizontal guide each:" -msgstr "" - -#: ../share/extensions/guides_creator.inx.h:18 -msgid "Start from edges" -msgstr "" - -#: ../share/extensions/guides_creator.inx.h:19 -msgid "Delete existing guides" -msgstr "" - -#: ../share/extensions/guillotine.inx.h:1 -msgid "Guillotine" -msgstr "" - -#: ../share/extensions/guillotine.inx.h:2 -msgid "Directory to save images to:" -msgstr "" - -#: ../share/extensions/guillotine.inx.h:3 -msgid "Image name (without extension):" -msgstr "" - -#: ../share/extensions/guillotine.inx.h:4 -msgid "Ignore these settings and use export hints" -msgstr "" - -#: ../share/extensions/guillotine.inx.h:5 -#: ../share/extensions/print_win32_vector.inx.h:2 -msgid "Export" -msgstr "" - -#: ../share/extensions/handles.inx.h:1 -msgid "Draw Handles" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:1 -msgid "HPGL Output" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:2 -msgid "" -"Please make sure that all objects you want to plot are converted to paths. " -"The plot will automatically be aligned to the zero point." -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:3 -msgid "Resolution (dpi):" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:4 -msgid "" -"The amount of steps the cutter moves if it moves for 1 inch, either get this " -"value from your plotter manual or learn it by trial and error (Standard: " -"'1016')" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:5 -msgid "Pen number:" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:6 -msgid "The number of the pen (tool) to use, on most plotters 1 (Standard: '1')" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:8 -msgid "" -"Orientation of the plot, change this if your plotter is plotting horizontal " -"instead of vertical (Standard: '90°')" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:9 -msgid "Mirror Y-axis" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:10 -msgid "" -"Whether to mirror the Y axis. Some plotters need this, some not. Look in " -"your plotter manual or learn it by trial and error (Standard: 'False')" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:11 -msgid "Center Zero Point" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:12 -msgid "" -"Whether the plotter needs the zero point to be in the center of the drawing. " -"Some plotters need this, some not. Look in your plotter manual or learn it " -"by trial and error (Standard: 'False')" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:13 -msgid "Curve flatness:" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:14 -msgid "" -"Curves are divided into lines, this number controls how fine the curves will " -"be reproduced, the smaller the finer (Standard: '1.2')" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:15 -msgid "Use Overcut" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:16 -msgid "" -"Whether the overcut will be used, if not the 'Overcut' parameter is unused " -"(Standard: 'True')" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:17 -msgid "Overcut (mm):" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:18 -msgid "" -"The distance in mm that will be cut over the starting point of the path to " -"prevent open paths (Standard: '1.00')" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:19 -msgid "Correct tool offset" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:20 -msgid "" -"Whether the tool offset should be corrected, if not the 'Tool offset' and " -"'Return Factor' parameters are unused (Standard: 'True')" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:21 -msgid "Tool offset (mm):" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:22 -msgid "The offset from the tool tip to the tool axis in mm (Standard: '0.25')" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:23 -msgid "Return Factor:" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:24 -msgid "" -"The return factor multiplied by the tool offset is the length that is used " -"to guide the tool back to the original path after an overcut is performed, " -"you can only determine this value by experimentation (Standard: '2.50')" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:25 -msgid "X offset (mm):" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:26 -msgid "" -"The offset to move your plot away from the zero point in mm (Standard: " -"'0.00')" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:27 -msgid "Y offset (mm):" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:28 -msgid "Plot invisible layers" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:29 -msgid "Plot invisible layers (Standard: 'False')" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:30 -msgid "Send to Plotter also" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:31 -msgid "" -"Sends the generated HPGL data also via serial connection to your plotter " -"(Standard: 'False')" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:32 -msgid "Serial Port:" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:33 -msgid "" -"The port of your serial connection, on Windows something like 'COM1', on " -"Linux something like: '/dev/ttyUSB0' (Standard: 'COM1')" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:34 -msgid "Baud Rate:" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:35 -msgid "The Baud rate of your serial connection (Standard: '9600')" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:36 -msgid "HP Graphics Language file (*.hpgl)" -msgstr "" - -#: ../share/extensions/hpgl_output.inx.h:37 -msgid "Export to an HP Graphics Language file" -msgstr "" - -#: ../share/extensions/ink2canvas.inx.h:1 -msgid "Convert to html5 canvas" -msgstr "" - -#: ../share/extensions/ink2canvas.inx.h:2 -msgid "HTML 5 canvas (*.html)" -msgstr "" - -#: ../share/extensions/ink2canvas.inx.h:3 -msgid "HTML 5 canvas code" -msgstr "" - -#: ../share/extensions/inkscape_follow_link.inx.h:1 -msgid "Follow Link" -msgstr "" - -#: ../share/extensions/inkscape_help_askaquestion.inx.h:1 -msgid "Ask Us a Question" -msgstr "" - -#: ../share/extensions/inkscape_help_commandline.inx.h:1 -msgid "Command Line Options" -msgstr "" - -#. i18n. Please don't translate it unless a page exists in your language -#: ../share/extensions/inkscape_help_commandline.inx.h:3 -msgid "http://inkscape.org/doc/inkscape-man.html" -msgstr "" - -#: ../share/extensions/inkscape_help_faq.inx.h:1 -msgid "FAQ" -msgstr "" - -#. i18n. Please don't translate it unless a page exists in your language -#: ../share/extensions/inkscape_help_faq.inx.h:3 -msgid "http://wiki.inkscape.org/wiki/index.php/FAQ" -msgstr "" - -#: ../share/extensions/inkscape_help_keys.inx.h:1 -msgid "Keys and Mouse Reference" -msgstr "" - -#. i18n. Please don't translate it unless a page exists in your language -#: ../share/extensions/inkscape_help_keys.inx.h:3 -msgid "http://inkscape.org/doc/keys048.html" -msgstr "" - -#: ../share/extensions/inkscape_help_manual.inx.h:1 -msgid "Inkscape Manual" -msgstr "" - -#. i18n. Please don't translate it unless a page exists in your language -#: ../share/extensions/inkscape_help_manual.inx.h:3 -msgid "http://tavmjong.free.fr/INKSCAPE/MANUAL/html/index.php" -msgstr "" - -#: ../share/extensions/inkscape_help_relnotes.inx.h:1 -msgid "New in This Version" -msgstr "" - -#. i18n. Please don't translate it unless a page exists in your language -#: ../share/extensions/inkscape_help_relnotes.inx.h:3 -msgid "http://wiki.inkscape.org/wiki/index.php/Release_notes/0.49" -msgstr "" - -#: ../share/extensions/inkscape_help_reportabug.inx.h:1 -msgid "Report a Bug" -msgstr "" - -#: ../share/extensions/inkscape_help_svgspec.inx.h:1 -msgid "SVG 1.1 Specification" -msgstr "" - -#: ../share/extensions/interp_att_g.inx.h:1 -msgid "Interpolate Attribute in a group" -msgstr "" - -#: ../share/extensions/interp_att_g.inx.h:3 -msgid "Attribute to Interpolate:" -msgstr "" - -#: ../share/extensions/interp_att_g.inx.h:4 -msgid "Other Attribute:" -msgstr "" - -#: ../share/extensions/interp_att_g.inx.h:5 -msgid "Other Attribute type:" -msgstr "" - -#: ../share/extensions/interp_att_g.inx.h:6 -msgid "Apply to:" -msgstr "" - -#: ../share/extensions/interp_att_g.inx.h:7 -msgid "Start Value:" -msgstr "" - -#: ../share/extensions/interp_att_g.inx.h:8 -msgid "End Value:" -msgstr "" - -#: ../share/extensions/interp_att_g.inx.h:13 -msgid "Translate X" -msgstr "" - -#: ../share/extensions/interp_att_g.inx.h:14 -msgid "Translate Y" -msgstr "" - -#: ../share/extensions/interp_att_g.inx.h:15 -#: ../share/extensions/markers_strokepaint.inx.h:9 -msgid "Fill" -msgstr "" - -#: ../share/extensions/interp_att_g.inx.h:17 -msgid "Other" -msgstr "" - -#: ../share/extensions/interp_att_g.inx.h:18 -msgid "" -"If you select \"Other\", you must know the SVG attributes to identify here " -"this \"other\"." -msgstr "" - -#: ../share/extensions/interp_att_g.inx.h:20 -msgid "Integer Number" -msgstr "" - -#: ../share/extensions/interp_att_g.inx.h:21 -msgid "Float Number" -msgstr "" - -#: ../share/extensions/interp_att_g.inx.h:22 -msgid "Tag" -msgstr "" - -#: ../share/extensions/interp_att_g.inx.h:23 -#: ../share/extensions/polyhedron_3d.inx.h:33 -msgid "Style" -msgstr "" - -#: ../share/extensions/interp_att_g.inx.h:24 -msgid "Transformation" -msgstr "" - -#: ../share/extensions/interp_att_g.inx.h:25 -msgid "••••••••••••••••••••••••••••••••••••••••••••••••" -msgstr "" - -#: ../share/extensions/interp_att_g.inx.h:26 -msgid "No Unit" -msgstr "" - -#: ../share/extensions/interp_att_g.inx.h:28 -msgid "" -"This effect applies a value for any interpolatable attribute for all " -"elements inside the selected group or for all elements in a multiple " -"selection." -msgstr "" - -#: ../share/extensions/interp.inx.h:1 -msgid "Interpolate" -msgstr "" - -#: ../share/extensions/interp.inx.h:3 -msgid "Interpolation steps:" -msgstr "" - -#: ../share/extensions/interp.inx.h:4 -msgid "Interpolation method:" -msgstr "" - -#: ../share/extensions/interp.inx.h:5 -msgid "Duplicate endpaths" -msgstr "" - -#: ../share/extensions/interp.inx.h:6 -msgid "Interpolate style" -msgstr "" - -#: ../share/extensions/jessyInk_autoTexts.inx.h:1 -msgid "Auto-texts" -msgstr "" - -#: ../share/extensions/jessyInk_autoTexts.inx.h:2 -#: ../share/extensions/jessyInk_effects.inx.h:2 -#: ../share/extensions/jessyInk_export.inx.h:2 -#: ../share/extensions/jessyInk_masterSlide.inx.h:2 -#: ../share/extensions/jessyInk_transitions.inx.h:2 -#: ../share/extensions/jessyInk_view.inx.h:2 -msgid "Settings" -msgstr "" - -#: ../share/extensions/jessyInk_autoTexts.inx.h:3 -msgid "Auto-Text:" -msgstr "" - -#: ../share/extensions/jessyInk_autoTexts.inx.h:4 -msgid "None (remove)" -msgstr "" - -#: ../share/extensions/jessyInk_autoTexts.inx.h:5 -msgid "Slide title" -msgstr "" - -#: ../share/extensions/jessyInk_autoTexts.inx.h:6 -msgid "Slide number" -msgstr "" - -#: ../share/extensions/jessyInk_autoTexts.inx.h:7 -msgid "Number of slides" -msgstr "" - -#: ../share/extensions/jessyInk_autoTexts.inx.h:9 -msgid "" -"This extension allows you to install, update and remove auto-texts for a " -"JessyInk presentation. Please see code.google.com/p/jessyink for more " -"details." -msgstr "" - -#: ../share/extensions/jessyInk_autoTexts.inx.h:10 -#: ../share/extensions/jessyInk_effects.inx.h:15 -#: ../share/extensions/jessyInk_install.inx.h:4 -#: ../share/extensions/jessyInk_keyBindings.inx.h:46 -#: ../share/extensions/jessyInk_masterSlide.inx.h:7 -#: ../share/extensions/jessyInk_mouseHandler.inx.h:8 -#: ../share/extensions/jessyInk_summary.inx.h:4 -#: ../share/extensions/jessyInk_transitions.inx.h:14 -#: ../share/extensions/jessyInk_uninstall.inx.h:12 -#: ../share/extensions/jessyInk_video.inx.h:4 -#: ../share/extensions/jessyInk_view.inx.h:9 -msgid "JessyInk" -msgstr "" - -#: ../share/extensions/jessyInk_effects.inx.h:1 -msgid "Effects" -msgstr "" - -#: ../share/extensions/jessyInk_effects.inx.h:4 -#: ../share/extensions/jessyInk_transitions.inx.h:4 -#: ../share/extensions/jessyInk_view.inx.h:4 -msgid "Duration in seconds:" -msgstr "" - -#: ../share/extensions/jessyInk_effects.inx.h:6 -msgid "Build-in effect" -msgstr "" - -#: ../share/extensions/jessyInk_effects.inx.h:7 -msgid "None (default)" -msgstr "" - -#: ../share/extensions/jessyInk_effects.inx.h:8 -#: ../share/extensions/jessyInk_transitions.inx.h:8 -msgid "Appear" -msgstr "" - -#: ../share/extensions/jessyInk_effects.inx.h:9 -msgid "Fade in" -msgstr "" - -#: ../share/extensions/jessyInk_effects.inx.h:10 -#: ../share/extensions/jessyInk_transitions.inx.h:10 -msgid "Pop" -msgstr "" - -#: ../share/extensions/jessyInk_effects.inx.h:11 -msgid "Build-out effect" -msgstr "" - -#: ../share/extensions/jessyInk_effects.inx.h:12 -msgid "Fade out" -msgstr "" - -#: ../share/extensions/jessyInk_effects.inx.h:14 -msgid "" -"This extension allows you to install, update and remove object effects for a " -"JessyInk presentation. Please see code.google.com/p/jessyink for more " -"details." -msgstr "" - -#: ../share/extensions/jessyInk_export.inx.h:1 -msgid "JessyInk zipped pdf or png output" -msgstr "" - -#: ../share/extensions/jessyInk_export.inx.h:4 -msgid "Resolution:" -msgstr "" - -#: ../share/extensions/jessyInk_export.inx.h:5 -msgid "PDF" -msgstr "" - -#: ../share/extensions/jessyInk_export.inx.h:6 -msgid "PNG" -msgstr "" - -#: ../share/extensions/jessyInk_export.inx.h:8 -msgid "" -"This extension allows you to export a JessyInk presentation once you created " -"an export layer in your browser. Please see code.google.com/p/jessyink for " -"more details." -msgstr "" - -#: ../share/extensions/jessyInk_export.inx.h:9 -msgid "JessyInk zipped pdf or png output (*.zip)" -msgstr "" - -#: ../share/extensions/jessyInk_export.inx.h:10 -msgid "" -"Creates a zip file containing pdfs or pngs of all slides of a JessyInk " -"presentation." -msgstr "" - -#: ../share/extensions/jessyInk_install.inx.h:1 -msgid "Install/update" -msgstr "" - -#: ../share/extensions/jessyInk_install.inx.h:3 -msgid "" -"This extension allows you to install or update the JessyInk script in order " -"to turn your SVG file into a presentation. Please see code.google.com/p/" -"jessyink for more details." -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:1 -msgid "Key bindings" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:2 -msgid "Slide mode" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:3 -msgid "Back (with effects):" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:4 -msgid "Next (with effects):" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:5 -msgid "Back (without effects):" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:6 -msgid "Next (without effects):" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:7 -msgid "First slide:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:8 -msgid "Last slide:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:9 -msgid "Switch to index mode:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:10 -msgid "Switch to drawing mode:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:11 -msgid "Set duration:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:12 -msgid "Add slide:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:13 -msgid "Toggle progress bar:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:14 -msgid "Reset timer:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:15 -msgid "Export presentation:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:17 -msgid "Switch to slide mode:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:18 -msgid "Set path width to default:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:19 -msgid "Set path width to 1:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:20 -msgid "Set path width to 3:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:21 -msgid "Set path width to 5:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:22 -msgid "Set path width to 7:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:23 -msgid "Set path width to 9:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:24 -msgid "Set path color to blue:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:25 -msgid "Set path color to cyan:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:26 -msgid "Set path color to green:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:27 -msgid "Set path color to black:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:28 -msgid "Set path color to magenta:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:29 -msgid "Set path color to orange:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:30 -msgid "Set path color to red:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:31 -msgid "Set path color to white:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:32 -msgid "Set path color to yellow:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:33 -msgid "Undo last path segment:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:34 -msgid "Index mode" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:35 -msgid "Select the slide to the left:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:36 -msgid "Select the slide to the right:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:37 -msgid "Select the slide above:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:38 -msgid "Select the slide below:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:39 -msgid "Previous page:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:40 -msgid "Next page:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:41 -msgid "Decrease number of columns:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:42 -msgid "Increase number of columns:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:43 -msgid "Set number of columns to default:" -msgstr "" - -#: ../share/extensions/jessyInk_keyBindings.inx.h:45 -msgid "" -"This extension allows you customise the key bindings JessyInk uses. Please " -"see code.google.com/p/jessyink for more details." -msgstr "" - -#: ../share/extensions/jessyInk_masterSlide.inx.h:1 -msgid "Master slide" -msgstr "" - -#: ../share/extensions/jessyInk_masterSlide.inx.h:3 -#: ../share/extensions/jessyInk_transitions.inx.h:3 -msgid "Name of layer:" -msgstr "" - -#: ../share/extensions/jessyInk_masterSlide.inx.h:4 -msgid "If no layer name is supplied, the master slide is unset." -msgstr "" - -#: ../share/extensions/jessyInk_masterSlide.inx.h:6 -msgid "" -"This extension allows you to change the master slide JessyInk uses. Please " -"see code.google.com/p/jessyink for more details." -msgstr "" - -#: ../share/extensions/jessyInk_mouseHandler.inx.h:1 -msgid "Mouse handler" -msgstr "" - -#: ../share/extensions/jessyInk_mouseHandler.inx.h:2 -msgid "Mouse settings:" -msgstr "" - -#: ../share/extensions/jessyInk_mouseHandler.inx.h:4 -msgid "No-click" -msgstr "" - -#: ../share/extensions/jessyInk_mouseHandler.inx.h:5 -msgid "Dragging/zoom" -msgstr "" - -#: ../share/extensions/jessyInk_mouseHandler.inx.h:7 -msgid "" -"This extension allows you customise the mouse handler JessyInk uses. Please " -"see code.google.com/p/jessyink for more details." -msgstr "" - -#: ../share/extensions/jessyInk_summary.inx.h:1 -msgid "Summary" -msgstr "" - -#: ../share/extensions/jessyInk_summary.inx.h:3 -msgid "" -"This extension allows you to obtain information about the JessyInk script, " -"effects and transitions contained in this SVG file. Please see code.google." -"com/p/jessyink for more details." -msgstr "" - -#: ../share/extensions/jessyInk_transitions.inx.h:1 -msgid "Transitions" -msgstr "" - -#: ../share/extensions/jessyInk_transitions.inx.h:6 -msgid "Transition in effect" -msgstr "" - -#: ../share/extensions/jessyInk_transitions.inx.h:9 -msgid "Fade" -msgstr "" - -#: ../share/extensions/jessyInk_transitions.inx.h:11 -msgid "Transition out effect" -msgstr "" - -#: ../share/extensions/jessyInk_transitions.inx.h:13 -msgid "" -"This extension allows you to change the transition JessyInk uses for the " -"selected layer. Please see code.google.com/p/jessyink for more details." -msgstr "" - -#: ../share/extensions/jessyInk_uninstall.inx.h:1 -msgid "Uninstall/remove" -msgstr "" - -#: ../share/extensions/jessyInk_uninstall.inx.h:3 -msgid "Remove script" -msgstr "" - -#: ../share/extensions/jessyInk_uninstall.inx.h:4 -msgid "Remove effects" -msgstr "" - -#: ../share/extensions/jessyInk_uninstall.inx.h:5 -msgid "Remove master slide assignment" -msgstr "" - -#: ../share/extensions/jessyInk_uninstall.inx.h:6 -msgid "Remove transitions" -msgstr "" - -#: ../share/extensions/jessyInk_uninstall.inx.h:7 -msgid "Remove auto-texts" -msgstr "" - -#: ../share/extensions/jessyInk_uninstall.inx.h:8 -msgid "Remove views" -msgstr "" - -#: ../share/extensions/jessyInk_uninstall.inx.h:9 -msgid "Please select the parts of JessyInk you want to uninstall/remove." -msgstr "" - -#: ../share/extensions/jessyInk_uninstall.inx.h:11 -msgid "" -"This extension allows you to uninstall the JessyInk script. Please see code." -"google.com/p/jessyink for more details." -msgstr "" - -#: ../share/extensions/jessyInk_video.inx.h:1 -msgid "Video" -msgstr "" - -#: ../share/extensions/jessyInk_video.inx.h:3 -msgid "" -"This extension puts a JessyInk video element on the current slide (layer). " -"This element allows you to integrate a video into your JessyInk " -"presentation. Please see code.google.com/p/jessyink for more details." -msgstr "" - -#: ../share/extensions/jessyInk_view.inx.h:5 -msgid "Remove view" -msgstr "" - -#: ../share/extensions/jessyInk_view.inx.h:6 -msgid "Choose order number 0 to set the initial view of a slide." -msgstr "" - -#: ../share/extensions/jessyInk_view.inx.h:8 -msgid "" -"This extension allows you to set, update and remove views for a JessyInk " -"presentation. Please see code.google.com/p/jessyink for more details." -msgstr "" - -#: ../share/extensions/layers2svgfont.inx.h:1 -msgid "3 - Convert Glyph Layers to SVG Font" -msgstr "" - -#: ../share/extensions/layers2svgfont.inx.h:2 -#: ../share/extensions/new_glyph_layer.inx.h:3 -#: ../share/extensions/next_glyph_layer.inx.h:2 -#: ../share/extensions/previous_glyph_layer.inx.h:2 -#: ../share/extensions/setup_typography_canvas.inx.h:7 -#: ../share/extensions/svgfont2layers.inx.h:3 -msgid "Typography" -msgstr "" - -#: ../share/extensions/layout_nup.inx.h:1 -msgid "N-up layout" -msgstr "" - -#: ../share/extensions/layout_nup.inx.h:2 -msgid "Page dimensions" -msgstr "" - -#: ../share/extensions/layout_nup.inx.h:4 -msgid "Size X:" -msgstr "" - -#: ../share/extensions/layout_nup.inx.h:5 -msgid "Size Y:" -msgstr "" - -#: ../share/extensions/layout_nup.inx.h:6 -#: ../share/extensions/printing_marks.inx.h:13 -msgid "Top:" -msgstr "" - -#: ../share/extensions/layout_nup.inx.h:7 -#: ../share/extensions/printing_marks.inx.h:14 -msgid "Bottom:" -msgstr "" - -#: ../share/extensions/layout_nup.inx.h:8 -#: ../share/extensions/printing_marks.inx.h:15 -msgid "Left:" -msgstr "" - -#: ../share/extensions/layout_nup.inx.h:9 -#: ../share/extensions/printing_marks.inx.h:16 -msgid "Right:" -msgstr "" - -#: ../share/extensions/layout_nup.inx.h:10 -msgid "Page margins" -msgstr "" - -#: ../share/extensions/layout_nup.inx.h:11 -msgid "Layout dimensions" -msgstr "" - -#: ../share/extensions/layout_nup.inx.h:13 -msgid "Cols:" -msgstr "" - -#: ../share/extensions/layout_nup.inx.h:14 -msgid "Auto calculate layout size" -msgstr "" - -#: ../share/extensions/layout_nup.inx.h:15 -msgid "Layout padding" -msgstr "" - -#: ../share/extensions/layout_nup.inx.h:16 -msgid "Layout margins" -msgstr "" - -#: ../share/extensions/layout_nup.inx.h:17 -#: ../share/extensions/printing_marks.inx.h:2 -msgid "Marks" -msgstr "" - -#: ../share/extensions/layout_nup.inx.h:18 -msgid "Place holder" -msgstr "" - -#: ../share/extensions/layout_nup.inx.h:19 -msgid "Cutting marks" -msgstr "" - -#: ../share/extensions/layout_nup.inx.h:20 -msgid "Padding guide" -msgstr "" - -#: ../share/extensions/layout_nup.inx.h:21 -msgid "Margin guide" -msgstr "" - -#: ../share/extensions/layout_nup.inx.h:22 -msgid "Padding box" -msgstr "" - -#: ../share/extensions/layout_nup.inx.h:23 -msgid "Margin box" -msgstr "" - -#: ../share/extensions/layout_nup.inx.h:25 -msgid "" -"\n" -"Parameters:\n" -" * Page size: width and height.\n" -" * Page margins: extra space around each page.\n" -" * Layout rows and cols.\n" -" * Layout size: width and height, auto calculated if one is 0.\n" -" * Auto calculate layout size: don't use the layout size values.\n" -" * Layout margins: white space around each part of the layout.\n" -" * Layout padding: inner padding for each part of the layout.\n" -" " -msgstr "" - -#: ../share/extensions/layout_nup.inx.h:36 -#: ../share/extensions/perfectboundcover.inx.h:20 -#: ../share/extensions/printing_marks.inx.h:21 -#: ../share/extensions/svgcalendar.inx.h:13 -msgid "Layout" -msgstr "" - -#: ../share/extensions/lindenmayer.inx.h:1 -msgid "L-system" -msgstr "" - -#: ../share/extensions/lindenmayer.inx.h:2 -msgid "Axiom and rules" -msgstr "" - -#: ../share/extensions/lindenmayer.inx.h:3 -msgid "Axiom:" -msgstr "" - -#: ../share/extensions/lindenmayer.inx.h:4 -msgid "Rules:" -msgstr "" - -#: ../share/extensions/lindenmayer.inx.h:6 -msgid "Step length (px):" -msgstr "" - -#: ../share/extensions/lindenmayer.inx.h:8 -#, no-c-format -msgid "Randomize step (%):" -msgstr "" - -#: ../share/extensions/lindenmayer.inx.h:9 -msgid "Left angle:" -msgstr "" - -#: ../share/extensions/lindenmayer.inx.h:10 -msgid "Right angle:" -msgstr "" - -#: ../share/extensions/lindenmayer.inx.h:12 -#, no-c-format -msgid "Randomize angle (%):" -msgstr "" - -#: ../share/extensions/lindenmayer.inx.h:14 -msgid "" -"\n" -"The path is generated by applying the \n" -"substitutions of Rules to the Axiom, \n" -"Order times. The following commands are \n" -"recognized in Axiom and Rules:\n" -"\n" -"Any of A,B,C,D,E,F: draw forward \n" -"\n" -"Any of G,H,I,J,K,L: move forward \n" -"\n" -"+: turn left\n" -"\n" -"-: turn right\n" -"\n" -"|: turn 180 degrees\n" -"\n" -"[: remember point\n" -"\n" -"]: return to remembered point\n" -msgstr "" - -#: ../share/extensions/lorem_ipsum.inx.h:1 -msgid "Lorem ipsum" -msgstr "" - -#: ../share/extensions/lorem_ipsum.inx.h:3 -msgid "Number of paragraphs:" -msgstr "" - -#: ../share/extensions/lorem_ipsum.inx.h:4 -msgid "Sentences per paragraph:" -msgstr "" - -#: ../share/extensions/lorem_ipsum.inx.h:5 -msgid "Paragraph length fluctuation (sentences):" -msgstr "" - -#: ../share/extensions/lorem_ipsum.inx.h:7 -msgid "" -"This effect creates the standard \"Lorem Ipsum\" pseudolatin placeholder " -"text. If a flowed text is selected, Lorem Ipsum is added to it; otherwise a " -"new flowed text object, the size of the page, is created in a new layer." -msgstr "" - -#: ../share/extensions/markers_strokepaint.inx.h:1 -msgid "Color Markers" -msgstr "" - -#: ../share/extensions/markers_strokepaint.inx.h:2 -msgid "From object" -msgstr "" - -#: ../share/extensions/markers_strokepaint.inx.h:3 -msgid "Marker type:" -msgstr "" - -#: ../share/extensions/markers_strokepaint.inx.h:4 -msgid "Invert fill and stroke colors" -msgstr "" - -#: ../share/extensions/markers_strokepaint.inx.h:5 -msgid "Assign alpha" -msgstr "" - -#: ../share/extensions/markers_strokepaint.inx.h:6 -msgid "solid" -msgstr "" - -#: ../share/extensions/markers_strokepaint.inx.h:7 -msgid "filled" -msgstr "" - -#: ../share/extensions/markers_strokepaint.inx.h:10 -msgid "Assign fill color" -msgstr "" - -#: ../share/extensions/markers_strokepaint.inx.h:11 -msgid "Stroke" -msgstr "" - -#: ../share/extensions/markers_strokepaint.inx.h:12 -msgid "Assign stroke color" -msgstr "" - -#: ../share/extensions/measure.inx.h:1 -msgid "Measure Path" -msgstr "" - -#: ../share/extensions/measure.inx.h:2 -msgid "Measure" -msgstr "" - -#: ../share/extensions/measure.inx.h:3 -msgid "Measurement Type: " -msgstr "" - -#: ../share/extensions/measure.inx.h:4 -msgid "Text Orientation: " -msgstr "" - -#: ../share/extensions/measure.inx.h:5 -msgid "Angle [with Fixed Angle option only] (°):" -msgstr "" - -#: ../share/extensions/measure.inx.h:6 -msgid "Font size (px):" -msgstr "" - -#: ../share/extensions/measure.inx.h:7 -msgid "Offset (px):" -msgstr "" - -#: ../share/extensions/measure.inx.h:8 -msgid "Precision:" -msgstr "" - -#: ../share/extensions/measure.inx.h:9 -msgid "Scale Factor (Drawing:Real Length) = 1:" -msgstr "" - -#: ../share/extensions/measure.inx.h:10 -msgid "Length Unit:" -msgstr "" - -#: ../share/extensions/measure.inx.h:12 -msgctxt "measure extension" -msgid "Area" -msgstr "" - -#: ../share/extensions/measure.inx.h:13 -msgctxt "measure extension" -msgid "Text On Path" -msgstr "" - -#: ../share/extensions/measure.inx.h:14 -msgctxt "measure extension" -msgid "Fixed Angle" -msgstr "" - -#: ../share/extensions/measure.inx.h:17 -#, no-c-format -msgid "" -"This effect measures the length, or area, of the selected paths and adds it " -"as a text object with the selected units.\n" -" \n" -" * Display format can be either Text-On-Path, or stand-alone text at a " -"specified angle.\n" -" * The number of significant digits can be controlled by the Precision " -"field.\n" -" * The Offset field controls the distance from the text to the path.\n" -" * The Scale factor can be used to make measurements in scaled drawings. " -"For example, if 1 cm in the drawing equals 2.5 m in the real world, Scale " -"must be set to 250.\n" -" * When calculating area, the result should be precise for polygons and " -"Bezier curves. If a circle is used, the area may be too high by as much as " -"0.03%." -msgstr "" - -#: ../share/extensions/motion.inx.h:1 -msgid "Motion" -msgstr "" - -#: ../share/extensions/motion.inx.h:2 -msgid "Magnitude:" -msgstr "" - -#: ../share/extensions/new_glyph_layer.inx.h:1 -msgid "2 - Add Glyph Layer" -msgstr "" - -#: ../share/extensions/new_glyph_layer.inx.h:2 -msgid "Unicode character:" -msgstr "" - -#: ../share/extensions/next_glyph_layer.inx.h:1 -msgid "View Next Glyph" -msgstr "" - -#: ../share/extensions/outline2svg.inx.h:1 -msgid "Text Outline Input" -msgstr "" - -#: ../share/extensions/outline2svg.inx.h:2 -msgid "Text Outline File (*.outline)" -msgstr "" - -#: ../share/extensions/outline2svg.inx.h:3 -msgid "ASCII Text with outline markup" -msgstr "" - -#: ../share/extensions/param_curves.inx.h:1 -msgid "Parametric Curves" -msgstr "" - -#: ../share/extensions/param_curves.inx.h:2 -msgid "Range and Sampling" -msgstr "" - -#: ../share/extensions/param_curves.inx.h:3 -msgid "Start t-value:" -msgstr "" - -#: ../share/extensions/param_curves.inx.h:4 -msgid "End t-value:" -msgstr "" - -#: ../share/extensions/param_curves.inx.h:5 -msgid "Multiply t-range by 2*pi" -msgstr "" - -#: ../share/extensions/param_curves.inx.h:6 -msgid "X-value of rectangle's left:" -msgstr "" - -#: ../share/extensions/param_curves.inx.h:7 -msgid "X-value of rectangle's right:" -msgstr "" - -#: ../share/extensions/param_curves.inx.h:8 -msgid "Y-value of rectangle's bottom:" -msgstr "" - -#: ../share/extensions/param_curves.inx.h:9 -msgid "Y-value of rectangle's top:" -msgstr "" - -#: ../share/extensions/param_curves.inx.h:10 -msgid "Samples:" -msgstr "" - -#: ../share/extensions/param_curves.inx.h:14 -msgid "" -"Select a rectangle before calling the extension, it will determine X and Y " -"scales.\n" -"First derivatives are always determined numerically." -msgstr "" - -#: ../share/extensions/param_curves.inx.h:26 -msgid "X-Function:" -msgstr "" - -#: ../share/extensions/param_curves.inx.h:27 -msgid "Y-Function:" -msgstr "" - -#: ../share/extensions/pathalongpath.inx.h:1 -msgid "Pattern along Path" -msgstr "" - -#: ../share/extensions/pathalongpath.inx.h:3 -msgid "Copies of the pattern:" -msgstr "" - -#: ../share/extensions/pathalongpath.inx.h:4 -msgid "Deformation type:" -msgstr "" - -#: ../share/extensions/pathalongpath.inx.h:5 -#: ../share/extensions/pathscatter.inx.h:5 -msgid "Space between copies:" -msgstr "" - -#: ../share/extensions/pathalongpath.inx.h:6 -#: ../share/extensions/pathscatter.inx.h:6 -msgid "Normal offset:" -msgstr "" - -#: ../share/extensions/pathalongpath.inx.h:7 -#: ../share/extensions/pathscatter.inx.h:7 -msgid "Tangential offset:" -msgstr "" - -#: ../share/extensions/pathalongpath.inx.h:8 -#: ../share/extensions/pathscatter.inx.h:8 -msgid "Pattern is vertical" -msgstr "" - -#: ../share/extensions/pathalongpath.inx.h:9 -#: ../share/extensions/pathscatter.inx.h:10 -msgid "Duplicate the pattern before deformation" -msgstr "" - -#: ../share/extensions/pathalongpath.inx.h:14 -msgid "Snake" -msgstr "" - -#: ../share/extensions/pathalongpath.inx.h:15 -msgid "Ribbon" -msgstr "" - -#: ../share/extensions/pathalongpath.inx.h:17 -msgid "" -"This effect scatters or bends a pattern along arbitrary \"skeleton\" paths. " -"The pattern is the topmost object in the selection. Groups of paths, shapes " -"or clones are allowed." -msgstr "" - -#: ../share/extensions/pathscatter.inx.h:3 -msgid "Follow path orientation" -msgstr "" - -#: ../share/extensions/pathscatter.inx.h:4 -msgid "Stretch spaces to fit skeleton length" -msgstr "" - -#: ../share/extensions/pathscatter.inx.h:9 -msgid "Original pattern will be:" -msgstr "" - -#: ../share/extensions/pathscatter.inx.h:11 -msgid "If pattern is a group, pick group members" -msgstr "" - -#: ../share/extensions/pathscatter.inx.h:12 -msgid "Pick group members:" -msgstr "" - -#: ../share/extensions/pathscatter.inx.h:13 -msgid "Moved" -msgstr "" - -#: ../share/extensions/pathscatter.inx.h:14 -msgid "Copied" -msgstr "" - -#: ../share/extensions/pathscatter.inx.h:15 -msgid "Cloned" -msgstr "" - -#: ../share/extensions/pathscatter.inx.h:16 -msgid "Randomly" -msgstr "" - -#: ../share/extensions/pathscatter.inx.h:17 -msgid "Sequentially" -msgstr "" - -#: ../share/extensions/pathscatter.inx.h:19 -msgid "" -"This effect scatters a pattern along arbitrary \"skeleton\" paths. The " -"pattern must be the topmost object in the selection. Groups of paths, " -"shapes, clones are allowed." -msgstr "" - -#: ../share/extensions/perfectboundcover.inx.h:1 -msgid "Perfect-Bound Cover Template" -msgstr "" - -#: ../share/extensions/perfectboundcover.inx.h:2 -msgid "Book Properties" -msgstr "" - -#: ../share/extensions/perfectboundcover.inx.h:3 -msgid "Book Width (inches):" -msgstr "" - -#: ../share/extensions/perfectboundcover.inx.h:4 -msgid "Book Height (inches):" -msgstr "" - -#: ../share/extensions/perfectboundcover.inx.h:5 -msgid "Number of Pages:" -msgstr "" - -#: ../share/extensions/perfectboundcover.inx.h:6 -msgid "Remove existing guides" -msgstr "" - -#: ../share/extensions/perfectboundcover.inx.h:7 -msgid "Interior Pages" -msgstr "" - -#: ../share/extensions/perfectboundcover.inx.h:8 -msgid "Paper Thickness Measurement:" -msgstr "" - -#: ../share/extensions/perfectboundcover.inx.h:9 -msgid "Pages Per Inch (PPI)" -msgstr "" - -#: ../share/extensions/perfectboundcover.inx.h:10 -msgid "Caliper (inches)" -msgstr "" - -#: ../share/extensions/perfectboundcover.inx.h:12 -msgid "Bond Weight #" -msgstr "" - -#: ../share/extensions/perfectboundcover.inx.h:13 -msgid "Specify Width" -msgstr "" - -#: ../share/extensions/perfectboundcover.inx.h:14 -msgid "Value:" -msgstr "" - -#: ../share/extensions/perfectboundcover.inx.h:15 -msgid "Cover" -msgstr "" - -#: ../share/extensions/perfectboundcover.inx.h:16 -msgid "Cover Thickness Measurement:" -msgstr "" - -#: ../share/extensions/perfectboundcover.inx.h:17 -msgid "Bleed (in):" -msgstr "" - -#: ../share/extensions/perfectboundcover.inx.h:18 -msgid "Note: Bond Weight # calculations are a best-guess estimate." -msgstr "" - -#: ../share/extensions/perspective.inx.h:1 -msgid "Perspective" -msgstr "" - -#: ../share/extensions/pixelsnap.inx.h:1 -msgid "PixelSnap" -msgstr "" - -#: ../share/extensions/pixelsnap.inx.h:2 -msgid "" -"Snap all paths in selection to pixels. Snaps borders to half-points and " -"fills to full points." -msgstr "" - -#: ../share/extensions/plt_input.inx.h:1 -msgid "AutoCAD Plot Input" -msgstr "" - -#: ../share/extensions/plt_input.inx.h:2 -#: ../share/extensions/plt_output.inx.h:2 -msgid "HP Graphics Language Plot file [AutoCAD] (*.plt)" -msgstr "" - -#: ../share/extensions/plt_input.inx.h:3 -msgid "Open HPGL plotter files" -msgstr "" - -#: ../share/extensions/plt_output.inx.h:1 -msgid "AutoCAD Plot Output" -msgstr "" - -#: ../share/extensions/plt_output.inx.h:3 -msgid "Save a file for plotters" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:1 -msgid "3D Polyhedron" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:2 -msgid "Model file" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:3 -msgid "Object:" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:4 -msgid "Filename:" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:5 -msgid "Object Type:" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:6 -msgid "Clockwise wound object" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:7 -msgid "Cube" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:8 -msgid "Truncated Cube" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:9 -msgid "Snub Cube" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:10 -msgid "Cuboctahedron" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:11 -msgid "Tetrahedron" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:12 -msgid "Truncated Tetrahedron" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:13 -msgid "Octahedron" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:14 -msgid "Truncated Octahedron" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:15 -msgid "Icosahedron" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:16 -msgid "Truncated Icosahedron" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:17 -msgid "Small Triambic Icosahedron" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:18 -msgid "Dodecahedron" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:19 -msgid "Truncated Dodecahedron" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:20 -msgid "Snub Dodecahedron" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:21 -msgid "Great Dodecahedron" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:22 -msgid "Great Stellated Dodecahedron" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:23 -msgid "Load from file" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:24 -msgid "Face-Specified" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:25 -msgid "Edge-Specified" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:27 -msgid "Rotate around:" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:28 -#: ../share/extensions/spirograph.inx.h:8 -#: ../share/extensions/wireframe_sphere.inx.h:5 -msgid "Rotation (deg):" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:29 -msgid "Then rotate around:" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:30 -msgid "X-Axis" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:31 -msgid "Y-Axis" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:32 -msgid "Z-Axis" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:34 -msgid "Scaling factor:" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:35 -msgid "Fill color, Red:" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:36 -msgid "Fill color, Green:" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:37 -msgid "Fill color, Blue:" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:39 -#, no-c-format -msgid "Fill opacity (%):" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:41 -#, no-c-format -msgid "Stroke opacity (%):" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:42 -msgid "Stroke width (px):" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:43 -msgid "Shading" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:44 -msgid "Light X:" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:45 -msgid "Light Y:" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:46 -msgid "Light Z:" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:48 -msgid "Draw back-facing polygons" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:49 -msgid "Z-sort faces by:" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:50 -msgid "Faces" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:51 -msgid "Edges" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:52 -msgid "Vertices" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:53 -msgid "Maximum" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:54 -msgid "Minimum" -msgstr "" - -#: ../share/extensions/polyhedron_3d.inx.h:55 -msgid "Mean" -msgstr "" - -#: ../share/extensions/previous_glyph_layer.inx.h:1 -msgid "View Previous Glyph" -msgstr "" - -#: ../share/extensions/print_win32_vector.inx.h:1 -msgid "Win32 Vector Print" -msgstr "" - -#: ../share/extensions/printing_marks.inx.h:1 -msgid "Printing Marks" -msgstr "" - -#: ../share/extensions/printing_marks.inx.h:3 -msgid "Crop Marks" -msgstr "" - -#: ../share/extensions/printing_marks.inx.h:4 -msgid "Bleed Marks" -msgstr "" - -#: ../share/extensions/printing_marks.inx.h:5 -msgid "Registration Marks" -msgstr "" - -#: ../share/extensions/printing_marks.inx.h:6 -msgid "Star Target" -msgstr "" - -#: ../share/extensions/printing_marks.inx.h:7 -msgid "Color Bars" -msgstr "" - -#: ../share/extensions/printing_marks.inx.h:8 -msgid "Page Information" -msgstr "" - -#: ../share/extensions/printing_marks.inx.h:9 -msgid "Positioning" -msgstr "" - -#: ../share/extensions/printing_marks.inx.h:10 -msgid "Set crop marks to:" -msgstr "" - -#: ../share/extensions/printing_marks.inx.h:17 -msgid "Canvas" -msgstr "" - -#: ../share/extensions/printing_marks.inx.h:19 -msgid "Bleed Margin" -msgstr "" - -#: ../share/extensions/ps_input.inx.h:1 -msgid "PostScript Input" -msgstr "" - -#: ../share/extensions/radiusrand.inx.h:1 -msgid "Jitter nodes" -msgstr "" - -#: ../share/extensions/radiusrand.inx.h:3 -msgid "Maximum displacement in X (px):" -msgstr "" - -#: ../share/extensions/radiusrand.inx.h:4 -msgid "Maximum displacement in Y (px):" -msgstr "" - -#: ../share/extensions/radiusrand.inx.h:5 -msgid "Shift nodes" -msgstr "" - -#: ../share/extensions/radiusrand.inx.h:6 -msgid "Shift node handles" -msgstr "" - -#: ../share/extensions/radiusrand.inx.h:7 -msgid "Use normal distribution" -msgstr "" - -#: ../share/extensions/radiusrand.inx.h:9 -msgid "" -"This effect randomly shifts the nodes (and optionally node handles) of the " -"selected path." -msgstr "" - -#: ../share/extensions/render_alphabetsoup.inx.h:1 -msgid "Alphabet Soup" -msgstr "" - -#: ../share/extensions/render_alphabetsoup.inx.h:2 -#: ../share/extensions/render_barcode_datamatrix.inx.h:2 -#: ../share/extensions/render_barcode_qrcode.inx.h:3 -msgid "Text:" -msgstr "" - -#: ../share/extensions/render_barcode.inx.h:1 -msgid "Classic" -msgstr "" - -#: ../share/extensions/render_barcode.inx.h:2 -msgid "Barcode Type:" -msgstr "" - -#: ../share/extensions/render_barcode.inx.h:3 -msgid "Barcode Data:" -msgstr "" - -#: ../share/extensions/render_barcode.inx.h:4 -msgid "Bar Height:" -msgstr "" - -#: ../share/extensions/render_barcode.inx.h:6 -#: ../share/extensions/render_barcode_datamatrix.inx.h:6 -#: ../share/extensions/render_barcode_qrcode.inx.h:19 -msgid "Barcode" -msgstr "" - -#: ../share/extensions/render_barcode_datamatrix.inx.h:1 -msgid "Datamatrix" -msgstr "" - -#: ../share/extensions/render_barcode_datamatrix.inx.h:3 -#: ../share/extensions/render_barcode_qrcode.inx.h:4 -msgid "Size, in unit squares:" -msgstr "" - -#: ../share/extensions/render_barcode_datamatrix.inx.h:4 -msgid "Square Size (px):" -msgstr "" - -#: ../share/extensions/render_barcode_qrcode.inx.h:1 -msgid "QR Code" -msgstr "" - -#: ../share/extensions/render_barcode_qrcode.inx.h:2 -msgid "See http://www.denso-wave.com/qrcode/index-e.html for details" -msgstr "" - -#: ../share/extensions/render_barcode_qrcode.inx.h:5 -msgid "Auto" -msgstr "" - -#: ../share/extensions/render_barcode_qrcode.inx.h:6 -msgid "" -"With \"Auto\", the size of the barcode depends on the length of the text and " -"the error correction level" -msgstr "" - -#: ../share/extensions/render_barcode_qrcode.inx.h:7 -msgid "Error correction level:" -msgstr "" - -#: ../share/extensions/render_barcode_qrcode.inx.h:9 -#, no-c-format -msgid "L (Approx. 7%)" -msgstr "" - -#: ../share/extensions/render_barcode_qrcode.inx.h:11 -#, no-c-format -msgid "M (Approx. 15%)" -msgstr "" - -#: ../share/extensions/render_barcode_qrcode.inx.h:13 -#, no-c-format -msgid "Q (Approx. 25%)" -msgstr "" - -#: ../share/extensions/render_barcode_qrcode.inx.h:15 -#, no-c-format -msgid "H (Approx. 30%)" -msgstr "" - -#: ../share/extensions/render_barcode_qrcode.inx.h:17 -msgid "Square size (px):" -msgstr "" - -#: ../share/extensions/render_gears.inx.h:1 -#: ../share/extensions/render_gear_rack.inx.h:6 -msgid "Gear" -msgstr "" - -#: ../share/extensions/render_gears.inx.h:2 -msgid "Number of teeth:" -msgstr "" - -#: ../share/extensions/render_gears.inx.h:3 -msgid "Circular pitch (tooth size):" -msgstr "" - -#: ../share/extensions/render_gears.inx.h:4 -msgid "Pressure angle (degrees):" -msgstr "" - -#: ../share/extensions/render_gears.inx.h:5 -msgid "Diameter of center hole (0 for none):" -msgstr "" - -#: ../share/extensions/render_gears.inx.h:10 -msgid "Unit of measurement for both circular pitch and center diameter." -msgstr "" - -#: ../share/extensions/render_gear_rack.inx.h:1 -msgid "Rack Gear" -msgstr "" - -#: ../share/extensions/render_gear_rack.inx.h:2 -msgid "Rack Length:" -msgstr "" - -#: ../share/extensions/render_gear_rack.inx.h:3 -msgid "Tooth Spacing:" -msgstr "" - -#: ../share/extensions/render_gear_rack.inx.h:4 -msgid "Contact Angle:" -msgstr "" - -#: ../share/extensions/replace_font.inx.h:1 -msgid "Replace font" -msgstr "" - -#: ../share/extensions/replace_font.inx.h:2 -msgid "Find and Replace font" -msgstr "" - -#: ../share/extensions/replace_font.inx.h:3 -msgid "Find font: " -msgstr "" - -#: ../share/extensions/replace_font.inx.h:4 -msgid "Replace with: " -msgstr "" - -#: ../share/extensions/replace_font.inx.h:5 -msgid "Replace all fonts with: " -msgstr "" - -#: ../share/extensions/replace_font.inx.h:6 -msgid "List all fonts" -msgstr "" - -#: ../share/extensions/replace_font.inx.h:7 -msgid "" -"Choose this tab if you would like to see a list of the fonts used/found." -msgstr "" - -#: ../share/extensions/replace_font.inx.h:8 -msgid "Work on:" -msgstr "" - -#: ../share/extensions/replace_font.inx.h:9 -msgid "Entire drawing" -msgstr "" - -#: ../share/extensions/replace_font.inx.h:10 -msgid "Selected objects only" -msgstr "" - -#: ../share/extensions/restack.inx.h:1 -msgid "Restack" -msgstr "" - -#: ../share/extensions/restack.inx.h:2 -msgid "Restack Direction:" -msgstr "" - -#: ../share/extensions/restack.inx.h:3 -msgid "Left to Right (0)" -msgstr "" - -#: ../share/extensions/restack.inx.h:4 -msgid "Bottom to Top (90)" -msgstr "" - -#: ../share/extensions/restack.inx.h:5 -msgid "Right to Left (180)" -msgstr "" - -#: ../share/extensions/restack.inx.h:6 -msgid "Top to Bottom (270)" -msgstr "" - -#: ../share/extensions/restack.inx.h:7 -msgid "Radial Outward" -msgstr "" - -#: ../share/extensions/restack.inx.h:8 -msgid "Radial Inward" -msgstr "" - -#: ../share/extensions/restack.inx.h:9 -msgid "Arbitrary Angle" -msgstr "" - -#: ../share/extensions/restack.inx.h:11 -msgid "Horizontal Point:" -msgstr "" - -#: ../share/extensions/restack.inx.h:13 -#: ../share/extensions/text_extract.inx.h:9 -msgid "Middle" -msgstr "" - -#: ../share/extensions/restack.inx.h:15 -msgid "Vertical Point:" -msgstr "" - -#: ../share/extensions/restack.inx.h:16 -#: ../share/extensions/text_extract.inx.h:12 -msgid "Top" -msgstr "" - -#: ../share/extensions/restack.inx.h:17 -#: ../share/extensions/text_extract.inx.h:13 -msgid "Bottom" -msgstr "" - -#: ../share/extensions/restack.inx.h:18 -msgid "Arrange" -msgstr "" - -#: ../share/extensions/rtree.inx.h:1 -msgid "Random Tree" -msgstr "" - -#: ../share/extensions/rtree.inx.h:2 -msgid "Initial size:" -msgstr "" - -#: ../share/extensions/rtree.inx.h:3 -msgid "Minimum size:" -msgstr "" - -#: ../share/extensions/rubberstretch.inx.h:1 -msgid "Rubber Stretch" -msgstr "" - -#: ../share/extensions/rubberstretch.inx.h:3 -#, no-c-format -msgid "Strength (%):" -msgstr "" - -#: ../share/extensions/rubberstretch.inx.h:5 -#, no-c-format -msgid "Curve (%):" -msgstr "" - -#: ../share/extensions/scour.inx.h:1 -msgid "Optimized SVG Output" -msgstr "" - -#: ../share/extensions/scour.inx.h:3 -msgid "Shorten color values" -msgstr "" - -#: ../share/extensions/scour.inx.h:4 -msgid "Convert CSS attributes to XML attributes" -msgstr "" - -#: ../share/extensions/scour.inx.h:5 -msgid "Group collapsing" -msgstr "" - -#: ../share/extensions/scour.inx.h:6 -msgid "Create groups for similar attributes" -msgstr "" - -#: ../share/extensions/scour.inx.h:7 -msgid "Embed rasters" -msgstr "" - -#: ../share/extensions/scour.inx.h:8 -msgid "Keep editor data" -msgstr "" - -#: ../share/extensions/scour.inx.h:9 -msgid "Remove metadata" -msgstr "" - -#: ../share/extensions/scour.inx.h:10 -msgid "Remove comments" -msgstr "" - -#: ../share/extensions/scour.inx.h:11 -msgid "Work around renderer bugs" -msgstr "" - -#: ../share/extensions/scour.inx.h:12 -msgid "Enable viewboxing" -msgstr "" - -#: ../share/extensions/scour.inx.h:13 -msgid "Remove the xml declaration" -msgstr "" - -#: ../share/extensions/scour.inx.h:14 -msgid "Number of significant digits for coords:" -msgstr "" - -#: ../share/extensions/scour.inx.h:15 -msgid "XML indentation (pretty-printing):" -msgstr "" - -#: ../share/extensions/scour.inx.h:16 -msgid "Space" -msgstr "" - -#: ../share/extensions/scour.inx.h:17 -msgid "Tab" -msgstr "" - -#: ../share/extensions/scour.inx.h:19 -msgid "Ids" -msgstr "" - -#: ../share/extensions/scour.inx.h:20 -msgid "Remove unused ID names for elements" -msgstr "" - -#: ../share/extensions/scour.inx.h:21 -msgid "Shorten IDs" -msgstr "" - -#: ../share/extensions/scour.inx.h:22 -msgid "Preserve manually created ID names not ending with digits" -msgstr "" - -#: ../share/extensions/scour.inx.h:23 -msgid "Preserve these ID names, comma-separated:" -msgstr "" - -#: ../share/extensions/scour.inx.h:24 -msgid "Preserve ID names starting with:" -msgstr "" - -#: ../share/extensions/scour.inx.h:25 -msgid "Help (Options)" -msgstr "" - -#: ../share/extensions/scour.inx.h:27 -#, no-c-format -msgid "" -"This extension optimizes the SVG file according to the following options:\n" -" * Shorten color names: convert all colors to #RRGGBB or #RGB format.\n" -" * Convert CSS attributes to XML attributes: convert styles from style " -"tags and inline style=\"\" declarations into XML attributes.\n" -" * Group collapsing: removes useless g elements, promoting their contents " -"up one level. Requires \"Remove unused ID names for elements\" to be set.\n" -" * Create groups for similar attributes: create g elements for runs of " -"elements having at least one attribute in common (e.g. fill color, stroke " -"opacity, ...).\n" -" * Embed rasters: embed raster images as base64-encoded data URLs.\n" -" * Keep editor data: don't remove Inkscape, Sodipodi or Adobe Illustrator " -"elements and attributes.\n" -" * Remove metadata: remove metadata tags along with all the information " -"in them, which may include license metadata, alternate versions for non-SVG-" -"enabled browsers, etc.\n" -" * Remove comments: remove comment tags.\n" -" * Work around renderer bugs: emits slightly larger SVG data, but works " -"around a bug in librsvg's renderer, which is used in Eye of GNOME and other " -"various applications.\n" -" * Enable viewboxing: size image to 100%/100% and introduce a viewBox.\n" -" * Number of significant digits for coords: all coordinates are output " -"with that number of significant digits. For example, if 3 is specified, the " -"coordinate 3.5153 is output as 3.51 and the coordinate 471.55 is output as " -"472.\n" -" * XML indentation (pretty-printing): either None for no indentation, " -"Space to use one space per nesting level, or Tab to use one tab per nesting " -"level." -msgstr "" - -#: ../share/extensions/scour.inx.h:40 -msgid "Help (Ids)" -msgstr "" - -#: ../share/extensions/scour.inx.h:41 -msgid "" -"Ids specific options:\n" -" * Remove unused ID names for elements: remove all unreferenced ID " -"attributes.\n" -" * Shorten IDs: reduce the length of all ID attributes, assigning the " -"shortest to the most-referenced elements. For instance, #linearGradient5621, " -"referenced 100 times, can become #a.\n" -" * Preserve manually created ID names not ending with digits: usually, " -"optimised SVG output removes these, but if they're needed for referencing (e." -"g. #middledot), you may use this option.\n" -" * Preserve these ID names, comma-separated: you can use this in " -"conjunction with the other preserve options if you wish to preserve some " -"more specific ID names.\n" -" * Preserve ID names starting with: usually, optimised SVG output removes " -"all unused ID names, but if all of your preserved ID names start with the " -"same prefix (e.g. #flag-mx, #flag-pt), you may use this option." -msgstr "" - -#: ../share/extensions/scour.inx.h:47 -msgid "Optimized SVG (*.svg)" -msgstr "" - -#: ../share/extensions/scour.inx.h:48 -msgid "Scalable Vector Graphics" -msgstr "" - -#: ../share/extensions/setup_typography_canvas.inx.h:1 -msgid "1 - Setup Typography Canvas" -msgstr "" - -#: ../share/extensions/setup_typography_canvas.inx.h:2 -msgid "Em-size:" -msgstr "" - -#: ../share/extensions/setup_typography_canvas.inx.h:3 -msgid "Ascender:" -msgstr "" - -#: ../share/extensions/setup_typography_canvas.inx.h:4 -msgid "Caps Height:" -msgstr "" - -#: ../share/extensions/setup_typography_canvas.inx.h:5 -msgid "X-Height:" -msgstr "" - -#: ../share/extensions/setup_typography_canvas.inx.h:6 -msgid "Descender:" -msgstr "" - -#: ../share/extensions/sk1_input.inx.h:1 -msgid "sK1 vector graphics files input" -msgstr "" - -#: ../share/extensions/sk1_input.inx.h:2 -#: ../share/extensions/sk1_output.inx.h:2 -msgid "sK1 vector graphics files (.sk1)" -msgstr "" - -#: ../share/extensions/sk1_input.inx.h:3 -msgid "Open files saved in sK1 vector graphics editor" -msgstr "" - -#: ../share/extensions/sk1_output.inx.h:1 -msgid "sK1 vector graphics files output" -msgstr "" - -#: ../share/extensions/sk1_output.inx.h:3 -msgid "File format for use in sK1 vector graphics editor" -msgstr "" - -#: ../share/extensions/sk_input.inx.h:1 -msgid "Sketch Input" -msgstr "" - -#: ../share/extensions/sk_input.inx.h:2 -msgid "Sketch Diagram (*.sk)" -msgstr "" - -#: ../share/extensions/sk_input.inx.h:3 -msgid "A diagram created with the program Sketch" -msgstr "" - -#: ../share/extensions/spirograph.inx.h:1 -msgid "Spirograph" -msgstr "" - -#: ../share/extensions/spirograph.inx.h:2 -msgid "R - Ring Radius (px):" -msgstr "" - -#: ../share/extensions/spirograph.inx.h:3 -msgid "r - Gear Radius (px):" -msgstr "" - -#: ../share/extensions/spirograph.inx.h:4 -msgid "d - Pen Radius (px):" -msgstr "" - -#: ../share/extensions/spirograph.inx.h:5 -msgid "Gear Placement:" -msgstr "" - -#: ../share/extensions/spirograph.inx.h:6 -msgid "Inside (Hypotrochoid)" -msgstr "" - -#: ../share/extensions/spirograph.inx.h:7 -msgid "Outside (Epitrochoid)" -msgstr "" - -#: ../share/extensions/spirograph.inx.h:9 -msgid "Quality (Default = 16):" -msgstr "" - -#: ../share/extensions/split.inx.h:1 -msgid "Split text" -msgstr "" - -#: ../share/extensions/split.inx.h:3 -msgid "Split:" -msgstr "" - -#: ../share/extensions/split.inx.h:4 -msgid "Preserve original text" -msgstr "" - -#: ../share/extensions/split.inx.h:5 -msgctxt "split" -msgid "Lines" -msgstr "" - -#: ../share/extensions/split.inx.h:6 -msgctxt "split" -msgid "Words" -msgstr "" - -#: ../share/extensions/split.inx.h:7 -msgctxt "split" -msgid "Letters" -msgstr "" - -#: ../share/extensions/split.inx.h:9 -msgid "This effect splits texts into different lines, words or letters." -msgstr "" - -#: ../share/extensions/straightseg.inx.h:1 -msgid "Straighten Segments" -msgstr "" - -#: ../share/extensions/straightseg.inx.h:2 -msgid "Percent:" -msgstr "" - -#: ../share/extensions/straightseg.inx.h:3 -msgid "Behavior:" -msgstr "" - -#: ../share/extensions/summersnight.inx.h:1 -msgid "Envelope" -msgstr "" - -#: ../share/extensions/svg2fxg.inx.h:1 -msgid "FXG Output" -msgstr "" - -#: ../share/extensions/svg2fxg.inx.h:2 -msgid "Flash XML Graphics (*.fxg)" -msgstr "" - -#: ../share/extensions/svg2fxg.inx.h:3 -msgid "Adobe's XML Graphics file format" -msgstr "" - -#: ../share/extensions/svg2xaml.inx.h:1 -msgid "XAML Output" -msgstr "" - -#: ../share/extensions/svg2xaml.inx.h:2 ../share/extensions/xaml2svg.inx.h:2 -msgid "Microsoft XAML (*.xaml)" -msgstr "" - -#: ../share/extensions/svg2xaml.inx.h:3 ../share/extensions/xaml2svg.inx.h:3 -msgid "Microsoft's GUI definition format" -msgstr "" - -#: ../share/extensions/svg_and_media_zip_output.inx.h:1 -msgid "Compressed Inkscape SVG with media export" -msgstr "" - -#: ../share/extensions/svg_and_media_zip_output.inx.h:2 -msgid "Image zip directory:" -msgstr "" - -#: ../share/extensions/svg_and_media_zip_output.inx.h:3 -msgid "Add font list" -msgstr "" - -#: ../share/extensions/svg_and_media_zip_output.inx.h:4 -msgid "Compressed Inkscape SVG with media (*.zip)" -msgstr "" - -#: ../share/extensions/svg_and_media_zip_output.inx.h:5 -msgid "" -"Inkscape's native file format compressed with Zip and including all media " -"files" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:1 -msgid "Calendar" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:3 -msgid "Year (4 digits):" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:4 -msgid "Month (0 for all):" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:5 -msgid "Fill empty day boxes with next month's days" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:6 -msgid "Show week number" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:7 -msgid "Week start day:" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:8 -msgid "Weekend:" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:9 -msgid "Sunday" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:10 -msgid "Monday" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:11 -msgid "Saturday and Sunday" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:12 -msgid "Saturday" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:14 -msgid "Automatically set size and position" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:15 -msgid "Months per line:" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:16 -msgid "Month Width:" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:17 -msgid "Month Margin:" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:18 -msgid "The options below have no influence when the above is checked." -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:20 -msgid "Year color:" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:21 -msgid "Month color:" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:22 -msgid "Weekday name color:" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:23 -msgid "Day color:" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:24 -msgid "Weekend day color:" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:25 -msgid "Next month day color:" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:26 -msgid "Week number color:" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:27 -msgid "Localization" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:28 -msgid "Month names:" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:29 -msgid "Day names:" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:30 -msgid "Week number column name:" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:31 -msgid "Char Encoding:" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:32 -msgid "You may change the names for other languages:" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:33 -msgid "" -"January February March April May June July August September October November " -"December" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:34 -msgid "Sun Mon Tue Wed Thu Fri Sat" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:35 -msgid "The day names list must start from Sunday." -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:36 -msgid "Wk" -msgstr "" - -#: ../share/extensions/svgcalendar.inx.h:37 -msgid "" -"Select your system encoding. More information at http://docs.python.org/" -"library/codecs.html#standard-encodings." -msgstr "" - -#: ../share/extensions/svgfont2layers.inx.h:1 -msgid "Convert SVG Font to Glyph Layers" -msgstr "" - -#: ../share/extensions/svgfont2layers.inx.h:2 -msgid "Load only the first 30 glyphs (Recommended)" -msgstr "" - -#: ../share/extensions/synfig_output.inx.h:1 -msgid "Synfig Output" -msgstr "" - -#: ../share/extensions/synfig_output.inx.h:2 -msgid "Synfig Animation (*.sif)" -msgstr "" - -#: ../share/extensions/synfig_output.inx.h:3 -msgid "Synfig Animation written using the sif-file exporter extension" -msgstr "" - -#: ../share/extensions/text_braille.inx.h:1 -msgid "Convert to Braille" -msgstr "" - -#: ../share/extensions/text_extract.inx.h:1 -msgid "Extract" -msgstr "" - -#: ../share/extensions/text_extract.inx.h:2 -msgid "Text direction:" -msgstr "" - -#: ../share/extensions/text_extract.inx.h:3 -msgid "Left to right" -msgstr "" - -#: ../share/extensions/text_extract.inx.h:4 -msgid "Bottom to top" -msgstr "" - -#: ../share/extensions/text_extract.inx.h:5 -msgid "Right to left" -msgstr "" - -#: ../share/extensions/text_extract.inx.h:6 -msgid "Top to bottom" -msgstr "" - -#: ../share/extensions/text_extract.inx.h:7 -msgid "Horizontal point:" -msgstr "" - -#: ../share/extensions/text_extract.inx.h:11 -msgid "Vertical point:" -msgstr "" - -#: ../share/extensions/text_flipcase.inx.h:1 -msgid "fLIP cASE" -msgstr "" - -#: ../share/extensions/text_flipcase.inx.h:3 -#: ../share/extensions/text_lowercase.inx.h:3 -#: ../share/extensions/text_randomcase.inx.h:3 -#: ../share/extensions/text_sentencecase.inx.h:3 -#: ../share/extensions/text_titlecase.inx.h:3 -#: ../share/extensions/text_uppercase.inx.h:3 -msgid "Change Case" -msgstr "" - -#: ../share/extensions/text_lowercase.inx.h:1 -msgid "lowercase" -msgstr "" - -#: ../share/extensions/text_randomcase.inx.h:1 -msgid "rANdOm CasE" -msgstr "" - -#: ../share/extensions/text_sentencecase.inx.h:1 -msgid "Sentence case" -msgstr "" - -#: ../share/extensions/text_titlecase.inx.h:1 -msgid "Title Case" -msgstr "" - -#: ../share/extensions/text_uppercase.inx.h:1 -msgid "UPPERCASE" -msgstr "" - -#: ../share/extensions/triangle.inx.h:1 -msgid "Triangle" -msgstr "" - -#: ../share/extensions/triangle.inx.h:2 -msgid "Side Length a (px):" -msgstr "" - -#: ../share/extensions/triangle.inx.h:3 -msgid "Side Length b (px):" -msgstr "" - -#: ../share/extensions/triangle.inx.h:4 -msgid "Side Length c (px):" -msgstr "" - -#: ../share/extensions/triangle.inx.h:5 -msgid "Angle a (deg):" -msgstr "" - -#: ../share/extensions/triangle.inx.h:6 -msgid "Angle b (deg):" -msgstr "" - -#: ../share/extensions/triangle.inx.h:7 -msgid "Angle c (deg):" -msgstr "" - -#: ../share/extensions/triangle.inx.h:9 -msgid "From Three Sides" -msgstr "" - -#: ../share/extensions/triangle.inx.h:10 -msgid "From Sides a, b and Angle c" -msgstr "" - -#: ../share/extensions/triangle.inx.h:11 -msgid "From Sides a, b and Angle a" -msgstr "" - -#: ../share/extensions/triangle.inx.h:12 -msgid "From Side a and Angles a, b" -msgstr "" - -#: ../share/extensions/triangle.inx.h:13 -msgid "From Side c and Angles a, b" -msgstr "" - -#: ../share/extensions/txt2svg.inx.h:1 -msgid "Text Input" -msgstr "" - -#: ../share/extensions/txt2svg.inx.h:2 -msgid "Text File (*.txt)" -msgstr "" - -#: ../share/extensions/txt2svg.inx.h:3 -msgid "ASCII Text" -msgstr "" - -#: ../share/extensions/voronoi2svg.inx.h:1 -msgid "Voronoi Diagram" -msgstr "" - -#: ../share/extensions/voronoi2svg.inx.h:3 -msgid "Type of diagram:" -msgstr "" - -#: ../share/extensions/voronoi2svg.inx.h:4 -msgid "Bounding box of the diagram:" -msgstr "" - -#: ../share/extensions/voronoi2svg.inx.h:5 -msgid "Show the bounding box" -msgstr "" - -#: ../share/extensions/voronoi2svg.inx.h:6 -msgid "Delaunay Triangulation" -msgstr "" - -#: ../share/extensions/voronoi2svg.inx.h:7 -msgid "Voronoi and Delaunay" -msgstr "" - -#: ../share/extensions/voronoi2svg.inx.h:8 -msgid "Options for Voronoi diagram" -msgstr "" - -#: ../share/extensions/voronoi2svg.inx.h:10 -msgid "Automatic from selected objects" -msgstr "" - -#: ../share/extensions/voronoi2svg.inx.h:12 -msgid "" -"Select a set of objects. Their centroids will be used as the sites of the " -"Voronoi diagram. Text objects are not handled." -msgstr "" - -#: ../share/extensions/webslicer_create_group.inx.h:1 -msgid "Set a layout group" -msgstr "" - -#: ../share/extensions/webslicer_create_group.inx.h:3 -#: ../share/extensions/webslicer_create_rect.inx.h:18 -msgid "HTML id attribute:" -msgstr "" - -#: ../share/extensions/webslicer_create_group.inx.h:4 -#: ../share/extensions/webslicer_create_rect.inx.h:19 -msgid "HTML class attribute:" -msgstr "" - -#: ../share/extensions/webslicer_create_group.inx.h:5 -msgid "Width unit:" -msgstr "" - -#: ../share/extensions/webslicer_create_group.inx.h:6 -msgid "Height unit:" -msgstr "" - -#: ../share/extensions/webslicer_create_group.inx.h:7 -#: ../share/extensions/webslicer_create_rect.inx.h:9 -msgid "Background color:" -msgstr "" - -#: ../share/extensions/webslicer_create_group.inx.h:8 -msgid "Pixel (fixed)" -msgstr "" - -#: ../share/extensions/webslicer_create_group.inx.h:9 -msgid "Percent (relative to parent size)" -msgstr "" - -#: ../share/extensions/webslicer_create_group.inx.h:10 -msgid "Undefined (relative to non-floating content size)" -msgstr "" - -#: ../share/extensions/webslicer_create_group.inx.h:12 -msgid "" -"Layout Group is only about to help a better code generation (if you need " -"it). To use this, you must to select some \"Slicer rectangles\" first." -msgstr "" - -#: ../share/extensions/webslicer_create_group.inx.h:13 -#: ../share/extensions/webslicer_create_rect.inx.h:41 -#: ../share/extensions/webslicer_export.inx.h:8 -#: ../share/extensions/web-set-att.inx.h:29 -#: ../share/extensions/web-transmit-att.inx.h:27 -msgid "Web" -msgstr "" - -#: ../share/extensions/webslicer_create_group.inx.h:14 -msgid "Slicer" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:1 -msgid "Create a slicer rectangle" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:4 -msgid "DPI:" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:5 -msgid "Force Dimension:" -msgstr "" - -#. i18n. Description duplicated in a fake value attribute in order to make it translatable -#: ../share/extensions/webslicer_create_rect.inx.h:7 -msgid "Force Dimension must be set as x" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:8 -msgid "If set, this will replace DPI." -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:10 -msgid "JPG specific options" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:11 -msgid "Quality:" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:12 -msgid "" -"0 is the lowest image quality and highest compression, and 100 is the best " -"quality but least effective compression" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:13 -msgid "GIF specific options" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:16 -msgid "Palette" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:17 -msgid "Palette size:" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:20 -msgid "Options for HTML export" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:21 -msgid "Layout disposition:" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:22 -msgid "Positioned html block element with the image as Background" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:23 -msgid "Tiled Background (on parent group)" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:24 -msgid "Background — repeat horizontally (on parent group)" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:25 -msgid "Background — repeat vertically (on parent group)" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:26 -msgid "Background — no repeat (on parent group)" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:27 -msgid "Positioned Image" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:28 -msgid "Non Positioned Image" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:29 -msgid "Left Floated Image" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:30 -msgid "Right Floated Image" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:31 -msgid "Position anchor:" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:32 -msgid "Top and Left" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:33 -msgid "Top and Center" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:34 -msgid "Top and right" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:35 -msgid "Middle and Left" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:36 -msgid "Middle and Center" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:37 -msgid "Middle and Right" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:38 -msgid "Bottom and Left" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:39 -msgid "Bottom and Center" -msgstr "" - -#: ../share/extensions/webslicer_create_rect.inx.h:40 -msgid "Bottom and Right" -msgstr "" - -#: ../share/extensions/webslicer_export.inx.h:1 -msgid "Export layout pieces and HTML+CSS code" -msgstr "" - -#: ../share/extensions/webslicer_export.inx.h:3 -msgid "Directory path to export:" -msgstr "" - -#: ../share/extensions/webslicer_export.inx.h:4 -msgid "Create directory, if it does not exists" -msgstr "" - -#: ../share/extensions/webslicer_export.inx.h:5 -msgid "With HTML and CSS" -msgstr "" - -#: ../share/extensions/webslicer_export.inx.h:7 -msgid "" -"All sliced images, and optionally - code, will be generated as you had " -"configured and saved to one directory." -msgstr "" - -#: ../share/extensions/web-set-att.inx.h:1 -msgid "Set Attributes" -msgstr "" - -#: ../share/extensions/web-set-att.inx.h:3 -msgid "Attribute to set:" -msgstr "" - -#: ../share/extensions/web-set-att.inx.h:4 -msgid "When should the set be done:" -msgstr "" - -#: ../share/extensions/web-set-att.inx.h:5 -msgid "Value to set:" -msgstr "" - -#: ../share/extensions/web-set-att.inx.h:6 -#: ../share/extensions/web-transmit-att.inx.h:5 -msgid "Compatibility with previews code to this event:" -msgstr "" - -#: ../share/extensions/web-set-att.inx.h:7 -msgid "Source and destination of setting:" -msgstr "" - -#: ../share/extensions/web-set-att.inx.h:8 -#: ../share/extensions/web-transmit-att.inx.h:7 -msgid "on click" -msgstr "" - -#: ../share/extensions/web-set-att.inx.h:9 -#: ../share/extensions/web-transmit-att.inx.h:8 -msgid "on focus" -msgstr "" - -#: ../share/extensions/web-set-att.inx.h:10 -#: ../share/extensions/web-transmit-att.inx.h:9 -msgid "on blur" -msgstr "" - -#: ../share/extensions/web-set-att.inx.h:11 -#: ../share/extensions/web-transmit-att.inx.h:10 -msgid "on activate" -msgstr "" - -#: ../share/extensions/web-set-att.inx.h:12 -#: ../share/extensions/web-transmit-att.inx.h:11 -msgid "on mouse down" -msgstr "" - -#: ../share/extensions/web-set-att.inx.h:13 -#: ../share/extensions/web-transmit-att.inx.h:12 -msgid "on mouse up" -msgstr "" - -#: ../share/extensions/web-set-att.inx.h:14 -#: ../share/extensions/web-transmit-att.inx.h:13 -msgid "on mouse over" -msgstr "" - -#: ../share/extensions/web-set-att.inx.h:15 -#: ../share/extensions/web-transmit-att.inx.h:14 -msgid "on mouse move" -msgstr "" - -#: ../share/extensions/web-set-att.inx.h:16 -#: ../share/extensions/web-transmit-att.inx.h:15 -msgid "on mouse out" -msgstr "" - -#: ../share/extensions/web-set-att.inx.h:17 -#: ../share/extensions/web-transmit-att.inx.h:16 -msgid "on element loaded" -msgstr "" - -#: ../share/extensions/web-set-att.inx.h:18 -msgid "The list of values must have the same size as the attributes list." -msgstr "" - -#: ../share/extensions/web-set-att.inx.h:19 -#: ../share/extensions/web-transmit-att.inx.h:17 -msgid "Run it after" -msgstr "" - -#: ../share/extensions/web-set-att.inx.h:20 -#: ../share/extensions/web-transmit-att.inx.h:18 -msgid "Run it before" -msgstr "" - -#: ../share/extensions/web-set-att.inx.h:22 -#: ../share/extensions/web-transmit-att.inx.h:20 -msgid "The next parameter is useful when you select more than two elements" -msgstr "" - -#: ../share/extensions/web-set-att.inx.h:23 -msgid "All selected ones set an attribute in the last one" -msgstr "" - -#: ../share/extensions/web-set-att.inx.h:24 -msgid "The first selected sets an attribute in all others" -msgstr "" - -#: ../share/extensions/web-set-att.inx.h:26 -#: ../share/extensions/web-transmit-att.inx.h:24 -msgid "" -"This effect adds a feature visible (or usable) only on a SVG enabled web " -"browser (like Firefox)." -msgstr "" - -#: ../share/extensions/web-set-att.inx.h:27 -msgid "" -"This effect sets one or more attributes in the second selected element, when " -"a defined event occurs on the first selected element." -msgstr "" - -#: ../share/extensions/web-set-att.inx.h:28 -msgid "" -"If you want to set more than one attribute, you must separate this with a " -"space, and only with a space." -msgstr "" - -#: ../share/extensions/web-transmit-att.inx.h:1 -msgid "Transmit Attributes" -msgstr "" - -#: ../share/extensions/web-transmit-att.inx.h:3 -msgid "Attribute to transmit:" -msgstr "" - -#: ../share/extensions/web-transmit-att.inx.h:4 -msgid "When to transmit:" -msgstr "" - -#: ../share/extensions/web-transmit-att.inx.h:6 -msgid "Source and destination of transmitting:" -msgstr "" - -#: ../share/extensions/web-transmit-att.inx.h:21 -msgid "All selected ones transmit to the last one" -msgstr "" - -#: ../share/extensions/web-transmit-att.inx.h:22 -msgid "The first selected transmits to all others" -msgstr "" - -#: ../share/extensions/web-transmit-att.inx.h:25 -msgid "" -"This effect transmits one or more attributes from the first selected element " -"to the second when an event occurs." -msgstr "" - -#: ../share/extensions/web-transmit-att.inx.h:26 -msgid "" -"If you want to transmit more than one attribute, you should separate this " -"with a space, and only with a space." -msgstr "" - -#: ../share/extensions/whirl.inx.h:1 -msgid "Whirl" -msgstr "" - -#: ../share/extensions/whirl.inx.h:2 -msgid "Amount of whirl:" -msgstr "" - -#: ../share/extensions/whirl.inx.h:3 -msgid "Rotation is clockwise" -msgstr "" - -#: ../share/extensions/wireframe_sphere.inx.h:1 -msgid "Wireframe Sphere" -msgstr "" - -#: ../share/extensions/wireframe_sphere.inx.h:2 -msgid "Lines of latitude:" -msgstr "" - -#: ../share/extensions/wireframe_sphere.inx.h:3 -msgid "Lines of longitude:" -msgstr "" - -#: ../share/extensions/wireframe_sphere.inx.h:4 -msgid "Tilt (deg):" -msgstr "" - -#: ../share/extensions/wireframe_sphere.inx.h:7 -msgid "Hide lines behind the sphere" -msgstr "" - -#: ../share/extensions/wmf_input.inx.h:1 -#: ../share/extensions/wmf_output.inx.h:1 -msgid "Windows Metafile Input" -msgstr "" - -#: ../share/extensions/wmf_input.inx.h:2 -#: ../share/extensions/wmf_output.inx.h:2 -msgid "Windows Metafile (*.wmf)" -msgstr "" - -#: ../share/extensions/wmf_input.inx.h:3 -#: ../share/extensions/wmf_output.inx.h:3 -msgid "A popular graphics file format for clipart" -msgstr "" - -#: ../share/extensions/xaml2svg.inx.h:1 -msgid "XAML Input" -msgstr "" diff --git a/src/ui/dialog/template-widget.cpp b/src/ui/dialog/template-widget.cpp index 6ead7ef8d..1e0900a07 100644 --- a/src/ui/dialog/template-widget.cpp +++ b/src/ui/dialog/template-widget.cpp @@ -70,6 +70,7 @@ void TemplateWidget::create() SPDesktop *desc = sp_file_new_default(); _current_template.tpl_effect->effect(desc); DocumentUndo::clearUndo(sp_desktop_document(desc)); + sp_desktop_document(desc)->setModifiedSinceSave(false); } else { sp_file_new(_current_template.path); -- cgit v1.2.3 From 5614df9770b985070122b3c08b45902317c9bd15 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Sun, 15 Sep 2013 19:07:21 -0400 Subject: Enable unit evaluation in toolbars. (bzr r12475.1.22) --- src/ege-adjustment-action.cpp | 28 +++++++++++++++++++++++++--- src/ege-adjustment-action.h | 14 ++++++++++++-- src/ui/widget/spinbutton.cpp | 10 ++++++++-- src/ui/widget/spinbutton.h | 5 +++++ src/widgets/calligraphy-toolbar.cpp | 16 ++++++++-------- src/widgets/connector-toolbar.cpp | 6 +++--- src/widgets/eraser-toolbar.cpp | 2 +- src/widgets/gradient-toolbar.cpp | 5 +++-- src/widgets/mesh-toolbar.cpp | 4 ++-- src/widgets/node-toolbar.cpp | 4 ++-- src/widgets/paintbucket-toolbar.cpp | 4 ++-- src/widgets/pencil-toolbar.cpp | 1 + src/widgets/rect-toolbar.cpp | 8 ++++---- src/widgets/select-toolbar.cpp | 5 +++-- src/widgets/spiral-toolbar.cpp | 2 +- src/widgets/spray-toolbar.cpp | 12 ++++++------ src/widgets/star-toolbar.cpp | 4 ++-- src/widgets/text-toolbar.cpp | 6 ++++++ src/widgets/toolbox.cpp | 6 ++++-- src/widgets/toolbox.h | 5 +++++ src/widgets/tweak-toolbar.cpp | 6 +++--- 21 files changed, 106 insertions(+), 47 deletions(-) diff --git a/src/ege-adjustment-action.cpp b/src/ege-adjustment-action.cpp index 5a827096f..7f844ec4b 100644 --- a/src/ege-adjustment-action.cpp +++ b/src/ege-adjustment-action.cpp @@ -115,6 +115,7 @@ struct _EgeAdjustmentActionPrivate gchar* appearance; gchar* iconId; Inkscape::IconSize iconSize; + Inkscape::UI::Widget::UnitTracker *unitTracker; }; #define EGE_ADJUSTMENT_ACTION_GET_PRIVATE( o ) ( G_TYPE_INSTANCE_GET_PRIVATE( (o), EGE_ADJUSTMENT_ACTION_TYPE, EgeAdjustmentActionPrivate ) ) @@ -128,7 +129,8 @@ enum { PROP_TOOL_POST, PROP_APPEARANCE, PROP_ICON_ID, - PROP_ICON_SIZE + PROP_ICON_SIZE, + PROP_UNIT_TRACKER }; enum { @@ -234,6 +236,13 @@ static void ege_adjustment_action_class_init( EgeAdjustmentActionClass* klass ) (int)Inkscape::ICON_SIZE_SMALL_TOOLBAR, (GParamFlags)(G_PARAM_READABLE | G_PARAM_WRITABLE | G_PARAM_CONSTRUCT) ) ); + g_object_class_install_property( objClass, + PROP_UNIT_TRACKER, + g_param_spec_pointer( "unit_tracker", + "Unit Tracker", + "The widget that keeps track of the unit", + (GParamFlags)(G_PARAM_READABLE | G_PARAM_WRITABLE | G_PARAM_CONSTRUCT) ) ); + g_type_class_add_private( klass, sizeof(EgeAdjustmentActionClass) ); } } @@ -263,6 +272,7 @@ static void ege_adjustment_action_init( EgeAdjustmentAction* action ) action->private_data->appearance = 0; action->private_data->iconId = 0; action->private_data->iconSize = Inkscape::ICON_SIZE_SMALL_TOOLBAR; + action->private_data->unitTracker = NULL; } static void ege_adjustment_action_finalize( GObject* object ) @@ -292,7 +302,8 @@ EgeAdjustmentAction* ege_adjustment_action_new( GtkAdjustment* adjustment, const gchar *tooltip, const gchar *stock_id, gdouble climb_rate, - guint digits ) + guint digits, + Inkscape::UI::Widget::UnitTracker *unit_tracker ) { GObject* obj = (GObject*)g_object_new( EGE_ADJUSTMENT_ACTION_TYPE, "name", name, @@ -302,6 +313,7 @@ EgeAdjustmentAction* ege_adjustment_action_new( GtkAdjustment* adjustment, "adjustment", adjustment, "climb-rate", climb_rate, "digits", digits, + "unit_tracker", unit_tracker, NULL ); EgeAdjustmentAction* action = EGE_ADJUSTMENT_ACTION( obj ); @@ -349,6 +361,10 @@ static void ege_adjustment_action_get_property( GObject* obj, guint propId, GVal g_value_set_int( value, action->private_data->iconSize ); break; + case PROP_UNIT_TRACKER: + g_value_set_pointer( value, action->private_data->unitTracker ); + break; + default: G_OBJECT_WARN_INVALID_PROPERTY_ID( obj, propId, pspec ); } @@ -450,6 +466,12 @@ void ege_adjustment_action_set_property( GObject* obj, guint propId, const GValu } break; + case PROP_UNIT_TRACKER: + { + action->private_data->unitTracker = (Inkscape::UI::Widget::UnitTracker*)g_value_get_pointer( value ); + } + break; + default: G_OBJECT_WARN_INVALID_PROPERTY_ID( obj, propId, pspec ); } @@ -812,7 +834,7 @@ static GtkWidget* create_tool_item( GtkAction* action ) gtk_scale_button_set_icons( GTK_SCALE_BUTTON(spinbutton), floogles ); } else { if ( gFactoryCb ) { - spinbutton = gFactoryCb( act->private_data->adj, act->private_data->climbRate, act->private_data->digits ); + spinbutton = gFactoryCb( act->private_data->adj, act->private_data->climbRate, act->private_data->digits, act->private_data->unitTracker ); } else { spinbutton = gtk_spin_button_new( act->private_data->adj, act->private_data->climbRate, act->private_data->digits ); } diff --git a/src/ege-adjustment-action.h b/src/ege-adjustment-action.h index f63d4ed3e..590035eb3 100644 --- a/src/ege-adjustment-action.h +++ b/src/ege-adjustment-action.h @@ -63,6 +63,14 @@ typedef struct _EgeAdjustmentAction EgeAdjustmentAction; typedef struct _EgeAdjustmentActionClass EgeAdjustmentActionClass; typedef struct _EgeAdjustmentActionPrivate EgeAdjustmentActionPrivate; +namespace Inkscape { + namespace UI { + namespace Widget { + class UnitTracker; + } + } +} + /** * Instance structure of EgeAdjustmentAction. */ @@ -95,7 +103,7 @@ GType ege_adjustment_action_get_type( void ); */ /** Callback type for widgets creation factory */ -typedef GtkWidget* (*EgeCreateAdjWidgetCB)( GtkAdjustment *adjustment, gdouble climb_rate, guint digits ); +typedef GtkWidget* (*EgeCreateAdjWidgetCB)( GtkAdjustment *adjustment, gdouble climb_rate, guint digits, Inkscape::UI::Widget::UnitTracker *unit_tracker ); /** * Sets a factory callback to be used to create the specific widget. @@ -117,6 +125,7 @@ void ege_adjustment_action_set_compact_tool_factory( EgeCreateAdjWidgetCB factor * @param stock_id Icon id to use. * @param climb_rate Used for created widgets. * @param digits Used for created widgets. + * @param unit_tracker Used to store unit. */ EgeAdjustmentAction* ege_adjustment_action_new( GtkAdjustment* adjustment, const gchar *name, @@ -124,7 +133,8 @@ EgeAdjustmentAction* ege_adjustment_action_new( GtkAdjustment* adjustment, const gchar *tooltip, const gchar *stock_id, gdouble climb_rate, - guint digits + guint digits, + Inkscape::UI::Widget::UnitTracker *unit_tracker ); /** * Returns a pointer to the GtkAdjustment represented by the given diff --git a/src/ui/widget/spinbutton.cpp b/src/ui/widget/spinbutton.cpp index c107979a8..2c95e8b5a 100644 --- a/src/ui/widget/spinbutton.cpp +++ b/src/ui/widget/spinbutton.cpp @@ -14,6 +14,7 @@ #include "spinbutton.h" #include "unit-menu.h" +#include "unit-tracker.h" #include "util/expression-evaluator.h" #include "event-context.h" @@ -33,8 +34,13 @@ int SpinButton::on_input(double* newvalue) { try { Inkscape::Util::GimpEevlQuantity result; - if (_unit_menu) { - Unit unit = _unit_menu->getUnit(); + if (_unit_menu || _unit_tracker) { + Unit unit; + if (_unit_menu) { + unit = _unit_menu->getUnit(); + } else { + unit = _unit_tracker->getActiveUnit(); + } result = Inkscape::Util::gimp_eevl_evaluate (get_text().c_str(), &unit); // check if output dimension corresponds to input unit if (result.dimension != (unit.isAbsolute() ? 1 : 0) ) { diff --git a/src/ui/widget/spinbutton.h b/src/ui/widget/spinbutton.h index fe5d699e7..c772fe2a2 100644 --- a/src/ui/widget/spinbutton.h +++ b/src/ui/widget/spinbutton.h @@ -25,6 +25,7 @@ namespace UI { namespace Widget { class UnitMenu; +class UnitTracker; /** * SpinButton widget, that allows entry of simple math expressions (also units, when linked with UnitMenu), @@ -50,14 +51,18 @@ public: _unit_menu(NULL) { connect_signals(); + _unit_tracker = NULL; }; virtual ~SpinButton() {}; void setUnitMenu(UnitMenu* unit_menu) { _unit_menu = unit_menu; }; + + void addUnitTracker(UnitTracker* ut) { _unit_tracker = ut; }; protected: UnitMenu *_unit_menu; /// Linked unit menu for unit conversion in entered expressions. + UnitTracker *_unit_tracker; // Linked unit tracker for unit conversion in entered expressions. void connect_signals(); diff --git a/src/widgets/calligraphy-toolbar.cpp b/src/widgets/calligraphy-toolbar.cpp index 1f91b9fe2..12228ce56 100644 --- a/src/widgets/calligraphy-toolbar.cpp +++ b/src/widgets/calligraphy-toolbar.cpp @@ -450,7 +450,7 @@ void sp_calligraphy_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions GTK_WIDGET(desktop->canvas), holder, TRUE, "altx-calligraphy", 1, 100, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), - sp_ddc_width_value_changed, 1, 0 ); + sp_ddc_width_value_changed, NULL /*unit tracker*/, 1, 0 ); ege_adjustment_action_set_appearance( eact, TOOLBAR_SLIDER_HINT ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); gtk_action_set_sensitive( GTK_ACTION(eact), TRUE ); @@ -467,7 +467,7 @@ void sp_calligraphy_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, -100, 100, 1, 10.0, labels, values, G_N_ELEMENTS(labels), - sp_ddc_velthin_value_changed, 1, 0); + sp_ddc_velthin_value_changed, NULL /*unit tracker*/, 1, 0); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); gtk_action_set_sensitive( GTK_ACTION(eact), TRUE ); } @@ -483,7 +483,7 @@ void sp_calligraphy_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions GTK_WIDGET(desktop->canvas), holder, TRUE, "calligraphy-angle", -90.0, 90.0, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), - sp_ddc_angle_value_changed, 1, 0 ); + sp_ddc_angle_value_changed, NULL /*unit tracker*/, 1, 0 ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); g_object_set_data( holder, "angle_action", eact ); gtk_action_set_sensitive( GTK_ACTION(eact), TRUE ); @@ -501,7 +501,7 @@ void sp_calligraphy_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 0.0, 100, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), - sp_ddc_flatness_value_changed, 1, 0); + sp_ddc_flatness_value_changed, NULL /*unit tracker*/, 1, 0); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); gtk_action_set_sensitive( GTK_ACTION(eact), TRUE ); } @@ -518,7 +518,7 @@ void sp_calligraphy_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 0.0, 5.0, 0.01, 0.1, labels, values, G_N_ELEMENTS(labels), - sp_ddc_cap_rounding_value_changed, 0.01, 2 ); + sp_ddc_cap_rounding_value_changed, NULL /*unit tracker*/, 0.01, 2 ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); gtk_action_set_sensitive( GTK_ACTION(eact), TRUE ); } @@ -534,7 +534,7 @@ void sp_calligraphy_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 0.0, 100, 1, 10.0, labels, values, G_N_ELEMENTS(labels), - sp_ddc_tremor_value_changed, 1, 0); + sp_ddc_tremor_value_changed, NULL /*unit tracker*/, 1, 0); ege_adjustment_action_set_appearance( eact, TOOLBAR_SLIDER_HINT ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); @@ -552,7 +552,7 @@ void sp_calligraphy_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 0.0, 100, 1, 10.0, labels, values, G_N_ELEMENTS(labels), - sp_ddc_wiggle_value_changed, 1, 0); + sp_ddc_wiggle_value_changed, NULL /*unit tracker*/, 1, 0); ege_adjustment_action_set_appearance( eact, TOOLBAR_SLIDER_HINT ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); gtk_action_set_sensitive( GTK_ACTION(eact), TRUE ); @@ -569,7 +569,7 @@ void sp_calligraphy_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 0.0, 100, 1, 10.0, labels, values, G_N_ELEMENTS(labels), - sp_ddc_mass_value_changed, 1, 0); + sp_ddc_mass_value_changed, NULL /*unit tracker*/, 1, 0); ege_adjustment_action_set_appearance( eact, TOOLBAR_SLIDER_HINT ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); gtk_action_set_sensitive( GTK_ACTION(eact), TRUE ); diff --git a/src/widgets/connector-toolbar.cpp b/src/widgets/connector-toolbar.cpp index 54344e446..2e5c2ade1 100644 --- a/src/widgets/connector-toolbar.cpp +++ b/src/widgets/connector-toolbar.cpp @@ -364,7 +364,7 @@ void sp_connector_toolbox_prep( SPDesktop *desktop, GtkActionGroup* mainActions, GTK_WIDGET(desktop->canvas), holder, TRUE, "inkscape:connector-curvature", 0, 100, 1.0, 10.0, 0, 0, 0, - connector_curvature_changed, 1, 0 ); + connector_curvature_changed, NULL /*unit tracker*/, 1, 0 ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); // Spacing spinbox @@ -375,7 +375,7 @@ void sp_connector_toolbox_prep( SPDesktop *desktop, GtkActionGroup* mainActions, GTK_WIDGET(desktop->canvas), holder, TRUE, "inkscape:connector-spacing", 0, 100, 1.0, 10.0, 0, 0, 0, - connector_spacing_changed, 1, 0 ); + connector_spacing_changed, NULL /*unit tracker*/, 1, 0 ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); // Graph (connector network) layout @@ -397,7 +397,7 @@ void sp_connector_toolbox_prep( SPDesktop *desktop, GtkActionGroup* mainActions, GTK_WIDGET(desktop->canvas), holder, TRUE, "inkscape:connector-length", 10, 1000, 10.0, 100.0, 0, 0, 0, - connector_length_changed, 1, 0 ); + connector_length_changed, NULL /*unit tracker*/, 1, 0 ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); diff --git a/src/widgets/eraser-toolbar.cpp b/src/widgets/eraser-toolbar.cpp index 3f5e60780..1af574ed6 100644 --- a/src/widgets/eraser-toolbar.cpp +++ b/src/widgets/eraser-toolbar.cpp @@ -148,7 +148,7 @@ void sp_eraser_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GOb GTK_WIDGET(desktop->canvas), holder, TRUE, "altx-eraser", 1, 100, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), - sp_erc_width_value_changed, 1, 0); + sp_erc_width_value_changed, NULL /*unit tracker*/, 1, 0); ege_adjustment_action_set_appearance( eact, TOOLBAR_SLIDER_HINT ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); gtk_action_set_sensitive( GTK_ACTION(eact), TRUE ); diff --git a/src/widgets/gradient-toolbar.cpp b/src/widgets/gradient-toolbar.cpp index c1eb13ceb..05a8b8b1c 100644 --- a/src/widgets/gradient-toolbar.cpp +++ b/src/widgets/gradient-toolbar.cpp @@ -1174,8 +1174,9 @@ void sp_gradient_toolbox_prep(SPDesktop * desktop, GtkActionGroup* mainActions, GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 0.0, 1.0, 0.01, 0.1, 0, 0, 0, - gr_stop_offset_adjustment_changed - , 0.01, 2, 1.0); + gr_stop_offset_adjustment_changed, + NULL /*unit tracker*/, + 0.01, 2, 1.0); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); g_object_set_data( holder, "offset_action", eact ); diff --git a/src/widgets/mesh-toolbar.cpp b/src/widgets/mesh-toolbar.cpp index 37763ab34..582243870 100644 --- a/src/widgets/mesh-toolbar.cpp +++ b/src/widgets/mesh-toolbar.cpp @@ -265,7 +265,7 @@ void sp_mesh_toolbox_prep(SPDesktop * desktop, GtkActionGroup* mainActions, GObj GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 1, 20, 1, 1, labels, values, G_N_ELEMENTS(labels), - ms_row_changed, + ms_row_changed, NULL /*unit tracker*/, 1.0, 0 ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); gtk_action_set_sensitive( GTK_ACTION(eact), TRUE ); @@ -281,7 +281,7 @@ void sp_mesh_toolbox_prep(SPDesktop * desktop, GtkActionGroup* mainActions, GObj GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 1, 20, 1, 1, labels, values, G_N_ELEMENTS(labels), - ms_col_changed, + ms_col_changed, NULL /*unit tracker*/, 1.0, 0 ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); gtk_action_set_sensitive( GTK_ACTION(eact), TRUE ); diff --git a/src/widgets/node-toolbar.cpp b/src/widgets/node-toolbar.cpp index a9e298f1d..c3e5b22ce 100644 --- a/src/widgets/node-toolbar.cpp +++ b/src/widgets/node-toolbar.cpp @@ -595,7 +595,7 @@ void sp_node_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje GTK_WIDGET(desktop->canvas), holder, TRUE, "altx-nodes", -1e6, 1e6, SPIN_STEP, SPIN_PAGE_STEP, labels, values, G_N_ELEMENTS(labels), - sp_node_path_x_value_changed ); + sp_node_path_x_value_changed, tracker ); tracker->addAdjustment( ege_adjustment_action_get_adjustment(eact) ); g_object_set_data( holder, "nodes_x_action", eact ); gtk_action_set_sensitive( GTK_ACTION(eact), FALSE ); @@ -613,7 +613,7 @@ void sp_node_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, -1e6, 1e6, SPIN_STEP, SPIN_PAGE_STEP, labels, values, G_N_ELEMENTS(labels), - sp_node_path_y_value_changed ); + sp_node_path_y_value_changed, tracker ); tracker->addAdjustment( ege_adjustment_action_get_adjustment(eact) ); g_object_set_data( holder, "nodes_y_action", eact ); gtk_action_set_sensitive( GTK_ACTION(eact), FALSE ); diff --git a/src/widgets/paintbucket-toolbar.cpp b/src/widgets/paintbucket-toolbar.cpp index 7c23379cd..7ab3bed0a 100644 --- a/src/widgets/paintbucket-toolbar.cpp +++ b/src/widgets/paintbucket-toolbar.cpp @@ -168,7 +168,7 @@ void sp_paintbucket_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions "/tools/paintbucket/threshold", 5, GTK_WIDGET(desktop->canvas), holder, TRUE, "inkscape:paintbucket-threshold", 0, 100.0, 1.0, 10.0, 0, 0, 0, - paintbucket_threshold_changed, 1, 0 ); + paintbucket_threshold_changed, NULL /*unit tracker*/, 1, 0 ); ege_adjustment_action_set_appearance( eact, TOOLBAR_SLIDER_HINT ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); @@ -196,7 +196,7 @@ void sp_paintbucket_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions "/tools/paintbucket/offset", 0, GTK_WIDGET(desktop->canvas), holder, TRUE, "inkscape:paintbucket-offset", -1e4, 1e4, 0.1, 0.5, 0, 0, 0, - paintbucket_offset_changed, 1, 2); + paintbucket_offset_changed, tracker, 1, 2); tracker->addAdjustment( ege_adjustment_action_get_adjustment(eact) ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); diff --git a/src/widgets/pencil-toolbar.cpp b/src/widgets/pencil-toolbar.cpp index 851ad7134..f112a35fa 100644 --- a/src/widgets/pencil-toolbar.cpp +++ b/src/widgets/pencil-toolbar.cpp @@ -307,6 +307,7 @@ void sp_pencil_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GOb 1, 100.0, 0.5, 1.0, labels, values, G_N_ELEMENTS(labels), sp_pencil_tb_tolerance_value_changed, + NULL /*unit tracker*/, 1, 2); ege_adjustment_action_set_appearance( eact, TOOLBAR_SLIDER_HINT ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); diff --git a/src/widgets/rect-toolbar.cpp b/src/widgets/rect-toolbar.cpp index 6dfd9cfcb..a830329cd 100644 --- a/src/widgets/rect-toolbar.cpp +++ b/src/widgets/rect-toolbar.cpp @@ -319,7 +319,7 @@ void sp_rect_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje GTK_WIDGET(desktop->canvas), holder, TRUE, "altx-rect", 0, 1e6, SPIN_STEP, SPIN_PAGE_STEP, labels, values, G_N_ELEMENTS(labels), - sp_rtb_width_value_changed ); + sp_rtb_width_value_changed, tracker); tracker->addAdjustment( ege_adjustment_action_get_adjustment(eact) ); g_object_set_data( holder, "width_action", eact ); gtk_action_set_sensitive( GTK_ACTION(eact), FALSE ); @@ -336,7 +336,7 @@ void sp_rect_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 0, 1e6, SPIN_STEP, SPIN_PAGE_STEP, labels, values, G_N_ELEMENTS(labels), - sp_rtb_height_value_changed ); + sp_rtb_height_value_changed, tracker); tracker->addAdjustment( ege_adjustment_action_get_adjustment(eact) ); g_object_set_data( holder, "height_action", eact ); gtk_action_set_sensitive( GTK_ACTION(eact), FALSE ); @@ -353,7 +353,7 @@ void sp_rect_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 0, 1e6, SPIN_STEP, SPIN_PAGE_STEP, labels, values, G_N_ELEMENTS(labels), - sp_rtb_rx_value_changed); + sp_rtb_rx_value_changed, tracker); tracker->addAdjustment( ege_adjustment_action_get_adjustment(eact) ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); } @@ -368,7 +368,7 @@ void sp_rect_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 0, 1e6, SPIN_STEP, SPIN_PAGE_STEP, labels, values, G_N_ELEMENTS(labels), - sp_rtb_ry_value_changed); + sp_rtb_ry_value_changed, tracker); tracker->addAdjustment( ege_adjustment_action_get_adjustment(eact) ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); } diff --git a/src/widgets/select-toolbar.cpp b/src/widgets/select-toolbar.cpp index e4a5a2905..590b0867f 100644 --- a/src/widgets/select-toolbar.cpp +++ b/src/widgets/select-toolbar.cpp @@ -273,7 +273,7 @@ sp_object_layout_any_value_changed(GtkAdjustment *adj, SPWidget *spw) g_object_set_data(G_OBJECT(spw), "update", GINT_TO_POINTER(FALSE)); } -static GtkWidget* createCustomSlider( GtkAdjustment *adjustment, gdouble climbRate, guint digits ) +static GtkWidget* createCustomSlider( GtkAdjustment *adjustment, gdouble climbRate, guint digits, Inkscape::UI::Widget::UnitTracker *unit_tracker ) { #if WITH_GTKMM_3_0 Glib::RefPtr adj = Glib::wrap(adjustment, true); @@ -281,6 +281,7 @@ static GtkWidget* createCustomSlider( GtkAdjustment *adjustment, gdouble climbRa #else Inkscape::UI::Widget::SpinButton *inkSpinner = new Inkscape::UI::Widget::SpinButton(*Glib::wrap(adjustment, true), climbRate, digits); #endif + inkSpinner->addUnitTracker(unit_tracker); inkSpinner = Gtk::manage( inkSpinner ); GtkWidget *widget = GTK_WIDGET( inkSpinner->gobj() ); return widget; @@ -313,7 +314,7 @@ static EgeAdjustmentAction * create_adjustment_action( gchar const *name, g_object_set_data( G_OBJECT(spw), data, adj ); } - EgeAdjustmentAction* act = ege_adjustment_action_new( adj, name, Q_(label), tooltip, 0, SPIN_STEP, 3 ); + EgeAdjustmentAction* act = ege_adjustment_action_new( adj, name, Q_(label), tooltip, 0, SPIN_STEP, 3, tracker ); if ( shortLabel ) { g_object_set( act, "short_label", Q_(shortLabel), NULL ); } diff --git a/src/widgets/spiral-toolbar.cpp b/src/widgets/spiral-toolbar.cpp index cccaf5154..b4e8e68a7 100644 --- a/src/widgets/spiral-toolbar.cpp +++ b/src/widgets/spiral-toolbar.cpp @@ -262,7 +262,7 @@ void sp_spiral_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GOb GTK_WIDGET(desktop->canvas), holder, TRUE, "altx-spiral", 0.01, 1024.0, 0.1, 1.0, labels, values, G_N_ELEMENTS(labels), - sp_spl_tb_revolution_value_changed, 1, 2); + sp_spl_tb_revolution_value_changed, NULL /*unit tracker*/, 1, 2); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); } diff --git a/src/widgets/spray-toolbar.cpp b/src/widgets/spray-toolbar.cpp index fe221f695..247df53e2 100644 --- a/src/widgets/spray-toolbar.cpp +++ b/src/widgets/spray-toolbar.cpp @@ -130,7 +130,7 @@ void sp_spray_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObj GTK_WIDGET(desktop->canvas), holder, TRUE, "altx-spray", 1, 100, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), - sp_spray_width_value_changed, 1, 0 ); + sp_spray_width_value_changed, NULL /*unit tracker*/, 1, 0 ); ege_adjustment_action_set_appearance( eact, TOOLBAR_SLIDER_HINT ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); gtk_action_set_sensitive( GTK_ACTION(eact), TRUE ); @@ -146,7 +146,7 @@ void sp_spray_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObj GTK_WIDGET(desktop->canvas), holder, TRUE, "spray-mean", 0, 100, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), - sp_spray_mean_value_changed, 1, 0 ); + sp_spray_mean_value_changed, NULL /*unit tracker*/, 1, 0 ); ege_adjustment_action_set_appearance( eact, TOOLBAR_SLIDER_HINT ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); gtk_action_set_sensitive( GTK_ACTION(eact), TRUE ); @@ -162,7 +162,7 @@ void sp_spray_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObj GTK_WIDGET(desktop->canvas), holder, TRUE, "spray-standard_deviation", 1, 100, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), - sp_spray_standard_deviation_value_changed, 1, 0 ); + sp_spray_standard_deviation_value_changed, NULL /*unit tracker*/, 1, 0 ); ege_adjustment_action_set_appearance( eact, TOOLBAR_SLIDER_HINT ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); gtk_action_set_sensitive( GTK_ACTION(eact), TRUE ); @@ -223,7 +223,7 @@ void sp_spray_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObj GTK_WIDGET(desktop->canvas), holder, TRUE, "spray-population", 1, 100, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), - sp_spray_population_value_changed, 1, 0 ); + sp_spray_population_value_changed, NULL /*unit tracker*/, 1, 0 ); ege_adjustment_action_set_appearance( eact, TOOLBAR_SLIDER_HINT ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); gtk_action_set_sensitive( GTK_ACTION(eact), TRUE ); @@ -254,7 +254,7 @@ void sp_spray_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObj GTK_WIDGET(desktop->canvas), holder, TRUE, "spray-rotation", 0, 100, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), - sp_spray_rotation_value_changed, 1, 0 ); + sp_spray_rotation_value_changed, NULL /*unit tracker*/, 1, 0 ); ege_adjustment_action_set_appearance( eact, TOOLBAR_SLIDER_HINT ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); gtk_action_set_sensitive( GTK_ACTION(eact), TRUE ); @@ -272,7 +272,7 @@ void sp_spray_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObj GTK_WIDGET(desktop->canvas), holder, TRUE, "spray-scale", 0, 100, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), - sp_spray_scale_value_changed, 1, 0 ); + sp_spray_scale_value_changed, NULL /*unit tracker*/, 1, 0 ); ege_adjustment_action_set_appearance( eact, TOOLBAR_SLIDER_HINT ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); gtk_action_set_sensitive( GTK_ACTION(eact), TRUE ); diff --git a/src/widgets/star-toolbar.cpp b/src/widgets/star-toolbar.cpp index 9f7dd95e0..9e26988ff 100644 --- a/src/widgets/star-toolbar.cpp +++ b/src/widgets/star-toolbar.cpp @@ -504,7 +504,7 @@ void sp_star_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, 3, 1024, 1, 5, labels, values, G_N_ELEMENTS(labels), - sp_stb_magnitude_value_changed, + sp_stb_magnitude_value_changed, NULL /*unit tracker*/, 1.0, 0 ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); gtk_action_set_sensitive( GTK_ACTION(eact), TRUE ); @@ -559,7 +559,7 @@ void sp_star_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje GTK_WIDGET(desktop->canvas), holder, FALSE, NULL, -10.0, 10.0, 0.001, 0.01, labels, values, G_N_ELEMENTS(labels), - sp_stb_randomized_value_changed, 0.1, 3 ); + sp_stb_randomized_value_changed, NULL /*unit tracker*/, 0.1, 3 ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); gtk_action_set_sensitive( GTK_ACTION(eact), TRUE ); } diff --git a/src/widgets/text-toolbar.cpp b/src/widgets/text-toolbar.cpp index 7554f4faf..6b9fc900c 100644 --- a/src/widgets/text-toolbar.cpp +++ b/src/widgets/text-toolbar.cpp @@ -1459,6 +1459,7 @@ void sp_text_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje 0.0, 10.0, 0.01, 0.10, /* lower, upper, step (arrow up/down), page up/down */ labels, values, G_N_ELEMENTS(labels), /* drop down menu */ sp_text_lineheight_value_changed, /* callback */ + NULL, /* unit tracker */ 0.1, /* step (used?) */ 2, /* digits to show */ 1.0 /* factor (multiplies default) */ @@ -1489,6 +1490,7 @@ void sp_text_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje -100.0, 100.0, 0.01, 0.10, /* lower, upper, step (arrow up/down), page up/down */ labels, values, G_N_ELEMENTS(labels), /* drop down menu */ sp_text_wordspacing_value_changed, /* callback */ + NULL, /* unit tracker */ 0.1, /* step (used?) */ 2, /* digits to show */ 1.0 /* factor (multiplies default) */ @@ -1519,6 +1521,7 @@ void sp_text_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje -100.0, 100.0, 0.01, 0.10, /* lower, upper, step (arrow up/down), page up/down */ labels, values, G_N_ELEMENTS(labels), /* drop down menu */ sp_text_letterspacing_value_changed, /* callback */ + NULL, /* unit tracker */ 0.1, /* step (used?) */ 2, /* digits to show */ 1.0 /* factor (multiplies default) */ @@ -1549,6 +1552,7 @@ void sp_text_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje -100.0, 100.0, 0.01, 0.1, /* lower, upper, step (arrow up/down), page up/down */ labels, values, G_N_ELEMENTS(labels), /* drop down menu */ sp_text_dx_value_changed, /* callback */ + NULL, /* unit tracker */ 0.1, /* step (used?) */ 2, /* digits to show */ 1.0 /* factor (multiplies default) */ @@ -1579,6 +1583,7 @@ void sp_text_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje -100.0, 100.0, 0.01, 0.1, /* lower, upper, step (arrow up/down), page up/down */ labels, values, G_N_ELEMENTS(labels), /* drop down menu */ sp_text_dy_value_changed, /* callback */ + NULL, /* unit tracker */ 0.1, /* step (used?) */ 2, /* digits to show */ 1.0 /* factor (multiplies default) */ @@ -1609,6 +1614,7 @@ void sp_text_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObje -180.0, 180.0, 0.1, 1.0, /* lower, upper, step (arrow up/down), page up/down */ labels, values, G_N_ELEMENTS(labels), /* drop down menu */ sp_text_rotation_value_changed, /* callback */ + NULL, /* unit tracker */ 0.1, /* step (used?) */ 2, /* digits to show */ 1.0 /* factor (multiplies default) */ diff --git a/src/widgets/toolbox.cpp b/src/widgets/toolbox.cpp index f3a83e84a..f4ec80f4e 100644 --- a/src/widgets/toolbox.cpp +++ b/src/widgets/toolbox.cpp @@ -1010,7 +1010,7 @@ GtkWidget *ToolboxFactory::createSnapToolbox() return toolboxNewCommon( tb, BAR_SNAP, GTK_POS_LEFT ); } -static GtkWidget* createCustomSlider( GtkAdjustment *adjustment, gdouble climbRate, guint digits ) +static GtkWidget* createCustomSlider( GtkAdjustment *adjustment, gdouble climbRate, guint digits, Inkscape::UI::Widget::UnitTracker *unit_tracker) { #if WITH_GTKMM_3_0 Glib::RefPtr adj = Glib::wrap(adjustment, true); @@ -1018,6 +1018,7 @@ static GtkWidget* createCustomSlider( GtkAdjustment *adjustment, gdouble climbRa #else Inkscape::UI::Widget::SpinButton *inkSpinner = new Inkscape::UI::Widget::SpinButton(*Glib::wrap(adjustment, true), climbRate, digits); #endif + inkSpinner->addUnitTracker(unit_tracker); inkSpinner = Gtk::manage( inkSpinner ); GtkWidget *widget = GTK_WIDGET( inkSpinner->gobj() ); return widget; @@ -1032,6 +1033,7 @@ EgeAdjustmentAction * create_adjustment_action( gchar const *name, gdouble lower, gdouble upper, gdouble step, gdouble page, gchar const** descrLabels, gdouble const* descrValues, guint descrCount, void (*callback)(GtkAdjustment *, GObject *), + Inkscape::UI::Widget::UnitTracker *unit_tracker, gdouble climb/* = 0.1*/, guint digits/* = 3*/, double factor/* = 1.0*/ ) { static bool init = false; @@ -1046,7 +1048,7 @@ EgeAdjustmentAction * create_adjustment_action( gchar const *name, g_signal_connect( G_OBJECT(adj), "value-changed", G_CALLBACK(callback), dataKludge ); - EgeAdjustmentAction* act = ege_adjustment_action_new( adj, name, label, tooltip, 0, climb, digits ); + EgeAdjustmentAction* act = ege_adjustment_action_new( adj, name, label, tooltip, 0, climb, digits, unit_tracker ); if ( shortLabel ) { g_object_set( act, "short_label", shortLabel, NULL ); } diff --git a/src/widgets/toolbox.h b/src/widgets/toolbox.h index 197f0fb5e..98cb7342e 100644 --- a/src/widgets/toolbox.h +++ b/src/widgets/toolbox.h @@ -28,6 +28,10 @@ struct SPEventContext; namespace Inkscape { namespace UI { +namespace Widget { + class UnitTracker; +} + /** * Main toolbox source. */ @@ -123,6 +127,7 @@ void delete_connection(GObject * /*obj*/, sigc::connection *connection); gdouble lower, gdouble upper, gdouble step, gdouble page, gchar const** descrLabels, gdouble const* descrValues, guint descrCount, void (*callback)(GtkAdjustment *, GObject *), + Inkscape::UI::Widget::UnitTracker *unit_tracker = NULL, gdouble climb = 0.1, guint digits = 3, double factor = 1.0 ); #endif /* !SEEN_TOOLBOX_H */ diff --git a/src/widgets/tweak-toolbar.cpp b/src/widgets/tweak-toolbar.cpp index d5fe67ef7..6da7608bd 100644 --- a/src/widgets/tweak-toolbar.cpp +++ b/src/widgets/tweak-toolbar.cpp @@ -144,7 +144,7 @@ void sp_tweak_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObj GTK_WIDGET(desktop->canvas), holder, TRUE, "altx-tweak", 1, 100, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), - sp_tweak_width_value_changed, 0.01, 0, 100 ); + sp_tweak_width_value_changed, NULL /*unit tracker*/, 0.01, 0, 100 ); ege_adjustment_action_set_appearance( eact, TOOLBAR_SLIDER_HINT ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); gtk_action_set_sensitive( GTK_ACTION(eact), TRUE ); @@ -161,7 +161,7 @@ void sp_tweak_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObj GTK_WIDGET(desktop->canvas), holder, TRUE, "tweak-force", 1, 100, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), - sp_tweak_force_value_changed, 0.01, 0, 100 ); + sp_tweak_force_value_changed, NULL /*unit tracker*/, 0.01, 0, 100 ); ege_adjustment_action_set_appearance( eact, TOOLBAR_SLIDER_HINT ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); gtk_action_set_sensitive( GTK_ACTION(eact), TRUE ); @@ -370,7 +370,7 @@ void sp_tweak_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObj GTK_WIDGET(desktop->canvas), holder, TRUE, "tweak-fidelity", 1, 100, 1.0, 10.0, labels, values, G_N_ELEMENTS(labels), - sp_tweak_fidelity_value_changed, 0.01, 0, 100 ); + sp_tweak_fidelity_value_changed, NULL /*unit tracker*/, 0.01, 0, 100 ); gtk_action_group_add_action( mainActions, GTK_ACTION(eact) ); gtk_action_set_sensitive( GTK_ACTION(eact), TRUE ); if (mode == TWEAK_MODE_COLORPAINT || mode == TWEAK_MODE_COLORJITTER) { -- cgit v1.2.3 From f55a53ef2d861b634ad83622edc5e26430baeae0 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Sun, 15 Sep 2013 23:59:14 -0400 Subject: C++ify expression evaluator. (bzr r12475.1.23) --- src/ui/widget/spinbutton.cpp | 8 +- src/util/expression-evaluator.cpp | 647 +++++++++++++++----------------------- src/util/expression-evaluator.h | 86 ++++- src/util/units.cpp | 1 + 4 files changed, 323 insertions(+), 419 deletions(-) diff --git a/src/ui/widget/spinbutton.cpp b/src/ui/widget/spinbutton.cpp index 2c95e8b5a..62c17f821 100644 --- a/src/ui/widget/spinbutton.cpp +++ b/src/ui/widget/spinbutton.cpp @@ -33,7 +33,7 @@ SpinButton::connect_signals() { int SpinButton::on_input(double* newvalue) { try { - Inkscape::Util::GimpEevlQuantity result; + Inkscape::Util::EvaluatorQuantity result; if (_unit_menu || _unit_tracker) { Unit unit; if (_unit_menu) { @@ -41,13 +41,15 @@ int SpinButton::on_input(double* newvalue) } else { unit = _unit_tracker->getActiveUnit(); } - result = Inkscape::Util::gimp_eevl_evaluate (get_text().c_str(), &unit); + Inkscape::Util::ExpressionEvaluator eval = Inkscape::Util::ExpressionEvaluator(get_text().c_str(), &unit); + result = eval.evaluate(); // check if output dimension corresponds to input unit if (result.dimension != (unit.isAbsolute() ? 1 : 0) ) { throw Inkscape::Util::EvaluatorException("Input dimensions do not match with parameter dimensions.",""); } } else { - result = Inkscape::Util::gimp_eevl_evaluate (get_text().c_str(), NULL); + Inkscape::Util::ExpressionEvaluator eval = Inkscape::Util::ExpressionEvaluator(get_text().c_str(), NULL); + result = eval.evaluate(); } *newvalue = result.value; diff --git a/src/util/expression-evaluator.cpp b/src/util/expression-evaluator.cpp index dc59c67f4..2e2ec02f1 100644 --- a/src/util/expression-evaluator.cpp +++ b/src/util/expression-evaluator.cpp @@ -6,6 +6,7 @@ * Copyright (C) 2008 Martin Nordholts * Modified for Inkscape by Johan Engelen * Copyright (C) 2011 Johan Engelen + * Copyright (C) 2013 Matthew Petroff * * This library is free software: you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -34,106 +35,28 @@ using Inkscape::Util::unit_table; namespace Inkscape { namespace Util { -enum +EvaluatorQuantity::EvaluatorQuantity(double value, unsigned int dimension) : + value(value), + dimension(dimension) { - GIMP_EEVL_TOKEN_NUM = 30000, - GIMP_EEVL_TOKEN_IDENTIFIER = 30001, - - GIMP_EEVL_TOKEN_ANY = 40000, - - GIMP_EEVL_TOKEN_END = 50000 -}; - -typedef int GimpEevlTokenType; - - -typedef struct -{ - GimpEevlTokenType type; - - union - { - gdouble fl; - - struct - { - const gchar *c; - gint size; - }; - - } value; - -} GimpEevlToken; +} -typedef struct +EvaluatorToken::EvaluatorToken() { - const gchar *string; - GimpEevlUnitResolverProc unit_resolver_proc; - Unit *unit; - - GimpEevlToken current_token; - const gchar *start_of_current_token; -} GimpEevl; + type = 0; + value.fl = 0; +} -/** Unit Resolver... - */ -static bool unitresolverproc (const gchar* identifier, GimpEevlQuantity *result, Unit* unit) +ExpressionEvaluator::ExpressionEvaluator(const char *string, Unit *unit) : + string(string), + unit(unit) { - if (!unit) { - result->value = 1; - result->dimension = 1; - return true; - }else if (!identifier) { - result->value = 1; - result->dimension = unit->isAbsolute() ? 1 : 0; - return true; - } else if (unit_table.hasUnit(identifier)) { - Unit identifier_unit = unit_table.getUnit(identifier); - - // Catch the case of zero or negative unit factors (error!) - if (identifier_unit.factor < 0.0000001) { - return false; - } - - result->value = unit->factor / identifier_unit.factor; - result->dimension = identifier_unit.isAbsolute() ? 1 : 0; - return true; - } else { - return false; - } + current_token.type = TOKEN_END; + + // Preload symbol + parseNextToken(); } -static void gimp_eevl_init (GimpEevl *eva, - const gchar *string, - GimpEevlUnitResolverProc unit_resolver_proc, - Unit *unit); -static GimpEevlQuantity gimp_eevl_complete (GimpEevl *eva); -static GimpEevlQuantity gimp_eevl_expression (GimpEevl *eva); -static GimpEevlQuantity gimp_eevl_term (GimpEevl *eva); -static GimpEevlQuantity gimp_eevl_signed_factor (GimpEevl *eva); -static GimpEevlQuantity gimp_eevl_factor (GimpEevl *eva); -static gboolean gimp_eevl_accept (GimpEevl *eva, - GimpEevlTokenType token_type, - GimpEevlToken *consumed_token); -static void gimp_eevl_lex (GimpEevl *eva); -static void gimp_eevl_lex_accept_count (GimpEevl *eva, - gint count, - GimpEevlTokenType token_type); -static void gimp_eevl_lex_accept_to (GimpEevl *eva, - gchar *to, - GimpEevlTokenType token_type); -static void gimp_eevl_move_past_whitespace (GimpEevl *eva); -static gboolean gimp_eevl_unit_identifier_start (gunichar c); -static gboolean gimp_eevl_unit_identifier_continue (gunichar c); -static gint gimp_eevl_unit_identifier_size (const gchar *s, - gint start); -static void gimp_eevl_expect (GimpEevl *eva, - GimpEevlTokenType token_type, - GimpEevlToken *value); -static void gimp_eevl_error (GimpEevl *eva, - const char *msg); - - /** * Evaluates the given arithmetic expression, along with an optional dimension * analysis, and basic unit conversions. @@ -142,387 +65,309 @@ static void gimp_eevl_error (GimpEevl * @param unit_resolver_proc Unit resolver callback. * * All units conversions factors are relative to some implicit - * base-unit (which in GIMP is inches). This is also the unit of the - * returned value. + * base-unit. This is also the unit of the returned value. * - * Returns: A #GimpEevlQuantity with a value given in the base unit along with - * the order of the dimension (i.e. if the base unit is inches, a dimension - * order of two menas in^2). + * Returns: An EvaluatorQuantity with a value given in the base unit along with + * the order of the dimension (e.g. if the base unit is inches, a dimension + * order of two means in^2). * * @return Result of evaluation. * @throws Inkscape::Util::EvaluatorException There was a parse error. **/ -GimpEevlQuantity -gimp_eevl_evaluate (const gchar* string, Unit* unit) +EvaluatorQuantity ExpressionEvaluator::evaluate() { - if (! g_utf8_validate (string, -1, NULL)) { + if (!g_utf8_validate(string, -1, NULL)) { throw EvaluatorException("Invalid UTF8 string", NULL); } - - GimpEevl eva; - gimp_eevl_init (&eva, string, unitresolverproc, unit); - - return gimp_eevl_complete(&eva); -} - -static void -gimp_eevl_init (GimpEevl *eva, - const gchar *string, - GimpEevlUnitResolverProc unit_resolver_proc, - Unit *unit) -{ - eva->string = string; - eva->unit_resolver_proc = unit_resolver_proc; - eva->unit = unit; - - eva->current_token.type = GIMP_EEVL_TOKEN_END; - - /* Preload symbol... */ - gimp_eevl_lex (eva); -} - -static GimpEevlQuantity -gimp_eevl_complete (GimpEevl *eva) -{ - GimpEevlQuantity result = {0, 0}; - GimpEevlQuantity default_unit_factor; - - /* Empty expression evaluates to 0 */ - if (gimp_eevl_accept (eva, GIMP_EEVL_TOKEN_END, NULL)) - return result; - - result = gimp_eevl_expression (eva); - - /* There should be nothing left to parse by now */ - gimp_eevl_expect (eva, GIMP_EEVL_TOKEN_END, 0); - - eva->unit_resolver_proc (NULL, &default_unit_factor, eva->unit); - - /* Entire expression is dimensionless, apply default unit if - * applicable - */ - if (result.dimension == 0 && default_unit_factor.dimension != 0) - { - result.value /= default_unit_factor.value; - result.dimension = default_unit_factor.dimension; + + EvaluatorQuantity result = EvaluatorQuantity(); + EvaluatorQuantity default_unit_factor; + + // Empty expression evaluates to 0 + if (acceptToken(TOKEN_END, NULL)) { + return result; + } + + result = evaluateExpression(); + + // There should be nothing left to parse by now + isExpected(TOKEN_END, 0); + + resolveUnit(NULL, &default_unit_factor, unit); + + // Entire expression is dimensionless, apply default unit if applicable + if ( result.dimension == 0 && default_unit_factor.dimension != 0 ) { + result.value /= default_unit_factor.value; + result.dimension = default_unit_factor.dimension; } - return result; + return result; } -static GimpEevlQuantity -gimp_eevl_expression (GimpEevl *eva) +EvaluatorQuantity ExpressionEvaluator::evaluateExpression() { - gboolean subtract; - GimpEevlQuantity evaluated_terms; - - evaluated_terms = gimp_eevl_term (eva); - - /* continue evaluating terms, chained with + or -. */ - for (subtract = FALSE; - gimp_eevl_accept (eva, '+', NULL) || - (subtract = gimp_eevl_accept (eva, '-', NULL)); - subtract = FALSE) + bool subtract; + EvaluatorQuantity evaluated_terms; + + evaluated_terms = evaluateTerm(); + + // Continue evaluating terms, chained with + or -. + for (subtract = FALSE; + acceptToken('+', NULL) || (subtract = acceptToken('-', NULL)); + subtract = FALSE) { - GimpEevlQuantity new_term = gimp_eevl_term (eva); - - /* If dimensions missmatch, attempt default unit assignent */ - if (new_term.dimension != evaluated_terms.dimension) - { - GimpEevlQuantity default_unit_factor; - - eva->unit_resolver_proc (NULL, - &default_unit_factor, - eva->unit); - - if (new_term.dimension == 0 && - evaluated_terms.dimension == default_unit_factor.dimension) + EvaluatorQuantity new_term = evaluateTerm(); + + // If dimensions missmatch, attempt default unit assignent + if ( new_term.dimension != evaluated_terms.dimension ) { + EvaluatorQuantity default_unit_factor; + + resolveUnit(NULL, &default_unit_factor, unit); + + if ( new_term.dimension == 0 + && evaluated_terms.dimension == default_unit_factor.dimension ) { - new_term.value /= default_unit_factor.value; - new_term.dimension = default_unit_factor.dimension; - } - else if (evaluated_terms.dimension == 0 && - new_term.dimension == default_unit_factor.dimension) - { - evaluated_terms.value /= default_unit_factor.value; - evaluated_terms.dimension = default_unit_factor.dimension; - } - else + new_term.value /= default_unit_factor.value; + new_term.dimension = default_unit_factor.dimension; + } else if ( evaluated_terms.dimension == 0 + && new_term.dimension == default_unit_factor.dimension ) { - gimp_eevl_error (eva, "Dimension missmatch during addition"); + evaluated_terms.value /= default_unit_factor.value; + evaluated_terms.dimension = default_unit_factor.dimension; + } else { + throwError("Dimension missmatch during addition"); } } - - evaluated_terms.value += (subtract ? -new_term.value : new_term.value); + + evaluated_terms.value += (subtract ? -new_term.value : new_term.value); } - - return evaluated_terms; + + return evaluated_terms; } -static GimpEevlQuantity -gimp_eevl_term (GimpEevl *eva) +EvaluatorQuantity ExpressionEvaluator::evaluateTerm() { - gboolean division; - GimpEevlQuantity evaluated_signed_factors; - - evaluated_signed_factors = gimp_eevl_signed_factor (eva); - - for (division = FALSE; - gimp_eevl_accept (eva, '*', NULL) || - (division = gimp_eevl_accept (eva, '/', NULL)); - division = FALSE) + bool division; + EvaluatorQuantity evaluated_signed_factors; + + evaluated_signed_factors = evaluateSignedFactor(); + + for ( division = FALSE; + acceptToken('*', NULL) || (division = acceptToken ('/', NULL)); + division = FALSE ) { - GimpEevlQuantity new_signed_factor = gimp_eevl_signed_factor (eva); - - if (division) - { - evaluated_signed_factors.value /= new_signed_factor.value; - evaluated_signed_factors.dimension -= new_signed_factor.dimension; - - } - else - { - evaluated_signed_factors.value *= new_signed_factor.value; - evaluated_signed_factors.dimension += new_signed_factor.dimension; + EvaluatorQuantity new_signed_factor = evaluateSignedFactor(); + + if (division) { + evaluated_signed_factors.value /= new_signed_factor.value; + evaluated_signed_factors.dimension -= new_signed_factor.dimension; + } else { + evaluated_signed_factors.value *= new_signed_factor.value; + evaluated_signed_factors.dimension += new_signed_factor.dimension; } } - - return evaluated_signed_factors; + + return evaluated_signed_factors; } -static GimpEevlQuantity -gimp_eevl_signed_factor (GimpEevl *eva) +EvaluatorQuantity ExpressionEvaluator::evaluateSignedFactor() { - GimpEevlQuantity result; - gboolean negate = FALSE; - - if (! gimp_eevl_accept (eva, '+', NULL)) - negate = gimp_eevl_accept (eva, '-', NULL); - - result = gimp_eevl_factor (eva); - - if (negate) result.value = -result.value; - - return result; + EvaluatorQuantity result; + bool negate = FALSE; + + if (!acceptToken('+', NULL)) { + negate = acceptToken ('-', NULL); + } + + result = evaluateFactor(); + + if (negate) { + result.value = -result.value; + } + + return result; } -static GimpEevlQuantity -gimp_eevl_factor (GimpEevl *eva) +EvaluatorQuantity ExpressionEvaluator::evaluateFactor() { - GimpEevlQuantity evaluated_factor = { 0, 0 }; - GimpEevlToken consumed_token; - - if (gimp_eevl_accept (eva, - GIMP_EEVL_TOKEN_NUM, - &consumed_token)) - { - evaluated_factor.value = consumed_token.value.fl; - } - else if (gimp_eevl_accept (eva, '(', NULL)) - { - evaluated_factor = gimp_eevl_expression (eva); - gimp_eevl_expect (eva, ')', 0); - } - else - { - gimp_eevl_error (eva, "Expected number or '('"); + EvaluatorQuantity evaluated_factor = EvaluatorQuantity(); + EvaluatorToken consumed_token = EvaluatorToken(); + + if (acceptToken(TOKEN_NUM, &consumed_token)) { + evaluated_factor.value = consumed_token.value.fl; + } else if (acceptToken('(', NULL)) { + evaluated_factor = evaluateExpression(); + isExpected(')', 0); + } else { + throwError("Expected number or '('"); } - - if (eva->current_token.type == GIMP_EEVL_TOKEN_IDENTIFIER) - { - gchar *identifier; - GimpEevlQuantity result; - - gimp_eevl_accept (eva, - GIMP_EEVL_TOKEN_ANY, - &consumed_token); - - identifier = g_newa (gchar, consumed_token.value.size + 1); - - strncpy (identifier, consumed_token.value.c, consumed_token.value.size); - identifier[consumed_token.value.size] = '\0'; - - if (eva->unit_resolver_proc (identifier, - &result, - eva->unit)) - { - evaluated_factor.value /= result.value; - evaluated_factor.dimension += result.dimension; - } - else - { - gimp_eevl_error (eva, "Unit was not resolved"); + + if ( current_token.type == TOKEN_IDENTIFIER ) { + char *identifier; + EvaluatorQuantity result; + + acceptToken(TOKEN_ANY, &consumed_token); + + identifier = g_newa(char, consumed_token.value.size + 1); + + strncpy(identifier, consumed_token.value.c, consumed_token.value.size); + identifier[consumed_token.value.size] = '\0'; + + if (resolveUnit(identifier, &result, unit)) { + evaluated_factor.value /= result.value; + evaluated_factor.dimension += result.dimension; + } else { + throwError("Unit was not resolved"); } } - - return evaluated_factor; + + return evaluated_factor; } -static gboolean -gimp_eevl_accept (GimpEevl *eva, - GimpEevlTokenType token_type, - GimpEevlToken *consumed_token) +bool ExpressionEvaluator::acceptToken(TokenType token_type, + EvaluatorToken *consumed_token) { - gboolean existed = FALSE; - - if (token_type == eva->current_token.type || - token_type == GIMP_EEVL_TOKEN_ANY) - { - existed = TRUE; - - if (consumed_token) - *consumed_token = eva->current_token; - - /* Parse next token */ - gimp_eevl_lex (eva); + bool existed = FALSE; + + if ( token_type == current_token.type || token_type == TOKEN_ANY ) { + existed = TRUE; + + if (consumed_token) { + *consumed_token = current_token; + } + + // Parse next token + parseNextToken(); } - - return existed; + + return existed; } -static void -gimp_eevl_lex (GimpEevl *eva) +void ExpressionEvaluator::parseNextToken() { - const gchar *s; - - gimp_eevl_move_past_whitespace (eva); - s = eva->string; - eva->start_of_current_token = s; - - if (! s || s[0] == '\0') - { - /* We're all done */ - eva->current_token.type = GIMP_EEVL_TOKEN_END; - } - else if (s[0] == '+' || s[0] == '-') - { - /* Snatch these before the g_strtod() does, othewise they might - * be used in a numeric conversion. - */ - gimp_eevl_lex_accept_count (eva, 1, s[0]); - } - else + const char *s; - { - /* Attempt to parse a numeric value */ - gchar *endptr = NULL; - gdouble value = g_strtod (s, &endptr); - - if (endptr && endptr != s) - { - /* A numeric could be parsed, use it */ - eva->current_token.value.fl = value; - - gimp_eevl_lex_accept_to (eva, endptr, GIMP_EEVL_TOKEN_NUM); - } - else if (gimp_eevl_unit_identifier_start (s[0])) - { - /* Unit identifier */ - eva->current_token.value.c = s; - eva->current_token.value.size = gimp_eevl_unit_identifier_size (s, 0); - - gimp_eevl_lex_accept_count (eva, - eva->current_token.value.size, - GIMP_EEVL_TOKEN_IDENTIFIER); - } - else - { - /* Everything else is a single character token */ - gimp_eevl_lex_accept_count (eva, 1, s[0]); + movePastWhiteSpace(); + s = string; + start_of_current_token = s; + + if ( !s || s[0] == '\0' ) { + // We're all done + current_token.type = TOKEN_END; + } else if ( s[0] == '+' || s[0] == '-' ) { + // Snatch these before the g_strtod() does, othewise they might + // be used in a numeric conversion. + acceptTokenCount(1, s[0]); + } else { + // Attempt to parse a numeric value + char *endptr = NULL; + gdouble value = g_strtod(s, &endptr); + + if ( endptr && endptr != s ) { + // A numeric could be parsed, use it + current_token.value.fl = value; + + current_token.type = TOKEN_NUM; + string = endptr; + } else if (isUnitIdentifierStart(s[0])) { + // Unit identifier + current_token.value.c = s; + current_token.value.size = getIdentifierSize(s, 0); + + acceptTokenCount(current_token.value.size, TOKEN_IDENTIFIER); + } else { + // Everything else is a single character token + acceptTokenCount(1, s[0]); } } } -static void -gimp_eevl_lex_accept_count (GimpEevl *eva, - gint count, - GimpEevlTokenType token_type) -{ - eva->current_token.type = token_type; - eva->string += count; -} - -static void -gimp_eevl_lex_accept_to (GimpEevl *eva, - gchar *to, - GimpEevlTokenType token_type) +void ExpressionEvaluator::acceptTokenCount (int count, TokenType token_type) { - eva->current_token.type = token_type; - eva->string = to; + current_token.type = token_type; + string += count; } -static void -gimp_eevl_move_past_whitespace (GimpEevl *eva) +void ExpressionEvaluator::isExpected(TokenType token_type, + EvaluatorToken *value) { - if (! eva->string) - return; - - while (g_ascii_isspace (*eva->string)) - eva->string++; + if (!acceptToken(token_type, value)) { + throwError("Unexpected token"); + } } -static gboolean -gimp_eevl_unit_identifier_start (gunichar c) +void ExpressionEvaluator::movePastWhiteSpace() { - return (g_unichar_isalpha (c) || - c == (gunichar) '%' || - c == (gunichar) '\''); + if (!string) { + return; + } + + while (g_ascii_isspace(*string)) { + string++; + } } -static gboolean -gimp_eevl_unit_identifier_continue (gunichar c) +bool ExpressionEvaluator::isUnitIdentifierStart(gunichar c) { - return (gimp_eevl_unit_identifier_start (c) || - g_unichar_isdigit (c)); + return (g_unichar_isalpha (c) + || c == (gunichar) '%' + || c == (gunichar) '\''); } /** - * gimp_eevl_unit_identifier_size: + * getIdentifierSize: * @s: * @start: * * Returns: Size of identifier in bytes (not including NULL * terminator). **/ -static gint -gimp_eevl_unit_identifier_size (const gchar *string, - gint start_offset) +int ExpressionEvaluator::getIdentifierSize(const char *string, int start_offset) { - const gchar *start = g_utf8_offset_to_pointer (string, start_offset); - const gchar *s = start; - gunichar c = g_utf8_get_char (s); - gint length = 0; - - if (gimp_eevl_unit_identifier_start (c)) - { - s = g_utf8_next_char (s); - c = g_utf8_get_char (s); - length++; - - while (gimp_eevl_unit_identifier_continue (c)) - { - s = g_utf8_next_char (s); - c = g_utf8_get_char (s); - length++; + const char *start = g_utf8_offset_to_pointer(string, start_offset); + const char *s = start; + gunichar c = g_utf8_get_char(s); + int length = 0; + + if (isUnitIdentifierStart(c)) { + s = g_utf8_next_char (s); + c = g_utf8_get_char (s); + length++; + + while ( isUnitIdentifierStart (c) || g_unichar_isdigit (c) ) { + s = g_utf8_next_char(s); + c = g_utf8_get_char(s); + length++; } } - - return g_utf8_offset_to_pointer (start, length) - start; + + return g_utf8_offset_to_pointer(start, length) - start; } -static void -gimp_eevl_expect (GimpEevl *eva, - GimpEevlTokenType token_type, - GimpEevlToken *value) +bool ExpressionEvaluator::resolveUnit (const char* identifier, + EvaluatorQuantity *result, + Unit* unit) { - if (! gimp_eevl_accept (eva, token_type, value)) - gimp_eevl_error (eva, "Unexpected token"); + if (!unit) { + result->value = 1; + result->dimension = 1; + return true; + }else if (!identifier) { + result->value = 1; + result->dimension = unit->isAbsolute() ? 1 : 0; + return true; + } else if (unit_table.hasUnit(identifier)) { + Unit identifier_unit = unit_table.getUnit(identifier); + result->value = Quantity::convert(1, *unit, identifier_unit); + result->dimension = identifier_unit.isAbsolute() ? 1 : 0; + return true; + } else { + return false; + } } -static void -gimp_eevl_error (GimpEevl *eva, - const char *msg) +void ExpressionEvaluator::throwError(const char *msg) { - throw EvaluatorException(msg, eva->start_of_current_token); + throw EvaluatorException(msg, start_of_current_token); } } // namespace Util diff --git a/src/util/expression-evaluator.h b/src/util/expression-evaluator.h index 4b1065268..b9566e722 100644 --- a/src/util/expression-evaluator.h +++ b/src/util/expression-evaluator.h @@ -6,6 +6,7 @@ * Copyright (C) 2008-2009 Martin Nordholts * Modified for Inkscape by Johan Engelen * Copyright (C) 2011 Johan Engelen + * Copyright (C) 2013 Matthew Petroff * * This library is free software: you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -22,8 +23,8 @@ * . */ -#ifndef SEEN_GIMP_EEVL_H -#define SEEN_GIMP_EEVL_H +#ifndef INKSCAPE_UTIL_EXPRESSION_EVALUATOR_H +#define INKSCAPE_UTIL_EXPRESSION_EVALUATOR_H #include "util/units.h" @@ -79,37 +80,92 @@ namespace Util { class Unit; /** -* GimpEevlQuantity: +* EvaluatorQuantity: * @value: In reference units. -* @dimension: in has a dimension of 1, in^2 has a dimension of 2 etc +* @dimension: mm has a dimension of 1, mm^2 has a dimension of 2, etc. */ -typedef struct +class EvaluatorQuantity { +public: + EvaluatorQuantity(double value = 0, unsigned int dimension = 0); + double value; - gint dimension; -} GimpEevlQuantity; + unsigned int dimension; +}; -typedef bool (* GimpEevlUnitResolverProc) (const gchar *identifier, - GimpEevlQuantity *result, - Unit* unit); +enum { + TOKEN_NUM = 30000, + TOKEN_IDENTIFIER = 30001, + TOKEN_ANY = 40000, + TOKEN_END = 50000 +}; +typedef int TokenType; -GimpEevlQuantity gimp_eevl_evaluate (const gchar* string, Unit* unit = NULL); +class EvaluatorToken +{ +public: + EvaluatorToken(); + + TokenType type; + + union { + double fl; + struct { + const char *c; + int size; + }; + } value; +}; + +class ExpressionEvaluator +{ +public: + ExpressionEvaluator(const char *string, Unit *unit = NULL); + + EvaluatorQuantity evaluate(); + +private: + const char *string; + Unit *unit; + + EvaluatorToken current_token; + const char *start_of_current_token; + + EvaluatorQuantity evaluateExpression(); + EvaluatorQuantity evaluateTerm(); + EvaluatorQuantity evaluateSignedFactor(); + EvaluatorQuantity evaluateFactor(); + + bool acceptToken(TokenType token_type, EvaluatorToken *consumed_token); + void parseNextToken(); + void acceptTokenCount(int count, TokenType token_type); + void isExpected(TokenType token_type, EvaluatorToken *value); + + void movePastWhiteSpace(); + + static bool isUnitIdentifierStart(gunichar c); + static int getIdentifierSize(const char *s, int start); + + static bool resolveUnit(const char *identifier, EvaluatorQuantity *result, Unit *unit); + + void throwError(const char *msg); +}; /** * Special exception class for the expression evaluator. */ class EvaluatorException : public std::exception { public: - EvaluatorException(const char * message, const char *at_position) { + EvaluatorException(const char *message, const char *at_position) { std::ostringstream os; - const char* token = at_position ? at_position : ""; + const char *token = at_position ? at_position : ""; os << "Expression evaluator error: " << message << " at '" << token << "'"; msgstr = os.str(); } virtual ~EvaluatorException() throw() {} // necessary to destroy the string object!!! - virtual const char* what() const throw () { + virtual const char *what() const throw () { return msgstr.c_str(); } protected: @@ -119,4 +175,4 @@ protected: } } -#endif // SEEN_GIMP_EEVL_H +#endif // INKSCAPE_UTIL_EXPRESSION_EVALUATOR_H diff --git a/src/util/units.cpp b/src/util/units.cpp index 414885040..e5c6f74fb 100644 --- a/src/util/units.cpp +++ b/src/util/units.cpp @@ -114,6 +114,7 @@ Unit::Unit(UnitType type, abbr(abbr), description(description) { + g_return_if_fail(factor <= 0); } void Unit::clear() -- cgit v1.2.3 From de24c1cca8315d83f324f1c25c2e95f4b417780b Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Mon, 16 Sep 2013 01:11:56 -0400 Subject: Add exponent to expression evaluator. (bzr r12475.1.25) --- src/util/expression-evaluator.cpp | 44 +++++++++++++++++++++++++++------------ src/util/expression-evaluator.h | 1 + 2 files changed, 32 insertions(+), 13 deletions(-) diff --git a/src/util/expression-evaluator.cpp b/src/util/expression-evaluator.cpp index 2e2ec02f1..2fb57e783 100644 --- a/src/util/expression-evaluator.cpp +++ b/src/util/expression-evaluator.cpp @@ -28,6 +28,7 @@ #include "util/expression-evaluator.h" #include "util/units.h" +#include #include using Inkscape::Util::unit_table; @@ -117,7 +118,7 @@ EvaluatorQuantity ExpressionEvaluator::evaluateExpression() { EvaluatorQuantity new_term = evaluateTerm(); - // If dimensions missmatch, attempt default unit assignent + // If dimensions mismatch, attempt default unit assignent if ( new_term.dimension != evaluated_terms.dimension ) { EvaluatorQuantity default_unit_factor; @@ -134,7 +135,7 @@ EvaluatorQuantity ExpressionEvaluator::evaluateExpression() evaluated_terms.value /= default_unit_factor.value; evaluated_terms.dimension = default_unit_factor.dimension; } else { - throwError("Dimension missmatch during addition"); + throwError("Dimension mismatch during addition"); } } @@ -147,22 +148,39 @@ EvaluatorQuantity ExpressionEvaluator::evaluateExpression() EvaluatorQuantity ExpressionEvaluator::evaluateTerm() { bool division; - EvaluatorQuantity evaluated_signed_factors; + EvaluatorQuantity evaluated_exp_terms = evaluateExpTerm(); - evaluated_signed_factors = evaluateSignedFactor(); - - for ( division = FALSE; - acceptToken('*', NULL) || (division = acceptToken ('/', NULL)); - division = FALSE ) + for ( division = false; + acceptToken('*', NULL) || (division = acceptToken('/', NULL)); + division = false ) { - EvaluatorQuantity new_signed_factor = evaluateSignedFactor(); + EvaluatorQuantity new_exp_term = evaluateExpTerm(); if (division) { - evaluated_signed_factors.value /= new_signed_factor.value; - evaluated_signed_factors.dimension -= new_signed_factor.dimension; + evaluated_exp_terms.value /= new_exp_term.value; + evaluated_exp_terms.dimension -= new_exp_term.dimension; + } else { + evaluated_exp_terms.value *= new_exp_term.value; + evaluated_exp_terms.dimension += new_exp_term.dimension; + } + } + + return evaluated_exp_terms; +} + +EvaluatorQuantity ExpressionEvaluator::evaluateExpTerm() +{ + EvaluatorQuantity evaluated_signed_factors = evaluateSignedFactor(); + + while(acceptToken('^', NULL)) { + EvaluatorQuantity new_signed_factor = evaluateSignedFactor(); + + if (new_signed_factor.dimension == 0) { + evaluated_signed_factors.value = pow(evaluated_signed_factors.value, + new_signed_factor.value); + evaluated_signed_factors.dimension *= new_signed_factor.value; } else { - evaluated_signed_factors.value *= new_signed_factor.value; - evaluated_signed_factors.dimension += new_signed_factor.dimension; + throwError("Unit in exponent"); } } diff --git a/src/util/expression-evaluator.h b/src/util/expression-evaluator.h index b9566e722..69a87eda1 100644 --- a/src/util/expression-evaluator.h +++ b/src/util/expression-evaluator.h @@ -133,6 +133,7 @@ private: EvaluatorQuantity evaluateExpression(); EvaluatorQuantity evaluateTerm(); + EvaluatorQuantity evaluateExpTerm(); EvaluatorQuantity evaluateSignedFactor(); EvaluatorQuantity evaluateFactor(); -- cgit v1.2.3 From abde5067bcfbb4c0e3ba61c6f69db7925f80600a Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Mon, 16 Sep 2013 19:32:58 +0200 Subject: Removed TypeInfo; adjusted Factory to meet code style conventions. (bzr r11608.1.124) --- src/Makefile_insert | 1 - src/document.cpp | 2 +- src/factory.h | 137 ++++++++++++++++++++++++++++++---------------------- src/sp-object.cpp | 4 +- src/sp-tref.cpp | 2 +- src/sp-use.cpp | 2 +- src/type-info.cpp | 49 ------------------- src/type-info.h | 31 ------------ 8 files changed, 84 insertions(+), 144 deletions(-) delete mode 100644 src/type-info.cpp delete mode 100644 src/type-info.h diff --git a/src/Makefile_insert b/src/Makefile_insert index c2ab95300..e719f8894 100644 --- a/src/Makefile_insert +++ b/src/Makefile_insert @@ -243,7 +243,6 @@ ink_common_sources += \ tools-switch.cpp tools-switch.h \ transf_mat_3x4.cpp transf_mat_3x4.h \ tweak-context.h tweak-context.cpp \ - type-info.h type-info.cpp \ unclump.cpp unclump.h \ undo-stack-observer.h \ unicoderange.cpp unicoderange.h \ diff --git a/src/document.cpp b/src/document.cpp index 65c4cb10a..ec831745c 100644 --- a/src/document.cpp +++ b/src/document.cpp @@ -349,7 +349,7 @@ SPDocument *SPDocument::createDoc(Inkscape::XML::Document *rdoc, document->name = g_strdup(name); // Create SPRoot element - const std::string typeString = NodeTraits::getTypeString(*rroot); + const std::string typeString = NodeTraits::get_type_string(*rroot); SPObject* rootObj = SPFactory::instance().createObject(typeString); document->root = dynamic_cast(rootObj); diff --git a/src/factory.h b/src/factory.h index ca90a6e9a..a1df55277 100644 --- a/src/factory.h +++ b/src/factory.h @@ -1,95 +1,116 @@ +/** @file + * Generic Factory + *//* + * Authors: + * Markus Engel + * + * Copyright (C) 2013 Authors + * Released under GNU GPL, read the file 'COPYING' for more information + */ + #ifndef FACTORY_H_SEEN #define FACTORY_H_SEEN #include #include #include +#include "xml/node.h" /** * A simple singleton implementation. */ -template +template struct Singleton { - static T& instance() { - static T inst; - return inst; - } + static T &instance() { + static T inst; + return inst; + } }; namespace FactoryExceptions { - class TypeNotRegistered : public std::exception { - public: - TypeNotRegistered(const std::string& typeString) : std::exception(), typeString(typeString) { - } +class TypeNotRegistered : public std::exception { +public: + TypeNotRegistered(std::string const &type) + : std::exception() + , _type_string(type) { + } - virtual ~TypeNotRegistered() throw() { - } + virtual ~TypeNotRegistered() throw() { + } - const char* what() const throw() { - return typeString.c_str(); - } + char const *what() const throw() { + return _type_string.c_str(); + } - private: - const std::string typeString; - }; -} +private: + std::string const _type_string; +}; +} // namespace FactoryExceptions /** * A Factory for creating objects which can be identified by strings. */ -template +template class Factory { public: - typedef BaseObject* CreateFunction(); + typedef BaseObject *CreateFunction(); - bool registerObject(const std::string& id, CreateFunction* createFunction) { - return this->objectMap.insert(std::make_pair(id, createFunction)).second; - } + bool registerObject(std::string const &id, CreateFunction *creator) { + return this->_object_map.insert(std::make_pair(id, creator)).second; + } - BaseObject* createObject(const std::string& id) const throw(FactoryExceptions::TypeNotRegistered) { - typename std::map::const_iterator it = this->objectMap.find(id); + BaseObject *createObject(std::string const &id) const { + typename std::map::const_iterator it = this->_object_map.find(id); - if (it == this->objectMap.end()) { - throw FactoryExceptions::TypeNotRegistered(id); - } + if (it == this->_object_map.end()) { + throw FactoryExceptions::TypeNotRegistered(id); + } - return it->second(); - } + return it->second(); + } private: - std::map objectMap; + std::map _object_map; }; -#include "xml/node.h" - struct NodeTraits { - static std::string getTypeString(const Inkscape::XML::Node& node) { - std::string name; - - switch (node.type()) { - case Inkscape::XML::TEXT_NODE: - name = "string"; - break; - - case Inkscape::XML::ELEMENT_NODE: { - gchar const* const sptype = node.attribute("sodipodi:type"); - - if (sptype) { - name = sptype; - } else { - name = node.name(); - } - break; - } - default: - name = ""; - break; - } - - return name; - } + static std::string get_type_string(Inkscape::XML::Node const &node) { + std::string name; + + switch (node.type()) { + case Inkscape::XML::TEXT_NODE: + name = "string"; + break; + + case Inkscape::XML::ELEMENT_NODE: { + gchar const *const sptype = node.attribute("sodipodi:type"); + + if (sptype) { + name = sptype; + } else { + name = node.name(); + } + break; + } + default: + name = ""; + break; + } + + return name; + } }; #endif +/* + Local Variables: + mode:c++ + c-file-style:"stroustrup" + c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +)) + indent-tabs-mode:nil + fill-column:99 + End: +*/ +// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 : diff --git a/src/sp-object.cpp b/src/sp-object.cpp index 3dacc8b70..b622d14e9 100644 --- a/src/sp-object.cpp +++ b/src/sp-object.cpp @@ -578,7 +578,7 @@ void SPObject::child_added(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) SPObject* object = this; try { - const std::string typeString = NodeTraits::getTypeString(*child); + const std::string typeString = NodeTraits::get_type_string(*child); SPObject* ochild = SPFactory::instance().createObject(typeString); @@ -645,7 +645,7 @@ void SPObject::build(SPDocument *document, Inkscape::XML::Node *repr) { // } try { - const std::string typeString = NodeTraits::getTypeString(*rchild); + const std::string typeString = NodeTraits::get_type_string(*rchild); SPObject* child = SPFactory::instance().createObject(typeString); diff --git a/src/sp-tref.cpp b/src/sp-tref.cpp index 97c446c33..1872cdf7c 100644 --- a/src/sp-tref.cpp +++ b/src/sp-tref.cpp @@ -405,7 +405,7 @@ void sp_tref_update_text(SPTRef *tref) Inkscape::XML::Document *xml_doc = tref->document->getReprDoc(); Inkscape::XML::Node *newStringRepr = xml_doc->createTextNode(charData.c_str()); - tref->stringChild = SPFactory::instance().createObject(NodeTraits::getTypeString(*newStringRepr)); + tref->stringChild = SPFactory::instance().createObject(NodeTraits::get_type_string(*newStringRepr)); // Add this SPString as a child of the tref tref->attach(tref->stringChild, tref->lastChild()); diff --git a/src/sp-use.cpp b/src/sp-use.cpp index 159660458..0887ab50e 100644 --- a/src/sp-use.cpp +++ b/src/sp-use.cpp @@ -453,7 +453,7 @@ sp_use_href_changed(SPObject */*old_ref*/, SPObject */*ref*/, SPUse *use) // } // } - SPObject* obj = SPFactory::instance().createObject(NodeTraits::getTypeString(*childrepr)); + SPObject* obj = SPFactory::instance().createObject(NodeTraits::get_type_string(*childrepr)); if (SP_IS_ITEM(obj)) { use->child = obj; diff --git a/src/type-info.cpp b/src/type-info.cpp deleted file mode 100644 index dac61e786..000000000 --- a/src/type-info.cpp +++ /dev/null @@ -1,49 +0,0 @@ -#include "type-info.h" - - -TypeInfo::TypeInfo(const std::type_info& type_info) : type_info(&type_info) { -} - -TypeInfo::TypeInfo(const TypeInfo& tinfo) : type_info(tinfo.type_info) { -} - -TypeInfo& TypeInfo::operator=(const TypeInfo& rhs) { - this->type_info = rhs.type_info; - return *this; -} - -bool TypeInfo::before(const TypeInfo& tinfo) const { - return this->type_info->before(*tinfo.type_info); -} - -const char* TypeInfo::name() const { - return this->type_info->name(); -} - -const std::type_info& TypeInfo::get() const { - return *this->type_info; -} - -bool operator==(const TypeInfo& lhs, const TypeInfo& rhs) { - return lhs.get() == rhs.get(); -} - -bool operator!=(const TypeInfo& lhs, const TypeInfo& rhs) { - return !(lhs == rhs); -} - -bool operator<(const TypeInfo& lhs, const TypeInfo& rhs) { - return lhs.before(rhs); -} - -bool operator<=(const TypeInfo& lhs, const TypeInfo& rhs) { - return !(lhs > rhs); -} - -bool operator>(const TypeInfo& lhs, const TypeInfo& rhs) { - return rhs < lhs; -} - -bool operator>=(const TypeInfo& lhs, const TypeInfo& rhs) { - return !(lhs < rhs); -} diff --git a/src/type-info.h b/src/type-info.h deleted file mode 100644 index 3340e08e5..000000000 --- a/src/type-info.h +++ /dev/null @@ -1,31 +0,0 @@ -#pragma once - -#include - -/** - * A wrapper around typeinfo. Inspired by Andrei Alexandrescu's "Modern C++ Design". - * Used as a temporary replacement for glib's type-checking system as long as SPObject - * must not be polymorphic / new objects are instantiated by g_object_new. - */ -class TypeInfo { -public: - TypeInfo(const std::type_info& type_info); - TypeInfo(const TypeInfo& tinfo); - - TypeInfo& operator=(const TypeInfo& tinfo); - - bool before(const TypeInfo& tinfo) const; - const char* name() const; - - const std::type_info& get() const; - -private: - const std::type_info* type_info; -}; - -bool operator==(const TypeInfo& lhs, const TypeInfo& rhs); -bool operator!=(const TypeInfo& lhs, const TypeInfo& rhs); -bool operator<(const TypeInfo& lhs, const TypeInfo& rhs); -bool operator<=(const TypeInfo& lhs, const TypeInfo& rhs); -bool operator>(const TypeInfo& lhs, const TypeInfo& rhs); -bool operator>=(const TypeInfo& lhs, const TypeInfo& rhs); -- cgit v1.2.3 From 7d61a9ad9a59c2b78e9ba391bfab6e09b87de7c1 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Mon, 16 Sep 2013 20:33:53 +0200 Subject: Added gpl notice (bzr r11608.1.125) --- src/sp-factory.h | 21 +++++++++++++++++++++ src/tool-factory.h | 21 +++++++++++++++++++++ 2 files changed, 42 insertions(+) diff --git a/src/sp-factory.h b/src/sp-factory.h index 7a6416cad..0621f77ba 100644 --- a/src/sp-factory.h +++ b/src/sp-factory.h @@ -1,3 +1,13 @@ +/** @file + * Factory for SPObject tree + *//* + * Authors: + * Markus Engel + * + * Copyright (C) 2013 Authors + * Released under GNU GPL, read the file 'COPYING' for more information + */ + #ifndef SP_FACTORY_SEEN #define SP_FACTORY_SEEN @@ -8,3 +18,14 @@ typedef Singleton< Factory > SPFactory; #endif + +/* + Local Variables: + mode:c++ + c-file-style:"stroustrup" + c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +)) + indent-tabs-mode:nil + fill-column:99 + End: +*/ +// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 : diff --git a/src/tool-factory.h b/src/tool-factory.h index 48b277495..d8aeb5f04 100644 --- a/src/tool-factory.h +++ b/src/tool-factory.h @@ -1,3 +1,13 @@ +/** @file + * Factory for SPEventContext tree + *//* + * Authors: + * Markus Engel + * + * Copyright (C) 2013 Authors + * Released under GNU GPL, read the file 'COPYING' for more information + */ + #ifndef TOOL_FACTORY_SEEN #define TOOL_FACTORY_SEEN @@ -8,3 +18,14 @@ typedef Singleton< Factory > ToolFactory; #endif + +/* + Local Variables: + mode:c++ + c-file-style:"stroustrup" + c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +)) + indent-tabs-mode:nil + fill-column:99 + End: +*/ +// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 : -- cgit v1.2.3 From 677d56171814daeffec32f9db135a0585a033f93 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Mon, 16 Sep 2013 15:46:30 -0400 Subject: Fix 3d box document unit change undo bug. (bzr r12475.1.26) --- src/sp-item-group.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/sp-item-group.cpp b/src/sp-item-group.cpp index e355c6cea..2d4c097c8 100644 --- a/src/sp-item-group.cpp +++ b/src/sp-item-group.cpp @@ -601,7 +601,9 @@ void SPGroup::scaleChildItemsRec(Geom::Scale const &sc, Geom::Point const &p) item->removeAttribute("inkscape:connector-type"); } - if ((SP_IS_TEXT_TEXTPATH(item) || SP_IS_FLOWTEXT(item)) && !item->transform.isIdentity()) { + if (SP_IS_PERSP3D(item)) { + persp3d_apply_affine_transformation(SP_PERSP3D(item), final); + } else if ((SP_IS_TEXT_TEXTPATH(item) || SP_IS_FLOWTEXT(item)) && !item->transform.isIdentity()) { // Save and reset current transform Geom::Affine tmp(item->transform); item->transform = Geom::Affine(); -- cgit v1.2.3 From 73b19d666ad7cb32ed829757227d1d7f229714e5 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Mon, 16 Sep 2013 15:58:54 -0400 Subject: Comment clean up. (bzr r12475.1.27) --- src/util/expression-evaluator.cpp | 3 --- src/util/expression-evaluator.h | 29 +++++++++++++++++++++-------- src/util/units.h | 15 +-------------- 3 files changed, 22 insertions(+), 25 deletions(-) diff --git a/src/util/expression-evaluator.cpp b/src/util/expression-evaluator.cpp index 2fb57e783..3b7e77c6c 100644 --- a/src/util/expression-evaluator.cpp +++ b/src/util/expression-evaluator.cpp @@ -62,9 +62,6 @@ ExpressionEvaluator::ExpressionEvaluator(const char *string, Unit *unit) : * Evaluates the given arithmetic expression, along with an optional dimension * analysis, and basic unit conversions. * - * @param string The NULL-terminated string to be evaluated. - * @param unit_resolver_proc Unit resolver callback. - * * All units conversions factors are relative to some implicit * base-unit. This is also the unit of the returned value. * diff --git a/src/util/expression-evaluator.h b/src/util/expression-evaluator.h index 69a87eda1..6412dfea7 100644 --- a/src/util/expression-evaluator.h +++ b/src/util/expression-evaluator.h @@ -34,7 +34,7 @@ /** * @file - * Introducing eevl eva, the evaluator. A straightforward recursive + * Expression evaluator: A straightforward recursive * descent parser, no fuss, no new dependencies. The lexer is hand * coded, tedious, not extremely fast but works. It evaluates the * expression as it goes along, and does not create a parse tree or @@ -44,8 +44,8 @@ * * It relies on external unit resolving through a callback and does * elementary dimensionality constraint check (e.g. "2 mm + 3 px * 4 - * in" is an error, as L + L^2 is a missmatch). It uses g_strtod() for numeric - * conversions and it's non-destructive in terms of the paramters, and + * in" is an error, as L + L^2 is a mismatch). It uses g_strtod() for numeric + * conversions and it's non-destructive in terms of the parameters, and * it's reentrant. * * EBNF: @@ -53,7 +53,9 @@ * expression ::= term { ('+' | '-') term }* | * ; * - * term ::= signed factor { ( '*' | '/' ) signed factor }* ; + * term ::= exponent { ( '*' | '/' ) exponent }* ; + * + * exponent ::= signed factor { '^' signed factor }* ; * * signed factor ::= ( '+' | '-' )? factor ; * @@ -80,10 +82,10 @@ namespace Util { class Unit; /** -* EvaluatorQuantity: -* @value: In reference units. -* @dimension: mm has a dimension of 1, mm^2 has a dimension of 2, etc. -*/ + * EvaluatorQuantity: + * @param value In reference units. + * @param dimension mm has a dimension of 1, mm^2 has a dimension of 2, etc. + */ class EvaluatorQuantity { public: @@ -93,6 +95,9 @@ public: unsigned int dimension; }; +/** + * TokenType + */ enum { TOKEN_NUM = 30000, TOKEN_IDENTIFIER = 30001, @@ -101,6 +106,9 @@ enum { }; typedef int TokenType; +/** + * EvaluatorToken + */ class EvaluatorToken { public: @@ -117,6 +125,11 @@ public: } value; }; +/** + * ExpressionEvaluator + * @param string NULL terminated input string to evaluate + * @param unit Unit output should be in + */ class ExpressionEvaluator { public: diff --git a/src/util/units.h b/src/util/units.h index 44333fae2..7ba6e1e86 100644 --- a/src/util/units.h +++ b/src/util/units.h @@ -1,5 +1,6 @@ /* * Inkscape Units + * These classes are used for defining different unit systems. * * Authors: * Matthew Petroff @@ -9,20 +10,6 @@ * Released under GNU GPL, read the file 'COPYING' for more information */ -/* -This is a rough draft of a global 'units' thingee, to allow dialogs and -the ruler to share info about unit systems... Dunno if this is the -right kind of object though, so we may have to redo this or shift things -around later when it becomes clearer what we need. - -This object is used for defining different unit systems. - -This is intended to eventually replace inkscape/helper/units.*. - -Need to review the Units support that's in Gtkmm already... - -*/ - #ifndef INKSCAPE_UTIL_UNITS_H #define INKSCAPE_UTIL_UNITS_H -- cgit v1.2.3 From 9395aebf3ad8f461c7ab2642a810a872d22cdeea Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Mon, 16 Sep 2013 19:16:21 -0400 Subject: Fix bug in rectangle toolbar. (bzr r12475.1.28) --- src/widgets/rect-toolbar.cpp | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/widgets/rect-toolbar.cpp b/src/widgets/rect-toolbar.cpp index a830329cd..d67c4fc2f 100644 --- a/src/widgets/rect-toolbar.cpp +++ b/src/widgets/rect-toolbar.cpp @@ -115,7 +115,7 @@ static void sp_rtb_value_changed(GtkAdjustment *adj, GObject *tbl, gchar const * if (SP_IS_RECT(items->data)) { if (gtk_adjustment_get_value(adj) != 0) { setter(SP_RECT(items->data), - Quantity::convert(gtk_adjustment_get_value(adj), unit, "px")); + Quantity::convert(gtk_adjustment_get_value(adj), unit, *sp_desktop_namedview(desktop)->doc_units)); } else { SP_OBJECT(items->data)->getRepr()->setAttribute(value_name, NULL); } @@ -187,31 +187,32 @@ static void rect_tb_event_attr_changed(Inkscape::XML::Node * /*repr*/, gchar con UnitTracker* tracker = reinterpret_cast( g_object_get_data( tbl, "tracker" ) ); Unit const unit = tracker->getActiveUnit(); + Unit const doc_unit = *sp_desktop_namedview(SP_ACTIVE_DESKTOP)->doc_units; gpointer item = g_object_get_data( tbl, "item" ); if (item && SP_IS_RECT(item)) { { GtkAdjustment *adj = GTK_ADJUSTMENT( g_object_get_data( tbl, "rx" ) ); gdouble rx = sp_rect_get_visible_rx(SP_RECT(item)); - gtk_adjustment_set_value(adj, Quantity::convert(rx, "px", unit)); + gtk_adjustment_set_value(adj, Quantity::convert(rx, doc_unit, unit)); } { GtkAdjustment *adj = GTK_ADJUSTMENT( g_object_get_data( tbl, "ry" ) ); gdouble ry = sp_rect_get_visible_ry(SP_RECT(item)); - gtk_adjustment_set_value(adj, Quantity::convert(ry, "px", unit)); + gtk_adjustment_set_value(adj, Quantity::convert(ry, doc_unit, unit)); } { GtkAdjustment *adj = GTK_ADJUSTMENT( g_object_get_data( tbl, "width" ) ); gdouble width = sp_rect_get_visible_width (SP_RECT(item)); - gtk_adjustment_set_value(adj, Quantity::convert(width, "px", unit)); + gtk_adjustment_set_value(adj, Quantity::convert(width, doc_unit, unit)); } { GtkAdjustment *adj = GTK_ADJUSTMENT( g_object_get_data( tbl, "height" ) ); gdouble height = sp_rect_get_visible_height (SP_RECT(item)); - gtk_adjustment_set_value(adj, Quantity::convert(height, "px", unit)); + gtk_adjustment_set_value(adj, Quantity::convert(height, doc_unit, unit)); } } -- cgit v1.2.3 From 5e05c910c59854938df73ba276b090773e9f6d0c Mon Sep 17 00:00:00 2001 From: Martin Owens Date: Tue, 17 Sep 2013 11:41:39 -0400 Subject: Remove compute drawbox and replace with area_elarge, make sure we use bbox (bzr r12525) --- src/display/drawing-item.cpp | 4 +++- src/display/nr-filter.cpp | 14 -------------- src/display/nr-filter.h | 6 ------ 3 files changed, 3 insertions(+), 21 deletions(-) diff --git a/src/display/drawing-item.cpp b/src/display/drawing-item.cpp index 80664d822..1814dd615 100644 --- a/src/display/drawing-item.cpp +++ b/src/display/drawing-item.cpp @@ -353,7 +353,9 @@ DrawingItem::update(Geom::IntRect const &area, UpdateContext const &ctx, unsigne if (to_update & STATE_BBOX) { // compute drawbox if (_filter && render_filters) { - _drawbox = _filter->compute_drawbox(this, _item_bbox); + Geom::IntRect newbox(*_bbox); + _filter->area_enlarge(newbox, this); + _drawbox = Geom::OptIntRect(newbox); } else { _drawbox = _bbox; } diff --git a/src/display/nr-filter.cpp b/src/display/nr-filter.cpp index f0965c460..4f2a18531 100644 --- a/src/display/nr-filter.cpp +++ b/src/display/nr-filter.cpp @@ -220,20 +220,6 @@ void Filter::area_enlarge(Geom::IntRect &bbox, Inkscape::DrawingItem const *item */ } -Geom::OptIntRect Filter::compute_drawbox(Inkscape::DrawingItem const *item, Geom::OptRect const &item_bbox) { - -// Geom::OptRect enlarged = filter_effect_area(item_bbox); // disabled, already done in visualBounds - Geom::OptRect enlarged = item_bbox; // see LP Bug 1188336 - if (enlarged) { - *enlarged *= item->ctm(); - - Geom::OptIntRect ret(enlarged->roundOutwards()); - return ret; - } else { - return Geom::OptIntRect(); - } -} - Geom::OptRect Filter::filter_effect_area(Geom::OptRect const &bbox) { Geom::Point minp, maxp; diff --git a/src/display/nr-filter.h b/src/display/nr-filter.h index d53005c5d..5df38ffe9 100644 --- a/src/display/nr-filter.h +++ b/src/display/nr-filter.h @@ -150,12 +150,6 @@ public: * drawn correctly. */ void area_enlarge(Geom::IntRect &area, Inkscape::DrawingItem const *item) const; - /** - * Given an item bounding box (in user coords), this function enlarges it - * to contain the filter effects region and transforms it to screen - * coordinates - */ - Geom::OptIntRect compute_drawbox(Inkscape::DrawingItem const *item, Geom::OptRect const &item_bbox); /** * Returns the filter effects area in user coordinate system. * The given bounding box should be a bounding box as specified in -- cgit v1.2.3 From 1d168cda08b9b4bdeaf3ed4cb23760eac560dd20 Mon Sep 17 00:00:00 2001 From: Nicolas Dufour Date: Tue, 17 Sep 2013 18:31:58 +0200 Subject: Fix for Bug #1217602 (Measure Path fails with XML too deep error) by dave m. Fixed bugs: - https://launchpad.net/bugs/1217602 (bzr r12526) --- share/extensions/inkex.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/share/extensions/inkex.py b/share/extensions/inkex.py index c1feba5ae..861cc2300 100755 --- a/share/extensions/inkex.py +++ b/share/extensions/inkex.py @@ -184,7 +184,8 @@ class Effect: stream = open(self.svg_file,'r') except: stream = sys.stdin - self.document = etree.parse(stream) + p = etree.XMLParser(huge_tree=True) + self.document = etree.parse(stream, parser=p) self.original_document = copy.deepcopy(self.document) stream.close() -- cgit v1.2.3 From c549b2977183241cecc95d40839d31d99eb76699 Mon Sep 17 00:00:00 2001 From: Slagvi Public Date: Wed, 18 Sep 2013 17:04:03 +0200 Subject: Fix "default_*" template names treatment. (bzr r12481.1.8) --- src/ui/dialog/template-load-tab.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ui/dialog/template-load-tab.cpp b/src/ui/dialog/template-load-tab.cpp index ababd4ca3..c884df2b1 100644 --- a/src/ui/dialog/template-load-tab.cpp +++ b/src/ui/dialog/template-load-tab.cpp @@ -244,7 +244,7 @@ void TemplateLoadTab::_getTemplatesFromDir(const Glib::ustring &path) Glib::ustring file = Glib::build_filename(path, dir.read_name()); while (file != path){ - if (Glib::str_has_suffix(file, ".svg") && !Glib::str_has_prefix(Glib::path_get_basename(file), "default")){ + if (Glib::str_has_suffix(file, ".svg") && !Glib::str_has_prefix(Glib::path_get_basename(file), "default.")){ TemplateData tmp = _processTemplateFile(file); if (tmp.display_name != "") _tdata[tmp.display_name] = tmp; -- cgit v1.2.3 From 4eb731d194e43b55a97ad1c9d4f5d095d4b759a0 Mon Sep 17 00:00:00 2001 From: Slagvi Public Date: Wed, 18 Sep 2013 17:15:17 +0200 Subject: Opening new documents behaviour fixed. (bzr r12481.1.9) --- src/file.cpp | 25 +++++++++---------------- 1 file changed, 9 insertions(+), 16 deletions(-) diff --git a/src/file.cpp b/src/file.cpp index 68e229e62..12373a2e5 100644 --- a/src/file.cpp +++ b/src/file.cpp @@ -139,24 +139,14 @@ SPDesktop *sp_file_new(const Glib::ustring &templ) } SPDesktop *desktop = SP_ACTIVE_DESKTOP; - if (desktop) { + if (desktop) desktop->setWaitingCursor(); - } - SPDocument *existing = desktop ? sp_desktop_document(desktop) : NULL; - if (existing && existing->virgin) { - // If the current desktop is empty, open the document there - doc->ensureUpToDate(); // TODO this will trigger broken link warnings, etc. - desktop->change_document(doc); - doc->emitResizedSignal(doc->getWidth(), doc->getHeight()); - } else { - // create a whole new desktop and window - SPViewWidget *dtw = sp_desktop_widget_new(sp_document_namedview(doc, NULL)); // TODO this will trigger broken link warnings, etc. - g_return_val_if_fail(dtw != NULL, NULL); - sp_create_window(dtw, TRUE); - desktop = static_cast(dtw->view); - } + SPViewWidget *dtw = sp_desktop_widget_new(sp_document_namedview(doc, NULL)); // TODO this will trigger broken link warnings, etc. + g_return_val_if_fail(dtw != NULL, NULL); + sp_create_window(dtw, TRUE); + desktop = static_cast(dtw->view); doc->doUnref(); @@ -166,6 +156,9 @@ SPDesktop *sp_file_new(const Glib::ustring &templ) #ifdef WITH_DBUS Inkscape::Extension::Dbus::dbus_init_desktop_interface(desktop); #endif + + if (desktop) + desktop->clearWaitingCursor(); return desktop; } @@ -220,7 +213,7 @@ SPDesktop* sp_file_new_default() { Glib::ustring templateUri = sp_file_default_template_uri(); SPDesktop* desk = sp_file_new(sp_file_default_template_uri()); - rdf_add_from_preferences( SP_ACTIVE_DOCUMENT ); + //rdf_add_from_preferences( SP_ACTIVE_DOCUMENT ); return desk; } -- cgit v1.2.3 From cb1fec651ce742c85dc8aaf66874832491b4a09f Mon Sep 17 00:00:00 2001 From: Shlomi Fish Date: Wed, 18 Sep 2013 19:23:13 +0200 Subject: Fix cmake+ninja install (bug #1224543) Fixed bugs: - https://launchpad.net/bugs/1224543 (bzr r12527) --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 86d7060c1..34bbb9a82 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -123,7 +123,7 @@ if(UNIX) install( DIRECTORY ${CMAKE_SOURCE_DIR}/share/attributes - ${CMAKE_SOURCE_DIR}/share/clipart + ${CMAKE_SOURCE_DIR}/share/branding ${CMAKE_SOURCE_DIR}/share/examples ${CMAKE_SOURCE_DIR}/share/extensions ${CMAKE_SOURCE_DIR}/share/filters -- cgit v1.2.3 From 0f85e2c60c4406eaddc7a96d8ddcc05d36d458f2 Mon Sep 17 00:00:00 2001 From: Martin Owens Date: Wed, 18 Sep 2013 14:46:36 -0400 Subject: Remove setItemBounds and _item_bbox because aren't sensible, replace with bbox. Fixed bugs: - https://launchpad.net/bugs/243729 (bzr r12528) --- src/display/drawing-item.cpp | 6 ------ src/display/drawing-item.h | 2 -- src/display/drawing-shape.cpp | 4 ++-- src/display/drawing-text.cpp | 4 ++-- src/display/nr-filter.cpp | 8 ++++---- src/libnrtype/Layout-TNG-Output.cpp | 1 - src/sp-item.cpp | 12 ------------ 7 files changed, 8 insertions(+), 29 deletions(-) diff --git a/src/display/drawing-item.cpp b/src/display/drawing-item.cpp index 1814dd615..097a5fe76 100644 --- a/src/display/drawing-item.cpp +++ b/src/display/drawing-item.cpp @@ -281,12 +281,6 @@ DrawingItem::setZOrder(unsigned z) _markForRendering(); } -void -DrawingItem::setItemBounds(Geom::OptRect const &bounds) -{ - _item_bbox = bounds; -} - /** * Update derived data before operations. * The purpose of this call is to recompute internal data which depends diff --git a/src/display/drawing-item.h b/src/display/drawing-item.h index 4a516512b..650653ce2 100644 --- a/src/display/drawing-item.h +++ b/src/display/drawing-item.h @@ -89,7 +89,6 @@ public: Geom::OptIntRect geometricBounds() const { return _bbox; } Geom::OptIntRect visualBounds() const { return _drawbox; } - Geom::OptRect itemBounds() const { return _item_bbox; } Geom::Affine ctm() const { return _ctm; } Geom::Affine transform() const { return _transform ? *_transform : Geom::identity(); } Drawing &drawing() const { return _drawing; } @@ -175,7 +174,6 @@ protected: Geom::Affine _ctm; ///< Total transform from item coords to display coords Geom::OptIntRect _bbox; ///< Bounding box in display (pixel) coords including stroke Geom::OptIntRect _drawbox; ///< Full visual bounding box - enlarged by filters, shrunk by clips and masks - Geom::OptRect _item_bbox; ///< Geometric bounding box in item coordinates DrawingItem *_clip; DrawingItem *_mask; diff --git a/src/display/drawing-shape.cpp b/src/display/drawing-shape.cpp index e80f12486..e689d0755 100644 --- a/src/display/drawing-shape.cpp +++ b/src/display/drawing-shape.cpp @@ -179,8 +179,8 @@ DrawingShape::_renderItem(DrawingContext &ct, Geom::IntRect const &area, unsigne // update fill and stroke paints. // this cannot be done during nr_arena_shape_update, because we need a Cairo context // to render svg:pattern - has_fill = _nrstyle.prepareFill(ct, _item_bbox); - has_stroke = _nrstyle.prepareStroke(ct, _item_bbox); + has_fill = _nrstyle.prepareFill(ct, _bbox); + has_stroke = _nrstyle.prepareStroke(ct, _bbox); has_stroke &= (_nrstyle.stroke_width != 0); if (has_fill || has_stroke) { diff --git a/src/display/drawing-text.cpp b/src/display/drawing-text.cpp index 55d54b770..fa9ce4ff8 100644 --- a/src/display/drawing-text.cpp +++ b/src/display/drawing-text.cpp @@ -398,8 +398,8 @@ unsigned DrawingText::_renderItem(DrawingContext &ct, Geom::IntRect const &/*are using Geom::X; using Geom::Y; - has_fill = _nrstyle.prepareFill( ct, _item_bbox); - has_stroke = _nrstyle.prepareStroke(ct, _item_bbox); + has_fill = _nrstyle.prepareFill( ct, _bbox); + has_stroke = _nrstyle.prepareStroke(ct, _bbox); if (has_fill || has_stroke) { Geom::Affine rotinv; diff --git a/src/display/nr-filter.cpp b/src/display/nr-filter.cpp index 4f2a18531..54bd36168 100644 --- a/src/display/nr-filter.cpp +++ b/src/display/nr-filter.cpp @@ -114,13 +114,13 @@ int Filter::render(Inkscape::DrawingItem const *item, DrawingContext &graphic, D Geom::Affine trans = item->ctm(); -// Geom::OptRect filter_area = filter_effect_area(item->itemBounds()); // disabled, already done in visualBounds - Geom::OptRect filter_area = item->itemBounds(); // see LP Bug 1188336 + // Get filter are, the filter_effect_area is already done in visualBounds + Geom::OptRect filter_area = item->geometricBounds(); if (!filter_area) return 1; FilterUnits units(_filter_units, _primitive_units); units.set_ctm(trans); - units.set_item_bbox(item->itemBounds()); + units.set_item_bbox(item->geometricBounds()); units.set_filter_area(*filter_area); std::pair resolution @@ -200,7 +200,7 @@ void Filter::area_enlarge(Geom::IntRect &bbox, Inkscape::DrawingItem const *item } Geom::Rect item_bbox; - Geom::OptRect maybe_bbox = item->itemBounds(); + Geom::OptRect maybe_bbox = item->geometricBounds(); if (maybe_bbox.isEmpty()) { // Code below needs a bounding box return; diff --git a/src/libnrtype/Layout-TNG-Output.cpp b/src/libnrtype/Layout-TNG-Output.cpp index f7f910c2f..9967ba149 100644 --- a/src/libnrtype/Layout-TNG-Output.cpp +++ b/src/libnrtype/Layout-TNG-Output.cpp @@ -181,7 +181,6 @@ void Layout::show(DrawingGroup *in_arena, Geom::OptRect const &paintbox) const glyph_index++; } nr_text->setStyle(text_source->style); - nr_text->setItemBounds(paintbox); in_arena->prependChild(nr_text); } } diff --git a/src/sp-item.cpp b/src/sp-item.cpp index a4070c9b3..3bcb1f132 100644 --- a/src/sp-item.cpp +++ b/src/sp-item.cpp @@ -644,17 +644,6 @@ sp_item_update(SPObject *object, SPCtx *ctx, guint flags) } } - /* Update bounding box data used by filters */ - if (item->style->filter.set && item->display) { - Geom::OptRect item_bbox = item->visualBounds(); - - SPItemView *itemview = item->display; - do { - if (itemview->arenaitem) - itemview->arenaitem->setItemBounds(item_bbox); - } while ( (itemview = itemview->next) ); - } - // Update libavoid with item geometry (for connector routing). if (item->avoidRef) item->avoidRef->handleSettingChange(); @@ -1093,7 +1082,6 @@ Inkscape::DrawingItem *SPItem::invoke_show(Inkscape::Drawing &drawing, unsigned item_bbox = visualBounds(); } ai->setData(this); - ai->setItemBounds(item_bbox); } return ai; -- cgit v1.2.3 From ddd3d527a7845b8e9d51db00847d1242ce3571cc Mon Sep 17 00:00:00 2001 From: Martin Owens Date: Wed, 18 Sep 2013 14:59:42 -0400 Subject: Merge in David Mathog (mathog) patch for bug #1224486 Fixed bugs: - https://launchpad.net/bugs/1224486 (bzr r12529) --- src/libnrtype/Layout-TNG-Compute.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libnrtype/Layout-TNG-Compute.cpp b/src/libnrtype/Layout-TNG-Compute.cpp index 1b2704a7e..7ea089c93 100644 --- a/src/libnrtype/Layout-TNG-Compute.cpp +++ b/src/libnrtype/Layout-TNG-Compute.cpp @@ -706,7 +706,7 @@ static void dumpUnbrokenSpans(ParagraphInfo *para){ if (newcluster){ // find where the text ends for this log_cluster end_byte = it_span->start.iter_span->text_bytes; // Upper limit - for(unsigned next_glyph_index = glyph_index+1; next_glyph_index < it_span->end_glyph_index; next_glyph_index++){ + for(int next_glyph_index = glyph_index+1; next_glyph_index < unbroken_span.glyph_string->num_glyphs; next_glyph_index++){ if(unbroken_span.glyph_string->glyphs[next_glyph_index].attr.is_cluster_start){ end_byte = unbroken_span.glyph_string->log_clusters[next_glyph_index]; break; -- cgit v1.2.3 From 5101aec2f8093348634b8f636c3aa8bf4a622eb7 Mon Sep 17 00:00:00 2001 From: Martin Owens Date: Wed, 18 Sep 2013 15:16:05 -0400 Subject: Merge in patch for Jabiertxo Arraiza Cenoz in bug lp:1127103 Fixed bugs: - https://launchpad.net/bugs/1127103 (bzr r12530) --- src/filter-chemistry.cpp | 18 ++++++++++++++++++ src/style.cpp | 5 ++++- 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/src/filter-chemistry.cpp b/src/filter-chemistry.cpp index be030e12f..0f9138560 100644 --- a/src/filter-chemistry.cpp +++ b/src/filter-chemistry.cpp @@ -208,6 +208,15 @@ new_filter_gaussian_blur (SPDocument *document, gdouble radius, double expansion set_filter_area(repr, radius, expansion, expansionX, expansionY, width, height); + /* Inkscape now supports both sRGB and linear color-interpolation-filters. + * But, for the moment, keep sRGB as default value for new filters. + * historically set to sRGB and doesn't require conversion between + * filter cairo surfaces and other types of cairo surfaces. lp:1127103 */ + SPCSSAttr *css = sp_repr_css_attr_new(); + sp_repr_css_set_property(css, "color-interpolation-filters", "sRGB"); + sp_repr_css_change(repr, css, "style"); + sp_repr_css_attr_unref(css); + //create feGaussianBlur node Inkscape::XML::Node *b_repr; b_repr = xml_doc->createElement("svg:feGaussianBlur"); @@ -260,6 +269,15 @@ new_filter_blend_gaussian_blur (SPDocument *document, const char *blendmode, gdo repr = xml_doc->createElement("svg:filter"); repr->setAttribute("inkscape:collect", "always"); + /* Inkscape now supports both sRGB and linear color-interpolation-filters. + * But, for the moment, keep sRGB as default value for new filters. + * historically set to sRGB and doesn't require conversion between + * filter cairo surfaces and other types of cairo surfaces. lp:1127103 */ + SPCSSAttr *css = sp_repr_css_attr_new(); + sp_repr_css_set_property(css, "color-interpolation-filters", "sRGB"); + sp_repr_css_change(repr, css, "style"); + sp_repr_css_attr_unref(css); + // Append the new filter node to defs defs->appendChild(repr); Inkscape::GC::release(repr); diff --git a/src/style.cpp b/src/style.cpp index db05a748f..e9cf22891 100644 --- a/src/style.cpp +++ b/src/style.cpp @@ -3170,7 +3170,10 @@ sp_style_clear(SPStyle *style) style->color_interpolation.value = style->color_interpolation.computed = SP_CSS_COLOR_INTERPOLATION_SRGB; style->color_interpolation_filters.set = FALSE; style->color_interpolation_filters.inherit = FALSE; - style->color_interpolation_filters.value = style->color_interpolation_filters.computed = SP_CSS_COLOR_INTERPOLATION_LINEARRGB; + style->color_interpolation_filters.value = style->color_interpolation_filters.computed = SP_CSS_COLOR_INTERPOLATION_SRGB; + //this line changed because rendering issues: Bug lp:1127103 + //style->color_interpolation_filters.value = style->color_interpolation_filters.computed = SP_CSS_COLOR_INTERPOLATION_LINEARRGB; + style->fill.clear(); style->fill.setColor(0.0, 0.0, 0.0); -- cgit v1.2.3 From 083367b313247a4cf0c082fff25e993892dc38d1 Mon Sep 17 00:00:00 2001 From: Krzysztof Kosi??ski Date: Thu, 19 Sep 2013 02:57:10 +0200 Subject: Encapsulate the shared memory hack for Cairo and GdkPixbuf in a class called Inkscape::Pixbuf. Replace usage in the code as appropriate. (bzr r12531) --- src/display/cairo-utils.cpp | 539 ++++++++++++++++++------ src/display/cairo-utils.h | 70 ++- src/display/drawing-image.cpp | 64 +-- src/display/drawing-image.h | 6 +- src/display/nr-filter-image.cpp | 69 ++- src/display/nr-filter-image.h | 6 +- src/extension/internal/cairo-render-context.cpp | 8 +- src/extension/internal/cairo-render-context.h | 6 +- src/extension/internal/cairo-renderer.cpp | 26 +- src/extension/internal/emf-print.cpp | 9 +- src/extension/internal/gdkpixbuf-input.cpp | 20 +- src/extension/internal/metafile-print.cpp | 2 +- src/extension/internal/metafile-print.h | 4 +- src/extension/internal/wmf-print.cpp | 13 +- src/filters/image.cpp | 2 + src/helper/pixbuf-ops.cpp | 19 +- src/helper/pixbuf-ops.h | 3 +- src/selection-chemistry.cpp | 4 +- src/sp-image.cpp | 343 +++------------ src/sp-image.h | 30 +- src/trace/trace.cpp | 25 +- 21 files changed, 689 insertions(+), 579 deletions(-) diff --git a/src/display/cairo-utils.cpp b/src/display/cairo-utils.cpp index 755553033..2c7b543c1 100644 --- a/src/display/cairo-utils.cpp +++ b/src/display/cairo-utils.cpp @@ -15,6 +15,8 @@ #include "display/cairo-utils.h" #include +#include +#include #include <2geom/pathvector.h> #include <2geom/bezier-curve.h> #include <2geom/hvlinesegment.h> @@ -28,6 +30,8 @@ #include "helper/geom-curves.h" #include "display/cairo-templates.h" +static void ink_cairo_pixbuf_cleanup(guchar *, void *); + /** * Key for cairo_surface_t to keep track of current color interpolation value * Only the address of the structure is used, it is never initialized. See: @@ -116,6 +120,380 @@ Cairo::RefPtr CairoContext::create(Cairo::RefPtr c return ret; } + +/* The class below implement the following hack: + * + * The pixels formats of Cairo and GdkPixbuf are different. + * GdkPixbuf accesses pixels as bytes, alpha is not premultiplied, + * and successive bytes of a single pixel contain R, G, B and A components. + * Cairo accesses pixels as 32-bit ints, alpha is premultiplied, + * and each int contains as 0xAARRGGBB, accessed with bitwise operations. + * + * In other words, on a little endian system, a GdkPixbuf will contain: + * char *data = "rgbargbargba...." + * int *data = { 0xAABBGGRR, 0xAABBGGRR, 0xAABBGGRR, ... } + * while a Cairo image surface will contain: + * char *data = "bgrabgrabgra...." + * int *data = { 0xAARRGGBB, 0xAARRGGBB, 0xAARRGGBB, ... } + * + * It is possible to convert between these two formats (almost) losslessly. + * Some color information from partially transparent regions of the image + * is lost, but the result when displaying this image will remain the same. + * + * The class allows interoperation between GdkPixbuf + * and Cairo surfaces without creating a copy of the image. + * This is implemented by creating a GdkPixbuf and a Cairo image surface + * which share their data. Depending on what is needed at a given time, + * the pixels are converted in place to the Cairo or the GdkPixbuf format. + */ + +/** Create a pixbuf from a Cairo surface. + * The constructor takes ownership of the passed surface, + * so it should not be destroyed. */ +Pixbuf::Pixbuf(cairo_surface_t *s) + : _pixbuf(gdk_pixbuf_new_from_data( + cairo_image_surface_get_data(s), GDK_COLORSPACE_RGB, TRUE, 8, + cairo_image_surface_get_width(s), cairo_image_surface_get_height(s), + cairo_image_surface_get_stride(s), NULL, NULL)) + , _surface(s) + , _mod_time(0) + , _pixel_format(PF_CAIRO) + , _cairo_store(true) +{} + +/** Create a pixbuf from a GdkPixbuf. + * The constructor takes ownership of the passed GdkPixbuf reference, + * so it should not be unrefed. */ +Pixbuf::Pixbuf(GdkPixbuf *pb) + : _pixbuf(pb) + , _surface(0) + , _mod_time(0) + , _pixel_format(PF_GDK) + , _cairo_store(false) +{ + _forceAlpha(); + _surface = cairo_image_surface_create_for_data( + gdk_pixbuf_get_pixels(_pixbuf), CAIRO_FORMAT_ARGB32, + gdk_pixbuf_get_width(_pixbuf), gdk_pixbuf_get_height(_pixbuf), gdk_pixbuf_get_rowstride(_pixbuf)); +} + +Pixbuf::Pixbuf(Inkscape::Pixbuf const &other) + : _pixbuf(gdk_pixbuf_copy(other._pixbuf)) + , _surface(cairo_image_surface_create_for_data( + gdk_pixbuf_get_pixels(_pixbuf), CAIRO_FORMAT_ARGB32, + gdk_pixbuf_get_width(_pixbuf), gdk_pixbuf_get_height(_pixbuf), gdk_pixbuf_get_rowstride(_pixbuf))) + , _mod_time(other._mod_time) + , _path(other._path) + , _pixel_format(other._pixel_format) + , _cairo_store(false) +{} + +Pixbuf::~Pixbuf() +{ + if (_cairo_store) { + g_object_unref(_pixbuf); + cairo_surface_destroy(_surface); + } else { + cairo_surface_destroy(_surface); + g_object_unref(_pixbuf); + } +} + +Pixbuf *Pixbuf::create_from_data_uri(gchar const *uri_data) +{ + Pixbuf *pixbuf = NULL; + + bool data_is_image = false; + bool data_is_base64 = false; + + gchar const *data = uri_data; + + while (*data) { + if (strncmp(data,"base64",6) == 0) { + /* base64-encoding */ + data_is_base64 = true; + data_is_image = true; // Illustrator produces embedded images without MIME type, so we assume it's image no matter what + data += 6; + } + else if (strncmp(data,"image/png",9) == 0) { + /* PNG image */ + data_is_image = true; + data += 9; + } + else if (strncmp(data,"image/jpg",9) == 0) { + /* JPEG image */ + data_is_image = true; + data += 9; + } + else if (strncmp(data,"image/jpeg",10) == 0) { + /* JPEG image */ + data_is_image = true; + data += 10; + } + else if (strncmp(data,"image/jp2",9) == 0) { + /* JPEG2000 image */ + data_is_image = true; + data += 9; + } + else { /* unrecognized option; skip it */ + while (*data) { + if (((*data) == ';') || ((*data) == ',')) { + break; + } + data++; + } + } + if ((*data) == ';') { + data++; + continue; + } + if ((*data) == ',') { + data++; + break; + } + } + + if ((*data) && data_is_image && data_is_base64) { + GdkPixbuf *buf = NULL; + GdkPixbufLoader *loader = gdk_pixbuf_loader_new(); + + if (!loader) return NULL; + + gsize decoded_len = 0; + guchar *decoded = g_base64_decode(data, &decoded_len); + + if (gdk_pixbuf_loader_write(loader, decoded, decoded_len, NULL)) { + gdk_pixbuf_loader_close(loader, NULL); + buf = gdk_pixbuf_loader_get_pixbuf(loader); + if (buf) { + g_object_ref(buf); + pixbuf = new Pixbuf(buf); + + GdkPixbufFormat *fmt = gdk_pixbuf_loader_get_format(loader); + gchar *fmt_name = gdk_pixbuf_format_get_name(fmt); + pixbuf->_setMimeData(decoded, decoded_len, fmt_name); + g_free(fmt_name); + } else { + g_free(decoded); + } + } else { + g_free(decoded); + } + g_object_unref(loader); + } + + return pixbuf; +} + +Pixbuf *Pixbuf::create_from_file(std::string const &fn) +{ + Pixbuf *pb = NULL; + // test correctness of filename + if (!g_file_test(fn.c_str(), G_FILE_TEST_EXISTS)) { + return NULL; + } + struct stat stdir; + int val = g_stat(fn.c_str(), &stdir); + if (val == 0 && stdir.st_mode & S_IFDIR){ + return NULL; + } + + // we need to load the entire file into memory, + // since we'll store it as MIME data + gchar *data = NULL; + gsize len = 0; + GError *error; + + if (g_file_get_contents(fn.c_str(), &data, &len, &error)) { + + GdkPixbufLoader *loader = gdk_pixbuf_loader_new(); + gdk_pixbuf_loader_write(loader, (guchar *) data, len, NULL); + gdk_pixbuf_loader_close(loader, NULL); + + GdkPixbuf *buf = gdk_pixbuf_loader_get_pixbuf(loader); + if (buf) { + g_object_ref(buf); + pb = new Pixbuf(buf); + pb->_mod_time = stdir.st_mtime; + pb->_path = fn; + + GdkPixbufFormat *fmt = gdk_pixbuf_loader_get_format(loader); + gchar *fmt_name = gdk_pixbuf_format_get_name(fmt); + pb->_setMimeData((guchar *) data, len, fmt_name); + g_free(fmt_name); + } else { + g_free(data); + } + g_object_unref(loader); + + // TODO: we could also read DPI, ICC profile, gamma correction, and other information + // from the file. This can be done by using format-specific libraries e.g. libpng. + } else { + return NULL; + } + + return pb; +} + +/** + * Converts the pixbuf to GdkPixbuf pixel format. + * The returned pixbuf can be used e.g. in calls to gdk_pixbuf_save(). + */ +GdkPixbuf *Pixbuf::getPixbufRaw(bool convert_format) +{ + if (convert_format) { + ensurePixelFormat(PF_GDK); + } + return _pixbuf; +} + +/** + * Converts the pixbuf to Cairo pixel format and returns an image surface + * which can be used as a source. + * + * The returned surface is owned by the GdkPixbuf and should not be freed. + * Calling this function causes the pixbuf to be unsuitable for use + * with GTK drawing functions until ensurePixelFormat(Pixbuf::PIXEL_FORMAT_PIXBUF) is called. + */ +cairo_surface_t *Pixbuf::getSurfaceRaw(bool convert_format) +{ + if (convert_format) { + ensurePixelFormat(PF_CAIRO); + } + return _surface; +} + +/* Declaring this function in the header requires including , + * which stupidly includes which in turn pulls in . + * However, since glib 2.32, has to be included before + * when compiling with G_DISABLE_DEPRECATED, as we do in non-release builds. + * This necessitates spamming a lot of files with #include + * at the top. + * + * Since we don't really use gdkmm, do not define this function for now. */ + +/* +Glib::RefPtr Pixbuf::getPixbuf(bool convert_format = true) +{ + g_object_ref(_pixbuf); + Glib::RefPtr p(getPixbuf(convert_format)); + return p; +} +*/ + +Cairo::RefPtr Pixbuf::getSurface(bool convert_format) +{ + Cairo::RefPtr p(new Cairo::Surface(getSurfaceRaw(convert_format), false)); + return p; +} + +/** Retrieves the original compressed data for the surface, if any. + * The returned data belongs to the object and should not be freed. */ +guchar const *Pixbuf::getMimeData(gsize &len, std::string &mimetype) const +{ + static gchar const *mimetypes[] = { + CAIRO_MIME_TYPE_JPEG, CAIRO_MIME_TYPE_JP2, CAIRO_MIME_TYPE_PNG, NULL }; + static guint mimetypes_len = g_strv_length(const_cast(mimetypes)); + + guchar const *data = NULL; + + for (guint i = 0; i < mimetypes_len; ++i) { + unsigned long len_long = 0; + cairo_surface_get_mime_data(const_cast(_surface), mimetypes[i], &data, &len); + len = len_long; // this assumes that the added range of long is not needed. the code below assumes gsize range of values is sufficient. + if (data != NULL) { + mimetype = mimetypes[i]; + break; + } + } + + return data; +} + +int Pixbuf::width() const { + return gdk_pixbuf_get_width(const_cast(_pixbuf)); +} +int Pixbuf::height() const { + return gdk_pixbuf_get_height(const_cast(_pixbuf)); +} +int Pixbuf::rowstride() const { + return gdk_pixbuf_get_rowstride(const_cast(_pixbuf)); +} +guchar const *Pixbuf::pixels() const { + return gdk_pixbuf_get_pixels(const_cast(_pixbuf)); +} +guchar *Pixbuf::pixels() { + return gdk_pixbuf_get_pixels(_pixbuf); +} +void Pixbuf::markDirty() { + cairo_surface_mark_dirty(_surface); +} + +void Pixbuf::_forceAlpha() +{ + if (gdk_pixbuf_get_has_alpha(_pixbuf)) return; + + GdkPixbuf *old = _pixbuf; + _pixbuf = gdk_pixbuf_add_alpha(old, FALSE, 0, 0, 0); + g_object_unref(old); +} + +void Pixbuf::_setMimeData(guchar *data, gsize len, Glib::ustring const &format) +{ + gchar const *mimetype = NULL; + + if (format == "jpeg") { + mimetype = CAIRO_MIME_TYPE_JPEG; + } else if (format == "jpeg2000") { + mimetype = CAIRO_MIME_TYPE_JP2; + } else if (format == "png") { + mimetype = CAIRO_MIME_TYPE_PNG; + } + + if (mimetype != NULL) { + cairo_surface_set_mime_data(_surface, mimetype, data, len, g_free, data); + //g_message("Setting Cairo MIME data: %s", mimetype); + } else { + g_free(data); + //g_message("Not setting Cairo MIME data: unknown format %s", name.c_str()); + } +} + +void Pixbuf::ensurePixelFormat(PixelFormat fmt) +{ + if (_pixel_format == PF_GDK) { + if (fmt == PF_GDK) { + return; + } + if (fmt == PF_CAIRO) { + convert_pixels_pixbuf_to_argb32( + gdk_pixbuf_get_pixels(_pixbuf), + gdk_pixbuf_get_width(_pixbuf), + gdk_pixbuf_get_height(_pixbuf), + gdk_pixbuf_get_rowstride(_pixbuf)); + _pixel_format = fmt; + return; + } + g_assert_not_reached(); + } + if (_pixel_format == PF_CAIRO) { + if (fmt == PF_GDK) { + convert_pixels_argb32_to_pixbuf( + gdk_pixbuf_get_pixels(_pixbuf), + gdk_pixbuf_get_width(_pixbuf), + gdk_pixbuf_get_height(_pixbuf), + gdk_pixbuf_get_rowstride(_pixbuf)); + _pixel_format = fmt; + return; + } + if (fmt == PF_CAIRO) { + return; + } + g_assert_not_reached(); + } + g_assert_not_reached(); +} + } // namespace Inkscape /* @@ -371,129 +749,6 @@ ink_cairo_pattern_set_matrix(cairo_pattern_t *cp, Geom::Affine const &m) cairo_pattern_set_matrix(cp, &cm); } -void -ink_cairo_set_source_pixbuf(cairo_t *ct, GdkPixbuf *pb, double x, double y) -{ - cairo_surface_t *pbs = ink_cairo_surface_get_for_pixbuf(pb); - cairo_set_source_surface(ct, pbs, x, y); -} - -/* The functions below implement the following hack: - * - * The pixels formats of Cairo and GdkPixbuf are different. - * GdkPixbuf accesses pixels as bytes, alpha is not premultiplied, - * and successive bytes of a single pixel contain R, G, B and A components. - * Cairo accesses pixels as 32-bit ints, alpha is premultiplied, - * and each int contains as 0xAARRGGBB, accessed with bitwise operations. - * - * In other words, on a little endian system, a GdkPixbuf will contain: - * char *data = "rgbargbargba...." - * int *data = { 0xAABBGGRR, 0xAABBGGRR, 0xAABBGGRR, ... } - * while a Cairo image surface will contain: - * char *data = "bgrabgrabgra...." - * int *data = { 0xAARRGGBB, 0xAARRGGBB, 0xAARRGGBB, ... } - * - * It is possible to convert between these two formats (almost) losslessly. - * Some color information from partially transparent regions of the image - * is lost, but the result when displaying this image will remain the same. - * - * The functions below allow interoperation between GdkPixbuf - * and Cairo surfaces, allowing pixbufs to be used as Cairo sources, - * and saving Cairo surfaces using GdkPixbuf APIs. - * This is implemented by creating a GdkPixbuf and a Cairo image surface - * which share their data. Depending on what is needed at a given time, - * the pixels are converted in place to the Cairo or the GdkPixbuf format. - * In this way, only one copy of the image data is needed. - * - * Given either a GdkPixbuf or a Cairo surface, these functions create - * the other object and convert to its format. The returned object should be - * freed using cairo_surface_destroy or g_object_unref when it's no longer - * needed. - * - * Memory ownership semantics: - * Regardless of whether the pixels are stored in memory originally belonging - * to Cairo surface or to GdkPixbuf, the GdkPixbuf is the master object. - * To free the memory, unref the GdkPixbuf ONLY. - */ - -/** - * Converts the pixbuf to Cairo pixel format and returns an image surface - * which can be used as a source. - * - * The returned surface is owned by the GdkPixbuf and should not be freed. - * Calling this function causes the pixbuf to be unsuitable for use - * with GTK drawing functions until ink_pixbuf_ensure_normal() is called. - * - * @bug You have to call g_object_set_data(G_OBJECT(pb), "cairo_surface", NULL) - * when unrefing the last reference to the pixbuf. Otherwise there will be - * crashes, because cairo_surface_destroy is called after the pixbuf data - * is already freed. - */ -cairo_surface_t * -ink_cairo_surface_get_for_pixbuf(GdkPixbuf *pb) -{ - cairo_surface_t *pbs = - reinterpret_cast(g_object_get_data(G_OBJECT(pb), "cairo_surface")); - - ink_pixbuf_ensure_argb32(pb); - - if (pbs == NULL) { - guchar *data = gdk_pixbuf_get_pixels(pb); - int w = gdk_pixbuf_get_width(pb); - int h = gdk_pixbuf_get_height(pb); - int stride = gdk_pixbuf_get_rowstride(pb); - - // create a surface that stores the data - pbs = cairo_image_surface_create_for_data( - data, CAIRO_FORMAT_ARGB32, w, h, stride); - - g_object_set_data_full(G_OBJECT(pb), "cairo_surface", pbs, (GDestroyNotify) cairo_surface_destroy); - cairo_surface_set_user_data(pbs, &ink_pixbuf_key, pb, NULL); - } - - return pbs; -} - -/** - * Converts the Cairo surface to GdkPixbuf pixel format. - * GdkPixbuf takes ownership of the passed surface reference, - * so it should NOT be freed after calling this function. - */ -GdkPixbuf *ink_pixbuf_create_from_cairo_surface(cairo_surface_t *s) -{ - GdkPixbuf *pb = reinterpret_cast(cairo_surface_get_user_data(s, &ink_pixbuf_key)); - if (pb == NULL) { - pb = gdk_pixbuf_new_from_data( - cairo_image_surface_get_data(s), GDK_COLORSPACE_RGB, TRUE, 8, - cairo_image_surface_get_width(s), cairo_image_surface_get_height(s), - cairo_image_surface_get_stride(s), NULL, NULL); - - g_object_set_data_full(G_OBJECT(pb), "pixel_format", g_strdup("argb32"), g_free); - g_object_set_data_full(G_OBJECT(pb), "cairo_surface", s, (GDestroyNotify) cairo_surface_destroy); - - cairo_surface_set_user_data(s, &ink_pixbuf_key, pb, NULL); - } else { - g_warning("Received surface which is already owned by GdkPixbuf"); - g_object_ref(pb); - } - - ink_pixbuf_ensure_normal(pb); - - return pb; -} - -/** - * Cleanup function for GdkPixbuf. - * This function should be passed as the GdkPixbufDestroyNotify parameter - * to gdk_pixbuf_new_from_data when creating a GdkPixbuf backed by - * a Cairo surface. - */ -void ink_cairo_pixbuf_cleanup(guchar * /*pixels*/, void *data) -{ - cairo_surface_t *surface = reinterpret_cast(data); - cairo_surface_destroy(surface); -} - /** * Create an exact copy of a surface. * Creates a surface that has the same type, content type, dimensions and contents @@ -833,6 +1088,44 @@ ink_cairo_pattern_create_checkerboard() return p; } +/** + * Converts the Cairo surface to a GdkPixbuf pixel format, + * without allocating extra memory. + * + * This function is intended mainly for creating previews displayed by GTK. + * For loading images for display on the canvas, use the Inkscape::Pixbuf object. + * + * The returned GdkPixbuf takes ownership of the passed surface reference, + * so it should NOT be freed after calling this function. + */ +GdkPixbuf *ink_pixbuf_create_from_cairo_surface(cairo_surface_t *s) +{ + guchar *pixels = cairo_image_surface_get_data(s); + int w = cairo_image_surface_get_width(s); + int h = cairo_image_surface_get_height(s); + int rs = cairo_image_surface_get_stride(s); + + convert_pixels_argb32_to_pixbuf(pixels, w, h, rs); + + GdkPixbuf *pb = gdk_pixbuf_new_from_data( + pixels, GDK_COLORSPACE_RGB, TRUE, 8, + w, h, rs, ink_cairo_pixbuf_cleanup, s); + + return pb; +} + +/** + * Cleanup function for GdkPixbuf. + * This function should be passed as the GdkPixbufDestroyNotify parameter + * to gdk_pixbuf_new_from_data when creating a GdkPixbuf backed by + * a Cairo surface. + */ +static void ink_cairo_pixbuf_cleanup(guchar * /*pixels*/, void *data) +{ + cairo_surface_t *surface = static_cast(data); + cairo_surface_destroy(surface); +} + /* The following two functions use "from" instead of "to", because when you write: val1 = argb32_from_pixbuf(val1); the name of the format is closer to the value in that format. */ diff --git a/src/display/cairo-utils.h b/src/display/cairo-utils.h index 289d4e01f..505e2ca77 100644 --- a/src/display/cairo-utils.h +++ b/src/display/cairo-utils.h @@ -12,14 +12,15 @@ #ifndef SEEN_INKSCAPE_DISPLAY_CAIRO_UTILS_H #define SEEN_INKSCAPE_DISPLAY_CAIRO_UTILS_H +#include +//#include // workaround #include #include +//#include #include <2geom/forward.h> #include "style.h" struct SPColor; -struct _GdkPixbuf; -typedef struct _GdkPixbuf GdkPixbuf; namespace Inkscape { @@ -80,15 +81,61 @@ public: static Cairo::RefPtr create(Cairo::RefPtr const &target); }; -} // namespace Inkscape +/** Class to hold image data for raster images. + * Allows easy interoperation with GdkPixbuf and Cairo. */ +class Pixbuf { +public: + enum PixelFormat { + PF_CAIRO = 1, + PF_GDK = 2, + PF_LAST + }; + + explicit Pixbuf(cairo_surface_t *s); + explicit Pixbuf(GdkPixbuf *pb); + Pixbuf(Inkscape::Pixbuf const &other); + ~Pixbuf(); + + GdkPixbuf *getPixbufRaw(bool convert_format = true); + //Glib::RefPtr getPixbuf(bool convert_format = true); + + cairo_surface_t *getSurfaceRaw(bool convert_format = true); + Cairo::RefPtr getSurface(bool convert_format = true); + + int width() const; + int height() const; + int rowstride() const; + guchar const *pixels() const; + guchar *pixels(); + void markDirty(); + + bool hasMimeData() const; + guchar const *getMimeData(gsize &len, std::string &mimetype) const; + std::string const &originalPath() const { return _path; } + time_t modificationTime() const { return _mod_time; } -enum InkPixelFormat { - INK_PIXEL_FORMAT_NONE, - INK_PIXEL_FORMAT_CAIRO, - INK_PIXEL_FORMAT_PIXBUF, - INK_PIXEL_FORMAT_LAST + PixelFormat pixelFormat() const { return _pixel_format; } + void ensurePixelFormat(PixelFormat fmt); + + static Pixbuf *create_from_data_uri(gchar const *uri); + static Pixbuf *create_from_file(std::string const &fn); + +private: + void _ensurePixelsARGB32(); + void _ensurePixelsPixbuf(); + void _forceAlpha(); + void _setMimeData(guchar *data, gsize len, Glib::ustring const &format); + + GdkPixbuf *_pixbuf; + cairo_surface_t *_surface; + time_t _mod_time; + std::string _path; + PixelFormat _pixel_format; + bool _cairo_store; }; +} // namespace Inkscape + // TODO: these declarations may not be needed in the header extern cairo_user_data_key_t ink_color_interpolation_key; extern cairo_user_data_key_t ink_pixbuf_key; @@ -102,7 +149,6 @@ void ink_cairo_set_source_color(cairo_t *ct, SPColor const &color, double opacit void ink_cairo_set_source_rgba32(cairo_t *ct, guint32 rgba); void ink_cairo_transform(cairo_t *ct, Geom::Affine const &m); void ink_cairo_pattern_set_matrix(cairo_pattern_t *cp, Geom::Affine const &m); -void ink_cairo_set_source_pixbuf(cairo_t *ct, GdkPixbuf *pb, double x, double y); void ink_matrix_to_2geom(Geom::Affine &, cairo_matrix_t const &); void ink_matrix_to_cairo(cairo_matrix_t &, Geom::Affine const &); @@ -125,13 +171,9 @@ int ink_cairo_surface_linear_to_srgb(cairo_surface_t *surface); cairo_pattern_t *ink_cairo_pattern_create_checkerboard(); +GdkPixbuf *ink_pixbuf_create_from_cairo_surface(cairo_surface_t *s); void convert_pixels_pixbuf_to_argb32(guchar *data, int w, int h, int rs); void convert_pixels_argb32_to_pixbuf(guchar *data, int w, int h, int rs); -void ink_pixbuf_ensure_argb32(GdkPixbuf *); -void ink_pixbuf_ensure_normal(GdkPixbuf *); -cairo_surface_t *ink_cairo_surface_get_for_pixbuf(GdkPixbuf *pb); -GdkPixbuf *ink_pixbuf_create_from_cairo_surface(cairo_surface_t *s); -void ink_cairo_pixbuf_cleanup(guchar *pixels, void *surface); G_GNUC_CONST guint32 argb32_from_pixbuf(guint32 in); G_GNUC_CONST guint32 pixbuf_from_argb32(guint32 in); diff --git a/src/display/drawing-image.cpp b/src/display/drawing-image.cpp index 46f066b8e..0b661a450 100644 --- a/src/display/drawing-image.cpp +++ b/src/display/drawing-image.cpp @@ -22,34 +22,23 @@ namespace Inkscape { DrawingImage::DrawingImage(Drawing &drawing) : DrawingItem(drawing) , _pixbuf(NULL) - , _surface(NULL) // this is owned by _pixbuf! , _style(NULL) , _new_surface(NULL) {} DrawingImage::~DrawingImage() { - if (_style) + if (_style) { sp_style_unref(_style); - if (_pixbuf) { - if (_new_surface) cairo_surface_destroy(_new_surface); - g_object_unref(_pixbuf); } + + // _pixbuf is owned by SPImage - do not delete it } void -DrawingImage::setARGB32Pixbuf(GdkPixbuf *pb) +DrawingImage::setPixbuf(Inkscape::Pixbuf *pb) { - // when done in this order, it won't break if pb == image->pixbuf and the refcount is 1 - if (pb != NULL) { - g_object_ref (pb); - } - if (_pixbuf != NULL) { - g_object_unref(_pixbuf); - // unrefing the pixbuf also destroys surface - } _pixbuf = pb; - _surface = pb ? ink_cairo_surface_get_for_pixbuf(pb) : NULL; _markForUpdate(STATE_ALL, false); } @@ -86,8 +75,8 @@ DrawingImage::bounds() const { if (!_pixbuf) return _clipbox; - double pw = gdk_pixbuf_get_width(_pixbuf); - double ph = gdk_pixbuf_get_height(_pixbuf); + double pw = _pixbuf->width(); + double ph = _pixbuf->height(); double vw = pw * _scale[Geom::X]; double vh = ph * _scale[Geom::Y]; Geom::Point wh(vw, vh); @@ -143,14 +132,16 @@ unsigned DrawingImage::_renderItem(DrawingContext &ct, Geom::IntRect const &/*ar // See https://bugs.launchpad.net/inkscape/+bug/804162 Geom::Scale expansion(_ctm.expansion()); - int orgwidth = cairo_image_surface_get_width(_surface); - int orgheight = cairo_image_surface_get_height(_surface); + int orgwidth = _pixbuf->width(); + int orgheight = _pixbuf->height(); if (_scale[Geom::X]*expansion[Geom::X]*orgwidth*255.0<1.0 || _scale[Geom::Y]*expansion[Geom::Y]*orgheight*255.0<1.0) { // Resized image too small to actually see anything return RENDER_OK; } - + + _pixbuf->ensurePixelFormat(Inkscape::Pixbuf::PF_CAIRO); + // Split scale*expansion in a part that is <= 1.0 and a part that is >= 1.0. We only take care of the part <= 1.0. Geom::Scale scaleExpansionSmall(std::min(fabs(_scale[Geom::X]*expansion[Geom::X]),1),std::min(fabs(_scale[Geom::Y]*expansion[Geom::Y]),1)); Geom::Scale scaleExpansionLarge(_scale[Geom::X]*expansion[Geom::X]/scaleExpansionSmall[Geom::X],_scale[Geom::Y]*expansion[Geom::Y]/scaleExpansionSmall[Geom::Y]); @@ -161,7 +152,7 @@ unsigned DrawingImage::_renderItem(DrawingContext &ct, Geom::IntRect const &/*ar ct.scale(expansion.inverse()); // This should not include scale (see derivation above) ct.translate(_origin*expansion); ct.scale(scaleExpansionLarge); - ct.setSource(_surface, 0, 0); + ct.setSource(_pixbuf->getSurfaceRaw(), 0, 0); } else if (!_new_surface || (newSize-_rescaledSize).length()>0.1) { // Rescaled image is sufficiently different from cached image to recompute if (_new_surface) cairo_surface_destroy(_new_surface); @@ -200,13 +191,13 @@ unsigned DrawingImage::_renderItem(DrawingContext &ct, Geom::IntRect const &/*ar } } + cairo_surface_t *surface = _pixbuf->getSurfaceRaw(); _new_surface = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, newwidth,newheight); - unsigned char * orgdata = cairo_image_surface_get_data(_surface); + unsigned char * orgdata = cairo_image_surface_get_data(surface); unsigned char * newdata = cairo_image_surface_get_data(_new_surface); - int orgstride = cairo_image_surface_get_stride(_surface); + int orgstride = cairo_image_surface_get_stride(surface); int newstride = cairo_image_surface_get_stride(_new_surface); - - //cairo_surface_flush(_surface); + cairo_surface_flush(_new_surface); for(int y=0; ygetSurfaceRaw(), 0, 0); //ct.paint(_opacity); ct.paint(); @@ -315,10 +306,10 @@ DrawingImage::_pickItem(Geom::Point const &p, double delta, unsigned /*sticky*/) return NULL; } else { - unsigned char *const pixels = gdk_pixbuf_get_pixels(_pixbuf); - int width = gdk_pixbuf_get_width(_pixbuf); - int height = gdk_pixbuf_get_height(_pixbuf); - int rowstride = gdk_pixbuf_get_rowstride(_pixbuf); + unsigned char *const pixels = _pixbuf->pixels(); + int width = _pixbuf->width(); + int height = _pixbuf->height(); + int rowstride = _pixbuf->rowstride(); Geom::Point tp = p * _ctm.inverse(); Geom::Rect r = bounds(); @@ -336,8 +327,17 @@ DrawingImage::_pickItem(Geom::Point const &p, double delta, unsigned /*sticky*/) unsigned char *pix_ptr = pixels + iy * rowstride + ix * 4; // pick if the image is less than 99% transparent - float alpha = (pix_ptr[3] / 255.0f) * _opacity; - return alpha > 0.01 ? this : NULL; + guint32 alpha = 0; + if (_pixbuf->pixelFormat() == Inkscape::Pixbuf::PF_CAIRO) { + guint32 px = *reinterpret_cast(pix_ptr); + alpha = (px & 0xff000000) >> 24; + } else if (_pixbuf->pixelFormat() == Inkscape::Pixbuf::PF_GDK) { + alpha = pix_ptr[3]; + } else { + throw std::runtime_error("Unrecognized pixel format"); + } + float alpha_f = (alpha / 255.0f) * _opacity; + return alpha_f > 0.01 ? this : NULL; } } diff --git a/src/display/drawing-image.h b/src/display/drawing-image.h index 593185c97..58e6de72e 100644 --- a/src/display/drawing-image.h +++ b/src/display/drawing-image.h @@ -19,6 +19,7 @@ #include "display/drawing-item.h" namespace Inkscape { +class Pixbuf; class DrawingImage : public DrawingItem @@ -27,7 +28,7 @@ public: DrawingImage(Drawing &drawing); ~DrawingImage(); - void setARGB32Pixbuf(GdkPixbuf *pb); + void setPixbuf(Inkscape::Pixbuf *pb); void setStyle(SPStyle *style); void setScale(double sx, double sy); void setOrigin(Geom::Point const &o); @@ -41,8 +42,7 @@ protected: DrawingItem *stop_at); virtual DrawingItem *_pickItem(Geom::Point const &p, double delta, unsigned flags); - GdkPixbuf *_pixbuf; - cairo_surface_t *_surface; + Inkscape::Pixbuf *_pixbuf; SPStyle *_style; cairo_surface_t *_new_surface; // Part of hack around Cairo bug diff --git a/src/display/nr-filter-image.cpp b/src/display/nr-filter-image.cpp index b9d73f0ad..4ca4cd07c 100644 --- a/src/display/nr-filter-image.cpp +++ b/src/display/nr-filter-image.cpp @@ -30,6 +30,7 @@ FilterImage::FilterImage() : SVGElem(0) , document(0) , feImageHref(0) + , image(0) , broken_ref(false) { } @@ -41,7 +42,7 @@ FilterImage::~FilterImage() { if (feImageHref) g_free(feImageHref); - g_object_set_data(G_OBJECT(image->gobj()), "cairo_surface", NULL); + delete image; } void FilterImage::render_cairo(FilterSlot &slot) @@ -131,50 +132,38 @@ void FilterImage::render_cairo(FilterSlot &slot) // External image, like if (!image && !broken_ref) { broken_ref = true; - try { - /* TODO: If feImageHref is absolute, then use that (preferably handling the - * case that it's not a file URI). Otherwise, go up the tree looking - * for an xml:base attribute, and use that as the base URI for resolving - * the relative feImageHref URI. Otherwise, if document->base is valid, - * then use that as the base URI. Otherwise, use feImageHref directly - * (i.e. interpreting it as relative to our current working directory). - * (See http://www.w3.org/TR/xmlbase/#resolution .) */ - gchar *fullname = feImageHref; - if ( !g_file_test( fullname, G_FILE_TEST_EXISTS ) ) { - // Try to load from relative postion combined with document base - if( document ) { - fullname = g_build_filename( document->getBase(), feImageHref, NULL ); - } - } - if ( !g_file_test( fullname, G_FILE_TEST_EXISTS ) ) { - // Should display Broken Image png. - g_warning("FilterImage::render: Can not find: %s", feImageHref ); - return; + + /* TODO: If feImageHref is absolute, then use that (preferably handling the + * case that it's not a file URI). Otherwise, go up the tree looking + * for an xml:base attribute, and use that as the base URI for resolving + * the relative feImageHref URI. Otherwise, if document->base is valid, + * then use that as the base URI. Otherwise, use feImageHref directly + * (i.e. interpreting it as relative to our current working directory). + * (See http://www.w3.org/TR/xmlbase/#resolution .) */ + gchar *fullname = feImageHref; + if ( !g_file_test( fullname, G_FILE_TEST_EXISTS ) ) { + // Try to load from relative postion combined with document base + if( document ) { + fullname = g_build_filename( document->getBase(), feImageHref, NULL ); } - image = Gdk::Pixbuf::create_from_file(fullname); - if( fullname != feImageHref ) g_free( fullname ); } - catch (const Glib::FileError & e) - { - g_warning("caught Glib::FileError in FilterImage::render: %s", e.what().data() ); + if ( !g_file_test( fullname, G_FILE_TEST_EXISTS ) ) { + // Should display Broken Image png. + g_warning("FilterImage::render: Can not find: %s", feImageHref ); return; } - catch (const Gdk::PixbufError & e) - { - g_warning("Gdk::PixbufError in FilterImage::render: %s", e.what().data() ); + image = Inkscape::Pixbuf::create_from_file(fullname); + if( fullname != feImageHref ) g_free( fullname ); + + if ( !image ) { + g_warning("FilterImage::render: failed to load image: %s", feImageHref); return; } - if ( !image ) return; broken_ref = false; - - bool has_alpha = image->get_has_alpha(); - if (!has_alpha) { - image = image->add_alpha(false, 0, 0, 0); - } } - cairo_surface_t *image_surface = ink_cairo_surface_get_for_pixbuf(image->gobj()); + cairo_surface_t *image_surface = image->getSurfaceRaw(); Geom::Rect sa = slot.get_slot_area(); cairo_surface_t *out = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, @@ -199,7 +188,7 @@ void FilterImage::render_cairo(FilterSlot &slot) // Check aspect ratio of image vs. viewport double feAspect = feImageHeight/feImageWidth; - double aspect = (double)image->get_height()/(double)image->get_width(); + double aspect = (double)image->height()/(double)image->width(); bool ratio = (feAspect < aspect); double ax, ay; // Align side @@ -274,8 +263,8 @@ void FilterImage::render_cairo(FilterSlot &slot) } } - double scaleX = feImageWidth / image->get_width(); - double scaleY = feImageHeight / image->get_height(); + double scaleX = feImageWidth / image->width(); + double scaleY = feImageHeight / image->height(); cairo_translate(ct, feImageX, feImageY); cairo_scale(ct, scaleX, scaleY); @@ -302,8 +291,8 @@ void FilterImage::set_href(const gchar *href){ if (feImageHref) g_free (feImageHref); feImageHref = (href) ? g_strdup (href) : NULL; - g_object_set_data(G_OBJECT(image->gobj()), "cairo_surface", NULL); - image.reset(); + delete image; + image = NULL; broken_ref = false; } diff --git a/src/display/nr-filter-image.h b/src/display/nr-filter-image.h index f45f42265..69691ac99 100644 --- a/src/display/nr-filter-image.h +++ b/src/display/nr-filter-image.h @@ -12,14 +12,14 @@ * Released under GNU GPL, read the file 'COPYING' for more information */ -#include #include "display/nr-filter-primitive.h" -#include class SPDocument; class SPItem; namespace Inkscape { +class Pixbuf; + namespace Filters { class FilterSlot; @@ -43,7 +43,7 @@ public: private: SPDocument *document; gchar *feImageHref; - Glib::RefPtr image; + Inkscape::Pixbuf *image; float feImageX, feImageY, feImageWidth, feImageHeight; unsigned int aspect_align, aspect_clip; bool broken_ref; diff --git a/src/extension/internal/cairo-render-context.cpp b/src/extension/internal/cairo-render-context.cpp index a950fa177..4f9273cbb 100644 --- a/src/extension/internal/cairo-render-context.cpp +++ b/src/extension/internal/cairo-render-context.cpp @@ -1436,7 +1436,7 @@ CairoRenderContext::renderPathVector(Geom::PathVector const & pathv, SPStyle con return true; } -bool CairoRenderContext::renderImage(GdkPixbuf *pb, +bool CairoRenderContext::renderImage(Inkscape::Pixbuf *pb, Geom::Affine const &image_transform, SPStyle const * /*style*/) { g_assert( _is_valid ); @@ -1447,13 +1447,13 @@ bool CairoRenderContext::renderImage(GdkPixbuf *pb, _prepareRenderGraphic(); - int w = gdk_pixbuf_get_width (pb); - int h = gdk_pixbuf_get_height (pb); + int w = pb->width(); + int h = pb->height(); // TODO: reenable merge_opacity if useful float opacity = _state->opacity; - cairo_surface_t *image_surface = ink_cairo_surface_get_for_pixbuf(pb); + cairo_surface_t *image_surface = pb->getSurfaceRaw(); if (cairo_surface_status(image_surface)) { TRACE(("Image surface creation failed:\n%s\n", cairo_status_to_string(cairo_surface_status(image_surface)))); return false; diff --git a/src/extension/internal/cairo-render-context.h b/src/extension/internal/cairo-render-context.h index f8426aebe..6fccc71b7 100644 --- a/src/extension/internal/cairo-render-context.h +++ b/src/extension/internal/cairo-render-context.h @@ -6,7 +6,7 @@ */ /* * Authors: - * Miklos Erdelyi + * Miklos Erdelyi * * Copyright (C) 2006 Miklos Erdelyi * @@ -32,6 +32,8 @@ class SPClipPath; struct SPMask; namespace Inkscape { +class Pixbuf; + namespace Extension { namespace Internal { @@ -144,7 +146,7 @@ public: /* Rendering methods */ bool renderPathVector(Geom::PathVector const &pathv, SPStyle const *style, Geom::OptRect const &pbox); - bool renderImage(GdkPixbuf *pb, + bool renderImage(Inkscape::Pixbuf *pb, Geom::Affine const &image_transform, SPStyle const *style); bool renderGlyphtext(PangoFont *font, Geom::Affine const &font_matrix, std::vector const &glyphtext, SPStyle const *style); diff --git a/src/extension/internal/cairo-renderer.cpp b/src/extension/internal/cairo-renderer.cpp index 3463925b6..eb16a38e1 100644 --- a/src/extension/internal/cairo-renderer.cpp +++ b/src/extension/internal/cairo-renderer.cpp @@ -27,6 +27,7 @@ #include #include +#include #include "libnrtype/Layout-TNG.h" #include <2geom/transforms.h> @@ -347,8 +348,8 @@ static void sp_image_render(SPItem *item, CairoRenderContext *ctx) if (!image->pixbuf) return; if ((image->width.computed <= 0.0) || (image->height.computed <= 0.0)) return; - w = gdk_pixbuf_get_width (image->pixbuf); - h = gdk_pixbuf_get_height (image->pixbuf); + w = image->pixbuf->width(); + h = image->pixbuf->height(); double x = image->x.computed; double y = image->y.computed; @@ -497,22 +498,15 @@ static void sp_asbitmap_render(SPItem *item, CairoRenderContext *ctx) GSList *items = NULL; items = g_slist_append(items, item); - GdkPixbuf *pb = sp_generate_internal_bitmap(document, NULL, - bbox->min()[Geom::X], bbox->min()[Geom::Y], bbox->max()[Geom::X], bbox->max()[Geom::Y], - width, height, res, res, (guint32) 0xffffff00, items ); + boost::scoped_ptr pb( + sp_generate_internal_bitmap(document, NULL, + bbox->min()[Geom::X], bbox->min()[Geom::Y], bbox->max()[Geom::X], bbox->max()[Geom::Y], + width, height, res, res, (guint32) 0xffffff00, items )); if (pb) { - TEST(gdk_pixbuf_save( pb, "bitmap.png", "png", NULL, NULL )); - - /* TODO: find a way to avoid a duplicate conversion between - * Cairo and GdkPixbuf pixel formats here. - * Internally, generate_internal_bitmap creates a Cairo surface, - * but then converts it to pixbuf format. In turn, renderImage() - * below converts back to Cairo format. - */ - ctx->renderImage(pb, t, item->style); - g_object_unref(pb); - pb = 0; + //TEST(gdk_pixbuf_save( pb, "bitmap.png", "png", NULL, NULL )); + + ctx->renderImage(pb.get(), t, item->style); } g_slist_free (items); } diff --git a/src/extension/internal/emf-print.cpp b/src/extension/internal/emf-print.cpp index 826a52ade..770257978 100644 --- a/src/extension/internal/emf-print.cpp +++ b/src/extension/internal/emf-print.cpp @@ -53,6 +53,7 @@ #include "sp-gradient.h" #include "sp-radial-gradient.h" #include "sp-linear-gradient.h" +#include "display/cairo-utils.h" #include "splivarot.h" // pieces for union on shapes #include "2geom/svg-path-parser.h" // to get from SVG text to Geom::Path @@ -333,7 +334,7 @@ int PrintEmf::create_brush(SPStyle const *style, PU_COLORREF fcolor) U_LOGBRUSH lb; uint32_t brush, fmode; MFDrawMode fill_mode; - GdkPixbuf *pixbuf; + Inkscape::Pixbuf *pixbuf; uint32_t brushStyle; int hatchType; U_COLORREF hatchColor; @@ -462,7 +463,7 @@ int PrintEmf::create_brush(SPStyle const *style, PU_COLORREF fcolor) int numCt; U_BITMAPINFOHEADER Bmih; PU_BITMAPINFO Bmi; - rgba_px = (char *) gdk_pixbuf_get_pixels(pixbuf); // Do NOT free this!!! + rgba_px = (char *) pixbuf->pixels(); // Do NOT free this!!! colortype = U_BCBM_COLOR32; (void) RGBA_to_DIB(&px, &cbPx, &ct, &numCt, rgba_px, width, height, width * 4, colortype, 0, 1); // Not sure why the next swap is needed because the preceding does it, and the code is identical @@ -528,7 +529,7 @@ int PrintEmf::create_pen(SPStyle const *style, const Geom::Affine &transform) int linejoin = 0; uint32_t pen; uint32_t brushStyle; - GdkPixbuf *pixbuf; + Inkscape::Pixbuf *pixbuf; int hatchType; U_COLORREF hatchColor; U_COLORREF bkColor; @@ -565,7 +566,7 @@ int PrintEmf::create_pen(SPStyle const *style, const Geom::Affine &transform) brush_classify(pat, 0, &pixbuf, &hatchType, &hatchColor, &bkColor); if (pixbuf) { brushStyle = U_BS_DIBPATTERN; - rgba_px = (char *) gdk_pixbuf_get_pixels(pixbuf); // Do NOT free this!!! + rgba_px = (char *) pixbuf->pixels(); // Do NOT free this!!! colortype = U_BCBM_COLOR32; (void) RGBA_to_DIB(&px, &cbPx, &ct, &numCt, rgba_px, width, height, width * 4, colortype, 0, 1); // Not sure why the next swap is needed because the preceding does it, and the code is identical diff --git a/src/extension/internal/gdkpixbuf-input.cpp b/src/extension/internal/gdkpixbuf-input.cpp index 117c2fe39..87cf8a9cc 100644 --- a/src/extension/internal/gdkpixbuf-input.cpp +++ b/src/extension/internal/gdkpixbuf-input.cpp @@ -1,6 +1,7 @@ #ifdef HAVE_CONFIG_H # include #endif +#include #include #include #include "document-private.h" @@ -14,15 +15,11 @@ #include "document-undo.h" #include "util/units.h" #include "image-resolution.h" +#include "display/cairo-utils.h" #include namespace Inkscape { -namespace IO { -// this is defined in sp-image.cpp -GdkPixbuf* pixbuf_new_from_file(char const *filename, time_t &modTime, gchar*& pixPath); -} - namespace Extension { namespace Internal { @@ -47,9 +44,7 @@ GdkpixbufInput::open(Inkscape::Extension::Input *mod, char const *uri) } SPDocument *doc = NULL; - gchar *pixpath = NULL; - time_t dummy; - GdkPixbuf *pb = Inkscape::IO::pixbuf_new_from_file(uri, dummy, pixpath); + boost::scoped_ptr pb(Inkscape::Pixbuf::create_from_file(uri)); // TODO: the pixbuf is created again from the base64-encoded attribute in SPImage. // Find a way to create the pixbuf only once. @@ -59,8 +54,8 @@ GdkpixbufInput::open(Inkscape::Extension::Input *mod, char const *uri) bool saved = DocumentUndo::getUndoSensitive(doc); DocumentUndo::setUndoSensitive(doc, false); // no need to undo in this temporary document - double width = gdk_pixbuf_get_width(pb); - double height = gdk_pixbuf_get_height(pb); + double width = pb->width(); + double height = pb->height(); double defaultxdpi = prefs->getDouble("/dialogs/import/defaultxdpi/value", Inkscape::Util::Quantity::convert(1, "in", "px")); bool forcexdpi = prefs->getBool("/dialogs/import/forcexdpi"); ImageResolution *ir = 0; @@ -91,7 +86,7 @@ GdkpixbufInput::open(Inkscape::Extension::Input *mod, char const *uri) sp_repr_set_svg_double(image_node, "height", height); if (embed) { - sp_embed_image(image_node, pb); + sp_embed_image(image_node, pb.get()); } else { // convert filename to uri gchar* _uri = g_filename_to_uri(uri, NULL, NULL); @@ -103,9 +98,6 @@ GdkpixbufInput::open(Inkscape::Extension::Input *mod, char const *uri) } } - g_object_set_data(G_OBJECT(pb), "cairo_surface", NULL); - g_object_unref(pb); - // Add it to the current layer doc->getRoot()->appendChildRepr(image_node); Inkscape::GC::release(image_node); diff --git a/src/extension/internal/metafile-print.cpp b/src/extension/internal/metafile-print.cpp index 9d080bd96..1e7735410 100644 --- a/src/extension/internal/metafile-print.cpp +++ b/src/extension/internal/metafile-print.cpp @@ -266,7 +266,7 @@ void PrintMetafile::hatch_classify(char *name, int *hatchType, U_COLORREF *hatch // otherwise hatchType is set to -1 and hatchColor is not defined. // -void PrintMetafile::brush_classify(SPObject *parent, int depth, GdkPixbuf **epixbuf, int *hatchType, U_COLORREF *hatchColor, U_COLORREF *bkColor) +void PrintMetafile::brush_classify(SPObject *parent, int depth, Inkscape::Pixbuf **epixbuf, int *hatchType, U_COLORREF *hatchColor, U_COLORREF *bkColor) { if (depth == 0) { *epixbuf = NULL; diff --git a/src/extension/internal/metafile-print.h b/src/extension/internal/metafile-print.h index e64ba92f3..cba4d564d 100644 --- a/src/extension/internal/metafile-print.h +++ b/src/extension/internal/metafile-print.h @@ -30,6 +30,8 @@ struct SPGradient; struct SPObject; namespace Inkscape { +class Pixbuf; + namespace Extension { namespace Internal { @@ -93,7 +95,7 @@ protected: U_COLORREF weight_colors(U_COLORREF c1, U_COLORREF c2, double t); void hatch_classify(char *name, int *hatchType, U_COLORREF *hatchColor, U_COLORREF *bkColor); - void brush_classify(SPObject *parent, int depth, GdkPixbuf **epixbuf, int *hatchType, U_COLORREF *hatchColor, U_COLORREF *bkColor); + void brush_classify(SPObject *parent, int depth, Inkscape::Pixbuf **epixbuf, int *hatchType, U_COLORREF *hatchColor, U_COLORREF *bkColor); static void swapRBinRGBA(char *px, int pixels); int hold_gradient(void *gr, int mode); diff --git a/src/extension/internal/wmf-print.cpp b/src/extension/internal/wmf-print.cpp index e5816073e..99262b109 100644 --- a/src/extension/internal/wmf-print.cpp +++ b/src/extension/internal/wmf-print.cpp @@ -56,6 +56,7 @@ #include "sp-gradient.h" #include "sp-radial-gradient.h" #include "sp-linear-gradient.h" +#include "display/cairo-utils.h" #include "splivarot.h" // pieces for union on shapes #include "2geom/svg-path-parser.h" // to get from SVG text to Geom::Path @@ -336,7 +337,7 @@ int PrintWmf::create_brush(SPStyle const *style, PU_COLORREF fcolor) U_WLOGBRUSH lb; uint32_t brush, fmode; MFDrawMode fill_mode; - GdkPixbuf *pixbuf; + Inkscape::Pixbuf *pixbuf; uint32_t brushStyle; int hatchType; U_COLORREF hatchColor; @@ -464,7 +465,7 @@ int PrintWmf::create_brush(SPStyle const *style, PU_COLORREF fcolor) int numCt; U_BITMAPINFOHEADER Bmih; PU_BITMAPINFO Bmi; - rgba_px = (char *) gdk_pixbuf_get_pixels(pixbuf); // Do NOT free this!!! + rgba_px = (char *) pixbuf->pixels(); // Do NOT free this!!! colortype = U_BCBM_COLOR32; (void) RGBA_to_DIB(&px, &cbPx, &ct, &numCt, rgba_px, width, height, width * 4, colortype, 0, 1); // Not sure why the next swap is needed because the preceding does it, and the code is identical @@ -1112,10 +1113,10 @@ unsigned int PrintWmf::image( g_error("Fatal programming error in PrintWmf::image at EMRHEADER"); } - x1 = atof(style->object->getAttribute("x")); - y1 = atof(style->object->getAttribute("y")); - dw = atof(style->object->getAttribute("width")); - dh = atof(style->object->getAttribute("height")); + x1 = g_ascii_strtod(style->object->getAttribute("x"), NULL); + y1 = g_ascii_strtod(style->object->getAttribute("y"), NULL); + dw = g_ascii_strtod(style->object->getAttribute("width"), NULL); + dh = g_ascii_strtod(style->object->getAttribute("height"), NULL); Geom::Point pLL(x1, y1); Geom::Point pLL2 = pLL * tf; //location of LL corner in Inkscape coordinates diff --git a/src/filters/image.cpp b/src/filters/image.cpp index 0f15e9d0f..365ad9eb6 100644 --- a/src/filters/image.cpp +++ b/src/filters/image.cpp @@ -17,6 +17,8 @@ #ifdef HAVE_CONFIG_H # include "config.h" #endif + +#include #include "display/nr-filter-image.h" #include "uri.h" #include "uri-references.h" diff --git a/src/helper/pixbuf-ops.cpp b/src/helper/pixbuf-ops.cpp index a51a62f42..8e611d197 100644 --- a/src/helper/pixbuf-ops.cpp +++ b/src/helper/pixbuf-ops.cpp @@ -16,6 +16,7 @@ #endif #include +#include #include <2geom/transforms.h> #include "interface.h" @@ -67,16 +68,14 @@ bool sp_export_jpg_file(SPDocument *doc, gchar const *filename, unsigned width, unsigned height, double xdpi, double ydpi, unsigned long bgcolor, double quality,GSList *items) { - GdkPixbuf* pixbuf = 0; - pixbuf = sp_generate_internal_bitmap(doc, filename, x0, y0, x1, y1, - width, height, xdpi, ydpi, - bgcolor, items ); + boost::scoped_ptr pixbuf( + sp_generate_internal_bitmap(doc, filename, x0, y0, x1, y1, + width, height, xdpi, ydpi, bgcolor, items)); gchar c[32]; g_snprintf(c, 32, "%f", quality); - gboolean saved = gdk_pixbuf_save (pixbuf, filename, "jpeg", NULL, "quality", c, NULL); + gboolean saved = gdk_pixbuf_save(pixbuf->getPixbufRaw(), filename, "jpeg", NULL, "quality", c, NULL); g_free(c); - g_object_unref (pixbuf); return saved; } @@ -94,7 +93,7 @@ bool sp_export_jpg_file(SPDocument *doc, gchar const *filename, @param ydpi @return the created GdkPixbuf structure or NULL if no memory is allocable */ -GdkPixbuf *sp_generate_internal_bitmap(SPDocument *doc, gchar const */*filename*/, +Inkscape::Pixbuf *sp_generate_internal_bitmap(SPDocument *doc, gchar const */*filename*/, double x0, double y0, double x1, double y1, unsigned width, unsigned height, double xdpi, double ydpi, unsigned long /*bgcolor*/, @@ -103,7 +102,7 @@ GdkPixbuf *sp_generate_internal_bitmap(SPDocument *doc, gchar const */*filename* { if (width == 0 || height == 0) return NULL; - GdkPixbuf* pixbuf = NULL; + Inkscape::Pixbuf *inkpb = NULL; /* Create new drawing for offscreen rendering*/ Inkscape::Drawing drawing; drawing.setExact(true); @@ -146,7 +145,7 @@ GdkPixbuf *sp_generate_internal_bitmap(SPDocument *doc, gchar const */*filename* // render items drawing.render(ct, final_bbox, Inkscape::DrawingItem::RENDER_BYPASS_CACHE); - pixbuf = ink_pixbuf_create_from_cairo_surface(surface); + inkpb = new Inkscape::Pixbuf(surface); } else { @@ -158,7 +157,7 @@ GdkPixbuf *sp_generate_internal_bitmap(SPDocument *doc, gchar const */*filename* // gdk_pixbuf_save (pixbuf, "C:\\temp\\internal.jpg", "jpeg", NULL, "quality","100", NULL); - return pixbuf; + return inkpb; } /* diff --git a/src/helper/pixbuf-ops.h b/src/helper/pixbuf-ops.h index 44851d388..61a879f9b 100644 --- a/src/helper/pixbuf-ops.h +++ b/src/helper/pixbuf-ops.h @@ -15,11 +15,12 @@ #include class SPDocument; +namespace Inkscape { class Pixbuf; } bool sp_export_jpg_file (SPDocument *doc, gchar const *filename, double x0, double y0, double x1, double y1, unsigned int width, unsigned int height, double xdpi, double ydpi, unsigned long bgcolor, double quality, GSList *items_only = NULL); -GdkPixbuf* sp_generate_internal_bitmap(SPDocument *doc, gchar const *filename, +Inkscape::Pixbuf *sp_generate_internal_bitmap(SPDocument *doc, gchar const *filename, double x0, double y0, double x1, double y1, unsigned width, unsigned height, double xdpi, double ydpi, unsigned long bgcolor, GSList *items_only = NULL); diff --git a/src/selection-chemistry.cpp b/src/selection-chemistry.cpp index 868f5a35c..5ee21a738 100644 --- a/src/selection-chemistry.cpp +++ b/src/selection-chemistry.cpp @@ -96,6 +96,7 @@ SPCycleType SP_CYCLING = SP_CYCLE_FOCUS; #include "uri-references.h" #include "display/curve.h" #include "display/canvas-bpath.h" +#include "display/cairo-utils.h" #include "inkscape-private.h" #include "path-chemistry.h" #include "ui/tool/control-point-selection.h" @@ -3480,9 +3481,10 @@ void sp_selection_create_bitmap_copy(SPDesktop *desktop) } // Import the image back - GdkPixbuf *pb = gdk_pixbuf_new_from_file(filepath, NULL); + Inkscape::Pixbuf *pb = Inkscape::Pixbuf::create_from_file(filepath); if (pb) { // Create the repr for the image + // TODO: avoid unnecessary roundtrip between data URI and decoded pixbuf Inkscape::XML::Node * repr = xml_doc->createElement("svg:image"); sp_embed_image(repr, pb); if (res == Inkscape::Util::Quantity::convert(1, "in", "px")) { // for default 90 dpi, snap it to pixel grid diff --git a/src/sp-image.cpp b/src/sp-image.cpp index 0e692eb40..57bcd69b9 100644 --- a/src/sp-image.cpp +++ b/src/sp-image.cpp @@ -17,9 +17,6 @@ # include "config.h" #endif -// This has to be included prior to anything that includes setjmp.h, it croaks otherwise -#include - #include #include #include @@ -90,8 +87,7 @@ static Inkscape::DrawingItem *sp_image_show (SPItem *item, Inkscape::Drawing &dr static Geom::Affine sp_image_set_transform (SPItem *item, Geom::Affine const &xform); static void sp_image_set_curve(SPImage *image); -static GdkPixbuf *sp_image_repr_read_image( time_t& modTime, gchar*& pixPath, const gchar *href, const gchar *absref, const gchar *base ); -static GdkPixbuf *sp_image_pixbuf_force_rgba (GdkPixbuf * pixbuf); +static Inkscape::Pixbuf *sp_image_repr_read_image(gchar const *href, gchar const *absref, gchar const *base ); static void sp_image_update_arenaitem (SPImage *img, Inkscape::DrawingImage *ai); static void sp_image_update_canvas_image (SPImage *image); static GdkPixbuf * sp_image_repr_read_dataURI (const gchar * uri_data); @@ -130,65 +126,6 @@ extern guint update_in_progress; #define DEBUG_MESSAGE_SCISLAC(key, ...) #endif // DEBUG_LCMS -namespace Inkscape { -namespace IO { - -GdkPixbuf* pixbuf_new_from_file(const char *filename, time_t &modTime, gchar*& pixPath) -{ - GdkPixbuf* buf = NULL; - modTime = 0; - if ( pixPath ) { - g_free(pixPath); - pixPath = NULL; - } - - //test correctness of filename - if (!g_file_test (filename, G_FILE_TEST_EXISTS)){ - return NULL; - } - struct stat stdir; - int val = g_stat(filename, &stdir); - if (stdir.st_mode & S_IFDIR){ - g_warning("Linked image file %s is a directory", filename); - return NULL; - } - - // we need to load the entire pixbuf into memory - gchar *data = NULL; - gsize len = 0; - - if (g_file_get_contents(filename, &data, &len, NULL)) { - if (!val) { - modTime = stdir.st_mtime; - pixPath = g_strdup(filename); - } - - GdkPixbufLoader *loader = gdk_pixbuf_loader_new(); - gdk_pixbuf_loader_write(loader, (guchar *) data, len, NULL); - gdk_pixbuf_loader_close(loader, NULL); - - buf = gdk_pixbuf_loader_get_pixbuf(loader); - if (buf) { - g_object_ref(buf); - buf = sp_image_pixbuf_force_rgba(buf); - pixbuf_set_mime_data(buf, (guchar *) data, len, gdk_pixbuf_loader_get_format(loader)); - } else { - g_free(data); - g_warning("Error loading pixbuf"); - } - - // TODO: we could also read DPI, ICC profile, gamma correction, and other information - // from the file. This can be done by using format-specific libraries e.g. libpng. - } else { - g_warning("Unable to open linked file: %s", filename); - } - - return buf; -} - -} -} - G_DEFINE_TYPE(SPImage, sp_image, SP_TYPE_ITEM); static void sp_image_class_init( SPImageClass * klass ) @@ -229,8 +166,6 @@ static void sp_image_init( SPImage *image ) image->color_profile = 0; #endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2) image->pixbuf = 0; - image->pixPath = 0; - image->lastMod = 0; } static void sp_image_build( SPObject *object, SPDocument *document, Inkscape::XML::Node *repr ) @@ -266,8 +201,7 @@ static void sp_image_release( SPObject *object ) } if (image->pixbuf) { - g_object_set_data(G_OBJECT(image->pixbuf), "cairo_surface", NULL); - g_object_unref (image->pixbuf); + delete image->pixbuf; image->pixbuf = NULL; } @@ -278,11 +212,6 @@ static void sp_image_release( SPObject *object ) } #endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2) - if (image->pixPath) { - g_free(image->pixPath); - image->pixPath = 0; - } - if (image->curve) { image->curve = image->curve->unref(); } @@ -427,24 +356,13 @@ static void sp_image_update( SPObject *object, SPCtx *ctx, unsigned int flags ) if (flags & SP_IMAGE_HREF_MODIFIED_FLAG) { if (image->pixbuf) { - g_object_unref (image->pixbuf); + delete image->pixbuf; image->pixbuf = NULL; } - if ( image->pixPath ) { - g_free(image->pixPath); - image->pixPath = 0; - } - image->lastMod = 0; if (image->href) { - GdkPixbuf *pixbuf; + Inkscape::Pixbuf *pixbuf = NULL; pixbuf = sp_image_repr_read_image ( - image->lastMod, - image->pixPath, - - //XML Tree being used directly while it shouldn't be. object->getRepr()->attribute("xlink:href"), - - //XML Tree being used directly while it shouldn't be. object->getRepr()->attribute("sodipodi:absref"), doc->getBase()); if (pixbuf) { @@ -452,10 +370,13 @@ static void sp_image_update( SPObject *object, SPCtx *ctx, unsigned int flags ) #if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2) if ( image->color_profile ) { - int imagewidth = gdk_pixbuf_get_width( pixbuf ); - int imageheight = gdk_pixbuf_get_height( pixbuf ); - int rowstride = gdk_pixbuf_get_rowstride( pixbuf ); - guchar* px = gdk_pixbuf_get_pixels( pixbuf ); + // TODO: this will prevent using MIME data when exporting. + // Integrate color correction into loading. + pixbuf->ensurePixelFormat(Inkscape::Pixbuf::PF_GDK); + int imagewidth = pixbuf->width(); + int imageheight = pixbuf->height(); + int rowstride = pixbuf->rowstride();; + guchar* px = pixbuf->pixels(); if ( px ) { DEBUG_MESSAGE( lcmsFive, "in 's sp_image_update. About to call colorprofile_get_handle()" ); @@ -522,10 +443,10 @@ static void sp_image_update( SPObject *object, SPCtx *ctx, unsigned int flags ) if (image->pixbuf) { /* fixme: We are slightly violating spec here (Lauris) */ if (!image->width._set) { - image->width.computed = gdk_pixbuf_get_width(image->pixbuf); + image->width.computed = image->pixbuf->width(); } if (!image->height._set) { - image->height.computed = gdk_pixbuf_get_height(image->pixbuf); + image->height.computed = image->pixbuf->height(); } } @@ -536,8 +457,8 @@ static void sp_image_update( SPObject *object, SPCtx *ctx, unsigned int flags ) image->ox = image->x.computed; image->oy = image->y.computed; - int pixwidth = gdk_pixbuf_get_width (image->pixbuf); - int pixheight = gdk_pixbuf_get_height (image->pixbuf); + int pixwidth = image->pixbuf->width(); + int pixheight = image->pixbuf->height(); image->sx = image->width.computed / pixwidth; image->sy = image->height.computed / pixheight; @@ -678,16 +599,15 @@ static void sp_image_print( SPItem *item, SPPrintContext *ctx ) SPImage *image = SP_IMAGE(item); if (image->pixbuf && (image->width.computed > 0.0) && (image->height.computed > 0.0) ) { - GdkPixbuf *pb = gdk_pixbuf_copy(image->pixbuf); - // GObject data is not copied, so we have to set the pixel format explicitly - g_object_set_data_full(G_OBJECT(pb), "pixel_format", g_strdup("argb32"), g_free); - ink_pixbuf_ensure_normal(pb); + Inkscape::Pixbuf *pb = new Inkscape::Pixbuf(*image->pixbuf); + pb->ensurePixelFormat(Inkscape::Pixbuf::PF_GDK); - guchar *px = gdk_pixbuf_get_pixels(pb); - int w = gdk_pixbuf_get_width(pb); - int h = gdk_pixbuf_get_height(pb); - int rs = gdk_pixbuf_get_rowstride(pb); - int pixskip = gdk_pixbuf_get_n_channels(pb) * gdk_pixbuf_get_bits_per_sample(pb) / 8; + guchar *px = pb->pixels(); + int w = pb->width(); + int h = pb->height(); + int rs = pb->rowstride(); + //int pixskip = gdk_pixbuf_get_n_channels(pb) * gdk_pixbuf_get_bits_per_sample(pb) / 8; + int pixskip = 4; if (image->aspect_align == SP_ASPECT_NONE) { Geom::Affine t; @@ -739,8 +659,8 @@ static gchar *sp_image_description( SPItem *item ) char *ret = ( image->pixbuf == NULL ? g_strdup_printf(_("Image with bad reference: %s"), href_desc) : g_strdup_printf(_("Image %d × %d: %s"), - gdk_pixbuf_get_width(image->pixbuf), - gdk_pixbuf_get_height(image->pixbuf), + image->pixbuf->width(), + image->pixbuf->height(), href_desc) ); g_free(href_desc); return ret; @@ -756,22 +676,9 @@ static Inkscape::DrawingItem *sp_image_show( SPItem *item, Inkscape::Drawing &dr return ai; } -/* - * utility function to try loading image from href - * - * docbase/relative_src - * absolute_src - * - */ - -GdkPixbuf *sp_image_repr_read_image( time_t& modTime, char*& pixPath, const gchar *href, const gchar *absref, const gchar *base ) +Inkscape::Pixbuf *sp_image_repr_read_image(gchar const *href, gchar const *absref, gchar const *base) { - GdkPixbuf *pixbuf = 0; - modTime = 0; - if ( pixPath ) { - g_free(pixPath); - pixPath = 0; - } + Inkscape::Pixbuf *inkpb = 0; gchar const *filename = href; @@ -779,18 +686,18 @@ GdkPixbuf *sp_image_repr_read_image( time_t& modTime, char*& pixPath, const gcha if (strncmp (filename,"file:",5) == 0) { gchar *fullname = g_filename_from_uri(filename, NULL, NULL); if (fullname) { - pixbuf = Inkscape::IO::pixbuf_new_from_file(fullname, modTime, pixPath); + inkpb = Inkscape::Pixbuf::create_from_file(fullname); g_free(fullname); - if (pixbuf != NULL) { - return pixbuf; + if (inkpb != NULL) { + return inkpb; } } } else if (strncmp (filename,"data:",5) == 0) { /* data URI - embedded image */ filename += 5; - pixbuf = sp_image_repr_read_dataURI (filename); - if (pixbuf != NULL) { - return pixbuf; + inkpb = Inkscape::Pixbuf::create_from_data_uri(filename); + if (inkpb != NULL) { + return inkpb; } } else { @@ -806,19 +713,19 @@ GdkPixbuf *sp_image_repr_read_image( time_t& modTime, char*& pixPath, const gcha // different dir) or unset (when doc is not saved yet), so we check for base+href existence first, // and if it fails, we also try to use bare href regardless of its g_path_is_absolute if (g_file_test (fullname, G_FILE_TEST_EXISTS) && !g_file_test (fullname, G_FILE_TEST_IS_DIR)) { - pixbuf = Inkscape::IO::pixbuf_new_from_file(fullname, modTime, pixPath); + inkpb = Inkscape::Pixbuf::create_from_file(fullname); g_free (fullname); - if (pixbuf != NULL) { - return pixbuf; + if (inkpb != NULL) { + return inkpb; } } } /* try filename as absolute */ if (g_file_test (filename, G_FILE_TEST_EXISTS) && !g_file_test (filename, G_FILE_TEST_IS_DIR)) { - pixbuf = Inkscape::IO::pixbuf_new_from_file(filename, modTime, pixPath); - if (pixbuf != NULL) { - return pixbuf; + inkpb = Inkscape::Pixbuf::create_from_file(filename); + if (inkpb != NULL) { + return inkpb; } } } @@ -834,31 +741,20 @@ GdkPixbuf *sp_image_repr_read_image( time_t& modTime, char*& pixPath, const gcha g_warning ("xlink:href did not resolve to a valid image file, now trying sodipodi:absref=\"%s\"", absref); } - pixbuf = Inkscape::IO::pixbuf_new_from_file(filename, modTime, pixPath); - if (pixbuf != NULL) { - return pixbuf; + inkpb = Inkscape::Pixbuf::create_from_file(filename); + if (inkpb != NULL) { + return inkpb; } } /* Nope: We do not find any valid pixmap file :-( */ - pixbuf = gdk_pixbuf_new_from_xpm_data((const gchar **) brokenimage_xpm); + GdkPixbuf *pixbuf = gdk_pixbuf_new_from_xpm_data((const gchar **) brokenimage_xpm); + inkpb = new Inkscape::Pixbuf(pixbuf); /* It should be included xpm, so if it still does not does load, */ /* our libraries are broken */ - g_assert (pixbuf != NULL); - - return pixbuf; -} + g_assert (inkpb != NULL); -static GdkPixbuf *sp_image_pixbuf_force_rgba( GdkPixbuf * pixbuf ) -{ - GdkPixbuf* result; - if (gdk_pixbuf_get_has_alpha(pixbuf)) { - result = pixbuf; - } else { - result = gdk_pixbuf_add_alpha(pixbuf, FALSE, 0, 0, 0); - g_object_unref(pixbuf); - } - return result; + return inkpb; } /* We assert that realpixbuf is either NULL or identical size to pixbuf */ @@ -866,7 +762,7 @@ static void sp_image_update_arenaitem (SPImage *image, Inkscape::DrawingImage *ai) { ai->setStyle(SP_OBJECT(image)->style); - ai->setARGB32Pixbuf(image->pixbuf); + ai->setPixbuf(image->pixbuf); ai->setOrigin(Geom::Point(image->ox, image->oy)); ai->setScale(image->sx, image->sy); ai->setClipbox(image->clipbox); @@ -957,113 +853,6 @@ static Geom::Affine sp_image_set_transform( SPItem *item, Geom::Affine const &xf return ret; } -static GdkPixbuf *sp_image_repr_read_dataURI( const gchar * uri_data ) -{ - GdkPixbuf * pixbuf = NULL; - - gint data_is_image = 0; - gint data_is_base64 = 0; - - const gchar * data = uri_data; - - while (*data) { - if (strncmp(data,"base64",6) == 0) { - /* base64-encoding */ - data_is_base64 = 1; - data_is_image = 1; // Illustrator produces embedded images without MIME type, so we assume it's image no matter what - data += 6; - } - else if (strncmp(data,"image/png",9) == 0) { - /* PNG image */ - data_is_image = 1; - data += 9; - } - else if (strncmp(data,"image/jpg",9) == 0) { - /* JPEG image */ - data_is_image = 1; - data += 9; - } - else if (strncmp(data,"image/jpeg",10) == 0) { - /* JPEG image */ - data_is_image = 1; - data += 10; - } - else { /* unrecognized option; skip it */ - while (*data) { - if (((*data) == ';') || ((*data) == ',')) { - break; - } - data++; - } - } - if ((*data) == ';') { - data++; - continue; - } - if ((*data) == ',') { - data++; - break; - } - } - - if ((*data) && data_is_image && data_is_base64) { - pixbuf = sp_image_repr_read_b64(data); - } - - return pixbuf; -} - -static GdkPixbuf *sp_image_repr_read_b64(gchar const *uri_data) -{ - GdkPixbuf *pixbuf = NULL; - GdkPixbufLoader *loader = gdk_pixbuf_loader_new(); - - if (!loader) return NULL; - - gsize decoded_len = 0; - guchar *decoded = g_base64_decode(uri_data, &decoded_len); - - if (gdk_pixbuf_loader_write(loader, decoded, decoded_len, NULL)) { - gdk_pixbuf_loader_close(loader, NULL); - pixbuf = gdk_pixbuf_loader_get_pixbuf(loader); - g_object_ref(pixbuf); - pixbuf = sp_image_pixbuf_force_rgba(pixbuf); - pixbuf_set_mime_data(pixbuf, decoded, decoded_len, gdk_pixbuf_loader_get_format(loader)); - } else { - g_free(decoded); - } - g_object_unref(loader); - - return pixbuf; -} - -// takes ownership of passed data -static void pixbuf_set_mime_data(GdkPixbuf *pb, guchar *data, gsize len, GdkPixbufFormat *fmt) -{ - cairo_surface_t *s = ink_cairo_surface_get_for_pixbuf(pb); - - gchar const *mimetype = NULL; - gchar *fmt_name = gdk_pixbuf_format_get_name(fmt); - Glib::ustring name = fmt_name; - g_free(fmt_name); - - if (name == "jpeg") { - mimetype = CAIRO_MIME_TYPE_JPEG; - } else if (name == "jpeg2000") { - mimetype = CAIRO_MIME_TYPE_JP2; - } else if (name == "png") { - mimetype = CAIRO_MIME_TYPE_PNG; - } - - if (mimetype != NULL) { - cairo_surface_set_mime_data(s, mimetype, data, len, g_free, data); - //g_message("Setting Cairo MIME data: %s", mimetype); - } else { - g_free(data); - //g_message("Not setting Cairo MIME data: unknown format %s", name.c_str()); - } -} - static void sp_image_set_curve( SPImage *image ) { //create a curve at the image's boundary for snapping @@ -1099,31 +888,16 @@ SPCurve *sp_image_get_curve( SPImage *image ) return result; } -void sp_embed_image(Inkscape::XML::Node *image_node, GdkPixbuf *pb) +void sp_embed_image(Inkscape::XML::Node *image_node, Inkscape::Pixbuf *pb) { - static gchar const *mimetypes[] = { - CAIRO_MIME_TYPE_JPEG, CAIRO_MIME_TYPE_JP2, CAIRO_MIME_TYPE_PNG, NULL }; - static guint mimetypes_len = g_strv_length(const_cast(mimetypes)); - bool free_data = false; // check whether the pixbuf has MIME data guchar *data = NULL; gsize len = 0; - gchar const *data_mimetype = NULL; - - cairo_surface_t *s = reinterpret_cast(g_object_get_data(G_OBJECT(pb), "cairo_surface")); - if (s) { - for (guint i = 0; i < mimetypes_len; ++i) { - unsigned long len_long = 0; - cairo_surface_get_mime_data(s, mimetypes[i], const_cast(&data), &len_long); - len = len_long; // this assumes that the added range of long is not needed. the code below assumes gsize range of values is sufficient. - if (data != NULL) { - data_mimetype = mimetypes[i]; - break; - } - } - } + std::string data_mimetype; + + data = const_cast(pb->getMimeData(len, data_mimetype)); if (data == NULL) { Inkscape::Preferences *prefs = Inkscape::Preferences::get(); @@ -1131,8 +905,7 @@ void sp_embed_image(Inkscape::XML::Node *image_node, GdkPixbuf *pb) // if there is no supported MIME data, embed as PNG data_mimetype = "image/png"; - ink_pixbuf_ensure_normal(pb); - gdk_pixbuf_save_to_buffer(pb, reinterpret_cast(&data), &len, "png", NULL, + gdk_pixbuf_save_to_buffer(pb->getPixbufRaw(), reinterpret_cast(&data), &len, "png", NULL, "quality", quality.c_str(), NULL); free_data = true; } @@ -1140,11 +913,11 @@ void sp_embed_image(Inkscape::XML::Node *image_node, GdkPixbuf *pb) // Save base64 encoded data in image node // this formula taken from Glib docs gsize needed_size = len * 4 / 3 + len * 4 / (3 * 72) + 7; - needed_size += 5 + 8 + strlen(data_mimetype); // 5 bytes for data: + 8 for ;base64, + needed_size += 5 + 8 + data_mimetype.size(); // 5 bytes for data: + 8 for ;base64, gchar *buffer = (gchar *) g_malloc(needed_size); gchar *buf_work = buffer; - buf_work += g_sprintf(buffer, "data:%s;base64,", data_mimetype); + buf_work += g_sprintf(buffer, "data:%s;base64,", data_mimetype.c_str()); gint state = 0; gint save = 0; @@ -1164,18 +937,18 @@ void sp_embed_image(Inkscape::XML::Node *image_node, GdkPixbuf *pb) void sp_image_refresh_if_outdated( SPImage* image ) { - if ( image->href && image->lastMod ) { + if ( image->href && image->pixbuf && image->pixbuf->modificationTime()) { // It *might* change struct stat st; memset(&st, 0, sizeof(st)); int val = 0; - if (g_file_test (image->pixPath, G_FILE_TEST_EXISTS)){ - val = g_stat(image->pixPath, &st); + if (g_file_test (image->pixbuf->originalPath().c_str(), G_FILE_TEST_EXISTS)){ + val = g_stat(image->pixbuf->originalPath().c_str(), &st); } if ( !val ) { // stat call worked. Check time now - if ( st.st_mtime != image->lastMod ) { + if ( st.st_mtime != image->pixbuf->modificationTime() ) { SPCtx *ctx = 0; unsigned int flags = SP_IMAGE_HREF_MODIFIED_FLAG; sp_image_update(image, ctx, flags); diff --git a/src/sp-image.h b/src/sp-image.h index c197f6473..d137c7bf4 100644 --- a/src/sp-image.h +++ b/src/sp-image.h @@ -1,9 +1,6 @@ -#ifndef __SP_IMAGE_H__ -#define __SP_IMAGE_H__ - -/* +/** @file * SVG implementation - * + *//* * Authors: * Lauris Kaplinski * Edward Flick (EAF) @@ -14,21 +11,24 @@ * Released under GNU GPL, read the file 'COPYING' for more information */ -#define SP_TYPE_IMAGE (sp_image_get_type ()) -#define SP_IMAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SP_TYPE_IMAGE, SPImage)) -#define SP_IMAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SP_TYPE_IMAGE, SPImageClass)) -#define SP_IS_IMAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_IMAGE)) -#define SP_IS_IMAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_IMAGE)) - -/* SPImage */ +#ifndef SEEN_INKSCAPE_SP_IMAGE_H +#define SEEN_INKSCAPE_SP_IMAGE_H #include #include #include "svg/svg-length.h" #include "sp-item.h" +#define SP_TYPE_IMAGE (sp_image_get_type ()) +#define SP_IMAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SP_TYPE_IMAGE, SPImage)) +#define SP_IMAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SP_TYPE_IMAGE, SPImageClass)) +#define SP_IS_IMAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_IMAGE)) +#define SP_IS_IMAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_IMAGE)) + #define SP_IMAGE_HREF_MODIFIED_FLAG SP_OBJECT_USER_MODIFIED_FLAG_A +namespace Inkscape { class Pixbuf; } + struct SPImage : public SPItem { SVGLength x; SVGLength y; @@ -53,9 +53,7 @@ struct SPImage : public SPItem { gchar *color_profile; #endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2) - GdkPixbuf *pixbuf; - gchar *pixPath; - time_t lastMod; + Inkscape::Pixbuf *pixbuf; }; struct SPImageClass { @@ -66,7 +64,7 @@ GType sp_image_get_type (void); /* Return duplicate of curve or NULL */ SPCurve *sp_image_get_curve (SPImage *image); -void sp_embed_image(Inkscape::XML::Node *imgnode, GdkPixbuf *pb); +void sp_embed_image(Inkscape::XML::Node *imgnode, Inkscape::Pixbuf *pb); void sp_image_refresh_if_outdated( SPImage* image ); #endif diff --git a/src/trace/trace.cpp b/src/trace/trace.cpp index cad8ea9be..e2cda6247 100644 --- a/src/trace/trace.cpp +++ b/src/trace/trace.cpp @@ -31,6 +31,7 @@ #include <2geom/transforms.h> #include "verbs.h" +#include "display/cairo-utils.h" #include "display/drawing.h" #include "display/drawing-shape.h" @@ -336,8 +337,17 @@ Glib::RefPtr Tracer::getSelectedImage() if (!img->pixbuf) return Glib::RefPtr(NULL); - Glib::RefPtr pixbuf = - Glib::wrap(img->pixbuf, true); + GdkPixbuf *raw_pb = img->pixbuf->getPixbufRaw(false); + GdkPixbuf *trace_pb = gdk_pixbuf_copy(raw_pb); + if (img->pixbuf->pixelFormat() == Inkscape::Pixbuf::PF_CAIRO) { + convert_pixels_argb32_to_pixbuf( + gdk_pixbuf_get_pixels(trace_pb), + gdk_pixbuf_get_width(trace_pb), + gdk_pixbuf_get_height(trace_pb), + gdk_pixbuf_get_rowstride(trace_pb)); + } + + Glib::RefPtr pixbuf = Glib::wrap(trace_pb, false); if (sioxEnabled) { @@ -410,7 +420,16 @@ void Tracer::traceThread() return; } - Glib::RefPtr pixbuf = Glib::wrap(img->pixbuf, true); + GdkPixbuf *trace_pb = gdk_pixbuf_copy(img->pixbuf->getPixbufRaw(false)); + if (img->pixbuf->pixelFormat() == Inkscape::Pixbuf::PF_CAIRO) { + convert_pixels_argb32_to_pixbuf( + gdk_pixbuf_get_pixels(trace_pb), + gdk_pixbuf_get_width(trace_pb), + gdk_pixbuf_get_height(trace_pb), + gdk_pixbuf_get_rowstride(trace_pb)); + } + + Glib::RefPtr pixbuf = Glib::wrap(trace_pb, false); pixbuf = sioxProcessImage(img, pixbuf); -- cgit v1.2.3 From 509ef3751bec8b1d4416e9c136eb5d2776d0c63a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vin=C3=ADcius=20dos=20Santos=20Oliveira?= Date: Thu, 19 Sep 2013 01:52:47 -0300 Subject: Updating libdepixelize integration to use new Inkscape::Pixbuf interface. Fixes build issue introduced in last commit. (bzr r12534) --- src/ui/dialog/pixelartdialog.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/ui/dialog/pixelartdialog.cpp b/src/ui/dialog/pixelartdialog.cpp index 6f0845ada..16d3c079d 100644 --- a/src/ui/dialog/pixelartdialog.cpp +++ b/src/ui/dialog/pixelartdialog.cpp @@ -37,6 +37,7 @@ #include "preferences.h" #include "sp-image.h" +#include "display/cairo-utils.h" #include "libdepixelize/kopftracer2011.h" #include #include "document.h" @@ -363,12 +364,13 @@ void PixelArtDialogImpl::processLibdepixelize(SPImage *img) { Tracer::Splines out; + Glib::RefPtr pixbuf + = Glib::wrap(img->pixbuf->getPixbufRaw(), true); + if ( voronoiRadioButton.get_active() ) { - out = Tracer::Kopf2011::to_voronoi(Glib::wrap(img->pixbuf, true), - options()); + out = Tracer::Kopf2011::to_voronoi(pixbuf, options()); } else { - out = Tracer::Kopf2011::to_splines(Glib::wrap(img->pixbuf, true), - options()); + out = Tracer::Kopf2011::to_splines(pixbuf, options()); } Inkscape::XML::Document *xml_doc = desktop->doc()->getReprDoc(); -- cgit v1.2.3 From 2454f5dff9f989548b15154707d011b76ac76457 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vin=C3=ADcius=20dos=20Santos=20Oliveira?= Date: Thu, 19 Sep 2013 01:58:26 -0300 Subject: Fixing colors in libdepixelize integration output. (bzr r12535) --- src/ui/dialog/pixelartdialog.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/ui/dialog/pixelartdialog.cpp b/src/ui/dialog/pixelartdialog.cpp index 16d3c079d..ef181b357 100644 --- a/src/ui/dialog/pixelartdialog.cpp +++ b/src/ui/dialog/pixelartdialog.cpp @@ -386,9 +386,9 @@ void PixelArtDialogImpl::processLibdepixelize(SPImage *img) { gchar b[64]; sp_svg_write_color(b, sizeof(b), - SP_RGBA32_U_COMPOSE(unsigned(it->rgba[2]), + SP_RGBA32_U_COMPOSE(unsigned(it->rgba[0]), unsigned(it->rgba[1]), - unsigned(it->rgba[0]), + unsigned(it->rgba[2]), unsigned(it->rgba[3]))); sp_repr_css_set_property(css, "fill", b); -- cgit v1.2.3 From 23b4c7fcb81ee195acb9bfd470723728f89bfc4a Mon Sep 17 00:00:00 2001 From: Martin Owens Date: Thu, 19 Sep 2013 08:35:32 -0400 Subject: Revert some agressive changes and allow a seperate filter bbox for FER, should be refactored at some point. (bzr r12536) --- src/display/drawing-item.cpp | 8 +++++++- src/display/drawing-item.h | 2 ++ src/display/nr-filter.cpp | 9 ++++++--- src/libnrtype/Layout-TNG-Output.cpp | 1 + src/sp-item.cpp | 10 ++++++++++ 5 files changed, 26 insertions(+), 4 deletions(-) diff --git a/src/display/drawing-item.cpp b/src/display/drawing-item.cpp index 097a5fe76..a9836a9e3 100644 --- a/src/display/drawing-item.cpp +++ b/src/display/drawing-item.cpp @@ -281,6 +281,12 @@ DrawingItem::setZOrder(unsigned z) _markForRendering(); } +void +DrawingItem::setItemBounds(Geom::OptRect const &bounds) +{ + if (bounds) _filter_bbox = bounds; +} + /** * Update derived data before operations. * The purpose of this call is to recompute internal data which depends @@ -346,7 +352,7 @@ DrawingItem::update(Geom::IntRect const &area, UpdateContext const &ctx, unsigne if (to_update & STATE_BBOX) { // compute drawbox - if (_filter && render_filters) { + if (_filter && render_filters && _bbox) { Geom::IntRect newbox(*_bbox); _filter->area_enlarge(newbox, this); _drawbox = Geom::OptIntRect(newbox); diff --git a/src/display/drawing-item.h b/src/display/drawing-item.h index 650653ce2..8020659db 100644 --- a/src/display/drawing-item.h +++ b/src/display/drawing-item.h @@ -89,6 +89,7 @@ public: Geom::OptIntRect geometricBounds() const { return _bbox; } Geom::OptIntRect visualBounds() const { return _drawbox; } + Geom::OptRect filterBounds() const { return _filter_bbox; } Geom::Affine ctm() const { return _ctm; } Geom::Affine transform() const { return _transform ? *_transform : Geom::identity(); } Drawing &drawing() const { return _drawing; } @@ -174,6 +175,7 @@ protected: Geom::Affine _ctm; ///< Total transform from item coords to display coords Geom::OptIntRect _bbox; ///< Bounding box in display (pixel) coords including stroke Geom::OptIntRect _drawbox; ///< Full visual bounding box - enlarged by filters, shrunk by clips and masks + Geom::OptRect _filter_bbox; ///< Used by filters when settings bounds DrawingItem *_clip; DrawingItem *_mask; diff --git a/src/display/nr-filter.cpp b/src/display/nr-filter.cpp index 54bd36168..a0103cbb0 100644 --- a/src/display/nr-filter.cpp +++ b/src/display/nr-filter.cpp @@ -115,12 +115,15 @@ int Filter::render(Inkscape::DrawingItem const *item, DrawingContext &graphic, D Geom::Affine trans = item->ctm(); // Get filter are, the filter_effect_area is already done in visualBounds - Geom::OptRect filter_area = item->geometricBounds(); - if (!filter_area) return 1; + Geom::OptRect filter_area = item->filterBounds(); + // Use the geometricBounds as a backup solution + if (!filter_area || (filter_area->hasZeroArea() && + filter_area->min()[Geom::X] == 0 && filter_area->min()[Geom::Y] == 0)) + filter_area = item->geometricBounds(); FilterUnits units(_filter_units, _primitive_units); units.set_ctm(trans); - units.set_item_bbox(item->geometricBounds()); + units.set_item_bbox(filter_area); units.set_filter_area(*filter_area); std::pair resolution diff --git a/src/libnrtype/Layout-TNG-Output.cpp b/src/libnrtype/Layout-TNG-Output.cpp index 9967ba149..f7f910c2f 100644 --- a/src/libnrtype/Layout-TNG-Output.cpp +++ b/src/libnrtype/Layout-TNG-Output.cpp @@ -181,6 +181,7 @@ void Layout::show(DrawingGroup *in_arena, Geom::OptRect const &paintbox) const glyph_index++; } nr_text->setStyle(text_source->style); + nr_text->setItemBounds(paintbox); in_arena->prependChild(nr_text); } } diff --git a/src/sp-item.cpp b/src/sp-item.cpp index 52ccdbdd4..e6991a1fa 100644 --- a/src/sp-item.cpp +++ b/src/sp-item.cpp @@ -601,6 +601,15 @@ void SPItem::update(SPCtx *ctx, guint flags) { } } } + /* Update bounding box data used by filters */ + if (item->style->filter.set && item->display) { + Geom::OptRect item_bbox = item->visualBounds(); + SPItemView *itemview = item->display; + do { + if (itemview->arenaitem) + itemview->arenaitem->setItemBounds(item_bbox); + } while ( (itemview = itemview->next) ); + } // Update libavoid with item geometry (for connector routing). if (item->avoidRef) @@ -1050,6 +1059,7 @@ Inkscape::DrawingItem *SPItem::invoke_show(Inkscape::Drawing &drawing, unsigned item_bbox = visualBounds(); } ai->setData(this); + ai->setItemBounds(item_bbox); } return ai; -- cgit v1.2.3 From 0191af5c169ac3e3086873f6edbe33dd17800773 Mon Sep 17 00:00:00 2001 From: Krzysztof Kosi??ski Date: Thu, 19 Sep 2013 15:23:02 +0200 Subject: Fix type mismatch for platforms where gsize is not unsigned long (bzr r12537) --- src/display/cairo-utils.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/display/cairo-utils.cpp b/src/display/cairo-utils.cpp index 2c7b543c1..451f0b509 100644 --- a/src/display/cairo-utils.cpp +++ b/src/display/cairo-utils.cpp @@ -399,9 +399,9 @@ guchar const *Pixbuf::getMimeData(gsize &len, std::string &mimetype) const for (guint i = 0; i < mimetypes_len; ++i) { unsigned long len_long = 0; - cairo_surface_get_mime_data(const_cast(_surface), mimetypes[i], &data, &len); - len = len_long; // this assumes that the added range of long is not needed. the code below assumes gsize range of values is sufficient. + cairo_surface_get_mime_data(const_cast(_surface), mimetypes[i], &data, &len_long); if (data != NULL) { + len = len_long; mimetype = mimetypes[i]; break; } -- cgit v1.2.3 From ff996cb240f1d196839f7fffb6f27ddc0e10a9bd Mon Sep 17 00:00:00 2001 From: Krzysztof Kosi??ski Date: Thu, 19 Sep 2013 15:23:51 +0200 Subject: Remove outdated example file sp-skeleton.cpp (bzr r12538) --- src/CMakeLists.txt | 2 - src/Makefile.am | 1 - src/doxygen-main.cpp | 1 - src/sp-skeleton.cpp | 198 --------------------------------------------------- src/sp-skeleton.h | 48 ------------- 5 files changed, 250 deletions(-) delete mode 100644 src/sp-skeleton.cpp delete mode 100644 src/sp-skeleton.h diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index c395ce957..a09bceb06 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -61,7 +61,6 @@ set(sp_SRC sp-root.cpp sp-script.cpp sp-shape.cpp - # sp-skeleton.cpp sp-spiral.cpp sp-star.cpp sp-stop.cpp @@ -153,7 +152,6 @@ set(sp_SRC sp-root.h sp-script.h sp-shape.h - # sp-skeleton.h sp-spiral.h sp-star.h sp-stop.h diff --git a/src/Makefile.am b/src/Makefile.am index 5fd9f36a1..a0c240252 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -183,7 +183,6 @@ EXTRA_DIST += \ io/crystalegg.xml \ io/doc2html.xsl \ show-preview.bmp \ - sp-skeleton.cpp sp-skeleton.h \ winconsole.cpp \ libdepixelize/makefile.in \ $(CXXTEST_TEMPLATE) diff --git a/src/doxygen-main.cpp b/src/doxygen-main.cpp index a1d3f3604..e581b8708 100644 --- a/src/doxygen-main.cpp +++ b/src/doxygen-main.cpp @@ -245,7 +245,6 @@ namespace XML {} * - SPLinearGradient * - SPRadialGradient * - SPPattern [\ref sp-pattern.cpp, \ref sp-pattern.h] - * - SPSkeleton [\ref sp-skeleton.cpp, \ref sp-skeleton.h] * - SPStop [\ref sp-stop.h] * - SPString [\ref sp-string.cpp, \ref sp-string.h] * - SPStyleElem [\ref sp-style-elem.cpp, \ref sp-style-elem.h] diff --git a/src/sp-skeleton.cpp b/src/sp-skeleton.cpp deleted file mode 100644 index 83f2bc20d..000000000 --- a/src/sp-skeleton.cpp +++ /dev/null @@ -1,198 +0,0 @@ -/** \file - * SVG implementation, used as an example for a base starting class - * when implementing new sp-objects. - * - * In vi, three global search-and-replaces will let you rename everything - * in this and the .h file: - * - * :%s/SKELETON/YOURNAME/g - * :%s/Skeleton/Yourname/g - * :%s/skeleton/yourname/g - */ -/* - * Authors: - * Kees Cook - * Abhishek Sharma - * - * Copyright (C) 2004 Kees Cook - * - * Released under GNU GPL, read the file 'COPYING' for more information - */ - -#ifdef HAVE_CONFIG_H -# include "config.h" -#endif - -#include "attributes.h" -#include "sp-skeleton.h" -#include "xml/repr.h" - -#define DEBUG_SKELETON -#ifdef DEBUG_SKELETON -# define debug(f, a...) { g_print("%s(%d) %s:", \ - __FILE__,__LINE__,__FUNCTION__); \ - g_print(f, ## a); \ - g_print("\n"); \ - } -#else -# define debug(f, a...) /**/ -#endif - -/* Skeleton base class */ -static void sp_skeleton_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr); -static void sp_skeleton_release(SPObject *object); -static void sp_skeleton_set(SPObject *object, unsigned int key, gchar const *value); -static void sp_skeleton_update(SPObject *object, SPCtx *ctx, guint flags); -static Inkscape::XML::Node *sp_skeleton_write(SPObject *object, Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags); - -G_DEFINE_TYPE(SPSkeleton, sp_skeleton, SP_TYPE_OBJECT); - -static void -sp_skeleton_class_init(SPSkeletonClass *klass) -{ - SPObjectClass *sp_object_class = (SPObjectClass *)klass; - -<<<<<<< TREE - sp_object_class->build = sp_skeleton_build; -======= - skeleton_parent_class = (SPObjectClass*)g_type_class_peek_parent(klass); - - //sp_object_class->build = sp_skeleton_build; ->>>>>>> MERGE-SOURCE - sp_object_class->release = sp_skeleton_release; - sp_object_class->write = sp_skeleton_write; - sp_object_class->set = sp_skeleton_set; - sp_object_class->update = sp_skeleton_update; -} - -static void -sp_skeleton_init(SPSkeleton *skeleton) -{ - debug("0x%p",skeleton); -} - -/** - * Reads the Inkscape::XML::Node, and initializes SPSkeleton variables. For this to get called, - * our name must be associated with a repr via "sp_object_type_register". Best done through - * sp-object-repr.cpp's repr_name_entries array. - */ -static void -sp_skeleton_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) -{ - debug("0x%p",object); -<<<<<<< TREE - if (((SPObjectClass *) sp_skeleton_parent_class)->build) { - ((SPObjectClass *) sp_skeleton_parent_class)->build(object, document, repr); - } -======= -// if (((SPObjectClass *) skeleton_parent_class)->build) { -// ((SPObjectClass *) skeleton_parent_class)->build(object, document, repr); -// } ->>>>>>> MERGE-SOURCE - - /* - Pay attention to certain settings here - - object->readAttr( "xlink:href" ); - object->readAttr( "attributeName" ); - object->readAttr( "attributeType" ); - object->readAttr( "begin" ); - object->readAttr( "dur" ); - object->readAttr( "end" ); - object->readAttr( "min" ); - object->readAttr( "max" ); - object->readAttr( "restart" ); - object->readAttr( "repeatCount" ); - object->readAttr( "repeatDur" ); - object->readAttr( "fill" ); - */ -} - -/** - * Drops any allocated memory. - */ -static void -sp_skeleton_release(SPObject *object) -{ - debug("0x%p",object); - - /* deal with our children and our selves here */ - - if (((SPObjectClass *) sp_skeleton_parent_class)->release) - ((SPObjectClass *) sp_skeleton_parent_class)->release(object); -} - -/** - * Sets a specific value in the SPSkeleton. - */ -static void -sp_skeleton_set(SPObject *object, unsigned int key, gchar const *value) -{ - debug("0x%p %s(%u): '%s'",object, - sp_attribute_name(key),key,value ? value : ""); - //SPSkeleton *skeleton = SP_SKELETON(object); - - /* See if any parents need this value. */ - if (((SPObjectClass *) sp_skeleton_parent_class)->set) { - ((SPObjectClass *) sp_skeleton_parent_class)->set(object, key, value); - } -} - -/** - * Receives update notifications. - */ -static void -sp_skeleton_update(SPObject *object, SPCtx *ctx, guint flags) -{ - debug("0x%p",object); - //SPSkeleton *skeleton = SP_SKELETON(object); - - if (flags & (SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG | - SP_OBJECT_VIEWPORT_MODIFIED_FLAG)) { - - /* do something to trigger redisplay, updates? */ - - } - - if (((SPObjectClass *) sp_skeleton_parent_class)->update) { - ((SPObjectClass *) sp_skeleton_parent_class)->update(object, ctx, flags); - } -} - -/** - * Writes its settings to an incoming repr object, if any. - */ -static Inkscape::XML::Node * -sp_skeleton_write(SPObject *object, Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) -{ - debug("0x%p",object); - //SPSkeleton *skeleton = SP_SKELETON(object); - - // Inkscape-only object, not copied during an "plain SVG" dump: - if (flags & SP_OBJECT_WRITE_EXT) { - if (repr) { - // is this sane? - repr->mergeFrom(object->getRepr(), "id"); - } else { - repr = object->getRepr()->duplicate(doc); - } - } - - if (((SPObjectClass *) sp_skeleton_parent_class)->write) { - ((SPObjectClass *) sp_skeleton_parent_class)->write(object, doc, repr, flags); - } - - return repr; -} - - -/* - Local Variables: - mode:c++ - c-file-style:"stroustrup" - c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +)) - indent-tabs-mode:nil - fill-column:99 - End: -*/ -// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 : diff --git a/src/sp-skeleton.h b/src/sp-skeleton.h deleted file mode 100644 index d01cbcada..000000000 --- a/src/sp-skeleton.h +++ /dev/null @@ -1,48 +0,0 @@ -#ifndef SP_SKELETON_H_SEEN -#define SP_SKELETON_H_SEEN - -/** \file - * SVG implementation, see sp-skeleton.cpp. - */ -/* - * Authors: - * Kees Cook - * - * Copyright (C) 2004 Kees Cook - * - * Released under GNU GPL, read the file 'COPYING' for more information - */ - -#include "sp-object.h" - -/* Skeleton base class */ - -#define SP_TYPE_SKELETON (sp_skeleton_get_type()) -#define SP_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST((o), SP_TYPE_SKELETON, SPSkeleton)) -#define SP_IS_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), SP_TYPE_SKELETON)) - -class SPSkeleton; -class SPSkeletonClass; - -struct SPSkeleton : public SPObject { -}; - -struct SPSkeletonClass { - SPObjectClass parent_class; -}; - -GType sp_skeleton_get_type(); - - -#endif /* !SP_SKELETON_H_SEEN */ - -/* - Local Variables: - mode:c++ - c-file-style:"stroustrup" - c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +)) - indent-tabs-mode:nil - fill-column:99 - End: -*/ -// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 : -- cgit v1.2.3 From 26e21f069d05a0ba22ec97a54bb541ff7346196d Mon Sep 17 00:00:00 2001 From: Krzysztof Kosi??ski Date: Thu, 19 Sep 2013 17:52:21 +0200 Subject: Fix colors when tracing (bzr r12541) --- src/trace/imagemap-gdk.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/trace/imagemap-gdk.cpp b/src/trace/imagemap-gdk.cpp index 7c7139002..298414074 100644 --- a/src/trace/imagemap-gdk.cpp +++ b/src/trace/imagemap-gdk.cpp @@ -152,9 +152,9 @@ RgbMap *gdkPixbufToRgbMap(GdkPixbuf *buf) { int alpha = (int)p[3]; int white = 255 - alpha; - int r = (int)p[2]; r = r * alpha / 256 + white; + int r = (int)p[0]; r = r * alpha / 256 + white; int g = (int)p[1]; g = g * alpha / 256 + white; - int b = (int)p[0]; b = b * alpha / 256 + white; + int b = (int)p[2]; b = b * alpha / 256 + white; rgbMap->setPixel(rgbMap, x, y, r, g, b); p += n_channels; -- cgit v1.2.3 From b8e959420c0a1f34995b5186adf1f4bf4ac30858 Mon Sep 17 00:00:00 2001 From: Krzysztof Kosi??ski Date: Thu, 19 Sep 2013 17:52:49 +0200 Subject: Remove a warning when embedding an image with a mimetype which is not directly handled by Cairo (bzr r12542) --- src/sp-image.cpp | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/sp-image.cpp b/src/sp-image.cpp index b4125d01b..47d8287b4 100644 --- a/src/sp-image.cpp +++ b/src/sp-image.cpp @@ -863,13 +863,9 @@ void sp_embed_image(Inkscape::XML::Node *image_node, Inkscape::Pixbuf *pb) data = const_cast(pb->getMimeData(len, data_mimetype)); if (data == NULL) { - Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - Glib::ustring quality = Glib::ustring::format(prefs->getInt("/dialogs/import/quality", 100)); - // if there is no supported MIME data, embed as PNG data_mimetype = "image/png"; - gdk_pixbuf_save_to_buffer(pb->getPixbufRaw(), reinterpret_cast(&data), &len, "png", NULL, - "quality", quality.c_str(), NULL); + gdk_pixbuf_save_to_buffer(pb->getPixbufRaw(), reinterpret_cast(&data), &len, "png", NULL, NULL); free_data = true; } -- cgit v1.2.3 From 10ad175dc0513e396f3fcd57917537b6708ab515 Mon Sep 17 00:00:00 2001 From: Krzysztof Kosi??ski Date: Thu, 19 Sep 2013 17:56:58 +0200 Subject: Fix serious potential bug in SPImage::print (bzr r12543) --- src/sp-image.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/sp-image.cpp b/src/sp-image.cpp index 47d8287b4..80daf33c3 100644 --- a/src/sp-image.cpp +++ b/src/sp-image.cpp @@ -609,7 +609,7 @@ void SPImage::print(SPPrintContext *ctx) { t = ti * t; sp_print_image_R8G8B8A8_N(ctx, px + trimx*pixskip + trimy*rs, trimwidth, trimheight, rs, t, this->style); } - g_object_unref(pb); + delete pb; } } -- cgit v1.2.3 From f74229c8bc1a97f5f30ea658c178fde50834eb73 Mon Sep 17 00:00:00 2001 From: Adrian Johnson <> Date: Thu, 19 Sep 2013 19:03:35 +0200 Subject: Do not require a new layer for clipping paths in the Cairo renderer. Fixes LP #523285. Fixed bugs: - https://launchpad.net/bugs/523285 (bzr r12544) --- src/extension/internal/cairo-renderer.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/extension/internal/cairo-renderer.cpp b/src/extension/internal/cairo-renderer.cpp index eb16a38e1..cace251cf 100644 --- a/src/extension/internal/cairo-renderer.cpp +++ b/src/extension/internal/cairo-renderer.cpp @@ -580,9 +580,9 @@ void CairoRenderer::renderItem(CairoRenderContext *ctx, SPItem *item) setStateForItem(ctx, item); CairoRenderState *state = ctx->getCurrentState(); - state->need_layer = ( state->mask || state->clip_path || state->opacity != 1.0 ); + state->need_layer = ( state->mask || state->opacity != 1.0 ); - // Draw item on a temporary surface so a mask, clip path, or opacity can be applied to it. + // Draw item on a temporary surface so a mask or opacity can be applied to it. if (state->need_layer) { state->merge_opacity = FALSE; ctx->pushLayer(); -- cgit v1.2.3 From 0fea1d0d5af42e2dadf5dd3e4df779e68b7c6dfa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vin=C3=ADcius=20dos=20Santos=20Oliveira?= Date: Thu, 19 Sep 2013 17:43:38 -0300 Subject: Removing redundant "include config.h" (bzr r12545) --- src/ui/dialog/pixelartdialog.cpp | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/ui/dialog/pixelartdialog.cpp b/src/ui/dialog/pixelartdialog.cpp index ef181b357..24c1ec37f 100644 --- a/src/ui/dialog/pixelartdialog.cpp +++ b/src/ui/dialog/pixelartdialog.cpp @@ -16,10 +16,6 @@ # include #endif -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - #include "pixelartdialog.h" #include #include -- cgit v1.2.3 From 47f1c1ee40b8185001b047c2a7bc2ca58e40ab0f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vin=C3=ADcius=20dos=20Santos=20Oliveira?= Date: Thu, 19 Sep 2013 18:14:28 -0300 Subject: Show warning when input image of Trace Pixel Art dialog is too large. (bzr r12546) --- src/ui/dialog/pixelartdialog.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/ui/dialog/pixelartdialog.cpp b/src/ui/dialog/pixelartdialog.cpp index 24c1ec37f..e07cbccb5 100644 --- a/src/ui/dialog/pixelartdialog.cpp +++ b/src/ui/dialog/pixelartdialog.cpp @@ -19,6 +19,7 @@ #include "pixelartdialog.h" #include #include +#include #include //for GTK_RESPONSE* types #include @@ -363,6 +364,17 @@ void PixelArtDialogImpl::processLibdepixelize(SPImage *img) Glib::RefPtr pixbuf = Glib::wrap(img->pixbuf->getPixbufRaw(), true); + if ( pixbuf->get_width() > 256 || pixbuf->get_height() > 256 ) { + char *msg = _("Image looks too big. Process may take a while and is" + " wise to save your document before continue." + "\n\nContinue the procedure (without saving)?"); + Gtk::MessageDialog dialog(msg, false, Gtk::MESSAGE_WARNING, + Gtk::BUTTONS_OK_CANCEL, true); + + if ( dialog.run() != Gtk::RESPONSE_OK ) + return; + } + if ( voronoiRadioButton.get_active() ) { out = Tracer::Kopf2011::to_voronoi(pixbuf, options()); } else { -- cgit v1.2.3 From 044c350e4c0e27e97cb39dd6dbb25e7655c302d1 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Fri, 20 Sep 2013 07:38:24 +1000 Subject: updates for cmake (bzr r12547) --- CMakeScripts/cmake_consistency_check_config.py | 17 +++++++---------- src/CMakeLists.txt | 19 +++++++++---------- src/io/CMakeLists.txt | 2 -- src/libdepixelize/CMakeLists.txt | 13 +++++++++++-- src/svg/CMakeLists.txt | 3 --- src/ui/CMakeLists.txt | 3 ++- 6 files changed, 29 insertions(+), 28 deletions(-) diff --git a/CMakeScripts/cmake_consistency_check_config.py b/CMakeScripts/cmake_consistency_check_config.py index 4850eb259..3ee6d4449 100644 --- a/CMakeScripts/cmake_consistency_check_config.py +++ b/CMakeScripts/cmake_consistency_check_config.py @@ -30,7 +30,6 @@ IGNORE = ( "src/libnr/nr-compose-reference.cpp", "src/libnr/testnr.cp", "src/live_effects/lpe-skeleton.cpp", - "src/sp-skeleton.cpp", "src/svg/test-stubs.cpp", "src/ui/dialog/session-player.cpp", "src/ui/dialog/whiteboard-connect.cpp", @@ -41,15 +40,13 @@ IGNORE = ( # header files "share/filters/filters.svg.h", "share/palettes/palettes.h", - "src/inkscape/share/palettes/palettes.h", - "src/inkscape/share/patterns/patterns.svg.h", - "src/inkscape/src/libcola/cycle_detector.h", - "src/inkscape/src/libnr/in-svg-plane-test.h", - "src/inkscape/src/libnr/nr-point-fns-test.h", - "src/inkscape/src/libnr/nr-translate-test.h", - "src/inkscape/src/libnr/nr-types-test.h", - "src/inkscape/src/sp-skeleton.h", - "src/inkscape/src/svg/test-stubs.h", + "share/palettes/palettes.h", + "share/patterns/patterns.svg.h", + "src/libcola/cycle_detector.h", + "src/libnr/in-svg-plane-test.h", + "src/libnr/nr-point-fns-test.h", + "src/libnr/nr-translate-test.h", + "src/svg/test-stubs.h", # generated files, created by an in-source build "CMakeFiles/CompilerIdC/CMakeCCompilerId.c", diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index a09bceb06..67c5be11a 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -40,16 +40,17 @@ set(sp_SRC sp-item-update-cns.cpp sp-item.cpp sp-line.cpp + sp-linear-gradient.cpp sp-lpe-item.cpp sp-mask.cpp sp-mesh-array.cpp + sp-mesh-gradient.cpp sp-mesh-patch.cpp sp-mesh-row.cpp sp-metadata.cpp sp-missing-glyph.cpp sp-namedview.cpp sp-object-group.cpp - sp-object-repr.cpp sp-object.cpp sp-offset.cpp sp-paint-server.cpp @@ -57,6 +58,7 @@ set(sp_SRC sp-pattern.cpp sp-polygon.cpp sp-polyline.cpp + sp-radial-gradient.cpp sp-rect.cpp sp-root.cpp sp-script.cpp @@ -92,6 +94,7 @@ set(sp_SRC sp-defs.h sp-desc.h sp-ellipse.h + sp-factory.h sp-filter-primitive.h sp-filter-reference.h sp-filter-units.h @@ -103,7 +106,6 @@ set(sp_SRC sp-font.h sp-glyph-kerning.h sp-glyph.h - sp-gradient-fns.h sp-gradient-reference.h sp-gradient-spread.h sp-gradient-test.h @@ -121,23 +123,18 @@ set(sp_SRC sp-item-update-cns.h sp-item.h sp-line.h - sp-linear-gradient-fns.h sp-linear-gradient.h sp-lpe-item.h sp-marker-loc.h sp-mask.h sp-mesh-array.h - sp-mesh-gradient-fns.h sp-mesh-gradient.h - sp-mesh-patch-fns.h sp-mesh-patch.h - sp-mesh-row-fns.h sp-mesh-row.h sp-metadata.h sp-missing-glyph.h sp-namedview.h sp-object-group.h - sp-object-repr.h sp-object.h sp-offset.h sp-paint-server-reference.h @@ -146,7 +143,6 @@ set(sp_SRC sp-pattern.h sp-polygon.h sp-polyline.h - sp-radial-gradient-fns.h sp-radial-gradient.h sp-rect.h sp-root.h @@ -357,6 +353,7 @@ set(inkscape_SRC event.h extract-uri-test.h extract-uri.h + factory.h file.h fill-or-stroke.h filter-chemistry.h @@ -393,7 +390,7 @@ set(inkscape_SRC knotholder.h layer-fns.h layer-manager.h - layer-model.h + layer-model.h line-geometry.h line-snapper.h lpe-tool-context.h @@ -474,6 +471,7 @@ set(inkscape_SRC text-context.h text-editing.h text-tag-attributes.h + tool-factory.h tools-switch.h transf_mat_3x4.h tweak-context.h @@ -490,7 +488,7 @@ set(inkscape_SRC ) if(WIN32) - list(APPEND inkscape_SRC + list(APPEND inkscape_SRC registrytool.cpp #deptool.cpp winmain.cpp @@ -597,6 +595,7 @@ target_link_libraries(inkscape livarot_LIB uemf_LIB 2geom_LIB + depixelize_LIB ${INKSCAPE_LIBS} ) diff --git a/src/io/CMakeLists.txt b/src/io/CMakeLists.txt index 8f8355c03..ef577b014 100644 --- a/src/io/CMakeLists.txt +++ b/src/io/CMakeLists.txt @@ -2,7 +2,6 @@ set(io_SRC base64stream.cpp bufferstream.cpp - ftos.cpp gzipstream.cpp inkjar.cpp inkscapestream.cpp @@ -16,7 +15,6 @@ set(io_SRC # Headers base64stream.h bufferstream.h - ftos.h gzipstream.h inkjar.h inkscapestream.h diff --git a/src/libdepixelize/CMakeLists.txt b/src/libdepixelize/CMakeLists.txt index 64a72f9d9..e05849e29 100644 --- a/src/libdepixelize/CMakeLists.txt +++ b/src/libdepixelize/CMakeLists.txt @@ -4,8 +4,17 @@ set(libdepixelize_SRC # ------- # Headers - kopftracer2011.h - splines.h + kopftracer2011.h + splines.h + + priv/branchless.h + priv/colorspace.h + priv/homogeneoussplines.h + priv/iterator.h + priv/pixelgraph.h + priv/point.h + priv/simplifiedvoronoi.h + priv/splines.h ) add_inkscape_lib(depixelize_LIB "${libdepixelize_SRC}") diff --git a/src/svg/CMakeLists.txt b/src/svg/CMakeLists.txt index 943c3088f..968287895 100644 --- a/src/svg/CMakeLists.txt +++ b/src/svg/CMakeLists.txt @@ -1,10 +1,7 @@ set(svg_SRC css-ostringstream.cpp - #ftos.cpp - itos.cpp path-string.cpp - round.cpp sp-svg.def stringstream.cpp strip-trailing-zeros.cpp diff --git a/src/ui/CMakeLists.txt b/src/ui/CMakeLists.txt index 233e01862..24324c874 100644 --- a/src/ui/CMakeLists.txt +++ b/src/ui/CMakeLists.txt @@ -175,6 +175,7 @@ set(ui_SRC dialog/object-properties.h dialog/ocaldialogs.h dialog/panel-dialog.h + dialog/pixelartdialog.h dialog/print-colors-preview-dialog.h dialog/print.h @@ -183,7 +184,7 @@ set(ui_SRC dialog/swatches.h dialog/symbols.h dialog/template-load-tab.h - dialog/template-widget.h + dialog/template-widget.h dialog/text-edit.h dialog/tile.h dialog/tracedialog.h -- cgit v1.2.3 From 72a748b2303caf2c16a98c175d7f444d3b558ca5 Mon Sep 17 00:00:00 2001 From: Krzysztof Kosi??ski Date: Fri, 20 Sep 2013 00:30:19 +0200 Subject: Fix assertion failure on Ctrl+C (bzr r12548) --- src/sp-object.cpp | 9 +- src/sp-root.cpp | 490 ++++++++++++++++++++++++++++-------------------------- 2 files changed, 259 insertions(+), 240 deletions(-) diff --git a/src/sp-object.cpp b/src/sp-object.cpp index 895b36e1c..1ab3cade8 100644 --- a/src/sp-object.cpp +++ b/src/sp-object.cpp @@ -588,9 +588,12 @@ void SPObject::child_added(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) ochild->invoke_build(object->document, child, object->cloned); } catch (const FactoryExceptions::TypeNotRegistered& e) { - if (std::string(e.what()) != "rdf:RDF") { // temporary special case - g_warning("TypeNotRegistered exception: %s", e.what()); - } + std::string node = e.what(); + // special cases + if (node == "rdf:RDF") return; // no SP node yet + if (node == "inkscape:clipboard") return; // SP node not necessary + + g_warning("TypeNotRegistered exception: %s", e.what()); } } diff --git a/src/sp-root.cpp b/src/sp-root.cpp index 4faefabef..c87c8397d 100644 --- a/src/sp-root.cpp +++ b/src/sp-root.cpp @@ -34,18 +34,20 @@ #include "sp-factory.h" namespace { - SPObject* createRoot() { - return new SPRoot(); - } +SPObject *createRoot() +{ + return new SPRoot(); +} - bool rootRegistered = SPFactory::instance().registerObject("svg:svg", createRoot); +bool rootRegistered = SPFactory::instance().registerObject("svg:svg", createRoot); } -SPRoot::SPRoot() : SPGroup() { - this->aspect_set = 0; - this->aspect_align = 0; - this->onload = NULL; - this->aspect_clip = 0; +SPRoot::SPRoot() : SPGroup() +{ + this->aspect_set = 0; + this->aspect_align = 0; + this->onload = NULL; + this->aspect_clip = 0; static Inkscape::Version const zero_version(0, 0); @@ -67,30 +69,32 @@ SPRoot::SPRoot() : SPGroup() { this->defs = NULL; } -SPRoot::~SPRoot() { +SPRoot::~SPRoot() +{ } -void SPRoot::build(SPDocument *document, Inkscape::XML::Node *repr) { +void SPRoot::build(SPDocument *document, Inkscape::XML::Node *repr) +{ //XML Tree being used directly here while it shouldn't be. - if ( !this->getRepr()->attribute("version") ) { + if (!this->getRepr()->attribute("version")) { repr->setAttribute("version", SVG_VERSION); } - this->readAttr( "version" ); - this->readAttr( "inkscape:version" ); + this->readAttr("version"); + this->readAttr("inkscape:version"); /* It is important to parse these here, so objects will have viewport build-time */ - this->readAttr( "x" ); - this->readAttr( "y" ); - this->readAttr( "width" ); - this->readAttr( "height" ); - this->readAttr( "viewBox" ); - this->readAttr( "preserveAspectRatio" ); - this->readAttr( "onload" ); + this->readAttr("x"); + this->readAttr("y"); + this->readAttr("width"); + this->readAttr("height"); + this->readAttr("viewBox"); + this->readAttr("preserveAspectRatio"); + this->readAttr("onload"); SPGroup::build(document, repr); // Search for first node - for (SPObject *o = this->firstChild() ; o ; o = o->getNext() ) { + for (SPObject *o = this->firstChild() ; o ; o = o->getNext()) { if (SP_IS_DEFS(o)) { this->defs = SP_DEFS(o); break; @@ -101,232 +105,239 @@ void SPRoot::build(SPDocument *document, Inkscape::XML::Node *repr) { SP_ITEM(this)->transform = Geom::identity(); } -void SPRoot::release() { +void SPRoot::release() +{ this->defs = NULL; SPGroup::release(); } -void SPRoot::set(unsigned int key, const gchar* value) { +void SPRoot::set(unsigned int key, const gchar *value) +{ switch (key) { - case SP_ATTR_VERSION: - if (!sp_version_from_string(value, &this->version.svg)) { - this->version.svg = this->original.svg; - } - break; + case SP_ATTR_VERSION: + if (!sp_version_from_string(value, &this->version.svg)) { + this->version.svg = this->original.svg; + } + break; - case SP_ATTR_INKSCAPE_VERSION: - if (!sp_version_from_string(value, &this->version.inkscape)) { - this->version.inkscape = this->original.inkscape; - } - break; + case SP_ATTR_INKSCAPE_VERSION: + if (!sp_version_from_string(value, &this->version.inkscape)) { + this->version.inkscape = this->original.inkscape; + } + break; - case SP_ATTR_X: - if (!this->x.readAbsolute(value)) { - /* fixme: em, ex, % are probably valid, but require special treatment (Lauris) */ - this->x.unset(); - } + case SP_ATTR_X: + if (!this->x.readAbsolute(value)) { + /* fixme: em, ex, % are probably valid, but require special treatment (Lauris) */ + this->x.unset(); + } - /* fixme: I am almost sure these do not require viewport flag (Lauris) */ - this->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG); - break; + /* fixme: I am almost sure these do not require viewport flag (Lauris) */ + this->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG); + break; - case SP_ATTR_Y: - if (!this->y.readAbsolute(value)) { - /* fixme: em, ex, % are probably valid, but require special treatment (Lauris) */ - this->y.unset(); - } + case SP_ATTR_Y: + if (!this->y.readAbsolute(value)) { + /* fixme: em, ex, % are probably valid, but require special treatment (Lauris) */ + this->y.unset(); + } - /* fixme: I am almost sure these do not require viewport flag (Lauris) */ - this->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG); - break; + /* fixme: I am almost sure these do not require viewport flag (Lauris) */ + this->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG); + break; - case SP_ATTR_WIDTH: - if (!this->width.readAbsolute(value) || !(this->width.computed > 0.0)) { - /* fixme: em, ex, % are probably valid, but require special treatment (Lauris) */ - this->width.unset(SVGLength::PERCENT, 1.0, 1.0); - } + case SP_ATTR_WIDTH: + if (!this->width.readAbsolute(value) || !(this->width.computed > 0.0)) { + /* fixme: em, ex, % are probably valid, but require special treatment (Lauris) */ + this->width.unset(SVGLength::PERCENT, 1.0, 1.0); + } - this->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG); - break; + this->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG); + break; - case SP_ATTR_HEIGHT: - if (!this->height.readAbsolute(value) || !(this->height.computed > 0.0)) { - /* fixme: em, ex, % are probably valid, but require special treatment (Lauris) */ - this->height.unset(SVGLength::PERCENT, 1.0, 1.0); - } + case SP_ATTR_HEIGHT: + if (!this->height.readAbsolute(value) || !(this->height.computed > 0.0)) { + /* fixme: em, ex, % are probably valid, but require special treatment (Lauris) */ + this->height.unset(SVGLength::PERCENT, 1.0, 1.0); + } - this->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG); - break; + this->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG); + break; - case SP_ATTR_VIEWBOX: - if (value) { - double x, y, width, height; - char *eptr; + case SP_ATTR_VIEWBOX: + if (value) { + double x, y, width, height; + char *eptr; - /* fixme: We have to take original item affine into account */ - /* fixme: Think (Lauris) */ - eptr = (gchar *) value; - x = g_ascii_strtod(eptr, &eptr); + /* fixme: We have to take original item affine into account */ + /* fixme: Think (Lauris) */ + eptr = (gchar *) value; + x = g_ascii_strtod(eptr, &eptr); - while (*eptr && ((*eptr == ',') || (*eptr == ' '))) { - eptr++; - } + while (*eptr && ((*eptr == ',') || (*eptr == ' '))) { + eptr++; + } - y = g_ascii_strtod(eptr, &eptr); + y = g_ascii_strtod(eptr, &eptr); - while (*eptr && ((*eptr == ',') || (*eptr == ' '))) { - eptr++; - } + while (*eptr && ((*eptr == ',') || (*eptr == ' '))) { + eptr++; + } - width = g_ascii_strtod(eptr, &eptr); + width = g_ascii_strtod(eptr, &eptr); - while (*eptr && ((*eptr == ',') || (*eptr == ' '))) { - eptr++; - } + while (*eptr && ((*eptr == ',') || (*eptr == ' '))) { + eptr++; + } - height = g_ascii_strtod(eptr, &eptr); + height = g_ascii_strtod(eptr, &eptr); - while (*eptr && ((*eptr == ',') || (*eptr == ' '))) { - eptr++; - } + while (*eptr && ((*eptr == ',') || (*eptr == ' '))) { + eptr++; + } - if ((width > 0) && (height > 0)) { - /* Set viewbox */ - this->viewBox = Geom::Rect::from_xywh(x, y, width, height); - this->viewBox_set = TRUE; - } else { - this->viewBox_set = FALSE; - } + if ((width > 0) && (height > 0)) { + /* Set viewbox */ + this->viewBox = Geom::Rect::from_xywh(x, y, width, height); + this->viewBox_set = TRUE; } else { this->viewBox_set = FALSE; } + } else { + this->viewBox_set = FALSE; + } - this->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG); - break; + this->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG); + break; - case SP_ATTR_PRESERVEASPECTRATIO: - /* Do setup before, so we can use break to escape */ - this->aspect_set = FALSE; - this->aspect_align = SP_ASPECT_XMID_YMID; - this->aspect_clip = SP_ASPECT_MEET; + case SP_ATTR_PRESERVEASPECTRATIO: + /* Do setup before, so we can use break to escape */ + this->aspect_set = FALSE; + this->aspect_align = SP_ASPECT_XMID_YMID; + this->aspect_clip = SP_ASPECT_MEET; - this->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG); + this->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_VIEWPORT_MODIFIED_FLAG); - if (value) { - int len; - gchar c[256]; - gchar const *p, *e; - unsigned int align, clip; - p = value; + if (value) { + int len; + gchar c[256]; + gchar const *p, *e; + unsigned int align, clip; + p = value; - while (*p && *p == 32) { - p += 1; - } + while (*p && *p == 32) { + p += 1; + } - if (!*p) { - break; - } + if (!*p) { + break; + } - e = p; + e = p; - while (*e && *e != 32) { - e += 1; - } + while (*e && *e != 32) { + e += 1; + } - len = e - p; + len = e - p; - if (len > 8) { - break; - } + if (len > 8) { + break; + } - memcpy(c, value, len); - - c[len] = 0; - - /* Now the actual part */ - if (!strcmp(c, "none")) { - align = SP_ASPECT_NONE; - } else if (!strcmp(c, "xMinYMin")) { - align = SP_ASPECT_XMIN_YMIN; - } else if (!strcmp(c, "xMidYMin")) { - align = SP_ASPECT_XMID_YMIN; - } else if (!strcmp(c, "xMaxYMin")) { - align = SP_ASPECT_XMAX_YMIN; - } else if (!strcmp(c, "xMinYMid")) { - align = SP_ASPECT_XMIN_YMID; - } else if (!strcmp(c, "xMidYMid")) { - align = SP_ASPECT_XMID_YMID; - } else if (!strcmp(c, "xMaxYMid")) { - align = SP_ASPECT_XMAX_YMID; - } else if (!strcmp(c, "xMinYMax")) { - align = SP_ASPECT_XMIN_YMAX; - } else if (!strcmp(c, "xMidYMax")) { - align = SP_ASPECT_XMID_YMAX; - } else if (!strcmp(c, "xMaxYMax")) { - align = SP_ASPECT_XMAX_YMAX; - } else { - break; - } + memcpy(c, value, len); + + c[len] = 0; + + /* Now the actual part */ + if (!strcmp(c, "none")) { + align = SP_ASPECT_NONE; + } else if (!strcmp(c, "xMinYMin")) { + align = SP_ASPECT_XMIN_YMIN; + } else if (!strcmp(c, "xMidYMin")) { + align = SP_ASPECT_XMID_YMIN; + } else if (!strcmp(c, "xMaxYMin")) { + align = SP_ASPECT_XMAX_YMIN; + } else if (!strcmp(c, "xMinYMid")) { + align = SP_ASPECT_XMIN_YMID; + } else if (!strcmp(c, "xMidYMid")) { + align = SP_ASPECT_XMID_YMID; + } else if (!strcmp(c, "xMaxYMid")) { + align = SP_ASPECT_XMAX_YMID; + } else if (!strcmp(c, "xMinYMax")) { + align = SP_ASPECT_XMIN_YMAX; + } else if (!strcmp(c, "xMidYMax")) { + align = SP_ASPECT_XMID_YMAX; + } else if (!strcmp(c, "xMaxYMax")) { + align = SP_ASPECT_XMAX_YMAX; + } else { + break; + } - clip = SP_ASPECT_MEET; + clip = SP_ASPECT_MEET; - while (*e && *e == 32) { - e += 1; - } + while (*e && *e == 32) { + e += 1; + } - if (*e) { - if (!strcmp(e, "meet")) { - clip = SP_ASPECT_MEET; - } else if (!strcmp(e, "slice")) { - clip = SP_ASPECT_SLICE; - } else { - break; - } + if (*e) { + if (!strcmp(e, "meet")) { + clip = SP_ASPECT_MEET; + } else if (!strcmp(e, "slice")) { + clip = SP_ASPECT_SLICE; + } else { + break; } - - this->aspect_set = TRUE; - this->aspect_align = align; - this->aspect_clip = clip; } - break; - case SP_ATTR_ONLOAD: - this->onload = (char *) value; - break; + this->aspect_set = TRUE; + this->aspect_align = align; + this->aspect_clip = clip; + } + break; - default: - /* Pass the set event to the parent */ - SPGroup::set(key, value); - break; + case SP_ATTR_ONLOAD: + this->onload = (char *) value; + break; + + default: + /* Pass the set event to the parent */ + SPGroup::set(key, value); + break; } } -void SPRoot::child_added(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { +void SPRoot::child_added(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) +{ SPGroup::child_added(child, ref); SPObject *co = this->document->getObjectByRepr(child); - g_assert (co != NULL || !strcmp("comment", child->name())); // comment repr node has no object + // NOTE: some XML nodes do not have corresponding SP objects, + // for instance inkscape:clipboard used in the clipboard code. + // See LP bug #1227827 + //g_assert (co != NULL || !strcmp("comment", child->name())); // comment repr node has no object if (co && SP_IS_DEFS(co)) { // We search for first node - it is not beautiful, but works - for (SPObject *c = this->firstChild() ; c ; c = c->getNext() ) { + for (SPObject *c = this->firstChild() ; c ; c = c->getNext()) { if (SP_IS_DEFS(c)) { - this->defs = SP_DEFS(c); + this->defs = SP_DEFS(c); break; } } } } -void SPRoot::remove_child(Inkscape::XML::Node* child) { - if ( this->defs && (this->defs->getRepr() == child) ) { +void SPRoot::remove_child(Inkscape::XML::Node *child) +{ + if (this->defs && (this->defs->getRepr() == child)) { SPObject *iter = 0; // We search for first remaining node - it is not beautiful, but works - for ( iter = this->firstChild() ; iter ; iter = iter->getNext() ) { - if ( SP_IS_DEFS(iter) && (SPDefs *)iter != this->defs ) { + for (iter = this->firstChild() ; iter ; iter = iter->getNext()) { + if (SP_IS_DEFS(iter) && (SPDefs *)iter != this->defs) { this->defs = (SPDefs *)iter; break; } @@ -341,14 +352,15 @@ void SPRoot::remove_child(Inkscape::XML::Node* child) { SPGroup::remove_child(child); } -void SPRoot::update(SPCtx *ctx, guint flags) { +void SPRoot::update(SPCtx *ctx, guint flags) +{ SPItemCtx *ictx = (SPItemCtx *) ctx; /* fixme: This will be invoked too often (Lauris) */ /* fixme: We should calculate only if parent viewport has changed (Lauris) */ /* If position is specified as percentage, calculate actual values */ if (this->x.unit == SVGLength::PERCENT) { - this->x.computed = this->x.value * ictx->viewport.width(); + this->x.computed = this->x.value * ictx->viewport.width(); } if (this->y.unit == SVGLength::PERCENT) { @@ -377,7 +389,7 @@ void SPRoot::update(SPCtx *ctx, guint flags) { * fixme: height seems natural, as this makes the inner svg element * fixme: self-contained. The spec is vague here. */ - this->c2p = Geom::Affine(Geom::Translate(this->x.computed, this->y.computed)); + this->c2p = Geom::Affine(Geom::Translate(this->x.computed, this->y.computed)); } if (this->viewBox_set) { @@ -401,66 +413,66 @@ void SPRoot::update(SPCtx *ctx, guint flags) { /* todo: Use an array lookup to find the 0.0/0.5/1.0 coefficients, as is done for dialogs/align.cpp. */ switch (this->aspect_align) { - case SP_ASPECT_XMIN_YMIN: - x = 0.0; - y = 0.0; - break; + case SP_ASPECT_XMIN_YMIN: + x = 0.0; + y = 0.0; + break; - case SP_ASPECT_XMID_YMIN: - x = 0.5 * (this->width.computed - width); - y = 0.0; - break; + case SP_ASPECT_XMID_YMIN: + x = 0.5 * (this->width.computed - width); + y = 0.0; + break; - case SP_ASPECT_XMAX_YMIN: - x = 1.0 * (this->width.computed - width); - y = 0.0; - break; + case SP_ASPECT_XMAX_YMIN: + x = 1.0 * (this->width.computed - width); + y = 0.0; + break; - case SP_ASPECT_XMIN_YMID: - x = 0.0; - y = 0.5 * (this->height.computed - height); - break; + case SP_ASPECT_XMIN_YMID: + x = 0.0; + y = 0.5 * (this->height.computed - height); + break; - case SP_ASPECT_XMID_YMID: - x = 0.5 * (this->width.computed - width); - y = 0.5 * (this->height.computed - height); - break; + case SP_ASPECT_XMID_YMID: + x = 0.5 * (this->width.computed - width); + y = 0.5 * (this->height.computed - height); + break; - case SP_ASPECT_XMAX_YMID: - x = 1.0 * (this->width.computed - width); - y = 0.5 * (this->height.computed - height); - break; + case SP_ASPECT_XMAX_YMID: + x = 1.0 * (this->width.computed - width); + y = 0.5 * (this->height.computed - height); + break; - case SP_ASPECT_XMIN_YMAX: - x = 0.0; - y = 1.0 * (this->height.computed - height); - break; + case SP_ASPECT_XMIN_YMAX: + x = 0.0; + y = 1.0 * (this->height.computed - height); + break; - case SP_ASPECT_XMID_YMAX: - x = 0.5 * (this->width.computed - width); - y = 1.0 * (this->height.computed - height); - break; + case SP_ASPECT_XMID_YMAX: + x = 0.5 * (this->width.computed - width); + y = 1.0 * (this->height.computed - height); + break; - case SP_ASPECT_XMAX_YMAX: - x = 1.0 * (this->width.computed - width); - y = 1.0 * (this->height.computed - height); - break; + case SP_ASPECT_XMAX_YMAX: + x = 1.0 * (this->width.computed - width); + y = 1.0 * (this->height.computed - height); + break; - default: - x = 0.0; - y = 0.0; - break; + default: + x = 0.0; + y = 0.0; + break; } } /* Compose additional transformation from scale and position */ - Geom::Scale const viewBox_length( this->viewBox.dimensions() ); + Geom::Scale const viewBox_length(this->viewBox.dimensions()); Geom::Scale const new_length(width, height); /* Append viewbox transformation */ /* TODO: The below looks suspicious to me (pjrm): I wonder whether the RHS expression should have c2p at the beginning rather than at the end. Test it. */ - this->c2p = Geom::Translate(-this->viewBox.min()) * ( new_length * viewBox_length.inverse() ) * Geom::Translate(x, y) * this->c2p; + this->c2p = Geom::Translate(-this->viewBox.min()) * (new_length * viewBox_length.inverse()) * Geom::Translate(x, y) * this->c2p; } rctx.i2doc = this->c2p * rctx.i2doc; @@ -470,7 +482,7 @@ void SPRoot::update(SPCtx *ctx, guint flags) { rctx.viewport = this->viewBox; } else { /* fixme: I wonder whether this logic is correct (Lauris) */ - Geom::Point minp(0,0); + Geom::Point minp(0, 0); if (this->parent) { minp = Geom::Point(this->x.computed, this->y.computed); } @@ -490,17 +502,19 @@ void SPRoot::update(SPCtx *ctx, guint flags) { } } -void SPRoot::modified(unsigned int flags) { +void SPRoot::modified(unsigned int flags) +{ SPGroup::modified(flags); /* fixme: (Lauris) */ if (!this->parent && (flags & SP_OBJECT_VIEWPORT_MODIFIED_FLAG)) { - this->document->emitResizedSignal(this->width.computed, this->height.computed); + this->document->emitResizedSignal(this->width.computed, this->height.computed); } } -Inkscape::XML::Node* SPRoot::write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { +Inkscape::XML::Node *SPRoot::write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) +{ if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { repr = xml_doc->createElement("svg:svg"); } @@ -509,8 +523,8 @@ Inkscape::XML::Node* SPRoot::write(Inkscape::XML::Document *xml_doc, Inkscape::X repr->setAttribute("inkscape:version", Inkscape::version_string); } - if ( !repr->attribute("version") ) { - gchar* myversion = sp_version_to_string(this->version.svg); + if (!repr->attribute("version")) { + gchar *myversion = sp_version_to_string(this->version.svg); repr->setAttribute("version", myversion); g_free(myversion); } @@ -542,20 +556,22 @@ Inkscape::XML::Node* SPRoot::write(Inkscape::XML::Document *xml_doc, Inkscape::X return repr; } -Inkscape::DrawingItem* SPRoot::show(Inkscape::Drawing &drawing, unsigned int key, unsigned int flags) { +Inkscape::DrawingItem *SPRoot::show(Inkscape::Drawing &drawing, unsigned int key, unsigned int flags) +{ Inkscape::DrawingItem *ai = 0; ai = SPGroup::show(drawing, key, flags); if (ai) { - Inkscape::DrawingGroup *g = dynamic_cast(ai); - g->setChildTransform(this->c2p); + Inkscape::DrawingGroup *g = dynamic_cast(ai); + g->setChildTransform(this->c2p); } return ai; } -void SPRoot::print(SPPrintContext* ctx) { +void SPRoot::print(SPPrintContext *ctx) +{ sp_print_bind(ctx, this->c2p, 1.0); SPGroup::print(ctx); -- cgit v1.2.3 From 4feae3a8c25f028a912c8b4e82dcdf94f5ceea1b Mon Sep 17 00:00:00 2001 From: Krzysztof Kosi??ski Date: Fri, 20 Sep 2013 01:04:33 +0200 Subject: Fix make check after merge of cppify branch (bzr r12549) --- po/POTFILES.in | 1 + src/Makefile.am | 3 ++- src/color-profile-test.h | 16 ++++++++-------- src/sp-style-elem-test.h | 33 +++++++++++++++++---------------- 4 files changed, 28 insertions(+), 25 deletions(-) diff --git a/po/POTFILES.in b/po/POTFILES.in index 21753f2ed..e0d732d23 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -269,6 +269,7 @@ src/ui/dialog/new-from-template.cpp src/ui/dialog/object-attributes.cpp src/ui/dialog/object-properties.cpp src/ui/dialog/ocaldialogs.cpp +src/ui/dialog/pixelartdialog.cpp src/ui/dialog/print-colors-preview-dialog.cpp src/ui/dialog/print.cpp src/ui/dialog/spellcheck.cpp diff --git a/src/Makefile.am b/src/Makefile.am index a0c240252..a0c857aa3 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -267,7 +267,8 @@ TESTS = $(check_PROGRAMS) ../share/extensions/test/run-all-extension-tests XFAIL_TESTS = $(check_PROGRAMS) # including the the testsuites here ensures that they get distributed -cxxtests_SOURCES = cxxtests.cpp $(CXXTEST_TESTSUITES) +cxxtests_SOURCES = cxxtests.cpp $(CXXTEST_TESTSUITES) $(ink_common_sources) $(win32_sources) +cxxtests_LDFLAGS = -z muldefs cxxtests_LDADD = $(all_libs) cxxtests.cpp: $(CXXTEST_TESTSUITES) $(CXXTEST_TEMPLATE) diff --git a/src/color-profile-test.h b/src/color-profile-test.h index b3ead5d55..4276eb774 100644 --- a/src/color-profile-test.h +++ b/src/color-profile-test.h @@ -31,13 +31,13 @@ public: static void createSuiteSubclass( ColorProfileTest*& dst ) { - Inkscape::ColorProfile *prof = static_cast(g_object_new(COLORPROFILE_TYPE, NULL)); + Inkscape::ColorProfile *prof = new Inkscape::ColorProfile(); if ( prof ) { if ( prof->rendering_intent == (guint)Inkscape::RENDERING_INTENT_UNKNOWN ) { TS_ASSERT_EQUALS( prof->rendering_intent, (guint)Inkscape::RENDERING_INTENT_UNKNOWN ); dst = new ColorProfileTest(); } - g_object_unref(prof); + delete prof; } } @@ -74,7 +74,7 @@ public: {"auto2", (guint)Inkscape::RENDERING_INTENT_UNKNOWN}, }; - Inkscape::ColorProfile *prof = static_cast(g_object_new(COLORPROFILE_TYPE, NULL)); + Inkscape::ColorProfile *prof = new Inkscape::ColorProfile(); TS_ASSERT( prof ); SP_OBJECT(prof)->document = _doc; @@ -84,7 +84,7 @@ public: TSM_ASSERT_EQUALS( descr, prof->rendering_intent, (guint)cases[i].intVal ); } - g_object_unref(prof); + delete prof; } void testSetLocal() @@ -94,7 +94,7 @@ public: "something", }; - Inkscape::ColorProfile *prof = static_cast(g_object_new(COLORPROFILE_TYPE, NULL)); + Inkscape::ColorProfile *prof = new Inkscape::ColorProfile(); TS_ASSERT( prof ); SP_OBJECT(prof)->document = _doc; @@ -108,7 +108,7 @@ public: SP_OBJECT(prof)->setKeyValue( SP_ATTR_LOCAL, NULL); TS_ASSERT_EQUALS( prof->local, (gchar*)0 ); - g_object_unref(prof); + delete prof; } void testSetName() @@ -118,7 +118,7 @@ public: "something", }; - Inkscape::ColorProfile *prof = static_cast(g_object_new(COLORPROFILE_TYPE, NULL)); + Inkscape::ColorProfile *prof = new Inkscape::ColorProfile(); TS_ASSERT( prof ); SP_OBJECT(prof)->document = _doc; @@ -132,7 +132,7 @@ public: SP_OBJECT(prof)->setKeyValue( SP_ATTR_NAME, NULL); TS_ASSERT_EQUALS( prof->name, (gchar*)0 ); - g_object_unref(prof); + delete prof; } }; diff --git a/src/sp-style-elem-test.h b/src/sp-style-elem-test.h index 7021be13d..6f65a48ea 100644 --- a/src/sp-style-elem-test.h +++ b/src/sp-style-elem-test.h @@ -28,12 +28,13 @@ public: static void createSuiteSubclass( SPStyleElemTest *& dst ) { - SPStyleElem *style_elem = static_cast(g_object_new(SP_TYPE_STYLE_ELEM, NULL)); + SPStyleElem *style_elem = new SPStyleElem(); + if ( style_elem ) { TS_ASSERT(!style_elem->is_css); TS_ASSERT(style_elem->media.print); TS_ASSERT(style_elem->media.screen); - g_object_unref(style_elem); + delete style_elem; dst = new SPStyleElemTest(); } @@ -52,7 +53,7 @@ public: void testSetType() { - SPStyleElem *style_elem = static_cast(g_object_new(SP_TYPE_STYLE_ELEM, NULL)); + SPStyleElem *style_elem = new SPStyleElem(); SP_OBJECT(style_elem)->document = _doc; SP_OBJECT(style_elem)->setKeyValue( SP_ATTR_TYPE, "something unrecognized"); @@ -67,7 +68,7 @@ public: SP_OBJECT(style_elem)->setKeyValue( SP_ATTR_TYPE, "text/cssx"); TS_ASSERT( !style_elem->is_css ); - g_object_unref(style_elem); + delete style_elem; } void testWrite() @@ -78,7 +79,7 @@ public: return; // evil early return } - SPStyleElem *style_elem = SP_STYLE_ELEM(g_object_new(SP_TYPE_STYLE_ELEM, NULL)); + SPStyleElem *style_elem = new SPStyleElem(); SP_OBJECT(style_elem)->document = _doc; SP_OBJECT(style_elem)->setKeyValue( SP_ATTR_TYPE, "text/css"); @@ -93,7 +94,7 @@ public: } } - g_object_unref(style_elem); + delete style_elem; } void testBuild() @@ -104,13 +105,13 @@ public: return; // evil early return } - SPStyleElem &style_elem = *SP_STYLE_ELEM(g_object_new(SP_TYPE_STYLE_ELEM, NULL)); + SPStyleElem *style_elem = new SPStyleElem(); Inkscape::XML::Node *const repr = _doc->getReprDoc()->createElement("svg:style"); repr->setAttribute("type", "text/css"); - (&style_elem)->invoke_build( _doc, repr, false); - TS_ASSERT( style_elem.is_css ); - TS_ASSERT( style_elem.media.print ); - TS_ASSERT( style_elem.media.screen ); + style_elem->invoke_build( _doc, repr, false); + TS_ASSERT( style_elem->is_css ); + TS_ASSERT( style_elem->media.print ); + TS_ASSERT( style_elem->media.screen ); /* Some checks relevant to the read_content test below. */ { @@ -120,7 +121,7 @@ public: g_assert(stylesheet->statements == NULL); } - g_object_unref(&style_elem); + delete style_elem; Inkscape::GC::release(repr); } @@ -132,19 +133,19 @@ public: return; // evil early return } - SPStyleElem &style_elem = *SP_STYLE_ELEM(g_object_new(SP_TYPE_STYLE_ELEM, NULL)); + SPStyleElem *style_elem = new SPStyleElem(); Inkscape::XML::Node *const repr = _doc->getReprDoc()->createElement("svg:style"); repr->setAttribute("type", "text/css"); Inkscape::XML::Node *const content_repr = _doc->getReprDoc()->createTextNode(".myclass { }"); repr->addChild(content_repr, NULL); - (&style_elem)->invoke_build(_doc, repr, false); - TS_ASSERT( style_elem.is_css ); + style_elem->invoke_build(_doc, repr, false); + TS_ASSERT( style_elem->is_css ); TS_ASSERT( _doc->style_cascade ); CRStyleSheet const *const stylesheet = cr_cascade_get_sheet(_doc->style_cascade, ORIGIN_AUTHOR); TS_ASSERT(stylesheet != NULL); TS_ASSERT(stylesheet->statements != NULL); - g_object_unref(&style_elem); + delete style_elem; Inkscape::GC::release(repr); } -- cgit v1.2.3 From eb3598e7e27619c759ef33bb9ec4ffb8898523de Mon Sep 17 00:00:00 2001 From: Martin Owens Date: Fri, 20 Sep 2013 00:45:16 -0400 Subject: Refactor status-bar text for multiple items, was very broken Fixed bugs: - https://launchpad.net/bugs/1199192 (bzr r12550) --- src/box3d.cpp | 7 +-- src/box3d.h | 2 +- src/selection-describer.cpp | 108 ++++++++------------------------------------ src/sp-anchor.cpp | 8 +++- src/sp-anchor.h | 1 + src/sp-ellipse.cpp | 16 +++---- src/sp-ellipse.h | 6 +-- src/sp-flowregion.cpp | 15 ++---- src/sp-flowregion.h | 4 +- src/sp-flowtext.cpp | 15 +++--- src/sp-flowtext.h | 1 + src/sp-image.cpp | 8 +++- src/sp-image.h | 1 + src/sp-item-group.cpp | 8 ++-- src/sp-item-group.h | 1 + src/sp-item.cpp | 10 ++-- src/sp-item.h | 1 + src/sp-line.cpp | 4 +- src/sp-line.h | 2 +- src/sp-offset.cpp | 16 ++++--- src/sp-offset.h | 1 + src/sp-path.cpp | 16 ++++--- src/sp-path.h | 1 + src/sp-rect.cpp | 4 +- src/sp-rect.h | 2 +- src/sp-spiral.cpp | 10 ++-- src/sp-spiral.h | 1 + src/sp-star.cpp | 17 ++++--- src/sp-star.h | 1 + src/sp-switch.cpp | 8 ++-- src/sp-switch.h | 1 + src/sp-text.cpp | 7 ++- src/sp-text.h | 1 + src/sp-tref.cpp | 34 +++++++------- src/sp-tref.h | 1 + src/sp-tspan.cpp | 4 +- src/sp-tspan.h | 2 +- src/sp-use.cpp | 15 ++++-- src/sp-use.h | 1 + 39 files changed, 166 insertions(+), 195 deletions(-) diff --git a/src/box3d.cpp b/src/box3d.cpp index 0f528a592..193051ee5 100644 --- a/src/box3d.cpp +++ b/src/box3d.cpp @@ -255,11 +255,8 @@ Inkscape::XML::Node* SPBox3D::write(Inkscape::XML::Document *xml_doc, Inkscape:: return repr; } -gchar* SPBox3D::description() { - SPBox3D* item = this; - - g_return_val_if_fail(SP_IS_BOX3D(item), NULL); - return g_strdup(_("3D Box")); +const char* SPBox3D::display_name() { + return _("3D Box"); } void box3d_position_set(SPBox3D *box) diff --git a/src/box3d.h b/src/box3d.h index 18d99d60a..be5f1926c 100644 --- a/src/box3d.h +++ b/src/box3d.h @@ -58,7 +58,7 @@ public: virtual void update(SPCtx *ctx, guint flags); virtual Inkscape::XML::Node* write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); - virtual gchar *description(); + virtual const char* display_name(); virtual Geom::Affine set_transform(Geom::Affine const &transform); virtual void convert_to_guides(); }; diff --git a/src/selection-describer.cpp b/src/selection-describer.cpp index 4c2229667..fc6cb7f91 100644 --- a/src/selection-describer.cpp +++ b/src/selection-describer.cpp @@ -38,64 +38,22 @@ #include "sp-polyline.h" #include "sp-spiral.h" -// CPPIFY: this is ugly. -static const gchar * -type2term(SPItem *item) +// Returns a list of terms for the items to be used in the statusbar +const char* collect_terms (GSList *items) { -// GType type = G_OBJECT_TYPE( item ); -// if (type == SP_TYPE_ANCHOR) -// //TRANSLATORS: "Link" means internet link (anchor) -// { return C_("Web", "Link"); } -// if (type == SP_TYPE_CIRCLE) -// { return _("Circle"); } -// if (type == SP_TYPE_ELLIPSE) -// { return _("Ellipse"); } -// if (type == SP_TYPE_FLOWTEXT) -// { return _("Flowed text"); } -// if (type == SP_TYPE_GROUP) -// { return _("Group"); } -// if (type == SP_TYPE_IMAGE) -// { return _("Image"); } -// if (type == SP_TYPE_LINE) -// { return _("Line"); } -// if (type == SP_TYPE_PATH) -// { return _("Path"); } -// if (type == SP_TYPE_POLYGON) -// { return _("Polygon"); } -// if (type == SP_TYPE_POLYLINE) -// { return _("Polyline"); } -// if (type == SP_TYPE_RECT) -// { return _("Rectangle"); } -// if (type == SP_TYPE_BOX3D) -// { return _("3D Box"); } -// if (type == SP_TYPE_TEXT) -// { return C_("Object", "Text"); } -// if (type == SP_TYPE_USE) -// if (SP_IS_SYMBOL(item->firstChild())) -// { return C_("Object", "Symbol"); } -// // TRANSLATORS: "Clone" is a noun, type of object -// { return C_("Object", "Clone"); } -// if (type == SP_TYPE_ARC) -// { return _("Ellipse"); } -// if (type == SP_TYPE_OFFSET) -// { return _("Offset path"); } -// if (type == SP_TYPE_SPIRAL) -// { return _("Spiral"); } -// if (type == SP_TYPE_STAR) -// { return _("Star"); } -// return NULL; - return "Selektion-Describer ---"; -} - -static GSList *collect_terms (GSList *items) -{ - GSList *r = NULL; - for (GSList *i = items; i != NULL; i = i->next) { - const gchar *term = type2term ( SP_ITEM(i->data) ); - if (term != NULL && g_slist_find (r, term) == NULL) - r = g_slist_prepend (r, (void *) term); + GSList *check = NULL; + std::stringstream ss; + bool first = true; + + for (GSList *i = (GSList *)items; i != NULL; i = i->next) { + const char *term = SP_ITEM(i->data)->display_name(); + if (term != NULL && g_slist_find (check, term) == NULL) { + check = g_slist_prepend (check, (void *) term); + ss << (first ? "" : ", ") << "" << term << ""; + first = false; + } } - return r; + return ss.str().c_str(); } // Returns the number of filtered items in the list @@ -201,7 +159,8 @@ void SelectionDescriber::_updateMessageFromSelection(Inkscape::Selection *select g_free (parent_name); if (!items->next) { // one item - char *item_desc = item->description(); + char *item_desc = item->getDetailedDescription(); + if (SP_IS_USE(item) && SP_IS_SYMBOL(item->firstChild())) { _context.setF(Inkscape::NORMAL_MESSAGE, "%s%s. %s. %s.", item_desc, in_phrase, @@ -229,38 +188,11 @@ void SelectionDescriber::_updateMessageFromSelection(Inkscape::Selection *select g_free(item_desc); } else { // multiple items int object_count = g_slist_length((GSList *)items); + const char *terms = collect_terms ((GSList *)items); - gchar *objects_str = NULL; - GSList *terms = collect_terms ((GSList *)items); - int n_terms = g_slist_length(terms); - if (n_terms == 0) { - objects_str = g_strdup_printf ( - // this is only used with 2 or more objects - ngettext("%i object selected", "%i objects selected", object_count), - object_count); - } else if (n_terms == 1) { - objects_str = g_strdup_printf ( - // this is only used with 2 or more objects - ngettext("%i object of type %s", "%i objects of type %s", object_count), - object_count, (gchar *) terms->data); - } else if (n_terms == 2) { - objects_str = g_strdup_printf ( - // this is only used with 2 or more objects - ngettext("%i object of types %s, %s", "%i objects of types %s, %s", object_count), - object_count, (gchar *) terms->data, (gchar *) terms->next->data); - } else if (n_terms == 3) { - objects_str = g_strdup_printf ( - // this is only used with 2 or more objects - ngettext("%i object of types %s, %s, %s", "%i objects of types %s, %s, %s", object_count), - object_count, (gchar *) terms->data, (gchar *) terms->next->data, (gchar *) terms->next->next->data); - } else { - objects_str = g_strdup_printf ( - // this is only used with 2 or more objects - ngettext("%i object of %i types", "%i objects of %i types", object_count), - object_count, n_terms); - } - g_slist_free (terms); - + gchar *objects_str = + g_strdup_printf( "%i objects selected of types %s", + object_count, terms ); // indicate all, some, or none filtered gchar *filt_str = NULL; diff --git a/src/sp-anchor.cpp b/src/sp-anchor.cpp index d9a8c4142..3ed2c766c 100644 --- a/src/sp-anchor.cpp +++ b/src/sp-anchor.cpp @@ -115,14 +115,18 @@ Inkscape::XML::Node* SPAnchor::write(Inkscape::XML::Document *xml_doc, Inkscape: return repr; } +const char* SPAnchor::display_name() { + return _("Link"); +} + gchar* SPAnchor::description() { if (this->href) { char *quoted_href = xml_quote_strdup(this->href); - char *ret = g_strdup_printf(_("Link to %s"), quoted_href); + char *ret = g_strdup_printf(_("to %s"), quoted_href); g_free(quoted_href); return ret; } else { - return g_strdup (_("Link without URI")); + return g_strdup (_("without URI")); } } diff --git a/src/sp-anchor.h b/src/sp-anchor.h index cada9665e..a88778132 100644 --- a/src/sp-anchor.h +++ b/src/sp-anchor.h @@ -30,6 +30,7 @@ public: virtual void set(unsigned int key, gchar const* value); virtual Inkscape::XML::Node* write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + virtual const char* display_name(); virtual gchar* description(); virtual gint event(SPEvent *event); }; diff --git a/src/sp-ellipse.cpp b/src/sp-ellipse.cpp index 7c6066054..aad0336a7 100644 --- a/src/sp-ellipse.cpp +++ b/src/sp-ellipse.cpp @@ -427,8 +427,8 @@ void SPEllipse::set(unsigned int key, gchar const* value) { } } -gchar* SPEllipse::description() { - return g_strdup(_("Ellipse")); +const char* SPEllipse::display_name() { + return _("Ellipse"); } @@ -507,8 +507,8 @@ void SPCircle::set(unsigned int key, gchar const* value) { } } -gchar* SPCircle::description() { - return g_strdup(_("Circle")); +const char* SPCircle::display_name() { + return _("Circle"); } /* element */ @@ -681,7 +681,7 @@ void SPArc::modified(guint flags) { } -gchar* SPArc::description() { +const char* SPArc::display_name() { gdouble len = fmod(this->end - this->start, SP_2PI); if (len < 0.0) { @@ -690,12 +690,12 @@ gchar* SPArc::description() { if (!(fabs(len) < 1e-8 || fabs(len - SP_2PI) < 1e-8)) { if (this->closed) { - return g_strdup(_("Segment")); + return _("Segment"); } else { - return g_strdup(_("Arc")); + return _("Arc"); } } else { - return g_strdup(_("Ellipse")); + return _("Ellipse"); } } diff --git a/src/sp-ellipse.h b/src/sp-ellipse.h index 67e12006a..2b1a00af7 100644 --- a/src/sp-ellipse.h +++ b/src/sp-ellipse.h @@ -58,7 +58,7 @@ public: virtual void build(SPDocument *document, Inkscape::XML::Node *repr); virtual Inkscape::XML::Node* write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); virtual void set(unsigned int key, gchar const* value); - virtual gchar* description(); + virtual const char* display_name(); }; void sp_ellipse_position_set (SPEllipse * ellipse, gdouble x, gdouble y, gdouble rx, gdouble ry); @@ -75,7 +75,7 @@ public: virtual void build(SPDocument *document, Inkscape::XML::Node *repr); virtual Inkscape::XML::Node* write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); virtual void set(unsigned int key, gchar const* value); - virtual gchar* description(); + virtual const char* display_name(); }; /* element */ @@ -90,7 +90,7 @@ public: virtual void build(SPDocument *document, Inkscape::XML::Node *repr); virtual Inkscape::XML::Node* write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); virtual void set(unsigned int key, gchar const* value); - virtual gchar* description(); + virtual const char* display_name(); virtual void modified(unsigned int flags); }; diff --git a/src/sp-flowregion.cpp b/src/sp-flowregion.cpp index 3a0aef6be..caa6aef76 100644 --- a/src/sp-flowregion.cpp +++ b/src/sp-flowregion.cpp @@ -188,14 +188,11 @@ Inkscape::XML::Node *SPFlowregion::write(Inkscape::XML::Document *xml_doc, Inksc return repr; } -gchar* SPFlowregion::description() { +const char* SPFlowregion::display_name() { // TRANSLATORS: "Flow region" is an area where text is allowed to flow - return g_strdup_printf(_("Flow region")); + return _("Flow Region"); } -/* - * - */ SPFlowregionExclude::SPFlowregionExclude() : SPItem() { this->computed = NULL; } @@ -338,18 +335,14 @@ Inkscape::XML::Node *SPFlowregionExclude::write(Inkscape::XML::Document *xml_doc return repr; } -gchar* SPFlowregionExclude::description() { +const char* SPFlowregionExclude::display_name() { /* TRANSLATORS: A region "cut out of" a flow region; text is not allowed to flow inside the * flow excluded region. flowRegionExclude in SVG 1.2: see * http://www.w3.org/TR/2004/WD-SVG12-20041027/flow.html#flowRegion-elem and * http://www.w3.org/TR/2004/WD-SVG12-20041027/flow.html#flowRegionExclude-elem. */ - return g_strdup_printf(_("Flow excluded region")); + return _("Flow Excluded Region"); } -/* - * - */ - static void UnionShape(Shape **base_shape, Shape const *add_shape) { if (*base_shape == NULL) diff --git a/src/sp-flowregion.h b/src/sp-flowregion.h index 59818651a..600b2aa6e 100644 --- a/src/sp-flowregion.h +++ b/src/sp-flowregion.h @@ -31,7 +31,7 @@ public: virtual void update(SPCtx *ctx, unsigned int flags); virtual void modified(guint flags); virtual Inkscape::XML::Node* write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); - virtual gchar *description(); + virtual const char* display_name(); }; class SPFlowregionExclude : public SPItem { @@ -48,7 +48,7 @@ public: virtual void update(SPCtx *ctx, unsigned int flags); virtual void modified(guint flags); virtual Inkscape::XML::Node* write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); - virtual gchar *description(); + virtual const char* display_name(); }; #endif diff --git a/src/sp-flowtext.cpp b/src/sp-flowtext.cpp index c7ef579ac..9d54ad92b 100644 --- a/src/sp-flowtext.cpp +++ b/src/sp-flowtext.cpp @@ -280,17 +280,20 @@ void SPFlowtext::print(SPPrintContext *ctx) { this->layout.print(ctx, pbox, dbox, bbox, ctm); } +const char* SPFlowtext::display_name() { + if (SP_FLOWTEXT(this)->has_internal_frame()) { + return _("Flowed Text"); + } else { + return _("Linked Flowed Text"); + } +} + gchar* SPFlowtext::description() { Inkscape::Text::Layout const &layout = SP_FLOWTEXT(this)->layout; int const nChars = layout.iteratorToCharIndex(layout.end()); - char const *trunc = (layout.inputTruncated()) ? _(" [truncated]") : ""; - if (SP_FLOWTEXT(this)->has_internal_frame()) { - return g_strdup_printf(ngettext("Flowed text (%d character%s)", "Flowed text (%d characters%s)", nChars), nChars, trunc); - } else { - return g_strdup_printf(ngettext("Linked flowed text (%d character%s)", "Linked flowed text (%d characters%s)", nChars), nChars, trunc); - } + return g_strdup_printf(ngettext(_("(%d character%s)"), _("(%d characters%s)"), nChars), nChars, trunc); } void SPFlowtext::snappoints(std::vector &p, Inkscape::SnapPreferences const *snapprefs) { diff --git a/src/sp-flowtext.h b/src/sp-flowtext.h index bd7c5990a..1d3e30069 100644 --- a/src/sp-flowtext.h +++ b/src/sp-flowtext.h @@ -66,6 +66,7 @@ public: virtual Geom::OptRect bbox(Geom::Affine const &transform, SPItem::BBoxType type); virtual void print(SPPrintContext *ctx); + virtual const char* display_name(); virtual gchar* description(); virtual Inkscape::DrawingItem* show(Inkscape::Drawing &drawing, unsigned int key, unsigned int flags); virtual void hide(unsigned int key); diff --git a/src/sp-image.cpp b/src/sp-image.cpp index 80daf33c3..c3352fcf0 100644 --- a/src/sp-image.cpp +++ b/src/sp-image.cpp @@ -613,6 +613,10 @@ void SPImage::print(SPPrintContext *ctx) { } } +const char* SPImage::display_name() { + return _("Image"); +} + gchar* SPImage::description() { char *href_desc; @@ -626,8 +630,8 @@ gchar* SPImage::description() { } char *ret = ( this->pixbuf == NULL - ? g_strdup_printf(_("Image with bad reference: %s"), href_desc) - : g_strdup_printf(_("Image %d × %d: %s"), + ? g_strdup_printf(_("[bad reference]: %s"), href_desc) + : g_strdup_printf(_("%d × %d: %s"), this->pixbuf->width(), this->pixbuf->height(), href_desc) ); diff --git a/src/sp-image.h b/src/sp-image.h index bfc10e7f2..85eceac20 100644 --- a/src/sp-image.h +++ b/src/sp-image.h @@ -64,6 +64,7 @@ public: virtual Geom::OptRect bbox(Geom::Affine const &transform, SPItem::BBoxType type); virtual void print(SPPrintContext *ctx); + virtual const char* display_name(); virtual gchar* description(); virtual Inkscape::DrawingItem* show(Inkscape::Drawing &drawing, unsigned int key, unsigned int flags); virtual void snappoints(std::vector &p, Inkscape::SnapPreferences const *snapprefs); diff --git a/src/sp-item-group.cpp b/src/sp-item-group.cpp index 010cc5449..5c176d2dc 100644 --- a/src/sp-item-group.cpp +++ b/src/sp-item-group.cpp @@ -325,12 +325,14 @@ void SPGroup::print(SPPrintContext *ctx) { } } +const char *SPGroup::display_name() { + return _("Group"); +} + gchar *SPGroup::description() { gint len = this->getItemCount(); return g_strdup_printf( - ngettext("Group of %d object", - "Group of %d objects", - len), len); + ngettext(_("of %d object"), _("of %d objects"), len), len); } void SPGroup::set(unsigned int key, gchar const* value) { diff --git a/src/sp-item-group.h b/src/sp-item-group.h index 88ca9657a..e6357ddcc 100644 --- a/src/sp-item-group.h +++ b/src/sp-item-group.h @@ -75,6 +75,7 @@ public: virtual Geom::OptRect bbox(Geom::Affine const &transform, SPItem::BBoxType bboxtype); virtual void print(SPPrintContext *ctx); + virtual const char* display_name(); virtual gchar *description(); virtual Inkscape::DrawingItem *show (Inkscape::Drawing &drawing, unsigned int key, unsigned int flags); virtual void hide (unsigned int key); diff --git a/src/sp-item.cpp b/src/sp-item.cpp index e6991a1fa..154169e79 100644 --- a/src/sp-item.cpp +++ b/src/sp-item.cpp @@ -931,9 +931,12 @@ void SPItem::invoke_print(SPPrintContext *ctx) } } -// CPPIFY: is it possible to combine this method with "SPItem::description()"? +const char* SPItem::display_name() { + return _("Object"); +} + gchar* SPItem::description() { - return g_strdup(_("Object")); + return g_strdup(""); } /** @@ -943,7 +946,8 @@ gchar* SPItem::description() { */ gchar *SPItem::getDetailedDescription() { - gchar* s = this->description(); + gchar* s = g_strdup_printf("%s %s", + this->display_name(), this->description()); if (s && clip_ref->getObject()) { gchar *snew = g_strdup_printf (_("%s; clipped"), s); diff --git a/src/sp-item.h b/src/sp-item.h index 8dfb4142a..769af229e 100644 --- a/src/sp-item.h +++ b/src/sp-item.h @@ -236,6 +236,7 @@ public: virtual Geom::OptRect bbox(Geom::Affine const &transform, SPItem::BBoxType type); virtual void print(SPPrintContext *ctx); + virtual const char* display_name(); virtual gchar* description(); virtual Inkscape::DrawingItem* show(Inkscape::Drawing &drawing, unsigned int key, unsigned int flags); virtual void hide(unsigned int key); diff --git a/src/sp-line.cpp b/src/sp-line.cpp index 3963007de..c3a0b13db 100644 --- a/src/sp-line.cpp +++ b/src/sp-line.cpp @@ -122,8 +122,8 @@ Inkscape::XML::Node* SPLine::write(Inkscape::XML::Document *xml_doc, Inkscape::X return repr; } -gchar* SPLine::description() { - return g_strdup(_("Line")); +const char* SPLine::display_name() { + return _("Line"); } void SPLine::convert_to_guides() { diff --git a/src/sp-line.h b/src/sp-line.h index ebdfc9f04..7184b9401 100644 --- a/src/sp-line.h +++ b/src/sp-line.h @@ -34,7 +34,7 @@ public: virtual Inkscape::XML::Node* write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); virtual void set(unsigned int key, gchar const* value); - virtual gchar* description(); + virtual const char* display_name(); virtual Geom::Affine set_transform(Geom::Affine const &transform); virtual void convert_to_guides(); virtual void update(SPCtx* ctx, guint flags); diff --git a/src/sp-offset.cpp b/src/sp-offset.cpp index ef18acc8e..f9759cac1 100644 --- a/src/sp-offset.cpp +++ b/src/sp-offset.cpp @@ -339,18 +339,20 @@ void SPOffset::update(SPCtx *ctx, guint flags) { SPShape::update(ctx, flags); } -gchar* SPOffset::description() { +const char* SPOffset::display_name() { if ( this->sourceHref ) { - // TRANSLATORS COMMENT: %s is either "outset" or "inset" depending on sign - return g_strdup_printf(_("Linked offset, %s by %f pt"), - (this->rad >= 0)? _("outset") : _("inset"), fabs (this->rad)); + return _("Linked Offset"); } else { - // TRANSLATORS COMMENT: %s is either "outset" or "inset" depending on sign - return g_strdup_printf(_("Dynamic offset, %s by %f pt"), - (this->rad >= 0)? _("outset") : _("inset"), fabs (this->rad)); + return _("Dynamic Offset"); } } +gchar* SPOffset::description() { + // TRANSLATORS COMMENT: %s is either "outset" or "inset" depending on sign + return g_strdup_printf(_("%s by %f pt"), (this->rad >= 0) ? + _("outset") : _("inset"), fabs (this->rad)); +} + void SPOffset::set_shape() { if ( this->originalPath == NULL ) { // oops : no path?! (the offset object should do harakiri) diff --git a/src/sp-offset.h b/src/sp-offset.h index 7fe6a8a24..360bfbf94 100644 --- a/src/sp-offset.h +++ b/src/sp-offset.h @@ -82,6 +82,7 @@ public: virtual void release(); virtual void snappoints(std::vector &p, Inkscape::SnapPreferences const *snapprefs); + virtual const char* display_name(); virtual gchar* description(); virtual void set_shape(); diff --git a/src/sp-path.cpp b/src/sp-path.cpp index 105506d6e..49e40fd24 100644 --- a/src/sp-path.cpp +++ b/src/sp-path.cpp @@ -66,8 +66,13 @@ gint SPPath::nodesInPath() const return _curve ? _curve->nodes_in_path() : 0; } +const char* SPPath::display_name() { + return _("Path"); +} + gchar* SPPath::description() { int count = this->nodesInPath(); + char *lpe_desc = g_strdup(""); if (sp_lpe_item_has_path_effect(this)) { Glib::ustring s; @@ -87,13 +92,12 @@ gchar* SPPath::description() { s = s + ", " + lpeobj->get_lpe()->getName(); } } - - return g_strdup_printf(ngettext("Path (%i node, path effect: %s)", - "Path (%i nodes, path effect: %s)",count), count, s.c_str()); - } else { - return g_strdup_printf(ngettext("Path (%i node)", - "Path (%i nodes)",count), count); + lpe_desc = g_strdup_printf(_(", path effect: %s"), s.c_str()); } + char *ret = g_strdup_printf(ngettext( + _("%i node%s"), _("%i nodes%s"), count), count, lpe_desc); + g_free(lpe_desc); + return ret; } void SPPath::convert_to_guides() { diff --git a/src/sp-path.h b/src/sp-path.h index 42c0f22c8..ca25de33b 100644 --- a/src/sp-path.h +++ b/src/sp-path.h @@ -54,6 +54,7 @@ public: virtual void set(unsigned int key, gchar const* value); virtual Inkscape::XML::Node* write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); + virtual const char* display_name(); virtual gchar* description(); virtual Geom::Affine set_transform(Geom::Affine const &transform); virtual void convert_to_guides(); diff --git a/src/sp-rect.cpp b/src/sp-rect.cpp index 519b7ba6e..6d5119e4c 100644 --- a/src/sp-rect.cpp +++ b/src/sp-rect.cpp @@ -159,8 +159,8 @@ Inkscape::XML::Node * SPRect::write(Inkscape::XML::Document *xml_doc, Inkscape:: return repr; } -gchar* SPRect::description() { - return g_strdup(_("Rectangle")); +const char* SPRect::display_name() { + return _("Rectangle"); } #define C1 0.554 diff --git a/src/sp-rect.h b/src/sp-rect.h index 28f74f9f9..e06833916 100644 --- a/src/sp-rect.h +++ b/src/sp-rect.h @@ -55,7 +55,7 @@ public: virtual void update(SPCtx* ctx, unsigned int flags); virtual Inkscape::XML::Node* write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags); - virtual gchar* description(); + virtual const char* display_name(); virtual void set_shape(); virtual Geom::Affine set_transform(Geom::Affine const& xform); diff --git a/src/sp-spiral.cpp b/src/sp-spiral.cpp index 8d2954c6e..ab7cc5c9d 100644 --- a/src/sp-spiral.cpp +++ b/src/sp-spiral.cpp @@ -227,12 +227,14 @@ void SPSpiral::update_patheffect(bool write) { shape->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG); } -gchar* SPSpiral::description() { - SPSpiral* item = this; +const char* SPSpiral::display_name() { + return _("Spiral"); +} - // TRANSLATORS: since turn count isn't an integer, please adjust the +gchar* SPSpiral::description() { + // TRANSLATORS: since turn count isn't an integer, please adjust the // string as needed to deal with an localized plural forms. - return g_strdup_printf (_("Spiral with %3f turns"), SP_SPIRAL(item)->revo); + return g_strdup_printf (_("with %3f turns"), SP_SPIRAL(this)->revo); } /** diff --git a/src/sp-spiral.h b/src/sp-spiral.h index 1e9c2d2b4..c108eb2d0 100644 --- a/src/sp-spiral.h +++ b/src/sp-spiral.h @@ -71,6 +71,7 @@ public: virtual void set(unsigned int key, gchar const* value); virtual void snappoints(std::vector &p, Inkscape::SnapPreferences const *snapprefs); + virtual const char* display_name(); virtual gchar* description(); virtual void set_shape(); diff --git a/src/sp-star.cpp b/src/sp-star.cpp index 4a3a8cbe3..e5c5c7c25 100644 --- a/src/sp-star.cpp +++ b/src/sp-star.cpp @@ -251,19 +251,18 @@ void SPStar::update_patheffect(bool write) { this->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG); } +const char* SPStar::display_name() { + if (this->flatsided == false) + return _("Star"); + return _("Polygon"); +} + gchar* SPStar::description() { // while there will never be less than 3 vertices, we still need to // make calls to ngettext because the pluralization may be different // for various numbers >=3. The singular form is used as the index. - if (this->flatsided == false) { - return g_strdup_printf (ngettext("Star with %d vertex", - "Star with %d vertices", - this->sides), this->sides); - } else { - return g_strdup_printf (ngettext("Polygon with %d vertex", - "Polygon with %d vertices", - this->sides), this->sides); - } + return g_strdup_printf (ngettext(_("with %d vertex"), _("with %d vertices"), + this->sides), this->sides); } /** diff --git a/src/sp-star.h b/src/sp-star.h index 0f1280139..9ff85cdca 100644 --- a/src/sp-star.h +++ b/src/sp-star.h @@ -50,6 +50,7 @@ public: virtual void set(unsigned int key, gchar const* value); virtual void update(SPCtx* ctx, guint flags); + virtual const char* display_name(); virtual gchar* description(); virtual void snappoints(std::vector &p, Inkscape::SnapPreferences const *snapprefs); diff --git a/src/sp-switch.cpp b/src/sp-switch.cpp index cc50a8fef..c6dcf17e3 100644 --- a/src/sp-switch.cpp +++ b/src/sp-switch.cpp @@ -71,12 +71,14 @@ GSList *SPSwitch::_childList(bool add_ref, SPObject::Action action) { return g_slist_prepend (NULL, child); } +const char *SPSwitch::display_name() { + return _("Conditional Group"); +} + gchar *SPSwitch::description() { gint len = this->getItemCount(); return g_strdup_printf( - ngettext("Conditional group of %d object", - "Conditional group of %d objects", - len), len); + ngettext(_("of %d object"), _("of %d objects"), len), len); } void SPSwitch::child_added(Inkscape::XML::Node* child, Inkscape::XML::Node* ref) { diff --git a/src/sp-switch.h b/src/sp-switch.h index 210cd0ddc..5627784cf 100644 --- a/src/sp-switch.h +++ b/src/sp-switch.h @@ -41,6 +41,7 @@ public: virtual void child_added(Inkscape::XML::Node* child, Inkscape::XML::Node* ref); virtual void remove_child(Inkscape::XML::Node *child); virtual void order_changed(Inkscape::XML::Node *child, Inkscape::XML::Node *old_ref, Inkscape::XML::Node *new_ref); + virtual const char* display_name(); virtual gchar *description(); }; diff --git a/src/sp-text.cpp b/src/sp-text.cpp index 85137e58d..afd4e304e 100644 --- a/src/sp-text.cpp +++ b/src/sp-text.cpp @@ -321,6 +321,9 @@ void SPText::hide(unsigned int key) { // SPItem::onHide(key); } +const char* SPText::display_name() { + return _("Text"); +} gchar* SPText::description() { SPStyle *style = this->style; @@ -350,8 +353,8 @@ gchar* SPText::description() { } char *ret = ( SP_IS_TEXT_TEXTPATH(this) - ? g_strdup_printf(_("Text on path%s (%s, %s)"), trunc, n, xs->str) - : g_strdup_printf(_("Text%s (%s, %s)"), trunc, n, xs->str) ); + ? g_strdup_printf(_("on path%s (%s, %s)"), trunc, n, xs->str) + : g_strdup_printf(_("%s (%s, %s)"), trunc, n, xs->str) ); g_free(n); return ret; } diff --git a/src/sp-text.h b/src/sp-text.h index 12f773ded..3a897a594 100644 --- a/src/sp-text.h +++ b/src/sp-text.h @@ -78,6 +78,7 @@ public: virtual Geom::OptRect bbox(Geom::Affine const &transform, SPItem::BBoxType type); virtual void print(SPPrintContext *ctx); + virtual const char* display_name(); virtual gchar* description(); virtual Inkscape::DrawingItem* show(Inkscape::Drawing &drawing, unsigned int key, unsigned int flags); virtual void hide(unsigned int key); diff --git a/src/sp-tref.cpp b/src/sp-tref.cpp index 1872cdf7c..f0a4af667 100644 --- a/src/sp-tref.cpp +++ b/src/sp-tref.cpp @@ -233,28 +233,30 @@ Geom::OptRect SPTRef::bbox(Geom::Affine const &transform, SPItem::BBoxType type) return bbox; } +const char* SPTRef::display_name() { + return _("Cloned Character Data"); +} + gchar* SPTRef::description() { - SPObject *referred = this->getObjectReferredTo(); + SPObject *referred = this->getObjectReferredTo(); - if (this->getObjectReferredTo()) { - char *child_desc; + if (this->getObjectReferredTo()) { + char *child_desc; - if (SP_IS_ITEM(referred)) { - child_desc = SP_ITEM(referred)->getDetailedDescription(); - } else { - child_desc = g_strdup(""); - } + if (SP_IS_ITEM(referred)) { + child_desc = SP_ITEM(referred)->getDetailedDescription(); + } else { + child_desc = g_strdup(""); + } - char *ret = g_strdup_printf( - _("Cloned character data%s%s"), - (SP_IS_ITEM(referred) ? _(" from ") : ""), - child_desc); - g_free(child_desc); + char *ret = g_strdup_printf("%s%s", + (SP_IS_ITEM(referred) ? _(" from ") : ""), child_desc); + g_free(child_desc); - return ret; - } + return ret; + } - return g_strdup(_("Orphaned cloned character data")); + return g_strdup(_("[orphaned]")); } diff --git a/src/sp-tref.h b/src/sp-tref.h index 451c6cb58..c82970a7f 100644 --- a/src/sp-tref.h +++ b/src/sp-tref.h @@ -58,6 +58,7 @@ public: virtual Inkscape::XML::Node* write(Inkscape::XML::Document* doc, Inkscape::XML::Node* repr, guint flags); virtual Geom::OptRect bbox(Geom::Affine const &transform, SPItem::BBoxType type); + virtual const char* display_name(); virtual gchar* description(); }; diff --git a/src/sp-tspan.cpp b/src/sp-tspan.cpp index 63dcd07d8..43a9faa5e 100644 --- a/src/sp-tspan.cpp +++ b/src/sp-tspan.cpp @@ -216,8 +216,8 @@ Inkscape::XML::Node* SPTSpan::write(Inkscape::XML::Document *xml_doc, Inkscape:: return repr; } -gchar* SPTSpan::description() { - return g_strdup(_("Text span")); +const char* SPTSpan::display_name() { + return _("Text Span"); } diff --git a/src/sp-tspan.h b/src/sp-tspan.h index d1c6ec4bc..ee05073cd 100644 --- a/src/sp-tspan.h +++ b/src/sp-tspan.h @@ -34,7 +34,7 @@ public: virtual Inkscape::XML::Node* write(Inkscape::XML::Document* doc, Inkscape::XML::Node* repr, guint flags); virtual Geom::OptRect bbox(Geom::Affine const &transform, SPItem::BBoxType type); - virtual gchar* description(); + virtual const char* display_name(); }; #endif /* !INKSCAPE_SP_TSPAN_H */ diff --git a/src/sp-use.cpp b/src/sp-use.cpp index 44935e61d..05e1f0e66 100644 --- a/src/sp-use.cpp +++ b/src/sp-use.cpp @@ -226,12 +226,17 @@ void SPUse::print(SPPrintContext* ctx) { } } +const char* SPUse::display_name() { + if(this->child && SP_IS_SYMBOL( this->child )) { + return _("Symbol"); + } + return _("Clone"); +} + gchar* SPUse::description() { if (this->child) { if( SP_IS_SYMBOL( this->child ) ) { - char *symbol_desc = SP_ITEM(this->child)->title(); - return g_strdup_printf(_("'%s' Symbol"), symbol_desc ); - g_free(symbol_desc); + return g_strdup_printf(_("called %s"), SP_ITEM(this->child)->title()); } static unsigned recursion_depth = 0; @@ -248,12 +253,12 @@ gchar* SPUse::description() { char *child_desc = SP_ITEM(this->child)->getDetailedDescription(); --recursion_depth; - char *ret = g_strdup_printf(_("Clone of: %s"), child_desc); + char *ret = g_strdup_printf(_("of: %s"), child_desc); g_free(child_desc); return ret; } else { - return g_strdup(_("Orphaned clone")); + return g_strdup(_("[orphaned]")); } } diff --git a/src/sp-use.h b/src/sp-use.h index 37ff2cf66..568b8f7da 100644 --- a/src/sp-use.h +++ b/src/sp-use.h @@ -57,6 +57,7 @@ public: virtual void modified(unsigned int flags); virtual Geom::OptRect bbox(Geom::Affine const &transform, SPItem::BBoxType bboxtype); + virtual const char* display_name(); virtual gchar* description(); virtual void print(SPPrintContext *ctx); virtual Inkscape::DrawingItem* show(Inkscape::Drawing &drawing, unsigned int key, unsigned int flags); -- cgit v1.2.3 From 074dfbc9661c5d2b1d2b29b0eb3dabb632b676a4 Mon Sep 17 00:00:00 2001 From: Slagvi Public Date: Fri, 20 Sep 2013 16:20:17 +0200 Subject: Small style fixes. (bzr r12481.1.10) --- src/ui/dialog/template-widget.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/ui/dialog/template-widget.cpp b/src/ui/dialog/template-widget.cpp index 1e0900a07..64be57a45 100644 --- a/src/ui/dialog/template-widget.cpp +++ b/src/ui/dialog/template-widget.cpp @@ -19,14 +19,14 @@ #include #include "template-load-tab.h" -#include "file.h" -#include "extension/implementation/implementation.h" - -#include "inkscape.h" #include "desktop.h" #include "desktop-handles.h" #include "document.h" #include "document-undo.h" +#include "file.h" +#include "extension/implementation/implementation.h" +#include "inkscape.h" + namespace Inkscape { namespace UI { -- cgit v1.2.3 From 09a3c627485c2ad6ca67e943b79d453d69ba862a Mon Sep 17 00:00:00 2001 From: Slagvi Public Date: Fri, 20 Sep 2013 16:21:32 +0200 Subject: Fix Empty Page procedural template. (bzr r12481.1.11) --- share/extensions/empty_page.inx | 10 +++++----- share/extensions/empty_page.py | 25 +++++++++++++------------ 2 files changed, 18 insertions(+), 17 deletions(-) diff --git a/share/extensions/empty_page.inx b/share/extensions/empty_page.inx index 594938ea1..2eceb84bd 100644 --- a/share/extensions/empty_page.inx +++ b/share/extensions/empty_page.inx @@ -5,16 +5,16 @@ empty_page.py inkex.py - <_param name="size-help" type="description">Select your empty page size. A3 A4 A5 - A3 landscape - A4 landscape - A5 landscape letter - letter landscape + + + + Horizontal + Vertical diff --git a/share/extensions/empty_page.py b/share/extensions/empty_page.py index df5d132eb..dc16bab97 100644 --- a/share/extensions/empty_page.py +++ b/share/extensions/empty_page.py @@ -6,38 +6,39 @@ class C(inkex.Effect): def __init__(self): inkex.Effect.__init__(self) self.OptionParser.add_option("-s", "--size", action="store", type="string", dest="page_size", default="a4", help="Page size") + self.OptionParser.add_option("-o", "--orientation", action="store", type="string", dest="page_orientation", default="vertical", help="Page orientation") def effect(self): root = self.document.getroot() root.set("width", "12in") root.set("height", "12in") - if self.options.page_size == "a4": + if self.options.page_size == "a4" and self.options.page_orientation == "vertical": root.set("width", "210mm") root.set("height", "297mm") - if self.options.page_size == "a4l": + if self.options.page_size == "a4" and self.options.page_orientation == "horizontal": root.set("height", "210mm") root.set("width", "297mm") - if self.options.page_size == "a5": + if self.options.page_size == "a5" and self.options.page_orientation == "vertical": root.set("width", "148mm") root.set("height", "210mm") - if self.options.page_size == "a5l": + if self.options.page_size == "a5" and self.options.page_orientation == "horizontal": root.set("width", "210mm") root.set("height", "148mm") - if self.options.page_size == "a3": + if self.options.page_size == "a3" and self.options.page_orientation == "vertical": root.set("width", "297mm") root.set("height", "420mm") - if self.options.page_size == "a3l": + if self.options.page_size == "a3" and self.options.page_orientation == "horizontal": root.set("width", "420mm") root.set("height", "297mm") - if self.options.page_size == "letter": - root.set("width", "216mm") - root.set("height", "279mm") - if self.options.page_size == "letterl": - root.set("width", "279mm") - root.set("height", "216mm") + if self.options.page_size == "letter" and self.options.page_orientation == "vertical": + root.set("width", "8.5in") + root.set("height", "11in") + if self.options.page_size == "letter" and self.options.page_orientation == "horizontal": + root.set("width", "11in") + root.set("height", "8.5in") c = C() c.affect() -- cgit v1.2.3 From 18bc66ea42cb3e7ad8d2b77ba70bd06d1b88cc7c Mon Sep 17 00:00:00 2001 From: Slagvi Public Date: Fri, 20 Sep 2013 16:48:10 +0200 Subject: Change paths storage to std::string. (bzr r12481.1.12) --- src/file.cpp | 4 +++- src/file.h | 3 ++- src/ui/dialog/template-load-tab.cpp | 6 +++--- src/ui/dialog/template-load-tab.h | 9 +++++---- src/ui/dialog/template-widget.cpp | 5 +++-- 5 files changed, 16 insertions(+), 11 deletions(-) diff --git a/src/file.cpp b/src/file.cpp index 12373a2e5..b6063e5cd 100644 --- a/src/file.cpp +++ b/src/file.cpp @@ -74,6 +74,8 @@ #include #include +#include + using Inkscape::DocumentUndo; #ifdef WITH_GNOME_VFS @@ -124,7 +126,7 @@ static void sp_file_add_recent(gchar const *uri) /** * Create a blank document and add it to the desktop */ -SPDesktop *sp_file_new(const Glib::ustring &templ) +SPDesktop *sp_file_new(const std::string &templ) { SPDocument *doc = SPDocument::createNewDoc( !templ.empty() ? templ.c_str() : 0 , TRUE, true ); g_return_val_if_fail(doc != NULL, NULL); diff --git a/src/file.h b/src/file.h index 682ca422e..7f80f3645 100644 --- a/src/file.h +++ b/src/file.h @@ -16,6 +16,7 @@ */ #include +#include #include "extension/system.h" class SPDesktop; @@ -43,7 +44,7 @@ Glib::ustring sp_file_default_template_uri(); * Creates a new Inkscape document and window. * Return value is a pointer to the newly created desktop. */ -SPDesktop* sp_file_new (const Glib::ustring &templ); +SPDesktop* sp_file_new (const std::string &templ); SPDesktop* sp_file_new_default (void); /*###################### diff --git a/src/ui/dialog/template-load-tab.cpp b/src/ui/dialog/template-load-tab.cpp index c884df2b1..127a7e4f5 100644 --- a/src/ui/dialog/template-load-tab.cpp +++ b/src/ui/dialog/template-load-tab.cpp @@ -197,7 +197,7 @@ void TemplateLoadTab::_loadTemplates() } -TemplateLoadTab::TemplateData TemplateLoadTab::_processTemplateFile(const Glib::ustring &path) +TemplateLoadTab::TemplateData TemplateLoadTab::_processTemplateFile(const std::string &path) { TemplateData result; result.path = path; @@ -234,7 +234,7 @@ TemplateLoadTab::TemplateData TemplateLoadTab::_processTemplateFile(const Glib:: } -void TemplateLoadTab::_getTemplatesFromDir(const Glib::ustring &path) +void TemplateLoadTab::_getTemplatesFromDir(const std::string &path) { if ( !Glib::file_test(path, Glib::FILE_TEST_EXISTS) || !Glib::file_test(path, Glib::FILE_TEST_IS_DIR)) @@ -242,7 +242,7 @@ void TemplateLoadTab::_getTemplatesFromDir(const Glib::ustring &path) Glib::Dir dir(path); - Glib::ustring file = Glib::build_filename(path, dir.read_name()); + std::string file = Glib::build_filename(path, dir.read_name()); while (file != path){ if (Glib::str_has_suffix(file, ".svg") && !Glib::str_has_prefix(Glib::path_get_basename(file), "default.")){ TemplateData tmp = _processTemplateFile(file); diff --git a/src/ui/dialog/template-load-tab.h b/src/ui/dialog/template-load-tab.h index cdf8a0ade..744a2a9fb 100644 --- a/src/ui/dialog/template-load-tab.h +++ b/src/ui/dialog/template-load-tab.h @@ -18,6 +18,7 @@ #include #include #include +#include #include "xml/node.h" #include "extension/effect.h" @@ -35,7 +36,7 @@ public: struct TemplateData { bool is_procedural; - Glib::ustring path; + std::string path; Glib::ustring display_name; Glib::ustring author; Glib::ustring short_description; @@ -64,7 +65,7 @@ protected: Glib::ustring _current_keyword; Glib::ustring _current_template; - Glib::ustring _loading_path; + std::string _loading_path; std::map _tdata; std::set _keywords; @@ -97,9 +98,9 @@ private: void _getDataFromNode(Inkscape::XML::Node *, TemplateData &); void _getProceduralTemplates(); - void _getTemplatesFromDir(const Glib::ustring &); + void _getTemplatesFromDir(const std::string &); void _keywordSelected(); - TemplateData _processTemplateFile(const Glib::ustring &); + TemplateData _processTemplateFile(const std::string &); }; } diff --git a/src/ui/dialog/template-widget.cpp b/src/ui/dialog/template-widget.cpp index 64be57a45..916d968ec 100644 --- a/src/ui/dialog/template-widget.cpp +++ b/src/ui/dialog/template-widget.cpp @@ -89,13 +89,14 @@ void TemplateWidget::display(TemplateLoadTab::TemplateData data) _preview_render.hide(); _preview_image.hide(); - Glib::ustring imagePath = Glib::build_filename(Glib::path_get_dirname(_current_template.path), _current_template.preview_name); + std::string imagePath = Glib::build_filename(Glib::path_get_dirname(_current_template.path), _current_template.preview_name); if (data.preview_name != ""){ _preview_image.set(imagePath); _preview_image.show(); } else if (!data.is_procedural){ - _preview_render.showImage(data.path); + Glib::ustring gPath = data.path.c_str(); + _preview_render.showImage(gPath); _preview_render.show(); } -- cgit v1.2.3 From 627ff49d6fb3a7e52bb1430c412eee62311b5a2c Mon Sep 17 00:00:00 2001 From: Krzysztof Kosi??ski Date: Fri, 20 Sep 2013 16:59:45 +0200 Subject: make check: Fix harder. Remove muldefs hack and modify quote-test.h so that the hack is not required any more. (bzr r12551) --- src/Makefile.am | 1 - src/xml/quote-test.h | 5 +---- src/xml/quote.cpp | 12 ++++++------ src/xml/quote.h | 3 +++ 4 files changed, 10 insertions(+), 11 deletions(-) diff --git a/src/Makefile.am b/src/Makefile.am index a0c857aa3..a45a33932 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -268,7 +268,6 @@ XFAIL_TESTS = $(check_PROGRAMS) # including the the testsuites here ensures that they get distributed cxxtests_SOURCES = cxxtests.cpp $(CXXTEST_TESTSUITES) $(ink_common_sources) $(win32_sources) -cxxtests_LDFLAGS = -z muldefs cxxtests_LDADD = $(all_libs) cxxtests.cpp: $(CXXTEST_TESTSUITES) $(CXXTEST_TEMPLATE) diff --git a/src/xml/quote-test.h b/src/xml/quote-test.h index bd5c1f54c..bc01ec4e9 100644 --- a/src/xml/quote-test.h +++ b/src/xml/quote-test.h @@ -7,10 +7,7 @@ #include #include -/* mental disclaims all responsibility for this evil idea for testing - static functions. The main disadvantages are that we retain any - #define's and `using' directives of the included file. */ -#include "quote.cpp" +#include "quote.h" class XmlQuoteTest : public CxxTest::TestSuite { diff --git a/src/xml/quote.cpp b/src/xml/quote.cpp index 030a6c764..c9e001d05 100644 --- a/src/xml/quote.cpp +++ b/src/xml/quote.cpp @@ -19,7 +19,7 @@ /** \return strlen(xml_quote_strdup(\a val)) (without doing the malloc). * \pre val != NULL */ -static size_t +size_t xml_quoted_strlen(char const *val) { size_t ret = 0; @@ -43,11 +43,11 @@ xml_quoted_strlen(char const *val) static void xml_quote(char *dest, char const *src) { -#define COPY_LIT(_lit) do { \ - size_t cpylen = sizeof(_lit "") - 1; \ - memcpy(dest, _lit, cpylen); \ - dest += cpylen; \ - } while(0) +#define COPY_LIT(_lit) do { \ + size_t cpylen = sizeof(_lit "") - 1; \ + memcpy(dest, _lit, cpylen); \ + dest += cpylen; \ + } while(0) for (; *src != '\0'; ++src) { switch (*src) { diff --git a/src/xml/quote.h b/src/xml/quote.h index 597272cd3..8e3bca0eb 100644 --- a/src/xml/quote.h +++ b/src/xml/quote.h @@ -1,6 +1,9 @@ #ifndef SEEN_XML_QUOTE_H #define SEEN_XML_QUOTE_H +#include + +size_t xml_quoted_strlen(char const *val); char *xml_quote_strdup(char const *src); -- cgit v1.2.3 From 28669551d22dd94b33223ed729042ba3fefbc705 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Fri, 20 Sep 2013 17:03:42 +0200 Subject: Fix grids after C++ification. Patch from Markus Engel (bzr r12552) --- src/sp-object.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/sp-object.cpp b/src/sp-object.cpp index 1ab3cade8..8c7a24a2b 100644 --- a/src/sp-object.cpp +++ b/src/sp-object.cpp @@ -61,6 +61,14 @@ using std::strstr; # define debug(f, a...) /* */ #endif +namespace { + SPObject* createObject() { + return new SPObject(); + } + + bool gridRegistered = SPFactory::instance().registerObject("inkscape:grid", createObject); +} + guint update_in_progress = 0; // guard against update-during-update Inkscape::XML::NodeEventVector object_event_vector = { -- cgit v1.2.3 From fed82256069c0239899c1aca1cfcf6f54ccbefcc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vin=C3=ADcius=20dos=20Santos=20Oliveira?= Date: Fri, 20 Sep 2013 14:04:04 -0300 Subject: Using inkscape compact settings to save the icons.svg file (bzr r12553) --- share/icons/icons.svg | 26309 +++++++----------------------------------------- 1 file changed, 3851 insertions(+), 22458 deletions(-) diff --git a/share/icons/icons.svg b/share/icons/icons.svg index b4bbad344..478b899fb 100644 --- a/share/icons/icons.svg +++ b/share/icons/icons.svg @@ -1,22461 +1,3854 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Created with Inkscape + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Created with Inkscape http://www.inkscape.org/ - image/svg+xml - - - - - Inkscape Developers - - - - - Inkscape Developers - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - none - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +image/svg+xml + + + + +Inkscape Developers + + + + +Inkscape Developers + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +none + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -- cgit v1.2.3 From 940730c77b77aa32229fe300113c47d17044147a Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Fri, 20 Sep 2013 14:55:38 -0400 Subject: Fix build with dbus api enabled. (bzr r12555) --- src/extension/dbus/document-interface.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/extension/dbus/document-interface.cpp b/src/extension/dbus/document-interface.cpp index 3cb03646a..ccc39fbef 100644 --- a/src/extension/dbus/document-interface.cpp +++ b/src/extension/dbus/document-interface.cpp @@ -43,6 +43,7 @@ #include "sp-object.h" #include "sp-root.h" #include "style.h" //style_write +#include "util/units.h" #include "extension/system.h" //IO @@ -543,13 +544,13 @@ gchar *document_interface_node(DocumentInterface *doc_interface, gchar *type, GE gdouble document_interface_document_get_width (DocumentInterface *doc_interface) { - return doc_interface->target.getDocument()->getWidth(); + return doc_interface->target.getDocument()->getWidth().value("px"); } gdouble document_interface_document_get_height (DocumentInterface *doc_interface) { - return doc_interface->target.getDocument()->getHeight(); + return doc_interface->target.getDocument()->getHeight().value("px"); } gchar *document_interface_document_get_css(DocumentInterface *doc_interface, GError ** error) -- cgit v1.2.3 From d332b7a8d0e55612abc377a107bb1768fc657637 Mon Sep 17 00:00:00 2001 From: Martin Owens Date: Fri, 20 Sep 2013 16:27:08 -0400 Subject: Fix the text filter issue and revert many changes. (bzr r12556) --- src/display/drawing-item.cpp | 19 +++++++++++++------ src/display/drawing-item.h | 1 + src/display/nr-filter.cpp | 4 +--- src/libnrtype/Layout-TNG-Output.cpp | 3 ++- src/sp-item.cpp | 7 ++++--- 5 files changed, 21 insertions(+), 13 deletions(-) diff --git a/src/display/drawing-item.cpp b/src/display/drawing-item.cpp index a9836a9e3..1af07cb44 100644 --- a/src/display/drawing-item.cpp +++ b/src/display/drawing-item.cpp @@ -281,8 +281,15 @@ DrawingItem::setZOrder(unsigned z) _markForRendering(); } -void -DrawingItem::setItemBounds(Geom::OptRect const &bounds) +void DrawingItem::setItemBounds(Geom::OptRect const &bounds) +{ + if (!bounds) return; + Geom::IntRect copy = bounds->roundOutwards(); + if (_filter) _filter->area_enlarge(copy, this); + this->setFilterBounds(copy); +} + +void DrawingItem::setFilterBounds(Geom::OptRect const &bounds) { if (bounds) _filter_bbox = bounds; } @@ -352,10 +359,10 @@ DrawingItem::update(Geom::IntRect const &area, UpdateContext const &ctx, unsigne if (to_update & STATE_BBOX) { // compute drawbox - if (_filter && render_filters && _bbox) { - Geom::IntRect newbox(*_bbox); - _filter->area_enlarge(newbox, this); - _drawbox = Geom::OptIntRect(newbox); + if (_filter && render_filters && _filter_bbox) { + Geom::OptRect enlarged = _filter_bbox; + *enlarged *= ctm(); + _drawbox = enlarged->roundOutwards(); } else { _drawbox = _bbox; } diff --git a/src/display/drawing-item.h b/src/display/drawing-item.h index 8020659db..c69b996b4 100644 --- a/src/display/drawing-item.h +++ b/src/display/drawing-item.h @@ -113,6 +113,7 @@ public: void setMask(DrawingItem *item); void setZOrder(unsigned z); void setItemBounds(Geom::OptRect const &bounds); + void setFilterBounds(Geom::OptRect const &bounds); void setKey(unsigned key) { _key = key; } unsigned key() const { return _key; } diff --git a/src/display/nr-filter.cpp b/src/display/nr-filter.cpp index a0103cbb0..c0044c5d8 100644 --- a/src/display/nr-filter.cpp +++ b/src/display/nr-filter.cpp @@ -117,9 +117,7 @@ int Filter::render(Inkscape::DrawingItem const *item, DrawingContext &graphic, D // Get filter are, the filter_effect_area is already done in visualBounds Geom::OptRect filter_area = item->filterBounds(); // Use the geometricBounds as a backup solution - if (!filter_area || (filter_area->hasZeroArea() && - filter_area->min()[Geom::X] == 0 && filter_area->min()[Geom::Y] == 0)) - filter_area = item->geometricBounds(); + if (!filter_area) return 1; FilterUnits units(_filter_units, _primitive_units); units.set_ctm(trans); diff --git a/src/libnrtype/Layout-TNG-Output.cpp b/src/libnrtype/Layout-TNG-Output.cpp index f7f910c2f..060cecebf 100644 --- a/src/libnrtype/Layout-TNG-Output.cpp +++ b/src/libnrtype/Layout-TNG-Output.cpp @@ -181,8 +181,9 @@ void Layout::show(DrawingGroup *in_arena, Geom::OptRect const &paintbox) const glyph_index++; } nr_text->setStyle(text_source->style); - nr_text->setItemBounds(paintbox); in_arena->prependChild(nr_text); + // Set item bounds without filter enlargement + in_arena->setItemBounds(paintbox); } } diff --git a/src/sp-item.cpp b/src/sp-item.cpp index a91d0e741..b7ef68f7d 100644 --- a/src/sp-item.cpp +++ b/src/sp-item.cpp @@ -608,8 +608,8 @@ void SPItem::update(SPCtx *ctx, guint flags) { Geom::OptRect item_bbox = item->visualBounds(); SPItemView *itemview = item->display; do { - if (itemview->arenaitem) - itemview->arenaitem->setItemBounds(item_bbox); + if (itemview->arenaitem) // Already enlarged by visualBounds + itemview->arenaitem->setFilterBounds(item_bbox); } while ( (itemview = itemview->next) ); } @@ -1065,7 +1065,8 @@ Inkscape::DrawingItem *SPItem::invoke_show(Inkscape::Drawing &drawing, unsigned item_bbox = visualBounds(); } ai->setData(this); - ai->setItemBounds(item_bbox); + // Already enlarged by visualBounds for filters + ai->setFilterBounds(item_bbox); } return ai; -- cgit v1.2.3 From 4e8b8beaf879c90d59ef84548b2299151dbfb697 Mon Sep 17 00:00:00 2001 From: Matthew Petroff Date: Fri, 20 Sep 2013 18:13:00 -0400 Subject: Use viewBox for new documents. Fixed bugs: - https://launchpad.net/bugs/171203 - https://launchpad.net/bugs/168261 (bzr r12557) --- src/document.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/document.cpp b/src/document.cpp index 967d049c2..5e59a0a0c 100644 --- a/src/document.cpp +++ b/src/document.cpp @@ -450,6 +450,11 @@ SPDocument *SPDocument::createDoc(Inkscape::XML::Document *rdoc, document->setCurrentPersp3DImpl(persp_impl); } + // Set viewBox if it doesn't exist + if (!document->root->viewBox_set) { + document->setViewBox(Geom::Rect::from_xywh(0, 0, document->getWidth().quantity, document->getHeight().quantity)); + } + DocumentUndo::setUndoSensitive(document, true); // reset undo key when selection changes, so that same-key actions on different objects are not coalesced -- cgit v1.2.3 From 269b32ee83debc03ec3eb54b41b1f05fcb483e15 Mon Sep 17 00:00:00 2001 From: "Johan B. C. Engelen" Date: Sat, 21 Sep 2013 11:10:12 +0200 Subject: partial 2geom update, fixes linker errors (duplicate code, should be fixed later) (bzr r12558) --- src/2geom/conjugate_gradient.cpp | 5 +++++ src/2geom/conjugate_gradient.h | 12 +++++++++--- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/src/2geom/conjugate_gradient.cpp b/src/2geom/conjugate_gradient.cpp index ae69d5281..588513414 100644 --- a/src/2geom/conjugate_gradient.cpp +++ b/src/2geom/conjugate_gradient.cpp @@ -36,6 +36,9 @@ /* lifted wholely from wikipedia. */ +namespace Geom +{ + using std::valarray; static void @@ -126,6 +129,8 @@ conjugate_gradient(valarray const &A, // x is solution } +} // namespace Geom + /* Local Variables: mode:c++ diff --git a/src/2geom/conjugate_gradient.h b/src/2geom/conjugate_gradient.h index a34307d4b..4f500c0e6 100644 --- a/src/2geom/conjugate_gradient.h +++ b/src/2geom/conjugate_gradient.h @@ -29,11 +29,14 @@ * */ -#ifndef _CONJUGATE_GRADIENT_H -#define _CONJUGATE_GRADIENT_H +#ifndef _2GEOM_CONJUGATE_GRADIENT_H +#define _2GEOM_CONJUGATE_GRADIENT_H #include +namespace Geom +{ + double inner(std::valarray const &x, std::valarray const &y); @@ -44,7 +47,10 @@ conjugate_gradient(std::valarray const &A, std::valarray const &b, unsigned n, double tol, unsigned max_iterations, bool ortho1); -#endif // _CONJUGATE_GRADIENT_H + +} // namespace Geom + +#endif // _2GEOM_CONJUGATE_GRADIENT_H /* Local Variables: -- cgit v1.2.3 From cb3a1d4a449ebf0917a81cc0e80071a4c557ea39 Mon Sep 17 00:00:00 2001 From: "Johan B. C. Engelen" Date: Sat, 21 Sep 2013 11:14:16 +0200 Subject: fix Windows build (bzr r12559) --- build.xml | 99 ++++++++++++++++++++++++++++------------------------- src/dom/svgimpl.cpp | 4 +-- 2 files changed, 54 insertions(+), 49 deletions(-) diff --git a/build.xml b/build.xml index defb02782..6ae868b67 100644 --- a/build.xml +++ b/build.xml @@ -392,32 +392,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -517,7 +502,7 @@ ## T A R G E T : L I N K I N K V I E W ######################################################################## --> - - - - - + + + + + + + + + + + + + + + + + + + -L${devlibs}/lib @@ -570,7 +570,7 @@ ## T A R G E T : L I N K C X X T E S T S ######################################################################## --> - + -mconsole -mthreads - - - - - - - - - + + + + + + + + + + + + + -L${devlibs}/lib diff --git a/src/dom/svgimpl.cpp b/src/dom/svgimpl.cpp index 87f43af81..4372e1b87 100644 --- a/src/dom/svgimpl.cpp +++ b/src/dom/svgimpl.cpp @@ -777,7 +777,7 @@ DOMString SVGSVGElementImpl::getAttribute(const DOMString& name) else if (name == "y") s = d2s(y.getAnimVal().getValue()); else - s = SVGElement::getAttribute(name); + s = SVGElementImpl::getAttribute(name); return s; } @@ -792,7 +792,7 @@ void SVGSVGElementImpl::setAttribute(const DOMString& name, x.getAnimVal().setValue(s2d(value)); else if (name == "y") y.getAnimVal().setValue(s2d(value)); - SVGElement::setAttribute(name, value); + SVGElementImpl::setAttribute(name, value); } -- cgit v1.2.3 From 545715d22fb796786e8b2edd3db5398a549cd75b Mon Sep 17 00:00:00 2001 From: "Johan B. C. Engelen" Date: Sat, 21 Sep 2013 11:25:27 +0200 Subject: remove file from exclude list, linker issue was solved by adding namespace (bzr r12560) --- build.xml | 3 --- 1 file changed, 3 deletions(-) diff --git a/build.xml b/build.xml index 6ae868b67..7bd6896e2 100644 --- a/build.xml +++ b/build.xml @@ -437,7 +437,6 @@ - @@ -527,7 +526,6 @@ - @@ -590,7 +588,6 @@ - -- cgit v1.2.3 From e953bdf2beb96e63af5f2cdb54d139f561596bb9 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sat, 21 Sep 2013 11:39:09 +0200 Subject: Rectangles can be drawn inside other shapes again. Fixed bugs: - https://launchpad.net/bugs/1228393 (bzr r12561) --- src/rect-context.cpp | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/rect-context.cpp b/src/rect-context.cpp index 599680190..f60b3d465 100644 --- a/src/rect-context.cpp +++ b/src/rect-context.cpp @@ -165,9 +165,7 @@ bool SPRectContext::item_handler(SPItem* item, GdkEvent* event) { break; } - if (!ret) { - ret = SPEventContext::item_handler(item, event); - } + ret = SPEventContext::item_handler(item, event); return ret; } -- cgit v1.2.3 From 86feb045ef140e0cdeddd3abd8fa7381526e6629 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sat, 21 Sep 2013 12:13:59 +0200 Subject: Fixed CMake build. (bzr r12562) --- src/CMakeLists.txt | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 67c5be11a..32bcf19a7 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -569,21 +569,21 @@ set(inkscape_SRC # ----------------------------------------------------------------------------- # Setup the executable # ----------------------------------------------------------------------------- -add_inkscape_lib(sp_LIB "${sp_SRC}") -add_inkscape_lib(inkscape_LIB "${inkscape_SRC}") +#add_inkscape_lib(sp_LIB "${sp_SRC}") +#add_inkscape_lib(inkscape_LIB "${inkscape_SRC}") # make executable for INKSCAPE -add_executable(inkscape ${main_SRC}) +add_executable(inkscape ${main_SRC} ${inkscape_SRC} ${sp_SRC}) add_dependencies(inkscape inkscape_version) target_link_libraries(inkscape # order from automake - sp_LIB + #sp_LIB nrtype_LIB - inkscape_LIB - sp_LIB # annoying, we need both! + #inkscape_LIB + #sp_LIB # annoying, we need both! nrtype_LIB # annoying, we need both! dom_LIB -- cgit v1.2.3 From 0d4a38635fc26ed09d56b46e462b373489c8a4e2 Mon Sep 17 00:00:00 2001 From: Alex Valavanis Date: Sat, 21 Sep 2013 11:42:33 +0100 Subject: Fix format security errors Fixed bugs: - https://launchpad.net/bugs/1193025 (bzr r12563) --- src/box3d-context.cpp | 2 +- src/dropper-context.cpp | 2 +- src/extension/init.cpp | 2 +- src/extension/internal/filter/filter-file.cpp | 2 +- src/extension/system.cpp | 2 +- src/gradient-drag.cpp | 2 +- src/libnrtype/FontFactory.cpp | 2 +- src/selection-describer.cpp | 2 +- src/sp-guide.cpp | 2 +- src/spray-context.cpp | 2 +- src/trace/trace.cpp | 4 ++-- src/tweak-context.cpp | 2 +- src/ui/dialog/print.cpp | 6 +++--- src/ui/dialog/spellcheck.cpp | 2 +- 14 files changed, 17 insertions(+), 17 deletions(-) diff --git a/src/box3d-context.cpp b/src/box3d-context.cpp index 912c67801..f270fa244 100644 --- a/src/box3d-context.cpp +++ b/src/box3d-context.cpp @@ -585,7 +585,7 @@ void Box3DContext::drag(guint state) { box3d_position_set(this->box3d); // status text - this->message_context->setF(Inkscape::NORMAL_MESSAGE, _("3D Box; with Shift to extrude along the Z axis")); + this->message_context->setF(Inkscape::NORMAL_MESSAGE, "%s", _("3D Box; with Shift to extrude along the Z axis")); } void Box3DContext::finishItem() { diff --git a/src/dropper-context.cpp b/src/dropper-context.cpp index 7dfe203ba..d513dd587 100644 --- a/src/dropper-context.cpp +++ b/src/dropper-context.cpp @@ -279,7 +279,7 @@ bool SPDropperContext::root_handler(GdkEvent* event) { // locale-sensitive printf is OK, since this goes to the UI, not into SVG gchar *alpha = g_strdup_printf(_(" alpha %.3g"), alpha_to_set); // where the color is picked, to show in the statusbar - gchar *where = this->dragging ? g_strdup_printf(_(", averaged with radius %d"), (int) rw) : g_strdup_printf(_(" under cursor")); + gchar *where = this->dragging ? g_strdup_printf(_(", averaged with radius %d"), (int) rw) : g_strdup_printf("%s", _(" under cursor")); // message, to show in the statusbar const gchar *message = this->dragging ? _("Release mouse to set color.") : _("Click to set fill, Shift+click to set stroke; drag to average color in area; with Alt to pick inverse color; Ctrl+C to copy the color under mouse to clipboard"); diff --git a/src/extension/init.cpp b/src/extension/init.cpp index 1a163d4c2..2dde9eeb8 100644 --- a/src/extension/init.cpp +++ b/src/extension/init.cpp @@ -295,7 +295,7 @@ static void build_module_from_dir(gchar const *dirname) { if (!dirname) { - g_warning(_("Null external module directory name. Modules will not be loaded.")); + g_warning("%s", _("Null external module directory name. Modules will not be loaded.")); return; } diff --git a/src/extension/internal/filter/filter-file.cpp b/src/extension/internal/filter/filter-file.cpp index d569c6438..48e64f089 100644 --- a/src/extension/internal/filter/filter-file.cpp +++ b/src/extension/internal/filter/filter-file.cpp @@ -44,7 +44,7 @@ void Filter::filters_load_dir (gchar const * dirname, gchar * menuname) { if (!dirname) { - g_warning(_("Null external module directory name. Filters will not be loaded.")); + g_warning("%s", _("Null external module directory name. Filters will not be loaded.")); return; } diff --git a/src/extension/system.cpp b/src/extension/system.cpp index f7fd48b3f..a4c370f4c 100644 --- a/src/extension/system.cpp +++ b/src/extension/system.cpp @@ -124,7 +124,7 @@ SPDocument *open(Extension *key, gchar const *filename) if ( inkscape_use_gui() ) { sp_ui_error_dialog(_("Format autodetect failed. The file is being opened as SVG.")); } else { - g_warning(_("Format autodetect failed. The file is being opened as SVG.")); + g_warning("%s", _("Format autodetect failed. The file is being opened as SVG.")); } } diff --git a/src/gradient-drag.cpp b/src/gradient-drag.cpp index fb58aa508..096b2b47b 100644 --- a/src/gradient-drag.cpp +++ b/src/gradient-drag.cpp @@ -1438,7 +1438,7 @@ void GrDragger::updateTip() } g_free(item_desc); } else if (g_slist_length (draggables) == 2 && isA (POINT_RG_CENTER) && isA (POINT_RG_FOCUS)) { - this->knot->tip = g_strdup_printf (_("Radial gradient center and focus; drag with Shift to separate focus")); + this->knot->tip = g_strdup_printf ("%s", _("Radial gradient center and focus; drag with Shift to separate focus")); } else { int length = g_slist_length (this->draggables); this->knot->tip = g_strdup_printf (ngettext("Gradient point shared by %d gradient; drag with Shift to separate", diff --git a/src/libnrtype/FontFactory.cpp b/src/libnrtype/FontFactory.cpp index 74c706a1b..c91e57065 100644 --- a/src/libnrtype/FontFactory.cpp +++ b/src/libnrtype/FontFactory.cpp @@ -962,7 +962,7 @@ font_instance *font_factory::Face(PangoFontDescription *descr, bool canFail) nFace = pango_font_map_load_font(fontServer,fontContext,descr); } else { - g_warning(_("Ignoring font without family that will crash Pango")); + g_warning("%s", _("Ignoring font without family that will crash Pango")); } if ( nFace ) { diff --git a/src/selection-describer.cpp b/src/selection-describer.cpp index fc6cb7f91..96ef3d0d1 100644 --- a/src/selection-describer.cpp +++ b/src/selection-describer.cpp @@ -146,7 +146,7 @@ void SelectionDescriber::_updateMessageFromSelection(Inkscape::Selection *select if (layer == parent) in_phrase = g_strdup_printf(_(" in %s"), layer_name); else if (!layer) - in_phrase = g_strdup_printf(_(" hidden in definitions")); + in_phrase = g_strdup_printf("%s", _(" hidden in definitions")); else in_phrase = g_strdup_printf(_(" in group %s (%s)"), parent_name, layer_name); } else { diff --git a/src/sp-guide.cpp b/src/sp-guide.cpp index 42a3b1ba7..83d2d8e78 100644 --- a/src/sp-guide.cpp +++ b/src/sp-guide.cpp @@ -470,7 +470,7 @@ char *sp_guide_description(SPGuide const *guide, const bool verbose) char *descr = 0; if ( !guide->document ) { // Guide has probably been deleted and no longer has an attached namedview. - descr = g_strdup_printf(_("Deleted")); + descr = g_strdup_printf("%s", _("Deleted")); } else { SPNamedView *namedview = sp_document_namedview(guide->document, NULL); diff --git a/src/spray-context.cpp b/src/spray-context.cpp index 51fdab6ff..08dc59bce 100644 --- a/src/spray-context.cpp +++ b/src/spray-context.cpp @@ -186,7 +186,7 @@ void SPSprayContext::update_cursor(bool /*with_shift*/) { num = g_slist_length(const_cast(desktop->selection->itemList())); sel_message = g_strdup_printf(ngettext("%i object selected","%i objects selected",num), num); } else { - sel_message = g_strdup_printf(_("Nothing selected")); + sel_message = g_strdup_printf("%s", _("Nothing selected")); } switch (this->mode) { diff --git a/src/trace/trace.cpp b/src/trace/trace.cpp index e2cda6247..cb83541e3 100644 --- a/src/trace/trace.cpp +++ b/src/trace/trace.cpp @@ -213,7 +213,7 @@ Glib::RefPtr Tracer::sioxProcessImage(SPImage *img, Glib::RefPtr(NULL); } @@ -310,7 +310,7 @@ Glib::RefPtr Tracer::sioxProcessImage(SPImage *img, Glib::RefPtr(NULL); } diff --git a/src/tweak-context.cpp b/src/tweak-context.cpp index 2171ecbe4..65106e651 100644 --- a/src/tweak-context.cpp +++ b/src/tweak-context.cpp @@ -168,7 +168,7 @@ void SPTweakContext::update_cursor (bool with_shift) { num = g_slist_length(const_cast(desktop->selection->itemList())); sel_message = g_strdup_printf(ngettext("%i object selected","%i objects selected",num), num); } else { - sel_message = g_strdup_printf(_("Nothing selected")); + sel_message = g_strdup_printf("%s", _("Nothing selected")); } switch (this->mode) { diff --git a/src/ui/dialog/print.cpp b/src/ui/dialog/print.cpp index e6dae278b..03ac9dc64 100644 --- a/src/ui/dialog/print.cpp +++ b/src/ui/dialog/print.cpp @@ -101,7 +101,7 @@ static void draw_page( unlink (tmp_png.c_str()); } else { - g_warning(_("Could not open temporary PNG for bitmap printing")); + g_warning("%s", _("Could not open temporary PNG for bitmap printing")); } } else { @@ -144,11 +144,11 @@ static void draw_page( ret = ctx->finish(); } else { - g_warning(_("Could not set up Document")); + g_warning("%s", _("Could not set up Document")); } } else { - g_warning(_("Failed to set CairoRenderContext")); + g_warning("%s", _("Failed to set CairoRenderContext")); } // Clean up diff --git a/src/ui/dialog/spellcheck.cpp b/src/ui/dialog/spellcheck.cpp index 9cc18c02c..45106755c 100644 --- a/src/ui/dialog/spellcheck.cpp +++ b/src/ui/dialog/spellcheck.cpp @@ -459,7 +459,7 @@ SpellCheck::finished () if (_stops) label = g_strdup_printf(_("Finished, %d words added to dictionary"), _adds); else - label = g_strdup_printf(_("Finished, nothing suspicious found")); + label = g_strdup_printf("%s", _("Finished, nothing suspicious found")); banner_label.set_markup(label); g_free(label); } -- cgit v1.2.3 From 763b5e48a181b326e393b8b6c32b65f4aecf7a40 Mon Sep 17 00:00:00 2001 From: Alex Valavanis Date: Sat, 21 Sep 2013 12:34:52 +0100 Subject: Fix make dist Fixed bugs: - https://launchpad.net/bugs/1188627 (bzr r12564) --- Makefile.am | 1 - configure.ac | 4 +++- src/libdepixelize/Makefile_insert | 16 ++++++++++++---- 3 files changed, 15 insertions(+), 6 deletions(-) diff --git a/Makefile.am b/Makefile.am index b477c84d2..f81db549c 100644 --- a/Makefile.am +++ b/Makefile.am @@ -35,7 +35,6 @@ EXTRA_DIST = \ intltool-extract.in \ intltool-merge.in \ intltool-update.in \ - mkinstalldirs \ $(Graphics_in_files) \ po/check-markup \ utf8-to-roff \ diff --git a/configure.ac b/configure.ac index 5be7a09a8..f04f326ec 100644 --- a/configure.ac +++ b/configure.ac @@ -19,7 +19,9 @@ AC_CONFIG_MACRO_DIR([m4]) AC_CONFIG_AUX_DIR([build-aux]) AC_CANONICAL_HOST -AM_INIT_AUTOMAKE([-Wall dist-zip dist-bzip2 tar-pax]) +# We need version 1.9 of Automake or higher since we no longer distribute the +# obsolete mkinstalldirs script +AM_INIT_AUTOMAKE([-Wall dist-zip dist-bzip2 tar-pax 1.9]) AC_ARG_ENABLE([lsb], AS_HELP_STRING([--enable-lsb], [LSB-compatible build configuration]), [ prefix=/opt/inkscape diff --git a/src/libdepixelize/Makefile_insert b/src/libdepixelize/Makefile_insert index 75b19bf5c..421d32439 100644 --- a/src/libdepixelize/Makefile_insert +++ b/src/libdepixelize/Makefile_insert @@ -5,7 +5,15 @@ libdepixelize/all: libdepixelize/libdepixelize.a libdepixelize/clean: rm -f libdepixelize/libdepixelize.a $(libdepixelize_libdepixelize_a_OBJECTS) -libdepixelize_libdepixelize_a_SOURCES = \ - libdepixelize/kopftracer2011.cpp \ - libdepixelize/kopftracer2011.h \ - libdepixelize/splines.h +libdepixelize_libdepixelize_a_SOURCES = \ + libdepixelize/kopftracer2011.cpp \ + libdepixelize/kopftracer2011.h \ + libdepixelize/splines.h \ + libdepixelize/priv/branchless.h \ + libdepixelize/priv/colorspace.h \ + libdepixelize/priv/homogeneoussplines.h \ + libdepixelize/priv/iterator.h \ + libdepixelize/priv/pixelgraph.h \ + libdepixelize/priv/point.h \ + libdepixelize/priv/simplifiedvoronoi.h \ + libdepixelize/priv/splines.h -- cgit v1.2.3 From 4768c87314c3de876a7bffa4006cd43aa57dac74 Mon Sep 17 00:00:00 2001 From: Alex Valavanis Date: Sat, 21 Sep 2013 13:02:20 +0100 Subject: Drop unused static function declarations (bzr r12565) --- src/ege-color-prof-tracker.cpp | 160 ++++++++++++++++++++--------------------- src/interface.cpp | 27 ------- src/marker.cpp | 43 ----------- src/sp-image.cpp | 3 - 4 files changed, 80 insertions(+), 153 deletions(-) diff --git a/src/ege-color-prof-tracker.cpp b/src/ege-color-prof-tracker.cpp index 53004a96d..eca90ecb7 100644 --- a/src/ege-color-prof-tracker.cpp +++ b/src/ege-color-prof-tracker.cpp @@ -110,6 +110,9 @@ typedef struct _ScreenTrack { GdkFilterReturn x11_win_filter(GdkXEvent *xevent, GdkEvent *event, gpointer data); void handle_property_change(GdkScreen* screen, const gchar* name); void add_x11_tracking_for_screen(GdkScreen* screen, ScreenTrack* screenTrack); +static void fire(GdkScreen* screen, gint monitor); +static void clear_profile( GdkScreen* screen, guint monitor ); +static void set_profile( GdkScreen* screen, guint monitor, const guint8* data, guint len ); #endif /* GDK_WINDOWING_X11 */ static guint signals[LAST_SIGNAL] = {0}; @@ -132,9 +135,6 @@ static void event_after_cb( GtkWidget* widget, GdkEvent* event, gpointer user_da static void target_hierarchy_changed_cb(GtkWidget* widget, GtkWidget* prev_top, gpointer user_data); static void target_screen_changed_cb(GtkWidget* widget, GdkScreen* prev_screen, gpointer user_data); static void screen_size_changed_cb(GdkScreen* screen, gpointer user_data); -static void fire(GdkScreen* screen, gint monitor); -static void clear_profile( GdkScreen* screen, guint monitor ); -static void set_profile( GdkScreen* screen, guint monitor, const guint8* data, guint len ); static void track_screen( GdkScreen* screen, EgeColorProfTracker* tracker ); G_DEFINE_TYPE(EgeColorProfTracker, ege_color_prof_tracker, G_TYPE_OBJECT); @@ -474,83 +474,6 @@ void screen_size_changed_cb(GdkScreen* screen, gpointer user_data) } } -void fire(GdkScreen* screen, gint monitor) -{ - GSList* curr = tracked_screens; - while ( curr ) { - ScreenTrack* track = (ScreenTrack*)curr->data; - if ( track->screen == screen) { - GSList* trackHook = track->trackers; - while ( trackHook ) { - EgeColorProfTracker* tracker = (EgeColorProfTracker*)(trackHook->data); - if ( (monitor == -1) || (tracker->private_data->_monitor == monitor) ) { - g_signal_emit( G_OBJECT(tracker), signals[CHANGED], 0 ); - } - trackHook = g_slist_next(trackHook); - } - } - curr = g_slist_next(curr); - } -} - -static void clear_profile( GdkScreen* screen, guint monitor ) -{ - GSList* curr = tracked_screens; - while ( curr && ((ScreenTrack*)curr->data)->screen != screen ) { - curr = g_slist_next(curr); - } - if ( curr ) { - ScreenTrack* track = (ScreenTrack*)curr->data; - guint i = 0; - GByteArray* previous = 0; - for ( i = track->profiles->len; i <= monitor; i++ ) { - g_ptr_array_add( track->profiles, 0 ); - } - previous = (GByteArray*)g_ptr_array_index( track->profiles, monitor ); - if ( previous ) { - g_byte_array_free( previous, TRUE ); - } - - track->profiles->pdata[monitor] = 0; - } -} - -static void set_profile( GdkScreen* screen, guint monitor, const guint8* data, guint len ) -{ - GSList* curr = tracked_screens; - while ( curr && ((ScreenTrack*)curr->data)->screen != screen ) { - curr = g_slist_next(curr); - } - if ( curr ) { - /* Something happened to a screen being tracked. */ - ScreenTrack* track = (ScreenTrack*)curr->data; - gint screenNum = gdk_screen_get_number(screen); - guint i = 0; - GByteArray* previous = 0; - GSList* abstracts = 0; - - for ( i = track->profiles->len; i <= monitor; i++ ) { - g_ptr_array_add( track->profiles, 0 ); - } - previous = (GByteArray*)g_ptr_array_index( track->profiles, monitor ); - if ( previous ) { - g_byte_array_free( previous, TRUE ); - } - - if ( data && len ) { - GByteArray* newBytes = g_byte_array_sized_new( len ); - newBytes = g_byte_array_append( newBytes, data, len ); - track->profiles->pdata[monitor] = newBytes; - } else { - track->profiles->pdata[monitor] = 0; - } - - for ( abstracts = abstract_trackers; abstracts; abstracts = g_slist_next(abstracts) ) { - g_signal_emit( G_OBJECT(abstracts->data), signals[MODIFIED], 0, screenNum, monitor ); - } - } -} - #ifdef GDK_WINDOWING_X11 GdkFilterReturn x11_win_filter(GdkXEvent *xevent, GdkEvent *event, @@ -692,4 +615,81 @@ void add_x11_tracking_for_screen(GdkScreen* screen, ScreenTrack* screenTrack) } } } + +void fire(GdkScreen* screen, gint monitor) +{ + GSList* curr = tracked_screens; + while ( curr ) { + ScreenTrack* track = (ScreenTrack*)curr->data; + if ( track->screen == screen) { + GSList* trackHook = track->trackers; + while ( trackHook ) { + EgeColorProfTracker* tracker = (EgeColorProfTracker*)(trackHook->data); + if ( (monitor == -1) || (tracker->private_data->_monitor == monitor) ) { + g_signal_emit( G_OBJECT(tracker), signals[CHANGED], 0 ); + } + trackHook = g_slist_next(trackHook); + } + } + curr = g_slist_next(curr); + } +} + +static void clear_profile( GdkScreen* screen, guint monitor ) +{ + GSList* curr = tracked_screens; + while ( curr && ((ScreenTrack*)curr->data)->screen != screen ) { + curr = g_slist_next(curr); + } + if ( curr ) { + ScreenTrack* track = (ScreenTrack*)curr->data; + guint i = 0; + GByteArray* previous = 0; + for ( i = track->profiles->len; i <= monitor; i++ ) { + g_ptr_array_add( track->profiles, 0 ); + } + previous = (GByteArray*)g_ptr_array_index( track->profiles, monitor ); + if ( previous ) { + g_byte_array_free( previous, TRUE ); + } + + track->profiles->pdata[monitor] = 0; + } +} + +static void set_profile( GdkScreen* screen, guint monitor, const guint8* data, guint len ) +{ + GSList* curr = tracked_screens; + while ( curr && ((ScreenTrack*)curr->data)->screen != screen ) { + curr = g_slist_next(curr); + } + if ( curr ) { + /* Something happened to a screen being tracked. */ + ScreenTrack* track = (ScreenTrack*)curr->data; + gint screenNum = gdk_screen_get_number(screen); + guint i = 0; + GByteArray* previous = 0; + GSList* abstracts = 0; + + for ( i = track->profiles->len; i <= monitor; i++ ) { + g_ptr_array_add( track->profiles, 0 ); + } + previous = (GByteArray*)g_ptr_array_index( track->profiles, monitor ); + if ( previous ) { + g_byte_array_free( previous, TRUE ); + } + + if ( data && len ) { + GByteArray* newBytes = g_byte_array_sized_new( len ); + newBytes = g_byte_array_append( newBytes, data, len ); + track->profiles->pdata[monitor] = newBytes; + } else { + track->profiles->pdata[monitor] = 0; + } + + for ( abstracts = abstract_trackers; abstracts; abstracts = g_slist_next(abstracts) ) { + g_signal_emit( G_OBJECT(abstracts->data), signals[MODIFIED], 0, screenNum, monitor ); + } + } +} #endif /* GDK_WINDOWING_X11 */ diff --git a/src/interface.cpp b/src/interface.cpp index ea5eaf16a..d18eb8063 100644 --- a/src/interface.cpp +++ b/src/interface.cpp @@ -716,33 +716,6 @@ sp_recent_open(GtkRecentChooser *recent_menu, gpointer /*user_data*/) g_free(uri); } -static bool -compare_file_basenames(gchar const *a, gchar const *b) { - bool rc; - gchar *ba, *bb; - - bool sort_by_fullname = true; // Sort by full name (including path) or just filename - if (sort_by_fullname) { - ba = g_strdup(a); - bb = g_strdup(b); - } else { - ba = g_path_get_basename(a); - bb = g_path_get_basename(b); - } - - gchar *fa = g_filename_to_utf8(ba, -1, NULL, NULL, NULL); - gchar *fb = g_filename_to_utf8(bb, -1, NULL, NULL, NULL); - g_free(ba); - g_free(bb); - - rc = g_utf8_collate(fa, fb) < 0; - - g_free(fa); - g_free(fb); - - return rc; -} - static void sp_ui_checkboxes_menus(GtkMenu *m, Inkscape::UI::View::View *view) { diff --git a/src/marker.cpp b/src/marker.cpp index 730985b01..45188b4a4 100644 --- a/src/marker.cpp +++ b/src/marker.cpp @@ -35,11 +35,6 @@ struct SPMarkerView { std::vector items; }; -static Inkscape::DrawingItem *sp_marker_private_show (SPItem *item, Inkscape::Drawing &drawing, unsigned int key, unsigned int flags); -static void sp_marker_private_hide (SPItem *item, unsigned int key); -static Geom::OptRect sp_marker_bbox(SPItem const *item, Geom::Affine const &transform, SPItem::BBoxType type); -static void sp_marker_print (SPItem *item, SPPrintContext *ctx); - static void sp_marker_view_remove (SPMarker *marker, SPMarkerView *view, unsigned int destroyitems); #include "sp-factory.h" @@ -503,57 +498,19 @@ Inkscape::DrawingItem* SPMarker::show(Inkscape::Drawing &drawing, unsigned int k return SPGroup::show(drawing, key, flags); } -/** - * This routine is disabled to break propagation. - */ -static Inkscape::DrawingItem * -sp_marker_private_show (SPItem */*item*/, Inkscape::Drawing &/*drawing*/, unsigned int /*key*/, unsigned int /*flags*/) -{ - /* Break propagation */ - return NULL; -} - void SPMarker::hide(unsigned int key) { // CPPIFY: correct? SPGroup::hide(key); } -/** - * This routine is disabled to break propagation. - */ -static void -sp_marker_private_hide (SPItem */*item*/, unsigned int /*key*/) -{ - /* Break propagation */ -} - Geom::OptRect SPMarker::bbox(Geom::Affine const &transform, SPItem::BBoxType type) { return Geom::OptRect(); } -/** - * This routine is disabled to break propagation. - */ -static Geom::OptRect -sp_marker_bbox(SPItem const *, Geom::Affine const &, SPItem::BBoxType) -{ - /* Break propagation */ - return Geom::OptRect(); -} - void SPMarker::print(SPPrintContext* ctx) { } -/** - * This routine is disabled to break propagation. - */ -static void -sp_marker_print (SPItem */*item*/, SPPrintContext */*ctx*/) -{ - /* Break propagation */ -} - /* fixme: Remove link if zero-sized (Lauris) */ /** diff --git a/src/sp-image.cpp b/src/sp-image.cpp index c3352fcf0..38c749dd3 100644 --- a/src/sp-image.cpp +++ b/src/sp-image.cpp @@ -78,9 +78,6 @@ static void sp_image_set_curve(SPImage *image); static Inkscape::Pixbuf *sp_image_repr_read_image(gchar const *href, gchar const *absref, gchar const *base ); static void sp_image_update_arenaitem (SPImage *img, Inkscape::DrawingImage *ai); static void sp_image_update_canvas_image (SPImage *image); -static GdkPixbuf * sp_image_repr_read_dataURI (const gchar * uri_data); -static GdkPixbuf * sp_image_repr_read_b64 (const gchar * uri_data); -static void pixbuf_set_mime_data(GdkPixbuf *pb, guchar *data, gsize len, GdkPixbufFormat *fmt); #ifdef DEBUG_LCMS extern guint update_in_progress; -- cgit v1.2.3 From 0f0b465abde3912c31383ba00b3e81d47fe8fa2a Mon Sep 17 00:00:00 2001 From: Alex Valavanis Date: Sat, 21 Sep 2013 13:40:29 +0100 Subject: Fix tautological comparison for enum of unspecified type (bzr r12566) --- src/sp-gradient-spread.h | 3 ++- src/widgets/gradient-toolbar.cpp | 8 ++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/sp-gradient-spread.h b/src/sp-gradient-spread.h index cc74ef614..60e33b7c0 100644 --- a/src/sp-gradient-spread.h +++ b/src/sp-gradient-spread.h @@ -4,7 +4,8 @@ enum SPGradientSpread { SP_GRADIENT_SPREAD_PAD, SP_GRADIENT_SPREAD_REFLECT, - SP_GRADIENT_SPREAD_REPEAT + SP_GRADIENT_SPREAD_REPEAT, + SP_GRADIENT_SPREAD_UNDEFINED = INT_MAX }; diff --git a/src/widgets/gradient-toolbar.cpp b/src/widgets/gradient-toolbar.cpp index a68f3f451..f7d2b2bd5 100644 --- a/src/widgets/gradient-toolbar.cpp +++ b/src/widgets/gradient-toolbar.cpp @@ -286,7 +286,7 @@ void gr_read_selection( Inkscape::Selection *selection, } } if (spread != spr_selected) { - if (spr_selected != INT_MAX) { + if (spr_selected != SP_GRADIENT_SPREAD_UNDEFINED) { spr_multi = true; } else { spr_selected = spread; @@ -319,7 +319,7 @@ void gr_read_selection( Inkscape::Selection *selection, } } if (spread != spr_selected) { - if (spr_selected != INT_MAX) { + if (spr_selected != SP_GRADIENT_SPREAD_UNDEFINED) { spr_multi = true; } else { spr_selected = spread; @@ -345,7 +345,7 @@ void gr_read_selection( Inkscape::Selection *selection, } } if (spread != spr_selected) { - if (spr_selected != INT_MAX) { + if (spr_selected != SP_GRADIENT_SPREAD_UNDEFINED) { spr_multi = true; } else { spr_selected = spread; @@ -380,7 +380,7 @@ static void gr_tb_selection_changed(Inkscape::Selection * /*selection*/, gpointe } SPGradient *gr_selected = 0; - SPGradientSpread spr_selected = static_cast(INT_MAX); // meaning undefined + SPGradientSpread spr_selected = SP_GRADIENT_SPREAD_UNDEFINED; bool gr_multi = false; bool spr_multi = false; -- cgit v1.2.3 From d195d0abbe2bc27f9eeab4a991c1e996b0cd5412 Mon Sep 17 00:00:00 2001 From: Alex Valavanis Date: Sat, 21 Sep 2013 16:36:31 +0100 Subject: Rm unused dom/svg2.h (bzr r12567) --- src/dom/Makefile_insert | 1 - src/dom/svg2.h | 5560 ----------------------------------------------- 2 files changed, 5561 deletions(-) delete mode 100644 src/dom/svg2.h diff --git a/src/dom/Makefile_insert b/src/dom/Makefile_insert index 25629efb2..6d222987e 100644 --- a/src/dom/Makefile_insert +++ b/src/dom/Makefile_insert @@ -27,7 +27,6 @@ dom_libdom_a_SOURCES = \ dom/smilimpl.cpp \ dom/smilimpl.h \ dom/stylesheets.h \ - dom/svg2.h \ dom/svg.h \ dom/svgimpl.cpp \ dom/svgimpl.h \ diff --git a/src/dom/svg2.h b/src/dom/svg2.h deleted file mode 100644 index 011bafbea..000000000 --- a/src/dom/svg2.h +++ /dev/null @@ -1,5560 +0,0 @@ -#ifndef SEEN_SVG_H -#define SEEN_SVG_H - -/** - * @file - * Phoebe DOM Implementation. - * - * This is a C++ approximation of the W3C DOM model, which follows - * fairly closely the specifications in the various .idl files, copies of - * which are provided for reference. Most important is this one: - * - * http://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/idl-definitions.html - */ -/* - * Authors: - * Bob Jamison - * - * Copyright(C) 2005-2008 Bob Jamison - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or(at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - * - * ======================================================================= - * NOTES - * - * This API follows: - * http://www.w3.org/TR/SVG11/svgdom.html - * - * This file defines the main SVG-DOM Node types. Other non-Node types are - * defined in svgtypes.h. - * - */ - - -// For access to DOM2 core -#include "dom/dom.h" - -// For access to DOM2 events -#include "dom/events.h" - -// For access to those parts from DOM2 CSS OM used by SVG DOM. -#include "dom/css.h" - -// For access to those parts from DOM2 Views OM used by SVG DOM. -#include "dom/views.h" - -// For access to the SMIL OM used by SVG DOM. -#include "dom/smil.h" - - -#include - -#define SVG_NAMESPACE "http://www.w3.org/2000/svg" - - -namespace org -{ -namespace w3c -{ -namespace dom -{ -namespace svg -{ - - -//local definitions -typedef dom::DOMString DOMString; -typedef dom::DOMException DOMException; -typedef dom::Element Element; -typedef dom::ElementPtr ElementPtr; -typedef dom::Document Document; -typedef dom::DocumentPtr DocumentPtr; -typedef dom::NodeList NodeList; - - - - -class SVGElement; -typedef Ptr SVGElementPtr; -class SVGUseElement; -typedef Ptr SVGUseElementPtr; -class SVGDocument; -typedef Ptr SVGDocumentPtr; - -/*######################################################################### -## SVGException -#########################################################################*/ - -/** - * - */ -class SVGException -{ -public: - - /** - * SVGExceptionCode - */ - typedef enum - { - SVG_WRONG_TYPE_ERR = 0, - SVG_INVALID_VALUE_ERR = 1, - SVG_MATRIX_NOT_INVERTABLE = 2 - } SVGExceptionCode; - - unsigned short code; -}; - - - - - - - -//######################################################################## -//######################################################################## -//# V A L U E S -//######################################################################## -//######################################################################## - - - - - -/*######################################################################### -## SVGAngle -#########################################################################*/ - -/** - * - */ -class SVGAngle -{ -public: - - /** - * Angle Unit Types - */ - typedef enum - { - SVG_ANGLETYPE_UNKNOWN = 0, - SVG_ANGLETYPE_UNSPECIFIED = 1, - SVG_ANGLETYPE_DEG = 2, - SVG_ANGLETYPE_RAD = 3, - SVG_ANGLETYPE_GRAD = 4 - } AngleUnitType; - - /** - * - */ - unsigned short getUnitType(); - - /** - * - */ - double getValue(); - - /** - * - */ - void setValue(double val) throw(DOMException); - - /** - * - */ - double getValueInSpecifiedUnits(); - - /** - * - */ - void setValueInSpecifiedUnits(double /*val*/) - throw(DOMException); - - /** - * - */ - DOMString getValueAsString(); - - /** - * - */ - void setValueAsString(const DOMString &/*val*/) - throw(DOMException); - - /** - * - */ - void newValueSpecifiedUnits(unsigned short /*unitType*/, - double /*valueInSpecifiedUnits*/); - - /** - * - */ - void convertToSpecifiedUnits(unsigned short /*unitType*/); - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGAngle(); - - /** - * - */ - SVGAngle(const SVGAngle &other); - - /** - * - */ - ~SVGAngle(); - -protected: - - int unitType; - - double value; - -}; - - -/*######################################################################### -## SVGLength -#########################################################################*/ - -/** - * - */ -class SVGLength -{ -public: - - /** - * Length Unit Types - */ - typedef enum - { - SVG_LENGTHTYPE_UNKNOWN = 0, - SVG_LENGTHTYPE_NUMBER = 1, - SVG_LENGTHTYPE_PERCENTAGE = 2, - SVG_LENGTHTYPE_EMS = 3, - SVG_LENGTHTYPE_EXS = 4, - SVG_LENGTHTYPE_PX = 5, - SVG_LENGTHTYPE_CM = 6, - SVG_LENGTHTYPE_MM = 7, - SVG_LENGTHTYPE_IN = 8, - SVG_LENGTHTYPE_PT = 9, - SVG_LENGTHTYPE_PC = 10 - } LengthUnitType; - - /** - * - */ - unsigned short getUnitType(); - - /** - * - */ - double getValue(); - - /** - * - */ - void setValue(double val) throw(DOMException); - - /** - * - */ - double getValueInSpecifiedUnits(); - - /** - * - */ - void setValueInSpecifiedUnits(double /*val*/) throw(DOMException); - - /** - * - */ - DOMString getValueAsString(); - - /** - * - */ - void setValueAsString(const DOMString& /*val*/) throw(DOMException); - - /** - * - */ - void newValueSpecifiedUnits(unsigned short /*unitType*/, double /*val*/); - - /** - * - */ - void convertToSpecifiedUnits(unsigned short /*unitType*/); - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGLength(); - - /** - * - */ - SVGLength(const SVGLength &other); - - /** - * - */ - ~SVGLength(); - -protected: - - int unitType; - - double value; - -}; - -/*######################################################################### -## SVGMatrix -#########################################################################*/ - -/** - * In SVG, a Matrix is defined like this: - * - * | a c e | - * | b d f | - * | 0 0 1 | - * - */ -class SVGMatrix -{ -public: - - - /** - * - */ - double getA(); - - /** - * - */ - void setA(double val) throw(DOMException); - - /** - * - */ - double getB(); - - /** - * - */ - void setB(double val) throw(DOMException); - - /** - * - */ - double getC(); - - /** - * - */ - void setC(double val) throw(DOMException); - - /** - * - */ - double getD(); - - /** - * - */ - void setD(double val) throw(DOMException); - - /** - * - */ - double getE(); - - /** - * - */ - void setE(double val) throw(DOMException); - - /** - * - */ - double getF(); - - /** - * - */ - void setF(double val) throw(DOMException); - - - /** - * Return the result of postmultiplying this matrix with another. - */ - SVGMatrix multiply(const SVGMatrix &other); - - /** - * Calculate the inverse of this matrix - * - * - * The determinant of a 3x3 matrix E - * (let's use our own notation for a bit) - * - * A B C - * D E F - * G H I - * is - * AEI - AFH - BDI + BFG + CDH - CEG - * - * Since in our affine transforms, G and H==0 and I==1, - * this reduces to: - * AE - BD - * In SVG's naming scheme, that is: a * d - c * b . SIMPLE! - * - * In a similar method of attack, SVG's adjunct matrix is: - * - * d -c cf-ed - * -b a eb-af - * 0 0 ad-cb - * - * To get the inverse matrix, we divide the adjunct matrix by - * the determinant. Notice that(ad-cb)/(ad-cb)==1. Very cool. - * So what we end up with is this: - * - * a = d/(ad-cb) c = -c/(ad-cb) e =(cf-ed)/(ad-cb) - * b = -b/(ad-cb) d = a/(ad-cb) f =(eb-af)/(ad-cb) - * - * (Since this would be in all SVG-DOM implementations, - * somebody needed to document this! ^^) - * - */ - SVGMatrix inverse() throw(SVGException); - - /** - * Equivalent to multiplying by: - * | 1 0 x | - * | 0 1 y | - * | 0 0 1 | - * - */ - SVGMatrix translate(double x, double y); - - /** - * Equivalent to multiplying by: - * | scale 0 0 | - * | 0 scale 0 | - * | 0 0 1 | - * - */ - SVGMatrix scale(double scale); - - /** - * Equivalent to multiplying by: - * | scaleX 0 0 | - * | 0 scaleY 0 | - * | 0 0 1 | - * - */ - SVGMatrix scaleNonUniform(double scaleX, double scaleY); - - /** - * Equivalent to multiplying by: - * | cos(a) -sin(a) 0 | - * | sin(a) cos(a) 0 | - * | 0 0 1 | - * - */ - SVGMatrix rotate(double angle); - - /** - * Equivalent to multiplying by: - * | cos(a) -sin(a) 0 | - * | sin(a) cos(a) 0 | - * | 0 0 1 | - * In this case, angle 'a' is computed as the artangent - * of the slope y/x . It is negative if the slope is negative. - */ - SVGMatrix rotateFromVector(double x, double y) throw(SVGException); - - /** - * Equivalent to multiplying by: - * | -1 0 0 | - * | 0 1 0 | - * | 0 0 1 | - * - */ - SVGMatrix flipX(); - - /** - * Equivalent to multiplying by: - * | 1 0 0 | - * | 0 -1 0 | - * | 0 0 1 | - * - */ - SVGMatrix flipY(); - - /** - * | 1 tan(a) 0 | - * | 0 1 0 | - * | 0 0 1 | - * - */ - SVGMatrix skewX(double angle); - - /** - * Equivalent to multiplying by: - * | 1 0 0 | - * | tan(a) 1 0 | - * | 0 0 1 | - * - */ - SVGMatrix skewY(double angle); - - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGMatrix(); - - /** - * - */ - SVGMatrix(double aArg, double bArg, double cArg, - double dArg, double eArg, double fArg); - - /** - * Copy constructor - */ - SVGMatrix(const SVGMatrix &other); - - /** - * - */ - ~SVGMatrix() {} - -protected: - -friend class SVGTransform; - - /* - * Set to the identify matrix - */ - void identity(); - - double a, b, c, d, e, f; - -}; - - -/*######################################################################### -## SVGNumber -#########################################################################*/ - -/** - * - */ -class SVGNumber -{ -public: - - /** - * - */ - double getValue(); - - /** - * - */ - void setValue(double val) throw(DOMException); - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGNumber(); - - /** - * - */ - SVGNumber(const SVGNumber &other); - - /** - * - */ - ~SVGNumber(); - -protected: - - double value; - -}; - -/*######################################################################### -## SVGPoint -#########################################################################*/ - -/** - * - */ -class SVGPoint -{ -public: - - /** - * - */ - double getX(); - - /** - * - */ - void setX(double val) throw(DOMException); - - /** - * - */ - double getY(); - - /** - * - */ - void setY(double val) throw(DOMException); - - /** - * - */ - SVGPoint matrixTransform(const SVGMatrix &/*matrix*/); - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGPoint(); - - /** - * - */ - SVGPoint(const SVGPoint &other); - - /** - * - */ - ~SVGPoint(); - -protected: - - double x, y; -}; - - -/*######################################################################### -## SVGPathSeg -#########################################################################*/ - -/** - * - */ -class SVGPathSeg -{ -public: - - /** - * Path Segment Types - */ - typedef enum - { - PATHSEG_UNKNOWN = 0, - PATHSEG_CLOSEPATH = 1, - PATHSEG_MOVETO_ABS = 2, - PATHSEG_MOVETO_REL = 3, - PATHSEG_LINETO_ABS = 4, - PATHSEG_LINETO_REL = 5, - PATHSEG_CURVETO_CUBIC_ABS = 6, - PATHSEG_CURVETO_CUBIC_REL = 7, - PATHSEG_CURVETO_QUADRATIC_ABS = 8, - PATHSEG_CURVETO_QUADRATIC_REL = 9, - PATHSEG_ARC_ABS = 10, - PATHSEG_ARC_REL = 11, - PATHSEG_LINETO_HORIZONTAL_ABS = 12, - PATHSEG_LINETO_HORIZONTAL_REL = 13, - PATHSEG_LINETO_VERTICAL_ABS = 14, - PATHSEG_LINETO_VERTICAL_REL = 15, - PATHSEG_CURVETO_CUBIC_SMOOTH_ABS = 16, - PATHSEG_CURVETO_CUBIC_SMOOTH_REL = 17, - PATHSEG_CURVETO_QUADRATIC_SMOOTH_ABS = 18, - PATHSEG_CURVETO_QUADRATIC_SMOOTH_REL = 19 - } PathSegmentType; - - /** - * - */ - unsigned short getPathSegType(); - - /** - * - */ - DOMString getPathSegTypeAsLetter(); - - /** - * From the various subclasses - */ - - /** - * - */ - double getX(); - - /** - * - */ - void setX(double val) throw(DOMException); - - /** - * - */ - double getX1(); - - /** - * - */ - void setX1(double val) throw(DOMException); - - /** - * - */ - double getX2(); - - /** - * - */ - void setX2(double val) throw(DOMException); - - /** - * - */ - double getY(); - - /** - * - */ - void setY(double val) throw(DOMException); - - /** - * - */ - double getY1(); - - /** - * - */ - void setY1(double val) throw(DOMException); - - /** - * - */ - double getY2(); - - /** - * - */ - void setY2(double val) throw(DOMException); - - /** - * - */ - double getR1(); - - /** - * - */ - void setR1(double val) throw(DOMException); - - /** - * - */ - double getR2(); - - /** - * - */ - void setR2(double val) throw(DOMException); - - /** - * - */ - double getAngle(); - - /** - * - */ - void setAngle(double val) throw(DOMException); - - /** - * - */ - bool getLargeArcFlag(); - - /** - * - */ - void setLargeArcFlag(bool val) throw(DOMException); - - /** - * - */ - bool getSweepFlag(); - - /** - * - */ - void setSweepFlag(bool val) throw(DOMException); - - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGPathSeg(); - - /** - * - */ - SVGPathSeg(int typeArg); - - /** - * - */ - SVGPathSeg(const SVGPathSeg &other); - - /** - * - */ - SVGPathSeg &operator=(const SVGPathSeg &other); - - /** - * - */ - ~SVGPathSeg(); - -protected: - - void init(); - - void assign(const SVGPathSeg &other); - - int type; - double x, y, x1, y1, x2, y2; - double r1, r2; - double angle; - bool largeArcFlag; - bool sweepFlag; -}; - - -/*######################################################################### -## SVGPreserveAspectRatio -#########################################################################*/ - -/** - * - */ -class SVGPreserveAspectRatio -{ -public: - - - /** - * Alignment Types - */ - typedef enum - { - SVG_PRESERVEASPECTRATIO_UNKNOWN = 0, - SVG_PRESERVEASPECTRATIO_NONE = 1, - SVG_PRESERVEASPECTRATIO_XMINYMIN = 2, - SVG_PRESERVEASPECTRATIO_XMIDYMIN = 3, - SVG_PRESERVEASPECTRATIO_XMAXYMIN = 4, - SVG_PRESERVEASPECTRATIO_XMINYMID = 5, - SVG_PRESERVEASPECTRATIO_XMIDYMID = 6, - SVG_PRESERVEASPECTRATIO_XMAXYMID = 7, - SVG_PRESERVEASPECTRATIO_XMINYMAX = 8, - SVG_PRESERVEASPECTRATIO_XMIDYMAX = 9, - SVG_PRESERVEASPECTRATIO_XMAXYMAX = 10 - } AlignmentType; - - - /** - * Meet-or-slice Types - */ - typedef enum - { - SVG_MEETORSLICE_UNKNOWN = 0, - SVG_MEETORSLICE_MEET = 1, - SVG_MEETORSLICE_SLICE = 2 - } MeetOrSliceType; - - - /** - * - */ - unsigned short getAlign(); - - /** - * - */ - void setAlign(unsigned short val) throw(DOMException); - - /** - * - */ - unsigned short getMeetOrSlice(); - - /** - * - */ - void setMeetOrSlice(unsigned short val) throw(DOMException); - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGPreserveAspectRatio(); - - /** - * - */ - SVGPreserveAspectRatio(const SVGPreserveAspectRatio &other); - - /** - * - */ - ~SVGPreserveAspectRatio(); - -protected: - - unsigned short align; - unsigned short meetOrSlice; - -}; - - - -/*######################################################################### -## SVGRect -#########################################################################*/ - -/** - * - */ -class SVGRect -{ -public: - - /** - * - */ - double getX(); - - /** - * - */ - void setX(double val) throw(DOMException); - - /** - * - */ - double getY(); - - /** - * - */ - void setY(double val) throw(DOMException); - - /** - * - */ - double getWidth(); - - /** - * - */ - void setWidth(double val) throw(DOMException); - - /** - * - */ - double getHeight(); - - /** - * - */ - void setHeight(double val) throw(DOMException); - - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGRect(); - - /** - * - */ - SVGRect(const SVGRect &other); - - /** - * - */ - ~SVGRect(); - -protected: - - double x, y, width, height; - -}; - -/*######################################################################### -## SVGTransform -#########################################################################*/ - -/** - * - */ -class SVGTransform -{ -public: - - /** - * Transform Types - */ - typedef enum - { - SVG_TRANSFORM_UNKNOWN = 0, - SVG_TRANSFORM_MATRIX = 1, - SVG_TRANSFORM_TRANSLATE = 2, - SVG_TRANSFORM_SCALE = 3, - SVG_TRANSFORM_ROTATE = 4, - SVG_TRANSFORM_SKEWX = 5, - SVG_TRANSFORM_SKEWY = 6, - } TransformType; - - /** - * - */ - unsigned short getType(); - - - /** - * - */ - SVGMatrix getMatrix(); - - /** - * - */ - double getAngle(); - - /** - * - */ - void setMatrix(const SVGMatrix &matrixArg); - - /** - * - */ - void setTranslate(double tx, double ty); - - /** - * - */ - void setScale(double sx, double sy); - - /** - * - */ - void setRotate(double angleArg, double cx, double cy); - - /** - * - */ - void setSkewX(double angleArg); - - /** - * - */ - void setSkewY(double angleArg); - - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGTransform(); - - /** - * - */ - SVGTransform(const SVGTransform &other); - - /** - * - */ - ~SVGTransform(); - -protected: - - int type; - double angle; - - SVGMatrix matrix; -}; - - - - -/*######################################################################### -## SVGUnitTypes -#########################################################################*/ - -/** - * - */ -class SVGUnitTypes -{ -public: - - /** - * Unit Types - */ - typedef enum - { - SVG_UNIT_TYPE_UNKNOWN = 0, - SVG_UNIT_TYPE_USERSPACEONUSE = 1, - SVG_UNIT_TYPE_OBJECTBOUNDINGBOX = 2 - } UnitType; - - - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGUnitTypes(); - - /** - * - */ - ~SVGUnitTypes(); - -}; - - - - -/*######################################################################### -## SVGValue -#########################################################################*/ - -/** - * This is a helper class that will hold several types of data. It will - * be used in those situations where methods are common to different - * interfaces, except for the data type. This class holds the following: - * SVGAngle - * SVGBoolean - * SVGEnumeration - * SVGInteger - * SVGLength - * SVGNumber - * SVGPreserveAspectRatio - * SVGRect - * SVGString - */ -class SVGValue -{ -public: - - /** - * - */ - typedef enum - { - SVG_ANGLE, - SVG_BOOLEAN, - SVG_ENUMERATION, - SVG_INTEGER, - SVG_LENGTH, - SVG_NUMBER, - SVG_PRESERVE_ASPECT_RATIO, - SVG_RECT, - SVG_STRING, - } SVGValueType; - - /** - * Constructor - */ - SVGValue(); - - /** - * Copy constructor - */ - SVGValue(const SVGValue &other); - - /** - * Assignment - */ - SVGValue &operator=(const SVGValue &other); - - /** - * - */ - ~SVGValue(); - - //########################### - // TYPES - //########################### - - /** - * Angle - */ - SVGValue(const SVGAngle &v); - - SVGAngle angleValue(); - - /** - * Boolean - */ - SVGValue(bool v); - - bool booleanValue(); - - - /** - * Enumeration - */ - SVGValue(short v); - - short enumerationValue(); - - /** - * Integer - */ - SVGValue(long v); - - long integerValue(); - - /** - * Length - */ - SVGValue(const SVGLength &v); - - SVGLength lengthValue(); - - /** - * Number - */ - SVGValue(double v); - - double numberValue(); - - /** - * PathSegment - */ - SVGValue(const SVGPathSeg &v); - - SVGPathSeg pathDataValue(); - - - /** - * Points - */ - SVGValue(const SVGPoint &v); - - SVGPoint pointValue(); - - - /** - * PreserveAspectRatio - */ - SVGValue(const SVGPreserveAspectRatio &v); - - SVGPreserveAspectRatio preserveAspectRatioValue(); - - /** - * Rect - */ - SVGValue(const SVGRect &v); - - SVGRect rectValue(); - - /** - * String - */ - SVGValue(const DOMString &v); - - DOMString stringValue(); - - /** - * TransformList - */ - SVGValue(const SVGTransform &v); - - SVGTransform transformValue(); - - -private: - - void init(); - - void assign(const SVGValue &other); - - short type; - SVGAngle angleval; // SVGAngle - bool bval; // SVGBoolean - short eval; // SVGEnumeration - long ival; // SVGInteger - SVGLength lengthval; // SVGLength - double dval; // SVGNumber - SVGPathSeg segval; // SVGPathSeg - SVGPoint pointval; // SVGPoint - SVGPreserveAspectRatio parval; // SVGPreserveAspectRatio - SVGRect rval; // SVGRect - DOMString sval; // SVGString - SVGTransform transformval; // SVGTransform - -}; - - -/*######################################################################### -## SVGValueList -#########################################################################*/ - -/** - * THis is used to generify a bit the several different types of lists: - * - * SVGLengthList -> SVGValueList - * SVGValueList -> SVGValueList - * SVGPathData -> SVGValueList - * SVGPoints -> SVGValueList - * SVGTransformList -> SVGValueList - */ -class SVGValueList -{ -public: - - /** - * - */ - typedef enum - { - SVG_LIST_LENGTH, - SVG_LIST_NUMBER, - SVG_LIST_PATHSEG, - SVG_LIST_POINT, - SVG_LIST_TRANSFORM - } SVGValueListTypes; - - /** - * - */ - unsigned long getNumberOfItems(); - - - /** - * - */ - void clear() throw(DOMException); - - /** - * - */ - SVGValue getItem(unsigned long index) throw(DOMException); - - /** - * - */ - SVGValue insertItemBefore(const SVGValue &newItem, - unsigned long index) - throw(DOMException, SVGException); - - /** - * - */ - SVGValue replaceItem(const SVGValue &newItem, - unsigned long index) - throw(DOMException, SVGException); - - /** - * - */ - SVGValue removeItem(unsigned long index) throw(DOMException); - - /** - * - */ - SVGValue appendItem(const SVGValue &newItem) - throw(DOMException, SVGException); - - /** - * Matrix - */ - SVGValue initialize(const SVGValue &newItem) - throw(DOMException, SVGException); - - /** - * Matrix - */ - SVGValue createSVGTransformFromMatrix(const SVGValue &matrix); - - /** - * Matrix - */ - SVGValue consolidate(); - - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGValueList(); - - /** - * - */ - SVGValueList(const SVGValueList &other); - - /** - * - */ - ~SVGValueList(); - -protected: - - std::vector items; - -}; - - - - - -/*######################################################################### -## SVGAnimatedValue -#########################################################################*/ - -/** - * This class is used to merge all of the "Animated" values, with only - * a different type, into a single API. This class subsumes the following: - * SVGAnimatedValue - * SVGAnimatedValue - * SVGAnimatedValue - * SVGAnimatedValue - * SVGAnimatedValue - * SVGAnimatedValue - * SVGAnimatedPathData - * SVGAnimatedPoints - * SVGAnimatedPreserveAspectRatio - * SVGAnimatedValue - * SVGAnimatedValue - */ -class SVGAnimatedValue -{ -public: - - /** - * - */ - SVGValue &getBaseVal(); - - /** - * - */ - void setBaseVal(const SVGValue &val) throw (DOMException); - - /** - * - */ - SVGValue &getAnimVal(); - - /** - * - */ - SVGAnimatedValue(); - - /** - * - */ - SVGAnimatedValue(const SVGValue &baseValue); - - /** - * - */ - SVGAnimatedValue(const SVGValue &baseValue, const SVGValue &animValue); - - /** - * - */ - SVGAnimatedValue(const SVGAnimatedValue &other); - - /** - * - */ - SVGAnimatedValue &operator=(const SVGAnimatedValue &other); - - /** - * - */ - SVGAnimatedValue &operator=(const SVGValue &baseVal); - - /** - * - */ - ~SVGAnimatedValue(); - -private: - - void init(); - - void assign(const SVGAnimatedValue &other); - - SVGValue baseVal; - - SVGValue animVal; - -}; - - -/*######################################################################### -## SVGAnimatedValueList -#########################################################################*/ - -/** - * This class is used to merge all of the "Animated" values, with only - * a different type, into a single API. This class subsumes the following: - * SVGAnimatedValueList - * SVGAnimatedValueList - * SVGAnimatedTransformList - */ -class SVGAnimatedValueList -{ -public: - - /** - * - */ - SVGValueList &getBaseVal(); - - /** - * - */ - void setBaseVal(const SVGValueList &val) throw (DOMException); - - /** - * - */ - SVGValueList &getAnimVal(); - - /** - * - */ - SVGAnimatedValueList(); - - /** - * - */ - SVGAnimatedValueList(const SVGValueList &baseValue); - - /** - * - */ - SVGAnimatedValueList(const SVGValueList &baseValue, const SVGValueList &animValue); - - /** - * - */ - SVGAnimatedValueList(const SVGAnimatedValueList &other); - - /** - * - */ - SVGAnimatedValueList &operator=(const SVGAnimatedValueList &other); - - /** - * - */ - SVGAnimatedValueList &operator=(const SVGValueList &baseVal); - - /** - * - */ - ~SVGAnimatedValueList(); - -private: - - void init(); - - void assign(const SVGAnimatedValueList &other); - - SVGValueList baseVal; - - SVGValueList animVal; - -}; - - - -/*######################################################################### -## SVGICCColor -#########################################################################*/ - -/** - * - */ -class SVGICCColor -{ -public: - - /** - * - */ - DOMString getColorProfile(); - - /** - * - */ - void setColorProfile(const DOMString &val) throw(DOMException); - - /** - * - */ - SVGValueList &getColors(); - - - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGICCColor(); - - /** - * - */ - SVGICCColor(const SVGICCColor &other); - - /** - * - */ - ~SVGICCColor(); - -protected: - - DOMString colorProfile; - - SVGValueList colors; - -}; - - - -/*######################################################################### -## SVGColor -#########################################################################*/ - -/** - * - */ -class SVGColor : public css::CSSValue -{ -public: - - - /** - * Color Types - */ - typedef enum - { - SVG_COLORTYPE_UNKNOWN = 0, - SVG_COLORTYPE_RGBCOLOR = 1, - SVG_COLORTYPE_RGBCOLOR_ICCCOLOR = 2, - SVG_COLORTYPE_CURRENTCOLOR = 3 - } ColorType; - - - /** - * - */ - unsigned short getColorType(); - - /** - * - */ - css::RGBColor getRgbColor(); - - /** - * - */ - SVGICCColor getIccColor(); - - - /** - * - */ - void setRGBColor(const DOMString& /*rgbColor*/) - throw(SVGException); - - /** - * - */ - void setRGBColorICCColor(const DOMString& /*rgbColor*/, - const DOMString& /*iccColor*/) - throw(SVGException); - - /** - * - */ - void setColor(unsigned short /*colorType*/, - const DOMString& /*rgbColor*/, - const DOMString& /*iccColor*/) - throw(SVGException); - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGColor(); - - /** - * - */ - SVGColor(const SVGColor &other); - - /** - * - */ - ~SVGColor(); - -protected: - - int colorType; - -}; - - - -/*######################################################################### -## SVGPaint -#########################################################################*/ - -/** - * - */ -class SVGPaint : public SVGColor -{ -public: - - /** - * Paint Types - */ - typedef enum - { - SVG_PAINTTYPE_UNKNOWN = 0, - SVG_PAINTTYPE_RGBCOLOR = 1, - SVG_PAINTTYPE_RGBCOLOR_ICCCOLOR = 2, - SVG_PAINTTYPE_NONE = 101, - SVG_PAINTTYPE_CURRENTCOLOR = 102, - SVG_PAINTTYPE_URI_NONE = 103, - SVG_PAINTTYPE_URI_CURRENTCOLOR = 104, - SVG_PAINTTYPE_URI_RGBCOLOR = 105, - SVG_PAINTTYPE_URI_RGBCOLOR_ICCCOLOR = 106, - SVG_PAINTTYPE_URI = 107 - } PaintType; - - - /** - * - */ - unsigned short getPaintType(); - - /** - * - */ - DOMString getUri(); - - /** - * - */ - void setUri(const DOMString& uriArg); - - /** - * - */ - void setPaint(unsigned short paintTypeArg, - const DOMString& uriArg, - const DOMString& /*rgbColor*/, - const DOMString& /*iccColor*/) - throw(SVGException); - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGPaint(); - - /** - * - */ - SVGPaint(const SVGPaint &other); - - /** - * - */ - ~SVGPaint(); - -protected: - - unsigned int paintType; - DOMString uri; - -}; - - - - -//######################################################################## -//######################################################################## -//# I N T E R F A C E S -//######################################################################## -//######################################################################## - - - - - - - -/*######################################################################### -## SVGStylable -#########################################################################*/ - -/** - * - */ -class SVGStylable -{ -public: - - /** - * - */ - SVGAnimatedValue getClassName(); - - /** - * - */ - css::CSSStyleDeclaration getStyle(); - - - /** - * - */ - css::CSSValue getPresentationAttribute(const DOMString& /*name*/); - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGStylable(); - - /** - * - */ - SVGStylable(const SVGStylable &other); - - /** - * - */ - ~SVGStylable(); - -protected: - - SVGAnimatedValue className; - css::CSSStyleDeclaration style; - -}; - - - - - -/*######################################################################### -## SVGLocatable -#########################################################################*/ - -/** - * - */ -class SVGLocatable -{ -public: - - /** - * - */ - SVGElementPtr getNearestViewportElement(); - - /** - * - */ - SVGElementPtr getFarthestViewportElement(); - - /** - * - */ - SVGRect getBBox(); - - /** - * - */ - SVGMatrix getCTM(); - - /** - * - */ - SVGMatrix getScreenCTM(); - - /** - * - */ - SVGMatrix getTransformToElement(const SVGElement &/*element*/) - throw(SVGException); - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGLocatable(); - - /** - * - */ - SVGLocatable(const SVGLocatable &/*other*/); - - /** - * - */ - ~SVGLocatable(); - -protected: - - SVGRect bbox; - SVGMatrix ctm; - SVGMatrix screenCtm; - -}; - - -/*######################################################################### -## SVGTransformable -#########################################################################*/ - -/** - * - */ -class SVGTransformable : public SVGLocatable -{ -public: - - - /** - * - */ - SVGAnimatedValueList &getTransform(); - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGTransformable(); - - /** - * - */ - SVGTransformable(const SVGTransformable &other); - - /** - * - */ - ~SVGTransformable(); - -protected: - - SVGAnimatedValueList transforms; -}; - - - -/*######################################################################### -## SVGTests -#########################################################################*/ - -/** - * - */ -class SVGTests -{ -public: - - /** - * - */ - SVGValueList &getRequiredFeatures(); - - /** - * - */ - SVGValueList &getRequiredExtensions(); - - /** - * - */ - SVGValueList &getSystemLanguage(); - - /** - * - */ - bool hasExtension(const DOMString& /*extension*/); - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGTests(); - - /** - * - */ - SVGTests(const SVGTests &other); - - /** - * - */ - ~SVGTests(); - -protected: - - SVGValueList requiredFeatures; - SVGValueList requiredExtensions; - SVGValueList systemLanguage; - -}; - - - - - - -/*######################################################################### -## SVGLangSpace -#########################################################################*/ - -/** - * - */ -class SVGLangSpace -{ -public: - - - /** - * - */ - DOMString getXmlLang(); - - /** - * - */ - void setXmlLang(const DOMString &val) throw(DOMException); - - /** - * - */ - DOMString getXmlSpace(); - - /** - * - */ - void setXmlSpace(const DOMString &val) throw(DOMException); - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGLangSpace(); - - /** - * - */ - SVGLangSpace(const SVGLangSpace &other); - - /** - * - */ - ~SVGLangSpace(); - -protected: - - DOMString xmlLang; - DOMString xmlSpace; - -}; - - - -/*######################################################################### -## SVGExternalResourcesRequired -#########################################################################*/ - -/** - * - */ -class SVGExternalResourcesRequired -{ -public: - - /** - * boolean - */ - SVGAnimatedValue getExternalResourcesRequired(); - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGExternalResourcesRequired(); - - /** - * - */ - SVGExternalResourcesRequired(const SVGExternalResourcesRequired &other); - - /** - * - */ - ~SVGExternalResourcesRequired(); - -protected: - - SVGAnimatedValue required; //boolean - -}; - - - - - - - - - -/*######################################################################### -## SVGFitToViewBox -#########################################################################*/ - -/** - * - */ -class SVGFitToViewBox -{ -public: - - /** - * rect - */ - SVGAnimatedValue getViewBox(); - - /** - * preserveAspectRatio - */ - SVGAnimatedValue getPreserveAspectRatio(); - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGFitToViewBox(); - - /** - * - */ - SVGFitToViewBox(const SVGFitToViewBox &other); - - /** - * - */ - ~SVGFitToViewBox(); - -protected: - - SVGAnimatedValue viewBox; //rect - SVGAnimatedValue preserveAspectRatio; - -}; - - -/*######################################################################### -## SVGZoomAndPan -#########################################################################*/ - -/** - * - */ -class SVGZoomAndPan -{ -public: - - /** - * Zoom and Pan Types - */ - typedef enum - { - SVG_ZOOMANDPAN_UNKNOWN = 0, - SVG_ZOOMANDPAN_DISABLE = 1, - SVG_ZOOMANDPAN_MAGNIFY = 2 - } ZoomAndPanType; - - /** - * - */ - unsigned short getZoomAndPan(); - - /** - * - */ - void setZoomAndPan(unsigned short val) throw(DOMException); - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGZoomAndPan(); - - /** - * - */ - SVGZoomAndPan(const SVGZoomAndPan &other); - - /** - * - */ - ~SVGZoomAndPan(); - -protected: - - unsigned short zoomAndPan; - -}; - - - - - - -/*######################################################################### -## SVGViewSpec -#########################################################################*/ - -/** - * - */ -class SVGViewSpec : public SVGZoomAndPan, - public SVGFitToViewBox -{ -public: - - /** - * - */ - SVGValueList getTransform(); - - /** - * - */ - SVGElementPtr getViewTarget(); - - /** - * - */ - DOMString getViewBoxString(); - - /** - * - */ - DOMString getPreserveAspectRatioString(); - - /** - * - */ - DOMString getTransformString(); - - /** - * - */ - DOMString getViewTargetString(); - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGViewSpec(); - - /** - * - */ - SVGViewSpec(const SVGViewSpec &other); - - /** - * - */ - ~SVGViewSpec(); - -protected: - - SVGElementPtr viewTarget; - SVGValueList transform; -}; - - -/*######################################################################### -## SVGURIReference -#########################################################################*/ - -/** - * - */ -class SVGURIReference -{ -public: - - /** - * string - */ - SVGAnimatedValue getHref(); - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGURIReference(); - - /** - * - */ - SVGURIReference(const SVGURIReference &other); - - /** - * - */ - ~SVGURIReference(); - -protected: - - SVGAnimatedValue href; - -}; - - - - - - -/*######################################################################### -## SVGCSSRule -#########################################################################*/ - -/** - * - */ -class SVGCSSRule : public css::CSSRule -{ -public: - - - /** - * Additional CSS RuleType to support ICC color specifications - */ - typedef enum - { - COLOR_PROFILE_RULE = 7 - } ColorProfileRuleType; - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGCSSRule(); - - /** - * - */ - SVGCSSRule(const SVGCSSRule &other); - - /** - * - */ - ~SVGCSSRule(); - -}; - - - -/*######################################################################### -## SVGRenderingIntent -#########################################################################*/ - -/** - * - */ -class SVGRenderingIntent -{ -public: - - /** - * Rendering Intent Types - */ - typedef enum - { - RENDERING_INTENT_UNKNOWN = 0, - RENDERING_INTENT_AUTO = 1, - RENDERING_INTENT_PERCEPTUAL = 2, - RENDERING_INTENT_RELATIVE_COLORIMETRIC = 3, - RENDERING_INTENT_SATURATION = 4, - RENDERING_INTENT_ABSOLUTE_COLORIMETRIC = 5 - } RenderingIntentType; - - - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGRenderingIntent(); - - /** - * - */ - SVGRenderingIntent(const SVGRenderingIntent &other); - - /** - * - */ - ~SVGRenderingIntent(); - -protected: - - unsigned short renderingIntentType; -}; - - - - - - - - - -/*######################################################################### -## SVGColorProfileRule -#########################################################################*/ - -/** - * - */ -class SVGColorProfileRule : public SVGCSSRule, - public SVGRenderingIntent -{ - -public: - - /** - * - */ - DOMString getSrc(); - - /** - * - */ - void setSrc(const DOMString &val) throw(DOMException); - - /** - * - */ - DOMString getName(); - - /** - * - */ - void setName(const DOMString &val) throw(DOMException); - - /** - * - */ - unsigned short getRenderingIntent(); - - /** - * - */ - void setRenderingIntent(unsigned short val) throw(DOMException); - - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGColorProfileRule(); - - /** - * - */ - SVGColorProfileRule(const SVGColorProfileRule &other); - - /** - * - */ - ~SVGColorProfileRule(); - -protected: - - unsigned short renderingIntent; - DOMString src; - DOMString name; - -}; - - - -/*######################################################################### -## SVGFilterPrimitiveStandardAttributes -#########################################################################*/ - -/** - * - */ -class SVGFilterPrimitiveStandardAttributes : public SVGStylable -{ -public: - - /** - * length - */ - SVGAnimatedValue getX(); - - /** - * length - */ - SVGAnimatedValue getY(); - - /** - * length - */ - SVGAnimatedValue getWidth(); - - /** - * length - */ - SVGAnimatedValue getHeight(); - - /** - * string - */ - SVGAnimatedValue getResult(); - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGFilterPrimitiveStandardAttributes(); - - /** - * - */ - SVGFilterPrimitiveStandardAttributes( - const SVGFilterPrimitiveStandardAttributes &other); - - /** - * - */ - ~SVGFilterPrimitiveStandardAttributes(); - -protected: - - SVGAnimatedValue x; - SVGAnimatedValue y; - SVGAnimatedValue width; - SVGAnimatedValue height; - SVGAnimatedValue result; - -}; - - -/*######################################################################### -## SVGEvent -#########################################################################*/ - -/** - * - */ -class SVGEvent : events::Event -{ -public: - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGEvent(); - - /** - * - */ - SVGEvent(const SVGEvent &other); - - /** - * - */ - ~SVGEvent(); - -}; - - - - -/*######################################################################### -## SVGZoomEvent -#########################################################################*/ - -/** - * - */ -class SVGZoomEvent : events::UIEvent -{ -public: - - /** - * - */ - SVGRect getZoomRectScreen(); - - /** - * - */ - double getPreviousScale(); - - /** - * - */ - SVGPoint getPreviousTranslate(); - - /** - * - */ - double getNewScale(); - - /** - * - */ - SVGPoint getNewTranslate(); - - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGZoomEvent(); - - /** - * - */ - SVGZoomEvent(const SVGZoomEvent &other); - - /** - * - */ - ~SVGZoomEvent(); - -protected: - - SVGRect zoomRectScreen; - double previousScale; - SVGPoint previousTranslate; - double newScale; - SVGPoint newTranslate; - -}; - - - -/*######################################################################### -## SVGElementInstance -#########################################################################*/ - -/** - * - */ -class SVGElementInstance : public events::EventTarget -{ -public: - - /** - * - */ - SVGElementPtr getCorrespondingElement(); - - /** - * - */ - SVGUseElementPtr getCorrespondingUseElement(); - - /** - * - */ - SVGElementInstance getParentNode(); - - /** - * Since we are using stack types and this is a circular definition, - * we will instead implement this as a global function below: - * SVGElementInstanceList getChildNodes(const SVGElementInstance instance); - */ - //SVGElementInstanceList getChildNodes(); - - /** - * - */ - SVGElementInstance getFirstChild(); - - /** - * - */ - SVGElementInstance getLastChild(); - - /** - * - */ - SVGElementInstance getPreviousSibling(); - - /** - * - */ - SVGElementInstance getNextSibling(); - - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGElementInstance(); - - /** - * - */ - SVGElementInstance(const SVGElementInstance &other); - - /** - * - */ - ~SVGElementInstance(); - -protected: - - SVGElementPtr correspondingElement; - SVGUseElementPtr correspondingUseElement; - -}; - - - - - - -/*######################################################################### -## SVGElementInstanceList -#########################################################################*/ - -/** - * - */ -class SVGElementInstanceList -{ -public: - - /** - * - */ - unsigned long getLength(); - - /** - * - */ - SVGElementInstance item(unsigned long index); - - /** - * This static method replaces the circular definition of: - * SVGElementInstanceList SVGElementInstance::getChildNodes() - * - */ - static SVGElementInstanceList getChildNodes(const SVGElementInstance &/*instance*/); - - - //################## - //# Non-API methods - //################## - - /** - * - */ - SVGElementInstanceList(); - - /** - * - */ - SVGElementInstanceList(const SVGElementInstanceList &other); - - /** - * - */ - ~SVGElementInstanceList(); - -protected: - - std::vector items; - - -}; - - - - - - - - -//######################################################################## -//######################################################################## -//######################################################################## -//# D O M -//######################################################################## -//######################################################################## -//######################################################################## - - - - - -/*######################################################################### -## Types -#########################################################################*/ - -/** - * Bitmasks for has_an interface for SVGElement - */ -#define SVG_ANGLE 0x00000001 -#define SVG_ANIMATED_ANGLE 0x00000002 -#define SVG_ANIMATED_BOOLEAN 0x00000004 -#define SVG_ANIMATED_ENUMERATION 0x00000008 -#define SVG_ANIMATED_INTEGER 0x00000010 -#define SVG_ANIMATED_LENGTH 0x00000020 -#define SVG_ANIMATED_LENGTH_LIST 0x00000040 -#define SVG_ANIMATED_NUMBER 0x00000080 -#define SVG_ANIMATED_NUMBER_LIST 0x00000100 -#define SVG_ANIMATED_RECT 0x00000200 -#define SVG_ANIMATED_STRING 0x00000400 -#define SVG_COLOR 0x00000800 -#define SVG_CSS_RULE 0x00001000 -#define SVG_EXTERNAL_RESOURCES_REQUIRED 0x00002000 -#define SVG_FIT_TO_VIEWBOX 0x00004000 -#define SVG_ICCCOLOR 0x00008000 -#define SVG_LANG_SPACE 0x00010000 -#define SVG_LENGTH 0x00020000 -#define SVG_LENGTH_LIST 0x00040000 -#define SVG_LOCATABLE 0x00080000 -#define SVG_NUMBER 0x00100000 -#define SVG_NUMBER_LIST 0x00200000 -#define SVG_RECT 0x00400000 -#define SVG_RENDERING_INTENT 0x00800000 -#define SVG_STRING_LIST 0x01000000 -#define SVG_STYLABLE 0x02000000 -#define SVG_TESTS 0x04000000 -#define SVG_TRANSFORMABLE 0x08000000 -#define SVG_UNIT_TYPES 0x10000000 -#define SVG_URI_REFERENCE 0x20000000 -#define SVG_VIEW_SPEC 0x40000000 -#define SVG_ZOOM_AND_PAN 0x80000000 - -/** - * How many above? Quite handy - */ -#define SVG_NR_INTERFACES 32 - - -/** - * Enumerations for SVGElement types - */ -typedef enum -{ - SVG_A_ELEMENT = 0, - SVG_ALTGLYPH_ELEMENT, - SVG_ALTGLYPHDEF_ELEMENT, - SVG_ALTGLYPHITEM_ELEMENT, - SVG_ANIMATE_ELEMENT, - SVG_ANIMATECOLOR_ELEMENT, - SVG_ANIMATEMOTION_ELEMENT, - SVG_ANIMATETRANSFORM_ELEMENT, - SVG_CIRCLE_ELEMENT, - SVG_CLIPPATH_ELEMENT, - SVG_COLOR_PROFILE_ELEMENT, - SVG_CURSOR_ELEMENT, - SVG_DEFINITION_SRC_ELEMENT, - SVG_DEFS_ELEMENT, - SVG_DESC_ELEMENT, - SVG_ELLIPSE_ELEMENT, - SVG_FEBLEND_ELEMENT, - SVG_FECOLORMATRIX_ELEMENT, - SVG_FECOMPONENTTRANSFER_ELEMENT, - SVG_FECOMPOSITE_ELEMENT, - SVG_FECONVOLVEMATRIX_ELEMENT, - SVG_FEDIFFUSELIGHTING_ELEMENT, - SVG_FEDISPLACEMENTMAP_ELEMENT, - SVG_FEDISTANTLIGHT_ELEMENT, - SVG_FEFLOOD_ELEMENT, - SVG_FEFUNCA_ELEMENT, - SVG_FEFUNCB_ELEMENT, - SVG_FEFUNCG_ELEMENT, - SVG_FEFUNCR_ELEMENT, - SVG_FEGAUSSIANBLUR_ELEMENT, - SVG_FEIMAGE_ELEMENT, - SVG_FEMERGE_ELEMENT, - SVG_FEMERGENODE_ELEMENT, - SVG_FEMORPHOLOGY_ELEMENT, - SVG_FEOFFSET_ELEMENT, - SVG_FEPOINTLIGHT_ELEMENT, - SVG_FESPECULARLIGHTING_ELEMENT, - SVG_FESPOTLIGHT_ELEMENT, - SVG_FETILE_ELEMENT, - SVG_FETURBULENCE_ELEMENT, - SVG_FILTER_ELEMENT, - SVG_FONT_ELEMENT, - SVG_FONT_FACE_ELEMENT, - SVG_FONT_FACE_FORMAT_ELEMENT, - SVG_FONT_FACE_NAME_ELEMENT, - SVG_FONT_FACE_SRC_ELEMENT, - SVG_FONT_FACE_URI_ELEMENT, - SVG_FOREIGNOBJECT_ELEMENT, - SVG_G_ELEMENT, - SVG_GLYPH_ELEMENT, - SVG_GLYPHREF_ELEMENT, - SVG_HKERN_ELEMENT, - SVG_IMAGE_ELEMENT, - SVG_LINE_ELEMENT, - SVG_LINEARGRADIENT_ELEMENT, - SVG_MARKER_ELEMENT, - SVG_MASK_ELEMENT, - SVG_METADATA_ELEMENT, - SVG_MISSING_GLYPH_ELEMENT, - SVG_MPATH_ELEMENT, - SVG_PATH_ELEMENT, - SVG_PATTERN_ELEMENT, - SVG_POLYGON_ELEMENT, - SVG_POLYLINE_ELEMENT, - SVG_RADIALGRADIENT_ELEMENT, - SVG_RECT_ELEMENT, - SVG_SCRIPT_ELEMENT, - SVG_SET_ELEMENT, - SVG_STOP_ELEMENT, - SVG_STYLE_ELEMENT, - SVG_SVG_ELEMENT, - SVG_SWITCH_ELEMENT, - SVG_SYMBOL_ELEMENT, - SVG_TEXT_ELEMENT, - SVG_TEXTPATH_ELEMENT, - SVG_TITLE_ELEMENT, - SVG_TREF_ELEMENT, - SVG_TSPAN_ELEMENT, - SVG_USE_ELEMENT, - SVG_VIEW_ELEMENT, - SVG_VKERN_ELEMENT, - SVG_MAX_ELEMENT -} SVGElementType; - - - - -/** - * Look up the SVG Element type enum for a given string - * Return -1 if not found - */ -int svgElementStrToEnum(const char *str); - - -/** - * Return the string corresponding to a given SVG element type enum - * Return "unknown" if not found - */ -const char *svgElementEnumToStr(int type); - - - - -/*######################################################################### -## SVGElement -#########################################################################*/ - -/** - * All of the SVG DOM interfaces that correspond directly to elements in the SVG - * language(e.g., the SVGPathElement interface corresponds directly to the - * 'path' element in the language) are derivative from base class SVGElement. - */ -class SVGElement : public Element -{ -public: - - //#################################################################### - //# BASE METHODS FOR SVGElement - //#################################################################### - - /** - * Get the value of the id attribute on the given element. - */ - DOMString getId(); - - /** - * Set the value of the id attribute on the given element. - */ - void setId(const DOMString &val) throw(DOMException); - - /** - * Corresponds to attribute xml:base on the given element. - */ - DOMString getXmlBase(); - - /** - * Corresponds to attribute xml:base on the given element. - */ - void setXmlBase(const DOMString &val) throw(DOMException); - - /** - * The nearest ancestor 'svg' element. Null if the given element is the - * outermost 'svg' element. - */ - SVGElementPtr getOwnerSVGElement(); - - /** - * The element which established the current viewport. Often, the nearest - * ancestor 'svg' element. Null if the given element is the outermost 'svg' - * element. - */ - SVGElementPtr getViewportElement(); - - - - //#################################################################### - //#################################################################### - //# E L E M E N T S - //#################################################################### - //#################################################################### - - //#################################################################### - //# SVGAElement - //#################################################################### - - - /** - * - */ - SVGAnimatedValue getTarget(); - - - - //#################################################################### - //# SVGAltGlyphElement - //#################################################################### - - - /** - * Get the attribute glyphRef on the given element. - */ - DOMString getGlyphRef(); - - /** - * Set the attribute glyphRef on the given element. - */ - void setGlyphRef(const DOMString &val) throw(DOMException); - - /** - * Get the attribute format on the given element. - */ - DOMString getFormat(); - - /** - * Set the attribute format on the given element. - */ - void setFormat(const DOMString &val) throw(DOMException); - - - //#################################################################### - //# SVGAltGlyphDefElement - //#################################################################### - - //#################################################################### - //# SVGAltGlyphItemElement - //#################################################################### - - - //#################################################################### - //# SVGAnimateElement - //#################################################################### - - - //#################################################################### - //# SVGAnimateColorElement - //#################################################################### - - //#################################################################### - //# SVGAnimateMotionElement - //#################################################################### - - - //#################################################################### - //# SVGAnimateTransformElement - //#################################################################### - - - //#################################################################### - //# SVGAnimationElement - //#################################################################### - - - /** - * - */ - SVGElementPtr getTargetElement(); - - /** - * - */ - double getStartTime(); - - /** - * - */ - double getCurrentTime(); - - /** - * - */ - double getSimpleDuration() throw(DOMException); - - - - //#################################################################### - //# SVGCircleElement - //#################################################################### - - /** - * Corresponds to attribute cx on the given 'circle' element. - */ - SVGAnimatedValue getCx(); - - /** - * Corresponds to attribute cy on the given 'circle' element. - */ - SVGAnimatedValue getCy(); - - /** - * Corresponds to attribute r on the given 'circle' element. - */ - SVGAnimatedValue getR(); - - //#################################################################### - //# SVGClipPathElement - //#################################################################### - - - /** - * Corresponds to attribute clipPathUnits on the given 'clipPath' element. - * Takes one of the constants defined in SVGUnitTypes. - */ - SVGAnimatedValue getClipPathUnits(); - - - - //#################################################################### - //# SVGColorProfileElement - //#################################################################### - - - /** - * Get the attribute local on the given element. - */ - DOMString getLocal(); - - /** - * Set the attribute local on the given element. - */ - void setLocal(const DOMString &val) throw(DOMException); - - /** - * Get the attribute name on the given element. - */ - DOMString getName(); - - /** - * Set the attribute name on the given element. - */ - void setName(const DOMString &val) throw(DOMException); - - /** - * Set the attribute rendering-intent on the given element. - * The type of rendering intent, identified by one of the - * SVGRenderingIntent constants. - */ - unsigned short getRenderingIntent(); - - /** - * Get the attribute rendering-intent on the given element. - */ - void setRenderingIntent(unsigned short val) throw(DOMException); - - - //#################################################################### - //# SVGComponentTransferFunctionElement - //#################################################################### - - - /** - * Component Transfer Types - */ - typedef enum - { - SVG_FECOMPONENTTRANSFER_TYPE_UNKNOWN = 0, - SVG_FECOMPONENTTRANSFER_TYPE_IDENTITY = 1, - SVG_FECOMPONENTTRANSFER_TYPE_TABLE = 2, - SVG_FECOMPONENTTRANSFER_TYPE_DISCRETE = 3, - SVG_FECOMPONENTTRANSFER_TYPE_LINEAR = 4, - SVG_FECOMPONENTTRANSFER_TYPE_GAMMA = 5 - } ComponentTransferType; - - - /** - * Corresponds to attribute type on the given element. Takes one\ - * of the Component Transfer Types. - * -- also in SVGCSSRule - */ - // SVGAnimatedValue getType(); - - /** - * Corresponds to attribute tableValues on the given element. - */ - SVGAnimatedValueList getTableValues(); - - /** - * Corresponds to attribute slope on the given element. - */ - SVGAnimatedValue getSlope(); - - /** - * Corresponds to attribute intercept on the given element. - */ - SVGAnimatedValue getIntercept(); - - /** - * Corresponds to attribute amplitude on the given element. - */ - SVGAnimatedValue getAmplitude(); - - /** - * Corresponds to attribute exponent on the given element. - */ - SVGAnimatedValue getExponent(); - - /** - * Corresponds to attribute offset on the given element. - */ - SVGAnimatedValue getOffset(); - - //#################################################################### - //# SVGCursorElement - //#################################################################### - - /** - * -- also in SVGRect - */ - // SVGAnimatedValue getX(); - - /** - * -- also in SVGRect - */ - // SVGAnimatedValue getY(); - - - //#################################################################### - //# SVGDefinitionSrcElement - //#################################################################### - - //#################################################################### - //# SVGDefsElement - //#################################################################### - - //#################################################################### - //# SVGDescElement - //#################################################################### - - //#################################################################### - //# SVGEllipseElement - //#################################################################### - - /** - * Corresponds to attribute cx on the given 'ellipse' element. - * -- also in Circle - */ - // SVGAnimatedValue getCx(); - - /** - * Corresponds to attribute cy on the given 'ellipse' element. - * -- also in Circle - */ - // SVGAnimatedValue getCy(); - - /** - * Corresponds to attribute rx on the given 'ellipse' element. - */ - SVGAnimatedValue getRx(); - - /** - * Corresponds to attribute ry on the given 'ellipse' element. - */ - SVGAnimatedValue getRy(); - - - //#################################################################### - //# SVGFEBlendElement - //#################################################################### - - /** - * Blend Mode Types - */ - typedef enum - { - SVG_FEBLEND_MODE_UNKNOWN = 0, - SVG_FEBLEND_MODE_NORMAL = 1, - SVG_FEBLEND_MODE_MULTIPLY = 2, - SVG_FEBLEND_MODE_SCREEN = 3, - SVG_FEBLEND_MODE_DARKEN = 4, - SVG_FEBLEND_MODE_LIGHTEN = 5 - } BlendModeType; - - /** - * Corresponds to attribute in on the given 'feBlend' element. - */ - SVGAnimatedValue getIn1(); - - /** - * Corresponds to attribute in2 on the given 'feBlend' element. - */ - SVGAnimatedValue getIn2(); - - /** - * Corresponds to attribute mode on the given 'feBlend' element. - * Takes one of the Blend Mode Types. - */ - SVGAnimatedValue getMode(); - - - //#################################################################### - //# SVGFEColorMatrixElement - //#################################################################### - - /** - * Color Matrix Types - */ - typedef enum - { - SVG_FECOLORMATRIX_TYPE_UNKNOWN = 0, - SVG_FECOLORMATRIX_TYPE_MATRIX = 1, - SVG_FECOLORMATRIX_TYPE_SATURATE = 2, - SVG_FECOLORMATRIX_TYPE_HUEROTATE = 3, - SVG_FECOLORMATRIX_TYPE_LUMINANCETOALPHA = 4 - } ColorMatrixType; - - - /** - * Corresponds to attribute in on the given 'feColorMatrix' element. - * - also in feBlend - */ - // SVGAnimatedValue getIn1(); - - /** - * Corresponds to attribute type on the given 'feColorMatrix' element. - * Takes one of the Color Matrix Types. - * -- also in CSSRule - */ - // SVGAnimatedValue getType(); - - /** - * Corresponds to attribute values on the given 'feColorMatrix' element. - * Provides access to the contents of the values attribute. - */ - SVGAnimatedValueList getValues(); - - - //#################################################################### - //# SVGFEComponentTransferElement - //#################################################################### - - - /** - * Corresponds to attribute in on the given 'feComponentTransfer' element. - * -- also in feBlend - */ - // SVGAnimatedValue getIn1(); - - //#################################################################### - //# SVGFECompositeElement - //#################################################################### - - /** - * Composite Operators - */ - typedef enum - { - SVG_FECOMPOSITE_OPERATOR_UNKNOWN = 0, - SVG_FECOMPOSITE_OPERATOR_OVER = 1, - SVG_FECOMPOSITE_OPERATOR_IN = 2, - SVG_FECOMPOSITE_OPERATOR_OUT = 3, - SVG_FECOMPOSITE_OPERATOR_ATOP = 4, - SVG_FECOMPOSITE_OPERATOR_XOR = 5, - SVG_FECOMPOSITE_OPERATOR_ARITHMETIC = 6 - } CompositeOperatorType; - - /** - * Corresponds to attribute in on the given 'feComposite' element. - * -- also in feBlend - */ - // SVGAnimatedValue getIn1(); - - /** - * Corresponds to attribute in2 on the given 'feComposite' element. - * -- also in feBlend - */ - // SVGAnimatedValue getIn2(); - - /** - * Corresponds to attribute operator on the given 'feComposite' element. - * Takes one of the Composite Operators. - */ - SVGAnimatedValue getOperator(); - - /** - * Corresponds to attribute k1 on the given 'feComposite' element. - */ - SVGAnimatedValue getK1(); - - /** - * Corresponds to attribute k2 on the given 'feComposite' element. - */ - SVGAnimatedValue getK2(); - - /** - * Corresponds to attribute k3 on the given 'feComposite' element. - */ - SVGAnimatedValue getK3(); - - /** - * Corresponds to attribute k4 on the given 'feComposite' element. - */ - SVGAnimatedValue getK4(); - - - //#################################################################### - //# SVGFEConvolveMatrixElement - //#################################################################### - - - /** - * Edge Mode Values - */ - typedef enum - { - SVG_EDGEMODE_UNKNOWN = 0, - SVG_EDGEMODE_DUPLICATE = 1, - SVG_EDGEMODE_WRAP = 2, - SVG_EDGEMODE_NONE = 3 - } EdgeModeType; - - - /** - * Corresponds to attribute order on the given 'feConvolveMatrix' element. - */ - SVGAnimatedValue getOrderX(); - - /** - * Corresponds to attribute order on the given 'feConvolveMatrix' element. - */ - SVGAnimatedValue getOrderY(); - - /** - * Corresponds to attribute kernelMatrix on the given element. - */ - SVGAnimatedValueList getKernelMatrix(); - - /** - * Corresponds to attribute divisor on the given 'feConvolveMatrix' element. - */ - SVGAnimatedValue getDivisor(); - - /** - * Corresponds to attribute bias on the given 'feConvolveMatrix' element. - */ - SVGAnimatedValue getBias(); - - /** - * Corresponds to attribute targetX on the given 'feConvolveMatrix' element. - */ - SVGAnimatedValue getTargetX(); - - /** - * Corresponds to attribute targetY on the given 'feConvolveMatrix' element. - */ - SVGAnimatedValue getTargetY(); - - /** - * Corresponds to attribute edgeMode on the given 'feConvolveMatrix' - * element. Takes one of the Edge Mode Types. - */ - SVGAnimatedValue getEdgeMode(); - - /** - * Corresponds to attribute kernelUnitLength on the - * given 'feConvolveMatrix' element. - */ - SVGAnimatedValue getKernelUnitLengthX(); - - /** - * Corresponds to attribute kernelUnitLength on the given - * 'feConvolveMatrix' element. - */ - SVGAnimatedValue getKernelUnitLengthY(); - - /** - * Corresponds to attribute preserveAlpha on the - * given 'feConvolveMatrix' element. - */ - SVGAnimatedValue getPreserveAlpha(); - - - - //#################################################################### - //# SVGFEDiffuseLightingElement - //#################################################################### - - - /** - * Corresponds to attribute in on the given 'feDiffuseLighting' element. - * -- also in feBlend - */ - // SVGAnimatedValue getIn1(); - - /** - * Corresponds to attribute surfaceScale on the given - * 'feDiffuseLighting' element. - */ - SVGAnimatedValue getSurfaceScale(); - - /** - * Corresponds to attribute diffuseConstant on the given - * 'feDiffuseLighting' element. - */ - SVGAnimatedValue getDiffuseConstant(); - - /** - * Corresponds to attribute kernelUnitLength on the given - * 'feDiffuseLighting' element. - */ - // SVGAnimatedValue getKernelUnitLengthX(); - - /** - * Corresponds to attribute kernelUnitLength on the given - * 'feDiffuseLighting' element. - */ - // SVGAnimatedValue getKernelUnitLengthY(); - - - - - //#################################################################### - //# SVGFEDisplacementMapElement - //#################################################################### - - - /** - * Channel Selectors - */ - typedef enum - { - SVG_CHANNEL_UNKNOWN = 0, - SVG_CHANNEL_R = 1, - SVG_CHANNEL_G = 2, - SVG_CHANNEL_B = 3, - SVG_CHANNEL_A = 4 - } ChannelSelector; - - /** - * - * -- also in feBlend - */ - // SVGAnimatedValue getIn1(); - - /** - * - * -- also in feBlend - */ - // SVGAnimatedValue getIn2(); - - - /** - * - */ - SVGAnimatedValue getScale(); - - /** - * - */ - SVGAnimatedValue getXChannelSelector(); - - /** - * - */ - SVGAnimatedValue getYChannelSelector(); - - //#################################################################### - //# SVGFEDistantLightElement - //#################################################################### - - - /** - * Corresponds to attribute azimuth on the given 'feDistantLight' element. - */ - SVGAnimatedValue getAzimuth(); - - - /** - * Corresponds to attribute elevation on the given 'feDistantLight' - * element - */ - SVGAnimatedValue getElevation(); - - - //#################################################################### - //# SVGFEFloodElement - //#################################################################### - - - /** - * - * -- also in feBlend - */ - // SVGAnimatedValue getIn1(); - - - //#################################################################### - //# SVGFEFuncAElement - //#################################################################### - - //#################################################################### - //# SVGFEFuncBElement - //#################################################################### - - //#################################################################### - //# SVGFEFuncGElement - //#################################################################### - - //#################################################################### - //# SVGFEFuncRElement - //#################################################################### - - - //#################################################################### - //# SVGFEGaussianBlurElement - //#################################################################### - - - /** - * - * -- also in feBlend - */ - // SVGAnimatedValue getIn1(); - - - /** - * - */ - SVGAnimatedValue getStdDeviationX(); - - /** - * - */ - SVGAnimatedValue getStdDeviationY(); - - - /** - * - */ - void setStdDeviation(double stdDeviationX, double stdDeviationY); - - - //#################################################################### - //# SVGFEImageElement - //#################################################################### - - - //#################################################################### - //# SVGFEMergeElement - //#################################################################### - - //#################################################################### - //# SVGFEMergeNodeElement - //#################################################################### - - //#################################################################### - //# SVGFEMorphologyElement - //#################################################################### - - - - /** - * Morphology Operators - */ - typedef enum - { - SVG_MORPHOLOGY_OPERATOR_UNKNOWN = 0, - SVG_MORPHOLOGY_OPERATOR_ERODE = 1, - SVG_MORPHOLOGY_OPERATOR_DILATE = 2 - } MorphologyOperatorType; - - - /** - * - * -- also in feBlend - */ - // SVGAnimatedValue getIn1(); - - - /** - * - */ - // SVGAnimatedValue getOperator(); - - /** - * - */ - SVGAnimatedValue getRadiusX(); - - /** - * - */ - SVGAnimatedValue getRadiusY(); - - //#################################################################### - //# SVGFEOffsetElement - //#################################################################### - - /** - * - * -- also in feBlend - */ - // SVGAnimatedValue getIn1(); - - /** - * - */ - SVGAnimatedValue getDx(); - - /** - * - */ - SVGAnimatedValue getDy(); - - - //#################################################################### - //# SVGFEPointLightElement - //#################################################################### - - /** - * Corresponds to attribute x on the given 'fePointLight' element. - */ - SVGAnimatedValue getX(); - - /** - * Corresponds to attribute y on the given 'fePointLight' element. - */ - SVGAnimatedValue getY(); - - /** - * Corresponds to attribute z on the given 'fePointLight' element. - */ - SVGAnimatedValue getZ(); - - //#################################################################### - //# SVGFESpecularLightingElement - //#################################################################### - - - /** - * - * -- also in feBlend - */ - // SVGAnimatedValue getIn1(); - - /** - * - */ - // SVGAnimatedValue getSurfaceScale(); - - /** - * - */ - SVGAnimatedValue getSpecularConstant(); - - /** - * - */ - SVGAnimatedValue getSpecularExponent(); - - - //#################################################################### - //# SVGFESpotLightElement - //#################################################################### - - /** - * Corresponds to attribute x on the given 'feSpotLight' element. - */ - // SVGAnimatedValue getX(); - - /** - * Corresponds to attribute y on the given 'feSpotLight' element. - */ - // SVGAnimatedValue getY(); - - /** - * Corresponds to attribute z on the given 'feSpotLight' element. - */ - // SVGAnimatedValue getZ(); - - /** - * Corresponds to attribute pointsAtX on the given 'feSpotLight' element. - */ - SVGAnimatedValue getPointsAtX(); - - /** - * Corresponds to attribute pointsAtY on the given 'feSpotLight' element. - */ - SVGAnimatedValue getPointsAtY(); - - /** - * Corresponds to attribute pointsAtZ on the given 'feSpotLight' element. - */ - SVGAnimatedValue getPointsAtZ(); - - /** - * Corresponds to attribute specularExponent on the - * given 'feSpotLight' element. - */ - // SVGAnimatedValue getSpecularExponent(); - - /** - * Corresponds to attribute limitingConeAngle on the - * given 'feSpotLight' element. - */ - SVGAnimatedValue getLimitingConeAngle(); - - - //#################################################################### - //# SVGFETileElement - //#################################################################### - - - /** - * - * -- also in feBlend - */ - // SVGAnimatedValue getIn1(); - - - //#################################################################### - //# SVGFETurbulenceElement - //#################################################################### - - - /** - * Turbulence Types - */ - typedef enum - { - SVG_TURBULENCE_TYPE_UNKNOWN = 0, - SVG_TURBULENCE_TYPE_FRACTALNOISE = 1, - SVG_TURBULENCE_TYPE_TURBULENCE = 2 - } TurbulenceType; - - /** - * Stitch Options - */ - typedef enum - { - SVG_STITCHTYPE_UNKNOWN = 0, - SVG_STITCHTYPE_STITCH = 1, - SVG_STITCHTYPE_NOSTITCH = 2 - } StitchOption; - - - - /** - * - */ - SVGAnimatedValue getBaseFrequencyX(); - - /** - * - */ - SVGAnimatedValue getBaseFrequencyY(); - - /** - * - */ - SVGAnimatedValue getNumOctaves(); - - /** - * - */ - SVGAnimatedValue getSeed(); - - /** - * - */ - SVGAnimatedValue getStitchTiles(); - - /** - * - */ - SVGAnimatedValue getType(); - - - - //#################################################################### - //# SVGFilterElement - //#################################################################### - - - /** - * Corresponds to attribute filterUnits on the given 'filter' element. Takes one - * of the constants defined in SVGUnitTypes. - */ - SVGAnimatedValue getFilterUnits(); - - /** - * Corresponds to attribute primitiveUnits on the given 'filter' element. Takes - * one of the constants defined in SVGUnitTypes. - */ - SVGAnimatedValue getPrimitiveUnits(); - - /** - * - */ - // SVGAnimatedValue getX(); - - /** - * Corresponds to attribute x on the given 'filter' element. - */ - // SVGAnimatedValue getY(); - - /** - * Corresponds to attribute y on the given 'filter' element. - */ - // SVGAnimatedValue getWidth(); - - /** - * Corresponds to attribute height on the given 'filter' element. - */ - // SVGAnimatedValue getHeight(); - - - /** - * Corresponds to attribute filterRes on the given 'filter' element. - * Contains the X component of attribute filterRes. - */ - SVGAnimatedValue getFilterResX(); - - /** - * Corresponds to attribute filterRes on the given 'filter' element. - * Contains the Y component(possibly computed automatically) - * of attribute filterRes. - */ - SVGAnimatedValue getFilterResY(); - - /** - * Sets the values for attribute filterRes. - */ - void setFilterRes(unsigned long filterResX, unsigned long filterResY); - - - //#################################################################### - //# SVGFontElement - //#################################################################### - - //#################################################################### - //# SVGFontFaceElement - //#################################################################### - - //#################################################################### - //# SVGFontFaceFormatElement - //#################################################################### - - //#################################################################### - //# SVGFontFaceNameElement - //#################################################################### - - //#################################################################### - //# SVGFontFaceSrcElement - //#################################################################### - - //#################################################################### - //# SVGFontFaceUriElement - //#################################################################### - - //#################################################################### - //# SVGForeignObjectElement - //#################################################################### - - /** - * - */ - // SVGAnimatedValue getX(); - - /** - * - */ - // SVGAnimatedValue getY(); - - /** - * - */ - // SVGAnimatedValue getWidth(); - - /** - * - */ - // SVGAnimatedValue getHeight(); - - - - //#################################################################### - //# SVGGlyphRefElement - //#################################################################### - - - /** - * Get the attribute glyphRef on the given element. - */ - // DOMString getGlyphRef(); - - /** - * Set the attribute glyphRef on the given element. - */ - // void setGlyphRef(const DOMString &val) throw(DOMException); - - /** - * Get the attribute format on the given element. - */ - // DOMString getFormat(); - - /** - * Set the attribute format on the given element. - */ - // void setFormat(const DOMString &val) throw(DOMException); - - /** - * Get the attribute x on the given element. - */ - // double getX(); - - /** - * Set the attribute x on the given element. - */ - // void setX(double val) throw(DOMException); - - /** - * Get the attribute y on the given element. - */ - // double getY(); - - /** - * Set the attribute y on the given element. - */ - // void setY(double val) throw(DOMException); - - /** - * Get the attribute dx on the given element. - */ - // double getDx(); - - /** - * Set the attribute dx on the given element. - */ - // void setDx(double val) throw(DOMException); - - /** - * Get the attribute dy on the given element. - */ - // double getDy(); - - /** - * Set the attribute dy on the given element. - */ - // void setDy(double val) throw(DOMException); - - - //#################################################################### - //# SVGGradientElement - //#################################################################### - - - /** - * Spread Method Types - */ - typedef enum - { - SVG_SPREADMETHOD_UNKNOWN = 0, - SVG_SPREADMETHOD_PAD = 1, - SVG_SPREADMETHOD_REFLECT = 2, - SVG_SPREADMETHOD_REPEAT = 3 - } SpreadMethodType; - - - /** - * Corresponds to attribute gradientUnits on the given element. - * Takes one of the constants defined in SVGUnitTypes. - */ - SVGAnimatedValue &getGradientUnits(); - - /** - * Corresponds to attribute gradientTransform on the given element. - */ - SVGAnimatedValueList &getGradientTransform(); - - /** - * Corresponds to attribute spreadMethod on the given element. - * One of the Spread Method Types. - */ - SVGAnimatedValue &getSpreadMethod(); - - - - //#################################################################### - //# SVGHKernElement - //#################################################################### - - //#################################################################### - //# SVGImageElement - //#################################################################### - - /** - * Corresponds to attribute x on the given 'image' element. - */ - // SVGAnimatedValue getX(); - - /** - * Corresponds to attribute y on the given 'image' element. - */ - // SVGAnimatedValue getY(); - - /** - * Corresponds to attribute width on the given 'image' element. - */ - // SVGAnimatedValue getWidth(); - - /** - * Corresponds to attribute height on the given 'image' element. - */ - // SVGAnimatedValue getHeight(); - - - /** - * Corresponds to attribute preserveAspectRatio on the given element. - */ - // SVGAnimatedPreserveAspectRatio getPreserveAspectRatio(); - - //#################################################################### - //# SVGLinearGradientElement - //#################################################################### - - /** - * Corresponds to attribute x1 on the given 'linearGradient' element. - */ - // SVGAnimatedValue getX1(); - - /** - * Corresponds to attribute y1 on the given 'linearGradient' element. - */ - // SVGAnimatedValue getY1(); - - /** - * Corresponds to attribute x2 on the given 'linearGradient' element. - */ - // SVGAnimatedValue getX2(); - - /** - * Corresponds to attribute y2 on the given 'linearGradient' element. - */ - // SVGAnimatedValue getY2(); - - - - //#################################################################### - //# SVGLineElement - //#################################################################### - - /** - * Corresponds to attribute x1 on the given 'line' element. - */ - // SVGAnimatedValue getX1(); - - /** - * Corresponds to attribute y1 on the given 'line' element. - */ - // SVGAnimatedValue getY1(); - - /** - * Corresponds to attribute x2 on the given 'line' element. - */ - // SVGAnimatedValue getX2(); - - /** - * Corresponds to attribute y2 on the given 'line' element. - */ - // SVGAnimatedValue getY2(); - - - //#################################################################### - //# SVGMarkerElement - //#################################################################### - - - /** - * Marker Unit Types - */ - typedef enum - { - SVG_MARKERUNITS_UNKNOWN = 0, - SVG_MARKERUNITS_USERSPACEONUSE = 1, - SVG_MARKERUNITS_STROKEWIDTH = 2 - } MarkerUnitType; - - /** - * Marker Orientation Types - */ - typedef enum - { - SVG_MARKER_ORIENT_UNKNOWN = 0, - SVG_MARKER_ORIENT_AUTO = 1, - SVG_MARKER_ORIENT_ANGLE = 2 - } MarkerOrientationType; - - - /** - * Corresponds to attribute refX on the given 'marker' element. - */ - SVGAnimatedValue getRefX(); - - /** - * Corresponds to attribute refY on the given 'marker' element. - */ - SVGAnimatedValue getRefY(); - - /** - * Corresponds to attribute markerUnits on the given 'marker' element. - * One of the Marker Units Types defined above. - */ - SVGAnimatedValue getMarkerUnits(); - - /** - * Corresponds to attribute markerWidth on the given 'marker' element. - */ - SVGAnimatedValue getMarkerWidth(); - - /** - * Corresponds to attribute markerHeight on the given 'marker' element. - */ - SVGAnimatedValue getMarkerHeight(); - - /** - * Corresponds to attribute orient on the given 'marker' element. - * One of the Marker Orientation Types defined above. - */ - SVGAnimatedValue getOrientType(); - - /** - * Corresponds to attribute orient on the given 'marker' element. - * If markerUnits is SVG_MARKER_ORIENT_ANGLE, the angle value for - * attribute orient; otherwise, it will be set to zero. - */ - SVGAnimatedValue getOrientAngle(); - - - /** - * Sets the value of attribute orient to 'auto'. - */ - void setOrientToAuto(); - - /** - * Sets the value of attribute orient to the given angle. - */ - void setOrientToAngle(const SVGAngle &angle); - - - //#################################################################### - //# SVGMaskElement - //#################################################################### - - - /** - * Corresponds to attribute maskUnits on the given 'mask' element. Takes one of - * the constants defined in SVGUnitTypes. - */ - SVGAnimatedValue getMaskUnits(); - - /** - * Corresponds to attribute maskContentUnits on the given 'mask' element. Takes - * one of the constants defined in SVGUnitTypes. - */ - SVGAnimatedValue getMaskContentUnits(); - - /** - * Corresponds to attribute x on the given 'mask' element. - */ - // SVGAnimatedValue getX(); - - /** - * Corresponds to attribute y on the given 'mask' element. - */ - // SVGAnimatedValue getY(); - - /** - * Corresponds to attribute width on the given 'mask' element. - */ - // SVGAnimatedValue getWidth(); - - /** - * Corresponds to attribute height on the given 'mask' element. - */ - // SVGAnimatedValue getHeight(); - - //#################################################################### - //# SVGMetadataElement - //#################################################################### - - //#################################################################### - //# SVGMissingGlyphElement - //#################################################################### - - - //#################################################################### - //# SVGMPathElement - //#################################################################### - - /** - * Corresponds to attribute pathLength on the given 'path' element. - */ - SVGAnimatedValue getPathLength(); - - /** - * Returns the user agent's computed value for the total length of the path using - * the user agent's distance-along-a-path algorithm, as a distance in the current - * user coordinate system. - */ - double getTotalLength(); - - /** - * Returns the(x,y) coordinate in user space which is distance units along the - * path, utilizing the user agent's distance-along-a-path algorithm. - */ - SVGPoint getPointAtLength(double distance); - - /** - * Returns the index into pathSegList which is distance units along the path, - * utilizing the user agent's distance-along-a-path algorithm. - */ - unsigned long getPathSegAtLength(double distance); - - /** - * Returns a stand-alone, parentless SVGPathSegClosePath object. - */ - SVGPathSeg createSVGPathSegClosePath(); - - /** - * Returns a stand-alone, parentless SVGPathSegMovetoAbs object. - */ - SVGPathSeg createSVGPathSegMovetoAbs(double x, double y); - - /** - * Returns a stand-alone, parentless SVGPathSegMovetoRel object. - */ - SVGPathSeg createSVGPathSegMovetoRel(double x, double y); - - /** - * Returns a stand-alone, parentless SVGPathSegLinetoAbs object. - */ - SVGPathSeg createSVGPathSegLinetoAbs(double x, double y); - - /** - * Returns a stand-alone, parentless SVGPathSegLinetoRel object. - */ - SVGPathSeg createSVGPathSegLinetoRel(double x, double y); - - /** - * Returns a stand-alone, parentless SVGPathSegCurvetoCubicAbs object. - */ - SVGPathSeg createSVGPathSegCurvetoCubicAbs(double x, double y, - double x1, double y1, double x2, double y2); - - /** - * Returns a stand-alone, parentless SVGPathSegCurvetoCubicRel object. - */ - SVGPathSeg createSVGPathSegCurvetoCubicRel(double x, double y, - double x1, double y1, double x2, double y2); - - /** - * Returns a stand-alone, parentless SVGPathSegCurvetoQuadraticAbs object. - */ - SVGPathSeg createSVGPathSegCurvetoQuadraticAbs(double x, double y, - double x1, double y1); - - /** - * Returns a stand-alone, parentless SVGPathSegCurvetoQuadraticRel object. - */ - SVGPathSeg createSVGPathSegCurvetoQuadraticRel(double x, double y, - double x1, double y1); - - /** - * Returns a stand-alone, parentless SVGPathSegArcAbs object. - */ - SVGPathSeg createSVGPathSegArcAbs(double x, double y, - double r1, double r2, double angle, - bool largeArcFlag, bool sweepFlag); - - /** - * Returns a stand-alone, parentless SVGPathSegArcRel object. - */ - SVGPathSeg createSVGPathSegArcRel(double x, double y, double r1, - double r2, double angle, bool largeArcFlag, - bool sweepFlag); - - /** - * Returns a stand-alone, parentless SVGPathSegLinetoHorizontalAbs object. - */ - SVGPathSeg createSVGPathSegLinetoHorizontalAbs(double x); - - /** - * Returns a stand-alone, parentless SVGPathSegLinetoHorizontalRel object. - */ - SVGPathSeg createSVGPathSegLinetoHorizontalRel(double x); - - /** - * Returns a stand-alone, parentless SVGPathSegLinetoVerticalAbs object. - */ - SVGPathSeg createSVGPathSegLinetoVerticalAbs(double y); - - /** - * Returns a stand-alone, parentless SVGPathSegLinetoVerticalRel object. - */ - SVGPathSeg createSVGPathSegLinetoVerticalRel(double y); - - /** - * Returns a stand-alone, parentless SVGPathSegCurvetoCubicSmoothAbs object. - */ - SVGPathSeg createSVGPathSegCurvetoCubicSmoothAbs(double x, double y, - double x2, double y2); - - /** - * Returns a stand-alone, parentless SVGPathSegCurvetoCubicSmoothRel object. - */ - SVGPathSeg createSVGPathSegCurvetoCubicSmoothRel(double x, double y, - double x2, double y2); - - /** - * Returns a stand-alone, parentless SVGPathSegCurvetoQuadraticSmoothAbs - * object. - */ - SVGPathSeg createSVGPathSegCurvetoQuadraticSmoothAbs(double x, double y); - - /** - * Returns a stand-alone, parentless SVGPathSegCurvetoQuadraticSmoothRel - * object. - */ - SVGPathSeg createSVGPathSegCurvetoQuadraticSmoothRel(double x, double y); - - //#################################################################### - //# SVGPathElement - //#################################################################### - - //#################################################################### - //# SVGPatternElement - //#################################################################### - - /** - * Corresponds to attribute patternUnits on the given 'pattern' element. - * Takes one of the constants defined in SVGUnitTypes. - */ - SVGAnimatedValue getPatternUnits(); - - /** - * Corresponds to attribute patternContentUnits on the given 'pattern' - * element. Takes one of the constants defined in SVGUnitTypes. - */ - SVGAnimatedValue getPatternContentUnits(); - - /** - * Corresponds to attribute patternTransform on the given 'pattern' element. - */ - SVGAnimatedValueList &getPatternTransform(); - - /** - * Corresponds to attribute x on the given 'pattern' element. - */ - // SVGAnimatedValue getX(); - - /** - * - */ - // SVGAnimatedValue getY(); - - /** - * Corresponds to attribute width on the given 'pattern' element. - */ - // SVGAnimatedValue getWidth(); - - /** - * Corresponds to attribute height on the given 'pattern' element. - */ - // SVGAnimatedValue getHeight(); - - - //#################################################################### - //# SVGPolyLineElement - //#################################################################### - - //#################################################################### - //# SVGPolygonElement - //#################################################################### - - //#################################################################### - //# SVGRadialGradientElement - //#################################################################### - - - /** - * Corresponds to attribute cx on the given 'radialGradient' element. - */ - // SVGAnimatedValue getCx(); - - - /** - * Corresponds to attribute cy on the given 'radialGradient' element. - */ - // SVGAnimatedValue getCy(); - - - /** - * Corresponds to attribute r on the given 'radialGradient' element. - */ - // SVGAnimatedValue getR(); - - - /** - * Corresponds to attribute fx on the given 'radialGradient' element. - */ - SVGAnimatedValue getFx(); - - - /** - * Corresponds to attribute fy on the given 'radialGradient' element. - */ - SVGAnimatedValue getFy(); - - - //#################################################################### - //# SVGRectElement - //#################################################################### - - /** - * Corresponds to attribute x on the given 'rect' element. - */ - // SVGAnimatedValue getX(); - - /** - * Corresponds to attribute y on the given 'rect' element. - */ - // SVGAnimatedValue getY(); - - /** - * Corresponds to attribute width on the given 'rect' element. - */ - // SVGAnimatedValue getWidth(); - - /** - * Corresponds to attribute height on the given 'rect' element. - */ - // SVGAnimatedValue getHeight(); - - - /** - * Corresponds to attribute rx on the given 'rect' element. - */ - // SVGAnimatedValue getRx(); - - /** - * Corresponds to attribute ry on the given 'rect' element. - */ - // SVGAnimatedValue getRy(); - - - //#################################################################### - //# SVGScriptElement - //#################################################################### - - /** - * - */ - // DOMString getType(); - - /** - * - */ - // void setType(const DOMString &val) throw(DOMException); - - //#################################################################### - //# SVGSetElement - //#################################################################### - - //#################################################################### - //# SVGStopElement - //#################################################################### - - - /** - * Corresponds to attribute offset on the given 'stop' element. - */ - // SVGAnimatedValue getOffset(); - - - //#################################################################### - //# SVGStyleElement - //#################################################################### - - /** - * Get the attribute xml:space on the given element. - */ - DOMString getXmlspace(); - - /** - * Set the attribute xml:space on the given element. - */ - void setXmlspace(const DOMString &val) throw(DOMException); - - /** - * Get the attribute type on the given 'style' element. - */ - // DOMString getType(); - - /** - * Set the attribute type on the given 'style' element. - */ - // void setType(const DOMString &val) throw(DOMException); - - /** - * Get the attribute media on the given 'style' element. - */ - DOMString getMedia(); - - /** - * Set the attribute media on the given 'style' element. - */ - void setMedia(const DOMString &val) throw(DOMException); - - /** - * Get the attribute title on the given 'style' element. - */ - DOMString getTitle(); - - /** - * Set the attribute title on the given 'style' element. - */ - void setTitle(const DOMString &val) throw(DOMException); - - //#################################################################### - //# SVGSymbolElement - //#################################################################### - - //#################################################################### - //# SVGSVGElement - //#################################################################### - - /** - * Corresponds to attribute x on the given 'svg' element. - */ - // SVGAnimatedValue getX(); - - /** - * Corresponds to attribute y on the given 'svg' element. - */ - // SVGAnimatedValue getY(); - - /** - * Corresponds to attribute width on the given 'svg' element. - */ - // SVGAnimatedValue getWidth(); - - /** - * Corresponds to attribute height on the given 'svg' element. - */ - // SVGAnimatedValue getHeight(); - - /** - * Get the attribute contentScriptType on the given 'svg' element. - */ - DOMString getContentScriptType(); - - /** - * Set the attribute contentScriptType on the given 'svg' element. - */ - void setContentScriptType(const DOMString &val) throw(DOMException); - - - /** - * Get the attribute contentStyleType on the given 'svg' element. - */ - DOMString getContentStyleType(); - - /** - * Set the attribute contentStyleType on the given 'svg' element. - */ - void setContentStyleType(const DOMString &val) throw(DOMException); - - /** - * The position and size of the viewport(implicit or explicit) that corresponds - * to this 'svg' element. When the user agent is actually rendering the content, - * then the position and size values represent the actual values when rendering. - * The position and size values are unitless values in the coordinate system of - * the parent element. If no parent element exists(i.e., 'svg' element - * represents the root of the document tree), if this SVG document is embedded as - * part of another document(e.g., via the HTML 'object' element), then the - * position and size are unitless values in the coordinate system of the parent - * document.(If the parent uses CSS or XSL layout, then unitless values - * represent pixel units for the current CSS or XSL viewport, as described in the - * CSS2 specification.) If the parent element does not have a coordinate system, - * then the user agent should provide reasonable default values for this attribute. - * */ - SVGRect getViewport(); - - /** - * Size of a pixel units(as defined by CSS2) along the x-axis of the viewport, - * which represents a unit somewhere in the range of 70dpi to 120dpi, and, on - * systems that support this, might actually match the characteristics of the - * target medium. On systems where it is impossible to know the size of a pixel, - * a suitable default pixel size is provided. - */ - double getPixelUnitToMillimeterX(); - - /** - * Corresponding size of a pixel unit along the y-axis of the viewport. - */ - double getPixelUnitToMillimeterY(); - - /** - * User interface(UI) events in DOM Level 2 indicate the screen positions at - * which the given UI event occurred. When the user agent actually knows the - * physical size of a "screen unit", this attribute will express that information; - * otherwise, user agents will provide a suitable default value such as .28mm. - */ - double getScreenPixelToMillimeterX(); - - /** - * Corresponding size of a screen pixel along the y-axis of the viewport. - */ - double getScreenPixelToMillimeterY(); - - - /** - * The initial view(i.e., before magnification and panning) of the current - * innermost SVG document fragment can be either the "standard" view(i.e., based - * on attributes on the 'svg' element such as fitBoxToViewport) or to a "custom" - * view(i.e., a hyperlink into a particular 'view' or other element - see - * Linking into SVG content: URI fragments and SVG views). If the initial view is - * the "standard" view, then this attribute is false. If the initial view is a - * "custom" view, then this attribute is true. - */ - bool getUseCurrentView(); - - /** - * Set the value above - */ - void setUseCurrentView(bool val) throw(DOMException); - - /** - * The definition of the initial view(i.e., before magnification and panning) of - * the current innermost SVG document fragment. The meaning depends on the - * situation: - * - * * If the initial view was a "standard" view, then: - * o the values for viewBox, preserveAspectRatio and zoomAndPan within - * currentView will match the values for the corresponding DOM attributes that - * are on SVGSVGElement directly - * o the values for transform and viewTarget within currentView will be null - * * If the initial view was a link into a 'view' element, then: - * o the values for viewBox, preserveAspectRatio and zoomAndPan within - * currentView will correspond to the corresponding attributes for the given - * 'view' element - * o the values for transform and viewTarget within currentView will be null - * * If the initial view was a link into another element(i.e., other than a - * 'view'), then: - * o the values for viewBox, preserveAspectRatio and zoomAndPan within - * currentView will match the values for the corresponding DOM attributes that - * are on SVGSVGElement directly for the closest ancestor 'svg' element - * o the values for transform within currentView will be null - * o the viewTarget within currentView will represent the target of the link - * * If the initial view was a link into the SVG document fragment using an SVG - * view specification fragment identifier(i.e., #svgView(...)), then: - * o the values for viewBox, preserveAspectRatio, zoomAndPan, transform and - * viewTarget within currentView will correspond to the values from the SVG view - * specification fragment identifier - * - */ - SVGViewSpec getCurrentView(); - - - /** - * This attribute indicates the current scale factor relative to the initial view - * to take into account user magnification and panning operations, as described - * under Magnification and panning. DOM attributes currentScale and - * currentTranslate are equivalent to the 2x3 matrix [a b c d e f] = - * [currentScale 0 0 currentScale currentTranslate.x currentTranslate.y]. If - * "magnification" is enabled(i.e., zoomAndPan="magnify"), then the effect is as - * if an extra transformation were placed at the outermost level on the SVG - * document fragment(i.e., outside the outermost 'svg' element). - */ - double getCurrentScale(); - - /** - * Set the value above. - */ - void setCurrentScale(double val) throw(DOMException); - - /** - * The corresponding translation factor that takes into account - * user "magnification". - */ - SVGPoint getCurrentTranslate(); - - /** - * Takes a time-out value which indicates that redraw shall not occur until:(a) - * the corresponding unsuspendRedraw(suspend_handle_id) call has been made,(b) - * an unsuspendRedrawAll() call has been made, or(c) its timer has timed out. In - * environments that do not support interactivity(e.g., print media), then - * redraw shall not be suspended. suspend_handle_id = - * suspendRedraw(max_wait_milliseconds) and unsuspendRedraw(suspend_handle_id) - * must be packaged as balanced pairs. When you want to suspend redraw actions as - * a collection of SVG DOM changes occur, then precede the changes to the SVG DOM - * with a method call similar to suspend_handle_id = - * suspendRedraw(max_wait_milliseconds) and follow the changes with a method call - * similar to unsuspendRedraw(suspend_handle_id). Note that multiple - * suspendRedraw calls can be used at once and that each such method call is - * treated independently of the other suspendRedraw method calls. - */ - unsigned long suspendRedraw(unsigned long max_wait_milliseconds); - - /** - * Cancels a specified suspendRedraw() by providing a unique suspend_handle_id. - */ - void unsuspendRedraw(unsigned long suspend_handle_id) throw(DOMException); - - /** - * Cancels all currently active suspendRedraw() method calls. This method is most - * useful at the very end of a set of SVG DOM calls to ensure that all pending - * suspendRedraw() method calls have been cancelled. - */ - void unsuspendRedrawAll(); - - /** - * In rendering environments supporting interactivity, forces the user agent to - * immediately redraw all regions of the viewport that require updating. - */ - void forceRedraw(); - - /** - * Suspends(i.e., pauses) all currently running animations that are defined - * within the SVG document fragment corresponding to this 'svg' element, causing - * the animation clock corresponding to this document fragment to stand still - * until it is unpaused. - */ - void pauseAnimations(); - - /** - * Unsuspends(i.e., unpauses) currently running animations that are defined - * within the SVG document fragment, causing the animation clock to continue from - * the time at which it was suspended. - */ - void unpauseAnimations(); - - /** - * Returns true if this SVG document fragment is in a paused state. - */ - bool animationsPaused(); - - /** - * Returns the current time in seconds relative to the start time for - * the current SVG document fragment. - */ - // double getCurrentTime(); - - /** - * Adjusts the clock for this SVG document fragment, establishing - * a new current time. - */ - void setCurrentTime(double seconds); - - /** - * Returns the list of graphics elements whose rendered content intersects the - * supplied rectangle, honoring the 'pointer-events' property value on each - * candidate graphics element. - */ - NodeList getIntersectionList(const SVGRect &rect, - const SVGElementPtr referenceElement); - - /** - * Returns the list of graphics elements whose rendered content is entirely - * contained within the supplied rectangle, honoring the 'pointer-events' - * property value on each candidate graphics element. - */ - NodeList getEnclosureList(const SVGRect &rect, - const SVGElementPtr referenceElement); - - /** - * Returns true if the rendered content of the given element intersects the - * supplied rectangle, honoring the 'pointer-events' property value on each - * candidate graphics element. - */ - bool checkIntersection(const SVGElementPtr element, const SVGRect &rect); - - /** - * Returns true if the rendered content of the given element is entirely - * contained within the supplied rectangle, honoring the 'pointer-events' - * property value on each candidate graphics element. - */ - bool checkEnclosure(const SVGElementPtr element, const SVGRect &rect); - - /** - * Unselects any selected objects, including any selections of text - * strings and type-in bars. - */ - void deselectAll(); - - /** - * Creates an SVGNumber object outside of any document trees. The object - * is initialized to a value of zero. - */ - SVGNumber createSVGNumber(); - - /** - * Creates an SVGLength object outside of any document trees. The object - * is initialized to the value of 0 user units. - */ - SVGLength createSVGLength(); - - /** - * Creates an SVGAngle object outside of any document trees. The object - * is initialized to the value 0 degrees(unitless). - */ - SVGAngle createSVGAngle(); - - /** - * Creates an SVGPoint object outside of any document trees. The object - * is initialized to the point(0,0) in the user coordinate system. - */ - SVGPoint createSVGPoint(); - - /** - * Creates an SVGMatrix object outside of any document trees. The object - * is initialized to the identity matrix. - */ - SVGMatrix createSVGMatrix(); - - /** - * Creates an SVGRect object outside of any document trees. The object - * is initialized such that all values are set to 0 user units. - */ - SVGRect createSVGRect(); - - /** - * Creates an SVGTransform object outside of any document trees. - * The object is initialized to an identity matrix transform - * (SVG_TRANSFORM_MATRIX). - */ - SVGTransform createSVGTransform(); - - /** - * Creates an SVGTransform object outside of any document trees. - * The object is initialized to the given matrix transform - * (i.e., SVG_TRANSFORM_MATRIX). - */ - SVGTransform createSVGTransformFromMatrix(const SVGMatrix &matrix); - - /** - * Searches this SVG document fragment(i.e., the search is restricted to a - * subset of the document tree) for an Element whose id is given by elementId. If - * an Element is found, that Element is returned. If no such element exists, - * returns null. Behavior is not defined if more than one element has this id. - */ - ElementPtr getElementById(const DOMString& elementId); - - - //#################################################################### - //# SVGTextElement - //#################################################################### - - - //#################################################################### - //# SVGTextContentElement - //#################################################################### - - - /** - * lengthAdjust Types - */ - typedef enum - { - LENGTHADJUST_UNKNOWN = 0, - LENGTHADJUST_SPACING = 1, - LENGTHADJUST_SPACINGANDGLYPHS = 2 - } LengthAdjustType; - - - /** - * Corresponds to attribute textLength on the given element. - */ - SVGAnimatedValue getTextLength(); - - - /** - * Corresponds to attribute lengthAdjust on the given element. The value must be - * one of the length adjust constants specified above. - */ - SVGAnimatedValue getLengthAdjust(); - - - /** - * Returns the total number of characters to be rendered within the current - * element. Includes characters which are included via a 'tref' reference. - */ - long getNumberOfChars(); - - /** - * The total sum of all of the advance values from rendering all of the - * characters within this element, including the advance value on the glyphs - *(horizontal or vertical), the effect of properties 'kerning', 'letter-spacing' - * and 'word-spacing' and adjustments due to attributes dx and dy on 'tspan' - * elements. For non-rendering environments, the user agent shall make reasonable - * assumptions about glyph metrics. - */ - double getComputedTextLength(); - - /** - * The total sum of all of the advance values from rendering the specified - * substring of the characters, including the advance value on the glyphs - *(horizontal or vertical), the effect of properties 'kerning', 'letter-spacing' - * and 'word-spacing' and adjustments due to attributes dx and dy on 'tspan' - * elements. For non-rendering environments, the user agent shall make reasonable - * assumptions about glyph metrics. - */ - double getSubStringLength(unsigned long charnum, unsigned long nchars) - throw(DOMException); - - /** - * Returns the current text position before rendering the character in the user - * coordinate system for rendering the glyph(s) that correspond to the specified - * character. The current text position has already taken into account the - * effects of any inter-character adjustments due to properties 'kerning', - * 'letter-spacing' and 'word-spacing' and adjustments due to attributes x, y, dx - * and dy. If multiple consecutive characters are rendered inseparably(e.g., as - * a single glyph or a sequence of glyphs), then each of the inseparable - * characters will return the start position for the first glyph. - */ - SVGPoint getStartPositionOfChar(unsigned long charnum) throw(DOMException); - - /** - * Returns the current text position after rendering the character in the user - * coordinate system for rendering the glyph(s) that correspond to the specified - * character. This current text position does not take into account the effects - * of any inter-character adjustments to prepare for the next character, such as - * properties 'kerning', 'letter-spacing' and 'word-spacing' and adjustments due - * to attributes x, y, dx and dy. If multiple consecutive characters are rendered - * inseparably(e.g., as a single glyph or a sequence of glyphs), then each of - * the inseparable characters will return the end position for the last glyph. - */ - SVGPoint getEndPositionOfChar(unsigned long charnum) throw(DOMException); - - /** - * Returns a tightest rectangle which defines the minimum and maximum X and Y - * values in the user coordinate system for rendering the glyph(s) that - * correspond to the specified character. The calculations assume that all glyphs - * occupy the full standard glyph cell for the font. If multiple consecutive - * characters are rendered inseparably(e.g., as a single glyph or a sequence of - * glyphs), then each of the inseparable characters will return the same extent. - */ - SVGRect getExtentOfChar(unsigned long charnum) throw(DOMException); - - /** - * Returns the rotation value relative to the current user coordinate system used - * to render the glyph(s) corresponding to the specified character. If multiple - * glyph(s) are used to render the given character and the glyphs each have - * different rotations(e.g., due to text-on-a-path), the user agent shall return - * an average value(e.g., the rotation angle at the midpoint along the path for - * all glyphs used to render this character). The rotation value represents the - * rotation that is supplemental to any rotation due to properties - * 'glyph-orientation-horizontal' and 'glyph-orientation-vertical'; thus, any - * glyph rotations due to these properties are not included into the returned - * rotation value. If multiple consecutive characters are rendered inseparably - *(e.g., as a single glyph or a sequence of glyphs), then each of the - * inseparable characters will return the same rotation value. - */ - double getRotationOfChar(unsigned long charnum) throw(DOMException); - - /** - * Returns the index of the character whose corresponding glyph cell bounding box - * contains the specified point. The calculations assume that all glyphs occupy - * the full standard glyph cell for the font. If no such character exists, a - * value of -1 is returned. If multiple such characters exist, the character - * within the element whose glyphs were rendered last(i.e., take into account - * any reordering such as for bidirectional text) is used. If multiple - * consecutive characters are rendered inseparably(e.g., as a single glyph or a - * sequence of glyphs), then the user agent shall allocate an equal percentage of - * the text advance amount to each of the contributing characters in determining - * which of the characters is chosen. - */ - long getCharNumAtPosition(const SVGPoint &point); - - /** - * Causes the specified substring to be selected just as if the user - * selected the substring interactively. - */ - void selectSubString(unsigned long charnum, unsigned long nchars) - throw(DOMException); - - - - - - //#################################################################### - //# SVGTextPathElement - //#################################################################### - - - /** - * textPath Method Types - */ - typedef enum - { - TEXTPATH_METHODTYPE_UNKNOWN = 0, - TEXTPATH_METHODTYPE_ALIGN = 1, - TEXTPATH_METHODTYPE_STRETCH = 2 - } TextPathMethodType; - - /** - * textPath Spacing Types - */ - typedef enum - { - TEXTPATH_SPACINGTYPE_UNKNOWN = 0, - TEXTPATH_SPACINGTYPE_AUTO = 1, - TEXTPATH_SPACINGTYPE_EXACT = 2 - } TextPathSpacingType; - - - /** - * Corresponds to attribute startOffset on the given 'textPath' element. - */ - SVGAnimatedValue getStartOffset(); - - /** - * Corresponds to attribute method on the given 'textPath' element. The value - * must be one of the method type constants specified above. - */ - SVGAnimatedValue getMethod(); - - /** - * Corresponds to attribute spacing on the given 'textPath' element. - * The value must be one of the spacing type constants specified above. - */ - SVGAnimatedValue getSpacing(); - - - //#################################################################### - //# SVGTextPositioningElement - //#################################################################### - - - /** - * Corresponds to attribute x on the given element. - */ - // SVGAnimatedValue getX(); - - /** - * Corresponds to attribute y on the given element. - */ - // SVGAnimatedValue getY(); - - /** - * Corresponds to attribute dx on the given element. - */ - // SVGAnimatedValue getDx(); - - /** - * Corresponds to attribute dy on the given element. - */ - // SVGAnimatedValue getDy(); - - - /** - * Corresponds to attribute rotate on the given element. - */ - SVGAnimatedValueList getRotate(); - - - //#################################################################### - //# SVGTitleElement - //#################################################################### - - //#################################################################### - //# SVGTRefElement - //#################################################################### - - //#################################################################### - //# SVGTSpanElement - //#################################################################### - - //#################################################################### - //# SVGSwitchElement - //#################################################################### - - //#################################################################### - //# SVGUseElement - //#################################################################### - - /** - * Corresponds to attribute x on the given 'use' element. - */ - // SVGAnimatedValue getX(); - - /** - * Corresponds to attribute y on the given 'use' element. - */ - // SVGAnimatedValue getY(); - - /** - * Corresponds to attribute width on the given 'use' element. - */ - // SVGAnimatedValue getWidth(); - - /** - * Corresponds to attribute height on the given 'use' element. - */ - // SVGAnimatedValue getHeight(); - - /** - * The root of the "instance tree". See description of SVGElementInstance for - * a discussion on the instance tree. - * */ - SVGElementInstance getInstanceRoot(); - - /** - * If the 'href' attribute is being animated, contains the current animated root - * of the "instance tree". If the 'href' attribute is not currently being - * animated, contains the same value as 'instanceRoot'. The root of the "instance - * tree". See description of SVGElementInstance for a discussion on the instance - * tree. - */ - SVGElementInstance getAnimatedInstanceRoot(); - - //#################################################################### - //# SVGVKernElement - //#################################################################### - - //#################################################################### - //# SVGViewElement - //#################################################################### - - - /** - * - */ - SVGValueList getViewTarget(); - - - - - //################## - //# Non-API methods - //################## - - - /** - * - */ - ~SVGElement() {} - - -}; - - - -/*######################################################################### -## SVGDocument -#########################################################################*/ - -/** - * When an 'svg' element is embedded inline as a component of a document from - * another namespace, such as when an 'svg' element is embedded inline within an - * XHTML document [XHTML], then an SVGDocument object will not exist; instead, - * the root object in the document object hierarchy will be a Document object of - * a different type, such as an HTMLDocument object. - * - * However, an SVGDocument object will indeed exist when the root element of the - * XML document hierarchy is an 'svg' element, such as when viewing a stand-alone - * SVG file(i.e., a file with MIME type "image/svg+xml"). In this case, the - * SVGDocument object will be the root object of the document object model - * hierarchy. - * - * In the case where an SVG document is embedded by reference, such as when an - * XHTML document has an 'object' element whose href attribute references an SVG - * document(i.e., a document whose MIME type is "image/svg+xml" and whose root - * element is thus an 'svg' element), there will exist two distinct DOM - * hierarchies. The first DOM hierarchy will be for the referencing document - *(e.g., an XHTML document). The second DOM hierarchy will be for the referenced - * SVG document. In this second DOM hierarchy, the root object of the document - * object model hierarchy is an SVGDocument object. - */ -class SVGDocument : public Document, - public events::DocumentEvent -{ -public: - - - /** - * The title of a document as specified by the title sub-element of the 'svg' - * root element(i.e., Here is the title...) - */ - DOMString getTitle(); - - /** - * Returns the URI of the page that linked to this page. The value is an empty - * string if the user navigated to the page directly(not through a link, but, - * for example, via a bookmark). - */ - DOMString getReferrer(); - - /** - * The domain name of the server that served the document, or a null string if - * the server cannot be identified by a domain name. - */ - DOMString getDomain(); - - /** - * The complete URI of the document. - */ - DOMString getURL(); - - /** - * The root 'svg' element in the document hierarchy. - */ - SVGElementPtr getRootElement(); - - - //################## - //# Non-API methods - //################## - - /** - * - */ - ~SVGDocument() {} - -}; - - - -/*######################################################################### -## GetSVGDocument -#########################################################################*/ - -/** - * In the case where an SVG document is embedded by reference, such as when an - * XHTML document has an 'object' element whose href(or equivalent) attribute - * references an SVG document(i.e., a document whose MIME type is - * "image/svg+xml" and whose root element is thus an 'svg' element), the SVG user - * agent is required to implement the GetSVGDocument interface for the element - * which references the SVG document(e.g., the HTML 'object' or comparable - * referencing elements). - */ -class GetSVGDocument -{ -public: - - /** - * Returns the SVGDocument object for the referenced SVG document. - */ - SVGDocumentPtr getSVGDocument() - throw(DOMException); - - //################## - //# Non-API methods - //################## - - /** - * - */ - ~GetSVGDocument() {} - -}; - - - - - - - -} //namespace svg -} //namespace dom -} //namespace w3c -} //namespace org - -#endif // SEEN_SVG_H -/*######################################################################### -## E N D O F F I L E -#########################################################################*/ - -- cgit v1.2.3 From b65e7ec00e8d9adb360d11ed8a2646e8b9b74fe0 Mon Sep 17 00:00:00 2001 From: Alex Valavanis Date: Sat, 21 Sep 2013 17:50:46 +0100 Subject: Fix preview page number for PDF Cairo import dialog (bzr r12568) --- src/extension/internal/pdf-input-cairo.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/extension/internal/pdf-input-cairo.cpp b/src/extension/internal/pdf-input-cairo.cpp index c2f2b43a5..355a5784d 100644 --- a/src/extension/internal/pdf-input-cairo.cpp +++ b/src/extension/internal/pdf-input-cairo.cpp @@ -491,7 +491,7 @@ bool PdfImportCairoDialog::_onDraw(const Cairo::RefPtr& cr) { */ void PdfImportCairoDialog::_setPreviewPage(int page) { - PopplerPage *_previewed_page = poppler_document_get_page(_poppler_doc, page); + PopplerPage *_previewed_page = poppler_document_get_page(_poppler_doc, page-1); // Try to get a thumbnail from the PDF if possible if (!_render_thumb) { -- cgit v1.2.3 From 56dda4fb505028b68abac775b005cef65bce3477 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sat, 21 Sep 2013 21:18:07 +0200 Subject: Fixed segfault on copying text. Fixed bugs: - https://launchpad.net/bugs/1228509 (bzr r12569) --- src/selection-chemistry.cpp | 26 ++++++++++++++++---------- src/selection-chemistry.h | 2 +- src/text-context.cpp | 7 +++++-- 3 files changed, 22 insertions(+), 13 deletions(-) diff --git a/src/selection-chemistry.cpp b/src/selection-chemistry.cpp index 0cb7123ae..64ecd6e04 100644 --- a/src/selection-chemistry.cpp +++ b/src/selection-chemistry.cpp @@ -1104,18 +1104,21 @@ void sp_selection_cut(SPDesktop *desktop) * \pre item != NULL */ SPCSSAttr * -take_style_from_item(SPItem *item) +take_style_from_item(SPObject *object) { + // CPPIFY: + // This function should only take SPItems, but currently SPString is not an Item. + // write the complete cascaded style, context-free - SPCSSAttr *css = sp_css_attr_from_object(item, SP_STYLE_FLAG_ALWAYS); + SPCSSAttr *css = sp_css_attr_from_object(object, SP_STYLE_FLAG_ALWAYS); if (css == NULL) return NULL; - if ((SP_IS_GROUP(item) && item->children) || - (SP_IS_TEXT(item) && item->children && item->children->next == NULL)) { + if ((SP_IS_GROUP(object) && object->children) || + (SP_IS_TEXT(object) && object->children && object->children->next == NULL)) { // if this is a text with exactly one tspan child, merge the style of that tspan as well // If this is a group, merge the style of its topmost (last) child with style - for (SPObject *last_element = item->lastChild(); last_element != NULL; last_element = last_element->getPrev()) { + for (SPObject *last_element = object->lastChild(); last_element != NULL; last_element = last_element->getPrev()) { if ( last_element->style ) { SPCSSAttr *temp = sp_css_attr_from_object(last_element, SP_STYLE_FLAG_IFSET); if (temp) { @@ -1126,15 +1129,18 @@ take_style_from_item(SPItem *item) } } } - if (!(SP_IS_TEXT(item) || SP_IS_TSPAN(item) || SP_IS_TREF(item) || SP_IS_STRING(item))) { + + if (!(SP_IS_TEXT(object) || SP_IS_TSPAN(object) || SP_IS_TREF(object) || SP_IS_STRING(object))) { // do not copy text properties from non-text objects, it's confusing css = sp_css_attr_unset_text(css); } - // FIXME: also transform gradient/pattern fills, by forking? NO, this must be nondestructive - double ex = item->i2doc_affine().descrim(); - if (ex != 1.0) { - css = sp_css_attr_scale(css, ex); + if (SP_IS_ITEM(object)) { + // FIXME: also transform gradient/pattern fills, by forking? NO, this must be nondestructive + double ex = SP_ITEM(object)->i2doc_affine().descrim(); + if (ex != 1.0) { + css = sp_css_attr_scale(css, ex); + } } return css; diff --git a/src/selection-chemistry.h b/src/selection-chemistry.h index f7a4f928c..e86000f70 100644 --- a/src/selection-chemistry.h +++ b/src/selection-chemistry.h @@ -85,7 +85,7 @@ void sp_selection_raise_to_top(Inkscape::Selection *selection, SPDesktop *deskto void sp_selection_lower(Inkscape::Selection *selection, SPDesktop *desktop); void sp_selection_lower_to_bottom(Inkscape::Selection *selection, SPDesktop *desktop); -SPCSSAttr *take_style_from_item (SPItem *item); +SPCSSAttr *take_style_from_item (SPObject *object); void sp_selection_cut(SPDesktop *desktop); void sp_selection_copy(SPDesktop *desktop); diff --git a/src/text-context.cpp b/src/text-context.cpp index 10973b7aa..f12ce6aa6 100644 --- a/src/text-context.cpp +++ b/src/text-context.cpp @@ -1390,8 +1390,11 @@ SPCSSAttr *sp_text_get_style_at_cursor(SPEventContext const *ec) return NULL; SPObject const *obj = sp_te_object_at_position(tc->text, tc->text_sel_end); - if (obj) - return take_style_from_item(SP_ITEM(obj)); + + if (obj) { + return take_style_from_item(const_cast(obj)); + } + return NULL; } -- cgit v1.2.3 From 9ba75e8a819b3fa9e266f6bd46ccee65322f89b0 Mon Sep 17 00:00:00 2001 From: Slagvi Public Date: Sat, 21 Sep 2013 22:30:40 +0200 Subject: Fix templates parameters names. (bzr r12481.1.13) --- share/extensions/empty_page.inx | 4 ++-- share/templates/A4.svg | 2 +- share/templates/A4_landscape.svg | 2 +- share/templates/CD_cover_300dpi.svg | 2 +- share/templates/CD_label_120x120.svg | 2 +- share/templates/DVD_cover_regular_300dpi.svg | 2 +- share/templates/DVD_cover_slim_300dpi.svg | 2 +- share/templates/DVD_cover_superslim_300dpi.svg | 2 +- share/templates/DVD_cover_ultraslim_300dpi.svg | 2 +- share/templates/LaTeX_Beamer.svg | 2 +- share/templates/Letter.svg | 2 +- share/templates/Letter_landscape.svg | 2 +- share/templates/Typography_Canvas.svg | 2 +- share/templates/black_opaque.svg | 2 +- share/templates/business_card_85x54mm.svg | 2 +- share/templates/business_card_90x50mm.svg | 2 +- share/templates/desktop_1024x768.svg | 2 +- share/templates/desktop_1600x1200.svg | 2 +- share/templates/desktop_640x480.svg | 2 +- share/templates/desktop_800x600.svg | 2 +- share/templates/icon_16x16.svg | 2 +- share/templates/icon_32x32.svg | 2 +- share/templates/icon_48x48.svg | 2 +- share/templates/icon_64x64.svg | 2 +- share/templates/no_borders.svg | 2 +- share/templates/no_layers.svg | 2 +- share/templates/video_HDTV_1920x1080.svg | 2 +- share/templates/video_NTSC_720x486.svg | 2 +- share/templates/video_PAL_720x576.svg | 2 +- share/templates/web_banner_468x60.svg | 2 +- share/templates/web_banner_728x90.svg | 2 +- share/templates/web_banners.svg | 2 +- share/templates/white_opaque.svg | 2 +- src/ui/dialog/template-load-tab.cpp | 2 +- 34 files changed, 35 insertions(+), 35 deletions(-) diff --git a/share/extensions/empty_page.inx b/share/extensions/empty_page.inx index 2eceb84bd..5837948b9 100644 --- a/share/extensions/empty_page.inx +++ b/share/extensions/empty_page.inx @@ -24,8 +24,8 @@ Empty page Jan Darowski - Empty page of chosen size. - 2013.09.10 + Empty page of chosen size. + 2013-09-10 empty sheet a4 a3 a5 letter