From 5ed81b55a24be2ddc51aa812bca2edcb7ff94b37 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Tue, 21 Aug 2012 15:56:49 +0200 Subject: Added "virtual pad" to SPNamedView. (bzr r11608.1.40) --- src/sp-namedview.cpp | 80 ++++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 59 insertions(+), 21 deletions(-) (limited to 'src/sp-namedview.cpp') diff --git a/src/sp-namedview.cpp b/src/sp-namedview.cpp index 75c2f8343..e85b1fc5a 100644 --- a/src/sp-namedview.cpp +++ b/src/sp-namedview.cpp @@ -103,8 +103,19 @@ static void sp_namedview_class_init(SPNamedViewClass * klass) sp_object_class->write = sp_namedview_write; } +CNamedView::CNamedView(SPNamedView* view) : CObjectGroup(view) { + this->spnamedview = view; +} + +CNamedView::~CNamedView() { +} + static void sp_namedview_init(SPNamedView *nv) { + nv->cnamedview = new CNamedView(nv); + nv->cobjectgroup = nv->cnamedview; + nv->cobject = nv->cnamedview; + nv->editable = TRUE; nv->showguides = TRUE; nv->grids_visible = false; @@ -210,14 +221,13 @@ static void sp_namedview_generate_old_grid(SPNamedView * /*nv*/, SPDocument *doc } } -static void sp_namedview_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) -{ +void CNamedView::onBuild(SPDocument *document, Inkscape::XML::Node *repr) { + SPNamedView* object = this->spnamedview; + SPNamedView *nv = (SPNamedView *) object; SPObjectGroup *og = (SPObjectGroup *) object; - if (((SPObjectClass *) (parent_class))->build) { - (* ((SPObjectClass *) (parent_class))->build)(object, document, repr); - } + CObjectGroup::onBuild(document, repr); object->readAttr( "inkscape:document-units" ); object->readAttr( "units" ); @@ -287,8 +297,13 @@ static void sp_namedview_build(SPObject *object, SPDocument *document, Inkscape: sp_namedview_generate_old_grid(nv, document, repr); } -static void sp_namedview_release(SPObject *object) +static void sp_namedview_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr) { + ((SPNamedView*)object)->cnamedview->onBuild(document, repr); +} + +void CNamedView::onRelease() { + SPNamedView* object = this->spnamedview; SPNamedView *namedview = (SPNamedView *) object; if (namedview->guides) { @@ -306,12 +321,19 @@ static void sp_namedview_release(SPObject *object) if (((SPObjectClass *) parent_class)->release) { ((SPObjectClass *) parent_class)->release(object); } + CObjectGroup::onRelease(); namedview->snap_manager.~SnapManager(); } -static void sp_namedview_set(SPObject *object, unsigned int key, const gchar *value) +static void sp_namedview_release(SPObject *object) { + ((SPNamedView*)object)->cnamedview->onRelease(); +} + +void CNamedView::onSet(unsigned int key, const gchar* value) { + SPNamedView* object = this->spnamedview; + SPNamedView *nv = SP_NAMEDVIEW(object); switch (key) { @@ -624,13 +646,16 @@ static void sp_namedview_set(SPObject *object, unsigned int key, const gchar *va break; } default: - if (((SPObjectClass *) (parent_class))->set) { - ((SPObjectClass *) (parent_class))->set(object, key, value); - } + CObjectGroup::onSet(key, value); break; } } +static void sp_namedview_set(SPObject *object, unsigned int key, const gchar *value) +{ + ((SPNamedView*)object)->cnamedview->onSet(key, value); +} + /** * add a grid item from SVG-repr. Check if this namedview already has a gridobject for this one! If desktop=null, add grid-canvasitem to all desktops of this namedview, * otherwise only add it to the specified desktop. @@ -672,13 +697,12 @@ sp_namedview_add_grid(SPNamedView *nv, Inkscape::XML::Node *repr, SPDesktop *des return grid; } -static void sp_namedview_child_added(SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node *ref) -{ +void CNamedView::onChildAdded(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { + SPNamedView* object = this->spnamedview; + SPNamedView *nv = (SPNamedView *) object; - if (((SPObjectClass *) (parent_class))->child_added) { - (* ((SPObjectClass *) (parent_class))->child_added)(object, child, ref); - } + CObjectGroup::onChildAdded(child, ref); if (!strcmp(child->name(), "inkscape:grid")) { sp_namedview_add_grid(nv, child, NULL); @@ -704,8 +728,13 @@ static void sp_namedview_child_added(SPObject *object, Inkscape::XML::Node *chil } } -static void sp_namedview_remove_child(SPObject *object, Inkscape::XML::Node *child) +static void sp_namedview_child_added(SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { + ((SPNamedView*)object)->cnamedview->onChildAdded(child, ref); +} + +void CNamedView::onRemoveChild(Inkscape::XML::Node *child) { + SPNamedView* object = this->spnamedview; SPNamedView *nv = (SPNamedView *) object; if (!strcmp(child->name(), "inkscape:grid")) { @@ -730,26 +759,35 @@ static void sp_namedview_remove_child(SPObject *object, Inkscape::XML::Node *chi } } - if (((SPObjectClass *) (parent_class))->remove_child) { - (* ((SPObjectClass *) (parent_class))->remove_child)(object, child); - } + CObjectGroup::onRemoveChild(child); } -static Inkscape::XML::Node *sp_namedview_write(SPObject *object, Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) +static void sp_namedview_remove_child(SPObject *object, Inkscape::XML::Node *child) { + ((SPNamedView*)object)->cnamedview->onRemoveChild(child); +} + +Inkscape::XML::Node* CNamedView::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { + SPNamedView* object = this->spnamedview; + if ( ( flags & SP_OBJECT_WRITE_EXT ) && repr != object->getRepr() ) { if (repr) { repr->mergeFrom(object->getRepr(), "id"); } else { - repr = object->getRepr()->duplicate(doc); + repr = object->getRepr()->duplicate(xml_doc); } } return repr; } +static Inkscape::XML::Node *sp_namedview_write(SPObject *object, Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags) +{ + return ((SPNamedView*)object)->cnamedview->onWrite(doc, repr, flags); +} + void SPNamedView::show(SPDesktop *desktop) { for (GSList *l = guides; l != NULL; l = l->next) { -- cgit v1.2.3 From a0a8d020201e0e38a63d9aa3dce228d7d9e6fb35 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Thu, 14 Mar 2013 12:42:39 +0100 Subject: Various changes. (bzr r11608.1.48) --- src/sp-namedview.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/sp-namedview.cpp') diff --git a/src/sp-namedview.cpp b/src/sp-namedview.cpp index e85b1fc5a..2e36bd082 100644 --- a/src/sp-namedview.cpp +++ b/src/sp-namedview.cpp @@ -95,7 +95,7 @@ static void sp_namedview_class_init(SPNamedViewClass * klass) parent_class = reinterpret_cast(g_type_class_ref(SP_TYPE_OBJECTGROUP)); - sp_object_class->build = sp_namedview_build; + //sp_object_class->build = sp_namedview_build; sp_object_class->release = sp_namedview_release; sp_object_class->set = sp_namedview_set; sp_object_class->child_added = sp_namedview_child_added; -- cgit v1.2.3 From 3d7b1356600880a43e44e864cab08fff29cd23af Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sat, 30 Mar 2013 00:45:33 +0100 Subject: Added "virtual pads" to - SPFeFuncNode - SPFeDistantLight - SPFeMergeNode - SPFePointLight - SPFeSpotLight - SPFilter - SPFont - SPGuide Changes in SPItem and SPNamedView. (bzr r11608.1.49) --- src/sp-namedview.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/sp-namedview.cpp') diff --git a/src/sp-namedview.cpp b/src/sp-namedview.cpp index 2e36bd082..0300c7140 100644 --- a/src/sp-namedview.cpp +++ b/src/sp-namedview.cpp @@ -318,9 +318,9 @@ void CNamedView::onRelease() { namedview->grids = g_slist_remove_link(namedview->grids, namedview->grids); // deletes first entry } - if (((SPObjectClass *) parent_class)->release) { - ((SPObjectClass *) parent_class)->release(object); - } +// if (((SPObjectClass *) parent_class)->release) { +// ((SPObjectClass *) parent_class)->release(object); +// } CObjectGroup::onRelease(); namedview->snap_manager.~SnapManager(); -- cgit v1.2.3 From 957c3e4b7909d42c5a13f1b1dd583f877fc32259 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sat, 30 Mar 2013 00:46:57 +0100 Subject: Removed function pointers from SPObject and subclasses. Added some missing virtual pads for classes that were hidden by preprocessor macros. (bzr r11608.1.55) --- src/sp-namedview.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'src/sp-namedview.cpp') diff --git a/src/sp-namedview.cpp b/src/sp-namedview.cpp index 0300c7140..deda11bc1 100644 --- a/src/sp-namedview.cpp +++ b/src/sp-namedview.cpp @@ -96,11 +96,11 @@ static void sp_namedview_class_init(SPNamedViewClass * klass) parent_class = reinterpret_cast(g_type_class_ref(SP_TYPE_OBJECTGROUP)); //sp_object_class->build = sp_namedview_build; - sp_object_class->release = sp_namedview_release; - sp_object_class->set = sp_namedview_set; - sp_object_class->child_added = sp_namedview_child_added; - sp_object_class->remove_child = sp_namedview_remove_child; - sp_object_class->write = sp_namedview_write; +// sp_object_class->release = sp_namedview_release; +// sp_object_class->set = sp_namedview_set; +// sp_object_class->child_added = sp_namedview_child_added; +// sp_object_class->remove_child = sp_namedview_remove_child; +// sp_object_class->write = sp_namedview_write; } CNamedView::CNamedView(SPNamedView* view) : CObjectGroup(view) { -- cgit v1.2.3 From 7df6616da5ea2debb86838366ddf746841549cdb Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sat, 30 Mar 2013 00:56:13 +0100 Subject: Renamed virtual function names. (bzr r11608.1.57) --- src/sp-namedview.cpp | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) (limited to 'src/sp-namedview.cpp') diff --git a/src/sp-namedview.cpp b/src/sp-namedview.cpp index 7c663179c..1771b0787 100644 --- a/src/sp-namedview.cpp +++ b/src/sp-namedview.cpp @@ -181,13 +181,13 @@ static void sp_namedview_generate_old_grid(SPNamedView * /*nv*/, SPDocument *doc } } -void CNamedView::onBuild(SPDocument *document, Inkscape::XML::Node *repr) { +void CNamedView::build(SPDocument *document, Inkscape::XML::Node *repr) { SPNamedView* object = this->spnamedview; SPNamedView *nv = (SPNamedView *) object; SPObjectGroup *og = (SPObjectGroup *) object; - CObjectGroup::onBuild(document, repr); + CObjectGroup::build(document, repr); object->readAttr( "inkscape:document-units" ); object->readAttr( "units" ); @@ -257,7 +257,7 @@ void CNamedView::onBuild(SPDocument *document, Inkscape::XML::Node *repr) { sp_namedview_generate_old_grid(nv, document, repr); } -void CNamedView::onRelease() { +void CNamedView::release() { SPNamedView* object = this->spnamedview; SPNamedView *namedview = (SPNamedView *) object; @@ -273,12 +273,12 @@ void CNamedView::onRelease() { namedview->grids = g_slist_remove_link(namedview->grids, namedview->grids); // deletes first entry } - CObjectGroup::onRelease(); + CObjectGroup::release(); namedview->snap_manager.~SnapManager(); } -void CNamedView::onSet(unsigned int key, const gchar* value) { +void CNamedView::set(unsigned int key, const gchar* value) { SPNamedView* object = this->spnamedview; SPNamedView *nv = SP_NAMEDVIEW(object); @@ -593,7 +593,7 @@ void CNamedView::onSet(unsigned int key, const gchar* value) { break; } default: - CObjectGroup::onSet(key, value); + CObjectGroup::set(key, value); break; } } @@ -639,12 +639,12 @@ sp_namedview_add_grid(SPNamedView *nv, Inkscape::XML::Node *repr, SPDesktop *des return grid; } -void CNamedView::onChildAdded(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { +void CNamedView::child_added(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { SPNamedView* object = this->spnamedview; SPNamedView *nv = (SPNamedView *) object; - CObjectGroup::onChildAdded(child, ref); + CObjectGroup::child_added(child, ref); if (!strcmp(child->name(), "inkscape:grid")) { sp_namedview_add_grid(nv, child, NULL); @@ -670,7 +670,7 @@ void CNamedView::onChildAdded(Inkscape::XML::Node *child, Inkscape::XML::Node *r } } -void CNamedView::onRemoveChild(Inkscape::XML::Node *child) { +void CNamedView::remove_child(Inkscape::XML::Node *child) { SPNamedView* object = this->spnamedview; SPNamedView *nv = (SPNamedView *) object; @@ -696,10 +696,10 @@ void CNamedView::onRemoveChild(Inkscape::XML::Node *child) { } } - CObjectGroup::onRemoveChild(child); + CObjectGroup::remove_child(child); } -Inkscape::XML::Node* CNamedView::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { +Inkscape::XML::Node* CNamedView::write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { SPNamedView* object = this->spnamedview; if ( ( flags & SP_OBJECT_WRITE_EXT ) && -- cgit v1.2.3 From a5d6e692d661f0bf7648e64e8fcb04588bb8f3ab Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Mon, 1 Apr 2013 00:07:00 +0200 Subject: Prepared exchange of casting macros. (bzr r11608.1.63) --- src/sp-namedview.cpp | 1 + 1 file changed, 1 insertion(+) (limited to 'src/sp-namedview.cpp') diff --git a/src/sp-namedview.cpp b/src/sp-namedview.cpp index 1771b0787..56e278b78 100644 --- a/src/sp-namedview.cpp +++ b/src/sp-namedview.cpp @@ -71,6 +71,7 @@ CNamedView::~CNamedView() { static void sp_namedview_init(SPNamedView *nv) { nv->cnamedview = new CNamedView(nv); + nv->typeHierarchy.insert(typeid(SPNamedView)); delete nv->cobjectgroup; nv->cobjectgroup = nv->cnamedview; -- cgit v1.2.3 From 69f3b6f1abb2bb422935d43262e1e99aab359954 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Tue, 2 Apr 2013 01:41:30 +0200 Subject: Added constructors to SP classes. (bzr r11608.1.67) --- src/sp-namedview.cpp | 32 ++++++++++++++++++++++++++++---- 1 file changed, 28 insertions(+), 4 deletions(-) (limited to 'src/sp-namedview.cpp') diff --git a/src/sp-namedview.cpp b/src/sp-namedview.cpp index 56e278b78..0387e45bf 100644 --- a/src/sp-namedview.cpp +++ b/src/sp-namedview.cpp @@ -55,7 +55,7 @@ static void sp_namedview_show_single_guide(SPGuide* guide, bool show); static gboolean sp_str_to_bool(const gchar *str); static gboolean sp_nv_read_opacity(const gchar *str, guint32 *color); -G_DEFINE_TYPE(SPNamedView, sp_namedview, SP_TYPE_OBJECTGROUP); +G_DEFINE_TYPE(SPNamedView, sp_namedview, G_TYPE_OBJECT); static void sp_namedview_class_init(SPNamedViewClass * klass) { @@ -68,8 +68,9 @@ CNamedView::CNamedView(SPNamedView* view) : CObjectGroup(view) { CNamedView::~CNamedView() { } -static void sp_namedview_init(SPNamedView *nv) -{ +SPNamedView::SPNamedView() : SPObjectGroup(), snap_manager(this) { + SPNamedView* nv = this; + nv->cnamedview = new CNamedView(nv); nv->typeHierarchy.insert(typeid(SPNamedView)); @@ -77,6 +78,24 @@ static void sp_namedview_init(SPNamedView *nv) nv->cobjectgroup = nv->cnamedview; nv->cobject = nv->cnamedview; + nv->zoom = 0; + nv->guidecolor = 0; + nv->guidehicolor = 0; + nv->views = NULL; + nv->borderlayer = 0; + nv->units = NULL; + nv->window_x = 0; + nv->cy = 0; + nv->window_y = 0; + nv->doc_units = NULL; + nv->pagecolor = 0; + nv->cx = 0; + nv->pageshadow = 0; + nv->window_width = 0; + nv->window_height = 0; + nv->window_maximized = 0; + nv->bordercolor = 0; + nv->editable = TRUE; nv->showguides = TRUE; nv->grids_visible = false; @@ -91,7 +110,12 @@ static void sp_namedview_init(SPNamedView *nv) nv->connector_spacing = defaultConnSpacing; - new (&nv->snap_manager) SnapManager(nv); + //new (&nv->snap_manager) SnapManager(nv); +} + +static void sp_namedview_init(SPNamedView *nv) +{ + new (nv) SPNamedView(); } static void sp_namedview_generate_old_grid(SPNamedView * /*nv*/, SPDocument *document, Inkscape::XML::Node *repr) { -- cgit v1.2.3 From 0a7e23844c3a43203de3f5207aecb278e84ee739 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Tue, 2 Apr 2013 20:45:20 +0200 Subject: Added virtual destructor to SPObject. Switched to new factory. Replaced some casts. Inkscape seems stable, car.svgz renders correctly to png. (bzr r11608.1.70) --- src/sp-namedview.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'src/sp-namedview.cpp') diff --git a/src/sp-namedview.cpp b/src/sp-namedview.cpp index 0387e45bf..762f56257 100644 --- a/src/sp-namedview.cpp +++ b/src/sp-namedview.cpp @@ -55,6 +55,17 @@ static void sp_namedview_show_single_guide(SPGuide* guide, bool show); static gboolean sp_str_to_bool(const gchar *str); static gboolean sp_nv_read_opacity(const gchar *str, guint32 *color); +#include "sp-factory.h" + +namespace { + SPObject* createNamedView() { + return new SPNamedView(); + } + + bool namedViewRegistered = SPFactory::instance().registerObject("sodipodi:namedview", createNamedView); +} + + G_DEFINE_TYPE(SPNamedView, sp_namedview, G_TYPE_OBJECT); static void sp_namedview_class_init(SPNamedViewClass * klass) -- cgit v1.2.3 From 8f5e6d495f0478701218adc8078db5063b710a05 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sat, 6 Apr 2013 16:26:39 +0200 Subject: Merged ObjectGroup and subclasses. (bzr r11608.1.83) --- src/sp-namedview.cpp | 129 +++++++++++++++++++++------------------------------ 1 file changed, 53 insertions(+), 76 deletions(-) (limited to 'src/sp-namedview.cpp') diff --git a/src/sp-namedview.cpp b/src/sp-namedview.cpp index 762f56257..767017e6d 100644 --- a/src/sp-namedview.cpp +++ b/src/sp-namedview.cpp @@ -65,68 +65,45 @@ namespace { bool namedViewRegistered = SPFactory::instance().registerObject("sodipodi:namedview", createNamedView); } - -G_DEFINE_TYPE(SPNamedView, sp_namedview, G_TYPE_OBJECT); - -static void sp_namedview_class_init(SPNamedViewClass * klass) -{ -} - -CNamedView::CNamedView(SPNamedView* view) : CObjectGroup(view) { - this->spnamedview = view; -} - -CNamedView::~CNamedView() { -} - SPNamedView::SPNamedView() : SPObjectGroup(), snap_manager(this) { - SPNamedView* nv = this; - - nv->cnamedview = new CNamedView(nv); - nv->typeHierarchy.insert(typeid(SPNamedView)); - - delete nv->cobjectgroup; - nv->cobjectgroup = nv->cnamedview; - nv->cobject = nv->cnamedview; - - nv->zoom = 0; - nv->guidecolor = 0; - nv->guidehicolor = 0; - nv->views = NULL; - nv->borderlayer = 0; - nv->units = NULL; - nv->window_x = 0; - nv->cy = 0; - nv->window_y = 0; - nv->doc_units = NULL; - nv->pagecolor = 0; - nv->cx = 0; - nv->pageshadow = 0; - nv->window_width = 0; - nv->window_height = 0; - nv->window_maximized = 0; - nv->bordercolor = 0; - - nv->editable = TRUE; - nv->showguides = TRUE; - nv->grids_visible = false; - nv->showborder = TRUE; - nv->showpageshadow = TRUE; - - nv->guides = NULL; - nv->viewcount = 0; - nv->grids = NULL; - - nv->default_layer_id = 0; - - nv->connector_spacing = defaultConnSpacing; - - //new (&nv->snap_manager) SnapManager(nv); + this->cobject = this; + + this->zoom = 0; + this->guidecolor = 0; + this->guidehicolor = 0; + this->views = NULL; + this->borderlayer = 0; + this->units = NULL; + this->window_x = 0; + this->cy = 0; + this->window_y = 0; + this->doc_units = NULL; + this->pagecolor = 0; + this->cx = 0; + this->pageshadow = 0; + this->window_width = 0; + this->window_height = 0; + this->window_maximized = 0; + this->bordercolor = 0; + + this->editable = TRUE; + this->showguides = TRUE; + this->grids_visible = false; + this->showborder = TRUE; + this->showpageshadow = TRUE; + + this->guides = NULL; + this->viewcount = 0; + this->grids = NULL; + + this->default_layer_id = 0; + + this->connector_spacing = defaultConnSpacing; + + //new (&this->snap_manager) SnapManager(this); } -static void sp_namedview_init(SPNamedView *nv) -{ - new (nv) SPNamedView(); +SPNamedView::~SPNamedView() { } static void sp_namedview_generate_old_grid(SPNamedView * /*nv*/, SPDocument *document, Inkscape::XML::Node *repr) { @@ -217,13 +194,13 @@ static void sp_namedview_generate_old_grid(SPNamedView * /*nv*/, SPDocument *doc } } -void CNamedView::build(SPDocument *document, Inkscape::XML::Node *repr) { - SPNamedView* object = this->spnamedview; +void SPNamedView::build(SPDocument *document, Inkscape::XML::Node *repr) { + SPNamedView* object = this; SPNamedView *nv = (SPNamedView *) object; SPObjectGroup *og = (SPObjectGroup *) object; - CObjectGroup::build(document, repr); + SPObjectGroup::build(document, repr); object->readAttr( "inkscape:document-units" ); object->readAttr( "units" ); @@ -293,8 +270,8 @@ void CNamedView::build(SPDocument *document, Inkscape::XML::Node *repr) { sp_namedview_generate_old_grid(nv, document, repr); } -void CNamedView::release() { - SPNamedView* object = this->spnamedview; +void SPNamedView::release() { + SPNamedView* object = this; SPNamedView *namedview = (SPNamedView *) object; if (namedview->guides) { @@ -309,13 +286,13 @@ void CNamedView::release() { namedview->grids = g_slist_remove_link(namedview->grids, namedview->grids); // deletes first entry } - CObjectGroup::release(); + SPObjectGroup::release(); namedview->snap_manager.~SnapManager(); } -void CNamedView::set(unsigned int key, const gchar* value) { - SPNamedView* object = this->spnamedview; +void SPNamedView::set(unsigned int key, const gchar* value) { + SPNamedView* object = this; SPNamedView *nv = SP_NAMEDVIEW(object); @@ -629,7 +606,7 @@ void CNamedView::set(unsigned int key, const gchar* value) { break; } default: - CObjectGroup::set(key, value); + SPObjectGroup::set(key, value); break; } } @@ -675,12 +652,12 @@ sp_namedview_add_grid(SPNamedView *nv, Inkscape::XML::Node *repr, SPDesktop *des return grid; } -void CNamedView::child_added(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { - SPNamedView* object = this->spnamedview; +void SPNamedView::child_added(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) { + SPNamedView* object = this; SPNamedView *nv = (SPNamedView *) object; - CObjectGroup::child_added(child, ref); + SPObjectGroup::child_added(child, ref); if (!strcmp(child->name(), "inkscape:grid")) { sp_namedview_add_grid(nv, child, NULL); @@ -706,8 +683,8 @@ void CNamedView::child_added(Inkscape::XML::Node *child, Inkscape::XML::Node *re } } -void CNamedView::remove_child(Inkscape::XML::Node *child) { - SPNamedView* object = this->spnamedview; +void SPNamedView::remove_child(Inkscape::XML::Node *child) { + SPNamedView* object = this; SPNamedView *nv = (SPNamedView *) object; if (!strcmp(child->name(), "inkscape:grid")) { @@ -732,11 +709,11 @@ void CNamedView::remove_child(Inkscape::XML::Node *child) { } } - CObjectGroup::remove_child(child); + SPObjectGroup::remove_child(child); } -Inkscape::XML::Node* CNamedView::write(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { - SPNamedView* object = this->spnamedview; +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() ) -- cgit v1.2.3 From 27e2102f96a5554bcd5310ec11435d155773b279 Mon Sep 17 00:00:00 2001 From: Markus Engel Date: Sun, 7 Apr 2013 18:28:22 +0200 Subject: Merge Object and subclasses. Merging of SP- and C-classes complete. (bzr r11608.1.86) --- src/sp-namedview.cpp | 2 -- 1 file changed, 2 deletions(-) (limited to 'src/sp-namedview.cpp') diff --git a/src/sp-namedview.cpp b/src/sp-namedview.cpp index 767017e6d..31074732d 100644 --- a/src/sp-namedview.cpp +++ b/src/sp-namedview.cpp @@ -66,8 +66,6 @@ namespace { } SPNamedView::SPNamedView() : SPObjectGroup(), snap_manager(this) { - this->cobject = this; - this->zoom = 0; this->guidecolor = 0; this->guidehicolor = 0; -- 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-namedview.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/sp-namedview.cpp') 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) { -- 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/sp-namedview.cpp | 32 ++++++++++++++++++++++++++------ 1 file changed, 26 insertions(+), 6 deletions(-) (limited to 'src/sp-namedview.cpp') 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); -- 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/sp-namedview.cpp | 453 ++++++++++++++++++++++++--------------------------- 1 file changed, 217 insertions(+), 236 deletions(-) (limited to 'src/sp-namedview.cpp') 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); } } -- cgit v1.2.3