Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
K
kityminder-core
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
吴志俊
kityminder-core
Commits
d2b688c3
Commit
d2b688c3
authored
Jul 04, 2014
by
campaign
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/dev' into dev
parents
9c172c66
9d5a594d
Changes
15
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
199 additions
and
48 deletions
+199
-48
CHANGELOG.md
CHANGELOG.md
+29
-2
index.html
index.html
+2
-2
zh-cn.js
lang/zh-cn/zh-cn.js
+19
-24
1.2.0 测试要点.md
spec/1.2.0 测试要点.md
+122
-0
node.js
src/adapter/node.js
+4
-6
dragtree.js
src/module/dragtree.js
+3
-1
editor.selection.js
src/module/editor.selection.js
+4
-3
text.js
src/module/text.js
+3
-0
view.js
src/module/view.js
+1
-2
zoom.js
src/module/zoom.js
+4
-0
fresh.js
src/theme/fresh.js
+2
-4
comboboxmenu.css
themes/default/css/comboboxmenu.css
+4
-2
dropmenu.css
themes/default/css/dropmenu.css
+1
-1
kityminder.css
themes/default/css/kityminder.css
+1
-1
menu-icons.psd
themes/default/images/menu-icons.psd
+0
-0
No files found.
CHANGELOG.md
View file @
d2b688c3
# KityMinder 更新日志
## v1.2.0
### 功能更新
1.
支持ipad上的文字编辑
### 新功能
1.
允许节点自由拖动
2.
允许节点排序(包括拖动以及快捷键 Alt + Up 和 Alt + Down)
3.
节点上插入在线图片(暂不支持本地图片)
4.
节点上添加资源标签(分配负责人)
5.
支持节点复制粘贴
6.
支持换肤,添加了 “文艺清新” 系列的几个皮肤
### 体验优化
1.
界面重新设计,更加美观
2.
布局性能有较大的提高
3.
调整了文字输入的交互
4.
添加了布局时的动画效果
5.
扩大了超链接的点击范围
6.
优先级增加至 9 个,进度增加至 9 个
### BUG 修复
1.
修复 XSS 攻击问题(超链接和图片)
2.
修复导入损坏文件报错的问题
3.
修复新版 Chrome 下载扩展名错误问题
4.
修复 SVG 和 PNG 在缩放之后导出不全的问题
5.
修复缩放后选区闪烁的问题
6.
修复分享内容无法更新的问题 说明:需要再次点击分享创建更新链接
## v1.1.3.2
...
...
@@ -14,6 +40,7 @@
## v1.1.3.1
### Hot Fix
1.
修复某些输入法下输入英文的问题
2.
添加网盘操作(加载列表、保存文件等)失败后重试的机制
...
...
index.html
View file @
d2b688c3
...
...
@@ -2,8 +2,8 @@
<html>
<head>
<meta
charset=
"utf-8"
>
<meta
name=
"title"
content=
"百度脑图"
>
<meta
name=
"keyword"
content=
"
脑
图,kity,svg,minder,百度,fex,前端,在线"
>
<meta
name=
"title"
content=
"百度脑图
(KityMinder)
"
>
<meta
name=
"keyword"
content=
"
kityminder,脑图,思维导
图,kity,svg,minder,百度,fex,前端,在线"
>
<meta
name=
"description"
content=
"百度脑图,便捷的脑图编辑工具。让您在线上直接创建、保存并分享你的思路。"
>
<script
src=
"lib/jquery-2.1.0.min.js"
charset=
"utf-8"
></script>
...
...
lang/zh-cn/zh-cn.js
View file @
d2b688c3
...
...
@@ -28,9 +28,8 @@ KityMinder.LANG['zh-cn'] = {
'saveto'
:
'另存为'
,
'hand'
:
'允许拖拽'
,
'zoom'
:
'放大缩小'
,
'markers'
:
'添加标签'
,
'resource'
:
'分配资源'
,
'switchlayout'
:
'切换主题'
,
'markers'
:
'标签'
,
'resource'
:
'资源'
,
'help'
:
'帮助'
,
'preference'
:
'偏好设置'
,
'image'
:
'插入图片'
,
...
...
@@ -58,14 +57,14 @@ KityMinder.LANG['zh-cn'] = {
'none'
:
'无'
,
'progress'
:
{
'title'
:
'进度'
,
'notdone'
:
"未完成"
,
'done1'
:
'完成1/8'
,
'done2'
:
'完成1/4'
,
'done3'
:
'完成3/8'
,
'done4'
:
'完成1/2'
,
'done5'
:
'完成5/8'
,
'done6'
:
'完成3/4'
,
'done7'
:
'完成7/8'
,
'notdone'
:
'未完成'
,
'done1'
:
'完成
1/8'
,
'done2'
:
'完成
1/4'
,
'done3'
:
'完成
3/8'
,
'done4'
:
'完成
1/2'
,
'done5'
:
'完成
5/8'
,
'done6'
:
'完成
3/4'
,
'done7'
:
'完成
7/8'
,
'done'
:
'已完成'
}
},
...
...
@@ -77,28 +76,24 @@ KityMinder.LANG['zh-cn'] = {
'resource'
:
{}
},
'node'
:
{
'appendsiblingnode'
:
'插入
同级
节点'
,
'appendsiblingnode'
:
'插入
兄弟
节点'
,
'appendchildnode'
:
'插入子节点'
,
'removenode'
:
'删除节点'
,
'editnode'
:
'编辑节点'
},
'layout'
:
{
'default'
:
'左右展开'
,
'bottom'
:
'向下展开'
'removenode'
:
'删除'
,
'editnode'
:
'编辑'
},
'hyperlink'
:
{
'hyperlink'
:
'
插入超链接
'
,
'unhyperlink'
:
'
取消超
链接'
'hyperlink'
:
'
链接...
'
,
'unhyperlink'
:
'
移除
链接'
},
'image'
:
{
'image'
:
'
插入图片
'
,
'removeimage'
:
'
删
除图片'
'image'
:
'
图片...
'
,
'removeimage'
:
'
移
除图片'
},
'marker'
:
{
'marker'
:
'进度/优先级'
'marker'
:
'进度/优先级
...
'
},
'resource'
:
{
'resource'
:
'
分配资源
'
'resource'
:
'
资源...
'
}
};
\ No newline at end of file
spec/1.2.0 测试要点.md
0 → 100644
View file @
d2b688c3
## 文件操作
-
[
]
创建新文件
-
[
]
操作:文件菜单点击新建
-
[
]
反馈:编辑区域剩一个跟节点,并且镜头会居中到根节点
-
[
]
反馈:草稿箱保存了上一个文件的内容
-
[
]
导入本地文件
-
[
]
操作:文件菜单点击导入
-
[
]
导入 .txt 格式
-
[
]
导入 .km 格式
-
[
]
导入 .xmind 格式
-
[
]
导入 .mm 格式
-
[
]
导入 .mmap 格式
-
[
]
操作:把文件拖放到编辑区域(格式同上述格式)
-
[
]
反馈:正确导入能显示文件正确的内容
-
[
]
节点树不缺不多
-
[
]
优先级和进度正确显示
-
[
]
超链接正确显示
-
[
]
反馈:错误的文件向用户提示文件损坏
-
[
]
草稿箱
-
[
]
加载完毕后加载上次打开的脑图
-
[
]
能打开草稿箱内容
-
[
]
草稿箱菜单的删除和清除功能正常
-
[
]
网盘文件
-
[
]
登录后,文件菜单上列出最近编辑的网盘脑图文件
-
[
]
点击脑图上的文件在编辑区加载其内容
-
[
]
格式支持同上
-
[
]
点击文件菜单的「保存到网盘」,文件保存到了个人的百度网盘上
-
[
]
文件保存
-
[
]
刚从网盘打开的文件,其状态是 「已保存」
-
[
]
新创建的文件、打开的文件发生了编辑,其状态是 「未保存」
-
[
]
「未保存」的文件在文件标题处会有一个
`*`
号
-
[
]
「未保存」的文件按
`Ctrl + S`
或点击「保存」菜单后,文件会保存到网盘上,状态变为「已保存」
-
[
]
如果当前文件「未保存」,草稿箱会记录其「未保存」的状态
-
[
]
可以创建新或打开其它文件,重新打开「未保存」的文件其状态依然是「未保存」,内容是上次编辑的内容
-
[
]
从网盘打开文件时,如果草稿箱的版本「未保存」,会打开草稿箱的版本。
-
[
]
如果再重新打开一次,会询问用户是否忽略未保存的版本,强制打开网盘的版本
-
[
]
文件分享
-
[
]
点击「分享」按钮,会生成一个分享链接
-
[
]
分享浮层中其它社交分享的信息正确
-
[
]
打开分享链接,会打开分享的脑图内容
## 工具箱
-
[
]
「工具箱」按钮点击切换工具箱的显示状态
## 节点操作
对于所有节点操作,都需要先有选中的节点,才能进行操作。
-
[
]
插入子节点
-
[
]
操作:按 Tab 插入
-
[
]
操作:右键菜单插入
-
[
]
操作:工具栏下拉菜单插入
-
[
]
反馈:选中节点产生了一个新的子节点,并且新节点文本被选中,进入编辑状态,同时布局会调整
-
[
]
插入兄弟节点
-
[
]
操作:按 Enter 插入
-
[
]
操作:右键菜单插入
-
[
]
操作:工具栏下拉菜单插入
-
[
]
反馈:选中节点产生了一个新的兄弟节点,并且新节点文本被选中,进入编辑状态,同时布局会调整
-
[
]
编辑节点
-
[
]
操作:按 F2 编辑
-
[
]
操作:右键菜单编辑
-
[
]
操作:工具栏下拉菜单编辑
-
[
]
反馈:节点进入编辑状态,文字全选
-
[
]
删除节点
-
[
]
操作:按 Del 删除
-
[
]
操作:右键菜单删除
-
[
]
操作:工具栏下拉菜单删除
-
[
]
反馈:节点被删除,同时布局会调整
-
[
]
展开/收起节点
-
[
]
点击非叶子节点上的
`-`
,节点被收起
-
[
]
点击非叶子节点上的
`+`
,节点被展开,展开后子树的展开收起状态跟收起前一致
-
[
]
点击工具栏上的「收起节点」按钮
-
[
]
如果选中了节点,会收起选中的节点
-
[
]
如果没有选中节点,会把所有节点收起至一级节点
-
[
]
点击工具栏上的「展开节点」按钮
-
[
]
如果选中了节点,会展开选中节点以及
-
[
]
节点拖动
-
[
]
节点不在编辑状态的时候可以随意拖动位置
-
[
]
节点拖动到同级节点的附近可以触发排序点,松开会将拖动的节点排序到指定的位置
-
[
]
节点拖动到非子树上的节点可以触发移动提示,松开会让拖动的节点变成目标节点的子节点
-
[
]
节点排序
-
[
]
可以用上述拖放的形式排序
-
[
]
可以使用
`Alt + Up`
和
`Alt + Down`
分别向上、向下调整顺序
-
[
]
节点复制、剪切、粘贴
-
[
]
使用
`Ctrl + C`
复制节点树到剪贴板
-
[
]
使用
`Ctrl + X`
剪切节点数到剪贴板
-
[
]
使用
`Ctrl + V`
粘贴节点树到目标节点
## 风格和模板设置
-
[
]
设置结构
-
[
]
使用「模板」下拉菜单可以切换脑图的布局形式
-
[
]
皮肤设置
-
[
]
使用「皮肤」下来菜单可以切换
-
[
]
老版本的文件打开
-
[
]
默认布局的使用「思维导图」的模板,使用「脑图经典」的皮肤
-
[
]
向下布局的使用「组织结构图」的模板,使用「温柔寒光」的皮肤
## 样式设置
-
[
]
工具栏上的「字体」、「字号」、「加粗」、「斜体」、「字体颜色」能正确设置
## 节点附件
-
[
]
使用工具栏或上下文菜单插入、移除超链接
-
[
]
超链接格式必须正确(只能是 HTTP 资源)
-
[
]
使用工具栏或上下文菜单插入、移除图片
-
[
]
图片资源必须存在
-
[
]
使用工具栏或上下文菜单设置优先级和进度
-
[
]
使用工具栏或上下文菜单设置资源
-
[
]
资源对话框会显示脑图上使用到的所有资源
-
[
]
可以对选中节点添加资源或勾选、取消资源
## 视野操作
-
[
]
可以使用工具栏上的「小手」按钮触发拖动模式,拖动模式可以随意拖动编辑区域
-
[
]
可以直接拖动根节点
-
[
]
可以使用触摸板双指拖动视野(Mac Chrome)
-
[
]
双击空白区域定位根节点到
-
[
]
可以使用工具栏上的「缩放组件」进行视野的缩放
src/adapter/node.js
View file @
d2b688c3
KM
.
registerToolbarUI
(
'node'
,
function
(
name
)
{
var
shortcutKeys
=
{
'appendsiblingnode'
:
'
e
nter'
,
'appendchildnode'
:
'
t
ab'
,
'removenode'
:
'
del|backspace
'
,
'appendsiblingnode'
:
'
E
nter'
,
'appendchildnode'
:
'
T
ab'
,
'removenode'
:
'
Del
'
,
'editnode'
:
'F2'
};
...
...
@@ -67,8 +67,6 @@ KM.registerToolbarUI('node', function(name) {
//comboboxWidget.button().kmui().disabled(-1);
return
comboboxWidget
.
button
().
addClass
(
'kmui-combobox'
);
function
transForInserttopic
(
options
)
{
var
tempItems
=
[];
...
...
@@ -76,7 +74,7 @@ KM.registerToolbarUI('node', function(name) {
utils
.
each
(
options
.
items
,
function
(
k
,
v
)
{
options
.
value
.
push
(
v
);
tempItems
.
push
((
msg
[
k
]
||
k
)
+
'
('
+
shortcutKeys
[
v
].
toUpperCase
()
+
')'
);
tempItems
.
push
((
msg
[
k
]
||
k
)
+
'
('
+
shortcutKeys
[
v
]
+
')'
);
options
.
autowidthitem
.
push
(
$
.
wordCountAdaptive
(
tempItems
[
tempItems
.
length
-
1
]));
});
...
...
src/module/dragtree.js
View file @
d2b688c3
...
...
@@ -151,9 +151,11 @@ var TreeDragger = kity.createClass('TreeDragger', {
this
.
_minder
.
execCommand
(
'arrange'
,
this
.
_dragSources
,
index
);
this
.
_renderOrderHint
(
null
);
}
else
{
this
.
_minder
.
fire
(
'savescene'
);
}
this
.
_leaveDragMode
();
this
.
_minder
.
fire
(
'
treedragend
'
);
this
.
_minder
.
fire
(
'
contentchange
'
);
},
// 进入拖放模式:
...
...
src/module/editor.selection.js
View file @
d2b688c3
...
...
@@ -69,8 +69,9 @@ Minder.Selection = kity.createClass( 'Selection', {
},
setPosition
:
function
(
offset
)
{
try
{
this
.
x
=
Math
.
round
(
offset
.
x
);
this
.
y
=
Math
.
round
(
offset
.
y
);
// 这两个是神奇的 0.5 —— SVG 要边缘锐利,你需要一些对齐
this
.
x
=
Math
.
round
(
offset
.
x
)
-
0.5
;
this
.
y
=
Math
.
round
(
offset
.
y
)
-
1.5
;
}
catch
(
e
)
{
console
.
log
(
e
);
...
...
@@ -79,7 +80,7 @@ Minder.Selection = kity.createClass( 'Selection', {
return
this
;
},
setHeight
:
function
(
height
)
{
this
.
height
=
height
;
this
.
height
=
Math
.
round
(
height
)
+
2
;
return
this
;
},
setHide
:
function
()
{
...
...
src/module/text.js
View file @
d2b688c3
...
...
@@ -13,6 +13,9 @@ var TextRenderer = KityMinder.TextRenderer = kity.createClass('TextRenderer', {
this
.
setTextStyle
(
node
,
text
.
setContent
(
node
.
getText
()));
var
box
=
text
.
getBoundaryBox
();
var
r
=
Math
.
round
;
if
(
kity
.
Browser
.
ie
)
{
box
.
y
+=
1
;
}
return
new
kity
.
Box
(
r
(
box
.
x
),
r
(
box
.
y
),
r
(
box
.
width
),
r
(
box
.
height
));
},
...
...
src/module/view.js
View file @
d2b688c3
...
...
@@ -30,8 +30,7 @@ var ViewDragger = kity.createClass("ViewDragger", {
this
.
_minder
.
on
(
'normal.mousedown readonly.mousedown readonly.touchstart'
,
function
(
e
)
{
// 点击未选中的根节点临时开启
if
(
e
.
getTargetNode
()
==
this
.
getRoot
()
&&
(
!
this
.
getRoot
().
isSelected
()
||
!
this
.
isSingleSelect
()))
{
if
(
e
.
getTargetNode
()
==
this
.
getRoot
())
{
lastPosition
=
e
.
getPosition
();
isRootDrag
=
true
;
}
...
...
src/module/zoom.js
View file @
d2b688c3
...
...
@@ -16,6 +16,10 @@ KityMinder.registerModule('Zoom', function() {
finishValue
:
zoom
/
100
,
setter
:
function
(
target
,
value
)
{
viewport
.
zoom
=
value
;
viewport
.
center
=
{
x
:
viewport
.
center
.
x
|
0
+
0.5
,
y
:
viewport
.
center
.
y
|
0
+
0.5
};
target
.
setViewPort
(
viewport
);
}
});
...
...
src/theme/fresh.js
View file @
d2b688c3
...
...
@@ -4,7 +4,6 @@
}
function
generate
(
h
)
{
var
textSelectionColor
=
kity
.
Color
.
parse
(
'rgb(27,171,255)'
);
return
{
'background'
:
'#fbfbfb'
,
...
...
@@ -16,14 +15,13 @@
'root-margin'
:
[
30
,
100
],
'root-radius'
:
5
,
'root-space'
:
10
,
'root-text-selection-color'
:
textSelectionColor
.
set
(
'h'
,
h
).
set
(
'l'
,
20
),
'main-color'
:
'black'
,
'main-background'
:
hsl
(
h
,
33
,
95
),
'main-stroke'
:
hsl
(
h
,
37
,
60
),
'main-stroke-width'
:
1
,
'main-font-size'
:
1
6
,
'main-font-size'
:
1
4
,
'main-padding'
:
[
6
,
20
],
'main-margin'
:
20
,
'main-radius'
:
3
,
...
...
@@ -56,7 +54,7 @@
'order-hint-path-color'
:
hsl
(
h
,
100
,
25
),
'order-hint-path-width'
:
1
,
'text-selection-color'
:
textSelectionColor
.
set
(
'h'
,
h
)
'text-selection-color'
:
hsl
(
h
,
100
,
20
)
};
}
...
...
themes/default/css/comboboxmenu.css
View file @
d2b688c3
...
...
@@ -7,12 +7,13 @@
padding
:
5px
0
;
background-color
:
#ffffff
;
font-size
:
12px
;
box-shadow
:
2px
5px
15px
rgba
(
0
,
0
,
0
,
.5
);
border-radius
:
3px
;
box-shadow
:
0
1px
5px
hsla
(
0
,
0%
,
0%
,
0.3
);
/* border-radius: 3px; */
min-width
:
160px
;
_width
:
160px
;
-webkit-transform
:
translateX
(
2px
);
font-family
:
Arial
,
"Heiti SC"
,
"Microsoft Yahei"
;
/* border-top: 3px solid hsl(224, 16%, 27%); */
}
.kmui-combobox-menu
.kmui-combobox-item
{
...
...
@@ -47,6 +48,7 @@
filter
:
progid
:
DXImageTransform
.
Microsoft
.
gradient
(
startColorstr
=
'#0099f2'
,
endColorstr
=
'#0076dd'
,
GradientType
=
0
);
/* IE6-8 */
color
:
white
;
background
:
hsl
(
222
,
14%
,
41%
);
/*border: 1px solid #a3bde3;*/
}
...
...
themes/default/css/dropmenu.css
View file @
d2b688c3
...
...
@@ -51,7 +51,7 @@
background
:
-webkit-linear-gradient
(
top
,
#0099f2
0%
,
#4096ee
0%
,
#0076dd
100%
);
/* Chrome10+,Safari5.1+ */
background
:
-o-linear-gradient
(
top
,
#0099f2
0%
,
#4096ee
0%
,
#0076dd
100%
);
/* Opera 11.10+ */
background
:
-ms-linear-gradient
(
top
,
#0099f2
0%
,
#4096ee
0%
,
#0076dd
100%
);
/* IE10+ */
background
:
#5a6378
;
/* W3C */
background
:
hsl
(
222
,
14%
,
41%
)
;
/* W3C */
filter
:
progid
:
DXImageTransform
.
Microsoft
.
gradient
(
startColorstr
=
'#0099f2'
,
endColorstr
=
'#0076dd'
,
GradientType
=
0
);
/* IE6-8 */
color
:
white
;
...
...
themes/default/css/kityminder.css
View file @
d2b688c3
...
...
@@ -10,7 +10,7 @@ html, body, #kityminder, div.kmui-editor-body {
}
#title
,
#panel
{
background
:
#393F4F
;
background
:
hsl
(
224
,
16%
,
27%
)
;
font-family
:
'Hiragino Sans GB'
,
'Arial'
,
'Microsoft Yahei'
;
/* -webkit-font-smoothing: antialiased; */
}
...
...
themes/default/images/menu-icons.psd
View file @
d2b688c3
No preview for this file type
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment