blob: f8244f55b6237b35b56ef64039579eeb57f8bf22 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
// Invent new element
SVG.invent = function(config) {
/* create element initializer */
var initializer = typeof config.create == 'function' ?
config.create :
function() {
this.constructor.call(this, SVG.create(config.create))
}
/* inherit prototype */
if (config.inherit)
initializer.prototype = new config.inherit
/* extend with methods */
if (config.extend)
SVG.extend(initializer, config.extend)
/* attach construct method to parent */
if (config.construct)
SVG.extend(config.parent || SVG.Container, config.construct)
return initializer
}
|