Skip to content

Commit 4d8b089

Browse files
committed
added last actionsa to
interaction mapping
1 parent 09b4c5a commit 4d8b089

File tree

2 files changed

+29
-39
lines changed

2 files changed

+29
-39
lines changed

src/main/java/visual_components/MainFrame.java

Lines changed: 22 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
import java.io.File;
44
import java.awt.BorderLayout;
55

6-
import javax.swing.Action;
76
import javax.swing.BoxLayout;
87
import javax.swing.ImageIcon;
98
import javax.swing.JComponent;
@@ -14,10 +13,8 @@
1413
import javax.swing.JPopupMenu;
1514
import javax.swing.JRadioButtonMenuItem;
1615
import javax.swing.JScrollPane;
17-
import javax.swing.KeyStroke;
1816
import javax.swing.UIManager;
1917
import javax.swing.UnsupportedLookAndFeelException;
20-
import java.awt.event.*;
2118
import java.awt.Dimension;
2219
import java.awt.FlowLayout;
2320
import java.awt.Color;
@@ -32,8 +29,6 @@
3229
import main.java.visual_components.header.InteractionMapping;
3330
import main.java.visual_components.toolbox.ToolBoxComponent;
3431

35-
import java.awt.event.InputEvent;
36-
3732
public class MainFrame {
3833

3934
Header headerRoot = new Header("Root", 0, null, true);
@@ -44,12 +39,6 @@ public class MainFrame {
4439
ToolBoxComponent toolboxComponent;
4540
JRadioButtonMenuItem showToolbarMenuItem;
4641
JScrollPane headerElementScroller;
47-
KeyStroke keyStrokeForNewFile = KeyStroke.getKeyStroke(KeyEvent.VK_N, InputEvent.CTRL_DOWN_MASK);
48-
KeyStroke keyStrokeForToolbarVisibility = KeyStroke.getKeyStroke(KeyEvent.VK_V, InputEvent.CTRL_DOWN_MASK);
49-
KeyStroke keyStrokeForMDExport = KeyStroke.getKeyStroke(KeyEvent.VK_E, InputEvent.CTRL_DOWN_MASK);
50-
KeyStroke keyStrokeForSave = KeyStroke.getKeyStroke(KeyEvent.VK_S, InputEvent.CTRL_DOWN_MASK);
51-
KeyStroke keyStrokeForOpen = KeyStroke.getKeyStroke(KeyEvent.VK_O, InputEvent.CTRL_DOWN_MASK);
52-
KeyStroke keyStrokeForAddHeaderRoot = KeyStroke.getKeyStroke(KeyEvent.VK_A, InputEvent.CTRL_DOWN_MASK);
5342
JPanel headerContainer;
5443
JPanel columnContainer;
5544
JLabel topicLabel;
@@ -202,42 +191,38 @@ private void setUpWindow() {
202191
private void setUpToolBoxActions() {
203192

204193
// Export OpenFile Action
205-
String actionMapNewFile = "newFile";
206-
newFileAction = new ToolBoxNewFileAction(this, "New File", keyStrokeForNewFile);
207-
masterContainer.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(keyStrokeForNewFile, actionMapNewFile);
208-
masterContainer.getActionMap().put(actionMapNewFile, newFileAction);
194+
newFileAction = new ToolBoxNewFileAction(this, InteractionMapping.NEW_FILE.getActionName(), InteractionMapping.NEW_FILE.getKeystroke());
195+
masterContainer.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(InteractionMapping.NEW_FILE.getKeystroke(), InteractionMapping.NEW_FILE.getActionMapKey());
196+
masterContainer.getActionMap().put(InteractionMapping.NEW_FILE.getActionMapKey(), newFileAction);
209197
//// Add Contextmenu option
210198
JMenuItem newFileItem = new JMenuItem();
211199
newFileItem.setAction(newFileAction);
212200
contextMenu.add(newFileItem);
213201

214202
// Export OpenFile Action
215-
String actionMapKeyOpen = "openFile";
216-
openFileAction = new ToolBoxOpenFileAction(this, "Open File", keyStrokeForOpen);
217-
masterContainer.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(keyStrokeForOpen, actionMapKeyOpen);
218-
masterContainer.getActionMap().put(actionMapKeyOpen, openFileAction);
203+
openFileAction = new ToolBoxOpenFileAction(this, InteractionMapping.OPEN_FILE.getActionName(), InteractionMapping.OPEN_FILE.getKeystroke());
204+
masterContainer.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(InteractionMapping.OPEN_FILE.getKeystroke(), InteractionMapping.OPEN_FILE.getActionMapKey());
205+
masterContainer.getActionMap().put(InteractionMapping.OPEN_FILE.getActionMapKey(), openFileAction);
219206
//// Add Contextmenu option
220207
JMenuItem openFileItem = new JMenuItem();
221208
openFileItem.setAction(openFileAction);
222209
contextMenu.add(openFileItem);
223210

224211
// Save FileAction
225-
String actionMapKeySaveFile = "saveFile";
226-
saveFileAction = new ToolBoxSaveFileAction(this, "Save", keyStrokeForSave);
227-
masterContainer.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(keyStrokeForSave, actionMapKeySaveFile);
228-
masterContainer.getActionMap().put(actionMapKeySaveFile, saveFileAction);
212+
saveFileAction = new ToolBoxSaveFileAction(this, InteractionMapping.SAVE_FILE.getActionName(), InteractionMapping.SAVE_FILE.getKeystroke());
213+
masterContainer.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(InteractionMapping.SAVE_FILE.getKeystroke(), InteractionMapping.SAVE_FILE.getActionMapKey());
214+
masterContainer.getActionMap().put(InteractionMapping.SAVE_FILE.getActionMapKey(), saveFileAction);
229215
//// Add Contextmenu option
230216
JMenuItem saveFileItem = new JMenuItem();
231217
saveFileItem.setAction(saveFileAction);
232218
contextMenu.add(saveFileItem);
233219

234220
// Add Header to Root Action
235-
String actionMapKeyAddHeaderRoot = "addHeaderToRoot";
236-
addHeaderAction = new ToolBoxAddHeaderToRootAction(this, headerElementContainer, "Add to first level",
237-
keyStrokeForAddHeaderRoot);
238-
masterContainer.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(keyStrokeForAddHeaderRoot,
239-
actionMapKeyAddHeaderRoot);
240-
masterContainer.getActionMap().put(actionMapKeyAddHeaderRoot, addHeaderAction);
221+
addHeaderAction = new ToolBoxAddHeaderToRootAction(this, headerElementContainer, InteractionMapping.ADD_HEADER_ROOT.getActionName(),
222+
InteractionMapping.ADD_HEADER_ROOT.getKeystroke());
223+
masterContainer.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(InteractionMapping.ADD_HEADER_ROOT.getKeystroke(),
224+
InteractionMapping.ADD_HEADER_ROOT.getActionMapKey());
225+
masterContainer.getActionMap().put(InteractionMapping.ADD_HEADER_ROOT.getActionMapKey(), addHeaderAction);
241226
//// Add Contextmenu option
242227
JMenuItem addHeaderRootItem = new JMenuItem();
243228
addHeaderRootItem.setAction(addHeaderAction);
@@ -246,11 +231,10 @@ private void setUpToolBoxActions() {
246231
contextMenu.addSeparator();
247232

248233
// Export MD Action
249-
String actionMapKeyExportMD = "exportToMarkdown";
250-
exportAction = new ToolBoxExportMDAction(this, "Export to Markdown", keyStrokeForMDExport);
251-
masterContainer.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(keyStrokeForMDExport,
252-
actionMapKeyExportMD);
253-
masterContainer.getActionMap().put(actionMapKeyExportMD, exportAction);
234+
exportAction = new ToolBoxExportMDAction(this, InteractionMapping.EXPORT_MD.getActionName(), InteractionMapping.EXPORT_MD.getKeystroke());
235+
masterContainer.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(InteractionMapping.EXPORT_MD.getKeystroke(),
236+
InteractionMapping.EXPORT_MD.getActionMapKey());
237+
masterContainer.getActionMap().put(InteractionMapping.EXPORT_MD.getActionMapKey(), exportAction);
254238
//// Add Contextmenu option
255239
JMenuItem exportFileItem = new JMenuItem();
256240
exportFileItem.setAction(exportAction);
@@ -272,10 +256,10 @@ public void setUpShowHideAction() {
272256
// Bind an Action globally for the whole window, and give action menue item.
273257
//// Show Hide Toolbar
274258
ShowHideToolBarAction showHideAction = new ShowHideToolBarAction(toolboxComponent, showToolbarMenuItem,
275-
"Show Toolbox", keyStrokeForToolbarVisibility);
276-
masterContainer.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(keyStrokeForToolbarVisibility,
277-
"show or Hide Toolbox");
278-
masterContainer.getActionMap().put("show or Hide Toolbox", showHideAction);
259+
InteractionMapping.TOOLBOX_SHOW_HIDE.getActionName(), InteractionMapping.TOOLBOX_SHOW_HIDE.getKeystroke());
260+
masterContainer.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(InteractionMapping.TOOLBOX_SHOW_HIDE.getKeystroke(),
261+
InteractionMapping.TOOLBOX_SHOW_HIDE.getActionMapKey());
262+
masterContainer.getActionMap().put(InteractionMapping.TOOLBOX_SHOW_HIDE.getActionMapKey(), showHideAction);
279263
showToolbarMenuItem.setAction(showHideAction);
280264
}
281265

src/main/java/visual_components/header/InteractionMapping.java

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,13 @@ public enum InteractionMapping {
1212
SHIFT_LEVEL_DOWN("shift header level down", KeyStroke.getKeyStroke(KeyEvent.VK_RIGHT, InputEvent.SHIFT_DOWN_MASK), "shiftLevelDown"),
1313
ADD_UP("Add header before", KeyStroke.getKeyStroke(KeyEvent.VK_UP, InputEvent.ALT_DOWN_MASK), "addBefore"),
1414
ADD_DOWN("Add header after", KeyStroke.getKeyStroke(KeyEvent.VK_DOWN, InputEvent.ALT_DOWN_MASK), "addAfter"),
15-
ADD_SUB("Add subheader", KeyStroke.getKeyStroke(KeyEvent.VK_RIGHT, InputEvent.ALT_DOWN_MASK), "addSub");
15+
ADD_SUB("Add subheader", KeyStroke.getKeyStroke(KeyEvent.VK_RIGHT, InputEvent.ALT_DOWN_MASK), "addSub"),
16+
TOOLBOX_SHOW_HIDE("Show Toolbox", KeyStroke.getKeyStroke(KeyEvent.VK_V, InputEvent.CTRL_DOWN_MASK), "showHideToolbar"),
17+
OPEN_FILE("Open File", KeyStroke.getKeyStroke(KeyEvent.VK_O, InputEvent.CTRL_DOWN_MASK), "openFile"),
18+
SAVE_FILE("Save File", KeyStroke.getKeyStroke(KeyEvent.VK_S, InputEvent.CTRL_DOWN_MASK), "saveFile"),
19+
ADD_HEADER_ROOT("Add header to root", KeyStroke.getKeyStroke(KeyEvent.VK_A, InputEvent.CTRL_DOWN_MASK), "addHeaderToRoot"),
20+
EXPORT_MD("Export to Markdown", KeyStroke.getKeyStroke(KeyEvent.VK_E, InputEvent.CTRL_DOWN_MASK), "exportToMarkdown"),
21+
NEW_FILE("New File", KeyStroke.getKeyStroke(KeyEvent.VK_N, InputEvent.CTRL_DOWN_MASK), "newFile");
1622

1723

1824
private final String actionName;

0 commit comments

Comments
 (0)