From 5671713e54c4390297455880cb00d2d9a9f9e5c4 Mon Sep 17 00:00:00 2001 From: kekee000 Date: Fri, 26 Dec 2014 00:26:14 +0800 Subject: [PATCH] add save glyf command --- src/editor/controller/initRender.js | 7 ++++--- src/editor/menu/editor.js | 4 ++++ src/fonteditor/controller/default.js | 4 ++-- src/fonteditor/widget/glyfeditor.js | 13 +++++++++++++ src/fonteditor/widget/menu/editor.js | 5 +++++ src/ttf/ttfwriter.js | 2 +- 6 files changed, 29 insertions(+), 6 deletions(-) diff --git a/src/editor/controller/initRender.js b/src/editor/controller/initRender.js index afe3e88..eaf8550 100644 --- a/src/editor/controller/initRender.js +++ b/src/editor/controller/initRender.js @@ -46,6 +46,9 @@ define( else if (e.command == 'showgrid') { this.execCommand('showgrid', !e.args.selected); } + else if (e.command == 'save') { + this.fire('save'); + } else { this.execCommand(e.command, e); } @@ -187,9 +190,7 @@ define( // 保存 if (e.keyCode == 83 && e.ctrlKey) { - me.fire('save', { - font: me.getFont() - }); + me.fire('save'); } // 粘贴 else if (e.keyCode == 86 && e.ctrlKey) { diff --git a/src/editor/menu/editor.js b/src/editor/menu/editor.js index 84f4180..c67707c 100644 --- a/src/editor/menu/editor.js +++ b/src/editor/menu/editor.js @@ -98,6 +98,10 @@ define( { name: 'fontsetting', title: '字形信息' + }, + { + name: 'save', + title: '保存' } ]; } diff --git a/src/fonteditor/controller/default.js b/src/fonteditor/controller/default.js index 74dd4a6..89eb6af 100644 --- a/src/fonteditor/controller/default.js +++ b/src/fonteditor/controller/default.js @@ -336,8 +336,8 @@ define( program.on('save', function(e) { // 保存项目 if (program.ttfManager.get()) { - - if (program.editor.isEditing()) { + var type = e.type; + if (type === 'editor' || program.editor.isEditing()) { // 如果是正在编辑的 var editingIndex = program.viewer.getEditing(); diff --git a/src/fonteditor/widget/glyfeditor.js b/src/fonteditor/widget/glyfeditor.js index ff61e78..cbce339 100644 --- a/src/fonteditor/widget/glyfeditor.js +++ b/src/fonteditor/widget/glyfeditor.js @@ -70,6 +70,12 @@ define( }); }); + editor.on('save', function() { + program.fire('save', { + type: 'editor' + }); + }); + var commandMenu = this.commandMenu; if (commandMenu) { @@ -96,6 +102,13 @@ define( var args = e.args; var shapes; + if (command === 'save') { + program.fire('save', { + type: 'editor' + }); + return; + } + if (command === 'splitshapes') { editor.setMode('split'); return; diff --git a/src/fonteditor/widget/menu/editor.js b/src/fonteditor/widget/menu/editor.js index 16fd88b..3fb07f1 100644 --- a/src/fonteditor/widget/menu/editor.js +++ b/src/fonteditor/widget/menu/editor.js @@ -27,6 +27,11 @@ define( quickKey: 'D', disabled: true }, + { + name: 'save', + title: '保存', + quickKey: 'S' + }, { type: 'split' }, diff --git a/src/ttf/ttfwriter.js b/src/ttf/ttfwriter.js index 9097356..b85ad2f 100644 --- a/src/ttf/ttfwriter.js +++ b/src/ttf/ttfwriter.js @@ -123,7 +123,7 @@ define( tableList.forEach(function(tableName) { var offset = ttfSize; var tableSize = new supportTables[tableName]().size(ttf); // 原始的表大小 - var size = tableSize; // 对对齐后的表大小 + var size = tableSize; // 对齐后的表大小 if (tableName == 'head') { ttfHeadOffset = offset;