From f8e3f12ab02b528f2a05a4f713d7af7ea8e44b42 Mon Sep 17 00:00:00 2001 From: Pietro Gagliardi Date: Fri, 11 Dec 2015 20:37:59 -0500 Subject: LET'S GET THIS FINAL REWRITE EVER STARTED --- prev/proposals/sidebar.md | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 prev/proposals/sidebar.md (limited to 'prev/proposals/sidebar.md') diff --git a/prev/proposals/sidebar.md b/prev/proposals/sidebar.md new file mode 100644 index 0000000..fa23392 --- /dev/null +++ b/prev/proposals/sidebar.md @@ -0,0 +1,32 @@ +# Sidebar Control + +```go +type Sidebar interface { + Control + + AppendCategory(text string) + DeleteCategory(index int) + + AppendItem(category int, name string) + DeleteItem(category int, index int) + + Selection() (category int, index int) // or Selected()? + Select(category int, index int) + + OnSelected(func()) +} +``` + +Simple two-level sidebars. + +Could have images on each item in the future. + +## Mac OS X +Source List NSTableView (need to see how this will work) + +## GTK+ +GTK_STYLE_CLASS_SIDEBAR (available in 3.4); see how GtkPlacesSidebar implements this + - other programs that do: Rhythmbox + +## Windows +???? -- cgit v1.2.3