From 0e854c89423163d24085e49a5e87fd8f3f6029a8 Mon Sep 17 00:00:00 2001 From: Paulo Veiga Date: Sat, 20 Aug 2011 11:08:18 -0300 Subject: [PATCH] Add more shortcuts :) --- .../src/main/javascript/DesignerKeyboard.js | 55 ++++++++++++------- .../main/javascript/LocalActionDispatcher.js | 1 + .../src/main/javascript/MindmapDesigner.js | 4 +- mindplot/src/main/javascript/widget/Menu.js | 4 +- 4 files changed, 39 insertions(+), 25 deletions(-) diff --git a/mindplot/src/main/javascript/DesignerKeyboard.js b/mindplot/src/main/javascript/DesignerKeyboard.js index c2bdb74f..00b9a8d4 100644 --- a/mindplot/src/main/javascript/DesignerKeyboard.js +++ b/mindplot/src/main/javascript/DesignerKeyboard.js @@ -36,10 +36,8 @@ mindplot.DesignerKeyboard = new Class({ }.bind(this), 'space' : function() { - var nodes = designer.getSelectedNodes(); - if (nodes.length > 0) { - var topic = nodes[0]; - + var node = this._getSelectedNode(designer); + if (node) { var model = topic.getModel(); var isShrink = !model.areChildrenShrinked(); topic.setChildrenShrinked(isShrink); @@ -47,12 +45,11 @@ mindplot.DesignerKeyboard = new Class({ }.bind(this), 'f2' : function() { - var nodes = designer.getSelectedNodes(); - if (nodes.length > 0) { + var node = this._getSelectedNode(designer); + if (node) { var topic = nodes[0]; topic.showTextEditor(); } - }.bind(this), 'delete' : function() { @@ -87,7 +84,22 @@ mindplot.DesignerKeyboard = new Class({ 'ctrl+a' : function(event) { designer.selectAll(); event.preventDefault(); + }, + 'ctrl+b' : function() { + designer.changeFontWeight(); + }, + + 'meta+b' : function() { + designer.changeFontWeight(); + }, + + 'ctrl+i' : function() { + designer.changeFontStyle(); + }, + + 'meta+i' : function() { + designer.changeFontStyle(); }, 'meta+shift+a' : function(event) { @@ -107,9 +119,8 @@ mindplot.DesignerKeyboard = new Class({ }, 'right' : function() { - var nodes = designer.getSelectedNodes(); - if (nodes.length > 0) { - var node = nodes[0]; + var node = this._getSelectedNode(designer); + if (node) { if (node.getTopicType() == mindplot.model.NodeModel.CENTRAL_TOPIC_TYPE) { this._goToSideChild(designer, node, 'RIGHT'); } @@ -128,9 +139,8 @@ mindplot.DesignerKeyboard = new Class({ }.bind(this), 'left' : function() { - var nodes = designer.getSelectedNodes(); - if (nodes.length > 0) { - var node = nodes[0]; + var node = this._getSelectedNode(designer); + if (node) { if (node.getTopicType() == mindplot.model.NodeModel.CENTRAL_TOPIC_TYPE) { this._goToSideChild(designer, node, 'LEFT'); } @@ -149,9 +159,8 @@ mindplot.DesignerKeyboard = new Class({ }.bind(this), 'up' : function() { - var nodes = designer.getSelectedNodes(); - if (nodes.length > 0) { - var node = nodes[0]; + var node = this._getSelectedNode(designer); + if (node) { if (node.getTopicType() != mindplot.model.NodeModel.CENTRAL_TOPIC_TYPE) { this._goToBrother(designer, node, 'UP'); } @@ -162,9 +171,8 @@ mindplot.DesignerKeyboard = new Class({ }.bind(this), 'down' : function() { - var nodes = designer.getSelectedNodes(); - if (nodes.length > 0) { - var node = nodes[0]; + var node = this._getSelectedNode(designer); + if (node) { if (node.getTopicType() != mindplot.model.NodeModel.CENTRAL_TOPIC_TYPE) { this._goToBrother(designer, node, 'DOWN'); } @@ -201,7 +209,7 @@ mindplot.DesignerKeyboard = new Class({ } // If it's not registered, let's - if (!isRegistered && !excludes.contains(key) && !modifiers.contains(key) && !key.contains('meta') && !key.contains('ctrl') && !key.contains('control')) { + if (!isRegistered && !excludes.contains(key) && !modifiers.contains(key) && !key.contains('meta') && !key.contains('ctrl') && !key.contains('control')) { var nodes = designer.getSelectedNodes(); if (nodes.length > 0) { nodes[0].showTextEditor(event.key); @@ -302,10 +310,15 @@ mindplot.DesignerKeyboard = new Class({ // Give focus to the selected node.... node.setOnFocus(true); + }, + + _getSelectedNode : function(designer) { + var nodes = designer.getSelectedNodes(); + return (nodes.length > 0) ? nodes[0] : null; } }); mindplot.DesignerKeyboard.register = function(designer) { this._instance = new mindplot.DesignerKeyboard(designer); this._instance.activate(); -} \ No newline at end of file +}; \ No newline at end of file diff --git a/mindplot/src/main/javascript/LocalActionDispatcher.js b/mindplot/src/main/javascript/LocalActionDispatcher.js index b32b96da..00331513 100644 --- a/mindplot/src/main/javascript/LocalActionDispatcher.js +++ b/mindplot/src/main/javascript/LocalActionDispatcher.js @@ -81,6 +81,7 @@ mindplot.LocalActionDispatcher = new Class({ var command = new mindplot.commands.RemoveNoteFromTopicCommand(topicId); this.execute(command); }, + changeFontStyleToTopic: function(topicsIds) { var commandFunc = function(topic) { diff --git a/mindplot/src/main/javascript/MindmapDesigner.js b/mindplot/src/main/javascript/MindmapDesigner.js index 55800db2..928a37fb 100644 --- a/mindplot/src/main/javascript/MindmapDesigner.js +++ b/mindplot/src/main/javascript/MindmapDesigner.js @@ -633,7 +633,7 @@ mindplot.MindmapDesigner = new Class({ } }, - setStyle2SelectedNode : function() { + changeFontStyle : function() { var validSelectedObjects = this._getValidSelectedObjectsIds(); var topicsIds = validSelectedObjects.nodes; if (topicsIds.length > 0) { @@ -735,7 +735,7 @@ mindplot.MindmapDesigner = new Class({ } }, - setWeight2SelectedNode : function() { + changeFontWeight : function() { var validSelectedObjects = this._getValidSelectedObjectsIds(); var topicsIds = validSelectedObjects.nodes; if (topicsIds.length > 0) { diff --git a/mindplot/src/main/javascript/widget/Menu.js b/mindplot/src/main/javascript/widget/Menu.js index f0bcd21b..b4d47f9e 100644 --- a/mindplot/src/main/javascript/widget/Menu.js +++ b/mindplot/src/main/javascript/widget/Menu.js @@ -228,11 +228,11 @@ mindplot.widget.Menu = new Class({ }); $('fontBold').addEvent('click', function(event) { - designer.setWeight2SelectedNode(); + designer.changeFontWeight(); }); $('fontItalic').addEvent('click', function(event) { - designer.setStyle2SelectedNode(); + designer.changeFontStyle(); }); designer.addEventListener("modelUpdate", function(event) {