diff options
author | Caleb Bassi <calebjbassi@gmail.com> | 2018-03-27 14:27:23 -0700 |
---|---|---|
committer | Caleb Bassi <calebjbassi@gmail.com> | 2018-03-27 14:27:23 -0700 |
commit | dc8cc5aa4db5cc08ae01b2ce48b6d310b98e858f (patch) | |
tree | 32a769dd4a6c4beec588571a164fc5cdc7ef4600 /termui/table.go | |
parent | 0aa09f4fc6afc71624c8956bdfdd80a72b808cb0 (diff) |
Change methods to use 'self' keyword
Diffstat (limited to 'termui/table.go')
-rw-r--r-- | termui/table.go | 148 |
1 files changed, 74 insertions, 74 deletions
diff --git a/termui/table.go b/termui/table.go index 7e377d2..e24031b 100644 --- a/termui/table.go +++ b/termui/table.go @@ -22,82 +22,82 @@ type Table struct { // NewTable returns a new Table instance func NewTable() *Table { - t := &Table{ + self := &Table{ Block: NewBlock(), Cursor: Theme.TableCursor, SelectedRow: 0, TopRow: 0, UniqueCol: 0, } - t.ColResizer = t.ColResize - return t + self.ColResizer = self.ColResize + return self } // ColResize is the default column resizer, but can be overriden. // ColResize calculates the width of each column. -func (t *Table) ColResize() { +func (self *Table) ColResize() { // calculate gap size based on total width - t.Gap = 3 - if t.X < 50 { - t.Gap = 1 - } else if t.X < 75 { - t.Gap = 2 + self.Gap = 3 + if self.X < 50 { + self.Gap = 1 + } else if self.X < 75 { + self.Gap = 2 } cur := 0 - for _, w := range t.ColWidths { - cur += t.Gap - t.CellXPos = append(t.CellXPos, cur) + for _, w := range self.ColWidths { + cur += self.Gap + self.CellXPos = append(self.CellXPos, cur) cur += w } } // Buffer implements the Bufferer interface. -func (t *Table) Buffer() *Buffer { - buf := t.Block.Buffer() +func (self *Table) Buffer() *Buffer { + buf := self.Block.Buffer() // removes gap at the bottom of the current view if there is one - if t.TopRow > len(t.Rows)-(t.Y-1) { - t.TopRow = len(t.Rows) - (t.Y - 1) + if self.TopRow > len(self.Rows)-(self.Y-1) { + self.TopRow = len(self.Rows) - (self.Y - 1) } - t.ColResizer() + self.ColResizer() // prints header - for i, width := range t.ColWidths { + for i, width := range self.ColWidths { if width == 0 { break } - r := MaxString(t.Header[i], t.X-6) - buf.SetString(t.CellXPos[i], 1, r, t.Fg|AttrBold, t.Bg) + r := MaxString(self.Header[i], self.X-6) + buf.SetString(self.CellXPos[i], 1, r, self.Fg|AttrBold, self.Bg) } // prints each row - for rowNum := t.TopRow; rowNum < t.TopRow+t.Y-1 && rowNum < len(t.Rows); rowNum++ { - row := t.Rows[rowNum] - y := (rowNum + 2) - t.TopRow + for rowNum := self.TopRow; rowNum < self.TopRow+self.Y-1 && rowNum < len(self.Rows); rowNum++ { + row := self.Rows[rowNum] + y := (rowNum + 2) - self.TopRow // prints cursor - bg := t.Bg - if (t.SelectedItem == "" && rowNum == t.SelectedRow) || (t.SelectedItem != "" && t.SelectedItem == row[t.UniqueCol]) { - bg = t.Cursor - for _, width := range t.ColWidths { + bg := self.Bg + if (self.SelectedItem == "" && rowNum == self.SelectedRow) || (self.SelectedItem != "" && self.SelectedItem == row[self.UniqueCol]) { + bg = self.Cursor + for _, width := range self.ColWidths { if width == 0 { break } - buf.SetString(1, y, strings.Repeat(" ", t.X), t.Fg, bg) + buf.SetString(1, y, strings.Repeat(" ", self.X), self.Fg, bg) } - t.SelectedItem = row[t.UniqueCol] - t.SelectedRow = rowNum + self.SelectedItem = row[self.UniqueCol] + self.SelectedRow = rowNum } // prints each col of the row - for i, width := range t.ColWidths { + for i, width := range self.ColWidths { if width == 0 { break } - r := MaxString(row[i], t.X-6) - buf.SetString(t.CellXPos[i], y, r, t.Fg, bg) + r := MaxString(row[i], self.X-6) + buf.SetString(self.CellXPos[i], y, r, self.Fg, bg) } } @@ -109,71 +109,71 @@ func (t *Table) Buffer() *Buffer { ///////////////////////////////////////////////////////////////////////////////// // calcPos is used to calculate the cursor position and the current view. -func (t *Table) calcPos() { - t.SelectedItem = "" +func (self *Table) calcPos() { + self.SelectedItem = "" - if t.SelectedRow < 0 { - t.SelectedRow = 0 + if self.SelectedRow < 0 { + self.SelectedRow = 0 } - if t.SelectedRow < t.TopRow { - t.TopRow = t.SelectedRow + if self.SelectedRow < self.TopRow { + self.TopRow = self.SelectedRow } - if t.SelectedRow > len(t.Rows)-1 { - t.SelectedRow = len(t.Rows) - 1 + if self.SelectedRow > len(self.Rows)-1 { + self.SelectedRow = len(self.Rows) - 1 } - if t.SelectedRow > t.TopRow+(t.Y-2) { - t.TopRow = t.SelectedRow - (t.Y - 2) + if self.SelectedRow > self.TopRow+(self.Y-2) { + self.TopRow = self.SelectedRow - (self.Y - 2) } } -func (t *Table) Up() { - t.SelectedRow -= 1 - t.calcPos() +func (self *Table) Up() { + self.SelectedRow -= 1 + self.calcPos() } -func (t *Table) Down() { - t.SelectedRow += 1 - t.calcPos() +func (self *Table) Down() { + self.SelectedRow += 1 + self.calcPos() } -func (t *Table) Top() { - t.SelectedRow = 0 - t.calcPos() +func (self *Table) Top() { + self.SelectedRow = 0 + self.calcPos() } -func (t *Table) Bottom() { - t.SelectedRow = len(t.Rows) - 1 - t.calcPos() +func (self *Table) Bottom() { + self.SelectedRow = len(self.Rows) - 1 + self.calcPos() } -// The number of lines in a page is equal to the height of the widget. +// The number of lines in a page is equal to the height of the widgeself. -func (t *Table) HalfPageUp() { - t.SelectedRow = t.SelectedRow - (t.Y-2)/2 - t.calcPos() +func (self *Table) HalfPageUp() { + self.SelectedRow = self.SelectedRow - (self.Y-2)/2 + self.calcPos() } -func (t *Table) HalfPageDown() { - t.SelectedRow = t.SelectedRow + (t.Y-2)/2 - t.calcPos() +func (self *Table) HalfPageDown() { + self.SelectedRow = self.SelectedRow + (self.Y-2)/2 + self.calcPos() } -func (t *Table) PageUp() { - t.SelectedRow -= (t.Y - 2) - t.calcPos() +func (self *Table) PageUp() { + self.SelectedRow -= (self.Y - 2) + self.calcPos() } -func (t *Table) PageDown() { - t.SelectedRow += (t.Y - 2) - t.calcPos() +func (self *Table) PageDown() { + self.SelectedRow += (self.Y - 2) + self.calcPos() } -func (t *Table) Click(x, y int) { - x = x - t.XOffset - y = y - t.YOffset - if (x > 0 && x <= t.X) && (y > 0 && y <= t.Y) { - t.SelectedRow = (t.TopRow + y) - 2 - t.calcPos() +func (self *Table) Click(x, y int) { + x = x - self.XOffset + y = y - self.YOffset + if (x > 0 && x <= self.X) && (y > 0 && y <= self.Y) { + self.SelectedRow = (self.TopRow + y) - 2 + self.calcPos() } } |