|
package main |
|
|
|
import ( |
|
"fmt" |
|
"github.com/mattn/go-gtk/gdk" |
|
"github.com/mattn/go-gtk/gtk" |
|
) |
|
|
|
func main() { |
|
gtk.Init(nil) |
|
|
|
window := gtk.NewWindow(gtk.WINDOW_TOPLEVEL) |
|
|
|
vbox := gtk.NewVBox(false, 0) |
|
|
|
colbtn := gtk.NewColorButton() |
|
colbtn.SetTitle("Test") |
|
vbox.PackStart(colbtn, false, false, 3) |
|
|
|
hbox := gtk.NewHBox(false, 0) |
|
|
|
input := gtk.NewEntry() |
|
hbox.PackStart(input, true, true, 3) |
|
setbtn := gtk.NewButtonWithLabel("Set color") |
|
setbtn.Connect("clicked", func() { |
|
colbtn.SetColor(gdk.NewColor(input.GetText())) |
|
}) |
|
hbox.PackStart(setbtn, false, false, 3) |
|
|
|
vbox.PackStart(hbox, false, false, 3) |
|
|
|
alphachk := gtk.NewCheckButtonWithLabel("Use Alpha") |
|
alphachk.Connect("toggled", func() { |
|
colbtn.SetUseAlpha(alphachk.GetActive()) |
|
}) |
|
vbox.PackStart(alphachk, false, false, 3) |
|
|
|
applybtn := gtk.NewButtonWithLabel("Apply color selection") |
|
applybtn.Connect("clicked", func() { |
|
window.ModifyBG(gtk.STATE_NORMAL, colbtn.GetColor()) |
|
|
|
if colbtn.GetUseAlpha() { |
|
fmt.Printf("Alpha: %04x\n", colbtn.GetAlpha()) |
|
} else { |
|
fmt.Println("Alpha not used") |
|
} |
|
}) |
|
vbox.PackStart(applybtn, false, false, 3) |
|
|
|
window.Add(vbox) |
|
window.SetDefaultSize(500, 200) |
|
window.Connect("destroy", gtk.MainQuit) |
|
|
|
window.ShowAll() |
|
|
|
gtk.Main() |
|
} |