Loading static/main.js +35 −15 Original line number Diff line number Diff line Loading @@ -29,7 +29,10 @@ var fovY = 3146; window.onload = function() { setHostFromInput() getStagePositions() // TODO: Use getConfig as a connection check. Handle connection timeout. getConfig(updateConfigValues) getState(updateStateValues) updateTextBoxes() getCaptures() } Loading Loading @@ -124,26 +127,43 @@ function updateTextBoxes() { document.getElementById('stageVelocityInput').value = stageVelocity; document.getElementById('focusVelocityText').value = focusVelocity; document.getElementById('focusVelocityInput').value = focusVelocity; } document.getElementById('fovXText').value = fovX; document.getElementById('fovYText').value = fovY; function updatePositionValues(state) { document.getElementById('x_abs').value = state.stage.position.x; document.getElementById('y_abs').value = state.stage.position.y; document.getElementById('z_abs').value = state.stage.position.z; } function updateStagePositions(response) { document.getElementById('x_abs').value = response.x; document.getElementById('y_abs').value = response.y; document.getElementById('z_abs').value = response.z; function updateFovValues(config) { document.getElementById('fovXText').value = config.fov.x; document.getElementById('fovYText').value = config.fov.y; } function getStagePositions() { function updatePositionCallback(response, status) { console.log(status, response); updateStagePositions(response); function updateStateValues(state){ updatePositionValues(state); } function updateConfigValues(config){ updateFovValues(config) } function getState(callback) { function getStateCallback(response, status) { callback(response); } safeRequest("GET", baseURI+"/state", null, getStateCallback, false) } function getConfig(callback) { function getConfigCallback(response, status) { callback(response); } safeRequest("GET", baseURI+"/stage/position", null, updatePositionCallback, false) safeRequest("GET", baseURI+"/config", null, getConfigCallback, false) } // Capture methods // TODO: Explicit callback. Roll into class. function newCapture(filename, keep_on_disk, use_video_port, bayer, resizeWidth=null, resizeHeight=null) { // Make a position request function newCaptureCallback(response, status) { Loading Loading @@ -228,7 +248,7 @@ function setStagePositions(x_abs, y_abs, z_abs) { alert("Error moving stage."); } console.log(status, response); updateStagePositions(response); updatePositionValues(response); } safeRequest("POST", baseURI+"/stage/position", { "absolute": true, "x": x_abs, "y": y_abs, "z": z_abs}, absMoveCallback) } Loading @@ -240,7 +260,7 @@ function moveStagePositions(x_rel, y_rel, z_rel) { alert("Error moving stage."); } console.log(status, response); updateStagePositions(response); updatePositionValues(response); } safeRequest("POST", baseURI+"/stage/position", { "absolute": false, "x": x_rel, "y": y_rel, "z": z_rel}, relMoveCallback) } Loading @@ -255,7 +275,7 @@ function setStagePositionsFromInput() { // Standard callback for user-controller movement function keyMoveCallback(response, status) { console.log(status, response); updateStagePositions(response); updatePositionValues(response); } // Methods for input events Loading Loading
static/main.js +35 −15 Original line number Diff line number Diff line Loading @@ -29,7 +29,10 @@ var fovY = 3146; window.onload = function() { setHostFromInput() getStagePositions() // TODO: Use getConfig as a connection check. Handle connection timeout. getConfig(updateConfigValues) getState(updateStateValues) updateTextBoxes() getCaptures() } Loading Loading @@ -124,26 +127,43 @@ function updateTextBoxes() { document.getElementById('stageVelocityInput').value = stageVelocity; document.getElementById('focusVelocityText').value = focusVelocity; document.getElementById('focusVelocityInput').value = focusVelocity; } document.getElementById('fovXText').value = fovX; document.getElementById('fovYText').value = fovY; function updatePositionValues(state) { document.getElementById('x_abs').value = state.stage.position.x; document.getElementById('y_abs').value = state.stage.position.y; document.getElementById('z_abs').value = state.stage.position.z; } function updateStagePositions(response) { document.getElementById('x_abs').value = response.x; document.getElementById('y_abs').value = response.y; document.getElementById('z_abs').value = response.z; function updateFovValues(config) { document.getElementById('fovXText').value = config.fov.x; document.getElementById('fovYText').value = config.fov.y; } function getStagePositions() { function updatePositionCallback(response, status) { console.log(status, response); updateStagePositions(response); function updateStateValues(state){ updatePositionValues(state); } function updateConfigValues(config){ updateFovValues(config) } function getState(callback) { function getStateCallback(response, status) { callback(response); } safeRequest("GET", baseURI+"/state", null, getStateCallback, false) } function getConfig(callback) { function getConfigCallback(response, status) { callback(response); } safeRequest("GET", baseURI+"/stage/position", null, updatePositionCallback, false) safeRequest("GET", baseURI+"/config", null, getConfigCallback, false) } // Capture methods // TODO: Explicit callback. Roll into class. function newCapture(filename, keep_on_disk, use_video_port, bayer, resizeWidth=null, resizeHeight=null) { // Make a position request function newCaptureCallback(response, status) { Loading Loading @@ -228,7 +248,7 @@ function setStagePositions(x_abs, y_abs, z_abs) { alert("Error moving stage."); } console.log(status, response); updateStagePositions(response); updatePositionValues(response); } safeRequest("POST", baseURI+"/stage/position", { "absolute": true, "x": x_abs, "y": y_abs, "z": z_abs}, absMoveCallback) } Loading @@ -240,7 +260,7 @@ function moveStagePositions(x_rel, y_rel, z_rel) { alert("Error moving stage."); } console.log(status, response); updateStagePositions(response); updatePositionValues(response); } safeRequest("POST", baseURI+"/stage/position", { "absolute": false, "x": x_rel, "y": y_rel, "z": z_rel}, relMoveCallback) } Loading @@ -255,7 +275,7 @@ function setStagePositionsFromInput() { // Standard callback for user-controller movement function keyMoveCallback(response, status) { console.log(status, response); updateStagePositions(response); updatePositionValues(response); } // Methods for input events Loading