Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
易企天创
zentaoatf
提交
113bf6c9
Z
zentaoatf
项目概览
易企天创
/
zentaoatf
11 个月 前同步成功
通知
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 搜索 >>
提交
113bf6c9
编写于
7月 31, 2019
作者:
aaronchen2k2k
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
support keyup, keydown event for views
上级
ec3f7587
变更
9
隐藏空白更改
内联
并排
Showing
9 changed file
with
117 addition
and
92 deletion
+117
-92
src/biz/log.go
src/biz/log.go
+4
-19
src/ui/pageImport.go
src/ui/pageImport.go
+4
-5
src/ui/pageMain.go
src/ui/pageMain.go
+17
-24
src/ui/pageSwitch.go
src/ui/pageSwitch.go
+3
-4
src/ui/uiUtils.go
src/ui/uiUtils.go
+30
-0
src/utils/constant.go
src/utils/constant.go
+2
-0
src/utils/display.go
src/utils/display.go
+17
-0
src/utils/print.go
src/utils/print.go
+40
-0
src/utils/utils.go
src/utils/utils.go
+0
-40
未找到文件。
src/biz/log.go
浏览文件 @
113bf6c9
...
...
@@ -34,7 +34,7 @@ func PrintWholeLine(msg string, char string, attr color.Attribute) {
clr
:=
color
.
New
(
attr
)
clr
.
Fprintf
(
output
,
fmt
.
Sprintf
(
"%s%s%s
\n
"
,
preFixStr
,
msg
,
postFixStr
))
adjustOrigin
(
)
utils
.
AdjustOrigin
(
"main"
)
}
func
PrintAndLog
(
logs
*
[]
string
,
str
string
)
{
...
...
@@ -48,7 +48,7 @@ func PrintAndLog(logs *[]string, str string) {
}
fmt
.
Fprintf
(
output
,
str
+
"
\n
"
)
adjustOrigin
(
)
utils
.
AdjustOrigin
(
"main"
)
}
func
PrintAndLogColorLn
(
logs
*
[]
string
,
str
string
,
attr
color
.
Attribute
)
{
...
...
@@ -63,7 +63,7 @@ func PrintAndLogColorLn(logs *[]string, str string, attr color.Attribute) {
clr
:=
color
.
New
(
attr
)
clr
.
Fprintf
(
output
,
str
+
"
\n
"
)
adjustOrigin
(
)
utils
.
AdjustOrigin
(
"main"
)
}
func
Printt
(
str
string
)
{
...
...
@@ -75,7 +75,7 @@ func Printt(str string) {
}
fmt
.
Fprintf
(
output
,
str
)
adjustOrigin
(
)
utils
.
AdjustOrigin
(
"main"
)
}
func
coloredStatus
(
status
string
)
string
{
...
...
@@ -92,18 +92,3 @@ func coloredStatus(status string) string {
return
status
}
func
adjustOrigin
()
{
if
!
utils
.
RunFromCui
{
return
}
view
,
_
:=
utils
.
Cui
.
View
(
"main"
)
contentHeight
:=
len
(
view
.
BufferLines
())
oy
:=
contentHeight
-
utils
.
MainViewHeight
if
oy
<
0
{
oy
=
0
}
ox
,
_
:=
view
.
Origin
()
view
.
SetOrigin
(
ox
,
oy
)
}
src/ui/pageImport.go
浏览文件 @
113bf6c9
...
...
@@ -107,22 +107,21 @@ func ImportRequest(g *gocui.Gui, v *gocui.View) error {
params
[
"entityVal"
]
=
taskId
}
cmdView
,
_
:=
g
.
View
(
"cmd"
)
_
,
_
=
fmt
.
Fprintln
(
cmdView
,
fmt
.
Sprintf
(
"#atf gen -u %s -t %s -v %s -l %s -s %t"
,
utils
.
PrintToCmd
(
g
,
fmt
.
Sprintf
(
"#atf gen -u %s -t %s -v %s -l %s -s %t"
,
url
,
params
[
"entityType"
],
params
[
"entityVal"
],
language
,
singleFile
))
json
,
e
:=
httpClient
.
Get
(
url
,
params
)
if
e
!=
nil
{
fmt
.
Fprintln
(
cmdView
,
e
.
Error
())
utils
.
PrintToCmd
(
g
,
e
.
Error
())
return
nil
}
count
,
err
:=
action
.
Generate
(
json
,
url
,
params
[
"entityType"
],
params
[
"entityVal"
],
language
,
singleFile
)
if
err
==
nil
{
fmt
.
Fprintln
(
cmdView
,
fmt
.
Sprintf
(
"success to generate %d test scripts in '%s' at %s"
,
utils
.
PrintToCmd
(
g
,
fmt
.
Sprintf
(
"success to generate %d test scripts in '%s' at %s"
,
count
,
utils
.
GenDir
,
utils
.
DateTimeStr
(
time
.
Now
())))
}
else
{
fmt
.
Fprintln
(
cmdView
,
err
.
Error
())
utils
.
PrintToCmd
(
g
,
err
.
Error
())
}
return
nil
...
...
src/ui/pageMain.go
浏览文件 @
113bf6c9
...
...
@@ -14,7 +14,7 @@ func InitMainPage(g *gocui.Gui) error {
if
maxY
<
utils
.
MinHeight
{
maxY
=
utils
.
MinHeight
}
utils
.
MainViewHeight
=
maxY
-
10
utils
.
MainViewHeight
=
maxY
-
utils
.
CmdViewHeight
-
1
quickBarView
:=
NewPanelWidget
(
g
,
"quickBarView"
,
0
,
0
,
utils
.
LeftWidth
,
2
,
""
)
ViewMap
[
"root"
]
=
append
(
ViewMap
[
"root"
],
quickBarView
.
Name
())
...
...
@@ -31,12 +31,11 @@ func InitMainPage(g *gocui.Gui) error {
mainView
:=
NewPanelWidget
(
g
,
"main"
,
utils
.
LeftWidth
,
0
,
maxX
-
1
-
utils
.
LeftWidth
,
utils
.
MainViewHeight
,
""
)
ViewMap
[
"root"
]
=
append
(
ViewMap
[
"root"
],
mainView
.
Name
())
//mainView.Editable = true
mainView
.
Wrap
=
true
cmdView
:=
NewPanelWidget
(
g
,
"cmd"
,
utils
.
LeftWidth
,
utils
.
MainViewHeight
,
maxX
-
1
-
utils
.
LeftWidth
,
9
,
""
)
cmdView
:=
NewPanelWidget
(
g
,
"cmd"
,
utils
.
LeftWidth
,
utils
.
MainViewHeight
,
maxX
-
1
-
utils
.
LeftWidth
,
utils
.
CmdViewHeight
,
""
)
ViewMap
[
"root"
]
=
append
(
ViewMap
[
"root"
],
cmdView
.
Name
())
cmdView
.
Autoscroll
=
true
mainView
.
Wrap
=
true
utils
.
PrintPreferenceToView
(
cmdView
)
...
...
@@ -56,31 +55,25 @@ func MainPageKeyBindings(g *gocui.Gui) error {
log
.
Panicln
(
err
)
}
if
err
:=
g
.
SetKeybinding
(
"main"
,
gocui
.
KeyArrowUp
,
gocui
.
ModNone
,
func
(
g
*
gocui
.
Gui
,
v
*
gocui
.
View
)
error
{
scrollView
(
v
,
-
1
)
return
nil
});
err
!=
nil
{
if
err
:=
g
.
SetKeybinding
(
"main"
,
gocui
.
MouseLeft
,
gocui
.
ModNone
,
setCurrView
(
"main"
));
err
!=
nil
{
return
err
}
if
err
:=
g
.
SetKeybinding
(
"main"
,
gocui
.
KeyArrowDown
,
gocui
.
ModNone
,
func
(
g
*
gocui
.
Gui
,
v
*
gocui
.
View
)
error
{
scrollView
(
v
,
1
)
return
nil
});
err
!=
nil
{
if
err
:=
g
.
SetKeybinding
(
"main"
,
gocui
.
KeyArrowUp
,
gocui
.
ModNone
,
scroll
(
-
1
));
err
!=
nil
{
return
err
}
if
err
:=
g
.
SetKeybinding
(
"main"
,
gocui
.
KeyArrowDown
,
gocui
.
ModNone
,
scroll
(
1
));
err
!=
nil
{
return
err
}
return
nil
}
func
scrollView
(
v
*
gocui
.
View
,
dy
int
)
error
{
if
v
!=
nil
{
v
.
Autoscroll
=
false
ox
,
oy
:=
v
.
Origin
()
if
err
:=
v
.
SetOrigin
(
ox
,
oy
+
dy
);
err
!=
nil
{
return
err
}
if
err
:=
g
.
SetKeybinding
(
"cmd"
,
gocui
.
MouseLeft
,
gocui
.
ModNone
,
setCurrView
(
"cmd"
));
err
!=
nil
{
return
err
}
if
err
:=
g
.
SetKeybinding
(
"cmd"
,
gocui
.
KeyArrowUp
,
gocui
.
ModNone
,
scroll
(
-
1
));
err
!=
nil
{
return
err
}
if
err
:=
g
.
SetKeybinding
(
"cmd"
,
gocui
.
KeyArrowDown
,
gocui
.
ModNone
,
scroll
(
1
));
err
!=
nil
{
return
err
}
return
nil
}
src/ui/pageSwitch.go
浏览文件 @
113bf6c9
...
...
@@ -46,18 +46,17 @@ func SwitchWorkDir(g *gocui.Gui, v *gocui.View) error {
workDir
:=
strings
.
TrimSpace
(
workDirView
.
ViewBuffer
())
cmdView
,
_
:=
g
.
View
(
"cmd"
)
_
,
_
=
fmt
.
Fprintln
(
cmdView
,
fmt
.
Sprintf
(
"#atf switch -d %s"
,
workDir
))
utils
.
PrintToCmd
(
g
,
fmt
.
Sprintf
(
"#atf switch -d %s"
,
workDir
))
err
:=
action
.
SwitchWorkDir
(
workDir
)
if
err
==
nil
{
workDirView
.
Clear
()
workDirView
.
Write
([]
byte
(
utils
.
Prefer
.
WorkDir
))
fmt
.
Fprintln
(
cmdView
,
fmt
.
Sprintf
(
"success to switch project to %s at %s"
,
utils
.
PrintToCmd
(
g
,
fmt
.
Sprintf
(
"success to switch project to %s at %s"
,
workDir
,
utils
.
DateTimeStr
(
time
.
Now
())))
}
else
{
fmt
.
Fprintln
(
cmdView
,
err
.
Error
())
utils
.
PrintToCmd
(
g
,
err
.
Error
())
}
return
nil
...
...
src/ui/uiUtils.go
浏览文件 @
113bf6c9
...
...
@@ -49,3 +49,33 @@ func GetNextView(name string, views []string) string {
func
Quit
(
g
*
gocui
.
Gui
,
v
*
gocui
.
View
)
error
{
return
gocui
.
ErrQuit
}
func
scroll
(
dy
int
)
func
(
g
*
gocui
.
Gui
,
v
*
gocui
.
View
)
error
{
return
func
(
g
*
gocui
.
Gui
,
v
*
gocui
.
View
)
error
{
return
scrollView
(
v
,
dy
)
}
}
func
scrollView
(
v
*
gocui
.
View
,
dy
int
)
error
{
v
.
Autoscroll
=
false
ox
,
oy
:=
v
.
Origin
()
pos
:=
oy
+
dy
_
,
height
:=
v
.
Size
()
if
pos
<
0
{
pos
=
0
}
else
if
pos
>
len
(
v
.
BufferLines
())
-
height
{
pos
=
len
(
v
.
BufferLines
())
-
height
}
if
err
:=
v
.
SetOrigin
(
ox
,
pos
);
err
!=
nil
{
return
err
}
return
nil
}
func
setCurrView
(
name
string
)
func
(
g
*
gocui
.
Gui
,
v
*
gocui
.
View
)
error
{
return
func
(
g
*
gocui
.
Gui
,
v
*
gocui
.
View
)
error
{
g
.
SetCurrentView
(
name
)
return
nil
}
}
src/utils/constant.go
浏览文件 @
113bf6c9
...
...
@@ -20,6 +20,8 @@ const (
LeftWidth
=
36
MinWidth
=
130
MinHeight
=
36
CmdViewHeight
=
10
)
var
RunFromCui
bool
...
...
src/utils/display.go
浏览文件 @
113bf6c9
...
...
@@ -64,3 +64,20 @@ func parseSize(input string) (int, int, error) {
}
return
int
(
w
),
int
(
h
),
nil
}
func
AdjustOrigin
(
name
string
)
{
if
!
RunFromCui
{
return
}
view
,
_
:=
Cui
.
View
(
name
)
_
,
height
:=
view
.
Size
()
contentHeight
:=
len
(
view
.
BufferLines
())
oy
:=
contentHeight
-
height
if
oy
<
0
{
oy
=
0
}
ox
,
_
:=
view
.
Origin
()
view
.
SetOrigin
(
ox
,
oy
)
}
src/utils/print.go
0 → 100644
浏览文件 @
113bf6c9
package
utils
import
(
"flag"
"fmt"
"github.com/fatih/color"
"github.com/jroimartin/gocui"
)
func
PrintUsage
(
flagSet
flag
.
FlagSet
)
{
PrintUsageWithSpaceLine
(
flagSet
,
true
)
}
func
PrintUsageWithSpaceLine
(
flagSet
flag
.
FlagSet
,
spaceLine
bool
)
{
prefix
:=
""
if
spaceLine
{
prefix
=
"
\n
"
}
fmt
.
Printf
(
"%s %s
\n
"
,
prefix
,
color
.
CyanString
(
flagSet
.
Name
()))
flagSet
.
PrintDefaults
()
}
func
PrintSample
()
{
fmt
.
Printf
(
"
\n
Sample to use:
\n
"
)
fmt
.
Printf
(
"TODO...
\n
"
)
}
func
PrintToCmd
(
g
*
gocui
.
Gui
,
msg
string
)
{
cmdView
,
_
:=
g
.
View
(
"cmd"
)
_
,
_
=
fmt
.
Fprintln
(
cmdView
,
msg
)
AdjustOrigin
(
"cmd"
)
}
func
PrintToMain
(
g
*
gocui
.
Gui
,
msg
string
)
{
mainView
,
_
:=
g
.
View
(
"main"
)
mainView
.
Clear
()
_
,
_
=
fmt
.
Fprintln
(
mainView
,
msg
)
AdjustOrigin
(
"main"
)
}
src/utils/utils.go
浏览文件 @
113bf6c9
package
utils
import
(
"flag"
"fmt"
"github.com/easysoft/zentaoatf/src/misc"
"github.com/fatih/color"
"github.com/jroimartin/gocui"
"os"
"path"
"regexp"
...
...
@@ -70,42 +66,6 @@ func IsMac() bool {
return
GetOs
()
==
"mac"
}
func
PrintUsages
(
flagSets
[]
flag
.
FlagSet
)
{
for
_
,
flagSet
:=
range
flagSets
{
fmt
.
Printf
(
"
\n
%s
\n
"
,
flagSet
.
Name
())
flagSet
.
PrintDefaults
()
}
}
func
PrintUsage
(
flagSet
flag
.
FlagSet
)
{
PrintUsageWithSpaceLine
(
flagSet
,
true
)
}
func
PrintUsageWithSpaceLine
(
flagSet
flag
.
FlagSet
,
spaceLine
bool
)
{
prefix
:=
""
if
spaceLine
{
prefix
=
"
\n
"
}
fmt
.
Printf
(
"%s %s
\n
"
,
prefix
,
color
.
CyanString
(
flagSet
.
Name
()))
flagSet
.
PrintDefaults
()
}
func
PrintSample
()
{
fmt
.
Printf
(
"
\n
Sample to use:
\n
"
)
fmt
.
Printf
(
"TODO...
\n
"
)
}
func
PrintToCmd
(
g
*
gocui
.
Gui
,
msg
string
)
{
cmdView
,
_
:=
g
.
View
(
"cmd"
)
_
,
_
=
fmt
.
Fprintln
(
cmdView
,
msg
)
}
func
PrintToMain
(
g
*
gocui
.
Gui
,
msg
string
)
{
mainView
,
_
:=
g
.
View
(
"main"
)
mainView
.
Clear
()
_
,
_
=
fmt
.
Fprintln
(
mainView
,
msg
)
}
func
IsRelease
()
bool
{
return
!
FileExist
(
"res"
)
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录