// Licensed Materials - Property of IBM // // IBM Cognos Products: pps // // (C) Copyright IBM Corp. 2005, 2017 // // US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. // This forms the javascript functions used for the display options // action pane for PowerPlay Studio. // The functions are Internet Explorer specific. var COLOR_TYPE_SOLID = 0; var COLOR_TYPE_PATTERN = 1; var COLOR_TYPE_GRADIENT = 2; var COLOR_TYPE_LINE = 3; var CHART_OPTION_VALUE_NONE = 0; var CHART_OPTION_VALUE_BOOLEAN = 1; var CHART_OPTION_VALUE_INTEGER = 2; var CHART_OPTION_VALUE_FLOAT = 3; var CHART_OPTION_VALUE_STRING = 4; var CHART_OPTION_VALUE_STAT_LINE = 5; var CHART_OPTION_VALUE_PALETTE_AREA = 6; var CHART_OPTION_VALUE_LINE = 7; var CHART_OPTION_VALUE_BACKGROUND_AREA = 8; var CHART_OPTION_VALUE_LABEL = 9; var CHART_OPTION_VALUE_TITLE = 10; var CHART_OPTION_VALUE_XTAB_FORMAT = 11; var PERCENTAGE_SCREEN_MIN_VALUE = 10; var PERCENTAGE_SCREEN_MAX_VALUE = 500; var CHOP_VALUE_SEPARATOR = ';'; var currentTab = 1; var chartOptionValues = new Array(); var chartOptionNames = new Array(); var chartOptionsComboBoxes = new Array(); var chartOptionComboBoxIds = new Array(); var chartOptionsSliders = new Array(); var fontArray = new Array(); var seriesArray = new Array(); function optionRec(name,details,changed,control) { this.name = name; this.details = details; this.changed = changed; this.control = control; } function fontOptionRec(name,bold,italic,bolditalic) { this.name = name; this.bold = bold; this.italic = italic; this.bolditalic = bolditalic; } function seriesRec(name,id) { this.name = name; this.id = id; } function optionValueBool(value) { this.value = value; } optionValueBool.prototype.type = CHART_OPTION_VALUE_BOOLEAN; function optionValueInt(value) { this.value = value; } optionValueInt.prototype.type = CHART_OPTION_VALUE_INTEGER; function optionValueFloat(value) { this.value = value; } optionValueFloat.prototype.type = CHART_OPTION_VALUE_FLOAT; function optionValueString(value) { this.value = value; } optionValueString.prototype.type = CHART_OPTION_VALUE_STRING; function optionValueStatLine(show, line_type, color, catId) { this.show = show; this.line_type = line_type; this.color = color; this.catId = catId; } optionValueStatLine.prototype.type = CHART_OPTION_VALUE_STAT_LINE; function optionValuePaletteArea(colorType,solidColor,patternColor1,patternColor2,gradientColor1,gradientColor2,pattern) { this.colorType = colorType; this.solidColor = solidColor; this.patternColor1 = patternColor1; this.patternColor2 = patternColor2; this.gradientColor1 = gradientColor1; this.gradientColor2 = gradientColor2; this.pattern = pattern; } optionValuePaletteArea.prototype.type = CHART_OPTION_VALUE_PALETTE_AREA; function optionValuePaletteLine(lineColor,lineType,markerType) { this.lineColor = lineColor; this.lineType = lineType; this.markerType = markerType; } optionValuePaletteLine.prototype.type = CHART_OPTION_VALUE_LINE; function optionValueBackgroundArea(colorType,solidColor,patternColor1,patternColor2,gradientColor1,gradientColor2,pattern,gradientType) { this.colorType = colorType; this.solidColor = solidColor; this.patternColor1 = patternColor1; this.patternColor2 = patternColor2; this.gradientColor1 = gradientColor1; this.gradientColor2 = gradientColor2; this.pattern = pattern; this.gradientType = gradientType; } optionValueBackgroundArea.prototype.type = CHART_OPTION_VALUE_BACKGROUND_AREA; function optionValueLabel(font,fontSize,color,bold,italic,underline) { this.font = font; this.fontSize = fontSize; this.color = color; this.bold = bold; this.italic = italic; this.underline = underline; } optionValueLabel.prototype.type = CHART_OPTION_VALUE_LABEL; function optionValueTitle(font,fontSize,color,bold,italic,underline,isDefault,title) { this.font = font; this.fontSize = fontSize; this.color = color; this.bold = bold; this.italic = italic; this.underline = underline; this.isdefault = isDefault this.title = title; } optionValueTitle.prototype.type = CHART_OPTION_VALUE_TITLE; function optionValueXtabFormat(useDefaults,font,fontSize,color,backColor,bold,italic,underline,textAlign) { this.useDefaults = useDefaults; this.font = font; this.fontSize = fontSize; this.color = color; this.backColor = backColor; this.bold = bold; this.italic = italic; this.underline = underline; this.textAlign = textAlign; } optionValueXtabFormat.prototype.type = CHART_OPTION_VALUE_XTAB_FORMAT; function storeOptionsUnderTag(currentTag) { if (currentTag.getAttribute && currentTag.getAttribute("optionName")) { var optionName = currentTag.getAttribute("optionName"); if (chartOptionValues[optionName]) chartOptionValues[optionName].control = currentTag; } var childNode = currentTag.firstChild; while (childNode) { storeOptionsUnderTag(childNode); childNode = childNode.nextSibling; } } function getSliderValue(slider) { var value = parseInt(slider.firstChild.firstChild.firstChild.nextSibling.firstChild.nextSibling.value); if (isNaN(value)) { value = parseInt(slider.firstChild.firstChild.firstChild.getAttribute("min")); slider.firstChild.firstChild.firstChild.nextSibling.firstChild.nextSibling.value = value; } return new optionValueInt(value); } function setSliderValue(slider,optionInt) { var text = slider.firstChild.firstChild.firstChild.nextSibling.firstChild.nextSibling; text.value = optionInt.value; sliderValueChanged(text); } function resetSliders() { var sliderText; for (var i = 0; i < chartOptionsSliders.length; i++) { sliderText = chartOptionsSliders[i].control.firstChild.firstChild.firstChild.nextSibling.firstChild.nextSibling; chartOptionsSliders[i].control.firstChild.firstChild.firstChild.firstChild.style.visibility = "visible"; sliderValueChanged(sliderText); } } function hideSliders() { var sliderText; for (var i = 0; i < chartOptionsSliders.length; i++) { chartOptionsSliders[i].control.firstChild.firstChild.firstChild.firstChild.style.visibility = "hidden"; } } function getCheck2RadValue(check2rad) { if (check2rad.checked) { if (check2rad.parentNode.parentNode.nextSibling.firstChild.nextSibling.firstChild.nextSibling.checked) return new optionValueInt(1); else return new optionValueInt(2); } else return new optionValueInt(0); } function setCheck2RadValue(check2rad,optionInt) { var check = check2rad; var rad1 = check.parentNode.parentNode.nextSibling.firstChild.nextSibling.firstChild.nextSibling; var rad2 = rad1.parentNode.parentNode.nextSibling.firstChild.nextSibling.firstChild.nextSibling; if (optionInt.value == 0) { check.checked = false; rad1.checked = true; rad2.checked = false; } else if (optionInt.value == 1) { check.checked = true; rad1.checked = true; rad2.checked = false; } else { check.checked = true; rad1.checked = false; rad2.checked = true; } } function get3RadValue(threeRad) { if (!threeRad.checked) { if (threeRad.parentNode.parentNode.nextSibling.firstChild.firstChild.nextSibling.checked) return new optionValueInt(1); else return new optionValueInt(2); } else return new optionValueInt(0); } function set3RadValue(threeRad,optionInt) { var rad1 = threeRad; var rad2 = rad1.parentNode.parentNode.nextSibling.firstChild.firstChild.nextSibling; var rad3 = rad2.parentNode.parentNode.nextSibling.firstChild.firstChild.nextSibling; if (optionInt.value == 0) { rad1.checked = true; rad2.checked = false; rad3.checked = false; } else if (optionInt.value == 1) { rad1.checked = false; rad2.checked = true; rad3.checked = false; } else { rad1.checked = false; rad2.checked = false; rad3.checked = true; } } function getStatisticalValue(statItem) { var show = statItem.firstChild.firstChild.firstChild.firstChild.checked; var currentCtrl = statItem.firstChild.firstChild.nextSibling.nextSibling.firstChild.nextSibling; var catId = 0; if (currentCtrl.firstChild && currentCtrl.firstChild.id.indexOf("_series") > 0) { catId = seriesArray[chartOptionsComboBoxes[currentCtrl.firstChild.id].getSelectedItem()].id; } currentCtrl = currentCtrl.nextSibling; var lineType = chartOptionsComboBoxes[currentCtrl.firstChild.id].getSelectedItem(); var color = getColorPickerColor(currentCtrl.nextSibling.firstChild.id); return new optionValueStatLine(show,lineType,color,catId); } function setStatisticalValue(statItem,optionStat) { statItem.firstChild.firstChild.firstChild.firstChild.checked = optionStat.show; var currentCtrl = statItem.firstChild.firstChild.nextSibling.nextSibling.firstChild.nextSibling; if (currentCtrl.firstChild && currentCtrl.firstChild.id.indexOf("_series") > 0) { var found = false; for (var i = 0; i < seriesArray.length && !found; i++) { if (seriesArray[i].id == optionStat.catId) { chartOptionsComboBoxes[currentCtrl.firstChild.id].setSelectedItem(i); found = true; } } if (!found) { chartOptionsComboBoxes[currentCtrl.firstChild.id].setSelectedItem(0); statItem.firstChild.firstChild.firstChild.firstChild.checked = false; } } currentCtrl = currentCtrl.nextSibling; chartOptionsComboBoxes[currentCtrl.firstChild.id].setSelectedItem(optionStat.line_type); var colorPicker = currentCtrl.nextSibling.firstChild; setColorPicker(colorPicker.id,optionStat.color); } function initializeOptionValues() { for (var i = 0; i < chartOptionNames.length; i++) { var option = chartOptionValues[chartOptionNames[i]]; if (option.control) { //make sure the UI exposes this option if (option.details.type == CHART_OPTION_VALUE_BOOLEAN) { if (option.control.type == "checkbox") { option.control.checked = option.details.value; } else if (option.control.type == "radio") { option.control.checked = option.details.value; document.getElementById(option.control.id + "2").checked = !option.control.checked; } } else if (option.details.type == CHART_OPTION_VALUE_INTEGER) { if (option.control.type == "text") { option.control.value = option.details.value; } else if (option.control.getAttribute("optionType") == "slider") { setSliderValue(option.control,option.details); chartOptionsSliders[chartOptionsSliders.length] = option; } else if (option.control.tagName.toUpperCase() == "SELECT") { if (option.control.getAttribute("valueOffset")) option.control.selectedIndex = option.details.value + parseInt(option.control.getAttribute("valueOffset")); else option.control.selectedIndex = option.details.value; } else if (option.control.getAttribute("optionType") == "check2rad") { setCheck2RadValue(option.control,option.details); } else if (option.control.getAttribute("optionType") == "3rad") { set3RadValue(option.control,option.details); } } else if (option.details.type == CHART_OPTION_VALUE_FLOAT) { if (option.control.type == "text") { option.control.value = option.details.value; } } else if (option.details.type == CHART_OPTION_VALUE_STRING) { if (option.control.type == "text") { option.control.value = option.details.value; } } else if (option.details.type == CHART_OPTION_VALUE_STAT_LINE) { if (option.control.getAttribute("optionType") == "statistical") { setStatisticalValue(option.control,option.details); } } else if (option.details.type == CHART_OPTION_VALUE_PALETTE_AREA) { if (option.control.getAttribute("optionType") == "paletteTable" || option.control.tagName.toUpperCase() == "DIV") { option.control.setAttribute("colorType",option.details.colorType); option.control.setAttribute("solidColor",option.details.solidColor); option.control.setAttribute("patternColor1",option.details.patternColor1); option.control.setAttribute("patternColor2",option.details.patternColor2); option.control.setAttribute("gradientColor1",option.details.gradientColor1); option.control.setAttribute("gradientColor2",option.details.gradientColor2); option.control.setAttribute("pattern",option.details.pattern); } } else if (option.details.type == CHART_OPTION_VALUE_LINE) { if (option.control.getAttribute("optionType") == "paletteTable" || option.control.tagName.toUpperCase() == "DIV") { option.control.setAttribute("colorType",COLOR_TYPE_LINE); option.control.setAttribute("lineColor",option.details.lineColor); option.control.setAttribute("lineType",option.details.lineType); option.control.setAttribute("markerType",option.details.markerType); } } else if (option.details.type == CHART_OPTION_VALUE_BACKGROUND_AREA) { if (option.control.getAttribute("optionType") == "paletteTable" || option.control.tagName.toUpperCase() == "OPTION") { option.control.setAttribute("colorType",option.details.colorType); option.control.setAttribute("solidColor",option.details.solidColor); option.control.setAttribute("patternColor1",option.details.patternColor1); option.control.setAttribute("patternColor2",option.details.patternColor2); option.control.setAttribute("gradientColor1",option.details.gradientColor1); option.control.setAttribute("gradientColor2",option.details.gradientColor2); option.control.setAttribute("pattern",option.details.pattern); option.control.setAttribute("gradientType",option.details.gradientType); } } else if (option.details.type == CHART_OPTION_VALUE_LABEL) { if (option.control.tagName.toUpperCase() == "DIV") { option.control.setAttribute("font",option.details.font); option.control.setAttribute("fontSize",option.details.fontSize); option.control.setAttribute("color",option.details.color); option.control.setAttribute("bold",(option.details.bold)? "true" : "false"); option.control.setAttribute("italic",(option.details.italic)? "true" : "false"); option.control.setAttribute("underline",(option.details.underline)? "true" : "false"); } } else if (option.details.type == CHART_OPTION_VALUE_TITLE) { if (option.control.tagName.toUpperCase() == "DIV") { option.control.setAttribute("font",option.details.font); option.control.setAttribute("fontSize",option.details.fontSize); option.control.setAttribute("color",option.details.color); option.control.setAttribute("bold",(option.details.bold)? "true" : "false"); option.control.setAttribute("italic",(option.details.italic)? "true" : "false"); option.control.setAttribute("underline",(option.details.underline)? "true" : "false"); option.control.setAttribute("isdefault",(option.details.isdefault)? "true" : "false"); option.control.setAttribute("title",option.details.title); } } else if (option.details.type == CHART_OPTION_VALUE_XTAB_FORMAT) { if (option.control.tagName.toUpperCase() == "SPAN") { option.control.setAttribute("useDefaults",(option.details.useDefaults)? "true" : "false"); option.control.setAttribute("font",option.details.font); option.control.setAttribute("fontSize",option.details.fontSize); option.control.setAttribute("color",option.details.color); option.control.setAttribute("backColor",option.details.backColor); option.control.setAttribute("bold",(option.details.bold)? "true" : "false"); option.control.setAttribute("italic",(option.details.italic)? "true" : "false"); option.control.setAttribute("underline",(option.details.underline)? "true" : "false"); option.control.setAttribute("textAlign",option.details.textAlign); } } } } } function createCommand() { setOptionValues(); var cmd = ""; for (var i = 0; i < chartOptionNames.length; i++) { var option = chartOptionValues[chartOptionNames[i]]; if (option.changed) { cmd += '"' + option.name + CHOP_VALUE_SEPARATOR + option.details.type + CHOP_VALUE_SEPARATOR; if (option.details.type == CHART_OPTION_VALUE_BOOLEAN) { cmd += (option.details.value)? '1':'0'; } else if (option.details.type == CHART_OPTION_VALUE_INTEGER) { cmd += option.details.value; } else if (option.details.type == CHART_OPTION_VALUE_FLOAT) { cmd += option.details.value; } else if (option.details.type == CHART_OPTION_VALUE_STRING) { cmd += option.details.value; } else if (option.details.type == CHART_OPTION_VALUE_STAT_LINE) { cmd += (option.details.show)? '1':'0'; cmd += CHOP_VALUE_SEPARATOR + option.details.line_type; cmd += CHOP_VALUE_SEPARATOR + option.details.color; cmd += CHOP_VALUE_SEPARATOR + option.details.catId; } else if (option.details.type == CHART_OPTION_VALUE_PALETTE_AREA) { cmd += option.details.colorType; cmd += CHOP_VALUE_SEPARATOR + option.details.solidColor; cmd += CHOP_VALUE_SEPARATOR + option.details.patternColor1; cmd += CHOP_VALUE_SEPARATOR + option.details.patternColor2; cmd += CHOP_VALUE_SEPARATOR + option.details.gradientColor1; cmd += CHOP_VALUE_SEPARATOR + option.details.gradientColor2; cmd += CHOP_VALUE_SEPARATOR + option.details.pattern; } else if (option.details.type == CHART_OPTION_VALUE_LINE) { cmd += option.details.lineColor; cmd += CHOP_VALUE_SEPARATOR + option.details.lineType; cmd += CHOP_VALUE_SEPARATOR + option.details.markerType; } else if (option.details.type == CHART_OPTION_VALUE_BACKGROUND_AREA) { cmd += option.details.colorType; cmd += CHOP_VALUE_SEPARATOR + option.details.solidColor; cmd += CHOP_VALUE_SEPARATOR + option.details.patternColor1; cmd += CHOP_VALUE_SEPARATOR + option.details.patternColor2; cmd += CHOP_VALUE_SEPARATOR + option.details.gradientColor1; cmd += CHOP_VALUE_SEPARATOR + option.details.gradientColor2; cmd += CHOP_VALUE_SEPARATOR + option.details.pattern; cmd += CHOP_VALUE_SEPARATOR + option.details.gradientType; } else if (option.details.type == CHART_OPTION_VALUE_LABEL) { cmd += option.details.font; cmd += CHOP_VALUE_SEPARATOR + option.details.fontSize; cmd += CHOP_VALUE_SEPARATOR + option.details.color; cmd += CHOP_VALUE_SEPARATOR cmd += (option.details.bold)? "1":"0"; cmd += CHOP_VALUE_SEPARATOR cmd += (option.details.italic)? "1":"0"; cmd += CHOP_VALUE_SEPARATOR cmd += (option.details.underline)? "1":"0"; } else if (option.details.type == CHART_OPTION_VALUE_TITLE) { cmd += option.details.font; cmd += CHOP_VALUE_SEPARATOR + option.details.fontSize; cmd += CHOP_VALUE_SEPARATOR + option.details.color; cmd += CHOP_VALUE_SEPARATOR cmd += (option.details.bold)? "1":"0"; cmd += CHOP_VALUE_SEPARATOR cmd += (option.details.italic)? "1":"0"; cmd += CHOP_VALUE_SEPARATOR cmd += (option.details.underline)? "1":"0"; cmd += CHOP_VALUE_SEPARATOR cmd += (option.details.isdefault)? "1":"0"; cmd += CHOP_VALUE_SEPARATOR + option.details.title; } else if (option.details.type == CHART_OPTION_VALUE_XTAB_FORMAT) { cmd += (option.details.useDefaults)? "1":"0"; cmd += CHOP_VALUE_SEPARATOR cmd += option.details.font; cmd += CHOP_VALUE_SEPARATOR + option.details.fontSize; cmd += CHOP_VALUE_SEPARATOR + option.details.color; cmd += CHOP_VALUE_SEPARATOR + option.details.backColor; cmd += CHOP_VALUE_SEPARATOR cmd += (option.details.bold)? "1":"0"; cmd += CHOP_VALUE_SEPARATOR cmd += (option.details.italic)? "1":"0"; cmd += CHOP_VALUE_SEPARATOR cmd += (option.details.underline)? "1":"0"; cmd += CHOP_VALUE_SEPARATOR cmd += option.details.textAlign; } cmd += '"\t'; } } return cmd; } function isOptionChanged(name) { var option = chartOptionValues[name]; if (option && option.control) {//Make sure the UI exposes this option if (option.details.type == CHART_OPTION_VALUE_BOOLEAN) { if (option.control.type == "checkbox") { if (option.details.value != option.control.checked) return true; } else if (option.control.type == "radio") { if (option.details.value != option.control.checked) return true; } } else if (option.details.type == CHART_OPTION_VALUE_INTEGER) { if (option.control.type == "text") { if (option.details.value != option.control.value) return true; } else if (option.control.getAttribute("optionType") == "slider") { var sliderValue = getSliderValue(option.control); if (sliderValue.value != option.details.value) return true; } else if (option.control.tagName.toUpperCase() == "SELECT") { var selectedValue = option.control.selectedIndex; if (option.control.getAttribute("valueOffset")) selectedValue -= parseInt(option.control.getAttribute("valueOffset")); if (selectedValue != option.details.value) return true; } else if (option.control.getAttribute("optionType") == "check2rad") { var check2RadValue = getCheck2RadValue(option.control); if (check2RadValue.value != option.details.value) return true; } else if (option.control.getAttribute("optionType") == "3rad") { var threeRadValue = get3RadValue(option.control); if (threeRadValue.value != option.details.value) return true; } } else if (option.details.type == CHART_OPTION_VALUE_FLOAT) { if (option.control.type == "text") { if (option.details.value != option.control.value) return true; } } else if (option.details.type == CHART_OPTION_VALUE_STRING) { if (option.control.type == "text") { if (option.details.value != option.control.value) return true; } } else if (option.details.type == CHART_OPTION_VALUE_STAT_LINE) { if (option.control.getAttribute("optionType") == "statistical") { var statLineValue = getStatisticalValue(option.control); if (statLineValue.show != option.details.show || statLineValue.line_type != option.details.line_type || statLineValue.color != option.details.color || statLineValue.catId != option.details.catId) return true; } } else if (option.details.type == CHART_OPTION_VALUE_PALETTE_AREA) { if (option.control.getAttribute("optionType") == "paletteTable" || option.control.tagName.toUpperCase() == "DIV") { if ((parseInt(option.control.getAttribute("colorType")) != option.details.colorType) || (option.control.getAttribute("solidColor") != option.details.solidColor) || (option.control.getAttribute("patternColor1") != option.details.patternColor1) || (option.control.getAttribute("patternColor2") != option.details.patternColor2) || (option.control.getAttribute("gradientColor1") != option.details.gradientColor1) || (option.control.getAttribute("gradientColor2") != option.details.gradientColor2) || (parseInt(option.control.getAttribute("pattern")) != option.details.pattern)) return true; } } else if (option.details.type == CHART_OPTION_VALUE_LINE) { if (option.control.getAttribute("optionType") == "paletteTable" || option.control.tagName.toUpperCase() == "DIV") { if (option.details.lineColor != option.control.getAttribute("lineColor") || option.details.lineType != parseInt(option.control.getAttribute("lineType")) || option.details.markerType != parseInt(option.control.getAttribute("markerType"))) return true; } } else if (option.details.type == CHART_OPTION_VALUE_BACKGROUND_AREA) { if (option.control.getAttribute("optionType") == "paletteTable" || option.control.tagName.toUpperCase() == "OPTION") { if ((parseInt(option.control.getAttribute("colorType")) != option.details.colorType) || (option.control.getAttribute("solidColor") != option.details.solidColor) || (option.control.getAttribute("patternColor1") != option.details.patternColor1) || (option.control.getAttribute("patternColor2") != option.details.patternColor2) || (option.control.getAttribute("gradientColor1") != option.details.gradientColor1) || (option.control.getAttribute("gradientColor2") != option.details.gradientColor2) || (parseInt(option.control.getAttribute("pattern")) != option.details.pattern) || (parseInt(option.control.getAttribute("gradientType")) != option.details.gradientType)) return true; } } else if (option.details.type == CHART_OPTION_VALUE_LABEL) { if (option.control.tagName.toUpperCase() == "DIV") { if ((option.details.font != option.control.getAttribute("font")) || (option.details.fontSize != parseInt(option.control.getAttribute("fontSize"))) || (option.details.color != option.control.getAttribute("color")) || (option.details.bold != (option.control.getAttribute("bold") == "true")) || (option.details.italic != (option.control.getAttribute("italic") == "true")) || (option.details.underline != (option.control.getAttribute("underline") == "true"))) return true; } } else if (option.details.type == CHART_OPTION_VALUE_TITLE) { if (option.control.tagName.toUpperCase() == "DIV") { if ((option.details.font != option.control.getAttribute("font")) || (option.details.fontSize != parseInt(option.control.getAttribute("fontSize"))) || (option.details.color != option.control.getAttribute("color")) || (option.details.bold != (option.control.getAttribute("bold") == "true")) || (option.details.italic != (option.control.getAttribute("italic") == "true")) || (option.details.underline != (option.control.getAttribute("underline") == "true")) || (option.details.isdefault != (option.control.getAttribute("isdefault") == "true")) || (option.details.title != option.control.getAttribute("title"))) return true; } } else if (option.details.type == CHART_OPTION_VALUE_XTAB_FORMAT) { if (option.control.tagName.toUpperCase() == "SPAN") { if ((option.details.useDefaults != option.control.getAttribute("useDefaults")) || (option.details.font != option.control.getAttribute("font")) || (option.details.fontSize != parseInt(option.control.getAttribute("fontSize"))) || (option.details.color != option.control.getAttribute("color")) || (option.details.backColor != option.control.getAttribute("backColor")) || (option.details.bold != (option.control.getAttribute("bold") == "true")) || (option.details.italic != (option.control.getAttribute("italic") == "true")) || (option.details.underline != (option.control.getAttribute("underline") == "true")) || (option.details.textAlign != option.control.getAttribute("textAlign"))) return true; } } } return false; } function setOptionValues() { for (var i = 0; i < chartOptionNames.length; i++) { var option = chartOptionValues[chartOptionNames[i]]; if (option.control && isOptionChanged(chartOptionNames[i])) {//Make sure the UI exposes this option option.changed = true; if (option.details.type == CHART_OPTION_VALUE_BOOLEAN) { option.details.value = option.control.checked; } else if (option.details.type == CHART_OPTION_VALUE_INTEGER) { if (option.control.type == "text") { option.details.value = option.control.value; } else if (option.control.getAttribute("optionType") == "slider") { option.details = getSliderValue(option.control); } else if (option.control.tagName.toUpperCase() == "SELECT") { var selectedValue = option.control.selectedIndex; if (option.control.getAttribute("valueOffset")) selectedValue -= parseInt(option.control.getAttribute("valueOffset")); option.details.value = selectedValue; } else if (option.control.getAttribute("optionType") == "check2rad") { option.details = getCheck2RadValue(option.control); } else if (option.control.getAttribute("optionType") == "3rad") { option.details = get3RadValue(option.control); } } else if (option.details.type == CHART_OPTION_VALUE_FLOAT) { option.details.value = option.control.value; } else if (option.details.type == CHART_OPTION_VALUE_STRING) { option.details.value = option.control.value; } else if (option.details.type == CHART_OPTION_VALUE_STAT_LINE) { option.details = getStatisticalValue(option.control); } else if (option.details.type == CHART_OPTION_VALUE_PALETTE_AREA) { option.details.colorType = parseInt(option.control.getAttribute("colorType")); option.details.solidColor = option.control.getAttribute("solidColor"); option.details.patternColor1 = option.control.getAttribute("patternColor1"); option.details.patternColor2 = option.control.getAttribute("patternColor2"); option.details.gradientColor1 = option.control.getAttribute("gradientColor1"); option.details.gradientColor2 = option.control.getAttribute("gradientColor2"); option.details.pattern = parseInt(option.control.getAttribute("pattern")); } else if (option.details.type == CHART_OPTION_VALUE_LINE) { option.details.lineColor = option.control.getAttribute("lineColor"); option.details.lineType = parseInt(option.control.getAttribute("lineType")); option.details.markerType = parseInt(option.control.getAttribute("markerType")); } else if (option.details.type == CHART_OPTION_VALUE_BACKGROUND_AREA) { option.details.colorType = parseInt(option.control.getAttribute("colorType")); option.details.solidColor = option.control.getAttribute("solidColor"); option.details.patternColor1 = option.control.getAttribute("patternColor1"); option.details.patternColor2 = option.control.getAttribute("patternColor2"); option.details.gradientColor1 = option.control.getAttribute("gradientColor1"); option.details.gradientColor2 = option.control.getAttribute("gradientColor2"); option.details.pattern = parseInt(option.control.getAttribute("pattern")); option.details.gradientType = parseInt(option.control.getAttribute("gradientType")); } else if (option.details.type == CHART_OPTION_VALUE_LABEL) { option.details.font = option.control.getAttribute("font"); option.details.fontSize = option.control.getAttribute("fontSize"); option.details.color = option.control.getAttribute("color"); option.details.bold = (option.control.getAttribute("bold") == "true"); option.details.italic = (option.control.getAttribute("italic") == "true"); option.details.underline = (option.control.getAttribute("underline") == "true"); } else if (option.details.type == CHART_OPTION_VALUE_TITLE) { option.details.font = option.control.getAttribute("font"); option.details.fontSize = option.control.getAttribute("fontSize"); option.details.color = option.control.getAttribute("color"); option.details.bold = (option.control.getAttribute("bold") == "true"); option.details.italic = (option.control.getAttribute("italic") == "true"); option.details.underline = (option.control.getAttribute("underline") == "true"); option.details.isdefault = (option.control.getAttribute("isdefault") == "true"); option.details.title = option.control.getAttribute("title"); } else if (option.details.type == CHART_OPTION_VALUE_XTAB_FORMAT) { option.details.useDefaults = (option.control.getAttribute("useDefaults") == "true"); option.details.font = option.control.getAttribute("font"); option.details.fontSize = option.control.getAttribute("fontSize"); option.details.color = option.control.getAttribute("color"); option.details.backColor = option.control.getAttribute("backColor"); option.details.bold = (option.control.getAttribute("bold") == "true"); option.details.italic = (option.control.getAttribute("italic") == "true"); option.details.underline = (option.control.getAttribute("underline") == "true"); option.details.textAlign = option.control.getAttribute("textAlign"); } } } }