⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vml.js

📁 OA系统实现以下功能: a、个人办公,我的办公桌 b、公文管理 c、工作流程 d、组织管理 e. 权限管理
💻 JS
📖 第 1 页 / 共 3 页
字号:
}, setShape:function (newShape) {	var shape = this.shape = dojo.gfx.makeParameters(this.shape, newShape);	this.bbox = null;	var style = this.rawNode.style;	style.left = shape.x.toFixed();	style.top = shape.y.toFixed();	style.width = (typeof (shape.width) == "string" && shape.width.indexOf("%") >= 0) ? shape.width : shape.width.toFixed();	style.height = (typeof (shape.width) == "string" && shape.height.indexOf("%") >= 0) ? shape.height : shape.height.toFixed();	var r = Math.min(1, (shape.r / Math.min(parseFloat(shape.width), parseFloat(shape.height)))).toFixed(8);	var parent = this.rawNode.parentNode;	var before = null;	if (parent) {		if (parent.lastChild != this.rawNode) {			for (var i = 0; i < parent.childNodes.length; ++i) {				if (parent.childNodes[i] == this.rawNode) {					before = parent.childNodes[i + 1];					break;				}			}		}		parent.removeChild(this.rawNode);	}	this.rawNode.arcsize = r;	if (parent) {		if (before) {			parent.insertBefore(this.rawNode, before);		} else {			parent.appendChild(this.rawNode);		}	}	return this.setTransform(this.matrix);}});dojo.gfx.Rect.nodeType = "roundrect";dojo.declare("dojo.gfx.Ellipse", dojo.gfx.shape.Ellipse, {attachShape:function (rawNode) {	var style = this.rawNode.style;	var rx = parseInt(style.width) / 2;	var ry = parseInt(style.height) / 2;	var o = dojo.gfx.makeParameters(dojo.gfx.defaultEllipse, {cx:parseInt(style.left) + rx, cy:parseInt(style.top) + ry, rx:rx, ry:ry});	return o;}, setShape:function (newShape) {	var shape = this.shape = dojo.gfx.makeParameters(this.shape, newShape);	this.bbox = null;	var style = this.rawNode.style;	style.left = (shape.cx - shape.rx).toFixed();	style.top = (shape.cy - shape.ry).toFixed();	style.width = (shape.rx * 2).toFixed();	style.height = (shape.ry * 2).toFixed();	return this.setTransform(this.matrix);}});dojo.gfx.Ellipse.nodeType = "oval";dojo.declare("dojo.gfx.Circle", dojo.gfx.shape.Circle, {attachShape:function (rawNode) {	var style = this.rawNode.style;	var r = parseInt(style.width) / 2;	var o = dojo.gfx.makeParameters(dojo.gfx.defaultCircle, {cx:parseInt(style.left) + r, cy:parseInt(style.top) + r, r:r});	return o;}, setShape:function (newShape) {	var shape = this.shape = dojo.gfx.makeParameters(this.shape, newShape);	this.bbox = null;	var style = this.rawNode.style;	style.left = (shape.cx - shape.r).toFixed();	style.top = (shape.cy - shape.r).toFixed();	style.width = (shape.r * 2).toFixed();	style.height = (shape.r * 2).toFixed();	return this;}});dojo.gfx.Circle.nodeType = "oval";dojo.declare("dojo.gfx.Line", dojo.gfx.shape.Line, function (rawNode) {	if (rawNode) {		rawNode.setAttribute("dojoGfxType", "line");	}}, {attachShape:function (rawNode) {	var p = rawNode.path.v.match(dojo.gfx.pathRegExp);	var shape = {};	do {		if (p.length < 7 || p[0] != "m" || p[3] != "l" || p[6] != "e") {			break;		}		shape.x1 = parseInt(p[1]);		shape.y1 = parseInt(p[2]);		shape.x2 = parseInt(p[4]);		shape.y2 = parseInt(p[5]);	} while (false);	return dojo.gfx.makeParameters(dojo.gfx.defaultLine, shape);}, setShape:function (newShape) {	var shape = this.shape = dojo.gfx.makeParameters(this.shape, newShape);	this.bbox = null;	this.rawNode.path.v = "m" + shape.x1.toFixed() + " " + shape.y1.toFixed() + "l" + shape.x2.toFixed() + " " + shape.y2.toFixed() + "e";	return this.setTransform(this.matrix);}});dojo.gfx.Line.nodeType = "shape";dojo.declare("dojo.gfx.Polyline", dojo.gfx.shape.Polyline, function (rawNode) {	if (rawNode) {		rawNode.setAttribute("dojoGfxType", "polyline");	}}, {attachShape:function (rawNode) {	var shape = dojo.lang.shallowCopy(dojo.gfx.defaultPolyline, true);	var p = rawNode.path.v.match(dojo.gfx.pathRegExp);	do {		if (p.length < 3 || p[0] != "m") {			break;		}		var x = parseInt(p[0]);		var y = parseInt(p[1]);		if (isNaN(x) || isNaN(y)) {			break;		}		shape.points.push({x:x, y:y});		if (p.length < 6 || p[3] != "l") {			break;		}		for (var i = 4; i < p.length; i += 2) {			x = parseInt(p[i]);			y = parseInt(p[i + 1]);			if (isNaN(x) || isNaN(y)) {				break;			}			shape.points.push({x:x, y:y});		}	} while (false);	return shape;}, setShape:function (points, closed) {	if (points && points instanceof Array) {		this.shape = dojo.gfx.makeParameters(this.shape, {points:points});		if (closed && this.shape.points.length) {			this.shape.points.push(this.shape.points[0]);		}	} else {		this.shape = dojo.gfx.makeParameters(this.shape, points);	}	this.bbox = null;	var attr = [];	var p = this.shape.points;	if (p.length > 0) {		attr.push("m");		attr.push(p[0].x.toFixed());		attr.push(p[0].y.toFixed());		if (p.length > 1) {			attr.push("l");			for (var i = 1; i < p.length; ++i) {				attr.push(p[i].x.toFixed());				attr.push(p[i].y.toFixed());			}		}	}	attr.push("e");	this.rawNode.path.v = attr.join(" ");	return this.setTransform(this.matrix);}});dojo.gfx.Polyline.nodeType = "shape";dojo.declare("dojo.gfx.Image", dojo.gfx.shape.Image, {getEventSource:function () {	return this.rawNode ? this.rawNode.firstChild : null;}, attachShape:function (rawNode) {	var shape = dojo.lang.shallowCopy(dojo.gfx.defaultImage, true);	shape.src = rawNode.firstChild.src;	return shape;}, setShape:function (newShape) {	var shape = this.shape = dojo.gfx.makeParameters(this.shape, newShape);	this.bbox = null;	var firstChild = this.rawNode.firstChild;	firstChild.src = shape.src;	if (shape.width || shape.height) {		firstChild.style.width = shape.width;		firstChild.style.height = shape.height;	}	return this.setTransform(this.matrix);}, setStroke:function () {	return this;}, setFill:function () {	return this;}, attachStroke:function (rawNode) {	return null;}, attachFill:function (rawNode) {	return null;}, attachTransform:function (rawNode) {	var matrix = {};	if (rawNode) {		var m = rawNode.filters["DXImageTransform.Microsoft.Matrix"];		matrix.xx = m.M11;		matrix.xy = m.M12;		matrix.yx = m.M21;		matrix.yy = m.M22;		matrix.dx = m.Dx;		matrix.dy = m.Dy;	}	return dojo.gfx.matrix.normalize(matrix);}, _applyTransform:function () {	var matrix = this._getRealMatrix();	if (!matrix) {		return this;	}	with (this.rawNode.filters["DXImageTransform.Microsoft.Matrix"]) {		M11 = matrix.xx;		M12 = matrix.xy;		M21 = matrix.yx;		M22 = matrix.yy;		Dx = matrix.dx;		Dy = matrix.dy;	}	return this;}});dojo.gfx.Image.nodeType = "image";dojo.gfx.path._calcArc = function (alpha) {	var cosa = Math.cos(alpha);	var sina = Math.sin(alpha);	var p2 = {x:cosa + (4 / 3) * (1 - cosa), y:sina - (4 / 3) * cosa * (1 - cosa) / sina};	return {s:{x:cosa, y:sina}, c1:p2, c2:{x:p2.x, y:-p2.y}, e:{x:cosa, y:-sina}};};dojo.declare("dojo.gfx.Path", dojo.gfx.path.Path, function (rawNode) {	if (rawNode) {		rawNode.setAttribute("dojoGfxType", "path");	}	this.vmlPath = "";	this.lastControl = {};}, {_updateWithSegment:function (segment) {	var last = dojo.lang.shallowCopy(this.last);	dojo.gfx.Path.superclass._updateWithSegment.apply(this, arguments);	var path = this[this.renderers[segment.action]](segment, last);	if (typeof (this.vmlPath) == "string") {		this.vmlPath += path.join("");	} else {		this.vmlPath = this.vmlPath.concat(path);	}	if (typeof (this.vmlPath) == "string") {		this.rawNode.path.v = this.vmlPath + " e";	}}, attachShape:function (rawNode) {	var shape = dojo.lang.shallowCopy(dojo.gfx.defaultPath, true);	var p = rawNode.path.v.match(dojo.gfx.pathRegExp);	var t = [], skip = false;	for (var i = 0; i < p.length; ++p) {		var s = p[i];		if (s in this._pathVmlToSvgMap) {			skip = false;			t.push(this._pathVmlToSvgMap[s]);		} else {			if (!skip) {				var n = parseInt(s);				if (isNaN(n)) {					skip = true;				} else {					t.push(n);				}			}		}	}	if (t.length) {		shape.path = t.join(" ");	}	return shape;}, setShape:function (newShape) {	this.vmlPath = [];	this.lastControl = {};	dojo.gfx.Path.superclass.setShape.apply(this, arguments);	this.vmlPath = this.vmlPath.join("");	this.rawNode.path.v = this.vmlPath + " e";	return this;}, _pathVmlToSvgMap:{m:"M", l:"L", t:"m", r:"l", c:"C", v:"c", qb:"Q", x:"z", e:""}, renderers:{M:"_moveToA", m:"_moveToR", L:"_lineToA", l:"_lineToR", H:"_hLineToA", h:"_hLineToR", V:"_vLineToA", v:"_vLineToR", C:"_curveToA", c:"_curveToR", S:"_smoothCurveToA", s:"_smoothCurveToR", Q:"_qCurveToA", q:"_qCurveToR", T:"_qSmoothCurveToA", t:"_qSmoothCurveToR", A:"_arcTo", a:"_arcTo", Z:"_closePath", z:"_closePath"}, _addArgs:function (path, args, from, upto) {	if (typeof (upto) == "undefined") {		upto = args.length;	}	if (typeof (from) == "undefined") {		from = 0;	}	for (var i = from; i < upto; ++i) {		path.push(" ");		path.push(args[i].toFixed());	}}, _addArgsAdjusted:function (path, last, args, from, upto) {	if (typeof (upto) == "undefined") {		upto = args.length;	}	if (typeof (from) == "undefined") {		from = 0;	}	for (var i = from; i < upto; i += 2) {		path.push(" ");		path.push((last.x + args[i]).toFixed());		path.push(" ");		path.push((last.y + args[i + 1]).toFixed());	}}, _moveToA:function (segment) {	var p = [" m"];	var n = segment.args;	var l = n.length;	if (l == 2) {		this._addArgs(p, n);	} else {		this._addArgs(p, n, 0, 2);		p.push(" l");		this._addArgs(p, n, 2);	}	this.lastControl = {};	return p;}, _moveToR:function (segment, last) {	var p = ["x" in last ? " t" : " m"];	var n = segment.args;	var l = n.length;	if (l == 2) {		this._addArgs(p, n);	} else {		this._addArgs(p, n, 0, 2);		p.push(" r");		this._addArgs(p, n, 2);	}	this.lastControl = {};	return p;}, _lineToA:function (segment) {	var p = [" l"];	this._addArgs(p, segment.args);	this.lastControl = {};	return p;}, _lineToR:function (segment) {	var p = [" r"];	this._addArgs(p, segment.args);	this.lastControl = {};	return p;}, _hLineToA:function (segment, last) {	var p = [" l"];	var n = segment.args;	var l = n.length;	var y = " " + last.y.toFixed();	for (var i = 0; i < l; ++i) {		p.push(" ");		p.push(n[i].toFixed());		p.push(y);	}	this.lastControl = {};	return p;}, _hLineToR:function (segment) {	var p = [" r"];	var n = segment.args;	var l = n.length;	for (var i = 0; i < l; ++i) {		p.push(" ");		p.push(n[i].toFixed());		p.push(" 0");	}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -