當前位置: 首頁>>代碼示例>>Golang>>正文


Golang Gui.SetCurrentView方法代碼示例

本文整理匯總了Golang中github.com/gophersiesta/gophersiesta/Godeps/_workspace/src/github.com/jroimartin/gocui.Gui.SetCurrentView方法的典型用法代碼示例。如果您正苦於以下問題:Golang Gui.SetCurrentView方法的具體用法?Golang Gui.SetCurrentView怎麽用?Golang Gui.SetCurrentView使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在github.com/gophersiesta/gophersiesta/Godeps/_workspace/src/github.com/jroimartin/gocui.Gui的用法示例。


在下文中一共展示了Gui.SetCurrentView方法的5個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。

示例1: saveValue

func saveValue(g *gocui.Gui, v *gocui.View) error {
	var l string

	//myViews.dialog.Rewind()
	l = myViews.dialog.ViewBuffer()
	lx := len(l)

	var pl string
	for _, placeholder := range global.pls.Placeholders {
		if placeholder.PropertyName == global.placeholder {
			pl = placeholder.PlaceHolder
			break
		}
	}

	value := common.Value{pl, l[:lx-2]}
	values := common.Values{[]*common.Value{&value}}

	api.SetValues(global.appName, []string{""}, values)

	if err := g.DeleteView("dialog"); err != nil {
		return err
	}

	loadPlaceholders(g, myViews.apps)

	if err := g.SetCurrentView("placeholders"); err != nil {
		return err
	}
	return nil
}
開發者ID:gophersiesta,項目名稱:gophersiesta,代碼行數:31,代碼來源:root.go

示例2: editValue

func editValue(g *gocui.Gui, v *gocui.View) error {
	var l string
	var err error

	_, cy := v.Cursor()
	global.placeholder, _ = myViews.placeholders.Line(cy)
	if l, err = myViews.values.Line(cy); err != nil {
		l = ""
	}

	maxX, maxY := g.Size()
	if v, err := g.SetView("dialog", maxX/2-30, maxY/2, maxX/2+30, maxY/2+2); err != nil {
		if err != gocui.ErrUnknownView {
			return err
		}
		lx := len(l)
		fmt.Fprintln(v, l[:lx])
		if l == " " {
			lx = 0
		}
		v.SetCursor(lx, 0)
		if err := g.SetCurrentView("dialog"); err != nil {
			return err
		}
		v.Editable = true
		myViews.dialog = v
	}
	return nil
}
開發者ID:gophersiesta,項目名稱:gophersiesta,代碼行數:29,代碼來源:root.go

示例3: loadPlaceholders

func loadPlaceholders(g *gocui.Gui, v *gocui.View) error {
	sc := getScreenConf(g)

	_, y := myViews.apps.Cursor()

	if err := g.DeleteView("placeholders"); err != nil {
		return err
	}

	if err := g.DeleteView("values"); err != nil {
		return err
	}

	vp, _ := layoutPlaceHolders(g, sc)
	vv, _ := layoutValues(g, sc)
	vp.SetCursor(0, 0)
	vp.Clear()
	vv.Clear()
	global.appName, _ = v.Line(y)
	pls, _ := api.GetPlaceholders(global.appName)
	vls, _ := api.GetValues(global.appName, []string{""})
	global.vls = vls
	global.pls = pls

	for _, pl := range pls.Placeholders {

		value := pl.PropertyValue
		for _, vl := range vls.Values {
			if vl.Name == pl.PlaceHolder {
				value = vl.Value
				break
			}
		}

		if len(value) == 0 {
			value = " "
		}
		fmt.Fprintln(vp, pl.PropertyName)
		fmt.Fprintln(vv, value)

	}

	if err := g.SetCurrentView("placeholders"); err != nil {
		return err
	}
	return nil
}
開發者ID:gophersiesta,項目名稱:gophersiesta,代碼行數:47,代碼來源:root.go

示例4: layoutApps

func layoutApps(g *gocui.Gui, sc ScreenConf) error {
	if v, err := g.SetView("apps", 0, sc.TitleHeight, sc.AppsWidth, sc.Height-(sc.LinesOfHelp+1)); err != nil {
		if err != gocui.ErrUnknownView {
			return err
		}
		v.Title = "Apps"
		v.Highlight = true

		apps, _ := api.GetApps()

		for _, app := range apps.Apps {
			fmt.Fprintln(v, app)
		}

		if err := g.SetCurrentView("apps"); err != nil {
			return err
		}

		myViews.apps = v
	}
	return nil
}
開發者ID:gophersiesta,項目名稱:gophersiesta,代碼行數:22,代碼來源:root.go

示例5: nextView

func nextView(g *gocui.Gui, v *gocui.View) error {
	if v.Name() == "apps" {
		return g.SetCurrentView("placeholders")
	}
	if v.Name() == "placeholders" {
		return g.SetCurrentView("apps")
	}
	return g.SetCurrentView("apps")
}
開發者ID:gophersiesta,項目名稱:gophersiesta,代碼行數:9,代碼來源:root.go


注:本文中的github.com/gophersiesta/gophersiesta/Godeps/_workspace/src/github.com/jroimartin/gocui.Gui.SetCurrentView方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。