Code

Merge and cleanup of GSoC C++-ification project.
[inkscape.git] / src / sp-polyline.h
1 #ifndef SEEN_SP_POLYLINE_H
2 #define SEEN_SP_POLYLINE_H
4 #include "sp-shape.h"
8 #define SP_TYPE_POLYLINE            (SPPolyLine::sp_polyline_get_type ())
9 #define SP_POLYLINE(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), SP_TYPE_POLYLINE, SPPolyLine))
10 #define SP_POLYLINE_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), SP_TYPE_POLYLINE, SPPolyLineClass))
11 #define SP_IS_POLYLINE(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_POLYLINE))
12 #define SP_IS_POLYLINE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_POLYLINE))
14 class SPPolyLine;
15 class SPPolyLineClass;
17 class SPPolyLine : public SPShape {
18 public:
19     static GType sp_polyline_get_type (void);
21 private:
22     static void init(SPPolyLine *polyline);
24     static void build(SPObject * object, SPDocument * document, Inkscape::XML::Node * repr);
25     static void set(SPObject *object, unsigned int key, const gchar *value);
26     static Inkscape::XML::Node *write(SPObject *object, Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags);
28     static gchar * getDescription(SPItem * item);
30     friend class SPPolyLineClass;
31 };
33 class SPPolyLineClass {
34 public:
35     SPShapeClass parent_class;
37 private:
38     static SPShapeClass *static_parent_class;
39     static void sp_polyline_class_init (SPPolyLineClass *klass);
41     friend class SPPolyLine;    
42 };
44 #endif // SEEN_SP_POLYLINE_H
46 /*
47   Local Variables:
48   mode:c++
49   c-file-style:"stroustrup"
50   c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
51   indent-tabs-mode:nil
52   fill-column:99
53   End:
54 */
55 // vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4 :