Skip to content

Add TreeView#114

Closed
microo8 wants to merge 1 commit intorivo:masterfrom
microo8:master
Closed

Add TreeView#114
microo8 wants to merge 1 commit intorivo:masterfrom
microo8:master

Conversation

@microo8
Copy link
Copy Markdown

@microo8 microo8 commented May 11, 2018

I couldn't wait for #113 and implemented the TreeView my self.
It can add/remove/setText of items.

usage is like this:

func main() {
	treeview := tview.NewTreeView()
	dbCur := treeview.AddItem(nil, "databases")
	treeview.ToggleItem(dbCur)
	treeview.AddItem(dbCur, "db1")
	db2Cur := treeview.AddItem(dbCur, "db2")
	treeview.ToggleItem(db2Cur)
	treeview.AddItem(db2Cur, "extensions")
	schemaCur := treeview.AddItem(db2Cur, "schemas")
	treeview.AddItem(db2Cur, "casts")
	treeview.ToggleItem(schemaCur)
	publicCur := treeview.AddItem(schemaCur, "public")
	treeview.AddItem(schemaCur, "schema1")
	treeview.AddItem(schemaCur, "schema2")
	treeview.ToggleItem(publicCur)
	tablesCur := treeview.AddItem(publicCur, "tables")
	treeview.AddItem(publicCur, "views")
	treeview.AddItem(publicCur, "types")
	treeview.AddItem(publicCur, "functions")
	treeview.ToggleItem(tablesCur)
	treeview.AddItem(tablesCur, "table1")
	treeview.SetItemText(treeview.AddItem(tablesCur, "table2"), "table20")
	treeview.RemoveItem(treeview.AddItem(tablesCur, "tableMeh"))
	if err := tview.NewApplication().SetRoot(treeview, true).Run(); err != nil {
		panic(err)
	}
}

And it looks like this:
treeview1
treeview2

I've tried to comment it as best as I could, I hope it will be OK.

@rivo
Copy link
Copy Markdown
Owner

rivo commented May 12, 2018

Please see my comments to #113. I appreciate the effort but if I implemented a tree view, the API would probably look different. (But it probably won't be too much effort to replace your implementation with the "official" one at a later time.)

@rivo rivo closed this May 12, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants