summaryrefslogtreecommitdiffstats
path: root/src/marker.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/marker.js')
-rw-r--r--src/marker.js62
1 files changed, 30 insertions, 32 deletions
diff --git a/src/marker.js b/src/marker.js
index fc4bf4e..32f8e4e 100644
--- a/src/marker.js
+++ b/src/marker.js
@@ -1,44 +1,43 @@
SVG.Marker = SVG.invent({
// Initialize node
- create: 'marker'
+ create: 'marker',
// Inherit from
-, inherit: SVG.Container
+ inherit: SVG.Container,
// Add class methods
-, extend: {
+ extend: {
// Set width of element
- width: function(width) {
+ width: function (width) {
return this.attr('markerWidth', width)
- }
+ },
// Set height of element
- , height: function(height) {
+ height: function (height) {
return this.attr('markerHeight', height)
- }
+ },
// Set marker refX and refY
- , ref: function(x, y) {
+ ref: function (x, y) {
return this.attr('refX', x).attr('refY', y)
- }
+ },
// Update marker
- , update: function(block) {
- // remove all content
+ update: function (block) {
+ // remove all content
this.clear()
-
- // invoke passed block
- if (typeof block == 'function')
- block.call(this, this)
-
+
+ // invoke passed block
+ if (typeof block === 'function') { block.call(this, this) }
+
return this
- }
+ },
// Return the fill id
- , toString: function() {
+ toString: function () {
return 'url(#' + this.id() + ')'
}
- }
+ },
// Add parent method
-, construct: {
- marker: function(width, height, block) {
+ construct: {
+ marker: function (width, height, block) {
// Create marker element in defs
return this.defs().marker(width, height, block)
}
@@ -48,33 +47,32 @@ SVG.Marker = SVG.invent({
SVG.extend(SVG.Defs, {
// Create marker
- marker: function(width, height, block) {
+ marker: function (width, height, block) {
// Set default viewbox to match the width and height, set ref to cx and cy and set orient to auto
- return this.put(new SVG.Marker)
+ return this.put(new SVG.Marker())
.size(width, height)
.ref(width / 2, height / 2)
.viewbox(0, 0, width, height)
.attr('orient', 'auto')
.update(block)
}
-
+
})
SVG.extend([SVG.Line, SVG.Polyline, SVG.Polygon, SVG.Path], {
// Create and attach markers
- marker: function(marker, width, height, block) {
+ marker: function (marker, width, height, block) {
var attr = ['marker']
// Build attribute name
- if (marker != 'all') attr.push(marker)
+ if (marker !== 'all') attr.push(marker)
attr = attr.join('-')
// Set marker attribute
- marker = arguments[1] instanceof SVG.Marker ?
- arguments[1] :
- this.doc().marker(width, height, block)
-
+ marker = arguments[1] instanceof SVG.Marker
+ ? arguments[1]
+ : this.doc().marker(width, height, block)
+
return this.attr(attr, marker)
}
-
-}) \ No newline at end of file
+})