summaryrefslogtreecommitdiffstats
path: root/src/attributes.cpp
diff options
context:
space:
mode:
authorTavmjong Bah <tavmjong@free.fr>2016-06-12 08:25:42 +0000
committertavmjong-free <tavmjong@free.fr>2016-06-12 08:25:42 +0000
commit6ed2673499ca548767bb7d2edb453a228ece86fd (patch)
treed1a4293bbd40102f2c5aeea26991f05c786ed256 /src/attributes.cpp
parentExtensions: Use underscored variants of parameters / attribute names in inter... (diff)
downloadinkscape-6ed2673499ca548767bb7d2edb453a228ece86fd.tar.gz
inkscape-6ed2673499ca548767bb7d2edb453a228ece86fd.zip
Optionally sort attributes and properties into a canonical order.
Useful for comparing different versions of an SVG file. (bzr r14980)
Diffstat (limited to 'src/attributes.cpp')
-rw-r--r--src/attributes.cpp91
1 files changed, 51 insertions, 40 deletions
diff --git a/src/attributes.cpp b/src/attributes.cpp
index 24c16d5fc..e281dad65 100644
--- a/src/attributes.cpp
+++ b/src/attributes.cpp
@@ -420,11 +420,49 @@ static SPStyleProp const props[] = {
{SP_ATTR_TEXT_EXCLUDE,"inkscape:excludeShape"},
{SP_ATTR_LAYOUT_OPTIONS,"inkscape:layoutOptions"},
- /* CSS2 */
- {SP_PROP_INKSCAPE_FONT_SPEC, "-inkscape-font-specification"},
+ /* CSS & SVG Properites */
+
+ /* Paint */
+ {SP_PROP_COLOR, "color"},
+ {SP_PROP_OPACITY, "opacity"},
+ {SP_PROP_FILL, "fill"},
+ {SP_PROP_FILL_OPACITY, "fill-opacity"},
+ {SP_PROP_FILL_RULE, "fill-rule"},
+ {SP_PROP_STROKE, "stroke"},
+ {SP_PROP_STROKE_OPACITY, "stroke-opacity"},
+ {SP_PROP_STROKE_WIDTH, "stroke-width"},
+ {SP_PROP_STROKE_LINECAP, "stroke-linecap"},
+ {SP_PROP_STROKE_LINEJOIN, "stroke-linejoin"},
+ {SP_PROP_STROKE_MITERLIMIT, "stroke-miterlimit"},
+ {SP_PROP_STROKE_DASHARRAY, "stroke-dasharray"},
+ {SP_PROP_STROKE_DASHOFFSET, "stroke-dashoffset"},
+ {SP_PROP_MARKER, "marker"},
+ {SP_PROP_MARKER_END, "marker-end"},
+ {SP_PROP_MARKER_MID, "marker-mid"},
+ {SP_PROP_MARKER_START, "marker-start"},
+ {SP_PROP_PAINT_ORDER, "paint-order" },
+ {SP_PROP_SOLID_COLOR, "solid-color"},
+ {SP_PROP_SOLID_OPACITY, "solid-opacity"},
+
+ /* CSS Blending/Compositing */
+ {SP_PROP_MIX_BLEND_MODE, "mix-blend-mode"},
+ {SP_PROP_ISOLATION, "isolation"},
+
+ /* Misc. Display */
+ {SP_PROP_DISPLAY, "display"},
+ {SP_PROP_OVERFLOW, "overflow"},
+ {SP_PROP_VISIBILITY, "visibility"},
+
+ /* Clip/Mask */
+ {SP_PROP_CLIP, "clip"},
+ {SP_PROP_CLIP_PATH, "clip-path"},
+ {SP_PROP_CLIP_RULE, "clip-rule"},
+ {SP_PROP_MASK, "mask"},
+
/* Font */
{SP_PROP_FONT, "font"},
{SP_PROP_FONT_FAMILY, "font-family"},
+ {SP_PROP_INKSCAPE_FONT_SPEC, "-inkscape-font-specification"},
{SP_PROP_FONT_SIZE, "font-size"},
{SP_PROP_FONT_SIZE_ADJUST, "font-size-adjust"},
{SP_PROP_FONT_STRETCH, "font-stretch"},
@@ -449,7 +487,7 @@ static SPStyleProp const props[] = {
{SP_PROP_WORD_SPACING, "word-spacing"},
{SP_PROP_TEXT_TRANSFORM, "text-transform"},
- /* Text (css3) */
+ /* Text (CSS3) */
{SP_PROP_DIRECTION, "direction"},
{SP_PROP_WRITING_MODE, "writing-mode"},
{SP_PROP_TEXT_ORIENTATION, "text-orientation"},
@@ -470,70 +508,43 @@ static SPStyleProp const props[] = {
{SP_PROP_SHAPE_MARGIN, "shape-margin"},
/* Text Decoration */
- {SP_PROP_TEXT_DECORATION, "text-decoration"},
+ {SP_PROP_TEXT_DECORATION, "text-decoration"}, // CSS 2/CSS3-Shorthand
{SP_PROP_TEXT_DECORATION_LINE, "text-decoration-line"},
{SP_PROP_TEXT_DECORATION_STYLE, "text-decoration-style"},
{SP_PROP_TEXT_DECORATION_COLOR, "text-decoration-color"},
{SP_PROP_TEXT_DECORATION_FILL, "text-decoration-fill"},
{SP_PROP_TEXT_DECORATION_STROKE,"text-decoration-stroke"},
- /* Misc */
- {SP_PROP_CLIP, "clip"},
- {SP_PROP_COLOR, "color"},
- {SP_PROP_CURSOR, "cursor"},
- {SP_PROP_DISPLAY, "display"},
- {SP_PROP_OVERFLOW, "overflow"},
- {SP_PROP_VISIBILITY, "visibility"},
- {SP_PROP_MIX_BLEND_MODE, "mix-blend-mode"}, // CSS Blending and Compositing
- {SP_PROP_ISOLATION, "isolation"},
- /* SVG */
- /* Clip/Mask */
- {SP_PROP_CLIP_PATH, "clip-path"},
- {SP_PROP_CLIP_RULE, "clip-rule"},
- {SP_PROP_MASK, "mask"},
- {SP_PROP_OPACITY, "opacity"},
/* Filter */
{SP_PROP_ENABLE_BACKGROUND, "enable-background"},
{SP_PROP_FILTER, "filter"},
{SP_PROP_FLOOD_COLOR, "flood-color"},
{SP_PROP_FLOOD_OPACITY, "flood-opacity"},
{SP_PROP_LIGHTING_COLOR, "lighting-color"},
+
/* Gradient */
{SP_PROP_STOP_COLOR, "stop-color"},
{SP_PROP_STOP_OPACITY, "stop-opacity"},
{SP_PROP_STOP_PATH, "path"},
- /* Interactivity */
- {SP_PROP_POINTER_EVENTS, "pointer-events"},
- /* Paint */
+
+ /* Rendering */
{SP_PROP_COLOR_INTERPOLATION, "color-interpolation"},
{SP_PROP_COLOR_INTERPOLATION_FILTERS, "color-interpolation-filters"},
{SP_PROP_COLOR_PROFILE, "color-profile"},
{SP_PROP_COLOR_RENDERING, "color-rendering"},
- {SP_PROP_FILL, "fill"},
- {SP_PROP_FILL_OPACITY, "fill-opacity"},
- {SP_PROP_FILL_RULE, "fill-rule"},
{SP_PROP_IMAGE_RENDERING, "image-rendering"},
- {SP_PROP_MARKER, "marker"},
- {SP_PROP_MARKER_END, "marker-end"},
- {SP_PROP_MARKER_MID, "marker-mid"},
- {SP_PROP_MARKER_START, "marker-start"},
- {SP_PROP_PAINT_ORDER, "paint-order" },
{SP_PROP_SHAPE_RENDERING, "shape-rendering"},
- {SP_PROP_SOLID_COLOR, "solid-color"},
- {SP_PROP_SOLID_OPACITY, "solid-opacity"},
- {SP_PROP_STROKE, "stroke"},
- {SP_PROP_STROKE_DASHARRAY, "stroke-dasharray"},
- {SP_PROP_STROKE_DASHOFFSET, "stroke-dashoffset"},
- {SP_PROP_STROKE_LINECAP, "stroke-linecap"},
- {SP_PROP_STROKE_LINEJOIN, "stroke-linejoin"},
- {SP_PROP_STROKE_MITERLIMIT, "stroke-miterlimit"},
- {SP_PROP_STROKE_OPACITY, "stroke-opacity"},
- {SP_PROP_STROKE_WIDTH, "stroke-width"},
{SP_PROP_TEXT_RENDERING, "text-rendering"},
+
+ /* Interactivity */
+ {SP_PROP_POINTER_EVENTS, "pointer-events"},
+ {SP_PROP_CURSOR, "cursor"},
+
/* Conditional */
{SP_PROP_SYSTEM_LANGUAGE, "systemLanguage"},
{SP_PROP_REQUIRED_FEATURES, "requiredFeatures"},
{SP_PROP_REQUIRED_EXTENSIONS, "requiredExtensions"},
+
/* LivePathEffect */
{SP_PROP_PATH_EFFECT, "effect"},
};