golang-examples/README.md

2.8 KiB

list of examples:

	# shell things
	cd example-nohup;		go install	# minimum golang 'cmd'
	cd example-expect;		go install	# traditional 'expect' shell automation
	cd example-shell;		go install	# a tty wrapper
	cd example-gocui-mouse;		go install	# mouse interaction
	cd example-gocui-active;	go install	# ytalk
	cd example-gocui-colorstrue;	go install	# shell colors
	cd example-gocui-dynamic;	go install	# interactive movement

	# GUI things
	cd example-systray;		go install	# an example systray menu (cross platform)
	cd example-ui-splash;		go install	# an example GUI with drop down menus, etc
	cd example-ui-controlgallery;	go install	# an example GUI with drop down menus, etc
	cd example-ui-radiobutton;	go install	# slidebars, lists, radio buttons
	cd example-ui-table;		go install	# spreadsheet
	cd example-ui-show-hide;	go install	# toggle hide, show

	# wit/gui things
	cd example-gui;			go install	# an example using the wit/gui wrapper

	# misc
	cd example-lookupAAAA;		go install	# nslookup
	cd example-json-decode;		go install	# raw golang byte handling
	cd example-ssh;			go install	# scp example

	# golang things
	cd example-flag;		go install	# process argv
	cd example-pprof;		go install	# dump out go process internals
	cd example-protobuf;		go install	# convert json into golang protobuf struct
	cd example-bench-fast-timer;	go install	# time golang channels
	cd example-bench-readWriteOps;	go install	# uses channels to time select

example-ui-*

This is a set of demo apps that use the AndLabs UI toolkit. It also uses a wrapper around it that puts all the gtk elements in a structure so they can all be accessed.

This code should compile and work on Linux, MacOS and Windows.

It is very alpha.

IMPORTANT NOTES

To use the cross platform UI, all GUI interactions must be done from within the same goroutine for it to work properly on Windows. This is an annoying limitation of how Windows works (or so it appears. maybe someone will figure out how to fix that)

This means the Windows version of this GUI will probably always be sub-par verses the Linux and Macintosh versions

clone

go get -v -t -u git.wit.org/jcarr/golang-examples

prep (download all the golang build dependancies)

cd ~/go/src/git.wit.org/jcarr/golang-examples
witgoget='-v -t -u' make prep

build

make build

screenshots

example-ui-table

test image

example-ui-radiobutton

test image

example-systray

test image test image test image

License

This is a GPL 3.0 Project.

Credits

  • All the GO developers & Google
  • The andlabs people that made the golang cross platform UI
  • All the kernel, KVM and QEMU developers