Code

Make curvature work again by fixing a minor omission
[inkscape.git] / src / sp-glyph-kerning.h
index 40a2afe0f9819fbb25c80c93c4e9f7e03d9e9703..ec0866c2c2b57db9be988b3b8e1c32063623befb 100644 (file)
@@ -1,3 +1,8 @@
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
+#ifdef ENABLE_SVG_FONTS
 #ifndef __SP_GLYPH_KERNING_H__
 #define __SP_GLYPH_KERNING_H__
 
  */
 
 #include "sp-object.h"
+#include "unicoderange.h"
+
+#define SP_TYPE_HKERN (sp_glyph_kerning_h_get_type ())
+#define SP_HKERN(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SP_TYPE_HKERN, SPHkern))
+#define SP_HKERN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SP_TYPE_HKERN, SPGlyphKerningClass))
+#define SP_IS_HKERN(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_HKERN))
+#define SP_IS_HKERN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_HKERN))
 
-#define SP_TYPE_GLYPH_KERNING (sp_glyph_kerning_get_type ())
-#define SP_GLYPH_KERNING(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SP_TYPE_GLYPH_KERNING, SPGlyphKerning))
-#define SP_GLYPH_KERNING_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SP_TYPE_GLYPH_KERNING, SPGlyphKerningClass))
-#define SP_IS_GLYPH_KERNING(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_GLYPH_KERNING))
-#define SP_IS_GLYPH_KERNING_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_GLYPH_KERNING))
+#define SP_TYPE_VKERN (sp_glyph_kerning_v_get_type ())
+#define SP_VKERN(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SP_TYPE_VKERN, SPVkern))
+#define SP_VKERN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SP_TYPE_VKERN, SPGlyphKerningClass))
+#define SP_IS_VKERN(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_VKERN))
+#define SP_IS_VKERN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_VKERN))
+
+class GlyphNames{
+public: 
+GlyphNames(const gchar* value);
+~GlyphNames();
+bool contains(const char* name);
+private:
+gchar* names;
+};
 
 struct SPGlyphKerning : public SPObject {
-    char* u1;
-    char* g1;
-    char* u2;
-    char* g2;
+    UnicodeRange* u1;
+    GlyphNames* g1;
+    UnicodeRange* u2;
+    GlyphNames* g2;
     double k;
 };
 
+struct SPHkern : public SPGlyphKerning {};
+struct SPVkern : public SPGlyphKerning {};
+
 struct SPGlyphKerningClass {
        SPObjectClass parent_class;
 };
 
-GType sp_glyph_kerning_get_type (void);
+GType sp_glyph_kerning_h_get_type (void);
+GType sp_glyph_kerning_v_get_type (void);
 
 #endif //#ifndef __SP_GLYPH_KERNING_H__
+#endif //#ifdef ENABLE_SVG_FONTS