diff --git a/src/eraser-context.h b/src/eraser-context.h
index b47c21b577cab1b48f04d3a85a79320d6e8cbdae..0e3f5c625f8598c8dcebb7a8fad8207ca95c5828 100644 (file)
--- a/src/eraser-context.h
+++ b/src/eraser-context.h
* Released under GNU GPL, read the file 'COPYING' for more information
*/
-#include "display/curve.h"
-#include "event-context.h"
-#include <display/display-forward.h>
-#include <libnr/nr-point.h>
+#include "common-context.h"
#define SP_TYPE_ERASER_CONTEXT (sp_eraser_context_get_type())
#define SP_ERASER_CONTEXT(o) (GTK_CHECK_CAST((o), SP_TYPE_ERASER_CONTEXT, SPEraserContext))
class SPEraserContext;
class SPEraserContextClass;
-#define SAMPLING_SIZE 8 /* fixme: ?? */
-
#define ERC_MIN_PRESSURE 0.0
#define ERC_MAX_PRESSURE 1.0
#define ERC_DEFAULT_PRESSURE 1.0
#define ERC_MAX_TILT 1.0
#define ERC_DEFAULT_TILT 0.0
-struct SPEraserContext : public SPEventContext {
- /** accumulated shape which ultimately goes in svg:path */
- SPCurve *accumulated;
-
- /** canvas items for "comitted" segments */
- GSList *segments;
-
- /** canvas item for red "leading" segment */
- SPCanvasItem *currentshape;
- /** shape of red "leading" segment */
- SPCurve *currentcurve;
-
- /** left edge of the stroke; combined to get accumulated */
- SPCurve *cal1;
-
- /** right edge of the stroke; combined to get accumulated */
- SPCurve *cal2;
-
- /** left edge points for this segment */
- NR::Point point1[SAMPLING_SIZE];
-
- /** right edge points for this segment */
- NR::Point point2[SAMPLING_SIZE];
-
- /** number of edge points for this segment */
- gint npoints;
-
- /* repr */
- Inkscape::XML::Node *repr;
-
- /* Eraser */
- NR::Point cur;
- NR::Point vel;
- double vel_max;
- NR::Point acc;
- NR::Point ang;
- NR::Point last;
- NR::Point del;
-
- /* extended input data */
- gdouble pressure;
- gdouble xtilt;
- gdouble ytilt;
-
- /* attributes */
- guint dragging : 1; /* mouse state: mouse is dragging */
- guint usepressure : 1;
- guint usetilt : 1;
- double mass, drag;
- double angle;
- double width;
-
- double vel_thin;
- double flatness;
- double tremor;
- double cap_rounding;
-
- Inkscape::MessageContext *_message_context;
-
- bool is_drawing;
-
- /** uses absolute width independent of zoom */
- bool abs_width;
+struct SPEraserContext : public SPCommonContext {
};
struct SPEraserContextClass : public SPEventContextClass{};