r289 - in trunk/msm/src/main: java/org/nuiton/mapstoragemanager/ui java/org/nuiton/mapstoragemanager/ui/engine resources/i18n
Author: dlanglais Date: 2010-03-25 20:42:14 +0100 (Thu, 25 Mar 2010) New Revision: 289 Log: Correction de "logique" : L'utilisateur clique sur une table/colonne ?\195?\160 supprimer, on ne va pas lui demander le nom de la table/colonne qu'il souhaite supprimer.. Donc remplac?\195?\169 par JOptionPane.showConfirmDialog(...) pour demander confirmation. Modified: trunk/msm/src/main/java/org/nuiton/mapstoragemanager/ui/BootLoaderManager.jaxx trunk/msm/src/main/java/org/nuiton/mapstoragemanager/ui/engine/MSMNavigationListener.java trunk/msm/src/main/resources/i18n/msm-en_GB.properties trunk/msm/src/main/resources/i18n/msm-fr_FR.properties Modified: trunk/msm/src/main/java/org/nuiton/mapstoragemanager/ui/BootLoaderManager.jaxx =================================================================== --- trunk/msm/src/main/java/org/nuiton/mapstoragemanager/ui/BootLoaderManager.jaxx 2010-03-25 18:17:56 UTC (rev 288) +++ trunk/msm/src/main/java/org/nuiton/mapstoragemanager/ui/BootLoaderManager.jaxx 2010-03-25 19:42:14 UTC (rev 289) @@ -58,6 +58,7 @@ try { FileInputStream fis = new FileInputStream(propertiesFile); properties.load(fis); + fis.close(); } catch (FileNotFoundException e) { try { FileOutputStream fos = new FileOutputStream(propertiesFile); Modified: trunk/msm/src/main/java/org/nuiton/mapstoragemanager/ui/engine/MSMNavigationListener.java =================================================================== --- trunk/msm/src/main/java/org/nuiton/mapstoragemanager/ui/engine/MSMNavigationListener.java 2010-03-25 18:17:56 UTC (rev 288) +++ trunk/msm/src/main/java/org/nuiton/mapstoragemanager/ui/engine/MSMNavigationListener.java 2010-03-25 19:42:14 UTC (rev 289) @@ -90,7 +90,6 @@ final JTree navigation = ui.getNavigation(); final DefaultMutableTreeNode node = (DefaultMutableTreeNode) navigation. getLastSelectedPathComponent(); - final String tableName = node.toString(); if (node != null && node.getLevel() == 0) { /** Database @@ -98,29 +97,39 @@ JMenuItem addTableItem = new JMenuItem(_("add.table")); addTableItem.addActionListener(new AddTableListener()); + /** Add item to menu */ menu.add(addTableItem); -// menu.add(delTableItem); menu.show(e.getComponent(), e.getX(), e.getY()); } else if (node.getLevel() == 1) { + /** Get TableName */ + final String tableName = node.toString(); + /** Table * -> Create Column * -> Delete Table */ JMenuItem addColumnItem = new JMenuItem(_("add.column")); addColumnItem.addActionListener(new AddColumnListener(tableName)); JMenuItem delTableItem = new JMenuItem(_("del.table")); - delTableItem.addActionListener(new DeleteTableListener()); + delTableItem.addActionListener(new DeleteTableListener(tableName)); + /** Add item to menu */ menu.add(addColumnItem); menu.add(delTableItem); menu.show(e.getComponent(), e.getX(), e.getY()); } else if (node.getLevel() == 2) { + /** Get TableName and ColumnName */ + final String columnName = node.toString(); + final String tableName = node.getParent().toString(); + /** Column * -> Delete Column */ JMenuItem delColumnItem = new JMenuItem(_("del.column")); - delColumnItem.addActionListener(new DeleteColumnListener(tableName)); + delColumnItem.addActionListener( + new DeleteColumnListener(tableName, columnName)); + /** Add item to menu */ menu.add(delColumnItem); menu.show(e.getComponent(), e.getX(), e.getY()); } @@ -170,12 +179,12 @@ /** Ask wanted table name. */ final String tableName = (String) JOptionPane.showInputDialog( ui, - _("AddTableListener.question"), - _("AddTableListener.title"), + _("addTableListener.JOptionPaneMessage"), + _("addTableListener.JOptionPaneTitle"), JOptionPane.PLAIN_MESSAGE, null, null, - _("AddTableListener.default")); + _("addTableListener.JOptionPaneDefault")); /** Create the Table in the BigTable */ bigTable.createTable(tableName); @@ -198,7 +207,7 @@ /** * Default Constructor. */ - public AddColumnListener(String tableName) { + public AddColumnListener(final String tableName) { this.tableName = tableName; } @@ -217,12 +226,12 @@ /** Ask wanted table name. */ final String columnName = (String) JOptionPane.showInputDialog( ui, - _("AddTableListener.question"), - _("AddTableListener.title"), + _("addColumnListener.JOptionPaneMessage"), + _("addColumnListener.JOptionPaneTitle"), JOptionPane.PLAIN_MESSAGE, null, null, - _("AddTableListener.default")); + _("addColumnListener.JOptionPaneDefault")); /** Create the Table in the BigTable */ bigTable.createColumn(tableName, columnName); @@ -233,18 +242,24 @@ } /** - * Listener to delete a new Table from the BigTable base. + * Listener to delete a Table from the BigTable base. */ class DeleteTableListener implements ActionListener { /** + * Current TableName. + */ + private String tableName; + + /** * Default Construction. */ - public DeleteTableListener() { + public DeleteTableListener(final String tableName) { + this.tableName = tableName; } /** - * Open a JOptionPane to ask the wanted table name and create it. + * Open a JOptionPane to ask the confirmation to delete Table. */ @Override public void actionPerformed(ActionEvent e) { @@ -255,21 +270,20 @@ final JTree navigation = ui.getNavigation(); final BigTable bigTable = engine.getBigTable(); - /** Ask wanted table name. */ - final String tableName = (String) JOptionPane.showInputDialog( - ui, - _("AddTableListener.question"), - _("AddTableListener.title"), - JOptionPane.PLAIN_MESSAGE, - null, - null, - _("AddTableListener.default")); + /** Confirm to delete Table. */ + final int selectedOption = JOptionPane.showConfirmDialog( + ui, + _("deleteTableListener.JOptionPaneMessage") + " " + tableName, + _("deleteTableListener.JOptionPaneTitle"), + JOptionPane.YES_NO_OPTION); - /** Create the Table in the BigTable */ - bigTable.deleteTable(tableName); + if (selectedOption == JOptionPane.OK_OPTION) { + /** Delete the Table */ + bigTable.deleteTable(tableName); - /** upatate Navigation Tree. */ - engine.uptableNavigationTree(navigation, bigTable.getPluginName()); + /** upatate Navigation Tree. */ + engine.uptableNavigationTree(navigation, bigTable.getPluginName()); + } } } @@ -282,16 +296,21 @@ * Current TableName. */ private String tableName; + /** + * Current ColumnName. + */ + private String columnName; /** * Default Constructor. */ - public DeleteColumnListener(String tableName) { + public DeleteColumnListener(final String tableName, final String columnName) { this.tableName = tableName; + this.columnName = columnName; } /** - * Open a JOptionPane to ask the wanted table name and create it. + * Open a JOptionPane to ask the confirmation to delete Column. */ @Override public void actionPerformed(ActionEvent e) { @@ -302,21 +321,20 @@ final JTree navigation = ui.getNavigation(); final BigTable bigTable = engine.getBigTable(); - /** Ask wanted column name. */ - final String columnName = (String) JOptionPane.showInputDialog( - ui, - _("AddTableListener.question"), - _("AddTableListener.title"), - JOptionPane.PLAIN_MESSAGE, - null, - null, - _("AddTableListener.default")); + /** Confirm to delete Table. */ + final int selectedOption = JOptionPane.showConfirmDialog( + ui, + _("deleteColumnListener.JOptionPaneMessage") + " " + columnName, + _("deleteColumnListener.JOptionPaneTitle"), + JOptionPane.YES_NO_OPTION); - /** Create the Table in the BigTable */ - bigTable.deleteColumn(tableName, columnName); + if (selectedOption == JOptionPane.OK_OPTION) { + /** Create the Table in the BigTable */ + bigTable.deleteColumn(tableName, columnName); - /** upatate Navigation Tree. */ - engine.uptableNavigationTree(navigation, bigTable.getPluginName()); + /** upatate Navigation Tree. */ + engine.uptableNavigationTree(navigation, bigTable.getPluginName()); + } } } Modified: trunk/msm/src/main/resources/i18n/msm-en_GB.properties =================================================================== --- trunk/msm/src/main/resources/i18n/msm-en_GB.properties 2010-03-25 18:17:56 UTC (rev 288) +++ trunk/msm/src/main/resources/i18n/msm-en_GB.properties 2010-03-25 19:42:14 UTC (rev 289) @@ -73,4 +73,14 @@ jFileChooser.importBase.dialogTitle=Import the base from ... jFileChooser.loadAPlugin.dialogTitle=Load a plugin ... bootLoaderManager.quit=Quit -bootLoaderManager.title=BootLoaderManager \ No newline at end of file +bootLoaderManager.title=BootLoaderManager +addTableListener.JOptionPaneMessage=Please enter the name of the table to create. +addTableListener.JOptionPaneTitle=Create a new table +addTableListener.JOptionPaneDefault=Table's name +addColumnListener.JOptionPaneMessage=Please enter the name of the column to create. +addColumnListener.JOptionPaneTitle=Create a new column +addColumnListener.JOptionPaneDefault=Column's name +deleteTableListener.JOptionPaneMessage=Please confirme the suppression of the table : +deleteTableListener.JOptionPaneTitle=Delete a table +deleteColumnListener.JOptionPaneMessage=Please confirme the suppression of the column : +deleteColumnListener.JOptionPaneTitle=Delete a column \ No newline at end of file Modified: trunk/msm/src/main/resources/i18n/msm-fr_FR.properties =================================================================== --- trunk/msm/src/main/resources/i18n/msm-fr_FR.properties 2010-03-25 18:17:56 UTC (rev 288) +++ trunk/msm/src/main/resources/i18n/msm-fr_FR.properties 2010-03-25 19:42:14 UTC (rev 289) @@ -73,4 +73,14 @@ jFileChooser.importBase.dialogTitle=Importer la base de ... jFileChooser.loadAPlugin.dialogTitle=Charger un plugin ... bootLoaderManager.quit=Quitter -bootLoaderManager.title=Gestionnaire de d\u00E9marrage \ No newline at end of file +bootLoaderManager.title=Gestionnaire de d\u00E9marrage +addTableListener.JOptionPaneMessage=Veuillez saisir le nom de la table \u00E0 cr\u00E9er. +addTableListener.JOptionPaneTitle=Cr\u00E9er une nouvelle table +addTableListener.JOptionPaneDefault=nom de la table +addColumnListener.JOptionPaneMessage=Veuillez saisir le nom de la colonne \u00E0 cr\u00E9er. +addColumnListener.JOptionPaneTitle=Cr\u00E9er une nouvelle colonne +addColumnListener.JOptionPaneDefault=nom de la colonne +deleteTableListener.JOptionPaneMessage=Veuillez confirmer la suppression de la table : +deleteTableListener.JOptionPaneTitle=Supprimer une table +deleteColumnListener.JOptionPaneMessage=Veuillez confirmer la suppression de la colonne : +deleteColumnListener.JOptionPaneTitle=Supprimer une colonne \ No newline at end of file
participants (1)
-
dlanglais@users.nuiton.org