diff --git a/css/serialMonitor.css b/css/serialMonitor.css index 662a7ace683f9923b9ea3c7be2fec0e01bcaa6a3..17fb0a908b90ecae525f73b8f0ace5eb43c1f612 100644 --- a/css/serialMonitor.css +++ b/css/serialMonitor.css @@ -1,4 +1,8 @@ - #sendSerialMessage { +body { + overflow: hidden; +} + +#sendSerialMessage { position: absolute; bottom: 0px; border-radius: 0px; diff --git a/js/SerialMonitor/SerialMonitorView.js b/js/SerialMonitor/SerialMonitorView.js index 20614e21abf7b821c138ba640f58c2171a27588c..27e6fceaab08361f25aba05a217a3e8baa1532cc 100644 --- a/js/SerialMonitor/SerialMonitorView.js +++ b/js/SerialMonitor/SerialMonitorView.js @@ -11,11 +11,17 @@ define(['jquery', 'underscore', 'commParentMenu', 'serialComm', 'text!SerialMoni el: "#serialMonitorView", events: { - "click #clearMonitor": "_clear", + "click #clearMonitor": "render", "change input:checkbox": "_clickCheckbox" }, __initialize: function(){ + + this.listenTo(serialComm, "change:baudRate change:portName", this.render); + this.listenTo(serialComm, "change:connected", function(){ + if (!serialComm.get("connected")) this._close(); + }) + this.render(); }, @@ -57,11 +63,6 @@ define(['jquery', 'underscore', 'commParentMenu', 'serialComm', 'text!SerialMoni return this.model.toJSON(); }, - _clear: function(e){ - e.preventDefault(); - $("#serialMonitorOutput").html(""); - }, - __sendMessage: function(message){ this._addOutputData("<span class='outgoing'>" + message + "</span><br/>"); }, @@ -76,6 +77,10 @@ define(['jquery', 'underscore', 'commParentMenu', 'serialComm', 'text!SerialMoni if (this.model.get("autoscroll")) $output.animate({scrollTop:$output.scrollTop()+$output.innerHeight()}, "fast"); }, + _close: function(){ + window.close(); + }, + template: _.template(template) }); diff --git a/js/menus/CommParentMenu.js b/js/menus/CommParentMenu.js index 3d802d5e5c0702a5bb8a1430b33d5d6279095774..350e98e5db0274a84f4e5fcb0da1b8a8d983cfc6 100644 --- a/js/menus/CommParentMenu.js +++ b/js/menus/CommParentMenu.js @@ -42,6 +42,7 @@ define(['jquery', 'underscore', 'menuParent', 'plist', 'serialComm', 'commPlist' _updateIncomingMessage: function(){ var message = serialComm.get("lastMessageReceived"); + console.log(message); var $message = $("#incomingSerialMessage"); $message.html(message); $message.css("background", "#ffff99"); diff --git a/js/menus/SendMenuView.js b/js/menus/SendMenuView.js index db880c61617778b2630a6d8baa3bbf4e5685634b..57da9db0111e778b1064ff47a60554d7c7863530 100644 --- a/js/menus/SendMenuView.js +++ b/js/menus/SendMenuView.js @@ -51,7 +51,6 @@ define(['jquery', 'underscore', 'commParentMenu', 'serialComm', 'commPlist', 'te }, _makeTemplateJSON: function(){ - console.log("render"); return _.extend(serialComm.toJSON(), commPlist, cam.toJSON(), camPlist, {streaming: this.isStreaming}); }, diff --git a/js/menus/SetupCommMenuView.js b/js/menus/SetupCommMenuView.js index 759fbad8bfe55335c4426f6ec53894b7863b3634..6c569e1683b4f395d6d32efd363428e382bf3d1a 100644 --- a/js/menus/SetupCommMenuView.js +++ b/js/menus/SetupCommMenuView.js @@ -53,7 +53,6 @@ define(['jquery', 'underscore', 'commParentMenu', 'serialComm', 'text!setupCommM }, _makeTemplateJSON: function(){ - console.log("render"); return _.extend(serialComm.toJSON(), commPlist); }, diff --git a/js/menus/templates/SetupCommMenuView.html b/js/menus/templates/SetupCommMenuView.html index 648e085b561c1b8c6d1a30eb35168ceedc0609d7..6490b72f808c7c17c1b4d71cd6b4eb35ad4933ea 100644 --- a/js/menus/templates/SetupCommMenuView.html +++ b/js/menus/templates/SetupCommMenuView.html @@ -23,7 +23,7 @@ </div> <a href="#" id="refreshPorts" class="btn btn-lg btn-default btn-icon"><img src="assets/imgs/refreshIcon.png"></a><br/><br/> <a href="#" id="openSerialMonitor" class="btn btn-block btn-lg btn-default">Open Serial Monitor</a><br/> - Incoming: <pre id="incomingSerialMessage"></pre><br/><br/> + Incoming: <pre id="incomingSerialMessage"><br/></pre><br/> Out: <input id="sendSerialMessage" value="" placeholder="Send Message" class="seventyFiveWidth form-control unresponsiveInput" type="text"><br/><br/> <a href="#" id="serialFlushBuffer" class="btn btn-block btn-lg btn-danger">Flush Buffer</a><br/> <% }else{ %> diff --git a/js/models/SerialComm.js b/js/models/SerialComm.js index ffe090f6c3a4b2cf5f343fd4a7bb2d80d9537191..1f9949a836874587d52979cbe34ea8d3c9baada4 100644 --- a/js/models/SerialComm.js +++ b/js/models/SerialComm.js @@ -24,7 +24,7 @@ define(['underscore', 'backbone', 'socketio'], function(_, Backbone, io){ attemptToConnectToNode: function(){ if (!this.get("connected")) { this.socket = io.connect('http://localhost:8080', {'forceNew':true}); - addEventHandlers(this.socket); + addEventHandlers(this.socket);//if we're not in the serial monitor window } }, diff --git a/node/nodeServer.js b/node/nodeServer.js index e6de354491431435e5a674dceb5032ca5bf82668..6f7312a9415605fd3685dcc6303a36cf6c5d5235 100644 --- a/node/nodeServer.js +++ b/node/nodeServer.js @@ -21,7 +21,7 @@ var currentPort = null; var baudRate = 115200; //io.sockets.on('connection', function (socket) { -// socket.emit('baudRate', baudRate); +// io.emit('baudRate', baudRate); //}); @@ -92,7 +92,7 @@ io.on('connection', function(socket){ if (!portName && _allPorts.length>0) portName = _allPorts[0]; if (callback) callback(allPorts, portName, baudRate); - socket.emit('connected', { + io.emit('connected', { baudRate: baudRate, portName: portName, availablePorts: _allPorts @@ -138,19 +138,19 @@ io.on('connection', function(socket){ onPortError(error); return null; } - socket.emit("portDisconnected", {baudRate:oldBaud, portName:oldName}); + io.emit("portDisconnected", {baudRate:oldBaud, portName:oldName}); }); } return initPort(_portName, _baudRate); } function onPortOpen(name, baud){ - socket.emit("portConnected", {baudRate:baud, portName:name}); + io.emit("portConnected", {baudRate:baud, portName:name}); } function onPortData(data){ console.log(data); - socket.emit("dataIn", data); + io.emit('dataIn', data); } function onPortClose(){ @@ -159,7 +159,7 @@ io.on('connection', function(socket){ function onPortError(error){ console.log("Serial port error " + error); - socket.emit("errorMsg", {error:String(error)}); + io.emit("errorMsg", {error:String(error)}); } });