summaryrefslogtreecommitdiffstats
path: root/share
diff options
context:
space:
mode:
authorJabier Arraiza <jabier.arraiza@marker.es>2017-11-03 00:10:02 +0000
committerJabier Arraiza <jabier.arraiza@marker.es>2017-11-03 00:10:02 +0000
commitd2df0412f728dd5bb54537dfdfe7c35b34d40e0e (patch)
treee2703384779e83312c456399999997fcc289c5cf /share
parentMerge branch 'master' into powerpencil (diff)
parentchange assignment to equality (diff)
downloadinkscape-d2df0412f728dd5bb54537dfdfe7c35b34d40e0e.tar.gz
inkscape-d2df0412f728dd5bb54537dfdfe7c35b34d40e0e.zip
Merge branch 'master' into powerpencil
Diffstat (limited to 'share')
-rw-r--r--share/attributes/css_defaults8
-rw-r--r--share/attributes/cssprops12
-rwxr-xr-xshare/attributes/genMapDataCSS.pl18
-rw-r--r--share/attributes/svgprops14
-rw-r--r--share/extensions/interp_att_g.inx13
-rwxr-xr-xshare/extensions/interp_att_g.py293
-rw-r--r--share/icons/draw-geometry-angle-bisector.svg81
-rw-r--r--share/icons/draw-geometry-circle-from-three-points.svg101
-rw-r--r--share/icons/draw-geometry-inactive.svg81
-rw-r--r--share/icons/draw-geometry-line-parallel.svg84
-rw-r--r--share/ui/style.css5
11 files changed, 470 insertions, 240 deletions
diff --git a/share/attributes/css_defaults b/share/attributes/css_defaults
index ff9b39b6d..1a5c4ccf3 100644
--- a/share/attributes/css_defaults
+++ b/share/attributes/css_defaults
@@ -78,6 +78,8 @@
"image-rendering" - "auto" - "yes"
+"inline-size" - "0" - "no"
+
"isolation" - "auto" - "no"
"kerning" - "auto" - "yes"
@@ -116,12 +118,12 @@
"shape-margin" - "0" - "no"
-"shape-outside" - "auto" - "no"
-
-"shape-padding" - "none" - "no"
+"shape-padding" - "0" - "no"
"shape-rendering" - "auto" - "yes"
+"shape-subtract" - "auto" - "no"
+
"solid-color" - "#000000" - "no"
"solid-opacity" - "1" - "no"
diff --git a/share/attributes/cssprops b/share/attributes/cssprops
index 5e796235e..18f04ce3c 100644
--- a/share/attributes/cssprops
+++ b/share/attributes/cssprops
@@ -78,6 +78,8 @@
"image-rendering" - "pattern","image","feImage","a","defs","glyph","g","marker","mask","missing-glyph","pattern","svg","switch","symbol","use"
+"inline-size" - "text"
+
"isolation" - "a","defs","glyph","g","marker","mask","missing-glyph","pattern","svg","switch","symbol","use","circle","ellipse","image","line","path","polygon","polyline","rect","text","flowRoot","use"
"kerning" - "altGlyph","textPath","text","tref","tspan","flowRoot","flowPara","flowSpan","a","defs","glyph","g","marker","mask","missing-glyph","pattern","svg","switch","symbol","use"
@@ -112,16 +114,16 @@
"pointer-events" - "circle","ellipse","image","line","path","polygon","polyline","rect","text","flowRoot","use","a","defs","glyph","g","marker","mask","missing-glyph","pattern","svg","switch","symbol","use"
-"shape-inside" - "altGlyph","textPath","text","tref","tspan","flowRoot","flowPara","flowSpan"
-
-"shape-margin" - "altGlyph","textPath","text","tref","tspan","flowRoot","flowPara","flowSpan"
+"shape-inside" - "text"
-"shape-outside" - "altGlyph","textPath","text","tref","tspan","flowRoot","flowPara","flowSpan"
+"shape-margin" - "text"
-"shape-padding" - "altGlyph","textPath","text","tref","tspan","flowRoot","flowPara","flowSpan"
+"shape-padding" - "text"
"shape-rendering" - "path","rect","circle","ellipse","line","polyline","polygon","a","defs","glyph","g","marker","mask","missing-glyph","pattern","svg","switch","symbol","use"
+"shape-subtract" - "text"
+
"solid-color" - "a","defs","glyph","g","marker","mask","missing-glyph","pattern","svg","switch","symbol","use","circle","ellipse","image","line","path","polygon","polyline","rect","text","flowRoot","use"
"solid-opacity" - "a","defs","glyph","g","marker","mask","missing-glyph","pattern","svg","switch","symbol","use","circle","ellipse","image","line","path","polygon","polyline","rect","text","flowRoot","use"
diff --git a/share/attributes/genMapDataCSS.pl b/share/attributes/genMapDataCSS.pl
index a6f432a47..91d09e37b 100755
--- a/share/attributes/genMapDataCSS.pl
+++ b/share/attributes/genMapDataCSS.pl
@@ -215,22 +215,26 @@ push @{$properties{ "white-space" }->{elements}}, @text_content_elements;
$properties{ "white-space" }->{default} = "normal";
$properties{ "white-space" }->{inherit} = "yes";
-push @{$properties{ "shape-inside" }->{elements}}, @text_content_elements;
+push @{$properties{ "shape-inside" }->{elements}}, "text";
$properties{ "shape-inside" }->{default} = "auto";
$properties{ "shape-inside" }->{inherit} = "no";
-push @{$properties{ "shape-outside" }->{elements}}, @text_content_elements;
-$properties{ "shape-outside" }->{default} = "auto";
-$properties{ "shape-outside" }->{inherit} = "no";
+push @{$properties{ "shape-subtract" }->{elements}}, "text";
+$properties{ "shape-subtract" }->{default} = "auto";
+$properties{ "shape-subtract" }->{inherit} = "no";
-push @{$properties{ "shape-padding" }->{elements}}, @text_content_elements;
-$properties{ "shape-padding" }->{default} = "none";
+push @{$properties{ "shape-padding" }->{elements}}, "text";
+$properties{ "shape-padding" }->{default} = "0";
$properties{ "shape-padding" }->{inherit} = "no";
-push @{$properties{ "shape-margin" }->{elements}}, @text_content_elements;
+push @{$properties{ "shape-margin" }->{elements}}, "text";
$properties{ "shape-margin" }->{default} = "0";
$properties{ "shape-margin" }->{inherit} = "no";
+push @{$properties{ "inline-size" }->{elements}}, "text";
+$properties{ "inline-size" }->{default} = "0";
+$properties{ "inline-size" }->{inherit} = "no";
+
#CSS Text Level 3
push @{$properties{ "text-indent" }->{elements}}, @container_elements;
diff --git a/share/attributes/svgprops b/share/attributes/svgprops
index 810ad5661..fc2c01d9b 100644
--- a/share/attributes/svgprops
+++ b/share/attributes/svgprops
@@ -516,6 +516,8 @@
"image-rendering" - "pattern","image","feImage","a","defs","glyph","g","marker","mask","missing-glyph","pattern","svg","switch","symbol","use"
+"inline-size" - "text"
+
"isolation" - "a","defs","glyph","g","marker","mask","missing-glyph","pattern","svg","switch","symbol","use","circle","ellipse","image","line","path","polygon","polyline","rect","text","flowRoot","use"
"kerning" - "altGlyph","textPath","text","tref","tspan","flowRoot","flowPara","flowSpan","a","defs","glyph","g","marker","mask","missing-glyph","pattern","svg","switch","symbol","use"
@@ -524,7 +526,7 @@
"lighting-color" - "feDiffuseLighting","feSpecularLighting"
-"line-height" - "text","flowRoot","flowPara"
+"line-height" - "text","tspan","flowRoot","flowPara"
"marker" - "path","line","polyline","polygon","a","defs","glyph","g","marker","mask","missing-glyph","pattern","svg","switch","symbol","use"
@@ -550,16 +552,16 @@
"pointer-events" - "circle","ellipse","image","line","path","polygon","polyline","rect","text","flowRoot","use","a","defs","glyph","g","marker","mask","missing-glyph","pattern","svg","switch","symbol","use"
-"shape-inside" - "altGlyph","textPath","text","tref","tspan","flowRoot","flowPara","flowSpan"
-
-"shape-margin" - "altGlyph","textPath","text","tref","tspan","flowRoot","flowPara","flowSpan"
+"shape-inside" - "text"
-"shape-outside" - "altGlyph","textPath","text","tref","tspan","flowRoot","flowPara","flowSpan"
+"shape-margin" - "text"
-"shape-padding" - "altGlyph","textPath","text","tref","tspan","flowRoot","flowPara","flowSpan"
+"shape-padding" - "text"
"shape-rendering" - "path","rect","circle","ellipse","line","polyline","polygon","a","defs","glyph","g","marker","mask","missing-glyph","pattern","svg","switch","symbol","use"
+"shape-subtract" - "text"
+
"solid-color" - "a","defs","glyph","g","marker","mask","missing-glyph","pattern","svg","switch","symbol","use","circle","ellipse","image","line","path","polygon","polyline","rect","text","flowRoot","use"
"solid-opacity" - "a","defs","glyph","g","marker","mask","missing-glyph","pattern","svg","switch","symbol","use","circle","ellipse","image","line","path","polygon","polyline","rect","text","flowRoot","use"
diff --git a/share/extensions/interp_att_g.inx b/share/extensions/interp_att_g.inx
index 7a0ef1d5c..5f6c3d7a4 100644
--- a/share/extensions/interp_att_g.inx
+++ b/share/extensions/interp_att_g.inx
@@ -16,8 +16,10 @@
<_item value="opacity">Opacity</_item>
<_item value="other">Other</_item>
</param>
- <_param name="other-info" type="description">If you select "Other", you must know the SVG attributes to identify here this "other".</_param>
- <param name="att-other" type="string" _gui-text="Other Attribute:"></param>
+
+ <_param name="other-header" type="description" appearance="header">Other Attribute</_param>
+ <_param name="other-info" type="description">If you selected "Other" above, you must specify the details for this "other" here.</_param>
+ <param name="att-other" type="string" _gui-text="Other Attribute:" _gui-description="Examples: r, width, inkscape:rounded, sodipodi:sides"></param>
<param name="att-other-type" type="enum" _gui-text="Other Attribute type:">
<_item value="color">Color</_item>
<_item value="int">Integer Number</_item>
@@ -28,9 +30,10 @@
<_item value="style">Style</_item>
<_item value="transform">Transformation</_item>
</param>
- <_param name="sep" type="description">••••••••••••••••••••••••••••••••••••••••••••••••</_param>
- <param name="start-val" type="string" _gui-text="Start Value:"></param>
- <param name="end-val" type="string" _gui-text="End Value:"></param>
+
+ <_param name="numbers" type="description" appearance="header">Values</_param>
+ <param name="start-val" type="string" _gui-text="Start Value:" _gui-description="Examples: 0.5, 5, #rgb, #rrggbb or r, g, b"></param>
+ <param name="end-val" type="string" _gui-text="End Value:" _gui-description="Examples: 0.5, 5, #rgb, #rrggbb or r, g, b"></param>
<param name="unit" type="enum" _gui-text="Unit:">
<_item value="none">No Unit</_item>
<_item value="color">Color</_item>
diff --git a/share/extensions/interp_att_g.py b/share/extensions/interp_att_g.py
index 8718caf41..ec6abbf47 100755
--- a/share/extensions/interp_att_g.py
+++ b/share/extensions/interp_att_g.py
@@ -17,6 +17,7 @@ along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
'''
# standard library
+import sys
import math
import re
import string
@@ -68,158 +69,168 @@ class InterpAttG(inkex.Effect):
help="The selected UI-tab when OK was pressed")
def getColorValues(self):
- sv = string.replace( self.options.start_val, '#', '' )
- ev = string.replace( self.options.end_val, '#', '' )
- if re.search('\s|,', sv):
- # There are separators. That must be a integer RGB color definition.
- sv = re.split( '[\s,]+', sv )
- ev = re.split( '[\s,]+', ev )
- self.R_ini = int( sv[0] )
- self.G_ini = int( sv[1] )
- self.B_ini = int( sv[2] )
- self.R_end = int( ev[0] )
- self.G_end = int( ev[1] )
- self.B_end = int( ev[2] )
- else:
- # There is no separator. That must be a Hex RGB color definition.
- if len(sv) == 3:
- self.R_ini = int( sv[0] + sv[0], 16 )
- self.G_ini = int( sv[1] + sv[1], 16 )
- self.B_ini = int( sv[2] + sv[2], 16 )
- self.R_end = int( ev[0] + ev[0], 16 )
- self.G_end = int( ev[1] + ev[1], 16 )
- self.B_end = int( ev[2] + ev[2], 16 )
- else: #the len must be 6
- self.R_ini = int( sv[0] + sv[1], 16 )
- self.G_ini = int( sv[2] + sv[3], 16 )
- self.B_ini = int( sv[4] + sv[5], 16 )
- self.R_end = int( ev[0] + ev[1], 16 )
- self.G_end = int( ev[2] + ev[3], 16 )
- self.B_end = int( ev[4] + ev[5], 16 )
- self.R_inc = ( self.R_end - self.R_ini ) / float( self.tot_el - 1 )
- self.G_inc = ( self.G_end - self.G_ini ) / float( self.tot_el - 1 )
- self.B_inc = ( self.B_end - self.B_ini ) / float( self.tot_el - 1 )
- self.R_cur = self.R_ini
- self.G_cur = self.G_ini
- self.B_cur = self.B_ini
+ sv = string.replace( self.options.start_val, '#', '' )
+ ev = string.replace( self.options.end_val, '#', '' )
+
+ # index 0: start color, index 1: end color
+ self.R, self.G, self.B = [0,0],[0,0],[0,0]
+ raw_colors = [sv, ev]
+
+ for i in [0,1]:
+ if re.search('\s|,', raw_colors[i]):
+ # There are separators. That must be an integer RGB color definition.
+ raw_colors[i] = re.split( '[\s,]+', raw_colors[i])
+ self.R[i] = int(raw_colors[i][0])
+ self.G[i] = int(raw_colors[i][1])
+ self.B[i] = int(raw_colors[i][2])
+ else:
+ # There is no separator. That must be a Hex RGB color definition.
+ if len(raw_colors[i]) == 3:
+ self.R[i] = int(raw_colors[i][0] + raw_colors[i][0], 16)
+ self.G[i] = int(raw_colors[i][1] + raw_colors[i][1], 16)
+ self.B[i] = int(raw_colors[i][2] + raw_colors[i][2], 16)
+ else: # the len must be 6
+ self.R[i] = int( raw_colors[i][0] + raw_colors[i][1], 16)
+ self.G[i] = int( raw_colors[i][2] + raw_colors[i][3], 16)
+ self.B[i] = int( raw_colors[i][4] + raw_colors[i][5], 16)
+
+ self.R_inc = (self.R[1] - self.R[0]) / float(self.tot_el - 1)
+ self.G_inc = (self.G[1] - self.G[0]) / float(self.tot_el - 1)
+ self.B_inc = (self.B[1] - self.B[0]) / float(self.tot_el - 1)
+ self.R_cur = self.R[0]
+ self.G_cur = self.G[0]
+ self.B_cur = self.B[0]
def getNumberValues(self):
- sv = self.options.start_val
- ev = self.options.end_val
- if self.inte_att_type and self.inte_att_type != 'none':
- sv = self.unittouu( sv + self.inte_att_type )
- ev = self.unittouu( ev + self.inte_att_type )
- self.val_cur = self.val_ini = sv
- self.val_end = ev
- self.val_inc = ( ev - sv ) / float( self.tot_el - 1 )
+ sv = self.options.start_val.replace(",", ".")
+ ev = self.options.end_val.replace(",", ".")
+ unit = self.options.unit
+
+ if unit != 'none':
+ sv = self.unittouu(sv + unit)
+ ev = self.unittouu(ev + unit)
+ else:
+ sv = float(sv)
+ ev = float(ev)
+ self.val_cur = self.val_ini = sv
+ self.val_end = ev
+ self.val_inc = (ev - sv)/float(self.tot_el - 1)
def getTotElements(self):
- self.tot_el = 0
- self.collection = None
- if len( self.selected ) == 0:
- return False
- if len( self.selected ) > 1:
- # multiple selection
- if self.options.zsort:
- sorted_ids = zSort(self.document.getroot(),self.selected.keys())
+ self.tot_el = 0
+ self.collection = None
+ if len( self.selected ) == 0:
+ return False
+ if len( self.selected ) > 1:
+ # multiple selection
+ if self.options.zsort:
+ sorted_ids = zSort(self.document.getroot(),self.selected.keys())
+ else:
+ sorted_ids = self.options.ids
+ self.collection = list(sorted_ids)
+ for i in sorted_ids:
+ path = '//*[@id="%s"]' % i
+ self.collection[self.tot_el] = self.document.xpath(path, namespaces=inkex.NSS)[0]
+ self.tot_el += 1
else:
- sorted_ids = self.options.ids
- self.collection = list(sorted_ids)
- for i in sorted_ids:
- path = '//*[@id="%s"]' % i
- self.collection[self.tot_el] = self.document.xpath(path, namespaces=inkex.NSS)[0]
- self.tot_el += 1
- else:
- # must be a group
- self.collection = self.selected[ self.options.ids[0] ]
- for i in self.collection:
- self.tot_el += 1
+ # must be a group
+ self.collection = self.selected[ self.options.ids[0] ]
+ for i in self.collection:
+ self.tot_el += 1
def effect(self):
- if self.options.att == 'other':
- self.inte_att = self.options.att_other
- self.inte_att_type = self.options.att_other_type
- self.where = self.options.att_other_where
- else:
- self.inte_att = self.options.att
- if self.inte_att == 'width':
- self.inte_att_type = 'float'
- self.where = 'tag'
- elif self.inte_att == 'height':
- self.inte_att_type = 'float'
- self.where = 'tag'
- elif self.inte_att == 'scale':
- self.inte_att_type = 'float'
- self.where = 'transform'
- elif self.inte_att == 'trans-x':
- self.inte_att_type = 'float'
- self.where = 'transform'
- elif self.inte_att == 'trans-y':
- self.inte_att_type = 'float'
- self.where = 'transform'
- elif self.inte_att == 'fill':
- self.inte_att_type = 'color'
- self.where = 'style'
- elif self.inte_att == 'opacity':
- self.inte_att_type = 'float'
- self.where = 'style'
-
- self.getTotElements()
-
- if self.inte_att_type == 'color':
- self.getColorValues()
- else:
- self.getNumberValues()
-
- if self.collection is None:
- inkex.errormsg( _('There is no selection to interpolate' ))
- return False
-
- for node in self.collection:
- if self.inte_att_type == 'color':
- val = 'rgb('+ \
- str(int(round(self.R_cur))) +','+ \
- str(int(round(self.G_cur))) +','+ \
- str(int(round(self.B_cur))) +')'
+ if self.options.att == 'other':
+ if self.options.att_other is not None:
+ self.inte_att = self.options.att_other
+ else:
+ inkex.errormsg(_("You selected 'Other'. Please enter an attribute to interpolate."))
+ sys.exit(0)
+ self.inte_att_type = self.options.att_other_type
+ self.where = self.options.att_other_where
else:
- if self.inte_att_type == 'float':
- val = self.val_cur
- else: # inte_att_type == 'int'
- val = round(self.val_cur)
-
- if self.where == 'style':
- s = node.get('style')
- re_find = '(^|;)'+ self.inte_att +':[^;]*(;|$)'
- if re.search( re_find, s ):
- s = re.sub( re_find, '\\1'+ self.inte_att +':'+ str(val) +'\\2', s )
- else:
- s += ';'+ self.inte_att +':'+ str(val)
- node.set( 'style', s )
- elif self.where == 'transform':
- t = node.get('transform')
- if t == None: t = ""
- if self.inte_att == 'trans-x':
- val = "translate("+ str(val) +",0)"
- elif self.inte_att == 'trans-y':
- val = "translate(0,"+ str(val) +")"
- else:
- val = self.inte_att + "("+ str(val) +")"
- node.set( 'transform', t +" "+ val )
- else: # self.where == 'tag':
- node.set( self.inte_att, str(val) )
+ self.inte_att = self.options.att
+ if self.inte_att == 'width':
+ self.inte_att_type = 'float'
+ self.where = 'tag'
+ elif self.inte_att == 'height':
+ self.inte_att_type = 'float'
+ self.where = 'tag'
+ elif self.inte_att == 'scale':
+ self.inte_att_type = 'float'
+ self.where = 'transform'
+ elif self.inte_att == 'trans-x':
+ self.inte_att_type = 'float'
+ self.where = 'transform'
+ elif self.inte_att == 'trans-y':
+ self.inte_att_type = 'float'
+ self.where = 'transform'
+ elif self.inte_att == 'fill':
+ self.inte_att_type = 'color'
+ self.where = 'style'
+ elif self.inte_att == 'opacity':
+ self.inte_att_type = 'float'
+ self.where = 'style'
+
+ self.getTotElements()
if self.inte_att_type == 'color':
- self.R_cur += self.R_inc
- self.G_cur += self.G_inc
- self.B_cur += self.B_inc
+ self.getColorValues()
else:
- self.val_cur += self.val_inc
-
- return True
-
-if __name__ == '__main__': #pragma: no cover
+ self.getNumberValues()
+
+ if self.collection is None:
+ inkex.errormsg( _('There is no selection to interpolate' ))
+ return False
+
+ for node in self.collection:
+ if self.inte_att_type == 'color':
+ val = 'rgb('+ \
+ str(int(round(self.R_cur))) +','+ \
+ str(int(round(self.G_cur))) +','+ \
+ str(int(round(self.B_cur))) +')'
+ else:
+ if self.inte_att_type == 'float':
+ val = self.val_cur
+ else: # inte_att_type == 'int'
+ val = int(round(self.val_cur))
+
+ if self.where == 'style':
+ s = node.get('style')
+ re_find = '(^|;)'+ self.inte_att +':[^;]*(;|$)'
+ if re.search( re_find, s ):
+ s = re.sub( re_find, '\\1'+ self.inte_att +':'+ str(val) +'\\2', s )
+ else:
+ s += ';'+ self.inte_att +':'+ str(val)
+ node.set( 'style', s )
+ elif self.where == 'transform':
+ t = node.get('transform')
+ if t == None: t = ""
+ if self.inte_att == 'trans-x':
+ val = "translate("+ str(val) +",0)"
+ elif self.inte_att == 'trans-y':
+ val = "translate(0,"+ str(val) +")"
+ else:
+ val = self.inte_att + "("+ str(val) +")"
+ node.set( 'transform', t +" "+ val )
+ else: # self.where == 'tag':
+ if ":" in self.inte_att:
+ ns, attrib = self.inte_att.split(":")
+ node.set(inkex.addNS(attrib, ns), str(val))
+ else:
+ node.set( self.inte_att, str(val) )
+
+ if self.inte_att_type == 'color':
+ self.R_cur += self.R_inc
+ self.G_cur += self.G_inc
+ self.B_cur += self.B_inc
+ else:
+ self.val_cur += self.val_inc
+
+ return True
+
+if __name__ == '__main__':
e = InterpAttG()
if e.affect():
- exit(0)
+ exit(0)
else:
- exit(1)
+ exit(1)
diff --git a/share/icons/draw-geometry-angle-bisector.svg b/share/icons/draw-geometry-angle-bisector.svg
index 658a65cad..653fea952 100644
--- a/share/icons/draw-geometry-angle-bisector.svg
+++ b/share/icons/draw-geometry-angle-bisector.svg
@@ -1,31 +1,78 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://web.resource.org/cc/"
+ xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
- xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
id="svg1"
width="12.9533"
height="14.23832"
- >
+ version="1.1"
+ sodipodi:docname="draw-geometry-angle-bisector.svg"
+ inkscape:version="0.92+devel (525c6c0c7e, 2017-10-06)">
+ <metadata
+ id="metadata8">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
<sodipodi:namedview
id="base"
showgrid="true"
- gridspacingy="1pt"
- gridspacingx="1pt"
- gridoriginy="0pt"
- gridoriginx="0pt"
- />
- <defs id="defs3">
-
- </defs>
-<g id="draw-geometry-angle-bisector" inkscape:label="angle_bisector" transform="translate(130)">
- <path d="M 683.5954,101.6495 672.621,88.41118" id="path4418-8-1" inkscape:connector-curvature="0" sodipodi:nodetypes="cc" style="fill:none;stroke:#da0000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0;stroke-opacity:0.7272727"/>
- <path d="M 677.4691,101.0666 674.8286,90.9351 684.5743,95.67784" id="path4418-8-1-0" inkscape:connector-curvature="0" sodipodi:nodetypes="ccc" style="fill:none;stroke:#5a5a5a;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0"/>
-</g>
-
+ inkscape:document-rotation="0"
+ inkscape:snap-nodes="false"
+ inkscape:snap-bbox="true"
+ inkscape:bbox-paths="true"
+ inkscape:bbox-nodes="true"
+ inkscape:snap-bbox-edge-midpoints="true"
+ inkscape:snap-bbox-midpoints="true"
+ inkscape:zoom="17.101737"
+ inkscape:cx="6.73473"
+ inkscape:cy="4.0929479"
+ inkscape:window-width="1366"
+ inkscape:window-height="704"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="svg1">
+ <inkscape:grid
+ id="GridFromPre046Settings"
+ type="xygrid"
+ originx="0pt"
+ originy="0pt"
+ spacingx="1pt"
+ spacingy="1pt"
+ color="#3f3fff"
+ empcolor="#3f3fff"
+ opacity="0.15"
+ empopacity="0.38"
+ empspacing="5" />
+ </sodipodi:namedview>
+ <defs
+ id="defs3" />
+ <g
+ id="draw-geometry-angle-bisector"
+ inkscape:label="angle_bisector"
+ transform="translate(-672.121,-87.91118)">
+ <path
+ d="M 683.5954,101.6495 672.621,88.41118"
+ id="path4418-8-1"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cc"
+ style="fill:none;stroke:#da0000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0;stroke-opacity:0.72727266" />
+ <path
+ d="m 677.4691,101.0666 -2.6405,-10.1315 9.7457,4.74274"
+ id="path4418-8-1-0"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="ccc"
+ style="fill:none;stroke:#5a5a5a;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0" />
+ </g>
</svg>
diff --git a/share/icons/draw-geometry-circle-from-three-points.svg b/share/icons/draw-geometry-circle-from-three-points.svg
index 44369c964..0222f214d 100644
--- a/share/icons/draw-geometry-circle-from-three-points.svg
+++ b/share/icons/draw-geometry-circle-from-three-points.svg
@@ -1,33 +1,96 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://web.resource.org/cc/"
+ xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
- xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
id="svg1"
width="14.334814"
height="14.009079"
- >
+ version="1.1"
+ sodipodi:docname="draw-geometry-circle-from-three-points.svg"
+ inkscape:version="0.92+devel (525c6c0c7e, 2017-10-06)">
+ <metadata
+ id="metadata168">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
<sodipodi:namedview
id="base"
showgrid="true"
- gridspacingy="1pt"
- gridspacingx="1pt"
- gridoriginy="0pt"
- gridoriginx="0pt"
- />
- <defs id="defs3">
-
- </defs>
-<g id="draw-geometry-circle-from-three-points" inkscape:label="circle_3pts" transform="translate(70)">
- <path d="M 658.0599,95.55848 C 658.0599,96.36229 657.9001,97.16579 657.5925,97.90842 657.2849,98.65104 656.8297,99.33222 656.2614,99.90059 655.6931,100.469 655.012,100.9241 654.2696,101.2317 653.5272,101.5392 652.724,101.699 651.9207,101.699 651.1174,101.6989 650.3146,101.5391 649.5727,101.2314 648.8308,100.9238 648.1505,100.4686 647.5829,99.90024 647.0153,99.33186 646.5608,98.65074 646.2537,97.90817 645.9466,97.16561 645.787,96.3622 645.787,95.55848 645.787,94.75475 645.9466,93.95134 646.2537,93.20878 646.5608,92.46622 647.0153,91.78509 647.5829,91.21671 648.1505,90.64834 648.8308,90.19318 649.5727,89.88554 650.3146,89.5779 651.1174,89.41802 651.9207,89.41797 652.724,89.41793 653.5272,89.57771 654.2696,89.88528 655.012,90.19286 655.6931,90.64799 656.2614,91.21636 656.8297,91.78474 657.2849,92.46591 657.5925,93.20854 657.9001,93.95116 658.0599,94.75466 658.0599,95.55848" id="path2526" inkscape:connector-curvature="0" style="fill:none;stroke:#5a5a5a;stroke-linecap:square;stroke-linejoin:bevel;stroke-miterlimit:4.27;stroke-dashoffset:23.2000008"/>
- <rect height="2.558726" id="use5845-6" style="color:#000000;fill:#ff2100;fill-opacity:0.3921569;fill-rule:evenodd;stroke:#d40000;stroke-width:0.6444077;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0" transform="matrix(1,0,0,1,690.7581,-96.67858)" width="2.550238" x="-41.81641" y="185.1907"/>
- <rect height="2.558726" id="use5845-6-1" style="color:#000000;fill:#ff2100;fill-opacity:0.3921569;fill-rule:evenodd;stroke:#d40000;stroke-width:0.6444077;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0" transform="matrix(1,0,0,1,686.3637,-90.33765)" width="2.550238" x="-41.81641" y="185.1907"/>
- <rect height="2.558726" id="use5845-6-1-9" style="color:#000000;fill:#ff2100;fill-opacity:0.3921569;fill-rule:evenodd;stroke:#d40000;stroke-width:0.6444077;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0" transform="matrix(1,0,0,1,697.4319,-87.13558)" width="2.550238" x="-41.81641" y="185.1907"/>
-</g>
-
+ inkscape:document-rotation="0"
+ inkscape:snap-grids="false"
+ inkscape:snap-object-midpoints="false"
+ inkscape:snap-page="true"
+ inkscape:snap-bbox="true"
+ inkscape:snap-nodes="false"
+ inkscape:bbox-nodes="true"
+ inkscape:bbox-paths="true"
+ inkscape:zoom="17.381585"
+ inkscape:cx="6.845203"
+ inkscape:cy="2.2173247"
+ inkscape:window-width="1366"
+ inkscape:window-height="704"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="svg1">
+ <inkscape:grid
+ id="GridFromPre046Settings"
+ type="xygrid"
+ originx="0pt"
+ originy="0pt"
+ spacingx="1pt"
+ spacingy="1pt"
+ color="#3f3fff"
+ empcolor="#3f3fff"
+ opacity="0.15"
+ empopacity="0.38"
+ empspacing="5" />
+ </sodipodi:namedview>
+ <defs
+ id="defs3" />
+ <g
+ id="draw-geometry-circle-from-three-points"
+ inkscape:label="circle_3pts"
+ transform="translate(-644.22509,-88.189921)">
+ <path
+ d="m 658.0599,95.55848 c 0,0.80381 -0.1598,1.60731 -0.4674,2.34994 -0.3076,0.74262 -0.7628,1.4238 -1.3311,1.99217 -0.5683,0.56841 -1.2494,1.02351 -1.9918,1.33111 -0.7424,0.3075 -1.5456,0.4673 -2.3489,0.4673 -0.8033,-1e-4 -1.6061,-0.1599 -2.348,-0.4676 -0.7419,-0.3076 -1.4222,-0.7628 -1.9898,-1.33116 -0.5676,-0.56838 -1.0221,-1.2495 -1.3292,-1.99207 -0.3071,-0.74256 -0.4667,-1.54597 -0.4667,-2.34969 0,-0.80373 0.1596,-1.60714 0.4667,-2.3497 0.3071,-0.74256 0.7616,-1.42369 1.3292,-1.99207 0.5676,-0.56837 1.2479,-1.02353 1.9898,-1.33117 0.7419,-0.30764 1.5447,-0.46752 2.348,-0.46757 0.8033,-4e-5 1.6065,0.15974 2.3489,0.46731 0.7424,0.30758 1.4235,0.76271 1.9918,1.33108 0.5683,0.56838 1.0235,1.24955 1.3311,1.99218 0.3076,0.74262 0.4674,1.54612 0.4674,2.34994"
+ id="path2526"
+ inkscape:connector-curvature="0"
+ style="fill:none;stroke:#5a5a5a;stroke-linecap:square;stroke-linejoin:bevel;stroke-miterlimit:4.26999998;stroke-dashoffset:23.20000076" />
+ <rect
+ height="2.5587261"
+ id="use5845-6"
+ style="color:#000000;fill:#ff2100;fill-opacity:0.39215692;fill-rule:evenodd;stroke:#d40000;stroke-width:0.64440769;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0"
+ transform="translate(690.7581,-96.67858)"
+ width="2.5502379"
+ x="-41.81641"
+ y="185.1907" />
+ <rect
+ height="2.5587261"
+ id="use5845-6-1"
+ style="color:#000000;fill:#ff2100;fill-opacity:0.39215692;fill-rule:evenodd;stroke:#d40000;stroke-width:0.64440769;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0"
+ transform="translate(686.3637,-90.33765)"
+ width="2.5502379"
+ x="-41.81641"
+ y="185.1907" />
+ <rect
+ height="2.5587261"
+ id="use5845-6-1-9"
+ style="color:#000000;fill:#ff2100;fill-opacity:0.39215692;fill-rule:evenodd;stroke:#d40000;stroke-width:0.64440769;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0"
+ transform="translate(697.4319,-87.13558)"
+ width="2.5502379"
+ x="-41.81641"
+ y="185.1907" />
+ </g>
</svg>
diff --git a/share/icons/draw-geometry-inactive.svg b/share/icons/draw-geometry-inactive.svg
index 5dc608ae4..1d948c6d7 100644
--- a/share/icons/draw-geometry-inactive.svg
+++ b/share/icons/draw-geometry-inactive.svg
@@ -1,32 +1,77 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://web.resource.org/cc/"
+ xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
- xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
id="svg1"
width="20.25"
height="24"
- >
+ version="1.1"
+ sodipodi:docname="draw-geometry-inactive.svg"
+ inkscape:version="0.92+devel (525c6c0c7e, 2017-10-06)">
+ <metadata
+ id="metadata55">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
<sodipodi:namedview
id="base"
showgrid="true"
- gridspacingy="1pt"
- gridspacingx="1pt"
- gridoriginy="0pt"
- gridoriginx="0pt"
- />
- <defs id="defs3">
-
- </defs>
-<g id="draw-geometry-inactive" inkscape:label="all_inactive_old" transform="translate(50.20458)">
- <rect height="24" id="rect5112" style="color:#000000;fill:none;stroke-width:3" width="20.25" x="612.75" y="85.50002"/>
- <path d="M 617.649,102.882 628.1009,92.11811" id="path6027" inkscape:connector-curvature="0" style="fill:none;stroke:#000000;stroke-width:4.2362256;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4.27;stroke-dashoffset:23.2000008"/>
- <path d="M 628.2568,102.7259 617.4932,92.2741" id="path6027-1" inkscape:connector-curvature="0" style="fill:none;stroke:#000000;stroke-width:4.2362256;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4.27;stroke-dashoffset:23.2000008"/>
-</g>
-
+ inkscape:document-rotation="0"
+ inkscape:zoom="20.291667"
+ inkscape:cx="10.125"
+ inkscape:cy="12"
+ inkscape:window-width="1366"
+ inkscape:window-height="704"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="svg1">
+ <inkscape:grid
+ id="GridFromPre046Settings"
+ type="xygrid"
+ originx="0pt"
+ originy="0pt"
+ spacingx="1pt"
+ spacingy="1pt"
+ color="#3f3fff"
+ empcolor="#3f3fff"
+ opacity="0.15"
+ empopacity="0.38"
+ empspacing="5" />
+ </sodipodi:namedview>
+ <defs
+ id="defs3" />
+ <g
+ id="draw-geometry-inactive"
+ inkscape:label="all_inactive_old"
+ transform="translate(-612.75,-85.500023)">
+ <rect
+ height="24"
+ id="rect5112"
+ style="color:#000000;fill:none;stroke-width:3"
+ width="20.25"
+ x="612.75"
+ y="85.500023" />
+ <path
+ d="M 617.649,102.882 628.1009,92.11811"
+ id="path6027"
+ inkscape:connector-curvature="0"
+ style="fill:none;stroke:#000000;stroke-width:4.23622561;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4.26999998;stroke-dashoffset:23.20000076" />
+ <path
+ d="M 628.2568,102.7259 617.4932,92.2741"
+ id="path6027-1"
+ inkscape:connector-curvature="0"
+ style="fill:none;stroke:#000000;stroke-width:4.23622561;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4.26999998;stroke-dashoffset:23.20000076" />
+ </g>
</svg>
diff --git a/share/icons/draw-geometry-line-parallel.svg b/share/icons/draw-geometry-line-parallel.svg
index e23d3bb94..c23445a84 100644
--- a/share/icons/draw-geometry-line-parallel.svg
+++ b/share/icons/draw-geometry-line-parallel.svg
@@ -1,31 +1,81 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
- xmlns:cc="http://web.resource.org/cc/"
+ xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
- xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
id="svg1"
width="13.031294"
height="15.121222"
- >
+ version="1.1"
+ sodipodi:docname="draw-geometry-line-parallel.svg"
+ inkscape:version="0.92+devel (525c6c0c7e, 2017-10-06)">
+ <metadata
+ id="metadata119">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
<sodipodi:namedview
id="base"
showgrid="true"
- gridspacingy="1pt"
- gridspacingx="1pt"
- gridoriginy="0pt"
- gridoriginx="0pt"
- />
- <defs id="defs3">
-
- </defs>
-<g id="draw-geometry-line-parallel" inkscape:label="parallel" transform="rotate(64.5595,722.6571,164.0529)">
- <path d="M 672.4285,92.87286 687.1351,89.60546" id="path4418-8-1-0-1-4-4" inkscape:connector-curvature="0" sodipodi:nodetypes="cc" style="fill:none;stroke:#da0000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0;stroke-opacity:0.7254902"/>
- <path d="M 673.2681,96.33213 687.9748,93.06472" id="path4418-8-1-0-1-4-4-6" inkscape:connector-curvature="0" sodipodi:nodetypes="cc" style="fill:none;stroke:#5a5a5a;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0"/>
-</g>
-
+ inkscape:document-rotation="0"
+ inkscape:snap-nodes="true"
+ inkscape:snap-bbox="true"
+ inkscape:bbox-nodes="false"
+ inkscape:bbox-paths="true"
+ inkscape:snap-bbox-midpoints="false"
+ inkscape:snap-bbox-edge-midpoints="false"
+ inkscape:snap-others="false"
+ inkscape:snap-page="true"
+ inkscape:object-nodes="false"
+ inkscape:zoom="32.206391"
+ inkscape:cx="6.6666632"
+ inkscape:cy="10.918672"
+ inkscape:window-width="1366"
+ inkscape:window-height="704"
+ inkscape:window-x="0"
+ inkscape:window-y="0"
+ inkscape:window-maximized="1"
+ inkscape:current-layer="svg1">
+ <inkscape:grid
+ id="GridFromPre046Settings"
+ type="xygrid"
+ originx="0pt"
+ originy="0pt"
+ spacingx="1pt"
+ spacingy="1pt"
+ color="#3f3fff"
+ empcolor="#3f3fff"
+ opacity="0.15"
+ empopacity="0.38"
+ empspacing="5" />
+ </sodipodi:namedview>
+ <defs
+ id="defs3" />
+ <g
+ id="draw-geometry-line-parallel"
+ inkscape:label="parallel"
+ transform="rotate(64.5595,410.95101,-482.96413)">
+ <path
+ d="m 672.4285,92.87286 14.7066,-3.2674"
+ id="path4418-8-1-0-1-4-4"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cc"
+ style="fill:none;stroke:#da0000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0;stroke-opacity:0.7254902" />
+ <path
+ d="m 673.2681,96.33213 14.7067,-3.26741"
+ id="path4418-8-1-0-1-4-4-6"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cc"
+ style="fill:none;stroke:#5a5a5a;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:0" />
+ </g>
</svg>
diff --git a/share/ui/style.css b/share/ui/style.css
index f2883fda4..92b3c412c 100644
--- a/share/ui/style.css
+++ b/share/ui/style.css
@@ -88,7 +88,8 @@ combobox window.popup scrolledwindow treeview separator {
-GtkComboBox-appears-as-list: true;
}
-#LockGuides {
+#LockGuides,
+#StickyZoom,
+#CMS_Adjust {
padding: 0;
}
-