[PR #1037] Feature: get table content #1114

Open
opened 2026-03-04 01:09:30 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/rivo/tview/pull/1037
Author: @pavigor
Created: 10/14/2024
Status: 🔄 Open

Base: masterHead: feature/table_get_content


📝 Commits (1)

  • beddc35 Feature: get table content

📊 Changes

1 file changed (+5 additions, -0 deletions)

View changed files

📝 table.go (+5 -0)

📄 Description

This PR allow access to table content. It can be useful in case when you need to replace one table to another without creating any time new table.

package main

import (
	"github.com/gdamore/tcell/v2"
	"github.com/rivo/tview"
)

func main() {
    grid := tview.NewGrid().SetRows(2, 0).SetColumns(3, 0).SetBorders(true)
    var table *tview.Table
    table1 := tview.NewTable().SetBorders(true)
    table1.SetCell(0, 0, tview.NewTableCell("DataTable1")
    table1.SetCell(0, 1, tview.NewTableCell("DataTable1"))
    table2 := tview.NewTable().SetBorders(true)
    table2.SetCell(0, 0, tview.NewTableCell("DataTable2")
    table2.SetCell(0, 1, tview.NewTableCell("DataTable2"))

    // Tree
   treeView := tview.NewTreeView()
   root := tview.NewTreeNode("Root")
   node1 := tview.NewTreeNode("Node1").SetColor(tcell.ColorGreen)
   node1.SetSelectedFunc(func() {
        // Dynamic update table content
	table.SetContent(table1.GetContent())
   })
   node2 := tview.NewTreeNode("Node1")
   node2.SetSelectedFunc(func() {
        // Dynamic update table content
	table.SetContent(table2.GetContent())
   })
   root.AddChild(node1).AddChild(node2)
   treeView.SetRoot(root).SetCurrentNode(root)

   grid.AddItem(treeView, 0, 0, 2, 2, 0, 0, true)
   grid.AddItem(table, 0, 2, 2, 2, 0, 0, false)

   if err := tview.NewApplication().SetRoot(grid, true).SetFocus(grid).Run(); err != nil {
	panic(err)
    }
}

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/rivo/tview/pull/1037 **Author:** [@pavigor](https://github.com/pavigor) **Created:** 10/14/2024 **Status:** 🔄 Open **Base:** `master` ← **Head:** `feature/table_get_content` --- ### 📝 Commits (1) - [`beddc35`](https://github.com/rivo/tview/commit/beddc35deef94fbe7ce1aea647893a7ff2fd396e) Feature: get table content ### 📊 Changes **1 file changed** (+5 additions, -0 deletions) <details> <summary>View changed files</summary> 📝 `table.go` (+5 -0) </details> ### 📄 Description This PR allow access to table content. It can be useful in case when you need to replace one table to another without creating any time new table. ```go package main import ( "github.com/gdamore/tcell/v2" "github.com/rivo/tview" ) func main() { grid := tview.NewGrid().SetRows(2, 0).SetColumns(3, 0).SetBorders(true) var table *tview.Table table1 := tview.NewTable().SetBorders(true) table1.SetCell(0, 0, tview.NewTableCell("DataTable1") table1.SetCell(0, 1, tview.NewTableCell("DataTable1")) table2 := tview.NewTable().SetBorders(true) table2.SetCell(0, 0, tview.NewTableCell("DataTable2") table2.SetCell(0, 1, tview.NewTableCell("DataTable2")) // Tree treeView := tview.NewTreeView() root := tview.NewTreeNode("Root") node1 := tview.NewTreeNode("Node1").SetColor(tcell.ColorGreen) node1.SetSelectedFunc(func() { // Dynamic update table content table.SetContent(table1.GetContent()) }) node2 := tview.NewTreeNode("Node1") node2.SetSelectedFunc(func() { // Dynamic update table content table.SetContent(table2.GetContent()) }) root.AddChild(node1).AddChild(node2) treeView.SetRoot(root).SetCurrentNode(root) grid.AddItem(treeView, 0, 0, 2, 2, 0, 0, true) grid.AddItem(table, 0, 2, 2, 2, 0, 0, false) if err := tview.NewApplication().SetRoot(grid, true).SetFocus(grid).Run(); err != nil { panic(err) } } ``` --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/tview#1114
No description provided.