home *** CD-ROM | disk | FTP | other *** search
- <PUBLIC:COMPONENT tagName="EAHTML_ScrollBar" lightWeight="true" >
- <PUBLIC:PROPERTY NAME="name" />
- <PUBLIC:PROPERTY NAME="size" />
- <PUBLIC:PROPERTY NAME="orient" />
- <PUBLIC:PROPERTY NAME="type" />
- <PUBLIC:PROPERTY NAME="top_pos" />
- <PUBLIC:PROPERTY NAME="left_pos" />
- <PUBLIC:PROPERTY NAME="max_value" />
- <PUBLIC:PROPERTY NAME="min_value" />
- <PUBLIC:PROPERTY NAME="page_value" />
- <PUBLIC:PROPERTY NAME="ondrag_fire_event" />
- <PUBLIC:PROPERTY NAME="skin" />
- <PUBLIC:PROPERTY NAME="thumb_size" />
- <PUBLIC:PROPERTY NAME="value" GET="GetCurrentValue" />
- <PUBLIC:PROPERTY NAME="track_size" GET="GetCurrentTrackSize" />
-
- <PUBLIC:METHOD NAME="SetThumbHtml" />
- <PUBLIC:METHOD NAME="SetValue" />
- <PUBLIC:METHOD NAME="SetSkin" />
- <PUBLIC:METHOD NAME="ShowValueOnThumb" />
-
- <PUBLIC:ATTACH EVENT="onpropertychange" ONEVENT="DoPropChange();" />
-
- <PUBLIC:EVENT NAME="ondisabled" ID="OnDisabled" />
- <PUBLIC:EVENT NAME="onchange" ID="OnChange" />
- <PUBLIC:EVENT NAME="onerror" ID="OnError" />
- <PUBLIC:EVENT NAME="onscrollstop" ID="OnScrollStop" />
- </PUBLIC:COMPONENT>
- <script>
-
- var Slider = element.document.parentWindow.Slider;
- var aSlider = null;
- var name = (element.name) ? (element.name) : element.uniqueID;
- var type = (element.type) ? (element.type + "") : "scrollbar";
- var size = (element.size) ? (element.size - 0) : 200;
- var thumb_size = (element.thumb_size) ? (element.thumb_size - 0) :30;
- var page_value = (element.page_value) ? (element.page_value - 0) : (isNaN(element.page_value)) ? 1 : element.page_value;
- var min_value = (element.min_value) ? (element.min_value -0) : 0;
- var max_value = (element.max_value) ? (element.max_value -0) : 1;
- var skin = (element.skin) ? element.skin + "" : "";
- var top_pos = element.top_pos;
- var left_pos = element.left_pos;
- var ondrag_fire_event = (element.ondrag_fire_event == "true") ? true : false;
-
- if ( (!isNaN(top_pos)) && (!isNaN(left_pos)) ) {
- element.style.position = "absolute";
- element.style.pixelLeft = left_pos;
- element.style.pixelTop = top_pos;
- };
- element.id = name;
-
- if (!skin) {
- if (type == "slider") {
- aSlider = new Slider(element.document.parentWindow, size, orient, thumb_size, min_value, max_value, page_value, 1, Slider.DefaultSkins.hs);
- aSlider.onDrag_fireOnChange(false);
- } else {
- aSlider = new Slider(element.document.parentWindow, size, orient, thumb_size, min_value, max_value, page_value, 1);
- aSlider.onDrag_fireOnChange(Boolean(ondrag_fire_event));
- };
- } else {
- aSlider.setSkin(eval(skin));
- };
- aSlider.onchange = function()
- {
- var eventObject = createEventObject();
- eventObject.scrollValue = aSlider.getValue();
- OnChange.fire(eventObject);
- };
- aSlider.write(element.document.parentWindow, element, "beforeEnd");
-
- function SetThumbHTML() { /*stub so stuff doesn't break;*/ }; //deprecated
- function ShowValueOnThumb(bool) { aSlider.showValueOnThumb(bool); bool = null; };
- function SetValue(newValue, fireOnChange) { aSlider.setValue(newValue, fireOnChange); };
- function SetSkin() { aSlider.setSkin(); };
- function GetCurrentValue() { return aSlider.getValue(); };
- function GetCurrentTrackSize() { return aSlider.getTrackSize(); };
-
- function DoPropChange()
- {
- switch(event.propertyName) {
- case "min_value":
- aSlider.setValueRange(min_value -0, aSlider.getMaxValue());
- break;
- case "max_value":
- aSlider.setValueRange(aSlider.getMinValue(), max_value-0);
- break;
- case "thumb_size":
- if (type != "slider") {
- aSlider.setThumbSize(thumb_size -1);
- };
- break;
- case "top_pos":
- element.style.pixelTop = top_pos;
- break;
- case "left_pos":
- element.style.pixelLeft = left_pos;
- break;
- case "skin":
- aSlider.setSkin(eval(skin));
- break;
- case "ondrag_fire_event":
- aSlider.onDrag_fireOnChange(Boolean(ondrag_fire_event));
- break;
- case "page_value":
- aSlider.setPageValue(element.page_value);
- break;
- };
- };
- </script>