diff options
Diffstat (limited to 'gocui/tab.go')
| -rw-r--r-- | gocui/tab.go | 111 |
1 files changed, 0 insertions, 111 deletions
diff --git a/gocui/tab.go b/gocui/tab.go deleted file mode 100644 index f0fc563..0000000 --- a/gocui/tab.go +++ /dev/null @@ -1,111 +0,0 @@ -package main - -// implements widgets 'Window' and 'Tab' - -import ( - "strings" - - "go.wit.com/lib/widget" - "go.wit.com/log" -) - -func (w *guiWidget) Width() int { - if w.frame { - return w.gocuiSize.w1 - w.gocuiSize.w0 - } - return w.gocuiSize.w1 - w.gocuiSize.w0 - 1 -} - -func (w *guiWidget) Height() int { - if w.frame { - return w.gocuiSize.h1 - w.gocuiSize.h0 - } - return w.gocuiSize.h1 - w.gocuiSize.h0 - 1 -} - -func (n *node) gocuiSetWH(sizeW, sizeH int) { - w := len(widget.GetString(n.value)) - lines := strings.Split(widget.GetString(n.value), "\n") - h := len(lines) - - tk := n.tk - if tk.isFake { - tk.gocuiSize.w0 = sizeW - tk.gocuiSize.h0 = sizeH - tk.gocuiSize.w1 = tk.gocuiSize.w0 + w + me.FramePadW - tk.gocuiSize.h1 = tk.gocuiSize.h0 + h + me.FramePadH - return - } - - if tk.frame { - tk.gocuiSize.w0 = sizeW - tk.gocuiSize.h0 = sizeH - tk.gocuiSize.w1 = tk.gocuiSize.w0 + w + me.FramePadW - tk.gocuiSize.h1 = tk.gocuiSize.h0 + h + me.FramePadH - } else { - tk.gocuiSize.w0 = sizeW - 1 - tk.gocuiSize.h0 = sizeH - 1 - tk.gocuiSize.w1 = tk.gocuiSize.w0 + w + 1 - tk.gocuiSize.h1 = tk.gocuiSize.h0 + h + 1 - } -} - -func redoWindows(nextW int, nextH int) { - for _, n := range me.rootNode.children { - if n.WidgetType != widget.Window { - continue - } - w := n.tk - var tabs bool - for _, child := range n.children { - if child.WidgetType == widget.Tab { - tabs = true - } - } - if tabs { - // window is tabs. Don't show it as a standard button - w.frame = false - n.hasTabs = true - } else { - w.frame = false - n.hasTabs = false - } - - n.gocuiSetWH(nextW, nextH) - n.deleteView() - n.showView() - - sizeW := w.Width() + me.WindowPadW - sizeH := w.Height() - nextW += sizeW - log.Log(NOW, "redoWindows() start nextW,H =", nextW, nextH, "gocuiSize.W,H =", sizeW, sizeH, n.progname) - - if n.hasTabs { - n.redoTabs(me.TabW, me.TabH) - } - } -} - -func (p *node) redoTabs(nextW int, nextH int) { - for _, n := range p.children { - if n.WidgetType != widget.Tab { - continue - } - w := n.tk - w.frame = true - - n.gocuiSetWH(nextW, nextH) - n.deleteView() - // setCurrentTab(n) - // if (len(w.cuiName) < 4) { - // w.cuiName = "abcd" - // } - - n.showView() - - sizeW := w.Width() + me.TabPadW - sizeH := w.Height() - log.Log(NOW, "redoTabs() start nextW,H =", nextW, nextH, "gocuiSize.W,H =", sizeW, sizeH, n.progname) - nextW += sizeW - } -} |
