~ubuntu-branches/ubuntu/lucid/inkscape/lucid

« back to all changes in this revision

Viewing changes to src/knot.h

  • Committer: Bazaar Package Importer
  • Author(s): Kees Cook, Ted Gould, Kees Cook
  • Date: 2009-06-24 14:00:43 UTC
  • mfrom: (1.1.8 upstream)
  • Revision ID: james.westby@ubuntu.com-20090624140043-07stp20mry48hqup
Tags: 0.47~pre0-0ubuntu1
* New upstream release

[ Ted Gould ]
* debian/control: Adding libgsl0 and removing version specifics on boost

[ Kees Cook ]
* debian/watch: updated to run uupdate and mangle pre-release versions.
* Dropped patches that have been taken upstream:
  - 01_mips
  - 02-poppler-0.8.3
  - 03-chinese-inkscape
  - 05_fix_latex_patch
  - 06_gcc-4.4
  - 07_cdr2svg
  - 08_skip-bad-utf-on-pdf-import
  - 09_gtk-clist
  - 10_belarussian
  - 11_libpng
  - 12_desktop
  - 13_slider
  - 100_svg_import_improvements
  - 102_sp_pattern_painter_free
  - 103_bitmap_type_print

Show diffs side-by-side

added added

removed removed

Lines of Context:
18
18
#include <gtk/gtkenums.h>
19
19
#include "display/display-forward.h"
20
20
#include "forward.h"
21
 
#include <libnr/nr-point.h>
 
21
#include <2geom/point.h>
22
22
#include "knot-enums.h"
 
23
#include <sigc++/sigc++.h>
23
24
 
24
25
class SPKnot;
25
26
class SPKnotClass;
32
33
 
33
34
/**
34
35
 * Desktop-bound visual control object.
35
 
 * 
 
36
 *
36
37
 * A knot is a draggable object, with callbacks to change something by
37
38
 * dragging it, visuably represented by a canvas item (mostly square).
38
39
 */
42
43
    guint flags;
43
44
 
44
45
    guint size;      /**< Always square. */
45
 
    NR::Point pos;   /**< Our desktop coordinates. */
46
 
    NR::Point grabbed_rel_pos;  /**< Grabbed relative position. */
47
 
    NR::Point drag_origin;      /**< Origin of drag. */
 
46
    Geom::Point pos;   /**< Our desktop coordinates. */
 
47
    Geom::Point grabbed_rel_pos;  /**< Grabbed relative position. */
 
48
    Geom::Point drag_origin;      /**< Origin of drag. */
48
49
    GtkAnchorType anchor;    /**< Anchor. */
49
50
 
50
51
    SPKnotShapeType shape;   /**< Shape type. */
65
66
 
66
67
    double pressure; /**< The tablet pen pressure when the knot is being dragged. */
67
68
 
 
69
    // C++ signals
 
70
    /**
 
71
    sigc::signal<void, Geom::Point const &, Geom::Point const &, guint> _moved_signal;
 
72
    sigc::signal<void, guint> _click_signal;
 
73
    sigc::signal<Geom::Point> _ungrabbed_signal;
 
74
    **/
 
75
    sigc::signal<void, SPKnot *, Geom::Point const &, guint> _moved_signal;
 
76
    sigc::signal<void, SPKnot *, guint> _click_signal;
 
77
    sigc::signal<void, SPKnot *> _ungrabbed_signal;
 
78
 
68
79
    //TODO: all the members above should eventualle become private, accessible via setters/getters
69
80
    inline void setSize (guint i) {size = i;}
70
81
    inline void setShape (guint i) {shape = (SPKnotShapeType) i;}
127
138
    void (* doubleclicked) (SPKnot *knot, guint state);
128
139
    void (* grabbed) (SPKnot *knot, guint state);
129
140
    void (* ungrabbed) (SPKnot *knot, guint state);
130
 
    void (* moved) (SPKnot *knot, NR::Point *position, guint state);
 
141
    void (* moved) (SPKnot *knot, Geom::Point const &position, guint state);
131
142
    void (* stamped) (SPKnot *know, guint state);
132
143
 
133
144
    /** Request knot to move to absolute position. */
134
 
    bool (* request) (SPKnot *knot, NR::Point *pos, guint state);
 
145
    bool (* request) (SPKnot *knot, Geom::Point const &pos, guint state);
135
146
 
136
147
    /** Find complex distance from knot to point. */
137
 
    gdouble (* distance) (SPKnot *knot, NR::Point *pos, guint state);
 
148
    gdouble (* distance) (SPKnot *knot, Geom::Point const &pos, guint state);
138
149
};
139
150
 
140
151
GType sp_knot_get_type();
152
163
void sp_knot_set_flag(SPKnot *knot, guint flag, bool set);
153
164
void sp_knot_update_ctrl(SPKnot *knot);
154
165
 
155
 
void sp_knot_request_position(SPKnot *knot, NR::Point *pos, guint state);
156
 
gdouble sp_knot_distance(SPKnot *knot, NR::Point *p, guint state);
 
166
void sp_knot_request_position(SPKnot *knot, Geom::Point const &pos, guint state);
 
167
gdouble sp_knot_distance(SPKnot *knot, Geom::Point const &p, guint state);
157
168
 
158
 
void sp_knot_start_dragging(SPKnot *knot, NR::Point p, gint x, gint y, guint32 etime);
 
169
void sp_knot_start_dragging(SPKnot *knot, Geom::Point const &p, gint x, gint y, guint32 etime);
159
170
 
160
171
/** Moves knot and emits "moved" signal. */
161
 
void sp_knot_set_position(SPKnot *knot, NR::Point *p, guint state);
 
172
void sp_knot_set_position(SPKnot *knot, Geom::Point const &p, guint state);
162
173
 
163
174
/** Moves knot without any signal. */
164
 
void sp_knot_moveto(SPKnot *knot, NR::Point *p);
 
175
void sp_knot_moveto(SPKnot *knot, Geom::Point const &p);
165
176
 
166
 
NR::Point sp_knot_position(SPKnot const *knot);
 
177
void sp_knot_handler_request_position(GdkEvent *event, SPKnot *knot);
 
178
Geom::Point sp_knot_position(SPKnot const *knot);
167
179
 
168
180
 
169
181
#endif /* !__SP_KNOT_H__ */