var gColorPalette = [];
function initSettings() {
+ recalcCoord('Cr', 'scale');
+ recalcCoord('Ci', 'scale');
}
function drawPreview() {
drawLine(0, [Cr_min, Cr_max, Ci_min, Ci_max],
canvas, context, iterMax, algorithm);
}
+
+function recalcCoord(coord, target) {
+ if (target == 'scale') {
+ document.getElementById(coord + '_scale').value =
+ parseFloat(document.getElementById(coord + '_max').value) -
+ parseFloat(document.getElementById(coord + '_min').value);
+ }
+ else if (target == 'max') {
+ document.getElementById('mandelbrot.last_image.' + coord + '_max').value =
+ parseFloat(document.getElementById(coord + '_min').value) +
+ parseFloat(document.getElementById(coord + '_scale').value);
+ }
+}
\ No newline at end of file
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
xmlns:html="http://www.w3.org/1999/xhtml"
title="&imageSettings.title;"
- dlgbuttons="accept,cancel"
- ondialogaccept="callDrawImage();"
- buttonlabelaccept="&DrawImageButton.label;">
+ buttons="accept,cancel,extra1"
+ ondialogextra1="callDrawImage();"
+ buttonlabelextra1="&DrawImageButton.label;">
<prefpane id="imgSettingsPane" onpaneload="initSettings();">
<script type="application/x-javascript"
<hbox flex="1">
<label value="&coord.min.label;" control="Cr_min"/>
<textbox id="Cr_min" size="10"
- preference="mandelbrot.last_image.Cr_min"/>
+ preference="mandelbrot.last_image.Cr_min"
+ onchange="recalcCoord('Cr', 'scale');"/>
<label value="&coord.max.label;" control="Cr_max"/>
<textbox id="Cr_max" size="10"
- preference="mandelbrot.last_image.Cr_max"/>
+ preference="mandelbrot.last_image.Cr_max"
+ onchange="recalcCoord('Cr', 'scale');"/>
+ <label value="&coord.scale.label;" control="Cr_scale"/>
+ <textbox id="Cr_scale" size="10"
+ onchange="recalcCoord('Cr', 'max');"/>
</hbox>
<description value="&coord.imag.label;"/>
<hbox flex="1">
<label value="&coord.min.label;" control="Ci_min"/>
<textbox id="Ci_min" size="10"
- preference="mandelbrot.last_image.Ci_min"/>
+ preference="mandelbrot.last_image.Ci_min"
+ onchange="recalcCoord('Ci', 'scale');"/>
<label value="&coord.max.label;" control="Ci_max"/>
<textbox id="Ci_max" size="10"
- preference="mandelbrot.last_image.Ci_max"/>
+ preference="mandelbrot.last_image.Ci_max"
+ onchange="recalcCoord('Ci', 'scale');"/>
+ <label value="&coord.scale.label;" control="Ci_scale"/>
+ <textbox id="Ci_scale" size="10"
+ onchange="recalcCoord('Ci', 'max');"/>
</hbox>
</groupbox>
preference="mandelbrot.image.height"/>
</hbox>
</groupbox>
-
+
<groupbox>
<caption label="&preview.title;"/>
<hbox flex="1" pack="center" align="center">