summaryrefslogtreecommitdiffstats
path: root/src/sp-font-face.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/sp-font-face.cpp')
-rw-r--r--src/sp-font-face.cpp572
1 files changed, 3 insertions, 569 deletions
diff --git a/src/sp-font-face.cpp b/src/sp-font-face.cpp
index 42b447635..38467083f 100644
--- a/src/sp-font-face.cpp
+++ b/src/sp-font-face.cpp
@@ -2,8 +2,6 @@
# include <config.h>
#endif
-#ifdef ENABLE_SVG_FONTS
-
/*
* SVG <font-face> element implementation
*
@@ -261,56 +259,10 @@ static std::vector<FontFaceStretchType> sp_read_fontFaceStretchType(gchar const
return v;
}
-static void sp_fontface_class_init(SPFontFaceClass *fc);
-static void sp_fontface_init(SPFontFace *font);
-
-static void sp_fontface_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr);
-static void sp_fontface_release(SPObject *object);
-static void sp_fontface_set(SPObject *object, unsigned int key, const gchar *value);
-static Inkscape::XML::Node *sp_fontface_write(SPObject *object, Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags);
-
-static void sp_fontface_child_added(SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node *ref);
-static void sp_fontface_remove_child(SPObject *object, Inkscape::XML::Node *child);
-static void sp_fontface_update(SPObject *object, SPCtx *ctx, guint flags);
-
-static SPObjectClass *parent_class;
-
-GType sp_fontface_get_type(void)
-{
- static GType type = 0;
-
- if (!type) {
- GTypeInfo info = {
- sizeof(SPFontFaceClass),
- NULL, /* base_init */
- NULL, /* base_finalize */
- (GClassInitFunc) sp_fontface_class_init,
- NULL, /* class_finalize */
- NULL, /* class_data */
- sizeof(SPFontFace),
- 16, /* n_preallocs */
- (GInstanceInitFunc) sp_fontface_init,
- NULL, /* value_table */
- };
- type = g_type_register_static(SP_TYPE_OBJECT, "SPFontFace", &info, (GTypeFlags) 0);
- }
-
- return type;
-}
+G_DEFINE_TYPE(SPFontFace, sp_fontface, SP_TYPE_OBJECT);
static void sp_fontface_class_init(SPFontFaceClass *fc)
{
- SPObjectClass *sp_object_class = (SPObjectClass *) fc;
-
- parent_class = (SPObjectClass *) g_type_class_ref(SP_TYPE_OBJECT);
-
- //sp_object_class->build = sp_fontface_build;
-// sp_object_class->release = sp_fontface_release;
-// sp_object_class->set = sp_fontface_set;
-// sp_object_class->write = sp_fontface_write;
-// sp_object_class->child_added = sp_fontface_child_added;
-// sp_object_class->remove_child = sp_fontface_remove_child;
-// sp_object_class->update = sp_fontface_update;
}
CFontFace::CFontFace(SPFontFace* face) : CObject(face) {
@@ -323,6 +275,8 @@ CFontFace::~CFontFace() {
static void sp_fontface_init(SPFontFace *face)
{
face->cfontface = new CFontFace(face);
+
+ delete face->cobject;
face->cobject = face->cfontface;
std::vector<FontFaceStyleType> style;
@@ -377,51 +331,8 @@ static void sp_fontface_init(SPFontFace *face)
*/
}
-//static void sp_fontface_build(SPObject *object, SPDocument *document, Inkscape::XML::Node *repr)
-//{
-//// if (((SPObjectClass *) (parent_class))->build) {
-//// ((SPObjectClass *) (parent_class))->build(object, document, repr);
-//// }
-//
-// object->readAttr( "font-family" );
-// object->readAttr( "font-style" );
-// object->readAttr( "font-variant" );
-// object->readAttr( "font-weight" );
-// object->readAttr( "font-stretch" );
-// object->readAttr( "font-size" );
-// object->readAttr( "unicode-range" );
-// object->readAttr( "units-per-em" );
-// object->readAttr( "panose-1" );
-// object->readAttr( "stem-v" );
-// object->readAttr( "stem-h" );
-// object->readAttr( "slope" );
-// object->readAttr( "cap-height" );
-// object->readAttr( "x-height" );
-// object->readAttr( "accent-height" );
-// object->readAttr( "ascent" );
-// object->readAttr( "descent" );
-// object->readAttr( "widths" );
-// object->readAttr( "bbox" );
-// object->readAttr( "ideographic" );
-// object->readAttr( "alphabetic" );
-// object->readAttr( "mathematical" );
-// object->readAttr( "ranging" );
-// object->readAttr( "v-ideogaphic" );
-// object->readAttr( "v-alphabetic" );
-// object->readAttr( "v-mathematical" );
-// object->readAttr( "v-hanging" );
-// object->readAttr( "underline-position" );
-// object->readAttr( "underline-thickness" );
-// object->readAttr( "strikethrough-position" );
-// object->readAttr( "strikethrough-thickness" );
-// object->readAttr( "overline-position" );
-// object->readAttr( "overline-thickness" );
-//}
void CFontFace::onBuild(SPDocument *document, Inkscape::XML::Node *repr) {
- // if (((SPObjectClass *) (parent_class))->build) {
- // ((SPObjectClass *) (parent_class))->build(object, document, repr);
- // }
CObject::onBuild(document, repr);
SPFontFace* object = this->spfontface;
@@ -468,26 +379,11 @@ static void sp_fontface_children_modified(SPFontFace */*sp_fontface*/)
/**
* Callback for child_added event.
*/
-static void
-sp_fontface_child_added(SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node *ref)
-{
-// SPFontFace *f = SP_FONTFACE(object);
-//
-// if (((SPObjectClass *) parent_class)->child_added)
-// (* ((SPObjectClass *) parent_class)->child_added)(object, child, ref);
-//
-// sp_fontface_children_modified(f);
-// object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG);
- ((SPFontFace*)object)->cfontface->onChildAdded(child, ref);
-}
-
void CFontFace::onChildAdded(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) {
SPFontFace* object = this->spfontface;
SPFontFace *f = SP_FONTFACE(object);
-// if (((SPObjectClass *) parent_class)->child_added)
-// (* ((SPObjectClass *) parent_class)->child_added)(object, child, ref);
CObject::onChildAdded(child, ref);
sp_fontface_children_modified(f);
@@ -498,338 +394,21 @@ void CFontFace::onChildAdded(Inkscape::XML::Node *child, Inkscape::XML::Node *re
/**
* Callback for remove_child event.
*/
-static void
-sp_fontface_remove_child(SPObject *object, Inkscape::XML::Node *child)
-{
-// SPFontFace *f = SP_FONTFACE(object);
-//
-// if (((SPObjectClass *) parent_class)->remove_child)
-// (* ((SPObjectClass *) parent_class)->remove_child)(object, child);
-//
-// sp_fontface_children_modified(f);
-// object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG);
- ((SPFontFace*)object)->cfontface->onRemoveChild(child);
-}
-
void CFontFace::onRemoveChild(Inkscape::XML::Node *child) {
SPFontFace* object = this->spfontface;
SPFontFace *f = SP_FONTFACE(object);
-// if (((SPObjectClass *) parent_class)->remove_child)
-// (* ((SPObjectClass *) parent_class)->remove_child)(object, child);
CObject::onRemoveChild(child);
sp_fontface_children_modified(f);
object->parent->requestModified(SP_OBJECT_MODIFIED_FLAG);
}
-static void sp_fontface_release(SPObject *object)
-{
- //SPFontFace *font = SP_FONTFACE(object);
-
-// if (((SPObjectClass *) parent_class)->release) {
-// ((SPObjectClass *) parent_class)->release(object);
-// }
- ((SPFontFace*)object)->cfontface->onRelease();
-}
-
void CFontFace::onRelease() {
CObject::onRelease();
}
-static void sp_fontface_set(SPObject *object, unsigned int key, const gchar *value)
-{
-// SPFontFace *face = SP_FONTFACE(object);
-// std::vector<FontFaceStyleType> style;
-// std::vector<FontFaceVariantType> variant;
-// std::vector<FontFaceWeightType> weight;
-// std::vector<FontFaceStretchType> stretch;
-//
-// switch (key) {
-// case SP_PROP_FONT_FAMILY:
-// if (face->font_family) {
-// g_free(face->font_family);
-// }
-// face->font_family = g_strdup(value);
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// break;
-// case SP_PROP_FONT_STYLE:
-// style = sp_read_fontFaceStyleType(value);
-// if (face->font_style.size() != style.size()){
-// face->font_style = style;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// } else {
-// for (unsigned int i=0;i<style.size();i++){
-// if (style[i] != face->font_style[i]){
-// face->font_style = style;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// break;
-// }
-// }
-// }
-// break;
-// case SP_PROP_FONT_VARIANT:
-// variant = sp_read_fontFaceVariantType(value);
-// if (face->font_variant.size() != variant.size()){
-// face->font_variant = variant;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// } else {
-// for (unsigned int i=0;i<variant.size();i++){
-// if (variant[i] != face->font_variant[i]){
-// face->font_variant = variant;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// break;
-// }
-// }
-// }
-// break;
-// case SP_PROP_FONT_WEIGHT:
-// weight = sp_read_fontFaceWeightType(value);
-// if (face->font_weight.size() != weight.size()){
-// face->font_weight = weight;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// } else {
-// for (unsigned int i=0;i<weight.size();i++){
-// if (weight[i] != face->font_weight[i]){
-// face->font_weight = weight;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// break;
-// }
-// }
-// }
-// break;
-// case SP_PROP_FONT_STRETCH:
-// stretch = sp_read_fontFaceStretchType(value);
-// if (face->font_stretch.size() != stretch.size()){
-// face->font_stretch = stretch;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// } else {
-// for (unsigned int i=0;i<stretch.size();i++){
-// if (stretch[i] != face->font_stretch[i]){
-// face->font_stretch = stretch;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// break;
-// }
-// }
-// }
-// break;
-// case SP_ATTR_UNITS_PER_EM:
-// {
-// double number = value ? g_ascii_strtod(value, 0) : 0;
-// if (number != face->units_per_em){
-// face->units_per_em = number;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// }
-// break;
-// }
-// case SP_ATTR_STEMV:
-// {
-// double number = value ? g_ascii_strtod(value, 0) : 0;
-// if (number != face->stemv){
-// face->stemv = number;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// }
-// break;
-// }
-// case SP_ATTR_STEMH:
-// {
-// double number = value ? g_ascii_strtod(value, 0) : 0;
-// if (number != face->stemh){
-// face->stemh = number;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// }
-// break;
-// }
-// case SP_ATTR_SLOPE:
-// {
-// double number = value ? g_ascii_strtod(value, 0) : 0;
-// if (number != face->slope){
-// face->slope = number;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// }
-// break;
-// }
-// case SP_ATTR_CAP_HEIGHT:
-// {
-// double number = value ? g_ascii_strtod(value, 0) : 0;
-// if (number != face->cap_height){
-// face->cap_height = number;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// }
-// break;
-// }
-// case SP_ATTR_X_HEIGHT:
-// {
-// double number = value ? g_ascii_strtod(value, 0) : 0;
-// if (number != face->x_height){
-// face->x_height = number;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// }
-// break;
-// }
-// case SP_ATTR_ACCENT_HEIGHT:
-// {
-// double number = value ? g_ascii_strtod(value, 0) : 0;
-// if (number != face->accent_height){
-// face->accent_height = number;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// }
-// break;
-// }
-// case SP_ATTR_ASCENT:
-// {
-// double number = value ? g_ascii_strtod(value, 0) : 0;
-// if (number != face->ascent){
-// face->ascent = number;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// }
-// break;
-// }
-// case SP_ATTR_DESCENT:
-// {
-// double number = value ? g_ascii_strtod(value, 0) : 0;
-// if (number != face->descent){
-// face->descent = number;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// }
-// break;
-// }
-// case SP_ATTR_IDEOGRAPHIC:
-// {
-// double number = value ? g_ascii_strtod(value, 0) : 0;
-// if (number != face->ideographic){
-// face->ideographic = number;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// }
-// break;
-// }
-// case SP_ATTR_ALPHABETIC:
-// {
-// double number = value ? g_ascii_strtod(value, 0) : 0;
-// if (number != face->alphabetic){
-// face->alphabetic = number;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// }
-// break;
-// }
-// case SP_ATTR_MATHEMATICAL:
-// {
-// double number = value ? g_ascii_strtod(value, 0) : 0;
-// if (number != face->mathematical){
-// face->mathematical = number;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// }
-// break;
-// }
-// case SP_ATTR_HANGING:
-// {
-// double number = value ? g_ascii_strtod(value, 0) : 0;
-// if (number != face->hanging){
-// face->hanging = number;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// }
-// break;
-// }
-// case SP_ATTR_V_IDEOGRAPHIC:
-// {
-// double number = value ? g_ascii_strtod(value, 0) : 0;
-// if (number != face->v_ideographic){
-// face->v_ideographic = number;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// }
-// break;
-// }
-// case SP_ATTR_V_ALPHABETIC:
-// {
-// double number = value ? g_ascii_strtod(value, 0) : 0;
-// if (number != face->v_alphabetic){
-// face->v_alphabetic = number;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// }
-// break;
-// }
-// case SP_ATTR_V_MATHEMATICAL:
-// {
-// double number = value ? g_ascii_strtod(value, 0) : 0;
-// if (number != face->v_mathematical){
-// face->v_mathematical = number;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// }
-// break;
-// }
-// case SP_ATTR_V_HANGING:
-// {
-// double number = value ? g_ascii_strtod(value, 0) : 0;
-// if (number != face->v_hanging){
-// face->v_hanging = number;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// }
-// break;
-// }
-// case SP_ATTR_UNDERLINE_POSITION:
-// {
-// double number = value ? g_ascii_strtod(value, 0) : 0;
-// if (number != face->underline_position){
-// face->underline_position = number;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// }
-// break;
-// }
-// case SP_ATTR_UNDERLINE_THICKNESS:
-// {
-// double number = value ? g_ascii_strtod(value, 0) : 0;
-// if (number != face->underline_thickness){
-// face->underline_thickness = number;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// }
-// break;
-// }
-// case SP_ATTR_STRIKETHROUGH_POSITION:
-// {
-// double number = value ? g_ascii_strtod(value, 0) : 0;
-// if (number != face->strikethrough_position){
-// face->strikethrough_position = number;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// }
-// break;
-// }
-// case SP_ATTR_STRIKETHROUGH_THICKNESS:
-// {
-// double number = value ? g_ascii_strtod(value, 0) : 0;
-// if (number != face->strikethrough_thickness){
-// face->strikethrough_thickness = number;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// }
-// break;
-// }
-// case SP_ATTR_OVERLINE_POSITION:
-// {
-// double number = value ? g_ascii_strtod(value, 0) : 0;
-// if (number != face->overline_position){
-// face->overline_position = number;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// }
-// break;
-// }
-// case SP_ATTR_OVERLINE_THICKNESS:
-// {
-// double number = value ? g_ascii_strtod(value, 0) : 0;
-// if (number != face->overline_thickness){
-// face->overline_thickness = number;
-// object->requestModified(SP_OBJECT_MODIFIED_FLAG);
-// }
-// break;
-// }
-// default:
-// if (((SPObjectClass *) (parent_class))->set) {
-// ((SPObjectClass *) (parent_class))->set(object, key, value);
-// }
-// break;
-// }
- ((SPFontFace*)object)->cfontface->onSet(key, value);
-}
-
void CFontFace::onSet(unsigned int key, const gchar *value) {
SPFontFace* object = this->spfontface;
@@ -1115,9 +694,6 @@ void CFontFace::onSet(unsigned int key, const gchar *value) {
break;
}
default:
-// if (((SPObjectClass *) (parent_class))->set) {
-// ((SPObjectClass *) (parent_class))->set(object, key, value);
-// }
CObject::onSet(key, value);
break;
}
@@ -1126,51 +702,6 @@ void CFontFace::onSet(unsigned int key, const gchar *value) {
/**
* Receives update notifications.
*/
-static void
-sp_fontface_update(SPObject *object, SPCtx *ctx, guint flags)
-{
-// if (flags & (SP_OBJECT_MODIFIED_FLAG)) {
-// object->readAttr( "font-family" );
-// object->readAttr( "font-style" );
-// object->readAttr( "font-variant" );
-// object->readAttr( "font-weight" );
-// object->readAttr( "font-stretch" );
-// object->readAttr( "font-size" );
-// object->readAttr( "unicode-range" );
-// object->readAttr( "units-per-em" );
-// object->readAttr( "panose-1" );
-// object->readAttr( "stemv" );
-// object->readAttr( "stemh" );
-// object->readAttr( "slope" );
-// object->readAttr( "cap-height" );
-// object->readAttr( "x-height" );
-// object->readAttr( "accent-height" );
-// object->readAttr( "ascent" );
-// object->readAttr( "descent" );
-// object->readAttr( "widths" );
-// object->readAttr( "bbox" );
-// object->readAttr( "ideographic" );
-// object->readAttr( "alphabetic" );
-// object->readAttr( "mathematical" );
-// object->readAttr( "hanging" );
-// object->readAttr( "v-ideographic" );
-// object->readAttr( "v-alphabetic" );
-// object->readAttr( "v-mathematical" );
-// object->readAttr( "v-hanging" );
-// object->readAttr( "underline-position" );
-// object->readAttr( "underline-thickness" );
-// object->readAttr( "strikethrough-position" );
-// object->readAttr( "strikethrough-thickness" );
-// object->readAttr( "overline-position" );
-// object->readAttr( "overline-thickness" );
-// }
-//
-// if (((SPObjectClass *) parent_class)->update) {
-// ((SPObjectClass *) parent_class)->update(object, ctx, flags);
-// }
- ((SPFontFace*)object)->cfontface->onUpdate(ctx, flags);
-}
-
void CFontFace::onUpdate(SPCtx *ctx, guint flags) {
SPFontFace* object = this->spfontface;
@@ -1210,103 +741,11 @@ void CFontFace::onUpdate(SPCtx *ctx, guint flags) {
object->readAttr( "overline-thickness" );
}
-// if (((SPObjectClass *) parent_class)->update) {
-// ((SPObjectClass *) parent_class)->update(object, ctx, flags);
-// }
CObject::onUpdate(ctx, flags);
}
#define COPY_ATTR(rd,rs,key) (rd)->setAttribute((key), rs->attribute(key));
-static Inkscape::XML::Node *sp_fontface_write(SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags)
-{
-// SPFontFace *face = SP_FONTFACE(object);
-//
-// if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) {
-// repr = xml_doc->createElement("svg:font-face");
-// }
-//
-// //TODO:
-// //sp_repr_set_svg_double(repr, "font-family", face->font_family);
-// //sp_repr_set_svg_double(repr, "font-style", face->font_style);
-// //sp_repr_set_svg_double(repr, "font-variant", face->font_variant);
-// //sp_repr_set_svg_double(repr, "font-weight", face->font_weight);
-// //sp_repr_set_svg_double(repr, "font-stretch", face->font_stretch);
-// //sp_repr_set_svg_double(repr, "font-size", face->font_size);
-// //sp_repr_set_svg_double(repr, "unicode-range", face->unicode_range);
-// sp_repr_set_svg_double(repr, "units-per-em", face->units_per_em);
-// //sp_repr_set_svg_double(repr, "panose-1", face->panose_1);
-// sp_repr_set_svg_double(repr, "stemv", face->stemv);
-// sp_repr_set_svg_double(repr, "stemh", face->stemh);
-// sp_repr_set_svg_double(repr, "slope", face->slope);
-// sp_repr_set_svg_double(repr, "cap-height", face->cap_height);
-// sp_repr_set_svg_double(repr, "x-height", face->x_height);
-// sp_repr_set_svg_double(repr, "accent-height", face->accent_height);
-// sp_repr_set_svg_double(repr, "ascent", face->ascent);
-// sp_repr_set_svg_double(repr, "descent", face->descent);
-// //sp_repr_set_svg_double(repr, "widths", face->widths);
-// //sp_repr_set_svg_double(repr, "bbox", face->bbox);
-// sp_repr_set_svg_double(repr, "ideographic", face->ideographic);
-// sp_repr_set_svg_double(repr, "alphabetic", face->alphabetic);
-// sp_repr_set_svg_double(repr, "mathematical", face->mathematical);
-// sp_repr_set_svg_double(repr, "hanging", face->hanging);
-// sp_repr_set_svg_double(repr, "v-ideographic", face->v_ideographic);
-// sp_repr_set_svg_double(repr, "v-alphabetic", face->v_alphabetic);
-// sp_repr_set_svg_double(repr, "v-mathematical", face->v_mathematical);
-// sp_repr_set_svg_double(repr, "v-hanging", face->v_hanging);
-// sp_repr_set_svg_double(repr, "underline-position", face->underline_position);
-// sp_repr_set_svg_double(repr, "underline-thickness", face->underline_thickness);
-// sp_repr_set_svg_double(repr, "strikethrough-position", face->strikethrough_position);
-// sp_repr_set_svg_double(repr, "strikethrough-thickness", face->strikethrough_thickness);
-// sp_repr_set_svg_double(repr, "overline-position", face->overline_position);
-// sp_repr_set_svg_double(repr, "overline-thickness", face->overline_thickness);
-//
-// if (repr != object->getRepr()) {
-// // In all COPY_ATTR given below the XML tree is
-// // being used directly while it shouldn't be.
-// COPY_ATTR(repr, object->getRepr(), "font-family");
-// COPY_ATTR(repr, object->getRepr(), "font-style");
-// COPY_ATTR(repr, object->getRepr(), "font-variant");
-// COPY_ATTR(repr, object->getRepr(), "font-weight");
-// COPY_ATTR(repr, object->getRepr(), "font-stretch");
-// COPY_ATTR(repr, object->getRepr(), "font-size");
-// COPY_ATTR(repr, object->getRepr(), "unicode-range");
-// COPY_ATTR(repr, object->getRepr(), "units-per-em");
-// COPY_ATTR(repr, object->getRepr(), "panose-1");
-// COPY_ATTR(repr, object->getRepr(), "stemv");
-// COPY_ATTR(repr, object->getRepr(), "stemh");
-// COPY_ATTR(repr, object->getRepr(), "slope");
-// COPY_ATTR(repr, object->getRepr(), "cap-height");
-// COPY_ATTR(repr, object->getRepr(), "x-height");
-// COPY_ATTR(repr, object->getRepr(), "accent-height");
-// COPY_ATTR(repr, object->getRepr(), "ascent");
-// COPY_ATTR(repr, object->getRepr(), "descent");
-// COPY_ATTR(repr, object->getRepr(), "widths");
-// COPY_ATTR(repr, object->getRepr(), "bbox");
-// COPY_ATTR(repr, object->getRepr(), "ideographic");
-// COPY_ATTR(repr, object->getRepr(), "alphabetic");
-// COPY_ATTR(repr, object->getRepr(), "mathematical");
-// COPY_ATTR(repr, object->getRepr(), "hanging");
-// COPY_ATTR(repr, object->getRepr(), "v-ideographic");
-// COPY_ATTR(repr, object->getRepr(), "v-alphabetic");
-// COPY_ATTR(repr, object->getRepr(), "v-mathematical");
-// COPY_ATTR(repr, object->getRepr(), "v-hanging");
-// COPY_ATTR(repr, object->getRepr(), "underline-position");
-// COPY_ATTR(repr, object->getRepr(), "underline-thickness");
-// COPY_ATTR(repr, object->getRepr(), "strikethrough-position");
-// COPY_ATTR(repr, object->getRepr(), "strikethrough-thickness");
-// COPY_ATTR(repr, object->getRepr(), "overline-position");
-// COPY_ATTR(repr, object->getRepr(), "overline-thickness");
-// }
-//
-// if (((SPObjectClass *) (parent_class))->write) {
-// ((SPObjectClass *) (parent_class))->write(object, xml_doc, repr, flags);
-// }
-//
-// return repr;
- return ((SPFontFace*)object)->cfontface->onWrite(xml_doc, repr, flags);
-}
-
Inkscape::XML::Node* CFontFace::onWrite(Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) {
SPFontFace* object = this->spfontface;
@@ -1389,15 +828,10 @@ Inkscape::XML::Node* CFontFace::onWrite(Inkscape::XML::Document *xml_doc, Inksca
COPY_ATTR(repr, object->getRepr(), "overline-thickness");
}
-// if (((SPObjectClass *) (parent_class))->write) {
-// ((SPObjectClass *) (parent_class))->write(object, xml_doc, repr, flags);
-// }
CObject::onWrite(xml_doc, repr, flags);
return repr;
}
-
-#endif //#ifdef ENABLE_SVG_FONTS
/*
Local Variables:
mode:c++