From 3f0a08d40da1716496d95940c2a45f05b467f6ed Mon Sep 17 00:00:00 2001 From: kekee000 Date: Mon, 13 Apr 2015 00:03:58 +0800 Subject: [PATCH] add auto sync --- src/fonteditor/controller/actions.js | 21 ++++++++++++------- src/fonteditor/controller/default.js | 4 ++++ .../template/dialog/setting-sync.tpl | 6 +++--- .../template/dialog/setting-sync.tpl.js | 2 +- src/fonteditor/widget/projectviewer.js | 1 + 5 files changed, 22 insertions(+), 12 deletions(-) diff --git a/src/fonteditor/controller/actions.js b/src/fonteditor/controller/actions.js index 6547896..24dde34 100644 --- a/src/fonteditor/controller/actions.js +++ b/src/fonteditor/controller/actions.js @@ -127,18 +127,24 @@ define( } }, + 'sync': function (projectId, ttf, syncConfig) { + syncConfig = syncConfig || program.project.getConfig(projectId).sync; + if (syncConfig) { + fontDelaySync(program.data.projectId, ttf, syncConfig); + } + }, + 'save': function () { if (program.ttfManager.get()) { - if (program.data.projectId) { - - program.project.update(program.data.projectId, program.ttfManager.get()) + var projectId = program.data.projectId; + if (projectId) { + program.project.update(projectId, program.ttfManager.get()) .then(function () { program.ttfManager.setState('saved'); program.loading.show('保存成功...', 400); - - var syncConfig = program.project.getConfig(program.data.projectId).sync; - if (syncConfig && !syncConfig.pause) { - fontDelaySync(program.data.projectId, program.ttfManager.get(), syncConfig); + var syncConfig = program.project.getConfig(projectId).sync; + if (syncConfig && syncConfig.autoSync) { + actions.sync(projectId, program.ttfManager.get(), syncConfig); } }, function () { program.loading.show('保存失败...', 1000); @@ -150,7 +156,6 @@ define( if ((name = window.prompt('请输入项目名称:', name))) { name = string.encodeHTML(name); - program.project.add(name, program.ttfManager.get()) .then(function (id) { program.data.projectId = id; diff --git a/src/fonteditor/controller/default.js b/src/fonteditor/controller/default.js index 1d746b5..df46e5e 100644 --- a/src/fonteditor/controller/default.js +++ b/src/fonteditor/controller/default.js @@ -363,6 +363,7 @@ define( program.project.updateConfig(program.data.projectId, { sync: setting }); + program.projectViewer.show(program.project.items(), program.data.projectId); } }).show(syncConfig); } @@ -447,6 +448,9 @@ define( actions.save(); program.viewer.focus(); }) + .on('sync', function (e) { + actions.sync(e.projectId); + }) .on('del', function (e) { program.project.remove(e.projectId).then(function () { if (e.projectId === program.data.projectId) { diff --git a/src/fonteditor/template/dialog/setting-sync.tpl b/src/fonteditor/template/dialog/setting-sync.tpl index 6d75a49..a04284e 100644 --- a/src/fonteditor/template/dialog/setting-sync.tpl +++ b/src/fonteditor/template/dialog/setting-sync.tpl @@ -18,9 +18,9 @@
- 暂停同步 + 自动同步 - +
@@ -41,7 +41,7 @@
ttf - +
diff --git a/src/fonteditor/template/dialog/setting-sync.tpl.js b/src/fonteditor/template/dialog/setting-sync.tpl.js index 57dbc87..99f13f7 100644 --- a/src/fonteditor/template/dialog/setting-sync.tpl.js +++ b/src/fonteditor/template/dialog/setting-sync.tpl.js @@ -1 +1 @@ -define(function () {return '\n
\n \n
\n 远程地址\n \n
\n
\n\n\n
\n\n
\n
\n 字体名称\n \n
\n
\n
\n
\n 暂停同步\n \n \n \n
\n
\n
\n
\n 字体类型: \n\n
\n
\n woff\n \n \n \n
\n
\n\n
\n
\n ttf\n \n \n \n
\n
\n\n
\n
\n svg\n \n \n \n
\n
\n\n
\n
\n eot\n \n \n \n
\n
\n
\n';}); \ No newline at end of file +define(function () {return '\r\n
\r\n \r\n
\r\n 远程地址\r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n 字体名称\r\n \r\n
\r\n
\r\n
\r\n
\r\n 自动同步\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n 字体类型: \r\n\r\n
\r\n
\r\n woff\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n ttf\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n svg\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n eot\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n';}); \ No newline at end of file diff --git a/src/fonteditor/widget/projectviewer.js b/src/fonteditor/widget/projectviewer.js index 3e197ca..1f28c2f 100644 --- a/src/fonteditor/widget/projectviewer.js +++ b/src/fonteditor/widget/projectviewer.js @@ -70,6 +70,7 @@ define( str += '
' + '
' + proj.name + '
' + '
' + + (proj.config && proj.config.sync ? '同步' : '') + '另存为' + '删除' + '
'