diff --git a/structs.go b/structs.go index 514febe..fa7c42c 100644 --- a/structs.go +++ b/structs.go @@ -1,5 +1,6 @@ package gui +import "log" import "image/color" import "golang.org/x/image/font" @@ -92,6 +93,50 @@ type GuiBox struct { UiBox *ui.Box } +func (s GuiBox) SetTitle(title string) { + log.Println("DID IT!", title) + if (s.Window == nil) { + return + } + if (s.Window.UiWindow == nil) { + return + } + s.Window.UiWindow.SetTitle(title) + return +} + +func (s GuiBox) InitTab(title string) { + if (s.Window == nil) { + return + } + if (s.Window.UiWindow == nil) { + return + } + + window := s.Window.UiWindow + tab := ui.NewTab() + window.SetChild(tab) + window.SetMargined(true) + + tab.Append(title, InitBlankWindow()) + tab.SetMargined(0, true) + + s.Window.UiTab = tab +} + +func (s GuiBox) AddTab(title string) { + if (s.Window == nil) { + return + } + if (s.Window.UiTab == nil) { + return + } + + tab := s.Window.UiTab + + tab.Append(title, InitBlankWindow()) +} + // Note: every mouse click is handled // as a 'Button' regardless of where // the user clicks it. You could probably diff --git a/window.go b/window.go index f87b27b..7c0250d 100644 --- a/window.go +++ b/window.go @@ -209,3 +209,10 @@ func CreateBlankWindow(title string, x int, y int) *GuiBox { return &box } + +func InitBlankWindow() ui.Control { + hbox := ui.NewHorizontalBox() + hbox.SetPadded(true) + + return hbox +}