本文整理汇总了Golang中github.com/antha-lang/antha/internal/github.com/jroimartin/gocui.View类的典型用法代码示例。如果您正苦于以下问题:Golang View类的具体用法?Golang View怎么用?Golang View使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了View类的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: ActionError
//ActionError displays a window to give a description of the error occurred on a specific action
func (c *CUI) ActionError(g *gocui.Gui, v *gocui.View) error {
if c.selectedCommand < 0 {
panic(errors.New("Invalid command selection value"))
}
//send an error on
maxX, maxY := g.Size()
if v, err := g.SetView("ErrorMessageTittleView", maxX/2-30, maxY/4-2, maxX/2+30, maxY/4); err != nil {
if err != gocui.ErrorUnkView {
return err
}
fmt.Fprintln(v, " Write a description for the error (<Enter> when done)")
v.FgColor = gocui.ColorRed
if err := g.SetCurrentView("ActionView"); err != nil {
return err
}
}
if v, err := g.SetView("ErrorMessageView", maxX/2-30, maxY/4, maxX/2+30, 3*maxY/4); err != nil {
if err != gocui.ErrorUnkView {
return err
}
if err := g.SetCurrentView("ActionView"); err != nil {
return err
}
v.Editable = true
}
if err := g.SetCurrentView("ErrorMessageView"); err != nil {
return err
}
return nil
}
开发者ID:cgravill,项目名称:antha,代码行数:33,代码来源:cui.go
示例2: selectAction
//selectAction shows information about the action that is selected in the ActionListView
func (c *CUI) selectAction(g *gocui.Gui, v *gocui.View) error {
c.selectedCommand = c.getCursorListPos(g, v)
if c.selectedCommand > len(c.cmdList)-1 {
return nil
}
var l string
var t string
//Load the message from the commandList
l = c.cmdList[c.selectedCommand].Message.ChildrenText()
t = c.cmdList[c.selectedCommand].Message.Message
maxX, maxY := g.Size()
if v, err := g.SetView("ActionViewTitle", maxX/2-30, maxY/3-2, maxX/2+30, maxY/3); err != nil {
if err != gocui.ErrorUnkView {
return err
}
fmt.Fprintln(v, t)
}
if v, err := g.SetView("ActionView", maxX/2-30, maxY/3, maxX/2+30, 2*maxY/3); err != nil {
if err != gocui.ErrorUnkView {
return err
}
v.Wrap = true
fmt.Fprintln(v, l)
if err := g.SetCurrentView("ActionView"); err != nil {
return err
}
}
err := c.printActionHelp(g)
return err
}
开发者ID:cgravill,项目名称:antha,代码行数:34,代码来源:cui.go
示例3: ReportError
//ReportError instantiates a command result with the contents of the ErrorMessageView as the message for the error,
// sends the error on the channel and deletes the views on error reporting. Deletes the action from the window too
func (c *CUI) ReportError(g *gocui.Gui, v *gocui.View) error {
res := *NewCUICommandResult(c.cmdList[c.selectedCommand].Id, errors.New(v.Buffer())) //TODO strip \n ??
c.CmdOut <- res
err := c.cmdDone(c.selectedCommand)
if err != nil {
return err
}
//find all the views and exit
if err := c.G.DeleteView("ErrorMessageTittleView"); err != nil {
return err
}
if err := c.G.DeleteView("ErrorMessageView"); err != nil {
return err
}
return c.deleteView(g, v)
}
开发者ID:cgravill,项目名称:antha,代码行数:18,代码来源:cui.go
示例4: quit
//quit is called when the user wants to finish the execution of the gui. It should display a warning screen and give an
// error result to all the pending actions. If no pending actions exists, it just exists
func (c *CUI) quit(g *gocui.Gui, v *gocui.View) error {
if len(c.cmdList) > 0 {
maxX, maxY := g.Size()
if v, err := g.SetView("QuitWarnView", maxX/2-30, maxY/4, maxX/2+30, 3*maxY/4); err != nil {
if err != gocui.ErrorUnkView {
return err
}
fmt.Fprintf(v, "By pressing <Ctrl-X> all pending actions will be cancelled.\nPress <Enter> to go back")
v.BgColor = gocui.ColorYellow
v.FgColor = gocui.ColorBlack
if err := g.SetCurrentView("QuitWarnView"); err != nil {
return err
}
}
return nil
}
return c.quitAcknowledged(g, v)
}
开发者ID:cgravill,项目名称:antha,代码行数:20,代码来源:cui.go
示例5: cursorUp
//cursorUp moves the cursor up one position. When reaching the top, windows the text
func (c *CUI) cursorUp(g *gocui.Gui, v *gocui.View) error {
if v != nil {
ox, oy := v.Origin()
cx, cy := v.Cursor()
if err := v.SetCursor(cx, cy-1); err != nil && oy > 0 {
if err := v.SetOrigin(ox, oy-1); err != nil {
return err
}
}
}
return nil
}
开发者ID:cgravill,项目名称:antha,代码行数:13,代码来源:cui.go
示例6: cursorDown
//cursorDown moves the cursor down one position. When reaching the bottom, windows the text
func (c *CUI) cursorDown(g *gocui.Gui, v *gocui.View) error {
if v != nil {
cx, cy := v.Cursor()
if err := v.SetCursor(cx, cy+1); err != nil {
ox, oy := v.Origin()
if err := v.SetOrigin(ox, oy+1); err != nil {
return err
}
}
}
return nil
}
开发者ID:cgravill,项目名称:antha,代码行数:13,代码来源:cui.go
示例7: nextView
//nextView jumps between the ActionListView and the LogView
func (c *CUI) nextView(g *gocui.Gui, v *gocui.View) error {
if v == nil || v.Name() == "ActionListView" {
return g.SetCurrentView("LogView")
}
return g.SetCurrentView("ActionListView")
}
开发者ID:cgravill,项目名称:antha,代码行数:7,代码来源:cui.go
示例8: getCursorListPos
//getCursorListPos returns the position of selection in the given view
func (c *CUI) getCursorListPos(g *gocui.Gui, v *gocui.View) (y int) {
_, oy := v.Origin()
_, cy := v.Cursor()
y = oy + cy
return
}
开发者ID:cgravill,项目名称:antha,代码行数:7,代码来源:cui.go
注:本文中的github.com/antha-lang/antha/internal/github.com/jroimartin/gocui.View类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论