diff --git a/Frontend Angular 4/src/app/shared/services/ghci.service.ts b/Frontend Angular 4/src/app/shared/services/ghci.service.ts index cdee02ed9f2edcc257b4cd7455e7ed0d76c66144..92b22c74170213b9dc177d93a94f7044b446ba8d 100644 --- a/Frontend Angular 4/src/app/shared/services/ghci.service.ts +++ b/Frontend Angular 4/src/app/shared/services/ghci.service.ts @@ -128,31 +128,31 @@ export class GHCIService { if(this.waitingForError){ var line = this.lastError; if(this.codemirrorRef!==null){ - var makeMarker = function() { - var marker = document.createElement("div"); - marker.id = "error_" + line.toString(); - marker.style.width = "15px"; - marker.title = JSON.parse(text).resultado.split("OUT")[1].trim(); - marker.style.height = "15px"; - marker.style.marginLeft = "-5px"; - marker.style.cursor = "pointer"; - marker.style["background-image"] = "url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAHlBMVEW7AAC7AACxAAC7AAC7AAAAAAC4AAC5AAD///+7AAAUdclpAAAABnRSTlMXnORSiwCK0ZKSAAAATUlEQVR42mWPOQ7AQAgDuQLx/z8csYRmPRIFIwRGnosRrpamvkKi0FTIiMASR3hhKW+hAN6/tIWhu9PDWiTGNEkTtIOucA5Oyr9ckPgAWm0GPBog6v4AAAAASUVORK5CYII=')"; - marker.innerHTML = "<a href='@' title='cuidado , advertencia matefun'></a>"; - return marker; - } - this.codemirrorRef.setGutterMarker(line, "breakpoints", makeMarker()); - this.waitingForError = false; - this.lastError = -1; + var makeMarker = function() { + var marker = document.createElement("div"); + marker.id = "error_" + line.toString(); + marker.style.width = "15px"; + marker.title = JSON.parse(text).resultado.split("OUT")[1].trim(); + marker.style.height = "15px"; + marker.style.marginLeft = "-5px"; + marker.style.cursor = "pointer"; + marker.style["background-image"] = "url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAHlBMVEW7AAC7AACxAAC7AAC7AAAAAAC4AAC5AAD///+7AAAUdclpAAAABnRSTlMXnORSiwCK0ZKSAAAATUlEQVR42mWPOQ7AQAgDuQLx/z8csYRmPRIFIwRGnosRrpamvkKi0FTIiMASR3hhKW+hAN6/tIWhu9PDWiTGNEkTtIOucA5Oyr9ckPgAWm0GPBog6v4AAAAASUVORK5CYII=')"; + marker.innerHTML = "<a href='@' title='cuidado , advertencia matefun'></a>"; + return marker; + } + this.codemirrorRef.setGutterMarker(line, "breakpoints", makeMarker()); + this.waitingForError = false; + this.lastError = -1; } }else { try{ - var line = Number(JSON.parse(text).resultado.split("en lÃnea")[1].split(",")[0].trim())-1; - this.waitingForError = true; - this.lastError = line; - - }catch(err){ - } - return false; + var line = Number(JSON.parse(text).resultado.split("en lÃnea")[1].split(",")[0].trim())-1; + this.waitingForError = true; + this.lastError = line; + + }catch(err){ + } + return false; } @@ -164,7 +164,7 @@ export class GHCIService { } } - hayWarnings(text){ + hayWarnings(text){ var line = -1; var m = JSON.parse(text); @@ -184,19 +184,19 @@ export class GHCIService { var warningFinalText = "En columna " + columna + ": " + warningTextToShow; if(this.codemirrorRef!==null){ - var makeMarker = function() { - var marker = document.createElement("div"); - marker.style.width = "15px"; - marker.style.height = "15px"; - marker.style.marginLeft = "-5px"; - marker.style.cursor = "pointer"; - marker.innerHTML = "<a href='@' title='cuidado , advertencia matefun'></a>"; - marker.title = warningFinalText; - marker.style["background-image"] = "url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAANlBMVEX/uwDvrwD/uwD/uwD/uwD/uwD/uwD/uwD/uwD6twD/uwAAAADurwD2tQD7uAD+ugAAAAD/uwDhmeTRAAAADHRSTlMJ8mN1EYcbmiixgACm7WbuAAAAVklEQVR42n3PUQqAIBBFUU1LLc3u/jdbOJoW1P08DA9Gba8+YWJ6gNJoNYIBzAA2chBth5kLmG9YUoG0NHAUwFXwO9LuBQL1giCQb8gC9Oro2vp5rncCIY8L8uEx5ZkAAAAASUVORK5CYII=')"; - marker.innerHTML = ""; - return marker; - } - this.codemirrorRef.setGutterMarker(line, "breakpoints", makeMarker()); + var makeMarker = function() { + var marker = document.createElement("div"); + marker.style.width = "15px"; + marker.style.height = "15px"; + marker.style.marginLeft = "-5px"; + marker.style.cursor = "pointer"; + marker.innerHTML = "<a href='@' title='cuidado , advertencia matefun'></a>"; + marker.title = warningFinalText; + marker.style["background-image"] = "url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAANlBMVEX/uwDvrwD/uwD/uwD/uwD/uwD/uwD/uwD/uwD6twD/uwAAAADurwD2tQD7uAD+ugAAAAD/uwDhmeTRAAAADHRSTlMJ8mN1EYcbmiixgACm7WbuAAAAVklEQVR42n3PUQqAIBBFUU1LLc3u/jdbOJoW1P08DA9Gba8+YWJ6gNJoNYIBzAA2chBth5kLmG9YUoG0NHAUwFXwO9LuBQL1giCQb8gC9Oro2vp5rncCIY8L8uEx5ZkAAAAASUVORK5CYII=')"; + marker.innerHTML = ""; + return marker; + } + this.codemirrorRef.setGutterMarker(line, "breakpoints", makeMarker()); } }catch(err){ @@ -214,7 +214,6 @@ export class GHCIService { var warningText = m.resultado.split("OUTAdvertencia:")[1].trim(); this.warningStepReaded = 1; this.warningText = warningText; - debugger; if(this.waitingForWarning){ this.outputConsole('El programa contiene advertencias\n'); @@ -259,20 +258,20 @@ export class GHCIService { if(json_server_message.tipo=='salida'){ - var line = json_server_message.resultado.trim(); - if(line.startsWith("OUT")){ - this.outputConsole(line.substring(3) + '\n'); - }else if(line.startsWith("IN")){ - var promptText = line.substring(3); - if(this.consoleRef===undefined){ - this.renderConsole(); - } - this.consoleRef.SetPromptLabel(promptText); - this.consoleRef.SetPromptText(''); - this.startPrompt.bind(this); - this.startPrompt(); + var line = json_server_message.resultado.trim(); + if(line.startsWith("OUT")){ + this.outputConsole(line.substring(3) + '\n'); + }else if(line.startsWith("IN")){ + var promptText = line.substring(3); + if(this.consoleRef===undefined){ + this.renderConsole(); } - + this.consoleRef.SetPromptLabel(promptText); + this.consoleRef.SetPromptText(''); + this.startPrompt.bind(this); + this.startPrompt(); + } + } else if (json_server_message.tipo=='error'){ @@ -291,7 +290,7 @@ export class GHCIService { // console.log(x); }else if (json_server_message.tipo == 'canvas' || json_server_message.tipo == 'animacion' || json_server_message.tipo == 'graph'){ document.getElementById("FigurasBtn").click() - this.focusConsole(); + this.focusConsole(); this.messages.next(json_server_message); }