Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
tianyazhichiC
algorithm-visualizer
提交
69c20875
A
algorithm-visualizer
项目概览
tianyazhichiC
/
algorithm-visualizer
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
A
algorithm-visualizer
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
69c20875
编写于
5月 24, 2016
作者:
J
Jason Park
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
remove _pace method, add interval interface instead
上级
5442583e
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
40 addition
and
16 deletion
+40
-16
css/stylesheet.css
css/stylesheet.css
+17
-1
index.html
index.html
+1
-0
js/module/tracer.js
js/module/tracer.js
+3
-14
js/module/tracer_manager.js
js/module/tracer_manager.js
+4
-1
js/script.js
js/script.js
+15
-0
未找到文件。
css/stylesheet.css
浏览文件 @
69c20875
...
...
@@ -15,13 +15,16 @@ a {
}
*
{
color
:
inherit
;
}
*
:not
(
input
)
{
-webkit-touch-callout
:
none
;
-webkit-user-select
:
none
;
-moz-user-select
:
none
;
-ms-user-select
:
none
;
-o-user-select
:
none
;
user-select
:
none
;
color
:
inherit
;
}
button
{
...
...
@@ -85,6 +88,14 @@ nav h3 {
height
:
100%
;
}
button
input
{
outline
:
none
;
background
:
none
;
border
:
none
;
width
:
20px
;
text-align
:
right
;
}
.sidemenu
{
top
:
30px
;
bottom
:
0
;
...
...
@@ -252,6 +263,11 @@ pre {
background
:
rgba
(
120
,
0
,
0
,
.8
);
}
.toast.info
{
border-color
:
rgb
(
0
,
150
,
0
);
background
:
rgba
(
0
,
120
,
0
,
.8
);
}
.github-fork-ribbon
{
position
:
fixed
;
}
...
...
index.html
浏览文件 @
69c20875
...
...
@@ -25,6 +25,7 @@
<button
id=
"btn_prev"
><i
class=
"fa fa-chevron-left"
aria-hidden=
"true"
></i>
Prev
</button>
<button
id=
"btn_pause"
><i
class=
"fa fa-pause"
aria-hidden=
"true"
></i>
Pause
</button>
<button
id=
"btn_next"
>
Next
<i
class=
"fa fa-chevron-right"
aria-hidden=
"true"
></i></button>
<button
id=
"btn_interval"
>
Interval:
<input
type=
"text"
value=
"0.5"
>
sec
</button>
</div>
</nav>
<section
class=
"sidemenu active"
>
...
...
js/module/tracer.js
浏览文件 @
69c20875
...
...
@@ -4,7 +4,6 @@ var stepLimit = 1e6;
var
Tracer
=
function
(
module
)
{
this
.
module
=
module
||
Tracer
;
this
.
traces
=
[];
this
.
traceOptions
=
null
;
this
.
traceIndex
=
-
1
;
this
.
stepCnt
=
0
;
this
.
capsule
=
tm
.
allocate
(
this
);
...
...
@@ -49,18 +48,11 @@ Tracer.prototype = {
_print
:
function
(
msg
,
delay
)
{
this
.
pushStep
({
type
:
'
print
'
,
msg
:
msg
},
delay
);
},
_pace
:
function
(
interval
)
{
this
.
pushStep
({
type
:
'
pace
'
,
interval
:
interval
},
false
);
},
_clear
:
function
()
{
this
.
pushStep
({
type
:
'
clear
'
},
true
);
},
visualize
:
function
(
options
)
{
options
=
options
||
{};
options
.
interval
=
options
.
interval
||
500
;
visualize
:
function
()
{
$
(
'
#btn_trace
'
).
click
();
this
.
traceOptions
=
options
;
this
.
traceIndex
=
-
1
;
this
.
resumeStep
();
},
...
...
@@ -92,9 +84,6 @@ Tracer.prototype = {
case
'
print
'
:
tracer
.
printTrace
(
step
.
msg
);
break
;
case
'
pace
'
:
tracer
.
traceOptions
.
interval
=
step
.
interval
;
break
;
case
'
clear
'
:
tracer
.
clear
();
tracer
.
printTrace
(
'
clear traces
'
);
...
...
@@ -105,12 +94,12 @@ Tracer.prototype = {
});
if
(
!
options
.
virtual
)
{
this
.
refresh
();
this
.
scrollToEnd
(
Math
.
min
(
50
,
t
his
.
traceOptions
.
interval
));
this
.
scrollToEnd
(
Math
.
min
(
50
,
t
m
.
interval
));
}
if
(
tm
.
pause
)
return
;
timer
=
setTimeout
(
function
()
{
tracer
.
step
(
i
+
1
,
options
);
},
sleepDuration
||
t
his
.
traceOptions
.
interval
);
},
sleepDuration
||
t
m
.
interval
);
},
refresh
:
function
()
{
},
...
...
js/module/tracer_manager.js
浏览文件 @
69c20875
var
TracerManager
=
function
()
{
this
.
pause
=
false
;
this
.
capsules
=
[];
this
.
interval
=
500
;
};
TracerManager
.
prototype
=
{
...
...
@@ -28,7 +29,6 @@ TracerManager.prototype = {
return
false
;
}
});
console
.
log
(
'
allocated
'
+
selectedCapsule
);
if
(
selectedCapsule
==
null
)
{
selectedCapsule
=
this
.
add
(
newTracer
);
}
...
...
@@ -78,5 +78,8 @@ TracerManager.prototype = {
},
isPause
:
function
()
{
return
this
.
pause
;
},
setInterval
:
function
(
interval
)
{
$
(
'
#btn_interval input
'
).
val
(
interval
);
}
};
\ No newline at end of file
js/script.js
浏览文件 @
69c20875
...
...
@@ -10,6 +10,11 @@ $(document).on('click', 'a', function (e) {
var
tm
=
new
TracerManager
();
$
(
'
#btn_interval input
'
).
on
(
'
change
'
,
function
()
{
tm
.
interval
=
Number
.
parseFloat
(
$
(
this
).
val
()
*
1000
);
showInfoToast
(
'
Tracing interval has been set to
'
+
tm
.
interval
/
1000
+
'
second(s).
'
);
});
var
$module_container
=
$
(
'
.module_container
'
);
var
initEditor
=
function
(
id
)
{
var
editor
=
ace
.
edit
(
id
);
...
...
@@ -193,6 +198,16 @@ var showErrorToast = function (err) {
},
3000
);
};
var
showInfoToast
=
function
(
info
)
{
var
$toast
=
$
(
'
<div class="toast info">
'
).
append
(
info
);
$
(
'
.toast_container
'
).
append
(
$toast
);
setTimeout
(
function
()
{
$toast
.
fadeOut
(
function
()
{
$toast
.
remove
();
});
},
3000
);
};
$
(
'
#btn_run
'
).
click
(
function
()
{
try
{
tm
.
deallocateAll
();
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录