sp-object-repr.cpp revision af0732a2bf24fbea12a085b855224577e7101851
#define __SP_OBJECT_REPR_C__
/*
* Object type dictionary and build frontend
*
* Authors:
* Lauris Kaplinski <lauris@kaplinski.com>
*
* Copyright (C) 1999-2003 Lauris Kaplinski
*
* Released under GNU GPL, read the file 'COPYING' for more information
*/
#include "sp-defs.h"
#include "sp-symbol.h"
#include "marker.h"
#include "sp-use.h"
#include "sp-root.h"
#include "sp-image.h"
#include "sp-linear-gradient-fns.h"
#include "sp-path.h"
#include "sp-radial-gradient-fns.h"
#include "sp-rect.h"
#include "box3d.h"
#include "sp-ellipse.h"
#include "sp-star.h"
#include "sp-stop-fns.h"
#include "sp-spiral.h"
#include "sp-offset.h"
#include "sp-line.h"
#include "sp-metadata.h"
#include "sp-polyline.h"
#include "sp-textpath.h"
#include "sp-tref.h"
#include "sp-tspan.h"
#include "sp-pattern.h"
#include "sp-clippath.h"
#include "sp-mask.h"
#include "sp-anchor.h"
//#include "sp-animation.h"
#include "sp-flowdiv.h"
#include "sp-flowregion.h"
#include "sp-flowtext.h"
#include "sp-style-elem.h"
#include "sp-switch.h"
#include "color-profile-fns.h"
#include "sp-filter.h"
#include "sp-gaussian-blur.h"
#include "sp-feblend.h"
#include "sp-fecolormatrix.h"
#include "sp-fecomponenttransfer.h"
#include "sp-fecomposite.h"
#include "sp-feconvolvematrix.h"
#include "sp-fediffuselighting.h"
#include "sp-fedistantlight.h"
#include "sp-fedisplacementmap.h"
#include "sp-feflood.h"
#include "sp-feimage.h"
#include "sp-femerge.h"
#include "sp-femorphology.h"
#include "sp-feoffset.h"
#include "sp-fepointlight.h"
#include "sp-fespecularlighting.h"
#include "sp-fespotlight.h"
#include "sp-fetile.h"
#include "sp-feturbulence.h"
/**
* Construct an SPRoot and all its descendents from the given repr.
*/
SPObject *
{
return object;
}
{
return SP_TYPE_STRING;
return ( type_name
} else {
return 0;
}
}
static void
{
NameTypeEntry const repr_name_entries[] = {
{ "svg:a", SP_TYPE_ANCHOR },
//{ "svg:animate", SP_TYPE_ANIMATE },
{ "svg:circle", SP_TYPE_CIRCLE },
{ "svg:color-profile", COLORPROFILE_TYPE },
{ "svg:clipPath", SP_TYPE_CLIPPATH },
{ "svg:defs", SP_TYPE_DEFS },
{ "svg:ellipse", SP_TYPE_ELLIPSE },
{ "svg:filter", SP_TYPE_FILTER },
/* Note: flow* elements are proposed additions for SVG 1.2, they aren't in
SVG 1.1. */
{ "svg:flowDiv", SP_TYPE_FLOWDIV },
{ "svg:flowLine", SP_TYPE_FLOWLINE },
{ "svg:flowPara", SP_TYPE_FLOWPARA },
{ "svg:flowRegion", SP_TYPE_FLOWREGION },
{ "svg:flowRegionBreak", SP_TYPE_FLOWREGIONBREAK },
{ "svg:flowRegionExclude", SP_TYPE_FLOWREGIONEXCLUDE },
{ "svg:flowRoot", SP_TYPE_FLOWTEXT },
{ "svg:flowSpan", SP_TYPE_FLOWTSPAN },
{ "svg:g", SP_TYPE_GROUP },
{ "svg:feBlend", SP_TYPE_FEBLEND },
{ "svg:feColorMatrix", SP_TYPE_FECOLORMATRIX },
{ "svg:feComponentTransfer", SP_TYPE_FECOMPONENTTRANSFER },
{ "svg:feComposite", SP_TYPE_FECOMPOSITE },
{ "svg:feConvolveMatrix", SP_TYPE_FECONVOLVEMATRIX },
{ "svg:feDiffuseLighting", SP_TYPE_FEDIFFUSELIGHTING },
{ "svg:feDistantLight", SP_TYPE_FEDISTANTLIGHT },
{ "svg:feDisplacementMap", SP_TYPE_FEDISPLACEMENTMAP },
{ "svg:feFlood", SP_TYPE_FEFLOOD },
{ "svg:feGaussianBlur", SP_TYPE_GAUSSIANBLUR },
{ "svg:feImage", SP_TYPE_FEIMAGE },
{ "svg:feMerge", SP_TYPE_FEMERGE },
{ "svg:feMorphology", SP_TYPE_FEMORPHOLOGY },
{ "svg:feOffset", SP_TYPE_FEOFFSET },
{ "svg:fePointLight", SP_TYPE_FEPOINTLIGHT },
{ "svg:feSpecularLighting", SP_TYPE_FESPECULARLIGHTING },
{ "svg:feSpotLight", SP_TYPE_FESPOTLIGHT },
{ "svg:feTile", SP_TYPE_FETILE },
{ "svg:feTurbulence", SP_TYPE_FETURBULENCE },
{ "svg:image", SP_TYPE_IMAGE },
{ "svg:line", SP_TYPE_LINE },
{ "svg:linearGradient", SP_TYPE_LINEARGRADIENT },
{ "svg:marker", SP_TYPE_MARKER },
{ "svg:mask", SP_TYPE_MASK },
{ "svg:metadata", SP_TYPE_METADATA },
{ "svg:path", SP_TYPE_PATH },
{ "svg:pattern", SP_TYPE_PATTERN },
{ "svg:polygon", SP_TYPE_POLYGON },
{ "svg:polyline", SP_TYPE_POLYLINE },
{ "svg:radialGradient", SP_TYPE_RADIALGRADIENT },
{ "svg:rect", SP_TYPE_RECT },
{ "svg:stop", SP_TYPE_STOP },
{ "svg:svg", SP_TYPE_ROOT },
{ "svg:style", SP_TYPE_STYLE_ELEM },
{ "svg:switch", SP_TYPE_SWITCH },
{ "svg:symbol", SP_TYPE_SYMBOL },
{ "svg:text", SP_TYPE_TEXT },
{ "svg:textPath", SP_TYPE_TEXTPATH },
{ "svg:tref", SP_TYPE_TREF },
{ "svg:tspan", SP_TYPE_TSPAN },
{ "svg:use", SP_TYPE_USE }
};
NameTypeEntry const sodipodi_name_entries[] = {
{ "arc", SP_TYPE_ARC },
{ "inkscape:offset", SP_TYPE_OFFSET },
{ "spiral", SP_TYPE_SPIRAL },
{ "star", SP_TYPE_STAR },
//{ "inkscape:3dboxface", SP_TYPE_3DBOX_FACE }
};
NameTypeEntry const *const t2entries[] = {
};
unsigned const t2n_entries[] = {
};
for (unsigned i = 0; i < n_entries; ++i) {
}
}
}
static inline void
{
if (!*t2dtable) {
}
}
static GType
{
}
void
{
if (current == SP_TYPE_OBJECT) {
} else {
/* Already registered. */
g_warning("repr type `%s' already registered as type #%lu, ignoring attempt to re-register as #%lu.",
}
}
}
/*
Local Variables:
mode:c++
c-file-style:"stroustrup"
c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
indent-tabs-mode:nil
fill-column:99
End:
*/
// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 :