main.go 1.3 KB
Newer Older
aaronchen2k2k's avatar
aaronchen2k2k 已提交
1
package page
2 3

import (
aaronchen2k2k's avatar
aaronchen2k2k 已提交
4 5
	"github.com/easysoft/zentaoatf/src/ui"
	"github.com/easysoft/zentaoatf/src/ui/widget"
aaronchen2k2k's avatar
aaronchen2k2k 已提交
6 7
	constant "github.com/easysoft/zentaoatf/src/utils/const"
	"github.com/easysoft/zentaoatf/src/utils/vari"
8
	"github.com/jroimartin/gocui"
aaronchen2k2k's avatar
help  
aaronchen2k2k 已提交
9
	"log"
10 11
)

aaronchen2k2k's avatar
aaronchen2k2k 已提交
12
func InitMainPage(dir string, id string) error {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
13 14 15
	maxX, maxY := vari.Cui.Size()
	if maxX < constant.MinWidth {
		maxX = constant.MinWidth
aaronchen2k2k's avatar
aaronchen2k2k 已提交
16
	}
aaronchen2k2k's avatar
aaronchen2k2k 已提交
17 18
	if maxY < constant.MinHeight {
		maxY = constant.MinHeight
aaronchen2k2k's avatar
aaronchen2k2k 已提交
19
	}
20
	vari.MainViewHeight = maxY - constant.CmdViewHeight
21

22
	mainView := widget.NewPanelWidget("main", 0, 0, maxX-2, vari.MainViewHeight, "")
aaronchen2k2k's avatar
aaronchen2k2k 已提交
23
	ui.ViewMap["root"] = append(ui.ViewMap["root"], mainView.Name())
24

25
	cmdView := widget.NewPanelWidget("cmd", 0, vari.MainViewHeight, maxX-2, constant.CmdViewHeight-1, "")
aaronchen2k2k's avatar
aaronchen2k2k 已提交
26
	ui.ViewMap["root"] = append(ui.ViewMap["root"], cmdView.Name())
27

aaronchen2k2k's avatar
adjust  
aaronchen2k2k 已提交
28
	widget.NewHelpWidget()
29
	MainPageKeyBindings()
aaronchen2k2k's avatar
aaronchen2k2k 已提交
30 31 32

	InitReportBugPage(dir, id)

33 34 35
	return nil
}

36
func MainPageKeyBindings() error {
aaronchen2k2k's avatar
help  
aaronchen2k2k 已提交
37 38 39
	if err := vari.Cui.SetKeybinding("", gocui.KeyCtrlH, gocui.ModNone, widget.ShowHelpFromView); err != nil {
		log.Panicln(err)
	}
aaronchen2k2k's avatar
aaronchen2k2k 已提交
40
	if err := vari.Cui.SetKeybinding("", gocui.KeyCtrlC, gocui.ModNone, ui.Quit); err != nil {
41 42 43
		return err
	}

44
	ui.SupportScroll("cmd")
45

aaronchen2k2k's avatar
aaronchen2k2k 已提交
46 47 48
	v, _ := vari.Cui.View("cmd")
	v.Autoscroll = true

49 50
	return nil
}