summaryrefslogtreecommitdiff
path: root/cmds/gui-example/demo-window.go
blob: 993900d850ea010d3d4e2c3cb9c0c8d49d674488 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
package main

import "log"
import "reflect"

import "git.wit.org/wit/gui"

import "github.com/davecgh/go-spew/spew"

func demoClick (n *gui.Node) {
		log.Println("demoClick() Dumping node:")
		n.Dump()
}

var username = "jcarr"
var hostname = "fire"

func newClick (n *gui.Node) {
	var tmp []string
	junk := "ssh -v " + username + "@" + hostname
	log.Println("junk = " , junk)
	xterm(junk)
	log.Println("tmp = " , reflect.ValueOf(tmp).Kind())
	// spew.Dump(tmp)
}

func addDemoTab(n *gui.Node, title string) {
	newNode := n.AddTab(title, nil)
	if (gui.Config.Debug) {
		newNode.Dump()
	}
	newNode.ListChildren(false)

	groupNode1 := newNode.AddGroup("group 1")
	cbNode := groupNode1.AddComboBox("username", "root", "jcarr", "hugo")
	cbNode.OnChanged(func () {
		username = cbNode.GetText()
	})
	groupNode1.AddComboBox("demoCombo3", "foo 3", "bar", "stuff")

	groupNode1.Dump()

	butNode1 := groupNode1.AddButton("button1", demoClick)
	butNode1.Dump()

	butNode2 := groupNode1.AddButton("button2", newClick)
	butNode2.Dump()

	groupNode2 := newNode.AddGroup("group 2")
	groupNode2.AddComboBox("demoCombo2", "more 1", "more 2", "more 3")

	gNode := newNode.AddGroup("domU")
	makeSSHbutton(gNode, "hugo@www",	"www.wit.org")
	makeSSHbutton(gNode, "check.lab",	"check.lab.wit.org")
	makeSSHbutton(gNode, "gobuild.lab",	"gobuild.lab.wit.org")
	makeSSHbutton(gNode, "gobuild2.lab",	"gobuild2.lab.wit.org")

///////////////////////////////  Column DNS  ////////////////////////////////
	gNode = newNode.AddGroup("dns")
	makeSSHbutton(gNode, "bind.wit.org",	"bind.wit.org")
	makeSSHbutton(gNode, "ns1.wit.com",	"ns1.wit.com")
	makeSSHbutton(gNode, "ns2.wit.com",	"ns2.wit.com")
	makeSSHbutton(gNode, "coredns",		"coredns.lab.wit.org")

///////////////////////////////  PHYS 530  //////////////////////////////////
	gNode = newNode.AddGroup("phys 530")
	// makeXtermButton(gNode, "openwrt",	"SUBDOMAIN",  "ssh -4 -v root@openwrt")
	gNode.AddButton("openwrt", func (*gui.Node) {
		stuff := "ssh -4 -v root@openwrt"
		xterm(stuff)
	})
	makeSSHbutton  (gNode, "mirrors",	"mirrors.wit.org")
	makeSSHbutton  (gNode, "node004",	"node004.lab.wit.org")
	makeSSHbutton  (gNode, "lenovo-z70",	"lenovo-z70.lab.wit.org")

///////////////////////////////  PHYS 522  //////////////////////////////////
	gNode = newNode.AddGroup("phys 522")
	// makeXtermButton(gNode, "openwrt2",	"SUBDOMAIN", "ssh -4 -v root@openwrt2")
	gNode.AddButton("openwrt2", func (*gui.Node) {
		stuff := "ssh -4 -v root@openwrt2"
		xterm(stuff)
	})
	makeSSHbutton  (gNode, "fire.lab",	"fire.lab.wit.org")
	makeSSHbutton  (gNode, "predator",	"predator.lab.wit.org")

///////////////////////////////  FLOAT  /////////////////////////////////////
	gNode = newNode.AddGroup("float")
	makeSSHbutton(gNode, "root@asus-n501vw",	"asus-n501vw.lab.wit.org")
}

func makeSSHbutton (n *gui.Node, name string, hostname string) {
	bNode := n.AddButton(name, func (*gui.Node) {
		var tmp []string
		if (username == "") {
			username = "root"
		}
		junk := "ssh -v " + username + "@" + hostname
		log.Println("junk = " , junk)
		log.Println("username = '" + username + "'")
		xterm(junk)
		log.Println("tmp = " , reflect.ValueOf(tmp).Kind())
		spew.Dump(tmp)
	})
	bNode.Dump()
}