summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorsu_v <suv-sf@users.sourceforge.net>2013-03-15 17:24:54 +0000
committer~suv <suv-sf@users.sourceforge.net>2013-03-15 17:24:54 +0000
commit5068de8914944f7316bdd5fbc3d1fbc61736a99f (patch)
treed7ccf7e4babe1b72b98ef42c262b12d9a8ca870b /src
parentmerge from trunk (r12201) (diff)
parentFix missing Gtkmm/Glib headers for Gtk+ 3 build (diff)
downloadinkscape-5068de8914944f7316bdd5fbc3d1fbc61736a99f.tar.gz
inkscape-5068de8914944f7316bdd5fbc3d1fbc61736a99f.zip
merge from trunk (r12209)
(bzr r11668.1.58)
Diffstat (limited to 'src')
-rw-r--r--src/2geom/basic-intersection.cpp12
-rw-r--r--src/2geom/recursive-bezier-intersection.cpp11
-rw-r--r--src/2geom/solve-bezier-parametric.cpp27
-rw-r--r--src/arc-context.h3
-rw-r--r--src/box3d-context.h3
-rw-r--r--src/box3d-side.h4
-rw-r--r--src/box3d.h3
-rw-r--r--src/cms-system.h2
-rw-r--r--src/color-profile.cpp6
-rw-r--r--src/common-context.h4
-rw-r--r--src/composite-undo-stack-observer.h2
-rw-r--r--src/connector-context.h2
-rw-r--r--src/desktop-events.h2
-rw-r--r--src/desktop-handles.h4
-rw-r--r--src/desktop-style.h4
-rw-r--r--src/desktop.h4
-rw-r--r--src/dialogs/dialog-events.h2
-rw-r--r--src/display/canvas-axonomgrid.h2
-rw-r--r--src/display/canvas-bpath.h2
-rw-r--r--src/display/drawing-group.h2
-rw-r--r--src/display/drawing-item.h2
-rw-r--r--src/display/drawing-shape.h2
-rw-r--r--src/display/drawing-text.h2
-rw-r--r--src/display/guideline.h2
-rw-r--r--src/display/nr-filter-diffuselighting.h8
-rw-r--r--src/display/nr-filter-flood.h2
-rw-r--r--src/display/nr-filter-primitive.h2
-rw-r--r--src/display/nr-filter-specularlighting.h8
-rw-r--r--src/display/nr-style.h6
-rw-r--r--src/display/nr-svgfonts.h4
-rw-r--r--src/display/sp-ctrlcurve.h2
-rw-r--r--src/document-subset.h2
-rw-r--r--src/document-undo.h2
-rw-r--r--src/document.h7
-rw-r--r--src/dom/events.h1
-rw-r--r--src/draw-anchor.h2
-rw-r--r--src/dropper-context.h3
-rw-r--r--src/dyna-draw-context.h3
-rw-r--r--src/eraser-context.h3
-rw-r--r--src/event-context.h2
-rw-r--r--src/extension/effect.h2
-rw-r--r--src/extension/extension.h2
-rw-r--r--src/extension/implementation/implementation.h2
-rw-r--r--src/extension/internal/cairo-render-context.h6
-rw-r--r--src/extension/internal/cairo-renderer.h2
-rw-r--r--src/extension/internal/filter/filter.h2
-rw-r--r--src/extension/internal/pdfinput/pdf-input.cpp1
-rw-r--r--src/extension/internal/pdfinput/svg-builder.h8
-rw-r--r--src/extension/output.h2
-rw-r--r--src/file.h6
-rw-r--r--src/filter-chemistry.h4
-rw-r--r--src/filters/blend.h2
-rw-r--r--src/filters/colormatrix.h2
-rw-r--r--src/filters/componenttransfer-funcnode.h6
-rw-r--r--src/filters/componenttransfer.h2
-rw-r--r--src/filters/composite.h2
-rw-r--r--src/filters/convolvematrix.h2
-rw-r--r--src/filters/diffuselighting.h4
-rw-r--r--src/filters/displacementmap.h2
-rw-r--r--src/filters/distantlight.h4
-rw-r--r--src/filters/flood.h2
-rw-r--r--src/filters/gaussian-blur.h4
-rw-r--r--src/filters/image.h2
-rw-r--r--src/filters/merge.h2
-rw-r--r--src/filters/mergenode.h3
-rw-r--r--src/filters/morphology.h2
-rw-r--r--src/filters/offset.h2
-rw-r--r--src/filters/pointlight.h6
-rw-r--r--src/filters/specularlighting.h4
-rw-r--r--src/filters/spotlight.h6
-rw-r--r--src/filters/tile.h2
-rw-r--r--src/filters/turbulence.h1
-rw-r--r--src/flood-context.h3
-rw-r--r--src/gradient-chemistry.h3
-rw-r--r--src/gradient-context.h3
-rw-r--r--src/gradient-drag.h8
-rw-r--r--src/helper/pixbuf-ops.h2
-rw-r--r--src/helper/png-write.h2
-rw-r--r--src/inkscape-private.h2
-rw-r--r--src/inkscape.cpp2
-rw-r--r--src/inkscape.h6
-rw-r--r--src/knot.h2
-rw-r--r--src/knotholder.h2
-rw-r--r--src/libnrtype/Layout-TNG-Output.cpp1
-rw-r--r--src/libnrtype/Layout-TNG.h4
-rw-r--r--src/libnrtype/font-lister.cpp1
-rw-r--r--src/libnrtype/font-style-to-pos.h2
-rw-r--r--src/line-geometry.h2
-rw-r--r--src/livarot/Path.h10
-rw-r--r--src/livarot/Shape.h6
-rw-r--r--src/live_effects/lpeobject-reference.h4
-rw-r--r--src/live_effects/lpeobject.h2
-rw-r--r--src/lpe-tool-context.h3
-rw-r--r--src/marker.h4
-rw-r--r--src/measure-context.h3
-rw-r--r--src/mesh-context.h3
-rw-r--r--src/persp3d-reference.h2
-rw-r--r--src/persp3d.h2
-rw-r--r--src/print.h2
-rw-r--r--src/profile-manager.h2
-rw-r--r--src/rect-context.h3
-rw-r--r--src/satisfied-guide-cns.h1
-rw-r--r--src/select-context.h2
-rw-r--r--src/selection-chemistry.h1
-rw-r--r--src/selection.h3
-rw-r--r--src/seltrans-handles.h2
-rw-r--r--src/seltrans.h2
-rw-r--r--src/snap.h2
-rw-r--r--src/sp-clippath.h2
-rw-r--r--src/sp-conn-end-pair.h2
-rw-r--r--src/sp-desc.h3
-rw-r--r--src/sp-ellipse.h3
-rw-r--r--src/sp-filter-primitive.h2
-rw-r--r--src/sp-filter-reference.h2
-rw-r--r--src/sp-filter.h4
-rw-r--r--src/sp-gradient-fns.h2
-rw-r--r--src/sp-gradient.h4
-rw-r--r--src/sp-guide.h1
-rw-r--r--src/sp-image.h3
-rw-r--r--src/sp-item.h6
-rw-r--r--src/sp-linear-gradient-fns.h2
-rw-r--r--src/sp-lpe-item.h5
-rw-r--r--src/sp-mask.h4
-rw-r--r--src/sp-mesh-gradient-fns.h2
-rw-r--r--src/sp-metadata.h3
-rw-r--r--src/sp-object.h12
-rw-r--r--src/sp-offset.h2
-rw-r--r--src/sp-pattern.h3
-rw-r--r--src/sp-radial-gradient-fns.h2
-rw-r--r--src/sp-rect.h3
-rw-r--r--src/sp-spiral.h3
-rw-r--r--src/sp-star.h5
-rw-r--r--src/sp-stop.h1
-rw-r--r--src/sp-switch.h2
-rw-r--r--src/sp-symbol.h3
-rw-r--r--src/sp-title.h3
-rw-r--r--src/sp-tref.h3
-rw-r--r--src/sp-use-reference.h2
-rw-r--r--src/sp-use.h2
-rw-r--r--src/spiral-context.h3
-rw-r--r--src/spray-context.h3
-rw-r--r--src/star-context.h3
-rw-r--r--src/style.cpp2
-rw-r--r--src/style.h15
-rw-r--r--src/svg-view-widget.h2
-rw-r--r--src/svg-view.h2
-rw-r--r--src/svg/svg-color.h2
-rw-r--r--src/text-context.h2
-rw-r--r--src/text-editing.h1
-rw-r--r--src/tweak-context.h3
-rw-r--r--src/ui/dialog/desktop-tracker.h2
-rw-r--r--src/ui/dialog/dialog.h2
-rw-r--r--src/ui/dialog/export.cpp17
-rw-r--r--src/ui/dialog/export.h8
-rw-r--r--src/ui/dialog/fill-and-stroke.cpp15
-rw-r--r--src/ui/dialog/find.cpp4
-rw-r--r--src/ui/dialog/find.h6
-rw-r--r--src/ui/dialog/glyphs.h2
-rw-r--r--src/ui/dialog/icon-preview.cpp4
-rw-r--r--src/ui/dialog/input.cpp2
-rw-r--r--src/ui/dialog/layer-properties.h6
-rw-r--r--src/ui/dialog/livepatheffect-editor.cpp2
-rw-r--r--src/ui/dialog/object-properties.cpp6
-rw-r--r--src/ui/dialog/object-properties.h10
-rw-r--r--src/ui/dialog/svg-fonts-dialog.h4
-rw-r--r--src/ui/dialog/text-edit.cpp1
-rw-r--r--src/ui/dialog/text-edit.h2
-rw-r--r--src/ui/dialog/tracedialog.cpp1
-rw-r--r--src/ui/dialog/xml-tree.h4
-rw-r--r--src/ui/tool/control-point.cpp2
-rw-r--r--src/ui/tool/control-point.h2
-rw-r--r--src/ui/tool/node-tool.h3
-rw-r--r--src/ui/tool/path-manipulator.h4
-rw-r--r--src/ui/view/view-widget.h2
-rw-r--r--src/ui/widget/entry.cpp2
-rw-r--r--src/ui/widget/entry.h6
-rw-r--r--src/ui/widget/frame.h8
-rw-r--r--src/ui/widget/object-composite-settings.h4
-rw-r--r--src/ui/widget/registered-widget.h2
-rw-r--r--src/ui/widget/selected-style.h2
-rw-r--r--src/ui/widget/style-subject.h2
-rw-r--r--src/ui/widget/style-swatch.h4
-rw-r--r--src/undo-stack-observer.h2
-rw-r--r--src/vanishing-point.h2
-rw-r--r--src/widgets/arc-toolbar.h2
-rw-r--r--src/widgets/box3d-toolbar.h2
-rw-r--r--src/widgets/calligraphy-toolbar.h2
-rw-r--r--src/widgets/connector-toolbar.h2
-rw-r--r--src/widgets/desktop-widget.h2
-rw-r--r--src/widgets/dropper-toolbar.h2
-rw-r--r--src/widgets/erasor-toolbar.h2
-rw-r--r--src/widgets/gradient-toolbar.h2
-rw-r--r--src/widgets/gradient-vector.h2
-rw-r--r--src/widgets/lpe-toolbar.h2
-rw-r--r--src/widgets/measure-toolbar.h2
-rw-r--r--src/widgets/mesh-toolbar.h2
-rw-r--r--src/widgets/node-toolbar.h2
-rw-r--r--src/widgets/paint-selector.h4
-rw-r--r--src/widgets/paintbucket-toolbar.h2
-rw-r--r--src/widgets/pencil-toolbar.h2
-rw-r--r--src/widgets/rect-toolbar.h2
-rw-r--r--src/widgets/sp-widget.h2
-rw-r--r--src/widgets/spiral-toolbar.h2
-rw-r--r--src/widgets/spray-toolbar.h2
-rw-r--r--src/widgets/star-toolbar.h2
-rw-r--r--src/widgets/swatch-selector.h6
-rw-r--r--src/widgets/text-toolbar.h2
-rw-r--r--src/widgets/toolbox.h2
-rw-r--r--src/widgets/tweak-toolbar.h2
-rw-r--r--src/widgets/zoom-toolbar.h2
-rw-r--r--src/xml/composite-node-observer.h2
-rw-r--r--src/xml/event-fns.h2
-rw-r--r--src/xml/rebase-hrefs.h2
-rw-r--r--src/zoom-context.h3
214 files changed, 313 insertions, 402 deletions
diff --git a/src/2geom/basic-intersection.cpp b/src/2geom/basic-intersection.cpp
index 3be6792b9..544bf0dd1 100644
--- a/src/2geom/basic-intersection.cpp
+++ b/src/2geom/basic-intersection.cpp
@@ -64,7 +64,12 @@ void find_intersections(std::vector< std::pair<double, double> > & xs,
void split(vector<Point> const &p, double t,
vector<Point> &left, vector<Point> &right) {
const unsigned sz = p.size();
- Geom::Point Vtemp[sz][sz];
+
+ Geom::Point **Vtemp = new Geom::Point* [sz];
+
+ for (unsigned int i = 0; i < sz; ++i) {
+ Vtemp[i] = new Geom::Point[sz];
+ }
/* Copy control points */
std::copy(p.begin(), p.end(), Vtemp[0]);
@@ -82,6 +87,11 @@ void split(vector<Point> const &p, double t,
left[j] = Vtemp[j][0];
for (unsigned j = 0; j < sz; j++)
right[j] = Vtemp[sz-1-j][j];
+
+ for (unsigned int i = 0; i < sz; ++i)
+ delete[] Vtemp[i];
+
+ delete[] Vtemp;
}
diff --git a/src/2geom/recursive-bezier-intersection.cpp b/src/2geom/recursive-bezier-intersection.cpp
index b4c81e08e..7db0438a7 100644
--- a/src/2geom/recursive-bezier-intersection.cpp
+++ b/src/2geom/recursive-bezier-intersection.cpp
@@ -81,7 +81,11 @@ const double INV_EPS = (1L<<14);
*/
void OldBezier::split(double t, OldBezier &left, OldBezier &right) const {
const unsigned sz = p.size();
- Geom::Point Vtemp[sz][sz];
+
+ Geom::Point **Vtemp = new Geom::Point* [sz];
+
+ for (unsigned int i = 0; i < sz; ++i)
+ Vtemp[i] = new Geom::Point[sz];
/* Copy control points */
std::copy(p.begin(), p.end(), Vtemp[0]);
@@ -99,6 +103,11 @@ void OldBezier::split(double t, OldBezier &left, OldBezier &right) const {
left.p[j] = Vtemp[j][0];
for (unsigned j = 0; j < sz; j++)
right.p[j] = Vtemp[sz-1-j][j];
+
+ for (unsigned int i = 0; i < sz; ++i)
+ delete[] Vtemp[i];
+
+ delete[] Vtemp;
}
#if 0
diff --git a/src/2geom/solve-bezier-parametric.cpp b/src/2geom/solve-bezier-parametric.cpp
index 76cf65e17..ed693c584 100644
--- a/src/2geom/solve-bezier-parametric.cpp
+++ b/src/2geom/solve-bezier-parametric.cpp
@@ -68,13 +68,20 @@ find_parametric_bezier_roots(Geom::Point const *w, /* The control points */
break;
}
- /* Otherwise, solve recursively after subdividing control polygon */
- Geom::Point Left[degree+1], /* New left and right */
- Right[degree+1]; /* control polygons */
+ /*
+ * Otherwise, solve recursively after subdividing control polygon
+ * New left and right control polygons
+ */
+ Geom::Point *Left = new Geom::Point[degree+1];
+ Geom::Point *Right = new Geom::Point[degree+1];
+
Bezier(w, degree, 0.5, Left, Right);
total_subs ++;
find_parametric_bezier_roots(Left, degree, solutions, depth+1);
find_parametric_bezier_roots(Right, degree, solutions, depth+1);
+
+ delete[] Left;
+ delete[] Right;
}
@@ -191,7 +198,10 @@ Bezier(Geom::Point const *V, /* Control pts */
Geom::Point *Left, /* RETURN left half ctl pts */
Geom::Point *Right) /* RETURN right half ctl pts */
{
- Geom::Point Vtemp[degree+1][degree+1];
+ Geom::Point **Vtemp = new Geom::Point* [degree+1];
+
+ for (unsigned int i = 0; i < degree+1; ++i)
+ Vtemp[i] = new Geom::Point[degree+1];
/* Copy control points */
std::copy(V, V+degree+1, Vtemp[0]);
@@ -208,7 +218,14 @@ Bezier(Geom::Point const *V, /* Control pts */
for (unsigned j = 0; j <= degree; j++)
Right[j] = Vtemp[degree-j][j];
- return (Vtemp[degree][0]);
+ Geom::Point return_value = Vtemp[degree][0];
+
+ for (unsigned int i = 0; i < degree+1; ++i)
+ delete[] Vtemp[i];
+
+ delete[] Vtemp;
+
+ return return_value;
}
};
diff --git a/src/arc-context.h b/src/arc-context.h
index 46a6e1dce..3e4f5412d 100644
--- a/src/arc-context.h
+++ b/src/arc-context.h
@@ -27,9 +27,6 @@
#define SP_IS_ARC_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), SP_TYPE_ARC_CONTEXT))
#define SP_IS_ARC_CONTEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SP_TYPE_ARC_CONTEXT))
-class SPArcContext;
-class SPArcContextClass;
-
struct SPArcContext : public SPEventContext {
SPItem *item;
Geom::Point center;
diff --git a/src/box3d-context.h b/src/box3d-context.h
index ccf0ef712..70ff87ad1 100644
--- a/src/box3d-context.h
+++ b/src/box3d-context.h
@@ -27,9 +27,6 @@
#define SP_IS_BOX3D_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_BOX3D_CONTEXT))
#define SP_IS_BOX3D_CONTEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_BOX3D_CONTEXT))
-class Box3DContext;
-class Box3DContextClass;
-
struct Box3DContext : public SPEventContext {
SPItem *item;
Geom::Point center;
diff --git a/src/box3d-side.h b/src/box3d-side.h
index ed4972e29..dee775fca 100644
--- a/src/box3d-side.h
+++ b/src/box3d-side.h
@@ -23,9 +23,7 @@
#define SP_IS_BOX3D_SIDE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_BOX3D_SIDE))
class SPBox3D;
-class Box3DSide;
-class Box3DSideClass;
-class Persp3D;
+struct Persp3D;
// FIXME: Would it be better to inherit from SPPath instead?
struct Box3DSide : public SPPolygon {
diff --git a/src/box3d.h b/src/box3d.h
index 5dbf0cf5e..320edadf4 100644
--- a/src/box3d.h
+++ b/src/box3d.h
@@ -26,8 +26,7 @@
#define SP_IS_BOX3D(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_BOX3D))
#define SP_IS_BOX3D_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_BOX3D))
-class Box3DSide;
-class Persp3D;
+struct Persp3D;
class Persp3DReference;
class SPBox3D : public SPGroup {
diff --git a/src/cms-system.h b/src/cms-system.h
index c528deb94..ecaba956e 100644
--- a/src/cms-system.h
+++ b/src/cms-system.h
@@ -15,7 +15,7 @@ class SPDocument;
namespace Inkscape {
-class ColorProfile;
+struct ColorProfile;
class CMSSystem {
public:
diff --git a/src/color-profile.cpp b/src/color-profile.cpp
index 42b6e86dd..fe663957c 100644
--- a/src/color-profile.cpp
+++ b/src/color-profile.cpp
@@ -103,6 +103,8 @@ extern guint update_in_progress;
static SPObjectClass *cprof_parent_class;
+namespace Inkscape {
+
class ColorProfileImpl {
public:
#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
@@ -129,10 +131,6 @@ public:
#endif // defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
};
-
-
-namespace Inkscape {
-
#if defined(HAVE_LIBLCMS1) || defined(HAVE_LIBLCMS2)
cmsColorSpaceSignature asICColorSpaceSig(ColorSpaceSig const & sig)
{
diff --git a/src/common-context.h b/src/common-context.h
index ae0f398b2..8903be391 100644
--- a/src/common-context.h
+++ b/src/common-context.h
@@ -29,12 +29,8 @@
#define SP_IS_COMMON_CONTEXT(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), SP_TYPE_COMMON_CONTEXT))
#define SP_IS_COMMON_CONTEXT_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE((k), SP_TYPE_COMMON_CONTEXT))
-class SPCommonContext;
-class SPCommonContextClass;
-
#define SAMPLING_SIZE 8 /* fixme: ?? */
-
struct SPCommonContext : public SPEventContext {
/** accumulated shape which ultimately goes in svg:path */
SPCurve *accumulated;
diff --git a/src/composite-undo-stack-observer.h b/src/composite-undo-stack-observer.h
index c34ab7234..669c39a86 100644
--- a/src/composite-undo-stack-observer.h
+++ b/src/composite-undo-stack-observer.h
@@ -18,7 +18,7 @@
namespace Inkscape {
-class Event;
+struct Event;
/**
* Aggregates UndoStackObservers for management and triggering in an SPDocument's undo/redo
diff --git a/src/connector-context.h b/src/connector-context.h
index e157bbf50..597feac38 100644
--- a/src/connector-context.h
+++ b/src/connector-context.h
@@ -27,7 +27,7 @@
#define SP_IS_CONNECTOR_CONTEXT_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE((k), SP_TYPE_CONNECTOR_CONTEXT))
struct SPKnot;
-struct SPCurve;
+class SPCurve;
namespace Inkscape
{
diff --git a/src/desktop-events.h b/src/desktop-events.h
index cac7e089f..7123ce91b 100644
--- a/src/desktop-events.h
+++ b/src/desktop-events.h
@@ -17,7 +17,7 @@
#include <gtk/gtk.h>
class SPDesktop;
-class SPDesktopWidget;
+struct SPDesktopWidget;
struct SPCanvasItem;
/* Item handlers */
diff --git a/src/desktop-handles.h b/src/desktop-handles.h
index 6bf6f87d2..cca929369 100644
--- a/src/desktop-handles.h
+++ b/src/desktop-handles.h
@@ -16,8 +16,8 @@
class SPDesktop;
class SPDocument;
-class SPEventContext;
-class SPNamedView;
+struct SPEventContext;
+struct SPNamedView;
struct SPCanvas;
struct SPCanvasGroup;
struct SPCanvasItem;
diff --git a/src/desktop-style.h b/src/desktop-style.h
index 81485420b..47575de75 100644
--- a/src/desktop-style.h
+++ b/src/desktop-style.h
@@ -16,13 +16,13 @@
#include <glib.h>
class ColorRGBA;
-struct SPCSSAttr;
+class SPCSSAttr;
class SPDesktop;
class SPObject;
struct SPStyle;
namespace Inkscape {
namespace XML {
-struct Node;
+class Node;
}
}
namespace Glib { class ustring; }
diff --git a/src/desktop.h b/src/desktop.h
index 27176868f..56de56c65 100644
--- a/src/desktop.h
+++ b/src/desktop.h
@@ -61,7 +61,7 @@ struct _GdkEventWindowState;
typedef struct _GdkEventWindowState GdkEventWindowState;
namespace Inkscape {
- class Application;
+ struct Application;
class MessageContext;
class Selection;
class ObjectHierarchy;
@@ -77,7 +77,7 @@ namespace Inkscape {
}
namespace View {
- class EditWidgetInterface;
+ struct EditWidgetInterface;
}
}
namespace Whiteboard {
diff --git a/src/dialogs/dialog-events.h b/src/dialogs/dialog-events.h
index 5ba2d62c9..623058282 100644
--- a/src/dialogs/dialog-events.h
+++ b/src/dialogs/dialog-events.h
@@ -30,7 +30,7 @@ class Entry;
class SPDesktop;
namespace Inkscape {
-class Application;
+struct Application;
} // namespace Inkscape
typedef struct {
diff --git a/src/display/canvas-axonomgrid.h b/src/display/canvas-axonomgrid.h
index 0e24d3f56..f58ea3aca 100644
--- a/src/display/canvas-axonomgrid.h
+++ b/src/display/canvas-axonomgrid.h
@@ -12,7 +12,7 @@
#include "line-snapper.h"
#include "canvas-grid.h"
-class SPCanvasBuf;
+struct SPCanvasBuf;
class SPDesktop;
struct SPNamedView;
diff --git a/src/display/canvas-bpath.h b/src/display/canvas-bpath.h
index f0520f012..72eca6eeb 100644
--- a/src/display/canvas-bpath.h
+++ b/src/display/canvas-bpath.h
@@ -22,7 +22,7 @@
struct SPCanvasBPath;
struct SPCanvasBPathClass;
struct SPCanvasGroup;
-struct SPCurve;
+class SPCurve;
#define SP_TYPE_CANVAS_BPATH (sp_canvas_bpath_get_type ())
#define SP_CANVAS_BPATH(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SP_TYPE_CANVAS_BPATH, SPCanvasBPath))
diff --git a/src/display/drawing-group.h b/src/display/drawing-group.h
index 974b3c977..775fec8c4 100644
--- a/src/display/drawing-group.h
+++ b/src/display/drawing-group.h
@@ -14,7 +14,7 @@
#include "display/drawing-item.h"
-class SPStyle;
+struct SPStyle;
namespace Inkscape {
diff --git a/src/display/drawing-item.h b/src/display/drawing-item.h
index 810a61d9d..4a516512b 100644
--- a/src/display/drawing-item.h
+++ b/src/display/drawing-item.h
@@ -20,7 +20,7 @@
#include <2geom/rect.h>
#include <2geom/affine.h>
-class SPStyle;
+struct SPStyle;
namespace Inkscape {
diff --git a/src/display/drawing-shape.h b/src/display/drawing-shape.h
index ce9bed2eb..52496d86e 100644
--- a/src/display/drawing-shape.h
+++ b/src/display/drawing-shape.h
@@ -15,7 +15,7 @@
#include "display/drawing-item.h"
#include "display/nr-style.h"
-class SPStyle;
+struct SPStyle;
class SPCurve;
namespace Inkscape {
diff --git a/src/display/drawing-text.h b/src/display/drawing-text.h
index 929d2bf2d..79b1b097c 100644
--- a/src/display/drawing-text.h
+++ b/src/display/drawing-text.h
@@ -15,7 +15,7 @@
#include "display/drawing-group.h"
#include "display/nr-style.h"
-class SPStyle;
+struct SPStyle;
class font_instance;
namespace Inkscape {
diff --git a/src/display/guideline.h b/src/display/guideline.h
index 164244c46..2d9a87d9b 100644
--- a/src/display/guideline.h
+++ b/src/display/guideline.h
@@ -21,7 +21,7 @@
#define SP_GUIDELINE(o) (G_TYPE_CHECK_INSTANCE_CAST((o), SP_TYPE_GUIDELINE, SPGuideLine))
#define SP_IS_GUIDELINE(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), SP_TYPE_GUIDELINE))
-class SPCtrlPoint;
+struct SPCtrlPoint;
struct SPGuideLine {
SPCanvasItem item;
diff --git a/src/display/nr-filter-diffuselighting.h b/src/display/nr-filter-diffuselighting.h
index 315bf9f48..15cc8e1ff 100644
--- a/src/display/nr-filter-diffuselighting.h
+++ b/src/display/nr-filter-diffuselighting.h
@@ -19,10 +19,10 @@
#include "display/nr-filter-slot.h"
#include "display/nr-filter-units.h"
-class SPFeDistantLight;
-class SPFePointLight;
-class SPFeSpotLight;
-class SVGICCColor;
+struct SPFeDistantLight;
+struct SPFePointLight;
+struct SPFeSpotLight;
+struct SVGICCColor;
namespace Inkscape {
namespace Filters {
diff --git a/src/display/nr-filter-flood.h b/src/display/nr-filter-flood.h
index 8568502ff..9a968047d 100644
--- a/src/display/nr-filter-flood.h
+++ b/src/display/nr-filter-flood.h
@@ -14,7 +14,7 @@
#include "display/nr-filter-primitive.h"
-class SVGICCColor;
+struct SVGICCColor;
namespace Inkscape {
namespace Filters {
diff --git a/src/display/nr-filter-primitive.h b/src/display/nr-filter-primitive.h
index 214b2cfc5..94bd6abb0 100644
--- a/src/display/nr-filter-primitive.h
+++ b/src/display/nr-filter-primitive.h
@@ -16,7 +16,7 @@
#include "display/nr-filter-types.h"
#include "svg/svg-length.h"
-class SPStyle;
+struct SPStyle;
namespace Inkscape {
namespace Filters {
diff --git a/src/display/nr-filter-specularlighting.h b/src/display/nr-filter-specularlighting.h
index 4f8c2d112..0d1c0644f 100644
--- a/src/display/nr-filter-specularlighting.h
+++ b/src/display/nr-filter-specularlighting.h
@@ -17,10 +17,10 @@
#include "display/nr-light-types.h"
#include "display/nr-filter-primitive.h"
-class SPFeDistantLight;
-class SPFePointLight;
-class SPFeSpotLight;
-class SVGICCColor;
+struct SPFeDistantLight;
+struct SPFePointLight;
+struct SPFeSpotLight;
+struct SVGICCColor;
namespace Inkscape {
namespace Filters {
diff --git a/src/display/nr-style.h b/src/display/nr-style.h
index ce154cec0..80547c43e 100644
--- a/src/display/nr-style.h
+++ b/src/display/nr-style.h
@@ -16,9 +16,9 @@
#include <2geom/rect.h>
#include "color.h"
-class SPColor;
-class SPPaintServer;
-class SPStyle;
+struct SPPaintServer;
+struct SPStyle;
+
namespace Inkscape {
class DrawingContext;
}
diff --git a/src/display/nr-svgfonts.h b/src/display/nr-svgfonts.h
index 6138e2fbb..1101f93f2 100644
--- a/src/display/nr-svgfonts.h
+++ b/src/display/nr-svgfonts.h
@@ -18,8 +18,8 @@
class SvgFont;
struct SPFont;
-class SPGlyph;
-class SPMissingGlyph;
+struct SPGlyph;
+struct SPMissingGlyph;
struct _GdkEventExpose;
typedef _GdkEventExpose GdkEventExpose;
diff --git a/src/display/sp-ctrlcurve.h b/src/display/sp-ctrlcurve.h
index 15de20161..90936185c 100644
--- a/src/display/sp-ctrlcurve.h
+++ b/src/display/sp-ctrlcurve.h
@@ -17,7 +17,7 @@
#include "display/sp-ctrlline.h"
-struct SPItem;
+class SPItem;
#define SP_TYPE_CTRLCURVE (SPCtrlCurve::getType())
#define SP_CTRLCURVE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SP_TYPE_CTRLCURVE, SPCtrlCurve))
diff --git a/src/document-subset.h b/src/document-subset.h
index 5f87e6429..298b7872d 100644
--- a/src/document-subset.h
+++ b/src/document-subset.h
@@ -51,7 +51,7 @@ private:
void _remove(SPObject *obj, bool subtree);
- class Relations;
+ struct Relations;
Relations *_relations;
};
diff --git a/src/document-undo.h b/src/document-undo.h
index 087e12b5a..f19ba9bb2 100644
--- a/src/document-undo.h
+++ b/src/document-undo.h
@@ -7,7 +7,7 @@ class SPDesktop;
namespace Inkscape {
-class Application;
+struct Application;
class DocumentUndo
{
diff --git a/src/document.h b/src/document.h
index ca709a8b6..606a83be8 100644
--- a/src/document.h
+++ b/src/document.h
@@ -31,7 +31,6 @@ namespace Avoid {
class Router;
}
-struct SPDesktop;
class SPItem;
class SPObject;
struct SPGroup;
@@ -45,14 +44,14 @@ namespace Inkscape {
class EventLog;
class ProfileManager;
namespace XML {
- class Document;
+ struct Document;
class Node;
}
}
class SPDefs;
class SP3DBox;
-class Persp3D;
+struct Persp3D;
class Persp3DImpl;
class SPItemCtx;
@@ -60,7 +59,7 @@ namespace Proj {
class TransfMat3x4;
}
-class SPDocumentPrivate;
+struct SPDocumentPrivate;
/// Typed SVG document implementation.
class SPDocument : public Inkscape::GC::Managed<>,
diff --git a/src/dom/events.h b/src/dom/events.h
index 59d83afcf..e62c5d420 100644
--- a/src/dom/events.h
+++ b/src/dom/events.h
@@ -66,7 +66,6 @@ typedef dom::NodePtr NodePtr ;
//forward declarations
-class Event;
class EventTarget;
class EventListener;
class DocumentEvent;
diff --git a/src/draw-anchor.h b/src/draw-anchor.h
index fc3ebaffc..89ff8b180 100644
--- a/src/draw-anchor.h
+++ b/src/draw-anchor.h
@@ -9,7 +9,7 @@
#include <2geom/point.h>
struct SPDrawContext;
-struct SPCurve;
+class SPCurve;
struct SPCanvasItem;
/// The drawing anchor.
diff --git a/src/dropper-context.h b/src/dropper-context.h
index 68ae3df07..be4b543ae 100644
--- a/src/dropper-context.h
+++ b/src/dropper-context.h
@@ -20,9 +20,6 @@ G_BEGIN_DECLS
#define SP_DROPPER_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SP_TYPE_DROPPER_CONTEXT, SPDropperContext))
#define SP_IS_DROPPER_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_DROPPER_CONTEXT))
-class SPDropperContext;
-class SPDropperContextClass;
-
enum {
SP_DROPPER_PICK_VISIBLE,
SP_DROPPER_PICK_ACTUAL
diff --git a/src/dyna-draw-context.h b/src/dyna-draw-context.h
index af63bf653..8509e450b 100644
--- a/src/dyna-draw-context.h
+++ b/src/dyna-draw-context.h
@@ -27,9 +27,6 @@
#define SP_IS_DYNA_DRAW_CONTEXT(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), SP_TYPE_DYNA_DRAW_CONTEXT))
#define SP_IS_DYNA_DRAW_CONTEXT_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE((k), SP_TYPE_DYNA_DRAW_CONTEXT))
-class SPDynaDrawContext;
-class SPDynaDrawContextClass;
-
#define DDC_MIN_PRESSURE 0.0
#define DDC_MAX_PRESSURE 1.0
#define DDC_DEFAULT_PRESSURE 1.0
diff --git a/src/eraser-context.h b/src/eraser-context.h
index 7c147c32f..bc4268aef 100644
--- a/src/eraser-context.h
+++ b/src/eraser-context.h
@@ -29,9 +29,6 @@ G_BEGIN_DECLS
#define SP_IS_ERASER_CONTEXT(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), SP_TYPE_ERASER_CONTEXT))
#define SP_IS_ERASER_CONTEXT_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE((k), SP_TYPE_ERASER_CONTEXT))
-class SPEraserContext;
-class SPEraserContextClass;
-
#define ERC_MIN_PRESSURE 0.0
#define ERC_MAX_PRESSURE 1.0
#define ERC_DEFAULT_PRESSURE 1.0
diff --git a/src/event-context.h b/src/event-context.h
index 9936aa668..e97a8ad8f 100644
--- a/src/event-context.h
+++ b/src/event-context.h
@@ -19,7 +19,7 @@
#include "2geom/forward.h"
#include "preferences.h"
-struct GrDrag;
+class GrDrag;
class SPDesktop;
class SPItem;
class ShapeEditor;
diff --git a/src/extension/effect.h b/src/extension/effect.h
index 6616a23ec..193b90a97 100644
--- a/src/extension/effect.h
+++ b/src/extension/effect.h
@@ -20,7 +20,7 @@ namespace Gtk {
class VBox;
}
-struct SPDocument;
+class SPDocument;
namespace Inkscape {
diff --git a/src/extension/extension.h b/src/extension/extension.h
index dcabb3df7..b6b4c51ed 100644
--- a/src/extension/extension.h
+++ b/src/extension/extension.h
@@ -71,7 +71,7 @@ namespace Gtk {
#define INKSCAPE_EXTENSION_NS_NC "extension"
#define INKSCAPE_EXTENSION_NS "extension:"
-struct SPDocument;
+class SPDocument;
namespace Inkscape {
namespace Extension {
diff --git a/src/extension/implementation/implementation.h b/src/extension/implementation/implementation.h
index fb323cd78..9d679982a 100644
--- a/src/extension/implementation/implementation.h
+++ b/src/extension/implementation/implementation.h
@@ -29,7 +29,7 @@ namespace Gtk {
}
class SPDocument;
-class SPStyle;
+struct SPStyle;
namespace Inkscape {
diff --git a/src/extension/internal/cairo-render-context.h b/src/extension/internal/cairo-render-context.h
index 94c7bb294..8829940c6 100644
--- a/src/extension/internal/cairo-render-context.h
+++ b/src/extension/internal/cairo-render-context.h
@@ -29,7 +29,7 @@
#include <cairo.h>
class SPClipPath;
-class SPMask;
+struct SPMask;
namespace Inkscape {
namespace Extension {
@@ -37,8 +37,8 @@ namespace Internal {
class CairoRenderer;
class CairoRenderContext;
-class CairoRenderState;
-class CairoGlyphInfo;
+struct CairoRenderState;
+struct CairoGlyphInfo;
// Holds info for rendering a glyph
struct CairoGlyphInfo {
diff --git a/src/extension/internal/cairo-renderer.h b/src/extension/internal/cairo-renderer.h
index db3068fed..c1482d82e 100644
--- a/src/extension/internal/cairo-renderer.h
+++ b/src/extension/internal/cairo-renderer.h
@@ -28,7 +28,7 @@
#include <cairo.h>
class SPClipPath;
-class SPMask;
+struct SPMask;
namespace Inkscape {
namespace Extension {
diff --git a/src/extension/internal/filter/filter.h b/src/extension/internal/filter/filter.h
index 1e8a3be0f..9aaa84aec 100644
--- a/src/extension/internal/filter/filter.h
+++ b/src/extension/internal/filter/filter.h
@@ -19,7 +19,7 @@
namespace Inkscape {
namespace XML {
- class Document;
+ struct Document;
}
namespace Extension {
diff --git a/src/extension/internal/pdfinput/pdf-input.cpp b/src/extension/internal/pdfinput/pdf-input.cpp
index 531cda20a..b04c9782f 100644
--- a/src/extension/internal/pdfinput/pdf-input.cpp
+++ b/src/extension/internal/pdfinput/pdf-input.cpp
@@ -32,6 +32,7 @@
#endif
#include <gtkmm/alignment.h>
+#include <gtkmm/checkbutton.h>
#include <gtkmm/comboboxtext.h>
#include <gtkmm/drawingarea.h>
#include <gtkmm/frame.h>
diff --git a/src/extension/internal/pdfinput/svg-builder.h b/src/extension/internal/pdfinput/svg-builder.h
index a550565d6..610822959 100644
--- a/src/extension/internal/pdfinput/svg-builder.h
+++ b/src/extension/internal/pdfinput/svg-builder.h
@@ -19,7 +19,7 @@
class SPDocument;
namespace Inkscape {
namespace XML {
- class Document;
+ struct Document;
class Node;
}
}
@@ -31,10 +31,10 @@ namespace Inkscape {
#include "CharTypes.h"
class GooString;
class Function;
-struct GfxState;
-class GfxColor;
+class GfxState;
+struct GfxColor;
class GfxColorSpace;
-class GfxRGB;
+struct GfxRGB;
class GfxPath;
class GfxPattern;
class GfxTilingPattern;
diff --git a/src/extension/output.h b/src/extension/output.h
index 5f6785b8b..c5b1beb45 100644
--- a/src/extension/output.h
+++ b/src/extension/output.h
@@ -15,7 +15,7 @@
#include <gtk/gtk.h>
#include "extension.h"
-struct SPDocument;
+class SPDocument;
namespace Inkscape {
namespace Extension {
diff --git a/src/file.h b/src/file.h
index 6ef60469a..b173ca58c 100644
--- a/src/file.h
+++ b/src/file.h
@@ -18,13 +18,13 @@
#include <glibmm/ustring.h>
#include "ui/dialog/ocaldialogs.h"
-struct SPDesktop;
-struct SPDocument;
+class SPDesktop;
+class SPDocument;
class SPObject;
namespace Inkscape {
namespace Extension {
- struct Extension;
+ class Extension;
}
}
diff --git a/src/filter-chemistry.h b/src/filter-chemistry.h
index 2ac3ebe8f..b00e33bcc 100644
--- a/src/filter-chemistry.h
+++ b/src/filter-chemistry.h
@@ -19,8 +19,8 @@
#include "display/nr-filter-types.h"
class SPDocument;
-class SPFilter;
-class SPFilterPrimitive;
+struct SPFilter;
+struct SPFilterPrimitive;
class SPItem;
class SPObject;
diff --git a/src/filters/blend.h b/src/filters/blend.h
index e7fc410e7..5d65c92fc 100644
--- a/src/filters/blend.h
+++ b/src/filters/blend.h
@@ -22,8 +22,6 @@
#define SP_IS_FEBLEND(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), SP_TYPE_FEBLEND))
#define SP_IS_FEBLEND_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SP_TYPE_FEBLEND))
-class SPFeBlendClass;
-
struct SPFeBlend : public SPFilterPrimitive {
Inkscape::Filters::FilterBlendMode blend_mode;
int in2;
diff --git a/src/filters/colormatrix.h b/src/filters/colormatrix.h
index 8eb750ac1..558f01070 100644
--- a/src/filters/colormatrix.h
+++ b/src/filters/colormatrix.h
@@ -21,8 +21,6 @@
#define SP_IS_FECOLORMATRIX(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), SP_TYPE_FECOLORMATRIX))
#define SP_IS_FECOLORMATRIX_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SP_TYPE_FECOLORMATRIX))
-class SPFeColorMatrixClass;
-
struct SPFeColorMatrix : public SPFilterPrimitive {
Inkscape::Filters::FilterColorMatrixType type;
gdouble value;
diff --git a/src/filters/componenttransfer-funcnode.h b/src/filters/componenttransfer-funcnode.h
index d81e50577..ae1b2f8bb 100644
--- a/src/filters/componenttransfer-funcnode.h
+++ b/src/filters/componenttransfer-funcnode.h
@@ -34,11 +34,6 @@
#define SP_IS_FEFUNCNODE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SP_TYPE_FEFUNCNODE))
-/* Component Transfer funcNode class */
-
-class SPFeFuncNode;
-class SPFeFuncNodeClass;
-
struct SPFeFuncNode : public SPObject {
Inkscape::Filters::FilterComponentTransferType type;
std::vector<double> tableValues;
@@ -49,6 +44,7 @@ struct SPFeFuncNode : public SPObject {
double offset;
};
+/* Component Transfer funcNode class */
struct SPFeFuncNodeClass {
SPObjectClass parent_class;
};
diff --git a/src/filters/componenttransfer.h b/src/filters/componenttransfer.h
index 2df64009f..deb6fb740 100644
--- a/src/filters/componenttransfer.h
+++ b/src/filters/componenttransfer.h
@@ -24,8 +24,6 @@ namespace Filters {
class FilterComponentTransfer;
} }
-class SPFeComponentTransferClass;
-
struct SPFeComponentTransfer : public SPFilterPrimitive {
Inkscape::Filters::FilterComponentTransfer *renderer;
};
diff --git a/src/filters/composite.h b/src/filters/composite.h
index 3eb62716f..4f2d1ff69 100644
--- a/src/filters/composite.h
+++ b/src/filters/composite.h
@@ -32,8 +32,6 @@ enum FeCompositeOperator {
COMPOSITE_ENDOPERATOR
};
-class SPFeCompositeClass;
-
struct SPFeComposite : public SPFilterPrimitive {
FeCompositeOperator composite_operator;
double k1, k2, k3, k4;
diff --git a/src/filters/convolvematrix.h b/src/filters/convolvematrix.h
index 4c5261e05..cb2fbfb8d 100644
--- a/src/filters/convolvematrix.h
+++ b/src/filters/convolvematrix.h
@@ -24,8 +24,6 @@
#define SP_IS_FECONVOLVEMATRIX(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), SP_TYPE_FECONVOLVEMATRIX))
#define SP_IS_FECONVOLVEMATRIX_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SP_TYPE_FECONVOLVEMATRIX))
-class SPFeConvolveMatrixClass;
-
struct SPFeConvolveMatrix : public SPFilterPrimitive {
NumberOptNumber order;
std::vector<gdouble> kernelMatrix;
diff --git a/src/filters/diffuselighting.h b/src/filters/diffuselighting.h
index 99dccb394..1572385b9 100644
--- a/src/filters/diffuselighting.h
+++ b/src/filters/diffuselighting.h
@@ -21,15 +21,13 @@
#define SP_IS_FEDIFFUSELIGHTING(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), SP_TYPE_FEDIFFUSELIGHTING))
#define SP_IS_FEDIFFUSELIGHTING_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SP_TYPE_FEDIFFUSELIGHTING))
-class SVGICCColor;
+struct SVGICCColor;
namespace Inkscape {
namespace Filters {
class FilterDiffuseLighting;
} }
-class SPFeDiffuseLightingClass;
-
struct SPFeDiffuseLighting : public SPFilterPrimitive {
gfloat surfaceScale;
guint surfaceScale_set : 1;
diff --git a/src/filters/displacementmap.h b/src/filters/displacementmap.h
index 6232f0937..93dc86d27 100644
--- a/src/filters/displacementmap.h
+++ b/src/filters/displacementmap.h
@@ -28,8 +28,6 @@ enum FilterDisplacementMapChannelSelector {
DISPLACEMENTMAP_CHANNEL_ENDTYPE
};
-class SPFeDisplacementMapClass;
-
struct SPFeDisplacementMap : public SPFilterPrimitive {
int in2;
double scale;
diff --git a/src/filters/distantlight.h b/src/filters/distantlight.h
index a68746334..b1febf5d3 100644
--- a/src/filters/distantlight.h
+++ b/src/filters/distantlight.h
@@ -25,10 +25,6 @@
/* Distant light class */
-
-class SPFeDistantLight;
-class SPFeDistantLightClass;
-
struct SPFeDistantLight : public SPObject {
/** azimuth attribute */
diff --git a/src/filters/flood.h b/src/filters/flood.h
index d60321689..ab9f061d6 100644
--- a/src/filters/flood.h
+++ b/src/filters/flood.h
@@ -23,8 +23,6 @@ G_BEGIN_DECLS
#define SP_IS_FEFLOOD(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), SP_TYPE_FEFLOOD))
#define SP_IS_FEFLOOD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SP_TYPE_FEFLOOD))
-class SPFeFloodClass;
-
struct SPFeFlood : public SPFilterPrimitive {
guint32 color;
SVGICCColor *icc;
diff --git a/src/filters/gaussian-blur.h b/src/filters/gaussian-blur.h
index 417f8a6f4..8929627ba 100644
--- a/src/filters/gaussian-blur.h
+++ b/src/filters/gaussian-blur.h
@@ -21,14 +21,12 @@
#define SP_IS_GAUSSIANBLUR(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), SP_TYPE_GAUSSIANBLUR))
#define SP_IS_GAUSSIANBLUR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SP_TYPE_GAUSSIANBLUR))
-/* GaussianBlur base class */
-class SPGaussianBlurClass;
-
struct SPGaussianBlur : public SPFilterPrimitive {
/** stdDeviation attribute */
NumberOptNumber stdDeviation;
};
+/* GaussianBlur base class */
struct SPGaussianBlurClass {
SPFilterPrimitiveClass parent_class;
};
diff --git a/src/filters/image.h b/src/filters/image.h
index b4081602a..a96e650b7 100644
--- a/src/filters/image.h
+++ b/src/filters/image.h
@@ -24,8 +24,6 @@
#define SP_IS_FEIMAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), SP_TYPE_FEIMAGE))
#define SP_IS_FEIMAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SP_TYPE_FEIMAGE))
-class SPFeImageClass;
-
struct SPFeImage : public SPFilterPrimitive {
gchar *href;
diff --git a/src/filters/merge.h b/src/filters/merge.h
index 3243073ca..40a9bb848 100644
--- a/src/filters/merge.h
+++ b/src/filters/merge.h
@@ -18,8 +18,6 @@
#define SP_IS_FEMERGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), SP_TYPE_FEMERGE))
#define SP_IS_FEMERGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SP_TYPE_FEMERGE))
-class SPFeMergeClass;
-
struct SPFeMerge : public SPFilterPrimitive {
};
diff --git a/src/filters/mergenode.h b/src/filters/mergenode.h
index 8352632a6..edb35faec 100644
--- a/src/filters/mergenode.h
+++ b/src/filters/mergenode.h
@@ -21,9 +21,6 @@
#define SP_FEMERGENODE(o) (G_TYPE_CHECK_INSTANCE_CAST((o), SP_TYPE_FEMERGENODE, SPFeMergeNode))
#define SP_IS_FEMERGENODE(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), SP_TYPE_FEMERGENODE))
-class SPFeMergeNode;
-class SPFeMergeNodeClass;
-
struct SPFeMergeNode : public SPObject {
int input;
};
diff --git a/src/filters/morphology.h b/src/filters/morphology.h
index b7005a3d9..9084d1b94 100644
--- a/src/filters/morphology.h
+++ b/src/filters/morphology.h
@@ -22,8 +22,6 @@
#define SP_IS_FEMORPHOLOGY(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), SP_TYPE_FEMORPHOLOGY))
#define SP_IS_FEMORPHOLOGY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SP_TYPE_FEMORPHOLOGY))
-class SPFeMorphologyClass;
-
struct SPFeMorphology : public SPFilterPrimitive {
Inkscape::Filters::FilterMorphologyOperator Operator;
NumberOptNumber radius;
diff --git a/src/filters/offset.h b/src/filters/offset.h
index dba7ed8ef..08954a8e4 100644
--- a/src/filters/offset.h
+++ b/src/filters/offset.h
@@ -20,8 +20,6 @@
#define SP_IS_FEOFFSET(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), SP_TYPE_FEOFFSET))
#define SP_IS_FEOFFSET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SP_TYPE_FEOFFSET))
-class SPFeOffsetClass;
-
struct SPFeOffset : public SPFilterPrimitive {
double dx, dy;
};
diff --git a/src/filters/pointlight.h b/src/filters/pointlight.h
index c0b272021..3ec5d5791 100644
--- a/src/filters/pointlight.h
+++ b/src/filters/pointlight.h
@@ -23,12 +23,6 @@
#define SP_IS_FEPOINTLIGHT(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), SP_TYPE_FEPOINTLIGHT))
#define SP_IS_FEPOINTLIGHT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SP_TYPE_FEPOINTLIGHT))
-/* Distant light class */
-
-
-class SPFePointLight;
-class SPFePointLightClass;
-
struct SPFePointLight : public SPObject {
/** x coordinate of the light source */
diff --git a/src/filters/specularlighting.h b/src/filters/specularlighting.h
index 44bd98c6c..4b31eb4c4 100644
--- a/src/filters/specularlighting.h
+++ b/src/filters/specularlighting.h
@@ -23,7 +23,7 @@
#define SP_IS_FESPECULARLIGHTING(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), SP_TYPE_FESPECULARLIGHTING))
#define SP_IS_FESPECULARLIGHTING_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SP_TYPE_FESPECULARLIGHTING))
-class SVGICCColor;
+struct SVGICCColor;
namespace Inkscape {
namespace Filters {
@@ -31,8 +31,6 @@ class FilterSpecularLighting;
}
}
-class SPFeSpecularLightingClass;
-
struct SPFeSpecularLighting : public SPFilterPrimitive {
gfloat surfaceScale;
guint surfaceScale_set : 1;
diff --git a/src/filters/spotlight.h b/src/filters/spotlight.h
index 6e2463c08..1750ca95b 100644
--- a/src/filters/spotlight.h
+++ b/src/filters/spotlight.h
@@ -23,12 +23,6 @@
#define SP_IS_FESPOTLIGHT(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), SP_TYPE_FESPOTLIGHT))
#define SP_IS_FESPOTLIGHT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SP_TYPE_FESPOTLIGHT))
-/* Distant light class */
-
-
-class SPFeSpotLight;
-class SPFeSpotLightClass;
-
struct SPFeSpotLight : public SPObject {
/** x coordinate of the light source */
diff --git a/src/filters/tile.h b/src/filters/tile.h
index a376a6e10..48a552fc8 100644
--- a/src/filters/tile.h
+++ b/src/filters/tile.h
@@ -21,8 +21,6 @@
#define SP_IS_FETILE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SP_TYPE_FETILE))
/* FeTile base class */
-class SPFeTileClass;
-
struct SPFeTile : public SPFilterPrimitive {
};
diff --git a/src/filters/turbulence.h b/src/filters/turbulence.h
index cbc4fb082..bad8315c1 100644
--- a/src/filters/turbulence.h
+++ b/src/filters/turbulence.h
@@ -24,7 +24,6 @@
#define SP_IS_FETURBULENCE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SP_TYPE_FETURBULENCE))
/* FeTurbulence base class */
-class SPFeTurbulenceClass;
struct SPFeTurbulence : public SPFilterPrimitive {
/** TURBULENCE ATTRIBUTES HERE */
diff --git a/src/flood-context.h b/src/flood-context.h
index 0cab0f7c5..3e81cd01e 100644
--- a/src/flood-context.h
+++ b/src/flood-context.h
@@ -29,9 +29,6 @@
#define FLOOD_COLOR_CHANNEL_B 4
#define FLOOD_COLOR_CHANNEL_A 8
-class SPFloodContext;
-class SPFloodContextClass;
-
struct SPFloodContext : public SPEventContext {
SPItem *item;
diff --git a/src/gradient-chemistry.h b/src/gradient-chemistry.h
index 66a8e5281..728874f88 100644
--- a/src/gradient-chemistry.h
+++ b/src/gradient-chemistry.h
@@ -20,6 +20,7 @@
#include "sp-gradient.h"
+class SPCSSAttr;
class SPItem;
/**
@@ -96,8 +97,6 @@ Geom::Point getGradientCoords(SPItem *item, GrPointType point_type, guint point_
SPGradient *sp_item_gradient_get_vector(SPItem *item, Inkscape::PaintTarget fill_or_stroke);
SPGradientSpread sp_item_gradient_get_spread(SPItem *item, Inkscape::PaintTarget fill_or_stroke);
-struct SPCSSAttr;
-
void sp_item_gradient_stop_set_style(SPItem *item, GrPointType point_type, guint point_i, Inkscape::PaintTarget fill_or_stroke, SPCSSAttr *stop);
guint32 sp_item_gradient_stop_query_style(SPItem *item, GrPointType point_type, guint point_i, Inkscape::PaintTarget fill_or_stroke);
void sp_item_gradient_edit_stop(SPItem *item, GrPointType point_type, guint point_i, Inkscape::PaintTarget fill_or_stroke);
diff --git a/src/gradient-context.h b/src/gradient-context.h
index 9c08677ae..464b95ad4 100644
--- a/src/gradient-context.h
+++ b/src/gradient-context.h
@@ -25,9 +25,6 @@
#define SP_IS_GRADIENT_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), SP_TYPE_GRADIENT_CONTEXT))
#define SP_IS_GRADIENT_CONTEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SP_TYPE_GRADIENT_CONTEXT))
-class SPGradientContext;
-class SPGradientContextClass;
-
struct SPGradientContext : public SPEventContext {
Geom::Point origin;
diff --git a/src/gradient-drag.h b/src/gradient-drag.h
index c92a5c22f..2a2465590 100644
--- a/src/gradient-drag.h
+++ b/src/gradient-drag.h
@@ -33,12 +33,12 @@ struct SPKnot;
class SPDesktop;
class SPCSSAttr;
-class SPLinearGradient;
-class SPMeshGradient;
+struct SPLinearGradient;
+struct SPMeshGradient;
class SPItem;
class SPObject;
-class SPRadialGradient;
-class SPStop;
+struct SPRadialGradient;
+struct SPStop;
namespace Inkscape {
class Selection;
diff --git a/src/helper/pixbuf-ops.h b/src/helper/pixbuf-ops.h
index af573277c..44851d388 100644
--- a/src/helper/pixbuf-ops.h
+++ b/src/helper/pixbuf-ops.h
@@ -14,7 +14,7 @@
#include <glib.h>
-struct SPDocument;
+class SPDocument;
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);
diff --git a/src/helper/png-write.h b/src/helper/png-write.h
index a8658ef88..8c04b25dc 100644
--- a/src/helper/png-write.h
+++ b/src/helper/png-write.h
@@ -16,7 +16,7 @@
#include <glib.h>
#include <2geom/forward.h>
-struct SPDocument;
+class SPDocument;
enum ExportResult {
EXPORT_ERROR = 0,
diff --git a/src/inkscape-private.h b/src/inkscape-private.h
index 470a1f5bd..09bcef12b 100644
--- a/src/inkscape-private.h
+++ b/src/inkscape-private.h
@@ -22,7 +22,7 @@
#include "inkscape.h"
-class SPColor;
+struct SPColor;
namespace Inkscape { class Selection; }
GType inkscape_get_type (void);
diff --git a/src/inkscape.cpp b/src/inkscape.cpp
index 449220357..491acd73e 100644
--- a/src/inkscape.cpp
+++ b/src/inkscape.cpp
@@ -91,7 +91,7 @@ enum {
################################*/
namespace Inkscape {
-class ApplicationClass;
+struct ApplicationClass;
}
static void inkscape_class_init (Inkscape::ApplicationClass *klass);
diff --git a/src/inkscape.h b/src/inkscape.h
index 6ab07be86..368c7fa60 100644
--- a/src/inkscape.h
+++ b/src/inkscape.h
@@ -15,15 +15,15 @@
#include <list>
#include <glib.h>
-struct SPDesktop;
-struct SPDocument;
+class SPDesktop;
+class SPDocument;
struct SPEventContext;
namespace Inkscape {
struct Application;
namespace XML {
class Node;
- class Document;
+ struct Document;
}
}
diff --git a/src/knot.h b/src/knot.h
index ec640df3a..4d87d703f 100644
--- a/src/knot.h
+++ b/src/knot.h
@@ -24,8 +24,6 @@
#include "sp-item.h"
class SPDesktop;
-class SPKnot;
-class SPKnotClass;
struct SPCanvasItem;
#define SP_TYPE_KNOT (sp_knot_get_type())
diff --git a/src/knotholder.h b/src/knotholder.h
index 792a0c912..eab981184 100644
--- a/src/knotholder.h
+++ b/src/knotholder.h
@@ -35,7 +35,7 @@ class PowerStrokePointArrayParamKnotHolderEntity;
class KnotHolderEntity;
class SPItem;
class SPDesktop;
-class SPKnot;
+struct SPKnot;
/* fixme: Think how to make callbacks most sensitive (Lauris) */
typedef void (* SPKnotHolderReleasedFunc) (SPItem *item);
diff --git a/src/libnrtype/Layout-TNG-Output.cpp b/src/libnrtype/Layout-TNG-Output.cpp
index e97884f40..8ede0a38e 100644
--- a/src/libnrtype/Layout-TNG-Output.cpp
+++ b/src/libnrtype/Layout-TNG-Output.cpp
@@ -27,7 +27,6 @@ namespace Inkscape {
namespace Extension {
namespace Internal {
class CairoRenderContext;
- class CairoGlyphInfo;
}
}
}
diff --git a/src/libnrtype/Layout-TNG.h b/src/libnrtype/Layout-TNG.h
index f4a09f25b..0f5f08a53 100644
--- a/src/libnrtype/Layout-TNG.h
+++ b/src/libnrtype/Layout-TNG.h
@@ -34,9 +34,9 @@ namespace Inkscape {
using Inkscape::Extension::Internal::CairoRenderContext;
#endif
-class SPStyle;
+struct SPStyle;
class Shape;
-class SPPrintContext;
+struct SPPrintContext;
class SVGLength;
class Path;
class SPCurve;
diff --git a/src/libnrtype/font-lister.cpp b/src/libnrtype/font-lister.cpp
index 712c17915..90900baba 100644
--- a/src/libnrtype/font-lister.cpp
+++ b/src/libnrtype/font-lister.cpp
@@ -2,7 +2,6 @@
# include <config.h>
#endif
-#include <gtkmm.h>
#include <libnrtype/font-instance.h>
#include <libnrtype/TextWrapper.h>
#include <libnrtype/one-glyph.h>
diff --git a/src/libnrtype/font-style-to-pos.h b/src/libnrtype/font-style-to-pos.h
index 41ba6cf72..56eb391c2 100644
--- a/src/libnrtype/font-style-to-pos.h
+++ b/src/libnrtype/font-style-to-pos.h
@@ -3,7 +3,7 @@
#include <libnrtype/nr-type-pos-def.h>
-class SPStyle;
+struct SPStyle;
NRTypePosDef font_style_to_pos(SPStyle const &style);
diff --git a/src/line-geometry.h b/src/line-geometry.h
index dcd157d47..48baad265 100644
--- a/src/line-geometry.h
+++ b/src/line-geometry.h
@@ -19,6 +19,8 @@
#include "document.h"
#include "ui/view/view.h"
+class SPDesktop;
+
namespace Box3D {
class Line {
diff --git a/src/livarot/Path.h b/src/livarot/Path.h
index cd939bf7d..a109298a2 100644
--- a/src/livarot/Path.h
+++ b/src/livarot/Path.h
@@ -14,11 +14,11 @@
#include <2geom/point.h>
struct PathDescr;
-class PathDescrLineTo;
-class PathDescrArcTo;
-class PathDescrCubicTo;
-class PathDescrBezierTo;
-class PathDescrIntermBezierTo;
+struct PathDescrLineTo;
+struct PathDescrArcTo;
+struct PathDescrCubicTo;
+struct PathDescrBezierTo;
+struct PathDescrIntermBezierTo;
struct SPStyle;
diff --git a/src/livarot/Shape.h b/src/livarot/Shape.h
index 1a804a48c..dcd172da2 100644
--- a/src/livarot/Shape.h
+++ b/src/livarot/Shape.h
@@ -21,9 +21,9 @@
class Path;
class FloatLigne;
-struct SweepTree;
-struct SweepTreeList;
-struct SweepEventQueue;
+class SweepTree;
+class SweepTreeList;
+class SweepEventQueue;
enum {
tweak_mode_grow,
diff --git a/src/live_effects/lpeobject-reference.h b/src/live_effects/lpeobject-reference.h
index 571c3b1f1..b1ba1ee4e 100644
--- a/src/live_effects/lpeobject-reference.h
+++ b/src/live_effects/lpeobject-reference.h
@@ -15,11 +15,11 @@
namespace Inkscape {
namespace XML {
-struct Node;
+class Node;
}
}
-struct LivePathEffectObject;
+class LivePathEffectObject;
namespace Inkscape {
diff --git a/src/live_effects/lpeobject.h b/src/live_effects/lpeobject.h
index 3ea1ea9ad..2d04f8842 100644
--- a/src/live_effects/lpeobject.h
+++ b/src/live_effects/lpeobject.h
@@ -15,7 +15,7 @@
namespace Inkscape {
namespace XML {
class Node;
- class Document;
+ struct Document;
}
namespace LivePathEffect {
class Effect;
diff --git a/src/lpe-tool-context.h b/src/lpe-tool-context.h
index 12e4b3838..fb3a5d4e2 100644
--- a/src/lpe-tool-context.h
+++ b/src/lpe-tool-context.h
@@ -24,9 +24,6 @@
#define SP_IS_LPETOOL_CONTEXT(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), SP_TYPE_LPETOOL_CONTEXT))
#define SP_IS_LPETOOL_CONTEXT_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE((k), SP_TYPE_LPETOOL_CONTEXT))
-class SPLPEToolContext;
-class SPLPEToolContextClass;
-
/* 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 e8d2dd9a1..147fafeb8 100644
--- a/src/marker.h
+++ b/src/marker.h
@@ -22,9 +22,7 @@
#define SP_MARKER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SP_TYPE_MARKER, SPMarker))
#define SP_IS_MARKER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), SP_TYPE_MARKER))
-class SPMarker;
-class SPMarkerClass;
-class SPMarkerView;
+struct SPMarkerView;
#include <2geom/rect.h>
#include <2geom/affine.h>
diff --git a/src/measure-context.h b/src/measure-context.h
index baf74d30e..b7673ad0d 100644
--- a/src/measure-context.h
+++ b/src/measure-context.h
@@ -18,9 +18,6 @@
#define SP_MEASURE_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), SP_TYPE_MEASURE_CONTEXT, SPMeasureContext))
#define SP_IS_MEASURE_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), SP_TYPE_MEASURE_CONTEXT))
-class SPMeasureContext;
-class SPMeasureContextClass;
-
struct SPMeasureContext {
SPEventContext event_context;
SPCanvasItem *grabbed;
diff --git a/src/mesh-context.h b/src/mesh-context.h
index ed93e404f..e5d06ec0a 100644
--- a/src/mesh-context.h
+++ b/src/mesh-context.h
@@ -27,9 +27,6 @@
#define SP_IS_MESH_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), SP_TYPE_MESH_CONTEXT))
#define SP_IS_MESH_CONTEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SP_TYPE_MESH_CONTEXT))
-class SPMeshContext;
-class SPMeshContextClass;
-
struct SPMeshContext : public SPEventContext {
Geom::Point origin;
diff --git a/src/persp3d-reference.h b/src/persp3d-reference.h
index 28744b2fa..fa9eca5c9 100644
--- a/src/persp3d-reference.h
+++ b/src/persp3d-reference.h
@@ -19,7 +19,7 @@ class SPObject;
namespace Inkscape {
namespace XML {
-struct Node;
+class Node;
}
}
diff --git a/src/persp3d.h b/src/persp3d.h
index db4971635..25db4787c 100644
--- a/src/persp3d.h
+++ b/src/persp3d.h
@@ -27,7 +27,7 @@
#include "inkscape.h"
class SPBox3D;
-class Box3DContext;
+struct Box3DContext;
class Persp3DImpl {
public:
diff --git a/src/print.h b/src/print.h
index bbf95b833..80d0446fd 100644
--- a/src/print.h
+++ b/src/print.h
@@ -18,7 +18,7 @@ class Window;
}
class SPDocument;
-class SPStyle;
+struct SPStyle;
namespace Inkscape {
namespace Extension {
diff --git a/src/profile-manager.h b/src/profile-manager.h
index be9446c17..9d361f40c 100644
--- a/src/profile-manager.h
+++ b/src/profile-manager.h
@@ -17,7 +17,7 @@ class SPDocument;
namespace Inkscape {
-class ColorProfile;
+struct ColorProfile;
class ProfileManager : public DocumentSubset,
public GC::Finalized
diff --git a/src/rect-context.h b/src/rect-context.h
index b6fbb6854..5b6c5373e 100644
--- a/src/rect-context.h
+++ b/src/rect-context.h
@@ -25,9 +25,6 @@
#define SP_IS_RECT_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_RECT_CONTEXT))
#define SP_IS_RECT_CONTEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_RECT_CONTEXT))
-class SPRectContext;
-class SPRectContextClass;
-
struct SPRectContext : public SPEventContext {
SPItem *item;
Geom::Point center;
diff --git a/src/satisfied-guide-cns.h b/src/satisfied-guide-cns.h
index 27fe043d0..73e1e7e7f 100644
--- a/src/satisfied-guide-cns.h
+++ b/src/satisfied-guide-cns.h
@@ -5,6 +5,7 @@
#include <vector>
#include <sp-item.h>
+class SPDesktop;
class SPGuideConstraint;
void satisfied_guide_cns(SPDesktop const &desktop,
diff --git a/src/select-context.h b/src/select-context.h
index ce2039a2d..a6877f802 100644
--- a/src/select-context.h
+++ b/src/select-context.h
@@ -22,8 +22,6 @@
#define SP_IS_SELECT_CONTEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_SELECT_CONTEXT))
struct SPCanvasItem;
-class SPSelectContext;
-class SPSelectContextClass;
namespace Inkscape {
class MessageContext;
diff --git a/src/selection-chemistry.h b/src/selection-chemistry.h
index 5b35ded09..83dd93bdd 100644
--- a/src/selection-chemistry.h
+++ b/src/selection-chemistry.h
@@ -29,6 +29,7 @@ namespace LivePathEffect {
}
class SPCSSAttr;
+class SPDesktop;
namespace Inkscape {
class SelectionHelper {
diff --git a/src/selection.h b/src/selection.h
index 85e06a5c6..10775dcb5 100644
--- a/src/selection.h
+++ b/src/selection.h
@@ -27,9 +27,10 @@
#include "sp-item.h"
#include "snapped-point.h"
+class SPDesktop;
class SPItem;
class SPBox3D;
-class Persp3D;
+struct Persp3D;
namespace Inkscape {
namespace XML {
diff --git a/src/seltrans-handles.h b/src/seltrans-handles.h
index f625ebd68..14f50d784 100644
--- a/src/seltrans-handles.h
+++ b/src/seltrans-handles.h
@@ -21,7 +21,7 @@ namespace Inkscape
class SelTrans;
}
-class SPSelTransHandle;
+struct SPSelTransHandle;
// request handlers
gboolean sp_sel_trans_scale_request(Inkscape::SelTrans *seltrans,
diff --git a/src/seltrans.h b/src/seltrans.h
index 55c109ed7..effc767e3 100644
--- a/src/seltrans.h
+++ b/src/seltrans.h
@@ -30,7 +30,7 @@ struct SPKnot;
class SPDesktop;
struct SPCanvasItem;
struct SPCtrlLine;
-class SPSelTransHandle;
+struct SPSelTransHandle;
namespace Inkscape
{
diff --git a/src/snap.h b/src/snap.h
index 67af20063..6a87d95cc 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;
-class SPNamedView;
+struct SPNamedView;
/**
* Class to coordinate snapping operations.
diff --git a/src/sp-clippath.h b/src/sp-clippath.h
index a77383c63..17546c6d3 100644
--- a/src/sp-clippath.h
+++ b/src/sp-clippath.h
@@ -21,7 +21,7 @@
#define SP_IS_CLIPPATH(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), SP_TYPE_CLIPPATH))
#define SP_IS_CLIPPATH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SP_TYPE_CLIPPATH))
-class SPClipPathView;
+struct SPClipPathView;
#include "sp-object-group.h"
#include "uri-references.h"
diff --git a/src/sp-conn-end-pair.h b/src/sp-conn-end-pair.h
index 53dd61ccf..9f7f5a5d2 100644
--- a/src/sp-conn-end-pair.h
+++ b/src/sp-conn-end-pair.h
@@ -21,7 +21,7 @@
class SPConnEnd;
-struct SPCurve;
+class SPCurve;
class SPPath;
class SPItem;
class SPObject;
diff --git a/src/sp-desc.h b/src/sp-desc.h
index 8c5a8a663..41ef08020 100644
--- a/src/sp-desc.h
+++ b/src/sp-desc.h
@@ -17,9 +17,6 @@
#define SP_TYPE_DESC (sp_desc_get_type ())
#define SP_IS_DESC(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_DESC))
-class SPDesc;
-class SPDescClass;
-
struct SPDesc : public SPObject {
};
diff --git a/src/sp-ellipse.h b/src/sp-ellipse.h
index 5074be354..d22501f6b 100644
--- a/src/sp-ellipse.h
+++ b/src/sp-ellipse.h
@@ -27,9 +27,6 @@ G_BEGIN_DECLS
#define SP_IS_GENERICELLIPSE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_GENERICELLIPSE))
#define SP_IS_GENERICELLIPSE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_GENERICELLIPSE))
-class SPGenericEllipse;
-class SPGenericEllipseClass;
-
struct SPGenericEllipse : public SPShape {
SVGLength cx;
SVGLength cy;
diff --git a/src/sp-filter-primitive.h b/src/sp-filter-primitive.h
index 60104047e..f06df5611 100644
--- a/src/sp-filter-primitive.h
+++ b/src/sp-filter-primitive.h
@@ -23,8 +23,6 @@
#define SP_IS_FILTER_PRIMITIVE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_FILTER_PRIMITIVE))
#define SP_IS_FILTER_PRIMITIVE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_FILTER_PRIMITIVE))
-class SPFilterPrimitive;
-class SPFilterPrimitiveClass;
namespace Inkscape {
namespace Filters {
class Filter;
diff --git a/src/sp-filter-reference.h b/src/sp-filter-reference.h
index 5901dca07..7a335aed4 100644
--- a/src/sp-filter-reference.h
+++ b/src/sp-filter-reference.h
@@ -5,7 +5,7 @@
class SPObject;
class SPDocument;
-class SPFilter;
+struct SPFilter;
class SPFilterReference : public Inkscape::URIReference {
public:
diff --git a/src/sp-filter.h b/src/sp-filter.h
index d0529e542..5afe47438 100644
--- a/src/sp-filter.h
+++ b/src/sp-filter.h
@@ -35,8 +35,8 @@ namespace Filters {
class Filter;
} }
-struct SPFilterReference;
-class SPFilterPrimitive;
+class SPFilterReference;
+struct SPFilterPrimitive;
struct ltstr {
bool operator()(const char* s1, const char* s2) const;
diff --git a/src/sp-gradient-fns.h b/src/sp-gradient-fns.h
index e57877256..165fd3ed8 100644
--- a/src/sp-gradient-fns.h
+++ b/src/sp-gradient-fns.h
@@ -12,7 +12,7 @@
#include "sp-gradient-units.h"
class SPGradient;
-class SPMeshGradient;
+struct SPMeshGradient;
SPGradientSpread sp_gradient_get_spread (SPGradient *gradient);
diff --git a/src/sp-gradient.h b/src/sp-gradient.h
index a21a413f4..57ffa5570 100644
--- a/src/sp-gradient.h
+++ b/src/sp-gradient.h
@@ -27,8 +27,8 @@
#include <stddef.h>
#include <sigc++/connection.h>
-struct SPGradientReference;
-class SPStop;
+class SPGradientReference;
+struct SPStop;
#define SP_TYPE_GRADIENT (SPGradient::getType())
#define SP_GRADIENT(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), SP_TYPE_GRADIENT, SPGradient))
diff --git a/src/sp-guide.h b/src/sp-guide.h
index c39252066..45ce405cd 100644
--- a/src/sp-guide.h
+++ b/src/sp-guide.h
@@ -21,6 +21,7 @@
struct SPCanvas;
struct SPCanvasGroup;
+class SPDesktop;
G_BEGIN_DECLS
diff --git a/src/sp-image.h b/src/sp-image.h
index c657d0a2f..d6fc82a59 100644
--- a/src/sp-image.h
+++ b/src/sp-image.h
@@ -20,9 +20,6 @@
#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))
-class SPImage;
-class SPImageClass;
-
/* SPImage */
#include <gdk-pixbuf/gdk-pixbuf.h>
diff --git a/src/sp-item.h b/src/sp-item.h
index 85ef3531e..e65ffc829 100644
--- a/src/sp-item.h
+++ b/src/sp-item.h
@@ -28,9 +28,9 @@
#include "snap-candidate.h"
class SPGuideConstraint;
-struct SPClipPathReference;
-struct SPMaskReference;
-struct SPAvoidRef;
+class SPClipPathReference;
+class SPMaskReference;
+class SPAvoidRef;
struct SPPrintContext;
namespace Inkscape {
diff --git a/src/sp-linear-gradient-fns.h b/src/sp-linear-gradient-fns.h
index 1bdf0b89e..14e575ebe 100644
--- a/src/sp-linear-gradient-fns.h
+++ b/src/sp-linear-gradient-fns.h
@@ -14,7 +14,7 @@ class Node;
}
}
-class SPLinearGradient;
+struct SPLinearGradient;
#define SP_TYPE_LINEARGRADIENT (sp_lineargradient_get_type())
#define SP_LINEARGRADIENT(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), SP_TYPE_LINEARGRADIENT, SPLinearGradient))
diff --git a/src/sp-lpe-item.h b/src/sp-lpe-item.h
index 69fde5d58..5ff1dee26 100644
--- a/src/sp-lpe-item.h
+++ b/src/sp-lpe-item.h
@@ -24,8 +24,9 @@
#define SP_IS_LPE_ITEM(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), SP_TYPE_LPE_ITEM))
#define SP_IS_LPE_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_LPE_ITEM))
-struct LivePathEffectObject;
-struct SPCurve;
+class LivePathEffectObject;
+class SPCurve;
+class SPDesktop;
namespace Inkscape{
namespace Display {
diff --git a/src/sp-mask.h b/src/sp-mask.h
index e249e0c76..97cf95ae1 100644
--- a/src/sp-mask.h
+++ b/src/sp-mask.h
@@ -24,9 +24,7 @@
#define SP_IS_MASK(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_MASK))
#define SP_IS_MASK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_MASK))
-class SPMask;
-class SPMaskClass;
-class SPMaskView;
+struct SPMaskView;
namespace Inkscape {
diff --git a/src/sp-mesh-gradient-fns.h b/src/sp-mesh-gradient-fns.h
index 18f66128a..4196a6de2 100644
--- a/src/sp-mesh-gradient-fns.h
+++ b/src/sp-mesh-gradient-fns.h
@@ -14,7 +14,7 @@ class Node;
}
}
-class SPMeshGradient;
+struct SPMeshGradient;
#define SP_TYPE_MESHGRADIENT (sp_meshgradient_get_type())
#define SP_MESHGRADIENT(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), SP_TYPE_MESHGRADIENT, SPMeshGradient))
diff --git a/src/sp-metadata.h b/src/sp-metadata.h
index 82b7c4fc5..454fd8d18 100644
--- a/src/sp-metadata.h
+++ b/src/sp-metadata.h
@@ -21,9 +21,6 @@
#define SP_METADATA(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SP_TYPE_METADATA, SPMetadata))
#define SP_IS_METADATA(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), SP_TYPE_METADATA))
-class SPMetadata;
-class SPMetadataClass;
-
struct SPMetadata : public SPObject {
};
diff --git a/src/sp-object.h b/src/sp-object.h
index 5828eda13..19df6a554 100644
--- a/src/sp-object.h
+++ b/src/sp-object.h
@@ -58,15 +58,13 @@ class SPObjectClass;
#include "version.h"
#include "util/forward-pointer-iterator.h"
-
-class SPDesktop;
-struct SPCSSAttr;
+class SPCSSAttr;
struct SPStyle;
namespace Inkscape {
namespace XML {
class Node;
-class Document;
+struct Document;
}
}
@@ -90,8 +88,6 @@ typedef enum {
SP_INVALID_ACCESS_ERR
} SPExceptionType;
-class SPException;
-
/// An attempt to implement exceptions, unused?
struct SPException {
SPExceptionType code;
@@ -100,8 +96,6 @@ struct SPException {
#define SP_EXCEPTION_INIT(ex) {(ex)->code = SP_NO_EXCEPTION;}
#define SP_EXCEPTION_IS_OK(ex) (!(ex) || ((ex)->code == SP_NO_EXCEPTION))
-class SPCtx;
-
/// Unused
struct SPCtx {
unsigned int flags;
@@ -113,8 +107,6 @@ enum {
};
class SPDocument;
-class SPIXmlSpace;
-class SPObject;
/// Internal class consisting of two bits.
struct SPIXmlSpace {
diff --git a/src/sp-offset.h b/src/sp-offset.h
index 4e245f952..904f8607c 100644
--- a/src/sp-offset.h
+++ b/src/sp-offset.h
@@ -22,8 +22,6 @@
#define SP_IS_OFFSET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_OFFSET))
#define SP_IS_OFFSET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_OFFSET))
-class SPOffset;
-class SPOffsetClass;
class SPUseReference;
/**
diff --git a/src/sp-pattern.h b/src/sp-pattern.h
index e0a7dce54..bcf8dd520 100644
--- a/src/sp-pattern.h
+++ b/src/sp-pattern.h
@@ -24,8 +24,7 @@
GType sp_pattern_get_type (void);
-class SPPattern;
-class SPPatternClass;
+struct SPPattern;
#include "svg/svg-length.h"
#include "sp-paint-server.h"
diff --git a/src/sp-radial-gradient-fns.h b/src/sp-radial-gradient-fns.h
index 912508a33..43ed7bf03 100644
--- a/src/sp-radial-gradient-fns.h
+++ b/src/sp-radial-gradient-fns.h
@@ -13,7 +13,7 @@ class Node;
}
}
-class SPRadialGradient;
+struct SPRadialGradient;
#define SP_TYPE_RADIALGRADIENT (sp_radialgradient_get_type())
#define SP_RADIALGRADIENT(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), SP_TYPE_RADIALGRADIENT, SPRadialGradient))
diff --git a/src/sp-rect.h b/src/sp-rect.h
index 5e518dcd7..1127889c1 100644
--- a/src/sp-rect.h
+++ b/src/sp-rect.h
@@ -26,9 +26,6 @@ G_BEGIN_DECLS
#define SP_IS_RECT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_RECT))
#define SP_IS_RECT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_RECT))
-class SPRect;
-class SPRectClass;
-
struct SPRect : public SPShape {
SVGLength x;
SVGLength y;
diff --git a/src/sp-spiral.h b/src/sp-spiral.h
index 6da7c38a4..64cb8521b 100644
--- a/src/sp-spiral.h
+++ b/src/sp-spiral.h
@@ -29,9 +29,6 @@
#define SP_IS_SPIRAL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_SPIRAL))
#define SP_IS_SPIRAL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_SPIRAL))
-class SPSpiral;
-class SPSpiralClass;
-
/**
* A spiral Shape.
*
diff --git a/src/sp-star.h b/src/sp-star.h
index bd271ccc0..888eeb8d2 100644
--- a/src/sp-star.h
+++ b/src/sp-star.h
@@ -16,17 +16,12 @@
#include "sp-polygon.h"
-
-
#define SP_TYPE_STAR (sp_star_get_type ())
#define SP_STAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SP_TYPE_STAR, SPStar))
#define SP_STAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SP_TYPE_STAR, SPStarClass))
#define SP_IS_STAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_STAR))
#define SP_IS_STAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_STAR))
-class SPStar;
-class SPStarClass;
-
typedef enum {
SP_STAR_POINT_KNOT1,
SP_STAR_POINT_KNOT2
diff --git a/src/sp-stop.h b/src/sp-stop.h
index c3b1e2753..b82dd0b13 100644
--- a/src/sp-stop.h
+++ b/src/sp-stop.h
@@ -14,7 +14,6 @@
#include "color.h"
class SPObjectClass;
-class SPColor;
struct SPStop;
struct SPStopClass;
diff --git a/src/sp-switch.h b/src/sp-switch.h
index f0442f27b..24a204731 100644
--- a/src/sp-switch.h
+++ b/src/sp-switch.h
@@ -35,7 +35,7 @@ public:
CSwitch(SPGroup *group);
virtual ~CSwitch();
- friend class SPSwitch;
+ friend struct SPSwitch;
virtual void onChildAdded(Inkscape::XML::Node *child);
virtual void onChildRemoved(Inkscape::XML::Node *child);
diff --git a/src/sp-symbol.h b/src/sp-symbol.h
index 59f343285..10d642e8b 100644
--- a/src/sp-symbol.h
+++ b/src/sp-symbol.h
@@ -21,9 +21,6 @@
#define SP_SYMBOL(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SP_TYPE_SYMBOL, SPSymbol))
#define SP_IS_SYMBOL(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), SP_TYPE_SYMBOL))
-class SPSymbol;
-class SPSymbolClass;
-
#include <2geom/affine.h>
#include "svg/svg-length.h"
#include "enums.h"
diff --git a/src/sp-title.h b/src/sp-title.h
index a5f0a2fea..d10d58188 100644
--- a/src/sp-title.h
+++ b/src/sp-title.h
@@ -17,9 +17,6 @@
#define SP_TYPE_TITLE (sp_title_get_type ())
#define SP_IS_TITLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_TITLE))
-class SPTitle;
-class SPTitleClass;
-
struct SPTitle : public SPObject {
};
diff --git a/src/sp-tref.h b/src/sp-tref.h
index cc80e48a8..33a8138d1 100644
--- a/src/sp-tref.h
+++ b/src/sp-tref.h
@@ -28,9 +28,6 @@
#define SP_IS_TREF(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), SP_TYPE_TREF))
#define SP_IS_TREF_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SP_TYPE_TREF))
-class SPTRef;
-class SPTRef;
-
struct SPTRef : public SPItem {
// Attributes that are used in the same way they would be in a tspan
TextTagAttributes attributes;
diff --git a/src/sp-use-reference.h b/src/sp-use-reference.h
index f40dbb6e5..d99b425f1 100644
--- a/src/sp-use-reference.h
+++ b/src/sp-use-reference.h
@@ -18,7 +18,7 @@ class Path;
namespace Inkscape {
namespace XML {
- struct Node;
+class Node;
}
}
diff --git a/src/sp-use.h b/src/sp-use.h
index 399f30a4c..3dd0726aa 100644
--- a/src/sp-use.h
+++ b/src/sp-use.h
@@ -25,8 +25,6 @@
#define SP_IS_USE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_USE))
#define SP_IS_USE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_USE))
-class SPUse;
-class SPUseClass;
class SPUseReference;
struct SPUse : public SPItem {
diff --git a/src/spiral-context.h b/src/spiral-context.h
index 12c0b5d68..7f696dfa2 100644
--- a/src/spiral-context.h
+++ b/src/spiral-context.h
@@ -27,9 +27,6 @@
#define SP_IS_SPIRAL_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_SPIRAL_CONTEXT))
#define SP_IS_SPIRAL_CONTEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_SPIRAL_CONTEXT))
-class SPSpiralContext;
-class SPSpiralContextClass;
-
struct SPSpiralContext : public SPEventContext {
SPItem * item;
Geom::Point center;
diff --git a/src/spray-context.h b/src/spray-context.h
index 64368c7a6..781bbcce8 100644
--- a/src/spray-context.h
+++ b/src/spray-context.h
@@ -27,9 +27,6 @@
#define SP_IS_SPRAY_CONTEXT(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), SP_TYPE_SPRAY_CONTEXT))
#define SP_IS_SPRAY_CONTEXT_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE((k), SP_TYPE_SPRAY_CONTEXT))
-class SPSprayContext;
-class SPSprayContextClass;
-
namespace Inkscape {
namespace UI {
namespace Dialog {
diff --git a/src/star-context.h b/src/star-context.h
index 7bcb26c41..4daafb3e4 100644
--- a/src/star-context.h
+++ b/src/star-context.h
@@ -25,9 +25,6 @@
#define SP_IS_STAR_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_STAR_CONTEXT))
#define SP_IS_STAR_CONTEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_STAR_CONTEXT))
-class SPStarContext;
-class SPStarContextClass;
-
struct SPStarContext : public SPEventContext {
SPItem *item;
Geom::Point center;
diff --git a/src/style.cpp b/src/style.cpp
index 650b08aea..eef1c6ee5 100644
--- a/src/style.cpp
+++ b/src/style.cpp
@@ -63,7 +63,7 @@ using std::vector;
#define SP_CSS_FONT_SIZE_DEFAULT 12.0;
-class SPStyleEnum;
+struct SPStyleEnum;
/*#########################
## FORWARD DECLARATIONS
diff --git a/src/style.h b/src/style.h
index 5b7fb559a..cb5178b40 100644
--- a/src/style.h
+++ b/src/style.h
@@ -34,17 +34,6 @@ class Node;
class SPCSSAttr;
-class SPIFloat;
-class SPIScale24;
-class SPIInt;
-class SPIShort;
-class SPIEnum;
-class SPIString;
-class SPILength;
-class SPIPaint;
-class SPIFontSize;
-class SPIBaselineShift;
-
/// Float type internal to SPStyle.
struct SPIFloat {
unsigned set : 1;
@@ -145,8 +134,6 @@ struct SPILength {
#define SP_STYLE_FILL_SERVER(s) ((const_cast<SPStyle *> (s))->getFillPaintServer())
#define SP_STYLE_STROKE_SERVER(s) ((const_cast<SPStyle *> (s))->getStrokePaintServer())
-class SVGICCColor;
-
/// Paint type internal to SPStyle.
struct SPIPaint {
unsigned set : 1;
@@ -262,7 +249,7 @@ struct SPILengthOrNormal {
float computed;
};
-class SPTextStyle;
+struct SPTextStyle;
/// Stroke dash details.
class NRVpathDash {
diff --git a/src/svg-view-widget.h b/src/svg-view-widget.h
index d489ccbdd..eab5be75b 100644
--- a/src/svg-view-widget.h
+++ b/src/svg-view-widget.h
@@ -15,8 +15,6 @@
#include "ui/view/view-widget.h"
class SPDocument;
-class SPSVGSPViewWidget;
-class SPSVGSPViewWidgetClass;
#define SP_TYPE_SVG_VIEW_WIDGET (sp_svg_view_widget_get_type ())
#define SP_SVG_VIEW_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SP_TYPE_SVG_VIEW_WIDGET, SPSVGSPViewWidget))
diff --git a/src/svg-view.h b/src/svg-view.h
index aaaa8a9a5..89f38ad34 100644
--- a/src/svg-view.h
+++ b/src/svg-view.h
@@ -13,7 +13,7 @@
#include "ui/view/view.h"
-class SPCanvasGroup;
+struct SPCanvasGroup;
struct SPCanvasItem;
diff --git a/src/svg/svg-color.h b/src/svg/svg-color.h
index d1c7bee03..b8e317e3b 100644
--- a/src/svg/svg-color.h
+++ b/src/svg/svg-color.h
@@ -3,7 +3,7 @@
#include <glib.h>
-class SVGICCColor;
+struct SVGICCColor;
guint32 sp_svg_read_color(gchar const *str, unsigned int dfl);
guint32 sp_svg_read_color(gchar const *str, gchar const **end_ptr, guint32 def);
diff --git a/src/text-context.h b/src/text-context.h
index 9915583eb..a33c69e0a 100644
--- a/src/text-context.h
+++ b/src/text-context.h
@@ -30,8 +30,6 @@
#define SP_IS_TEXT_CONTEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_TEXT_CONTEXT))
struct SPCtrlLine;
-class SPTextContext;
-class SPTextContextClass;
struct SPTextContext : public SPEventContext {
diff --git a/src/text-editing.h b/src/text-editing.h
index deb6f8538..04ef6461d 100644
--- a/src/text-editing.h
+++ b/src/text-editing.h
@@ -19,6 +19,7 @@
#include "text-tag-attributes.h"
class SPCSSAttr;
+class SPDesktop;
class SPItem;
class SPObject;
struct SPStyle;
diff --git a/src/tweak-context.h b/src/tweak-context.h
index cb1cf301b..a4567ce6f 100644
--- a/src/tweak-context.h
+++ b/src/tweak-context.h
@@ -21,9 +21,6 @@
#define SP_IS_TWEAK_CONTEXT(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), SP_TYPE_TWEAK_CONTEXT))
#define SP_IS_TWEAK_CONTEXT_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE((k), SP_TYPE_TWEAK_CONTEXT))
-class SPTweakContext;
-class SPTweakContextClass;
-
#define SAMPLING_SIZE 8 /* fixme: ?? */
#define TC_MIN_PRESSURE 0.0
diff --git a/src/ui/dialog/desktop-tracker.h b/src/ui/dialog/desktop-tracker.h
index 0c8af66bf..c219e8d98 100644
--- a/src/ui/dialog/desktop-tracker.h
+++ b/src/ui/dialog/desktop-tracker.h
@@ -16,7 +16,7 @@ class SPDesktop;
namespace Inkscape {
-class Application;
+struct Application;
namespace UI {
namespace Dialog {
diff --git a/src/ui/dialog/dialog.h b/src/ui/dialog/dialog.h
index 025e9eb58..ec5d203bc 100644
--- a/src/ui/dialog/dialog.h
+++ b/src/ui/dialog/dialog.h
@@ -21,7 +21,7 @@ class SPDesktop;
namespace Inkscape {
class Selection;
-class Application;
+struct Application;
}
namespace Inkscape {
diff --git a/src/ui/dialog/export.cpp b/src/ui/dialog/export.cpp
index 603786742..66c9e6ed0 100644
--- a/src/ui/dialog/export.cpp
+++ b/src/ui/dialog/export.cpp
@@ -22,14 +22,21 @@
#include <gtkmm/box.h>
#include <gtkmm/buttonbox.h>
-#include <gtkmm/label.h>
-#include <gtkmm/widget.h>
-#include <gtkmm/togglebutton.h>
+#include <gtkmm/dialog.h>
#include <gtkmm/entry.h>
#include <gtkmm/image.h>
-#include <gtkmm/stockid.h>
+#include <gtkmm/label.h>
+#include <gtkmm/spinbutton.h>
#include <gtkmm/stock.h>
-#include <gtkmm/table.h>
+#include <gtkmm/stockid.h>
+#if WITH_GTKMM_3_0
+# include <gtkmm/grid.h>
+#else
+# include <gtkmm/table.h>
+#endif
+#include <gtkmm/togglebutton.h>
+#include <gtkmm/widget.h>
+
#ifdef WITH_GNOME_VFS
# include <libgnomevfs/gnome-vfs-init.h> // gnome_vfs_initialized
#endif
diff --git a/src/ui/dialog/export.h b/src/ui/dialog/export.h
index 5dca9cfa5..202443a78 100644
--- a/src/ui/dialog/export.h
+++ b/src/ui/dialog/export.h
@@ -14,10 +14,12 @@
#include <gtk/gtk.h>
#include <glibmm/i18n.h>
+
+#include <gtkmm/comboboxtext.h>
#include <gtkmm/expander.h>
#include <gtkmm/frame.h>
+#include <gtkmm/progressbar.h>
#include <gtkmm/textview.h>
-#include <gtkmm/comboboxtext.h>
#include "desktop.h"
#include "ui/dialog/desktop-tracker.h"
@@ -25,6 +27,10 @@
#include "ui/widget/button.h"
#include "ui/widget/entry.h"
+namespace Gtk {
+class Dialog;
+}
+
namespace Inkscape {
namespace UI {
namespace Dialog {
diff --git a/src/ui/dialog/fill-and-stroke.cpp b/src/ui/dialog/fill-and-stroke.cpp
index 8de2da18b..19b873d54 100644
--- a/src/ui/dialog/fill-and-stroke.cpp
+++ b/src/ui/dialog/fill-and-stroke.cpp
@@ -132,14 +132,24 @@ void
FillAndStroke::_layoutPageFill()
{
fillWdgt = manage(sp_fill_style_widget_new());
+
+#if WITH_GTKMM_3_0
_page_fill->table().attach(*fillWdgt, 0, 0, 1, 1);
+#else
+ _page_fill->table().attach(*fillWdgt, 0, 1, 0, 1);
+#endif
}
void
FillAndStroke::_layoutPageStrokePaint()
{
strokeWdgt = manage(sp_stroke_style_paint_widget_new());
+
+#if WITH_GTKMM_3_0
_page_stroke_paint->table().attach(*strokeWdgt, 0, 0, 1, 1);
+#else
+ _page_stroke_paint->table().attach(*strokeWdgt, 0, 1, 0, 1);
+#endif
}
void
@@ -148,7 +158,12 @@ FillAndStroke::_layoutPageStrokeStyle()
//Gtk::Widget *strokeStyleWdgt = manage(Glib::wrap(sp_stroke_style_line_widget_new()));
//Gtk::Widget *strokeStyleWdgt = static_cast<Gtk::Widget *>(sp_stroke_style_line_widget_new());
strokeStyleWdgt = sp_stroke_style_line_widget_new();
+
+#if WITH_GTKMM_3_0
_page_stroke_style->table().attach(*strokeStyleWdgt, 0, 0, 1, 1);
+#else
+ _page_stroke_style->table().attach(*strokeStyleWdgt, 0, 1, 0, 1);
+#endif
}
void
diff --git a/src/ui/dialog/find.cpp b/src/ui/dialog/find.cpp
index d3ce99b00..def7b5bdb 100644
--- a/src/ui/dialog/find.cpp
+++ b/src/ui/dialog/find.cpp
@@ -15,7 +15,10 @@
#endif
#include "find.h"
+
+#include <gtkmm/entry.h>
#include <gtkmm/widget.h>
+
#include "verbs.h"
#include "message-stack.h"
@@ -56,6 +59,7 @@
#include "xml/attribute-record.h"
#include <glibmm/i18n.h>
+#include <glibmm/regex.h>
namespace Inkscape {
namespace UI {
diff --git a/src/ui/dialog/find.h b/src/ui/dialog/find.h
index 77a6c9d02..14d54b8d4 100644
--- a/src/ui/dialog/find.h
+++ b/src/ui/dialog/find.h
@@ -21,7 +21,11 @@
#include "ui/widget/entry.h"
#include "ui/widget/frame.h"
#include <glib.h>
-#include <gtkmm.h>
+
+#include <gtkmm/box.h>
+#include <gtkmm/buttonbox.h>
+#include <gtkmm/expander.h>
+#include <gtkmm/label.h>
#include "desktop.h"
#include "ui/dialog/desktop-tracker.h"
diff --git a/src/ui/dialog/glyphs.h b/src/ui/dialog/glyphs.h
index 6571af0a4..3d0571244 100644
--- a/src/ui/dialog/glyphs.h
+++ b/src/ui/dialog/glyphs.h
@@ -20,7 +20,7 @@ class Label;
class ListStore;
}
-class SPFontSelector;
+struct SPFontSelector;
class font_instance;
diff --git a/src/ui/dialog/icon-preview.cpp b/src/ui/dialog/icon-preview.cpp
index de213ca85..801ab2922 100644
--- a/src/ui/dialog/icon-preview.cpp
+++ b/src/ui/dialog/icon-preview.cpp
@@ -20,7 +20,11 @@
#include <gtkmm/buttonbox.h>
#include <boost/scoped_ptr.hpp>
#include <glib.h>
+
#include <glibmm/i18n.h>
+#include <glibmm/main.h>
+#include <glibmm/timer.h>
+
#include <gtkmm/alignment.h>
#include <gtkmm/checkbutton.h>
#include <gtkmm/frame.h>
diff --git a/src/ui/dialog/input.cpp b/src/ui/dialog/input.cpp
index 9c9f7faa3..82e65435d 100644
--- a/src/ui/dialog/input.cpp
+++ b/src/ui/dialog/input.cpp
@@ -17,7 +17,9 @@
#include <glib/gprintf.h>
#include <glibmm/i18n.h>
+
#include <gtkmm/alignment.h>
+#include <gtkmm/buttonbox.h>
#include <gtkmm/cellrenderercombo.h>
#include <gtkmm/checkbutton.h>
#include <gtkmm/comboboxtext.h>
diff --git a/src/ui/dialog/layer-properties.h b/src/ui/dialog/layer-properties.h
index 9de303f89..0e2f8ed94 100644
--- a/src/ui/dialog/layer-properties.h
+++ b/src/ui/dialog/layer-properties.h
@@ -80,9 +80,9 @@ protected:
void perform(LayerPropertiesDialog &dialog);
};
- friend class Rename;
- friend class Create;
- friend class Move;
+ friend struct Rename;
+ friend struct Create;
+ friend struct Move;
Strategy *_strategy;
SPDesktop *_desktop;
diff --git a/src/ui/dialog/livepatheffect-editor.cpp b/src/ui/dialog/livepatheffect-editor.cpp
index 7ecb6d5cd..e6bb9b43d 100644
--- a/src/ui/dialog/livepatheffect-editor.cpp
+++ b/src/ui/dialog/livepatheffect-editor.cpp
@@ -48,8 +48,6 @@
#include "livepatheffect-add.h"
namespace Inkscape {
-class Application;
-
namespace UI {
namespace Dialog {
diff --git a/src/ui/dialog/object-properties.cpp b/src/ui/dialog/object-properties.cpp
index 114204961..8a2b0299a 100644
--- a/src/ui/dialog/object-properties.cpp
+++ b/src/ui/dialog/object-properties.cpp
@@ -38,6 +38,12 @@
#include "sp-item.h"
#include <glibmm/i18n.h>
+#if WITH_GTKMM_3_0
+# include <gtkmm/grid.h>
+#else
+# include <gtkmm/table.h>
+#endif
+
namespace Inkscape {
namespace UI {
diff --git a/src/ui/dialog/object-properties.h b/src/ui/dialog/object-properties.h
index b49293ea1..624a18246 100644
--- a/src/ui/dialog/object-properties.h
+++ b/src/ui/dialog/object-properties.h
@@ -35,6 +35,8 @@
#include "ui/widget/panel.h"
#include "ui/widget/frame.h"
+
+#include <gtkmm/checkbutton.h>
#include <gtkmm/entry.h>
#include <gtkmm/expander.h>
#include <gtkmm/frame.h>
@@ -46,6 +48,14 @@ class SPAttributeTable;
class SPDesktop;
class SPItem;
+namespace Gtk {
+#if WITH_GTKMM_3_0
+class Grid;
+#else
+class Table;
+#endif
+}
+
namespace Inkscape {
namespace UI {
namespace Dialog {
diff --git a/src/ui/dialog/svg-fonts-dialog.h b/src/ui/dialog/svg-fonts-dialog.h
index 9be984820..01f70654a 100644
--- a/src/ui/dialog/svg-fonts-dialog.h
+++ b/src/ui/dialog/svg-fonts-dialog.h
@@ -34,8 +34,8 @@ class HScale;
#endif
}
-class SPGlyph;
-class SPGlyphKerning;
+struct SPGlyph;
+struct SPGlyphKerning;
class SvgFont;
class SvgFontDrawingArea : Gtk::DrawingArea{
diff --git a/src/ui/dialog/text-edit.cpp b/src/ui/dialog/text-edit.cpp
index a71227861..67c6578f9 100644
--- a/src/ui/dialog/text-edit.cpp
+++ b/src/ui/dialog/text-edit.cpp
@@ -57,6 +57,7 @@ extern "C" {
#include "widgets/icon.h"
#include "widgets/font-selector.h"
#include <glibmm/i18n.h>
+#include <glibmm/markup.h>
#include "unit-constants.h"
diff --git a/src/ui/dialog/text-edit.h b/src/ui/dialog/text-edit.h
index 3fdeea05d..f27fdfc87 100644
--- a/src/ui/dialog/text-edit.h
+++ b/src/ui/dialog/text-edit.h
@@ -30,7 +30,7 @@
#include "ui/dialog/desktop-tracker.h"
class SPItem;
-class SPFontSelector;
+struct SPFontSelector;
class font_instance;
class SPCSSAttr;
diff --git a/src/ui/dialog/tracedialog.cpp b/src/ui/dialog/tracedialog.cpp
index 1ad827a56..bd467555e 100644
--- a/src/ui/dialog/tracedialog.cpp
+++ b/src/ui/dialog/tracedialog.cpp
@@ -20,6 +20,7 @@
#include <gtkmm/frame.h>
#include "ui/widget/spinbutton.h"
#include "ui/widget/frame.h"
+#include <gtkmm/radiobutton.h>
#include <gtkmm/stock.h>
#include <gtk/gtk.h> //for GTK_RESPONSE* types
diff --git a/src/ui/dialog/xml-tree.h b/src/ui/dialog/xml-tree.h
index 9d2fac71f..58ef3aef8 100644
--- a/src/ui/dialog/xml-tree.h
+++ b/src/ui/dialog/xml-tree.h
@@ -28,8 +28,8 @@
#include "ui/dialog/desktop-tracker.h"
#include "message.h"
-struct SPDesktop;
-struct SPObject;
+class SPDesktop;
+class SPObject;
struct SPXMLViewAttrList;
struct SPXMLViewContent;
struct SPXMLViewTree;
diff --git a/src/ui/tool/control-point.cpp b/src/ui/tool/control-point.cpp
index 8c4924f26..069dcc67b 100644
--- a/src/ui/tool/control-point.cpp
+++ b/src/ui/tool/control-point.cpp
@@ -7,8 +7,8 @@
*/
#include <iostream>
+#include <gdk/gdkkeysyms.h>
#include <gdkmm.h>
-#include <gtkmm.h>
#include <2geom/point.h>
#include "desktop.h"
#include "desktop-handles.h"
diff --git a/src/ui/tool/control-point.h b/src/ui/tool/control-point.h
index 30efe8a27..27a0f8074 100644
--- a/src/ui/tool/control-point.h
+++ b/src/ui/tool/control-point.h
@@ -23,7 +23,7 @@
#include "enums.h"
class SPDesktop;
-class SPEventContext;
+struct SPEventContext;
namespace Inkscape {
namespace UI {
diff --git a/src/ui/tool/node-tool.h b/src/ui/tool/node-tool.h
index 49b1496d4..bc5267bb2 100644
--- a/src/ui/tool/node-tool.h
+++ b/src/ui/tool/node-tool.h
@@ -25,9 +25,6 @@
#define INK_IS_NODE_TOOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), INK_TYPE_NODE_TOOL))
#define INK_IS_NODE_TOOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), INK_TYPE_NODE_TOOL))
-class InkNodeTool;
-class InkNodeToolClass;
-
namespace Inkscape {
namespace Display {
diff --git a/src/ui/tool/path-manipulator.h b/src/ui/tool/path-manipulator.h
index a51b8c410..1444272e8 100644
--- a/src/ui/tool/path-manipulator.h
+++ b/src/ui/tool/path-manipulator.h
@@ -21,8 +21,8 @@
#include "ui/tool/manipulator.h"
struct SPCanvasItem;
-struct SPCurve;
-struct SPPath;
+class SPCurve;
+class SPPath;
namespace Inkscape {
namespace XML { class Node; }
diff --git a/src/ui/view/view-widget.h b/src/ui/view/view-widget.h
index 668f9d19a..295e7932b 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;
-class SPNamedView;
+struct 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/ui/widget/entry.cpp b/src/ui/widget/entry.cpp
index 173e014d9..64d28119a 100644
--- a/src/ui/widget/entry.cpp
+++ b/src/ui/widget/entry.cpp
@@ -13,6 +13,8 @@
#include "entry.h"
+#include <gtkmm/entry.h>
+
namespace Inkscape {
namespace UI {
namespace Widget {
diff --git a/src/ui/widget/entry.h b/src/ui/widget/entry.h
index 53b848fc9..de5cceadd 100644
--- a/src/ui/widget/entry.h
+++ b/src/ui/widget/entry.h
@@ -11,10 +11,10 @@
#define INKSCAPE_UI_WIDGET_ENTRY__H
#include "labelled.h"
-#include <gtkmm.h>
-#include <gtkmm/entry.h>
-#include <gtkmm/comboboxtext.h>
+namespace Gtk {
+class Entry;
+}
namespace Inkscape {
namespace UI {
diff --git a/src/ui/widget/frame.h b/src/ui/widget/frame.h
index cf736d8a1..a04666651 100644
--- a/src/ui/widget/frame.h
+++ b/src/ui/widget/frame.h
@@ -10,11 +10,9 @@
#ifndef INKSCAPE_UI_WIDGET_FRAME_H
#define INKSCAPE_UI_WIDGET_FRAME_H
-#include <gtkmm.h>
-
-namespace Gtk {
-class Frame;
-}
+#include <gtkmm/alignment.h>
+#include <gtkmm/frame.h>
+#include <gtkmm/label.h>
namespace Inkscape {
namespace UI {
diff --git a/src/ui/widget/object-composite-settings.h b/src/ui/widget/object-composite-settings.h
index d3a208525..bee9f09b9 100644
--- a/src/ui/widget/object-composite-settings.h
+++ b/src/ui/widget/object-composite-settings.h
@@ -21,8 +21,10 @@
#include "ui/widget/filter-effect-chooser.h"
#include "ui/widget/spinbutton.h"
+class SPDesktop;
+
namespace Inkscape {
-class Application;
+struct Application;
namespace UI {
namespace Widget {
diff --git a/src/ui/widget/registered-widget.h b/src/ui/widget/registered-widget.h
index 2a7843a51..fa35b815e 100644
--- a/src/ui/widget/registered-widget.h
+++ b/src/ui/widget/registered-widget.h
@@ -32,7 +32,7 @@
#include <gtkmm/checkbutton.h>
-class SPUnit;
+struct SPUnit;
class SPDocument;
namespace Gtk {
diff --git a/src/ui/widget/selected-style.h b/src/ui/widget/selected-style.h
index 6d5222429..9b78cb17f 100644
--- a/src/ui/widget/selected-style.h
+++ b/src/ui/widget/selected-style.h
@@ -40,7 +40,7 @@
#include "helper/units.h"
class SPDesktop;
-class SPUnit;
+struct SPUnit;
namespace Inkscape {
namespace UI {
diff --git a/src/ui/widget/style-subject.h b/src/ui/widget/style-subject.h
index 47da91732..c2941d995 100644
--- a/src/ui/widget/style-subject.h
+++ b/src/ui/widget/style-subject.h
@@ -20,7 +20,7 @@
class SPDesktop;
class SPObject;
class SPCSSAttr;
-class SPStyle;
+struct SPStyle;
namespace Inkscape {
class Selection;
diff --git a/src/ui/widget/style-swatch.h b/src/ui/widget/style-swatch.h
index 7e385e3df..d7bab3732 100644
--- a/src/ui/widget/style-swatch.h
+++ b/src/ui/widget/style-swatch.h
@@ -26,8 +26,8 @@
#include "button.h"
#include "preferences.h"
-class SPUnit;
-class SPStyle;
+struct SPUnit;
+struct SPStyle;
class SPCSSAttr;
namespace Gtk {
diff --git a/src/undo-stack-observer.h b/src/undo-stack-observer.h
index f4d67e841..1057ace8f 100644
--- a/src/undo-stack-observer.h
+++ b/src/undo-stack-observer.h
@@ -14,7 +14,7 @@
namespace Inkscape {
-class Event;
+struct Event;
/**
* Observes changes made to the undo and redo stacks.
diff --git a/src/vanishing-point.h b/src/vanishing-point.h
index d55dc13a1..17e3a4aa9 100644
--- a/src/vanishing-point.h
+++ b/src/vanishing-point.h
@@ -113,7 +113,7 @@ private:
Proj::Axis _axis;
};
-class VPDrag;
+struct VPDrag;
struct less_ptr : public std::binary_function<VanishingPoint *, VanishingPoint *, bool> {
bool operator()(VanishingPoint *vp1, VanishingPoint *vp2) {
diff --git a/src/widgets/arc-toolbar.h b/src/widgets/arc-toolbar.h
index 69d7b8a17..dba2fcd5a 100644
--- a/src/widgets/arc-toolbar.h
+++ b/src/widgets/arc-toolbar.h
@@ -28,7 +28,7 @@
*/
#include <gtk/gtk.h>
-struct SPDesktop;
+class SPDesktop;
void sp_arc_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder);
diff --git a/src/widgets/box3d-toolbar.h b/src/widgets/box3d-toolbar.h
index 50535b8de..d80934b01 100644
--- a/src/widgets/box3d-toolbar.h
+++ b/src/widgets/box3d-toolbar.h
@@ -28,7 +28,7 @@
*/
#include <gtk/gtk.h>
-struct SPDesktop;
+class SPDesktop;
void box3d_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder);
diff --git a/src/widgets/calligraphy-toolbar.h b/src/widgets/calligraphy-toolbar.h
index 5b2e3c5d4..9650e03b1 100644
--- a/src/widgets/calligraphy-toolbar.h
+++ b/src/widgets/calligraphy-toolbar.h
@@ -28,7 +28,7 @@
*/
#include <gtk/gtk.h>
-struct SPDesktop;
+class SPDesktop;
void sp_calligraphy_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder);
void update_presets_list(GObject *tbl);
diff --git a/src/widgets/connector-toolbar.h b/src/widgets/connector-toolbar.h
index 6e69cf047..2ab26e56c 100644
--- a/src/widgets/connector-toolbar.h
+++ b/src/widgets/connector-toolbar.h
@@ -28,7 +28,7 @@
*/
#include <gtk/gtk.h>
-struct SPDesktop;
+class SPDesktop;
void sp_connector_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder);
diff --git a/src/widgets/desktop-widget.h b/src/widgets/desktop-widget.h
index 0ffedd112..9188838b3 100644
--- a/src/widgets/desktop-widget.h
+++ b/src/widgets/desktop-widget.h
@@ -25,7 +25,7 @@
typedef struct _EgeColorProfTracker EgeColorProfTracker;
struct SPCanvas;
class SPDesktop;
-class SPDesktopWidget;
+struct SPDesktopWidget;
class SPObject;
diff --git a/src/widgets/dropper-toolbar.h b/src/widgets/dropper-toolbar.h
index eee50ae5c..aa2116daf 100644
--- a/src/widgets/dropper-toolbar.h
+++ b/src/widgets/dropper-toolbar.h
@@ -28,7 +28,7 @@
*/
#include <gtk/gtk.h>
-struct SPDesktop;
+class SPDesktop;
void sp_dropper_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder);
diff --git a/src/widgets/erasor-toolbar.h b/src/widgets/erasor-toolbar.h
index f00ceebe4..b1bb3a3fa 100644
--- a/src/widgets/erasor-toolbar.h
+++ b/src/widgets/erasor-toolbar.h
@@ -28,7 +28,7 @@
*/
#include <gtk/gtk.h>
-struct SPDesktop;
+class SPDesktop;
void sp_eraser_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder);
diff --git a/src/widgets/gradient-toolbar.h b/src/widgets/gradient-toolbar.h
index 980a41a83..74cfb2886 100644
--- a/src/widgets/gradient-toolbar.h
+++ b/src/widgets/gradient-toolbar.h
@@ -13,7 +13,7 @@
*/
#include <gtk/gtk.h>
-struct SPDesktop;
+class SPDesktop;
void sp_gradient_toolbox_prep(SPDesktop * /*desktop*/, GtkActionGroup* mainActions, GObject* holder);
diff --git a/src/widgets/gradient-vector.h b/src/widgets/gradient-vector.h
index 1ed6c6c46..6719691d1 100644
--- a/src/widgets/gradient-vector.h
+++ b/src/widgets/gradient-vector.h
@@ -33,7 +33,7 @@
class SPDocument;
class SPObject;
class SPGradient;
-class SPStop;
+struct SPStop;
struct SPGradientVectorSelector {
GtkVBox vbox;
diff --git a/src/widgets/lpe-toolbar.h b/src/widgets/lpe-toolbar.h
index 837ef4c1e..1796f8027 100644
--- a/src/widgets/lpe-toolbar.h
+++ b/src/widgets/lpe-toolbar.h
@@ -28,7 +28,7 @@
*/
#include <gtk/gtk.h>
-struct SPDesktop;
+class SPDesktop;
void sp_lpetool_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder);
diff --git a/src/widgets/measure-toolbar.h b/src/widgets/measure-toolbar.h
index 7ec6cd6c3..4b90ccb9f 100644
--- a/src/widgets/measure-toolbar.h
+++ b/src/widgets/measure-toolbar.h
@@ -28,7 +28,7 @@
*/
#include <gtk/gtk.h>
-struct SPDesktop;
+class SPDesktop;
void sp_measure_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder);
diff --git a/src/widgets/mesh-toolbar.h b/src/widgets/mesh-toolbar.h
index 277525804..f84cff59b 100644
--- a/src/widgets/mesh-toolbar.h
+++ b/src/widgets/mesh-toolbar.h
@@ -15,7 +15,7 @@
*/
#include <gtk/gtk.h>
-struct SPDesktop;
+class SPDesktop;
void sp_mesh_toolbox_prep( SPDesktop * /*desktop*/, GtkActionGroup* mainActions, GObject* holder);
diff --git a/src/widgets/node-toolbar.h b/src/widgets/node-toolbar.h
index ac57a0f80..dcccf1712 100644
--- a/src/widgets/node-toolbar.h
+++ b/src/widgets/node-toolbar.h
@@ -28,7 +28,7 @@
*/
#include <gtk/gtk.h>
-struct SPDesktop;
+class SPDesktop;
void sp_node_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder);
diff --git a/src/widgets/paint-selector.h b/src/widgets/paint-selector.h
index d6ad3f50c..a66758434 100644
--- a/src/widgets/paint-selector.h
+++ b/src/widgets/paint-selector.h
@@ -22,8 +22,8 @@
class SPGradient;
class SPDesktop;
-class SPPattern;
-class SPStyle;
+struct SPPattern;
+struct SPStyle;
#define SP_TYPE_PAINT_SELECTOR (sp_paint_selector_get_type ())
#define SP_PAINT_SELECTOR(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), SP_TYPE_PAINT_SELECTOR, SPPaintSelector))
diff --git a/src/widgets/paintbucket-toolbar.h b/src/widgets/paintbucket-toolbar.h
index f49861e1f..fe25c7fe2 100644
--- a/src/widgets/paintbucket-toolbar.h
+++ b/src/widgets/paintbucket-toolbar.h
@@ -28,7 +28,7 @@
*/
#include <gtk/gtk.h>
-struct SPDesktop;
+class SPDesktop;
void sp_paintbucket_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder);
diff --git a/src/widgets/pencil-toolbar.h b/src/widgets/pencil-toolbar.h
index 89269d668..14f1e8930 100644
--- a/src/widgets/pencil-toolbar.h
+++ b/src/widgets/pencil-toolbar.h
@@ -28,7 +28,7 @@
*/
#include <gtk/gtk.h>
-struct SPDesktop;
+class SPDesktop;
void sp_pencil_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder);
void sp_pen_toolbox_prep(SPDesktop * /*desktop*/, GtkActionGroup* mainActions, GObject* holder);
diff --git a/src/widgets/rect-toolbar.h b/src/widgets/rect-toolbar.h
index 2f22d7e27..e123c095b 100644
--- a/src/widgets/rect-toolbar.h
+++ b/src/widgets/rect-toolbar.h
@@ -28,7 +28,7 @@
*/
#include <gtk/gtk.h>
-struct SPDesktop;
+class SPDesktop;
void sp_rect_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder);
diff --git a/src/widgets/sp-widget.h b/src/widgets/sp-widget.h
index d2177f486..3a23a92c5 100644
--- a/src/widgets/sp-widget.h
+++ b/src/widgets/sp-widget.h
@@ -27,7 +27,7 @@
namespace Inkscape {
-class Application;
+struct Application;
class Selection;
class SPWidgetImpl;
diff --git a/src/widgets/spiral-toolbar.h b/src/widgets/spiral-toolbar.h
index 3e4d7b46f..194b54bce 100644
--- a/src/widgets/spiral-toolbar.h
+++ b/src/widgets/spiral-toolbar.h
@@ -28,7 +28,7 @@
*/
#include <gtk/gtk.h>
-struct SPDesktop;
+class SPDesktop;
void sp_spiral_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder);
diff --git a/src/widgets/spray-toolbar.h b/src/widgets/spray-toolbar.h
index 8ac0ec9af..170b6bb8e 100644
--- a/src/widgets/spray-toolbar.h
+++ b/src/widgets/spray-toolbar.h
@@ -28,7 +28,7 @@
*/
#include <gtk/gtk.h>
-struct SPDesktop;
+class SPDesktop;
void sp_spray_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder);
diff --git a/src/widgets/star-toolbar.h b/src/widgets/star-toolbar.h
index 793f73f8b..6f91d5570 100644
--- a/src/widgets/star-toolbar.h
+++ b/src/widgets/star-toolbar.h
@@ -28,7 +28,7 @@
*/
#include <gtk/gtk.h>
-struct SPDesktop;
+class SPDesktop;
void sp_star_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder);
diff --git a/src/widgets/swatch-selector.h b/src/widgets/swatch-selector.h
index b97aac4f1..4b7aa483f 100644
--- a/src/widgets/swatch-selector.h
+++ b/src/widgets/swatch-selector.h
@@ -1,14 +1,12 @@
#ifndef SEEN_SP_SWATCH_SELECTOR_H
#define SEEN_SP_SWATCH_SELECTOR_H
-
-
#include <gtkmm/box.h>
class SPDocument;
class SPGradient;
-class SPColorSelector;
-class SPGradientSelector;
+struct SPColorSelector;
+struct SPGradientSelector;
namespace Inkscape
{
diff --git a/src/widgets/text-toolbar.h b/src/widgets/text-toolbar.h
index 34109c022..68158d201 100644
--- a/src/widgets/text-toolbar.h
+++ b/src/widgets/text-toolbar.h
@@ -28,7 +28,7 @@
*/
#include <gtk/gtk.h>
-struct SPDesktop;
+class SPDesktop;
void sp_text_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder);
diff --git a/src/widgets/toolbox.h b/src/widgets/toolbox.h
index d520d393d..9c839a8fe 100644
--- a/src/widgets/toolbox.h
+++ b/src/widgets/toolbox.h
@@ -23,7 +23,7 @@
#define TOOLBAR_SLIDER_HINT "full"
class SPDesktop;
-class SPEventContext;
+struct SPEventContext;
namespace Inkscape {
namespace UI {
diff --git a/src/widgets/tweak-toolbar.h b/src/widgets/tweak-toolbar.h
index 64608de70..6f840f2c1 100644
--- a/src/widgets/tweak-toolbar.h
+++ b/src/widgets/tweak-toolbar.h
@@ -28,7 +28,7 @@
*/
#include <gtk/gtk.h>
-struct SPDesktop;
+class SPDesktop;
void sp_tweak_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder);
diff --git a/src/widgets/zoom-toolbar.h b/src/widgets/zoom-toolbar.h
index 9f1af4e5e..b8d6a42af 100644
--- a/src/widgets/zoom-toolbar.h
+++ b/src/widgets/zoom-toolbar.h
@@ -28,7 +28,7 @@
*/
#include <gtk/gtk.h>
-struct SPDesktop;
+class SPDesktop;
void sp_zoom_toolbox_prep(SPDesktop *desktop, GtkActionGroup* mainActions, GObject* holder);
diff --git a/src/xml/composite-node-observer.h b/src/xml/composite-node-observer.h
index 96825d607..3e4b1673a 100644
--- a/src/xml/composite-node-observer.h
+++ b/src/xml/composite-node-observer.h
@@ -23,7 +23,7 @@ namespace Inkscape {
namespace XML {
-class NodeEventVector;
+struct NodeEventVector;
/**
* @brief An observer that relays notifications to multiple other observers
diff --git a/src/xml/event-fns.h b/src/xml/event-fns.h
index 65c65c48c..5e3b43ad8 100644
--- a/src/xml/event-fns.h
+++ b/src/xml/event-fns.h
@@ -4,7 +4,7 @@
namespace Inkscape {
namespace XML {
-class Document;
+struct Document;
class Event;
class NodeObserver;
diff --git a/src/xml/rebase-hrefs.h b/src/xml/rebase-hrefs.h
index adb09e52a..5baf96516 100644
--- a/src/xml/rebase-hrefs.h
+++ b/src/xml/rebase-hrefs.h
@@ -4,7 +4,7 @@
#include <glib.h>
#include "util/list.h"
#include "xml/attribute-record.h"
-struct SPDocument;
+class SPDocument;
namespace Inkscape {
namespace XML {
diff --git a/src/zoom-context.h b/src/zoom-context.h
index e36dc3fbe..c09b5a1b3 100644
--- a/src/zoom-context.h
+++ b/src/zoom-context.h
@@ -19,9 +19,6 @@
#define SP_ZOOM_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SP_TYPE_ZOOM_CONTEXT, SPZoomContext))
#define SP_IS_ZOOM_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_ZOOM_CONTEXT))
-class SPZoomContext;
-class SPZoomContextClass;
-
struct SPZoomContext {
SPEventContext event_context;
SPCanvasItem *grabbed;