Skip to content

Commit

Permalink
prettier update and path in python gui fixed for windows
Browse files Browse the repository at this point in the history
  • Loading branch information
supertick committed Jan 30, 2024
1 parent c19c590 commit 4bbf02a
Show file tree
Hide file tree
Showing 2 changed files with 151 additions and 146 deletions.
7 changes: 4 additions & 3 deletions .prettierrc
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
{
"htmlWhitespaceSensitivity": "ignore",
"printWidth": 180
}
"htmlWhitespaceSensitivity": "ignore",
"printWidth": 180,
"semi": false
}
290 changes: 147 additions & 143 deletions src/main/resources/resource/WebGui/app/service/js/PythonGui.js
Original file line number Diff line number Diff line change
@@ -1,185 +1,189 @@
angular.module('mrlapp.service.PythonGui', []).controller('PythonGuiCtrl', ['$scope', 'mrl', '$uibModal', function($scope, mrl, $uibModal) {
console.info('PythonGuiCtrl')
angular.module("mrlapp.service.PythonGui", []).controller("PythonGuiCtrl", [
"$scope",
"mrl",
"$uibModal",
function ($scope, mrl, $uibModal) {
console.info("PythonGuiCtrl")
var _self = this
var msg = this.msg

// list of client keys
// cant come from service.clients
// cant come from service.clients
// because its non serializable
var clients = []

// filesystem list of scripts
$scope.scriptList = []
$scope.log = ''
$scope.log = ""

// this UI's currently active script
$scope.activeKey = null

_self.updateState = function(service) {
$scope.service = service
_self.updateState = function (service) {
$scope.service = service
}

this.onMsg = function(msg) {
let data = msg.data[0]
switch (msg.method) {
// FIXME - bury it ?
case 'onState':
// its important to externalize the updating
// of the service body in a method rather than doing the
// updates inline here - because when things are first initialized
// we want to call the same method - and if it was inline that
// would make a mess
_self.updateState(data)
$scope.$apply()
break
case 'onStdOut':
$scope.log = data + $scope.log
$scope.$apply()
break
case 'onAppend':
$scope.log = data + $scope.log
$scope.$apply()
break
case 'onScriptList':
$scope.scriptList = data
$scope.$apply()
break
case 'onStatus':
if (data.level == 'error'){
$scope.log = data.detail + '\n' + $scope.log
}
console.info("onStatus ", data)
$scope.$apply()
break
this.onMsg = function (msg) {
let data = msg.data[0]
switch (msg.method) {
// FIXME - bury it ?
case "onState":
// its important to externalize the updating
// of the service body in a method rather than doing the
// updates inline here - because when things are first initialized
// we want to call the same method - and if it was inline that
// would make a mess
_self.updateState(data)
$scope.$apply()
break
case "onStdOut":
$scope.log = data + $scope.log
$scope.$apply()
break
case "onAppend":
$scope.log = data + $scope.log
$scope.$apply()
break
case "onScriptList":
$scope.scriptList = data
$scope.$apply()
break
case "onStatus":
if (data.level == "error") {
$scope.log = data.detail + "\n" + $scope.log
}
console.info("onStatus ", data)
$scope.$apply()
break
default:
console.error("ERROR - unhandled method " + msg.method)
break
}
console.error("ERROR - unhandled method " + msg.method)
break
}
}

//----- ace editors related callbacks begin -----//
$scope.aceLoaded = function(e) {
console.info("ace loaded")
$scope.aceLoaded = function (e) {
console.info("ace loaded")
}

$scope.aceChanged = function(e) {
console.info("ace changed")
activeScript = $scope.service.openedScripts[$scope.activeKey]
msg.send('updateScript', activeScript.file, activeScript.code)
$scope.aceChanged = function (e) {
console.info("ace changed")
activeScript = $scope.service.openedScripts[$scope.activeKey]
msg.send("updateScript", activeScript.file, activeScript.code)
}

$scope.closeScript = function(scriptName) {
// FIXME - save first ?
msg.send('closeScript', scriptName)
$scope.closeScript = function (scriptName) {
// FIXME - save first ?
msg.send("closeScript", scriptName)
}

$scope.exec = function() {
activeScript = $scope.service.openedScripts[$scope.activeKey]
msg.send('exec', activeScript.code)
$scope.exec = function () {
activeScript = $scope.service.openedScripts[$scope.activeKey]
msg.send("exec", activeScript.code)
}
$scope.tabSelected = function(script) {
console.info('tabSelected')
$scope.activeKey = script.file
$scope.tabSelected = function (script) {
console.info("tabSelected")
$scope.activeKey = script.file
}

$scope.getFileName = function(path){
if (path){
const pathComponents = path.split('/');
return pathComponents[pathComponents.length - 1]
}
else return ""
$scope.getFileName = function (path) {
if (path) {
const pathComponents = path.replace(/\\/g, "/").split("/")
return pathComponents[pathComponents.length - 1]
} else return ""
}

$scope.saveScript = function() {
activeScript = $scope.service.openedScripts[$scope.activeKey]
msg.send('saveScript', activeScript.file, activeScript.code)
$scope.saveScript = function () {
activeScript = $scope.service.openedScripts[$scope.activeKey]
msg.send("saveScript", activeScript.file, activeScript.code)
}

$scope.getPossibleServices = function(item) {
ret = Object.values(mrl.getPossibleServices())
return ret
$scope.getPossibleServices = function (item) {
ret = Object.values(mrl.getPossibleServices())
return ret
}

$scope.addScript = function() {
var modalInstance = $uibModal.open({
templateUrl: 'addPythonScript.html',
controller: function($scope, $uibModalInstance) {
$scope.ok = function() {
if (!$scope.filename){
console.error('filename cannot be null')
return
}

msg.send('addScript', $scope.filename, '# new awesome robot script\n')
$uibModalInstance.close($scope.filename)
}
$scope.addScript = function () {
var modalInstance = $uibModal.open({
templateUrl: "addPythonScript.html",
controller: function ($scope, $uibModalInstance) {
$scope.ok = function () {
if (!$scope.filename) {
console.error("filename cannot be null")
return
}

$scope.cancel = function() {
$uibModalInstance.dismiss('cancel')
}
msg.send("addScript", $scope.filename, "# new awesome robot script\n")
$uibModalInstance.close($scope.filename)
}

$scope.checkEnterKey = function(event) {
if (event.keyCode === 13) {
$scope.ok()
}
}
$scope.cancel = function () {
$uibModalInstance.dismiss("cancel")
}

},
size: 'sm'
})

modalInstance.result.then(function(filename) {
// Do something with the filename
console.log("Filename: ", filename)
}, function() {
// Modal dismissed
console.log("Modal dismissed")
})
$scope.checkEnterKey = function (event) {
if (event.keyCode === 13) {
$scope.ok()
}
}
},
size: "sm",
})

modalInstance.result.then(
function (filename) {
// Do something with the filename
console.log("Filename: ", filename)
},
function () {
// Modal dismissed
console.log("Modal dismissed")
}
)
}


$scope.openScript = function() {

msg.send('getScriptList')

var modalInstance = $uibModal.open({
templateUrl: 'openPythonScript.html',
scope: $scope,
controller: function($scope, $uibModalInstance) {
$scope.ok = function(file) {
msg.send('openScript', file)
$uibModalInstance.close()
}

$scope.cancel = function() {
$uibModalInstance.dismiss('cancel')
}

$scope.checkEnterKey = function(event) {
if (event.keyCode === 13) {
$scope.ok()
$scope.openScript = function () {
msg.send("getScriptList")

var modalInstance = $uibModal.open({
templateUrl: "openPythonScript.html",
scope: $scope,
controller: function ($scope, $uibModalInstance) {
$scope.ok = function (file) {
msg.send("openScript", file)
$uibModalInstance.close()
}

$scope.cancel = function () {
$uibModalInstance.dismiss("cancel")
}

$scope.checkEnterKey = function (event) {
if (event.keyCode === 13) {
$scope.ok()
}
}

},
size: 'sm'
})

modalInstance.result.then(function(filename) {
// Do something with the filename
console.log("Filename: ", filename)
}, function() {
// Modal dismissed
console.log("Modal dismissed")
})
}


msg.subscribe('publishStdOut')
msg.subscribe('publishAppend')
msg.subscribe('getClients')
msg.subscribe('getScriptList')
msg.send('getScriptList')
msg.subscribe(this)
}
},
size: "sm",
})

modalInstance.result.then(
function (filename) {
// Do something with the filename
console.log("Filename: ", filename)
},
function () {
// Modal dismissed
console.log("Modal dismissed")
}
)
}

msg.subscribe("publishStdOut")
msg.subscribe("publishAppend")
msg.subscribe("getClients")
msg.subscribe("getScriptList")
msg.send("getScriptList")
msg.subscribe(this)
},
])

0 comments on commit 4bbf02a

Please sign in to comment.