func main() { iup.Open() defer iup.Close() menu := iup.Menu( iup.Submenu("File", iup.Menu( iup.Item("Load File", (iup.ActionFunc)(onLoadFile)), iup.Item("Rotate", (iup.ActionFunc)(onRotate)), iup.Item("Quit", (iup.ActionFunc)(onQuit)))), iup.Submenu("Help", iup.Menu( iup.Item("About Iup", (iup.ActionFunc)(onAboutIup)), iup.Item("About go-iup", (iup.ActionFunc)(onAboutIupGo))))) text = iup.Text("MULTILINE=YES,EXPAND=YES,WORDWRAP=YES,SIZE=250x100,SCROLLBAR=YES") mainBox := iup.SetAttrs(iup.Vbox( iup.Label("Text to be rotated:"), text, iup.SetAttrs(iup.Hbox( iup.Button("Load File", "PADDING=3x3", (iup.ActionFunc)(onLoadFile)), iup.Button("Rotate", "PADDING=3x3", (iup.ActionFunc)(onRotate)), iup.Button("Quit", "PADDING=3x3", (iup.ActionFunc)(onQuit)), ), "MARGIN", "0x0"), ), "MARGIN", "5x5", "GAP", "3") mainDlg = iup.SetAttrs(iup.Dialog(mainBox), "TITLE", "Rot 13") iup.SetAttributeHandle(mainDlg, "MENU", menu) iup.Show(mainDlg) iup.MainLoop() }
func main() { iup.Open() defer iup.Close() browserFunc := func(attr, val string) iup.ActionFunc { return (iup.ActionFunc)(func(ih *iup.Ihandle) int { iup.StoreAttribute(browser, attr, val) return iup.DEFAULT }) } urlentry = iup.Text("EXPAND=HORIZONTAL", (iup.KAnyFunc)(onUrlEntryKey)) browser = webbrowser.WebBrowser("EXPAND=YES", (webbrowser.NavigateFunc)(updateUrlEntry), (webbrowser.CompletedFunc)(updateUrlEntry)) backbutton := iup.Button("<<", browserFunc("BACKFORWARD", "-1")) forbutton := iup.Button(">>", browserFunc("BACKFORWARD", "1")) relbutton := iup.Button("Reload", browserFunc("RELOAD", "1")) gobutton := iup.Button("Go...", (iup.ActionFunc)(onGo)) stopbutton := iup.Button("Stop", browserFunc("STOP", "1")) toolbar := iup.SetAttrs(iup.Hbox(backbutton, forbutton, relbutton, urlentry, gobutton, stopbutton), "MARGIN", "5x5", "GAP", "3") dialog := iup.Dialog(iup.Vbox(toolbar, browser), "SIZE=500x300,TITLE=\"go-iup Web Browser\"") iup.Show(dialog) iup.StoreAttribute(browser, "VALUE", "http://github.com/jcowgar/go-iup") iup.MainLoop() }