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

📄 darwinlistbox.js

📁 Darwin Streaming Server5.5.5linux源代码
💻 JS
字号:
var dragRegionBoxes = new Array();var testCount = 0;// Constructor for DarwinListbox class.function DarwinListbox(window, id, locationX, locationY, width, height, background, bordercolor, highlightcolor, allowMultipleSelect, allowDrag, allowDrop, allowRearrange) {	// Remember some arguments for later.	this.window = window;	this.id = id;	this.body = '';	this.contents = new Array();	this.highlightcolor = highlightcolor;	this.mousedown = false;	this.allowMultipleSelect = allowMultipleSelect;	this.allowDrag = allowDrag;	this.allowDrop = allowDrop;	this.locationX = locationX;	this.locationY = locationY;	this.sizeX = width;	this.sizeY = height;	this.width = width;	this.height = height;	this.bordercolor = bordercolor;	// If this is droppable, add it to the list of droppable regions.	if (allowDrop)		dragRegionBoxes[dragRegionBoxes.length] = this;	this.allowRearrange = allowRearrange;	// Output a CSS-P style sheet for this document.	var d = window.document;	d.writeln('<style type="text/css">');	d.write('#' + id + ' { ');	width += 17;	d.write('overflow: scroll; ');	d.write('border-style: solid; ');	d.write('border-width: 1px; ');	d.write('border-color: ' + bordercolor + '; ');	d.write('background: ' + background + '; ');	if (width) d.write('width: ' + width + 'px; ');	if (height) d.write('height: ' + width + 'px; ');	d.writeln('}');	d.writeln('<' + '/style>');}// This will output the initial HTMLDarwinListbox.prototype.output = function() {	var d = this.window.document;		d.writeln('<div id="' + this.id + '">');	d.writeln(this.body);	d.writeln('<' + '/div>');		// save references to the element	this.element = d.getElementById(this.id);	this.style = this.element.style;		// set the document's events	if (document.captureEvents)		document.captureEvents(Event.MOUSEUP|Event.MOUSEDOWN|Event.MOUSEMOVE);}DarwinListbox.prototype.draw = function() {	var str = '';		for (var i in this.contents) {		str += '<div id="' + this.id + i + '" class="line-item" onmouseover="this.parent.handleMouseOver(this)" onmouseout="this.parent.handleMouseOut(this)" onselectstart="return false" onmousemove="this.parent.handleMouseOver(this)">';		this.contents[i].parent = this;		str += this.contents[i].draw();		str += '<' + '/div>';	}		this.element.innerHTML = str;		for (var i in this.contents) {		this.window.document.getElementById(this.id + i).parent = this;	}}DarwinListbox.prototype.selectOne = function(obj) {	var itemClicked = obj.id.replace(this.id, '');		// if the item is already selected, do nothing	if (!this.contents[itemClicked].selected) {		// deselect everything		for (var i in this.contents) {			this.window.document.getElementById(this.id + i).style.background = 'inherit';			this.contents[i].selected = false;		}		// select the clicked item		obj.style.background = this.highlightcolor;		this.contents[itemClicked].selected = true;				// send it a callback message so it can handle any UI changes		this.contents[itemClicked].onupdate();	}	else {	}	// set the last item clicked in case they shift-click next time	this.lastItemClicked = itemClicked;}DarwinListbox.prototype.handleMouseOver = function(obj) {	var d = this.window.document;	this.window.status = obj.id;	this.window.currentDarwinObj = obj;	if (d.onmousemove == darwinHandleMouseMove) {		if (this.allowDrop)			this.selectOne(obj);	}	else {		d.onmousedown = darwinHandleMouseDown;	}}// this gets called when the user mouses out of a list itemDarwinListbox.prototype.handleMouseOut = function(obj) {	if (this.window.document.onmousemove == darwinHandleMouseMove) {		this.window.currentDarwinObj = null;		this.window.document.onmousedown = null;	}}// this should get called when the user drops something onto the listboxDarwinListbox.prototype.handleDrop = function(obj) {	}function darwinHandleMouseDown(e) {	if (e) {		var currentX = e.pageX;		var currentY = e.pageY;	}	else {		var currentX = event.clientX + GetScrollPos(0);		var currentY = event.clientY + GetScrollPos(1);		e = window.event;	}	var itemClicked = window.currentDarwinObj.id.replace(window.currentDarwinObj.parent.id, '');	window.currentDarwinObj.parent.selectOne(window.currentDarwinObj);		// set up the drag widget, and send mouse move and up events to it	if (darwinDragWidget) {		var g = darwinDragWidget;		var d = window.document;		darwinOriginalDragX = currentX;		darwinOriginalDrayY = currentY;		g.contents = new Array(window.currentDarwinObj.parent.contents[itemClicked]);		g.draw();		d.onmousemove = darwinHandleMouseMove;		d.onmouseup = darwinHandleMouseUp;	}		this.mousedown = true;	return false;}

⌨️ 快捷键说明

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