1 #ifndef INKSCAPE_SP_TEXTPATH_H
2 #define INKSCAPE_SP_TEXTPATH_H
4 #include <glib/gtypes.h>
5 #include "svg/svg-length.h"
6 #include "sp-item.h"
7 #include "sp-text.h"
8 class SPUsePath;
9 class Path;
12 #define SP_TYPE_TEXTPATH (sp_textpath_get_type())
13 #define SP_TEXTPATH(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), SP_TYPE_TEXTPATH, SPTextPath))
14 #define SP_TEXTPATH_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), SP_TYPE_TEXTPATH, SPTextPathClass))
15 #define SP_IS_TEXTPATH(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), SP_TYPE_TEXTPATH))
16 #define SP_IS_TEXTPATH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SP_TYPE_TEXTPATH))
19 struct SPTextPath : public SPItem {
20 TextTagAttributes attributes;
21 SVGLength startOffset;
23 Path *originalPath;
24 bool isUpdating;
25 SPUsePath *sourcePath;
26 };
28 struct SPTextPathClass {
29 SPItemClass parent_class;
30 };
32 GType sp_textpath_get_type();
34 #define SP_IS_TEXT_TEXTPATH(obj) (SP_IS_TEXT(obj) && sp_object_first_child(obj) && SP_IS_TEXTPATH(sp_object_first_child(obj)))
36 SPItem *sp_textpath_get_path_item(SPTextPath *tp);
37 void sp_textpath_to_text(SPObject *tp);
40 #endif /* !INKSCAPE_SP_TEXTPATH_H */
42 /*
43 Local Variables:
44 mode:c++
45 c-file-style:"stroustrup"
46 c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
47 indent-tabs-mode:nil
48 fill-column:99
49 End:
50 */
51 // vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 :