~danieljabailey/inkscape/arc_node_editor

« back to all changes in this revision

Viewing changes to src/sp-font-face.h

  • Committer: scislac
  • Date: 2009-08-12 07:57:52 UTC
  • Revision ID: scislac@users.sourceforge.net-20090812075752-3zt99jgeqr3bm16j
much better quality multi-size windows icon, thanks ChrisMorgan

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#ifndef SEEN_SP_FONTFACE_H
2
 
#define SEEN_SP_FONTFACE_H
 
1
#ifdef HAVE_CONFIG_H
 
2
# include <config.h>
 
3
#endif
3
4
 
4
 
#include <vector>
 
5
#ifdef ENABLE_SVG_FONTS
 
6
#ifndef __SP_FONTFACE_H__
 
7
#define __SP_FONTFACE_H__
5
8
 
6
9
/*
7
10
 * SVG <font-face> element implementation
11
14
 * http://www.w3.org/TR/SVG/fonts.html#FontFaceElement
12
15
 *
13
16
 * Authors:
14
 
 *    Felipe C. da S. Sanches <juca@members.fsf.org>
 
17
 *    Felipe C. da S. Sanches <felipe.sanches@gmail.com>
15
18
 *
16
19
 * Copyright (C) 2008 Felipe C. da S. Sanches
17
20
 *
20
23
 
21
24
#include "sp-object.h"
22
25
 
23
 
#define SP_FONTFACE(obj) (dynamic_cast<SPFontFace*>((SPObject*)obj))
24
 
#define SP_IS_FONTFACE(obj) (dynamic_cast<const SPFontFace*>((SPObject*)obj) != NULL)
 
26
#define SP_TYPE_FONTFACE (sp_fontface_get_type ())
 
27
#define SP_FONTFACE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SP_TYPE_FONTFACE, SPFontFace))
 
28
#define SP_FONTFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SP_TYPE_FONTFACE, SPFontFaceClass))
 
29
#define SP_IS_FONTFACE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_FONTFACE))
 
30
#define SP_IS_FONTFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_FONTFACE))
25
31
 
26
32
enum FontFaceStyleType{
27
33
        SP_FONTFACE_STYLE_ALL,
67
73
        FONTFACE_UNICODERANGE_FIXME_HERE,
68
74
};
69
75
 
70
 
class SPFontFace : public SPObject {
71
 
public:
72
 
        SPFontFace();
73
 
        virtual ~SPFontFace();
74
 
 
 
76
struct SPFontFace : public SPObject {
75
77
    char* font_family;
76
78
    std::vector<FontFaceStyleType> font_style;
77
79
    std::vector<FontFaceVariantType> font_variant;
105
107
    double strikethrough_thickness;
106
108
    double overline_position;
107
109
    double overline_thickness;
108
 
 
109
 
protected:
110
 
        virtual void build(SPDocument* doc, Inkscape::XML::Node* repr);
111
 
        virtual void release();
112
 
 
113
 
        virtual void child_added(Inkscape::XML::Node* child, Inkscape::XML::Node* ref);
114
 
        virtual void remove_child(Inkscape::XML::Node* child);
115
 
 
116
 
        virtual void set(unsigned int key, const char* value);
117
 
 
118
 
        virtual void update(SPCtx* ctx, unsigned int flags);
119
 
 
120
 
        virtual Inkscape::XML::Node* write(Inkscape::XML::Document* doc, Inkscape::XML::Node* repr, unsigned int flags);
121
 
};
 
110
};
 
111
 
 
112
struct SPFontFaceClass {
 
113
        SPObjectClass parent_class;
 
114
};
 
115
 
 
116
GType sp_fontface_get_type (void);
122
117
 
123
118
#endif //#ifndef __SP_FONTFACE_H__
 
119
#endif //#ifdef ENABLE_SVG_FONTS