From 19cbcbef54a696ff2a632f0030e10621d8474489 Mon Sep 17 00:00:00 2001 From: albertotn <12526457+albertotn@users.noreply.github.com> Date: Sat, 14 Oct 2017 15:26:27 +0200 Subject: [PATCH 1/3] removed not used repository --- pom.xml | 7 ------- 1 file changed, 7 deletions(-) diff --git a/pom.xml b/pom.xml index 27b5277..2a33052 100644 --- a/pom.xml +++ b/pom.xml @@ -102,11 +102,4 @@ - - - - scala-tools - http://scala-tools.org/repo-releases - - From 5adf4edaf5b857aefb1c0b547c8a7fe07a5c0ced Mon Sep 17 00:00:00 2001 From: albertotn <12526457+albertotn@users.noreply.github.com> Date: Sat, 14 Oct 2017 15:28:48 +0200 Subject: [PATCH 2/3] updated link in README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 922224a..c153f66 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ Markdown2HTML ============= An extremely simple Markdown to HTML converter, -powered by [MarkdownJ](http://code.google.com/p/markdownj/). +powered by [MarkdownJ](https://github.com/myabc/markdownj). Available in command line and GUI mode. From a81a0def5fd73e42672dc9881f64611e53222f80 Mon Sep 17 00:00:00 2001 From: albertotn <12526457+albertotn@users.noreply.github.com> Date: Sat, 14 Oct 2017 16:03:06 +0200 Subject: [PATCH 3/3] added option to load a file --- .../com/nilhcem/md2html/gui/InputPane.java | 7 ++++++ .../com/nilhcem/md2html/gui/MainFrame.java | 18 ++++++++++++- .../com/nilhcem/md2html/gui/MainPanel.java | 4 +++ .../java/com/nilhcem/md2html/gui/MenuBar.java | 25 ++++++++++++++++++- 4 files changed, 52 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/nilhcem/md2html/gui/InputPane.java b/src/main/java/com/nilhcem/md2html/gui/InputPane.java index 1974862..095b63f 100644 --- a/src/main/java/com/nilhcem/md2html/gui/InputPane.java +++ b/src/main/java/com/nilhcem/md2html/gui/InputPane.java @@ -44,4 +44,11 @@ public void keyPressed(KeyEvent e) { public JScrollPane get() { return inputPane; } + + public void setText(String text){ + inputTextArea.setText(text); + setChanged(); + notifyObservers(inputTextArea.getText()); + inputTextArea.setCaretPosition(0); + } } diff --git a/src/main/java/com/nilhcem/md2html/gui/MainFrame.java b/src/main/java/com/nilhcem/md2html/gui/MainFrame.java index e6faa30..c6fe721 100644 --- a/src/main/java/com/nilhcem/md2html/gui/MainFrame.java +++ b/src/main/java/com/nilhcem/md2html/gui/MainFrame.java @@ -1,8 +1,14 @@ package com.nilhcem.md2html.gui; import java.awt.Dimension; +import java.io.File; +import java.io.IOException; +import java.util.List; + import javax.swing.JFrame; +import org.apache.commons.io.FileUtils; + /** * Provides the main window of the application. * @@ -11,7 +17,7 @@ */ public final class MainFrame { private final JFrame mainFrame = new JFrame("Markdown editor"); - private final MenuBar menu = new MenuBar(); + private final MenuBar menu = new MenuBar(this); private final MainPanel panel = new MainPanel(); /** @@ -29,4 +35,14 @@ public MainFrame() { mainFrame.setLocationRelativeTo(null); // Center main frame mainFrame.setVisible(true); } + + public void load(File file) { + String text; + try { + text = FileUtils.readFileToString(file); + panel.setContent(text); + } catch (IOException e) { + e.printStackTrace(); + } + } } diff --git a/src/main/java/com/nilhcem/md2html/gui/MainPanel.java b/src/main/java/com/nilhcem/md2html/gui/MainPanel.java index bce7d5b..8c0f777 100644 --- a/src/main/java/com/nilhcem/md2html/gui/MainPanel.java +++ b/src/main/java/com/nilhcem/md2html/gui/MainPanel.java @@ -39,4 +39,8 @@ public MainPanel() { public JPanel get() { return mainPanel; } + + public void setContent(String text){ + input.setText(text); + } } diff --git a/src/main/java/com/nilhcem/md2html/gui/MenuBar.java b/src/main/java/com/nilhcem/md2html/gui/MenuBar.java index dd5b23d..0e88283 100644 --- a/src/main/java/com/nilhcem/md2html/gui/MenuBar.java +++ b/src/main/java/com/nilhcem/md2html/gui/MenuBar.java @@ -1,8 +1,12 @@ package com.nilhcem.md2html.gui; +import java.awt.Container; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; +import java.io.File; import java.util.Observable; + +import javax.swing.JFileChooser; import javax.swing.JMenu; import javax.swing.JMenuBar; import javax.swing.JMenuItem; @@ -16,11 +20,15 @@ */ public final class MenuBar extends Observable { private final JMenuBar menuBar = new JMenuBar(); + private final JFileChooser fc = new JFileChooser(); + private MainFrame mainFrame; /** * Creates the menu bar and the different menus (file / edit / help). + * @param mainFrame */ - public MenuBar() { + public MenuBar(MainFrame mainFrame) { + this.mainFrame = mainFrame; menuBar.add(createFileMenu()); menuBar.add(createHelpMenu()); } @@ -45,6 +53,20 @@ public JMenuBar get() { private JMenu createFileMenu() { JMenu fileMenu = new JMenu("File"); fileMenu.setMnemonic('F'); + + JMenuItem open = new JMenuItem("Open"); + open.setMnemonic('o'); + open.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + int returnVal = fc.showOpenDialog(menuBar.getParent()); + + if (returnVal == JFileChooser.APPROVE_OPTION) { + File file = fc.getSelectedFile(); + mainFrame.load(file); + } + } + }); JMenuItem exit = new JMenuItem("Exit"); exit.setMnemonic('x'); @@ -55,6 +77,7 @@ public void actionPerformed(ActionEvent e) { } }); + fileMenu.add(open); fileMenu.add(exit); return fileMenu; }