Added mest-ui start options and ability to enable debug console

This commit is contained in:
Mihail Slobodyanuk 2022-12-10 11:10:59 +02:00
parent 7d7db57319
commit 70d32441c0
6 changed files with 45 additions and 4 deletions

4
build
View file

@ -58,10 +58,6 @@ build_meshctl() {
} }
build_mesh_ui() { build_mesh_ui() {
#only UI should be built with windowsgui flag
if [ "$GOOS" == "windows" ]; then
LDFLAGS2=" -H windowsgui"
fi
buildbin ./contrib/ui/mesh-ui buildbin ./contrib/ui/mesh-ui
} }

View file

@ -18,9 +18,32 @@ import (
"github.com/webview/webview" "github.com/webview/webview"
"github.com/RiV-chain/RiV-mesh/src/admin" "github.com/RiV-chain/RiV-mesh/src/admin"
"github.com/docopt/docopt-go"
) )
var confui struct {
Console bool `docopt:"-c,--console"`
}
func main() { func main() {
usage := `Graphical interface for RiV mesh.
Usage:
mesh-ui
mesh-ui -c | --console
mesh-ui -h | --help
mesh-ui -v | --version
Options:
-c --console Show debug console window.
-h --help Show this screen.
-v --version Show version.`
opts, _ := docopt.ParseArgs(usage, os.Args[1:], "0.0.1")
opts.Bind(&confui)
if !confui.Console {
Console(false)
}
debug := true debug := true
w := webview.New(debug) w := webview.New(debug)
defer w.Destroy() defer w.Destroy()

View file

@ -30,3 +30,6 @@ func run_command_with_arg(command string, arg string) []byte {
} }
return out return out
} }
func Console(show bool) {
}

View file

@ -33,3 +33,19 @@ func run_command_with_arg(command string, arg string) []byte {
} }
return out return out
} }
func Console(show bool) {
var getWin = syscall.NewLazyDLL("kernel32.dll").NewProc("GetConsoleWindow")
var showWin = syscall.NewLazyDLL("user32.dll").NewProc("ShowWindow")
hwnd, _, _ := getWin.Call()
if hwnd == 0 {
return
}
if show {
var SW_RESTORE uintptr = 9
showWin.Call(hwnd, SW_RESTORE)
} else {
var SW_HIDE uintptr = 0
showWin.Call(hwnd, SW_HIDE)
}
}

1
go.mod
View file

@ -23,6 +23,7 @@ require (
) )
require ( require (
github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815 // indirect
github.com/dustin/go-humanize v1.0.0 // indirect github.com/dustin/go-humanize v1.0.0 // indirect
github.com/getlantern/context v0.0.0-20190109183933-c447772a6520 // indirect github.com/getlantern/context v0.0.0-20190109183933-c447772a6520 // indirect
github.com/getlantern/ema v0.0.0-20190620044903-5943d28f40e4 // indirect github.com/getlantern/ema v0.0.0-20190620044903-5943d28f40e4 // indirect

2
go.sum
View file

@ -12,6 +12,8 @@ github.com/cheggaaa/pb/v3 v3.0.8/go.mod h1:UICbiLec/XO6Hw6k+BHEtHeQFzzBH4i2/qk/o
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815 h1:bWDMxwH3px2JBh6AyO7hdCn/PkvCZXii8TGj7sbtEbQ=
github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815/go.mod h1:WwZ+bS3ebgob9U8Nd0kOddGdZWjyMGR8Wziv+TBNwSE=
github.com/dustin/go-humanize v1.0.0 h1:VSnTsYCnlFHaM2/igO1h6X3HA71jcobQuxemgkq4zYo= github.com/dustin/go-humanize v1.0.0 h1:VSnTsYCnlFHaM2/igO1h6X3HA71jcobQuxemgkq4zYo=
github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk=
github.com/fatih/color v1.10.0/go.mod h1:ELkj/draVOlAH/xkhN6mQ50Qd0MPOk5AAr3maGEBuJM= github.com/fatih/color v1.10.0/go.mod h1:ELkj/draVOlAH/xkhN6mQ50Qd0MPOk5AAr3maGEBuJM=