Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
易企天创
zentaoatf
提交
1c43745f
Z
zentaoatf
项目概览
易企天创
/
zentaoatf
10 个月 前同步成功
通知
11
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
3
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
Z
zentaoatf
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
3
Issue
3
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
1c43745f
编写于
7月 23, 2019
作者:
aaronchen2k2k
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
first cui layout
上级
f18018e2
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
107 addition
and
0 deletion
+107
-0
_cui_examples/mouse.go
_cui_examples/mouse.go
+1
-0
src/cui.go
src/cui.go
+106
-0
未找到文件。
_cui_examples/mouse.go
浏览文件 @
1c43745f
...
...
@@ -45,6 +45,7 @@ func layout(g *gocui.Gui) error {
fmt
.
Fprintln
(
v
,
"Button 1 - line 3"
)
fmt
.
Fprintln
(
v
,
"Button 1 - line 4"
)
}
if
v
,
err
:=
g
.
SetView
(
"but2"
,
24
,
2
,
44
,
4
);
err
!=
nil
{
if
err
!=
gocui
.
ErrUnknownView
{
return
err
...
...
src/cui.go
0 → 100644
浏览文件 @
1c43745f
package
main
import
(
"fmt"
"log"
"github.com/jroimartin/gocui"
)
func
layout
(
g
*
gocui
.
Gui
)
error
{
maxX
,
maxY
:=
g
.
Size
()
if
v
,
err
:=
g
.
SetView
(
"side"
,
0
,
0
,
int
(
0.2
*
float32
(
maxX
)),
maxY
-
1
);
err
!=
nil
{
if
err
!=
gocui
.
ErrUnknownView
{
return
err
}
v
.
Highlight
=
true
v
.
SelBgColor
=
gocui
.
ColorGreen
v
.
SelFgColor
=
gocui
.
ColorBlack
fmt
.
Fprintln
(
v
,
"New Project"
)
fmt
.
Fprintln
(
v
,
"New From Zentao"
)
fmt
.
Fprintln
(
v
,
"Switch Project"
)
}
if
_
,
err
:=
g
.
SetView
(
"main"
,
int
(
0.2
*
float32
(
maxX
)),
0
,
maxX
-
1
,
maxY
-
5
);
err
!=
nil
&&
err
!=
gocui
.
ErrUnknownView
{
return
err
}
if
_
,
err
:=
g
.
SetView
(
"cmdline"
,
int
(
0.2
*
float32
(
maxX
)),
maxY
-
5
,
maxX
-
1
,
maxY
-
1
);
err
!=
nil
&&
err
!=
gocui
.
ErrUnknownView
{
return
err
}
return
nil
}
func
quit
(
g
*
gocui
.
Gui
,
v
*
gocui
.
View
)
error
{
return
gocui
.
ErrQuit
}
func
main
()
{
g
,
err
:=
gocui
.
NewGui
(
gocui
.
OutputNormal
)
if
err
!=
nil
{
log
.
Panicln
(
err
)
}
defer
g
.
Close
()
g
.
Cursor
=
true
g
.
Mouse
=
true
g
.
SetManagerFunc
(
layout
)
if
err
:=
keybindings
(
g
);
err
!=
nil
{
log
.
Panicln
(
err
)
}
if
err
:=
g
.
MainLoop
();
err
!=
nil
&&
err
!=
gocui
.
ErrQuit
{
log
.
Panicln
(
err
)
}
}
func
keybindings
(
g
*
gocui
.
Gui
)
error
{
if
err
:=
g
.
SetKeybinding
(
""
,
gocui
.
KeyCtrlC
,
gocui
.
ModNone
,
quit
);
err
!=
nil
{
return
err
}
for
_
,
n
:=
range
[]
string
{
"side"
}
{
if
err
:=
g
.
SetKeybinding
(
n
,
gocui
.
MouseLeft
,
gocui
.
ModNone
,
showMsg
);
err
!=
nil
{
return
err
}
}
if
err
:=
g
.
SetKeybinding
(
"msg"
,
gocui
.
MouseLeft
,
gocui
.
ModNone
,
delMsg
);
err
!=
nil
{
return
err
}
return
nil
}
func
showMsg
(
g
*
gocui
.
Gui
,
v
*
gocui
.
View
)
error
{
var
l
string
var
err
error
if
_
,
err
:=
g
.
SetCurrentView
(
v
.
Name
());
err
!=
nil
{
return
err
}
_
,
cy
:=
v
.
Cursor
()
if
l
,
err
=
v
.
Line
(
cy
);
err
!=
nil
{
l
=
""
}
mainView
,
err
:=
g
.
View
(
"main"
)
fmt
.
Fprintln
(
mainView
,
l
)
//maxX, maxY := g.Size()
//if v, err := g.SetView("msg", maxX/2-10, maxY/2, maxX/2+10, maxY/2+2); err != nil {
// if err != gocui.ErrUnknownView {
// return err
// }
// fmt.Fprintln(v, l)
//}
return
nil
}
func
delMsg
(
g
*
gocui
.
Gui
,
v
*
gocui
.
View
)
error
{
if
err
:=
g
.
DeleteView
(
"msg"
);
err
!=
nil
{
return
err
}
return
nil
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录