diff -r 734f104f2869 -r 48d5fdb68798 java/rozsirene-atributy/src/cz/frantovo/rozsireneAtributy/Startér.java --- a/java/rozsirene-atributy/src/cz/frantovo/rozsireneAtributy/Startér.java Wed Dec 15 20:07:14 2010 +0100 +++ b/java/rozsirene-atributy/src/cz/frantovo/rozsireneAtributy/Startér.java Wed Dec 15 20:31:43 2010 +0100 @@ -7,6 +7,7 @@ import java.util.logging.Level; import java.util.logging.Logger; import javax.swing.JFrame; +import javax.swing.JOptionPane; /** * Spouštěč programu @@ -26,27 +27,36 @@ public static void main(String[] args) throws IOException { - if (args.length == 1) { + if (args.length == 1 && args[0].length() > 0) { File soubor = new File(args[0]); - log.log(Level.INFO, "Pracuji se souborem: {0}", soubor); + if (soubor.exists()) { + log.log(Level.INFO, "Pracuji se souborem: {0}", soubor); - Model model = new Model(soubor); + Model model = new Model(soubor); - JFrame f = new JFrame(); - Panel p = new Panel(model); + JFrame f = new JFrame(); + Panel p = new Panel(model); - f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); - f.setTitle("Rozšířené stributy souboru: " + soubor); - f.setLayout(new BorderLayout()); - f.add(p, BorderLayout.CENTER); + f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + f.setTitle("Rozšířené stributy souboru: " + soubor); + f.setLayout(new BorderLayout()); + f.add(p, BorderLayout.CENTER); - f.setSize(640, 240); - f.setLocationRelativeTo(null); - f.setVisible(true); + f.setSize(640, 240); + f.setLocationRelativeTo(null); + f.setVisible(true); + } else { + ukončiChybou("Soubor neexistuje: " + soubor); + } } else { - log.log(Level.SEVERE, "Chyba: Očekávám právě jeden parametr – název souboru."); - System.exit(1); + ukončiChybou("Očekávám právě jeden parametr – název souboru."); } } + + private static void ukončiChybou(String hláška) { + log.log(Level.SEVERE, hláška); + JOptionPane.showMessageDialog(null, hláška, "Chyba", JOptionPane.ERROR_MESSAGE); + System.exit(1); + } }